posthog-js 1.419.1 → 1.419.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- 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","pinterest","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,k=Array.isArray||function(t){return"[object Array]"===w.call(t)},S=t=>"function"==typeof t,x=t=>t===Object(t)&&!k(t),E=t=>{if(x(t)){for(var i in t)if(y.call(t,i))return!1;return!0}return!1},F=t=>void 0===t,C=t=>"[object String]"==w.call(t),P=t=>C(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 U{constructor(t){this.k={},this.S=t.S,this.C=z(t.bucketSize,0,100,t.I),this.R=z(t.refillRate,0,this.C,t.I),this.A=z(t.refillInterval,0,864e5,t.I)}O(t,i){var e=Math.floor((i-t.lastAccess)/this.A);e>0&&(t.tokens=Math.min(t.tokens+e*this.R,this.C),t.lastAccess=t.lastAccess+e*this.A)}consumeRateLimit(t){var i,e=Date.now(),r=String(t),s=this.k[r];return s?this.O(s,e):this.k[r]=s={tokens:this.C,lastAccess:e},0===s.tokens||(s.tokens--,0===s.tokens&&(null==(i=this.S)||i.call(this,t)),0===s.tokens)}stop(){this.k={}}}function H(t){return t?t.split("#")[0]:t}function q(t,i){var e=setTimeout(t,i);return(null==e?void 0:e.unref)&&(null==e||e.unref()),e}function V(t,i,e){return B.apply(this,arguments)}function B(){return(B=i((function*(t,i,e){var r;try{return yield Promise.race([t,new Promise(((t,s)=>{r=q((()=>{try{null==e||e(),t()}catch(t){s(t)}}),i)}))])}finally{clearTimeout(r)}}))).apply(this,arguments)}var W={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}},K=W.info,J=0x8000000000000000,G={}.propertyIsEnumerable;function Z(t,i){try{return X(t,i,{ancestors:new WeakSet,remainingNodes:u},0)}catch(t){return[]}}function Q(t,i,e,r){if(0>=e.remainingNodes)return{stringValue:v};if(e.remainingNodes--,O(t))return{boolValue:t};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>=J||-J>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 Q(l.call(t),i,e,r+1)}catch(t){}return k(t)?{arrayValue:{values:Y(t,i,e,r+1)}}:{kvlistValue:{values:X(t,i,e,r+1)}}}finally{e.ancestors.delete(t)}}return{stringValue:f(String(t))}}function Y(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(Q(o,i,e,r))}catch(t){s.push({stringValue:d})}return t.length>a&&s.push({stringValue:v}),s}function X(t,i,e,r){var s=[];for(var n in t)if(G.call(t,n)){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:Q(a,i,e,r)})}catch(t){s.push({key:f(n),value:{stringValue:d}})}}return s}function tt(t){try{return f(String(t))}catch(t){return d}}function it(t,i,r){var s=W[t.level||"info"]||K,n=s.text,a=s.number,o=String(Date.now())+"000000",l={};i.distinctId&&(l.posthogDistinctId=i.distinctId),i.sessionId&&(l.sessionId=i.sessionId),i.windowId&&(l["window.id"]=i.windowId),A(i.sessionStartTimestamp)||(l.sessionStartTimestamp=String(i.sessionStartTimestamp)),A(i.lastActivityTimestamp)||(l.lastActivityTimestamp=String(i.lastActivityTimestamp)),i.currentUrl&&(l["url.full"]=i.currentUrl),i.screenName&&(l["screen.name"]=i.screenName),i.appState&&(l["app.state"]=i.appState),i.activeFeatureFlags&&i.activeFeatureFlags.length>0&&(l.feature_flags=i.activeFeatureFlags);var u=e({},l),h=t.attributes;if(h){var v=[];try{v=Object.keys(h)}catch(t){v=[]}for(var c of v){var f=void 0;try{f=h[c]}catch(t){f=d}Object.defineProperty(u,c,{value:f,enumerable:!0,writable:!0,configurable:!0})}}var p={timeUnixNano:o,observedTimeUnixNano:o,severityNumber:a,severityText:n,body:{stringValue:tt(t.body)},attributes:Z(u,r)};return t.trace_id&&(p.traceId=t.trace_id),t.span_id&&(p.spanId=t.span_id),F(t.trace_flags)||(p.flags=t.trace_flags),p}function et(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})}function rt(t,i,e,r){return{resourceLogs:[{resource:{attributes:Z(i)},scopeLogs:[{scope:{name:e,version:r},logRecords:t}]}]}}let st=class{constructor(t,i,e,r,s,n,a){var o;void 0===n&&(n=()=>Promise.resolve()),this._instance=t,this.qi=i,this.I=e,this.rn=r,this.nn=s,this.sn=n,this.an=a,this.ln=null,this.un=0,this.hn=0,this.dn=0,this.vn=0,this.cn=!1,this.fn=i.maxBufferSize,this.pn=Math.max(null!==(o=i.maxQueueSize)&&void 0!==o?o:i.maxBufferSize,i.maxBufferSize),this.gn=i.flushIntervalMs,this.mn=i.maxBatchRecordsPerPost,this.yn=i.rateCapWindowMs,this.bn=i.maxLogsPerInterval}reset(){this._n(),this.ln=null,this.dn=0,this.vn=0,this.cn=!1,this.un=0,this.hn=0,this.mn=this.qi.maxBatchRecordsPerPost}onReconnect(){this.hn=0,this.wn()}captureLog(t){if(!this._instance.isDisabled&&!this._instance.optedOut&&null!=t&&t.body){var i=this.kn(t);if(null!==i)if(i.body){if(this.Sn()){var e={record:it(i,this.rn(),this.I)};this.nn((()=>this.xn(e)))}}else this.I.info("Log was rejected in beforeSend function")}}kn(t){var i=this.qi.beforeSend;if(!i)return t;var e=k(i)?i:[i],r=t;for(var s of e)try{var n=s(r);if(!n)return this.I.info("Log was rejected in beforeSend function"),null;r=n}catch(t){return this.I.error("Error in beforeSend function for log:",t),null}return r}Sn(){if(void 0===this.bn)return!0;var t=Date.now(),i=t-this.dn;return this.yn>i&&i>=0||(this.dn=t,this.vn=0,this.cn=!1),this.bn>this.vn?(this.vn++,!0):(this.cn||(this.I.warn("captureLog dropping logs: exceeded "+this.bn+" logs per "+this.yn+"ms"),this.cn=!0),!1)}flush(){var t=this;return i((function*(){if(!t._instance.isDisabled)return t.ln||(t.ln=t.Cn().finally((()=>{t.ln=null}))),t.ln}))()}Cn(){var t=this;return i((function*(){var i;t._n();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;t.un=0;var l=Math.min(e.length,t.mn),u=e.slice(0,l),h=rt(u.map((t=>t.record)),t.Tn(),null!==(n=t.an)&&void 0!==n?n:t._instance.getLibraryId(),t._instance.getLibraryVersion()),v=yield t._instance.Mn(h);if("too-large"===v.kind&&u.length>1)t.mn=Math.max(1,Math.floor(u.length/2)),t.I.warn("Received 413 when sending logs batch of size "+u.length+", reducing batch size to "+t.mn);else{if("retry-later"===v.kind)throw v.error;if("too-large"===v.kind?t.I.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"===v.kind&&t.qi.maxBatchRecordsPerPost>t.mn&&(t.mn=Math.min(t.qi.maxBatchRecordsPerPost,t.mn+1)),yield t.En(u.length),e=null!==(o=t._instance.getPersistedProperty(a.LogsQueue))&&void 0!==o?o:[],s+=u.length,"fatal"===v.kind)throw v.error}}}))()}En(t){var e=this;return i((function*(){var i,r=Math.max(0,t-e.un),s=null!==(i=e._instance.getPersistedProperty(a.LogsQueue))&&void 0!==i?i:[];e._instance.setPersistedProperty(a.LogsQueue,s.slice(r)),yield e.sn()}))()}Tn(){return et(this.qi,this._instance.getLibraryId(),this._instance.getLibraryVersion())}xn(t){var i;if(!this._instance.optedOut){var e=null!==(i=this._instance.getPersistedProperty(a.LogsQueue))&&void 0!==i?i:[];this.pn>e.length||(e.shift(),this.un++,this.I.info("Logs queue is full, dropping oldest record.")),e.push(t),this._instance.setPersistedProperty(a.LogsQueue,e),this.fn>e.length?this.In():this.wn()}}In(t){void 0===t&&(t=this.gn),this.Rn||(this.Rn=q((()=>{this.Rn=void 0,this.wn()}),t))}Pn(){var t=Math.min(Math.max(0,this.hn-1),6);return this.gn*Math.pow(2,t)}An(){var t=this._instance.getPersistedProperty(a.LogsQueue);return!!t&&t.length>0}shutdown(t){var e=this;return i((function*(){e._n();var i=e.flush().catch((()=>{}));void 0!==t?yield V(i,t):yield i}))()}flushWithTimeout(t){var e=this;return i((function*(){var i=e.flush();yield V(i,t,(()=>{i.catch((()=>{}))}))}))()}wn(){this.flush().then((()=>{this.hn=0}),(t=>{this.hn++,this.I.error("PostHog logs flush failed:",t)})).finally((()=>{!this._instance.isDisabled&&this.An()&&this.In(this.Pn())}))}_n(){this.Rn&&(clearTimeout(this.Rn),this.Rn=void 0)}};var nt=[0,5,10,25,50,75,100,250,500,750,1e3,2500,5e3,7500,1e4];function at(t){return String(t)+"000000"}function ot(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 lt=class{constructor(t,i,e){this._instance=t,this.qi=i,this.I=e,this.Fn=new Map,this.ln=null,this.Ln=!1,this.On=new Map,this.Dn=new Set,this.$n=0}count(t,i,e){void 0===i&&(i=1),this.Nn({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.Nn({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.Nn({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.ln,r=function(){var r=i((function*(){e&&(yield e.catch((()=>{}))),yield t.qn()}));return function(){return r.apply(this,arguments)}}(),s=r().finally((()=>{this.ln===s&&(this.ln=null)}));return this.ln=s,s}drainWindow(){if(0===this.Fn.size)return null;var t=this.Fn;return this.Fn=new Map,this.Ln=!1,this.On=new Map,this.Dn=new Set,this.jn(t)}reset(){this.$n++,this._n(),this.Fn=new Map,this.ln=null,this.Ln=!1,this.On=new Map,this.Dn=new Set}Nn(t){if(!this._instance.isDisabled&&!this._instance.optedOut){var i=this.kn(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.I.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=ot(i.type,i.name,i.unit,r)}catch(t){return void this.I.warn("Dropping metric '"+i.name+"': attributes could not be serialized",t)}var n=this.Fn.get(s);if(!n){if(!this.Bn())return;n={name:i.name,type:i.type,unit:i.unit,attributes:r,windowStartMs:Date.now()},this.Fn.set(s,n)}var a=this.On.get(i.name);void 0===a?this.On.set(i.name,i.type):a===i.type||this.Dn.has(i.name)||(this.Dn.add(i.name),this.I.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.Hn(n,i.value),this.In()}else this.I.warn("Dropping metric '"+i.name+"': value must be a finite number");else this.I.warn("Dropping metric with empty name")}}Bn(){return this.qi.maxSeriesPerFlush>this.Fn.size||(this.Ln||(this.Ln=!0,this.I.warn("Metric series cap reached ("+this.qi.maxSeriesPerFlush+" per flush window); dropping new series until the next flush. Reduce attribute cardinality.")),!1)}Hn(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(nt.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,nt)]+=1}}kn(t){var i=this.qi.beforeSend;if(!i)return t;var e=k(i)?i:[i],r=t;for(var s of e)try{var n=s(r);if(!n)return this.I.info("Metric was rejected in beforeSend function"),null;r=n}catch(t){return this.I.error("Error in beforeSend function for metric:",t),null}return r}In(){this.Rn||(this.Rn=q((()=>{this.Rn=void 0,this.flush().catch((t=>{this.I.error("Metrics flush failed:",t)}))}),this.qi.flushIntervalMs))}_n(){this.Rn&&(clearTimeout(this.Rn),this.Rn=void 0)}qn(){var t=this;return i((function*(){if(0!==t.Fn.size){var i=t.Fn;t.Fn=new Map,t.Ln=!1,t.On=new Map,t.Dn=new Set;var e=t.$n,r=yield t._instance.Un(t.jn(i));if(e===t.$n)switch(r.kind){case"ok":return;case"retry-later":return t.zn(i),void t.In();case"too-large":return void t.I.warn("Metrics batch exceeded the server size limit and was dropped");case"fatal":return void t.I.error("Failed to send metrics batch:",r.error)}}}))()}jn(t){return i=this.Wn(t),r=function(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})}(this.qi,this._instance.getLibraryId(),this._instance.getLibraryVersion()),s=this._instance.getLibraryId(),n=this._instance.getLibraryVersion(),{resourceMetrics:[{resource:{attributes:Z(r)},scopeMetrics:[{scope:{name:s,version:n},metrics:i}]}]};var i,r,s,n}Wn(t){var i=at(Date.now()),r=new Map;for(var s of t.values()){var n,a=ot(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=Z(null!==(n=s.attributes)&&void 0!==n?n:{},this.I),u=at(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:nt})}return Array.from(r.values())}zn(t){var i,e;for(var r of t){var s=r[0],n=r[1],a=this.Fn.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.Bn()&&this.Fn.set(s,n)}}};var ut,ht,vt;function dt(t){var i=globalThis._posthogChunkIds;if(i){var e=Object.keys(i);return vt&&e.length===ht?vt:(ht=e.length,vt=e.reduce(((e,r)=>{ut||(ut={});var s=ut[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,ut[r]=[l,u];break}}return e}),{}))}}class ct{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&&k(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:dt(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 ft="?";function pt(t,i,e,r,s){var n={platform:t,filename:i,function:"<anonymous>"===e?ft: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 gt=(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]:ft,e?"safari-extension:"+i:"safari-web-extension:"+i]:[t,i]},_t=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,bt=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,mt=/\((\S*)(?::(\d+))(?::(\d+))\)/,yt=(t,i)=>{var e=_t.exec(t);if(e)return pt(i,e[1],ft,+e[2],+e[3]);var r=bt.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=gt(r[1]||ft,r[2]);return pt(i,n[1],n[0],r[3]?+r[3]:void 0,r[4]?+r[4]:void 0)}},wt=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,kt=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,St=(t,i)=>{var e=wt.exec(t);if(e){if(e[3]&&e[3].indexOf(" > eval")>-1){var r=kt.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]||ft,a=gt(n,s);return pt(i,s=a[1],n=a[0],e[4]?+e[4]:void 0,e[5]?+e[5]:void 0)}},xt=/\(error: (.*)\)/;class Et{match(t){return this.isDOMException(t)||this.isDOMError(t)}coerce(t,i){var e=C(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 Ft{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 Ct{constructor(){}match(t){return!!j(t,"ErrorEvent")&&(null!=t.error||this.fi(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.pi(t))&&void 0!==r?r:s.stack,synthetic:!0})}fi(t){return C(t.message)&&t.message.length>0}pi(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(C(r.filename)&&0!==r.filename.length&&0!==s)return"Error\n at "+r.filename+":"+s+":"+n}}var Pt=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i;class Tt{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(Pt);return r&&(i=r[1],e=r[2]),[i,e]}}var At=["fatal","error","warning","log","info","debug"];function Rt(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 Ot{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 C(i)&&!P(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: "+Rt(t)}isSeverityLevel(t){return C(t)&&!P(t)&&At.indexOf(t)>=0}getStack(t){try{return C(t.stacktrace)&&t.stacktrace.length>0?t.stacktrace:C(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 Mt{match(t){return D(t)}coerce(t,i){var e,r=t.constructor.name;return{type:r,value:r+" captured as exception with keys: "+Rt(t),stack:null==(e=i.syntheticException)?void 0:e.stack,synthetic:!0}}}class $t{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 It{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 jt="$message",Lt="$timestamp",Dt=new Set([jt,Lt]),Nt={enabled:!0,max_bytes:32768};function zt(t){var i;return t?{enabled:null!==(i=t.enabled)&&void 0!==i?i:Nt.enabled,max_bytes:Ht(t.max_bytes,Nt.max_bytes)}:e({},Nt)}class Ut{constructor(t){this.Vn=[],this.Gn=0,this.qi=zt(t)}setConfig(t){this.qi=zt(t),this.Zn()}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(!x(s))return;var n=s,a=n[jt],o=n[Lt];if(!C(a)||0===a.trim().length)return;if(!C(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.qi.max_bytes||(this.Vn.push({step:i.step,bytes:e}),this.Gn+=e,this.Zn())}}getAttachable(){return this.Vn.map((t=>t.step))}clear(){this.Vn=[],this.Gn=0}size(){return this.Vn.length}Zn(){for(;this.Gn>this.qi.max_bytes&&this.Vn.length>0;){var t=this.Vn.shift();t&&(this.Gn-=t.bytes)}}}function Ht(t,i){if(!R(t)||t===1/0||t===-1/0)return i;var e=Math.floor(t);return 0>e?i:e}var qt={DEBUG:!1,LIB_VERSION:"0.5.2",LIB_NAME:"browser-common"},Vt="undefined"!=typeof window?window:void 0,Bt="undefined"!=typeof globalThis?globalThis:Vt,Wt=null==Bt?void 0:Bt.navigator,Kt=null==Bt?void 0:Bt.document,Jt=null==Bt?void 0:Bt.location;function Gt(){return!(!Vt||!1===Vt.navigator.onLine)}null!=Bt&&Bt.XMLHttpRequest&&new Bt.XMLHttpRequest;var Zt=function(t,i){var e=(void 0===i?{}:i).debugEnabled,r={F(i){if(Vt&&(qt.DEBUG||Vt.POSTHOG_DEBUG||e)&&!F(Vt.console)&&Vt.console){for(var r=("__rrweb_original__"in Vt.console[i]?Vt.console[i].__rrweb_original__:Vt.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.F("debug",...i)},info(){for(var t=arguments.length,i=new Array(t),e=0;t>e;e++)i[e]=arguments[e];r.F("log",...i)},warn(){for(var t=arguments.length,i=new Array(t),e=0;t>e;e++)i[e]=arguments[e];r.F("warn",...i)},error(){for(var t=arguments.length,i=new Array(t),e=0;t>e;e++)i[e]=arguments[e];r.F("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)=>Zt(t+" "+i,e)};return r},Qt=Zt("[PostHog.js]"),Yt=Qt.createLogger;function Xt(t,i){if(!A(t))if(k(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 ti=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 ii(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 ei=function(t){try{return t()}catch(t){return}};function ri(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 si(t){return"ph_toolbar_internal"===t.name}function ni(t,i){var e,r=null==t||null==(e=t.config)?void 0:e.get_current_url;if(!S(r))return i;try{var s=r(i);return C(s)&&s?s:i}catch(t){return Qt.error("Error in get_current_url, falling back to window.location.href",t),i}}var ai="__POSTHOG_TOOLBAR__",oi=1,li=3,ui=11;function hi(t){return t instanceof Element&&(t.id===ai||!(null==t.closest||!t.closest(".toolbar-global-fade-container")))}function vi(t){return!!t&&t.nodeType===oi}function di(t,i){return!!t&&!!t.tagName&&t.tagName.toLowerCase()===i.toLowerCase()}function ci(t){return!!t&&t.nodeType===li}function fi(t){return!!t&&t.nodeType===ui&&vi(t.host)}var pi=1e3;function gi(t){return t?b(t).split(/\s+/):[]}function _i(t,i){var e=function(t){var i,e=null==Vt||null==(i=Vt.location)?void 0:i.href;return F(e)?void 0:ni(t,e)}(i);return!!(e&&t&&t.some((t=>e.match(t))))}function bi(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 gi(i)}function mi(t){return A(t)?null:b(t).split(/(\s+)/).filter((t=>Hi(t))).join("").replace(/[\r\n]/g," ").replace(/[ ]+/g," ").substring(0,255)}function yi(t){var i="";return Mi(t)&&!$i(t)&&t.childNodes&&t.childNodes.length&&Xt(t.childNodes,(function(t){var e;ci(t)&&t.textContent&&(i+=null!==(e=mi(t.textContent))&&void 0!==e?e:"")})),b(i)}function wi(t){var i;return F(t.target)?t.srcElement||null:null!=(i=t.target)&&i.shadowRoot?t.composedPath()[0]||null:t.target||null}var ki=["a","button","form","input","select","textarea","label"];function Si(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 xi(t){var i=t.parentNode;return!(!i||!vi(i))&&i}var Ei=[".ph-no-autocapture","[data-ph-no-autocapture]"],Fi=["next","previous","prev",">","<"],Ci=(t,i)=>/[a-z0-9]/i.test(i)?t.includes(i):t===i,Pi=[".ph-no-rageclick",".ph-no-capture"],Ti=["","text","search","email","password","url","tel","number"];function Ai(t,i){if(!Vt||Ri(t))return!1;var e,r,s,n,a;if(O(i)?(e=!!i&&Pi,r=void 0,s=!1):(e=null!==(n=null==i?void 0:i.css_selector_ignorelist)&&void 0!==n?n:Pi,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||!vi(t))&&(!!di(t,"textarea")||(di(t,"input")?_(Ti,(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=Oi(t,!1).targetElementList;return!function(t,i){if(!1===t||F(t))return!1;var e;if(!0===t)e=Fi;else{if(!k(t))return!1;if(t.length>10)return Qt.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=>Ci(i,t)||Ci(r,t)))}))}(r,o.map((t=>{var i;return{safeText:yi(t).toLowerCase(),ariaLabel:(null==(i=t.getAttribute("aria-label"))?void 0:i.toLowerCase().trim())||""}})))&&!Si(o,e)}var Ri=t=>!t||di(t,"html")||!vi(t),Oi=(t,i)=>{if(!Vt||Ri(t))return{parentIsUsefulElement:!1,targetElementList:[]};for(var e=!1,r=[t],s=t;s.parentNode&&!di(s,"body");)if(fi(s.parentNode))r.push(s.parentNode.host),s=s.parentNode.host;else{var n=xi(s);if(!n)break;if(i||ki.indexOf(n.tagName.toLowerCase())>-1)e=!0;else try{var a=Vt.getComputedStyle(n);a&&"pointer"===a.getPropertyValue("cursor")&&(e=!0)}catch(t){}r.push(n),s=n}return{parentIsUsefulElement:e,targetElementList:r}};function Mi(t){for(var i=new Set,e=0,r=t;r.parentNode&&!di(r,"body");r=r.parentNode){if(e++>=pi||i.has(r))return!1;i.add(r);var s=bi(r);if(_(s,"ph-sensitive")||_(s,"ph-no-capture"))return!1}if(_(bi(t),"ph-include"))return!0;var n=t.type||"";if(C(n))switch(n.toLowerCase()){case"hidden":case"password":return!1}var a=t.name||t.id||"";return!C(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 $i(t){return!!(di(t,"input")&&!["button","checkbox","submit","reset"].includes(t.type)||di(t,"select")||di(t,"textarea")||"true"===t.getAttribute("contenteditable"))}var Ii=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}))$"),ji=/(^|[^0-9A-Za-z_])([0-9][0-9 -]*[0-9])(?=$|[^0-9A-Za-z_])/g,Li=[16,15,14,13],Di=new RegExp("^(\\d{3}-?\\d{2}-?\\d{4})$"),Ni=new RegExp("(^|[^0-9])((?!000|666)[0-9]{3}-?(?!00)[0-9]{2}-?(?!0000)[0-9]{4})(?=$|([^0-9]))","g"),zi=/[0-9A-Za-z_]/;function Ui(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 Hi(t,i){if(void 0===i&&(i=!0),A(t))return!1;if(C(t)){t=b(t);var e=i?Ii.test((t||"").replace(/[- ]/g,"")):function(t){var i;for(ji.lastIndex=0;i=ji.exec(t);){var e=i[2];if(e)for(var r=e.replace(/[- ]/g,""),s=0;r.length>s;s++)for(var n of Li){var a=s+n;if(r.length>=a){var o=r.slice(s,a);if(Ii.test(o)&&Ui(o))return!0}}}return!1}(t);if(e)return!1;var r=i?Di.test(t):function(t){var i;for(Ni.lastIndex=0;i=Ni.exec(t);){var e=i[1],r=i[3];if(!(e&&r&&zi.test(e)&&zi.test(r)))return!0}return!1}(t);if(r)return!1}return!0}function qi(t){var i=yi(t);return Hi(i=(i+" "+Vi(t)).trim())?i:""}function Vi(t){var i="";return t&&t.childNodes&&t.childNodes.length&&Xt(t.childNodes,(function(t){var e;if(t&&"span"===(null==(e=t.tagName)?void 0:e.toLowerCase()))try{var r=yi(t);i=(i+" "+r).trim(),t.childNodes&&t.childNodes.length&&(i=(i+" "+Vi(t)).trim())}catch(t){Qt.error("[AutoCapture]",t)}})),i}function Bi(t){return t.replace(/"|\\"/g,'\\"')}function Wi(t){var i=t.attr__class;if(i)return k(i)?i:gi(i)}class Ki{constructor(t){this.disabled=!1===t;var i=x(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 Ji="$autocapture_disabled_server_side",Gi="$heatmaps_enabled_server_side",Zi="$exception_capture_enabled_server_side",Qi="$error_tracking_suppression_rules",Yi="$error_tracking_capture_extension_exceptions",Xi="$web_vitals_enabled_server_side",te="$product_tours_enabled_server_side",ie="$web_vitals_allowed_metrics",ee="$session_recording_remote_config",re="$enabled_feature_flags",se="$active_feature_flags",ne="$early_access_features",ae="$feature_flag_details",oe="$feature_flag_payloads",le="$feature_flag_request_id",ue="$minimal_flag_called_events",he="$override_feature_flags",ve="$override_feature_flag_payloads",de="$stored_person_properties",ce="$stored_group_properties",fe="$surveys",pe="$surveys_loaded_at",ge="$surveys_activated",_e="$surveys_activated_session",be="$surveys_activated_timestamps",me="ph_product_tours",ye="$flag_call_reported",we="$flag_call_reported_session_id",ke="$feature_flag_errors",Se="$feature_flag_evaluated_at",xe="$sdk_debug_recording_script_not_loaded",Ee="PostHog loadExternalDependency extension not found.",Fe="visibilitychange",Ce="beforeunload",Pe=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(!k(e)||2>e.length)return"";var a=e[1];try{a=decodeURIComponent(a)}catch(t){Qt.error("Skipping decoding for malformed query param: "+a)}return a.replace(/\+/g," ")},Te=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("=");k(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},Ae=function(t,i){var e=t.match(new RegExp(i+"=([^&]*)"));return e?e[1]:null},Re=(t,i)=>t>=i&&Gt(),Oe=(t,i,e,r)=>{if(0===t){if(Gt()){var s=i+1;return s===e&&r(),s}return i}return 0},Me="$copy_autocapture",$e=Yt("[AutoCapture]");function Ie(t,i){return i.length>t?i.slice(0,t)+"...":i}function je(t){if(t.previousElementSibling)return t.previousElementSibling;var i=t;do{i=i.previousSibling}while(i&&!vi(i));return i}function Le(t,i){var r,s,n=i.e,a=i.maskAllElementAttributes,o=i.maskAllText,l=i.elementAttributeIgnoreList,u=i.elementsChainAsString,h=i.disableCaptureUrlHashes;if(!vi(t))return{props:{}};for(var v=[t],d=new Set([t]),c=t;c.parentNode&&!di(c,"body")&&pi>v.length;)if(fi(c.parentNode)){var f=c.parentNode.host;if(d.has(f))break;d.add(f),v.push(f),c=f}else{if(!vi(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(Xt(v,(t=>{var i=Mi(t);if(di(t,"a")){var e=t.getAttribute("href");y=!!(i&&e&&Hi(e))&&(h?H(e):e)}_(bi(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};ki.indexOf(n)>-1&&!e&&(a.$el_text="a"===n.toLowerCase()||"button"===n.toLowerCase()?Ie(1024,qi(t)):Ie(1024,yi(t)));var o=bi(t);o.length>0&&(a.classes=o.filter((function(t){return""!==t}))),Xt(t.attributes,(function(e){var n;if((!$i(t)||-1!==["name","id","class","aria-label"].indexOf(e.name))&&(null==r||!r.includes(e.name))&&!i&&Hi(e.value)&&(!C(n=e.name)||"_ngcontent"!==n.substring(0,10)&&"_nghost"!==n.substring(0,7))){var o=e.value;"class"===e.name&&(o=gi(o).join(" ")),a["attr__"+e.name]=Ie(1024,"href"===e.name&&s?H(o):o)}}));for(var l=1,u=1,h=t;h=je(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(!Mi(t))return{};var i={};return Xt(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&&Hi(r)&&(i[e]=r)}})),i}(t);ti(m,r)})),w)return{props:{},explicitNoCapture:w};if(o||(b[0].$el_text=di(t,"a")||di(t,"button")?qi(t):yi(t)),y){var k,S;b[0].attr__href=y;var x=null==(k=(t=>{var i=null==Kt?void 0:Kt.createElement("a");return F(i)?null:(i.href=t,i)})(y))?void 0:k.host,E=null==Vt||null==(S=Vt.location)?void 0:S.host;x&&E&&x!==E&&(p=y)}return{props:ti({$event_type:n.type,$ce_version:1},u?{}:{$elements:b},{$elements_chain:(g=b,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 ii(a).sort(((t,i)=>t[0].localeCompare(i[0]))).forEach((t=>{var i=t[1];return o[Bi(t[0].toString())]=Bi(i.toString())})),(s+=":")+ii(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:Wi(t),attr_id:t.attr__id,nth_child:t.nth_child,nth_of_type:t.nth_of_type,attributes:{}};return ii(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 De{constructor(t){this.name="autocapture",this.Qn=!1,this.Jn=null,this.Kn=!1,this.Yn=!1,this.qi={enabled:!1,rageclick:!1,maskAllElementAttributes:!1,maskAllText:!1,disableCaptureUrlHashes:!1,remoteRequestsDisabled:!1},this.Xn=!1,this.ts=t,this.ts.refresh(this.qi),this.rageclicks=new Ki(this.qi.rageclick),this.es=null}setup(t){this.rs(),this.ns=t;var i=t.onRemoteConfig(this.onRemoteConfig.bind(this));this.Xn?i.dispose():(this.ss=i,this.startIfEnabled())}dispose(){var t;this.Xn||(this.Xn=!0,this.ns=void 0,null==(t=this.ss)||t.dispose(),this.ss=void 0,this.os())}ls(){return this.ts.refresh(this.qi),this.qi}rs(){var t,i;return this.ls(),this.qi.url_allowlist=null==(t=this.qi.url_allowlist)?void 0:t.map((t=>new RegExp(t))),this.qi.url_ignorelist=null==(i=this.qi.url_ignorelist)?void 0:i.map((t=>new RegExp(t))),this.qi}us(){if(this.isBrowserSupported()){if(Vt&&Kt){var t=this.hs=t=>{t=t||(null==Vt?void 0:Vt.event);try{this.ds(t)}catch(t){$e.error("Failed to capture event",t)}};if(ri(Kt,"submit",t,{capture:!0}),ri(Kt,"change",t,{capture:!0}),ri(Kt,"click",t,{capture:!0}),this.ls().capture_copied_text){var i=this.vs=t=>{t=t||(null==Vt?void 0:Vt.event);try{this.ds(t,Me)}catch(t){$e.error("Failed to capture copy/cut event",t)}};ri(Kt,"copy",i,{capture:!0}),ri(Kt,"cut",i,{capture:!0})}}}else $e.info("Disabling Automatic Event Collection because this browser is not supported")}os(){this.hs&&(null==Kt||Kt.removeEventListener("submit",this.hs,!0),null==Kt||Kt.removeEventListener("change",this.hs,!0),null==Kt||Kt.removeEventListener("click",this.hs,!0),this.hs=void 0),this.vs&&(null==Kt||Kt.removeEventListener("copy",this.vs,!0),null==Kt||Kt.removeEventListener("cut",this.vs,!0),this.vs=void 0),this.Qn=!1}startIfEnabled(){!this.Xn&&this.ns&&this.isEnabled&&!this.Qn&&(this.us(),this.Qn=!0)}onRemoteConfig(t){if(!this.Xn)if(this.Kn=!0,t.ok){var i=t.config;i.elementsChainAsString&&(this.Yn=i.elementsChainAsString);var e,r=i.autocapture_opt_out;O(r)&&(null==(e=this.ns)||e.kv.set(Ji,r),this.Jn=r),this.startIfEnabled()}else this.startIfEnabled()}setElementSelectors(t){this.es=t}getElementSelectors(t){var i,e=[];return null==(i=this.es)||i.forEach((i=>{var r=null==Kt?void 0:Kt.querySelectorAll(i);null==r||r.forEach((r=>{t===r&&e.push(i)}))})),e}get isEnabled(){var t,i;if(this.Xn)return!1;var e=null==(t=this.ns)?void 0:t.kv.get(Ji),r=this.Jn,s=this.ls(),n=s.remoteRequestsDisabled&&!this.Kn;if(T(r)&&!O(e)&&!n)return!1;var a=null!==(i=this.Jn)&&void 0!==i?i:!!e;return!!s.enabled&&!a}ds(t,i){if(void 0===i&&(i="$autocapture"),this.isEnabled){var e=wi(t);ci(e)&&(e=e.parentNode||null);var r,s=this.rs();"$autocapture"===i&&"click"===t.type&&t instanceof MouseEvent&&s.rageclick&&null!=(r=this.rageclicks)&&r.isRageClick(t.clientX,t.clientY,t.timeStamp||(new Date).getTime())&&Ai(e,s.rageclick)&&this.ds(t,"$rageclick");var n=i===Me;if(e&&function(t,i,e,r,s,n){var a;if(!Vt||Ri(t))return!1;if(null!=e&&e.url_allowlist&&!_i(e.url_allowlist,n))return!1;if(null!=e&&e.url_ignorelist&&_i(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=Oi(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(!Si(h,null==e?void 0:e.css_selector_allowlist))return!1;if(Si(h,null!==(a=null==e?void 0:e.css_selector_ignorelist)&&void 0!==a?a:Ei))return!1;try{var v=Vt.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&&(ki.indexOf(d)>-1||"true"===t.getAttribute("contenteditable"))}}(e,t,s,n,n?["copy","cut"]:void 0,{config:{get_current_url:s.getCurrentUrl}})){var a,o=Le(e,{e:t,maskAllElementAttributes:s.maskAllElementAttributes,maskAllText:s.maskAllText,elementAttributeIgnoreList:s.element_attribute_ignorelist,elementsChainAsString:this.Yn,disableCaptureUrlHashes:s.disableCaptureUrlHashes}),l=o.props;if(o.explicitNoCapture)return!1;var u=this.getElementSelectors(e);if(u&&u.length>0&&(l.$element_selectors=u),i===Me){var h,v=mi(null==Vt||null==(h=Vt.getSelection())?void 0:h.toString()),d=t.type||"clipboard";if(!v)return!1;l.$selected_content=v,l.$copy_type=d}return null==(a=this.ns)||a.capture(i,l).catch((t=>$e.error("Failed to capture event",t))),!0}}}isBrowserSupported(){return S(null==Kt?void 0:Kt.querySelectorAll)}}class Ne{constructor(t){this._instance=t}refresh(t){var i=this._instance.config,e=x(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 ze="undefined"!=typeof globalThis?globalThis:Vt;ze&&"undefined"==typeof self&&(ze.self=ze),ze&&"undefined"==typeof File&&(ze.File=function(){});var Ue=null!=Vt?Vt:{},He=Yt("[Dead Clicks]"),qe=()=>!0;class Ve{get lazyLoadedDeadClicksAutocapture(){return this.bs}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._s((()=>{this.ws()})):this.stop()}_s(t){var i,e;null!=(i=Ue.__PosthogExtensions__)&&i.initDeadClicksAutocapture?t():null==(e=Ue.__PosthogExtensions__)||null==e.loadExternalDependency||e.loadExternalDependency(this.instance,"dead-clicks-autocapture",(i=>{i?He.error("failed to load script",i):t()}))}ws(){var t;if(Kt){if(!this.bs&&null!=(t=Ue.__PosthogExtensions__)&&t.initDeadClicksAutocapture){var i=x(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.bs=Ue.__PosthogExtensions__.initDeadClicksAutocapture(this.instance,i),this.bs.start(Kt),He.info("starting...")}}else He.error("`document` not found. Cannot start.")}stop(){this.bs&&(this.bs.stop(),this.bs=void 0,He.info("stopping..."))}}var Be=Yt("[ExceptionAutocapture]"),We=()=>{},Ke=Yt("[TracingHeaders]"),Je=["gclid","gclsrc","dclid","gbraid","wbraid","fbclid","msclkid","twclid","li_fat_id","igshid","ttclid","rdt_cid","epik","qclid","sccid","irclid","_kx"],Ge=["utm_source","utm_medium","utm_campaign","utm_content","utm_term","gad_source","mc_cid",...Je],Ze="<masked>",Qe=["li_fat_id"];function Ye(t,i,e){if(!Kt)return{};var r,s,n,a=(r=Te(Kt.URL,[],Ze),s=Ge.concat([]),n={},Xt(s,(function(t){var i=Pe(r,t);n[t]=i||null})),n),o=function(){var t={};return Xt(Qe,(function(i){var e=(t=>{if(Kt){try{for(var i=t+"=",e=Kt.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 ti(o,a)}function Xe(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(t){return}}var tr=Yt("[Web Vitals]"),ir=9e5,er=["CLS","FCP","INP","LCP"],rr=["INP","LCP"],sr=["interactionTarget","interactionType","inputDelay","processingDuration","presentationDelay","loadState","target","url","timeToFirstByte","resourceLoadDelay","resourceLoadDuration","elementRenderDelay","largestShiftTarget","largestShiftTime","largestShiftValue","firstByteToFCP"],nr=Yt("[RemoteConfig]");class ar{constructor(t){this._instance=t}get remoteConfig(){var t;return null==(t=Ue._POSTHOG_REMOTE_CONFIG)||null==(t=t[this._instance.config.token])?void 0:t.config}ca(t){var i,e;null!=(i=Ue.__PosthogExtensions__)&&i.loadExternalDependency?null==(e=Ue.__PosthogExtensions__)||null==e.loadExternalDependency||e.loadExternalDependency(this._instance,"remote-config",(()=>t(this.remoteConfig))):t()}fa(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 nr.info("Using preloaded remote config",this.remoteConfig),this.pa(this.remoteConfig),void this.ga();if(this._instance._shouldDisableFlags())return void nr.warn("Remote config is disabled. Falling back to local config.");this.ca((t=>{if(!t)return nr.info("No config found after loading remote JS config. Falling back to JSON."),void this.fa((t=>{this.pa(t.json,t),this.ga()}));this.pa(t),this.ga()}))}catch(t){nr.error("Error loading remote config",t),this.pa()}}stop(){this.ya&&(clearInterval(this.ya),this.ya=void 0)}refresh(){!this._instance._shouldDisableFlags()&&Kt&&"hidden"!==Kt.visibilityState&&this._instance.reloadFeatureFlags()}ga(){var t;if(!this.ya){var i=null!==(t=this._instance.config.remote_config_refresh_interval_ms)&&void 0!==t?t:3e5;0!==i&&(this.ya=setInterval((()=>{this.refresh()}),i))}}pa(t,i){!t&&i&&(0===i.statusCode?i.error||nr.warn("Failed to fetch remote config from PostHog."):nr.error("Failed to fetch remote config from PostHog."));try{this._instance.pa(t?{ok:!0,config:t}:{ok:!1})}catch(t){nr.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){nr.error("Error loading feature flags",t)}}}var or="disabled",lr="lazy_loading",ur="awaiting_config",hr="missing_config";function vr(t){var i;return!(null==(i=t.conditions)||null==(i=i.events)||null==(i=i.values)||!i.length)}qt.DEBUG=!1,qt.LIB_VERSION="1.419.1",qt.LIB_NAME="web";var dr=(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}},cr=t=>t.toLowerCase(),fr={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=>dr(i,t))))),not_regex:(t,i)=>i.every((i=>t.every((t=>!dr(i,t))))),icontains:(t,i)=>i.map(cr).some((i=>t.map(cr).some((t=>i.includes(t))))),not_icontains:(t,i)=>i.map(cr).every((i=>t.map(cr).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 pr(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=fr[e.operator];return!!s&&s(e.values,[String(r)])}))}Yt("[SessionRecording]"),Yt("[SessionRecording]");var gr="[SessionRecording]",_r=Yt(gr),br=Yt("[Heatmaps]");function mr(t){return x(t)&&"clientX"in t&&"clientY"in t&&R(t.clientX)&&R(t.clientY)}var yr=Yt("[Product Tours]"),wr=t=>{var i;return!t.config.disable_product_tours&&!(null==(i=t.persistence)||!i.get_property(te))},kr=["$set_once","$set"],Sr=Yt("[SiteApps]"),xr="Error while initializing PostHog app with config id ",Er=(t,i)=>null!=t&&t.then?t.then(i):i(t),Fr="base64",Cr="events",Pr="cancelEvents",Tr="survey shown",Ar=Yt("[Surveys]"),Rr="seenSurvey_",Or=["popover","widget","api"],Mr="SDK is not enabled or survey functionality is not yet loaded",$r="Disabled. Not loading surveys.";class Ir{constructor(t,i){this.name="surveys",this._surveyEventReceiver=null,this._surveyManager=null,this.Tl=!1,this.Ml=[],this.El=null,this.Il=null,this.Xn=!1,this.Rl=new Set,this.onRemoteConfig=t=>{if(!this.Xn&&!this.qi.disableSurveys){if(!t.ok)return Ar.warn("Remote config unavailable. Not loading surveys.");var i=t.config.surveys;if(A(i))return Ar.warn("Flags not loaded yet. Not loading surveys.");this.Pl=O(i)?i:i.length>0,Ar.info("flags response received, isSurveysEnabled: "+this.Pl),this.loadIfEnabled()}},this.ts=t,this.Al=i}setup(t){if(!this.Xn)return this.Fl=t,Er(t.kv.initialize(),(()=>{if(this.Fl===t&&!this.Xn){this.Fl=void 0,this.ns=t;var i=t.onRemoteConfig(this.onRemoteConfig);this.Xn?i.dispose():(this.ss=i,this.loadIfEnabled())}}))}dispose(){var t,i,e;this.Xn||(this.Xn=!0,this.Fl=void 0,this.ns=void 0,null==(t=this.ss)||t.dispose(),this.ss=void 0,null==(i=this._surveyEventReceiver)||i.dispose(),this._surveyEventReceiver=null,null==(e=this._surveyManager)||null==e.dispose||e.dispose(),this._surveyManager=null,this.Ml=[],this.El=null,this.Rl.forEach((t=>clearTimeout(t))),this.Rl.clear())}get qi(){return this.ts.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(Rr)||null!=r&&r.startsWith("inProgressSurvey_"))&&i.push(r)}i.forEach((t=>localStorage.removeItem(t)))}catch(t){}}loadIfEnabled(){if(!this.Xn&&this.ns){var t=this.qi;if(!this._surveyManager)if(this.Tl)Ar.info("Already initializing surveys, skipping...");else if(t.disableSurveys)Ar.info($r);else if(t.cookielessMode&&this.ts.isOptedOut())Ar.info("Not loading surveys in cookieless mode without consent.");else{var i=this.ts.getExtensions();if(i){if(!F(this.Pl)||t.advancedEnableSurveys){var e=this.Pl||t.advancedEnableSurveys;this.Tl=!0;try{var r=i.generateSurveys;if(r)return this.Ll(r,e),void(this.Tl=!1);var s=i.loadExternalDependency;if(!s)return this.Ol(Ee),void(this.Tl=!1);s((t=>{try{if(this.Xn)return;var i=this.ts.getExtensions();t||null==i||!i.generateSurveys?this.Ol("Could not load surveys script",t):this.Ll(i.generateSurveys,e)}finally{this.Tl=!1}}))}catch(t){throw this.Tl=!1,this.Ol("Error initializing surveys",t),t}}}else Ar.error("PostHog Extensions not found.")}}}Ll(t,i){this.Xn||(this._surveyManager=t(i),this._surveyEventReceiver=this.ts.createEventReceiver(),Ar.info("Surveys loaded successfully"),this.Dl({isLoaded:!0}))}Ol(t,i){Ar.error(t,i),this.Dl({isLoaded:!1,error:t})}onSurveysLoaded(t){return this.Ml.push(t),this._surveyManager&&this.Dl({isLoaded:!0}),()=>{this.Ml=this.Ml.filter((i=>i!==t))}}getSurveys(t,i){var e;void 0===i&&(i=!1);var r=null!==(e=this.ns)&&void 0!==e?e:this.Al;if(r&&!this.Xn){if(this.qi.disableSurveys)return Ar.info($r),t([]);var s=r.kv.get(fe);if(s&&!i)return t(s,{isLoaded:!0}),void(this.$l()&&this.getSurveys((()=>{}),!0));if(this.El)this.El.then((i=>{this.Xn||t(i.surveys,i.context)})).catch((t=>Ar.error("Error in survey callback",t)));else{var n=this.Nl("/api/surveys/",{method:"GET",query:{token:r.projectToken},sentAt:"query",timeoutMs:this.qi.requestTimeoutMs}).then((t=>{try{return this.ql(r,t)}catch(t){return Ar.error("Error processing surveys response",t),this.ql(r,{statusCode:0,error:t})}}),(t=>this.ql(r,{statusCode:0,error:t})));this.El=n;var a=()=>{this.El===n&&(this.El=null)};n.then((i=>{a(),this.Xn||t(i.surveys,i.context)}),a).catch((t=>Ar.error("Error in survey callback",t)))}}}Nl(t,i){var e=this.ns;return e?e.sendRequest(t,i):new Promise((t=>t({statusCode:0,error:new Error(Mr)})))}ql(t,i){if(this.Xn)return{surveys:[],context:{isLoaded:!1,error:Mr}};var e=i.statusCode;if(200!==e||!i.json){var r="Surveys API could not be loaded, status: "+e;return 0!==e?Ar.error(r):i.error||Ar.warn(r),this.Il=Date.now(),{surveys:[],context:{isLoaded:!1,error:r}}}this.Il=null;var s,n=i.json.surveys||[],a=n.filter((t=>function(t){return!(!t.start_date||t.end_date)}(t)&&(vr(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({[fe]:n,[pe]:Date.now()}),{surveys:n,context:{isLoaded:!0}}}$l(){return this.jl()&&!this.El&&!this.Bl()}jl(){var t,i,e=null==(t=null!==(i=this.ns)&&void 0!==i?i:this.Al)?void 0:t.kv.get(pe);return R(e)&&Date.now()-e>3e5}Bl(){return R(this.Il)&&3e5>Date.now()-this.Il}markSurveyAsSeen(t,i){var e;(t=>{try{var i=(t=>((t,i)=>""+Rr+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){Ar.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){}}Dl(t){for(var i of this.Ml)try{if(!t.isLoaded)return i([],t);this.getSurveys(i)}catch(t){Ar.error("Error in survey callback",t)}}getActiveMatchingSurveys(t,i){if(void 0===i&&(i=!1),!A(this._surveyManager))return this._surveyManager.getActiveMatchingSurveys(t,i);Ar.warn("init was not called")}Hl(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}Ul(t){if(A(this._surveyManager))return{eligible:!1,reason:Mr};var i="string"==typeof t?this.Hl(t):t;return i?this._surveyManager.checkSurveyEligibility(i):{eligible:!1,reason:"Survey not found"}}zl(t){if(A(this._surveyManager))return{eligible:!1,reason:Mr};var i="string"==typeof t?this.Hl(t):t;return i?this._surveyManager.checkSurveyRenderability(i):{eligible:!1,reason:"Survey not found"}}canRenderSurvey(t){if(A(this._surveyManager))return Ar.warn("init was not called"),{visible:!1,disabledReason:Mr};var i=this.zl(t);return{visible:i.eligible,disabledReason:i.reason}}canRenderSurveyAsync(t,i){return A(this._surveyManager)?(Ar.warn("init was not called"),Promise.resolve({visible:!1,disabledReason:Mr})):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.zl(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))Ar.warn("init was not called");else{var s="string"==typeof t?this.Hl(t):t;if(null!=s&&s.id)if(Or.includes(s.type)){var n=null==Kt?void 0:Kt.querySelector(i);if(n)if(null!=(r=s.appearance)&&r.surveyPopupDelaySeconds){Ar.info("Rendering survey "+s.id+" with delay of "+s.appearance.surveyPopupDelaySeconds+" seconds");var a=setTimeout((()=>{var t,i;this.Rl.delete(a),this.Xn||(Ar.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),Ar.info("Survey "+s.id+" rendered"))}),1e3*s.appearance.surveyPopupDelaySeconds);this.Rl.add(a)}else this._surveyManager.renderSurvey(s,n,e);else Ar.warn("Survey element not found")}else Ar.warn("Surveys of type "+s.type+" cannot be rendered in the app");else Ar.warn("Survey not found")}}displaySurvey(t,i){var r;if(A(this._surveyManager))Ar.warn("init was not called");else{var s=this.Hl(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&&Ar.warn("initialResponses is only supported for popover surveys. prefill will not be applied."),!1===i.ignoreConditions){var a=this.Ul(s);if(!a.eligible)return void Ar.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 Ar.warn("Survey not found")}}cancelPendingSurvey(t){A(this._surveyManager)?Ar.warn("init was not called"):this._surveyManager.cancelSurvey(t)}handlePageUnload(){var t;null==(t=this._surveyManager)||null==t.handlePageUnload||t.handlePageUnload()}}class jr{on(t,i){return this.Va[t]||(this.Va[t]=[]),this.Va[t].push(i),()=>{this.Va[t]=this.Va[t].filter((t=>t!==i))}}emit(t,i){for(var e of this.Va[t]||[])e(i);for(var r of this.Va["*"]||[])r(t,i)}constructor(){this.Va={}}}function Lr(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 Dr{constructor(t){this.Wl=new Set,this.Vl=new Set,this.Gl=new jr,this.Zl=(t,i)=>this.Ql(t,i)&&this.Jl(t,i)&&this.Kl(t,i)&&this.Yl(t,i),this.Ql=(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.Xl=null==(i=this._instance)?void 0:i._addCaptureHook(((t,i)=>{this.on(t,i)})))}dispose(){var t;null==(t=this.Xl)||t.call(this),this.Xl=void 0,this.Gl=new jr}register(t){var i,e;if(!F(null==(i=this._instance)?void 0:i._addCaptureHook)&&(t.forEach((t=>{var i;this.Wl.add(t),null==(i=t.steps)||i.forEach((t=>{this.Vl.add((null==t?void 0:t.event)||"")}))})),null!=(e=this._instance)&&e.autocapture)){var r=new Set;this.Wl.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.Wl.clear(),this.Vl.clear(),this.register(t)}on(t,i){null!=i&&0!=t.length&&(this.Vl.has(t)||this.Vl.has(i.event))&&this.Wl.forEach((t=>{this.tu(i,t)&&this.Gl.emit("actionCaptured",t.name)}))}eu(t){this.onAction("actionCaptured",(i=>t(i)))}tu(t,i){if(null==(null==i?void 0:i.steps))return!1;for(var e of i.steps)if(this.Zl(t,e))return!0;return!1}onAction(t,i){return this.Gl.on(t,i)}Jl(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(!Lr(r,i.url,i.url_matching||"contains"))return!1}return!0}Kl(t,i){return!!this.iu(t,i)&&!!this.ru(t,i)&&!!this.nu(t,i)}iu(t,i){var e;if(null==i||!i.href)return!0;var r=this.su(t);if(r.length>0)return r.some((t=>Lr(t.href,i.href,i.href_matching||"exact")));var s,n=(null==t||null==(e=t.properties)?void 0:e.$elements_chain)||"";return!!n&&Lr((s=n.match(/(?::|")href="(.*?)"/))?s[1]:"",i.href,i.href_matching||"exact")}ru(t,i){var e;if(null==i||!i.text)return!0;var r=this.su(t);if(r.length>0)return r.some((t=>Lr(t.text,i.text,i.text_matching||"exact")||Lr(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=>Lr(t,n,a))))}nu(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}su(t){var i;return null==(null==t||null==(i=t.properties)?void 0:i.$elements)?[]:null==t?void 0:t.properties.$elements}Yl(t,i){return null==i||!i.properties||0===i.properties.length||pr(i.properties.reduce(((t,i)=>{var e=k(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 Nr{constructor(t){var i;this.au=[],this._instance=t,this.ou=new Map,this.lu=new Map,this.uu=new Map,this.hu=null==(i=this._instance)||null==i.onSessionId?void 0:i.onSessionId((t=>this.du(t)))}vu(t){return!1}cu(){return null}fu(t){}pu(){}gu(t,i){return!!t&&pr(t.propertyFilters,null==i?void 0:i.properties)}mu(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}yu(t,i,e){var r=(e===Cr?this.ou:this.lu).get(t),s=[];return this.bu((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.gu(n,i)}))}register(t){this._u(t,!1)}replace(t){this._u(t,!0)}_u(t,i){var e;F(null==(e=this._instance)?void 0:e._addCaptureHook)||(this.wu(t,i),this.ku(t,i))}ku(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.uu.clear(),0!==e.length){this.Su||(this.Su=new Dr(this._instance),this.Su.init(),this.Su.eu((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.uu.get(i.name))&&void 0!==e?e:[];s.includes(t.id)||s.push(t.id),this.uu.set(i.name,s)}}))})),i?this.Su.replace(r):this.Su.register(r)}else{var s;i&&(null==(s=this.Su)||s.replace([]))}}xu(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)}))}wu(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.mu(t,Cr),o=this.mu(t,Pr);i?(this.ou=a,this.lu=o):(this.xu(this.ou,a),this.xu(this.lu,o)),(0!==s.length||0!==n.length)&&(null!==(e=this.Xl)&&void 0!==e||(this.Xl=null==(r=this._instance)?void 0:r._addCaptureHook(((t,i)=>{this.onEvent(t,i)}))))}onEvent(t,i){var e,r,s=this.Cu(),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.Tu(t,n);if("consume"===a)return s.info("event consumed activated item, removing it",{event:t,itemId:n}),void this.Mu([n]);if("persist"===a)return s.info("shown item promoted to persisted activation",{event:t,itemId:n}),this.Eu(n),void this.Iu([n])}if(this.lu.has(t)){var o=this.yu(t,i,Pr);o.length>0&&(s.info("cancel event matched, cancelling items",{event:t,itemsToCancel:o.map((t=>t.id))}),this.Mu(o.map((t=>t.id))),o.forEach((t=>this.Ru(t.id))))}if(this.ou.has(t)){s.info("event name matched",{event:t,eventPayload:i,items:this.ou.get(t)});var l=this.yu(t,i,Cr);this.Pu(l.map((t=>t.id)))}}onAction(t){this.uu.has(t)&&this.Pu(this.uu.get(t)||[])}Pu(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.vu(s)?this.Eu(s)&&this.Au(s):r.push(s);r.length>0&&(this.au=[...new Set([...this.au,...r])]),this.Cu().info("updating activated items",{activatedItems:this.getActivatedIds()})}}Eu(t){this.au=this.au.filter((i=>i!==t));var i=this.Fu();return!i.includes(t)&&(this.Lu([...i,t]),this.Ou(),!0)}Mu(t){var i=new Set(t);this.au=this.au.filter((t=>!i.has(t)));var e=this.Du(),r=e.filter((t=>!i.has(t)));r.length!==e.length&&(this.Lu(r),0===r.length&&this.$u()),this.Iu(t)}Nu(){var t,i=this.cu();if(!i)return{};var e=null==(t=this._instance)||null==(t=t.persistence)?void 0:t.props[i];return e&&"object"==typeof e?e:{}}Au(t){if(this.cu()){var i=this.Nu();this.fu(e({},i,{[t]:Date.now()}))}}Iu(t){if(this.cu()){var i=this.Nu(),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.pu():this.fu(e))}}qu(){this.cu()&&this.pu()}getActivationTimestamp(t){if(this.Fu().includes(t)){var i=this.Nu()[t];return R(i)?i:void 0}}Du(){var t,i=this.ju();return(null==(t=this._instance)||null==(t=t.persistence)?void 0:t.props[i])||[]}Fu(){var t,i,e=this.Du();if(0===e.length)return[];var r=null==(t=this._instance)||null==(t=t.persistence)?void 0:t.props[this.Bu()],s=null==(i=this._instance)||null==i.get_session_id?void 0:i.get_session_id();return s&&r===s?e:[]}Ou(){var t,i=null==(t=this._instance)||null==t.get_session_id?void 0:t.get_session_id();i&&this.Hu(i)}$u(){this.Uu()}du(t){var i,e=null==(i=this._instance)||null==(i=i.persistence)?void 0:i.props[this.Bu()];if(e&&e!==t){var r=this.Du(),s=this.Nu();r.length>0&&(this.Lu([]),r.filter((t=>R(s[t]))).forEach((t=>this.Ru(t)))),this.$u(),this.qu()}}getActivatedIds(){return[...new Set([...this.Fu(),...this.au])].filter((t=>!this.zu(t)))}dispose(){var t,i,e;null==(t=this.hu)||t.call(this),this.hu=void 0,null==(i=this.Xl)||i.call(this),this.Xl=void 0,null==(e=this.Su)||e.dispose(),this.Su=void 0}reset(){this.au=[],this.Du().length>0&&this.Lu([]),this.$u(),this.qu()}getEventToItemsMap(){return this.ou}Wu(){return this.Su}}class zr extends Nr{constructor(t){super(t)}ju(){return ge}Bu(){return _e}cu(){return be}fu(t){var i;null==(i=this._instance)||null==(i=i.persistence)||i.register({[be]:t})}pu(){var t;null==(t=this._instance)||null==(t=t.persistence)||t.unregister(be)}vu(t){var i,e;this.bu((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}Vu(){return Tr}bu(t){var i;null==(i=this._instance)||i.getSurveys(t)}Ru(t){var i;null==(i=this._instance)||i.cancelPendingSurvey(t)}Cu(){return Ar}Lu(t){var i;null==(i=this._instance)||null==(i=i.persistence)||i.register({[ge]:t})}Hu(t){var i;null==(i=this._instance)||null==(i=i.persistence)||i.register({[_e]:t})}Uu(){var t;null==(t=this._instance)||null==(t=t.persistence)||t.unregister(_e)}zu(){return!1}Tu(t,i){var e;this.bu((t=>{e=t.find((t=>t.id===i))}));var r=!e||function(t){var i;return vr(t)&&!(null==(i=t.conditions)||null==(i=i.events)||!i.repeatedActivation)||"always"===t.schedule}(e);return r?t===Tr?"consume":"ignore":t===Tr?"persist":"survey dismissed"===t||"survey sent"===t?"consume":"ignore"}getSurveys(){return this.getActivatedIds()}getEventToSurveys(){return this.getEventToItemsMap()}}class Ur{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 Hr{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==Ue?void 0:Ue.__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 zr(this._instance)}}var qr=null!=Vt&&Vt.location?Ae(Vt.location.hash,"__posthog")||Ae(location.hash,"state"):null,Vr="_postHogToolbarParams",Br=Yt("[Toolbar]"),Wr=Yt("[FeatureFlags]");class Kr{constructor(t,i){void 0===i&&(i=!1),this.Gu=!1,this.update(t,i)}update(t,i){this.Zu=((t,i)=>{var e,r,s,n;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,requestTimeoutMs:t.feature_flag_request_timeout_ms,compression:t.disable_compression?"none":"base64",evaluationContexts:null!==(s=null!==(n=t.evaluation_contexts)&&void 0!==n?n:t.evaluation_environments)&&void 0!==s?s:[],flagKeys:k(t.flag_keys)?t.flag_keys:void 0}})(t,i),!t.evaluation_environments||t.evaluation_contexts||this.Gu||(Wr.warn("evaluation_environments is deprecated. Use evaluation_contexts instead. evaluation_environments will be removed in a future version."),this.Gu=!0),F(t.flag_keys)||k(t.flag_keys)||Wr.error("Invalid flag_keys found:",t.flag_keys,"Expected array of non-empty strings")}get(){return this.Zu}}var Jr=Yt("[FeatureFlags]"),Gr=Yt("[FeatureFlags]",{debugEnabled:!0}),Zr="\" failed. Feature flags didn't load in time.",Qr="connection_error",Yr=t=>{for(var i={},e=0;t.length>e;e++)i[t[e]]=!0;return i},Xr=t=>{var i={};for(var e of ii(t||{})){var r=e[1];r&&(i[e[0]]=r)}return i},ts=Yt("[Error tracking]"),is=["chrome-extension://","moz-extension://","safari-extension:","safari-web-extension:"],es=["__firefox__","__gCrWeb"],rs="Refusing to render web experiment since the viewer is a likely bot",ss={icontains:(t,i)=>i.toLowerCase().indexOf(t.toLowerCase())>-1,not_icontains:(t,i)=>-1===i.toLowerCase().indexOf(t.toLowerCase()),regex:(t,i)=>dr(i,t),not_regex:(t,i)=>!dr(i,t),exact:(t,i)=>i===t,is_not:(t,i)=>i!==t};class ns{get qi(){return this._instance.config}constructor(t){var i=this;this.getWebExperimentsAndEvaluateDisplayLogic=function(t){void 0===t&&(t=!1),i.getWebExperiments((t=>{ns.Qu("retrieved web experiments from the server"),i.Ju=new Map,t.forEach((t=>{if(t.feature_flag_key){var e;i.Ju&&(ns.Qu("setting flag key ",t.feature_flag_key," to web experiment ",t),null==(e=i.Ju)||e.set(t.feature_flag_key,t));var r=i._instance.getFeatureFlag(t.feature_flag_key);C(r)&&t.variants[r]&&i.Ku(t.name,r,t.variants[r].transforms)}else if(t.variants)for(var s in t.variants){var n=t.variants[s];ns.Yu(n,i._instance)&&i.Ku(t.name,s,n.transforms)}}))}),t)},this._instance=t,this._instance.onFeatureFlags((t=>{this.onFeatureFlags(t)}))}initialize(){}onFeatureFlags(t){if(this._is_bot())ns.Qu(rs);else if(!this.qi.disable_web_experiments){if(A(this.Ju))return this.Ju=new Map,this.loadIfEnabled(),void this.previewWebExperiment();ns.Qu("applying feature flags",t),t.forEach((t=>{var i;if(this.Ju&&null!=(i=this.Ju)&&i.has(t)){var e,r=this._instance.getFeatureFlag(t),s=null==(e=this.Ju)?void 0:e.get(t);r&&null!=s&&s.variants[r]&&this.Ku(s.name,r,s.variants[r].transforms)}}))}}previewWebExperiment(){var t=ns.getWindowLocation();if(null!=t&&t.search){var i=Pe(null==t?void 0:t.search,"__experiment_id"),e=Pe(null==t?void 0:t.search,"__experiment_variant");i&&e&&(ns.Qu("previewing web experiments "+i+" && "+e),this.getWebExperiments((t=>{this.Xu(parseInt(i),e,t)}),!1,!0))}}loadIfEnabled(){this.qi.disable_web_experiments||this.getWebExperimentsAndEvaluateDisplayLogic()}getWebExperiments(t,i,e){if(this.qi.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.qi.token),method:"GET",timestampMode:"query",callback:i=>t(200===i.statusCode&&i.json&&i.json.experiments||[])})}Xu(t,i,e){var r=e.filter((i=>i.id===t));r&&r.length>0&&(ns.Qu("Previewing web experiment ["+r[0].name+"] with variant ["+i+"]"),this.Ku(r[0].name,i,r[0].variants[i].transforms))}static Yu(t,i){return!A(t.conditions)&&ns.th(t,i)&&ns.eh(t)}static th(t,i){var e;if(A(t.conditions)||A(null==(e=t.conditions)?void 0:e.url))return!0;var r=ns.getWindowLocation();if(r){var s,n,a,o=ni(i,r.href);return null==(s=t.conditions)||!s.url||ss[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==Vt?void 0:Vt.location}static eh(t){var i;if(A(t.conditions)||A(null==(i=t.conditions)?void 0:i.utm))return!0;var e=Ye();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 Qu(t){for(var i=arguments.length,e=new Array(i>1?i-1:0),r=1;i>r;r++)e[r-1]=arguments[r];Qt.info("[WebExperiments] "+t,e)}Ku(t,i,e){this._is_bot()?ns.Qu(rs):"control"!==i?e.forEach((e=>{if(e.selector){var r;ns.Qu("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)}))}})):ns.Qu("Control variants leave the page unmodified.")}_is_bot(){return Wt&&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}(Wt,this.qi.custom_blocked_useragents):void 0}}var as=Yt("[Conversations]"),os="Conversations not available yet.",ls="console",us="__posthogHandledLogsRequestError",hs=(t,i)=>{var e=t instanceof Error?t:new Error(i);return e[us]=!0,e},vs=t=>!!t&&"object"==typeof t&&!0===t[us],ds={featureFlags:class{constructor(t){this.name="featureFlags",this.ih=!1,this.featureFlagEventHandlers=[],this.I=Jr,this.rh={},this.nh={},this.sh=[],this.ah=!1,this.oh=!1,this.lh=0,this.uh=!1,this.hh=!1,this.dh=!1,this.fh=!1,this.ph=0,this.Tt=()=>{var t=this.gh();this.ph=0,t&&this.reloadFeatureFlags()},"get"in t?this.ts=t:(this.mh=new Kr(t.config,t._shouldDisableFlags()),this.ts=this.mh)}updateConfig(t,i){var e;null==(e=this.mh)||e.update(t,i)}setup(t){return this.Fl=t,this.I=t.logger.createLogger("[FeatureFlags]"),Er(t.kv.initialize(),(()=>{this.Fl===t&&(this.Fl=void 0,this.ns=t,this.yh(t))}))}yh(t){if(this.ns===t)return Vt&&ri(Vt,"online",this.Tt),this.bh=t.registerDynamicEventProperties((()=>this._h()?this.rh:this.nh)),this.wh(),this.initialize()}destroy(){null==Vt||Vt.removeEventListener("online",this.Tt)}dispose(){var t;this.lh++,this.hh=!1,this.Fl=void 0,this.ns&&(this.kh(),null==(t=this.bh)||t.dispose(),this.bh=void 0,this.sh=[],null==Vt||Vt.removeEventListener("online",this.Tt),this.ns=void 0)}get qi(){return this.ts.get()}Sh(t){var i;return null==(i=this.ns)?void 0:i.kv.get(t)}Dr(t){this.xh((()=>{var i;return null==(i=this.ns)?void 0:i.kv.set(t)}))}qr(t){this.xh((()=>{var i;return null==(i=this.ns)?void 0:i.kv.remove(t)}))}xh(t){try{t()}catch(t){this.I.error("Failed to update feature flag persistence",t)}}wh(){var t={};for(var i of[se,oe,le,he]){var r=this.Sh(i);F(r)||(t[i]=r)}this.rh=t;var s=e({},t),n=this.Sh(re);if(n)for(var a of Object.entries(n))s["$feature/"+a[0]]=a[1];this.nh=s}_h(){var t=this.qi.cacheTtlMs;if(!t||0>=t)return!1;var i=this.Sh(Se);return"number"!=typeof i||Date.now()-i>t}Ch(){return!!this._h()&&(this.fh||this.oh||(this.fh=!0,this.I.warn("Feature flag cache is stale, triggering refresh..."),this.reloadFeatureFlags()),!0)}Th(){var t=this.qi.evaluationContexts;return null!=t&&t.length?t.filter((t=>{var i=t&&"string"==typeof t&&t.trim().length>0;return i||this.I.error("Invalid evaluation context found:",t,"Expected non-empty string"),i})):[]}Mh(){var t=this.qi.flagKeys;if(!F(t))return t.filter((t=>{var i=t&&"string"==typeof t&&t.trim().length>0;return i||this.I.error("Invalid flag key found:",t,"Expected non-empty string"),i}))}initialize(){var t,i,e=this.qi,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.Eh({featureFlags:o,featureFlagPayloads:l})}}updateFlags(t,i,r){var a,o,l=null!=r&&r.merge&&null!==(a=this.Sh(re))&&void 0!==a?a:{},u=null!=r&&r.merge&&null!==(o=this.Sh(oe))&&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.Eh({flags:d})}get hasLoadedFlags(){return this.ah}getFlags(){return Object.keys(this.getFlagVariants())}getFlagsWithDetails(){var t=this.Sh(ae),i=this.Sh(he),r=this.Sh(ve);if(!r&&!i)return t||{};var s=ti({},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.ih||(this.I.warn(" Overriding feature flag details!",{flagDetails:t,overriddenPayloads:r,finalDetails:s}),this.ih=!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.Sh(re),i=this.Sh(he);if(!i)return t||{};for(var e=ti({},t||{}),r=Object.keys(i),s=0;r.length>s;s++)e[r[s]]=i[r[s]];return this.ih||(this.I.warn(" Overriding feature flags!",{enabledFlags:t,overriddenFlags:i,finalFlags:e}),this.ih=!0),e}getFlagPayloads(){var t=this.Sh(oe),i=this.Sh(ve);if(!i)return t||{};for(var e=ti({},t||{}),r=Object.keys(i),s=0;r.length>s;s++)e[r[s]]=i[r[s]];return this.ih||(this.I.warn(" Overriding feature flag payloads!",{flagPayloads:t,overriddenPayloads:i,finalPayloads:e}),this.ih=!0),e}reloadFeatureFlags(){this.uh||this.qi.featureFlagsDisabled||this.gh()||this.Ih||(this.sh.slice().forEach((t=>{try{t()}catch(t){this.I.error("Error while running feature flags reloading callback",t)}})),this.Ih=setTimeout((()=>{this.Rh()}),5))}kh(){clearTimeout(this.Ih),this.Ih=void 0}onReloading(t){return this.sh.push(t),()=>{this.sh=this.sh.filter((i=>i!==t))}}ensureFlagsLoaded(){this.ah||this.oh||this.Ih||this.reloadFeatureFlags()}setAnonymousDistinctId(t){this.$anon_distinct_id=t}setReloadingPaused(t){this.uh=t}resetFlagCallReported(){this.qr(ye)}Rh(t){this.kh();var i=this.ns;if(i&&!this.qi.remoteRequestsDisabled&&!this.gh())if(this.oh)this.hh=!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.Sh(de)||{},{$lib:i.library.name,$lib_version:i.library.version}),group_properties:this.Sh(ce),timezone:Xe()};F(i.deviceId)||(r.$device_id=i.deviceId),(null!=t&&t.disableFlags||this.qi.featureFlagsDisabled)&&(r.disable_flags=!0);var s=this.Th();s.length&&(r.evaluation_contexts=s);var n=this.Mh();F(n)||(r.flag_keys=n);var a=this.qi.onlyEvaluateSurveyFeatureFlags,o="/flags/?v=2"+(a?"&only_evaluate_survey_feature_flags=true":""),l=this.lh;this.oh=!0;var u=()=>{this.hh&&(this.hh=!1,this.Rh())},h=t=>{this.oh=!1,l===this.lh?(this.Dr({[ke]:[Qr]}),this.I.error("Feature flag request failed",t),u()):u()};try{i.sendRequest(o,{target:"flags",method:"POST",body:r,compression:"base64"===this.qi.compression?Fr:void 0,sentAt:"body",timeoutMs:this.qi.requestTimeoutMs}).then((t=>{var i,e,s=null!==(i=t.json)&&void 0!==i?i:{},n=200!==t.statusCode;if(this.oh=!1,l===this.lh){if(this.Ph(t.statusCode),n||this.hh||(this.$anon_distinct_id=void 0),!r.disable_flags||this.hh){this.dh=!n;var o=[];t.error?o.push(t.error instanceof Error&&"AbortError"===t.error.name?"timeout":t.error instanceof Error?Qr:"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.Dr({[ke]:o}),h?this.I.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.Eh(s,n,{partialResponse:a}),u()}}else u()})).catch(h)}catch(t){h(t)}}}gh(){return Re(this.ph,3)}Ph(t){this.ph=Oe(t,this.ph,3,(()=>this.I.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.dh)if(this.ah||this.getFlags()&&this.getFlags().length>0){if(!this.Ch()){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.I.warn('getFeatureFlag for key "'+t+Zr)}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.dh)if(this.ah||this.getFlags()&&this.getFlags().length>0){if(!this.Ch()){var s,n=this.getFlagVariants(),a=t in n,o=n[t],l=this.getFlagPayloads()[t],u=String(o),h=this.Sh(le)||void 0,v=this.Sh(Se)||void 0,d=this.Sh(ye)||{};if(this.qi.deduplicateCallsPerSession){var c,f=null==(c=this.ns)?void 0:c.session.sessionId,p=this.Sh(we);f&&f!==p&&(d={},s=f)}if(i.send_event||!("send_event"in i))if(t in d&&d[t].includes(u))s&&this.Dr({[ye]:d,[we]:s});else{var g,_,b,m,y,w,S,x,E,C,P,T;k(d[t])?d[t].push(u):d[t]=[u],this.Dr(e({[ye]:d},s?{[we]:s}:{}));var A=this.getFeatureFlagDetails(t),R=[...null!==(g=this.Sh(ke))&&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.qi.bootstrap)||null==(b=b.featureFlags)?void 0:b[t])&&void 0!==_?_:null,$feature_flag_bootstrapped_payload:null!==(m=null==(y=this.qi.bootstrap)||null==(y=y.featureFlagPayloads)?void 0:y[t])&&void 0!==m?m:null,$used_bootstrap_value:!this.dh};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==(S=A.metadata)?void 0:S.version)||(O.$feature_flag_version=A.metadata.version);var M,I=null!==(x=null==A||null==(E=A.reason)?void 0:E.description)&&void 0!==x?x:null==A||null==(C=A.reason)?void 0:C.code;I&&(O.$feature_flag_reason=I),null!=A&&null!=(P=A.metadata)&&P.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.Ah(O)}else s&&this.Dr({[ye]:d,[we]:s});if(a)return{key:t,enabled:!!o,variant:"string"==typeof o?o:void 0,payload:r(l)}}}else this.I.warn('getFeatureFlagResult for key "'+t+Zr)}Ah(t){try{var i;null==(i=this.ns)||i.capture("$feature_flag_called",t).catch((t=>{this.I.error("Failed to capture feature flag call",t)}))}catch(t){this.I.error("Failed to capture feature flag call",t)}}getRemoteConfigPayload(t,i){this.Fh(t,i)}Fh(t,e){var r=this;return i((function*(){var i=r.ns;if(i){var s={distinct_id:i.distinctId,token:i.projectToken,person_properties:{$lib:i.library.name,$lib_version:i.library.version}},n=r.Th();n.length&&(s.evaluation_contexts=n);var a,o=r.Mh();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:"base64"===r.qi.compression?Fr:void 0,sentAt:"body",timeoutMs:r.qi.requestTimeoutMs})).json)?void 0:l.featureFlagPayloads;a=(null==u?void 0:u[t])||void 0}catch(t){return void r.I.error("Remote config feature flag request failed",t)}try{e(a)}catch(t){r.I.error("Remote config feature flag callback failed",t)}}}))()}isFeatureEnabled(t,i){if(void 0===i&&(i={}),i.fresh&&!this.dh)return i.defaultValue;if(!(this.ah||this.getFlags()&&this.getFlags().length>0))return this.I.warn('isFeatureEnabled for key "'+t+Zr),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.Eh(t,i,e)}Eh(t,i,r){if(this.ns){this.ah=!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=Jr);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 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(k(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{[se]:u,[re]:c,[ue]:!1}}var p=u,g=h,_=l;if(null!=n&&n.partialResponse)p=e({},i,p),g=e({},r,g),_=e({},s,_);else if(t.errorsWhileComputingFlags)if(l){var b=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=>b.has(t[0]))))),g=e({},r,Object.fromEntries(Object.entries(g||{}).filter((t=>b.has(t[0]))))),_=e({},s,Object.fromEntries(Object.entries(_||{}).filter((t=>b.has(t[0])))))}else p=e({},i,p),g=e({},r,g),_=e({},s,_);return e({[se]:Object.keys(Xr(p)),[re]:p||{},[oe]:g||{},[ae]:_||{},[ue]:!0===t.minimalFlagCalledEvents},v?{[le]:v}:{},d?{[Se]:d}:{})}}(t,this.getFlagVariants(),this.getFlagPayloads(),this.getFlagsWithDetails(),r,this.I);s&&this.Dr(s),i||(this.fh=!1),this.Lh(i)}}override(t,i){void 0===i&&(i=!1),this.I.warn("override is deprecated. Please use overrideFeatureFlags instead."),this.overrideFeatureFlags({flags:t,suppressWarning:i})}overrideFeatureFlags(t){this.Oh(t)}Oh(t){if(this.ns){if(!1===t)return this.qr([he,ve]),this.Lh(),void Gr.info("All overrides cleared");if(k(t))return this.Dr({[he]:Yr(t)}),this.Lh(),void Gr.info("Flag overrides set",{flags:t});if(t&&"object"==typeof t&&("flags"in t||"payloads"in t)){var i,e=t;this.ih=Boolean(null!==(i=e.suppressWarning)&&void 0!==i&&i);var r={},s=e.flags,n=e.payloads;return s&&(r[he]=k(s)?Yr(s):s),n&&(r[ve]=n),Object.keys(r).length&&this.Dr(r),!1===s&&!1===n?this.qr([he,ve]):!1===s?this.qr(he):!1===n&&this.qr(ve),this.Lh(),!1===s?Gr.info("Flag overrides cleared"):s&&Gr.info("Flag overrides set",{flags:s}),void(!1===n?Gr.info("Payload overrides cleared"):n&&Gr.info("Payload overrides set",{payloads:n}))}if(t&&"object"==typeof t)return this.Dr({[he]:t}),this.Lh(),void Gr.info("Flag overrides set",{flags:t});this.I.warn("Invalid overrideOptions provided to overrideFeatureFlags",{overrideOptions:t})}else this.I.warn("posthog.featureFlags.overrideFeatureFlags called before feature flags were ready")}onFeatureFlags(t){if(this.addFeatureFlagsHandler(t),this.ah){var i=this.Dh(),e=i.flags,r=i.flagVariants;try{t(e,r)}catch(t){this.I.error("Error while running feature flags callback",t)}}return()=>this.removeFeatureFlagsHandler(t)}updateEarlyAccessFeatureEnrollment(t,i,r){var s=(this.Sh(ne)||[]).find((i=>i.flagKey===t)),n={["$feature_enrollment/"+t]:i},a={$feature_flag:t,$feature_enrollment:i,$set:n};s&&(a.$early_access_feature_name=s.name),r&&(a.$feature_enrollment_stage=r);var o=e({},this.getFlagVariants(),{[t]:i});this.Dr({[se]:Object.keys(Xr(o)),[re]:o,[de]:e({},this.Sh(de)||{},n)}),this.Lh();try{var l;null==(l=this.ns)||l.capture("$feature_enrollment_update",a).catch((t=>{this.I.error("Failed to capture early access feature enrollment",t)}))}catch(t){this.I.error("Failed to capture early access feature enrollment",t)}}getEarlyAccessFeatures(t,i,e){void 0===i&&(i=!1);var r=this.Sh(ne);!r||i?this.$h(t,e):t(r)}$h(t,e){var r=this;return i((function*(){var i=r.ns;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.Dr({[ne]:s=a.json.earlyAccessFeatures})}catch(t){return void r.I.error("Early access feature request failed",t)}try{t(s)}catch(t){r.I.error("Early access feature callback failed",t)}}}))()}Dh(){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)),{})}}Lh(t){this.wh();var i=this.Dh(),e=i.flags,r=i.flagVariants;this.featureFlagEventHandlers.forEach((i=>{try{i(e,r,{errorsLoading:t})}catch(t){this.I.error("Error while running feature flags callback",t)}}))}setPersonPropertiesForFlags(t,i){void 0===i&&(i=!0),this.Nh(t,i)}Nh(t,i){void 0===i&&(i=!0);var r=this.Sh(de)||{},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.Dr({[de]:e({},r,a,s)}),i&&this.reloadFeatureFlags()}unsetPersonPropertiesForFlags(t,i){void 0===i&&(i=!0);var r=e({},this.Sh(de)||{});t.forEach((t=>{delete r[t]})),this.Dr({[de]:r}),i&&this.reloadFeatureFlags()}resetPersonPropertiesForFlags(t){void 0===t&&(t=!0),this.qr(de),t&&this.reloadFeatureFlags()}setGroupPropertiesForFlags(t,i){void 0===i&&(i=!0);var r=this.Sh(ce)||{},s=e({},r);for(var n of Object.keys(t))s[n]=e({},r[n],t[n]);this.Dr({[ce]:s}),i&&this.reloadFeatureFlags()}resetGroupPropertiesForFlags(t){if(t){var i=this.Sh(ce)||{};this.Dr({[ce]:e({},i,{[t]:{}})})}else this.qr(ce)}reset(){this.lh++,this.hh=!1,this.rh={},this.nh={},this.ah=!1,this.uh=!1,this.dh=!1,this.$anon_distinct_id=void 0,this.kh(),this.ih=!1,this.ph=0}}},cs={sessionRecording:class{get qi(){return this._instance.config}get za(){return this._instance.persistence}get started(){var t;return!(null==(t=this.qh)||!t.isStarted)}get status(){var t,i;return this.jh===ur||this.jh===hr?this.jh:null!==(t=null==(i=this.qh)?void 0:i.status)&&void 0!==t?t:this.jh}constructor(t){if(this._forceAllowLocalhostNetworkCapture=!1,this.jh=or,this.Bh=void 0,this.Hh=!1,this.kt=(()=>{var t;if(null==Kt||!Kt.visibilityState||"visible"===Kt.visibilityState)return!0;var i=null==Vt||null==(t=Vt.performance)||null==t.getEntriesByType?void 0:t.getEntriesByType("visibility-state");return!(null!=i&&i.length)||i.some((t=>"visible"===t.name))})(),this.It=()=>{var t;"visible"===(null==Kt?void 0:Kt.visibilityState)&&(this.kt=!0,null==(t=this.qh)||null==t.setDocumentWasEverVisible||t.setDocumentWasEverVisible(!0))},this._instance=t,!this._instance.sessionManager)throw _r.error("started without valid sessionManager"),new Error(gr+" started without valid sessionManager. This is a bug.");if("always"===this.qi.cookieless_mode)throw new Error(gr+' cannot be used with cookieless_mode="always"');null!=Kt&&Kt.addEventListener&&ri(Kt,"visibilitychange",this.It)}initialize(){this.startIfEnabledOrStop()}dispose(){this.Hh=!0,null==Kt||null==Kt.removeEventListener||Kt.removeEventListener("visibilitychange",this.It),this.stopRecording()}get Uh(){var t,i=!(null==(t=this._instance.get_property(ee))||!t.enabled),e=!this.qi.disable_session_recording,r=this.qi.disable_session_recording||this._instance.consent.isOptedOut();return Vt&&i&&e&&!r}startIfEnabledOrStop(t){var i;if(!(this.Hh||this.Uh&&null!=(i=this.qh)&&i.isStarted)){var e=!F(Object.assign)&&!F(Array.from);this.Uh&&e?(this.zh(t),_r.info("starting")):(this.jh=or,this.stopRecording())}}zh(t){var i,e,r;this.Uh&&(this.jh!==ur&&this.jh!==hr&&(this.jh=lr),null!=Ue&&null!=(i=Ue.__PosthogExtensions__)&&null!=(i=i.rrweb)&&i.record&&null!=(e=Ue.__PosthogExtensions__)&&e.initSessionRecording?this.Wh(t):null==(r=Ue.__PosthogExtensions__)||null==r.loadExternalDependency||r.loadExternalDependency(this._instance,this.Vh,(i=>{if(i)return this._instance.register_for_session({[xe]:!0}),_r.error("could not load recorder",i);this.Wh(t)})))}stopRecording(){var t,i;null==(t=this.Bh)||t.call(this),this.Bh=void 0,null==(i=this.qh)||i.stop()}Gh(){var t,i;null==(t=this.Bh)||t.call(this),this.Bh=void 0,null==(i=this.qh)||i.discard()}Zh(){var t,i;null==(t=this.za)||t.unregister("$session_is_sampled"),null==(i=this.za)||i.unregister("$replay_sample_rate")}Qh(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?(_r.warn(i+" must be between 0 and 1. Ignoring invalid value:",t),null):r}Jh(t){if(this.za){var i,r,s=this.za,n=()=>{var i,r=!1===t.sessionRecording?void 0:t.sessionRecording,n=this.Qh(null==(i=this.qi.session_recording)?void 0:i.sampleRate,"session_recording.sampleRate"),a=this.Qh(null==r?void 0:r.sampleRate,"remote config sampleRate"),o=null!=n?n:a;A(o)&&this.Zh();var l=null==r?void 0:r.minimumDurationMilliseconds;s.register({[ee]: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.Bh)||i.call(this),this.Bh=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.Jh(i),void this.Gh()):(this.Jh(i),void this.startIfEnabledOrStop()):(this.jh===ur&&(this.jh=hr,_r.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.qh)&&e.log?this.qh.log(t,i):_r.warn("log called before recorder was ready")}get Vh(){var t,i,e=null==(t=this._instance)||null==(t=t.persistence)?void 0:t.get_property(ee);return(null==e||null==(i=e.scriptConfig)?void 0:i.script)||"lazy-recorder"}Kh(){var t,i=this._instance.get_property(ee);if(!i)return!1;try{t="object"==typeof i?i:JSON.parse(i)}catch(t){return _r.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}Wh(t){var i,e,r;if(!this.Hh){if(null==(i=Ue.__PosthogExtensions__)||!i.initSessionRecording)return _r.warn("Called on script loaded before session recording is available. This can be caused by adblockers."),void this._instance.register_for_session({[xe]:!0});var s;if(this.qh||(this.qh=null==(s=Ue.__PosthogExtensions__)?void 0:s.initSessionRecording(this._instance,this.kt),this.qh._forceAllowLocalhostNetworkCapture=this._forceAllowLocalhostNetworkCapture),!this.Kh()){if(this.jh===hr||this.jh===ur)return;return this.jh=ur,_r.info("persisted remote config is stale, requesting fresh config before starting"),void new ar(this._instance).load()}this.jh=lr,null==(e=(r=this.qh).setDocumentWasEverVisible)||e.call(r,this.kt),this.qh.start(t)}}onRRwebEmit(t){var i;null==(i=this.qh)||null==i.onRRwebEmit||i.onRRwebEmit(t)}overrideLinkedFlag(){var t,i;this.qh||null==(i=this.za)||i.register({$replay_override_linked_flag:!0}),null==(t=this.qh)||t.overrideLinkedFlag()}overrideSampling(){var t,i;this.qh||null==(i=this.za)||i.register({$replay_override_sampling:!0}),null==(t=this.qh)||t.overrideSampling()}overrideTrigger(t){var i,e;this.qh||null==(e=this.za)||e.register({["url"===t?"$replay_override_url_trigger":"$replay_override_event_trigger"]:!0}),null==(i=this.qh)||i.overrideTrigger(t)}get sdkDebugProperties(){var t;return(null==(t=this.qh)?void 0:t.sdkDebugProperties)||{$recording_status:this.status}}tryAddCustomEvent(t,i){var e;return!(null==(e=this.qh)||!e.tryAddCustomEvent(t,i))}}},fs={autocapture:class extends De{constructor(t){super(new Ne(t)),this.instance=t}},historyAutocapture:class{constructor(t){this._instance=t,this.Yh=this.Xh()}initialize(){this.startIfEnabled()}get isEnabled(){var t=this.td();return!!(t.path||t.search||this.ed(t))}startIfEnabled(){this.isEnabled&&(Qt.info("History API monitoring enabled, starting..."),this.monitorHistoryChanges())}startIfEnabledOrStop(){this.stop(),this.Yh=this.Xh(),this.startIfEnabled()}stop(){this.rd&&this.rd(),this.rd=void 0,this.nd&&this.nd(),this.nd=void 0,Qt.info("History API monitoring stopped")}monitorHistoryChanges(){Vt&&Vt.history&&(this.sd("pushState"),this.sd("replaceState"),this.ad(),this.ed()&&this.od())}sd(t){var i;if(Vt&&(null==(i=Vt.history[t])||!i.__posthog_wrapped__)){var e=this;!function(t,i,e){try{if(!(i in t))return We;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 S(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];S(e)&&e.__posthog_layer__;){var n=e.__posthog_layer__;if(n.next===s)return void(n.next=r.next);e=n.next}else t[i]=r.next}}catch(t){return We}}(Vt.history,t,(i=>function(r,s,n){i.call(this,r,s,n),e.ld(t)}))}}Xh(){var t=null==Vt?void 0:Vt.location;if(null!=t&&t.pathname)return{pathname:t.pathname,search:t.search,hash:t.hash}}td(){var t=this._instance.config.capture_pageview;return"history_change"===t?{path:!0}:x(t)?t:{}}ed(t){return void 0===t&&(t=this.td()),!!t.hash&&!this._instance.config.disable_capture_url_hashes}ud(t){var i=this.td(),e=this.Yh;return!(!e||!(i.path&&t.pathname!==e.pathname||i.search&&t.search!==e.search||this.ed(i)&&t.hash!==e.hash))}ld(t){try{var i=this.Xh();if(!i)return;this.ud(i)&&this._instance.capture("$pageview",{navigation_type:t}),this.Yh=i}catch(i){Qt.error("Error capturing "+t+" pageview",i)}}ad(){if(!this.rd){var t=()=>{this.ld("popstate")};ri(Vt,"popstate",t),this.rd=()=>{Vt&&Vt.removeEventListener("popstate",t)}}}od(){if(!this.nd){var t=()=>{this.ld("hashchange")};ri(Vt,"hashchange",t),this.nd=()=>{Vt&&Vt.removeEventListener("hashchange",t)}}}},heatmaps:class{get qi(){return this.instance.config}constructor(t){var i;this.hd=!1,this.Qn=!1,this.dd=null,this.instance=t,this.hd=!(null==(i=this.instance.persistence)||!i.props[Gi]),this.rageclicks=new Ki(t.config.rageclick)}initialize(){this.startIfEnabled()}get flushIntervalMilliseconds(){var t=5e3;return x(this.qi.capture_heatmaps)&&this.qi.capture_heatmaps.flush_interval_milliseconds&&(t=this.qi.capture_heatmaps.flush_interval_milliseconds),t}get isEnabled(){return A(this.qi.capture_heatmaps)?A(this.qi.enable_heatmaps)?this.hd:this.qi.enable_heatmaps:!1!==this.qi.capture_heatmaps}startIfEnabled(){if(this.isEnabled){if(this.Qn)return;br.info("starting..."),this.vd(),this.It()}else{var t;clearInterval(null!==(t=this.dd)&&void 0!==t?t:void 0),this.fd(),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({[Gi]:e}),this.hd=e,this.startIfEnabled()}}}getAndClearBuffer(){var t=this.ft;return this.ft=void 0,t}pd(t){mr(t.originalEvent)&&this.ki(t.originalEvent,"deadclick")}It(){this.dd&&clearInterval(this.dd),this.dd="visible"===(null==Kt?void 0:Kt.visibilityState)?setInterval(this.La.bind(this),this.flushIntervalMilliseconds):null}vd(){Vt&&Kt&&(this.gd=this.La.bind(this),ri(Vt,Ce,this.gd),this.md=t=>this.ki(t||(null==Vt?void 0:Vt.event)),ri(Kt,"click",this.md,{capture:!0}),this.yd=t=>this.bd(t||(null==Vt?void 0:Vt.event)),ri(Kt,"mousemove",this.yd,{capture:!0}),this._d=new Ve(this.instance,qe,this.pd.bind(this)),this._d.startIfEnabledOrStop(),this.wd=this.It.bind(this),ri(Kt,Fe,this.wd),this.Qn=!0)}fd(){var t;Vt&&Kt&&(this.gd&&Vt.removeEventListener(Ce,this.gd),this.md&&Kt.removeEventListener("click",this.md,{capture:!0}),this.yd&&Kt.removeEventListener("mousemove",this.yd,{capture:!0}),this.wd&&Kt.removeEventListener(Fe,this.wd),clearTimeout(this.kd),null==(t=this._d)||t.stop(),this.Qn=!1)}Sd(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&&vi(r)&&!di(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:Vt)?void 0:n.getComputedStyle(r).position}catch(t){return!1}if(_(i,s))return!0;r=xi(r)}return!1}(wi(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"),!hi(t.target)&&mr(t)){var s=this.Sd(t,i);null!=(r=this.rageclicks)&&r.isRageClick(t.clientX,t.clientY,(new Date).getTime())&&Ai(wi(t),this.instance.config.rageclick)&&this.Nn(e({},s,{type:"rageclick"})),this.Nn(s)}}bd(t){!hi(t.target)&&mr(t)&&(clearTimeout(this.kd),this.kd=setTimeout((()=>{this.Nn(this.Sd(t,"mousemove"))}),500))}Nn(t){if(Vt){var i=this.qi.disable_capture_url_hashes?H(Vt.location.href):Vt.location.href,e=this.qi.custom_personal_data_properties,r=this.qi.mask_personal_data_properties?[...Je,...e||[]]:[],s=Te(i,r,Ze);this.ft=this.ft||{},this.ft[s]||(this.ft[s]=[]),this.ft[s].push(t)}}La(){this.ft&&!E(this.ft)&&this.instance.capture("$$heatmap",{$heatmap_data:this.getAndClearBuffer()})}},deadClicksAutocapture:Ve,webVitalsAutocapture:class{constructor(t){var i;this.hd=!1,this.Qn=!1,this.ft={navigationKey:void 0,url:void 0,metrics:[],firstMetricTimestamp:void 0},this.xd=()=>{clearTimeout(this.Cd),this.Cd=void 0,0!==this.ft.metrics.length&&(this._instance.capture("$web_vitals",e({$current_url:this.ft.url},this.ft.metrics.reduce(((t,i)=>e({},t,{["$web_vitals_"+i.name+"_event"]:e({},i),["$web_vitals_"+i.name+"_value"]:i.value})),{}))),this.ft={navigationKey:void 0,url:void 0,metrics:[],firstMetricTimestamp:void 0})},this.Td=t=>{var i;if(this.ft=this.ft||{navigationKey:void 0,url:void 0,metrics:[],firstMetricTimestamp:void 0},A(null==t?void 0:t.name)||A(null==t?void 0:t.value))tr.error("Invalid metric received",t);else{var r="string"==typeof t.navigationURL?t.navigationURL:void 0,s=this.Md(r);if(!F(s)){var n=R(t.navigationId)||"string"==typeof t.navigationId?"navigation:"+t.navigationId:"url:"+s;if(!this.Ed||this.Ed>t.value){this.ft.navigationKey!==n&&(this.xd(),this.Cd=setTimeout(this.xd,this.flushToCaptureTimeoutMs)),F(this.ft.navigationKey)&&(this.ft.navigationKey=n,this.ft.url=s),this.ft.firstMetricTimestamp=F(this.ft.firstMetricTimestamp)?Date.now():this.ft.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,x(t.attribution)&&this.attributionMetrics.indexOf(t.name)>-1){var l={};for(var u of sr){var h="url"===u&&"string"==typeof t.attribution[u]?this.Md(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.ft.metrics.push(o),this.ft.metrics.length===this.allowedMetrics.length&&this.xd()}else tr.error("Ignoring metric with value >= "+this.Ed,t)}}},this.Id=()=>{if(!this.Qn){var t,i,r,s,n=!1,a=Ue.__PosthogExtensions__,o=null==a?void 0:a.postHogWebVitalsCallbacksByFlavor,l=(null==o?void 0:o[this.Rd])||("web-vitals"===this.Rd&&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.Td.bind(this),v),this.allowedMetrics.indexOf("CLS")>-1&&i(this.Td.bind(this),v),this.allowedMetrics.indexOf("FCP")>-1&&r(this.Td.bind(this),v),this.allowedMetrics.indexOf("INP")>-1&&s(this.Td.bind(this),d),this.Qn=!0}else tr.error("web vitals callbacks not loaded - not starting")}},this._instance=t,this.hd=!(null==(i=this._instance.persistence)||!i.props[Xi]),this.startIfEnabled()}get Pd(){return this._instance.config.capture_performance}get allowedMetrics(){var t,i,e=x(this.Pd)?null==(t=this.Pd)?void 0:t.web_vitals_allowed_metrics:void 0;return A(e)?(null==(i=this._instance.persistence)?void 0:i.props[ie])||er:e}get flushToCaptureTimeoutMs(){return(x(this.Pd)?this.Pd.web_vitals_delayed_flush_ms:void 0)||5e3}get attributionMetrics(){var t=x(this.Pd)?this.Pd.web_vitals_attribution:void 0;return O(t)?t?er:[]:k(t)?t:rr}get useAttribution(){return this.attributionMetrics.length>0}get useSoftNavs(){var t=x(this.Pd)?this.Pd.__preview_web_vitals_soft_navs:void 0;return null!=t&&t}get Ed(){var t=x(this.Pd)&&R(this.Pd.__web_vitals_max_value)?this.Pd.__web_vitals_max_value:ir;return t>0&&6e4>=t?ir:t}get isEnabled(){var t=null==Jt?void 0:Jt.protocol;if("http:"!==t&&"https:"!==t)return tr.info("Web Vitals are disabled on non-http/https protocols"),!1;var i=x(this.Pd)?this.Pd.web_vitals:O(this.Pd)?this.Pd:void 0;return O(i)?i:this.hd}startIfEnabled(){this.isEnabled&&!this.Qn&&(tr.info("enabled, starting..."),this._s(this.Id))}onRemoteConfig(t){if(t.ok){var i=t.config;if("capturePerformance"in i){var e=x(i.capturePerformance)&&!!i.capturePerformance.web_vitals,r=x(i.capturePerformance)?i.capturePerformance.web_vitals_allowed_metrics:void 0;this._instance.persistence&&(this._instance.persistence.register({[Xi]:e}),this._instance.persistence.register({[ie]:r})),this.hd=e,this.startIfEnabled()}}}get Rd(){return this.useSoftNavs?this.useAttribution?"web-vitals-with-attribution-soft-navs":"web-vitals-soft-navs":this.useAttribution?"web-vitals-with-attribution":"web-vitals"}_s(t){var i=Ue.__PosthogExtensions__,e=this.Rd,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?tr.error("failed to load script",i):t()}))}Md(t){var i=t||(null==Vt?void 0:Vt.location.href);if(i){var e=this._instance.config.disable_capture_url_hashes?H(i):i,r=this._instance.config.custom_personal_data_properties,s=this._instance.config.mask_personal_data_properties?[...Je,...r||[]]:[];return Te(e,s,Ze)}tr.error("Could not determine current URL")}}},ps={exceptionObserver:class{constructor(t){var i;this.Id=()=>{var t;if(Vt&&this.isEnabled&&null!=(t=Ue.__PosthogExtensions__)&&t.errorWrappingFunctions){var i=Ue.__PosthogExtensions__.errorWrappingFunctions.wrapOnError,e=Ue.__PosthogExtensions__.errorWrappingFunctions.wrapUnhandledRejection,r=Ue.__PosthogExtensions__.errorWrappingFunctions.wrapConsoleError;try{!this.Ad&&this.qi.capture_unhandled_errors&&(this.Ad=i(this.captureException.bind(this))),!this.Fd&&this.qi.capture_unhandled_rejections&&(this.Fd=e(this.captureException.bind(this))),!this.Ld&&this.qi.capture_console_errors&&(this.Ld=r(this.captureException.bind(this)))}catch(t){Be.error("failed to start",t),this.Od()}}},this._instance=t,this.Dd=!(null==(i=this._instance.persistence)||!i.props[Zi]),this.oe=new U(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,I:Be})),this.qi=this.$d(),this.startIfEnabledOrStop()}$d(){var t=this._instance.config.capture_exceptions,i={capture_unhandled_errors:!1,capture_unhandled_rejections:!1,capture_console_errors:!1};return x(t)?i=e({},i,t):(F(t)?this.Dd:t)&&(i=e({},i,{capture_unhandled_errors:!0,capture_unhandled_rejections:!0})),i}get isEnabled(){return this.qi.capture_console_errors||this.qi.capture_unhandled_errors||this.qi.capture_unhandled_rejections}startIfEnabledOrStop(){this.isEnabled?(Be.info("enabled"),this.Od(),this._s(this.Id)):this.Od()}_s(t){var i,e;null!=(i=Ue.__PosthogExtensions__)&&i.errorWrappingFunctions?t():null==(e=Ue.__PosthogExtensions__)||null==e.loadExternalDependency||e.loadExternalDependency(this._instance,"exception-autocapture",(i=>{if(i)return Be.error("failed to load script",i);t()}))}Od(){var t,i,e;null==(t=this.Ad)||t.call(this),this.Ad=void 0,null==(i=this.Fd)||i.call(this),this.Fd=void 0,null==(e=this.Ld)||e.call(this),this.Ld=void 0}onRemoteConfig(t){if(t.ok){var i=t.config;"autocaptureExceptions"in i&&(this.Dd=!!i.autocaptureExceptions||!1,this._instance.persistence&&this._instance.persistence.register({[Zi]:this.Dd}),this.qi=this.$d(),this.startIfEnabledOrStop())}}onConfigChange(){this.qi=this.$d()}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.oe.consumeRateLimit(s)?Be.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.Nd=[],this.qd=new ct([new Et,new It,new Ct,new Ft,new Mt,new Ot,new Tt,new $t],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=xt.test(l)?l.replace(xt,"$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||ft});var r}))}(n)}}("web:javascript",yt,St)),this._instance=t,this.Nd=null!==(i=null==(r=this._instance.persistence)?void 0:r.get_property(Qi))&&void 0!==i?i:[],this.jd=zt(this.Bd()),this.Hd=new Ut(this.jd)}onConfigChange(){this.jd=zt(this.Bd()),this.Hd.setConfig(this.jd)}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.Nd=n,this._instance.persistence&&this._instance.persistence.register({[Qi]:this.Nd,[Yi]:a})}}}get Ud(){var t,i=!!this._instance.get_property(Yi),e=this._instance.config.error_tracking.captureExtensionExceptions;return null!==(t=null!=e?e:i)&&void 0!==t&&t}buildProperties(t,i){return this.qd.buildFromUnknown(t,{syntheticException:null==i?void 0:i.syntheticException,mechanism:{handled:null==i?void 0:i.handled}})}addExceptionStep(t,i){if(this.jd.enabled)try{if(!C(t)||0===t.trim().length)return void ts.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)=>Dt.has(r)?(i.push(r),e):(e[r]=t[r],e)),{}),droppedKeys:i}}(this.zd(i)),s=r.sanitizedProperties,n=r.droppedKeys;n.length>0&&ts.warn("Ignoring reserved exception step fields",{droppedKeys:n}),this.Hd.add(e({[jt]:t,[Lt]:(new Date).toISOString()},s))}catch(t){ts.error("Failed to add exception step. Ignoring breadcrumb.",t)}}sendExceptionEvent(t){try{var i=t.$exception_list;if(this.Wd(i)){if(this.Vd(i))return this.Gd("Exception dropped: matched a suppression rule"),void ts.info("Skipping exception capture because a suppression rule matched");if(!this.Ud&&this.Zd(i))return this.Gd("Exception dropped: thrown by a browser extension"),void ts.info("Skipping exception capture because it was thrown by an extension");if(!this.Ud&&this.Qd(i))return this.Gd("Exception dropped: thrown by an injected browser script"),void ts.info("Skipping exception capture because it was thrown by an injected browser script");if(!this._instance.config.error_tracking.__capturePostHogExceptions&&this.Jd(i))return this.Gd("Exception dropped: thrown by the PostHog SDK"),void ts.info("Skipping exception capture because it was thrown by the PostHog SDK")}var e=this.jd.enabled&&A(t.$exception_steps)?this.Kd(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.Hd.clear(),s}catch(t){return ts.error("Failed to capture exception event. Dropping this exception.",t),void this.Hd.clear()}}catch(t){return void ts.error("Failed to process exception event. Ignoring this exception.",t)}var n}Kd(t){try{var i=this.Hd.getAttachable();return 0===i.length?t:e({},t,{$exception_steps:i})}catch(i){return ts.error("Failed to read buffered exception steps. Capturing exception without steps.",i),t}}Gd(t){this.jd.enabled&&this.Hd.add({[jt]:t,[Lt]:(new Date).toISOString()})}zd(t){return x(t)?e({},t):{}}Bd(){var t,i;return null!==(t=null==(i=this._instance.config.error_tracking)?void 0:i.exception_steps)&&void 0!==t?t:{}}Vd(t){if(0===t.length)return!1;try{var i=t.reduce(((t,i)=>{var e=i.type,r=i.value;return C(e)&&e.length>0&&t.$exception_types.push(e),C(r)&&r.length>0&&t.$exception_values.push(r),t}),{$exception_types:[],$exception_values:[]});return this.Nd.some((t=>{var e=t.values.map((t=>{var e=fr[t.operator],r=i[t.key];if(!e||!r)return!1;var s=k(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 ts.warn("Failed to evaluate suppression rules. Capturing the exception.",t),!1}}Zd(t){return t.flatMap((t=>{var i,e;return null!==(i=null==(e=t.stacktrace)?void 0:e.frames)&&void 0!==i?i:[]})).some((t=>{var i=t.filename;return!!i&&is.some((t=>i.startsWith(t)))}))}Qd(t){return t.some((t=>{var i=t.value;return C(i)&&es.some((t=>i.includes(t)))}))}Jd(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}Wd(t){return!A(t)&&k(t)}}},gs=e({productTours:class{get za(){return this._instance.persistence}constructor(t){this.Yd=null,this.Xd=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.za&&this.za.register({[te]:!!i.productTours}),!wr(this._instance))return!this.Yd&&A(null==(e=this.za)?void 0:e.props[me])||yr.info("product tours disabled; stopping and clearing cached tours"),null==(r=this.Yd)||r.stop(),this.Yd=null,void this.clearCache();this.loadIfEnabled()}}}loadIfEnabled(){!this.Yd&&wr(this._instance)&&this._s((()=>this.tv()))}_s(t){var i,e;null!=(i=Ue.__PosthogExtensions__)&&i.generateProductTours?t():null==(e=Ue.__PosthogExtensions__)||null==e.loadExternalDependency||e.loadExternalDependency(this._instance,"product-tours",(i=>{i?yr.error("Could not load product tours script",i):t()}))}tv(){var t;!this.Yd&&null!=(t=Ue.__PosthogExtensions__)&&t.generateProductTours&&(this.Yd=Ue.__PosthogExtensions__.generateProductTours(this._instance,!0))}getProductTours(t,i){if(void 0===i&&(i=!1),!k(this.Xd)||i){var e=this.za;if(e){var r=e.props[me];if(k(r)&&!i)return this.Xd=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(wr(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||yr.warn(s):yr.error(s),void t([],{isLoaded:!1,error:s})}var n=k(i.json.product_tours)?i.json.product_tours:[];this.Xd=n,e&&e.register({[me]:n}),t(n,{isLoaded:!0})}else t([],{isLoaded:!0})}})}else t(this.Xd,{isLoaded:!0})}getActiveProductTours(t){A(this.Yd)?t([],{isLoaded:!1,error:"Product tours not loaded"}):this.Yd.getActiveProductTours(t)}showProductTour(t){var i;null==(i=this.Yd)||i.showTourById(t)}previewTour(t){this.Yd?this.Yd.previewTour(t):this._s((()=>{var i;this.tv(),null==(i=this.Yd)||i.previewTour(t)}))}dismissProductTour(){var t;null==(t=this.Yd)||t.dismissTour("user_clicked_skip")}nextStep(){var t;null==(t=this.Yd)||t.nextStep()}previousStep(){var t;null==(t=this.Yd)||t.previousStep()}clearCache(){var t;this.Xd=null,null==(t=this.za)||t.unregister(me)}resetTour(t){var i;null==(i=this.Yd)||i.resetTour(t)}resetAllTours(){var t;null==(t=this.Yd)||t.resetAllTours()}cancelPendingTour(t){var i;null==(i=this.Yd)||i.cancelPendingTour(t)}}},ds),_s={siteApps:class{constructor(t){this.ev=0,this._instance=t,this.iv=[],this.apps={}}get isEnabled(){return!!this._instance.config.opt_in_site_apps}rv(t,i){if(i){var e=this.globalsForEvent(i);this.iv.push(e),this.iv.length>1e3&&(this.iv=this.iv.slice(10))}}get siteAppLoaders(){var t;return null==(t=Ue._POSTHOG_REMOTE_CONFIG)||null==(t=t[this._instance.config.token])?void 0:t.siteApps}initialize(){if(this.isEnabled){var t=this._instance._addCaptureHook(this.rv.bind(this));this.nv=()=>{t(),this.iv=[],this.nv=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,kr),{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}}sv(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)||(Sr.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)||(Sr.error("prepare_external_dependency_script returned null"),null):t}av(){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==Kt?void 0:Kt.defaultView,u=null==l||null==(t=l.Node)?void 0:t.prototype;if(!l||!u)return()=>{};if(this.ev++,this.ov)return this.lv();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.sv(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.ov=()=>{h.forEach((t=>t())),this.ov=void 0},this.lv()}lv(){var t=!1;return()=>{var i;t||(t=!0,this.ev--,0===this.ev&&(null==(i=this.ov)||i.call(this)))}}uv(t,i){void 0===i&&(i=!0);var e=this.av();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.iv.length&&(Sr.info("Processing "+this.iv.length+" events for site app with id "+t.id),this.iv.forEach((t=>this.uv((()=>null==i.processEvent?void 0:i.processEvent(t))))),i.processedBuffer=!0),Object.values(this.apps).every((t=>t.processedBuffer||t.errored))&&(null==(e=this.nv)||e.call(this))},r=!1,s=s=>{i.errored=!s,i.loaded=!0,Sr.info("Site app with id "+t.id+" "+(s?"loaded":"errored")),r&&e()};try{var n=this.uv((i=>t.init({posthog:this._instance,callback(t){i(),s(t)}})),!1).processEvent;n&&(i.processEvent=n),r=!0}catch(i){Sr.error(xr+t.id,i),s(!1)}if(r&&i.loaded)try{e()}catch(e){Sr.error("Error while processing buffered events PostHog app with config id "+t.id,e),i.errored=!0}}hv(){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)}dv(t){var i=this;if(0!==Object.keys(this.apps).length){var e=this.globalsForEvent(t),r=function(r){try{i.uv((()=>null==r.processEvent?void 0:r.processEvent(e)))}catch(i){Sr.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.hv(),void this._instance.on("eventCaptured",(t=>this.dv(t)))):void Sr.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.');if(null==(e=this.nv)||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;Ue["__$$ph_site_app_"+i]=s._instance,null==(t=Ue.__PosthogExtensions__)||null==t.loadSiteApp||t.loadSiteApp(s._instance,e,(t=>{if(t)return Sr.error(xr+i,t)}))};for(var o of n.siteApps)a()}else Sr.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.')}}}},bs={tracingHeaders:class{constructor(t){this.vv=void 0,this.fv=void 0,this.pv=void 0,this.Id=()=>{var t,i,e=this.gv();e?(F(this.vv)&&(this.vv=null==(t=Ue.__PosthogExtensions__)||null==(t=t.tracingHeadersPatchFns)?void 0:t._patchXHR(e,(()=>this._instance.get_distinct_id()),this._instance.sessionManager)),F(this.fv)&&(this.fv=null==(i=Ue.__PosthogExtensions__)||null==(i=i.tracingHeadersPatchFns)?void 0:i._patchFetch(e,(()=>this._instance.get_distinct_id()),this._instance.sessionManager))):this.Od()},this._instance=t}initialize(){this.startIfEnabledOrStop()}_s(t){var i,e;null!=(i=Ue.__PosthogExtensions__)&&i.tracingHeadersPatchFns?t():null==(e=Ue.__PosthogExtensions__)||null==e.loadExternalDependency||e.loadExternalDependency(this._instance,"tracing-headers",(i=>{if(i)return Ke.error("failed to load script",i);t()}))}mv(){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}gv(){var t=this.mv();return k(t)?(k(this.pv)?this.pv.splice(0,this.pv.length,...t):this.pv=[...t],t.length>0?this.pv:void 0):(k(this.pv)&&this.pv.splice(0),this.pv=t||void 0,this.pv)}Od(){var t,i;null==(t=this.vv)||t.call(this),null==(i=this.fv)||i.call(this),this.vv=void 0,this.fv=void 0}startIfEnabledOrStop(){this.gv()?this._s(this.Id):this.Od()}}},ms=e({surveys:class extends Ir{constructor(t){var i;super(new Hr(t),{get projectToken(){return i.config.token},kv:new Ur(i=t)}),this._instance=t}Nl(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 Xt(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})}))}}},ds),ys={toolbar:class{constructor(t){this.instance=t}yv(t){Ue.ph_toolbar_state=t}bv(){var t;return null!==(t=Ue.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),si(this.instance.config))return!1;if(!Vt||!Kt)return!1;t=null!=t?t:Vt.location,e=null!=e?e:Vt.history;try{if(!i){try{Vt.localStorage.setItem("test","test"),Vt.localStorage.removeItem("test")}catch(t){return!1}i=null==Vt?void 0:Vt.localStorage}var r,s=qr||Ae(t.hash,"__posthog")||Ae(t.hash,"state"),n=s?ei((()=>JSON.parse(atob(decodeURIComponent(s)))))||ei((()=>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(Vr)||"{}")).source="localstorage",delete r.userIntent),!(!r.token||this.instance.config.token!==r.token||(this.loadToolbar(r),0))}catch(t){return!1}}_v(t){var i=Ue.ph_load_toolbar||Ue.ph_load_editor;!A(i)&&S(i)?i(t,this.instance):Br.warn("No toolbar load function found")}loadToolbar(t){var i=!(null==Kt||!Kt.getElementById(ai));if(!Vt||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(Vt.localStorage.setItem(Vr,JSON.stringify(e({},s,{source:void 0}))),2===this.bv())this._v(s);else if(0===this.bv()){var n;this.yv(1),null==(n=Ue.__PosthogExtensions__)||null==n.loadExternalDependency||n.loadExternalDependency(this.instance,"toolbar",(t=>{if(t)return Br.error("[Toolbar] Failed to load",t),void this.yv(0);this.yv(2),this._v(s)})),ri(Vt,"turbolinks:load",(()=>{this.yv(0),this.loadToolbar(s)}))}return!0}wv(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)}}},ws=e({experiments:ns},ds),ks={conversations:class{constructor(t){this.Sv=void 0,this._conversationsManager=null,this.xv=!1,this.Me=null,this.Cv=!1,this._instance=t}initialize(){this.loadIfEnabled()}onRemoteConfig(t){if(!this._instance.config.disable_conversations&&(this.Tv=t.ok,t.ok)){var i=t.config.conversations;A(i)||(O(i)?this.Sv=i:(this.Sv=i.enabled,this.Me=i),this.loadIfEnabled())}}reset(){var t;null==(t=this._conversationsManager)||t.reset(),this._conversationsManager=null,this.Sv=void 0,this.Me=null,this.Tv=void 0,this.Cv=!1}loadIfEnabled(){if(!(this._conversationsManager||this.xv||this._instance.config.disable_conversations||si(this._instance.config)||this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut())){var t=null==Ue?void 0:Ue.__PosthogExtensions__;if(t&&!F(this.Sv)&&this.Sv)if(this.Me&&this.Me.token){this.xv=!0;try{var i=t.initConversations;if(i)return this.Mv(i),void(this.xv=!1);var e=t.loadExternalDependency;if(!e)return void this.Ev(Ee);e(this._instance,"conversations",(i=>{i||!t.initConversations?this.Ev("Could not load conversations script",i):this.Mv(t.initConversations),this.xv=!1}))}catch(t){this.Ev("Error initializing conversations",t),this.xv=!1}}else as.error("Conversations enabled but missing token in remote config.")}}Mv(t){if(this.Me)try{this._conversationsManager=t(this.Me,this._instance),this.Cv=!1,as.info("Conversations loaded successfully")}catch(t){this.Ev("Error completing conversations initialization",t)}else as.error("Cannot complete initialization: remote config is null")}Ev(t,i){as.error(t,i),this._conversationsManager=null,this.xv=!1,this.Cv=!0}show(){this._conversationsManager?this._conversationsManager.show():as.warn("Conversations not loaded yet.")}hide(){this._conversationsManager&&this._conversationsManager.hide()}isAvailable(){return!0===this.Sv&&!T(this._conversationsManager)}getUnavailableReason(){return this.isAvailable()?null:this._instance.config.disable_conversations?"disabled_by_config":si(this._instance.config)?"disabled_for_toolbar":this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut()?"consent_opted_out":!1===this.Tv?"remote_config_failed":F(this.Sv)?this.Tv?"disabled_in_project":"remote_config_pending":this.Sv?A(this.Me)||!this.Me.token?"missing_token":null!=Ue&&Ue.__PosthogExtensions__?this.xv?"initializing":this.Cv?"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):(as.warn(os),null)}))()}getMessages(t,e){var r=this;return i((function*(){return r._conversationsManager?r._conversationsManager.getMessages(t,e):(as.warn(os),null)}))()}markAsRead(t){var e=this;return i((function*(){return e._conversationsManager?e._conversationsManager.markAsRead(t):(as.warn(os),null)}))()}getTickets(t){var e=this;return i((function*(){return e._conversationsManager?e._conversationsManager.getTickets(t):(as.warn(os),null)}))()}requestRestoreLink(t){var e=this;return i((function*(){return e._conversationsManager?e._conversationsManager.requestRestoreLink(t):(as.warn(os),null)}))()}restoreFromToken(t){var e=this;return i((function*(){return e._conversationsManager?e._conversationsManager.restoreFromToken(t):(as.warn(os),null)}))()}restoreFromUrlToken(){var t=this;return i((function*(){return t._conversationsManager?t._conversationsManager.restoreFromUrlToken():(as.warn(os),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()}}},Ss={logs:class{constructor(t){var i,r=this;this.Iv=!1,this.Rv=!1,this.I=Yt("[logs]"),this.Pv=e({},this.I,{error(){for(var t=arguments.length,i=new Array(t),e=0;t>e;e++)i[e]=arguments[e];i.some(vs)||r.I.error(...i)}}),this.ka=[],this.Av=[],this.ph=0,this.Fv=()=>{var t,i;this.ph=0,null==(t=this.Lv)||t.onReconnect(),null==(i=this.Ov)||i.onReconnect()},this._instance=t,this._instance&&null!=(i=this._instance.config.logs)&&i.captureConsoleLogs&&(this.Iv=!0),Vt&&ri(Vt,"online",this.Fv)}Dv(t,i,e,r){var s,n=function(t,i){var e,r,s,n,a,o,l,u=null!==(e=null==t?void 0:t.flushIntervalMs)&&void 0!==e?e:3e3,h=null!==(r=null==t?void 0:t.maxBufferSize)&&void 0!==r?r:100,v=null!=i&&i.consoleCapture?void 0:null!==(s=null==t?void 0:t.maxLogsPerInterval)&&void 0!==s?s:1e3,d=F(v)?Math.max(h,2048):Math.max(h,v),c=null==t?void 0:t.resourceAttributes;return{serviceName:null!==(n=null!==(a=null==c?void 0:c["service.name"])&&void 0!==a?a:null==t?void 0:t.serviceName)&&void 0!==n?n:null==i?void 0:i.serviceNameDefault,serviceVersion:null!==(o=null==c?void 0:c["service.version"])&&void 0!==o?o:null==t?void 0:t.serviceVersion,environment:null!==(l=null==c?void 0:c["deployment.environment"])&&void 0!==l?l:null==t?void 0:t.environment,resourceAttributes:c,beforeSend:null==t?void 0:t.beforeSend,flushIntervalMs:u,maxBufferSize:h,maxQueueSize:d,maxBatchRecordsPerPost:100,rateCapWindowMs:u,maxLogsPerInterval:v,backgroundFlushBudgetMs:0,terminationFlushBudgetMs:0}}(null==(s=this._instance)||null==(s=s.config)?void 0:s.logs,e);return[new st(this.$v(t,i),n,this.Pv,(()=>this.Nv()),(t=>t()),void 0,r),n]}qv(){var t,i=null==(t=this._instance)||null==(t=t.config)?void 0:t.logs;if(!this.Lv||this.jv!==i){var e;null==(e=this.Lv)||e.reset(),this.jv=i;var r=this.Dv((()=>this.ka),(t=>{this.ka=t}));this.Lv=r[0],this.Bv=r[1]}return this.Lv}Hv(){var t,i=null==(t=this._instance)||null==(t=t.config)?void 0:t.logs;if(!this.Ov||this.Uv!==i){var e;null==(e=this.Ov)||e.reset(),this.Uv=i;var r=this.Dv((()=>this.Av),(t=>{this.Av=t}),{serviceNameDefault:"posthog-browser-logs",consoleCapture:!0},ls);this.Ov=r[0],this.zv=r[1]}return this.Ov}initialize(){this.loadIfEnabled()}onRemoteConfig(t){var i;if(t.ok){var e=null==(i=t.config.logs)?void 0:i.captureConsoleLogs;!A(e)&&e&&(this.Iv=!0,this.loadIfEnabled())}}reset(){var t,i;this.ka=[],null==(t=this.Lv)||t.reset(),this.Av=[],null==(i=this.Ov)||i.reset(),this.ph=0}captureLog(t){this.qv().captureLog(t)}vi(t){this.Hv().captureLog(t)}get logger(){return this.Wv||(this.Wv={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.Wv}flushLogs(t){t?this.Vv(t):(this.Lv&&this.Lv.flush().catch((t=>this.Gv(t))),this.Ov&&this.Ov.flush().catch((t=>this.Gv(t))))}Gv(t){vs(t)||this.I.error("PostHog logs flush failed:",t)}loadIfEnabled(){if(this.Iv&&!this.Rv){var t=null==Ue?void 0:Ue.__PosthogExtensions__;if(t){var i=t.loadExternalDependency;i?i(this._instance,"logs",(i=>{var e;i||null==(e=t.logs)||!e.initializeLogs?this.I.error("Could not load logs script",i):(t.logs.initializeLogs(this._instance),this.Rv=!0)})):this.I.error(Ee)}else this.I.error("PostHog Extensions not found.")}}$v(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:[])},Mn:t=>this.Mn(t),getLibraryId:()=>qt.LIB_NAME,getLibraryVersion:()=>qt.LIB_VERSION}}Mn(t){return new Promise((i=>{if(Re(this.ph,3))i({kind:"fatal",error:hs(void 0,"logs endpoint is unreachable, dropping batch")});else{var e=!1,r=t=>{e||(e=!0,clearTimeout(s),i(t))},s=setTimeout((()=>{this.I.warn("Logs request timed out before receiving a response"),r({kind:"retry-later",error:hs(void 0,"logs request timed out")})}),9e4);this._instance._send_request({method:"POST",url:this.Zv(),data:t,compression:"best-available",batchKey:"logs",fireCallbackOnDrop:!0,callback:t=>{var i=t.statusCode;if(this.Qv(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.I.warn("Logs request failed before receiving an HTTP response"),r({kind:"retry-later",error:hs(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)})}}})}}))}Qv(t){(0!==t||this._instance.__loaded)&&(this.ph=Oe(t,this.ph,3,(()=>this.I.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."))))}Vv(t){this.ka.length>0&&this.Jv(t,this.ka,this.Bv,qt.LIB_NAME,(t=>{this.ka=t})),this.Av.length>0&&this.Jv(t,this.Av,this.zv,ls,(t=>{this.Av=t}))}Jv(t,i,e,r,s){if(0!==i.length){var n=i.map((t=>t.record));s([]);var a=rt(n,et(e,qt.LIB_NAME,qt.LIB_VERSION),r,qt.LIB_VERSION);this._instance._send_request({method:"POST",url:this.Zv(),data:a,compression:"best-available",batchKey:"logs",transport:t})}}Zv(){return this._instance.requestRouter.endpointFor("api","/i/v1/logs")+"?token="+encodeURIComponent(this._instance.config.token)}Nv(){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!=Ue&&null!=(t=Ue.location)&&t.href&&(i.currentUrl=this._instance.config.disable_capture_url_hashes?H(Ue.location.href):Ue.location.href),this._instance.featureFlags){var a=this._instance.featureFlags.getFlags();a&&a.length>0&&(i.activeFeatureFlags=a)}return i}}},xs={metrics:class{constructor(t){this.I=Yt("[metrics]"),this._instance=t}initialize(){}qv(){var t,i,e=null==(t=this._instance)||null==(t=t.config)?void 0:t.metrics;return this.Lv&&this.jv===e||(null==(i=this.Lv)||i.reset(),this.jv=e,this.Lv=new lt(this.$v(),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.I)),this.Lv}count(t,i,e){void 0===i&&(i=1),this.qv().count(t,i,e)}gauge(t,i,e){this.qv().gauge(t,i,e)}histogram(t,i,e){this.qv().histogram(t,i,e)}flush(t){if(!this.Lv)return Promise.resolve();if(t){var i=this.Lv.drainWindow();return i&&this.Un(i,t),Promise.resolve()}return this.Lv.flush().catch((t=>this.I.error("PostHog metrics flush failed:",t)))}reset(){var t;null==(t=this.Lv)||t.reset()}$v(){var t=this._instance,i=this;return{get isDisabled(){return!1},get optedOut(){return!t.is_capturing()},Un:t=>i.Un(t),getLibraryId:()=>qt.LIB_NAME,getLibraryVersion:()=>qt.LIB_VERSION}}Un(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.Kv(),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)})}}}))}))}Kv(){return this._instance.requestRouter.endpointFor("api","/i/v1/metrics")+"?token="+encodeURIComponent(this._instance.config.token)}}},Es=e({},ds,cs,fs,ps,gs,_s,ms,bs,ys,ws,ks,Ss,xs),Fs=ds,Cs=cs,Ps=fs,Ts=ps,As=gs,Rs=_s,Os=ms,Ms=bs,$s=ys,Is=ws,js=ks,Ls=Ss,Ds=xs;export{Es as AllExtensions,Ps as AnalyticsExtensions,js as ConversationsExtensions,Ts as ErrorTrackingExtensions,Is as ExperimentsExtensions,Fs as FeatureFlagsExtensions,Ls as LogsExtensions,Ds as MetricsExtensions,As as ProductToursExtensions,Cs as SessionReplayExtensions,Rs as SiteAppsExtensions,Os as SurveysExtensions,$s as ToolbarExtensions,Ms as TracingExtensions};
1
+ 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","pinterest","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,k=Array.isArray||function(t){return"[object Array]"===w.call(t)},S=t=>"function"==typeof t,x=t=>t===Object(t)&&!k(t),E=t=>{if(x(t)){for(var i in t)if(y.call(t,i))return!1;return!0}return!1},F=t=>void 0===t,C=t=>"[object String]"==w.call(t),P=t=>C(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 U{constructor(t){this.k={},this.S=t.S,this.C=z(t.bucketSize,0,100,t.I),this.R=z(t.refillRate,0,this.C,t.I),this.A=z(t.refillInterval,0,864e5,t.I)}O(t,i){var e=Math.floor((i-t.lastAccess)/this.A);e>0&&(t.tokens=Math.min(t.tokens+e*this.R,this.C),t.lastAccess=t.lastAccess+e*this.A)}consumeRateLimit(t){var i,e=Date.now(),r=String(t),s=this.k[r];return s?this.O(s,e):this.k[r]=s={tokens:this.C,lastAccess:e},0===s.tokens||(s.tokens--,0===s.tokens&&(null==(i=this.S)||i.call(this,t)),0===s.tokens)}stop(){this.k={}}}function H(t){return t?t.split("#")[0]:t}function q(t,i){var e=setTimeout(t,i);return(null==e?void 0:e.unref)&&(null==e||e.unref()),e}function V(t,i,e){return B.apply(this,arguments)}function B(){return(B=i((function*(t,i,e){var r;try{return yield Promise.race([t,new Promise(((t,s)=>{r=q((()=>{try{null==e||e(),t()}catch(t){s(t)}}),i)}))])}finally{clearTimeout(r)}}))).apply(this,arguments)}var W={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}},K=W.info,J=0x8000000000000000,G={}.propertyIsEnumerable;function Z(t,i){try{return X(t,i,{ancestors:new WeakSet,remainingNodes:u},0)}catch(t){return[]}}function Q(t,i,e,r){if(0>=e.remainingNodes)return{stringValue:v};if(e.remainingNodes--,O(t))return{boolValue:t};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>=J||-J>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 Q(l.call(t),i,e,r+1)}catch(t){}return k(t)?{arrayValue:{values:Y(t,i,e,r+1)}}:{kvlistValue:{values:X(t,i,e,r+1)}}}finally{e.ancestors.delete(t)}}return{stringValue:f(String(t))}}function Y(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(Q(o,i,e,r))}catch(t){s.push({stringValue:d})}return t.length>a&&s.push({stringValue:v}),s}function X(t,i,e,r){var s=[];for(var n in t)if(G.call(t,n)){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:Q(a,i,e,r)})}catch(t){s.push({key:f(n),value:{stringValue:d}})}}return s}function tt(t){try{return f(String(t))}catch(t){return d}}function it(t,i,r){var s=W[t.level||"info"]||K,n=s.text,a=s.number,o=String(Date.now())+"000000",l={};i.distinctId&&(l.posthogDistinctId=i.distinctId),i.sessionId&&(l.sessionId=i.sessionId),i.windowId&&(l["window.id"]=i.windowId),A(i.sessionStartTimestamp)||(l.sessionStartTimestamp=String(i.sessionStartTimestamp)),A(i.lastActivityTimestamp)||(l.lastActivityTimestamp=String(i.lastActivityTimestamp)),i.currentUrl&&(l["url.full"]=i.currentUrl),i.screenName&&(l["screen.name"]=i.screenName),i.appState&&(l["app.state"]=i.appState),i.activeFeatureFlags&&i.activeFeatureFlags.length>0&&(l.feature_flags=i.activeFeatureFlags);var u=e({},l),h=t.attributes;if(h){var v=[];try{v=Object.keys(h)}catch(t){v=[]}for(var c of v){var f=void 0;try{f=h[c]}catch(t){f=d}Object.defineProperty(u,c,{value:f,enumerable:!0,writable:!0,configurable:!0})}}var p={timeUnixNano:o,observedTimeUnixNano:o,severityNumber:a,severityText:n,body:{stringValue:tt(t.body)},attributes:Z(u,r)};return t.trace_id&&(p.traceId=t.trace_id),t.span_id&&(p.spanId=t.span_id),F(t.trace_flags)||(p.flags=t.trace_flags),p}function et(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})}function rt(t,i,e,r){return{resourceLogs:[{resource:{attributes:Z(i)},scopeLogs:[{scope:{name:e,version:r},logRecords:t}]}]}}let st=class{constructor(t,i,e,r,s,n,a){var o;void 0===n&&(n=()=>Promise.resolve()),this._instance=t,this.qi=i,this.I=e,this.rn=r,this.nn=s,this.sn=n,this.an=a,this.ln=null,this.un=0,this.hn=0,this.dn=0,this.vn=0,this.cn=!1,this.fn=i.maxBufferSize,this.pn=Math.max(null!==(o=i.maxQueueSize)&&void 0!==o?o:i.maxBufferSize,i.maxBufferSize),this.gn=i.flushIntervalMs,this.mn=i.maxBatchRecordsPerPost,this.yn=i.rateCapWindowMs,this.bn=i.maxLogsPerInterval}reset(){this._n(),this.ln=null,this.dn=0,this.vn=0,this.cn=!1,this.un=0,this.hn=0,this.mn=this.qi.maxBatchRecordsPerPost}onReconnect(){this.hn=0,this.wn()}captureLog(t){if(!this._instance.isDisabled&&!this._instance.optedOut&&null!=t&&t.body){var i=this.kn(t);if(null!==i)if(i.body){if(this.Sn()){var e={record:it(i,this.rn(),this.I)};this.nn((()=>this.xn(e)))}}else this.I.info("Log was rejected in beforeSend function")}}kn(t){var i=this.qi.beforeSend;if(!i)return t;var e=k(i)?i:[i],r=t;for(var s of e)try{var n=s(r);if(!n)return this.I.info("Log was rejected in beforeSend function"),null;r=n}catch(t){return this.I.error("Error in beforeSend function for log:",t),null}return r}Sn(){if(void 0===this.bn)return!0;var t=Date.now(),i=t-this.dn;return this.yn>i&&i>=0||(this.dn=t,this.vn=0,this.cn=!1),this.bn>this.vn?(this.vn++,!0):(this.cn||(this.I.warn("captureLog dropping logs: exceeded "+this.bn+" logs per "+this.yn+"ms"),this.cn=!0),!1)}flush(){var t=this;return i((function*(){if(!t._instance.isDisabled)return t.ln||(t.ln=t.Cn().finally((()=>{t.ln=null}))),t.ln}))()}Cn(){var t=this;return i((function*(){var i;t._n();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;t.un=0;var l=Math.min(e.length,t.mn),u=e.slice(0,l),h=rt(u.map((t=>t.record)),t.Tn(),null!==(n=t.an)&&void 0!==n?n:t._instance.getLibraryId(),t._instance.getLibraryVersion()),v=yield t._instance.Mn(h);if("too-large"===v.kind&&u.length>1)t.mn=Math.max(1,Math.floor(u.length/2)),t.I.warn("Received 413 when sending logs batch of size "+u.length+", reducing batch size to "+t.mn);else{if("retry-later"===v.kind)throw v.error;if("too-large"===v.kind?t.I.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"===v.kind&&t.qi.maxBatchRecordsPerPost>t.mn&&(t.mn=Math.min(t.qi.maxBatchRecordsPerPost,t.mn+1)),yield t.En(u.length),e=null!==(o=t._instance.getPersistedProperty(a.LogsQueue))&&void 0!==o?o:[],s+=u.length,"fatal"===v.kind)throw v.error}}}))()}En(t){var e=this;return i((function*(){var i,r=Math.max(0,t-e.un),s=null!==(i=e._instance.getPersistedProperty(a.LogsQueue))&&void 0!==i?i:[];e._instance.setPersistedProperty(a.LogsQueue,s.slice(r)),yield e.sn()}))()}Tn(){return et(this.qi,this._instance.getLibraryId(),this._instance.getLibraryVersion())}xn(t){var i;if(!this._instance.optedOut){var e=null!==(i=this._instance.getPersistedProperty(a.LogsQueue))&&void 0!==i?i:[];this.pn>e.length||(e.shift(),this.un++,this.I.info("Logs queue is full, dropping oldest record.")),e.push(t),this._instance.setPersistedProperty(a.LogsQueue,e),this.fn>e.length?this.In():this.wn()}}In(t){void 0===t&&(t=this.gn),this.Rn||(this.Rn=q((()=>{this.Rn=void 0,this.wn()}),t))}Pn(){var t=Math.min(Math.max(0,this.hn-1),6);return this.gn*Math.pow(2,t)}An(){var t=this._instance.getPersistedProperty(a.LogsQueue);return!!t&&t.length>0}shutdown(t){var e=this;return i((function*(){e._n();var i=e.flush().catch((()=>{}));void 0!==t?yield V(i,t):yield i}))()}flushWithTimeout(t){var e=this;return i((function*(){var i=e.flush();yield V(i,t,(()=>{i.catch((()=>{}))}))}))()}wn(){this.flush().then((()=>{this.hn=0}),(t=>{this.hn++,this.I.error("PostHog logs flush failed:",t)})).finally((()=>{!this._instance.isDisabled&&this.An()&&this.In(this.Pn())}))}_n(){this.Rn&&(clearTimeout(this.Rn),this.Rn=void 0)}};var nt=[0,5,10,25,50,75,100,250,500,750,1e3,2500,5e3,7500,1e4];function at(t){return String(t)+"000000"}function ot(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 lt=class{constructor(t,i,e){this._instance=t,this.qi=i,this.I=e,this.Fn=new Map,this.ln=null,this.Ln=!1,this.On=new Map,this.Dn=new Set,this.$n=0}count(t,i,e){void 0===i&&(i=1),this.Nn({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.Nn({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.Nn({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.ln,r=function(){var r=i((function*(){e&&(yield e.catch((()=>{}))),yield t.qn()}));return function(){return r.apply(this,arguments)}}(),s=r().finally((()=>{this.ln===s&&(this.ln=null)}));return this.ln=s,s}drainWindow(){if(0===this.Fn.size)return null;var t=this.Fn;return this.Fn=new Map,this.Ln=!1,this.On=new Map,this.Dn=new Set,this.jn(t)}reset(){this.$n++,this._n(),this.Fn=new Map,this.ln=null,this.Ln=!1,this.On=new Map,this.Dn=new Set}Nn(t){if(!this._instance.isDisabled&&!this._instance.optedOut){var i=this.kn(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.I.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=ot(i.type,i.name,i.unit,r)}catch(t){return void this.I.warn("Dropping metric '"+i.name+"': attributes could not be serialized",t)}var n=this.Fn.get(s);if(!n){if(!this.Bn())return;n={name:i.name,type:i.type,unit:i.unit,attributes:r,windowStartMs:Date.now()},this.Fn.set(s,n)}var a=this.On.get(i.name);void 0===a?this.On.set(i.name,i.type):a===i.type||this.Dn.has(i.name)||(this.Dn.add(i.name),this.I.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.Hn(n,i.value),this.In()}else this.I.warn("Dropping metric '"+i.name+"': value must be a finite number");else this.I.warn("Dropping metric with empty name")}}Bn(){return this.qi.maxSeriesPerFlush>this.Fn.size||(this.Ln||(this.Ln=!0,this.I.warn("Metric series cap reached ("+this.qi.maxSeriesPerFlush+" per flush window); dropping new series until the next flush. Reduce attribute cardinality.")),!1)}Hn(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(nt.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,nt)]+=1}}kn(t){var i=this.qi.beforeSend;if(!i)return t;var e=k(i)?i:[i],r=t;for(var s of e)try{var n=s(r);if(!n)return this.I.info("Metric was rejected in beforeSend function"),null;r=n}catch(t){return this.I.error("Error in beforeSend function for metric:",t),null}return r}In(){this.Rn||(this.Rn=q((()=>{this.Rn=void 0,this.flush().catch((t=>{this.I.error("Metrics flush failed:",t)}))}),this.qi.flushIntervalMs))}_n(){this.Rn&&(clearTimeout(this.Rn),this.Rn=void 0)}qn(){var t=this;return i((function*(){if(0!==t.Fn.size){var i=t.Fn;t.Fn=new Map,t.Ln=!1,t.On=new Map,t.Dn=new Set;var e=t.$n,r=yield t._instance.Un(t.jn(i));if(e===t.$n)switch(r.kind){case"ok":return;case"retry-later":return t.zn(i),void t.In();case"too-large":return void t.I.warn("Metrics batch exceeded the server size limit and was dropped");case"fatal":return void t.I.error("Failed to send metrics batch:",r.error)}}}))()}jn(t){return i=this.Wn(t),r=function(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})}(this.qi,this._instance.getLibraryId(),this._instance.getLibraryVersion()),s=this._instance.getLibraryId(),n=this._instance.getLibraryVersion(),{resourceMetrics:[{resource:{attributes:Z(r)},scopeMetrics:[{scope:{name:s,version:n},metrics:i}]}]};var i,r,s,n}Wn(t){var i=at(Date.now()),r=new Map;for(var s of t.values()){var n,a=ot(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=Z(null!==(n=s.attributes)&&void 0!==n?n:{},this.I),u=at(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:nt})}return Array.from(r.values())}zn(t){var i,e;for(var r of t){var s=r[0],n=r[1],a=this.Fn.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.Bn()&&this.Fn.set(s,n)}}};var ut,ht,vt;function dt(t){var i=globalThis._posthogChunkIds;if(i){var e=Object.keys(i);return vt&&e.length===ht?vt:(ht=e.length,vt=e.reduce(((e,r)=>{ut||(ut={});var s=ut[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,ut[r]=[l,u];break}}return e}),{}))}}class ct{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&&k(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:dt(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 ft="?";function pt(t,i,e,r,s){var n={platform:t,filename:i,function:"<anonymous>"===e?ft: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 gt=(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]:ft,e?"safari-extension:"+i:"safari-web-extension:"+i]:[t,i]},_t=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,bt=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,mt=/\((\S*)(?::(\d+))(?::(\d+))\)/,yt=(t,i)=>{var e=_t.exec(t);if(e)return pt(i,e[1],ft,+e[2],+e[3]);var r=bt.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=gt(r[1]||ft,r[2]);return pt(i,n[1],n[0],r[3]?+r[3]:void 0,r[4]?+r[4]:void 0)}},wt=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,kt=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,St=(t,i)=>{var e=wt.exec(t);if(e){if(e[3]&&e[3].indexOf(" > eval")>-1){var r=kt.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]||ft,a=gt(n,s);return pt(i,s=a[1],n=a[0],e[4]?+e[4]:void 0,e[5]?+e[5]:void 0)}},xt=/\(error: (.*)\)/;class Et{match(t){return this.isDOMException(t)||this.isDOMError(t)}coerce(t,i){var e=C(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 Ft{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 Ct{constructor(){}match(t){return!!j(t,"ErrorEvent")&&(null!=t.error||this.fi(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.pi(t))&&void 0!==r?r:s.stack,synthetic:!0})}fi(t){return C(t.message)&&t.message.length>0}pi(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(C(r.filename)&&0!==r.filename.length&&0!==s)return"Error\n at "+r.filename+":"+s+":"+n}}var Pt=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i;class Tt{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(Pt);return r&&(i=r[1],e=r[2]),[i,e]}}var At=["fatal","error","warning","log","info","debug"];function Rt(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 Ot{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 C(i)&&!P(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: "+Rt(t)}isSeverityLevel(t){return C(t)&&!P(t)&&At.indexOf(t)>=0}getStack(t){try{return C(t.stacktrace)&&t.stacktrace.length>0?t.stacktrace:C(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 Mt{match(t){return D(t)}coerce(t,i){var e,r=t.constructor.name;return{type:r,value:r+" captured as exception with keys: "+Rt(t),stack:null==(e=i.syntheticException)?void 0:e.stack,synthetic:!0}}}class $t{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 It{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 jt="$message",Lt="$timestamp",Dt=new Set([jt,Lt]),Nt={enabled:!0,max_bytes:32768};function zt(t){var i;return t?{enabled:null!==(i=t.enabled)&&void 0!==i?i:Nt.enabled,max_bytes:Ht(t.max_bytes,Nt.max_bytes)}:e({},Nt)}class Ut{constructor(t){this.Vn=[],this.Gn=0,this.qi=zt(t)}setConfig(t){this.qi=zt(t),this.Zn()}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(!x(s))return;var n=s,a=n[jt],o=n[Lt];if(!C(a)||0===a.trim().length)return;if(!C(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.qi.max_bytes||(this.Vn.push({step:i.step,bytes:e}),this.Gn+=e,this.Zn())}}getAttachable(){return this.Vn.map((t=>t.step))}clear(){this.Vn=[],this.Gn=0}size(){return this.Vn.length}Zn(){for(;this.Gn>this.qi.max_bytes&&this.Vn.length>0;){var t=this.Vn.shift();t&&(this.Gn-=t.bytes)}}}function Ht(t,i){if(!R(t)||t===1/0||t===-1/0)return i;var e=Math.floor(t);return 0>e?i:e}var qt={DEBUG:!1,LIB_VERSION:"0.5.2",LIB_NAME:"browser-common"},Vt="undefined"!=typeof window?window:void 0,Bt="undefined"!=typeof globalThis?globalThis:Vt,Wt=null==Bt?void 0:Bt.navigator,Kt=null==Bt?void 0:Bt.document,Jt=null==Bt?void 0:Bt.location;function Gt(){return!(!Vt||!1===Vt.navigator.onLine)}null!=Bt&&Bt.XMLHttpRequest&&new Bt.XMLHttpRequest;var Zt=function(t,i){var e=(void 0===i?{}:i).debugEnabled,r={F(i){if(Vt&&(qt.DEBUG||Vt.POSTHOG_DEBUG||e)&&!F(Vt.console)&&Vt.console){for(var r=("__rrweb_original__"in Vt.console[i]?Vt.console[i].__rrweb_original__:Vt.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.F("debug",...i)},info(){for(var t=arguments.length,i=new Array(t),e=0;t>e;e++)i[e]=arguments[e];r.F("log",...i)},warn(){for(var t=arguments.length,i=new Array(t),e=0;t>e;e++)i[e]=arguments[e];r.F("warn",...i)},error(){for(var t=arguments.length,i=new Array(t),e=0;t>e;e++)i[e]=arguments[e];r.F("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)=>Zt(t+" "+i,e)};return r},Qt=Zt("[PostHog.js]"),Yt=Qt.createLogger;function Xt(t,i){if(!A(t))if(k(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 ti=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 ii(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 ei=function(t){try{return t()}catch(t){return}};function ri(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 si(t){return"ph_toolbar_internal"===t.name}function ni(t,i){var e,r=null==t||null==(e=t.config)?void 0:e.get_current_url;if(!S(r))return i;try{var s=r(i);return C(s)&&s?s:i}catch(t){return Qt.error("Error in get_current_url, falling back to window.location.href",t),i}}var ai="__POSTHOG_TOOLBAR__",oi=1,li=3,ui=11;function hi(t){return t instanceof Element&&(t.id===ai||!(null==t.closest||!t.closest(".toolbar-global-fade-container")))}function vi(t){return!!t&&t.nodeType===oi}function di(t,i){return!!t&&!!t.tagName&&t.tagName.toLowerCase()===i.toLowerCase()}function ci(t){return!!t&&t.nodeType===li}function fi(t){return!!t&&t.nodeType===ui&&vi(t.host)}var pi=1e3;function gi(t){return t?b(t).split(/\s+/):[]}function _i(t,i){var e=function(t){var i,e=null==Vt||null==(i=Vt.location)?void 0:i.href;return F(e)?void 0:ni(t,e)}(i);return!!(e&&t&&t.some((t=>e.match(t))))}function bi(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 gi(i)}function mi(t){return A(t)?null:b(t).split(/(\s+)/).filter((t=>Hi(t))).join("").replace(/[\r\n]/g," ").replace(/[ ]+/g," ").substring(0,255)}function yi(t){var i="";return Mi(t)&&!$i(t)&&t.childNodes&&t.childNodes.length&&Xt(t.childNodes,(function(t){var e;ci(t)&&t.textContent&&(i+=null!==(e=mi(t.textContent))&&void 0!==e?e:"")})),b(i)}function wi(t){var i;return F(t.target)?t.srcElement||null:null!=(i=t.target)&&i.shadowRoot?t.composedPath()[0]||null:t.target||null}var ki=["a","button","form","input","select","textarea","label"];function Si(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 xi(t){var i=t.parentNode;return!(!i||!vi(i))&&i}var Ei=[".ph-no-autocapture","[data-ph-no-autocapture]"],Fi=["next","previous","prev",">","<"],Ci=(t,i)=>/[a-z0-9]/i.test(i)?t.includes(i):t===i,Pi=[".ph-no-rageclick",".ph-no-capture"],Ti=["","text","search","email","password","url","tel","number"];function Ai(t,i){if(!Vt||Ri(t))return!1;var e,r,s,n,a;if(O(i)?(e=!!i&&Pi,r=void 0,s=!1):(e=null!==(n=null==i?void 0:i.css_selector_ignorelist)&&void 0!==n?n:Pi,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||!vi(t))&&(!!di(t,"textarea")||(di(t,"input")?_(Ti,(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=Oi(t,!1).targetElementList;return!function(t,i){if(!1===t||F(t))return!1;var e;if(!0===t)e=Fi;else{if(!k(t))return!1;if(t.length>10)return Qt.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=>Ci(i,t)||Ci(r,t)))}))}(r,o.map((t=>{var i;return{safeText:yi(t).toLowerCase(),ariaLabel:(null==(i=t.getAttribute("aria-label"))?void 0:i.toLowerCase().trim())||""}})))&&!Si(o,e)}var Ri=t=>!t||di(t,"html")||!vi(t),Oi=(t,i)=>{if(!Vt||Ri(t))return{parentIsUsefulElement:!1,targetElementList:[]};for(var e=!1,r=[t],s=t;s.parentNode&&!di(s,"body");)if(fi(s.parentNode))r.push(s.parentNode.host),s=s.parentNode.host;else{var n=xi(s);if(!n)break;if(i||ki.indexOf(n.tagName.toLowerCase())>-1)e=!0;else try{var a=Vt.getComputedStyle(n);a&&"pointer"===a.getPropertyValue("cursor")&&(e=!0)}catch(t){}r.push(n),s=n}return{parentIsUsefulElement:e,targetElementList:r}};function Mi(t){for(var i=new Set,e=0,r=t;r.parentNode&&!di(r,"body");r=r.parentNode){if(e++>=pi||i.has(r))return!1;i.add(r);var s=bi(r);if(_(s,"ph-sensitive")||_(s,"ph-no-capture"))return!1}if(_(bi(t),"ph-include"))return!0;var n=t.type||"";if(C(n))switch(n.toLowerCase()){case"hidden":case"password":return!1}var a=t.name||t.id||"";return!C(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 $i(t){return!!(di(t,"input")&&!["button","checkbox","submit","reset"].includes(t.type)||di(t,"select")||di(t,"textarea")||"true"===t.getAttribute("contenteditable"))}var Ii=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}))$"),ji=/(^|[^0-9A-Za-z_])([0-9][0-9 -]*[0-9])(?=$|[^0-9A-Za-z_])/g,Li=[16,15,14,13],Di=new RegExp("^(\\d{3}-?\\d{2}-?\\d{4})$"),Ni=new RegExp("(^|[^0-9])((?!000|666)[0-9]{3}-?(?!00)[0-9]{2}-?(?!0000)[0-9]{4})(?=$|([^0-9]))","g"),zi=/[0-9A-Za-z_]/;function Ui(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 Hi(t,i){if(void 0===i&&(i=!0),A(t))return!1;if(C(t)){t=b(t);var e=i?Ii.test((t||"").replace(/[- ]/g,"")):function(t){var i;for(ji.lastIndex=0;i=ji.exec(t);){var e=i[2];if(e)for(var r=e.replace(/[- ]/g,""),s=0;r.length>s;s++)for(var n of Li){var a=s+n;if(r.length>=a){var o=r.slice(s,a);if(Ii.test(o)&&Ui(o))return!0}}}return!1}(t);if(e)return!1;var r=i?Di.test(t):function(t){var i;for(Ni.lastIndex=0;i=Ni.exec(t);){var e=i[1],r=i[3];if(!(e&&r&&zi.test(e)&&zi.test(r)))return!0}return!1}(t);if(r)return!1}return!0}function qi(t){var i=yi(t);return Hi(i=(i+" "+Vi(t)).trim())?i:""}function Vi(t){var i="";return t&&t.childNodes&&t.childNodes.length&&Xt(t.childNodes,(function(t){var e;if(t&&"span"===(null==(e=t.tagName)?void 0:e.toLowerCase()))try{var r=yi(t);i=(i+" "+r).trim(),t.childNodes&&t.childNodes.length&&(i=(i+" "+Vi(t)).trim())}catch(t){Qt.error("[AutoCapture]",t)}})),i}function Bi(t){return t.replace(/"|\\"/g,'\\"')}function Wi(t){var i=t.attr__class;if(i)return k(i)?i:gi(i)}class Ki{constructor(t){this.disabled=!1===t;var i=x(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 Ji="$autocapture_disabled_server_side",Gi="$heatmaps_enabled_server_side",Zi="$exception_capture_enabled_server_side",Qi="$error_tracking_suppression_rules",Yi="$error_tracking_capture_extension_exceptions",Xi="$web_vitals_enabled_server_side",te="$product_tours_enabled_server_side",ie="$web_vitals_allowed_metrics",ee="$session_recording_remote_config",re="$enabled_feature_flags",se="$active_feature_flags",ne="$early_access_features",ae="$feature_flag_details",oe="$feature_flag_payloads",le="$feature_flag_request_id",ue="$minimal_flag_called_events",he="$override_feature_flags",ve="$override_feature_flag_payloads",de="$stored_person_properties",ce="$stored_group_properties",fe="$surveys",pe="$surveys_loaded_at",ge="$surveys_activated",_e="$surveys_activated_session",be="$surveys_activated_timestamps",me="ph_product_tours",ye="$flag_call_reported",we="$flag_call_reported_session_id",ke="$feature_flag_errors",Se="$feature_flag_evaluated_at",xe="$sdk_debug_recording_script_not_loaded",Ee="PostHog loadExternalDependency extension not found.",Fe="visibilitychange",Ce="beforeunload",Pe=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(!k(e)||2>e.length)return"";var a=e[1];try{a=decodeURIComponent(a)}catch(t){Qt.error("Skipping decoding for malformed query param: "+a)}return a.replace(/\+/g," ")},Te=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("=");k(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},Ae=function(t,i){var e=t.match(new RegExp(i+"=([^&]*)"));return e?e[1]:null},Re=(t,i)=>t>=i&&Gt(),Oe=(t,i,e,r)=>{if(0===t){if(Gt()){var s=i+1;return s===e&&r(),s}return i}return 0},Me="$copy_autocapture",$e=Yt("[AutoCapture]");function Ie(t,i){return i.length>t?i.slice(0,t)+"...":i}function je(t){if(t.previousElementSibling)return t.previousElementSibling;var i=t;do{i=i.previousSibling}while(i&&!vi(i));return i}function Le(t,i){var r,s,n=i.e,a=i.maskAllElementAttributes,o=i.maskAllText,l=i.elementAttributeIgnoreList,u=i.elementsChainAsString,h=i.disableCaptureUrlHashes;if(!vi(t))return{props:{}};for(var v=[t],d=new Set([t]),c=t;c.parentNode&&!di(c,"body")&&pi>v.length;)if(fi(c.parentNode)){var f=c.parentNode.host;if(d.has(f))break;d.add(f),v.push(f),c=f}else{if(!vi(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(Xt(v,(t=>{var i=Mi(t);if(di(t,"a")){var e=t.getAttribute("href");y=!!(i&&e&&Hi(e))&&(h?H(e):e)}_(bi(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};ki.indexOf(n)>-1&&!e&&(a.$el_text="a"===n.toLowerCase()||"button"===n.toLowerCase()?Ie(1024,qi(t)):Ie(1024,yi(t)));var o=bi(t);o.length>0&&(a.classes=o.filter((function(t){return""!==t}))),Xt(t.attributes,(function(e){var n;if((!$i(t)||-1!==["name","id","class","aria-label"].indexOf(e.name))&&(null==r||!r.includes(e.name))&&!i&&Hi(e.value)&&(!C(n=e.name)||"_ngcontent"!==n.substring(0,10)&&"_nghost"!==n.substring(0,7))){var o=e.value;"class"===e.name&&(o=gi(o).join(" ")),a["attr__"+e.name]=Ie(1024,"href"===e.name&&s?H(o):o)}}));for(var l=1,u=1,h=t;h=je(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(!Mi(t))return{};var i={};return Xt(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&&Hi(r)&&(i[e]=r)}})),i}(t);ti(m,r)})),w)return{props:{},explicitNoCapture:w};if(o||(b[0].$el_text=di(t,"a")||di(t,"button")?qi(t):yi(t)),y){var k,S;b[0].attr__href=y;var x=null==(k=(t=>{var i=null==Kt?void 0:Kt.createElement("a");return F(i)?null:(i.href=t,i)})(y))?void 0:k.host,E=null==Vt||null==(S=Vt.location)?void 0:S.host;x&&E&&x!==E&&(p=y)}return{props:ti({$event_type:n.type,$ce_version:1},u?{}:{$elements:b},{$elements_chain:(g=b,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 ii(a).sort(((t,i)=>t[0].localeCompare(i[0]))).forEach((t=>{var i=t[1];return o[Bi(t[0].toString())]=Bi(i.toString())})),(s+=":")+ii(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:Wi(t),attr_id:t.attr__id,nth_child:t.nth_child,nth_of_type:t.nth_of_type,attributes:{}};return ii(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 De{constructor(t){this.name="autocapture",this.Qn=!1,this.Jn=null,this.Kn=!1,this.Yn=!1,this.qi={enabled:!1,rageclick:!1,maskAllElementAttributes:!1,maskAllText:!1,disableCaptureUrlHashes:!1,remoteRequestsDisabled:!1},this.Xn=!1,this.ts=t,this.ts.refresh(this.qi),this.rageclicks=new Ki(this.qi.rageclick),this.es=null}setup(t){this.rs(),this.ns=t;var i=t.onRemoteConfig(this.onRemoteConfig.bind(this));this.Xn?i.dispose():(this.ss=i,this.startIfEnabled())}dispose(){var t;this.Xn||(this.Xn=!0,this.ns=void 0,null==(t=this.ss)||t.dispose(),this.ss=void 0,this.os())}ls(){return this.ts.refresh(this.qi),this.qi}rs(){var t,i;return this.ls(),this.qi.url_allowlist=null==(t=this.qi.url_allowlist)?void 0:t.map((t=>new RegExp(t))),this.qi.url_ignorelist=null==(i=this.qi.url_ignorelist)?void 0:i.map((t=>new RegExp(t))),this.qi}us(){if(this.isBrowserSupported()){if(Vt&&Kt){var t=this.hs=t=>{t=t||(null==Vt?void 0:Vt.event);try{this.ds(t)}catch(t){$e.error("Failed to capture event",t)}};if(ri(Kt,"submit",t,{capture:!0}),ri(Kt,"change",t,{capture:!0}),ri(Kt,"click",t,{capture:!0}),this.ls().capture_copied_text){var i=this.vs=t=>{t=t||(null==Vt?void 0:Vt.event);try{this.ds(t,Me)}catch(t){$e.error("Failed to capture copy/cut event",t)}};ri(Kt,"copy",i,{capture:!0}),ri(Kt,"cut",i,{capture:!0})}}}else $e.info("Disabling Automatic Event Collection because this browser is not supported")}os(){this.hs&&(null==Kt||Kt.removeEventListener("submit",this.hs,!0),null==Kt||Kt.removeEventListener("change",this.hs,!0),null==Kt||Kt.removeEventListener("click",this.hs,!0),this.hs=void 0),this.vs&&(null==Kt||Kt.removeEventListener("copy",this.vs,!0),null==Kt||Kt.removeEventListener("cut",this.vs,!0),this.vs=void 0),this.Qn=!1}startIfEnabled(){!this.Xn&&this.ns&&this.isEnabled&&!this.Qn&&(this.us(),this.Qn=!0)}onRemoteConfig(t){if(!this.Xn)if(this.Kn=!0,t.ok){var i=t.config;i.elementsChainAsString&&(this.Yn=i.elementsChainAsString);var e,r=i.autocapture_opt_out;O(r)&&(null==(e=this.ns)||e.kv.set(Ji,r),this.Jn=r),this.startIfEnabled()}else this.startIfEnabled()}setElementSelectors(t){this.es=t}getElementSelectors(t){var i,e=[];return null==(i=this.es)||i.forEach((i=>{var r=null==Kt?void 0:Kt.querySelectorAll(i);null==r||r.forEach((r=>{t===r&&e.push(i)}))})),e}get isEnabled(){var t,i;if(this.Xn)return!1;var e=null==(t=this.ns)?void 0:t.kv.get(Ji),r=this.Jn,s=this.ls(),n=s.remoteRequestsDisabled&&!this.Kn;if(T(r)&&!O(e)&&!n)return!1;var a=null!==(i=this.Jn)&&void 0!==i?i:!!e;return!!s.enabled&&!a}ds(t,i){if(void 0===i&&(i="$autocapture"),this.isEnabled){var e=wi(t);ci(e)&&(e=e.parentNode||null);var r,s=this.rs();"$autocapture"===i&&"click"===t.type&&t instanceof MouseEvent&&s.rageclick&&null!=(r=this.rageclicks)&&r.isRageClick(t.clientX,t.clientY,t.timeStamp||(new Date).getTime())&&Ai(e,s.rageclick)&&this.ds(t,"$rageclick");var n=i===Me;if(e&&function(t,i,e,r,s,n){var a;if(!Vt||Ri(t))return!1;if(null!=e&&e.url_allowlist&&!_i(e.url_allowlist,n))return!1;if(null!=e&&e.url_ignorelist&&_i(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=Oi(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(!Si(h,null==e?void 0:e.css_selector_allowlist))return!1;if(Si(h,null!==(a=null==e?void 0:e.css_selector_ignorelist)&&void 0!==a?a:Ei))return!1;try{var v=Vt.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&&(ki.indexOf(d)>-1||"true"===t.getAttribute("contenteditable"))}}(e,t,s,n,n?["copy","cut"]:void 0,{config:{get_current_url:s.getCurrentUrl}})){var a,o=Le(e,{e:t,maskAllElementAttributes:s.maskAllElementAttributes,maskAllText:s.maskAllText,elementAttributeIgnoreList:s.element_attribute_ignorelist,elementsChainAsString:this.Yn,disableCaptureUrlHashes:s.disableCaptureUrlHashes}),l=o.props;if(o.explicitNoCapture)return!1;var u=this.getElementSelectors(e);if(u&&u.length>0&&(l.$element_selectors=u),i===Me){var h,v=mi(null==Vt||null==(h=Vt.getSelection())?void 0:h.toString()),d=t.type||"clipboard";if(!v)return!1;l.$selected_content=v,l.$copy_type=d}return null==(a=this.ns)||a.capture(i,l).catch((t=>$e.error("Failed to capture event",t))),!0}}}isBrowserSupported(){return S(null==Kt?void 0:Kt.querySelectorAll)}}class Ne{constructor(t){this._instance=t}refresh(t){var i=this._instance.config,e=x(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 ze="undefined"!=typeof globalThis?globalThis:Vt;ze&&"undefined"==typeof self&&(ze.self=ze),ze&&"undefined"==typeof File&&(ze.File=function(){});var Ue=null!=Vt?Vt:{},He=Yt("[Dead Clicks]"),qe=()=>!0;class Ve{get lazyLoadedDeadClicksAutocapture(){return this.bs}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._s((()=>{this.ws()})):this.stop()}_s(t){var i,e;null!=(i=Ue.__PosthogExtensions__)&&i.initDeadClicksAutocapture?t():null==(e=Ue.__PosthogExtensions__)||null==e.loadExternalDependency||e.loadExternalDependency(this.instance,"dead-clicks-autocapture",(i=>{i?He.error("failed to load script",i):t()}))}ws(){var t;if(Kt){if(!this.bs&&null!=(t=Ue.__PosthogExtensions__)&&t.initDeadClicksAutocapture){var i=x(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.bs=Ue.__PosthogExtensions__.initDeadClicksAutocapture(this.instance,i),this.bs.start(Kt),He.info("starting...")}}else He.error("`document` not found. Cannot start.")}stop(){this.bs&&(this.bs.stop(),this.bs=void 0,He.info("stopping..."))}}var Be=Yt("[ExceptionAutocapture]"),We=()=>{},Ke=Yt("[TracingHeaders]"),Je=["gclid","gclsrc","dclid","gbraid","wbraid","fbclid","msclkid","twclid","li_fat_id","igshid","ttclid","rdt_cid","epik","qclid","sccid","irclid","_kx"],Ge=["utm_source","utm_medium","utm_campaign","utm_content","utm_term","gad_source","mc_cid",...Je],Ze="<masked>",Qe=["li_fat_id"];function Ye(t,i,e){if(!Kt)return{};var r,s,n,a=(r=Te(Kt.URL,[],Ze),s=Ge.concat([]),n={},Xt(s,(function(t){var i=Pe(r,t);n[t]=i||null})),n),o=function(){var t={};return Xt(Qe,(function(i){var e=(t=>{if(Kt){try{for(var i=t+"=",e=Kt.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 ti(o,a)}function Xe(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(t){return}}var tr=Yt("[Web Vitals]"),ir=9e5,er=["CLS","FCP","INP","LCP"],rr=["INP","LCP"],sr=["interactionTarget","interactionType","inputDelay","processingDuration","presentationDelay","loadState","target","url","timeToFirstByte","resourceLoadDelay","resourceLoadDuration","elementRenderDelay","largestShiftTarget","largestShiftTime","largestShiftValue","firstByteToFCP"],nr=Yt("[RemoteConfig]");class ar{constructor(t){this._instance=t}get remoteConfig(){var t;return null==(t=Ue._POSTHOG_REMOTE_CONFIG)||null==(t=t[this._instance.config.token])?void 0:t.config}ca(t){var i,e;null!=(i=Ue.__PosthogExtensions__)&&i.loadExternalDependency?null==(e=Ue.__PosthogExtensions__)||null==e.loadExternalDependency||e.loadExternalDependency(this._instance,"remote-config",(()=>t(this.remoteConfig))):t()}fa(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 nr.info("Using preloaded remote config",this.remoteConfig),this.pa(this.remoteConfig),void this.ga();if(this._instance._shouldDisableFlags())return void nr.warn("Remote config is disabled. Falling back to local config.");this.ca((t=>{if(!t)return nr.info("No config found after loading remote JS config. Falling back to JSON."),void this.fa((t=>{this.pa(t.json,t),this.ga()}));this.pa(t),this.ga()}))}catch(t){nr.error("Error loading remote config",t),this.pa()}}stop(){this.ya&&(clearInterval(this.ya),this.ya=void 0)}refresh(){!this._instance._shouldDisableFlags()&&Kt&&"hidden"!==Kt.visibilityState&&this._instance.reloadFeatureFlags()}ga(){var t;if(!this.ya){var i=null!==(t=this._instance.config.remote_config_refresh_interval_ms)&&void 0!==t?t:3e5;0!==i&&(this.ya=setInterval((()=>{this.refresh()}),i))}}pa(t,i){!t&&i&&(0===i.statusCode?i.error||nr.warn("Failed to fetch remote config from PostHog."):nr.error("Failed to fetch remote config from PostHog."));try{this._instance.pa(t?{ok:!0,config:t}:{ok:!1})}catch(t){nr.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){nr.error("Error loading feature flags",t)}}}var or="disabled",lr="lazy_loading",ur="awaiting_config",hr="missing_config";function vr(t){var i;return!(null==(i=t.conditions)||null==(i=i.events)||null==(i=i.values)||!i.length)}qt.DEBUG=!1,qt.LIB_VERSION="1.419.2",qt.LIB_NAME="web";var dr=(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}},cr=t=>t.toLowerCase(),fr={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=>dr(i,t))))),not_regex:(t,i)=>i.every((i=>t.every((t=>!dr(i,t))))),icontains:(t,i)=>i.map(cr).some((i=>t.map(cr).some((t=>i.includes(t))))),not_icontains:(t,i)=>i.map(cr).every((i=>t.map(cr).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 pr(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=fr[e.operator];return!!s&&s(e.values,[String(r)])}))}Yt("[SessionRecording]"),Yt("[SessionRecording]");var gr="[SessionRecording]",_r=Yt(gr),br=Yt("[Heatmaps]");function mr(t){return x(t)&&"clientX"in t&&"clientY"in t&&R(t.clientX)&&R(t.clientY)}var yr=Yt("[Product Tours]"),wr=t=>{var i;return!t.config.disable_product_tours&&!(null==(i=t.persistence)||!i.get_property(te))},kr=["$set_once","$set"],Sr=Yt("[SiteApps]"),xr="Error while initializing PostHog app with config id ",Er=(t,i)=>null!=t&&t.then?t.then(i):i(t),Fr="base64",Cr="events",Pr="cancelEvents",Tr="survey shown",Ar=Yt("[Surveys]"),Rr="seenSurvey_",Or=["popover","widget","api"],Mr="SDK is not enabled or survey functionality is not yet loaded",$r="Disabled. Not loading surveys.";class Ir{constructor(t,i){this.name="surveys",this._surveyEventReceiver=null,this._surveyManager=null,this.Tl=!1,this.Ml=[],this.El=null,this.Il=null,this.Xn=!1,this.Rl=new Set,this.onRemoteConfig=t=>{if(!this.Xn&&!this.qi.disableSurveys){if(!t.ok)return Ar.warn("Remote config unavailable. Not loading surveys.");var i=t.config.surveys;if(A(i))return Ar.warn("Flags not loaded yet. Not loading surveys.");this.Pl=O(i)?i:i.length>0,Ar.info("flags response received, isSurveysEnabled: "+this.Pl),this.loadIfEnabled()}},this.ts=t,this.Al=i}setup(t){if(!this.Xn)return this.Fl=t,Er(t.kv.initialize(),(()=>{if(this.Fl===t&&!this.Xn){this.Fl=void 0,this.ns=t;var i=t.onRemoteConfig(this.onRemoteConfig);this.Xn?i.dispose():(this.ss=i,this.loadIfEnabled())}}))}dispose(){var t,i,e;this.Xn||(this.Xn=!0,this.Fl=void 0,this.ns=void 0,null==(t=this.ss)||t.dispose(),this.ss=void 0,null==(i=this._surveyEventReceiver)||i.dispose(),this._surveyEventReceiver=null,null==(e=this._surveyManager)||null==e.dispose||e.dispose(),this._surveyManager=null,this.Ml=[],this.El=null,this.Rl.forEach((t=>clearTimeout(t))),this.Rl.clear())}get qi(){return this.ts.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(Rr)||null!=r&&r.startsWith("inProgressSurvey_"))&&i.push(r)}i.forEach((t=>localStorage.removeItem(t)))}catch(t){}}loadIfEnabled(){if(!this.Xn&&this.ns){var t=this.qi;if(!this._surveyManager)if(this.Tl)Ar.info("Already initializing surveys, skipping...");else if(t.disableSurveys)Ar.info($r);else if(t.cookielessMode&&this.ts.isOptedOut())Ar.info("Not loading surveys in cookieless mode without consent.");else{var i=this.ts.getExtensions();if(i){if(!F(this.Pl)||t.advancedEnableSurveys){var e=this.Pl||t.advancedEnableSurveys;this.Tl=!0;try{var r=i.generateSurveys;if(r)return this.Ll(r,e),void(this.Tl=!1);var s=i.loadExternalDependency;if(!s)return this.Ol(Ee),void(this.Tl=!1);s((t=>{try{if(this.Xn)return;var i=this.ts.getExtensions();t||null==i||!i.generateSurveys?this.Ol("Could not load surveys script",t):this.Ll(i.generateSurveys,e)}finally{this.Tl=!1}}))}catch(t){throw this.Tl=!1,this.Ol("Error initializing surveys",t),t}}}else Ar.error("PostHog Extensions not found.")}}}Ll(t,i){this.Xn||(this._surveyManager=t(i),this._surveyEventReceiver=this.ts.createEventReceiver(),Ar.info("Surveys loaded successfully"),this.Dl({isLoaded:!0}))}Ol(t,i){Ar.error(t,i),this.Dl({isLoaded:!1,error:t})}onSurveysLoaded(t){return this.Ml.push(t),this._surveyManager&&this.Dl({isLoaded:!0}),()=>{this.Ml=this.Ml.filter((i=>i!==t))}}getSurveys(t,i){var e;void 0===i&&(i=!1);var r=null!==(e=this.ns)&&void 0!==e?e:this.Al;if(r&&!this.Xn){if(this.qi.disableSurveys)return Ar.info($r),t([]);var s=r.kv.get(fe);if(s&&!i)return t(s,{isLoaded:!0}),void(this.$l()&&this.getSurveys((()=>{}),!0));if(this.El)this.El.then((i=>{this.Xn||t(i.surveys,i.context)})).catch((t=>Ar.error("Error in survey callback",t)));else{var n=this.Nl("/api/surveys/",{method:"GET",query:{token:r.projectToken},sentAt:"query",timeoutMs:this.qi.requestTimeoutMs}).then((t=>{try{return this.ql(r,t)}catch(t){return Ar.error("Error processing surveys response",t),this.ql(r,{statusCode:0,error:t})}}),(t=>this.ql(r,{statusCode:0,error:t})));this.El=n;var a=()=>{this.El===n&&(this.El=null)};n.then((i=>{a(),this.Xn||t(i.surveys,i.context)}),a).catch((t=>Ar.error("Error in survey callback",t)))}}}Nl(t,i){var e=this.ns;return e?e.sendRequest(t,i):new Promise((t=>t({statusCode:0,error:new Error(Mr)})))}ql(t,i){if(this.Xn)return{surveys:[],context:{isLoaded:!1,error:Mr}};var e=i.statusCode;if(200!==e||!i.json){var r="Surveys API could not be loaded, status: "+e;return 0!==e?Ar.error(r):i.error||Ar.warn(r),this.Il=Date.now(),{surveys:[],context:{isLoaded:!1,error:r}}}this.Il=null;var s,n=i.json.surveys||[],a=n.filter((t=>function(t){return!(!t.start_date||t.end_date)}(t)&&(vr(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({[fe]:n,[pe]:Date.now()}),{surveys:n,context:{isLoaded:!0}}}$l(){return this.jl()&&!this.El&&!this.Bl()}jl(){var t,i,e=null==(t=null!==(i=this.ns)&&void 0!==i?i:this.Al)?void 0:t.kv.get(pe);return R(e)&&Date.now()-e>3e5}Bl(){return R(this.Il)&&3e5>Date.now()-this.Il}markSurveyAsSeen(t,i){var e;(t=>{try{var i=(t=>((t,i)=>""+Rr+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){Ar.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){}}Dl(t){for(var i of this.Ml)try{if(!t.isLoaded)return i([],t);this.getSurveys(i)}catch(t){Ar.error("Error in survey callback",t)}}getActiveMatchingSurveys(t,i){if(void 0===i&&(i=!1),!A(this._surveyManager))return this._surveyManager.getActiveMatchingSurveys(t,i);Ar.warn("init was not called")}Hl(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}Ul(t){if(A(this._surveyManager))return{eligible:!1,reason:Mr};var i="string"==typeof t?this.Hl(t):t;return i?this._surveyManager.checkSurveyEligibility(i):{eligible:!1,reason:"Survey not found"}}zl(t){if(A(this._surveyManager))return{eligible:!1,reason:Mr};var i="string"==typeof t?this.Hl(t):t;return i?this._surveyManager.checkSurveyRenderability(i):{eligible:!1,reason:"Survey not found"}}canRenderSurvey(t){if(A(this._surveyManager))return Ar.warn("init was not called"),{visible:!1,disabledReason:Mr};var i=this.zl(t);return{visible:i.eligible,disabledReason:i.reason}}canRenderSurveyAsync(t,i){return A(this._surveyManager)?(Ar.warn("init was not called"),Promise.resolve({visible:!1,disabledReason:Mr})):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.zl(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))Ar.warn("init was not called");else{var s="string"==typeof t?this.Hl(t):t;if(null!=s&&s.id)if(Or.includes(s.type)){var n=null==Kt?void 0:Kt.querySelector(i);if(n)if(null!=(r=s.appearance)&&r.surveyPopupDelaySeconds){Ar.info("Rendering survey "+s.id+" with delay of "+s.appearance.surveyPopupDelaySeconds+" seconds");var a=setTimeout((()=>{var t,i;this.Rl.delete(a),this.Xn||(Ar.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),Ar.info("Survey "+s.id+" rendered"))}),1e3*s.appearance.surveyPopupDelaySeconds);this.Rl.add(a)}else this._surveyManager.renderSurvey(s,n,e);else Ar.warn("Survey element not found")}else Ar.warn("Surveys of type "+s.type+" cannot be rendered in the app");else Ar.warn("Survey not found")}}displaySurvey(t,i){var r;if(A(this._surveyManager))Ar.warn("init was not called");else{var s=this.Hl(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&&Ar.warn("initialResponses is only supported for popover surveys. prefill will not be applied."),!1===i.ignoreConditions){var a=this.Ul(s);if(!a.eligible)return void Ar.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 Ar.warn("Survey not found")}}cancelPendingSurvey(t){A(this._surveyManager)?Ar.warn("init was not called"):this._surveyManager.cancelSurvey(t)}handlePageUnload(){var t;null==(t=this._surveyManager)||null==t.handlePageUnload||t.handlePageUnload()}}class jr{on(t,i){return this.Va[t]||(this.Va[t]=[]),this.Va[t].push(i),()=>{this.Va[t]=this.Va[t].filter((t=>t!==i))}}emit(t,i){for(var e of this.Va[t]||[])e(i);for(var r of this.Va["*"]||[])r(t,i)}constructor(){this.Va={}}}function Lr(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 Dr{constructor(t){this.Wl=new Set,this.Vl=new Set,this.Gl=new jr,this.Zl=(t,i)=>this.Ql(t,i)&&this.Jl(t,i)&&this.Kl(t,i)&&this.Yl(t,i),this.Ql=(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.Xl=null==(i=this._instance)?void 0:i._addCaptureHook(((t,i)=>{this.on(t,i)})))}dispose(){var t;null==(t=this.Xl)||t.call(this),this.Xl=void 0,this.Gl=new jr}register(t){var i,e;if(!F(null==(i=this._instance)?void 0:i._addCaptureHook)&&(t.forEach((t=>{var i;this.Wl.add(t),null==(i=t.steps)||i.forEach((t=>{this.Vl.add((null==t?void 0:t.event)||"")}))})),null!=(e=this._instance)&&e.autocapture)){var r=new Set;this.Wl.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.Wl.clear(),this.Vl.clear(),this.register(t)}on(t,i){null!=i&&0!=t.length&&(this.Vl.has(t)||this.Vl.has(i.event))&&this.Wl.forEach((t=>{this.tu(i,t)&&this.Gl.emit("actionCaptured",t.name)}))}eu(t){this.onAction("actionCaptured",(i=>t(i)))}tu(t,i){if(null==(null==i?void 0:i.steps))return!1;for(var e of i.steps)if(this.Zl(t,e))return!0;return!1}onAction(t,i){return this.Gl.on(t,i)}Jl(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(!Lr(r,i.url,i.url_matching||"contains"))return!1}return!0}Kl(t,i){return!!this.iu(t,i)&&!!this.ru(t,i)&&!!this.nu(t,i)}iu(t,i){var e;if(null==i||!i.href)return!0;var r=this.su(t);if(r.length>0)return r.some((t=>Lr(t.href,i.href,i.href_matching||"exact")));var s,n=(null==t||null==(e=t.properties)?void 0:e.$elements_chain)||"";return!!n&&Lr((s=n.match(/(?::|")href="(.*?)"/))?s[1]:"",i.href,i.href_matching||"exact")}ru(t,i){var e;if(null==i||!i.text)return!0;var r=this.su(t);if(r.length>0)return r.some((t=>Lr(t.text,i.text,i.text_matching||"exact")||Lr(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=>Lr(t,n,a))))}nu(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}su(t){var i;return null==(null==t||null==(i=t.properties)?void 0:i.$elements)?[]:null==t?void 0:t.properties.$elements}Yl(t,i){return null==i||!i.properties||0===i.properties.length||pr(i.properties.reduce(((t,i)=>{var e=k(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 Nr{constructor(t){var i;this.au=[],this._instance=t,this.ou=new Map,this.lu=new Map,this.uu=new Map,this.hu=null==(i=this._instance)||null==i.onSessionId?void 0:i.onSessionId((t=>this.du(t)))}vu(t){return!1}cu(){return null}fu(t){}pu(){}gu(t,i){return!!t&&pr(t.propertyFilters,null==i?void 0:i.properties)}mu(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}yu(t,i,e){var r=(e===Cr?this.ou:this.lu).get(t),s=[];return this.bu((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.gu(n,i)}))}register(t){this._u(t,!1)}replace(t){this._u(t,!0)}_u(t,i){var e;F(null==(e=this._instance)?void 0:e._addCaptureHook)||(this.wu(t,i),this.ku(t,i))}ku(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.uu.clear(),0!==e.length){this.Su||(this.Su=new Dr(this._instance),this.Su.init(),this.Su.eu((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.uu.get(i.name))&&void 0!==e?e:[];s.includes(t.id)||s.push(t.id),this.uu.set(i.name,s)}}))})),i?this.Su.replace(r):this.Su.register(r)}else{var s;i&&(null==(s=this.Su)||s.replace([]))}}xu(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)}))}wu(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.mu(t,Cr),o=this.mu(t,Pr);i?(this.ou=a,this.lu=o):(this.xu(this.ou,a),this.xu(this.lu,o)),(0!==s.length||0!==n.length)&&(null!==(e=this.Xl)&&void 0!==e||(this.Xl=null==(r=this._instance)?void 0:r._addCaptureHook(((t,i)=>{this.onEvent(t,i)}))))}onEvent(t,i){var e,r,s=this.Cu(),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.Tu(t,n);if("consume"===a)return s.info("event consumed activated item, removing it",{event:t,itemId:n}),void this.Mu([n]);if("persist"===a)return s.info("shown item promoted to persisted activation",{event:t,itemId:n}),this.Eu(n),void this.Iu([n])}if(this.lu.has(t)){var o=this.yu(t,i,Pr);o.length>0&&(s.info("cancel event matched, cancelling items",{event:t,itemsToCancel:o.map((t=>t.id))}),this.Mu(o.map((t=>t.id))),o.forEach((t=>this.Ru(t.id))))}if(this.ou.has(t)){s.info("event name matched",{event:t,eventPayload:i,items:this.ou.get(t)});var l=this.yu(t,i,Cr);this.Pu(l.map((t=>t.id)))}}onAction(t){this.uu.has(t)&&this.Pu(this.uu.get(t)||[])}Pu(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.vu(s)?this.Eu(s)&&this.Au(s):r.push(s);r.length>0&&(this.au=[...new Set([...this.au,...r])]),this.Cu().info("updating activated items",{activatedItems:this.getActivatedIds()})}}Eu(t){this.au=this.au.filter((i=>i!==t));var i=this.Fu();return!i.includes(t)&&(this.Lu([...i,t]),this.Ou(),!0)}Mu(t){var i=new Set(t);this.au=this.au.filter((t=>!i.has(t)));var e=this.Du(),r=e.filter((t=>!i.has(t)));r.length!==e.length&&(this.Lu(r),0===r.length&&this.$u()),this.Iu(t)}Nu(){var t,i=this.cu();if(!i)return{};var e=null==(t=this._instance)||null==(t=t.persistence)?void 0:t.props[i];return e&&"object"==typeof e?e:{}}Au(t){if(this.cu()){var i=this.Nu();this.fu(e({},i,{[t]:Date.now()}))}}Iu(t){if(this.cu()){var i=this.Nu(),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.pu():this.fu(e))}}qu(){this.cu()&&this.pu()}getActivationTimestamp(t){if(this.Fu().includes(t)){var i=this.Nu()[t];return R(i)?i:void 0}}Du(){var t,i=this.ju();return(null==(t=this._instance)||null==(t=t.persistence)?void 0:t.props[i])||[]}Fu(){var t,i,e=this.Du();if(0===e.length)return[];var r=null==(t=this._instance)||null==(t=t.persistence)?void 0:t.props[this.Bu()],s=null==(i=this._instance)||null==i.get_session_id?void 0:i.get_session_id();return s&&r===s?e:[]}Ou(){var t,i=null==(t=this._instance)||null==t.get_session_id?void 0:t.get_session_id();i&&this.Hu(i)}$u(){this.Uu()}du(t){var i,e=null==(i=this._instance)||null==(i=i.persistence)?void 0:i.props[this.Bu()];if(e&&e!==t){var r=this.Du(),s=this.Nu();r.length>0&&(this.Lu([]),r.filter((t=>R(s[t]))).forEach((t=>this.Ru(t)))),this.$u(),this.qu()}}getActivatedIds(){return[...new Set([...this.Fu(),...this.au])].filter((t=>!this.zu(t)))}dispose(){var t,i,e;null==(t=this.hu)||t.call(this),this.hu=void 0,null==(i=this.Xl)||i.call(this),this.Xl=void 0,null==(e=this.Su)||e.dispose(),this.Su=void 0}reset(){this.au=[],this.Du().length>0&&this.Lu([]),this.$u(),this.qu()}getEventToItemsMap(){return this.ou}Wu(){return this.Su}}class zr extends Nr{constructor(t){super(t)}ju(){return ge}Bu(){return _e}cu(){return be}fu(t){var i;null==(i=this._instance)||null==(i=i.persistence)||i.register({[be]:t})}pu(){var t;null==(t=this._instance)||null==(t=t.persistence)||t.unregister(be)}vu(t){var i,e;this.bu((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}Vu(){return Tr}bu(t){var i;null==(i=this._instance)||i.getSurveys(t)}Ru(t){var i;null==(i=this._instance)||i.cancelPendingSurvey(t)}Cu(){return Ar}Lu(t){var i;null==(i=this._instance)||null==(i=i.persistence)||i.register({[ge]:t})}Hu(t){var i;null==(i=this._instance)||null==(i=i.persistence)||i.register({[_e]:t})}Uu(){var t;null==(t=this._instance)||null==(t=t.persistence)||t.unregister(_e)}zu(){return!1}Tu(t,i){var e;this.bu((t=>{e=t.find((t=>t.id===i))}));var r=!e||function(t){var i;return vr(t)&&!(null==(i=t.conditions)||null==(i=i.events)||!i.repeatedActivation)||"always"===t.schedule}(e);return r?t===Tr?"consume":"ignore":t===Tr?"persist":"survey dismissed"===t||"survey sent"===t?"consume":"ignore"}getSurveys(){return this.getActivatedIds()}getEventToSurveys(){return this.getEventToItemsMap()}}class Ur{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 Hr{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==Ue?void 0:Ue.__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 zr(this._instance)}}var qr=null!=Vt&&Vt.location?Ae(Vt.location.hash,"__posthog")||Ae(location.hash,"state"):null,Vr="_postHogToolbarParams",Br=Yt("[Toolbar]"),Wr=Yt("[FeatureFlags]");class Kr{constructor(t,i){void 0===i&&(i=!1),this.Gu=!1,this.update(t,i)}update(t,i){this.Zu=((t,i)=>{var e,r,s,n;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,requestTimeoutMs:t.feature_flag_request_timeout_ms,compression:t.disable_compression?"none":"base64",evaluationContexts:null!==(s=null!==(n=t.evaluation_contexts)&&void 0!==n?n:t.evaluation_environments)&&void 0!==s?s:[],flagKeys:k(t.flag_keys)?t.flag_keys:void 0}})(t,i),!t.evaluation_environments||t.evaluation_contexts||this.Gu||(Wr.warn("evaluation_environments is deprecated. Use evaluation_contexts instead. evaluation_environments will be removed in a future version."),this.Gu=!0),F(t.flag_keys)||k(t.flag_keys)||Wr.error("Invalid flag_keys found:",t.flag_keys,"Expected array of non-empty strings")}get(){return this.Zu}}var Jr=Yt("[FeatureFlags]"),Gr=Yt("[FeatureFlags]",{debugEnabled:!0}),Zr="\" failed. Feature flags didn't load in time.",Qr="connection_error",Yr=t=>{for(var i={},e=0;t.length>e;e++)i[t[e]]=!0;return i},Xr=t=>{var i={};for(var e of ii(t||{})){var r=e[1];r&&(i[e[0]]=r)}return i},ts=Yt("[Error tracking]"),is=["chrome-extension://","moz-extension://","safari-extension:","safari-web-extension:"],es=["__firefox__","__gCrWeb"],rs="Refusing to render web experiment since the viewer is a likely bot",ss={icontains:(t,i)=>i.toLowerCase().indexOf(t.toLowerCase())>-1,not_icontains:(t,i)=>-1===i.toLowerCase().indexOf(t.toLowerCase()),regex:(t,i)=>dr(i,t),not_regex:(t,i)=>!dr(i,t),exact:(t,i)=>i===t,is_not:(t,i)=>i!==t};class ns{get qi(){return this._instance.config}constructor(t){var i=this;this.getWebExperimentsAndEvaluateDisplayLogic=function(t){void 0===t&&(t=!1),i.getWebExperiments((t=>{ns.Qu("retrieved web experiments from the server"),i.Ju=new Map,t.forEach((t=>{if(t.feature_flag_key){var e;i.Ju&&(ns.Qu("setting flag key ",t.feature_flag_key," to web experiment ",t),null==(e=i.Ju)||e.set(t.feature_flag_key,t));var r=i._instance.getFeatureFlag(t.feature_flag_key);C(r)&&t.variants[r]&&i.Ku(t.name,r,t.variants[r].transforms)}else if(t.variants)for(var s in t.variants){var n=t.variants[s];ns.Yu(n,i._instance)&&i.Ku(t.name,s,n.transforms)}}))}),t)},this._instance=t,this._instance.onFeatureFlags((t=>{this.onFeatureFlags(t)}))}initialize(){}onFeatureFlags(t){if(this._is_bot())ns.Qu(rs);else if(!this.qi.disable_web_experiments){if(A(this.Ju))return this.Ju=new Map,this.loadIfEnabled(),void this.previewWebExperiment();ns.Qu("applying feature flags",t),t.forEach((t=>{var i;if(this.Ju&&null!=(i=this.Ju)&&i.has(t)){var e,r=this._instance.getFeatureFlag(t),s=null==(e=this.Ju)?void 0:e.get(t);r&&null!=s&&s.variants[r]&&this.Ku(s.name,r,s.variants[r].transforms)}}))}}previewWebExperiment(){var t=ns.getWindowLocation();if(null!=t&&t.search){var i=Pe(null==t?void 0:t.search,"__experiment_id"),e=Pe(null==t?void 0:t.search,"__experiment_variant");i&&e&&(ns.Qu("previewing web experiments "+i+" && "+e),this.getWebExperiments((t=>{this.Xu(parseInt(i),e,t)}),!1,!0))}}loadIfEnabled(){this.qi.disable_web_experiments||this.getWebExperimentsAndEvaluateDisplayLogic()}getWebExperiments(t,i,e){if(this.qi.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.qi.token),method:"GET",timestampMode:"query",callback:i=>t(200===i.statusCode&&i.json&&i.json.experiments||[])})}Xu(t,i,e){var r=e.filter((i=>i.id===t));r&&r.length>0&&(ns.Qu("Previewing web experiment ["+r[0].name+"] with variant ["+i+"]"),this.Ku(r[0].name,i,r[0].variants[i].transforms))}static Yu(t,i){return!A(t.conditions)&&ns.th(t,i)&&ns.eh(t)}static th(t,i){var e;if(A(t.conditions)||A(null==(e=t.conditions)?void 0:e.url))return!0;var r=ns.getWindowLocation();if(r){var s,n,a,o=ni(i,r.href);return null==(s=t.conditions)||!s.url||ss[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==Vt?void 0:Vt.location}static eh(t){var i;if(A(t.conditions)||A(null==(i=t.conditions)?void 0:i.utm))return!0;var e=Ye();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 Qu(t){for(var i=arguments.length,e=new Array(i>1?i-1:0),r=1;i>r;r++)e[r-1]=arguments[r];Qt.info("[WebExperiments] "+t,e)}Ku(t,i,e){this._is_bot()?ns.Qu(rs):"control"!==i?e.forEach((e=>{if(e.selector){var r;ns.Qu("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)}))}})):ns.Qu("Control variants leave the page unmodified.")}_is_bot(){return Wt&&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}(Wt,this.qi.custom_blocked_useragents):void 0}}var as=Yt("[Conversations]"),os="Conversations not available yet.",ls="console",us="__posthogHandledLogsRequestError",hs=(t,i)=>{var e=t instanceof Error?t:new Error(i);return e[us]=!0,e},vs=t=>!!t&&"object"==typeof t&&!0===t[us],ds={featureFlags:class{constructor(t){this.name="featureFlags",this.ih=!1,this.featureFlagEventHandlers=[],this.I=Jr,this.rh={},this.nh={},this.sh=[],this.ah=!1,this.oh=!1,this.lh=0,this.uh=!1,this.hh=!1,this.dh=!1,this.fh=!1,this.ph=0,this.Tt=()=>{var t=this.gh();this.ph=0,t&&this.reloadFeatureFlags()},"get"in t?this.ts=t:(this.mh=new Kr(t.config,t._shouldDisableFlags()),this.ts=this.mh)}updateConfig(t,i){var e;null==(e=this.mh)||e.update(t,i)}setup(t){return this.Fl=t,this.I=t.logger.createLogger("[FeatureFlags]"),Er(t.kv.initialize(),(()=>{this.Fl===t&&(this.Fl=void 0,this.ns=t,this.yh(t))}))}yh(t){if(this.ns===t)return Vt&&ri(Vt,"online",this.Tt),this.bh=t.registerDynamicEventProperties((()=>this._h()?this.rh:this.nh)),this.wh(),this.initialize()}destroy(){null==Vt||Vt.removeEventListener("online",this.Tt)}dispose(){var t;this.lh++,this.hh=!1,this.Fl=void 0,this.ns&&(this.kh(),null==(t=this.bh)||t.dispose(),this.bh=void 0,this.sh=[],null==Vt||Vt.removeEventListener("online",this.Tt),this.ns=void 0)}get qi(){return this.ts.get()}Sh(t){var i;return null==(i=this.ns)?void 0:i.kv.get(t)}Dr(t){this.xh((()=>{var i;return null==(i=this.ns)?void 0:i.kv.set(t)}))}qr(t){this.xh((()=>{var i;return null==(i=this.ns)?void 0:i.kv.remove(t)}))}xh(t){try{t()}catch(t){this.I.error("Failed to update feature flag persistence",t)}}wh(){var t={};for(var i of[se,oe,le,he]){var r=this.Sh(i);F(r)||(t[i]=r)}this.rh=t;var s=e({},t),n=this.Sh(re);if(n)for(var a of Object.entries(n))s["$feature/"+a[0]]=a[1];this.nh=s}_h(){var t=this.qi.cacheTtlMs;if(!t||0>=t)return!1;var i=this.Sh(Se);return"number"!=typeof i||Date.now()-i>t}Ch(){return!!this._h()&&(this.fh||this.oh||(this.fh=!0,this.I.warn("Feature flag cache is stale, triggering refresh..."),this.reloadFeatureFlags()),!0)}Th(){var t=this.qi.evaluationContexts;return null!=t&&t.length?t.filter((t=>{var i=t&&"string"==typeof t&&t.trim().length>0;return i||this.I.error("Invalid evaluation context found:",t,"Expected non-empty string"),i})):[]}Mh(){var t=this.qi.flagKeys;if(!F(t))return t.filter((t=>{var i=t&&"string"==typeof t&&t.trim().length>0;return i||this.I.error("Invalid flag key found:",t,"Expected non-empty string"),i}))}initialize(){var t,i,e=this.qi,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.Eh({featureFlags:o,featureFlagPayloads:l})}}updateFlags(t,i,r){var a,o,l=null!=r&&r.merge&&null!==(a=this.Sh(re))&&void 0!==a?a:{},u=null!=r&&r.merge&&null!==(o=this.Sh(oe))&&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.Eh({flags:d})}get hasLoadedFlags(){return this.ah}getFlags(){return Object.keys(this.getFlagVariants())}getFlagsWithDetails(){var t=this.Sh(ae),i=this.Sh(he),r=this.Sh(ve);if(!r&&!i)return t||{};var s=ti({},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.ih||(this.I.warn(" Overriding feature flag details!",{flagDetails:t,overriddenPayloads:r,finalDetails:s}),this.ih=!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.Sh(re),i=this.Sh(he);if(!i)return t||{};for(var e=ti({},t||{}),r=Object.keys(i),s=0;r.length>s;s++)e[r[s]]=i[r[s]];return this.ih||(this.I.warn(" Overriding feature flags!",{enabledFlags:t,overriddenFlags:i,finalFlags:e}),this.ih=!0),e}getFlagPayloads(){var t=this.Sh(oe),i=this.Sh(ve);if(!i)return t||{};for(var e=ti({},t||{}),r=Object.keys(i),s=0;r.length>s;s++)e[r[s]]=i[r[s]];return this.ih||(this.I.warn(" Overriding feature flag payloads!",{flagPayloads:t,overriddenPayloads:i,finalPayloads:e}),this.ih=!0),e}reloadFeatureFlags(){this.uh||this.qi.featureFlagsDisabled||this.gh()||this.Ih||(this.sh.slice().forEach((t=>{try{t()}catch(t){this.I.error("Error while running feature flags reloading callback",t)}})),this.Ih=setTimeout((()=>{this.Rh()}),5))}kh(){clearTimeout(this.Ih),this.Ih=void 0}onReloading(t){return this.sh.push(t),()=>{this.sh=this.sh.filter((i=>i!==t))}}ensureFlagsLoaded(){this.ah||this.oh||this.Ih||this.reloadFeatureFlags()}setAnonymousDistinctId(t){this.$anon_distinct_id=t}setReloadingPaused(t){this.uh=t}resetFlagCallReported(){this.qr(ye)}Rh(t){this.kh();var i=this.ns;if(i&&!this.qi.remoteRequestsDisabled&&!this.gh())if(this.oh)this.hh=!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.Sh(de)||{},{$lib:i.library.name,$lib_version:i.library.version}),group_properties:this.Sh(ce),timezone:Xe()};F(i.deviceId)||(r.$device_id=i.deviceId),(null!=t&&t.disableFlags||this.qi.featureFlagsDisabled)&&(r.disable_flags=!0);var s=this.Th();s.length&&(r.evaluation_contexts=s);var n=this.Mh();F(n)||(r.flag_keys=n);var a=this.qi.onlyEvaluateSurveyFeatureFlags,o="/flags/?v=2"+(a?"&only_evaluate_survey_feature_flags=true":""),l=this.lh;this.oh=!0;var u=()=>{this.hh&&(this.hh=!1,this.Rh())},h=t=>{this.oh=!1,l===this.lh?(this.Dr({[ke]:[Qr]}),this.I.error("Feature flag request failed",t),u()):u()};try{i.sendRequest(o,{target:"flags",method:"POST",body:r,compression:"base64"===this.qi.compression?Fr:void 0,sentAt:"body",timeoutMs:this.qi.requestTimeoutMs}).then((t=>{var i,e,s=null!==(i=t.json)&&void 0!==i?i:{},n=200!==t.statusCode;if(this.oh=!1,l===this.lh){if(this.Ph(t.statusCode),n||this.hh||(this.$anon_distinct_id=void 0),!r.disable_flags||this.hh){this.dh=!n;var o=[];t.error?o.push(t.error instanceof Error&&"AbortError"===t.error.name?"timeout":t.error instanceof Error?Qr:"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.Dr({[ke]:o}),h?this.I.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.Eh(s,n,{partialResponse:a}),u()}}else u()})).catch(h)}catch(t){h(t)}}}gh(){return Re(this.ph,3)}Ph(t){this.ph=Oe(t,this.ph,3,(()=>this.I.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.dh)if(this.ah||this.getFlags()&&this.getFlags().length>0){if(!this.Ch()){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.I.warn('getFeatureFlag for key "'+t+Zr)}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.dh)if(this.ah||this.getFlags()&&this.getFlags().length>0){if(!this.Ch()){var s,n=this.getFlagVariants(),a=t in n,o=n[t],l=this.getFlagPayloads()[t],u=String(o),h=this.Sh(le)||void 0,v=this.Sh(Se)||void 0,d=this.Sh(ye)||{};if(this.qi.deduplicateCallsPerSession){var c,f=null==(c=this.ns)?void 0:c.session.sessionId,p=this.Sh(we);f&&f!==p&&(d={},s=f)}if(i.send_event||!("send_event"in i))if(t in d&&d[t].includes(u))s&&this.Dr({[ye]:d,[we]:s});else{var g,_,b,m,y,w,S,x,E,C,P,T;k(d[t])?d[t].push(u):d[t]=[u],this.Dr(e({[ye]:d},s?{[we]:s}:{}));var A=this.getFeatureFlagDetails(t),R=[...null!==(g=this.Sh(ke))&&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.qi.bootstrap)||null==(b=b.featureFlags)?void 0:b[t])&&void 0!==_?_:null,$feature_flag_bootstrapped_payload:null!==(m=null==(y=this.qi.bootstrap)||null==(y=y.featureFlagPayloads)?void 0:y[t])&&void 0!==m?m:null,$used_bootstrap_value:!this.dh};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==(S=A.metadata)?void 0:S.version)||(O.$feature_flag_version=A.metadata.version);var M,I=null!==(x=null==A||null==(E=A.reason)?void 0:E.description)&&void 0!==x?x:null==A||null==(C=A.reason)?void 0:C.code;I&&(O.$feature_flag_reason=I),null!=A&&null!=(P=A.metadata)&&P.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.Ah(O)}else s&&this.Dr({[ye]:d,[we]:s});if(a)return{key:t,enabled:!!o,variant:"string"==typeof o?o:void 0,payload:r(l)}}}else this.I.warn('getFeatureFlagResult for key "'+t+Zr)}Ah(t){try{var i;null==(i=this.ns)||i.capture("$feature_flag_called",t).catch((t=>{this.I.error("Failed to capture feature flag call",t)}))}catch(t){this.I.error("Failed to capture feature flag call",t)}}getRemoteConfigPayload(t,i){this.Fh(t,i)}Fh(t,e){var r=this;return i((function*(){var i=r.ns;if(i){var s={distinct_id:i.distinctId,token:i.projectToken,person_properties:{$lib:i.library.name,$lib_version:i.library.version}},n=r.Th();n.length&&(s.evaluation_contexts=n);var a,o=r.Mh();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:"base64"===r.qi.compression?Fr:void 0,sentAt:"body",timeoutMs:r.qi.requestTimeoutMs})).json)?void 0:l.featureFlagPayloads;a=(null==u?void 0:u[t])||void 0}catch(t){return void r.I.error("Remote config feature flag request failed",t)}try{e(a)}catch(t){r.I.error("Remote config feature flag callback failed",t)}}}))()}isFeatureEnabled(t,i){if(void 0===i&&(i={}),i.fresh&&!this.dh)return i.defaultValue;if(!(this.ah||this.getFlags()&&this.getFlags().length>0))return this.I.warn('isFeatureEnabled for key "'+t+Zr),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.Eh(t,i,e)}Eh(t,i,r){if(this.ns){this.ah=!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=Jr);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 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(k(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{[se]:u,[re]:c,[ue]:!1}}var p=u,g=h,_=l;if(null!=n&&n.partialResponse)p=e({},i,p),g=e({},r,g),_=e({},s,_);else if(t.errorsWhileComputingFlags)if(l){var b=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=>b.has(t[0]))))),g=e({},r,Object.fromEntries(Object.entries(g||{}).filter((t=>b.has(t[0]))))),_=e({},s,Object.fromEntries(Object.entries(_||{}).filter((t=>b.has(t[0])))))}else p=e({},i,p),g=e({},r,g),_=e({},s,_);return e({[se]:Object.keys(Xr(p)),[re]:p||{},[oe]:g||{},[ae]:_||{},[ue]:!0===t.minimalFlagCalledEvents},v?{[le]:v}:{},d?{[Se]:d}:{})}}(t,this.getFlagVariants(),this.getFlagPayloads(),this.getFlagsWithDetails(),r,this.I);s&&this.Dr(s),i||(this.fh=!1),this.Lh(i)}}override(t,i){void 0===i&&(i=!1),this.I.warn("override is deprecated. Please use overrideFeatureFlags instead."),this.overrideFeatureFlags({flags:t,suppressWarning:i})}overrideFeatureFlags(t){this.Oh(t)}Oh(t){if(this.ns){if(!1===t)return this.qr([he,ve]),this.Lh(),void Gr.info("All overrides cleared");if(k(t))return this.Dr({[he]:Yr(t)}),this.Lh(),void Gr.info("Flag overrides set",{flags:t});if(t&&"object"==typeof t&&("flags"in t||"payloads"in t)){var i,e=t;this.ih=Boolean(null!==(i=e.suppressWarning)&&void 0!==i&&i);var r={},s=e.flags,n=e.payloads;return s&&(r[he]=k(s)?Yr(s):s),n&&(r[ve]=n),Object.keys(r).length&&this.Dr(r),!1===s&&!1===n?this.qr([he,ve]):!1===s?this.qr(he):!1===n&&this.qr(ve),this.Lh(),!1===s?Gr.info("Flag overrides cleared"):s&&Gr.info("Flag overrides set",{flags:s}),void(!1===n?Gr.info("Payload overrides cleared"):n&&Gr.info("Payload overrides set",{payloads:n}))}if(t&&"object"==typeof t)return this.Dr({[he]:t}),this.Lh(),void Gr.info("Flag overrides set",{flags:t});this.I.warn("Invalid overrideOptions provided to overrideFeatureFlags",{overrideOptions:t})}else this.I.warn("posthog.featureFlags.overrideFeatureFlags called before feature flags were ready")}onFeatureFlags(t){if(this.addFeatureFlagsHandler(t),this.ah){var i=this.Dh(),e=i.flags,r=i.flagVariants;try{t(e,r)}catch(t){this.I.error("Error while running feature flags callback",t)}}return()=>this.removeFeatureFlagsHandler(t)}updateEarlyAccessFeatureEnrollment(t,i,r){var s=(this.Sh(ne)||[]).find((i=>i.flagKey===t)),n={["$feature_enrollment/"+t]:i},a={$feature_flag:t,$feature_enrollment:i,$set:n};s&&(a.$early_access_feature_name=s.name),r&&(a.$feature_enrollment_stage=r);var o=e({},this.getFlagVariants(),{[t]:i});this.Dr({[se]:Object.keys(Xr(o)),[re]:o,[de]:e({},this.Sh(de)||{},n)}),this.Lh();try{var l;null==(l=this.ns)||l.capture("$feature_enrollment_update",a).catch((t=>{this.I.error("Failed to capture early access feature enrollment",t)}))}catch(t){this.I.error("Failed to capture early access feature enrollment",t)}}getEarlyAccessFeatures(t,i,e){void 0===i&&(i=!1);var r=this.Sh(ne);!r||i?this.$h(t,e):t(r)}$h(t,e){var r=this;return i((function*(){var i=r.ns;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.Dr({[ne]:s=a.json.earlyAccessFeatures})}catch(t){return void r.I.error("Early access feature request failed",t)}try{t(s)}catch(t){r.I.error("Early access feature callback failed",t)}}}))()}Dh(){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)),{})}}Lh(t){this.wh();var i=this.Dh(),e=i.flags,r=i.flagVariants;this.featureFlagEventHandlers.forEach((i=>{try{i(e,r,{errorsLoading:t})}catch(t){this.I.error("Error while running feature flags callback",t)}}))}setPersonPropertiesForFlags(t,i){void 0===i&&(i=!0),this.Nh(t,i)}Nh(t,i){void 0===i&&(i=!0);var r=this.Sh(de)||{},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.Dr({[de]:e({},r,a,s)}),i&&this.reloadFeatureFlags()}unsetPersonPropertiesForFlags(t,i){void 0===i&&(i=!0);var r=e({},this.Sh(de)||{});t.forEach((t=>{delete r[t]})),this.Dr({[de]:r}),i&&this.reloadFeatureFlags()}resetPersonPropertiesForFlags(t){void 0===t&&(t=!0),this.qr(de),t&&this.reloadFeatureFlags()}setGroupPropertiesForFlags(t,i){void 0===i&&(i=!0);var r=this.Sh(ce)||{},s=e({},r);for(var n of Object.keys(t))s[n]=e({},r[n],t[n]);this.Dr({[ce]:s}),i&&this.reloadFeatureFlags()}resetGroupPropertiesForFlags(t){if(t){var i=this.Sh(ce)||{};this.Dr({[ce]:e({},i,{[t]:{}})})}else this.qr(ce)}reset(){this.lh++,this.hh=!1,this.rh={},this.nh={},this.ah=!1,this.uh=!1,this.dh=!1,this.$anon_distinct_id=void 0,this.kh(),this.ih=!1,this.ph=0}}},cs={sessionRecording:class{get qi(){return this._instance.config}get za(){return this._instance.persistence}get started(){var t;return!(null==(t=this.qh)||!t.isStarted)}get status(){var t,i;return this.jh===ur||this.jh===hr?this.jh:null!==(t=null==(i=this.qh)?void 0:i.status)&&void 0!==t?t:this.jh}constructor(t){if(this._forceAllowLocalhostNetworkCapture=!1,this.jh=or,this.Bh=void 0,this.Hh=!1,this.kt=(()=>{var t;if(null==Kt||!Kt.visibilityState||"visible"===Kt.visibilityState)return!0;var i=null==Vt||null==(t=Vt.performance)||null==t.getEntriesByType?void 0:t.getEntriesByType("visibility-state");return!(null!=i&&i.length)||i.some((t=>"visible"===t.name))})(),this.It=()=>{var t;"visible"===(null==Kt?void 0:Kt.visibilityState)&&(this.kt=!0,null==(t=this.qh)||null==t.setDocumentWasEverVisible||t.setDocumentWasEverVisible(!0))},this._instance=t,!this._instance.sessionManager)throw _r.error("started without valid sessionManager"),new Error(gr+" started without valid sessionManager. This is a bug.");if("always"===this.qi.cookieless_mode)throw new Error(gr+' cannot be used with cookieless_mode="always"');null!=Kt&&Kt.addEventListener&&ri(Kt,"visibilitychange",this.It)}initialize(){this.startIfEnabledOrStop()}dispose(){this.Hh=!0,null==Kt||null==Kt.removeEventListener||Kt.removeEventListener("visibilitychange",this.It),this.stopRecording()}get Uh(){var t,i=!(null==(t=this._instance.get_property(ee))||!t.enabled),e=!this.qi.disable_session_recording,r=this.qi.disable_session_recording||this._instance.consent.isOptedOut();return Vt&&i&&e&&!r}startIfEnabledOrStop(t){var i;if(!(this.Hh||this.Uh&&null!=(i=this.qh)&&i.isStarted)){var e=!F(Object.assign)&&!F(Array.from);this.Uh&&e?(this.zh(t),_r.info("starting")):(this.jh=or,this.stopRecording())}}zh(t){var i,e,r;this.Uh&&(this.jh!==ur&&this.jh!==hr&&(this.jh=lr),null!=Ue&&null!=(i=Ue.__PosthogExtensions__)&&null!=(i=i.rrweb)&&i.record&&null!=(e=Ue.__PosthogExtensions__)&&e.initSessionRecording?this.Wh(t):null==(r=Ue.__PosthogExtensions__)||null==r.loadExternalDependency||r.loadExternalDependency(this._instance,this.Vh,(i=>{if(i)return this._instance.register_for_session({[xe]:!0}),_r.error("could not load recorder",i);this.Wh(t)})))}stopRecording(){var t,i;null==(t=this.Bh)||t.call(this),this.Bh=void 0,null==(i=this.qh)||i.stop()}Gh(){var t,i;null==(t=this.Bh)||t.call(this),this.Bh=void 0,null==(i=this.qh)||i.discard()}Zh(){var t,i;null==(t=this.za)||t.unregister("$session_is_sampled"),null==(i=this.za)||i.unregister("$replay_sample_rate")}Qh(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?(_r.warn(i+" must be between 0 and 1. Ignoring invalid value:",t),null):r}Jh(t){if(this.za){var i,r,s=this.za,n=()=>{var i,r=!1===t.sessionRecording?void 0:t.sessionRecording,n=this.Qh(null==(i=this.qi.session_recording)?void 0:i.sampleRate,"session_recording.sampleRate"),a=this.Qh(null==r?void 0:r.sampleRate,"remote config sampleRate"),o=null!=n?n:a;A(o)&&this.Zh();var l=null==r?void 0:r.minimumDurationMilliseconds;s.register({[ee]: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.Bh)||i.call(this),this.Bh=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.Jh(i),void this.Gh()):(this.Jh(i),void this.startIfEnabledOrStop()):(this.jh===ur&&(this.jh=hr,_r.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.qh)&&e.log?this.qh.log(t,i):_r.warn("log called before recorder was ready")}get Vh(){var t,i,e=null==(t=this._instance)||null==(t=t.persistence)?void 0:t.get_property(ee);return(null==e||null==(i=e.scriptConfig)?void 0:i.script)||"lazy-recorder"}Kh(){var t,i=this._instance.get_property(ee);if(!i)return!1;try{t="object"==typeof i?i:JSON.parse(i)}catch(t){return _r.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}Wh(t){var i,e,r;if(!this.Hh){if(null==(i=Ue.__PosthogExtensions__)||!i.initSessionRecording)return _r.warn("Called on script loaded before session recording is available. This can be caused by adblockers."),void this._instance.register_for_session({[xe]:!0});var s;if(this.qh||(this.qh=null==(s=Ue.__PosthogExtensions__)?void 0:s.initSessionRecording(this._instance,this.kt),this.qh._forceAllowLocalhostNetworkCapture=this._forceAllowLocalhostNetworkCapture),!this.Kh()){if(this.jh===hr||this.jh===ur)return;return this.jh=ur,_r.info("persisted remote config is stale, requesting fresh config before starting"),void new ar(this._instance).load()}this.jh=lr,null==(e=(r=this.qh).setDocumentWasEverVisible)||e.call(r,this.kt),this.qh.start(t)}}onRRwebEmit(t){var i;null==(i=this.qh)||null==i.onRRwebEmit||i.onRRwebEmit(t)}overrideLinkedFlag(){var t,i;this.qh||null==(i=this.za)||i.register({$replay_override_linked_flag:!0}),null==(t=this.qh)||t.overrideLinkedFlag()}overrideSampling(){var t,i;this.qh||null==(i=this.za)||i.register({$replay_override_sampling:!0}),null==(t=this.qh)||t.overrideSampling()}overrideTrigger(t){var i,e;this.qh||null==(e=this.za)||e.register({["url"===t?"$replay_override_url_trigger":"$replay_override_event_trigger"]:!0}),null==(i=this.qh)||i.overrideTrigger(t)}get sdkDebugProperties(){var t;return(null==(t=this.qh)?void 0:t.sdkDebugProperties)||{$recording_status:this.status}}tryAddCustomEvent(t,i){var e;return!(null==(e=this.qh)||!e.tryAddCustomEvent(t,i))}}},fs={autocapture:class extends De{constructor(t){super(new Ne(t)),this.instance=t}},historyAutocapture:class{constructor(t){this._instance=t,this.Yh=this.Xh()}initialize(){this.startIfEnabled()}get isEnabled(){var t=this.td();return!!(t.path||t.search||this.ed(t))}startIfEnabled(){this.isEnabled&&(Qt.info("History API monitoring enabled, starting..."),this.monitorHistoryChanges())}startIfEnabledOrStop(){this.stop(),this.Yh=this.Xh(),this.startIfEnabled()}stop(){this.rd&&this.rd(),this.rd=void 0,this.nd&&this.nd(),this.nd=void 0,Qt.info("History API monitoring stopped")}monitorHistoryChanges(){Vt&&Vt.history&&(this.sd("pushState"),this.sd("replaceState"),this.ad(),this.ed()&&this.od())}sd(t){var i;if(Vt&&(null==(i=Vt.history[t])||!i.__posthog_wrapped__)){var e=this;!function(t,i,e){try{if(!(i in t))return We;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 S(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];S(e)&&e.__posthog_layer__;){var n=e.__posthog_layer__;if(n.next===s)return void(n.next=r.next);e=n.next}else t[i]=r.next}}catch(t){return We}}(Vt.history,t,(i=>function(r,s,n){i.call(this,r,s,n),e.ld(t)}))}}Xh(){var t=null==Vt?void 0:Vt.location;if(null!=t&&t.pathname)return{pathname:t.pathname,search:t.search,hash:t.hash}}td(){var t=this._instance.config.capture_pageview;return"history_change"===t?{path:!0}:x(t)?t:{}}ed(t){return void 0===t&&(t=this.td()),!!t.hash&&!this._instance.config.disable_capture_url_hashes}ud(t){var i=this.td(),e=this.Yh;return!(!e||!(i.path&&t.pathname!==e.pathname||i.search&&t.search!==e.search||this.ed(i)&&t.hash!==e.hash))}ld(t){try{var i=this.Xh();if(!i)return;this.ud(i)&&this._instance.capture("$pageview",{navigation_type:t}),this.Yh=i}catch(i){Qt.error("Error capturing "+t+" pageview",i)}}ad(){if(!this.rd){var t=()=>{this.ld("popstate")};ri(Vt,"popstate",t),this.rd=()=>{Vt&&Vt.removeEventListener("popstate",t)}}}od(){if(!this.nd){var t=()=>{this.ld("hashchange")};ri(Vt,"hashchange",t),this.nd=()=>{Vt&&Vt.removeEventListener("hashchange",t)}}}},heatmaps:class{get qi(){return this.instance.config}constructor(t){var i;this.hd=!1,this.Qn=!1,this.dd=null,this.instance=t,this.hd=!(null==(i=this.instance.persistence)||!i.props[Gi]),this.rageclicks=new Ki(t.config.rageclick)}initialize(){this.startIfEnabled()}get flushIntervalMilliseconds(){var t=5e3;return x(this.qi.capture_heatmaps)&&this.qi.capture_heatmaps.flush_interval_milliseconds&&(t=this.qi.capture_heatmaps.flush_interval_milliseconds),t}get isEnabled(){return A(this.qi.capture_heatmaps)?A(this.qi.enable_heatmaps)?this.hd:this.qi.enable_heatmaps:!1!==this.qi.capture_heatmaps}startIfEnabled(){if(this.isEnabled){if(this.Qn)return;br.info("starting..."),this.vd(),this.It()}else{var t;clearInterval(null!==(t=this.dd)&&void 0!==t?t:void 0),this.fd(),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({[Gi]:e}),this.hd=e,this.startIfEnabled()}}}getAndClearBuffer(){var t=this.ft;return this.ft=void 0,t}pd(t){mr(t.originalEvent)&&this.ki(t.originalEvent,"deadclick")}It(){this.dd&&clearInterval(this.dd),this.dd="visible"===(null==Kt?void 0:Kt.visibilityState)?setInterval(this.La.bind(this),this.flushIntervalMilliseconds):null}vd(){Vt&&Kt&&(this.gd=this.La.bind(this),ri(Vt,Ce,this.gd),this.md=t=>this.ki(t||(null==Vt?void 0:Vt.event)),ri(Kt,"click",this.md,{capture:!0}),this.yd=t=>this.bd(t||(null==Vt?void 0:Vt.event)),ri(Kt,"mousemove",this.yd,{capture:!0}),this._d=new Ve(this.instance,qe,this.pd.bind(this)),this._d.startIfEnabledOrStop(),this.wd=this.It.bind(this),ri(Kt,Fe,this.wd),this.Qn=!0)}fd(){var t;Vt&&Kt&&(this.gd&&Vt.removeEventListener(Ce,this.gd),this.md&&Kt.removeEventListener("click",this.md,{capture:!0}),this.yd&&Kt.removeEventListener("mousemove",this.yd,{capture:!0}),this.wd&&Kt.removeEventListener(Fe,this.wd),clearTimeout(this.kd),null==(t=this._d)||t.stop(),this.Qn=!1)}Sd(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&&vi(r)&&!di(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:Vt)?void 0:n.getComputedStyle(r).position}catch(t){return!1}if(_(i,s))return!0;r=xi(r)}return!1}(wi(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"),!hi(t.target)&&mr(t)){var s=this.Sd(t,i);null!=(r=this.rageclicks)&&r.isRageClick(t.clientX,t.clientY,(new Date).getTime())&&Ai(wi(t),this.instance.config.rageclick)&&this.Nn(e({},s,{type:"rageclick"})),this.Nn(s)}}bd(t){!hi(t.target)&&mr(t)&&(clearTimeout(this.kd),this.kd=setTimeout((()=>{this.Nn(this.Sd(t,"mousemove"))}),500))}Nn(t){if(Vt){var i=this.qi.disable_capture_url_hashes?H(Vt.location.href):Vt.location.href,e=this.qi.custom_personal_data_properties,r=this.qi.mask_personal_data_properties?[...Je,...e||[]]:[],s=Te(i,r,Ze);this.ft=this.ft||{},this.ft[s]||(this.ft[s]=[]),this.ft[s].push(t)}}La(){this.ft&&!E(this.ft)&&this.instance.capture("$$heatmap",{$heatmap_data:this.getAndClearBuffer()})}},deadClicksAutocapture:Ve,webVitalsAutocapture:class{constructor(t){var i;this.hd=!1,this.Qn=!1,this.ft={navigationKey:void 0,url:void 0,metrics:[],firstMetricTimestamp:void 0},this.xd=()=>{clearTimeout(this.Cd),this.Cd=void 0,0!==this.ft.metrics.length&&(this._instance.capture("$web_vitals",e({$current_url:this.ft.url},this.ft.metrics.reduce(((t,i)=>e({},t,{["$web_vitals_"+i.name+"_event"]:e({},i),["$web_vitals_"+i.name+"_value"]:i.value})),{}))),this.ft={navigationKey:void 0,url:void 0,metrics:[],firstMetricTimestamp:void 0})},this.Td=t=>{var i;if(this.ft=this.ft||{navigationKey:void 0,url:void 0,metrics:[],firstMetricTimestamp:void 0},A(null==t?void 0:t.name)||A(null==t?void 0:t.value))tr.error("Invalid metric received",t);else{var r="string"==typeof t.navigationURL?t.navigationURL:void 0,s=this.Md(r);if(!F(s)){var n=R(t.navigationId)||"string"==typeof t.navigationId?"navigation:"+t.navigationId:"url:"+s;if(!this.Ed||this.Ed>t.value){this.ft.navigationKey!==n&&(this.xd(),this.Cd=setTimeout(this.xd,this.flushToCaptureTimeoutMs)),F(this.ft.navigationKey)&&(this.ft.navigationKey=n,this.ft.url=s),this.ft.firstMetricTimestamp=F(this.ft.firstMetricTimestamp)?Date.now():this.ft.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,x(t.attribution)&&this.attributionMetrics.indexOf(t.name)>-1){var l={};for(var u of sr){var h="url"===u&&"string"==typeof t.attribution[u]?this.Md(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.ft.metrics.push(o),this.ft.metrics.length===this.allowedMetrics.length&&this.xd()}else tr.error("Ignoring metric with value >= "+this.Ed,t)}}},this.Id=()=>{if(!this.Qn){var t,i,r,s,n=!1,a=Ue.__PosthogExtensions__,o=null==a?void 0:a.postHogWebVitalsCallbacksByFlavor,l=(null==o?void 0:o[this.Rd])||("web-vitals"===this.Rd&&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.Td.bind(this),v),this.allowedMetrics.indexOf("CLS")>-1&&i(this.Td.bind(this),v),this.allowedMetrics.indexOf("FCP")>-1&&r(this.Td.bind(this),v),this.allowedMetrics.indexOf("INP")>-1&&s(this.Td.bind(this),d),this.Qn=!0}else tr.error("web vitals callbacks not loaded - not starting")}},this._instance=t,this.hd=!(null==(i=this._instance.persistence)||!i.props[Xi]),this.startIfEnabled()}get Pd(){return this._instance.config.capture_performance}get allowedMetrics(){var t,i,e=x(this.Pd)?null==(t=this.Pd)?void 0:t.web_vitals_allowed_metrics:void 0;return A(e)?(null==(i=this._instance.persistence)?void 0:i.props[ie])||er:e}get flushToCaptureTimeoutMs(){return(x(this.Pd)?this.Pd.web_vitals_delayed_flush_ms:void 0)||5e3}get attributionMetrics(){var t=x(this.Pd)?this.Pd.web_vitals_attribution:void 0;return O(t)?t?er:[]:k(t)?t:rr}get useAttribution(){return this.attributionMetrics.length>0}get useSoftNavs(){var t=x(this.Pd)?this.Pd.__preview_web_vitals_soft_navs:void 0;return null!=t&&t}get Ed(){var t=x(this.Pd)&&R(this.Pd.__web_vitals_max_value)?this.Pd.__web_vitals_max_value:ir;return t>0&&6e4>=t?ir:t}get isEnabled(){var t=null==Jt?void 0:Jt.protocol;if("http:"!==t&&"https:"!==t)return tr.info("Web Vitals are disabled on non-http/https protocols"),!1;var i=x(this.Pd)?this.Pd.web_vitals:O(this.Pd)?this.Pd:void 0;return O(i)?i:this.hd}startIfEnabled(){this.isEnabled&&!this.Qn&&(tr.info("enabled, starting..."),this._s(this.Id))}onRemoteConfig(t){if(t.ok){var i=t.config;if("capturePerformance"in i){var e=x(i.capturePerformance)&&!!i.capturePerformance.web_vitals,r=x(i.capturePerformance)?i.capturePerformance.web_vitals_allowed_metrics:void 0;this._instance.persistence&&(this._instance.persistence.register({[Xi]:e}),this._instance.persistence.register({[ie]:r})),this.hd=e,this.startIfEnabled()}}}get Rd(){return this.useSoftNavs?this.useAttribution?"web-vitals-with-attribution-soft-navs":"web-vitals-soft-navs":this.useAttribution?"web-vitals-with-attribution":"web-vitals"}_s(t){var i=Ue.__PosthogExtensions__,e=this.Rd,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?tr.error("failed to load script",i):t()}))}Md(t){var i=t||(null==Vt?void 0:Vt.location.href);if(i){var e=this._instance.config.disable_capture_url_hashes?H(i):i,r=this._instance.config.custom_personal_data_properties,s=this._instance.config.mask_personal_data_properties?[...Je,...r||[]]:[];return Te(e,s,Ze)}tr.error("Could not determine current URL")}}},ps={exceptionObserver:class{constructor(t){var i;this.Id=()=>{var t;if(Vt&&this.isEnabled&&null!=(t=Ue.__PosthogExtensions__)&&t.errorWrappingFunctions){var i=Ue.__PosthogExtensions__.errorWrappingFunctions.wrapOnError,e=Ue.__PosthogExtensions__.errorWrappingFunctions.wrapUnhandledRejection,r=Ue.__PosthogExtensions__.errorWrappingFunctions.wrapConsoleError;try{!this.Ad&&this.qi.capture_unhandled_errors&&(this.Ad=i(this.captureException.bind(this))),!this.Fd&&this.qi.capture_unhandled_rejections&&(this.Fd=e(this.captureException.bind(this))),!this.Ld&&this.qi.capture_console_errors&&(this.Ld=r(this.captureException.bind(this)))}catch(t){Be.error("failed to start",t),this.Od()}}},this._instance=t,this.Dd=!(null==(i=this._instance.persistence)||!i.props[Zi]),this.oe=new U(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,I:Be})),this.qi=this.$d(),this.startIfEnabledOrStop()}$d(){var t=this._instance.config.capture_exceptions,i={capture_unhandled_errors:!1,capture_unhandled_rejections:!1,capture_console_errors:!1};return x(t)?i=e({},i,t):(F(t)?this.Dd:t)&&(i=e({},i,{capture_unhandled_errors:!0,capture_unhandled_rejections:!0})),i}get isEnabled(){return this.qi.capture_console_errors||this.qi.capture_unhandled_errors||this.qi.capture_unhandled_rejections}startIfEnabledOrStop(){this.isEnabled?(Be.info("enabled"),this.Od(),this._s(this.Id)):this.Od()}_s(t){var i,e;null!=(i=Ue.__PosthogExtensions__)&&i.errorWrappingFunctions?t():null==(e=Ue.__PosthogExtensions__)||null==e.loadExternalDependency||e.loadExternalDependency(this._instance,"exception-autocapture",(i=>{if(i)return Be.error("failed to load script",i);t()}))}Od(){var t,i,e;null==(t=this.Ad)||t.call(this),this.Ad=void 0,null==(i=this.Fd)||i.call(this),this.Fd=void 0,null==(e=this.Ld)||e.call(this),this.Ld=void 0}onRemoteConfig(t){if(t.ok){var i=t.config;"autocaptureExceptions"in i&&(this.Dd=!!i.autocaptureExceptions||!1,this._instance.persistence&&this._instance.persistence.register({[Zi]:this.Dd}),this.qi=this.$d(),this.startIfEnabledOrStop())}}onConfigChange(){this.qi=this.$d()}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.oe.consumeRateLimit(s)?Be.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.Nd=[],this.qd=new ct([new Et,new It,new Ct,new Ft,new Mt,new Ot,new Tt,new $t],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=xt.test(l)?l.replace(xt,"$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||ft});var r}))}(n)}}("web:javascript",yt,St)),this._instance=t,this.Nd=null!==(i=null==(r=this._instance.persistence)?void 0:r.get_property(Qi))&&void 0!==i?i:[],this.jd=zt(this.Bd()),this.Hd=new Ut(this.jd)}onConfigChange(){this.jd=zt(this.Bd()),this.Hd.setConfig(this.jd)}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.Nd=n,this._instance.persistence&&this._instance.persistence.register({[Qi]:this.Nd,[Yi]:a})}}}get Ud(){var t,i=!!this._instance.get_property(Yi),e=this._instance.config.error_tracking.captureExtensionExceptions;return null!==(t=null!=e?e:i)&&void 0!==t&&t}buildProperties(t,i){return this.qd.buildFromUnknown(t,{syntheticException:null==i?void 0:i.syntheticException,mechanism:{handled:null==i?void 0:i.handled}})}addExceptionStep(t,i){if(this.jd.enabled)try{if(!C(t)||0===t.trim().length)return void ts.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)=>Dt.has(r)?(i.push(r),e):(e[r]=t[r],e)),{}),droppedKeys:i}}(this.zd(i)),s=r.sanitizedProperties,n=r.droppedKeys;n.length>0&&ts.warn("Ignoring reserved exception step fields",{droppedKeys:n}),this.Hd.add(e({[jt]:t,[Lt]:(new Date).toISOString()},s))}catch(t){ts.error("Failed to add exception step. Ignoring breadcrumb.",t)}}sendExceptionEvent(t){try{var i=t.$exception_list;if(this.Wd(i)){if(this.Vd(i))return this.Gd("Exception dropped: matched a suppression rule"),void ts.info("Skipping exception capture because a suppression rule matched");if(!this.Ud&&this.Zd(i))return this.Gd("Exception dropped: thrown by a browser extension"),void ts.info("Skipping exception capture because it was thrown by an extension");if(!this.Ud&&this.Qd(i))return this.Gd("Exception dropped: thrown by an injected browser script"),void ts.info("Skipping exception capture because it was thrown by an injected browser script");if(!this._instance.config.error_tracking.__capturePostHogExceptions&&this.Jd(i))return this.Gd("Exception dropped: thrown by the PostHog SDK"),void ts.info("Skipping exception capture because it was thrown by the PostHog SDK")}var e=this.jd.enabled&&A(t.$exception_steps)?this.Kd(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.Hd.clear(),s}catch(t){return ts.error("Failed to capture exception event. Dropping this exception.",t),void this.Hd.clear()}}catch(t){return void ts.error("Failed to process exception event. Ignoring this exception.",t)}var n}Kd(t){try{var i=this.Hd.getAttachable();return 0===i.length?t:e({},t,{$exception_steps:i})}catch(i){return ts.error("Failed to read buffered exception steps. Capturing exception without steps.",i),t}}Gd(t){this.jd.enabled&&this.Hd.add({[jt]:t,[Lt]:(new Date).toISOString()})}zd(t){return x(t)?e({},t):{}}Bd(){var t,i;return null!==(t=null==(i=this._instance.config.error_tracking)?void 0:i.exception_steps)&&void 0!==t?t:{}}Vd(t){if(0===t.length)return!1;try{var i=t.reduce(((t,i)=>{var e=i.type,r=i.value;return C(e)&&e.length>0&&t.$exception_types.push(e),C(r)&&r.length>0&&t.$exception_values.push(r),t}),{$exception_types:[],$exception_values:[]});return this.Nd.some((t=>{var e=t.values.map((t=>{var e=fr[t.operator],r=i[t.key];if(!e||!r)return!1;var s=k(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 ts.warn("Failed to evaluate suppression rules. Capturing the exception.",t),!1}}Zd(t){return t.flatMap((t=>{var i,e;return null!==(i=null==(e=t.stacktrace)?void 0:e.frames)&&void 0!==i?i:[]})).some((t=>{var i=t.filename;return!!i&&is.some((t=>i.startsWith(t)))}))}Qd(t){return t.some((t=>{var i=t.value;return C(i)&&es.some((t=>i.includes(t)))}))}Jd(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}Wd(t){return!A(t)&&k(t)}}},gs=e({productTours:class{get za(){return this._instance.persistence}constructor(t){this.Yd=null,this.Xd=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.za&&this.za.register({[te]:!!i.productTours}),!wr(this._instance))return!this.Yd&&A(null==(e=this.za)?void 0:e.props[me])||yr.info("product tours disabled; stopping and clearing cached tours"),null==(r=this.Yd)||r.stop(),this.Yd=null,void this.clearCache();this.loadIfEnabled()}}}loadIfEnabled(){!this.Yd&&wr(this._instance)&&this._s((()=>this.tv()))}_s(t){var i,e;null!=(i=Ue.__PosthogExtensions__)&&i.generateProductTours?t():null==(e=Ue.__PosthogExtensions__)||null==e.loadExternalDependency||e.loadExternalDependency(this._instance,"product-tours",(i=>{i?yr.error("Could not load product tours script",i):t()}))}tv(){var t;!this.Yd&&null!=(t=Ue.__PosthogExtensions__)&&t.generateProductTours&&(this.Yd=Ue.__PosthogExtensions__.generateProductTours(this._instance,!0))}getProductTours(t,i){if(void 0===i&&(i=!1),!k(this.Xd)||i){var e=this.za;if(e){var r=e.props[me];if(k(r)&&!i)return this.Xd=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(wr(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||yr.warn(s):yr.error(s),void t([],{isLoaded:!1,error:s})}var n=k(i.json.product_tours)?i.json.product_tours:[];this.Xd=n,e&&e.register({[me]:n}),t(n,{isLoaded:!0})}else t([],{isLoaded:!0})}})}else t(this.Xd,{isLoaded:!0})}getActiveProductTours(t){A(this.Yd)?t([],{isLoaded:!1,error:"Product tours not loaded"}):this.Yd.getActiveProductTours(t)}showProductTour(t){var i;null==(i=this.Yd)||i.showTourById(t)}previewTour(t){this.Yd?this.Yd.previewTour(t):this._s((()=>{var i;this.tv(),null==(i=this.Yd)||i.previewTour(t)}))}dismissProductTour(){var t;null==(t=this.Yd)||t.dismissTour("user_clicked_skip")}nextStep(){var t;null==(t=this.Yd)||t.nextStep()}previousStep(){var t;null==(t=this.Yd)||t.previousStep()}clearCache(){var t;this.Xd=null,null==(t=this.za)||t.unregister(me)}resetTour(t){var i;null==(i=this.Yd)||i.resetTour(t)}resetAllTours(){var t;null==(t=this.Yd)||t.resetAllTours()}cancelPendingTour(t){var i;null==(i=this.Yd)||i.cancelPendingTour(t)}}},ds),_s={siteApps:class{constructor(t){this.ev=0,this._instance=t,this.iv=[],this.apps={}}get isEnabled(){return!!this._instance.config.opt_in_site_apps}rv(t,i){if(i){var e=this.globalsForEvent(i);this.iv.push(e),this.iv.length>1e3&&(this.iv=this.iv.slice(10))}}get siteAppLoaders(){var t;return null==(t=Ue._POSTHOG_REMOTE_CONFIG)||null==(t=t[this._instance.config.token])?void 0:t.siteApps}initialize(){if(this.isEnabled){var t=this._instance._addCaptureHook(this.rv.bind(this));this.nv=()=>{t(),this.iv=[],this.nv=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,kr),{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}}sv(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)||(Sr.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)||(Sr.error("prepare_external_dependency_script returned null"),null):t}av(){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==Kt?void 0:Kt.defaultView,u=null==l||null==(t=l.Node)?void 0:t.prototype;if(!l||!u)return()=>{};if(this.ev++,this.ov)return this.lv();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.sv(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.ov=()=>{h.forEach((t=>t())),this.ov=void 0},this.lv()}lv(){var t=!1;return()=>{var i;t||(t=!0,this.ev--,0===this.ev&&(null==(i=this.ov)||i.call(this)))}}uv(t,i){void 0===i&&(i=!0);var e=this.av();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.iv.length&&(Sr.info("Processing "+this.iv.length+" events for site app with id "+t.id),this.iv.forEach((t=>this.uv((()=>null==i.processEvent?void 0:i.processEvent(t))))),i.processedBuffer=!0),Object.values(this.apps).every((t=>t.processedBuffer||t.errored))&&(null==(e=this.nv)||e.call(this))},r=!1,s=s=>{i.errored=!s,i.loaded=!0,Sr.info("Site app with id "+t.id+" "+(s?"loaded":"errored")),r&&e()};try{var n=this.uv((i=>t.init({posthog:this._instance,callback(t){i(),s(t)}})),!1).processEvent;n&&(i.processEvent=n),r=!0}catch(i){Sr.error(xr+t.id,i),s(!1)}if(r&&i.loaded)try{e()}catch(e){Sr.error("Error while processing buffered events PostHog app with config id "+t.id,e),i.errored=!0}}hv(){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)}dv(t){var i=this;if(0!==Object.keys(this.apps).length){var e=this.globalsForEvent(t),r=function(r){try{i.uv((()=>null==r.processEvent?void 0:r.processEvent(e)))}catch(i){Sr.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.hv(),void this._instance.on("eventCaptured",(t=>this.dv(t)))):void Sr.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.');if(null==(e=this.nv)||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;Ue["__$$ph_site_app_"+i]=s._instance,null==(t=Ue.__PosthogExtensions__)||null==t.loadSiteApp||t.loadSiteApp(s._instance,e,(t=>{if(t)return Sr.error(xr+i,t)}))};for(var o of n.siteApps)a()}else Sr.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.')}}}},bs={tracingHeaders:class{constructor(t){this.vv=void 0,this.fv=void 0,this.pv=void 0,this.Id=()=>{var t,i,e=this.gv();e?(F(this.vv)&&(this.vv=null==(t=Ue.__PosthogExtensions__)||null==(t=t.tracingHeadersPatchFns)?void 0:t._patchXHR(e,(()=>this._instance.get_distinct_id()),this._instance.sessionManager)),F(this.fv)&&(this.fv=null==(i=Ue.__PosthogExtensions__)||null==(i=i.tracingHeadersPatchFns)?void 0:i._patchFetch(e,(()=>this._instance.get_distinct_id()),this._instance.sessionManager))):this.Od()},this._instance=t}initialize(){this.startIfEnabledOrStop()}_s(t){var i,e;null!=(i=Ue.__PosthogExtensions__)&&i.tracingHeadersPatchFns?t():null==(e=Ue.__PosthogExtensions__)||null==e.loadExternalDependency||e.loadExternalDependency(this._instance,"tracing-headers",(i=>{if(i)return Ke.error("failed to load script",i);t()}))}mv(){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}gv(){var t=this.mv();return k(t)?(k(this.pv)?this.pv.splice(0,this.pv.length,...t):this.pv=[...t],t.length>0?this.pv:void 0):(k(this.pv)&&this.pv.splice(0),this.pv=t||void 0,this.pv)}Od(){var t,i;null==(t=this.vv)||t.call(this),null==(i=this.fv)||i.call(this),this.vv=void 0,this.fv=void 0}startIfEnabledOrStop(){this.gv()?this._s(this.Id):this.Od()}}},ms=e({surveys:class extends Ir{constructor(t){var i;super(new Hr(t),{get projectToken(){return i.config.token},kv:new Ur(i=t)}),this._instance=t}Nl(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 Xt(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})}))}}},ds),ys={toolbar:class{constructor(t){this.instance=t}yv(t){Ue.ph_toolbar_state=t}bv(){var t;return null!==(t=Ue.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),si(this.instance.config))return!1;if(!Vt||!Kt)return!1;t=null!=t?t:Vt.location,e=null!=e?e:Vt.history;try{if(!i){try{Vt.localStorage.setItem("test","test"),Vt.localStorage.removeItem("test")}catch(t){return!1}i=null==Vt?void 0:Vt.localStorage}var r,s=qr||Ae(t.hash,"__posthog")||Ae(t.hash,"state"),n=s?ei((()=>JSON.parse(atob(decodeURIComponent(s)))))||ei((()=>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(Vr)||"{}")).source="localstorage",delete r.userIntent),!(!r.token||this.instance.config.token!==r.token||(this.loadToolbar(r),0))}catch(t){return!1}}_v(t){var i=Ue.ph_load_toolbar||Ue.ph_load_editor;!A(i)&&S(i)?i(t,this.instance):Br.warn("No toolbar load function found")}loadToolbar(t){var i=!(null==Kt||!Kt.getElementById(ai));if(!Vt||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(Vt.localStorage.setItem(Vr,JSON.stringify(e({},s,{source:void 0}))),2===this.bv())this._v(s);else if(0===this.bv()){var n;this.yv(1),null==(n=Ue.__PosthogExtensions__)||null==n.loadExternalDependency||n.loadExternalDependency(this.instance,"toolbar",(t=>{if(t)return Br.error("[Toolbar] Failed to load",t),void this.yv(0);this.yv(2),this._v(s)})),ri(Vt,"turbolinks:load",(()=>{this.yv(0),this.loadToolbar(s)}))}return!0}wv(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)}}},ws=e({experiments:ns},ds),ks={conversations:class{constructor(t){this.Sv=void 0,this._conversationsManager=null,this.xv=!1,this.Me=null,this.Cv=!1,this._instance=t}initialize(){this.loadIfEnabled()}onRemoteConfig(t){if(!this._instance.config.disable_conversations&&(this.Tv=t.ok,t.ok)){var i=t.config.conversations;A(i)||(O(i)?this.Sv=i:(this.Sv=i.enabled,this.Me=i),this.loadIfEnabled())}}reset(){var t;null==(t=this._conversationsManager)||t.reset(),this._conversationsManager=null,this.Sv=void 0,this.Me=null,this.Tv=void 0,this.Cv=!1}loadIfEnabled(){if(!(this._conversationsManager||this.xv||this._instance.config.disable_conversations||si(this._instance.config)||this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut())){var t=null==Ue?void 0:Ue.__PosthogExtensions__;if(t&&!F(this.Sv)&&this.Sv)if(this.Me&&this.Me.token){this.xv=!0;try{var i=t.initConversations;if(i)return this.Mv(i),void(this.xv=!1);var e=t.loadExternalDependency;if(!e)return void this.Ev(Ee);e(this._instance,"conversations",(i=>{i||!t.initConversations?this.Ev("Could not load conversations script",i):this.Mv(t.initConversations),this.xv=!1}))}catch(t){this.Ev("Error initializing conversations",t),this.xv=!1}}else as.error("Conversations enabled but missing token in remote config.")}}Mv(t){if(this.Me)try{this._conversationsManager=t(this.Me,this._instance),this.Cv=!1,as.info("Conversations loaded successfully")}catch(t){this.Ev("Error completing conversations initialization",t)}else as.error("Cannot complete initialization: remote config is null")}Ev(t,i){as.error(t,i),this._conversationsManager=null,this.xv=!1,this.Cv=!0}show(){this._conversationsManager?this._conversationsManager.show():as.warn("Conversations not loaded yet.")}hide(){this._conversationsManager&&this._conversationsManager.hide()}isAvailable(){return!0===this.Sv&&!T(this._conversationsManager)}getUnavailableReason(){return this.isAvailable()?null:this._instance.config.disable_conversations?"disabled_by_config":si(this._instance.config)?"disabled_for_toolbar":this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut()?"consent_opted_out":!1===this.Tv?"remote_config_failed":F(this.Sv)?this.Tv?"disabled_in_project":"remote_config_pending":this.Sv?A(this.Me)||!this.Me.token?"missing_token":null!=Ue&&Ue.__PosthogExtensions__?this.xv?"initializing":this.Cv?"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):(as.warn(os),null)}))()}getMessages(t,e){var r=this;return i((function*(){return r._conversationsManager?r._conversationsManager.getMessages(t,e):(as.warn(os),null)}))()}markAsRead(t){var e=this;return i((function*(){return e._conversationsManager?e._conversationsManager.markAsRead(t):(as.warn(os),null)}))()}getTickets(t){var e=this;return i((function*(){return e._conversationsManager?e._conversationsManager.getTickets(t):(as.warn(os),null)}))()}requestRestoreLink(t){var e=this;return i((function*(){return e._conversationsManager?e._conversationsManager.requestRestoreLink(t):(as.warn(os),null)}))()}restoreFromToken(t){var e=this;return i((function*(){return e._conversationsManager?e._conversationsManager.restoreFromToken(t):(as.warn(os),null)}))()}restoreFromUrlToken(){var t=this;return i((function*(){return t._conversationsManager?t._conversationsManager.restoreFromUrlToken():(as.warn(os),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()}}},Ss={logs:class{constructor(t){var i,r=this;this.Iv=!1,this.Rv=!1,this.I=Yt("[logs]"),this.Pv=e({},this.I,{error(){for(var t=arguments.length,i=new Array(t),e=0;t>e;e++)i[e]=arguments[e];i.some(vs)||r.I.error(...i)}}),this.ka=[],this.Av=[],this.ph=0,this.Fv=()=>{var t,i;this.ph=0,null==(t=this.Lv)||t.onReconnect(),null==(i=this.Ov)||i.onReconnect()},this._instance=t,this._instance&&null!=(i=this._instance.config.logs)&&i.captureConsoleLogs&&(this.Iv=!0),Vt&&ri(Vt,"online",this.Fv)}Dv(t,i,e,r){var s,n=function(t,i){var e,r,s,n,a,o,l,u=null!==(e=null==t?void 0:t.flushIntervalMs)&&void 0!==e?e:3e3,h=null!==(r=null==t?void 0:t.maxBufferSize)&&void 0!==r?r:100,v=null!=i&&i.consoleCapture?void 0:null!==(s=null==t?void 0:t.maxLogsPerInterval)&&void 0!==s?s:1e3,d=F(v)?Math.max(h,2048):Math.max(h,v),c=null==t?void 0:t.resourceAttributes;return{serviceName:null!==(n=null!==(a=null==c?void 0:c["service.name"])&&void 0!==a?a:null==t?void 0:t.serviceName)&&void 0!==n?n:null==i?void 0:i.serviceNameDefault,serviceVersion:null!==(o=null==c?void 0:c["service.version"])&&void 0!==o?o:null==t?void 0:t.serviceVersion,environment:null!==(l=null==c?void 0:c["deployment.environment"])&&void 0!==l?l:null==t?void 0:t.environment,resourceAttributes:c,beforeSend:null==t?void 0:t.beforeSend,flushIntervalMs:u,maxBufferSize:h,maxQueueSize:d,maxBatchRecordsPerPost:100,rateCapWindowMs:u,maxLogsPerInterval:v,backgroundFlushBudgetMs:0,terminationFlushBudgetMs:0}}(null==(s=this._instance)||null==(s=s.config)?void 0:s.logs,e);return[new st(this.$v(t,i),n,this.Pv,(()=>this.Nv()),(t=>t()),void 0,r),n]}qv(){var t,i=null==(t=this._instance)||null==(t=t.config)?void 0:t.logs;if(!this.Lv||this.jv!==i){var e;null==(e=this.Lv)||e.reset(),this.jv=i;var r=this.Dv((()=>this.ka),(t=>{this.ka=t}));this.Lv=r[0],this.Bv=r[1]}return this.Lv}Hv(){var t,i=null==(t=this._instance)||null==(t=t.config)?void 0:t.logs;if(!this.Ov||this.Uv!==i){var e;null==(e=this.Ov)||e.reset(),this.Uv=i;var r=this.Dv((()=>this.Av),(t=>{this.Av=t}),{serviceNameDefault:"posthog-browser-logs",consoleCapture:!0},ls);this.Ov=r[0],this.zv=r[1]}return this.Ov}initialize(){this.loadIfEnabled()}onRemoteConfig(t){var i;if(t.ok){var e=null==(i=t.config.logs)?void 0:i.captureConsoleLogs;!A(e)&&e&&(this.Iv=!0,this.loadIfEnabled())}}reset(){var t,i;this.ka=[],null==(t=this.Lv)||t.reset(),this.Av=[],null==(i=this.Ov)||i.reset(),this.ph=0}captureLog(t){this.qv().captureLog(t)}vi(t){this.Hv().captureLog(t)}get logger(){return this.Wv||(this.Wv={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.Wv}flushLogs(t){t?this.Vv(t):(this.Lv&&this.Lv.flush().catch((t=>this.Gv(t))),this.Ov&&this.Ov.flush().catch((t=>this.Gv(t))))}Gv(t){vs(t)||this.I.error("PostHog logs flush failed:",t)}loadIfEnabled(){if(this.Iv&&!this.Rv){var t=null==Ue?void 0:Ue.__PosthogExtensions__;if(t){var i=t.loadExternalDependency;i?i(this._instance,"logs",(i=>{var e;i||null==(e=t.logs)||!e.initializeLogs?this.I.error("Could not load logs script",i):(t.logs.initializeLogs(this._instance),this.Rv=!0)})):this.I.error(Ee)}else this.I.error("PostHog Extensions not found.")}}$v(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:[])},Mn:t=>this.Mn(t),getLibraryId:()=>qt.LIB_NAME,getLibraryVersion:()=>qt.LIB_VERSION}}Mn(t){return new Promise((i=>{if(Re(this.ph,3))i({kind:"fatal",error:hs(void 0,"logs endpoint is unreachable, dropping batch")});else{var e=!1,r=t=>{e||(e=!0,clearTimeout(s),i(t))},s=setTimeout((()=>{this.I.warn("Logs request timed out before receiving a response"),r({kind:"retry-later",error:hs(void 0,"logs request timed out")})}),9e4);this._instance._send_request({method:"POST",url:this.Zv(),data:t,compression:"best-available",batchKey:"logs",fireCallbackOnDrop:!0,callback:t=>{var i=t.statusCode;if(this.Qv(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.I.warn("Logs request failed before receiving an HTTP response"),r({kind:"retry-later",error:hs(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)})}}})}}))}Qv(t){(0!==t||this._instance.__loaded)&&(this.ph=Oe(t,this.ph,3,(()=>this.I.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."))))}Vv(t){this.ka.length>0&&this.Jv(t,this.ka,this.Bv,qt.LIB_NAME,(t=>{this.ka=t})),this.Av.length>0&&this.Jv(t,this.Av,this.zv,ls,(t=>{this.Av=t}))}Jv(t,i,e,r,s){if(0!==i.length){var n=i.map((t=>t.record));s([]);var a=rt(n,et(e,qt.LIB_NAME,qt.LIB_VERSION),r,qt.LIB_VERSION);this._instance._send_request({method:"POST",url:this.Zv(),data:a,compression:"best-available",batchKey:"logs",transport:t})}}Zv(){return this._instance.requestRouter.endpointFor("api","/i/v1/logs")+"?token="+encodeURIComponent(this._instance.config.token)}Nv(){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!=Ue&&null!=(t=Ue.location)&&t.href&&(i.currentUrl=this._instance.config.disable_capture_url_hashes?H(Ue.location.href):Ue.location.href),this._instance.featureFlags){var a=this._instance.featureFlags.getFlags();a&&a.length>0&&(i.activeFeatureFlags=a)}return i}}},xs={metrics:class{constructor(t){this.I=Yt("[metrics]"),this._instance=t}initialize(){}qv(){var t,i,e=null==(t=this._instance)||null==(t=t.config)?void 0:t.metrics;return this.Lv&&this.jv===e||(null==(i=this.Lv)||i.reset(),this.jv=e,this.Lv=new lt(this.$v(),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.I)),this.Lv}count(t,i,e){void 0===i&&(i=1),this.qv().count(t,i,e)}gauge(t,i,e){this.qv().gauge(t,i,e)}histogram(t,i,e){this.qv().histogram(t,i,e)}flush(t){if(!this.Lv)return Promise.resolve();if(t){var i=this.Lv.drainWindow();return i&&this.Un(i,t),Promise.resolve()}return this.Lv.flush().catch((t=>this.I.error("PostHog metrics flush failed:",t)))}reset(){var t;null==(t=this.Lv)||t.reset()}$v(){var t=this._instance,i=this;return{get isDisabled(){return!1},get optedOut(){return!t.is_capturing()},Un:t=>i.Un(t),getLibraryId:()=>qt.LIB_NAME,getLibraryVersion:()=>qt.LIB_VERSION}}Un(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.Kv(),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)})}}}))}))}Kv(){return this._instance.requestRouter.endpointFor("api","/i/v1/metrics")+"?token="+encodeURIComponent(this._instance.config.token)}}},Es=e({},ds,cs,fs,ps,gs,_s,ms,bs,ys,ws,ks,Ss,xs),Fs=ds,Cs=cs,Ps=fs,Ts=ps,As=gs,Rs=_s,Os=ms,Ms=bs,$s=ys,Is=ws,js=ks,Ls=Ss,Ds=xs;export{Es as AllExtensions,Ps as AnalyticsExtensions,js as ConversationsExtensions,Ts as ErrorTrackingExtensions,Is as ExperimentsExtensions,Fs as FeatureFlagsExtensions,Ls as LogsExtensions,Ds as MetricsExtensions,As as ProductToursExtensions,Cs as SessionReplayExtensions,Rs as SiteAppsExtensions,Os as SurveysExtensions,$s as ToolbarExtensions,Ms as TracingExtensions};
2
2
  //# sourceMappingURL=extension-bundles.js.map