@tscircuit/runframe 0.0.3058 → 0.0.3059

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.
@@ -1064,8 +1064,8 @@ ${n.map(m=>m.spiceString).join(`
1064
1064
  [zustand devtools middleware] Unsupported __setState action format.
1065
1065
  When using 'store' option in devtools(), the 'state' should have only one key, which is a value of 'store' that was passed in devtools(),
1066
1066
  and value of this only key should be a state object. Example: { "type": "__setState", "state": { "abc123Store": { "foo": "bar" } } }
1067
- `);const D=l.state[C];if(D==null)return;JSON.stringify(t.getState())!==JSON.stringify(D)&&r(D);return}t.dispatchFromDevtools&&typeof t.dispatch=="function"&&t.dispatch(l)});case"DISPATCH":switch(c.payload.type){case"RESET":return r(a),C===void 0?E?.init(t.getState()):E?.init(UlA(Q.name));case"COMMIT":if(C===void 0){E?.init(t.getState());return}return E?.init(UlA(Q.name));case"ROLLBACK":return DHA(c.state,l=>{if(C===void 0){r(l),E?.init(t.getState());return}r(l[C]),E?.init(UlA(Q.name))});case"JUMP_TO_STATE":case"JUMP_TO_ACTION":return DHA(c.state,l=>{if(C===void 0){r(l);return}JSON.stringify(t.getState())!==JSON.stringify(l[C])&&r(l[C])});case"IMPORT_STATE":{const{nextLiftedState:l}=c.payload,D=(h=l.computedStates.slice(-1)[0])==null?void 0:h.state;if(!D)return;r(C===void 0?D:D[C]),E?.send(null,l);return}case"PAUSE_RECORDING":return s=!s}return}}),a},DHA=(g,A)=>{let I;try{I=JSON.parse(g)}catch(e){console.error("[zustand devtools middleware] Could not parse the received json",e)}I!==void 0&&A(I)},Nm=window.TSCIRCUIT_FILESERVER_API_BASE_URL??"/api",Fat=[".tsx",".ts",".jsx",".js",".mjs",".json",".kicad_pcb",".kicad_sym",".kicad_sch",".kicad_prl",".kicad_pro"],dHA=g=>Fat.some(A=>g.endsWith(A)),YAA=Wzg.extend("store");async function iXg(g,A){return(await(await fetch(`${Nm}/files/upsert`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({file_path:g,text_content:A})})).json()).file}async function yHA(g){return(await(await fetch(`${Nm}/files/get?file_path=${encodeURIComponent(g)}`)).json()).file}async function Uat(g){const A=g?`${Nm}/events/list?since=${encodeURIComponent(g)}`:`${Nm}/events/list`;return(await(await fetch(A)).json()).event_list}async function Jat(){const g=await fetch(`${Nm}/files/list`),{file_list:A}=await g.json(),I=new Map;for(const e of A){if(dHA(e.file_path)){const t=await yHA(e.file_path);I.set(e.file_path,t.text_content);continue}I.set(e.file_path,"__STATIC_ASSET__")}return I}const Pat=["manual-edits.json","manual_edits.json"],Uc=CXg()(QXg((g,A)=>({fsMap:new Map,lastEventTime:new Date().toISOString(),isPolling:!1,error:null,circuitJson:null,lastManualEditsChangeSentAt:0,recentEvents:[],simulateScenarioOrder:void 0,currentMainComponentPath:null,recentlySavedFiles:[],loadInitialFiles:async()=>{const I=await Jat();YAA("loaded initial files",{fsMap:I}),g({fsMap:I})},upsertFile:async(I,e)=>{try{const t=await iXg(I,e);g(o=>({fsMap:new Map(o.fsMap).set(t.file_path,t.text_content)}))}catch(t){g({error:t})}},getFile:async I=>{try{const e=await yHA(I);g(t=>({fsMap:new Map(t.fsMap).set(e.file_path,e.text_content)}))}catch(e){g({error:e})}},setCircuitJson:I=>{I!==A().circuitJson&&g({circuitJson:I})},addRecentlySavedFile:I=>{g(e=>{if(Pat.includes(I)||!dHA(I))return e;const t=e.recentlySavedFiles.filter(o=>o!==I);return{recentlySavedFiles:[I,...t].slice(0,10)}})},startPolling:()=>{const I=async()=>{const e=A();if(e.isPolling){try{const t=await Uat(e.lastEventTime);if(t.length>0){const o=t[t.length-1].created_at;YAA("received events",t.map(Q=>Q.event_type)),g(Q=>({recentEvents:[...Q.recentEvents,...t].slice(0,100),lastEventTime:o}));let B=0;const C=new Map(e.fsMap);for(const Q of t)if(Q.event_type==="FILE_UPDATED"){B++;const i=await yHA(Q.file_path);if(Q.file_path==="manual_edits.json"&&Date.now()-e.lastManualEditsChangeSentAt<1e3)continue;dHA(i.file_path)?C.set(i.file_path,i.text_content??""):C.set(i.file_path,"__STATIC_ASSET__"),A().addRecentlySavedFile(Q.file_path)}else Q.event_type==="FILE_DELETED"&&(B++,C.delete(Q.file_path));B>0&&(YAA("updating fsMap, fsUpdateCount:",B),g({fsMap:C}))}}catch(t){g({error:t})}setTimeout(I,1e3)}};g({isPolling:!0}),I()},stopPolling:()=>{g({isPolling:!1})},pushEvent:async I=>{await fetch(`${Nm}/events/create`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(I)})},applyEditEventsAndUpdateManualEditsJson:async I=>{YAA("applyEditEventsAndUpdateManualEditsJson",{editEvents:I});const e=A();if(!e.circuitJson)return;const t=e.fsMap.get("manual-edits.json"),o=t?JSON.parse(t):{},B=KVg({circuitJson:e.circuitJson,editEvents:I,manualEditsFile:o});YAA("updatedManualEditsFileContent",B),g(C=>({lastManualEditsChangeSentAt:Date.now(),fsMap:new Map(C.fsMap).set("manual-edits.json",JSON.stringify(B))})),await iXg("manual-edits.json",JSON.stringify(B,null,2))},setSimulateScenarioOrder:I=>g({simulateScenarioOrder:I}),setCurrentMainComponentPath:I=>g({currentMainComponentPath:I})}),{name:"run-frame-store"})),Kat=Wzg.extend("useEditEventController"),Lat=()=>{const g=Uc(r=>r.applyEditEventsAndUpdateManualEditsJson),[A,I]=z.useState([]),[e,t]=z.useState(!1),o=A.filter(r=>!r._applied),B=A.filter(r=>r._applied),C=e?A:o,Q=z.useCallback(r=>{I(a=>[...a,{...r,_applied:!1}])},[]),i=z.useCallback(r=>{I(a=>a.map(c=>c===r?{...c,_applied:!0}:c))},[]),E=z.useCallback(()=>{I(r=>r.map(a=>({...a,_applied:!0})))},[]),n=z.useCallback(()=>{t(!0),A.length!==0&&(Kat("removing edit events that are applied"),I(r=>r.filter(a=>!a._applied)))},[A]),s=z.useCallback(()=>{t(!1)},[]);return z.useEffect(()=>{if(A.filter(a=>!a._applied).length===0)return;const r=setTimeout(()=>{E(),g(A)},1e3);return()=>clearTimeout(r)},[A]),{unappliedEditEvents:o,appliedEditEvents:B,editEventsForRender:C,pushEditEvent:Q,markEditEventApplied:i,markRenderStarted:n,markRenderComplete:s,markAllEditEventsApplied:E}},wHA=kE("run-frame:useHasReceivedInitialFilesLoaded"),Yat=()=>{const[g,A]=z.useState(!1),I=Uc(t=>t.recentEvents),e=Uc(t=>t.loadInitialFiles);return z.useEffect(()=>{(async()=>{await e();try{const o=await fetch(`${Nm}/events/list?event_type=INITIAL_FILES_UPLOADED`);if(o.ok){const{event_list:B}=await o.json();if(B.length>0){wHA("INITIAL_FILES_UPLOADED found in history. Assuming ready."),A(!0);return}}}catch(o){console.error("Failed to check for event history",o)}wHA("No INITIAL_FILES_UPLOADED in history, waiting for polling.")})()},[e]),z.useEffect(()=>{g||I.some(t=>t.event_type==="INITIAL_FILES_UPLOADED")&&(wHA("INITIAL_FILES_UPLOADED received via polling. Assuming ready."),A(!0))},[I,g]),g};function OT(g,A,I){const[e,t]=z.useState(()=>{if(I!==void 0)return I;try{const o=window.localStorage.getItem(g);return o?JSON.parse(o):A}catch(o){return console.error("Error reading from localStorage:",o),A}});return z.useEffect(()=>{try{window.localStorage.setItem(g,JSON.stringify(e))}catch(o){console.error("Error writing to localStorage:",o)}},[g,e]),[e,t]}var _at=Object.defineProperty,WT=(g,A)=>_at(g,"name",{value:A,configurable:!0}),EXg=!!(typeof window<"u"&&window.document&&window.document.createElement);function So(g,A,{checkForDefaultPrevented:I=!0}={}){return WT(function(t){if(g?.(t),I===!1||!t||!t.defaultPrevented)return A?.(t)},"handleEvent")}WT(So,"composeEventHandlers");function bat(g){if(!EXg)throw new Error("Cannot access window outside of the DOM");return g?.ownerDocument?.defaultView??window}WT(bat,"getOwnerWindow");function uHA(g){if(!EXg)throw new Error("Cannot access document outside of the DOM");return g?.ownerDocument??document}WT(uHA,"getOwnerDocument");function nXg(g,A=!1){const{activeElement:I}=uHA(g);if(!I?.nodeName)return null;if(sXg(I)&&I.contentDocument)return nXg(I.contentDocument.body,A);if(A){const e=I.getAttribute("aria-activedescendant");if(e){const t=uHA(I).getElementById(e);if(t)return t}}return I}WT(nXg,"getActiveElement");function sXg(g){return g.tagName==="IFRAME"}WT(sXg,"isFrame");var Hat=Object.defineProperty,$2=(g,A)=>Hat(g,"name",{value:A,configurable:!0});function vat(g,A){const I=z.createContext(A);I.displayName=g+"Context";const e=$2(o=>{const{children:B,...C}=o,Q=z.useMemo(()=>C,Object.values(C));return T.jsx(I.Provider,{value:Q,children:B})},"Provider");e.displayName=g+"Provider";function t(o,B={}){const{optional:C=!1}=B,Q=z.useContext(I);if(Q)return Q;if(A!==void 0)return A;if(!C)throw new Error(`\`${o}\` must be used within \`${g}\``)}return $2(t,"useContext"),[e,t]}$2(vat,"createContext");function nk(g,A=[]){let I=[];function e(o,B){const C=z.createContext(B);C.displayName=o+"Context";const Q=I.length;I=[...I,B];const i=$2(n=>{const{scope:s,children:r,...a}=n,c=s?.[g]?.[Q]||C,h=z.useMemo(()=>a,Object.values(a));return T.jsx(c.Provider,{value:h,children:r})},"Provider");i.displayName=o+"Provider";function E(n,s,r={}){const{optional:a=!1}=r,c=s?.[g]?.[Q]||C,h=z.useContext(c);if(h)return h;if(B!==void 0)return B;if(!a)throw new Error(`\`${n}\` must be used within \`${o}\``)}return $2(E,"useContext"),[i,E]}$2(e,"createContext");const t=$2(()=>{const o=I.map(B=>z.createContext(B));return $2(function(C){const Q=C?.[g]||o;return z.useMemo(()=>({[`__scope${g}`]:{...C,[g]:Q}}),[C,Q])},"useScope")},"createScope");return t.scopeName=g,[e,aXg(t,...A)]}$2(nk,"createContextScope");function aXg(...g){const A=g[0];if(g.length===1)return A;const I=$2(()=>{const e=g.map(t=>({useScope:t(),scopeName:t.scopeName}));return $2(function(o){const B=e.reduce((C,{useScope:Q,scopeName:i})=>{const n=Q(o)[`__scope${i}`];return{...C,...n}},{});return z.useMemo(()=>({[`__scope${A.scopeName}`]:B}),[B])},"useComposedScopes")},"createScope");return I.scopeName=A.scopeName,I}$2(aXg,"composeContextScopes");var Tat=Object.defineProperty,GHA=(g,A)=>Tat(g,"name",{value:A,configurable:!0});function mHA(g,A){if(typeof g=="function")return g(A);g!=null&&(g.current=A)}GHA(mHA,"setRef");function I5(...g){return A=>{let I=!1;const e=g.map(t=>{const o=mHA(t,A);return!I&&typeof o=="function"&&(I=!0),o});if(I)return()=>{for(let t=0;t<e.length;t++){const o=e[t];typeof o=="function"?o():mHA(g[t],null)}}}}GHA(I5,"composeRefs");function Gi(...g){return z.useCallback(I5(...g),g)}GHA(Gi,"useComposedRefs");var qat=Object.defineProperty,jM=(g,A)=>qat(g,"name",{value:A,configurable:!0});function fR(g){const A=z.forwardRef((I,e)=>{let{children:t,...o}=I,B=null,C=!1;const Q=[];t=yXg(t),z.Children.forEach(t,s=>{if(DXg(s)){C=!0;const r=s;let a="child"in r.props?r.props.child:r.props.children;for(;pHA(a)&&typeof JlA=="function";)a=JlA(a._payload);B=Oat(r,a),Q.push(B?.props?.children)}else Q.push(s)}),B?B=z.cloneElement(B,void 0,Q):!C&&z.Children.count(t)===1&&z.isValidElement(t)&&(B=t);const i=B?lXg(B):void 0,E=Gi(e,i);if(!B){if(t||t===0)throw new Error(C?jat(g):Vat(g));return t}const n=hXg(o,B.props??{});return B.type!==z.Fragment&&(n.ref=e?E:i),z.cloneElement(B,n)});return A.displayName=`${g}.Slot`,A}jM(fR,"createSlot");var Zat=fR("Slot"),rXg=Symbol.for("radix.slottable");function cXg(g){const A=jM(I=>"child"in I?I.children(I.child):I.children,"Slottable");return A.displayName=`${g}.Slottable`,A.__radixId=rXg,A}jM(cXg,"createSlottable");var Oat=jM((g,A)=>"child"in g.props?z.isValidElement(A)?z.cloneElement(A,void 0,g.props.children(A.props.children)):null:z.isValidElement(A)?A:null,"getSlottableElementFromSlottable");function hXg(g,A){const I={...A};for(const e in A){const t=g[e],o=A[e];/^on[A-Z]/.test(e)?t&&o?I[e]=(...C)=>{const Q=o(...C);return t(...C),Q}:t&&(I[e]=t):e==="style"?I[e]={...t,...o}:e==="className"?I[e]=[t,o].filter(Boolean).join(" "):e==="aria-describedby"&&(I[e]=wXg(o,t))}return{...g,...I}}jM(hXg,"mergeProps");function lXg(g){let A=Object.getOwnPropertyDescriptor(g.props,"ref")?.get,I=A&&"isReactWarning"in A&&A.isReactWarning;return I?g.ref:(A=Object.getOwnPropertyDescriptor(g,"ref")?.get,I=A&&"isReactWarning"in A&&A.isReactWarning,I?g.props.ref:g.props.ref||g.ref)}jM(lXg,"getElementRef");function DXg(g){return z.isValidElement(g)&&typeof g.type=="function"&&"__radixId"in g.type&&g.type.__radixId===rXg}jM(DXg,"isSlottable");var Wat=Symbol.for("react.lazy");function pHA(g){return g!=null&&typeof g=="object"&&"$$typeof"in g&&g.$$typeof===Wat&&"_payload"in g&&dXg(g._payload)}jM(pHA,"isLazyComponent");function dXg(g){return typeof g=="object"&&g!==null&&"then"in g}jM(dXg,"isPromiseLike");function yXg(g){let A=g;for(;pHA(A)&&typeof JlA=="function";)A=JlA(A._payload);return A}jM(yXg,"useUnwrappedLazy");function wXg(...g){const A=new Set;for(const I of g)if(typeof I=="string")for(const e of String(I).trim().split(/\s+/))e&&A.add(e);return A.size>0?Array.from(A).join(" "):void 0}jM(wXg,"concatAriaDescribedby");var Vat=jM(g=>`${g} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,"createSlotError"),jat=jM(g=>`${g} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,"createSlottableError"),JlA=_p[" use ".trim().toString()],uh=globalThis?.document?z.useLayoutEffect:()=>{},zat=Object.defineProperty,Rd=(g,A)=>zat(g,"name",{value:A,configurable:!0});function PlA(g){const A=g+"CollectionProvider",[I,e]=nk(A),[t,o]=I(A,{collectionRef:{current:null},itemMap:new Map}),B=Rd(c=>{const{scope:h,children:l}=c,D=z.useRef(null),d=z.useRef(new Map).current;return T.jsx(t,{scope:h,itemMap:d,collectionRef:D,children:l})},"CollectionProvider");B.displayName=A;const C=g+"CollectionSlot",Q=fR(C),i=z.forwardRef((c,h)=>{const{scope:l,children:D}=c,d=o(C,l),y=Gi(h,d.collectionRef);return T.jsx(Q,{ref:y,children:D})});i.displayName=C;const E=g+"CollectionItemSlot",n="data-radix-collection-item",s=fR(E),r=z.forwardRef((c,h)=>{const{scope:l,children:D,...d}=c,y=z.useRef(null),w=Gi(h,y),u=o(E,l);return z.useEffect(()=>(u.itemMap.set(y,{ref:y,...d}),()=>{u.itemMap.delete(y)})),T.jsx(s,{[n]:"",ref:w,children:D})});r.displayName=E;function a(c){const h=o(g+"CollectionConsumer",c);return z.useCallback(()=>{const D=h.collectionRef.current;if(!D)return[];const d=Array.from(D.querySelectorAll(`[${n}]`));return Array.from(h.itemMap.values()).sort((u,G)=>d.indexOf(u.ref.current)-d.indexOf(G.ref.current))},[h.collectionRef,h.itemMap])}return Rd(a,"useCollection"),[{Provider:B,Slot:i,ItemSlot:r},a,e]}Rd(PlA,"createCollection");var uXg=new WeakMap,KlA=(LS=class extends Map{constructor(I){super(I);j0g(this,vl);DCA(this,vl,[...super.keys()]),uXg.set(this,!0)}set(I,e){return uXg.get(this)&&!this.has(I)&&Xn(this,vl).push(I),super.set(I,e),this}insert(I,e,t){const o=this.has(e),B=o?this.size:this.size+1,C=kHA(I),Q=C>=0?Math.min(C,B-1):Math.max(B+C,0);if(o?Xn(this,vl).indexOf(e)===Q:Q===this.size)return this.set(e,t),this;const i=Xn(this,vl).filter(n=>n!==e);i.splice(Q,0,e);const E=i.map(n=>[n,n===e?t:this.get(n)]);this.clear();for(const[n,s]of E)this.set(n,s);return this}with(I,e,t){const o=new LS(this);return o.insert(I,e,t),o}before(I){const e=Xn(this,vl).indexOf(I)-1;if(!(e<0))return this.entryAt(e)}setBefore(I,e,t){const o=Xn(this,vl).indexOf(I);if(o===-1)return this;const B=Xn(this,vl).indexOf(e),C=B!==-1&&B<o?o-1:o;return this.insert(C,e,t)}after(I){let e=Xn(this,vl).indexOf(I);if(e=e===-1||e===this.size-1?-1:e+1,e!==-1)return this.entryAt(e)}setAfter(I,e,t){const o=Xn(this,vl).indexOf(I);if(o===-1)return this;const B=Xn(this,vl).indexOf(e),C=B!==-1&&B<=o?o:o+1;return this.insert(C,e,t)}first(){return this.entryAt(0)}last(){return this.entryAt(-1)}clear(){return DCA(this,vl,[]),super.clear()}delete(I){const e=super.delete(I);return e&&Xn(this,vl).splice(Xn(this,vl).indexOf(I),1),e}deleteAt(I){const e=this.keyAt(I);return e!==void 0?this.delete(e):!1}at(I){const e=LlA(Xn(this,vl),I);if(e!==void 0)return this.get(e)}entryAt(I){const e=LlA(Xn(this,vl),I);if(e!==void 0)return[e,this.get(e)]}indexOf(I){return Xn(this,vl).indexOf(I)}keyAt(I){return LlA(Xn(this,vl),I)}from(I,e){const t=this.indexOf(I);if(t===-1)return;let o=t+e;return o<0&&(o=0),o>=this.size&&(o=this.size-1),this.at(o)}keyFrom(I,e){const t=this.indexOf(I);if(t===-1)return;let o=t+e;return o<0&&(o=0),o>=this.size&&(o=this.size-1),this.keyAt(o)}find(I,e){let t=0;for(const o of this){if(Reflect.apply(I,e,[o,t,this]))return o;t++}}findIndex(I,e){let t=0;for(const o of this){if(Reflect.apply(I,e,[o,t,this]))return t;t++}return-1}filter(I,e){const t=[];let o=0;for(const B of this)Reflect.apply(I,e,[B,o,this])&&t.push(B),o++;return new LS(t)}map(I,e){const t=[];let o=0;for(const B of this)t.push([B[0],Reflect.apply(I,e,[B,o,this])]),o++;return new LS(t)}reduce(...I){const[e,t]=I,o=I.length>1;if(!o&&this.size===0)throw new TypeError("Reduce of empty OrderedDict with no initial value");let B=0,C=t;for(const Q of this)B===0&&!o?C=Q:C=Reflect.apply(e,this,[C,Q,B,this]),B++;return C}reduceRight(...I){const[e,t]=I,o=I.length>1;if(!o&&this.size===0)throw new TypeError("Reduce of empty OrderedDict with no initial value");let B=t;for(let C=this.size-1;C>=0;C--){const Q=this.entryAt(C);C===this.size-1&&!o?B=Q:B=Reflect.apply(e,this,[B,Q,C,this])}return B}sort(I){if(typeof I!="function")throw new TypeError("OrderedDict.sort requires a compare function");const e=[...this.entries()].sort(I);this.clear();for(const[t,o]of e)this.set(t,o);return this}toSorted(I){if(typeof I!="function")throw new TypeError("OrderedDict.toSorted requires a compare function");const e=[...this.entries()].sort(I);return new LS(e)}toReversed(){const I=new LS;for(let e=this.size-1;e>=0;e--){const t=this.keyAt(e),o=this.get(t);I.set(t,o)}return I}toSpliced(...I){const e=[...this.entries()];return e.splice(...I),new LS(e)}slice(I,e){const t=new LS;for(const o of Xn(this,vl).slice(I,e))t.set(o,this.get(o));return t}every(I,e){let t=0;for(const o of this){if(!Reflect.apply(I,e,[o,t,this]))return!1;t++}return!0}some(I,e){let t=0;for(const o of this){if(Reflect.apply(I,e,[o,t,this]))return!0;t++}return!1}},vl=new WeakMap,Rd(LS,"OrderedDict"),LS);function LlA(g,A){if("at"in Array.prototype)return Array.prototype.at.call(g,A);const I=GXg(g,A);return I===-1?void 0:g[I]}Rd(LlA,"at");function GXg(g,A){const I=g.length,e=kHA(A),t=e>=0?e:I+e;return t<0||t>=I?-1:t}Rd(GXg,"toSafeIndex");function kHA(g){return g!==g||g===0?0:Math.trunc(g)}Rd(kHA,"toSafeInteger");function Xat(g){const A=g+"CollectionProvider",[I,e]=nk(A),[t,o]=I(A);t.displayName=g+"CollectionStableContextProvider";const[B,C]=I(A);B.displayName=g+"CollectionStatefulContextProvider";const Q=Rd(({state:u,...G})=>u?T.jsx(E,{...G,state:u}):T.jsx(i,{...G}),"CollectionProvider");Q.displayName=A;const i=Rd(u=>{const G=D();return T.jsx(E,{...u,state:G})},"CollectionInit");i.displayName=g+"CollectionInit";const E=Rd(u=>{const{scope:G,children:m,state:p}=u,k=z.useRef(null),[S,R]=z.useState(null),x=Gi(k,R),[N,U]=p,K=z.useRef(new KlA),Y=z.useCallback(()=>{const b=K.current;return kXg(b)||b.sort(YlA),b},[]);return z.useEffect(()=>{if(!S)return;const b=MXg(()=>{U(q=>{const j=q.toSorted(YlA);return j.some(([Z],gA)=>q.keyAt(gA)!==Z)?j:q})});return b.observe(S,{childList:!0,subtree:!0}),()=>{b.disconnect()}},[S,U]),T.jsx(t,{scope:G,collectionElementRef:x,collectionElementRefObject:k,getCollection:Y,setCollection:U,registryRef:K,children:T.jsx(B,{scope:G,collectionElement:S,collection:N,children:m})})},"CollectionProviderImpl");E.displayName=g+"CollectionProviderImpl";const n=g+"CollectionSlot",s=fR(n),r=z.forwardRef((u,G)=>{const{scope:m,children:p}=u,k=o(n,m),S=Gi(G,k.collectionElementRef);return T.jsx(s,{ref:S,children:p})});r.displayName=n;const a=g+"CollectionItemSlot",c="data-radix-collection-item",h=fR(a),l=z.forwardRef((u,G)=>{const{scope:m,children:p,...k}=u,S=z.useRef(null),R=o(a,m),{setCollection:x,registryRef:N}=R,U=z.useRef(k);mXg(U.current,k)||(U.current=k);const K=U.current,Y=z.useCallback(j=>{const W=N.current;j?W.set(j,{...U.current,element:j}):S.current&&W.delete(S.current)},[N]),b=Gi(G,Y,S);uh(()=>{const j=S.current,W=N.current;j&&W.has(j)&&W.set(j,{...K,element:j})},[K,N]);const q=z.useRef(null);return z.useEffect(()=>{const j=S.current,W=q.current;(W?.element??null)===j&&(!j||W?.itemData===K)||(q.current=j?{element:j,itemData:K}:null,x(Z=>{const gA=new KlA(Z);return W&&W.element!==j&&gA.delete(W.element),j&&gA.set(j,{...K,element:j}),gA.sort(YlA)}))}),z.useEffect(()=>()=>{const j=q.current;q.current=null,j&&x(W=>{if(!W.has(j.element))return W;const Z=new KlA(W);return Z.delete(j.element),Z})},[x]),T.jsx(h,{[c]:"",ref:b,children:p})});l.displayName=a;function D(){return z.useState(new KlA)}Rd(D,"useInitCollection");function d(u){const{collection:G}=C(g+"CollectionConsumer",u);return G}Rd(d,"useCollection");function y(u){const{getCollection:G}=o(g+"CollectionConsumer",u);return G}return Rd(y,"useGetCollection"),[{Provider:Q,Slot:r,ItemSlot:l},{createCollectionScope:e,useCollection:d,useGetCollection:y,useInitCollection:D}]}Rd(Xat,"createCollection");function mXg(g,A){if(g===A)return!0;if(typeof g!="object"||typeof A!="object"||g==null||A==null)return!1;const I=Object.keys(g),e=Object.keys(A);if(I.length!==e.length)return!1;for(const t of I)if(!Object.prototype.hasOwnProperty.call(A,t)||g[t]!==A[t])return!1;return!0}Rd(mXg,"shallowEqual");function pXg(g,A){return!!(A.compareDocumentPosition(g)&Node.DOCUMENT_POSITION_PRECEDING)}Rd(pXg,"isElementPreceding");function kXg(g){let A;for(const I of g.keys()){if(A){const e=A.compareDocumentPosition(I);if(!(e&Node.DOCUMENT_POSITION_DISCONNECTED)&&e&Node.DOCUMENT_POSITION_PRECEDING)return!1}A=I}return!0}Rd(kXg,"isInDocumentOrder");function YlA(g,A){return!g[1].element||!A[1].element?0:pXg(g[1].element,A[1].element)?-1:1}Rd(YlA,"sortByDocumentPosition");function MXg(g){return new MutationObserver(I=>{for(const e of I)if(e.type==="childList"){g();return}})}Rd(MXg,"getChildListObserver");var $at=Object.defineProperty,Art=(g,A)=>$at(g,"name",{value:A,configurable:!0}),grt=_p[" useId ".trim().toString()]||(()=>{}),Irt=0;function Y0(g){const[A,I]=z.useState(grt());return uh(()=>{g||I(e=>e??String(Irt++))},[g]),g||(A?`radix-${A}`:"")}Art(Y0,"useId");var Dx=zfA();const SXg=Lp(Dx);var ert=Object.defineProperty,trt=(g,A)=>ert(g,"name",{value:A,configurable:!0}),ort=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],yQ=ort.reduce((g,A)=>{const I=fR(`Primitive.${A}`),e=z.forwardRef((t,o)=>{const{asChild:B,...C}=t,Q=B?I:A;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),T.jsx(Q,{...C,ref:o})});return e.displayName=`Primitive.${A}`,{...g,[A]:e}},{});function MHA(g,A){g&&Dx.flushSync(()=>g.dispatchEvent(A))}trt(MHA,"dispatchDiscreteCustomEvent");var Brt=Object.defineProperty,Crt=(g,A)=>Brt(g,"name",{value:A,configurable:!0}),fXg=_p[" useInsertionEffect ".trim().toString()];function zM(g){const A=z.useRef(g);return typeof fXg=="function"?fXg(()=>{A.current=g}):uh(()=>{A.current=g}),z.useMemo(()=>((...I)=>A.current?.(...I)),[])}Crt(zM,"useCallbackRef");var Qrt=Object.defineProperty,irt=(g,A)=>Qrt(g,"name",{value:A,configurable:!0}),RXg=_p[" useEffectEvent ".trim().toString()],NXg=_p[" useInsertionEffect ".trim().toString()];function xXg(g){if(typeof RXg=="function")return RXg(g);const A=z.useRef(()=>{throw new Error("Cannot call an event handler while rendering.")});return typeof NXg=="function"?NXg(()=>{A.current=g}):uh(()=>{A.current=g}),z.useMemo(()=>((...I)=>A.current?.(...I)),[])}irt(xXg,"useEffectEvent");var Ert=Object.defineProperty,_AA=(g,A)=>Ert(g,"name",{value:A,configurable:!0}),nrt=_p[" useInsertionEffect ".trim().toString()]||uh;function RR({prop:g,defaultProp:A,onChange:I=_AA(()=>{},"onChange"),caller:e}){const[t,o,B]=FXg({defaultProp:A,onChange:I}),C=g!==void 0,Q=C?g:t,i=z.useCallback(E=>{if(C){const n=UXg(E)?E(g):E;n!==g&&B.current?.(n)}else o(E)},[C,g,o,B]);return[Q,i]}_AA(RR,"useControllableState");function FXg({defaultProp:g,onChange:A}){const[I,e]=z.useState(g),t=z.useRef(I),o=z.useRef(A);return nrt(()=>{o.current=A},[A]),z.useEffect(()=>{t.current!==I&&(o.current?.(I),t.current=I)},[I,t]),[I,e,o]}_AA(FXg,"useUncontrolledState");function UXg(g){return typeof g=="function"}_AA(UXg,"isFunction");var JXg=Symbol("RADIX:SYNC_STATE");function srt(g,A,I,e){const{prop:t,defaultProp:o,onChange:B,caller:C}=A,Q=t!==void 0,i=xXg(B),E=[{...I,state:o}];e&&E.push(e);const[n,s]=z.useReducer((h,l)=>{if(l.type===JXg)return{...h,state:l.state};const D=g(h,l);return Q&&!Object.is(D.state,h.state)&&i(D.state),D},...E),r=n.state,a=z.useRef(r);z.useEffect(()=>{a.current!==r&&(a.current=r,Q||i(r))},[r,a,Q]);const c=z.useMemo(()=>t!==void 0?{...n,state:t}:n,[n,t]);return z.useEffect(()=>{Q&&!Object.is(t,n.state)&&s({type:JXg,state:t})},[t,n.state,Q]),[c,s]}_AA(srt,"useControllableStateReducer");var art=Object.defineProperty,rrt=(g,A)=>art(g,"name",{value:A,configurable:!0}),crt={LTR:"ltr"},hrt=z.createContext(void 0);function bAA(g){const A=z.useContext(hrt);return g||A||crt.LTR}rrt(bAA,"useDirection");var lrt=Object.defineProperty,SHA=(g,A)=>lrt(g,"name",{value:A,configurable:!0}),fHA=!1;function PXg(){const[g,A]=z.useState(fHA);return z.useEffect(()=>{fHA||(fHA=!0,A(!0))},[]),g}SHA(PXg,"useIsHydrated");var KXg=_p[" useSyncExternalStore ".trim().toString()];function LXg(){return()=>{}}SHA(LXg,"subscribe");function YXg(){return KXg(LXg,()=>!0,()=>!1)}SHA(YXg,"useIsHydratedModern");var Drt=typeof KXg=="function"?YXg:PXg,drt=Object.defineProperty,e5=(g,A)=>drt(g,"name",{value:A,configurable:!0}),RHA="rovingFocusGroup.onEntryFocus",yrt={bubbles:!1,cancelable:!0},_lA="RovingFocusGroup",[NHA,_Xg,wrt]=PlA(_lA),[urt,blA]=nk(_lA,[wrt]),bXg={Vertical:"vertical",Horizontal:"horizontal"},Grt={RTL:"rtl"},[mrt,prt]=urt(_lA),HXg=z.forwardRef(e5(function(A,I){return T.jsx(NHA.Provider,{scope:A.__scopeRovingFocusGroup,children:T.jsx(NHA.Slot,{scope:A.__scopeRovingFocusGroup,children:T.jsx(krt,{...A,ref:I})})})},"RovingFocusGroup")),krt=z.forwardRef(e5(function(A,I){const{__scopeRovingFocusGroup:e,orientation:t,loop:o=!1,dir:B,currentTabStopId:C,defaultCurrentTabStopId:Q,onCurrentTabStopIdChange:i,onEntryFocus:E,preventScrollOnEntryFocus:n=!1,...s}=A,r=z.useRef(null),a=Gi(I,r),c=bAA(B),[h,l]=RR({prop:C,defaultProp:Q??null,onChange:i,caller:_lA}),[D,d]=z.useState(!1),y=zM(E),w=_Xg(e),u=z.useRef(!1),[G,m]=z.useState(0);return z.useEffect(()=>{const p=r.current;if(p)return p.addEventListener(RHA,y),()=>p.removeEventListener(RHA,y)},[y]),T.jsx(mrt,{scope:e,orientation:t,dir:c,loop:o,currentTabStopId:h,onItemFocus:z.useCallback(p=>l(p),[l]),onItemShiftTab:z.useCallback(()=>d(!0),[]),onFocusableItemAdd:z.useCallback(()=>m(p=>p+1),[]),onFocusableItemRemove:z.useCallback(()=>m(p=>p-1),[]),children:T.jsx(yQ.div,{tabIndex:D||G===0?-1:0,"data-orientation":t,...s,ref:a,style:{outline:"none",...A.style},onMouseDown:So(A.onMouseDown,()=>{u.current=!0}),onFocus:So(A.onFocus,p=>{const k=!u.current;if(p.target===p.currentTarget&&k&&!D){const S=new CustomEvent(RHA,yrt);if(p.currentTarget.dispatchEvent(S),!S.defaultPrevented){const R=w().filter(Y=>Y.focusable),x=R.find(Y=>Y.active),N=R.find(Y=>Y.id===h),K=[x,N,...R].filter(Boolean).map(Y=>Y.ref.current);xHA(K,n)}}u.current=!1}),onBlur:So(A.onBlur,()=>d(!1))})})},"RovingFocusGroupImpl")),Mrt="RovingFocusGroupItem",vXg=z.forwardRef(e5(function(A,I){const{__scopeRovingFocusGroup:e,focusable:t=!0,active:o=!1,tabStopId:B,children:C,...Q}=A,i=Y0(),E=B||i,n=prt(Mrt,e),s=n.currentTabStopId===E,r=_Xg(e),{onFocusableItemAdd:a,onFocusableItemRemove:c,currentTabStopId:h}=n,l=Drt();return uh(()=>{if(!(!l||!t))return a(),()=>c()},[l,t,a,c]),z.useEffect(()=>{if(!(l||!t))return a(),()=>c()},[l,t,a,c]),T.jsx(NHA.ItemSlot,{scope:e,id:E,focusable:t,active:o,children:T.jsx(yQ.span,{tabIndex:s?0:-1,"data-orientation":n.orientation,...Q,ref:I,onMouseDown:So(A.onMouseDown,D=>{t?n.onItemFocus(E):D.preventDefault()}),onFocus:So(A.onFocus,()=>n.onItemFocus(E)),onKeyDown:So(A.onKeyDown,D=>{if(D.key==="Tab"&&D.shiftKey){n.onItemShiftTab();return}if(D.target!==D.currentTarget)return;const d=qXg(D,n.orientation,n.dir);if(d!==void 0){if(D.metaKey||D.ctrlKey||D.altKey||D.shiftKey)return;D.preventDefault();let w=r().filter(u=>u.focusable).map(u=>u.ref.current);if(d==="last")w.reverse();else if(d==="prev"||d==="next"){d==="prev"&&w.reverse();const u=w.indexOf(D.currentTarget);w=n.loop?ZXg(w,u+1):w.slice(u+1)}setTimeout(()=>xHA(w))}}),children:typeof C=="function"?C({isCurrentTabStop:s,hasTabStop:h!=null}):C})})},"RovingFocusGroupItem")),Srt={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function TXg(g,A){return A!==Grt.RTL?g:g==="ArrowLeft"?"ArrowRight":g==="ArrowRight"?"ArrowLeft":g}e5(TXg,"getDirectionAwareKey");function qXg(g,A,I){const e=TXg(g.key,I);if(!(A===bXg.Vertical&&["ArrowLeft","ArrowRight"].includes(e))&&!(A===bXg.Horizontal&&["ArrowUp","ArrowDown"].includes(e)))return Srt[e]}e5(qXg,"getFocusIntent");function xHA(g,A=!1){const I=document.activeElement;for(const e of g)if(e===I||(e.focus({preventScroll:A}),document.activeElement!==I))return}e5(xHA,"focusFirst");function ZXg(g,A){return g.map((I,e)=>g[(A+e)%g.length])}e5(ZXg,"wrapArray");var frt=Object.defineProperty,QJ=(g,A)=>frt(g,"name",{value:A,configurable:!0});function OXg(g,A){return z.useReducer((I,e)=>A[I][e]??I,g)}QJ(OXg,"useStateMachine");var XM=QJ(g=>{const{present:A,children:I}=g,e=WXg(A),t=typeof I=="function"?I({present:e.isPresent}):z.Children.only(I),o=VXg(e.ref,jXg(t));return typeof I=="function"||e.isPresent?z.cloneElement(t,{ref:o}):null},"Presence");function WXg(g){const[A,I]=z.useState(),e=z.useRef(null),t=z.useRef(g),o=z.useRef("none"),B=z.useRef(void 0),C=g?"mounted":"unmounted",[Q,i]=OXg(C,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return z.useEffect(()=>{Q==="mounted"?(o.current=B.current??VT(e.current),B.current=void 0):o.current="none"},[Q]),uh(()=>{const E=e.current,n=t.current;if(n!==g){const r=o.current,a=VT(E);g?(B.current=a,i("MOUNT")):a==="none"||E?.display==="none"?i("UNMOUNT"):i(n&&r!==a?"ANIMATION_OUT":"UNMOUNT"),t.current=g}},[g,i]),uh(()=>{if(A){let E;const n=A.ownerDocument.defaultView??window,s=QJ(a=>{const h=VT(e.current).includes(CSS.escape(a.animationName));if(a.target===A&&h&&(i("ANIMATION_END"),!t.current)){const l=A.style.animationFillMode;A.style.animationFillMode="forwards",E=n.setTimeout(()=>{A.style.animationFillMode==="forwards"&&(A.style.animationFillMode=l)})}},"handleAnimationEnd"),r=QJ(a=>{a.target===A&&(o.current=VT(e.current))},"handleAnimationStart");return A.addEventListener("animationstart",r),A.addEventListener("animationcancel",s),A.addEventListener("animationend",s),()=>{n.clearTimeout(E),A.removeEventListener("animationstart",r),A.removeEventListener("animationcancel",s),A.removeEventListener("animationend",s)}}else i("ANIMATION_END")},[A,i]),{isPresent:["mounted","unmountSuspended"].includes(Q),ref:z.useCallback(E=>{if(E){const n=getComputedStyle(E);e.current=n,B.current=VT(n)}else e.current=null;I(E)},[])}}QJ(WXg,"usePresence");function FHA(g,A){if(typeof g=="function")return g(A);g!=null&&(g.current=A)}QJ(FHA,"setRef");function VXg(...g){const A=z.useRef(g);return A.current=g,z.useCallback(I=>{const e=A.current;let t=!1;const o=e.map(B=>{const C=FHA(B,I);return!t&&typeof C=="function"&&(t=!0),C});if(t)return()=>{for(let B=0;B<o.length;B++){const C=o[B];typeof C=="function"?C():FHA(e[B],null)}}},[])}QJ(VXg,"useStableComposedRefs");function VT(g){return g?.animationName||"none"}QJ(VT,"getAnimationName");function jXg(g){let A=Object.getOwnPropertyDescriptor(g.props,"ref")?.get,I=A&&"isReactWarning"in A&&A.isReactWarning;return I?g.ref:(A=Object.getOwnPropertyDescriptor(g,"ref")?.get,I=A&&"isReactWarning"in A&&A.isReactWarning,I?g.props.ref:g.props.ref||g.ref)}QJ(jXg,"getElementRef");var Rrt=Object.defineProperty,jT=(g,A)=>Rrt(g,"name",{value:A,configurable:!0}),zXg={Automatic:"automatic",Manual:"manual"},UHA="Tabs",[Nrt,woB]=nk(UHA,[blA]),XXg=blA(),[xrt,JHA]=Nrt(UHA),Frt=z.forwardRef(jT(function(A,I){const{__scopeTabs:e,value:t,onValueChange:o,defaultValue:B,orientation:C="horizontal",dir:Q,activationMode:i=zXg.Automatic,...E}=A,n=bAA(Q),[s,r]=RR({prop:t,onChange:o,defaultProp:B??"",caller:UHA});return T.jsx(xrt,{scope:e,baseId:Y0(),value:s,onValueChange:r,orientation:C,dir:n,activationMode:i,children:T.jsx(yQ.div,{dir:n,"data-orientation":C,...E,ref:I})})},"Tabs")),Urt="TabsList",$Xg=z.forwardRef(jT(function(A,I){const{__scopeTabs:e,loop:t=!0,...o}=A,B=JHA(Urt,e),C=XXg(e);return T.jsx(HXg,{asChild:!0,...C,orientation:B.orientation,dir:B.dir,loop:t,children:T.jsx(yQ.div,{role:"tablist","aria-orientation":B.orientation,...o,ref:I})})},"TabsList")),Jrt="TabsTrigger",A$g=z.forwardRef(jT(function(A,I){const{__scopeTabs:e,value:t,disabled:o=!1,...B}=A,C=JHA(Jrt,e),Q=XXg(e),i=PHA(C.baseId,t),E=KHA(C.baseId,t),n=t===C.value;return T.jsx(vXg,{asChild:!0,...Q,focusable:!o,active:n,children:T.jsx(yQ.button,{type:"button",role:"tab","aria-selected":n,"aria-controls":E,"data-state":n?"active":"inactive","data-disabled":o?"":void 0,disabled:o,id:i,...B,ref:I,onMouseDown:So(A.onMouseDown,s=>{!o&&s.button===0&&s.ctrlKey===!1?(s.currentTarget.focus(),C.onValueChange(t)):s.preventDefault()}),onKeyDown:So(A.onKeyDown,s=>{o||s.target!==s.currentTarget||[" ","Enter"].includes(s.key)&&C.onValueChange(t)}),onFocus:So(A.onFocus,()=>{const s=C.activationMode!==zXg.Manual;!n&&!o&&s&&C.onValueChange(t)})})})},"TabsTrigger")),Prt="TabsContent",g$g=z.forwardRef(jT(function(A,I){const{__scopeTabs:e,value:t,forceMount:o,children:B,...C}=A,Q=JHA(Prt,e),i=PHA(Q.baseId,t),E=KHA(Q.baseId,t),n=t===Q.value,s=z.useRef(n);return z.useEffect(()=>{const r=requestAnimationFrame(()=>s.current=!1);return()=>cancelAnimationFrame(r)},[]),T.jsx(XM,{present:o||n,children:({present:r})=>T.jsx(yQ.div,{"data-state":n?"active":"inactive","data-orientation":Q.orientation,role:"tabpanel","aria-labelledby":i,hidden:!r,id:E,tabIndex:0,...C,ref:I,style:{...A.style,animationDuration:s.current?"0s":void 0},children:r&&B})})},"TabsContent"));function PHA(g,A){return`${g}-trigger-${A}`}jT(PHA,"makeTriggerId");function KHA(g,A){return`${g}-content-${A}`}jT(KHA,"makeContentId");function I$g(g){var A,I,e="";if(typeof g=="string"||typeof g=="number")e+=g;else if(typeof g=="object")if(Array.isArray(g)){var t=g.length;for(A=0;A<t;A++)g[A]&&(I=I$g(g[A]))&&(e&&(e+=" "),e+=I)}else for(I in g)g[I]&&(e&&(e+=" "),e+=I);return e}function NR(){for(var g,A,I=0,e="",t=arguments.length;I<t;I++)(g=arguments[I])&&(A=I$g(g))&&(e&&(e+=" "),e+=A);return e}const LHA="-",Krt=g=>{const A=Yrt(g),{conflictingClassGroups:I,conflictingClassGroupModifiers:e}=g;return{getClassGroupId:B=>{const C=B.split(LHA);return C[0]===""&&C.length!==1&&C.shift(),e$g(C,A)||Lrt(B)},getConflictingClassGroupIds:(B,C)=>{const Q=I[B]||[];return C&&e[B]?[...Q,...e[B]]:Q}}},e$g=(g,A)=>{if(g.length===0)return A.classGroupId;const I=g[0],e=A.nextPart.get(I),t=e?e$g(g.slice(1),e):void 0;if(t)return t;if(A.validators.length===0)return;const o=g.join(LHA);return A.validators.find(({validator:B})=>B(o))?.classGroupId},t$g=/^\[(.+)\]$/,Lrt=g=>{if(t$g.test(g)){const A=t$g.exec(g)[1],I=A?.substring(0,A.indexOf(":"));if(I)return"arbitrary.."+I}},Yrt=g=>{const{theme:A,prefix:I}=g,e={nextPart:new Map,validators:[]};return brt(Object.entries(g.classGroups),I).forEach(([o,B])=>{YHA(B,e,o,A)}),e},YHA=(g,A,I,e)=>{g.forEach(t=>{if(typeof t=="string"){const o=t===""?A:o$g(A,t);o.classGroupId=I;return}if(typeof t=="function"){if(_rt(t)){YHA(t(e),A,I,e);return}A.validators.push({validator:t,classGroupId:I});return}Object.entries(t).forEach(([o,B])=>{YHA(B,o$g(A,o),I,e)})})},o$g=(g,A)=>{let I=g;return A.split(LHA).forEach(e=>{I.nextPart.has(e)||I.nextPart.set(e,{nextPart:new Map,validators:[]}),I=I.nextPart.get(e)}),I},_rt=g=>g.isThemeGetter,brt=(g,A)=>A?g.map(([I,e])=>{const t=e.map(o=>typeof o=="string"?A+o:typeof o=="object"?Object.fromEntries(Object.entries(o).map(([B,C])=>[A+B,C])):o);return[I,t]}):g,Hrt=g=>{if(g<1)return{get:()=>{},set:()=>{}};let A=0,I=new Map,e=new Map;const t=(o,B)=>{I.set(o,B),A++,A>g&&(A=0,e=I,I=new Map)};return{get(o){let B=I.get(o);if(B!==void 0)return B;if((B=e.get(o))!==void 0)return t(o,B),B},set(o,B){I.has(o)?I.set(o,B):t(o,B)}}},B$g="!",vrt=g=>{const{separator:A,experimentalParseClassName:I}=g,e=A.length===1,t=A[0],o=A.length,B=C=>{const Q=[];let i=0,E=0,n;for(let h=0;h<C.length;h++){let l=C[h];if(i===0){if(l===t&&(e||C.slice(h,h+o)===A)){Q.push(C.slice(E,h)),E=h+o;continue}if(l==="/"){n=h;continue}}l==="["?i++:l==="]"&&i--}const s=Q.length===0?C:C.substring(E),r=s.startsWith(B$g),a=r?s.substring(1):s,c=n&&n>E?n-E:void 0;return{modifiers:Q,hasImportantModifier:r,baseClassName:a,maybePostfixModifierPosition:c}};return I?C=>I({className:C,parseClassName:B}):B},Trt=g=>{if(g.length<=1)return g;const A=[];let I=[];return g.forEach(e=>{e[0]==="["?(A.push(...I.sort(),e),I=[]):I.push(e)}),A.push(...I.sort()),A},qrt=g=>({cache:Hrt(g.cacheSize),parseClassName:vrt(g),...Krt(g)}),Zrt=/\s+/,Ort=(g,A)=>{const{parseClassName:I,getClassGroupId:e,getConflictingClassGroupIds:t}=A,o=[],B=g.trim().split(Zrt);let C="";for(let Q=B.length-1;Q>=0;Q-=1){const i=B[Q],{modifiers:E,hasImportantModifier:n,baseClassName:s,maybePostfixModifierPosition:r}=I(i);let a=!!r,c=e(a?s.substring(0,r):s);if(!c){if(!a){C=i+(C.length>0?" "+C:C);continue}if(c=e(s),!c){C=i+(C.length>0?" "+C:C);continue}a=!1}const h=Trt(E).join(":"),l=n?h+B$g:h,D=l+c;if(o.includes(D))continue;o.push(D);const d=t(c,a);for(let y=0;y<d.length;++y){const w=d[y];o.push(l+w)}C=i+(C.length>0?" "+C:C)}return C};function Wrt(){let g=0,A,I,e="";for(;g<arguments.length;)(A=arguments[g++])&&(I=C$g(A))&&(e&&(e+=" "),e+=I);return e}const C$g=g=>{if(typeof g=="string")return g;let A,I="";for(let e=0;e<g.length;e++)g[e]&&(A=C$g(g[e]))&&(I&&(I+=" "),I+=A);return I};function Vrt(g,...A){let I,e,t,o=B;function B(Q){const i=A.reduce((E,n)=>n(E),g());return I=qrt(i),e=I.cache.get,t=I.cache.set,o=C,C(Q)}function C(Q){const i=e(Q);if(i)return i;const E=Ort(Q,I);return t(Q,E),E}return function(){return o(Wrt.apply(null,arguments))}}const Jc=g=>{const A=I=>I[g]||[];return A.isThemeGetter=!0,A},Q$g=/^\[(?:([a-z-]+):)?(.+)\]$/i,jrt=/^\d+\/\d+$/,zrt=new Set(["px","full","screen"]),Xrt=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,$rt=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Act=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,gct=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Ict=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,iJ=g=>zT(g)||zrt.has(g)||jrt.test(g),C3=g=>XT(g,"length",Ect),zT=g=>!!g&&!Number.isNaN(Number(g)),_HA=g=>XT(g,"number",zT),HAA=g=>!!g&&Number.isInteger(Number(g)),ect=g=>g.endsWith("%")&&zT(g.slice(0,-1)),fi=g=>Q$g.test(g),Q3=g=>Xrt.test(g),tct=new Set(["length","size","percentage"]),oct=g=>XT(g,tct,i$g),Bct=g=>XT(g,"position",i$g),Cct=new Set(["image","url"]),Qct=g=>XT(g,Cct,sct),ict=g=>XT(g,"",nct),vAA=()=>!0,XT=(g,A,I)=>{const e=Q$g.exec(g);return e?e[1]?typeof A=="string"?e[1]===A:A.has(e[1]):I(e[2]):!1},Ect=g=>$rt.test(g)&&!Act.test(g),i$g=()=>!1,nct=g=>gct.test(g),sct=g=>Ict.test(g),act=Vrt(()=>{const g=Jc("colors"),A=Jc("spacing"),I=Jc("blur"),e=Jc("brightness"),t=Jc("borderColor"),o=Jc("borderRadius"),B=Jc("borderSpacing"),C=Jc("borderWidth"),Q=Jc("contrast"),i=Jc("grayscale"),E=Jc("hueRotate"),n=Jc("invert"),s=Jc("gap"),r=Jc("gradientColorStops"),a=Jc("gradientColorStopPositions"),c=Jc("inset"),h=Jc("margin"),l=Jc("opacity"),D=Jc("padding"),d=Jc("saturate"),y=Jc("scale"),w=Jc("sepia"),u=Jc("skew"),G=Jc("space"),m=Jc("translate"),p=()=>["auto","contain","none"],k=()=>["auto","hidden","clip","visible","scroll"],S=()=>["auto",fi,A],R=()=>[fi,A],x=()=>["",iJ,C3],N=()=>["auto",zT,fi],U=()=>["bottom","center","left","left-bottom","left-top","right","right-bottom","right-top","top"],K=()=>["solid","dashed","dotted","double","none"],Y=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],b=()=>["start","end","center","between","around","evenly","stretch"],q=()=>["","0",fi],j=()=>["auto","avoid","all","avoid-page","page","left","right","column"],W=()=>[zT,fi];return{cacheSize:500,separator:":",theme:{colors:[vAA],spacing:[iJ,C3],blur:["none","",Q3,fi],brightness:W(),borderColor:[g],borderRadius:["none","","full",Q3,fi],borderSpacing:R(),borderWidth:x(),contrast:W(),grayscale:q(),hueRotate:W(),invert:q(),gap:R(),gradientColorStops:[g],gradientColorStopPositions:[ect,C3],inset:S(),margin:S(),opacity:W(),padding:R(),saturate:W(),scale:W(),sepia:q(),skew:W(),space:R(),translate:R()},classGroups:{aspect:[{aspect:["auto","square","video",fi]}],container:["container"],columns:[{columns:[Q3]}],"break-after":[{"break-after":j()}],"break-before":[{"break-before":j()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:[...U(),fi]}],overflow:[{overflow:k()}],"overflow-x":[{"overflow-x":k()}],"overflow-y":[{"overflow-y":k()}],overscroll:[{overscroll:p()}],"overscroll-x":[{"overscroll-x":p()}],"overscroll-y":[{"overscroll-y":p()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:[c]}],"inset-x":[{"inset-x":[c]}],"inset-y":[{"inset-y":[c]}],start:[{start:[c]}],end:[{end:[c]}],top:[{top:[c]}],right:[{right:[c]}],bottom:[{bottom:[c]}],left:[{left:[c]}],visibility:["visible","invisible","collapse"],z:[{z:["auto",HAA,fi]}],basis:[{basis:S()}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["wrap","wrap-reverse","nowrap"]}],flex:[{flex:["1","auto","initial","none",fi]}],grow:[{grow:q()}],shrink:[{shrink:q()}],order:[{order:["first","last","none",HAA,fi]}],"grid-cols":[{"grid-cols":[vAA]}],"col-start-end":[{col:["auto",{span:["full",HAA,fi]},fi]}],"col-start":[{"col-start":N()}],"col-end":[{"col-end":N()}],"grid-rows":[{"grid-rows":[vAA]}],"row-start-end":[{row:["auto",{span:[HAA,fi]},fi]}],"row-start":[{"row-start":N()}],"row-end":[{"row-end":N()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":["auto","min","max","fr",fi]}],"auto-rows":[{"auto-rows":["auto","min","max","fr",fi]}],gap:[{gap:[s]}],"gap-x":[{"gap-x":[s]}],"gap-y":[{"gap-y":[s]}],"justify-content":[{justify:["normal",...b()]}],"justify-items":[{"justify-items":["start","end","center","stretch"]}],"justify-self":[{"justify-self":["auto","start","end","center","stretch"]}],"align-content":[{content:["normal",...b(),"baseline"]}],"align-items":[{items:["start","end","center","baseline","stretch"]}],"align-self":[{self:["auto","start","end","center","stretch","baseline"]}],"place-content":[{"place-content":[...b(),"baseline"]}],"place-items":[{"place-items":["start","end","center","baseline","stretch"]}],"place-self":[{"place-self":["auto","start","end","center","stretch"]}],p:[{p:[D]}],px:[{px:[D]}],py:[{py:[D]}],ps:[{ps:[D]}],pe:[{pe:[D]}],pt:[{pt:[D]}],pr:[{pr:[D]}],pb:[{pb:[D]}],pl:[{pl:[D]}],m:[{m:[h]}],mx:[{mx:[h]}],my:[{my:[h]}],ms:[{ms:[h]}],me:[{me:[h]}],mt:[{mt:[h]}],mr:[{mr:[h]}],mb:[{mb:[h]}],ml:[{ml:[h]}],"space-x":[{"space-x":[G]}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":[G]}],"space-y-reverse":["space-y-reverse"],w:[{w:["auto","min","max","fit","svw","lvw","dvw",fi,A]}],"min-w":[{"min-w":[fi,A,"min","max","fit"]}],"max-w":[{"max-w":[fi,A,"none","full","min","max","fit","prose",{screen:[Q3]},Q3]}],h:[{h:[fi,A,"auto","min","max","fit","svh","lvh","dvh"]}],"min-h":[{"min-h":[fi,A,"min","max","fit","svh","lvh","dvh"]}],"max-h":[{"max-h":[fi,A,"min","max","fit","svh","lvh","dvh"]}],size:[{size:[fi,A,"auto","min","max","fit"]}],"font-size":[{text:["base",Q3,C3]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:["thin","extralight","light","normal","medium","semibold","bold","extrabold","black",_HA]}],"font-family":[{font:[vAA]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:["tighter","tight","normal","wide","wider","widest",fi]}],"line-clamp":[{"line-clamp":["none",zT,_HA]}],leading:[{leading:["none","tight","snug","normal","relaxed","loose",iJ,fi]}],"list-image":[{"list-image":["none",fi]}],"list-style-type":[{list:["none","disc","decimal",fi]}],"list-style-position":[{list:["inside","outside"]}],"placeholder-color":[{placeholder:[g]}],"placeholder-opacity":[{"placeholder-opacity":[l]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"text-color":[{text:[g]}],"text-opacity":[{"text-opacity":[l]}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...K(),"wavy"]}],"text-decoration-thickness":[{decoration:["auto","from-font",iJ,C3]}],"underline-offset":[{"underline-offset":["auto",iJ,fi]}],"text-decoration-color":[{decoration:[g]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:R()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",fi]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",fi]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-opacity":[{"bg-opacity":[l]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:[...U(),Bct]}],"bg-repeat":[{bg:["no-repeat",{repeat:["","x","y","round","space"]}]}],"bg-size":[{bg:["auto","cover","contain",oct]}],"bg-image":[{bg:["none",{"gradient-to":["t","tr","r","br","b","bl","l","tl"]},Qct]}],"bg-color":[{bg:[g]}],"gradient-from-pos":[{from:[a]}],"gradient-via-pos":[{via:[a]}],"gradient-to-pos":[{to:[a]}],"gradient-from":[{from:[r]}],"gradient-via":[{via:[r]}],"gradient-to":[{to:[r]}],rounded:[{rounded:[o]}],"rounded-s":[{"rounded-s":[o]}],"rounded-e":[{"rounded-e":[o]}],"rounded-t":[{"rounded-t":[o]}],"rounded-r":[{"rounded-r":[o]}],"rounded-b":[{"rounded-b":[o]}],"rounded-l":[{"rounded-l":[o]}],"rounded-ss":[{"rounded-ss":[o]}],"rounded-se":[{"rounded-se":[o]}],"rounded-ee":[{"rounded-ee":[o]}],"rounded-es":[{"rounded-es":[o]}],"rounded-tl":[{"rounded-tl":[o]}],"rounded-tr":[{"rounded-tr":[o]}],"rounded-br":[{"rounded-br":[o]}],"rounded-bl":[{"rounded-bl":[o]}],"border-w":[{border:[C]}],"border-w-x":[{"border-x":[C]}],"border-w-y":[{"border-y":[C]}],"border-w-s":[{"border-s":[C]}],"border-w-e":[{"border-e":[C]}],"border-w-t":[{"border-t":[C]}],"border-w-r":[{"border-r":[C]}],"border-w-b":[{"border-b":[C]}],"border-w-l":[{"border-l":[C]}],"border-opacity":[{"border-opacity":[l]}],"border-style":[{border:[...K(),"hidden"]}],"divide-x":[{"divide-x":[C]}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":[C]}],"divide-y-reverse":["divide-y-reverse"],"divide-opacity":[{"divide-opacity":[l]}],"divide-style":[{divide:K()}],"border-color":[{border:[t]}],"border-color-x":[{"border-x":[t]}],"border-color-y":[{"border-y":[t]}],"border-color-s":[{"border-s":[t]}],"border-color-e":[{"border-e":[t]}],"border-color-t":[{"border-t":[t]}],"border-color-r":[{"border-r":[t]}],"border-color-b":[{"border-b":[t]}],"border-color-l":[{"border-l":[t]}],"divide-color":[{divide:[t]}],"outline-style":[{outline:["",...K()]}],"outline-offset":[{"outline-offset":[iJ,fi]}],"outline-w":[{outline:[iJ,C3]}],"outline-color":[{outline:[g]}],"ring-w":[{ring:x()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:[g]}],"ring-opacity":[{"ring-opacity":[l]}],"ring-offset-w":[{"ring-offset":[iJ,C3]}],"ring-offset-color":[{"ring-offset":[g]}],shadow:[{shadow:["","inner","none",Q3,ict]}],"shadow-color":[{shadow:[vAA]}],opacity:[{opacity:[l]}],"mix-blend":[{"mix-blend":[...Y(),"plus-lighter","plus-darker"]}],"bg-blend":[{"bg-blend":Y()}],filter:[{filter:["","none"]}],blur:[{blur:[I]}],brightness:[{brightness:[e]}],contrast:[{contrast:[Q]}],"drop-shadow":[{"drop-shadow":["","none",Q3,fi]}],grayscale:[{grayscale:[i]}],"hue-rotate":[{"hue-rotate":[E]}],invert:[{invert:[n]}],saturate:[{saturate:[d]}],sepia:[{sepia:[w]}],"backdrop-filter":[{"backdrop-filter":["","none"]}],"backdrop-blur":[{"backdrop-blur":[I]}],"backdrop-brightness":[{"backdrop-brightness":[e]}],"backdrop-contrast":[{"backdrop-contrast":[Q]}],"backdrop-grayscale":[{"backdrop-grayscale":[i]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[E]}],"backdrop-invert":[{"backdrop-invert":[n]}],"backdrop-opacity":[{"backdrop-opacity":[l]}],"backdrop-saturate":[{"backdrop-saturate":[d]}],"backdrop-sepia":[{"backdrop-sepia":[w]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":[B]}],"border-spacing-x":[{"border-spacing-x":[B]}],"border-spacing-y":[{"border-spacing-y":[B]}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["none","all","","colors","opacity","shadow","transform",fi]}],duration:[{duration:W()}],ease:[{ease:["linear","in","out","in-out",fi]}],delay:[{delay:W()}],animate:[{animate:["none","spin","ping","pulse","bounce",fi]}],transform:[{transform:["","gpu","none"]}],scale:[{scale:[y]}],"scale-x":[{"scale-x":[y]}],"scale-y":[{"scale-y":[y]}],rotate:[{rotate:[HAA,fi]}],"translate-x":[{"translate-x":[m]}],"translate-y":[{"translate-y":[m]}],"skew-x":[{"skew-x":[u]}],"skew-y":[{"skew-y":[u]}],"transform-origin":[{origin:["center","top","top-right","right","bottom-right","bottom","bottom-left","left","top-left",fi]}],accent:[{accent:["auto",g]}],appearance:[{appearance:["none","auto"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",fi]}],"caret-color":[{caret:[g]}],"pointer-events":[{"pointer-events":["none","auto"]}],resize:[{resize:["none","y","x",""]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":R()}],"scroll-mx":[{"scroll-mx":R()}],"scroll-my":[{"scroll-my":R()}],"scroll-ms":[{"scroll-ms":R()}],"scroll-me":[{"scroll-me":R()}],"scroll-mt":[{"scroll-mt":R()}],"scroll-mr":[{"scroll-mr":R()}],"scroll-mb":[{"scroll-mb":R()}],"scroll-ml":[{"scroll-ml":R()}],"scroll-p":[{"scroll-p":R()}],"scroll-px":[{"scroll-px":R()}],"scroll-py":[{"scroll-py":R()}],"scroll-ps":[{"scroll-ps":R()}],"scroll-pe":[{"scroll-pe":R()}],"scroll-pt":[{"scroll-pt":R()}],"scroll-pr":[{"scroll-pr":R()}],"scroll-pb":[{"scroll-pb":R()}],"scroll-pl":[{"scroll-pl":R()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",fi]}],fill:[{fill:[g,"none"]}],"stroke-w":[{stroke:[iJ,C3,_HA]}],stroke:[{stroke:[g,"none"]}],sr:["sr-only","not-sr-only"],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]}}});var E$g={env:{},version:""};const Se="u">typeof window?window:void 0,nG="u">typeof globalThis?globalThis:Se,Hw=nG?.navigator,ro=nG?.document,Ca=nG?.location,TAA=nG?.fetch,bHA=nG?.XMLHttpRequest&&"withCredentials"in new nG.XMLHttpRequest?nG.XMLHttpRequest:void 0,n$g=nG?.AbortController,rct=nG?.CompressionStream,xm=Hw?.userAgent,qAA=typeof globalThis<"u"?globalThis:Se;qAA&&typeof self>"u"&&(qAA.self=qAA),qAA&&typeof File>"u"&&(qAA.File=function(){});const UB=Se??{},cct="0.9.9",EJ={DEBUG:!1,LIB_VERSION:cct,LIB_NAME:"browser-common"};var dx=(function(g){return g.AnonymousId="anonymous_id",g.DistinctId="distinct_id",g.Props="props",g.EnablePersonProcessing="enable_person_processing",g.PersonMode="person_mode",g.FeatureFlagDetails="feature_flag_details",g.FeatureFlags="feature_flags",g.FeatureFlagPayloads="feature_flag_payloads",g.BootstrapFeatureFlagDetails="bootstrap_feature_flag_details",g.BootstrapFeatureFlags="bootstrap_feature_flags",g.BootstrapFeatureFlagPayloads="bootstrap_feature_flag_payloads",g.OverrideFeatureFlags="override_feature_flags",g.Queue="queue",g.AiQueue="ai_queue",g.AiCaptureQueue="ai_capture_queue",g.LogsQueue="logs_queue",g.OptedOut="opted_out",g.SessionId="session_id",g.SessionStartTimestamp="session_start_timestamp",g.SessionLastTimestamp="session_timestamp",g.PersonProperties="person_properties",g.GroupProperties="group_properties",g.InstalledAppBuild="installed_app_build",g.InstalledAppVersion="installed_app_version",g.SessionReplay="session_replay",g.PushRegistered="push_registered",g.SessionReplayEventTriggerActivatedSession="session_replay_event_trigger_activated_session",g.SurveyLastSeenDate="survey_last_seen_date",g.SurveysInProgress="surveys_in_progress",g.SurveysSeen="surveys_seen",g.Surveys="surveys",g.RemoteConfig="remote_config",g.FlagsEndpointWasHit="flags_endpoint_was_hit",g.DeviceId="device_id",g})({}),HHA=(function(g){return g.GZipJS="gzip-js",g.Base64="base64",g})({});const hct=["$snapshot","$pageview","$pageleave","$set","survey dismissed","survey sent","survey shown","$identify","$groupidentify","$create_alias","$$client_ingestion_warning","$web_experiment_applied","$feature_enrollment_update","$feature_flag_called"],lct=["token"];function yB(g,A){return g.indexOf(A)!==-1}const $T=function(g){return g.trim()},vHA=function(g){return g.replace(/^\$/,"")};function s$g(g){var A;const I=[];return(A=JSON.stringify(g,function(e,t){if(typeof t=="bigint")return t.toString();if(typeof t!="function"&&typeof t!="symbol"){if(t instanceof Error)return{name:t.name,message:t.message,stack:t.stack};if(t&&typeof t=="object"){for(;I.length>0&&I[I.length-1]!==this;)I.pop();if(I.includes(t))return"[Circular]";I.push(t)}return t}}))!==null&&A!==void 0?A:"null"}const a$g=Object.prototype,THA=a$g.hasOwnProperty,HlA=a$g.toString,cB=Array.isArray||function(g){return HlA.call(g)==="[object Array]"},C0=g=>typeof g=="function",yC=g=>g===Object(g)&&!cB(g),sk=g=>{if(yC(g)){for(const A in g)if(THA.call(g,A))return!1;return!0}return!1},Ye=g=>g===void 0,qC=g=>HlA.call(g)=="[object String]",ZAA=g=>qC(g)&&g.trim().length===0,Pc=g=>g===null,hC=g=>Ye(g)||Pc(g),Gh=g=>HlA.call(g)=="[object Number]"&&g==g,nJ=g=>Gh(g)&&g>0,Fm=g=>HlA.call(g)==="[object Boolean]",Dct=g=>yB(hct,g),dct=g=>yB(lct,g);function r$g(g){return g===null||typeof g!="object"}function vlA(g,A){return{}.toString.call(g)===`[object ${A}]`}function Aq(g){switch({}.toString.call(g)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object DOMError]":case"[object WebAssembly.Exception]":return!0;default:return c$g(g,Error)}}function qHA(g){return"u">typeof Event&&c$g(g,Event)}function c$g(g,A){try{return g instanceof A}catch{return!1}}const yct=[!0,"true",1,"1","yes"],ZHA=g=>yB(yct,g),wct=[!1,"false",0,"0","no"];function h$g(g,A,I,e,t,o,B){try{var C=g[o](B),Q=C.value}catch(i){return void I(i)}C.done?A(Q):Promise.resolve(Q).then(e,t)}function Qa(g){return function(){var A=this,I=arguments;return new Promise(function(e,t){var o=g.apply(A,I);function B(Q){h$g(o,e,t,B,C,"next",Q)}function C(Q){h$g(o,e,t,B,C,"throw",Q)}B(void 0)})}}const uct=["amazonbot","amazonproductbot","app.hypefactors.com","applebot","archive.org_bot","awariobot","backlinksextendedbot","baiduspider","bingbot","bingpreview","chrome-lighthouse","dataforseobot","deepscan","duckduckbot","facebookexternal","facebookcatalog","http://yandex.com/bots","hubspot","ia_archiver","leikibot","linkedinbot","meta-externalagent","mj12bot","msnbot","nessus","petalbot","pinterestbot","prerender","rogerbot","screaming frog","sebot-wa","sitebulb","slackbot","slurp","trendictionbot","turnitin","twitterbot","vercel-screenshot","vercelbot","yahoo! slurp","yandexbot","zoombot","bot.htm","bot.php","(bot;","bot/","crawler","ahrefsbot","ahrefssiteaudit","semrushbot","siteauditbot","splitsignalbot","gptbot","oai-searchbot","chatgpt-user","perplexitybot","better uptime bot","sentryuptimebot","uptimerobot","headlesschrome","cypress","google-hoteladsverifier","adsbot-google","apis-google","duplexweb-google","feedfetcher-google","google favicon","google web preview","google-read-aloud","googlebot","googleother","google-cloudvertexbot","googleweblight","mediapartners-google","storebot-google","google-inspectiontool","bytespider"],TlA=new Map,l$g=function(g,A=[]){if(!g)return!1;const I=(function(B,C){let Q="";for(let i=0;C.length>i;i++){const E=C[i];Q+=E.length+":"+E}return B.length+":"+B+"|"+C.length+":"+Q})(g,A),e=TlA.get(I);if(e!==void 0)return e;const t=g.toLowerCase(),o=uct.concat(A).some(B=>t.indexOf(B.toLowerCase())!==-1);return 256>TlA.size||TlA.clear(),TlA.set(I,o),o};function yx(g,A,I,e,t){return A>I&&(e.warn("min cannot be greater than max."),A=I),Gh(g)?g>I?(e.warn(" cannot be greater than max: "+I+". Using max value instead."),I):A>g?(e.warn(" cannot be less than min: "+A+". Using min value instead."),A):g:(e.warn(" must be a number. using max or fallback. max: "+I+", fallback: "+t),yx(t??I,A,I,e))}var Gct=class{constructor(A){this.C={},this.I=A.I,this.R=yx(A.bucketSize,0,100,A.$),this.A=yx(A.refillRate,0,this.R,A.$),this.O=yx(A.refillInterval,0,864e5,A.$)}F(A,I){const e=Math.floor((I-A.lastAccess)/this.O);e>0&&(A.tokens=Math.min(A.tokens+e*this.A,this.R),A.lastAccess=A.lastAccess+e*this.O)}consumeRateLimit(A){var I;const e=Date.now(),t=String(A);let o=this.C[t];return o?this.F(o,e):(o={tokens:this.R,lastAccess:e},this.C[t]=o),o.tokens===0||(o.tokens--,o.tokens===0&&((I=this.I)===null||I===void 0||I.call(this,A)),o.tokens===0)}stop(){this.C={}}};const gq="Mobile",OAA="Android",qlA="Tablet",D$g="Android Tablet",d$g="iPad",y$g="Apple Watch",ZlA="Safari",OlA="BlackBerry",w$g="Samsung Internet",WlA="Chrome",u$g="Chrome iOS",G$g="Internet Explorer",m$g="Internet Explorer Mobile",p$g="Opera",k$g="Microsoft Edge",VlA="Firefox",M$g="Firefox iOS",jlA="Nintendo",zlA="PlayStation",XlA="Xbox",S$g="Android Mobile",f$g="Mobile Safari",OHA="Windows",R$g="Windows Phone",N$g="Nokia",WHA="Ouya",mct="Generic "+gq.toLowerCase(),x$g="Generic "+qlA.toLowerCase(),VHA="Konqueror",F$g="Oculus Browser",U$g="Vivaldi",J$g="Yandex",P$g="Whale",K$g="DuckDuckGo",L$g="Pale Moon",Y$g="Waterfox",jHA="Brave",_$g="Claude",b$g="Codex",H$g="ChatGPT",v$g="Google Search App",zHA=new RegExp("Version/(\\d+(\\.\\d+)?)"),XHA=new RegExp("(Claude|Codex|ChatGPT)\\/(\\d+(\\.\\d+)?)"),pct=new RegExp(XlA,"i"),kct=new RegExp("PlayStation \\w+","i"),Mct=new RegExp("Nintendo \\w+","i"),$HA=new RegExp("BlackBerry|PlayBook|BB10","i"),Sct={"NT3.51":"NT 3.11","NT4.0":"NT 4.0","5.0":"2000",5.1:"XP",5.2:"XP","6.0":"Vista",6.1:"7",6.2:"8",6.3:"8.1",6.4:"10","10.0":"10"},T$g=function(g,A,I,e){return A=A||"",(function(o){return o?.brave?jHA:null})(I)||(e?.detectGoogleSearchApp&&yB(g,"GSA/")?v$g:yB(g," OPR/")&&yB(g,"Mini")?"Opera Mini":yB(g," OPR/")?p$g:$HA.test(g)?OlA:yB(g,"IEMobile")||yB(g,"WPDesktop")?m$g:yB(g,"OculusBrowser")?F$g:yB(g,"SamsungBrowser")?w$g:yB(g,"Edge")||yB(g,"Edg/")?k$g:yB(g,"Vivaldi/")?U$g:yB(g,"YaBrowser/")?J$g:yB(g,"Whale/")?P$g:yB(g,"DuckDuckGo/")||yB(g,"Ddg/")?K$g:yB(g,"Claude/")?_$g:yB(g,"Codex/")?b$g:yB(g,"ChatGPT/")?H$g:yB(g,"FBIOS")?"Facebook Mobile":yB(g,"UCWEB")||yB(g,"UCBrowser")?"UC Browser":yB(g,"CriOS")?u$g:yB(g,"CrMo")||yB(g,WlA)?WlA:yB(g,OAA)&&yB(g,ZlA)?S$g:yB(g,"FxiOS")?M$g:yB(g.toLowerCase(),VHA.toLowerCase())?VHA:yB(g,"Brave/")?jHA:((o,B)=>B&&yB(B,"Apple")||(function(C){return yB(C,ZlA)&&!yB(C,WlA)&&!yB(C,OAA)})(o))(g,A)?yB(g,gq)?f$g:ZlA:yB(g,"PaleMoon/")?L$g:yB(g,"Waterfox/")?Y$g:yB(g,VlA)?VlA:yB(g,"MSIE")||yB(g,"Trident/")?G$g:yB(g,"Gecko")?VlA:"")},fct={[m$g]:[new RegExp("rv:(\\d+(\\.\\d+)?)")],[k$g]:[new RegExp("Edge?\\/(\\d+(\\.\\d+)?)")],[WlA]:[new RegExp("(Chrome|CrMo)\\/(\\d+(\\.\\d+)?)")],[u$g]:[new RegExp("CriOS\\/(\\d+(\\.\\d+)?)")],"UC Browser":[new RegExp("(UCBrowser|UCWEB)\\/(\\d+(\\.\\d+)?)")],[ZlA]:[zHA],[f$g]:[zHA],[p$g]:[new RegExp("(Opera|OPR)\\/(\\d+(\\.\\d+)?)")],[VlA]:[new RegExp("Firefox\\/(\\d+(\\.\\d+)?)")],[M$g]:[new RegExp("FxiOS\\/(\\d+(\\.\\d+)?)")],[VHA]:[new RegExp("Konqueror[:/]?(\\d+(\\.\\d+)?)","i")],[OlA]:[new RegExp("BlackBerry (\\d+(\\.\\d+)?)"),zHA],[S$g]:[new RegExp("android\\s(\\d+(\\.\\d+)?)","i")],[w$g]:[new RegExp("SamsungBrowser\\/(\\d+(\\.\\d+)?)")],[F$g]:[new RegExp("OculusBrowser\\/(\\d+(\\.\\d+)?)")],[U$g]:[new RegExp("Vivaldi\\/(\\d+(\\.\\d+)?)")],[J$g]:[new RegExp("YaBrowser\\/(\\d+(\\.\\d+)?)")],[P$g]:[new RegExp("Whale\\/(\\d+(\\.\\d+)?)")],[jHA]:[new RegExp("Brave\\/(\\d+(\\.\\d+)?)")],[_$g]:[XHA],[b$g]:[XHA],[H$g]:[XHA],[K$g]:[new RegExp("(DuckDuckGo|Ddg)\\/(\\d+(\\.\\d+)?)")],[L$g]:[new RegExp("PaleMoon\\/(\\d+(\\.\\d+)?)")],[Y$g]:[new RegExp("Waterfox\\/(\\d+(\\.\\d+)?)")],[v$g]:[new RegExp("GSA\\/(\\d+(\\.\\d+)?)")],[G$g]:[new RegExp("(rv:|MSIE )(\\d+(\\.\\d+)?)")],Mozilla:[new RegExp("rv:(\\d+(\\.\\d+)?)")]},Rct=function(g,A,I,e){const t=T$g(g,A,I,e),o=fct[t];if(Ye(o))return null;for(let B=0;o.length>B;B++){const C=g.match(o[B]);if(C)return parseFloat(C[C.length-2])}return null},q$g=[[new RegExp("Xbox; Xbox (.*?)[);]","i"),g=>[XlA,g&&g[1]||""]],[new RegExp(jlA,"i"),[jlA,""]],[new RegExp(zlA,"i"),[zlA,""]],[$HA,[OlA,""]],[new RegExp(OHA,"i"),(g,A)=>{if(/Phone/.test(A)||/WPDesktop/.test(A))return[R$g,""];if(new RegExp(gq).test(A)&&!/IEMobile\b/.test(A))return["Windows Mobile",""];const I=/Windows NT ([0-9.]+)/i.exec(A);if(I&&I[1]){let e=Sct[I[1]]||"";return/arm/i.test(A)&&(e="RT"),[OHA,e]}return[OHA,""]}],[/((iPhone|iPad|iPod).*?OS (\d+)_(\d+)_?(\d+)?|iPhone)/,g=>g&&g[3]?["iOS",[g[3],g[4],g[5]||"0"].join(".")]:["iOS",""]],[/(watch.*\/(\d+\.\d+\.\d+)|watch os,(\d+\.\d+),)/i,g=>{let A="";return g&&g.length>=3&&(A=Ye(g[2])?g[3]:g[2]),["watchOS",A]}],[new RegExp("(Android (\\d+)\\.(\\d+)\\.?(\\d+)?|Android)","i"),g=>g&&g[2]?[OAA,[g[2],g[3],g[4]||"0"].join(".")]:[OAA,""]],[/Mac OS X (\d+)[_.](\d+)[_.]?(\d+)?/i,g=>{const A=["Mac OS X",""];return g&&g[1]&&(A[1]=[g[1],g[2],g[3]||"0"].join(".")),A}],[/Mac/i,["Mac OS X",""]],[/CrOS/,["Chrome OS",""]],[/Linux|debian/i,["Linux",""]]],Z$g=function(g){for(let A=0;q$g.length>A;A++){const[I,e]=q$g[A],t=I.exec(g),o=t&&(C0(e)?e(t,g):e);if(o)return o}return["",""]},O$g=function(g){return Mct.test(g)?jlA:kct.test(g)?zlA:pct.test(g)?XlA:new RegExp(WHA,"i").test(g)?WHA:new RegExp("(Windows Phone|WPDesktop)","i").test(g)?R$g:/iPad/.test(g)?d$g:/iPod/.test(g)?"iPod Touch":/iPhone/.test(g)?"iPhone":/(watch)(?: ?os[,/]|\d,\d\/)[\d.]+/i.test(g)?y$g:$HA.test(g)?OlA:/(kobo)\s(ereader|touch)/i.test(g)?"Kobo":new RegExp(N$g,"i").test(g)?N$g:/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i.test(g)||/(kf[a-z]+)( bui|\)).+silk\//i.test(g)?"Kindle Fire":/(Android|ZTE)/i.test(g)?new RegExp(gq).test(g)&&!/(9138B|TB782B|Nexus [97]|pixel c|HUAWEISHT|BTV|noble nook|smart ultra 6)/i.test(g)||/pixel[\daxl ]{1,6}/i.test(g)&&!/pixel c/i.test(g)||/(huaweimed-al00|tah-|APA|SM-G92|i980|zte|U304AA)/i.test(g)||/lmy47v/i.test(g)&&!/QTAQZ3/i.test(g)?OAA:D$g:new RegExp("(pda|Mobile)","i").test(g)?mct:new RegExp(qlA,"i").test(g)&&!new RegExp("Tablet pc","i").test(g)?x$g:""},Nct=function(g,A){var I;const e=O$g(g);return e===d$g||e===D$g||e==="Kobo"||e==="Kindle Fire"||e===x$g?qlA:e===jlA||e===XlA||e===zlA||e===WHA?"Console":e===y$g?"Wearable":e?gq:A?.userAgentDataPlatform==="Android"&&((I=A?.maxTouchPoints)!==null&&I!==void 0?I:0)>0?600>Math.min((t=A?.screenWidth)!==null&&t!==void 0?t:0,(o=A?.screenHeight)!==null&&o!==void 0?o:0)/((B=A?.devicePixelRatio)!==null&&B!==void 0?B:1)?gq:qlA:"Desktop";var t,o,B},A6A=/\bFBAV\/(\d+(?:\.\d+)*)/i,W$g=[[/\bInstagram(?:[ /](\d+(?:\.\d+)*))?\b/i,"Instagram"],[/\bBarcelona[ /](\d+(?:\.\d+)*)?/i,"Threads"],[/\b(?:MessengerForiOS|(?:FBAN|FB_IAB)\/Orca-Android)\b/i,"Messenger",A6A],[/\bFBAN\/EMA\b/i,"Facebook Lite",A6A],[/\b(?:FBIOS|(?:FBAN|FB_IAB)\/(?:FB4A|FBIOS))\b/i,"Facebook",A6A],[/\bLinkedInApp(?:\]?\/(\d+(?:\.\d+)*))?\b/i,"LinkedIn"],[/\bTwitter(?:Android| for (?:iPhone|iPad|Android))(?:\/(\d+(?:\.\d+)*))?\b/i,"Twitter"],[/\b(?:musical_ly|trill)(?:[_/](\d+\.\d+(?:\.\d+)*))?(?=\b|_)/i,"TikTok",/\bapp_version\/(\d+(?:\.\d+)*)/i],[/\b(?:MicroMessenger|WeChat)\/(\d+(?:\.\d+)*)?/i,"WeChat"],[/\bLine\/(\d+(?:\.\d+)*)?/i,"Line"],[/\bGSA\/(\d+(?:\.\d+)*)?/i,"Google"],[/\[Pinterest\/(?:iOS|Android)\b|\bPinterest(?: for (?:Android(?: Tablet)?|iOS))?\/(\d+(?:\.\d+)*)/i,"Pinterest"],[/\b(?:WA4A|WAiOS)\/(\d+(?:\.\d+)*)?/i,"WhatsApp"],[/\bSnapchat[ /](\d+(?:\.\d+)*)?/i,"Snapchat"],[/\bBing(?:Web|Sapphire)\/(\d+(?:\.\d+)*)?/i,"Bing"],[/\bNAVER\(inapp; search;/i,"Naver",/\bNAVER\(inapp; search;[^;)]*; (\d+(?:\.\d+)*)/i],[/\bKAKAOTALK[ /](\d+\.\d+(?:\.\d+)*)?/i,"KakaoTalk"]],g6A="[Truncated]",WAA="[Unserializable]";function Iq(g){let A="";for(let I=0;g.length>I;I++){const e=g.charCodeAt(I);if(55296>e||e>56319)A+=56320>e||e>57343?g[I]:"�";else{const t=g.charCodeAt(I+1);56320>t||t>57343?A+="�":(A+=g[I]+g[I+1],I++)}}return A}function V$g(g,A){if(!A)return g;let I=[];try{I=Object.keys(A)}catch{I=[]}for(const e of I){let t;try{t=A[e]}catch{t=WAA}Object.defineProperty(g,e,{value:t,enumerable:!0,writable:!0,configurable:!0})}return g}const $lA=3e5;var j$g=class{record(A){if(A.kind==="too-large")return;if(A.kind!=="retry-later")return void this.reset();if(!A.retryAfterMs)return;const I=this.isOpen(),e=Date.now(),t=Math.min(A.retryAfterMs,$lA);if(!I)return this.ts=e,void(this.es=e+t);this.es=Math.max(this.es,Math.min(e+t,this.ts+$lA))}remainingMs(){const A=Date.now();if(this.ts-5e3>A)return this.reset(),0;const I=Math.min($lA,Math.max(0,this.es-A));return I===0&&this.reset(),I}isOpen(){return this.remainingMs()>0}reset(){this.es=0,this.ts=0}constructor(){this.es=0,this.ts=0}};const xct=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function z$g(g,A){return typeof(I=g)=="string"&&xct.test(I)?g:A();var I}function X$g(g,A){const I=new Error(A);try{Object.defineProperty(I,"name",{value:g,writable:!0,enumerable:!0,configurable:!0})}catch{}return I}function i3(g){return g&&g.split("#")[0]}function $$g(g){try{return g()}catch{return}}function AAI(g,A){const I=setTimeout(g,A);return I!=null&&I.unref&&I?.unref(),I}function gAI(g,A,I){return IAI.apply(this,arguments)}function IAI(){return(IAI=Qa(function*(g,A,I){let e;try{return yield Promise.race([g,new Promise((t,o)=>{e=AAI(()=>{try{I?.(),t()}catch(B){o(B)}},A)})])}finally{clearTimeout(e)}})).apply(this,arguments)}function VAA(g){return VAA=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(A){return typeof A}:function(A){return A&&typeof Symbol=="function"&&A.constructor===Symbol&&A!==Symbol.prototype?"symbol":typeof A},VAA(g)}function Fct(g,A,I){return(A=(function(e){var t=(function(o){if(VAA(o)!="object"||!o)return o;var B=o[Symbol.toPrimitive];if(B!==void 0){var C=B.call(o,"string");if(VAA(C)!="object")return C;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(o)})(e);return VAA(t)=="symbol"?t:t+""})(A))in g?Object.defineProperty(g,A,{value:I,enumerable:!0,configurable:!0,writable:!0}):g[A]=I,g}function eAI(g,A){var I=Object.keys(g);if(Object.getOwnPropertySymbols){var e=Object.getOwnPropertySymbols(g);A&&(e=e.filter(function(t){return Object.getOwnPropertyDescriptor(g,t).enumerable})),I.push.apply(I,e)}return I}function QI(g){for(var A=1;arguments.length>A;A++){var I=arguments[A]!=null?arguments[A]:{};A%2?eAI(Object(I),!0).forEach(function(e){Fct(g,e,I[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(g,Object.getOwnPropertyDescriptors(I)):eAI(Object(I)).forEach(function(e){Object.defineProperty(g,e,Object.getOwnPropertyDescriptor(I,e))})}return g}let jAA,tAI,oAI,eq;function Uct(g){var A;const I=globalThis._posthogChunkIds,e=globalThis._debugIds;if(!I&&!e)return;const t=I?Object.keys(I):[],o=e?Object.keys(e):[];if(eq&&BAI(I,t,tAI)&&BAI(e,o,oAI))return eq;tAI=I?QI({},I):void 0,oAI=e?QI({},e):void 0,eq={},(A=jAA)!==null&&A!==void 0||(jAA={});const B=(C,Q)=>{for(const E of C){const n=Q[E];if(!n)continue;const s=jAA?.[E];if(s){eq[s]=n;continue}const r=g(E);for(let a=r.length-1;a>=0;a--){var i;const c=(i=r[a])===null||i===void 0?void 0:i.filename;if(c){eq[c]=n,jAA[E]=c;break}}}};return e&&B(o,e),I&&B(t,I),eq}function BAI(g,A,I){return g&&I?A.length===Object.keys(I).length&&A.every(e=>g[e]===I[e]):g===I}var Jct=class{constructor(A,I,e=[]){this.coercers=A,this.stackParser=I,this.modifiers=e}buildFromUnknown(A,I={}){const e=I&&I.mechanism||{handled:!0,type:"generic"},t=this.buildCoercingContext(e,I,0).apply(A),o=this.buildParsingContext(I),B=this.parseStacktrace(t,o);return{$exception_list:this.convertToExceptionList(B,e),$exception_level:"error"}}modifyFrames(A){var I=this;return Qa(function*(){for(const e of A)e.stacktrace&&e.stacktrace.frames&&cB(e.stacktrace.frames)&&(e.stacktrace.frames=yield I.applyModifiers(e.stacktrace.frames));return A})()}coerceFallback(A){var I;return{type:"Error",value:"Unknown error",stack:(I=A.syntheticException)===null||I===void 0?void 0:I.stack,synthetic:!0}}parseStacktrace(A,I){var e;let t,o;if(A.cause!=null&&(t=this.parseStacktrace(A.cause,I)),A.stack!=""&&A.stack!=null)try{o=this.applyChunkIds(this.stackParser(A.stack,A.synthetic?I.skipFirstLines:0),I.chunkIdMap)}catch{}return QI(QI({},A),{},{cause:t,stack:o,errors:(e=A.errors)===null||e===void 0?void 0:e.map(B=>this.parseStacktrace(B,I))})}applyChunkIds(A,I){return A.map(e=>(e.filename&&I&&(e.chunk_id=I[e.filename]),e))}applyCoercers(A,I){for(const e of this.coercers)if(e.match(A))return e.coerce(A,I);return this.coerceFallback(I)}applyModifiers(A){var I=this;return Qa(function*(){let e=A;for(const t of I.modifiers)e=yield t(e);return e})()}convertToExceptionList(A,I){const e=[],t=(o,B,C)=>{var Q;const i=e.length,E=B===void 0?QI(QI({type:typeof I.type=="string"&&I.type.length>0?I.type:"generic"},typeof I.handled=="boolean"?{handled:I.handled}:I.handled===void 0?{handled:!0}:{}),{},{synthetic:typeof I.synthetic=="boolean"?I.synthetic:o.synthetic,exception_id:i}):{type:"chained",source:C,synthetic:o.synthetic,exception_id:i,parent_id:B},n={type:o.type,value:o.value,mechanism:E};o.stack&&(n.stacktrace={type:"raw",frames:o.stack}),e.push(n),o.cause&&t(o.cause,i,"cause");for(const s of(Q=o.errors)!==null&&Q!==void 0?Q:[])t(s,i,"member")};return t(A),e}buildParsingContext(A){var I;return{chunkIdMap:Uct(this.stackParser),skipFirstLines:(I=A.skipFirstLines)!==null&&I!==void 0?I:1}}getAggregateErrors(A){try{if(Aq(A)){let e=Object.getPrototypeOf(A);for(let t=0;e&&100>t;t++){var I;const o=(I=Object.getOwnPropertyDescriptor(e,"constructor"))===null||I===void 0?void 0:I.value;if(typeof o=="function"&&o.name==="AggregateError"){const B=A.errors;return cB(B)?B:void 0}e=Object.getPrototypeOf(e)}}}catch{}}buildCoercingContext(A,I,e=0){let t=0,o=0,B=!1;const C=new Set,Q=[],i={},E=(r,a,c=0)=>{const h=n(a,c),l=h.apply;if(h.apply=G=>{Q.push(r);try{return l(G)}finally{Q.pop()}},c>4||c>0&&Q.indexOf(r)!==-1)return this.coerceFallback(h);const D=typeof r=="object"&&r!==null||typeof r=="function";if(c===0&&t>=50||D&&C.has(r))return;D&&C.add(r),c===0&&t++;const d=this.getAggregateErrors(r);let y,w;B||(B=!!d);try{if(y=this.applyCoercers(r,h),!y)throw i}catch(G){if(G===i)return void(c===0&&t--);if(!B)throw G;y=this.coerceFallback(h)}if(!d||t>=50)return y;try{w=d.length}catch{return y}if(!Number.isInteger(w)||0>w||w>4294967295)return y;const u=[];for(let G=0;50>t&&1e3>o&&w>G;G++){let m;o++;try{m=h.next(d[G])}catch{t++,m=this.coerceFallback(n(a+1))}m&&u.push(m)}return QI(QI({},y),{},{errors:u})},n=(r,a=0)=>QI(QI({},I),{},{syntheticException:r==0?I.syntheticException:void 0,mechanism:r==0?A:{},apply(c){const h=E(c,r,a+1);if(!h)throw i;return h},next:c=>E(c,r+1)}),s=n(e);return QI(QI({},s),{},{apply:r=>{var a;return(a=E(r,e))!==null&&a!==void 0?a:this.coerceFallback(s)}})}};const Pct=/^([a-z][a-z0-9.+-]+):/i,Kct=["http","https","file","blob","app","capacitor","ionic","webpack","webpack-internal","ng"];function Lct(g){if(!g||g==="<anonymous>")return!1;const A=Pct.exec(g);return!A||Kct.includes(A[1].toLowerCase())}function I6A(g,A,I,e,t){const o={platform:g,filename:A,function:I==="<anonymous>"?"?":I,in_app:Lct(A)};return Ye(e)||(o.lineno=e),Ye(t)||(o.colno=t),o}const CAI=(g,A)=>{const I=g.indexOf("safari-extension")!==-1,e=g.indexOf("safari-web-extension")!==-1;return I||e?[g.indexOf("@")!==-1?g.split("@")[0]:"?",I?`safari-extension:${A}`:`safari-web-extension:${A}`]:[g,A]},Yct=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,_ct=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,bct=/\((\S*)(?::(\d+))(?::(\d+))\)/,Hct=(g,A)=>{const I=Yct.exec(g);if(I){const[,t,o,B]=I;return I6A(A,t,"?",+o,+B)}const e=_ct.exec(g);if(e){if(e[2]&&e[2].indexOf("eval")===0){const B=bct.exec(e[2]);B&&(e[2]=B[1],e[3]=B[2],e[4]=B[3])}const[t,o]=CAI(e[1]||"?",e[2]);return I6A(A,o,t,e[3]?+e[3]:void 0,e[4]?+e[4]:void 0)}},vct=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,Tct=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,qct=(g,A)=>{const I=vct.exec(g);if(I){if(I[3]&&I[3].indexOf(" > eval")>-1){const o=Tct.exec(I[3]);o&&(I[1]=I[1]||"eval",I[3]=o[1],I[4]=o[2],I[5]="")}let e=I[3],t=I[1]||"?";return[t,e]=CAI(t,e),I6A(A,e,t,I[4]?+I[4]:void 0,I[5]?+I[5]:void 0)}},QAI=/\(error: (.*)\)/;function e6A(g,A){return g.filename===A.filename&&g.function===A.function&&g.module===A.module&&g.lineno===A.lineno&&g.colno===A.colno}function Zct(g){for(let A=1;10>=A;A++){const I=g.length-2*A;if(0>I)break;let e=!0;for(let t=0;A>t;t++)if(!e6A(g[I+t],g[I+A+t])){e=!1;break}if(e){for(let t=0;A>t;t++)g[I+t]=g[I+A+t];return g.length=I+A,{start:I,length:A}}}}function Oct(g,A){const I=A.start+A.length,e=EAI(g,A);e&&g.splice(I+e===g.length?I:A.start,e)}function iAI(g,A){let I=A.start;for(;I>0&&e6A(g[I-1],g[I-1+A.length]);)I--;return A.start-I}function EAI(g,A){const I=A.start+A.length;let e=I;for(;g.length>e&&e6A(g[e],g[e-A.length]);)e++;return e-I}function Wct(g,A){const I=A[0];let e=g.length-(I?iAI(g,I):0);for(const t of A)e-=EAI(g,t);return e}function Vct(g,A,I){for(let e=0;g.length>e;e++){const t=g[(A+e)%g.length],o=g[(I+e)%g.length];if(t!==o)return o>t}return!1}var jct=class{match(A){return this.isDOMException(A)||this.isDOMError(A)}coerce(A,I){const e=qC(A.stack);return{type:this.getType(A),value:this.getValue(A),stack:e?A.stack:void 0,cause:A.cause?I.next(A.cause):void 0,synthetic:!1}}getType(A){return this.isDOMError(A)?"DOMError":"DOMException"}getValue(A){const I=A.name||(this.isDOMError(A)?"DOMError":"DOMException");return A.message?`${I}: ${A.message}`:I}isDOMException(A){return vlA(A,"DOMException")}isDOMError(A){return vlA(A,"DOMError")}},zct=class{match(A){return Aq(A)}coerce(A,I){var e;const t=this.getStack(A),o=t===void 0?(e=I.syntheticException)===null||e===void 0?void 0:e.stack:void 0,B=!!o;return{type:this.getType(A),value:this.getMessage(A,I),stack:t??o,cause:A.cause?I.next(A.cause):void 0,synthetic:B}}getType(A){return A.name||A.constructor.name}getMessage(A,I){const e=A.message;return String(e.error&&typeof e.error.message=="string"?e.error.message:e)}getStack(A){try{const I=A.stacktrace;if(typeof I=="string"&&I.length>0)return I;const e=A.stack;return typeof e=="string"&&e.length>0?e:void 0}catch{return}}},Xct=class{match(A){return!!vlA(A,"ErrorEvent")&&(A.error!=null||this.hr(A))}coerce(A,I){var e;if(A.error!=null)return I.apply(A.error);const t=I.apply(A.message);return QI(QI({},t),{},{stack:(e=this.vr(A))!==null&&e!==void 0?e:t.stack,synthetic:!0})}hr(A){return qC(A.message)&&A.message.length>0}vr(A){var I,e;const t=A,o=(I=t.lineno)!==null&&I!==void 0?I:0,B=(e=t.colno)!==null&&e!==void 0?e:0;if(qC(t.filename)&&t.filename.length!==0&&o!==0)return`Error
1068
- at ${t.filename}:${o}:${B}`}};const $ct=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i;var Aht=class{match(A){return typeof A=="string"}coerce(A,I){var e;const[t,o]=this.getInfos(A);return{type:t??"Error",value:o??A,stack:(e=I.syntheticException)===null||e===void 0?void 0:e.stack,synthetic:!0}}getInfos(A){let I="Error",e=A;const t=A.match($ct);return t&&(I=t[1],e=t[2]),[I,e]}};const ght=["fatal","error","warning","log","info","debug"];function nAI(g,A=40){const I=Object.keys(g);if(I.sort(),!I.length)return"[object has no keys]";for(let e=I.length;e>0;e--){const t=I.slice(0,e).join(", ");if(A>=t.length)return e===I.length?t:t.length>A?`${t.slice(0,A)}...`:t}return""}var Iht=class{match(A){return typeof A=="object"&&A!==null}coerce(A,I){var e,t;const o=this.getErrorPropertyFromObject(A);return o?I.apply(o):{type:this.getType(A),value:this.getValue(A),stack:(e=this.getStack(A))!==null&&e!==void 0?e:(t=I.syntheticException)===null||t===void 0?void 0:t.stack,level:this.isSeverityLevel(A.level)?A.level:"error",synthetic:!0}}getType(A){if(qHA(A))return A.constructor.name;const I="name"in A?A.name:void 0;return qC(I)&&!ZAA(I)?I:"Error"}getValue(A){if("name"in A&&typeof A.name=="string"){let e=`'${A.name}' captured as exception`;return"message"in A&&typeof A.message=="string"&&(e+=` with message: '${A.message}'`),e}if("message"in A&&typeof A.message=="string")return A.message;const I=this.getObjectClassName(A);return`${I&&I!=="Object"?`'${I}'`:"Object"} captured as exception with keys: ${nAI(A)}`}isSeverityLevel(A){return qC(A)&&!ZAA(A)&&ght.indexOf(A)>=0}getStack(A){try{return qC(A.stacktrace)&&A.stacktrace.length>0?A.stacktrace:qC(A.stack)&&A.stack.length>0?A.stack:void 0}catch{return}}getErrorPropertyFromObject(A){for(const I in A)if({}.hasOwnProperty.call(A,I)){const e=A[I];if(Aq(e))return e}}getObjectClassName(A){try{const I=Object.getPrototypeOf(A);return I?I.constructor.name:void 0}catch{return}}},eht=class{match(A){return qHA(A)}coerce(A,I){var e;const t=A.constructor.name;return{type:t,value:`${t} captured as exception with keys: ${nAI(A)}`,stack:(e=I.syntheticException)===null||e===void 0?void 0:e.stack,synthetic:!0}}},tht=class{match(A){return r$g(A)}coerce(A,I){var e;return{type:"Error",value:`Primitive value captured as exception: ${String(A)}`,stack:(e=I.syntheticException)===null||e===void 0?void 0:e.stack,synthetic:!0}}},oht=class{match(A){return vlA(A,"PromiseRejectionEvent")||this.isCustomEventWrappingRejection(A)}isCustomEventWrappingRejection(A){if(!qHA(A))return!1;try{const I=A.detail;return I!=null&&typeof I=="object"&&"reason"in I}catch{return!1}}coerce(A,I){var e;const t=this.getUnhandledRejectionReason(A);return r$g(t)?{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(t)}`,stack:(e=I.syntheticException)===null||e===void 0?void 0:e.stack,synthetic:!0}:I.apply(t)}getUnhandledRejectionReason(A){try{if("reason"in A)return A.reason;if("detail"in A&&A.detail!=null&&typeof A.detail=="object"&&"reason"in A.detail)return A.detail.reason}catch{}return A}};const ADA="$message",gDA="$timestamp",Bht=new Set([ADA,gDA]),t6A={enabled:!0,max_bytes:32768};function IDA(g){var A;return g?{enabled:(A=g.enabled)!==null&&A!==void 0?A:t6A.enabled,max_bytes:Qht(g.max_bytes,t6A.max_bytes)}:QI({},t6A)}var Cht=class{constructor(A){this.ns=[],this.ss=0,this.Ar=IDA(A)}setConfig(A){this.Ar=IDA(A),this.rs()}add(A){const I=(function(t){let o;try{o=s$g(t)}catch{return}try{const B=JSON.parse(o);if(!yC(B))return;const C=B,Q=C[ADA],i=C[gDA];return!qC(Q)||Q.trim().length===0||!qC(i)&&!Gh(i)?void 0:{step:C,json:o}}catch{return}})(A);if(!I)return;const e=(function(t){if("u">typeof TextEncoder)return new TextEncoder().encode(t).length;const o=encodeURIComponent(t);let B=0;for(let C=0;o.length>C;C++)o[C]==="%"?(B+=1,C+=2):B+=1;return B})(I.json);e>this.Ar.max_bytes||(this.ns.push({step:I.step,bytes:e}),this.ss+=e,this.rs())}getAttachable(){return this.ns.map(A=>A.step)}clear(){this.ns=[],this.ss=0}size(){return this.ns.length}rs(){for(;this.ss>this.Ar.max_bytes&&this.ns.length>0;){const A=this.ns.shift();A&&(this.ss-=A.bytes)}}};function Qht(g,A){if(!Gh(g)||g===1/0||g===-1/0)return A;const I=Math.floor(g);return 0>I?A:I}const sAI=g=>{if(typeof g!="string")return g;try{return JSON.parse(g)}catch{return g}};function aAI(g){return typeof g=="string"||g}function rAI(g){return typeof g=="string"?g:void 0}const iht=["$feature_flag","$feature_flag_response","$feature_flag_has_experiment","$feature_flag_id","$feature_flag_version","$feature_flag_reason","$feature_flag_request_id","$feature_flag_evaluated_at","$feature_flag_error","locally_evaluated","$groups","$process_person_profile","$geoip_disable","$current_url","$pathname","$referring_domain","utm_source","utm_medium","utm_campaign","utm_content","utm_term","gad_source","mc_cid","gclid","gclsrc","dclid","gbraid","wbraid","fbclid","msclkid","twclid","li_fat_id","igshid","ttclid","rdt_cid","epik","qclid","sccid","oppref","bfcid","irclid","_kx","$session_id","$window_id","$lib","$lib_version","$device_id","$is_server"],cAI="NativeGzipValidationError",o6A=g=>g.length>=2&&g[0]===31&&g[1]===139,hAI=(g,A)=>g===HHA.GZipJS||A===HHA.GZipJS||A==="gzip",lAI=g=>!(!g||typeof g!="object")&&("name"in g?String(g.name):"")==="NotReadableError";let zAA;const eDA=g=>{throw X$g(cAI,`Native gzip produced invalid output: ${g}`)},Eht=(DAI=Qa(function*(g,A){18>g.size&&eDA("too-short");const I=new Uint8Array(yield g.slice(0,10).arrayBuffer());o6A(I)&&I[2]===8||eDA("invalid-header");const e=new DataView(yield g.slice(g.size-8).arrayBuffer());e.getUint32(0,!0)!==(o=>{const B=(()=>{if(zAA)return zAA;zAA=[];for(let Q=0;256>Q;Q++){let i=Q;for(let E=0;8>E;E++)i=1&i?3988292384^i>>>1:i>>>1;zAA[Q]=i>>>0}return zAA})();let C=4294967295;for(let Q=0;o.length>Q;Q++)C=B[255&(C^o[Q])]^C>>>8;return(4294967295^C)>>>0})(A)&&eDA("invalid-crc");const t=A.length>>>0;e.getUint32(4,!0)!==t&&eDA("invalid-size")}),function(g,A){return DAI.apply(this,arguments)});var DAI;function B6A(){return B6A=Qa(function*(g,A=!0,I){try{const t=new TextEncoder().encode(g),o=new globalThis.CompressionStream("gzip"),B=o.writable.getWriter(),C=B.write(t).then(()=>B.close()).catch((e=Qa(function*(E){try{yield B.abort(E)}catch{}throw E}),function(E){return e.apply(this,arguments)})),Q=new Response(o.readable).blob(),[i]=yield Promise.all([Q,C]);return yield Eht(i,t),i}catch(t){if(I?.rethrow)throw t;return A&&console.error("Failed to gzip compress data",t),null}var e}),B6A.apply(this,arguments)}function dAI(g,A){if(g==null)return{};var I,e,t=(function(B,C){if(B==null)return{};var Q={};for(var i in B)if({}.hasOwnProperty.call(B,i)){if(C.includes(i))continue;Q[i]=B[i]}return Q})(g,A);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(g);for(e=0;o.length>e;e++)A.includes(I=o[e])||{}.propertyIsEnumerable.call(g,I)&&(t[I]=g[I])}return t}const sG="[redacted]",nht=/^[A-Za-z0-9+/\n\r]+=*$/,sht=/^[A-Za-z0-9_-]+={0,2}$/,aht=/[-_]/,rht=/^data:[^,\s]*;base64,/i,cht=/^[A-Za-z0-9+/_-]+={0,2}$/,hht=/\bph[a-z]_[A-Za-z0-9_-]{20,}\b/g,lht=/^(authorization|cookie|set-cookie|x-api-key|api[-_]?key|api[-_]?token|access[-_]?token|refresh[-_]?token|token|password|secret|client[-_]?secret|private[-_]?key)$/i,yAI=/[a-z][a-z0-9+.-]{0,63}:[^\s<>"]+/gi,Dht=/[\s<>"]/,wAI=new RegExp(yAI.source,"i"),uAI=/[a-z][a-z0-9+.-]{0,63}:\/\//i,dht=new RegExp(`^${uAI.source}`,"i"),yht=new RegExp(uAI.source,"gi"),wht=/(^|[-_./;])(auth|token|secret|password|passwd|pwd|credential|signature|sig|key|hmac|sas|bearer|jwt|session|sessionid)([-_./;]|$)/i,uht=/^(code|AWSAccessKeyId|GoogleAccessId|Policy)$/i,Ght=/[\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]/g,mht=/[A-Za-z0-9._%+-]{1,64}@[A-Za-z0-9.-]{1,255}\.[A-Za-z]{2,24}/g,pht=/\b(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\b/g,kht=/(^|[^\w:])((?:(?:[0-9A-Fa-f]{1,4}:){7}[0-9A-Fa-f]{1,4}|(?:[0-9A-Fa-f]{1,4}:){1,7}:|(?:[0-9A-Fa-f]{1,4}:){1,6}:[0-9A-Fa-f]{1,4}(?::[0-9A-Fa-f]{1,4}){0,5}|::(?:[0-9A-Fa-f]{1,4}(?::[0-9A-Fa-f]{1,4}){0,6})))(?=$|[^\w:])/g,Mht=/\b\d{3}[ .-]\d{2}[ .-]\d{4}\b/g,Sht=/\b\d(?:[ ./-]?\d){12,}\b/g,GAI=/\d+/g,fht=/(^|[^\w+])((?:\+?1[ ./-]?)?(?:\(\d{3}\)[ ./-]?|\d{3}[ ./-])\d{3}[ ./-]\d{4})(?![\w])/g,Rht=/(^|[^\w])(\+\d{1,3}(?:[ ./()-]{0,2}\d){7,13})(?![\w])/g;function C6A(g){return(function(A){return lht.test(A)})(g)||wht.test(g)||uht.test(g)}function Q6A(g){return g.split("&",129).length>128}function Nht(g,A,I){return C6A(g)||A.includes(";")&&(function(e){return e.split(";").some(t=>C6A(t.split("=",1)[0]))})(A)?sG:wAI.test(A)?I?E6A(A,{allowNestedUrls:!1,stripPunctuation:!0}):sG:A}function mAI(g,A){const I=new URLSearchParams;let e=!1,t=!1;for(const[o,B]of new URLSearchParams(g)){const C=tDA(o),Q=tDA(B);e||(e=C!==o||Q!==B);const i=Nht(C,Q,A);e||(e=i!==Q),t=C6A(C)||i!==Q,I.append(C,i)}return{changed:e,lastFieldSensitive:t,serialized:I.toString()}}function pAI(g,A){if(!g.includes("="))return{value:xht(g,A),lastFieldSensitive:!1};const I=mAI(g,A);return{value:I.changed?I.serialized:g,lastFieldSensitive:I.lastFieldSensitive}}function xht(g,A){return A?E6A(g,{allowNestedUrls:!1,stripPunctuation:!0}):wAI.test(g)?sG:g}function Fht(g,A,I){return g==="#"?!A.fragment&&(A.fragment=!0):g==="?"&&(A.fragment?I!=="="&&!A.fragmentQuery&&(A.fragmentQuery=!0):!A.query&&(A.query=!0))}function i6A(g,A){var I;if(g.length>8192&&dht.test(g))return sG;const{address:e,suffix:t}=A.stripPunctuation?(function(h){let l=h.length;for(;l>0&&".,;:!?)]}'".includes(h[l-1]);)l--;return{address:h.slice(0,l),suffix:h.slice(l)}})(g):{address:g,suffix:""};let o;try{o=new URL(e)}catch{return sG+t}const B=o.search.slice(1),C=o.hash!=="",Q=(function(h){const l=h.slice(1),D=l.indexOf("?");return 0>D?{head:l,tail:null}:{head:l.slice(0,D),tail:l.slice(D+1)}})(o.hash);if(Q6A(B)||Q6A(Q.head)||Q6A((I=Q.tail)!==null&&I!==void 0?I:""))return sG+t;let i=!1;(o.username||o.password)&&(o.username=sG,o.password="",i=!0);const E=mAI(B,A.allowNestedUrls);E.changed&&(o.search=E.serialized,i=!0);const n=pAI(Q.head,A.allowNestedUrls),s=Q.tail===null?null:(r=Q.tail,n.lastFieldSensitive?{value:r===""?"":sG,lastFieldSensitive:!0}:pAI(r,A.allowNestedUrls));var r;const a=s===null?n.value:`${n.value}?${s.value}`;a!==o.hash.slice(1)&&(o.hash=a,i=!0);const c=C?s??n:E;return(i?tDA(o.toString()):e)+(c.lastFieldSensitive?"":t)}function E6A(g,A){return g.replace(yAI,I=>(function(e,t){const o=(function(Q){if(!Q.includes("://"))return[];const i=[...Q.matchAll(yht)].map(c=>c.index),E=[],n={query:!1,fragment:!1,fragmentQuery:!1};let s=0,r=!1,a="";for(let c=0;Q.length>c&&i.length>s;c++){i[s]===c&&(c>0&&a!=="="&&E.push(c),s++);const h=Q[c];Fht(h,n,a)?(a=h,r=!0):r&&"=&".includes(h)&&(a=h)}return E})(e);if(o.length===0)return i6A(e,t);let B="",C=0;for(const Q of o)B+=i6A(e.slice(C,Q),QI(QI({},t),{},{stripPunctuation:!1})),C=Q;return B+i6A(e.slice(C),t)})(I,QI(QI({},A),{},{stripPunctuation:A.stripPunctuation&&I.length!==g.length})))}function tDA(g){return g.replace(hht,sG)}function kAI(g,A){return(function(I){return I.length>=10240&&(nht.test(I)||(function(e){const t=rht.exec(e);if(!t)return!1;let o;try{o=decodeURIComponent(e.slice(t[0].length))}catch{return!1}return cht.test(o.replace(/[\r\n]/g,""))})(I)||aht.test(I)&&sht.test(I))})(g)?"[binary data redacted - not supported by PostHog MCP analytics]":(function(I,e,t){const o=4*t.maxStringLength;if(I.length>o){const B=e(I.slice(0,(function(C,Q){let i=Q;for(;i>0&&!Dht.test(C[i-1]);)i--;return i})(I,o)));if(B.length>=2*t.maxStringLength)return B+t.truncationSuffix}return e(I)})(g,I=>(function(e){return E6A(e,{allowNestedUrls:!0,stripPunctuation:!0})})((function(e){let t=e.replace(Ght," ");return t=t.replace(mht,sG),t=t.replace(pht,sG),t=t.replace(kht,`$1${sG}`),t=t.replace(Sht,Jht),t=t.replace(Mht,sG),t=t.replace(fht,`$1${sG}`),t=t.replace(Rht,`$1${sG}`),t})(tDA(I))),A)}function Uht(g){let A=0,I=!1;for(let e=g.length-1;e>=0;e--){let t=g.charCodeAt(e)-48;if(0>t||t>9)return!1;I&&(t*=2,t>9&&(t-=9)),A+=t,I=!I}return A%10==0}function Jht(g){const A=[];for(let o=GAI.exec(g);o!==null;o=GAI.exec(g))A.push({digits:o[0],start:o.index,end:o.index+o[0].length});let I="",e=0,t=0;for(;A.length>t;){let o="",B=-1;for(let C=t;A.length>C&&(o+=A[C].digits,19>=o.length);C++)o.length>=13&&Uht(o)&&(B=C);0>B?t++:(I+=g.slice(e,A[t].start)+sG,e=A[B].end,t=B+1)}return I+g.slice(e)}const Pht={}.propertyIsEnumerable;function oDA(g,A){try{return MAI(g,A,{ancestors:new WeakSet,remainingNodes:1e4},0)}catch{return[]}}function n6A(g,A,I,e){if(0>=I.remainingNodes)return{stringValue:g6A};if(I.remainingNodes--,Fm(g))return{boolValue:g};if(typeof g=="bigint")return(function(t,o){const B=t.toString(),C=BigInt("9223372036854775808");return t>=C||-C>t?(o?.debug(`Attribute ${B} is outside the int64 range; encoding it as a string`),{stringValue:B}):{intValue:B}})(g,A);if(typeof g=="number"){if(!Number.isFinite(g))return{stringValue:String(g)};if(Number.isInteger(g)){if(Number.isSafeInteger(g))return{intValue:String(g)};if(typeof BigInt>"u")return{stringValue:String(g)};const t=BigInt(g).toString();return g>=9223372036854776e3||-9223372036854776e3>g?(A?.debug(`Attribute ${t} is outside the int64 range; encoding it as a string`),{stringValue:t}):{intValue:t}}return{doubleValue:g}}if(typeof g=="string")return{stringValue:Iq(g)};if(typeof g=="function")return{stringValue:"[Function]"};if(typeof g=="symbol")return{stringValue:String(g)};if(typeof g=="object"&&g!==null){if(I.ancestors.has(g))return{stringValue:"[Circular]"};if(e>=20)return{stringValue:g6A};if(g instanceof Date){const t=g.getTime(),o=Number.isFinite(t)?g.toISOString():String(g);return{stringValue:typeof o=="string"?Iq(o):String(o)}}I.ancestors.add(g);try{try{const t=g.toJSON;if(typeof t=="function")return n6A(t.call(g),A,I,e+1)}catch{}return cB(g)?{arrayValue:{values:Kht(g,A,I,e+1)}}:{kvlistValue:{values:MAI(g,A,I,e+1)}}}finally{I.ancestors.delete(g)}}return{stringValue:Iq(String(g))}}function Kht(g,A,I,e){const t=[],o=Math.min(g.length,1e3);let B=0;for(;o>B&&I.remainingNodes>0;B++)try{const C=B in g?g[B]:void 0;if(hC(C))continue;t.push(n6A(C,A,I,e))}catch{t.push({stringValue:WAA})}return g.length>B&&t.push({stringValue:g6A}),t}function MAI(g,A,I,e){const t=[];for(const o in g)if(Pht.call(g,o)){if(!o){A?.debug("Dropping an attribute with an empty key");continue}if(t.length>=1e3||0>=I.remainingNodes){A?.debug("Attributes truncated: the value exceeds the OTLP encoder budget");break}try{const B=g[o];if(Pc(B)||Ye(B))continue;t.push({key:Iq(o),value:n6A(B,A,I,e)})}catch{t.push({key:Iq(o),value:{stringValue:WAA}})}}return t}function SAI(g,A,I){return QI(QI(QI(QI({},V$g({},g.resourceAttributes)),{},{"service.name":g.serviceName||"unknown_service"},g.environment&&{"deployment.environment":g.environment}),g.serviceVersion&&{"service.version":g.serviceVersion}),{},{"telemetry.sdk.name":A,"telemetry.sdk.version":I})}const Lht=["service.name","deployment.environment","service.version","telemetry.sdk.name","telemetry.sdk.version"];function fAI(g,A){const I=V$g({},g),e={};for(const t of Lht)({}).hasOwnProperty.call(I,t)&&(e[t]=I[t],delete I[t]);return[...oDA(I,A),...oDA(e,A)]}const RAI={darwin:"macOS",win32:"Windows",cygwin:"Windows",linux:"Linux",android:"Android",freebsd:"FreeBSD",openbsd:"OpenBSD",netbsd:"NetBSD",sunos:"SunOS",aix:"AIX",haiku:"Haiku","Mac OS X":"macOS"},NAI={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}},Yht=NAI.info;function _ht(g){try{return Iq(String(g))}catch{return WAA}}function bht(g,A,I,e){const t=g.level||"info",{text:o,number:B}=NAI[t]||Yht,C=(function(s=Date.now()){return String(s)+"000000"})(Gh(e)?e:void 0),Q={};A.distinctId&&(Q.posthogDistinctId=A.distinctId),A.sessionId&&(Q.sessionId=A.sessionId),A.windowId&&(Q["window.id"]=A.windowId),hC(A.sessionStartTimestamp)||(Q.sessionStartTimestamp=String(A.sessionStartTimestamp)),hC(A.lastActivityTimestamp)||(Q.lastActivityTimestamp=String(A.lastActivityTimestamp)),A.currentUrl&&(Q["url.full"]=A.currentUrl),A.screenName&&(Q["screen.name"]=A.screenName),A.appState&&(Q["app.state"]=A.appState),A.activeFeatureFlags&&A.activeFeatureFlags.length>0&&(Q.feature_flags=A.activeFeatureFlags);const i=QI({},Q),E=g.attributes;if(E){let s=[];try{s=Object.keys(E)}catch{s=[]}for(const r of s){let a;try{a=E[r]}catch{a=WAA}Object.defineProperty(i,r,{value:a,enumerable:!0,writable:!0,configurable:!0})}}const n={timeUnixNano:C,observedTimeUnixNano:C,severityNumber:B,severityText:o,body:{stringValue:_ht(g.body)},attributes:oDA(i,I)};return g.trace_id&&(n.traceId=g.trace_id),g.span_id&&(n.spanId=g.span_id),Ye(g.trace_flags)||(n.flags=g.trace_flags),n}function xAI(g,A,I){return SAI(g,A,I)}function FAI(g,A,I,e){return{resourceLogs:[{resource:{attributes:fAI(A)},scopeLogs:[{scope:{name:I,version:e},logRecords:g}]}]}}var UAI=class{constructor(A){this.ls=A,this.us=0}get pending(){return!!this.cs}arm(A){this.clear(),this.us=Date.now()+A,this.cs=AAI(()=>{this.cs=void 0,this.ls()},A)}armNoEarlierThan(A){this.cs&&Date.now()+A<=this.us||this.arm(A)}clear(){this.cs&&(clearTimeout(this.cs),this.cs=void 0)}};function JAI(){return .75+.5*Math.random()}function PAI(g,A,I,e){const t=Math.min(Math.max(0,A-1),6),o=g*Math.pow(2,t);return Math.round(Math.min(o,Math.max(e,g))*I)}var Hht=class{constructor(A,I,e,t,o,B=()=>Promise.resolve(),C){var Q;this._instance=A,this.Ar=I,this.$=e,this.hs=t,this.ds=o,this.vs=B,this.fs=C,this.ps=new UAI(()=>this.gs()),this.ys=null,this.bs=0,this._s=0,this.ws=new j$g,this.ks=0,this.Ss=1,this.xs=0,this.$s=0,this.Cs=!1,this.Ts=I.maxBufferSize,this.Is=Math.max((Q=I.maxQueueSize)!==null&&Q!==void 0?Q:I.maxBufferSize,I.maxBufferSize),this.Ms=I.flushIntervalMs,this.Es=I.maxBatchRecordsPerPost,this.Ps=I.rateCapWindowMs,this.Rs=I.maxLogsPerInterval}clearQueue(){this._s++,this._instance.setPersistedProperty(dx.LogsQueue,[])}reset(){this.ps.clear(),this.xs=0,this.$s=0,this.Cs=!1,this.ks=0,this.Ss=1,this.ws.reset(),this.Es=this.Ar.maxBatchRecordsPerPost}onReconnect(){this.ks=0,this.Ss=1,this.ws.isOpen()?this.As()&&this.Fs():this.gs()}captureLog(A,I){var e;if(this._instance.isDisabled||this._instance.optedOut||!A?.body)return;const t=this.Os(A);if(t===null)return;if(!t.body)return void this.$.info("Log was rejected in beforeSend function");if(!this.Ds())return;const o={record:bht(t,(e=I?.context)!==null&&e!==void 0?e:this.hs(),this.$,I?.occurredAtMs)};this.ds(()=>this.Ls(o))}Os(A){const I=this.Ar.beforeSend;if(!I)return A;const e=cB(I)?I:[I];let t=A;for(const o of e)try{const B=o(t);if(!B)return this.$.info("Log was rejected in beforeSend function"),null;t=B}catch(B){return this.$.error("Error in beforeSend function for log:",B),null}return t}Ds(){if(this.Rs===void 0)return!0;const A=Date.now(),I=A-this.xs;return this.Ps>I&&I>=0||(this.xs=A,this.$s=0,this.Cs=!1),this.Rs>this.$s?(this.$s++,!0):(this.Cs||(this.$.warn(`captureLog dropping logs: exceeded ${this.Rs} logs per ${this.Ps}ms`),this.Cs=!0),!1)}flush(){var A=this;return Qa(function*(){if(!A._instance.isDisabled)return A.ys||(A.ys=A.Ns().finally(()=>{A.ys=null})),A.ys})()}Ns(){var A=this;return Qa(function*(){var I;A.ps.clear();let e=(I=A._instance.getPersistedProperty(dx.LogsQueue))!==null&&I!==void 0?I:[];if(e.length===0)return;const t=e.length;let o=0;for(;e.length>0&&t>o;){var B,C;const Q=A._s;A.bs=0;const i=Math.min(e.length,A.Es),E=e.slice(0,i),n=FAI(E.map(r=>r.record),A.qs(),(B=A.fs)!==null&&B!==void 0?B:A._instance.getLibraryId(),A._instance.getLibraryVersion()),s=yield A._instance.js(n);if(A._s!==Q)return;if(s.kind==="too-large"&&E.length>1)A.Es=Math.max(1,Math.floor(E.length/2)),A.$.warn(`Logs batch of size ${E.length} was too large for the ingestion endpoint, reducing batch size to ${A.Es}`);else if(A.ws.record(s),A.ps.pending&&A.ps.arm(Math.max(A.Ms,A.ws.remainingMs())),s.kind==="retry-later"||(s.kind==="too-large"?A.$.warn("Dropping a single log record with batch size 1 — the record is larger than the server cap and cannot be split further."):s.kind==="ok"&&A.Ar.maxBatchRecordsPerPost>A.Es&&(A.Es=Math.min(A.Ar.maxBatchRecordsPerPost,A.Es+1)),yield A.Bs(E.length),e=(C=A._instance.getPersistedProperty(dx.LogsQueue))!==null&&C!==void 0?C:[],o+=E.length,s.kind==="fatal"))throw s.error}})()}Bs(A){var I=this;return Qa(function*(){var e;const t=Math.max(0,A-I.bs),o=(e=I._instance.getPersistedProperty(dx.LogsQueue))!==null&&e!==void 0?e:[];I._instance.setPersistedProperty(dx.LogsQueue,o.slice(t)),yield I.vs()})()}qs(){return xAI(this.Ar,this._instance.getLibraryId(),this._instance.getLibraryVersion())}Ls(A){var I;if(this._instance.optedOut)return;const e=(I=this._instance.getPersistedProperty(dx.LogsQueue))!==null&&I!==void 0?I:[];this.Is>e.length||(e.shift(),this.bs++,this.$.info("Logs queue is full, dropping oldest record.")),e.push(A),this._instance.setPersistedProperty(dx.LogsQueue,e),this.Ts>e.length||this.ws.isOpen()?this.Fs():this.gs()}Fs(){this.ps.pending||this.ps.arm(Math.max(this.Ms,this.ws.remainingMs()))}zs(){return Math.max(PAI(this.Ms,this.ks,this.Ss,3e4),this.ws.remainingMs())}As(){const A=this._instance.getPersistedProperty(dx.LogsQueue);return!!A&&A.length>0}shutdown(A){var I=this;return Qa(function*(){I.ps.clear();const e=I.flush().catch(()=>{});A!==void 0?yield gAI(e,A):yield e})()}flushWithTimeout(A){var I=this;return Qa(function*(){const e=I.flush();yield gAI(e,A,()=>{e.catch(()=>{})})})()}gs(){this.flush().then(()=>{this.ks=0,this.Ss=1},A=>{this.ks++,this.Ss=JAI(),this.$.error("PostHog logs flush failed:",A)}).finally(()=>{!this._instance.isDisabled&&this.As()&&this.ps.armNoEarlierThan(this.zs())})}};const vht=/^[0-9a-f]+$/;function KAI(g,A,I){return typeof g=="string"&&g.length===A&&g!==I&&vht.test(g)}const Tht=/^([0-9a-f]{2})-([0-9a-f]{32})-([0-9a-f]{16})-([0-9a-f]{2})(-.*)?$/,qht="00",s6A=[0,5,10,25,50,75,100,250,500,750,1e3,2500,5e3,7500,1e4];function a6A(g){return String(g)+"000000"}function LAI(g,A,I,e){let t="";return e&&(t=Object.keys(e).sort().map(o=>`${JSON.stringify(o)}:${JSON.stringify(e[o])}`).join(",")),`${g}\0${A}\0${I??""}\0${t}`}var Zht=class{constructor(A,I,e){this._instance=A,this.Ar=I,this.$=e,this.Hs=new Map,this.ps=new UAI(()=>this.flush().catch(t=>{this.$.error("Metrics flush failed:",t)})),this.ys=null,this.Us=!1,this.Ws=new Map,this.Vs=new Set,this.ws=new j$g,this.ks=0,this.Ss=1,this.Gs=0}count(A,I=1,e){this.Qs({name:A,type:"count",value:I,unit:e?.unit,attributes:e?.attributes})}gauge(A,I,e){this.Qs({name:A,type:"gauge",value:I,unit:e?.unit,attributes:e?.attributes})}histogram(A,I,e){this.Qs({name:A,type:"histogram",value:I,unit:e?.unit,attributes:e?.attributes})}flush(){var A=this;const I=this.ys,e=(function(){var t=Qa(function*(){I&&(yield I.catch(()=>{})),yield A.Zs()});return function(){return t.apply(this,arguments)}})()().finally(()=>{this.ys===e&&(this.ys=null)});return this.ys=e,e}drainWindow(){if(this.Hs.size===0)return null;const A=this.Hs;return this.Hs=new Map,this.Us=!1,this.Ws=new Map,this.Vs=new Set,this.Js(A)}reset(){this.Gs++,this.ws.reset(),this.ks=0,this.Ss=1,this.ps.clear(),this.Hs=new Map,this.ys=null,this.Us=!1,this.Ws=new Map,this.Vs=new Set}Qs(A){if(this._instance.isDisabled||this._instance.optedOut)return;const I=this.Os(A);if(I===null)return;if(!I.name||typeof I.name!="string")return void this.$.warn("Dropping metric with empty name");if(typeof I.value!="number"||!Number.isFinite(I.value))return void this.$.warn(`Dropping metric '${I.name}': value must be a finite number`);if(I.type==="count"&&0>I.value)return void this.$.warn(`Dropping count '${I.name}': counters are monotonic, value must be >= 0`);let e,t;try{e=I.attributes?QI({},I.attributes):void 0,t=LAI(I.type,I.name,I.unit,e)}catch(Q){return void this.$.warn(`Dropping metric '${I.name}': attributes could not be serialized`,Q)}let o=this.Hs.get(t);if(!o){if(!this.Ks())return;o={name:I.name,type:I.type,unit:I.unit,attributes:e,windowStartMs:Date.now()},this.Hs.set(t,o)}const B=this.Ws.get(I.name);B===void 0?this.Ws.set(I.name,I.type):B===I.type||this.Vs.has(I.name)||(this.Vs.add(I.name),this.$.warn(`Metric name '${I.name}' is already used as a ${B}; recording it as a ${I.type} too will blend both series in charts. Use a distinct name.`)),this.Xs(o,I.value);const C=this.Ys();C&&(o.exemplar=QI(QI({},C),{},{value:I.value,timeMs:Date.now()})),this.Fs()}Ys(){try{var A,I;const e=(function(t){const o=(function(C){if(typeof C!="string")return;const Q=Tht.exec(C.trim());if(!Q)return;const[,i,E,n,s,r]=Q;return i==="ff"||i==="00"&&r||!(function(a){return KAI(a,32,"00000000000000000000000000000000")})(E)||!(function(a){return KAI(a,16,"0000000000000000")})(n)?void 0:{version:i,traceId:E,spanId:n,flags:s}})(t);return o&&{traceId:o.traceId,spanId:o.spanId,flags:(B=o.flags,1&parseInt(B,16)?"01":qht)};var B})((A=(I=this._instance).getActiveSpan)===null||A===void 0||(A=A.call(I))===null||A===void 0?void 0:A.traceparent());if(e&&e.flags==="01")return{traceId:e.traceId,spanId:e.spanId}}catch{}}Ks(){return this.Ar.maxSeriesPerFlush>this.Hs.size||(this.Us||(this.Us=!0,this.$.warn(`Metric series cap reached (${this.Ar.maxSeriesPerFlush} per flush window); dropping new series until the next flush. Reduce attribute cardinality.`)),!1)}Xs(A,I){switch(A.type){case"count":var e;A.total=((e=A.total)!==null&&e!==void 0?e:0)+I;break;case"gauge":A.last=I;break;case"histogram":{A.hist||(A.hist={count:0,sum:0,min:I,max:I,bucketCounts:new Array(s6A.length+1).fill(0)});const t=A.hist;t.count+=1,t.sum+=I,t.min=Math.min(t.min,I),t.max=Math.max(t.max,I),t.bucketCounts[(function(o,B){for(let C=0;B.length>C;C++)if(B[C]>=o)return C;return B.length})(I,s6A)]+=1;break}}}Os(A){const I=this.Ar.beforeSend;if(!I)return A;const e=cB(I)?I:[I];let t=A;for(const o of e)try{const B=o(t);if(!B)return this.$.info("Metric was rejected in beforeSend function"),null;t=B}catch(B){return this.$.error("Error in beforeSend function for metric:",B),null}return t}Fs(){this.ps.pending||this.ps.arm(this.zs())}zs(){return Math.max(PAI(this.Ar.flushIntervalMs,this.ks,this.Ss,3e4),this.ws.remainingMs())}Zs(){var A=this;return Qa(function*(){if(A.ps.clear(),A.Hs.size===0)return;const I=A.Hs;A.Hs=new Map,A.Us=!1,A.Ws=new Map,A.Vs=new Set;const e=A.Gs,t=yield A._instance.po(A.Js(I));if(e===A.Gs)switch(A.ws.record(t),t.kind==="retry-later"?(A.ks++,A.Ss=JAI()):(A.ks=0,A.Ss=1),A.ps.pending&&A.ps.arm(A.zs()),t.kind){case"ok":return;case"retry-later":return A.mo(I),void A.ps.armNoEarlierThan(A.zs());case"too-large":return void A.$.warn("Metrics batch exceeded the server size limit and was dropped");case"fatal":return void A.$.error("Failed to send metrics batch:",t.error)}})()}Js(A){return I=this.yo(A),e=(function(B,C,Q){return SAI(B,C,Q)})(this.Ar,this._instance.getLibraryId(),this._instance.getLibraryVersion()),t=this._instance.getLibraryId(),o=this._instance.getLibraryVersion(),{resourceMetrics:[{resource:{attributes:fAI(e)},scopeMetrics:[{scope:{name:t,version:o},metrics:I}]}]};var I,e,t,o}yo(A){const I=a6A(Date.now()),e=new Map;for(const C of A.values()){var t;const Q=LAI(C.type,C.name,C.unit,void 0);let i=e.get(Q);i||(i=QI({name:C.name},C.unit&&{unit:C.unit}),C.type==="count"?i.sum={aggregationTemporality:1,isMonotonic:!0,dataPoints:[]}:C.type==="gauge"?i.gauge={dataPoints:[]}:i.histogram={aggregationTemporality:1,dataPoints:[]},e.set(Q,i));const E=oDA((t=C.attributes)!==null&&t!==void 0?t:{},this.$),n=a6A(C.windowStartMs),s=Oht(C.exemplar);if(C.type==="count"){var o;const r=QI({attributes:E,startTimeUnixNano:n,timeUnixNano:I,asDouble:(o=C.total)!==null&&o!==void 0?o:0},s);i.sum.dataPoints.push(r)}else if(C.type==="gauge"){var B;const r=QI({attributes:E,timeUnixNano:I,asDouble:(B=C.last)!==null&&B!==void 0?B:0},s);i.gauge.dataPoints.push(r)}else if(C.hist){const r=QI({attributes:E,startTimeUnixNano:n,timeUnixNano:I,count:C.hist.count,sum:C.hist.sum,min:C.hist.min,max:C.hist.max,bucketCounts:C.hist.bucketCounts,explicitBounds:s6A},s);i.histogram.dataPoints.push(r)}}return Array.from(e.values())}mo(A){for(const[o,B]of A){var I;const C=this.Hs.get(o);if(C)switch(C.windowStartMs=Math.min(C.windowStartMs,B.windowStartMs),C.exemplar=(I=C.exemplar)!==null&&I!==void 0?I:B.exemplar,C.type){case"count":var e,t;C.total=((e=C.total)!==null&&e!==void 0?e:0)+((t=B.total)!==null&&t!==void 0?t:0);break;case"gauge":break;case"histogram":if(B.hist)if(C.hist){C.hist.count+=B.hist.count,C.hist.sum+=B.hist.sum,C.hist.min=Math.min(C.hist.min,B.hist.min),C.hist.max=Math.max(C.hist.max,B.hist.max);for(let Q=0;C.hist.bucketCounts.length>Q;Q++)C.hist.bucketCounts[Q]+=B.hist.bucketCounts[Q]}else C.hist=B.hist}else this.Ks()&&this.Hs.set(o,B)}}};function Oht(g){return g?{exemplars:[{filteredAttributes:[],timeUnixNano:a6A(g.timeMs),asDouble:g.value,traceId:g.traceId,spanId:g.spanId}]}:{}}const YAI=(g,{debugEnabled:A}={})=>{const I={N(e,...t){let o;try{o=typeof window>"u"?void 0:window}catch{return}o&&(EJ.DEBUG||o.POSTHOG_DEBUG||A)&&!Ye(o.console)&&o.console&&("__rrweb_original__"in o.console[e]?o.console[e].__rrweb_original__:o.console[e])(g,...t)},debug(...e){I.N("debug",...e)},info(...e){I.N("log",...e)},warn(...e){I.N("warn",...e)},error(...e){I.N("error",...e)},critical(...e){console.error(g,...e)},uninitializedWarning(e){I.error(`You must initialize PostHog before calling ${e}`)},createLogger:(e,t)=>YAI(`${g} ${e}`,t)};return I},Dt=YAI("[PostHog.js]"),zr=Dt.createLogger,Wht=zr("[ExternalScriptsLoader]"),BDA=g=>{const A=ro?.querySelectorAll("script");if(A){for(let I=0;A.length>I;I++)if(A[I].src===g||A[I].getAttribute("src")===g)return A[I]}},t5=(g,A,I)=>{if(g.config.disable_external_dependency_loading)return Wht.warn(`${A} was requested but loading of external scripts is disabled.`),I("Loading of external scripts is disabled");const e=BDA(A);if(e){if(e.__posthog_loading_callback_fired)return I();const o=e.__posthog_loading_error;return o?I(o):(e.addEventListener("load",B=>{e.__posthog_loading_callback_fired=!0,I(void 0,B)}),void e.addEventListener("error",B=>{e.__posthog_loading_error=B,I(B)}))}const t=()=>{if(!ro)return I("document not found");if(BDA(A))return t5(g,A,I);let o=ro.createElement("script");if(o.type="text/javascript",o.crossOrigin="anonymous",o.src=A,o.onload=C=>{o.__posthog_loading_callback_fired=!0,I(void 0,C)},o.onerror=C=>{o.__posthog_loading_error=C,I(C)},g.config.prepare_external_dependency_script&&(o=g.config.prepare_external_dependency_script(o)),!o)return I("prepare_external_dependency_script returned null");if(g.config.external_scripts_inject_target==="head")ro.head.appendChild(o);else{const C=ro.querySelectorAll("body > script");var B;C.length>0?(B=C[0].parentNode)===null||B===void 0||B.insertBefore(o,C[0]):ro.body.appendChild(o)}};ro?.body?t():ro?.addEventListener("DOMContentLoaded",t)},r6A={},_AI=(g,A)=>{let I=`/static/${A}.js?v=${g.version}`;return A==="toolbar"&&(I=`${I}&t=${Math.floor(Date.now()/3e5)*3e5}`),g.requestRouter.endpointFor("assets",I)};UB.__PosthogExtensions__=UB.__PosthogExtensions__||{},UB.__PosthogExtensions__.loadExternalDependency=(g,A,I)=>{if(A==="remote-config"){const t=g.requestRouter.endpointFor("assets",`/array/${g.config.token}/config.js`);return void t5(g,t,I)}const e=g.config.strict_script_versioning;if(e){const t=g.requestRouter.endpointFor("assets",`/static/${g.version}/${A}.js`),o=r6A[t];if(e==="fallback"&&o){if(BDA(o))return void t5(g,o,I);delete r6A[t]}return void t5(g,t,e==="fallback"?(B,C)=>{if(B)if(typeof B=="string")I(B);else{var Q;const i=_AI(g,A);r6A[t]=i;const E=BDA(t);E==null||(Q=E.parentNode)===null||Q===void 0||Q.removeChild(E),t5(g,i,I)}else I(void 0,C)}:I)}t5(g,_AI(g,A),I)},UB.__PosthogExtensions__.loadSiteApp=(g,A,I)=>{const e=g.requestRouter.endpointFor("api",A);t5(g,e,I)},EJ.DEBUG=!1,EJ.LIB_VERSION="1.438.19",EJ.LIB_NAME="web";var ak=EJ;const c6A="$early_access_features",sJ="$active_feature_flags",o5="$feature_flag_details",XAA="$feature_flag_errors",E3="$feature_flag_evaluated_at",B5="$feature_flag_request_id",$AA="$minimal_flag_called_events",xR="$enabled_feature_flags",n3="$stored_group_properties",s3="$stored_person_properties",aJ="$flag_call_reported",AgA="$flag_call_reported_session_id",a3="$feature_flag_payloads",wx="$override_feature_flags",C5="$override_feature_flag_payloads",tq="visibilitychange",bAI="$autocapture_disabled_server_side",ggA="$surveys",CDA="$surveys_loaded_at",h6A="PostHog loadExternalDependency extension not found.",l6A="$surveys_activated",QDA="$surveys_activated_session",iDA="$surveys_activated_timestamps",Vht="$people_distinct_id",FR="distinct_id",D6A="$device_id",d6A="$device_model",EDA="__alias",jht="__cmpns",HAI="$fbc",oq="$fbc_persistence",vAI="$fbp",IgA="$fbp_persistence",y6A="__timers",w6A="$heatmaps_enabled_server_side",u6A="$exception_capture_enabled_server_side",TAI="$error_tracking_suppression_rules",G6A="$error_tracking_capture_extension_exceptions",m6A="$web_vitals_enabled_server_side",p6A="$dead_clicks_enabled_server_side",k6A="$product_tours_enabled_server_side",qAI="$logs_capture_enabled_server_side",ZAI="$web_vitals_allowed_metrics",egA="$session_recording_remote_config",zht="$session_recording_enabled_server_side",Xht="$replay_sample_rate",$ht="$replay_override_sampling",A0t="$replay_override_linked_flag",g0t="$replay_override_url_trigger",I0t="$replay_override_event_trigger",Bq="$sesid",OAI="$session_is_sampled",e0t="$session_past_minimum_duration",t0t="$session_recording_url_trigger_activated_session",o0t="$session_recording_event_trigger_activated_session",B0t="$debug_first_full_snapshot_timestamp",C0t="$sess_rec_flush_size",WAI="$groups",M6A="ph_product_tours",Q0t="$product_tours_activated",i0t="$product_tours_activated_session",E0t="$conversations_widget_session_id",n0t="$conversations_ticket_id",s0t="$conversations_widget_state",a0t="$conversations_user_traits",Um="$user_state",S6A="$client_session_props",r0t="$capture_rate_limit",VAI="$initial_campaign_params",jAI="$initial_referrer_info",Cq="$initial_person_info",f6A="$epp",R6A="$posthog_cookieless",zAI="$cookieless_mode",XAI="$sdk_debug_extensions_init_method",$AI="$sdk_debug_extensions_init_time_ms",N6A="$sdk_debug_recording_script_not_loaded",x6A="$sdk_debug_replay_stale_config",AgI="$sdk_debug_replay_event_trigger_status",ggI="$sdk_debug_replay_linked_flag_trigger_status",IgI="$sdk_debug_replay_matched_recording_trigger_groups",egI="$sdk_debug_replay_pending_trigger_conditions",tgI="$sdk_debug_replay_remote_trigger_matching_config",ogI="$sdk_debug_replay_trigger_groups_count",BgI="$sdk_debug_replay_url_trigger_status",c0t="$session_recording_start_reason",rJ="anonymous",nDA="identified",CgI="identified_only",sDA="beforeunload",F6A="$pageview",QgI="$pageleave",igI="$identify",EgI="$groupidentify";function Qq(g,A){cB(g)&&g.forEach(A)}function Gn(g,A){if(!hC(g))if(cB(g))g.forEach(A);else if((I=>I instanceof FormData)(g))g.forEach((I,e)=>A(I,e));else for(const I in g)THA.call(g,I)&&A(g[I],I)}const sr=function(g,...A){for(const I of A)for(const e in I)I[e]!==void 0&&(g[e]=I[e]);return g};function aDA(g){const A=Object.keys(g);let I=A.length;const e=new Array(I);for(;I--;)e[I]=[A[I],g[A[I]]];return e}const h0t=function(g){return function(...A){try{return g.apply(this,A)}catch(I){Dt.critical("Implementation error. Please turn on debug mode and open a ticket on https://app.posthog.com/home#panel=support%3Asupport%3A."),Dt.critical(I)}}},U6A=function(g){const A={};return Gn(g,function(I,e){(qC(I)&&I.length>0||Gh(I))&&(A[e]=I)}),A};function ngI(g){const A=QI({},g);for(const I of["name","message","stack","cause","errors"])try{I in g&&(A[I]=g[I])}catch{}return A}const l0t=["herokuapp.com","vercel.app","netlify.app"];function D0t(g){const A=g?.hostname;if(!qC(A))return!1;const I=A.split(".").slice(-2).join(".");for(const e of l0t)if(I===e)return!1;return!0}function NE(g,A,I,e){const{capture:t=!1,passive:o=!0}=e??{};g?.addEventListener(A,I,{capture:t,passive:o})}function J6A(g){return g.name==="ph_toolbar_internal"}const tgA=g=>{if(ro){try{const A=g+"=",I=ro.cookie.split(";").filter(e=>e.length);for(let e=0;I.length>e;e++){let t=I[e];for(;t.charAt(0)==" ";)t=t.substring(1,t.length);if(t.indexOf(A)===0)return decodeURIComponent(t.substring(A.length,t.length))}}catch{}return null}};Math.trunc||(Math.trunc=function(g){return 0>g?Math.ceil(g):Math.floor(g)}),Number.isInteger||(Number.isInteger=function(g){return Gh(g)&&isFinite(g)&&Math.floor(g)===g});var d0t=class Qlg{constructor(A){if(this.bytes=A,A.length!==16)throw new TypeError("not 128-bit length")}static fromFieldsV7(A,I,e,t){if(!Number.isInteger(A)||!Number.isInteger(I)||!Number.isInteger(e)||!Number.isInteger(t)||0>A||0>I||0>e||0>t||A>0xffffffffffff||I>4095||e>1073741823||t>4294967295)throw new RangeError("invalid field value");const o=new Uint8Array(16);return o[0]=A/Math.pow(2,40),o[1]=A/Math.pow(2,32),o[2]=A/Math.pow(2,24),o[3]=A/Math.pow(2,16),o[4]=A/256,o[5]=A,o[6]=112|I>>>8,o[7]=I,o[8]=128|e>>>24,o[9]=e>>>16,o[10]=e>>>8,o[11]=e,o[12]=t>>>24,o[13]=t>>>16,o[14]=t>>>8,o[15]=t,new Qlg(o)}toString(){let A="";for(let I=0;this.bytes.length>I;I++)A=A+(this.bytes[I]>>>4).toString(16)+(15&this.bytes[I]).toString(16),I!==3&&I!==5&&I!==7&&I!==9||(A+="-");if(A.length!==36)throw new Error("Invalid UUIDv7 was generated");return A}clone(){return new Qlg(this.bytes.slice(0))}equals(A){return this.compareTo(A)===0}compareTo(A){for(let I=0;16>I;I++){const e=this.bytes[I]-A.bytes[I];if(e!==0)return Math.sign(e)}return 0}},y0t=class{generate(){const A=this.generateOrAbort();if(!Ye(A))return A;{this.Ct=0;const I=this.generateOrAbort();if(Ye(I))throw new Error("Could not generate UUID after timestamp reset");return I}}generateOrAbort(){const A=(()=>{const I=Date.now();return Gh(I)&&isFinite(I)?Math.min(Math.max(Math.floor(I),0),0xffffffffffff):0})();if(A>this.Ct)this.Ct=A,this.It();else{if(this.Ct>=A+1e4)return;this.Mt++,this.Mt>4398046511103&&(this.Ct++,this.It())}return d0t.fromFieldsV7(this.Ct,Math.trunc(this.Mt/Math.pow(2,30)),this.Mt&Math.pow(2,30)-1,this.Tt.nextUint32())}It(){this.Mt=1024*this.Tt.nextUint32()+(1023&this.Tt.nextUint32())}constructor(){this.Ct=0,this.Mt=0,this.Tt=new u0t}};const w0t=g=>{if("u">typeof UUIDV7_DENY_WEAK_RNG&&UUIDV7_DENY_WEAK_RNG)throw new Error("no cryptographically strong RNG available");for(let A=0;g.length>A;A++)g[A]=65536*Math.trunc(65536*Math.random())+Math.trunc(65536*Math.random());return g};let sgI;var u0t=class{nextUint32(){var A;return this.Rt.length>this.Et||(((A=sgI)!==null&&A!==void 0?A:sgI="u">typeof window&&!Ye(window.crypto)&&crypto.getRandomValues?I=>crypto.getRandomValues(I):w0t)(this.Rt),this.Et=0),this.Rt[this.Et++]}constructor(){this.Rt=new Uint32Array(8),this.Et=1/0}};let agI;const UR=()=>G0t().toString(),G0t=()=>(agI||(agI=new y0t)).generate();let ogA="";const m0t=/[a-z0-9][a-z0-9-]+\.[a-z]{2,}$/i;let iq=null;const Kc={$t(){if(!Pc(iq))return iq;if(iq=!1,ro)try{const g=`__ph_cookie_support_${UR()}`;Kc.At(g,"xyz"),iq=tgA(g)==='"xyz"',Kc.Pt(g)}catch{iq=!1}return iq},Ft(g){Dt.error("cookieStore error: "+g)},Ot:tgA,Lt(g){let A;try{A=JSON.parse(Kc.Ot(g))||{}}catch{}return A},At(g,A,I,e,t){if(!ro)return!1;try{let o="",B="";const C=(function(i,E){if(E){let n=(function(s,r=ro){if(ogA)return ogA;if(!r||["localhost","127.0.0.1"].includes(s))return"";const a=s.split(".");let c=Math.min(a.length,8);const h="dmn_chk_"+UR();for(;!ogA&&c--;){const l=a.slice(c).join("."),D=h+"=1;domain=."+l+";path=/";r.cookie=D+";max-age=3",r.cookie.includes(h)&&(r.cookie=D+";max-age=0",ogA=l)}return ogA})(i);if(!n){const s=(r=>{const a=r.match(m0t);return a?a[0]:""})(i);s!==n&&Dt.info("Warning: cookie subdomain discovery mismatch",s,n),n=s}return n?"; domain=."+n:""}return""})(ro.location.hostname,e);if(I){const i=new Date;i.setTime(i.getTime()+864e5*I),o="; expires="+i.toUTCString()}t&&(B="; secure");const Q=g+"="+encodeURIComponent(JSON.stringify(A))+o+"; SameSite=Lax; path=/"+C+B;return Q.length>3686.4&&Dt.warn("cookieStore warning: large cookie, len="+Q.length),ro.cookie=Q,!0}catch{return!1}},Pt(g,A){if(ro?.cookie&&(!A||!Pc(tgA(g))))try{Kc.At(g,"",-1,A)}catch{return}}};let P6A=null;const aE={$t(){if(!Pc(P6A))return P6A;let g=!0;if(Ye(Se))g=!1;else try{const A="__mplssupport__";aE.At(A,"xyz"),aE.Ot(A)!=='"xyz"'&&(g=!1),aE.Pt(A)}catch{g=!1}return g||Dt.error("localStorage unsupported; falling back to cookie store"),P6A=g,g},Ft(g){Dt.error("localStorage error: "+g)},Ot(g){try{return Se?.localStorage.getItem(g)}catch(A){aE.Ft(A)}return null},Lt(g){try{return JSON.parse(aE.Ot(g))||{}}catch{}return null},At(g,A){try{return Se?.localStorage.setItem(g,JSON.stringify(A)),!0}catch(I){aE.Ft(I)}return!1},Pt(g){try{Se?.localStorage.removeItem(g)}catch(A){aE.Ft(A)}}},K6A=[s3,sJ,xR,o5,a3,B5,E3,XAA,aJ],Q5=[D6A,FR,Bq,OAI,f6A,Cq,oq,Um],rDA=g=>g+"_cpm",p0t=["__proto__","constructor","prototype"],L6A=g=>{if(!yC(g))return{};const A={};return Object.keys(g).forEach(I=>{p0t.indexOf(I)===-1&&(A[I]=g[I])}),A},Y6A=(g,A=[])=>{const I={};return[...Q5,...A].forEach(e=>{const t=g[e];Ye(t)||Pc(t)||t===""||(I[e]=t)}),I},rgI=g=>{let A=5381,I=2166136261;for(let e=0;g.length>e;e++){const t=g.charCodeAt(e);A=33*A^t,I=Math.imul(I^t,16777619)}return g.length.toString(36)+"."+(A>>>0).toString(36)+"."+(I>>>0).toString(36)},cgI=(g,A)=>({p:A,f:rgI(JSON.stringify(g))}),hgI=(g,A)=>{if(!A)return{properties:[],isValid:!1};try{const I=Kc.Lt(rDA(g)),e=I?.f===rgI(A)&&cB(I.p);return{properties:e?I.p:[],isValid:e}}catch{return{properties:[],isValid:!1}}},_6A=(g,A)=>A+"|"+(Kc.Ot(rDA(g))||""),Eq={},b6A={$t:()=>!0,Ft(g){Dt.error("memoryStorage error: "+g)},Ot:g=>g in Eq?Eq[g]:null,Lt:g=>g in Eq?Eq[g]:null,At:(g,A)=>(Eq[g]=A,!0),Pt(g){delete Eq[g]}};let i5=null;const ia={$t(){if(!Pc(i5))return i5;if(i5=!0,Ye(Se))i5=!1;else try{const g="__support__";ia.At(g,"xyz"),ia.Ot(g)!=='"xyz"'&&(i5=!1),ia.Pt(g)}catch{i5=!1}return i5},Ft(g){Dt.error("sessionStorage error: ",g)},Ot(g){try{return Se?.sessionStorage.getItem(g)}catch(A){ia.Ft(A)}return null},Lt(g){try{return JSON.parse(ia.Ot(g))||null}catch{}return null},At(g,A){try{return Se?.sessionStorage.setItem(g,JSON.stringify(A)),!0}catch(I){ia.Ft(I)}return!1},Pt(g){try{Se?.sessionStorage.removeItem(g)}catch(A){ia.Ft(A)}}};var k0t=class{constructor(A){this._instance=A}get Ar(){return this._instance.config}get consent(){return this.Sl()?0:this.xl}isOptedOut(){return this.Ar.cookieless_mode==="always"||this.isRejected()||this.consent===-1&&this.Ar.cookieless_mode==="on_reject"}isOptedIn(){return!this.isOptedOut()}isExplicitlyOptedOut(){return this.consent===0}isRejected(){return this.consent===0||this.consent===-1&&this.Ar.opt_out_capturing_by_default}optInOut(A){this.$l.At(this.Cl,A?1:0,this.Ar.cookie_expiration,this.Ar.cross_subdomain_cookie,this.Ar.secure_cookie)}reset(){this.$l.Pt(this.Cl,this.Ar.cross_subdomain_cookie)}get Cl(){const{token:A,opt_out_capturing_cookie_prefix:I,consent_persistence_name:e}=this._instance.config;return e||(I?I+A:"__ph_opt_in_out_"+A)}get xl(){const A=this.$l.Ot(this.Cl);return ZHA(A)?1:yB(wct,A)?0:-1}get $l(){const A=this.Ar.opt_out_capturing_persistence_type,I=A==="localStorage"?aE:Kc,e=I.$t()?I:b6A;if(!this.Tl||this.Tl!==e){this.Tl=e;const t=A==="localStorage"?Kc:aE;t.Ot(this.Cl)&&(this.Tl.Ot(this.Cl)||this.optInOut(ZHA(t.Ot(this.Cl))),t.Pt(this.Cl,this.Ar.cross_subdomain_cookie))}return this.Tl}Sl(){return!!this.Ar.respect_dnt&&[Hw?.doNotTrack,Hw?.msDoNotTrack,UB.doNotTrack,Hw?.globalPrivacyControl].some(A=>ZHA(A))}};function lgI(g,A){var I;const e=g==null||(I=g.config)===null||I===void 0?void 0:I.get_current_url;if(!C0(e))return A;try{const t=e(A);return qC(t)&&t?t:A}catch(t){return Dt.error("Error in get_current_url, falling back to window.location.href",t),A}}function DgI(g){var A;return g instanceof Element&&(g.id==="__POSTHOG_TOOLBAR__"||!!(!((A=g.closest)===null||A===void 0)&&A.call(g,".toolbar-global-fade-container")))}function JR(g){return!!g&&g.nodeType===1}function vw(g,A){return!!g&&!!g.tagName&&g.tagName.toLowerCase()===A.toLowerCase()}function dgI(g){return!!g&&g.nodeType===3}function H6A(g){return!!g&&g.nodeType===11&&JR(g.host)}function v6A(g){return g?$T(g).split(/\s+/):[]}function ygI(g,A){const I=(function(e){var t;const o=typeof window>"u"?void 0:window,B=o==null||(t=o.location)===null||t===void 0?void 0:t.href;return Ye(B)?void 0:lgI(e,B)})(A);return!!(I&&g&&g.some(e=>I.match(e)))}function nq(g){let A="";switch(typeof g.className){case"string":A=g.className;break;case"object":A=(g.className&&"baseVal"in g.className?g.className.baseVal:null)||g.getAttribute("class")||"";break;default:A=""}return v6A(A)}function wgI(g){return hC(g)?null:$T(g).split(/(\s+)/).filter(A=>aq(A)).join("").replace(/[\r\n]/g," ").replace(/[ ]+/g," ").substring(0,255)}function BgA(g){let A="";return E5(g)&&!sq(g)&&g.childNodes&&g.childNodes.length&&Gn(g.childNodes,function(I){var e;dgI(I)&&I.textContent&&(A+=(e=wgI(I.textContent))!==null&&e!==void 0?e:"")}),$T(A)}function CgA(g){var A;return Ye(g.target)?g.srcElement||null:!((A=g.target)===null||A===void 0)&&A.shadowRoot?g.composedPath()[0]||null:g.target||null}const T6A=["a","button","form","input","select","textarea","label"];function q6A(g,A){const I=g.matches||g.matchesSelector||g.msMatchesSelector||g.mozMatchesSelector||g.webkitMatchesSelector||g.oMatchesSelector;try{return!!I&&I.call(g,A)}catch{return!1}}function Z6A(g,A){if(Ye(A))return!0;for(const I of g)if(A.some(e=>q6A(I,e)))return!0;return!1}function ugI(g){const A=g.parentNode;return!(!A||!JR(A))&&A}const O6A=[".ph-no-autocapture","[data-ph-no-autocapture]"],GgI=["next","previous","prev",">","<","→","←","›","‹","»","«","▶","◀","❯","❮"],W6A=[...GgI,"+","-","−","–"],mgI=W6A.length+10,M0t=["button","a","input","select","textarea","label"],S0t=["button","link","tab","menuitem","option"],pgI=(g,A)=>/[a-z0-9]/i.test(A)?yB(W6A,A)?new RegExp(`\\b${A}\\b`).test(g):g.includes(A):g===A,f0t=g=>yB(M0t,g.tagName.toLowerCase())||yB(S0t,(g.getAttribute("role")||"").toLowerCase());function V6A(g){let A="",I="";const e=B=>{JR(B)&&E5(B)&&!sq(B)&&(A+=` ${BgA(B)}`,I=I||B.getAttribute("aria-label")||"",Gn(B.childNodes,e))};e(g),A=$T(A.replace(/\s+/g," "));const t=(aq(A)?A:"").toLowerCase(),o=g.getAttribute("aria-label")||(t?"":I);return{safeText:t,ariaLabel:$T(o).toLowerCase()}}const kgI=[".ph-no-rageclick",".ph-no-capture"],R0t=["","text","search","email","password","url","tel","number"];function MgI(g,A){if(!(!(typeof window>"u")&&window)||j6A(g))return!1;let I,e,t;var o,B;if(Fm(A)?(I=!!A&&kgI,e=void 0,t=!1):(I=(o=A?.css_selector_ignorelist)!==null&&o!==void 0?o:kgI,e=A?.content_ignorelist,t=(B=A?.ignore_text_selection)!==null&&B!==void 0&&B),I===!1||t&&(function(Q){return!(!Q||!JR(Q))&&(!!vw(Q,"textarea")||(vw(Q,"input")?yB(R0t,(Q.getAttribute("type")||"").toLowerCase()):(function(i){var E;if(i.isContentEditable)return!0;const n=(E=i.getAttribute)===null||E===void 0?void 0:E.call(i,"contenteditable");return n==="true"||n===""})(Q)))})(g))return!1;const{targetElementList:C}=SgI(g,!1);return!(e&&(function(Q,{safeText:i,ariaLabel:E}){let n;if(Q===!0)n=GgI;else{if(!cB(Q))return!1;if(Q.length>mgI)return Dt.error(`[PostHog] content_ignorelist array cannot exceed ${mgI} items. Use css_selector_ignorelist for more complex matching.`),!1;n=Q.map(s=>s.toLowerCase())}return n.some(s=>pgI(i,s)||pgI(E,s))})(e,(function(Q,i){for(const n of i)if(f0t(n))return V6A(n);for(const n of i){try{var E;if(((E=window)===null||E===void 0?void 0:E.getComputedStyle(n).getPropertyValue("cursor"))!=="pointer")break}catch{break}const s=V6A(n);if(s.safeText||s.ariaLabel)return s}return V6A(Q)})(g,C))||Z6A(C,I))}const j6A=g=>!g||vw(g,"html")||!JR(g),SgI=(g,A)=>{const I=typeof window>"u"?void 0:window;if(!I||j6A(g))return{parentIsUsefulElement:!1,targetElementList:[]};let e=!1;const t=[g];let o=g;for(;o.parentNode&&!vw(o,"body");){if(H6A(o.parentNode)){t.push(o.parentNode.host),o=o.parentNode.host;continue}const B=ugI(o);if(!B)break;if(A||T6A.indexOf(B.tagName.toLowerCase())>-1)e=!0;else try{const C=I.getComputedStyle(B);C&&C.getPropertyValue("cursor")==="pointer"&&(e=!0)}catch{}t.push(B),o=B}return{parentIsUsefulElement:e,targetElementList:t}};function E5(g){const A=new Set;let I=0;for(let o=g;o.parentNode&&!vw(o,"body");o=o.parentNode){if(I++>=1e3||A.has(o))return!1;A.add(o);const B=nq(o);if(yB(B,"ph-sensitive")||yB(B,"ph-no-capture"))return!1}if(yB(nq(g),"ph-include"))return!0;const e=g.type||"";if(qC(e))switch(e.toLowerCase()){case"hidden":case"password":return!1}const t=g.name||g.id||"";return!qC(t)||!/^cc|cardnum|ccnum|creditcard|csc|cvc|cvv|exp|pass|pwd|routing|seccode|securitycode|securitynum|socialsec|socsec|ssn/i.test(t.replace(/[^a-zA-Z0-9]/g,""))}function sq(g){return!!(vw(g,"input")&&!["button","checkbox","submit","reset"].includes(g.type)||vw(g,"select")||vw(g,"textarea")||g.getAttribute("contenteditable")==="true")}const fgI=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}))$"),RgI=/(^|[^0-9A-Za-z_])([0-9][0-9 -]*[0-9])(?=$|[^0-9A-Za-z_])/g,N0t=[16,15,14,13],x0t=new RegExp("^(\\d{3}-?\\d{2}-?\\d{4})$"),NgI=new RegExp("(^|[^0-9])((?!000|666)[0-9]{3}-?(?!00)[0-9]{2}-?(?!0000)[0-9]{4})(?=$|([^0-9]))","g"),xgI=/[0-9A-Za-z_]/;function F0t(g){let A=0,I=!1;for(let e=g.length-1;e>=0;e--){let t=g.charCodeAt(e)-48;I&&(t*=2,t>9&&(t-=9)),A+=t,I=!I}return A%10==0}function aq(g,A=!0){return!(hC(g)||qC(g)&&(g=$T(g),(A?fgI.test((g||"").replace(/[- ]/g,"")):(function(I){let e;for(RgI.lastIndex=0;e=RgI.exec(I);){const t=e[2];if(!t)continue;const o=t.replace(/[- ]/g,"");for(let B=0;o.length>B;B++)for(const C of N0t){const Q=B+C;if(o.length>=Q){const i=o.slice(B,Q);if(fgI.test(i)&&F0t(i))return!0}}}return!1})(g))||(A?x0t.test(g):(function(I){let e;for(NgI.lastIndex=0;e=NgI.exec(I);){const t=e[1],o=e[3];if(!(t&&o&&xgI.test(t)&&xgI.test(o)))return!0}return!1})(g))))}function FgI(g){let A=BgA(g);return A=`${A} ${UgI(g)}`.trim(),aq(A)?A:""}function UgI(g){let A="";return g&&g.childNodes&&g.childNodes.length&&Gn(g.childNodes,function(I){var e;if(I&&((e=I.tagName)===null||e===void 0?void 0:e.toLowerCase())==="span")try{const t=BgA(I);A=`${A} ${t}`.trim(),I.childNodes&&I.childNodes.length&&(A=`${A} ${UgI(I)}`.trim())}catch(t){Dt.error("[AutoCapture]",t)}}),A}function JgI(g){return g.replace(/"|\\"/g,'\\"')}function U0t(g){const A=g.attr__class;if(A)return cB(A)?A:v6A(A)}const cDA=zr("[Dead Clicks]"),J0t=()=>!0,P0t=g=>{var A;const I=!!(!((A=g.instance.persistence)===null||A===void 0)&&A.get_property(p6A)),e=g.instance.config.capture_dead_clicks;return Fm(e)?e:!!yC(e)||I};var PgI=class{get lazyLoadedDeadClicksAutocapture(){return this.Il}constructor(A,I,e){this.instance=A,this.isEnabled=I,this.onCapture=e,this.startIfEnabledOrStop()}onRemoteConfig(A){if(!A.ok)return;const I=A.config;"captureDeadClicks"in I&&(this.instance.persistence&&this.instance.persistence.register({[p6A]:I.captureDeadClicks}),this.startIfEnabledOrStop())}startIfEnabledOrStop(){this.isEnabled(this)?this.Ml(()=>{this.El()}):this.stop()}Ml(A){var I,e,t;!((I=UB.__PosthogExtensions__)===null||I===void 0)&&I.initDeadClicksAutocapture?A():(e=UB.__PosthogExtensions__)===null||e===void 0||(t=e.loadExternalDependency)===null||t===void 0||t.call(e,this.instance,"dead-clicks-autocapture",o=>{o?cDA.error("failed to load script",o):A()})}El(){var A;if(ro){if(!this.Il&&(!((A=UB.__PosthogExtensions__)===null||A===void 0)&&A.initDeadClicksAutocapture)){const I=yC(this.instance.config.capture_dead_clicks)?QI({},this.instance.config.capture_dead_clicks):{};I.__onCapture=this.onCapture,this.onCapture&&(I.capture_dead_swipes=!1),this.Il=UB.__PosthogExtensions__.initDeadClicksAutocapture(this.instance,I),this.Il.start(ro),cDA.info("starting...")}}else cDA.error("`document` not found. Cannot start.")}stop(){this.Il&&(this.Il.stop(),this.Il=void 0,cDA.info("stopping..."))}};const QgA=zr("[SegmentIntegration]");function KgI(g,A,I=!0){const e=g.config.segment;if(!e)return A();const{analytics:t,filterProperties:o}=(C=>C0(C.register))(B=e)?{analytics:B}:B;var B;(function(C,Q,i,E){const n=r=>{const a=()=>r.anonymousId()||UR();C.config.get_device_id=a,E&&r.id()&&(C.register({distinct_id:r.id(),$device_id:a()}),C.persistence.set_property(Um,nDA)),i(E?void 0:r.anonymousId()||void 0)},s=Q.user();"then"in s&&C0(s.then)?s.then(n):n(s)})(g,t,C=>{t.register(((Q,i,{filterProperties:E}={})=>{typeof Promise<"u"&&Promise.resolve||QgA.warn("This browser does not have Promise support, and can not use the segment integration");const n=(s,r)=>{if(!r)return s;const a=!!i&&s.event.anonymousId===i&&!s.event.userId;a||s.event.userId||s.event.anonymousId===Q.get_distinct_id()||(QgA.info("No userId set, resetting PostHog"),Q.reset()),a||(i=void 0),s.event.userId&&s.event.userId!==Q.get_distinct_id()&&(QgA.info("UserId set, identifying with PostHog"),Q.identify(s.event.userId));let c=Q.calculateEventProperties(r,s.event.properties);if(!hC(E)){const h=s.event.properties||{},l={};for(const d of Object.keys(c))THA.call(h,d)||(l[d]=c[d]);const D=((d,y)=>{const w=cB(d)?d:[d];let u=QI({},y);for(const G of w)try{if(u=G(u),hC(u))return null}catch(m){return QgA.error("Error in Segment filterProperties:",m),null}return u})(E,l);if(hC(D))return s;c=D}return s.event.properties=Object.assign({},c,s.event.properties),s};return{name:"PostHog JS",type:"enrichment",version:"1.0.0",isLoaded(){return!0},load(){return Promise.resolve()},track(s){return n(s,s.event.event)},page(s){return n(s,F6A)},identify(s){return n(s,igI)},screen(s){return n(s,"$screen")}}})(g,C,{filterProperties:o})).then(()=>{A()},Q=>{QgA.error("Failed to register the Segment integration",Q),A()})},I)}const LgI="posthog-js";function YgI(g,{organization:A,projectId:I,prefix:e,severityAllowList:t=["error"],sendExceptionsToPostHog:o=!0}={}){return B=>{var C,Q,i,E,n;if(t!=="*"&&!t.includes(B.level)||!g.__loaded)return B;B.tags||(B.tags={});const s=g.requestRouter.endpointFor("ui",`/project/${g.config.token}/person/${g.get_distinct_id()}`);B.tags["PostHog Person URL"]=s,g.sessionRecordingStarted()&&(B.tags["PostHog Recording URL"]=g.get_session_replay_url({withTimestamp:!0}));const r=((C=B.exception)===null||C===void 0?void 0:C.values)||[],a=r.map(l=>QI(QI({},l),{},{stacktrace:l.stacktrace?QI(QI({},l.stacktrace),{},{type:"raw",frames:(l.stacktrace.frames||[]).map(D=>QI(QI({},D),{},{platform:"web:javascript"}))}):void 0})),c={$exception_message:((Q=r[0])===null||Q===void 0?void 0:Q.value)||B.message,$exception_type:(i=r[0])===null||i===void 0?void 0:i.type,$exception_level:B.level,$exception_list:a,$sentry_event_id:B.event_id,$sentry_exception:B.exception,$sentry_exception_message:((E=r[0])===null||E===void 0?void 0:E.value)||B.message,$sentry_exception_type:(n=r[0])===null||n===void 0?void 0:n.type,$sentry_tags:B.tags};var h;return A&&I&&(c.$sentry_url=(e||"https://sentry.io/organizations/")+A+"/issues/?project="+I+"&query="+B.event_id),o&&((h=g.exceptions)===null||h===void 0||h.sendExceptionEvent(c)),B}}var K0t=class{constructor(A,I,e,t,o,B){this.name=LgI,this.setupOnce=function(C){C(YgI(A,{organization:I,projectId:e,prefix:t,severityAllowList:o,sendExceptionsToPostHog:B==null||B}))}}},_gI=class{constructor(A){this.Pl=(I,e,t)=>{t&&(t.noSessionId||t.activityTimeout||t.sessionPastMaximumLength||t.crossTabAdoption)&&(Dt.info("[PageViewManager] Session rotated, clearing pageview state",{sessionId:I,changeReason:t}),this.Rl=void 0,this._instance.scrollManager.resetContext())},this._instance=A,this.Al()}Al(){var A;this.Fl=(A=this._instance.sessionManager)===null||A===void 0?void 0:A.onSessionId(this.Pl)}destroy(){var A;(A=this.Fl)===null||A===void 0||A.call(this),this.Fl=void 0}doPageView(A,I){var e;const t=this.Ol(A,I);return this.Rl={pathname:(e=Se?.location.pathname)!==null&&e!==void 0?e:"",pageViewId:I,timestamp:A},this._instance.scrollManager.resetContext(),t}doPageLeave(A){var I;return this.Ol(A,(I=this.Rl)===null||I===void 0?void 0:I.pageViewId)}doEvent(){var A;return{$pageview_id:(A=this.Rl)===null||A===void 0?void 0:A.pageViewId}}Ol(A,I){const e=this.Rl;if(!e)return{$pageview_id:I};let t={$pageview_id:I,$prev_pageview_id:e.pageViewId};const o=this._instance.scrollManager.getContext();if(o&&!this._instance.config.disable_scroll_properties){let{maxScrollHeight:B,lastScrollY:C,maxScrollY:Q,maxContentHeight:i,lastContentY:E,maxContentY:n}=o;if(!(Ye(B)||Ye(C)||Ye(Q)||Ye(i)||Ye(E)||Ye(n))){B=Math.ceil(B),C=Math.ceil(C),Q=Math.ceil(Q),i=Math.ceil(i),E=Math.ceil(E),n=Math.ceil(n);const s=B>1?yx(C/B,0,1,Dt):1,r=B>1?yx(Q/B,0,1,Dt):1,a=i>1?yx(E/i,0,1,Dt):1,c=i>1?yx(n/i,0,1,Dt):1;t=sr(t,{$prev_pageview_last_scroll:C,$prev_pageview_last_scroll_percentage:s,$prev_pageview_max_scroll:Q,$prev_pageview_max_scroll_percentage:r,$prev_pageview_last_content:E,$prev_pageview_last_content_percentage:a,$prev_pageview_max_content:n,$prev_pageview_max_content_percentage:c})}}return e.pathname&&(t.$prev_pageview_pathname=e.pathname),e.timestamp&&(t.$prev_pageview_duration=(A.getTime()-e.timestamp.getTime())/1e3),t}};const igA=["flags","surveys"],L0t={[Vht]:{exposure:"hidden"},[EDA]:{exposure:"hidden"},[jht]:{exposure:"hidden"},[y6A]:{exposure:"hidden"},[oq]:{exposure:"hidden"},[IgA]:{exposure:"hidden"},[bAI]:{exposure:"event"},[w6A]:{exposure:"hidden"},[qAI]:{exposure:"hidden"},[u6A]:{exposure:"event"},[TAI]:{exposure:"hidden"},[G6A]:{exposure:"event"},[m6A]:{exposure:"event"},[p6A]:{exposure:"event"},[k6A]:{exposure:"hidden"},[ZAI]:{exposure:"event"},[egA]:{exposure:"hidden"},[zht]:{exposure:"hidden"},[Bq]:{exposure:"hidden"},[OAI]:{exposure:"event"},[Xht]:{exposure:"event",shouldSkipFromEventProperties:g=>Pc(g)},[e0t]:{exposure:"event"},[t0t]:{exposure:"event"},[o0t]:{exposure:"event"},[B0t]:{exposure:"event"},[C0t]:{exposure:"hidden"},[xR]:{exposure:"hidden",storageGroup:"flags"},[sJ]:{exposure:"hidden",storageGroup:"flags"},[c6A]:{exposure:"hidden"},[o5]:{exposure:"hidden",storageGroup:"flags"},[a3]:{exposure:"hidden",storageGroup:"flags"},[B5]:{exposure:"hidden",storageGroup:"flags",volatile:!0},[$AA]:{exposure:"hidden",storageGroup:"flags"},[wx]:{exposure:"hidden"},[C5]:{exposure:"hidden"},[s3]:{exposure:"hidden"},[n3]:{exposure:"hidden"},[ggA]:{exposure:"hidden",storageGroup:"surveys"},[CDA]:{exposure:"hidden",storageGroup:"surveys",volatile:!0},[l6A]:{exposure:"event"},[QDA]:{exposure:"hidden"},[iDA]:{exposure:"hidden"},[M6A]:{exposure:"hidden"},[Q0t]:{exposure:"hidden"},[i0t]:{exposure:"hidden"},[E0t]:{exposure:"event"},[n0t]:{exposure:"event"},[s0t]:{exposure:"event"},[a0t]:{exposure:"event"},[aJ]:{exposure:"hidden"},[AgA]:{exposure:"hidden"},[WAI]:{exposure:"event"},[XAA]:{exposure:"hidden"},[E3]:{exposure:"hidden",storageGroup:"flags",volatile:!0},[Um]:{exposure:"hidden"},[S6A]:{exposure:"hidden"},[r0t]:{exposure:"hidden"},[VAI]:{exposure:"hidden"},[jAI]:{exposure:"hidden"},[Cq]:{exposure:"hidden"},[f6A]:{exposure:"hidden"},[$ht]:{exposure:"event"},[A0t]:{exposure:"event"},[g0t]:{exposure:"event"},[I0t]:{exposure:"event"},[XAI]:{exposure:"event"},[$AI]:{exposure:"event"},[N6A]:{exposure:"hidden"},[x6A]:{exposure:"hidden"},[AgI]:{exposure:"hidden"},[ggI]:{exposure:"hidden"},[IgI]:{exposure:"hidden"},[egI]:{exposure:"hidden"},[tgI]:{exposure:"hidden"},[ogI]:{exposure:"hidden"},[BgI]:{exposure:"hidden"},[c0t]:{exposure:"event"}},Y0t=[["$posthog_sr_group_event_trigger_",{exposure:"hidden"}],["$posthog_sr_group_url_trigger_",{exposure:"hidden"}],["$posthog_sr_group_sampling_",{exposure:"hidden"}]],Ry=g=>{const A=L0t[g];if(A)return A;for(const[I,e]of Y0t)if(g.indexOf(I)===0)return e};function bgI(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{return}}const cJ=g=>{const A=typeof document>"u"?void 0:document,I=A?.createElement("a");return Ye(I)?null:(I.href=g,I)},HgI=()=>{try{return"u">typeof window&&window.navigator.onLine!==!1}catch{return!1}},vgI=(g,A)=>g>=A&&HgI(),TgI=(g,A,I,e)=>{if(g===0){if(HgI()){const t=A+1;return t===I&&e(),t}return A}return 0},rq=(g,A)=>{try{let I;return JSON.stringify(g,(e,t)=>{var o;return Aq(t)?((o=I)!==null&&o!==void 0||(I=new WeakMap),I.has(t)||I.set(t,ngI(t)),I.get(t)):typeof t=="bigint"?t.toString():t},A)}catch{return s$g(g)}},cq=function(g,A){const I=((g.split("#")[0]||"").split(/\?(.*)/)[1]||"").replace(/^\?+/g,"").split("&");let e;for(let t=0;I.length>t;t++){const o=I[t].split("=");if(o[0]===A){e=o;break}}if(!cB(e)||2>e.length)return"";{let t=e[1];try{t=decodeURIComponent(t)}catch{Dt.error("Skipping decoding for malformed query param: "+t)}return t.replace(/\+/g," ")}},EgA=function(g,A,I){if(!g||!A||!A.length)return g;const e=g.split("#"),t=e[1],o=(e[0]||"").split("?"),B=o[1],C=o[0],Q=(B||"").split("&"),i=[];for(let n=0;Q.length>n;n++){const s=Q[n].split("=");cB(s)&&(A.includes(s[0])?i.push(s[0]+"="+I):i.push(Q[n]))}let E=C;return B!=null&&(E+="?"+i.join("&")),t!=null&&(E+="#"+t),E},hDA=function(g,A){const I=g.match(new RegExp(A+"=([^&]*)"));return I?I[1]:null},hq=["gclid","gclsrc","dclid","gbraid","wbraid","fbclid","msclkid","twclid","li_fat_id","igshid","ttclid","rdt_cid","epik","qclid","sccid","oppref","bfcid","irclid","_kx"],_0t=["utm_source","utm_medium","utm_campaign","utm_content","utm_term","gad_source","mc_cid",...hq],ngA="<masked>",b0t=["li_fat_id"];function qgI(g,A,I){if(!ro)return{};const e=A?[...hq,...I||[]]:[],t=ZgI(EgA(ro.URL,e,ngA),g),o=(function(){const B={};return Gn(b0t,function(C){const Q=tgA(C);B[C]=Q||null}),B})();return sr(o,t)}function ZgI(g,A){const I=_0t.concat(A||[]),e={};return Gn(I,function(t){const o=cq(g,t);e[t]=o||null}),e}function OgI(g){const A=(function(t){return t?t.search("https?://(.*)google.([^/?]*)")===0?"google":t.search("https?://(.*)bing.com")===0?"bing":t.search("https?://(.*)yahoo.com")===0?"yahoo":t.search("https?://(.*)duckduckgo.com")===0?"duckduckgo":null:null})(g),I=A!="yahoo"?"q":"p",e={};if(!Pc(A)){e.$search_engine=A;const t=ro?cq(ro.referrer,I):"";t.length&&(e.ph_keyword=t)}return e}function WgI(){return navigator.language||navigator.userLanguage}function H0t(){const g=WgI();return typeof g=="string"?g.split("-")[0]:void 0}const lDA="$direct";function VgI(){return ro?.referrer||lDA}function jgI(g,A,I=!1){const e=g?[...hq,...A||[]]:[],t=I?i3(Ca?.href):Ca?.href,o=t?.substring(0,1e3);return{r:VgI().substring(0,1e3),u:o?EgA(o,e,ngA):void 0}}function zgI(g,A=!1){var I;const{r:e,u:t}=g,o=A?i3(t):t,B={$referrer:e,$referring_domain:e==null?void 0:e==lDA?lDA:(I=cJ(e))===null||I===void 0?void 0:I.host};if(o){B.$current_url=o;const C=cJ(o);B.$host=C?.host,B.$pathname=C?.pathname;const Q=ZgI(o);sr(B,Q)}if(e){const C=OgI(e);sr(B,C)}return B}function v0t(){try{return new Date().getTimezoneOffset()}catch{return}}const T0t={flags:E3,surveys:CDA},q0t=["cookie","localstorage","localstorage+cookie","sessionstorage","memory"],DDA=g=>`${g}_cookie_identity_change_pending`,dDA=g=>{let A="",I=0;for(const e of g){const t=encodeURIComponent(JSON.stringify(e).slice(1,-1)).length;if(I+t>1e3)break;A+=e,I+=t}return A},SD="main",hJ=[xR,sJ,o5,a3,B5,E3,$AA,s3],z6A=g=>hJ.indexOf(g)!==-1,XgI=[oq,IgA],$gI=g=>XgI.indexOf(g)!==-1,r3=(g,A)=>{try{return JSON.stringify(g)===JSON.stringify(A)}catch{return g===A}},lq=g=>{if(!g)return{};const A=JSON.parse(g);return yC(A)?A:{}},AII=(g,A)=>{Gn(g,(I,e)=>{const t=Ry(e);t&&t.exposure!=="event"||{}.hasOwnProperty.call(A,e)||delete g[e]})};var X6A=class{constructor(A,I,e=!0,t=!A.cookieless_mode){if(this.Dl={},this.Ll=!1,this.Nl=!1,this.ql=!1,this.jl=!1,this.Bl=!1,this.zl=new Map,this.Hl=!1,this.Ul=!1,this.Wl=!1,this.Vl=new Set,this.Gl=new Set,this.Ar=A,this.Ql=e,this.props={},this.Zl=void 0,this.Jl=(o=>{let B="";return o.token&&(B=o.token.replace(/\+/g,"PL").replace(/\//g,"SL").replace(/=/g,"EQ")),o.persistence_name?"ph_"+o.persistence_name:"ph_"+B+"_posthog"})(A),this.hi=A.disable_persistence||!!I,this.$l=this.Kl(A),this.ql=this.Xl(A),this.load(t),this.Yl(),A.debug&&Dt.info("Persistence loaded",A.persistence,QI({},this.props)),this.update_config(A,A,I),this.save(),Se){const o=()=>this.flush();NE(Se,"beforeunload",o,{capture:!1}),NE(Se,"pagehide",o,{capture:!1}),this.tu=B=>{if(this.Ll&&(!B.storageArea||B.storageArea===Se?.localStorage)&&B.key)if(B.key!==this.Jl){if(this.ql){const C=igA.find(Q=>B.key===this.eu(Q));C&&this.iu(B.key,C)}}else this.iu(B.key,SD)},NE(Se,"storage",this.tu)}}markCrossTabFeatureFlagChanges(A){Object.entries(A).forEach(([I,e])=>{const t=this.zl.get(I);if(!z6A(I)||t===!0)return;if(e===!0)return void this.nu(I,!0);const o=new Set(t||[]);e.forEach(B=>o.add(B)),o.size&&this.nu(I,o)})}onCrossTabFeatureFlagChange(A){return this.Gl.add(A),()=>this.Gl.delete(A)}destroy(){this.tu&&Se&&(Se.removeEventListener("storage",this.tu),this.tu=void 0),this.Gl.clear()}iu(A,I,e=!0){if(this.hi)return!1;let t,o;try{if(o=aE.Ot(A),Pc(o)){const Q=this.su(I);return Q.storageValue=null,I!==SD&&(Q.persisted=!1),!1}t=lq(o)}catch{return!1}const B=I===SD?t:aE.Lt(this.Jl);if(B&&this.ru(B))return!1;const C=this.ou(t,I,e);return I===SD&&this.ql&&!r3(this.au().main,t)||this.lu(t,I,!0,o),C}ru(A){const I=this.props[FR],e=A[FR];return!Ye(I)&&!Ye(e)&&I!==e}lu(A,I,e,t){const o=this.su(I);o.storageValue=t,I!==SD&&(o.persisted=e);try{o.fingerprint=this.uu(A,I)}catch{o.fingerprint=void 0}}ou(A,I,e){let t=!1;return hJ.forEach(o=>{var B;const C=(B=Ry(o))===null||B===void 0?void 0:B.storageGroup;if(I===SD&&this.ql&&C||I!==SD&&C!==I)return;const Q=o in A,i=this.cu(o,Q?A[o]:void 0),E=this.zl.has(o)?o in this.props:Q;E===o in this.props&&r3(i,this.props[o])||(E?this.hu(o,i,!1):this.du(o,!1),t=!0)}),t&&e&&this.Gl.forEach(o=>o()),t}vu(){if(!this.Ll)return!1;try{this.Wl=!1;const A=aE.Ot(this.Jl),I=this.su(SD);let e,t=!1,o=!1;if(A!==I.storageValue)if(Pc(A))I.storageValue=null;else{if(e=lq(A),this.Wl=!this.Ul&&this.ru(e),this.Wl)return!1;o=this.ou(e,SD,!1),!this.ql||r3(this.au().main,e)?this.lu(e,SD,!0,A):I.storageValue=A,t=!0}return this.ql&&igA.forEach(B=>{const C=aE.Ot(this.eu(B)),Q=this.su(B),i=e||{},E=t&&hJ.some(s=>{var r;return((r=Ry(s))===null||r===void 0?void 0:r.storageGroup)===B&&s in i});if(C===Q.storageValue&&!E)return;if(Pc(C))return Q.storageValue=null,Q.persisted=!1,void(E&&(o=this.ou(i,B,!1)||o));const n=lq(C);o=this.ou(n,B,!1)||o,this.lu(n,B,!0,C)}),o}catch{return!1}}nu(A,I){this.zl.set(A,I);const e=Ry(A);e?.volatile||(this.su((this.ql?e?.storageGroup:void 0)||SD).fingerprint=void 0,this.fu(A))}pu(){hJ.forEach(A=>this.zl.set(A,!0))}Yl(){if(this.Ll)try{const A=aE.Ot(this.Jl),I=lq(A);this.su(SD).storageValue=A,hJ.forEach(e=>{var t;const o=this.ql?(t=Ry(e))===null||t===void 0?void 0:t.storageGroup:void 0,B=o?aE.Ot(this.eu(o)):null;if(o){const Q=this.su(o);Q.storageValue=B,Q.persisted=!Pc(B)}const C=o&&!Pc(B)?lq(B):I;e in this.props?this.gu(e,C[e],this.props[e]):e in C&&this.nu(e,!0)})}catch{}}cu(A,I){const e=this.zl.get(A);if(!e)return I;if(e===!0)return this.props[A];if(A==="$active_feature_flags"){const B=new Set(cB(I)?I:[]),C=new Set(cB(this.props[A])?this.props[A]:[]);return e.forEach(Q=>C.has(Q)?B.add(Q):B.delete(Q)),Array.from(B)}const t=yC(I)?QI({},I):{},o=yC(this.props[A])?this.props[A]:{};return e.forEach(B=>{B in o?t[B]=o[B]:delete t[B]}),t}gu(A,I,e){if(!z6A(A))return;const t=this.zl.get(A);if(t===!0)return;let o=I;if(this.Ll)try{var B;const Q=this.ql?(B=Ry(A))===null||B===void 0?void 0:B.storageGroup:void 0,i=Q?this.eu(Q):this.Jl;o=lq(aE.Ot(i))[A]}catch{}const C=new Set(t||[]);if(A==="$active_feature_flags"){if(!Ye(I)&&!cB(I)||!Ye(o)&&!cB(o)||!cB(e))return void this.nu(A,!0);const Q=new Set(I||[]),i=new Set(o||[]),E=new Set(e);new Set([...Q,...E]).forEach(n=>{Q.has(n)!==E.has(n)&&C.add(n)}),C.forEach(n=>{i.has(n)===E.has(n)&&C.delete(n)})}else{if(!yC(e))return void(r3(o,e)?this.zl.delete(A):this.nu(A,!0));{if(!Ye(I)&&!yC(I)||Ye(I)&&sk(e)&&Ye(o))return void this.nu(A,!0);const Q=yC(I)?I:{},i=yC(o)?o:{};new Set([...Object.keys(Q),...Object.keys(e)]).forEach(E=>{E in Q==E in e&&r3(Q[E],e[E])||C.add(E)}),C.forEach(E=>{E in i==E in e&&r3(i[E],e[E])&&C.delete(E)})}}C.size?this.nu(A,C):this.zl.delete(A)}mu(){var A;const I=(A=this.Ar)===null||A===void 0?void 0:A.persistence_save_debounce_ms;return Gh(I)&&I>0?I:0}yu(A){if(this.Ar.cookieWinsOnConflict&&this.Ar.persistence.toLowerCase()==="localstorage+cookie")if(A)try{const I=Y6A(A,this.Ar.cookie_persisted_properties||[]),e=cgI(I,this.Ar.cookie_persisted_properties||[]),t=JSON.stringify(I)+"|"+JSON.stringify(e),o=Kc.Ot(this.Jl)||void 0;o&&_6A(this.Jl,o)===t&&(this.bu=t,this._u=o)}catch{}else try{const I=Kc.Ot(this.Jl)||void 0;this.bu=I?_6A(this.Jl,I):void 0,this._u=I}catch{}}syncCookieProperties(){return this.wu(this.Ar)}wu(A,I=!1){if(this.hi&&!I||this.Bl||!A.cookieWinsOnConflict||A.persistence.toLowerCase()!=="localstorage+cookie")return!1;let e;try{e=Kc.Ot(this.Jl)||void 0}catch{}if(!e||e===this._u)return!1;const t=_6A(this.Jl,e);let o;try{o=L6A(JSON.parse(e))}catch{return!1}if((Kc.Ot(this.Jl)||void 0)!==e)return!1;this.bu=t,this._u=e;const B=hgI(this.Jl,e),C=[...Q5,...B.properties],Q={};if(Object.keys(o).forEach(h=>{const l=o[h];(Ye(l)||Pc(l)||l===""||h==="$user_state"&&l!=="anonymous"&&l!=="identified")&&(Q[h]=!0,delete o[h])}),sk(o))return!1;const i="distinct_id"in o||o.$user_state==="anonymous"||o.$user_state==="identified",E=this.props,n=E[FR],s=E[Um],r=sr({},E);[...Q5,...A.cookie_persisted_properties||[]].forEach(h=>{if(C.indexOf(h)!==-1&&!(h in o)&&!Q[h]&&(i||h!=="distinct_id"&&h!=="$user_state")){const l=r[h];(B.isValid||Q5.indexOf(h)===-1||l!==!1&&l!==0)&&delete r[h]}}),this.props=sr(r,o),hJ.forEach(h=>{const l=h in this.props;h in E===l&&r3(E[h],this.props[h])||(l?this.gu(h,E[h],this.props[h]):this.nu(h,!0))}),!i||"$user_state"in o||"$user_state"in this.props||this.hu(Um,rJ);const a=this.props[FR],c=this.props[Um];return!i||a===n&&c===s||(this.Ul=!0,this.jl=!0,ia.At(DDA(this.Jl),!0),this.du(s3),this.du(sJ),this.du(xR),this.du(o5),this.du(a3),this.du(B5),this.du(E3),this.du(XAA),this.du(aJ),c!=="anonymous"||s!=="identified"&&o.$user_state!=="anonymous"&&(Ye(n)||a===n)||(AII(this.props,o),this.du(n3)),c==="identified"?this.props.$user_id=a:delete this.props.$user_id,this.du(EDA)),!0}consumeCookieIdentityChange(){const A=DDA(this.Jl),I=this.jl||!!ia.Ot(A);return this.jl=!1,I&&ia.Pt(A),I}ku(A=!1){return!(this.Bl||this.hi&&!A||!this.Ar.cookieWinsOnConflict||this.Ar.persistence.toLowerCase()!=="localstorage+cookie"||(this.Bl=!0,0))}Su(){this.Bl&&(Ye(this.xu)||(clearTimeout(this.xu),this.xu=void 0),delete this.Dl[SD],this.$u(!0))}Cu(A=!0){if(this.Bl)try{A?this.Su():Ye(this.xu)||(clearTimeout(this.xu),this.xu=void 0)}finally{this.Bl=!1}}isDisabled(){return!!this.hi}Kl(A){q0t.indexOf(A.persistence.toLowerCase())===-1&&(Dt.critical("Unknown persistence type "+A.persistence+"; falling back to localStorage+cookie"),A.persistence="localStorage+cookie");const I=((C=[],Q=!1,i=()=>!1)=>{const E=[...Q5,...C];return QI(QI({},aE),{},{Lt(n){try{let r,a={};try{r=Kc.Ot(n)||void 0,a=r?L6A(JSON.parse(r)):{}}catch{}const c=JSON.parse(aE.Ot(n)||"{}");let h;if(Q){const l=hgI(n,r),D=[...Q5,...l.properties],d={};Object.keys(a).forEach(w=>{const u=a[w];Pc(u)||u===""||w==="$user_state"&&u!=="anonymous"&&u!=="identified"||(d[w]=u)});const y="distinct_id"in d||d.$user_state==="anonymous"||d.$user_state==="identified";if(Object.keys(d).length>0){var s;const w=c[FR],u=(s=c.$user_state)!==null&&s!==void 0?s:rJ;E.forEach(G=>{if(D.indexOf(G)!==-1&&!(G in a)&&(y||G!=="distinct_id"&&G!=="$user_state")){const m=c[G];(l.isValid||Q5.indexOf(G)===-1||m!==!1&&m!==0)&&delete c[G]}}),!y||"$user_state"in a||"$user_state"in c||(c[Um]=rJ),!y||("distinct_id"in d?d[FR]:c[FR])===w&&("$user_state"in d?d[Um]:c[Um])===u||(K6A.forEach(G=>delete c[G]),d.$user_state==="identified"&&"distinct_id"in d?c.$user_id=d[FR]:delete c.$user_id,d.$user_state!=="identified"&&(delete c[WAI],delete c[n3]),delete c.__alias)}h=sr(c,d)}else h=sr(a,c);return i()||aE.At(n,h),h}catch{}return null},At(n,s,r,a,c,h){const l=aE.At(n,s,void 0,void 0,h);try{const D=Y6A(s,C);if(Object.keys(D).length){if(Q){const d=rDA(n),y=cgI(D,C);if(Kc.At(d,y,r,a,c,h),Kc.Ot(d)!==JSON.stringify(y)){Kc.Pt(d,a);const w=Y6A(s);return Kc.At(n,w,r,a,c,h),l}}Kc.At(n,D,r,a,c,h)}}catch(D){aE.Ft(D)}return l},Pt(n,s){try{Se?.localStorage.removeItem(n),Kc.Pt(n,s),Kc.Pt(rDA(n),s)}catch(r){aE.Ft(r)}}})})(A.cookie_persisted_properties||[],A.cookieWinsOnConflict,()=>!!this.hi);let e,t=!1,o=!1;const B=A.persistence.toLowerCase();return B==="localstorage"&&aE.$t()?(e=aE,o=!0):B==="localstorage+cookie"&&I.$t()?(e=I,o=!0,t=!0):B==="sessionstorage"&&ia.$t()?e=ia:B==="memory"?e=b6A:B==="cookie"&&Kc.$t()?(e=Kc,t=!0):I.$t()?(e=I,o=!0,t=!0):Kc.$t()?(e=Kc,t=!0):e=b6A,this.Ll=o,this.Nl=t,e}eu(A){return`${this.Jl}__${A}`}Xl(A){return this.Ll&&!!A.split_storage}properties(){const A={};return Gn(this.props,(I,e)=>{const t=Ry(e);if(!t||t.exposure==="event"){var o;if(!(t==null||(o=t.shouldSkipFromEventProperties)===null||o===void 0)&&o.call(t,I))return;A[e]=I}}),A}load(A=!1){if(this.hi&&!A)return;const I=this.Ar.cookieWinsOnConflict&&this.Ar.persistence.toLowerCase()==="localstorage+cookie",e=I?aE.Lt(this.Jl):null;let t={};if(I)try{t=L6A(Kc.Lt(this.Jl)),Gn(t,(Q,i)=>{(Ye(Q)||Pc(Q)||Q==="")&&delete t[i]})}catch{}const o=this.$l.Lt(this.Jl);if(o&&(this.props=sr({},o)),this.ql&&this.Tu(),I&&o){var B,C;const Q=e?.[FR],i=(B=e?.$user_state)!==null&&B!==void 0?B:rJ,E=o[FR],n=(C=o.$user_state)!==null&&C!==void 0?C:rJ;if(E!==Q||n!==i){this.jl=!0,this.hi||ia.At(DDA(this.Jl),!0);const s=sr({},this.props);K6A.forEach(a=>delete s[a]),n!=="anonymous"||i!=="identified"&&t.$user_state!=="anonymous"&&(Ye(Q)||E===Q)||(AII(s,t),delete s[n3]),this.props=s;const r=new Set;K6A.forEach(a=>{var c;const h=(c=Ry(a))===null||c===void 0?void 0:c.storageGroup;h&&r.add(h)}),r.forEach(a=>{if(this.hi)return;const c={};Gn(this.props,(h,l)=>{var D;((D=Ry(l))===null||D===void 0?void 0:D.storageGroup)===a&&(c[l]=h)}),sk(c)?(aE.Pt(this.eu(a)),this.Dl[a]={}):aE.At(this.eu(a),c)&&(this.Dl[a]={persisted:!0,fingerprint:this.uu(c,a)})})}}ia.Ot(DDA(this.Jl))&&(this.jl=!0)}Tu(){for(const A of igA){const I=aE.Lt(this.eu(A));if(I&&!sk(I)){const e=this.su(A);e.persisted=!0,this.Iu(A)||(e.fingerprint=this.uu(I,A)),this.Mu(A,I)||sr(this.props,I)}}}Iu(A){return Object.keys(this.props).some(I=>{var e;return((e=Ry(I))===null||e===void 0?void 0:e.storageGroup)===A})}Mu(A,I){const e=T0t[A];if(!e)return!1;const t=I[e],o=this.props[e];return Gh(t)&&Gh(o)&&o>t}refreshKey(A){var I;if(this.hi||this.Vl.has(A))return;const e=this.ql?(I=Ry(A))===null||I===void 0?void 0:I.storageGroup:void 0,t=e?aE.Lt(this.eu(e)):this.$l.Lt(this.Jl);if(t&&A in t)this.hu(A,t[A],!1);else{if(e){const o=this.$l.Lt(this.Jl);if(o&&A in o)return void this.hu(A,o[A],!1)}this.du(A,!1)}}save(){if(this.hi)return;const A=this.mu();A>0?Ye(this.xu)&&(this.xu=setTimeout(()=>{this.xu=void 0,this.$u()},A)):this.$u()}flush(){Ye(this.xu)||(clearTimeout(this.xu),this.xu=void 0,this.$u())}$u(A=!1){if(this.hi||this.Bl&&!A)return;A||(this.syncCookieProperties(),this.Ar.cookieWinsOnConflict&&this.Ar.persistence.toLowerCase()==="localstorage+cookie"||XgI.forEach(o=>this.refreshKey(o)));const I=!A&&!this.Hl;I||(this.Wl=!1);const e=!!I&&this.vu();if(this.Wl)return void(this.Ar.debug&&Dt.warn("skipping persistence write because storage belongs to a different distinct ID"));if(this.ql)return this.Eu(),void(e&&this.Gl.forEach(o=>o()));const t=this.Pu(this.$l,this.Jl,this.props,SD);t==="written"&&this.yu(this.props),t!=="failed"&&(this.zl.clear(),this.Ul=!1,this.Vl.clear()),e&&this.Gl.forEach(o=>o())}Eu(){const{main:A,groups:I}=this.au(),e=this.Pu(this.$l,this.Jl,A,SD);e==="written"&&this.yu(A),e!=="failed"&&(this.Ul=!1,this.Vl.clear(),hJ.forEach(o=>{var B;!((B=Ry(o))===null||B===void 0)&&B.storageGroup||this.zl.delete(o)}));for(const o of igA){var t;const B=I[o];if(sk(B)&&!(!((t=this.Dl[o])===null||t===void 0)&&t.persisted)){hJ.forEach(Q=>{var i;((i=Ry(Q))===null||i===void 0?void 0:i.storageGroup)===o&&this.zl.delete(Q)});continue}const C=this.Pu(aE,this.eu(o),B,o);C!=="failed"&&hJ.forEach(Q=>{const i=Ry(Q);i?.storageGroup!==o||C!=="written"&&i.volatile||this.zl.delete(Q)})}}au(){const A={},I={flags:{},surveys:{}};return Gn(this.props,(e,t)=>{var o;const B=(o=Ry(t))===null||o===void 0?void 0:o.storageGroup;B?I[B][t]=e:A[t]=e}),{main:A,groups:I}}uu(A,I){if(I===SD)return JSON.stringify(A)+"|"+this.Ru+"|"+this.Au+"|"+this.Fu;const e={};return Gn(A,(t,o)=>{var B;e[o]=!((B=Ry(o))===null||B===void 0)&&B.volatile?"__volatile__":t}),JSON.stringify(e)}Pu(A,I,e,t){const o=this.su(t);if(t!==SD&&!o.dirty&&!Ye(o.fingerprint))return"skipped";let B;try{if(B=this.uu(e,t),B===o.fingerprint)return o.dirty=!1,"skipped"}catch{B=void 0}return A.At(I,e,this.Ru,this.Au,this.Fu,this.Ar.debug)?(o.dirty=!1,t!==SD&&(o.persisted=!0),Ye(B)||(o.fingerprint=B),this.Ll&&(o.storageValue=aE.Ot(I)),"written"):(this.Ar.debug&&Dt.warn(`failed to persist storage entry "${I}"; will retry on next save`),"failed")}remove({keepGroupEntries:A=!1}={}){if(this.pu(),Ye(this.xu)||(clearTimeout(this.xu),this.xu=void 0),this.$l.Pt(this.Jl,!1),this.$l.Pt(this.Jl,!0),!A&&this.Ql)for(const I of igA)aE.Pt(this.eu(I));A?delete this.Dl[SD]:this.Dl={},this.bu=void 0,this._u=void 0}clear(){this.remove(),this.props={}}register_once(A,I,e){if(yC(A)){this.syncCookieProperties(),Ye(I)&&(I="None"),this.Ru=Ye(e)?this.Ou:e;let t=!1;if(Gn(A,(o,B)=>{this.props.hasOwnProperty(B)&&this.props[B]!==I||(this.hu(B,o),t=!0)}),t)return this.save(),!0}return!1}register(A,I){if(yC(A)){this.syncCookieProperties(),this.Ru=Ye(I)?this.Ou:I;let e=!1;if(Gn(A,(t,o)=>{A.hasOwnProperty(o)&&(this.props[o]!==t||yC(t)||cB(t))&&(this.hu(o,t),e=!0)}),e)return this.save(),!0}return!1}unregister(A){this.syncCookieProperties();const I=typeof A=="string"?[A]:A;let e=!1;for(const t of I)t in this.props&&(this.du(t),e=!0);e&&this.save()}update_campaign_params(){const A=ro?.URL;if(A===this.Zl)return;const I=qgI(this.Ar.custom_campaign_params,this.Ar.mask_personal_data_properties,this.Ar.custom_personal_data_properties),e=!sk(U6A(I));return e&&this.register(I),this.Zl=A,e?I:void 0}update_search_keyword(){this.register((function(){const A=ro?.referrer;return A?OgI(A):{}})())}update_referrer_info(){var A;this.register_once({$referrer:VgI(),$referring_domain:ro?.referrer&&((A=cJ(ro.referrer))===null||A===void 0?void 0:A.host)||lDA},void 0)}set_initial_person_info(){if(this.props.$initial_campaign_params||this.props.$initial_referrer_info)return;const A=jgI(this.Ar.mask_personal_data_properties,this.Ar.custom_personal_data_properties,this.Ar.disable_capture_url_hashes);this.register_once({[Cq]:this.Nl?{r:dDA(A.r),u:A.u?dDA(A.u):void 0}:A},void 0)}get_initial_props(){const A={};Gn([jAI,VAI],e=>{const t=this.props[e];t&&Gn(t,function(o,B){A["$initial_"+vHA(B)]=o})});const I=this.props[Cq];if(I){const e=(function(t,o=!1){const B=zgI(t,o),C={};return Gn(B,function(Q,i){C[`$initial_${vHA(i)}`]=Q}),C})(I,this.Ar.disable_capture_url_hashes);sr(A,e)}return A}safe_merge(A){return Gn(this.props,function(I,e){e in A||(A[e]=I)}),A}update_config(A,I,e){const t=A.persistence!==I.persistence,o=!((a,c)=>{if(a.length!==c.length)return!1;const h=[...a].sort(),l=[...c].sort();return h.every((D,d)=>D===l[d])})(A.cookie_persisted_properties||[],I.cookie_persisted_properties||[]),B=t||o,C=A.cookieWinsOnConflict!==I.cookieWinsOnConflict,Q=A.disable_persistence||!!e,i=!!this.hi&&!Q;Q||this.wu(I,i),this.Ar=A,!Q&&(t||o||C)&&(this.bu=void 0,this._u=void 0,this.wu(QI(QI({},A),{},{cookie_persisted_properties:I.cookie_persisted_properties}),i));const E=B||C?this.Kl(A):this.$l;this.Du();const n=this.Xl(A),s=B||n!==this.ql,r=!Q&&(s||A.cross_subdomain_cookie!==this.Au||A.secure_cookie!==this.Fu)&&this.ku(i);this.Hl=s;try{if(this.Ou=this.Ru=A.cookie_expiration,this.set_disabled(Q),this.set_cross_subdomain(A.cross_subdomain_cookie),this.set_secure(A.secure_cookie),s){const a=this.props;this.clear(),this.$l=E,this.ql=n,this.props=a,this.save()}else C&&(this.$l=E,Q||(delete this.Dl[SD],this.$u()))}finally{this.Hl=!1,r&&this.Cu()}}Du(){const A=this.props[Cq];if(!this.Nl||!yC(A)||typeof A.r!="string")return;const I=dDA(A.r),e=typeof A.u=="string"?dDA(A.u):A.u;I===A.r&&e===A.u||this.hu(Cq,QI(QI({},A),{},{r:I,u:e}))}set_disabled(A){this.hi=A,this.hi?this.remove():this.save()}set_cross_subdomain(A){A!==this.Au&&(this.Au=A,this.remove({keepGroupEntries:!0}),this.save())}set_secure(A){A!==this.Fu&&(this.Fu=A,this.remove({keepGroupEntries:!0}),this.save())}set_event_timer(A,I){const e=this.props.__timers||{};e[A]=I,this.hu(y6A,e),this.save()}remove_event_timer(A){const I=this.props.__timers||{},e=I[A];return Ye(e)||(delete I[A],this.hu(y6A,I),this.save()),e}get_property(A){return this.props[A]}set_property(A,I){this.hu(A,I),this.save()}hu(A,I,e=!0){var t;const o=this.props[A];this.props[A]=I,e&&(A!=="distinct_id"&&A!=="$user_state"||o===I||(this.Ul=!0),$gI(A)&&!r3(o,I)&&this.Vl.add(A),this.gu(A,o,I),!((t=Ry(A))===null||t===void 0)&&t.volatile||this.fu(A))}du(A,I=!0){delete this.props[A],I&&(z6A(A)&&this.nu(A,!0),$gI(A)&&this.Vl.add(A),this.fu(A))}fu(A){var I;const e=(I=Ry(A))===null||I===void 0?void 0:I.storageGroup;e&&(this.su(e).dirty=!0)}su(A){return this.Dl[A]||(this.Dl[A]={})}};const $M={GZipJS:"gzip-js",Base64:"base64"},sgA={Activation:"events",Cancellation:"cancelEvents"},$6A={Popover:"popover",API:"api",Widget:"widget"},AS={SHOWN:"survey shown",DISMISSED:"survey dismissed",SENT:"survey sent"},AvA={SURVEY_ID:"$survey_id",SURVEY_ITERATION:"$survey_iteration",SURVEY_LAST_SEEN_DATE:"$survey_last_seen_date"},gvA={Popover:"popover",Inline:"inline"};function yDA(g){let A=!0;return{dispose(){if(A){A=!1;const I=g();I&&C0(I.then)&&I.then(void 0,()=>{})}}}}const Z0t={SHOWN:"product tour shown"},gII={TOUR_LAST_SEEN_DATE:"$product_tour_last_seen_date",TOUR_TYPE:"$product_tour_type"},III=zr("[RateLimiter]");var O0t=class{constructor(g){this.serverLimits={},this.lastEventRateLimited=!1,this.checkForLimiting=A=>{const I=A.text;if(I&&I.length)try{(JSON.parse(I).quota_limited||[]).forEach(e=>{III.info(`${e||"events"} is quota limited.`),this.serverLimits[e]=new Date().getTime()+6e4})}catch(e){return void III.warn(`could not rate limit - continuing. Error: "${e?.message}"`,{text:I})}},this.instance=g,this.lastEventRateLimited=this.clientRateLimitContext(!0).isRateLimited}get captureEventsPerSecond(){var g;return((g=this.instance.config.rate_limiting)===null||g===void 0?void 0:g.events_per_second)||10}get captureEventsBurstLimit(){var g;return Math.max(((g=this.instance.config.rate_limiting)===null||g===void 0?void 0:g.events_burst_limit)||10*this.captureEventsPerSecond,this.captureEventsPerSecond)}clientRateLimitContext(g=!1){var A,I,e;const{captureEventsBurstLimit:t,captureEventsPerSecond:o}=this,B=new Date().getTime(),C=(A=(I=this.instance.persistence)===null||I===void 0?void 0:I.get_property("$capture_rate_limit"))!==null&&A!==void 0?A:{tokens:t,last:B};C.tokens+=Math.max(0,B-C.last)/1e3*o,C.last=Math.max(C.last,B),C.tokens>t&&(C.tokens=t);const Q=1>C.tokens;if(Q||g||(C.tokens=Math.max(0,C.tokens-1)),Q&&!g){const i=(Gh(C.dropped)?C.dropped:0)+1;C.dropped=i,!this.lastEventRateLimited&&this.Lu(i)&&(C.dropped=0)}return this.lastEventRateLimited=Q,(e=this.instance.persistence)===null||e===void 0||e.set_property("$capture_rate_limit",C),{isRateLimited:Q,remainingTokens:C.tokens}}Nu(g){const A=this.instance.config.property_denylist;return!cB(A)||!A.includes(g)}qu(){var g;if(this.Nu("$current_url")&&this.Nu("$pathname")&&Ca?.pathname)return`${(g=Ca.origin)!==null&&g!==void 0?g:""}${Ca.pathname}`}Lu(g){var A,I;const{captureEventsBurstLimit:e,captureEventsPerSecond:t}=this,o=this.qu(),B=this.Nu("$session_id")?(A=(I=this.instance).get_session_id)===null||A===void 0?void 0:A.call(I):void 0,C=[`${g} event(s) dropped since the last warning`,o?`triggered on ${o}`:void 0,B?`session ${B}`:void 0].filter(Boolean).join(", ");return!!this.instance.capture("$$client_ingestion_warning",{$$client_ingestion_warning_message:`posthog-js client rate limited: ${C}. Config is set to ${t} events per second and ${e} events burst limit.`},{skip_client_rate_limiting:!0})}isServerRateLimited(g){const A=this.serverLimits[g||"events"]||!1;return A!==!1&&new Date().getTime()<A}};const c3=zr("[RemoteConfig]");var eII=class{constructor(A){this._instance=A}get remoteConfig(){var A;return(A=UB._POSTHOG_REMOTE_CONFIG)===null||A===void 0||(A=A[this._instance.config.token])===null||A===void 0?void 0:A.config}ju(A){var I,e,t;!((I=UB.__PosthogExtensions__)===null||I===void 0)&&I.loadExternalDependency?(e=UB.__PosthogExtensions__)===null||e===void 0||(t=e.loadExternalDependency)===null||t===void 0||t.call(e,this._instance,"remote-config",()=>A(this.remoteConfig)):A()}Bu(A){this._instance._send_request({method:"GET",url:this._instance.requestRouter.endpointFor("assets",`/array/${this._instance.config.token}/config`),callback:A})}load(){try{if(this.remoteConfig)return c3.info("Using preloaded remote config",this.remoteConfig),void this.zu(this.remoteConfig);if(this._instance.Hu())return void c3.warn("Remote config is disabled. Falling back to local config.");this.ju(A=>{if(!A)return c3.info("No config found after loading remote JS config. Falling back to JSON."),void this.Bu(I=>{this.zu(I.json,I)});this.zu(A)})}catch(A){c3.error("Error loading remote config",A),this.zu()}}zu(A,I){!A&&I&&(I.statusCode===0?I.error||c3.warn("Failed to fetch remote config from PostHog."):c3.error("Failed to fetch remote config from PostHog."));try{this._instance.zu(A?{ok:!0,config:A}:{ok:!1})}catch(t){c3.error("Error applying remote config",t)}if(A?.hasFeatureFlags!==!1&&!this._instance.config.advanced_disable_feature_flags_on_first_load)try{var e;(e=this._instance.featureFlags)===null||e===void 0||e.ensureFlagsLoaded()}catch(t){c3.error("Error loading feature flags",t)}}},Af=Uint8Array,rk=Uint16Array,Dq=Uint32Array,IvA=new Af([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),evA=new Af([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),tII=new Af([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),oII=function(g,A){for(var I=new rk(31),e=0;31>e;++e)I[e]=A+=1<<g[e-1];var t=new Dq(I[30]);for(e=1;30>e;++e)for(var o=I[e];I[e+1]>o;++o)t[o]=o-I[e]<<5|e;return[I,t]},BII=oII(IvA,2),tvA=BII[1];BII[0][28]=258,tvA[258]=28;for(var CII=oII(evA,0)[1],QII=new rk(32768),Lc=0;32768>Lc;++Lc){var dq=(43690&Lc)>>>1|(21845&Lc)<<1;QII[Lc]=((65280&(dq=(61680&(dq=(52428&dq)>>>2|(13107&dq)<<2))>>>4|(3855&dq)<<4))>>>8|(255&dq)<<8)>>>1}var agA=function(g,A,I){for(var e=g.length,t=0,o=new rk(A);e>t;++t)++o[g[t]-1];var B,C=new rk(A);for(t=0;A>t;++t)C[t]=C[t-1]+o[t-1]<<1;for(B=new rk(e),t=0;e>t;++t)B[t]=QII[C[g[t]-1]++]>>>15-g[t];return B},n5=new Af(288);for(Lc=0;144>Lc;++Lc)n5[Lc]=8;for(Lc=144;256>Lc;++Lc)n5[Lc]=9;for(Lc=256;280>Lc;++Lc)n5[Lc]=7;for(Lc=280;288>Lc;++Lc)n5[Lc]=8;var wDA=new Af(32);for(Lc=0;32>Lc;++Lc)wDA[Lc]=5;var W0t=agA(n5,9),V0t=agA(wDA,5),iII=function(g){return(g/8|0)+(7&g&&1)},EII=function(g,A,I){(I==null||I>g.length)&&(I=g.length);var e=new(g instanceof rk?rk:g instanceof Dq?Dq:Af)(I-A);return e.set(g.subarray(A,I)),e},lJ=function(g,A,I){var e=A/8|0;g[e]|=I<<=7&A,g[e+1]|=I>>>8},rgA=function(g,A,I){var e=A/8|0;g[e]|=I<<=7&A,g[e+1]|=I>>>8,g[e+2]|=I>>>16},ovA=function(g,A){for(var I=[],e=0;g.length>e;++e)g[e]&&I.push({s:e,f:g[e]});var t=I.length,o=I.slice();if(!t)return[new Af(0),0];if(t==1){var B=new Af(I[0].s+1);return B[I[0].s]=1,[B,1]}I.sort(function(w,u){return w.f-u.f}),I.push({s:-1,f:25001});var C=I[0],Q=I[1],i=0,E=1,n=2;for(I[0]={s:-1,f:C.f+Q.f,l:C,r:Q};E!=t-1;)C=I[I[n].f>I[i].f?i++:n++],Q=I[i!=E&&I[n].f>I[i].f?i++:n++],I[E++]={s:-1,f:C.f+Q.f,l:C,r:Q};var s=o[0].s;for(e=1;t>e;++e)o[e].s>s&&(s=o[e].s);var r=new rk(s+1),a=BvA(I[E-1],r,0);if(a>A){e=0;var c=0,h=a-A,l=1<<h;for(o.sort(function(w,u){return r[u.s]-r[w.s]||w.f-u.f});t>e;++e){var D=o[e].s;if(A>=r[D])break;c+=l-(1<<a-r[D]),r[D]=A}for(c>>>=h;c>0;){var d=o[e].s;A>r[d]?c-=1<<A-r[d]++-1:++e}for(;e>=0&&c;--e){var y=o[e].s;r[y]==A&&(--r[y],++c)}a=A}return[new Af(r),a]},BvA=function(g,A,I){return g.s==-1?Math.max(BvA(g.l,A,I+1),BvA(g.r,A,I+1)):A[g.s]=I},nII=function(g){for(var A=g.length;A&&!g[--A];);for(var I=new rk(++A),e=0,t=g[0],o=1,B=function(Q){I[e++]=Q},C=1;A>=C;++C)if(g[C]==t&&C!=A)++o;else{if(!t&&o>2){for(;o>138;o-=138)B(32754);o>2&&(B(o>10?o-11<<5|28690:o-3<<5|12305),o=0)}else if(o>3){for(B(t),--o;o>6;o-=6)B(8304);o>2&&(B(o-3<<5|8208),o=0)}for(;o--;)B(t);o=1,t=g[C]}return[I.subarray(0,e),A]},cgA=function(g,A){for(var I=0,e=0;A.length>e;++e)I+=g[e]*A[e];return I},CvA=function(g,A,I){var e=I.length,t=iII(A+2);g[t]=255&e,g[t+1]=e>>>8,g[t+2]=255^g[t],g[t+3]=255^g[t+1];for(var o=0;e>o;++o)g[t+o+4]=I[o];return 8*(t+4+e)},sII=function(g,A,I,e,t,o,B,C,Q,i,E){lJ(A,E++,I),++t[256];for(var n=ovA(t,15),s=n[0],r=n[1],a=ovA(o,15),c=a[0],h=a[1],l=nII(s),D=l[0],d=l[1],y=nII(c),w=y[0],u=y[1],G=new rk(19),m=0;D.length>m;++m)G[31&D[m]]++;for(m=0;w.length>m;++m)G[31&w[m]]++;for(var p=ovA(G,7),k=p[0],S=p[1],R=19;R>4&&!k[tII[R-1]];--R);var x,N,U,K,Y=i+5<<3,b=cgA(t,n5)+cgA(o,wDA)+B,q=cgA(t,s)+cgA(o,c)+B+14+3*R+cgA(G,k)+(2*G[16]+3*G[17]+7*G[18]);if(b>=Y&&q>=Y)return CvA(A,E,g.subarray(Q,Q+i));if(lJ(A,E,1+(b>q)),E+=2,b>q){x=agA(s,r),N=s,U=agA(c,h),K=c;var j=agA(k,S);for(lJ(A,E,d-257),lJ(A,E+5,u-1),lJ(A,E+10,R-4),E+=14,m=0;R>m;++m)lJ(A,E+3*m,k[tII[m]]);E+=3*R;for(var W=[D,w],Z=0;2>Z;++Z){var gA=W[Z];for(m=0;gA.length>m;++m)lJ(A,E,j[tA=31&gA[m]]),E+=k[tA],tA>15&&(lJ(A,E,gA[m]>>>5&127),E+=gA[m]>>>12)}}else x=W0t,N=n5,U=V0t,K=wDA;for(m=0;C>m;++m)if(e[m]>255){var tA;rgA(A,E,x[257+(tA=e[m]>>>18&31)]),E+=N[tA+257],tA>7&&(lJ(A,E,e[m]>>>23&31),E+=IvA[tA]);var IA=31&e[m];rgA(A,E,U[IA]),E+=K[IA],IA>3&&(rgA(A,E,e[m]>>>5&8191),E+=evA[IA])}else rgA(A,E,x[e[m]]),E+=N[e[m]];return rgA(A,E,x[256]),E+N[256]},j0t=new Dq([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),z0t=(function(){for(var g=new Dq(256),A=0;256>A;++A){for(var I=A,e=9;--e;)I=(1&I&&3988292384)^I>>>1;g[A]=I}return g})(),QvA=function(g,A,I){for(;I;++A)g[A]=I,I>>>=8};function X0t(g,A){A===void 0&&(A={});var I=(function(){var n=4294967295;return{p(s){for(var r=n,a=0;s.length>a;++a)r=z0t[255&r^s[a]]^r>>>8;n=r},d(){return 4294967295^n}}})(),e=g.length;I.p(g);var t,o,B,C,Q,i=(C=10+((t=A).filename&&t.filename.length+1||0),Q=8,(function(n,s,r,a,c,h){var l=n.length,D=new Af(a+l+5*(1+Math.floor(l/7e3))+c),d=D.subarray(a,D.length-c),y=0;if(!s||8>l)for(var w=0;l>=w;w+=65535){var u=w+65535;l>u?y=CvA(d,y,n.subarray(w,u)):(d[w]=h,y=CvA(d,y,n.subarray(w,l)))}else{for(var G=j0t[s-1],m=G>>>13,p=8191&G,k=(1<<r)-1,S=new rk(32768),R=new rk(k+1),x=Math.ceil(r/3),N=2*x,U=function(dA){return(n[dA]^n[dA+1]<<x^n[dA+2]<<N)&k},K=new Dq(25e3),Y=new rk(288),b=new rk(32),q=0,j=0,W=(w=0,0),Z=0,gA=0;l>w;++w){var tA=U(w),IA=32767&w,QA=R[tA];if(S[IA]=QA,R[tA]=IA,w>=Z){var nA=l-w;if((q>7e3||W>24576)&&nA>423){y=sII(n,d,0,K,Y,b,j,W,gA,w-gA,y),W=q=j=0,gA=w;for(var DA=0;286>DA;++DA)Y[DA]=0;for(DA=0;30>DA;++DA)b[DA]=0}var CA=2,hA=0,sA=p,cA=IA-QA&32767;if(nA>2&&tA==U(w-cA))for(var SA=Math.min(m,nA)-1,FA=Math.min(32767,w),aA=Math.min(258,nA);FA>=cA&&--sA&&IA!=QA;){if(n[w+CA]==n[w+CA-cA]){for(var xA=0;aA>xA&&n[w+xA]==n[w+xA-cA];++xA);if(xA>CA){if(CA=xA,hA=cA,xA>SA)break;var RA=Math.min(cA,xA-2),NA=0;for(DA=0;RA>DA;++DA){var HA=w-cA+DA+32768&32767,PA=HA-S[HA]+32768&32767;PA>NA&&(NA=PA,QA=HA)}}}cA+=(IA=QA)-(QA=S[IA])+32768&32767}if(hA){K[W++]=268435456|tvA[CA]<<18|CII[hA];var GA=31&tvA[CA],LA=31&CII[hA];j+=IvA[GA]+evA[LA],++Y[257+GA],++b[LA],Z=w+CA,++q}else K[W++]=n[w],++Y[n[w]]}}y=sII(n,d,h,K,Y,b,j,W,gA,w-gA,y)}return EII(D,0,a+iII(y)+c)})(o=g,(B=A).level==null?6:B.level,B.mem==null?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(o.length)))):12+B.mem,C,Q,!0)),E=i.length;return(function(n,s){var r=s.filename;if(n[0]=31,n[1]=139,n[2]=8,n[8]=2>s.level?4:s.level==9?2:0,n[9]=3,s.mtime!=0&&QvA(n,4,Math.floor(new Date(s.mtime||Date.now())/1e3)),r){n[3]=8;for(var a=0;r.length>=a;++a)n[a+10]=r.charCodeAt(a)}})(i,A),QvA(i,E-8,I.d()),QvA(i,E-4,e),i}const $0t=!!bHA||!!TAA,aII=new WeakMap,rII="text/plain";let ivA=0,uDA=!1;const cII=(g,A)=>{const[I,e]=g.split("#"),[t,o]=I.split("?");if(!o)return g;const B=o.split("&").filter(C=>C.split("=")[0]!==A).join("&");return`${t}${B?`?${B}`:""}${e?`#${e}`:""}`},GDA=(g,A,I=!0)=>{var e;const[t,o]=g.split("?"),B=QI({},A),C=(e=o?.split("&").map(i=>{var E;const[n,s]=i.split("="),r=I&&(E=B[n])!==null&&E!==void 0?E:s;return delete B[n],`${n}=${r}`}))!==null&&e!==void 0?e:[],Q=(function(i,E="&"){let n,s;const r=[];return Gn(i,function(a,c){Ye(a)||Ye(c)||c==="undefined"||(n=encodeURIComponent((h=>h instanceof File)(a)?a.name:a.toString()),s=encodeURIComponent(c),r[r.length]=s+"="+n)}),r.join(E)})(B);return Q&&C.push(Q),C.length>0?`${t}?${C.join("&")}`:t},EvA=g=>{if(g.lr)return g.lr;const{data:A,compression:I}=g;if(!A)return;if(I===$M.GZipJS){const t=X0t((function(o){var B=o.length;if(typeof TextEncoder<"u")return new TextEncoder().encode(o);for(var C=new Af(o.length+(o.length>>>1)),Q=0,i=function(r){C[Q++]=r},E=0;B>E;++E){if(Q+5>C.length){var n=new Af(Q+8+(B-E<<1));n.set(C),C=n}var s=o.charCodeAt(E);128>s?i(s):2048>s?(i(192|s>>>6),i(128|63&s)):s>55295&&57344>s?(i(240|(s=65536+(1047552&s)|1023&o.charCodeAt(++E))>>>18),i(128|s>>>12&63),i(128|s>>>6&63),i(128|63&s)):(i(224|s>>>12),i(128|s>>>6&63),i(128|63&s))}return EII(C,0,Q)})(rq(A)),{mtime:0});return{contentType:rII,body:t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength),estimatedSize:t.byteLength}}if(I===$M.Base64){const t=(function(B){return B&&btoa(encodeURIComponent(B).replace(/%([0-9A-F]{2})/g,(C,Q)=>String.fromCharCode(parseInt(Q,16))))})(rq(A)),o=(B=>"data="+encodeURIComponent(typeof B=="string"?B:rq(B)))(t);return{contentType:"application/x-www-form-urlencoded",body:o,estimatedSize:new Blob([o]).size}}const e=rq(A);return{contentType:"application/json",body:e,estimatedSize:new Blob([e]).size}},hII=g=>{const A=()=>g.transport==="sendBeacon"?{url:GDA(g.url,{compression:$M.Base64}),encodedBody:EvA(QI(QI({},g),{},{compression:$M.Base64,lr:void 0}))}:{url:cII(g.url,"compression"),encodedBody:EvA(QI(QI({},g),{},{compression:void 0,lr:void 0}))};let I;try{I=EvA(g)}catch(t){if(hAI(g.compression,cq(g.url,"compression")))return Dt.error("Failed to gzip request body, sending uncompressed payload",t),A();throw t}return I&&hAI(g.compression,cq(g.url,"compression"))&&!((e=I.body)instanceof ArrayBuffer?o6A(new Uint8Array(e)):ArrayBuffer.isView(e)&&o6A(new Uint8Array(e.buffer,e.byteOffset,e.byteLength)))?(uDA=!0,A()):{url:g.url,encodedBody:I};var e},lII=g=>{try{return hII(g)}catch(I){var A;return Dt.error(I),void((A=g.callback)===null||A===void 0||A.call(g,{statusCode:0,error:I}))}},Alt=(function(){var g=Qa(function*(A){const I=yield(function(t){return B6A.apply(this,arguments)})(rq(A.data),ak.DEBUG,{rethrow:!0});if(!I)return A;const e=yield I.arrayBuffer();return QI(QI({},A),{},{lr:{contentType:rII,body:e,estimatedSize:e.byteLength}})});return function(A){return g.apply(this,arguments)}})(),glt=/Failed to fetch|NetworkError|Load failed/i,DII=g=>g?.name==="TypeError"&&glt.test(g?.message||""),dII=g=>{try{const A=(function(I,e=Date.now()){if(typeof I!="string"||!I)return;const t=I.trim(),o=/^\d+\s*,/.test(t)?t.slice(0,t.indexOf(",")).trim():t;if(/^\d+$/.test(o)){const Q=1e3*Math.min(Number(o),300);return Q>0?Q:void 0}if(!/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun)[a-z]*[ ,]/.test(o))return;const B=/^\w{3} \w{3} /.test(o)?o+" GMT":o,C=Date.parse(B)-e;return Number.isFinite(C)&&C>0?Math.min(C,$lA):void 0})(g());return Ye(A)?void 0:Math.min(A,3e4)}catch{return}},yII=g=>{const A=lII(g);if(!A)return;const I=new bHA;aII.set(I,!0);const{url:e,encodedBody:t}=A;I.open(g.method||"GET",e,!0);const{contentType:o,body:B}=t??{};Gn(g.headers,function(C,Q){I.setRequestHeader(Q,C)}),o&&I.setRequestHeader("Content-Type",o),g.timeout&&(I.timeout=g.timeout),I.onreadystatechange=()=>{if(I.readyState===4){var C;const Q={statusCode:I.status,text:I.responseText};if(I.status===200)try{Q.json=JSON.parse(I.responseText)}catch{}(C=g.callback)===null||C===void 0||C.call(g,Q,dII(()=>I.getResponseHeader("Retry-After")))}},I.send(B)},wII=g=>{const A=lII(g);if(!A)return;const{url:I,encodedBody:e}=A,{contentType:t,body:o,estimatedSize:B}=e??{},C=new Headers;Gn(g.headers,function(a,c){C.append(c,a)}),t&&C.append("Content-Type",t);let Q=null,i=!1;if(n$g){const a=new n$g;Q={signal:a.signal,timeout:setTimeout(()=>{i=!0;try{a.abort(X$g("AbortError","PostHog request timed out"+((c=g.timeout)?` after ${c}ms`:"")))}catch(h){n(h)}var c},g.timeout)}}let E=!1;const n=a=>{var c;E||(E=!0,i&&a?.name==="AbortError"||DII(a)?Dt.warn(a):Dt.error(a),(c=g.callback)===null||c===void 0||c.call(g,{statusCode:0,error:a}))};let s=0;const r=()=>{ivA-=s,s=0,Q&&clearTimeout(Q.timeout)};try{const a=QI({method:g?.method||"GET",headers:C,referrerPolicy:"strict-origin",body:o,signal:Q?.signal},g.fetchOptions),c=B??(Ye(o)?0:void 0);a.keepalive=a.method==="POST"&&!g.kl&&a.keepalive!==!1&&a.body===o&&!Ye(c)&&c>=0&&52428.8>ivA+c,a.keepalive&&(s=c,ivA+=s),TAA(I,a).then(h=>h.text().then(l=>{var D;if(E)return;const d={statusCode:h.status,text:l};if(h.status===200)try{d.json=JSON.parse(l)}catch(y){Dt.error(y)}E=!0,r(),(D=g.callback)===null||D===void 0||D.call(g,d,dII(()=>h.headers.get("Retry-After")))})).catch(h=>{r(),n(h)}).finally(r)}catch(a){r(),n(a)}},nvA=g=>{try{var A;const{url:I,encodedBody:e}=hII(g),{contentType:t,body:o,estimatedSize:B}=e??{};if(!o)return;const C=o instanceof Blob?o:new Blob([o],{type:t});if(Hw.sendBeacon(I,C))return;const Q=cB(g.data)?g.data:(A=g.data)===null||A===void 0?void 0:A.batch;if(cB(Q)&&Q.length>1&&(B??0)>16384){const i=Math.ceil(Q.length/2),E=n=>cB(g.data)?n:QI(QI({},g.data),{},{batch:n});return nvA(QI(QI({},g),{},{data:E(Q.slice(0,i))})),void nvA(QI(QI({},g),{},{data:E(Q.slice(i))}))}Dt.warn(`Beacon of ~${B??0} bytes was rejected by the browser, falling back to ${TAA?"fetch":"XHR"}`),TAA?wII(QI(QI({},g),{},{kl:!0})):yII(g)}catch(I){Dt.warn("Beacon send failed",I)}},uII=(g,A,I,e)=>{const t=e==="query"?A==="POST"?"sent_at":"_":void 0;return GDA(I===$M.GZipJS?cII(g,"compression"):g,QI(QI({},t?{[t]:Date.now().toString()}:{}),I===$M.GZipJS?{}:{compression:I}))},Ilt=(()=>{const g=[];return TAA&&g.push({transport:"fetch",method:wII}),bHA&&g.push({transport:"XHR",method:yII}),Hw?.sendBeacon&&g.push({transport:"sendBeacon",method:nvA}),g})();let GII=!$0t&&xm?.indexOf("MSIE")===-1&&xm?.indexOf("Mozilla")===-1;function mII(g,A,I){var e,t,o;I&&(A=QI(QI({},A),{},{callback:B=>I(B)})),g.__loaded?GII?g.__request_queue.push(A):g.rateLimiter.isServerRateLimited(A.batchKey)?A.fireCallbackOnDrop&&((t=A.callback)===null||t===void 0||t.call(A,{statusCode:429})):(A.transport=A.transport||g.config.api_transport,A.headers=QI(QI({},g.config.request_headers),A.headers),A.compression=A.compression==="best-available"?(e=g.compression)!==null&&e!==void 0?e:A.compressionFallback:A.compression,(Ye(g.config.disable_beacon)?g.config.__preview_disable_beacon:g.config.disable_beacon)&&(A.disableTransport=["sendBeacon"]),A.fetchOptions=A.fetchOptions||g.config.fetch_options,((B,C)=>{var Q,i,E;const n=QI(QI({},B),{},{callback:C??(h=>{var l;return(l=B.callback)===null||l===void 0?void 0:l.call(B,h)})});n.timeout=n.timeout||6e4;const s=(Q=n.transport)!==null&&Q!==void 0?Q:"fetch";s==="sendBeacon"&&Ye(n.compression)&&n.data&&(n.compression=$M.Base64),n.method==="POST"&&n.data&&(n.timestampMode==="capture-body"?n.data=(h=>{var l,D;const d=(cB(h)?h:[h]).map(w=>QI(QI({},w),w.timestamp instanceof Date&&!isNaN(w.timestamp.getTime())?{timestamp:w.timestamp.toISOString()}:{})),y=d[0];return{api_key:(l=y==null||(D=y.properties)===null||D===void 0?void 0:D.token)!==null&&l!==void 0?l:y?.token,batch:d,sent_at:new Date().toISOString()}})(n.data):n.timestampMode==="body"&&(n.data=((h,l=new Date().toISOString())=>cB(h)?h.map(D=>QI(QI({},D),{},{sent_at:l})):QI(QI({},h),{},{sent_at:l}))(n.data))),n.url=uII(n.url,n.method,n.compression,n.timestampMode);const r=Ilt.filter(h=>!n.disableTransport||!h.transport||!n.disableTransport.includes(h.transport)),a=(i=(E=(function(h,l){for(let D=0;h.length>D;D++)if(l(h[D]))return h[D]})(r,h=>h.transport===s))===null||E===void 0?void 0:E.method)!==null&&i!==void 0?i:r[0].method;if(!a)throw new Error("No available transport method");const c=h=>{try{a(h)}catch(D){var l;DII(D)?Dt.warn(D):Dt.error(D),(l=n.callback)===null||l===void 0||l.call(n,{statusCode:0,error:D})}};s!=="sendBeacon"&&!n.preferSyncCompression&&n.data&&n.compression===$M.GZipJS&&rct&&typeof Promise<"u"&&!uDA?Alt(n).then(h=>{c(h)}).catch(h=>{if(lAI(h))return uDA=!0,void c(QI(QI({},n),{},{compression:void 0,url:uII(B.url,B.method,void 0,B.timestampMode)}));(l=>{if(!l||typeof l!="object")return!1;const D="name"in l?String(l.name):"";return lAI(l)||D===cAI})(h)&&(uDA=!0),c(n)}):c(n)})(A,(B,C)=>{var Q,i,E;g.rateLimiter.checkForLimiting(B),400>B.statusCode||(Q=(i=g.config).on_request_error)===null||Q===void 0||Q.call(i,B),I?I(B,C):(E=A.callback)===null||E===void 0||E.call(A,B)})):A.fireCallbackOnDrop&&((o=A.callback)===null||o===void 0||o.call(A,{statusCode:0}))}var elt=class{constructor(A,I){this.Uu=!0,this.Wu=[],this.Vu=yx(I?.flush_interval_ms||3e3,250,5e3,Dt.createLogger("flush interval"),3e3),this.Gu=A}enqueue(A){this.Wu.push(A),this.Qu||this.Zu()}unload(){this.Ju();const A=this.Wu.length>0?this.Ku():{},I=Object.values(A);[...I.filter(e=>e.url.indexOf("/e")===0),...I.filter(e=>e.url.indexOf("/e")!==0)].map(e=>{this.Xu(QI(QI({},e),{},{callback:void 0}),"sendBeacon")})}enable(){this.Uu=!1,this.Zu()}Zu(){this.Uu||(this.Qu=setTimeout(()=>{this.Ju(),this.Yu()},this.Vu))}Yu(){if(this.Wu.length>0){const A=this.Ku();for(const I in A)this.Xu(A[I])}}Xu(A,I){try{this.Gu(A,I)}catch(e){Dt.error(e)}}Ju(){clearTimeout(this.Qu),this.Qu=void 0}Ku(){const A={},I={};Gn(this.Wu,e=>{var t;const o=e,B=((o?o.batchKey:null)||o.url)+(o.batchGroup?`:${o.batchGroup}`:"");Ye(A[B])&&(A[B]=QI(QI({},o),{},{data:[],callback:void 0,fireCallbackOnDrop:void 0}),I[B]=[]),(t=A[B].data)===null||t===void 0||t.push(o.data),o.callback&&I[B].push(o.callback)});for(const e in I){const t=I[e];t.length&&(A[e].callback=o=>{for(const B of t)B(o)})}return this.Wu=[],A}};const tlt=["retriesPerformedSoFar"];var olt=class{constructor(A){this._instance=A,this.tc=!1,this.ec=3e3,this.Wu=[],this.Wu=[],this.nc=!0,this.resume()}resume(){if(!Ye(Se)&&"onLine"in Se.navigator){if(this.nc=Se.navigator.onLine,this.sc)return;this.sc=()=>{this.nc=!0,this.Yu()},this.rc=()=>{this.nc=!1},NE(Se,"online",this.sc),NE(Se,"offline",this.rc)}}get length(){return this.Wu.length}retriableRequest(A,I){let{retriesPerformedSoFar:e}=A,t=dAI(A,tlt);nJ(e)&&(t.url=GDA(t.url,{retry_count:e})),mII(this._instance,I?QI(QI({},t),{},{transport:I}):t,(o,B)=>{var C;if(o.statusCode!==200&&(400>o.statusCode||o.statusCode>=500)){if((o.statusCode===0?3:10)>(e??0))return void this.Ls(QI({retriesPerformedSoFar:e},t),B);o.statusCode===0&&Dt.warn(`Request failed before receiving an HTTP response; this can happen due to network issues, CORS, browser blocking, or ad blockers. Stopped retrying after ${e??0} retries.`)}(C=t.callback)===null||C===void 0||C.call(t,o)})}Ls(A,I){const e=A.retriesPerformedSoFar||0;A.retriesPerformedSoFar=e+1;const t=Math.max((function(C){const Q=3e3*Math.pow(2,C),i=Q/2,E=Math.min(18e5,Q),n=(Math.random()-.5)*(E-i);return Math.ceil(E+n)})(e),I??0),o=Date.now()+t;this.Wu.push({retryAt:o,requestOptions:A});let B=`Enqueued failed request for retry in ${t}`;navigator.onLine||(B+=" (Browser is offline)"),Dt.warn(B),this.tc||(this.tc=!0,this.oc())}oc(){if(this.ac&&clearTimeout(this.ac),this.Wu.length===0)return this.tc=!1,void(this.ac=void 0);this.ac=setTimeout(()=>{this.nc&&this.Wu.length>0&&this.Yu(),this.oc()},this.ec)}Yu(){const A=Date.now(),I=[],e=this.Wu.filter(t=>A>t.retryAt||(I.push(t),!1));if(this.Wu=I,e.length>0)for(const{requestOptions:t}of e)this.retriableRequest(t)}unload(){this.ac&&(clearTimeout(this.ac),this.ac=void 0),this.tc=!1,Ye(Se)||(this.sc&&(Se.removeEventListener("online",this.sc),this.sc=void 0),this.rc&&(Se.removeEventListener("offline",this.rc),this.rc=void 0));for(const{requestOptions:A}of this.Wu)try{this._instance._send_request(QI(QI({},A),{},{callback:cB(A.data)?void 0:A.callback,transport:"sendBeacon"}))}catch(I){Dt.error(I)}this.Wu=[]}},Blt=class{constructor(A){this._instance=A,this.lc=()=>{var I,e,t,o;this.uc||(this.uc={});const B=this.scrollElement(),C=this.scrollY(),Q=B?Math.max(0,B.scrollHeight-B.clientHeight):0,i=C+(B?.clientHeight||0),E=B?.scrollHeight||0;this.uc.lastScrollY=Math.ceil(C),this.uc.maxScrollY=Math.max(C,(I=this.uc.maxScrollY)!==null&&I!==void 0?I:0),this.uc.maxScrollHeight=Math.max(Q,(e=this.uc.maxScrollHeight)!==null&&e!==void 0?e:0),this.uc.lastContentY=i,this.uc.maxContentY=Math.max(i,(t=this.uc.maxContentY)!==null&&t!==void 0?t:0),this.uc.maxContentHeight=Math.max(E,(o=this.uc.maxContentHeight)!==null&&o!==void 0?o:0)}}get cc(){return this._instance.config.scroll_root_selector}getContext(){return this.uc}resetContext(){const A=this.uc;return this.uc=void 0,setTimeout(this.lc,0),A}startMeasuringScrollPosition(){NE(Se,"scroll",this.lc,{capture:!0}),NE(Se,"scrollend",this.lc,{capture:!0}),NE(Se,"resize",this.lc)}scrollElement(){if(this.cc){const e=cB(this.cc)?this.cc:[this.cc];for(const t of e){var A;const o=Se==null||(A=Se.document)===null||A===void 0?void 0:A.querySelector(t);if(o)return o}return}var I;return Se==null||(I=Se.document)===null||I===void 0?void 0:I.documentElement}hc(A){var I,e;const t=A==="y"?"scrollTop":"scrollLeft";if(this.cc){const o=this.scrollElement();return o&&o[t]||0}return Se?A==="y"?Se.scrollY||Se.pageYOffset||((I=Se.document)===null||I===void 0||(I=I.documentElement)===null||I===void 0?void 0:I.scrollTop)||0:Se.scrollX||Se.pageXOffset||((e=Se.document)===null||e===void 0||(e=e.documentElement)===null||e===void 0?void 0:e.scrollLeft)||0:0}scrollY(){return this.hc("y")}scrollX(){return this.hc("x")}};const Clt=g=>jgI(g?.config.mask_personal_data_properties,g?.config.custom_personal_data_properties,g?.config.disable_capture_url_hashes);var pII=class{constructor(A,I,e,t){this.qe=o=>{const B=this.dc();if(B&&B.sessionId===o)return;const C={sessionId:o,props:this.vc(this._instance)};this.fc.register({[S6A]:C})},this._instance=A,this.gc=I,this.fc=e,this.vc=t||Clt,this.gc.onSessionId(this.qe)}dc(){return this.fc.props[S6A]}getSetOnceProps(){var A;const I=(A=this.dc())===null||A===void 0?void 0:A.props;return I?"r"in I?zgI(I,this._instance.config.disable_capture_url_hashes):{$referring_domain:I.referringDomain,$pathname:I.initialPathName,utm_source:I.utm_source,utm_campaign:I.utm_campaign,utm_medium:I.utm_medium,utm_content:I.utm_content,utm_term:I.utm_term}:{}}getSessionProps(){const A={};return Gn(U6A(this.getSetOnceProps()),(I,e)=>{e==="$current_url"&&(e="url"),A[`$session_entry_${vHA(e)}`]=I}),A}},mDA=class{on(A,I){return this.bo[A]||(this.bo[A]=[]),this.bo[A].push(I),()=>{this.bo[A]=this.bo[A].filter(e=>e!==I)}}emit(A,I){for(const e of this.bo[A]||[])e(I);for(const e of this.bo["*"]||[])e(A,I)}constructor(){this.bo={}}};const yq=zr("[SessionId]"),kII=864e5;var MII=class{on(g,A){return this.mc.on(g,A)}constructor(g,A,I){var e;if(this.yc=null,this.bc=null,this._c=[],this.wc=void 0,this.kc=!1,this.mc=new mDA,this.Sc=(o,B)=>!(!nJ(o)||!nJ(B))&&Math.abs(o-B)>this.sessionTimeoutMs,!g.persistence)throw new Error("SessionIdManager requires a PostHogPersistence instance");if(g.config.cookieless_mode==="always")throw new Error('SessionIdManager cannot be used with cookieless_mode="always"');this.Ar=g.config,this.fc=g.persistence,this.je=void 0,this.Xt=void 0,this._sessionStartTimestamp=null,this.xc=void 0,this._sessionActivityTimestamp=null,this.$c=A||UR,this.Cc=I||UR;const t=this.Ar.persistence_name||this.Ar.token;if(this._sessionTimeoutMs=1e3*yx(this.Ar.session_idle_timeout_seconds||1800,60,36e3,yq.createLogger("session_idle_timeout_seconds"),1800),g.register({$configured_session_timeout_ms:this._sessionTimeoutMs}),this.Tc(),this.Ic="ph_"+t+"_window_id",this.Mc="ph_"+t+"_primary_window_exists",this.Ec()){const o=ia.Lt(this.Ic),B=ia.Lt(this.Mc);o&&!B?this.je=o:ia.Pt(this.Ic),ia.At(this.Mc,!0)}!((e=this.Ar.bootstrap)===null||e===void 0)&&e.sessionID&&this.setBootstrapSessionId(this.Ar.bootstrap.sessionID),this.Pc()}get sessionTimeoutMs(){return this._sessionTimeoutMs}onSessionId(g){return Ye(this._c)&&(this._c=[]),this._c.push(g),this.Xt&&g(this.Xt,this.je),()=>{this._c=this._c.filter(A=>A!==g)}}Ec(){return this.Ar.persistence!=="memory"&&!this.fc.hi&&ia.$t()}Rc(g){g!==this.je&&(this.je=g,this.Ec()&&ia.At(this.Ic,g))}Ac(){return this.je?this.je:this.Ec()?ia.Lt(this.Ic):null}Fc(g){const A=this.yc;return!Pc(A)&&!Pc(g)&&5e3>Math.abs(g-A)}Oc(g,A,I){const e=A!==this._sessionActivityTimestamp,t=!(g!==this.Xt||I!==this._sessionStartTimestamp);this._sessionStartTimestamp=I,this._sessionActivityTimestamp=A,this.Xt=g,t&&!e||t&&this.Fc(A)||(this.yc=A,this.fc.register({[Bq]:[A,g,I]}))}Dc(){var g;const A=(g=this.Ar)===null||g===void 0?void 0:g.persistence_save_debounce_ms;return nJ(A)&&A>0}Lc(){this.Dc()?this.fc.refreshKey(Bq):(this.fc.flush(),this.fc.load())}Nc(){var g;if(Pc(this._sessionActivityTimestamp)||this._sessionActivityTimestamp===this.yc)return;this.Lc();const[,A,I]=this.qc();A===this.Xt&&I===this._sessionStartTimestamp&&(this.yc=this._sessionActivityTimestamp,this.fc.register({[Bq]:[this._sessionActivityTimestamp,(g=this.Xt)!==null&&g!==void 0?g:null,this._sessionStartTimestamp]}),this.fc.flush())}jc(){const[g]=this.qc(),A=nJ(g)?g:0,I=nJ(this._sessionActivityTimestamp)?this._sessionActivityTimestamp:0;return Math.max(A,I)}Bc(g){return this.Lc(),this.Sc(g,this.jc())}qc(){const g=this.fc.props[Bq];return cB(g)&&g.length===2&&g.push(g[0]),g||[0,null,0]}resetSessionId(){this.yc=null,this.xc=void 0,clearTimeout(this.zc),this.zc=void 0,this.Oc(null,null,null)}setBootstrapSessionId(g,A=!1){const I=((e,t=new Date().getTime())=>{try{const o=(B=>{const C=B.replace(/-/g,"");if(C.length!==32)throw new Error("Not a valid UUID");if(C[12]!=="7")throw new Error("Not a UUIDv7");return parseInt(C.substring(0,12),16)})(e);return o>t+6e4?void yq.error("Bootstrap sessionID cannot be in the future"):o}catch(o){return void yq.error("Invalid sessionID in bootstrap",o)}})(g);return!Ye(I)&&(A?this.xc={sessionId:g,sessionStartTimestamp:I}:this.Oc(g,new Date().getTime(),I),!0)}destroy(){this.kc=!0,this.Nc(),clearTimeout(this.zc),this.zc=void 0,this.wc&&Se&&(Se.removeEventListener(sDA,this.wc,{capture:!1}),this.wc=void 0),this._c=[]}Pc(){this.wc=()=>{this.Nc(),this.Ec()&&ia.Pt(this.Mc)},NE(Se,sDA,this.wc,{capture:!1})}checkAndGetSessionAndWindowId(g=!1,A=null,I=!1){if(this.Ar.cookieless_mode==="always")throw new Error('checkAndGetSessionAndWindowId should not be called with cookieless_mode="always"');const e=A||new Date().getTime(),t=this.Xt;if(I)this.bc=e;else if(Pc(this.bc)||this.bc>e||e-this.bc>=1e3){var o,B;(o=(B=this.fc).syncCookieProperties)===null||o===void 0||o.call(B),this.bc=e}let[,C,Q]=this.qc();const i=!Ye(t)&&C!==t,E=this.jc();let n=this.Ac();const s=this.xc,r=!!s&&(s.sessionStartTimestamp>e+6e4||e-s.sessionStartTimestamp>kII),a=s?r:nJ(Q)&&Math.abs(e-Q)>kII;let c=!1,h=i,l=!C||!!s;const D=C;let d=!l&&!g&&this.Sc(e,E);if(d&&(d=this.Bc(e),d||yq.info("cross-tab refresh kept the session alive",{sessionId:C}),[,C,Q]=this.qc(),d||(l=!C||!!s)),l||d||a){h=!1;const G=s&&!r;C=G?s.sessionId:this.$c(),n=this.Cc(),yq.info("new session ID assigned",{sessionId:C,windowId:n,bootstrapped:!!G,changeReason:{noSessionId:l,activityTimeout:d,sessionPastMaximumLength:a}}),Q=G?s.sessionStartTimestamp:e,this.xc=void 0,c=!0}else n||(n=this.Cc(),c=!0),h=h||C!==D,h&&(yq.info("adopted cross-tab session id",{sessionId:C,windowId:n}),c=!0);const y=nJ(E)&&g&&!a?E:e,w=nJ(Q)?Q:new Date().getTime();this.Rc(n),this.Oc(C,y,w),g||this.Tc();const u={noSessionId:l,activityTimeout:d,sessionPastMaximumLength:a,crossTabAdoption:h};return c&&this._c.forEach(G=>G(C,n,u)),{sessionId:C,windowId:n,sessionStartTimestamp:w,changeReason:c?u:void 0,lastActivityTimestamp:E}}Tc(){this.kc||(clearTimeout(this.zc),this.zc=setTimeout(()=>{if(!this.kc)if(this.Bc(new Date().getTime())){const g=this.Xt;this.resetSessionId(),this.mc.emit("forcedIdleReset",{idleSessionId:g})}else this.Tc()},1.1*this.sessionTimeoutMs))}};const SII=function(g,A){if(!g)return!1;const I=g.userAgent;if(I&&l$g(I,A))return!0;try{const e=g?.userAgentData;if(e?.brands&&e.brands.some(t=>l$g(t?.brand,A)))return!0}catch{}return!!g.webdriver};function fII(){return(fII=Qa(function*(){const g=Hw?.userAgentData;if(g?.getHighEntropyValues)try{const A=yield g.getHighEntropyValues(["model"]),I=A?.model;return qC(I)&&I.length>0?I:void 0}catch(A){return void Dt.info("Unable to resolve $device_model from userAgentData.getHighEntropyValues",A)}})).apply(this,arguments)}function Qlt(g,A){let I=`$survey_${A}/${g.id}`;return g.current_iteration&&g.current_iteration>0&&(I=`$survey_${A}/${g.id}/${g.current_iteration}`),I}function RII(g){var A;return!!(!((A=g.conditions)===null||A===void 0||(A=A.events)===null||A===void 0||(A=A.values)===null||A===void 0)&&A.length)}const pDA=(g,A)=>{if(!(I=>{try{new RegExp(I)}catch{return!1}return!0})(A))return!1;try{return new RegExp(A).test(g)}catch{return!1}},kDA=g=>g.toLowerCase(),NII={exact:(g,A)=>A.some(I=>g.some(e=>I===e)),is_not:(g,A)=>A.every(I=>g.every(e=>I!==e)),regex:(g,A)=>A.some(I=>g.some(e=>pDA(I,e))),not_regex:(g,A)=>A.every(I=>g.every(e=>!pDA(I,e))),icontains:(g,A)=>A.map(kDA).some(I=>g.map(kDA).some(e=>I.includes(e))),not_icontains:(g,A)=>A.map(kDA).every(I=>g.map(kDA).every(e=>!I.includes(e))),gt:(g,A)=>A.some(I=>{const e=parseFloat(I);return!isNaN(e)&&g.some(t=>e>parseFloat(t))}),lt:(g,A)=>A.some(I=>{const e=parseFloat(I);return!isNaN(e)&&g.some(t=>e<parseFloat(t))})};function xII(g,A){return!g||Object.entries(g).every(([I,e])=>{const t=A?.[I];if(t==null)return!1;const o=NII[e.operator];return!!o&&o(e.values.map(String),[String(t)])})}function svA(g,A,I){return rq({distinct_id:g,userPropertiesToSet:A,userPropertiesToSetOnce:I})}const avA="custom",FII="i.posthog.com",ilt=/^\/static\//,Elt=["/s/","/e/","/i/"];var nlt=class{constructor(A){this.Hc={},this.instance=A}get apiHost(){const A=this.instance.config.api_host.trim().replace(/\/$/,"");return A==="https://app.posthog.com"?"https://us.i.posthog.com":A}get flagsApiHost(){const A=this.instance.config.flags_api_host;return A?A.trim().replace(/\/$/,""):this.apiHost}get uiHost(){var A;let I=(A=this.instance.config.ui_host)===null||A===void 0?void 0:A.replace(/\/$/,"");return I||(I=this.apiHost.replace(`.${FII}`,".posthog.com")),I==="https://app.posthog.com"?"https://us.posthog.com":I}get region(){return this.Hc[this.apiHost]||(this.Hc[this.apiHost]=/https:\/\/(app|us|us-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?"us":/https:\/\/(eu|eu-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?"eu":avA),this.Hc[this.apiHost]}Uc(A){if(!ilt.test(A))return;const I=this.instance.config.asset_host;return typeof I=="string"&&I.trim().replace(/\/$/,"")||void 0}Wc(A){const I=cJ(A);return I?I.protocol+"//"+I.host+I.pathname:void 0}Vc(A,I,e){if(A==="ui")return e;let t=e;const o=this.instance.config.rewriteRequestPath;if(o){var B;const C=((B=cJ(e))===null||B===void 0?void 0:B.href)||e;t=o(new URL(C)).toString()}if(o&&A==="api"&&Elt.some(C=>I.indexOf(C)===0)){const C=this.Wc(t);if(C){const Q=this.apiHost;let i=this.Gc;i?.apiHost===Q&&i.rewriteRequestPath===o||(i={apiHost:Q,rewriteRequestPath:o,urls:new Set},this.Gc=i),i.urls.add(C)}}return t}isIngestionEndpoint(A){const I=this.Gc,e=this.Wc(A);return I?.apiHost===this.apiHost&&I.rewriteRequestPath===this.instance.config.rewriteRequestPath&&!!e&&I.urls.has(e)}endpointFor(A,I=""){if(I&&(I=I[0]==="/"?I:`/${I}`),A==="ui")return this.Vc(A,I,this.uiHost+I);if(A==="flags")return this.Vc(A,I,this.flagsApiHost+I);if(A==="assets"){const t=this.Uc(I);if(t)return this.Vc(A,I,`${t}${I}`)}if(this.region===avA)return this.Vc(A,I,this.apiHost+I);const e=FII+I;switch(A){case"assets":return this.Vc(A,I,`https://${this.region}-assets.${e}`);case"api":return this.Vc(A,I,`https://${this.region}.${e}`)}}};const mn=zr("[Surveys]"),UII=g=>{try{const A=(I=>((e,t)=>`seenSurvey_${(function(o){return o.current_iteration&&o.current_iteration>0?`${o.id}_${o.current_iteration}`:o.id})(t)}`)(0,I))(g);if(localStorage.getItem(A))return;localStorage.setItem(A,"true")}catch(A){mn.error("Failed to persist survey seen state",A)}},slt=[$6A.Popover,$6A.Widget,$6A.API],alt={ignoreConditions:!1,ignoreDelay:!1,displayType:gvA.Popover},rlt=zr("[PostHog ExternalIntegrations]"),clt={intercom:"intercom-integration",crispChat:"crisp-chat-integration"};var hlt=class{constructor(A){this._instance=A}Ml(A,I){var e,t;(e=UB.__PosthogExtensions__)===null||e===void 0||(t=e.loadExternalDependency)===null||t===void 0||t.call(e,this._instance,A,o=>{if(o)return rlt.error("failed to load script",o);I()})}startIfEnabledOrStop(){var A;for(const[o,B]of Object.entries((A=this._instance.config.integrations)!==null&&A!==void 0?A:{})){var I,e,t;B&&!(!((I=UB.__PosthogExtensions__)===null||I===void 0||(I=I.integrations)===null||I===void 0)&&I[o])&&this.Ml(clt[o],()=>{var C;(C=UB.__PosthogExtensions__)===null||C===void 0||(C=C.integrations)===null||C===void 0||(C=C[o])===null||C===void 0||C.start(this._instance)}),!B&&(!((e=UB.__PosthogExtensions__)===null||e===void 0||(e=e.integrations)===null||e===void 0)&&e[o])&&((t=UB.__PosthogExtensions__)===null||t===void 0||(t=t.integrations)===null||t===void 0||(t=t[o])===null||t===void 0||t.stop())}}},JII=class{constructor(A){this.disabled=A===!1;const I=yC(A)?A:{};this.thresholdPx=I.threshold_px||30,this.timeoutMs=I.timeout_ms||1e3,this.clickCount=I.click_count||3,this.clicks=[]}isRageClick(A,I,e){if(this.disabled)return!1;const t=this.clicks[this.clicks.length-1];if(t&&Math.abs(A-t.x)+Math.abs(I-t.y)<this.thresholdPx&&this.timeoutMs>e-t.timestamp){if(this.clicks.push({x:A,y:I,timestamp:e}),this.clicks.length===this.clickCount)return!0}else this.clicks=[{x:A,y:I,timestamp:e}];return!1}};const rvA=()=>typeof window>"u"?void 0:window,hgA=()=>typeof document>"u"?void 0:document,cvA="$copy_autocapture",hvA=zr("[AutoCapture]");function lvA(g,A){return A.length>g?A.slice(0,g)+"...":A}function llt(g){if(g.previousElementSibling)return g.previousElementSibling;let A=g;do A=A.previousSibling;while(A&&!JR(A));return A}function Dlt(g,{e:A,maskAllElementAttributes:I,maskAllText:e,elementAttributeIgnoreList:t,elementsChainAsString:o,disableCaptureUrlHashes:B}){var C,Q;if(!JR(g))return{props:{}};const i=[g],E=new Set([g]);let n=g;for(;n.parentNode&&!vw(n,"body")&&1e3>i.length;){if(H6A(n.parentNode)){const u=n.parentNode.host;if(E.has(u))break;E.add(u),i.push(u),n=u;continue}if(!JR(n.parentNode)||E.has(n.parentNode))break;E.add(n.parentNode),i.push(n.parentNode),n=n.parentNode}const s=A.type==="click"&&g.namespaceURI==="http://www.w3.org/2000/svg"?i.findIndex(u=>vw(u,"button")||vw(u,"a")):-1;s>0&&(e=e||i.slice(0,s+1).some(u=>!E5(u)||sq(u)));const r=[],a={};let c,h=!1,l=!1;if(Gn(i,u=>{const G=E5(u);if(vw(u,"a")&&!I&&!t?.includes("href")){const m=u.getAttribute("href");h=!!(G&&m&&aq(m))&&(B?i3(m):m)}yB(nq(u),"ph-no-capture")&&(l=!0),r.push((function(m,p,k,S,R=!1){const x=m.tagName.toLowerCase(),N={tag_name:x};T6A.indexOf(x)>-1&&!k&&(N.$el_text=x.toLowerCase()==="a"||x.toLowerCase()==="button"?lvA(1024,FgI(m)):lvA(1024,BgA(m)));const U=nq(m);p||S?.includes("class")||0>=U.length||(N.classes=U.filter(function(q){return q!==""})),Gn(m.attributes,function(q){var j;if((!sq(m)||["name","id","class","aria-label"].indexOf(q.name)!==-1)&&!S?.includes(q.name)&&!p&&aq(q.value)&&(!qC(j=q.name)||j.substring(0,10)!=="_ngcontent"&&j.substring(0,7)!=="_nghost")){let W=q.value;q.name==="class"&&(W=v6A(W).join(" ")),N["attr__"+q.name]=lvA(1024,q.name==="href"&&R?i3(W):W)}});let K=1,Y=1,b=m;for(;b=llt(b);)K++,b.tagName===m.tagName&&Y++;return N.nth_child=K,N.nth_of_type=Y,N})(u,I,e,t,B)),Gn((function(m){if(!E5(m))return{};const p={};return Gn(m.attributes,function(k){if(k.name&&k.name.indexOf("data-ph-capture-attribute")===0){const S=k.name.replace("data-ph-capture-attribute-",""),R=k.value;S&&R&&aq(R)&&(p[S]=R)}}),p})(u),(m,p)=>{({}).hasOwnProperty.call(a,p)||(a[p]=m)})}),l)return{props:{},explicitNoCapture:l};if(s>0&&(g=i[s],r.splice(0,s)),e||(r[0].$el_text=vw(g,"a")||vw(g,"button")?FgI(g):BgA(g)),h){var D,d;r[0].attr__href=h;const u=(D=cJ(h))===null||D===void 0?void 0:D.host,G=(d=rvA())===null||d===void 0||(d=d.location)===null||d===void 0?void 0:d.host;u&&G&&u!==G&&(c=h)}return{props:sr((w=A.type,{$event_type:w,$ce_version:1}),o?{}:{$elements:r},{$elements_chain:(y=r,cB(y)?(function(u){return u.map(G=>{var m,p;let k="";if(G.tag_name&&(k+=G.tag_name),G.attr_class){G.attr_class.sort();for(const x of G.attr_class)k+=`.${x.replace(/"/g,"")}`}const S=QI(QI(QI(QI({},G.text?{text:G.text}:{}),{},{"nth-child":(m=G.nth_child)!==null&&m!==void 0?m:0,"nth-of-type":(p=G.nth_of_type)!==null&&p!==void 0?p:0},G.href?{href:G.href}:{}),G.attr_id?{attr_id:G.attr_id}:{}),G.attributes),R={};return aDA(S).sort(([x],[N])=>(function(U,K){return K>U?-1:U>K?1:0})(x,N)).forEach(([x,N])=>R[JgI(x.toString())]=JgI(N.toString())),k+=":",k+=aDA(R).map(([x,N])=>`${x}="${N}"`).join(""),k}).join(";")})((function(u){return u.map(G=>{var m,p;const k={text:(m=G.$el_text)===null||m===void 0?void 0:m.slice(0,400),tag_name:G.tag_name,href:(p=G.attr__href)===null||p===void 0?void 0:p.slice(0,2048),attr_class:U0t(G),attr_id:G.attr__id,nth_child:G.nth_child,nth_of_type:G.nth_of_type,attributes:{}};return aDA(G).filter(([S])=>S.indexOf("attr__")===0).forEach(([S,R])=>k.attributes[S]=R),k})})(y)):"")},!((C=r[0])===null||C===void 0)&&C.$el_text?{$el_text:(Q=r[0])===null||Q===void 0?void 0:Q.$el_text}:{},c&&A.type==="click"?{$external_click_url:c}:{},a),target:g};var y,w}const PII="autocapture";var dlt=class{el(){this.il=void 0,clearTimeout(this.nl),this.nl=void 0}sl(A){var I;if(!E5(A))return!0;const e=(I=this.rl().css_selector_ignorelist)!==null&&I!==void 0?I:O6A,t=new Set;let o=A;for(;o;){if(t.size>=1e3||t.has(o))return!0;t.add(o);const B=o,C=nq(B);if(yB(C,"ph-no-capture")||yB(C,"ph-sensitive")||sq(B)||e.some(i=>q6A(B,i)))return!0;const Q=o.parentNode;o=H6A(Q)?Q.host:Q&&JR(Q)?Q:null}return!1}ol(A){if(!this.isEnabled||A.type==="pointercancel")return void this.el();if(A.type==="pointerdown"){var I;this.el();const t=CgA(A);return void(A.isPrimary&&A.button===0&&!A.ctrlKey&&t&&JR(t)&&(this.il={target:t,excluded:this.sl(t),id:A.pointerId,x:A.clientX,y:A.clientY,released:!1,distinctId:(I=this.xa)===null||I===void 0?void 0:I.distinctId}))}const e=this.il;e&&(A.pointerId!==e.id||Math.abs(A.clientX-e.x)>5||Math.abs(A.clientY-e.y)>5?this.el():A.type==="pointerup"&&(e.released=!0,this.nl=setTimeout(()=>this.el(),0)))}al(A){var I;const e=this.il;this.el();const t=CgA(A);if(e?.released&&e.target.isConnected&&e.distinctId===((I=this.xa)===null||I===void 0?void 0:I.distinctId)&&A.pointerId===e.id&&(A.detail>0||A.pointerType==="touch"||A.pointerType==="pen")&&A.button===0&&5>=Math.abs(A.clientX-e.x)&&5>=Math.abs(A.clientY-e.y)&&t&&(vw(t,"html")||vw(t,"body"))){var o,B,C;if(e.excluded)return null;const Q=(o=this.rl().css_selector_ignorelist)!==null&&o!==void 0?o:O6A;return[t,(B=hgA())===null||B===void 0?void 0:B.documentElement,(C=hgA())===null||C===void 0?void 0:C.body].some(i=>{if(!i)return!1;const E=nq(i);return yB(E,"ph-no-capture")||yB(E,"ph-sensitive")||!E5(i)||sq(i)||Q.some(n=>q6A(i,n))})?null:e.target}}constructor(A){this.Ta=A,this.name=PII,this.ll=!1,this.ul=null,this.cl=!1,this.hl=new Map,this.dl=!1,this.Ar={enabled:!1,rageclick:!1,maskAllElementAttributes:!1,maskAllText:!1,disableCaptureUrlHashes:!1,remoteRequestsDisabled:!1},this.Ci=!1,this.Ta.refresh(this.Ar),this.rageclicks=new JII(this.Ar.rageclick),this.vl=null}setup(A){this.fl(),this.xa=A;const I=A.onRemoteConfig(this.onRemoteConfig.bind(this));this.Ci?I.dispose():(this.qa=I,this.startIfEnabled())}dispose(){var A;this.Ci||(this.Ci=!0,this.xa=void 0,(A=this.qa)===null||A===void 0||A.dispose(),this.qa=void 0,this.hl.clear(),this.vl=null,this.pl())}rl(){return this.Ta.refresh(this.Ar),this.Ar}fl(){var A,I;return this.rl(),this.Ar.url_allowlist=(A=this.Ar.url_allowlist)===null||A===void 0?void 0:A.map(e=>new RegExp(e)),this.Ar.url_ignorelist=(I=this.Ar.url_ignorelist)===null||I===void 0?void 0:I.map(e=>new RegExp(e)),this.Ar}gl(){const A=rvA(),I=hgA();if(!this.isBrowserSupported())return void hvA.info("Disabling Automatic Event Collection because this browser is not supported");if(!A||!I)return;this.ml=A,this.yl=I;const e=this.bl=t=>{t=t||A?.event;try{if(t.type==="blur")return void this.el();if(t.type.indexOf("pointer")===0)return void this.ol(t);const o=t.type==="click"?this.al(t):void 0;if(Pc(o))return;this._l(t,"$autocapture",o)}catch(o){hvA.error("Failed to capture event",o)}};if(NE(A,"blur",e),NE(I,"submit",e,{capture:!0}),NE(I,"change",e,{capture:!0}),NE(I,"click",e,{capture:!0}),Gn(["pointerdown","pointermove","pointerup","pointercancel"],t=>{NE(I,t,e,{capture:!0})}),this.rl().capture_copied_text){const t=this.wl=o=>{o=o||A?.event;try{this._l(o,cvA)}catch(B){hvA.error("Failed to capture clipboard event",B)}};NE(I,"copy",t,{capture:!0}),NE(I,"cut",t,{capture:!0}),NE(I,"paste",t,{capture:!0})}}pl(){const A=this.ml,I=this.yl;this.el(),this.bl&&(A?.removeEventListener("blur",this.bl),Gn(["pointerdown","pointermove","pointerup","pointercancel"],e=>{I?.removeEventListener(e,this.bl,!0)}),I?.removeEventListener("submit",this.bl,!0),I?.removeEventListener("change",this.bl,!0),I?.removeEventListener("click",this.bl,!0),this.bl=void 0),this.wl&&(I?.removeEventListener("copy",this.wl,!0),I?.removeEventListener("cut",this.wl,!0),I?.removeEventListener("paste",this.wl,!0),this.wl=void 0),this.ml=void 0,this.yl=void 0,this.ll=!1}startIfEnabled(){this.isEnabled||this.el(),!this.Ci&&this.xa&&this.isEnabled&&!this.ll&&(this.gl(),this.ll=!0)}onRemoteConfig(A){if(this.Ci)return;if(this.cl=!0,!A.ok)return void this.startIfEnabled();const I=A.config;I.elementsChainAsString&&(this.dl=I.elementsChainAsString);const e=I.autocapture_opt_out;var t;Fm(e)&&((t=this.xa)===null||t===void 0||t.kv.set("$autocapture_disabled_server_side",e),this.ul=e),this.startIfEnabled()}setElementSelectors(A,I=this){if(this.Ci)return;A.size?this.hl.set(I,new Set(A)):this.hl.delete(I);const e=new Set;this.hl.forEach(t=>{t.forEach(o=>e.add(o))}),this.vl=e}getElementSelectors(A,I){var e;const t=[];return(e=this.vl)===null||e===void 0||e.forEach(o=>{var B;const C=(B=hgA())===null||B===void 0?void 0:B.querySelectorAll(o);C?.forEach(Q=>{A!==Q&&I!==Q||yB(t,o)||t.push(o)})}),t}get isEnabled(){var A,I;if(this.Ci)return!1;const e=(A=this.xa)===null||A===void 0?void 0:A.kv.get(bAI),t=this.ul,o=this.rl();if(!o.remoteRequestsDisabled&&!this.cl)return!1;const B=o.remoteRequestsDisabled&&!this.cl;if(Pc(t)&&!Fm(e)&&!B)return!1;const C=(I=this.ul)!==null&&I!==void 0?I:!!e;return!!o.enabled&&!C}_l(A,I="$autocapture",e){if(!this.isEnabled)return void this.el();let t=e||CgA(A);dgI(t)&&(t=t.parentNode||null);const o=this.fl();var B;I==="$autocapture"&&A.type==="click"&&A instanceof MouseEvent&&o.rageclick&&(!((B=this.rageclicks)===null||B===void 0)&&B.isRageClick(A.clientX,A.clientY,A.timeStamp||new Date().getTime()))&&MgI(t,o.rageclick)&&this._l(A,"$rageclick",e);const C=I===cvA,Q=C?QI(QI({},o),{},{dom_event_allowlist:void 0}):o;if(t&&(function(s,r,a,c,h,l){var D;const d=typeof window>"u"?void 0:window;if(!d||j6A(s)||a?.url_allowlist&&!ygI(a.url_allowlist,l)||a?.url_ignorelist&&ygI(a.url_ignorelist,l))return!1;if(a?.dom_event_allowlist){const G=a.dom_event_allowlist;if(G&&!G.some(m=>r.type===m))return!1}const{parentIsUsefulElement:y,targetElementList:w}=SgI(s,c);if(!(function(G,m){const p=m?.element_allowlist;if(Ye(p))return!0;for(const k of G)if(p.some(S=>k.tagName.toLowerCase()===S))return!0;return!1})(w,a)||!Z6A(w,a?.css_selector_allowlist)||Z6A(w,(D=a?.css_selector_ignorelist)!==null&&D!==void 0?D:O6A))return!1;try{const G=d.getComputedStyle(s);if(G&&G.getPropertyValue("cursor")==="pointer"&&r.type==="click")return!0}catch{}const u=s.tagName.toLowerCase();switch(u){case"html":return!1;case"form":return(h||["submit"]).indexOf(r.type)>=0;case"input":case"select":case"textarea":return(h||["change","click"]).indexOf(r.type)>=0;default:return y?(h||["click"]).indexOf(r.type)>=0:(h||["click"]).indexOf(r.type)>=0&&(T6A.indexOf(u)>-1||s.getAttribute("contenteditable")==="true")}})(t,A,Q,C,C?["copy","cut","paste"]:void 0,{config:{get_current_url:o.getCurrentUrl}})){var i;const{props:s,explicitNoCapture:r,target:a}=Dlt(t,{e:A,maskAllElementAttributes:o.maskAllElementAttributes,maskAllText:o.maskAllText,elementAttributeIgnoreList:o.element_attribute_ignorelist,elementsChainAsString:this.dl,disableCaptureUrlHashes:o.disableCaptureUrlHashes});if(r)return!1;const c=this.getElementSelectors(t,a);if(c&&c.length>0&&(s.$element_selectors=c),I===cvA){const h=A.type||"clipboard";if(h!=="paste"){var E,n;const l=(E=rvA())===null||E===void 0||(E=E.getSelection())===null||E===void 0?void 0:E.toString(),D=wgI(l);if(!D)return!1;s.$selected_content=D,s.$clipboard_text_length=(n=l?.length)!==null&&n!==void 0?n:0}s.$copy_type=h}return(i=this.xa)===null||i===void 0||i.capture(I,s),!0}}isBrowserSupported(){var A;return C0((A=hgA())===null||A===void 0?void 0:A.querySelectorAll)}};const KII="featureFlags",LII="logs";var ylt=class{constructor(A){this._instance=A}initialize(){}get(A){const I=this._instance.persistence;if(typeof A=="string")return I?.get_property(A);const e={};for(const t of A){const o=I?.get_property(t);Ye(o)||(e[t]=o)}return e}set(A,I){var e;(e=this._instance.persistence)===null||e===void 0||e.register(typeof A=="string"?{[A]:I}:A)}remove(A){var I;(I=this._instance.persistence)===null||I===void 0||I.unregister(A)}},wlt=class{constructor(A){this.instance=A,this.$=Dt,this.kv=new ylt(A),this.onSession=I=>yDA(this.instance.onSessionId(e=>{try{I(e)}catch(t){this.$.error("Browser extension session listener failed",t)}})),this.onEvent=I=>yDA(this.instance._addCaptureHook((e,t)=>{if(t)try{I({event:e,properties:t.properties})}catch(o){this.$.error("Browser extension event listener failed",o)}})),this.onRemoteConfig=I=>{const e=o=>{try{I(o)}catch(B){this.$.error("Browser extension remote config listener failed",B)}},t=this.instance.ur.on("extensionsRemoteConfig",e);return this.instance.cr&&e(this.instance.cr),yDA(t)}}get logger(){return this.$}get distinctId(){return this.instance.get_distinct_id()}get anonymousId(){var A;return(A=this.instance.get_property("$device_id"))!==null&&A!==void 0?A:this.distinctId}get deviceId(){const A=this.instance.get_property(D6A);return typeof A=="string"?A:void 0}get library(){return{name:ak.LIB_NAME,version:ak.LIB_VERSION}}get initialPersonProperties(){var A,I;return(A=(I=this.instance.persistence)===null||I===void 0?void 0:I.get_initial_props())!==null&&A!==void 0?A:{}}get groups(){return this.instance.getGroups()}get session(){try{var A,I,e,t,o;const B=(A=this.instance.sessionManager)===null||A===void 0?void 0:A.checkAndGetSessionAndWindowId(!0);return{sessionId:(I=B?.sessionId)!==null&&I!==void 0?I:"",windowId:(e=B?.windowId)!==null&&e!==void 0?e:"",sessionStartTimestamp:(t=B?.sessionStartTimestamp)!==null&&t!==void 0?t:0,lastActivityTimestamp:(o=B?.lastActivityTimestamp)!==null&&o!==void 0?o:0}}catch{return{sessionId:"",windowId:"",sessionStartTimestamp:0,lastActivityTimestamp:0}}}get isOptedOut(){return this.instance.has_opted_out_capturing()}get canCapture(){return C0(this.instance.is_capturing)?this.instance.is_capturing():!this.isOptedOut}get projectToken(){return this.instance.config.token}getExtension(A){let I;switch(A){case KII:case"featureFlagsCommon":I=this.instance.featureFlags;break;case LII:I=this.instance.logs;break;case"surveys":I=this.instance.surveys;break;case PII:I=this.instance.autocapture}return I}capture(A,I,e){if(!e)return void this.instance.capture(A,I);const t=QI({timestamp:e.timestamp,uuid:e.uuid,$set:e.set,$set_once:e.setOnce},e.delivery==="unload"?{transport:"sendBeacon",send_instantly:!0}:{});this.instance.capture(A,I,t)}registerDynamicEventProperties(A){return yDA(this.instance.dr(A))}sendRequest(A){var I=this;return Qa(function*(e,t={}){var o;const B=(o=t.target)!==null&&o!==void 0?o:"api",C=t.query?GDA(e,t.query):e,Q=I.instance.requestRouter.endpointFor(B,C),i={method:t.method,url:Q,data:t.body,headers:t.headers,timeout:t.timeoutMs,fireCallbackOnDrop:!0,transport:t.transport,compression:t.compression,compressionFallback:t.target==="flags"&&t.compression==="best-available"?HHA.Base64:void 0,timestampMode:t.sentAt};return B==="api"&&e==="/i/v1/logs"&&(i.batchKey="logs"),t.transport==="sendBeacon"?(I.instance._send_request(i),{statusCode:202}):new Promise(E=>{i.callback=E,I.instance._send_request(i)})}).apply(this,arguments)}};const lgA={};let DvA=0;const DgA=()=>{},YII='Consent opt in/out is not valid with cookieless_mode="always" and will be ignored',wq="Surveys module not available",_II="sanitize_properties is deprecated. Use before_send instead",bII="Invalid value for property_denylist config: ",ult=["$recording_status","$sdk_debug_recording_script_not_loaded","$sdk_debug_replay_url_trigger_status","$sdk_debug_replay_event_trigger_status","$sdk_debug_replay_linked_flag_trigger_status","$sdk_debug_replay_rrweb_error","$sdk_debug_replay_internal_buffer_length","$sdk_debug_replay_flushed_size"],Glt=["$feature_flag_called","$$heatmap","$snapshot"],HII=g=>g.charAt(0)==="$"&&!yB(Glt,g),mlt=/^[A-Za-z0-9_-]{1,400}$/,vII=/^fb\.[0-9]+\.[0-9]+\.[A-Za-z0-9_-]+(?:\.[A-Za-z0-9_-]+)?$/,TII=/^fb\.[0-9]+\.[0-9]+\.[0-9]+$/,plt=["token","distinct_id",zAI],dgA="posthog",klt=g=>{const A={};return g&&g!=="unset"&&("2025-11-30">g||(A.strictMinimumDuration=!0),"2026-05-30">g||(A.canvasCapture={resolutionScale:.6}),"2026-06-25">g||(A.streamNetworkBody=!0),"2026-08-30">g||(A.captureJsonLd=!0)),A},dvA=g=>{var A;return QI({api_host:"https://us.i.posthog.com",flags_api_host:null,ui_host:null,asset_host:null,token:"",autocapture:!0,cross_subdomain_cookie:D0t(ro?.location),persistence:"localStorage+cookie",persistence_name:"",cookie_persisted_properties:[],loaded:DgA,save_campaign_params:!0,custom_campaign_params:[],custom_blocked_useragents:[],save_referrer:!0,capture_pageleave:"if_capture_pageview",defaults:g??"unset",__preview_deferred_init_extensions:!1,__preview_replay_sync_fetch:!1,__preview_external_dependency_versioned_paths:!1,__preview_cookie_wins_on_conflict:!1,debug:Ca&&qC(Ca?.search)&&Ca.search.indexOf("__posthog_debug=true")!==-1||!1,cookie_expiration:365,upgrade:!1,disable_session_recording:!1,disable_persistence:!1,disable_web_experiments:!0,disable_surveys:!1,disable_surveys_automatic_display:!1,disable_conversations:!1,disable_product_tours:!1,disableDeviceModel:!1,reuseAnonymousId:!1,disable_external_dependency_loading:!1,strict_script_versioning:"fallback",enable_recording_console_log:void 0,secure_cookie:(Se==null||(A=Se.location)===null||A===void 0?void 0:A.protocol)==="https:",ip:!1,opt_out_capturing_by_default:!1,opt_out_persistence_by_default:!1,opt_out_useragent_filter:!1,opt_out_capturing_persistence_type:"localStorage",consent_persistence_name:null,opt_out_capturing_cookie_prefix:null,opt_in_site_apps:!1,property_denylist:[],respect_dnt:!1,sanitize_properties:null,request_headers:{},request_batching:!0,properties_string_max_length:65535,mask_all_element_attributes:!1,mask_all_text:!1,mask_personal_data_properties:!1,custom_personal_data_properties:[],advanced_disable_flags:!1,advanced_disable_decide:!1,advanced_disable_feature_flags:!1,advanced_disable_feature_flags_on_first_load:!1,advanced_only_evaluate_survey_feature_flags:!1,advanced_feature_flags_dedup_per_session:!1,advanced_enable_surveys:!1,advanced_disable_toolbar_metrics:!1,feature_flag_request_timeout_ms:3e3,feature_flag_request_max_retries:1,surveys_request_timeout_ms:1e4,on_request_error(I){Dt.error("Bad HTTP status: "+I.statusCode+" "+I.text)},get_device_id:I=>I,capture_performance:void 0,name:"posthog",bootstrap:{},disable_compression:!1,session_idle_timeout_seconds:1800,person_profiles:CgI,before_send:void 0,get_current_url:void 0,request_queue_config:{flush_interval_ms:3e3},error_tracking:{},_onCapture:DgA},(I=>({rageclick:I&&I>="2026-05-30"?{content_ignorelist:W6A,ignore_text_selection:!0}:!I||"2025-11-30">I||{content_ignorelist:!0},capture_pageview:!I||"2025-05-24">I||"history_change",session_recording:klt(I),external_scripts_inject_target:I&&I>="2026-01-30"?"head":"body",internal_or_test_user_hostname:I&&I>="2026-01-30"?/^(localhost|127\.0\.0\.1)$/:void 0,persistence_save_debounce_ms:I&&I>="2026-05-30"?250:0,split_storage:!(!I||"2026-05-30">I),detect_google_search_app:!(!I||"2026-05-30">I),disable_capture_url_hashes:!(!I||"2026-06-25">I),cookieWinsOnConflict:!(!I||I==="unset"||"2026-08-29">I)}))(g))},Mlt=[["process_person","person_profiles"],["xhr_headers","request_headers"],["cookie_name","persistence_name"],["disable_cookie","disable_persistence"],["__preview_disable_beacon","disable_beacon"],["store_google","save_campaign_params"],["verbose","debug"],["__preview_cookie_wins_on_conflict","cookieWinsOnConflict"]],qII=g=>{const A={};for(const[t,o]of Mlt)Ye(g[t])||(A[o]=g[t]);const I=sr({},A,g),e=g.__preview_external_dependency_versioned_paths;return Ye(e)||(Ye(g.strict_script_versioning)&&(I.strict_script_versioning=!!e),qC(e)&&Ye(g.asset_host)&&(I.asset_host=e)),cB(g.property_blacklist)&&(Ye(g.property_denylist)?I.property_denylist=g.property_blacklist:cB(g.property_denylist)?I.property_denylist=[...g.property_blacklist,...g.property_denylist]:Dt.error(bII+g.property_denylist)),I};var Slt=class{constructor(){this.__forceAllowLocalhost=!1}get Qc(){return this.__forceAllowLocalhost}set Qc(A){Dt.error("WebPerformanceObserver is deprecated and has no impact on network capture. Use `_forceAllowLocalhostNetworkCapture` on `posthog.sessionRecording`"),this.__forceAllowLocalhost=A}},ygA=class fY{Zc(A){if(!A)return;const I=this.Jc.indexOf(A);I!==-1&&this.Jc.splice(I,1)}Kc(A,I){var e;return this.Zc(A),this.Jc.push(I),(e=I.initialize)===null||e===void 0||e.call(I),I}Xc(){return this.config.cookieless_mode==="always"||this.config.cookieless_mode==="on_reject"&&this.consent.isRejected()}Yc(){if(this.th||this.config.reuseAnonymousId||this.config.segment||this.Xc())return;const A=this.config.persistence==="memory"||this.config.persistence==="sessionStorage";if(!A&&!this.config.disable_persistence||this.eh)return;let I,e,t;A?(I=`persistence is set to '${this.config.persistence}'`,e=this.config.persistence==="memory"?"on every page load":"for every new browser tab or window",t="Either set persistence to 'localStorage+cookie', keep this persistence and pass a stable ID through bootstrap.distinctID, or enable reuseAnonymousId."):(I="persistence is disabled (disable_persistence is true)",e="on every page load",t="Either set disable_persistence to false, keep persistence disabled and pass a stable ID through bootstrap.distinctID, or enable reuseAnonymousId."),this.th=!0,console.warn("[PostHog.js]",`${I} but no bootstrap.distinctID was provided. PostHog will mint a new distinct ID ${e}, so calling identify() merges a new ID onto the person each time. A person can then pass the distinct-ID limit and its events stop appearing on person pages and the session tab. ${t}`)}ih(){const A=this.persistence;if(!A||this.nh)return;if(this.Xc())return void(this.config.cookieless_mode==="on_reject"&&this.get_distinct_id()!=="$posthog_cookieless"&&(this.sh(),this.rh()));if(this.get_distinct_id()!=="$posthog_cookieless")return;this.oh()||A.load(!0);const I=this.get_distinct_id();if(!I||I==="$posthog_cookieless"){const e=this.config.get_device_id(UR());this.register({distinct_id:e,$device_id:e}),A.set_property(Um,rJ)}this.sh()}get decideEndpointWasHit(){var A,I;return(A=(I=this.featureFlags)===null||I===void 0?void 0:I.hasLoadedFlags)!==null&&A!==void 0&&A}get flagsEndpointWasHit(){var A,I;return(A=(I=this.featureFlags)===null||I===void 0?void 0:I.hasLoadedFlags)!==null&&A!==void 0&&A}constructor(){var A;this.ah=!1,this.uh=!1,this.webPerformance=new Slt,this.hh=!1,this.version=ak.LIB_VERSION,this.dh=new Set,this.fh="",this.ur=new mDA,this.Jc=[],this.ph=[],this.gh=!1,this.eh=!1,this.th=!1,this.nh=!1,this._calculate_event_properties=this.calculateEventProperties.bind(this),this.config=dvA(),this.SentryIntegration=K0t,this.sentryIntegration=e=>(function(t,o){const B=YgI(t,o);return{name:LgI,processEvent:C=>B(C)}})(this,e),this.__request_queue=[],this.__loaded=!1,this.analyticsDefaultEndpoint="/e/",this.mh=!1,this.yh=null,this.bh=null,this._h=null,this.scrollManager=new Blt(this),this.pageViewManager=new _gI(this),this.rateLimiter=new O0t(this),this.requestRouter=new nlt(this),this.consent=new k0t(this),this.externalIntegrations=new hlt(this);const I=(A=fY.__defaultExtensionClasses)!==null&&A!==void 0?A:{};this.featureFlags=I.featureFlags&&new I.featureFlags(this),this.toolbar=I.toolbar&&new I.toolbar(this),this.surveys=I.surveys&&new I.surveys(this),this.conversations=I.conversations&&new I.conversations(this),this.logs=I.logs&&new I.logs(this),this.metrics=I.metrics&&new I.metrics(this),this.experiments=I.experiments&&new I.experiments(this),this.exceptions=I.exceptions&&new I.exceptions(this),this.people={set:(e,t,o)=>{const B=qC(e)?{[e]:t}:e;this.setPersonProperties(B),o?.({})},set_once:(e,t,o)=>{const B=qC(e)?{[e]:t}:e;this.setPersonProperties(void 0,B),o?.({})}},this.on("eventCaptured",e=>Dt.info(`send "${e?.event}"`,e))}init(A,I,e){if(e&&e!==dgA){var t;const o=(t=lgA[e])!==null&&t!==void 0?t:new fY;return o._init(A,I,e),lgA[e]=o,lgA[dgA][e]=o,o}return this._init(A,I,e)}_init(A,I={},e){var t,o,B;const C=qC(A)?A.trim():"";if(!C)return Dt.critical("PostHog was initialized without a token. This likely indicates a misconfiguration. Please check the first argument passed to posthog.init()"),this;var Q;if(this.__loaded)return C!==((Q=this.config)===null||Q===void 0?void 0:Q.token)?console.warn("[PostHog.js]",`You have already initialized PostHog with a different project token! Re-initializing is a no-op, so events will keep going to the project this instance was initialized with. To capture into a second project, load PostHog once, then initialize a named instance after the SDK has loaded, e.g. posthog.init('${C}', { ... }, 'project2')`):console.warn("[PostHog.js]","You have already initialized PostHog! Re-initializing is a no-op"),this;this.__loaded=!0,this.config=dvA(I.defaults),I.debug=this.wh(I.debug),this.kh=I,this.Sh=[],I.person_profiles?this.bh=I.person_profiles:I.process_person&&(this.bh=I.process_person);const i=dvA(I.defaults),E=qII(I),n=sr({},i,E,{name:e,token:C});yC(i.rageclick)&&yC(E.rageclick)&&(n.rageclick=sr({},i.rageclick,E.rageclick)),yC(i.session_recording)&&yC(E.session_recording)&&(n.session_recording=sr({},i.session_recording,E.session_recording)),this.set_config(n),this.config.on_xhr_error&&Dt.error("on_xhr_error is deprecated. Use on_request_error instead"),this.compression=I.disable_compression?void 0:$M.GZipJS;const s=this.oh(),r=!this.Xc();if(this.persistence=new X6A(this.config,s,!0,r),this.sessionPersistence=this.config.persistence==="sessionStorage"||this.config.persistence==="memory"?this.persistence:new X6A(QI(QI({},this.config),{},{persistence:"sessionStorage"}),s,!1,r),this.fh="ph_"+(this.config.persistence_name||this.config.token)+"_session_registered_properties",this.config.persistence!=="memory"&&!s&&ia.$t()){const D=ia.Lt(this.fh);cB(D)&&D.forEach(d=>{qC(d)&&this.dh.add(d)})}else ia.Pt(this.fh);const a=QI({},this.persistence.props),c=QI({},this.sessionPersistence.props);this.register({$initialization_time:new Date().toISOString()}),this.xh=new elt((D,d)=>this.$h(D,d),this.config.request_queue_config),this.Ch=new olt(this),this.__request_queue=[];const h=this.Xc();h||(this.sessionManager=new MII(this),this.sessionPropsManager=new pII(this,this.sessionManager,this.persistence),this.sessionManager.onSessionId((D,d,y)=>{(y?.activityTimeout||y?.sessionPastMaximumLength||y?.crossTabAdoption)&&this.Th()})),this.Ih(),this.config.__preview_deferred_init_extensions?(Dt.info("Deferring extension initialization to improve startup performance"),this.Mh=setTimeout(()=>{this.Mh=void 0,this.Eh(h)},0)):(Dt.info("Initializing extensions synchronously"),this.Eh(h)),ak.DEBUG=ak.DEBUG||this.config.debug,ak.DEBUG&&Dt.info("Starting in debug mode",{this:this,config:I,thisC:QI({},this.config),p:a,s:c}),this.config.identity_distinct_id&&!(!((t=I.bootstrap)===null||t===void 0)&&t.distinctID)&&(I.bootstrap=QI(QI({},I.bootstrap),{},{distinctID:this.config.identity_distinct_id,isIdentifiedID:!0}));const l=(o=I.bootstrap)===null||o===void 0?void 0:o.distinctID;if(this.eh=!!l&&!ZAA(l),(B=I.bootstrap)===null||B===void 0?void 0:B.distinctID){const D=I.bootstrap.distinctID,d=this.get_distinct_id(),y=this.persistence.get_property(Um);if(I.bootstrap.isIdentifiedID&&d!=null&&d!==D&&y==="anonymous")this.identify(D);else if(I.bootstrap.isIdentifiedID&&d!=null&&d!==D&&y==="identified")Dt.warn("Bootstrap distinctID differs from an already-identified user. The existing identity is preserved. Call reset() before reinitializing if you intend to switch users.");else{const w=this.config.get_device_id(UR()),u=I.bootstrap.isIdentifiedID?w:D;this.persistence.set_property(Um,I.bootstrap.isIdentifiedID?nDA:rJ),this.register({distinct_id:D,$device_id:u})}}if(h)this.register_once({distinct_id:R6A,$device_id:null},"");else if(!this.get_distinct_id()){const D=this.config.get_device_id(UR());this.register_once({distinct_id:D,$device_id:D},""),this.persistence.set_property(Um,rJ)}return NE(Se,"onpagehide"in self?"pagehide":"unload",this._handle_unload.bind(this),{passive:!1}),NE(Se,"pageshow",()=>{var D;this.ah=!1,this.uh||(D=this.Ch)===null||D===void 0||D.resume()}),I.segment?KgI(this,()=>this.Ph()):this.Ph(),C0(this.config._onCapture)&&this.config._onCapture!==DgA&&(Dt.warn("onCapture is deprecated. Please use `before_send` instead"),this.on("eventCaptured",D=>this.config._onCapture(D.event,D))),this.config.ip&&Dt.warn('The `ip` config option has NO EFFECT AT ALL and has been deprecated. Use a custom transformation or "Discard IP data" project setting instead. See https://posthog.com/tutorials/web-redact-properties#hiding-customer-ip-address for more information.'),this.config.disableDeviceModel||(function(){return fII.apply(this,arguments)})().then(D=>{D&&this.register({[d6A]:D})}).catch(DgA),this}Rh(A){const I=A;return qC(I.name)&&C0(I.setup)}Ah(A,I){var e=this;this.Rh(A)?I.push(Qa(function*(){try{yield A.setup(e.Fh())}catch(o){Dt.error(`Failed to set up extension "${A.name}"`,o);try{var t;yield(t=A.dispose)===null||t===void 0?void 0:t.call(A)}catch(B){Dt.error(`Failed to dispose extension "${A.name}"`,B)}}})):this.Jc.push(A)}Ih(){var A,I,e,t=this;const o=(A=(I=this.config.__extensionClasses)===null||I===void 0?void 0:I.featureFlags)!==null&&A!==void 0?A:(e=fY.__defaultExtensionClasses)===null||e===void 0?void 0:e.featureFlags;var B,C,Q;if(o)if(this.featureFlags&&this.featureFlags instanceof o||((B=this.Oh)===null||B===void 0||B.call(this),this.Oh=void 0,this.featureFlags=new o(this)),C0(this.featureFlags.onReloading)&&C0(this.featureFlags.setup)){if(!this.Oh){this.Oh=this.featureFlags.onReloading(()=>{this.ur.emit("featureFlagsReloading",!0)});const i=this.featureFlags;Qa(function*(){try{yield i.setup(t.Fh())}catch(E){Dt.error("Failed to set up feature flags",E);const n=t.Oh;t.Oh=void 0;try{n?.()}catch(s){Dt.error("Failed to unsubscribe feature flag reloading",s)}try{yield i.dispose()}catch(s){Dt.error("Failed to dispose feature flags",s)}}})()}}else(C=(Q=this.featureFlags).initialize)===null||C===void 0||C.call(Q)}Eh(A){const I=performance.now(),e=QI(QI({},fY.__defaultExtensionClasses),this.config.__extensionClasses),t=[];var o,B,C,Q,i,E,n,s;e.exceptions&&this.Jc.push(this.exceptions=(o=this.exceptions)!==null&&o!==void 0?o:new e.exceptions(this)),e.historyAutocapture&&this.Jc.push(this.historyAutocapture=new e.historyAutocapture(this)),e.tracingHeaders&&this.Jc.push(this.tracingHeaders=new e.tracingHeaders(this)),e.siteApps&&this.Jc.push(this.siteApps=new e.siteApps(this)),e.sessionRecording&&!A&&this.Jc.push(this.sessionRecording=new e.sessionRecording(this)),this.config.disable_scroll_properties||t.push(()=>{this.scrollManager.startMeasuringScrollPosition()}),e.autocapture&&this.Ah(this.autocapture=new e.autocapture(this),t),e.surveys&&this.Ah(this.surveys=(B=this.surveys)!==null&&B!==void 0?B:new e.surveys(this),t),e.logs&&this.Ah(this.logs=(C=this.logs)!==null&&C!==void 0?C:new e.logs(this),t),e.metrics&&this.Jc.push(this.metrics=(Q=this.metrics)!==null&&Q!==void 0?Q:new e.metrics(this)),e.conversations&&this.Jc.push(this.conversations=(i=this.conversations)!==null&&i!==void 0?i:new e.conversations(this)),e.productTours&&this.Jc.push(this.productTours=new e.productTours(this)),e.heatmaps&&this.Jc.push(this.heatmaps=new e.heatmaps(this)),e.webVitalsAutocapture&&this.Jc.push(this.webVitalsAutocapture=new e.webVitalsAutocapture(this)),e.exceptionObserver&&this.Jc.push(this.exceptionObserver=new e.exceptionObserver(this)),e.deadClicksAutocapture&&this.Jc.push(this.deadClicksAutocapture=new e.deadClicksAutocapture(this,P0t)),e.toolbar&&this.Jc.push(this.toolbar=(E=this.toolbar)!==null&&E!==void 0?E:new e.toolbar(this)),e.experiments&&this.Jc.push(this.experiments=(n=this.experiments)!==null&&n!==void 0?n:new e.experiments(this)),e.webMCP&&this.Jc.push(this.webMCP=(s=this.webMCP)!==null&&s!==void 0?s:new e.webMCP(this)),this.Jc.forEach(r=>{r.initialize&&t.push(()=>{var a;(a=r.initialize)===null||a===void 0||a.call(r)})}),t.push(()=>{if(this.Dh){const r=this.Dh;this.Dh=void 0,this.Jc.forEach(a=>{var c;return(c=a.onRemoteConfig)===null||c===void 0?void 0:c.call(a,r)})}}),this.Lh(t,I)}Lh(A,I){for(;A.length>0;){if(this.config.__preview_deferred_init_extensions&&performance.now()-I>=30&&A.length>0)return void(this.Mh=setTimeout(()=>{this.Mh=void 0,this.Lh(A,I)},0));const t=A.shift();if(t)try{t()}catch(o){Dt.error("Error initializing extension:",o)}}const e=Math.round(performance.now()-I);this.register_for_session({[XAI]:this.config.__preview_deferred_init_extensions?"deferred":"synchronous",[$AI]:e}),this.config.__preview_deferred_init_extensions&&Dt.info(`PostHog extensions initialized (${e}ms)`)}zu(A){if(!ro||!ro.body)return Dt.info("document not ready yet, trying again in 500 milliseconds..."),void setTimeout(()=>{this.zu(A)},500);if(this.config.__preview_deferred_init_extensions&&(this.Dh=A),this.cr=A,this.compression=void 0,A.ok){var I;const e=A.config;e.supportedCompression&&!this.config.disable_compression&&(this.compression=yB(e.supportedCompression,$M.GZipJS)?$M.GZipJS:yB(e.supportedCompression,$M.Base64)?$M.Base64:void 0),!((I=e.analytics)===null||I===void 0)&&I.endpoint&&(this.analyticsDefaultEndpoint=e.analytics.endpoint)}this.set_config({person_profiles:this.bh?this.bh:CgI}),this.ur.emit("extensionsRemoteConfig",A),this.Jc.forEach(e=>{var t;return(t=e.onRemoteConfig)===null||t===void 0?void 0:t.call(e,A)})}Ph(){try{this.config.loaded(this)}catch(A){Dt.critical("`loaded` function failed",A)}if(this.Nh(),this.config.internal_or_test_user_hostname&&Ca?.hostname){const A=Ca.hostname,I=this.config.internal_or_test_user_hostname;(typeof I=="string"?A===I:I.test(A))&&this.setInternalOrTestUser()}this.config.capture_pageview&&setTimeout(()=>{(this.consent.isOptedIn()||this.Xc())&&this.qh()},1),this.jh=new eII(this),this.jh.load()}Nh(){var A;this.is_capturing()&&this.config.request_batching&&((A=this.xh)===null||A===void 0||A.enable())}_dom_loaded(){this.is_capturing()&&Qq(this.__request_queue,A=>this.$h(A)),this.__request_queue=[],this.Nh()}_handle_unload(){var A,I,e,t,o,B;this.ah=!0,(A=this.surveys)===null||A===void 0||(I=A.handlePageUnload)===null||I===void 0||I.call(A),(e=this.metrics)===null||e===void 0||e.flush("sendBeacon"),this.config.request_batching?(this.Bh()&&this.capture(QgI),(t=this.logs)===null||t===void 0||t.flushLogs("sendBeacon"),(o=this.xh)===null||o===void 0||o.unload(),(B=this.Ch)===null||B===void 0||B.unload()):this.Bh()&&this.capture(QgI,null,{transport:"sendBeacon"})}_send_request(A){mII(this,A)}$h(A,I){this.Ch?this.Ch.retriableRequest(A,I):this._send_request(I?QI(QI({},A),{},{transport:I}):A)}_execute_array(A){DvA++;try{let I;const e=[],t=[],o=[];Qq(A,C=>{if(C)if(I=C[0],cB(I))o.push(C);else if(C0(C))try{C.call(this)}catch(Q){Dt.error("Error executing queued PostHog call",C,Q)}else cB(C)&&I==="alias"?e.push(C):cB(C)&&I.indexOf("capture")!==-1&&C0(this[I])?o.push(C):t.push(C)});const B=function(C,Q){Qq(C,function(i){try{if(cB(i[0])){let E=Q;Gn(i,function(n){E=E[n[0]].apply(E,n.slice(1))})}else Q[i[0]].apply(Q,i.slice(1))}catch(E){Dt.error("Error executing queued PostHog call",i,E)}})};B(e,this),B(t,this),B(o,this)}finally{DvA--}}push(A){if(DvA>0&&cB(A)&&qC(A[0])){const I=fY.prototype[A[0]];return void(C0(I)&&I.apply(this,A.slice(1)))}this._execute_array([A])}get zh(){return{property:HAI,persistenceKey:oq,cookieName:"_fbc",pattern:vII,register:(A,I)=>{var e;return(e=this.persistence)===null||e===void 0?void 0:e.register({[oq]:{value:A,delivered:I}})},unregister:()=>{var A;return(A=this.persistence)===null||A===void 0?void 0:A.unregister(oq)}}}get Hh(){return{property:vAI,persistenceKey:IgA,cookieName:"_fbp",pattern:TII,register:(A,I)=>{var e;return(e=this.persistence)===null||e===void 0?void 0:e.register({[IgA]:{value:A,delivered:I}})},unregister:()=>{var A;return(A=this.persistence)===null||A===void 0?void 0:A.unregister(IgA)}}}Uh(A){var I;const e=(I=this.persistence)===null||I===void 0?void 0:I.get_property(A.persistenceKey);return qC(e)&&A.pattern.test(e)?{value:e,delivered:!1}:yC(e)&&qC(e.value)&&A.pattern.test(e.value)?{value:e.value,delivered:e.delivered===!0}:void 0}Wh(A,I,e){return I===e?.value?{value:I,pending:!e.delivered}:(A.register(I,!1),{value:I,pending:!0})}Vh(A){if(!this.config.save_campaign_params||this.Xc())return;const I=tgA(A.cookieName);return qC(I)&&A.pattern.test(I)?I:void 0}Gh(A,I,e,t){if(!this.persistence)return;const o=this.zh;this.persistence.refreshKey(o.persistenceKey);const B=this.Uh(o);if(t)return void o.unregister();if(e)return qC(I)&&vII.test(I)?this.Wh(o,I,B):void o.unregister();const C=qC(A)&&mlt.test(A)?A:void 0,Q=this.Vh(o);return Q&&((i,E,n)=>{const s=i.split(".");if(E)return s[3]===E;if(!n)return!0;const r=n.value.split(".");return s[3]===r[3]||Number(s[2])>Number(r[2])})(Q,C,B)?this.Wh(o,Q,B):C?B?.value.split(".")[3]===C?{value:B.value,pending:!B.delivered}:this.Wh(o,`fb.1.${Date.now()}.${C}`,B):B?{value:B.value,pending:!B.delivered}:void 0}Qh(A,I,e){if(!this.persistence)return;const t=this.Hh;this.persistence.refreshKey(t.persistenceKey);const o=this.Uh(t);if(e)return void t.unregister();if(I)return qC(A)&&TII.test(A)?this.Wh(t,A,o):void t.unregister();const B=this.Vh(t);return B?this.Wh(t,B,o):o?{value:o.value,pending:!o.delivered}:void 0}Zh(A,I){if(!this.persistence)return;this.persistence.refreshKey(A.persistenceKey);const e=this.Uh(A);e?.value!==I||e.delivered||A.register(I,!0)}capture(A,I,e){var t,o;if(!(this.__loaded&&this.persistence&&this.sessionPersistence&&this.xh))return void Dt.uninitializedWarning("posthog.capture");if(!this.is_capturing())return void Dt.info(`Event "${A}" was not captured because capturing is disabled (opted out or consent pending).`);if(Ye(A)||!qC(A))return void Dt.error("No event name provided to posthog.capture");if(this.ih(),A==="$snapshot"&&this.Xc())return;const B=!this.config.opt_out_useragent_filter&&this._is_bot();if(B&&!this.config.__preview_capture_bot_pageviews)return void Dt.info(`Event "${A}" was not captured because the user agent looks like a bot. Set \`opt_out_useragent_filter: true\` to capture it.`);const C=e?.skip_client_rate_limiting?void 0:this.rateLimiter.clientRateLimitContext();if(C?.isRateLimited)return void Dt.critical("This capture call is ignored due to client rate limiting.");let Q;I?.$current_url&&!qC(I?.$current_url)&&(Dt.error("Invalid `$current_url` property provided to `posthog.capture`. Input must be a string. Ignoring provided value."),I==null||delete I.$current_url),A!=="$exception"||e?.Jh||Dt.warn("Using `posthog.capture('$exception')` is unreliable because it does not attach required metadata. Use `posthog.captureException(error)` instead, which attaches required metadata automatically."),this.sessionPersistence.update_search_keyword(),this.config.save_campaign_params&&(Q=this.sessionPersistence.update_campaign_params()),this.config.save_referrer&&this.sessionPersistence.update_referrer_info(),(this.config.save_campaign_params||this.config.save_referrer)&&this.persistence.set_initial_person_info();const i=new Date,E=e?.timestamp||i,n=z$g(e?.uuid,UR);let s={uuid:n,event:A,properties:this.calculateEventProperties(A,I||{},E,n)};A==="$pageview"&&this.config.__preview_capture_bot_pageviews&&B&&(s.event="$bot_pageview",s.properties.$browser_type="bot"),C&&(s.properties.$lib_rate_limit_remaining_tokens=C.remainingTokens);const r=A==="$feature_flag_called"&&s.properties.$feature_flag_has_experiment===!1&&this.get_property("$minimal_flag_called_events")===!0;e?.$set&&!r&&(s.$set=e?.$set);const a=yC(I?.$set)?I.$set:void 0,c=cB(I?.$unset)?I.$unset:[],h=e?.$unset||[],l=N=>{var U;const K=!!e?.$set&&N in e.$set;return{hasProvided:K||!!a&&N in a,provided:K?e==null||(U=e.$set)===null||U===void 0?void 0:U[N]:a?.[N],unset:c.indexOf(N)!==-1||h.indexOf(N)!==-1}},D=l(HAI),d=l(vAI),y=[{channel:this.zh,hasProvided:D.hasProvided,update:this.Gh(Q?.fbclid,D.provided,D.hasProvided,D.unset)},{channel:this.Hh,hasProvided:d.hasProvided,update:this.Qh(d.provided,d.hasProvided,d.unset)}];for(const{channel:N,hasProvided:U,update:K}of y)K&&s.properties.$process_person_profile===!0&&K.pending&&!U&&!r&&(s.$set=QI({[N.property]:K.value},s.$set));const w=e?.$unset;w&&(s.$unset=w);const u=r?void 0:this.Kh(e?.$set_once,A!==EgI,A===igI);if(u&&(s.$set_once=u),e?._noTruncate||(G=this.config.properties_string_max_length,s=(function(N,U){const K=new Set;return(function Y(b,q){if(b!==Object(b))return U?U(b):b;if(K.has(b))return;let j;if(K.add(b),cB(b))j=[],Qq(b,W=>{j.push(Y(W))});else{const W={};Gn(Aq(b)?ngI(b):b,(Z,gA)=>{K.has(Z)||(W[gA]=Y(Z))}),j=W}return j})(N)})(s,N=>qC(N)?N.slice(0,G):N)),s.timestamp=E,Ye(e?.timestamp)||(s.properties.$event_time_override_provided=!0,s.properties.$event_time_override_system_time=i),r&&(s.properties=((N,U=[])=>{const K={},Y=b=>{N[b]!==void 0&&(K[b]=N[b])};return iht.forEach(Y),U.forEach(Y),K})(s.properties,plt)),A===AS.DISMISSED||A===AS.SENT){const N=I?.[AvA.SURVEY_ID],U=I?.[AvA.SURVEY_ITERATION];UII({id:N,current_iteration:U}),s.$set=QI(QI({},s.$set),{},{[Qlt({id:N,current_iteration:U},A===AS.SENT?"responded":"dismissed")]:!0})}else A===AS.SHOWN&&(s.$set=QI(QI({},s.$set),{},{[AvA.SURVEY_LAST_SEEN_DATE]:new Date().toISOString()}));var G;if(A===Z0t.SHOWN){const N=I?.[gII.TOUR_TYPE];N&&(s.$set=QI(QI({},s.$set),{},{[`${gII.TOUR_LAST_SEEN_DATE}/${N}`]:new Date().toISOString()}))}const m=QI(QI({},s.properties.$set),s.$set);if(sk(m)||this.setPersonPropertiesForFlags(m),!hC(this.config.before_send)){const N=this.Os(s);if(!N)return;s=N,s.uuid=z$g(s.uuid,UR)}this.sessionRecording&&!this.gh&&HII(A)&&(this.gh=!0,setTimeout(()=>this.gh=!1,3e4));const p=y.filter(({channel:N,update:U})=>{var K,Y,b;const q=(K=(Y=s.$set)===null||Y===void 0?void 0:Y[N.property])!==null&&K!==void 0?K:yC((b=s.properties)===null||b===void 0?void 0:b.$set)?s.properties.$set[N.property]:void 0;return U?.pending&&q===U.value});this.ur.emit("eventCaptured",s);const k=(t=e?._url)!==null&&t!==void 0?t:this.requestRouter.endpointFor("api",this.analyticsDefaultEndpoint),S=e?._batchKey==="recordings"||/\/s\/(?:\?|$)/.test(k),R=QI(QI(QI({method:"POST",url:k,data:s,compression:"best-available",preferSyncCompression:e?.send_instantly,timestampMode:S?"body":"capture-body",batchKey:e?._batchKey},S&&(!((o=s.properties)===null||o===void 0)&&o.$session_id)?{batchGroup:s.properties.$session_id+(s.properties.$window_id?`-${s.properties.$window_id}`:"")}:{}),e?.transport?{transport:e.transport}:{}),p.length?{fireCallbackOnDrop:!0,callback:N=>{if(N.statusCode>=200&&300>N.statusCode)for(const{channel:U,update:K}of p)this.Zh(U,K.value)}}:{});if(!this.config.request_batching||e&&!e?._batchKey||e?.send_instantly){var x;let N;!R.transport&&!R.callback&&sk((x=this.config.request_headers)!==null&&x!==void 0?x:{})&&this.ah&&(N="sendBeacon"),this.$h(R,N)}else this.xh.enqueue(R);return s}_addCaptureHook(A){return this.on("eventCaptured",I=>A(I.event,I))}getExtension(A){var I;return(I=this.Xh)===null||I===void 0?void 0:I.getExtension(A)}Fh(){var A;return(A=this.Xh)!==null&&A!==void 0?A:this.Xh=new wlt(this)}dr(A){this.ph.push(A);let I=!0;return()=>{if(!I)return;I=!1;const e=this.ph.indexOf(A);e!==-1&&this.ph.splice(e,1)}}Yh(A=!0){var I,e,t;return!!(!((I=this.persistence)===null||I===void 0)&&I.consumeCookieIdentityChange())&&(this._h=null,this.persistence.get_property("$user_state")==="anonymous"&&((t=this.sessionPersistence)===null||t===void 0||t.clear(),this.dh.clear(),this.td()),(e=this.featureFlags)===null||e===void 0||e.reset(),A&&this.reloadFeatureFlags(),!0)}calculateEventProperties(A,I,e,t,o){if(e=e||new Date,!this.persistence||!this.sessionPersistence)return I;this.ih(),this.persistence.syncCookieProperties(),this.Yh();const B=o?void 0:this.persistence.remove_event_timer(A);let C=QI({},I);if(C.token=this.config.token,C.$config_defaults=this.config.defaults,this.Xc()&&(C[zAI]=!0),A==="$snapshot"){const D=QI(QI({},this.persistence.properties()),this.sessionPersistence.properties());return C.distinct_id=D.distinct_id,(!qC(C.distinct_id)&&!Gh(C.distinct_id)||ZAA(C.distinct_id))&&Dt.error("Invalid distinct_id for replay event. This indicates a bug in your implementation"),C}const Q=(function(D,d,y,w=!1){var u,G,m,p;if(!xm)return{};const k=D?[...hq,...d||[]]:[],[S,R]=Z$g(xm),[x,N]=(function(tA){for(let IA=0;W$g.length>IA;IA++){const[QA,nA,DA]=W$g[IA],CA=tA.match(QA);if(CA){const hA=DA&&tA.match(DA)||CA;return[nA,hA?.[1]||""]}}return["",""]})(xm),U=(function(){const tA="u">typeof navigator?navigator:void 0;return tA?.brave?{brave:!0}:{}})(),K={};Ye(y)||(K.detectGoogleSearchApp=y);const Y={},b=(u=navigator)===null||u===void 0||(u=u.userAgentData)===null||u===void 0?void 0:u.platform,q=(G=navigator)===null||G===void 0?void 0:G.maxTouchPoints,j=Se==null||(m=Se.screen)===null||m===void 0?void 0:m.width,W=Se==null||(p=Se.screen)===null||p===void 0?void 0:p.height,Z=Se?.devicePixelRatio;Ye(b)||(Y.userAgentDataPlatform=b),Ye(q)||(Y.maxTouchPoints=q),Ye(j)||(Y.screenWidth=j),Ye(W)||(Y.screenHeight=W),Ye(Z)||(Y.devicePixelRatio=Z);const gA=sr(U6A({$os:S,$os_version:R,$browser:T$g(xm,navigator.vendor,U,K),$webview_app:x,$webview_app_version:N,$device:O$g(xm),$device_type:Nct(xm,Y),$timezone:bgI(),$timezone_offset:v0t()}),{$current_url:EgA(w?i3(Ca?.href):Ca?.href,k,ngA),$host:Ca?.host,$pathname:Ca?.pathname,$raw_user_agent:xm.length>1e3?xm.substring(0,997)+"...":xm,$browser_version:Rct(xm,navigator.vendor,U,K),$browser_language:WgI(),$browser_language_prefix:H0t(),$screen_height:Se?.screen.height,$screen_width:Se?.screen.width,$viewport_height:Se?.innerHeight,$viewport_width:Se?.innerWidth,$lib:EJ.LIB_NAME,$lib_version:EJ.LIB_VERSION,$insert_id:Math.random().toString(36).substring(2,10)+Math.random().toString(36).substring(2,10),$time:Date.now()/1e3});return EJ.SDK_DIST_CHANNEL&&(gA.$sdk_dist_channel=EJ.SDK_DIST_CHANNEL),gA})(this.config.mask_personal_data_properties,this.config.custom_personal_data_properties,this.config.detect_google_search_app,this.config.disable_capture_url_hashes);if(this.sessionManager){const{sessionId:D,windowId:d}=this.sessionManager.checkAndGetSessionAndWindowId(o,e.getTime(),!0);C.$session_id=D,C.$window_id=d}this.sessionPropsManager&&sr(C,this.sessionPropsManager.getSessionProps());try{var i;if(this.sessionRecording){const D=this.sessionRecording.sdkDebugProperties,d=!this.gh&&HII(A);for(const y in D)(d||yB(ult,y))&&(C[y]=D[y])}C.$sdk_debug_retry_queue_size=(i=this.Ch)===null||i===void 0?void 0:i.length}catch(D){C.$sdk_debug_error_capturing_properties=String(D)}let E;if(this.requestRouter.region===avA&&(C.$lib_custom_api_host=this.config.api_host),E=A!=="$pageview"||o?A!=="$pageleave"||o?this.pageViewManager.doEvent():this.pageViewManager.doPageLeave(e):this.pageViewManager.doPageView(e,t),C=sr(C,E),A==="$pageview"&&ro&&(C.title=ro.title),!Ye(B)){const D=e.getTime()-B;C.$duration=parseFloat((D/1e3).toFixed(3))}xm&&this.config.opt_out_useragent_filter&&(C.$browser_type=this._is_bot()?"bot":"browser");const n=this.persistence.properties(),s=this.sessionPersistence.properties(),r=C.$groups,a=n.$groups;yC(r)&&!sk(r)&&(C.$groups=QI(QI({},yC(a)?a:{}),r)),Gn(["$referrer","$referring_domain"],D=>{D in n&&delete s[D]});const c={};if(this.ph.length>0)for(const D of this.ph.slice())try{sr(c,D())}catch(d){Dt.error("Failed to produce browser extension event properties",d)}C=sr({},Q,n,s,QI(QI({},c),C)),C.$is_identified=this._isIdentified(),cB(this.config.property_denylist)?Gn(this.config.property_denylist,function(D){delete C[D]}):Dt.error(bII+this.config.property_denylist+" or property_blacklist config: "+this.config.property_blacklist);const h=this.config.sanitize_properties;h&&(Dt.error(_II),C=h(C,A));const l=this.ed();return C.$process_person_profile=l,l&&!o&&this.nd("_calculate_event_properties"),C}Kh(A,I=!0,e=!1){var t;if(!this.persistence||!this.ed()||this.hh&&!e)return A;const o=this.persistence.get_initial_props(),B=(t=this.sessionPropsManager)===null||t===void 0?void 0:t.getSetOnceProps();let C=sr({},o,B||{},A||{});const Q=this.config.sanitize_properties;return Q&&(Dt.error(_II),C=Q(C,"$set_once")),I&&(this.hh=!0),sk(C)?void 0:C}register(A,I){var e;(e=this.persistence)===null||e===void 0||e.register(A,I)}register_once(A,I,e){var t;(t=this.persistence)===null||t===void 0||t.register_once(A,I,e)}register_for_session(A){var I,e;(I=this.persistence)===null||I===void 0||I.syncCookieProperties(),this.Yh(),(e=this.sessionPersistence)===null||e===void 0||e.register(A),Object.keys(A).forEach(t=>this.dh.add(t)),this.td()}unregister(A){var I;(I=this.persistence)===null||I===void 0||I.unregister(A)}unregister_for_session(A){var I;(I=this.sessionPersistence)===null||I===void 0||I.unregister(A),this.dh.delete(A),this.td()}sd(A,I){this.register({[A]:I})}Th(){this.dh.forEach(A=>{var I;(I=this.sessionPersistence)===null||I===void 0||I.unregister(A)}),this.dh.clear(),this.td()}td(){var A;if(!this.fh)return;if(this.config.persistence==="memory"||!((A=this.sessionPersistence)===null||A===void 0)&&A.hi||!ia.$t())return void ia.Pt(this.fh);const I=[];this.dh.forEach(e=>I.push(e)),I.length>0?ia.At(this.fh,I):ia.Pt(this.fh)}getFeatureFlag(A,I){var e;return(e=this.featureFlags)===null||e===void 0?void 0:e.getFeatureFlag(A,I)}getFeatureFlagPayload(A){var I;return(I=this.featureFlags)===null||I===void 0?void 0:I.getFeatureFlagPayload(A)}getFeatureFlagResult(A,I){var e;return(e=this.featureFlags)===null||e===void 0?void 0:e.getFeatureFlagResult(A,I)}getAllFeatureFlags(){var A,I;return(A=(I=this.featureFlags)===null||I===void 0?void 0:I.getAllFeatureFlags())!==null&&A!==void 0?A:[]}isFeatureEnabled(A,I){var e,t;return(e=(t=this.featureFlags)===null||t===void 0?void 0:t.isFeatureEnabled(A,I))!==null&&e!==void 0?e:I?.defaultValue}reloadFeatureFlags(){var A;(A=this.featureFlags)===null||A===void 0||A.reloadFeatureFlags()}updateFlags(A,I,e){var t;(t=this.featureFlags)===null||t===void 0||t.updateFlags(A,I,e)}updateEarlyAccessFeatureEnrollment(A,I,e){var t;(t=this.featureFlags)===null||t===void 0||t.updateEarlyAccessFeatureEnrollment(A,I,e)}getEarlyAccessFeatures(A,I=!1,e){var t;return(t=this.featureFlags)===null||t===void 0?void 0:t.getEarlyAccessFeatures(A,I,e)}on(A,I){return this.ur.on(A,I)}onFeatureFlags(A){return this.featureFlags?this.featureFlags.onFeatureFlags(A):(A([],{},{errorsLoading:!0}),()=>{})}onSurveysLoaded(A){return this.surveys?this.surveys.onSurveysLoaded(A):(A([],{isLoaded:!1,error:wq}),()=>{})}onSessionId(A){var I,e;return(I=(e=this.sessionManager)===null||e===void 0?void 0:e.onSessionId(A))!==null&&I!==void 0?I:()=>{}}getSurveys(A,I=!1){this.surveys?this.surveys.getSurveys(A,I):A([],{isLoaded:!1,error:wq})}getActiveMatchingSurveys(A,I=!1){this.surveys?this.surveys.getActiveMatchingSurveys(A,I):A([],{isLoaded:!1,error:wq})}onActiveMatchingSurveysChanged(A){return this.surveys?this.surveys.onActiveMatchingSurveysChanged(A):(A([],{isLoaded:!1,error:wq}),()=>{})}renderSurvey(A,I){var e;(e=this.surveys)===null||e===void 0||e.renderSurvey(A,I)}displaySurvey(A,I=alt){var e;(e=this.surveys)===null||e===void 0||e.displaySurvey(A,I)}cancelPendingSurvey(A){var I;(I=this.surveys)===null||I===void 0||I.cancelPendingSurvey(A)}canRenderSurvey(A){var I,e;return(I=(e=this.surveys)===null||e===void 0?void 0:e.canRenderSurvey(A))!==null&&I!==void 0?I:{visible:!1,disabledReason:wq}}canRenderSurveyAsync(A,I=!1){var e,t;return(e=(t=this.surveys)===null||t===void 0?void 0:t.canRenderSurveyAsync(A,I))!==null&&e!==void 0?e:Promise.resolve({visible:!1,disabledReason:wq})}rd(A){return!A||ZAA(A)?(Dt.critical("Unique user id has not been set in posthog.identify"),!1):A==="$posthog_cookieless"?(Dt.critical(`The string "${A}" was set in posthog.identify which indicates an error. This ID is only used as a sentinel value.`),!1):!["distinct_id","distinctid"].includes(A.toLowerCase())&&!["undefined","null"].includes(A.toLowerCase())||(Dt.critical(`The string "${A}" was set in posthog.identify which indicates an error. This ID should be unique to the user and not a hardcoded string.`),!1)}identify(A,I,e){if(!this.__loaded||!this.persistence)return Dt.uninitializedWarning("posthog.identify");if(Gh(A)&&(A=A.toString(),Dt.warn("The first argument to posthog.identify was a number, but it should be a string. It has been converted to a string.")),!this.rd(A)||!this.nd("posthog.identify"))return;this.ih();const t=this.get_distinct_id(),o=this.persistence.syncCookieProperties()&&this.get_distinct_id()!==t,B=this.Yh(!1),C=this.persistence.ku();let Q=!1;try{const E=this.get_distinct_id();this.register({$user_id:A}),this.get_property("$device_id")||this.register_once({$had_persisted_distinct_id:!0,$device_id:E},""),A!==E&&A!==this.get_property("__alias")&&(this.unregister(EDA),this.register({distinct_id:A}));const n=(this.persistence.get_property("$user_state")||"anonymous")===rJ,s=A!==E,r=!s&&n;if(s&&n){var i;const a=this.config.reuseAnonymousId?{distinct_id:A}:{distinct_id:A,$anon_distinct_id:E};this.persistence.set_property(Um,nDA),this.setPersonPropertiesForFlags({$set:I||{},$set_once:e||{}},!1),this.config.cookieWinsOnConflict&&this.persistence.Su(),this.capture("$identify",a,{$set:I||{},$set_once:e||{}})&&(this._h=svA(A,I,e)),(i=this.featureFlags)===null||i===void 0||i.setAnonymousDistinctId(this.config.reuseAnonymousId?void 0:E)}else if(r){this.persistence.set_property(Um,nDA);const a=I||{},c=e||{};this.setPersonPropertiesForFlags({$set:a,$set_once:c},!1),this.config.cookieWinsOnConflict&&this.persistence.Su(),this.capture("$set",{$set:a,$set_once:c})&&(this._h=svA(A,I,e))}else(I||e)&&this.setPersonProperties(I,e);s||o||B?(this.reloadFeatureFlags(),this.featureFlags?this.featureFlags.resetFlagCallReported():this.unregister(aJ)):r&&(I||e)&&this.reloadFeatureFlags(),Q=!0}finally{C&&this.persistence.Cu(Q)}}setPersonProperties(A,I){if(!A&&!I||!this.nd("posthog.setPersonProperties"))return;const e=svA(this.get_distinct_id(),A,I);this._h!==e?(this.setPersonPropertiesForFlags({$set:A||{},$set_once:I||{}},!0),this.capture("$set",{$set:A||{},$set_once:I||{}})&&(this._h=e)):Dt.info("A duplicate setPersonProperties call was made with the same properties. It has been ignored.")}unsetPersonProperties(A){var I;const e=(cB(A)?A:[A]).filter(t=>qC(t)&&t.length>0);e.length!==0&&this.nd("posthog.unsetPersonProperties")&&((I=this.featureFlags)===null||I===void 0||I.unsetPersonPropertiesForFlags(e,!0),this.capture("$set",{$unset:e}),this._h=null)}group(A,I,e){var t;if(!A||!I)return void Dt.error("posthog.group requires a group type and group key");(t=this.persistence)===null||t===void 0||t.syncCookieProperties(),this.Yh();const o=this.getGroups(),B=o[A]!==I;if(B&&this.resetGroupPropertiesForFlags(A),this.register({$groups:QI(QI({},o),{},{[A]:I})}),(B||e)&&this.ed()){const C={$group_type:A,$group_key:I};e&&(C.$group_set=e),this.capture(EgI,C)}e&&this.setGroupPropertiesForFlags({[A]:e}),B&&!e&&this.reloadFeatureFlags()}resetGroups(){this.register({$groups:{}}),this.resetGroupPropertiesForFlags(),this.reloadFeatureFlags()}setPersonPropertiesForFlags(A,I=!0){var e;(e=this.featureFlags)===null||e===void 0||e.setPersonPropertiesForFlags(A,I)}resetPersonPropertiesForFlags(A=!0){var I;(I=this.featureFlags)===null||I===void 0||I.resetPersonPropertiesForFlags(A)}setGroupPropertiesForFlags(A,I=!0){var e;this.nd("posthog.setGroupPropertiesForFlags")&&((e=this.featureFlags)===null||e===void 0||e.setGroupPropertiesForFlags(A,I))}resetGroupPropertiesForFlags(A){var I;(I=this.featureFlags)===null||I===void 0||I.resetGroupPropertiesForFlags(A)}reset(A){const I=Fm(A)?A:A?.resetDeviceID,e=Fm(A)||A==null?void 0:A.bootstrap;this.od(I,!1,e)}od(A,I=!1,e){var t,o,B,C,Q,i;if(Dt.info("reset"),!this.__loaded)return Dt.uninitializedWarning("posthog.reset");const E=e?.sessionID;this.config.bootstrap=e||((t=this.kh)===null||t===void 0?void 0:t.bootstrap)||{},(o=this.featureFlags)===null||o===void 0||(B=o.updateConfig)===null||B===void 0||B.call(o,this.config,this.Hu());const n=this.get_property(D6A),s=this.get_property(d6A),r=this.get_property(egA);(C=this.sessionRecording)===null||C===void 0||C.flushBeforeIdentityReset();const a=this.is_capturing();I||this.consent.reset(),I||!a||this.is_capturing()||console.warn("[PostHog.js]","reset() cleared the stored consent, and capturing is now off because of `opt_out_capturing_by_default`. Call opt_in_capturing() again, and prefer calling reset() before opting in rather than after.");const c=(Q=this.persistence)===null||Q===void 0||(i=Q.ku)===null||i===void 0?void 0:i.call(Q),h=this.nh;this.nh=h||I;let l=!1;try{var D,d,y,w,u,G,m,p,k,S,R,x,N;if((D=this.persistence)===null||D===void 0||D.clear(),(d=this.sessionPersistence)===null||d===void 0||d.clear(),this.dh.clear(),this.td(),Ye(r)||(S=this.persistence)===null||S===void 0||S.register({$session_recording_remote_config:r}),(y=this.surveys)===null||y===void 0||y.reset(),(w=this.featureFlags)===null||w===void 0||w.reset(),(u=this.conversations)===null||u===void 0||u.reset(),(G=this.logs)===null||G===void 0||G.reset(),(m=this.metrics)===null||m===void 0||m.reset(),(p=this.persistence)===null||p===void 0||p.set_property("$user_state","anonymous"),(k=this.sessionManager)===null||k===void 0||k.resetSessionId(),this._h=null,this.config.cookieless_mode==="always")this.register_once({distinct_id:R6A,$device_id:null},"");else{const b=this.config.get_device_id(UR());this.register_once({distinct_id:b,$device_id:A?b:n},""),A||Ye(s)||this.register({[d6A]:s})}if(this.register({$last_posthog_reset:new Date().toISOString()},1),e&&(e.distinctID&&!this.Xc()&&((N=this.persistence)===null||N===void 0||N.set_property("$user_state",e.isIdentifiedID?"identified":"anonymous"),this.register({distinct_id:e.distinctID})),(R=this.featureFlags)===null||R===void 0||R.initialize(),!hC(E)&&!(!((x=this.sessionManager)===null||x===void 0)&&x.setBootstrapSessionId(E,!0)))){const b=QI({},e);delete b.sessionID,this.config.bootstrap=b}delete this.config.identity_distinct_id,delete this.config.identity_hash,delete this.config.identity_claims,l=!0}finally{var U,K;this.nh=h,c&&((U=this.persistence)===null||U===void 0||(K=U.Cu)===null||K===void 0||K.call(U,l))}var Y;this.cr&&((Y=this.conversations)===null||Y===void 0||Y.onRemoteConfig(this.cr)),this.reloadFeatureFlags()}shutdown(A){var I=this;return Qa(function*(){if(!I.__loaded)return void Dt.uninitializedWarning("posthog.shutdown");I.uh=!0,clearTimeout(I.Mh),I.Mh=void 0;const e=I.Oh;I.Oh=void 0;for(const t of[()=>{var o;return(o=I.sessionRecording)===null||o===void 0?void 0:o.dispose()},()=>{var o;return(o=I.logs)===null||o===void 0?void 0:o.flushLogs("sendBeacon")},()=>{var o;return(o=I.metrics)===null||o===void 0?void 0:o.flush("sendBeacon")},()=>{var o;return(o=I.metrics)===null||o===void 0?void 0:o.dispose()},()=>{var o;return(o=I.logs)===null||o===void 0?void 0:o.dispose()},()=>{var o;return(o=I.surveys)===null||o===void 0?void 0:o.dispose()},()=>{var o;return(o=I.autocapture)===null||o===void 0?void 0:o.dispose()},()=>e?.(),()=>{var o;return(o=I.xh)===null||o===void 0?void 0:o.unload()},()=>{var o;return(o=I.Ch)===null||o===void 0?void 0:o.unload()},()=>{var o;return(o=I.featureFlags)===null||o===void 0?void 0:o.destroy()},()=>{var o;return(o=I.persistence)===null||o===void 0?void 0:o.destroy()},()=>{var o;return(o=I.sessionPersistence)===null||o===void 0?void 0:o.destroy()}])try{const o=t();o&&C0(o.then)&&o.then(void 0,B=>{Dt.error("Error during shutdown",B)})}catch(o){Dt.error("Error during shutdown",o)}})()}setIdentity(A,I){var e;delete this.config.identity_claims,this.config.identity_distinct_id=A,this.config.identity_hash=I,this.alias(A),(e=this.conversations)===null||e===void 0||e.ad()}clearIdentity(){var A;delete this.config.identity_distinct_id,delete this.config.identity_hash,delete this.config.identity_claims,(A=this.conversations)===null||A===void 0||A.ld()}get_distinct_id(){return this.get_property("distinct_id")}getGroups(){return this.get_property("$groups")||{}}get_session_id(){var A,I;return(A=(I=this.sessionManager)===null||I===void 0?void 0:I.checkAndGetSessionAndWindowId(!0).sessionId)!==null&&A!==void 0?A:""}get_session_replay_url(A){if(!this.sessionManager)return"";const{sessionId:I,sessionStartTimestamp:e}=this.sessionManager.checkAndGetSessionAndWindowId(!0);let t=this.requestRouter.endpointFor("ui",`/project/${this.config.token}/replay/${I}`);if(A?.withTimestamp&&e){var o;const B=(o=A.timestampLookBack)!==null&&o!==void 0?o:10;if(!e)return t;t+=`?t=${Math.max(Math.floor((new Date().getTime()-e)/1e3)-B,0)}`}return t}alias(A,I){return A===this.get_property("$people_distinct_id")?(Dt.critical("Attempting to create alias for existing People user - aborting."),-2):this.nd("posthog.alias")?(Ye(I)&&(I=this.get_distinct_id()),A!==I?(this.sd(EDA,A),this.capture("$create_alias",{alias:A,distinct_id:I})):(Dt.warn("alias matches current distinct_id - skipping api call."),this.identify(A),-1)):void 0}set_config(A){const I=QI({},this.config);if(yC(A)){var e,t,o,B,C,Q,i,E,n,s,r,a,c,h;sr(this.config,qII(A));const w=this.oh();if(this.persistence){const G=this.config.persistence==="sessionStorage"||this.config.persistence==="memory";var l,D;if(G&&this.sessionPersistence!==this.persistence&&((l=this.sessionPersistence)===null||l===void 0||l.remove(),(D=this.sessionPersistence)===null||D===void 0||D.destroy()),this.persistence.update_config(this.config,I,w),G)this.sessionPersistence=this.persistence;else if(this.sessionPersistence===this.persistence)this.sessionPersistence=new X6A(QI(QI({},this.config),{},{persistence:"sessionStorage"}),w,!1);else{var d;(d=this.sessionPersistence)===null||d===void 0||d.update_config(QI(QI({},this.config),{},{persistence:"sessionStorage"}),QI(QI({},I),{},{persistence:"sessionStorage"}),w)}}const u=this.wh(this.config.debug);var y;Fm(u)&&(this.config.debug=u),Fm(this.config.debug)&&(this.config.debug?(ak.DEBUG=!0,aE.$t()&&aE.At("ph_debug",!0),Dt.info("set_config",{config:A,oldConfig:I,newConfig:QI({},this.config)})):(ak.DEBUG=!1,aE.$t()&&aE.Pt("ph_debug"))),(e=this.featureFlags)===null||e===void 0||(t=e.updateConfig)===null||t===void 0||t.call(e,this.config,this.Hu()),(o=this.exceptionObserver)===null||o===void 0||o.onConfigChange(),(B=this.exceptions)===null||B===void 0||B.onConfigChange(),(C=this.metrics)===null||C===void 0||C.onConfigChange(),(Q=this.webMCP)===null||Q===void 0||Q.startIfEnabled(),(i=this.sessionRecording)===null||i===void 0||i.startIfEnabledOrStop(),(E=this.tracingHeaders)===null||E===void 0||E.startIfEnabledOrStop(),(n=this.autocapture)===null||n===void 0||n.startIfEnabled(),(s=this.heatmaps)===null||s===void 0||s.startIfEnabled(),("capture_pageview"in A||"disable_capture_url_hashes"in A)&&((y=this.historyAutocapture)===null||y===void 0||y.startIfEnabledOrStop()),(r=this.exceptionObserver)===null||r===void 0||r.startIfEnabledOrStop(),(a=this.deadClicksAutocapture)===null||a===void 0||a.startIfEnabledOrStop(),(c=this.surveys)===null||c===void 0||c.loadIfEnabled(),this.sh(),(h=this.externalIntegrations)===null||h===void 0||h.startIfEnabledOrStop(),!I.segment&&this.config.segment&&this.persistence&&KgI(this,DgA,!1)}}_overrideSDKInfo(A,I){ak.LIB_NAME=A,ak.LIB_VERSION=I}startSessionRecording(A){const I=A===!0,e={sampling:I||!!A?.sampling,linked_flag:I||!!A?.linked_flag,url_trigger:I||!!A?.url_trigger,event_trigger:I||!!A?.event_trigger};var t,o,B,C,Q;Object.values(e).some(Boolean)&&((t=this.sessionManager)===null||t===void 0||t.checkAndGetSessionAndWindowId(),e.sampling&&((o=this.sessionRecording)===null||o===void 0||o.overrideSampling()),e.linked_flag&&((B=this.sessionRecording)===null||B===void 0||B.overrideLinkedFlag()),e.url_trigger&&((C=this.sessionRecording)===null||C===void 0||C.overrideTrigger("url")),e.event_trigger&&((Q=this.sessionRecording)===null||Q===void 0||Q.overrideTrigger("event"))),this.set_config({disable_session_recording:!1})}stopSessionRecording(){this.set_config({disable_session_recording:!0})}sessionRecordingStarted(){var A;return!!(!((A=this.sessionRecording)===null||A===void 0)&&A.started)}captureException(A,I){try{if(!this.exceptions)return;const e=this.exceptions.buildProperties(A,{handled:!0,syntheticException:new Error("PostHog syntheticException")});return this.exceptions.sendExceptionEvent(QI(QI({},e),I))}catch{return}}addExceptionStep(A,I){var e;(e=this.exceptions)===null||e===void 0||e.addExceptionStep(A,I)}captureLog(A){var I;(I=this.logs)===null||I===void 0||I.captureLog(A)}get logger(){var A,I;return(A=(I=this.logs)===null||I===void 0?void 0:I.logger)!==null&&A!==void 0?A:fY.ud}startExceptionAutocapture(A){this.set_config({capture_exceptions:A==null||A})}stopExceptionAutocapture(){this.set_config({capture_exceptions:!1})}loadToolbar(A){var I,e;return(I=(e=this.toolbar)===null||e===void 0?void 0:e.loadToolbar(A))!==null&&I!==void 0&&I}get_property(A){var I;return(I=this.persistence)===null||I===void 0?void 0:I.props[A]}getSessionProperty(A){var I;return(I=this.sessionPersistence)===null||I===void 0?void 0:I.props[A]}toString(){var A;let I=(A=this.config.name)!==null&&A!==void 0?A:dgA;return I!==dgA&&(I="posthog."+I),I}_isIdentified(){var A,I;return((A=this.persistence)===null||A===void 0?void 0:A.get_property("$user_state"))==="identified"||((I=this.sessionPersistence)===null||I===void 0?void 0:I.get_property("$user_state"))==="identified"}ed(){var A,I;return!(this.config.person_profiles==="never"||this.config.person_profiles==="identified_only"&&!this._isIdentified()&&sk(this.getGroups())&&!(!((A=this.persistence)===null||A===void 0||(A=A.props)===null||A===void 0)&&A.__alias)&&!(!((I=this.persistence)===null||I===void 0||(I=I.props)===null||I===void 0)&&I.$epp))}Bh(){return this.config.capture_pageleave===!0||this.config.capture_pageleave==="if_capture_pageview"&&!!this.config.capture_pageview}createPersonProfile(){this.ed()||this.nd("posthog.createPersonProfile")&&this.setPersonProperties({},{})}setInternalOrTestUser(){this.nd("posthog.setInternalOrTestUser")&&this.setPersonProperties({$internal_or_test_user:!0})}nd(A){return this.config.person_profiles==="never"?(Dt.error(A+' was called, but process_person is set to "never". This call will be ignored.'),!1):(this.Yc(),this.sd(f6A,!0),!0)}oh(){if(this.config.cookieless_mode==="always")return!0;const A=this.consent.isOptedOut();return this.config.disable_persistence||A&&!(!this.config.opt_out_persistence_by_default&&this.config.cookieless_mode!=="on_reject")}sh(){var A,I;const e=this.oh();var t,o,B;return this.is_capturing()||(t=this.logs)===null||t===void 0||t.hd(),((A=this.persistence)===null||A===void 0?void 0:A.hi)!==e&&((o=this.persistence)===null||o===void 0||o.set_disabled(e)),((I=this.sessionPersistence)===null||I===void 0?void 0:I.hi)!==e&&((B=this.sessionPersistence)===null||B===void 0||B.set_disabled(e)),this.td(),e}opt_in_capturing(A){var I;if(this.config.cookieless_mode!=="always"){if(this.Xc()){var e,t,o,B,C,Q;(e=this.sessionRecording)===null||e===void 0||e.dispose({discardBufferedEvents:!0}),this.od(!0,!0),(t=this.sessionManager)===null||t===void 0||t.destroy(),(o=this.pageViewManager)===null||o===void 0||o.destroy(),this.sessionManager=new MII(this),this.pageViewManager=new _gI(this),this.persistence&&(this.sessionPropsManager=new pII(this,this.sessionManager,this.persistence));const a=(B=(C=this.config.__extensionClasses)===null||C===void 0?void 0:C.sessionRecording)!==null&&B!==void 0?B:(Q=fY.__defaultExtensionClasses)===null||Q===void 0?void 0:Q.sessionRecording;var i,E;a&&(this.sessionRecording=this.Kc(this.sessionRecording,new a(this)),this.cr&&((i=this.sessionRecording)===null||i===void 0||(E=i.onRemoteConfig)===null||E===void 0||E.call(i,this.cr)))}var n,s,r;this.consent.optInOut(!0),this.sh(),this.Nh(),(I=this.sessionRecording)===null||I===void 0||I.startIfEnabledOrStop(),this.config.cookieless_mode=="on_reject"&&((n=this.surveys)===null||n===void 0||n.loadIfEnabled(),(s=this.conversations)===null||s===void 0||s.loadIfEnabled()),(Ye(A?.captureEventName)||A?.captureEventName)&&this.capture((r=A?.captureEventName)!==null&&r!==void 0?r:"$opt_in",A?.captureProperties,{send_instantly:!0}),this.config.capture_pageview&&this.qh()}else Dt.warn(YII)}opt_out_capturing(){this.config.cookieless_mode!=="always"?(this.consent.optInOut(!1),this.sh(),this.config.cookieless_mode==="on_reject"&&this.rh()):Dt.warn(YII)}rh(){var A,I;const e=this.sessionRecording;e?.dispose({discardBufferedEvents:!0}),this.get_distinct_id()!=="$posthog_cookieless"&&this.od(!0,!0),this.register({distinct_id:R6A,$device_id:null}),this.Zc(e),this.sessionRecording=void 0,(A=this.sessionManager)===null||A===void 0||A.destroy(),(I=this.pageViewManager)===null||I===void 0||I.destroy(),this.sessionManager=void 0,this.sessionPropsManager=void 0,this.config.capture_pageview&&this.qh(),this.Nh()}has_opted_in_capturing(){return this.consent.isOptedIn()}has_opted_out_capturing(){return this.consent.isOptedOut()}get_explicit_consent_status(){const A=this.consent.consent;return A===1?"granted":A===0?"denied":"pending"}is_capturing(){return!this.nh&&(this.config.cookieless_mode==="always"||(this.config.cookieless_mode==="on_reject"?this.consent.isRejected()||this.consent.isOptedIn():!this.has_opted_out_capturing()))}clear_opt_in_out_capturing(){this.consent.reset(),this.sh()}_is_bot(){return Hw?SII(Hw,this.config.custom_blocked_useragents):void 0}qh(){ro&&(ro.visibilityState==="visible"?this.mh||(this.mh=!0,this.capture(F6A,{title:ro.title},{send_instantly:!0}),this.yh&&(ro.removeEventListener(tq,this.yh),this.yh=null)):this.yh||(this.yh=this.qh.bind(this),NE(ro,tq,this.yh)))}debug(A){A===!1?(Se?.console.log("You've disabled debug mode."),this.set_config({debug:!1})):(Se?.console.log("You're now in debug mode. All calls to PostHog will be logged in your console.\nYou can disable this with `posthog.debug(false)`."),this.set_config({debug:!0}))}Hu(){const A=this.kh||{};return"advanced_disable_flags"in A?!!A.advanced_disable_flags:this.config.advanced_disable_flags!==!1?!!this.config.advanced_disable_flags:this.config.advanced_disable_decide===!0?(Dt.warn("Config field 'advanced_disable_decide' is deprecated. Please use 'advanced_disable_flags' instead. The old field will be removed in a future major version."),!0):(function(I,e,t,o,B){const C=e in I&&!hC(I[e]),Q=t in I&&!hC(I[t]);return C?I[e]:!!Q&&(B&&B.warn(`Config field '${t}' is deprecated. Please use '${e}' instead. The old field will be removed in a future major version.`),I[t])})(A,"advanced_disable_flags","advanced_disable_decide",0,Dt)}Os(A){var I;if(hC(this.config.before_send))return A;const e=Object.keys((I=A.properties)!==null&&I!==void 0?I:{}).filter(dct),t=cB(this.config.before_send)?this.config.before_send:[this.config.before_send];let o=A;for(const B of t)try{if(o=B(o),hC(o)){const C=`Event '${A.event}' was rejected in beforeSend function`;return Dct(A.event)?Dt.warn(`${C}. This can cause unexpected behavior.`):Dt.info(C),null}o.properties&&!sk(o.properties)||Dt.warn(`Event '${A.event}' has no properties after beforeSend function, this is likely an error.`)}catch(C){return Dt.error(`Error in beforeSend function for event '${A.event}':`,C),null}for(const B of e)if(o.properties&&hC(o.properties[B]))return Dt.warn(`Event '${A.event}' had its '${B}' property removed in a beforeSend function. This property is required for ingestion, so the event will be dropped.`),null;return o}getPageViewId(){var A;return(A=this.pageViewManager.Rl)===null||A===void 0?void 0:A.pageViewId}captureTraceFeedback(A,I){this.capture("$ai_feedback",{$ai_trace_id:String(A),$ai_feedback_text:I})}captureTraceMetric(A,I,e){this.capture("$ai_metric",{$ai_trace_id:String(A),$ai_metric_name:I,$ai_metric_value:String(e)})}wh(A){const I=Fm(A)&&!A,e=aE.$t()&&aE.Ot("ph_debug")==="true";return!I&&(!!e||A)}};ygA.__defaultExtensionClasses={},ygA.ud=(()=>{const g=()=>{};return{trace:g,debug:g,info:g,warn:g,error:g,fatal:g}})(),(function(g,A){for(let I=0;A.length>I;I++)g.prototype[A[I]]=h0t(g.prototype[A[I]])})(ygA,["identify"]);var flt=class{constructor(A){this._instance=A}refresh(A){const I=this._instance.config,e=yC(I.autocapture)?I.autocapture:void 0;A.enabled=!!I.autocapture,A.rageclick=I.rageclick,A.maskAllElementAttributes=I.mask_all_element_attributes,A.maskAllText=I.mask_all_text,A.disableCaptureUrlHashes=I.disable_capture_url_hashes,A.getCurrentUrl=I.get_current_url,A.remoteRequestsDisabled=this._instance.Hu(),A.url_allowlist=e?.url_allowlist,A.url_ignorelist=e?.url_ignorelist,A.dom_event_allowlist=e?.dom_event_allowlist,A.element_allowlist=e?.element_allowlist,A.css_selector_allowlist=e?.css_selector_allowlist,A.css_selector_ignorelist=e?.css_selector_ignorelist,A.element_attribute_ignorelist=e?.element_attribute_ignorelist,A.capture_copied_text=e?.capture_copied_text}};const wgA=zr("[ExceptionAutocapture]"),ZII=()=>{},OII=g=>{var A;if(C0(g))return(A=g.__posthog_layer__)!==null&&A!==void 0?A:g.__rrweb_layer__};function uq(g,A,I){try{if(!(A in g))return ZII;const e={next:g[A]},t=I(function(...o){return e.next.apply(this,o)});return C0(t)&&(t.prototype=t.prototype||{},Object.defineProperties(t,{__posthog_wrapped__:{enumerable:!1,value:!0},__posthog_layer__:{enumerable:!1,value:e}})),g[A]=t,()=>{if(g[A]===t)return void(g[A]=e.next);let o=g[A],B=OII(o);for(;B;){if(B.next===t)return void(B.next=e.next);o=B.next,B=OII(o)}}}catch{return ZII}}const Rlt=zr("[TracingHeaders]"),s5=zr("[Web Vitals]"),WII=9e5,VII=["CLS","FCP","INP","LCP"],Nlt=["INP","LCP"],xlt=["interactionTarget","interactionType","inputDelay","processingDuration","presentationDelay","loadState","target","url","timeToFirstByte","resourceLoadDelay","resourceLoadDuration","elementRenderDelay","largestShiftTarget","largestShiftTime","largestShiftValue","firstByteToFCP"],yvA="disabled",jII="lazy_loading",DJ=zr("[SessionRecording]"),Flt=[N6A,x6A,AgI,ggI,IgI,egI,tgI,ogI,BgI],Ult=zr("[Heatmaps]");function wvA(g){return yC(g)&&"clientX"in g&&"clientY"in g&&Gh(g.clientX)&&Gh(g.clientY)}const MDA=zr("[Product Tours]"),uvA=g=>{var A;return!g.config.disable_product_tours&&!!(!((A=g.persistence)===null||A===void 0)&&A.get_property(k6A))},Jlt=["$set_once","$set"],ux=zr("[SiteApps]"),zII="Error while initializing PostHog app with config id ";function Gq(g,A,I){if(hC(g))return!1;switch(I){case"exact":return g===A;case"contains":{const e=A.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/_/g,".").replace(/%/g,".*");return new RegExp(e,"i").test(g)}case"regex":try{return new RegExp(A).test(g)}catch{return!1}default:return!1}}var Plt=class{constructor(A){this.Ai=A,this._o=new Set,this.wo=new Set,this.ko=new mDA,this.So=(I,e)=>this.xo(I,e)&&this.$o(I,e)&&this.Co(I,e)&&this.To(I,e),this.xo=(I,e)=>!e?.event||I?.event===e?.event}init(){var A,I;Ye((A=this.Ai)===null||A===void 0?void 0:A.subscribeCapture)||(this.Io=(I=this.Ai)===null||I===void 0?void 0:I.subscribeCapture((e,t)=>{this.on(e,t)}))}dispose(){var A,I,e;(A=this.Io)===null||A===void 0||A.call(this),this.Io=void 0,(I=this.Ai)===null||I===void 0||(e=I.setElementSelectors)===null||e===void 0||e.call(I,new Set,this),this.ko=new mDA}register(A){var I,e;if(!Ye((I=this.Ai)===null||I===void 0?void 0:I.subscribeCapture)&&(A.forEach(t=>{var o;this._o.add(t),(o=t.steps)===null||o===void 0||o.forEach(B=>{this.wo.add(B?.event||"")})}),(e=this.Ai)===null||e===void 0?void 0:e.setElementSelectors)){const t=new Set;this._o.forEach(o=>{var B;(B=o.steps)===null||B===void 0||B.forEach(C=>{C?.selector&&t.add(C.selector)})}),this.Ai.setElementSelectors(t,this)}}replace(A){this._o.clear(),this.wo.clear(),this.register(A)}on(A,I){I!=null&&A.length!=0&&(this.wo.has(A)||this.wo.has(I.event))&&this._o.forEach(e=>{this.Mo(I,e)&&this.ko.emit("actionCaptured",e.name)})}Eo(A){this.onAction("actionCaptured",I=>A(I))}Mo(A,I){if(I?.steps==null)return!1;for(const e of I.steps)if(this.So(A,e))return!0;return!1}onAction(A,I){return this.ko.on(A,I)}$o(A,I){if(I?.url){var e;let B=A==null||(e=A.properties)===null||e===void 0?void 0:e.$current_url;if(!A?.properties||!("$current_url"in A.properties))try{var t,o;B=(t=this.Ai)===null||t===void 0||(o=t.getActionUrl)===null||o===void 0?void 0:o.call(t)}catch{return!1}if(!B||typeof B!="string"||!Gq(B,I.url,I.url_matching||"contains"))return!1}return!0}Co(A,I){return!!this.Po(A,I)&&!!this.Ro(A,I)&&!!this.Ao(A,I)}Po(A,I){var e;if(!I?.href)return!0;const t=this.Fo(A);if(t.length>0)return t.some(B=>Gq(B.href,I.href,I.href_matching||"exact"));const o=(A==null||(e=A.properties)===null||e===void 0?void 0:e.$elements_chain)||"";return!!o&&Gq((function(B){const C=B.match(/(?::|")href="(.*?)"/);return C?C[1]:""})(o),I.href,I.href_matching||"exact")}Ro(A,I){var e;if(!I?.text)return!0;const t=this.Fo(A);if(t.length>0)return t.some(i=>Gq(i.text,I.text,I.text_matching||"exact")||Gq(i.$el_text,I.text,I.text_matching||"exact"));const o=(A==null||(e=A.properties)===null||e===void 0?void 0:e.$elements_chain)||"";return!!o&&(B=(function(i){const E=[],n=/(?::|")text="(.*?)"/g;let s;for(;!hC(s=n.exec(i));)E.includes(s[1])||E.push(s[1]);return E})(o),C=I.text,Q=I.text_matching||"exact",B.some(i=>Gq(i,C,Q)));var B,C,Q}Ao(A,I){var e,t;if(!I?.selector)return!0;const o=A==null||(e=A.properties)===null||e===void 0?void 0:e.$element_selectors;if(o?.includes(I.selector))return!0;const B=(A==null||(t=A.properties)===null||t===void 0?void 0:t.$elements_chain)||"";if(I.selector_regex&&B)try{return new RegExp(I.selector_regex).test(B)}catch{}return!1}Fo(A){var I;return(A==null||(I=A.properties)===null||I===void 0?void 0:I.$elements)==null?[]:A?.properties.$elements}To(A,I){return!I?.properties||I.properties.length===0||xII(I.properties.reduce((e,t)=>{const o=cB(t.value)?t.value.map(String):t.value!=null?[String(t.value)]:[];return e[t.key]={values:o,operator:t.operator||"exact"},e},{}),A?.properties)}},Klt=class{constructor(A,I){this.Oo=I,this.Do=[],this.Ai=A,this.Lo=new Map,this.No=new Map,this.qo=new Map}jo(){var A,I;this.Bo=(A=(I=this.Ai).subscribeSession)===null||A===void 0?void 0:A.call(I,e=>this.zo(e))}Ho(A){return!1}Uo(){return null}Wo(A){}Vo(){}Go(A,I){return!!A&&xII(A.propertyFilters,I?.properties)}Qo(A,I){const e=new Map;return A.forEach(t=>{var o;(o=t.conditions)===null||o===void 0||(o=o[I])===null||o===void 0||(o=o.values)===null||o===void 0||o.forEach(B=>{if(B?.name){const C=e.get(B.name)||[];C.push(t.id),e.set(B.name,C)}})}),e}Zo(A,I,e){const t=(e===sgA.Activation?this.Lo:this.No).get(A);let o=[];return this.Jo(B=>{o=B.filter(C=>t?.includes(C.id))}),o.filter(B=>{var C;const Q=(C=B.conditions)===null||C===void 0||(C=C[e])===null||C===void 0||(C=C.values)===null||C===void 0?void 0:C.find(i=>i.name===A);return this.Go(Q,I)})}register(A){this.Ko(A,!1)}replace(A){this.Ko(A,!0)}Ko(A,I){Ye(this.Ai.subscribeCapture)||(this.Xo(A,I),this.Yo(A,I))}Yo(A,I){const e=A.filter(B=>{var C;return(C=B.conditions)===null||C===void 0||(C=C.actions)===null||C===void 0||(C=C.values)===null||C===void 0?void 0:C.length});var t;if(I&&this.qo.clear(),e.length===0)return void(I&&((t=this.ta)===null||t===void 0||t.replace([])));this.ta||(this.ta=new Plt(this.Ai),this.ta.init(),this.ta.Eo(B=>this.onAction(B)));const o=[];e.forEach(B=>{var C;(C=B.conditions)===null||C===void 0||(C=C.actions)===null||C===void 0||C.values.forEach(Q=>{if(o.push(Q),Q.name){var i;const E=(i=this.qo.get(Q.name))!==null&&i!==void 0?i:[];E.includes(B.id)||E.push(B.id),this.qo.set(Q.name,E)}})}),I?this.ta.replace(o):this.ta.register(o)}ea(A,I){I.forEach((e,t)=>{var o;const B=(o=A.get(t))!==null&&o!==void 0?o:[];e.forEach(C=>{B.includes(C)||B.push(C)}),A.set(t,B)})}Xo(A,I){var e,t,o;const B=A.filter(E=>{var n,s;return((n=E.conditions)===null||n===void 0?void 0:n.events)&&((s=E.conditions)===null||s===void 0||(s=s.events)===null||s===void 0||(s=s.values)===null||s===void 0?void 0:s.length)>0}),C=A.filter(E=>{var n,s;return((n=E.conditions)===null||n===void 0?void 0:n.cancelEvents)&&((s=E.conditions)===null||s===void 0||(s=s.cancelEvents)===null||s===void 0||(s=s.values)===null||s===void 0?void 0:s.length)>0}),Q=this.Qo(A,sgA.Activation),i=this.Qo(A,sgA.Cancellation);I?(this.Lo=Q,this.No=i):(this.ea(this.Lo,Q),this.ea(this.No,i)),(B.length!==0||C.length!==0||A.some(E=>{var n;return(n=E.conditions)===null||n===void 0||(n=n.actions)===null||n===void 0||(n=n.values)===null||n===void 0?void 0:n.length}))&&((e=this.Io)!==null&&e!==void 0||(this.Io=(t=(o=this.Ai).subscribeCapture)===null||t===void 0?void 0:t.call(o,(E,n)=>{this.onEvent(E,n)})))}onEvent(A,I){var e,t;const o=this.ia(),B=(I==null||(e=I.properties)===null||e===void 0?void 0:e.$survey_id)||(I==null||(t=I.properties)===null||t===void 0?void 0:t.$product_tour_id);if(B&&this.getActivatedIds().includes(B)){const Q=this.na(A,B,I);if(Q==="consume")return o.info("event consumed activated item, removing it",{event:A,itemId:B}),void this.sa([B]);if(Q==="persist")return o.info("shown item promoted to persisted activation",{event:A,itemId:B}),this.ra(B),void this.oa([B])}if(this.No.has(A)){const Q=this.Zo(A,I,sgA.Cancellation);Q.length>0&&(o.info("cancel event matched, cancelling items",{event:A,itemsToCancel:Q.map(i=>i.id)}),this.sa(Q.map(i=>i.id)),Q.forEach(i=>this.aa(i.id)))}if(!this.Lo.has(A))return;o.info("event name matched",{event:A,eventPayload:I,items:this.Lo.get(A)});const C=this.Zo(A,I,sgA.Activation);this.la(C.map(Q=>Q.id))}onAction(A){this.qo.has(A)&&this.la(this.qo.get(A)||[])}la(A){if(A.length===0)return;const I=!!this.Ai.getSessionId(),e=[];for(const t of A)I&&this.Ho(t)?this.ra(t)&&this.ua(t):e.push(t);e.length>0&&(this.Do=[...new Set([...this.Do,...e])]),this.ia().info("updating activated items",{activatedItems:this.getActivatedIds()}),this.ca()}ra(A){this.Do=this.Do.filter(e=>e!==A);const I=this.ha();return!I.includes(A)&&(this.da([...I,A]),this.va(),!0)}sa(A){const I=new Set(A);this.Do=this.Do.filter(o=>!I.has(o));const e=this.fa(),t=e.filter(o=>!I.has(o));t.length!==e.length&&(this.da(t),t.length===0&&this.pa()),this.oa(A),this.ca()}ca(){try{var A;(A=this.Oo)===null||A===void 0||A.call(this)}catch(I){this.ia().error("Error while handling activated items change",I)}}ga(){const A=this.Uo();if(!A)return{};const I=this.Ai.getProperty(A);return I&&typeof I=="object"?I:{}}ua(A){if(!this.Uo())return;const I=this.ga();this.Wo(QI(QI({},I),{},{[A]:Date.now()}))}oa(A){if(!this.Uo())return;const I=this.ga(),e={};let t=!1;for(const[o,B]of Object.entries(I))A.includes(o)?t=!0:e[o]=B;t&&(sk(e)?this.Vo():this.Wo(e))}ma(){this.Uo()&&this.Vo()}getActivationTimestamp(A){if(!this.ha().includes(A))return;const I=this.ga()[A];return Gh(I)?I:void 0}fa(){const A=this.ya();return this.Ai.getProperty(A)||[]}ha(){const A=this.fa();if(A.length===0)return[];const I=this.Ai.getProperty(this.ba()),e=this.Ai.getSessionId();return e&&I===e?A:[]}va(){const A=this.Ai.getSessionId();A&&this._a(A)}pa(){this.wa()}zo(A){const I=this.Ai.getProperty(this.ba());if(I&&I!==A){const e=this.fa(),t=this.ga();e.length>0&&(this.da([]),e.filter(o=>Gh(t[o])).forEach(o=>this.aa(o))),this.pa(),this.ma(),e.length>0&&this.ca()}}getActivatedIds(){return[...new Set([...this.ha(),...this.Do])].filter(A=>!this.ka(A))}dispose(){var A,I,e;(A=this.Bo)===null||A===void 0||A.call(this),this.Bo=void 0,(I=this.Io)===null||I===void 0||I.call(this),this.Io=void 0,(e=this.ta)===null||e===void 0||e.dispose(),this.ta=void 0}reset(){this.Do=[],this.fa().length>0&&this.da([]),this.pa(),this.ma(),this.ca()}getEventToItemsMap(){return this.Lo}Sa(){return this.ta}},Llt=class extends Klt{constructor(A,I,e,t){var o;super({subscribeCapture(B){const C=A.onEvent(Q=>B(Q.event,Q));return()=>C.dispose()},subscribeSession(B){const C=A.onSession(B);return()=>C.dispose()},getSessionId(){var B;return(B=A.session)===null||B===void 0?void 0:B.sessionId},getProperty:B=>A.kv.get(B),getActionUrl:e?.getActionUrl,setElementSelectors:(o=e?.setElementSelectors)!==null&&o!==void 0?o:(B,C)=>{var Q;return(Q=A.getExtension("autocapture"))===null||Q===void 0?void 0:Q.setElementSelectors(B,C)}},t),this.xa=A,this.$a=I,this.jo()}ya(){return l6A}ba(){return QDA}Uo(){return iDA}Wo(A){this.xa.kv.set({[iDA]:A})}Vo(){this.xa.kv.remove(iDA)}Ho(A){var I;let e;this.Jo(o=>{e=o.find(B=>B.id===A)});const t=e==null||(I=e.appearance)===null||I===void 0?void 0:I.surveyPopupDelaySeconds;return Gh(t)&&t>0}Ca(){return AS.SHOWN}Jo(A){this.$a.getSurveys(A)}aa(A){this.$a.cancelPendingSurvey(A)}ia(){return mn}da(A){this.xa.kv.set({[l6A]:A})}_a(A){this.xa.kv.set({[QDA]:A})}wa(){this.xa.kv.remove(QDA)}ka(){return!1}na(A,I,e){var t;if(A===AS.SENT&&(e==null||(t=e.properties)===null||t===void 0?void 0:t.$survey_completed)===!1)return"ignore";let o;return this.Jo(B=>{o=B.find(C=>C.id===I)}),!o||(function(B){var C;return RII(B)&&!!(!((C=B.conditions)===null||C===void 0||(C=C.events)===null||C===void 0)&&C.repeatedActivation)||B.schedule==="always"})(o)?A===AS.SHOWN?"consume":"ignore":A===AS.SHOWN?"persist":A===AS.DISMISSED||A===AS.SENT?"consume":"ignore"}getSurveys(){return this.getActivatedIds()}getEventToSurveys(){return this.getEventToItemsMap()}};const GvA=(g,A)=>g?.then?g.then(A):A(g),mq="SDK is not enabled or survey functionality is not yet loaded",XII="Disabled. Not loading surveys.";var Ylt=class{constructor(A){this.Ta=A,this.name="surveys",this._surveyEventReceiver=null,this._surveyManager=null,this.Ia=!1,this.Ma=!1,this.Ea=[],this.Pa=[],this.Ra=null,this.Aa=null,this.Ci=!1,this.Fa=new Set,this.onRemoteConfig=I=>{if(this.Ci||this.Ar.disableSurveys)return;if(!I.ok)return this.Ma=!0,this.Oa({isLoaded:!1,error:"Remote config unavailable. Not loading surveys."}),mn.warn("Remote config unavailable. Not loading surveys.");const e=I.config.surveys;if(hC(e))return mn.warn("Flags not loaded yet. Not loading surveys.");this.Da=Fm(e)?e:e.length>0,mn.info(`flags response received, isSurveysEnabled: ${this.Da}`),this.loadIfEnabled()},this.Oa=I=>{this.Pa.slice().forEach(e=>this.La(e,I))}}setup(A){if(!this.Ci)return this.Na=A,GvA(A.kv.initialize(),()=>{if(this.Na!==A||this.Ci)return;this.Na=void 0,this.xa=A;const I=A.onRemoteConfig(this.onRemoteConfig);this.Ci?I.dispose():(this.qa=I,this.loadIfEnabled())})}dispose(){var A,I,e,t,o;this.Ci||(this.Ci=!0,this.Na=void 0,this.xa=void 0,(A=this.qa)===null||A===void 0||A.dispose(),this.qa=void 0,(I=this._surveyEventReceiver)===null||I===void 0||I.dispose(),this._surveyEventReceiver=null,(e=this._surveyManager)===null||e===void 0||(t=e.dispose)===null||t===void 0||t.call(e),this._surveyManager=null,this.Ea=[],this.Pa.forEach(B=>{B.active=!1}),this.Pa=[],(o=this.ja)===null||o===void 0||o.call(this),this.ja=void 0,this.Ra=null,this.Fa.forEach(B=>clearTimeout(B)),this.Fa.clear())}get Ar(){return this.Ta.get()}getRenderContext(){if(!this.xa)return;const A=this;return{client:this.xa,get config(){return A.Ar},surveys:A}}initialize(){this.loadIfEnabled()}reset(){var A,I;(A=this._surveyManager)===null||A===void 0||(I=A.clearInMemoryInProgressSurveyState)===null||I===void 0||I.call(A);try{var e;(e=this._surveyEventReceiver)===null||e===void 0||e.reset(),localStorage.removeItem("lastSeenSurveyDate");const t=[];for(let o=0;o<localStorage.length;o++){const B=localStorage.key(o);(B?.startsWith("seenSurvey_")||B?.startsWith("inProgressSurvey_"))&&t.push(B)}t.forEach(o=>localStorage.removeItem(o))}catch{}this.Oa()}loadIfEnabled(){if(this.Ci||!this.xa)return;const A=this.Ar;if(this._surveyManager)return;if(this.Ia)return void mn.info("Already initializing surveys, skipping...");if(A.disableSurveys)return void mn.info(XII);if(A.cookielessMode&&this.xa.isOptedOut)return void mn.info("Not loading surveys in cookieless mode without consent.");const I=this.Ta.getExtensions();if(!I)return void this.Ba("PostHog Extensions not found.");if(Ye(this.Da)&&!A.advancedEnableSurveys)return;const e=this.Da||A.advancedEnableSurveys;this.Ia=!0,this.Ma=!1;try{const t=I.generateSurveys;if(t)return this.za(t,e),void(this.Ia=!1);const o=I.loadExternalDependency;if(!o)return this.Ba(h6A),void(this.Ia=!1);o(B=>{try{if(this.Ci)return;const C=this.Ta.getExtensions();B||!C?.generateSurveys?this.Ba("Could not load surveys script",B):this.za(C.generateSurveys,e)}finally{this.Ia=!1}})}catch(t){throw this.Ia=!1,this.Ba("Error initializing surveys",t),t}}za(A,I){var e;if(this.Ci)return;this._surveyManager=A(I),this._surveyEventReceiver=this.Ha(this.xa,this.Oa);const t=(e=this.xa)===null||e===void 0?void 0:e.kv.get(ggA);t&&this.Ua(t),mn.info("Surveys loaded successfully"),this.Wa(),this.Oa(),this.Va({isLoaded:!0})}Ha(A,I){return new Llt(A,this,void 0,I)}Ba(A,I){this.Ma=!0,mn.error(A,I),this.Oa({isLoaded:!1,error:A}),this.Va({isLoaded:!1,error:A})}onSurveysLoaded(A){return this.Ea.push(A),this._surveyManager&&this.Va({isLoaded:!0}),()=>{this.Ea=this.Ea.filter(I=>I!==A)}}getSurveys(A,I=!1){if(this.Ci)return;const e=this.xa;if(!e)return A([],{isLoaded:!1,error:mq});if(this.Ar.disableSurveys)return mn.info(XII),A([]);const t=e.kv.get(ggA);if(t&&!I)return A(t,{isLoaded:!0}),void(this.Ga()&&this.getSurveys(()=>{},!0));if(this.Ra)return void this.Ra.then(({surveys:C,context:Q})=>{this.Ci||A(C,Q)}).catch(C=>mn.error("Error in survey callback",C));const o=e.sendRequest("/api/surveys/",{method:"GET",query:{token:e.projectToken},sentAt:"query",timeoutMs:this.Ar.requestTimeoutMs}).then(C=>{try{return this.Qa(e,C)}catch(Q){return mn.error("Error processing surveys response",Q),this.Qa(e,{statusCode:0,error:Q})}},C=>this.Qa(e,{statusCode:0,error:C}));this.Ra=o;const B=()=>{this.Ra===o&&(this.Ra=null)};o.then(C=>{B(),this.Ci||(this.Oa(C.context),A(C.surveys,C.context))},B).catch(C=>mn.error("Error in survey callback",C))}Qa(A,I){if(this.Ci)return{surveys:[],context:{isLoaded:!1,error:mq}};const e=I.statusCode;if(e!==200||!I.json){const o=`Surveys API could not be loaded, status: ${e}`;return e!==0?mn.error(o):I.error||mn.warn(o),this.Aa=Date.now(),{surveys:[],context:{isLoaded:!1,error:o}}}this.Aa=null;const t=I.json.surveys||[];return A.kv.set({[ggA]:t,[CDA]:Date.now()}),this.Ua(t),{surveys:t,context:{isLoaded:!0}}}Ua(A){const I=A.filter(e=>(function(t){return!(!t.start_date||t.end_date)})(e)&&(RII(e)||(function(t){var o;return!!(!((o=t.conditions)===null||o===void 0||(o=o.actions)===null||o===void 0||(o=o.values)===null||o===void 0)&&o.length)})(e)));this.Za(I)}Za(A){var I;(I=this._surveyEventReceiver)===null||I===void 0||I.replace(A)}Ga(){return this.Ja()&&!this.Ra&&!this.Ka()}Ja(){var A;const I=(A=this.xa)===null||A===void 0?void 0:A.kv.get(CDA);return Gh(I)&&Date.now()-I>3e5}Ka(){return Gh(this.Aa)&&3e5>Date.now()-this.Aa}markSurveyAsSeen(A,I){var e;const t={id:A,current_iteration:(e=I?.iteration)!==null&&e!==void 0?e:null};UII(t);try{localStorage.setItem("lastSeenSurveyDate",new Date().toISOString())}catch{}this.Oa()}Va(A){for(const I of this.Ea){if(this.Ci)return;try{A.isLoaded?this.getSurveys(I):I([],A)}catch(e){mn.error("Error in survey callback",e)}}}getActiveMatchingSurveys(A,I=!1){if(!hC(this._surveyManager))return this._surveyManager.getActiveMatchingSurveys(A,I);mn.warn("init was not called")}onActiveMatchingSurveysChanged(A){var I;if(this.Ci)return()=>{};const e={callback:A,active:!0,revision:0};this.Pa.push(e),this.Wa();const t=(I=this.xa)===null||I===void 0?void 0:I.kv.get(ggA);return this.Ar.disableSurveys||!this._surveyManager&&this.Ma&&!this.Ia||!t&&!hC(this.Aa)&&!this.Ra?this.La(e,{isLoaded:!1}):this._surveyManager&&this.La(e),()=>{var o;e.active=!1,this.Pa=this.Pa.filter(B=>B!==e),this.Pa.length===0&&((o=this.ja)===null||o===void 0||o.call(this),this.ja=void 0)}}Wa(){var A,I,e;this._surveyManager&&this.Pa.length>0&&((A=this.ja)!==null&&A!==void 0||(this.ja=(I=(e=this.Ta).onMatchingConditionsChanged)===null||I===void 0?void 0:I.call(e,this.Oa)))}La(A,I){if(this.Ci||!A.active)return;const e=++A.revision,t=o=>{if(!this.Ci&&A.active&&e===A.revision)try{const B=I??{isLoaded:!0},C=JSON.stringify([o,B]);if(C===A.lastResult)return;A.lastResult=C,A.callback(o,B)}catch(B){mn.error("Error in active matching surveys callback",B)}};try{I&&!I.isLoaded?t([]):this.getActiveMatchingSurveys(t)}catch(o){mn.error("Error in active matching surveys callback",o)}}Xa(A){let I=null;return this.getSurveys(e=>{var t;I=(t=e.find(o=>o.id===A))!==null&&t!==void 0?t:null}),I}Ya(A){if(hC(this._surveyManager))return{eligible:!1,reason:mq};const I=typeof A=="string"?this.Xa(A):A;return I?this._surveyManager.checkSurveyEligibility(I):{eligible:!1,reason:"Survey not found"}}tl(A){var I;if(!(!((I=this.xa)===null||I===void 0)&&I.canCapture))return{eligible:!1,reason:"PostHog is not capturing, so a survey response cannot be recorded"};if(hC(this._surveyManager))return{eligible:!1,reason:mq};const e=typeof A=="string"?this.Xa(A):A;return e?this._surveyManager.checkSurveyRenderability(e):{eligible:!1,reason:"Survey not found"}}canRenderSurvey(A){if(hC(this._surveyManager))return mn.warn("init was not called"),{visible:!1,disabledReason:mq};const I=this.tl(A);return{visible:I.eligible,disabledReason:I.reason}}canRenderSurveyAsync(A,I){return hC(this._surveyManager)?(mn.warn("init was not called"),Promise.resolve({visible:!1,disabledReason:mq})):new Promise(e=>{this.getSurveys(t=>{var o;const B=(o=t.find(C=>C.id===A))!==null&&o!==void 0?o:null;if(B){const C=this.tl(B);e({visible:C.eligible,disabledReason:C.reason})}else e({visible:!1,disabledReason:"Survey not found"})},I)})}renderSurvey(A,I,e){var t,o,B;if(!(!((t=this.xa)===null||t===void 0)&&t.canCapture))return;if(hC(this._surveyManager))return void mn.warn("init was not called");const C=typeof A=="string"?this.Xa(A):A;if(!C?.id)return void mn.warn("Survey not found");if(!slt.includes(C.type))return void mn.warn(`Surveys of type ${C.type} cannot be rendered in the app`);const Q=(o=typeof document>"u"?void 0:document)===null||o===void 0?void 0:o.querySelector(I);if(Q){if(!((B=C.appearance)===null||B===void 0)&&B.surveyPopupDelaySeconds){mn.info(`Rendering survey ${C.id} with delay of ${C.appearance.surveyPopupDelaySeconds} seconds`);const i=setTimeout(()=>{var E,n,s;this.Fa.delete(i),!this.Ci&&(!((E=this.xa)===null||E===void 0)&&E.canCapture)&&(mn.info(`Rendering survey ${C.id} with delay of ${(n=C.appearance)===null||n===void 0?void 0:n.surveyPopupDelaySeconds} seconds`),(s=this._surveyManager)===null||s===void 0||s.renderSurvey(C,Q,e),mn.info(`Survey ${C.id} rendered`))},1e3*C.appearance.surveyPopupDelaySeconds);return void this.Fa.add(i)}this._surveyManager.renderSurvey(C,Q,e)}else mn.warn("Survey element not found")}displaySurvey(A,I){var e,t;if(!(!((e=this.xa)===null||e===void 0)&&e.canCapture))return;if(hC(this._surveyManager))return void mn.warn("init was not called");const o=this.Xa(A);if(!o)return void mn.warn("Survey not found");let B=o;if(!((t=o.appearance)===null||t===void 0)&&t.surveyPopupDelaySeconds&&I.ignoreDelay&&(B=QI(QI({},o),{},{appearance:QI(QI({},o.appearance),{},{surveyPopupDelaySeconds:0})})),I.displayType!==gvA.Popover&&I.initialResponses&&mn.warn("initialResponses is only supported for popover surveys. prefill will not be applied."),I.ignoreConditions===!1){const C=this.Ya(o);if(!C.eligible)return void mn.warn("Survey is not eligible to be displayed: ",C.reason)}I.displayType!==gvA.Inline?this._surveyManager.handlePopoverSurvey(B,I):this.renderSurvey(B,I.selector,I.properties)}cancelPendingSurvey(A){hC(this._surveyManager)?mn.warn("init was not called"):this._surveyManager.cancelSurvey(A)}handlePageUnload(){var A,I;(A=this._surveyManager)===null||A===void 0||(I=A.handlePageUnload)===null||I===void 0||I.call(A)}},_lt=class{constructor(A){this._instance=A}get(){var A,I,e,t;const o=(A=this._instance)===null||A===void 0?void 0:A.config;return{disableSurveys:!!o?.disable_surveys,cookielessMode:!!o?.cookieless_mode,advancedEnableSurveys:!!o?.advanced_enable_surveys,requestTimeoutMs:(I=o?.surveys_request_timeout_ms)!==null&&I!==void 0?I:1e4,prefillFromUrl:!!(!(o==null||(e=o.surveys)===null||e===void 0)&&e.prefillFromUrl),automaticDisplay:!o?.disable_surveys_automatic_display,featureFlagEvaluation:!o?.advanced_disable_feature_flags,overrideLanguage:o?.override_display_language,prepareStylesheet:o?.prepare_external_dependency_stylesheet,get_current_url:o?.get_current_url,uiHost:(t=this._instance)===null||t===void 0||(t=t.requestRouter)===null||t===void 0?void 0:t.endpointFor("ui","")}}getExtensions(){const A=UB?.__PosthogExtensions__;if(!A||!this._instance)return;const I=this._instance,{generateSurveys:e,loadExternalDependency:t}=A;return{generateSurveys:e?o=>e(I,o):void 0,loadExternalDependency:t?o=>t(I,"surveys",o):void 0}}onMatchingConditionsChanged(A){var I,e;const t=(I=this._instance)===null||I===void 0?void 0:I._addCaptureHook(Q=>{Q!=="$pageview"&&Q!==AS.SHOWN&&Q!==AS.DISMISSED&&Q!==AS.SENT||A()}),o=()=>A();NE(Se,"PHSurveyShown",o);let B=!1;const C=(e=this._instance)===null||e===void 0?void 0:e.onFeatureFlags(()=>{B&&A()});return B=!0,()=>{B=!1,t?.(),C?.(),Se?.removeEventListener("PHSurveyShown",o)}}};const blt=Se?.location?hDA(Se.location.hash,"__posthog")||hDA(location.hash,"state"):null,$II="_postHogToolbarParams",AeI=zr("[Toolbar]"),geI=zr("[FeatureFlags]"),a5=zr("[FeatureFlags]",{debugEnabled:!0}),mvA=`" failed. Feature flags didn't load in time.`,Hlt=[502,504],IeI=["click","keydown","wheel","touchstart","pointerdown"],eeI="connection_error",teI=g=>{const A={};for(let I=0;g.length>I;I++)A[g[I]]=!0;return A},oeI=g=>{const A={};for(const[I,e]of aDA(g||{}))e&&(A[I]=e);return A};var vlt=class{constructor(A){this.name="featureFlags",this.dd=!1,this.featureFlagEventHandlers=[],this.$=geI,this.vd={},this.fd={},this.pd=[],this.gd=new Set,this.md=new Set,this.yd=!1,this.bd=!1,this._d=0,this.wd=!1,this.kd=!1,this.Sd=!1,this.xd=!1,this.$d=!1,this.Cd=0,this.Td=!1,this.rn=()=>{const I=this.Id();this.Cd=0,I&&this.reloadFeatureFlags()},this.Md=()=>{var I,e;const t=this.Ed,o=(I=this.Pd)!==null&&I!==void 0?I:t;Ye(t)||Ye(o)||this.Ar.remoteRequestsDisabled||!this.Rd||this.Rd.visibilityState==="hidden"||Date.now()-((e=this.Ad)!==null&&e!==void 0?e:0)<o||(this.Pd=this.Td||!this.Ar.idleRefreshBackoff?t:Math.min(2*o,36e5),this.Td=!1,this.reloadFeatureFlags(),this.Fd())},this.Od=()=>{this.Td&&this.Pd===this.Ed||this.Dd()},this.sn=()=>{var I;((I=this.Rd)===null||I===void 0?void 0:I.visibilityState)==="visible"&&this.Dd()},this.Ta=A}get Ld(){}Nd(){this.xa&&this.qd()}setup(A){try{this.jd=typeof window>"u"?void 0:window,this.Rd=typeof document>"u"?void 0:document}catch{this.jd=void 0,this.Rd=void 0}return this.Na=A,this.$=A.logger.createLogger("[FeatureFlags]"),GvA(A.kv.initialize(),()=>{this.Na===A&&(this.Na=void 0,this.xa=A,this.Bd(A))})}Bd(A){var I;if(this.xa===A)return this.jd&&NE(this.jd,"online",this.rn),this.qd(),this.zd=A.registerDynamicEventProperties(()=>this.Hd()?this.vd:this.fd),this.Ud=(I=this.Ld)===null||I===void 0?void 0:I.onCrossTabFeatureFlagChange(()=>{this.Wd(),this.Vd(),this.Gd()}),this.Vd(),this.initialize()}Dd(){this.Td=!0,this.Pd=this.Ed,this.Md()}qd(){var A;const I=this.Ar.refreshIntervalMs,e=!this.Ar.remoteRequestsDisabled&&this.Rd&&!Ye(I)&&I>0?I:void 0;this.Ar.idleRefreshBackoff||(this.Pd=e),e!==this.Ed&&(this.Qd(),Ye(e)||(this.Ed=e,this.Pd=e,this.Fd(),!((A=this.Rd)===null||A===void 0)&&A.addEventListener&&(NE(this.Rd,tq,this.sn),Qq(IeI,t=>{NE(this.Rd,t,this.Od,{capture:!0})}))))}Fd(){Ye(this.Ed)||(Ye(this.Zd)||clearInterval(this.Zd),this.Ad=Date.now(),this.Zd=setInterval(this.Md,this.Ed))}Qd(){var A,I;Ye(this.Zd)||(clearInterval(this.Zd),this.Zd=void 0,(A=this.Rd)===null||A===void 0||(I=A.removeEventListener)===null||I===void 0||I.call(A,"visibilitychange",this.sn),Qq(IeI,e=>{var t,o;(t=this.Rd)===null||t===void 0||(o=t.removeEventListener)===null||o===void 0||o.call(t,e,this.Od,{capture:!0})})),this.Ed=void 0,this.Pd=void 0,this.Td=!1,this.Ad=void 0}destroy(){this.Jd()}dispose(){this.Jd()}Jd(){var A,I,e;this.Qd(),this._d++,this.kd=!1,this.Na=void 0,this.Kd(this.gd,"cancelled"),this.Kd(this.md,"cancelled"),this.xa&&(this.Xd(),(A=this.zd)===null||A===void 0||A.dispose(),this.zd=void 0,(I=this.Ud)===null||I===void 0||I.call(this),this.Ud=void 0,this.pd=[],(e=this.jd)===null||e===void 0||e.removeEventListener("online",this.rn),this.xa=void 0)}get Ar(){return this.Ta.get()}Yd(A){var I;return this.tv&&A in this.tv?this.tv[A]:(I=this.xa)===null||I===void 0?void 0:I.kv.get(A)}Wd(){return!!this.tv&&(this.tv=void 0,!0)}ev(){var A;return!Ye((A=this.xa)===null||A===void 0?void 0:A.kv.get("$enabled_feature_flags"))&&this.Wd()}At(A){this.iv(()=>{var I;return(I=this.xa)===null||I===void 0?void 0:I.kv.set(A)})}nv(A,I,e){if(!this.Ld||!A.$enabled_feature_flags)return;const t=this.Yd("$enabled_feature_flags")||{},o=A.$enabled_feature_flags||{},B=I.flags||I.featureFlags,C=I.flags?Object.entries(I.flags).filter(([,l])=>!l?.failed).map(([l])=>l):[],Q=!!I.errorsWhileComputingFlags&&!!I.flags,i=Q?C:e&&!cB(B)?Object.keys(B||{}):Array.from(new Set([...Object.keys(t),...Object.keys(o)])),E=this.Yd("$feature_flag_payloads")||{},n=A.$feature_flag_payloads||{},s=Q||e?i:Array.from(new Set([...Object.keys(E),...Object.keys(n)])),r=!Q&&!e,a=!!r||i,c=!!r||s,h={[sJ]:a,[xR]:a,[a3]:c};A.$feature_flag_details&&(h[o5]=a);for(const l of[B5,E3,$AA])Ye(A[l])||(h[l]=!0);this.Ld.markCrossTabFeatureFlagChanges(h)}Pt(A){this.iv(()=>{var I;return(I=this.xa)===null||I===void 0?void 0:I.kv.remove(A)})}iv(A){try{A()}catch(I){this.$.error("Failed to update feature flag persistence",I)}}Vd(){const A={};for(const t of[sJ,a3,B5,wx]){const o=this.Yd(t);Ye(o)||(A[t]=o)}this.vd=A;const I=QI({},A),e=this.Yd(xR);if(e)for(const[t,o]of Object.entries(e))I[`$feature/${t}`]=o;this.fd=I}Hd(){const A=this.Ar.cacheTtlMs;if(!A||0>=A)return!1;const I=this.Yd(E3);return typeof I!="number"||Date.now()-I>A}sv(){return!!this.Hd()&&(this.$d||this.bd||(this.$d=!0,this.$.warn("Feature flag cache is stale, triggering refresh..."),this.reloadFeatureFlags()),!0)}rv(){const A=this.Ar.evaluationContexts;return A?.length?A.filter(I=>{const e=I&&typeof I=="string"&&I.trim().length>0;return e||this.$.error("Invalid evaluation context found:",I,"Expected non-empty string"),e}):[]}ov(){const A=this.Ar.flagKeys;if(!Ye(A))return A.filter(I=>{const e=I&&typeof I=="string"&&I.trim().length>0;return e||this.$.error("Invalid flag key found:",I,"Expected non-empty string"),e})}initialize(){var A,I;const e=this.Ar,t=(A=(I=e.bootstrap)===null||I===void 0?void 0:I.featureFlags)!==null&&A!==void 0?A:{};if(Object.keys(t).length){var o,B;const C=(o=(B=e.bootstrap)===null||B===void 0?void 0:B.featureFlagPayloads)!==null&&o!==void 0?o:{},Q=Object.keys(t).filter(E=>!Ye(t[E])).reduce((E,n)=>(E[n]=t[n],E),{}),i=Object.keys(C).filter(E=>Q[E]).reduce((E,n)=>(E[n]=C[n],E),{});return this.av({featureFlags:Q,featureFlagPayloads:i},void 0,{persist:!1})}}updateFlags(A,I,e){var t,o;const B=e?.merge&&(t=this.Yd("$enabled_feature_flags"))!==null&&t!==void 0?t:{},C=e?.merge&&(o=this.Yd("$feature_flag_payloads"))!==null&&o!==void 0?o:{},Q=QI(QI({},B),A),i=QI(QI({},C),I),E={};for(const[n,s]of Object.entries(Q))E[n]={key:n,enabled:aAI(s),variant:rAI(s),reason:void 0,metadata:Ye(i?.[n])?void 0:{id:0,version:void 0,description:void 0,payload:i[n]}};this.av({flags:E})}get hasLoadedFlags(){return this.yd}getFlags(){return Object.keys(this.getFlagVariants())}getFlagsWithDetails(){const A=this.Yd(o5),I=this.Yd(wx),e=this.Yd(C5);if(!e&&!I)return A||{};const t=sr({},A||{}),o=[...new Set([...Object.keys(e||{}),...Object.keys(I||{})])];for(const Q of o){var B,C;const i=t[Q],E=I?.[Q],n=Ye(E)?(B=i?.enabled)!==null&&B!==void 0&&B:!!E,s=Ye(E)?i?.variant:typeof E=="string"?E:void 0,r=e?.[Q],a=QI(QI({},i),{},{enabled:n,variant:n?s??i?.variant:void 0});n!==i?.enabled&&(a.original_enabled=i?.enabled),s!==i?.variant&&(a.original_variant=i?.variant),r&&(a.metadata=QI(QI({},i?.metadata),{},{payload:r,original_payload:i==null||(C=i.metadata)===null||C===void 0?void 0:C.payload})),t[Q]=a}return this.dd||(this.$.warn(" Overriding feature flag details!",{flagDetails:A,overriddenPayloads:e,finalDetails:t}),this.dd=!0),t}getAllFeatureFlags(){const A=this.getFlagVariants(),I=this.getFlagPayloads();return Object.keys(A).map(e=>{const t=A[e];return{key:e,enabled:aAI(t),variant:rAI(t),payload:sAI(I[e])}})}getFlagVariants(){const A=this.Yd(xR),I=this.Yd(wx);if(!I)return A||{};const e=sr({},A||{}),t=Object.keys(I);for(let o=0;t.length>o;o++)e[t[o]]=I[t[o]];return this.dd||(this.$.warn(" Overriding feature flags!",{enabledFlags:A,overriddenFlags:I,finalFlags:e}),this.dd=!0),e}getFlagPayloads(){const A=this.Yd(a3),I=this.Yd(C5);if(!I)return A||{};const e=sr({},A||{}),t=Object.keys(I);for(let o=0;t.length>o;o++)e[t[o]]=I[t[o]];return this.dd||(this.$.warn(" Overriding feature flag payloads!",{flagPayloads:A,overriddenPayloads:I,finalPayloads:e}),this.dd=!0),e}reloadFeatureFlags(){this.wd||this.Ar.featureFlagsDisabled||this.Id()||(this.Sd&&this.$.warn("reloadFeatureFlags() was called inside an onFeatureFlags callback. This callback also runs when flags change in other tabs, so this can cause a request loop."),this.bd&&(this.kd=!0),this.lv||(this.pd.slice().forEach(A=>{try{A()}catch(I){this.$.error("Error while running feature flags reloading callback",I)}}),this.lv=setTimeout(()=>{this.uv()},5)))}reloadFeatureFlagsAsync(){return!this.xa||this.wd||this.Ar.featureFlagsDisabled||this.Ar.remoteRequestsDisabled||this.Id()?Promise.resolve({status:"skipped"}):new Promise(A=>{this.gd.add(A),this.reloadFeatureFlags()})}Kd(A,I){A.forEach(e=>e({status:I})),A.clear()}Xd(){clearTimeout(this.lv),this.lv=void 0}onReloading(A){return this.pd.push(A),()=>{this.pd=this.pd.filter(I=>I!==A)}}ensureFlagsLoaded(){this.yd||this.bd||this.lv||this.reloadFeatureFlags()}setAnonymousDistinctId(A){this.$anon_distinct_id=A}setReloadingPaused(A){this.wd=A}resetFlagCallReported(){this.Pt(aJ)}uv(A){var I;this.Xd();const e=this.xa;if(!e||this.Ar.remoteRequestsDisabled||this.Id())return void this.Kd(this.gd,"skipped");if(this.bd)return void(this.kd=!0);const t={token:e.projectToken,distinct_id:e.distinctId,groups:e.groups,$anon_distinct_id:this.$anon_distinct_id,person_properties:QI(QI(QI({},e.initialPersonProperties),this.Yd("$stored_person_properties")||{}),{},{$lib:e.library.name,$lib_version:e.library.version}),group_properties:this.Yd(n3),timezone:bgI()};Ye(e.deviceId)||(t.$device_id=e.deviceId),(A?.disableFlags||this.Ar.featureFlagsDisabled)&&(t.disable_flags=!0);const o=this.rv();o.length&&(t.evaluation_contexts=o);const B=this.ov();Ye(B)||(t.flag_keys=B);const C=this.Ar.onlyEvaluateSurveyFeatureFlags,Q="/flags/?v=2"+(C?"&only_evaluate_survey_feature_flags=true":""),i=this._d,E=this.gd;this.gd=new Set,this.md=E,this.bd=!0;const n=()=>{this.kd&&(this.kd=!1,this.uv())},s=l=>{var D,d;const y=(D=l.json)!==null&&D!==void 0?D:{},w=l.statusCode!==200;if(this.bd=!1,i!==this._d)return void n();if(this.hv(l.statusCode),w||this.kd||(this.$anon_distinct_id=void 0),t.disable_flags&&!this.kd)return void this.Kd(E,"skipped");this.xd=!w;const u=[];l.error?u.push(l.error instanceof Error&&l.error.name==="AbortError"?"timeout":l.error instanceof Error?eeI:"unknown_error"):l.statusCode!==200&&u.push(`api_error_${l.statusCode}`),y.errorsWhileComputingFlags&&u.push("errors_while_computing_flags");const G=!!(!((d=y.quotaLimited)===null||d===void 0)&&d.includes("feature_flags"));G&&u.push("quota_limited"),this.At({[XAA]:u}),G?this.$.warn("You have hit your feature flags quota limit, and will not be able to load feature flags until the quota is reset. Please visit https://posthog.com/docs/billing/limits-alerts to learn more."):t.disable_flags||this.av(y,w,{partialResponse:C}),this.Kd(E,t.disable_flags?"skipped":u.length||!y.flags&&!y.featureFlags?"error":"loaded"),n()},r=l=>{this.bd=!1,i===this._d&&(this.At({[XAA]:[eeI]}),this.$.error("Feature flag request failed",l),this.ev()&&this.Gd(!0),this.Kd(E,"error")),n()};let a=(I=this.Ar.requestMaxRetries)!==null&&I!==void 0?I:1;const c=()=>a>0&&i===this._d,h=()=>{if(i!==this._d||!this.xa||this.Ar.remoteRequestsDisabled)return this.bd=!1,this.Kd(E,"skipped"),void n();try{e.sendRequest(Q,{target:"flags",method:"POST",body:t,compression:this.Ar.compression,sentAt:"body",timeoutMs:this.Ar.requestTimeoutMs}).then(l=>{if((D=>Hlt.includes(D.statusCode)||(d=>d.statusCode===0&&d.error instanceof Error&&d.error.name==="AbortError")(D))(l)&&c())return a--,void setTimeout(h,500);s(l)}).catch(r)}catch(l){r(l)}};h()}Id(){return vgI(this.Cd,3)}hv(A){this.Cd=TgI(A,this.Cd,3,()=>this.$.warn("Feature flag requests are failing before receiving an HTTP response; this can happen due to network issues, CORS, browser blocking, or ad blockers. Stopped refreshing feature flags; will try again when connectivity changes."))}getFeatureFlag(A,I={}){var e;if(I.fresh&&!this.xd)return;if(!(this.yd||this.getFlags()&&this.getFlags().length>0))return void this.$.warn('getFeatureFlag for key "'+A+mvA);if(this.sv())return;const t=this.getFeatureFlagResult(A,I);return(e=t?.variant)!==null&&e!==void 0?e:t?.enabled}getFeatureFlagDetails(A){return this.getFlagsWithDetails()[A]}getFeatureFlagPayload(A){const I=this.getFeatureFlagResult(A,{send_event:!1});return I?.payload}getFeatureFlagResult(A,I={}){if(I.fresh&&!this.xd)return;if(!(this.yd||this.getFlags()&&this.getFlags().length>0))return void this.$.warn('getFeatureFlagResult for key "'+A+mvA);if(this.sv())return;const e=this.getFlagVariants(),t=A in e,o=e[A],B=this.getFlagPayloads()[A],C=String(o),Q=this.Yd("$feature_flag_request_id")||void 0,i=this.Yd("$feature_flag_evaluated_at")||void 0;let E,n=this.Yd("$flag_call_reported")||{};if(this.Ar.deduplicateCallsPerSession){var s;const R=(s=this.xa)===null||s===void 0||(s=s.session)===null||s===void 0?void 0:s.sessionId,x=this.Yd(AgA);R&&R!==x&&(n={},E=R)}if(!I.send_event&&"send_event"in I)E&&this.At({[aJ]:n,[AgA]:E});else{var r,a;const R=(r=this.xa)===null||r===void 0?void 0:r.canCapture;if(!R&&Object.keys(n).length>0&&(n={},this.At({[aJ]:n})),R&&!(!((a=n[A])===null||a===void 0)&&a.includes(C))){var c,h,l,D,d,y,w,u,G,m,p,k,S;cB(n[A])?n[A].push(C):n[A]=[C],this.At(QI({[aJ]:n},E?{[AgA]:E}:{}));const x=this.getFeatureFlagDetails(A),N=[...(c=this.Yd("$feature_flag_errors"))!==null&&c!==void 0?c:[]];Ye(o)&&N.push("flag_missing");const U={$feature_flag:A,$feature_flag_response:o,$feature_flag_payload:B??null,$feature_flag_request_id:Q,$feature_flag_evaluated_at:i,$feature_flag_bootstrapped_response:(h=(l=this.Ar.bootstrap)===null||l===void 0||(l=l.featureFlags)===null||l===void 0?void 0:l[A])!==null&&h!==void 0?h:null,$feature_flag_bootstrapped_payload:(D=(d=this.Ar.bootstrap)===null||d===void 0||(d=d.featureFlagPayloads)===null||d===void 0?void 0:d[A])!==null&&D!==void 0?D:null,$used_bootstrap_value:!this.xd};Ye(x==null||(y=x.metadata)===null||y===void 0?void 0:y.has_experiment)||(U.$feature_flag_has_experiment=x.metadata.has_experiment),Ye(x==null||(w=x.metadata)===null||w===void 0?void 0:w.version)||(U.$feature_flag_version=x.metadata.version);const K=(u=x==null||(G=x.reason)===null||G===void 0?void 0:G.description)!==null&&u!==void 0?u:x==null||(m=x.reason)===null||m===void 0?void 0:m.code;K&&(U.$feature_flag_reason=K),!(x==null||(p=x.metadata)===null||p===void 0)&&p.id&&(U.$feature_flag_id=x.metadata.id),Ye(x?.original_variant)&&Ye(x?.original_enabled)||(U.$feature_flag_original_response=Ye(x.original_variant)?x.original_enabled:x.original_variant),!(x==null||(k=x.metadata)===null||k===void 0)&&k.original_payload&&(U.$feature_flag_original_payload=x==null||(S=x.metadata)===null||S===void 0?void 0:S.original_payload),N.length&&(U.$feature_flag_error=N.join(",")),this.dv(U)}else E&&this.At({[aJ]:n,[AgA]:E})}return t?{key:A,enabled:!!o,variant:typeof o=="string"?o:void 0,payload:sAI(B)}:void 0}dv(A){try{var I;(I=this.xa)===null||I===void 0||I.capture("$feature_flag_called",A)}catch(e){this.$.error("Failed to capture feature flag call",e)}}getRemoteConfigPayload(A,I){this.vv(A,I)}vv(A,I){var e=this;return Qa(function*(){const t=e.xa;if(!t)return;const o={distinct_id:t.distinctId,token:t.projectToken,person_properties:{$lib:t.library.name,$lib_version:t.library.version}},B=e.rv();B.length&&(o.evaluation_contexts=B);const C=e.ov();let Q;Ye(C)||(o.flag_keys=C);try{var i;const E=(i=(yield t.sendRequest("/flags/?v=2",{target:"flags",method:"POST",body:o,compression:e.Ar.compression,sentAt:"body",timeoutMs:e.Ar.requestTimeoutMs})).json)===null||i===void 0?void 0:i.featureFlagPayloads;Q=E?.[A]||void 0}catch(E){return void e.$.error("Remote config feature flag request failed",E)}try{I(Q)}catch(E){e.$.error("Remote config feature flag callback failed",E)}})()}isFeatureEnabled(A,I={}){if(I.fresh&&!this.xd)return I.defaultValue;if(!(this.yd||this.getFlags()&&this.getFlags().length>0))return this.$.warn('isFeatureEnabled for key "'+A+mvA),I.defaultValue;const e=this.getFeatureFlag(A,I);return Ye(e)?I.defaultValue:!!e}addFeatureFlagsHandler(A){this.featureFlagEventHandlers.push(A)}removeFeatureFlagsHandler(A){this.featureFlagEventHandlers=this.featureFlagEventHandlers.filter(I=>I!==A)}receivedFeatureFlags(A,I,e){this.av(A,I,e)}av(A,I,e){if(!this.xa)return;this.yd=!0;const t=((o,B={},C={},Q={},i,E=geI)=>{const n=((y,w)=>{const u=y.flags;if(u){const G=Object.fromEntries(Object.keys(u).map(p=>{var k;return[p,(k=u[p].variant)!==null&&k!==void 0?k:u[p].enabled]})),m=Object.fromEntries(Object.keys(u).filter(p=>u[p].enabled).filter(p=>{var k;return!Ye((k=u[p].metadata)===null||k===void 0?void 0:k.payload)}).map(p=>{var k;return[p,(k=u[p].metadata)===null||k===void 0?void 0:k.payload]}));return QI(QI({},y),{},{featureFlags:G,featureFlagPayloads:m})}return y.featureFlags&&w.warn("Using an older version of the feature flags endpoint. Please upgrade your PostHog server to the latest version"),y})(o,E),s=n.flags,r=n.featureFlags,a=n.featureFlagPayloads;if(!r)return;const c=o.requestId,h=o.evaluatedAt;if(cB(r)){E.warn("v1 of the feature flags endpoint is deprecated. Please use the latest version.");const y={};if(r)for(let w=0;r.length>w;w++)y[r[w]]=!0;return{[sJ]:r,[xR]:y,[$AA]:!1}}let l=r,D=a,d=s;if(i?.partialResponse){const y=Object.keys(l),w=D||{};l=QI(QI({},B),l),D=QI(QI({},C),w),y.forEach(u=>{u in w||D==null||delete D[u]}),d=QI(QI({},Q),d)}else if(o.errorsWhileComputingFlags)if(s){const y=new Set(Object.keys(s).filter(u=>{var G;return!(!((G=s[u])===null||G===void 0)&&G.failed)}));l=QI(QI({},B),Object.fromEntries(Object.entries(l).filter(([u])=>y.has(u))));const w=Object.fromEntries(Object.entries(D||{}).filter(([u])=>y.has(u)));D=QI(QI({},C),w),y.forEach(u=>{u in w||D==null||delete D[u]}),d=QI(QI({},Q),Object.fromEntries(Object.entries(d||{}).filter(([u])=>y.has(u))))}else l=QI(QI({},B),l),D=QI(QI({},C),D),d=QI(QI({},Q),d);return QI(QI({[sJ]:Object.keys(oeI(l)),[xR]:l||{},[a3]:D||{},[o5]:d||{},[$AA]:o.minimalFlagCalledEvents===!0},c?{[B5]:c}:{}),h?{[E3]:h}:{})})(A,this.getFlagVariants(),this.getFlagPayloads(),this.getFlagsWithDetails(),e,this.$);if(t)if(e?.persist===!1){const o=!Ye(this.xa.kv.get(xR));this.tv=t,o||this.At(t)}else this.Wd(),this.nv(t,A,!!e?.partialResponse),this.At(t);else I&&this.ev();I||(this.$d=!1),this.Gd(I)}override(A,I=!1){this.$.warn("override is deprecated. Please use overrideFeatureFlags instead."),this.overrideFeatureFlags({flags:A,suppressWarning:I})}overrideFeatureFlags(A){this.fv(A)}fv(A){if(this.xa){if(A===!1)return this.Pt([wx,C5]),this.Gd(),void a5.info("All overrides cleared");if(cB(A))return this.At({[wx]:teI(A)}),this.Gd(),void a5.info("Flag overrides set",{flags:A});if(A&&typeof A=="object"&&("flags"in A||"payloads"in A)){var I;const e=A;this.dd=!!((I=e.suppressWarning)!==null&&I!==void 0&&I);const t={},o=e.flags,B=e.payloads;return o&&(t[wx]=cB(o)?teI(o):o),B&&(t[C5]=B),Object.keys(t).length&&this.At(t),o===!1&&B===!1?this.Pt([wx,C5]):o===!1?this.Pt(wx):B===!1&&this.Pt(C5),this.Gd(),o===!1?a5.info("Flag overrides cleared"):o&&a5.info("Flag overrides set",{flags:o}),void(B===!1?a5.info("Payload overrides cleared"):B&&a5.info("Payload overrides set",{payloads:B}))}if(A&&typeof A=="object")return this.At({[wx]:A}),this.Gd(),void a5.info("Flag overrides set",{flags:A});this.$.warn("Invalid overrideOptions provided to overrideFeatureFlags",{overrideOptions:A})}else this.$.warn("posthog.featureFlags.overrideFeatureFlags called before feature flags were ready")}onFeatureFlags(A){if(this.addFeatureFlagsHandler(A),this.yd){const{flags:I,flagVariants:e}=this.pv();try{A(I,e)}catch(t){this.$.error("Error while running feature flags callback",t)}}return()=>this.removeFeatureFlagsHandler(A)}updateEarlyAccessFeatureEnrollment(A,I,e){var t;const o=(this.Yd("$early_access_features")||[]).find(E=>E.flagKey===A),B={[`$feature_enrollment/${A}`]:I},C={$feature_flag:A,$feature_enrollment:I,$set:B};o&&(C.$early_access_feature_name=o.name),e&&(C.$feature_enrollment_stage=e);const Q=QI(QI({},this.getFlagVariants()),{},{[A]:I});(t=this.Ld)===null||t===void 0||t.markCrossTabFeatureFlagChanges({$active_feature_flags:[A],$enabled_feature_flags:[A],$stored_person_properties:Object.keys(B)}),this.At({[sJ]:Object.keys(oeI(Q)),[xR]:Q,[s3]:QI(QI({},this.Yd("$stored_person_properties")||{}),B)}),this.Gd();try{var i;(i=this.xa)===null||i===void 0||i.capture("$feature_enrollment_update",C)}catch(E){this.$.error("Failed to capture early access feature enrollment",E)}}getEarlyAccessFeatures(A,I=!1,e){const t=this.Yd(c6A);!t||I?this.gv(A,e):A(t)}gv(A,I){var e=this;return Qa(function*(){const t=e.xa;if(!t)return;const o=I?`&${I.map(C=>`stage=${C}`).join("&")}`:"";let B;try{const C=yield t.sendRequest(`/api/early_access_features/?token=${t.projectToken}${o}`,{target:"api",method:"GET",sentAt:"query"});if(!C.json)return;B=C.json.earlyAccessFeatures,e.At({[c6A]:B})}catch(C){return void e.$.error("Early access feature request failed",C)}try{A(B)}catch(C){e.$.error("Early access feature callback failed",C)}})()}pv(){const A=this.getFlags(),I=this.getFlagVariants();return{flags:A.filter(e=>I[e]),flagVariants:Object.keys(I).filter(e=>I[e]).reduce((e,t)=>(e[t]=I[t],e),{})}}Gd(A){this.Vd();const{flags:I,flagVariants:e}=this.pv(),t=this.Sd;this.Sd=!0,this.featureFlagEventHandlers.forEach(o=>{try{o(I,e,{errorsLoading:A})}catch(B){this.$.error("Error while running feature flags callback",B)}}),this.Sd=t}setPersonPropertiesForFlags(A,I=!0){this.mv(A,I)}mv(A,I=!0){const e=this.Yd("$stored_person_properties")||{},t=A?.$set||(A?.$set_once?{}:A),o=A?.$set_once,B={};if(o)for(const C in o)({}).hasOwnProperty.call(o,C)&&(C in e||(B[C]=o[C]));this.At({[s3]:QI(QI(QI({},e),B),t)}),I&&this.reloadFeatureFlags()}unsetPersonPropertiesForFlags(A,I=!0){const e=QI({},this.Yd("$stored_person_properties")||{});A.forEach(t=>{delete e[t]}),this.At({[s3]:e}),I&&this.reloadFeatureFlags()}resetPersonPropertiesForFlags(A=!0){this.Pt(s3),A&&this.reloadFeatureFlags()}setGroupPropertiesForFlags(A,I=!0){const e=this.Yd("$stored_group_properties")||{},t=QI({},e);for(const o of Object.keys(A))t[o]=QI(QI({},e[o]),A[o]);this.At({[n3]:t}),I&&this.reloadFeatureFlags()}resetGroupPropertiesForFlags(A){if(A){const I=this.Yd("$stored_group_properties")||{};this.At({[n3]:QI(QI({},I),{},{[A]:{}})})}else this.Pt(n3)}reset(){this._d++,this.Kd(this.gd,"cancelled"),this.Kd(this.md,"cancelled"),this.kd=!1,this.vd={},this.fd={},this.tv=void 0,this.yd=!1,this.wd=!1,this.xd=!1,this.$anon_distinct_id=void 0,this.Xd(),this.dd=!1,this.Cd=0}};const BeI=zr("[FeatureFlags]");var Tlt=class{constructor(A,I=!1){this.yv=!1,this.update(A,I)}update(A,I){this.bv=((e,t)=>{var o,B,C,Q,i,E,n,s;return{bootstrap:{featureFlags:(o=(B=e.bootstrap)===null||B===void 0?void 0:B.featureFlags)!==null&&o!==void 0?o:void 0,featureFlagPayloads:(C=(Q=e.bootstrap)===null||Q===void 0?void 0:Q.featureFlagPayloads)!==null&&C!==void 0?C:void 0},remoteRequestsDisabled:t,featureFlagsDisabled:!!e.advanced_disable_feature_flags,onlyEvaluateSurveyFeatureFlags:!!e.advanced_only_evaluate_survey_feature_flags,deduplicateCallsPerSession:!!e.advanced_feature_flags_dedup_per_session,cacheTtlMs:e.feature_flag_cache_ttl_ms,refreshIntervalMs:(i=e.remote_config_refresh_interval_ms)!==null&&i!==void 0?i:3e5,idleRefreshBackoff:Ye(e.remote_config_refresh_interval_ms),requestTimeoutMs:e.feature_flag_request_timeout_ms,requestMaxRetries:Math.max(0,(E=e.feature_flag_request_max_retries)!==null&&E!==void 0?E:1),compression:e.disable_compression?void 0:"best-available",evaluationContexts:(n=(s=e.evaluation_contexts)!==null&&s!==void 0?s:e.evaluation_environments)!==null&&n!==void 0?n:[],flagKeys:cB(e.flag_keys)?e.flag_keys:void 0}})(A,I),!A.evaluation_environments||A.evaluation_contexts||this.yv||(BeI.warn("evaluation_environments is deprecated. Use evaluation_contexts instead. evaluation_environments will be removed in a future version."),this.yv=!0),Ye(A.flag_keys)||cB(A.flag_keys)||BeI.error("Invalid flag_keys found:",A.flag_keys,"Expected array of non-empty strings")}get(){return this.bv}};const CeI=g=>Aq(g)&&(g.name==="RangeError"&&g.message.indexOf("Maximum call stack size exceeded")===0||g.name==="InternalError"&&g.message==="too much recursion"),PR=zr("[Error tracking]"),pvA="webkit-masked-url:",qlt=[{value:"isolatedAPI.contexts.topHostname",exact:!1},{value:"No response from target",exact:!0}],Zlt=["chrome-extension://","moz-extension://","safari-extension:","safari-web-extension:",pvA],Olt=["__firefox__","__gCrWeb"],QeI="Refusing to render web experiment since the viewer is a likely bot",Wlt={icontains:(g,A)=>A.toLowerCase().indexOf(g.toLowerCase())>-1,not_icontains:(g,A)=>A.toLowerCase().indexOf(g.toLowerCase())===-1,regex:(g,A)=>pDA(A,g),not_regex:(g,A)=>!pDA(A,g),exact:(g,A)=>A===g,is_not:(g,A)=>A!==g},gf=zr("[Conversations]"),r5="Conversations not available yet.";function ieI(g,A){var I,e,t,o,B,C,Q;const i=(I=g?.flushIntervalMs)!==null&&I!==void 0?I:3e3,E=(e=g?.maxBufferSize)!==null&&e!==void 0?e:100,n=A?.consoleCapture?void 0:(t=g?.maxLogsPerInterval)!==null&&t!==void 0?t:1e3,s=Ye(n)?Math.max(E,2048):Math.max(E,n),r=QI(QI({},(function(){let a="",c="";try{var h;const l="u">typeof globalThis?globalThis:"u">typeof window?window:void 0,D=l==null||(h=l.navigator)===null||h===void 0?void 0:h.userAgent;D&&([a,c]=Z$g(D))}catch{}return(function(l,D){const d=(function(y){if(y)return{}.hasOwnProperty.call(RAI,y)?RAI[y]:y})(l);return QI(QI({},d?{"os.name":d}:{}),D?{"os.version":D}:{})})(a,c)})()),g?.resourceAttributes);return{serviceName:(o=(B=r?.["service.name"])!==null&&B!==void 0?B:g?.serviceName)!==null&&o!==void 0?o:A?.serviceNameDefault,serviceVersion:(C=r?.["service.version"])!==null&&C!==void 0?C:g?.serviceVersion,environment:(Q=r?.["deployment.environment"])!==null&&Q!==void 0?Q:g?.environment,resourceAttributes:r,beforeSend:g?.beforeSend,flushIntervalMs:i,maxBufferSize:E,maxQueueSize:s,maxBatchRecordsPerPost:100,rateCapWindowMs:i,maxLogsPerInterval:n,backgroundFlushBudgetMs:0,terminationFlushBudgetMs:0}}const Vlt=["debug","log","warn","error","info"],jlt=g=>{for(;g?.__rrweb_original__;)g=g.__rrweb_original__;return g},EeI="console",neI="__posthogHandledLogsRequestError",kvA=(g,A)=>{const I=g instanceof Error?g:new Error(A);return I[neI]=!0,I},seI=g=>!!g&&typeof g=="object"&&g[neI]===!0;var zlt=class{get _v(){return QI(QI({},this.$),{},{error:(...g)=>{g.some(seI)||this.$.error(...g)}})}constructor(g,A){var I;this.Ta=g,this.wv=A,this.name="logs",this.Sv=!1,this.xv=!1,this.$v=!1,this.$=zr("[logs]"),this.Wu=[],this.Cv=[],this.Cd=0,this.Tv=!1,this.Ci=!1,this.Iv=[],this.Mv=[],this.Ev=!1,this.Pv=!1,this.Rv=!1,this.Av=()=>{var e,t;this.Ci||(this.Cd=0,(e=this.Fv)===null||e===void 0||e.onReconnect(),(t=this.Ov)===null||t===void 0||t.onReconnect())},this.Sv=!!(!((I=g.get())===null||I===void 0)&&I.captureConsoleLogs)}get Dv(){return!0}Lv(){}Nv(){if(!this.Rv){try{this.jd=typeof window>"u"?void 0:window}catch{this.jd=void 0}this.jd&&(NE(this.jd,"online",this.Av),this.Rv=!0)}}qv(g,A,I,e){this.Nv();const t=ieI(this.Ta.get(),I);return[new Hht(this.jv(g,A),t,this._v,()=>this.wv(),o=>o(),void 0,e),t]}Bv(){const g=this.Ta.get();var A;return this.Fv&&this.zv===g||((A=this.Fv)===null||A===void 0||A.reset(),this.zv=g,[this.Fv,this.Hv]=this.qv(()=>this.Wu,I=>{this.Wu=I})),this.Fv}Uv(){const g=this.Ta.get();var A;return this.Ov&&this.Wv===g||((A=this.Ov)===null||A===void 0||A.reset(),this.Wv=g,[this.Ov,this.Vv]=this.qv(()=>this.Cv,I=>{this.Cv=I},{serviceNameDefault:"posthog-browser-logs",consoleCapture:!0},EeI)),this.Ov}setup(g){if(!this.Ci&&!this.Tv)return this.Tv=!0,this.xa=g,this.$=g.logger.createLogger("[logs]"),GvA(g.kv.initialize(),()=>{this.Ci||this.Bd(g)})}Bd(g){var A;this.Nv(),!((A=this.Ta.get())===null||A===void 0)&&A.captureConsoleLogs&&(this.Sv=!0),(this.Sv||this.Ta.remoteConfigWillArrive&&g.kv.get(this.Ta.captureHintKey))&&this.Gv();let I=!1;const e=g.onRemoteConfig(t=>{var o;I=t.ok&&((o=t.config.logs)===null||o===void 0?void 0:o.captureConsoleLogs)===!0,this.onRemoteConfig(t)});this.Ci?e.dispose():(this.qa=e,I||this.loadIfEnabled())}dispose(){var g,A,I,e,t,o,B;this.Ci||(this.Ci=!0,this.Qv(),(g=this.qa)===null||g===void 0||g.dispose(),this.qa=void 0,this.xa=void 0,this.$v=!1,(A=this.jd)===null||A===void 0||A.removeEventListener("online",this.Av),(I=this.Zv)===null||I===void 0||I.call(this),this.Zv=void 0,(e=this.Fv)===null||e===void 0||e.clearQueue(),(t=this.Ov)===null||t===void 0||t.clearQueue(),(o=this.Fv)===null||o===void 0||o.reset(),(B=this.Ov)===null||B===void 0||B.reset())}onRemoteConfig(g){var A,I;if(this.Ci)return;const e=g.ok?(A=g.config.logs)===null||A===void 0?void 0:A.captureConsoleLogs:void 0;hC(e)?this.Jv():((I=this.xa)===null||I===void 0||I.kv.set(this.Ta.captureHintKey,!!e),e?(this.Sv=!0,this.xv||this.Gv(),this.loadIfEnabled()):this.Jv())}reset(){var g,A,I,e;this.Qv(),(g=this.Fv)===null||g===void 0||g.clearQueue(),this.Wu=[],(A=this.Fv)===null||A===void 0||A.reset(),(I=this.Ov)===null||I===void 0||I.clearQueue(),this.Cv=[],(e=this.Ov)===null||e===void 0||e.reset(),this.Cd=0}captureLog(g){!this.Ci&&this.xa&&this.Bv().captureLog(g)}captureConsoleLog(g){!this.Ci&&this.xa&&this.Uv().captureLog(g)}captureBufferedConsoleLog(g,A,I){!this.Ci&&this.xa&&this.Uv().captureLog(g,{context:A,occurredAtMs:I})}hd(){var g;this.Qv(),(g=this.Ov)===null||g===void 0||g.clearQueue(),this.Cv=[]}Jv(){this.Sv||this.Qv()}Gv(){var g;if(this.Ev||!(!((g=this.jd)===null||g===void 0)&&g.console))return;const A=ieI(this.Ta.get()).maxBufferSize;let I=!0;this.Mv.push(()=>{I=!1});for(const e of Vlt){let t;try{t=jlt(this.jd.console[e])}catch{continue}t&&this.Mv.push(uq(this.jd.console,e,o=>{const B=(...C)=>{try{I&&this.Kv(e,C,A)}catch{}return o.apply(this.jd.console,C)};return B.__rrweb_original__=t,B}))}this.Ev=!0,this.Xv=setTimeout(()=>{this.Qv()},3e4)}Kv(g,A,I){var e;if(this.Ev&&!this.Pv&&A.length!==0)if(!((e=this.xa)===null||e===void 0)&&e.canCapture){if(I>this.Iv.length){this.Pv=!0;try{this.Iv.push({level:g,args:A,occurredAtMs:Date.now(),context:this.wv()})}finally{this.Pv=!1}}}else this.Qv()}Qv(){if(this.Iv=[],this.Ev){this.Ev=!1,this.Xv&&(clearTimeout(this.Xv),this.Xv=void 0);for(const g of this.Mv)g();this.Mv=[]}}Yv(){const g=this.Iv;return this.Qv(),g}get logger(){return this.tf||(this.tf={trace:(g,A)=>this.captureLog({body:g,level:"trace",attributes:A}),debug:(g,A)=>this.captureLog({body:g,level:"debug",attributes:A}),info:(g,A)=>this.captureLog({body:g,level:"info",attributes:A}),warn:(g,A)=>this.captureLog({body:g,level:"warn",attributes:A}),error:(g,A)=>this.captureLog({body:g,level:"error",attributes:A}),fatal:(g,A)=>this.captureLog({body:g,level:"fatal",attributes:A})}),this.tf}flushLogs(g){this.xa&&(g?this.ef(g):(this.Fv&&this.Fv.flush().catch(A=>this.if(A)),this.Ov&&this.Ov.flush().catch(A=>this.if(A))))}flush(){var g=this;return Qa(function*(){var A,I;const e=(A=g.Fv)===null||A===void 0?void 0:A.flush().catch(o=>g.if(o)),t=(I=g.Ov)===null||I===void 0?void 0:I.flush().catch(o=>g.if(o));yield e,yield t})()}if(g){seI(g)||this.$.error("PostHog logs flush failed:",g)}loadIfEnabled(){if(this.Ci||!this.Sv||this.xv||this.$v)return;const g=this.Lv();if(g){this.$v=!0;try{g((A,I)=>{if(this.$v=!1,!this.Ci&&this.Sv)if(A||!I)this.$.error("Could not load logs script",A),this.Qv();else{const e=this.Yv();this.Zv=I.initialize(this.xa),this.xv=!0,e.length>0&&I.replay(this.xa,e)}})}catch(A){throw this.$v=!1,A}}else this.Qv()}jv(g,A){const I=this.xa;return{get isDisabled(){return!1},get optedOut(){return!I.canCapture},getPersistedProperty:e=>e===dx.LogsQueue?g():void 0,setPersistedProperty(e,t){e===dx.LogsQueue&&A(t??[])},js:e=>this.js(e),getLibraryId:()=>I.library.name,getLibraryVersion:()=>I.library.version}}js(g){return new Promise(A=>{if(vgI(this.Cd,3))return void A({kind:"fatal",error:kvA(void 0,"logs endpoint is unreachable, dropping batch")});let I=!1;const e=B=>{I||(I=!0,clearTimeout(t),A(B))},t=setTimeout(()=>{this.$.warn("Logs request timed out before receiving a response"),e({kind:"retry-later",error:kvA(void 0,"logs request timed out")})},9e4),o=this.Dv;this.xa.sendRequest("/i/v1/logs",{method:"POST",query:{token:this.xa.projectToken},body:g,compression:"best-available",timeoutMs:6e4}).then(B=>{var C;const Q=B.statusCode;this.nf(Q,o),Q>=200&&300>Q?e({kind:"ok"}):Q===413?e({kind:"too-large"}):Q!==0&&Q!==408&&Q!==429&&500>Q?e({kind:"fatal",error:new Error(`logs request failed with status ${Q}`)}):Q===0?(B.error||this.$.warn("Logs request failed before receiving an HTTP response"),e({kind:"retry-later",error:kvA(B.error,"logs request failed before receiving an HTTP response")})):e({kind:"retry-later",error:(C=B.error)!==null&&C!==void 0?C:new Error(`logs request failed with status ${Q}`)})},B=>{e({kind:"retry-later",error:B})})})}nf(g,A){(g!==0||A)&&(this.Cd=TgI(g,this.Cd,3,()=>this.$.warn("Log requests are failing before receiving an HTTP response; this can happen due to network issues, CORS, browser blocking, or ad blockers. Stopped sending logs; will try again when connectivity changes.")))}ef(g){this.Wu.length>0&&this.sf(g,this.Wu,this.Hv,this.xa.library.name,A=>{this.Wu=A}),this.Cv.length>0&&this.sf(g,this.Cv,this.Vv,EeI,A=>{this.Cv=A})}sf(g,A,I,e,t){if(A.length===0)return;const o=A.map(C=>C.record);t([]);const B=FAI(o,xAI(I,this.xa.library.name,this.xa.library.version),e,this.xa.library.version);this.xa.sendRequest("/i/v1/logs",{method:"POST",query:{token:this.xa.projectToken},body:B,compression:"best-available",transport:g,timeoutMs:6e4}).catch(C=>this.if(C))}};const SDA=zr("[NetworkMetrics]"),MvA=()=>{var g;return!(Se==null||(g=Se.performance)===null||g===void 0)&&g.now?Se.performance.now():Date.now()},Xlt={"http:":80,"https:":443},$lt=new Set(["CONNECT","DELETE","GET","HEAD","OPTIONS","PATCH","POST","PUT","TRACE"]),aeI=(g,A)=>{var I;const e=String(A);return{method:String(g).toUpperCase(),url:((I=cJ(e))===null||I===void 0?void 0:I.href)||e}},SvA=(g,A,I,e,t,o,B=!1)=>{try{var C,Q;const i=t();if(!i)return;const E=I||void 0,n=MvA()-e,s=cJ(A.url);if(s&&s.protocol!=="http:"&&s.protocol!=="https:")return;const r={url:s?.href||A.url,method:A.method},a=C0(i.name)?i.name(r):qC(i.name)?i.name:"http.client.request.duration";if(!a)return;const c=B&&!E?void 0:((l,D)=>l?400>l?void 0:String(l):D?.name||"_OTHER")(E,o),h=QI(QI(QI(QI(QI({},(l=>{const D=$lt.has(l)?l:"_OTHER";return QI({"http.request.method":D},D==="_OTHER"&&l!==D?{"http.request.method_original":l}:{})})(r.method)),s?(l=>{return{"server.address":l.hostname.startsWith("[")&&l.hostname.endsWith("]")?l.hostname.slice(1,-1):l.hostname,"server.port":Number(l.port)||Xlt[l.protocol],"url.scheme":l.protocol.slice(0,-1),"url.template":(D=l.pathname,D.split("/").map(d=>(y=>/^\d+$/.test(y)||y.length>=8&&/^[0-9a-f-]*\d[0-9a-f-]*$/i.test(y))(d)?":id":d).join("/"))};var D})(s):{}),E?{"http.response.status_code":E}:{}),c?{"error.type":c}:{}),(C=i.attributes)===null||C===void 0?void 0:C.call(i,r,{status:E,durationMs:n}));(Q=g.metrics)===null||Q===void 0||Q.histogram(a,n,{unit:"ms",attributes:h})}catch(i){SDA.error("Failed to record network metric",i)}},reI=()=>{},ADt=(g,A)=>C0(Se?.fetch)?uq(Se,"fetch",I=>function(...e){const t=MvA(),o=I.apply(this,e);if(!A())return o;try{var B,C,Q;const[i,E]=e,n=aeI((B=(C=E?.method)!==null&&C!==void 0?C:i?.method)!==null&&B!==void 0?B:"GET",(Q=i?.url)!==null&&Q!==void 0?Q:i);return o.then(s=>(SvA(g,n,s?.status,t,A,void 0,!0),s),s=>{throw SvA(g,n,void 0,t,A,s),s})}catch(i){return SDA.error("Failed to observe fetch",i),o}}):reI,gDt=(g,A)=>{var I;const e=Se==null||(I=Se.XMLHttpRequest)===null||I===void 0?void 0:I.prototype;if(!e)return reI;const t=new WeakMap,o=uq(e,"open",C=>function(...Q){try{aII.has(this)||t.set(this,aeI(Q[0],Q[1]))}catch(i){SDA.error("Failed to observe XHR open",i)}return C.apply(this,Q)}),B=uq(e,"send",C=>function(...Q){let i;try{const E=t.get(this);if(E&&A()){const n=MvA();i=()=>{this.removeEventListener("loadend",i),SvA(g,E,this.status,n,A)},NE(this,"loadend",i)}}catch(E){SDA.error("Failed to observe XHR send",E)}try{return C.apply(this,Q)}catch(E){throw i&&this.removeEventListener("loadend",i),E}});return()=>{o(),B()}},ceI=new WeakMap,IDt=new Set(["$comment","$defs","$id","$schema","additionalProperties","default","definitions","deprecated","description","examples","minProperties","properties","readOnly","required","title","type","writeOnly"]),eDt={maxStringLength:2048,truncationSuffix:"..."},tDt={maxStringLength:2048,truncationSuffix:"..."};function heI(g){if(g)return g===!0?{intent:!0,model:!0}:{intent:g.intent!==!1,model:g.model!==!1}}function fvA(g,A){return{}.hasOwnProperty.call(g,A)}function RvA(g,A){const I=Object.create(g);return A&&Object.defineProperty(I,"inputSchema",{configurable:!0,enumerable:!0,writable:!0,value:A}),I}function leI(g,A,I=!1){if(!qC(g))return;const e=g.trim();return e?(I?kAI(e,eDt):e).slice(0,A):void 0}function DeI(g){try{return yC(g)&&g.isError===!0}catch{return!1}}function deI(g){return kAI(g||"Unknown error",tDt).slice(0,2048)}function oDt(g,A){try{return deI(A?(function(I){try{return!yC(I)||!cB(I.content)?void 0:I.content.filter(e=>yC(e)&&e.type==="text"&&qC(e.text)).map(e=>e.text).join(" ").trim()||void 0}catch{return}})(g):yC(g)&&qC(g.message)?g.message:qC(g)?g:String(g))}catch{return"Unknown error"}}function BDt(g,A,I){return A.errorResult?[{type:"Error",value:I,mechanism:{type:"generic",handled:!0,synthetic:!0,exception_id:0}}]:g.buildProperties(A.error,{handled:!0}).$exception_list.map(e=>QI(QI({},e),{},{value:deI(e.value)}))}function CDt(g,A){if(A)return"Error";try{if(!yC(g))return"Error";let I=qC(g.name)?g.name.trim():"";const e=g.constructor;return I&&I!=="Error"||!C0(e)||e.name==="Error"||(I=e.name),(I||"Error").slice(0,256)}catch{return"Error"}}function QDt(g,A){return{message:oDt(g,A),type:CDt(g,A)}}const fDA={featureFlags:class extends vlt{constructor(g){const A=new Tlt(g.config,g.Hu());super(A),this.name=KII,this._instance=g,this.rf=A}get Ld(){return this._instance.persistence}updateConfig(g,A){this.rf.update(g,A),this.Nd()}}},iDt={sessionRecording:class{get Ar(){return this._instance.config}get fc(){return this._instance.persistence}get started(){var g;return!!(!((g=this.af)===null||g===void 0)&&g.isStarted)}get status(){var g,A;return this.lf==="awaiting_config"||this.lf==="missing_config"?this.lf:(g=(A=this.af)===null||A===void 0?void 0:A.status)!==null&&g!==void 0?g:this.lf}constructor(g){if(this._instance=g,this._forceAllowLocalhostNetworkCapture=!1,this.lf=yvA,this.uf=void 0,this.cf=!1,this.Je=(()=>{var A,I;if(!ro?.visibilityState||ro.visibilityState==="visible")return!0;const e=Se==null||(A=Se.performance)===null||A===void 0||(I=A.getEntriesByType)===null||I===void 0?void 0:I.call(A,"visibility-state");return!e?.length||e.some(t=>t.name==="visible")})(),this.sn=()=>{var A,I;ro?.visibilityState==="visible"&&(this.Je=!0,(A=this.af)===null||A===void 0||(I=A.setDocumentWasEverVisible)===null||I===void 0||I.call(A,!0))},!this._instance.sessionManager)throw DJ.error("started without valid sessionManager"),new Error("[SessionRecording] started without valid sessionManager. This is a bug.");if(this.Ar.cookieless_mode==="always")throw new Error('[SessionRecording] cannot be used with cookieless_mode="always"');ro?.addEventListener&&NE(ro,"visibilitychange",this.sn)}initialize(){this.startIfEnabledOrStop()}dispose({discardBufferedEvents:g=!1}={}){var A;this.cf=!0,ro==null||(A=ro.removeEventListener)===null||A===void 0||A.call(ro,"visibilitychange",this.sn),g?this.hf(!0):this.stopRecording()}get df(){var g;const A=!!(!((g=this._instance.get_property("$session_recording_remote_config"))===null||g===void 0)&&g.enabled),I=!this.Ar.disable_session_recording,e=this.Ar.disable_session_recording||this._instance.consent.isOptedOut();return Se&&A&&I&&!e}startIfEnabledOrStop(g){var A;if(this.cf||this.df&&(!((A=this.af)===null||A===void 0)&&A.isStarted))return;const I=!Ye(Object.assign)&&!Ye(Array.from);this.df&&I?(this.vf(g),DJ.info("starting")):(this.lf=yvA,this.stopRecording())}vf(g){var A,I;if(this.df)if(this.lf!=="awaiting_config"&&this.lf!=="missing_config"&&(this.lf=jII),(UB==null||(A=UB.__PosthogExtensions__)===null||A===void 0||(A=A.rrweb)===null||A===void 0?void 0:A.record)&&((I=UB.__PosthogExtensions__)===null||I===void 0?void 0:I.initSessionRecording))this.ff(g);else{var e,t;const o=this._instance.sessionManager;(e=UB.__PosthogExtensions__)===null||e===void 0||(t=e.loadExternalDependency)===null||t===void 0||t.call(e,this._instance,this.pf,B=>{if(!this.cf&&this.df&&this._instance.sessionManager===o)return B?(this._instance.register_for_session({$sdk_debug_recording_script_not_loaded:!0}),DJ.error("could not load recorder",B)):void this.ff(g);this.lf="disabled"})}}stopRecording(){var g,A;(g=this.uf)===null||g===void 0||g.call(this),this.uf=void 0,(A=this.af)===null||A===void 0||A.stop()}hf(g=!1){var A,I;(A=this.uf)===null||A===void 0||A.call(this),this.uf=void 0,(I=this.af)===null||I===void 0||I.discard({discardProducerEvents:g})}gf(){var g,A;(g=this.fc)===null||g===void 0||g.unregister("$session_is_sampled"),(A=this.fc)===null||A===void 0||A.unregister("$replay_sample_rate")}mf(g,A){if(hC(g))return null;const I=Gh(g)?g:parseFloat(g);return typeof(e=I)!="number"||!Number.isFinite(e)||0>e||e>1?(DJ.warn(`${A} must be between 0 and 1. Ignoring invalid value:`,g),null):I;var e}yf(g){if(this.fc){var A,I;const e=this.fc,t=()=>{var o;const B=g.sessionRecording===!1?void 0:g.sessionRecording,C=this.mf((o=this.Ar.session_recording)===null||o===void 0?void 0:o.sampleRate,"session_recording.sampleRate"),Q=this.mf(B?.sampleRate,"remote config sampleRate"),i=C??Q;hC(i)&&this.gf();const E=B?.minimumDurationMilliseconds;e.register({[egA]:QI(QI({cache_timestamp:Date.now(),enabled:!!B},B),{},{networkPayloadCapture:QI({capturePerformance:g.capturePerformance},B?.networkPayloadCapture),canvasRecording:{enabled:B?.recordCanvas,fps:B?.canvasFps,quality:B?.canvasQuality},sampleRate:i,minimumDurationMilliseconds:Ye(E)?null:E,endpoint:B?.endpoint,triggerMatchType:B?.triggerMatchType,masking:B?.masking,urlTriggers:B?.urlTriggers,version:B?.version,triggerGroups:B?.triggerGroups})})};t(),(A=this.uf)===null||A===void 0||A.call(this),this.uf=(I=this._instance.sessionManager)===null||I===void 0?void 0:I.onSessionId(t)}}onRemoteConfig(g){const A=g.ok?g.config:void 0;return A&&"sessionRecording"in A?A.sessionRecording===!1?(this.yf(A),void this.hf()):(this.yf(A),void this.startIfEnabledOrStop()):(this.lf==="awaiting_config"&&(this.lf="missing_config",this._instance.register_for_session({[x6A]:!0}),DJ.warn("config refresh failed, recording will not start until page reload")),void this.startIfEnabledOrStop())}log(g,A="log"){var I;!((I=this.af)===null||I===void 0)&&I.log?this.af.log(g,A):DJ.warn("log called before recorder was ready")}get pf(){var g,A;const I=(g=this._instance)===null||g===void 0||(g=g.persistence)===null||g===void 0?void 0:g.get_property(egA);return(I==null||(A=I.scriptConfig)===null||A===void 0?void 0:A.script)||"lazy-recorder"}bf(){const g=this._instance.get_property(egA);if(!g)return!1;let A;try{A=typeof g=="object"?g:JSON.parse(g)}catch(I){return DJ.warn("persisted remote config for session recording is invalid and will be ignored",I),!1}return!hC(A.cache_timestamp)&&36e5>=Date.now()-A.cache_timestamp}ff(g){var A,I,e;if(!this.cf&&this.df&&this._instance.sessionManager){if(!(!((A=UB.__PosthogExtensions__)===null||A===void 0)&&A.initSessionRecording))return DJ.warn("Called on script loaded before session recording is available. This can be caused by adblockers."),void this._instance.register_for_session({[N6A]:!0});var t;if(this.af||(this.af=(t=UB.__PosthogExtensions__)===null||t===void 0?void 0:t.initSessionRecording(this._instance,this.Je),this.af._forceAllowLocalhostNetworkCapture=this._forceAllowLocalhostNetworkCapture),!this.bf())return this.lf==="missing_config"||this.lf==="awaiting_config"?void 0:(this.lf="awaiting_config",DJ.info("persisted remote config is stale, requesting fresh config before starting"),void new eII(this._instance).load());this.lf=jII,(I=(e=this.af).setDocumentWasEverVisible)===null||I===void 0||I.call(e,this.Je),this.af.start(g)}else this.lf=yvA}onRRwebEmit(g){var A,I;(A=this.af)===null||A===void 0||(I=A.onRRwebEmit)===null||I===void 0||I.call(A,g)}overrideLinkedFlag(){var g,A;this.af||(A=this.fc)===null||A===void 0||A.register({$replay_override_linked_flag:!0}),(g=this.af)===null||g===void 0||g.overrideLinkedFlag()}overrideSampling(){var g,A;this.af||(A=this.fc)===null||A===void 0||A.register({$replay_override_sampling:!0}),(g=this.af)===null||g===void 0||g.overrideSampling()}overrideTrigger(g){var A,I;this.af||(I=this.fc)===null||I===void 0||I.register({[g==="url"?"$replay_override_url_trigger":"$replay_override_event_trigger"]:!0}),(A=this.af)===null||A===void 0||A.overrideTrigger(g)}get sdkDebugProperties(){var g;const A={};for(const e of Flt){var I;const t=(I=this._instance.sessionPersistence)===null||I===void 0?void 0:I.get_property(e);Ye(t)||(A[e]=t)}return QI(QI({},A),((g=this.af)===null||g===void 0?void 0:g.sdkDebugProperties)||{$recording_status:this.status})}tryAddCustomEvent(g,A){var I;return!!(!((I=this.af)===null||I===void 0)&&I.tryAddCustomEvent(g,A))}flushBeforeIdentityReset(){var g,A;(g=this.af)===null||g===void 0||(A=g.flushBeforeIdentityReset)===null||A===void 0||A.call(g)}}},EDt={autocapture:class extends dlt{constructor(g){super(new flt(g)),this.instance=g}},historyAutocapture:class{constructor(g){this._f=!1,this._instance=g,this.wf=this.kf()}initialize(){this.startIfEnabled()}get isEnabled(){const g=this.Sf();return!!(g.path||g.search||this.xf(g))}startIfEnabled(){this.isEnabled&&(Dt.info("History API monitoring enabled, starting..."),this.monitorHistoryChanges())}startIfEnabledOrStop(){this.stop(),this.wf=this.kf(),this.startIfEnabled()}stop(){this.$f&&this.$f(),this.$f=void 0,this.Cf&&this.Cf(),this.Cf=void 0,Dt.info("History API monitoring stopped")}monitorHistoryChanges(){Se&&Se.history&&(this.Tf("pushState"),this.Tf("replaceState"),this.If(),this.xf()&&this.Mf())}Tf(g){var A;if(!Se||!((A=Se.history[g])===null||A===void 0)&&A.__posthog_wrapped__)return;const I=this;uq(Se.history,g,e=>function(t,o,B){var C;I.Ef(B)&&I.Pf(),e.call(this,t,o,B),I.Rf(g,!I._f&&(Se==null||(C=Se.event)===null||C===void 0?void 0:C.type)!=="popstate")})}kf(){const g=Se?.location;if(g?.pathname)return{pathname:g.pathname,search:g.search,hash:g.hash}}Sf(){const g=this._instance.config.capture_pageview;return g==="history_change"?{path:!0}:yC(g)?g:{}}xf(g=this.Sf()){return!!g.hash&&!this._instance.config.disable_capture_url_hashes}Af(g){const A=this.Sf(),I=this.wf;return!(!I||!(A.path&&g.pathname!==I.pathname||A.search&&g.search!==I.search||this.xf(A)&&g.hash!==I.hash))}Rf(g,A=!1){try{A||this.Pf();const I=this.kf();if(!I)return;if(this.Af(I)){const e=()=>this._instance.capture(F6A,{navigation_type:g});A?(this.Ff=e,Promise.resolve().then(()=>this.Pf())):e()}this.wf=I}catch(I){Dt.error(`Error capturing ${g} pageview`,I)}}Ef(g){var A,I;return!(hC(g)||!Se)&&((A=cJ(String(g)))===null||A===void 0?void 0:A.href)!==((I=Se.location)===null||I===void 0?void 0:I.href)}Pf(){const g=this.Ff;if(g){this.Ff=void 0,this._f=!0;try{g()}catch(A){Dt.error("Error capturing deferred pageview",A)}finally{this._f=!1}this.wf=this.kf()}}If(){if(this.$f)return;const g=()=>{this.Rf("popstate")};NE(Se,"popstate",g),this.$f=()=>{Se&&Se.removeEventListener("popstate",g)}}Mf(){if(this.Cf)return;const g=()=>{this.Rf("hashchange")};NE(Se,"hashchange",g),this.Cf=()=>{Se&&Se.removeEventListener("hashchange",g)}}},heatmaps:class{get Ar(){return this.instance.config}constructor(g){var A;this.Of=!1,this.ll=!1,this.Df=null,this.instance=g,this.Of=!!(!((A=this.instance.persistence)===null||A===void 0)&&A.props[w6A]),this.rageclicks=new JII(g.config.rageclick)}initialize(){this.startIfEnabled()}get flushIntervalMilliseconds(){let g=5e3;return yC(this.Ar.capture_heatmaps)&&this.Ar.capture_heatmaps.flush_interval_milliseconds&&(g=this.Ar.capture_heatmaps.flush_interval_milliseconds),g}get isEnabled(){return hC(this.Ar.capture_heatmaps)?hC(this.Ar.enable_heatmaps)?this.Of:this.Ar.enable_heatmaps:this.Ar.capture_heatmaps!==!1}startIfEnabled(){if(this.isEnabled){if(this.ll)return;Ult.info("starting..."),this.Lf(),this.sn()}else{var g;clearInterval((g=this.Df)!==null&&g!==void 0?g:void 0),this.Nf(),this.getAndClearBuffer()}}onRemoteConfig(g){if(!g.ok)return;const A=g.config;if(!("heatmaps"in A))return;const I=!!A.heatmaps;this.instance.persistence&&this.instance.persistence.register({[w6A]:I}),this.Of=I,this.startIfEnabled()}getAndClearBuffer(){const g=this.Rt;return this.Rt=void 0,g}qf(g){wvA(g.originalEvent)&&this.$r(g.originalEvent,"deadclick")}sn(){this.Df&&clearInterval(this.Df),this.Df=ro?.visibilityState==="visible"?setInterval(this.Yu.bind(this),this.flushIntervalMilliseconds):null}Lf(){Se&&ro&&(this.jf=this.Yu.bind(this),NE(Se,sDA,this.jf),this.Bf=g=>this.$r(g||Se?.event),NE(ro,"click",this.Bf,{capture:!0}),this.zf=g=>this.Hf(g||Se?.event),NE(ro,"mousemove",this.zf,{capture:!0}),this.Uf=new PgI(this.instance,J0t,this.qf.bind(this)),this.Uf.startIfEnabledOrStop(),this.Wf=this.sn.bind(this),NE(ro,tq,this.Wf),this.ll=!0)}Nf(){var g;Se&&ro&&(this.jf&&Se.removeEventListener(sDA,this.jf),this.Bf&&ro.removeEventListener("click",this.Bf,{capture:!0}),this.zf&&ro.removeEventListener("mousemove",this.zf,{capture:!0}),this.Wf&&ro.removeEventListener(tq,this.Wf),clearTimeout(this.Vf),(g=this.Uf)===null||g===void 0||g.stop(),this.ll=!1)}Gf(g,A){const I=this.instance.scrollManager.scrollY(),e=this.instance.scrollManager.scrollX(),t=this.instance.scrollManager.scrollElement(),o=(function(B,C,Q){let i=B;for(;i&&JR(i)&&!vw(i,"body");){if(i===Q)return!1;let r;try{var E,n,s;r=(E=(n=(s=i.ownerDocument)===null||s===void 0?void 0:s.defaultView)!==null&&n!==void 0?n:Se)===null||E===void 0?void 0:E.getComputedStyle(i).position}catch{return!1}if(yB(C,r))return!0;i=ugI(i)}return!1})(CgA(g),["fixed","sticky"],t);return{x:g.clientX+(o?0:e),y:g.clientY+(o?0:I),target_fixed:o,type:A}}$r(g,A="click"){var I;if(DgI(g.target)||!wvA(g))return;const e=this.Gf(g,A);!((I=this.rageclicks)===null||I===void 0)&&I.isRageClick(g.clientX,g.clientY,new Date().getTime())&&MgI(CgA(g),this.instance.config.rageclick)&&this.Qs(QI(QI({},e),{},{type:"rageclick"})),this.Qs(e)}Hf(g){!DgI(g.target)&&wvA(g)&&(clearTimeout(this.Vf),this.Vf=setTimeout(()=>{this.Qs(this.Gf(g,"mousemove"))},500))}Qs(g){if(!Se)return;const A=this.Ar.disable_capture_url_hashes?i3(Se.location.href):Se.location.href,I=this.Ar.custom_personal_data_properties,e=this.Ar.mask_personal_data_properties?[...hq,...I||[]]:[],t=EgA(A,e,ngA);this.Rt=this.Rt||{},this.Rt[t]||(this.Rt[t]=[]),this.Rt[t].push(g)}Yu(){this.Rt&&!sk(this.Rt)&&this.instance.capture("$$heatmap",{$heatmap_data:this.getAndClearBuffer()})}},deadClicksAutocapture:PgI,webVitalsAutocapture:class{constructor(g){var A;this._instance=g,this.Of=!1,this.ll=!1,this.Rt={navigationKey:void 0,url:void 0,metrics:[],firstMetricTimestamp:void 0},this.Qf=(I=!1)=>{clearTimeout(this.Zf),this.Zf=void 0,this.Rt.metrics.length!==0&&(this._instance.capture("$web_vitals",QI({$current_url:this.Rt.url},this.Rt.metrics.reduce((e,t)=>QI(QI({},e),{},{[`$web_vitals_${t.name}_event`]:QI({},t),[`$web_vitals_${t.name}_value`]:t.value}),{})),I?{transport:"sendBeacon",send_instantly:!0}:void 0),this.Rt={navigationKey:void 0,url:void 0,metrics:[],firstMetricTimestamp:void 0})},this.Jf=I=>{var e;if(this.Rt=this.Rt||{navigationKey:void 0,url:void 0,metrics:[],firstMetricTimestamp:void 0},hC(I?.name)||hC(I?.value))return void s5.error("Invalid metric received",I);const t=typeof I.navigationURL=="string"?I.navigationURL:void 0,o=this.Kf(t);if(Ye(o))return;const B=Gh(I.navigationId)||typeof I.navigationId=="string"?`navigation:${I.navigationId}`:`url:${o}`;if(this.Xf&&I.value>=this.Xf)return void s5.error("Ignoring metric with value >= "+this.Xf,I);this.Rt.navigationKey!==B&&(this.Qf(),this.Zf=setTimeout(this.Qf,this.flushToCaptureTimeoutMs)),Ye(this.Rt.navigationKey)&&(this.Rt.navigationKey=B,this.Rt.url=o),this.Rt.firstMetricTimestamp=Ye(this.Rt.firstMetricTimestamp)?Date.now():this.Rt.firstMetricTimestamp;const C=(e=this._instance.sessionManager)===null||e===void 0?void 0:e.checkAndGetSessionAndWindowId(!0),Q=QI(QI(QI({},I),t?{navigationURL:o}:{}),{},{$current_url:o,timestamp:Date.now()});if(delete Q.entries,yC(I.attribution)&&this.attributionMetrics.indexOf(I.name)>-1){const i={};for(const E of xlt){const n=E==="url"&&typeof I.attribution[E]=="string"?this.Kf(I.attribution[E]):I.attribution[E];Ye(n)||(i[E]=n)}Q.attribution=i}else delete Q.attribution;Ye(C)||(Q.$session_id=C.sessionId,Q.$window_id=C.windowId),this.Rt.metrics.push(Q),this.Rt.metrics.length===this.allowedMetrics.length&&this.Qf()},this.Yf=()=>{if(this.ll)return;let I,e,t,o,B=!1;const C=UB.__PosthogExtensions__,Q=C?.postHogWebVitalsCallbacksByFlavor,i=Q?.[this.tp]||(this.tp==="web-vitals"&&Ye(Q)?C?.postHogWebVitalsCallbacks:void 0);if(!Ye(i)){const r=i.withoutAttribution,a=this.attributionMetrics;B=!Ye(r),I=a.indexOf("LCP")>-1?i.onLCP:r?.onLCP||i.onLCP,e=a.indexOf("CLS")>-1?i.onCLS:r?.onCLS||i.onCLS,t=a.indexOf("FCP")>-1?i.onFCP:r?.onFCP||i.onFCP,o=a.indexOf("INP")>-1?i.onINP:r?.onINP||i.onINP}if(!(I&&e&&t&&o))return void s5.error("web vitals callbacks not loaded - not starting");const E={reportSoftNavs:this.useSoftNavs},n=B&&this.attributionMetrics.indexOf("INP")>-1?QI(QI({},E),{},{includeProcessedEventEntries:!1}):E;this.allowedMetrics.indexOf("LCP")>-1&&I(this.Jf.bind(this),E),this.allowedMetrics.indexOf("CLS")>-1&&e(this.Jf.bind(this),E),this.allowedMetrics.indexOf("FCP")>-1&&t(this.Jf.bind(this),E),this.allowedMetrics.indexOf("INP")>-1&&o(this.Jf.bind(this),n);const s=Se?.document;NE(s,tq,()=>{s?.visibilityState==="hidden"&&this.Qf(!0)}),NE(Se,"pagehide",()=>this.Qf(!0)),this.ll=!0},this.Of=!!(!((A=this._instance.persistence)===null||A===void 0)&&A.props[m6A]),this.startIfEnabled()}get ep(){return this._instance.config.capture_performance}get allowedMetrics(){var g,A;const I=yC(this.ep)?(g=this.ep)===null||g===void 0?void 0:g.web_vitals_allowed_metrics:void 0;return hC(I)?((A=this._instance.persistence)===null||A===void 0?void 0:A.props.$web_vitals_allowed_metrics)||VII:I}get flushToCaptureTimeoutMs(){return(yC(this.ep)?this.ep.web_vitals_delayed_flush_ms:void 0)||5e3}get attributionMetrics(){const g=yC(this.ep)?this.ep.web_vitals_attribution:void 0;return Fm(g)?g?VII:[]:cB(g)?g:Nlt}get useAttribution(){return this.attributionMetrics.length>0}get useSoftNavs(){const g=yC(this.ep)?this.ep.__preview_web_vitals_soft_navs:void 0;return g!=null&&g}get Xf(){const g=yC(this.ep)&&Gh(this.ep.__web_vitals_max_value)?this.ep.__web_vitals_max_value:WII;return g>0&&6e4>=g?WII:g}get isEnabled(){const g=Ca?.protocol;if(g!=="http:"&&g!=="https:")return s5.info("Web Vitals are disabled on non-http/https protocols"),!1;const A=yC(this.ep)?this.ep.web_vitals:Fm(this.ep)?this.ep:void 0;return Fm(A)?A:this.Of}startIfEnabled(){this.isEnabled&&!this.ll&&(s5.info("enabled, starting..."),this.Ml(this.Yf))}onRemoteConfig(g){if(!g.ok)return;const A=g.config;if(!("capturePerformance"in A))return;const I=yC(A.capturePerformance)&&!!A.capturePerformance.web_vitals,e=yC(A.capturePerformance)?A.capturePerformance.web_vitals_allowed_metrics:void 0;this._instance.persistence&&(this._instance.persistence.register({[m6A]:I}),this._instance.persistence.register({[ZAI]:e})),this.Of=I,this.startIfEnabled()}get tp(){return this.useSoftNavs?this.useAttribution?"web-vitals-with-attribution-soft-navs":"web-vitals-soft-navs":this.useAttribution?"web-vitals-with-attribution":"web-vitals"}Ml(g){var A;const I=UB.__PosthogExtensions__,e=this.tp,t=I?.postHogWebVitalsCallbacksByFlavor;t?.[e]||e==="web-vitals"&&Ye(t)&&I?.postHogWebVitalsCallbacks?g():I==null||(A=I.loadExternalDependency)===null||A===void 0||A.call(I,this._instance,e,o=>{o?s5.error("failed to load script",o):g()})}Kf(g){const A=g||Se?.location.href;if(!A)return void s5.error("Could not determine current URL");const I=this._instance.config.disable_capture_url_hashes?i3(A):A,e=this._instance.config.custom_personal_data_properties,t=this._instance.config.mask_personal_data_properties?[...hq,...e||[]]:[];return EgA(I,t,ngA)}}},nDt={exceptionObserver:class{constructor(g){var A;this.Yf=()=>{var I;if(!Se||!this.isEnabled||!(!((I=UB.__PosthogExtensions__)===null||I===void 0)&&I.errorWrappingFunctions))return;const e=UB.__PosthogExtensions__.errorWrappingFunctions.wrapOnError,t=UB.__PosthogExtensions__.errorWrappingFunctions.wrapUnhandledRejection,o=UB.__PosthogExtensions__.errorWrappingFunctions.wrapConsoleError;try{!this.np&&this.Ar.capture_unhandled_errors&&(this.np=e(this.captureException.bind(this))),!this.sp&&this.Ar.capture_unhandled_rejections&&(this.sp=t(this.captureException.bind(this))),!this.rp&&this.Ar.capture_console_errors&&(this.rp=o(this.captureException.bind(this)))}catch(B){wgA.error("failed to start",B),this.op()}},this._instance=g,this.ap=!!(!((A=this._instance.persistence)===null||A===void 0)&&A.props[u6A]),this.wt=new Gct(QI(QI({},(function(I={}){var e,t,o,B;return{refillRate:(e=(t=I.exceptionRateLimiterRefillRate)!==null&&t!==void 0?t:I.__exceptionRateLimiterRefillRate)!==null&&e!==void 0?e:1,bucketSize:(o=(B=I.exceptionRateLimiterBucketSize)!==null&&B!==void 0?B:I.__exceptionRateLimiterBucketSize)!==null&&o!==void 0?o:10}})(this._instance.config.error_tracking)),{},{refillInterval:1e4,$:wgA})),this.Ar=this.lp(),this.startIfEnabledOrStop()}lp(){const g=this._instance.config.capture_exceptions;let A={capture_unhandled_errors:!1,capture_unhandled_rejections:!1,capture_console_errors:!1};return yC(g)?A=QI(QI({},A),g):(Ye(g)?this.ap:g)&&(A=QI(QI({},A),{},{capture_unhandled_errors:!0,capture_unhandled_rejections:!0})),A}get isEnabled(){return this.Ar.capture_console_errors||this.Ar.capture_unhandled_errors||this.Ar.capture_unhandled_rejections}startIfEnabledOrStop(){this.isEnabled?(wgA.info("enabled"),this.op(),this.Ml(this.Yf)):this.op()}Ml(g){var A,I,e;!((A=UB.__PosthogExtensions__)===null||A===void 0)&&A.errorWrappingFunctions?g():(I=UB.__PosthogExtensions__)===null||I===void 0||(e=I.loadExternalDependency)===null||e===void 0||e.call(I,this._instance,"exception-autocapture",t=>{if(t)return wgA.error("failed to load script",t);g()})}op(){var g,A,I;(g=this.np)===null||g===void 0||g.call(this),this.np=void 0,(A=this.sp)===null||A===void 0||A.call(this),this.sp=void 0,(I=this.rp)===null||I===void 0||I.call(this),this.rp=void 0}onRemoteConfig(g){if(!g.ok)return;const A=g.config;"autocaptureExceptions"in A&&(this.ap=!!A.autocaptureExceptions||!1,this._instance.persistence&&this._instance.persistence.register({[u6A]:this.ap}),this.Ar=this.lp(),this.startIfEnabledOrStop())}onConfigChange(){this.Ar=this.lp()}captureException(g){try{var A,I,e;const t=(A=g==null||(I=g.$exception_list)===null||I===void 0||(I=I[0])===null||I===void 0?void 0:I.type)!==null&&A!==void 0?A:"Exception";if(this.wt.consumeRateLimit(t))return void wgA.info("Skipping exception capture because of client rate limiting.",{exception:t});(e=this._instance.exceptions)===null||e===void 0||e.sendExceptionEvent(g)}catch{}}},exceptions:class{constructor(g){var A,I;this.up=[],this.cp=new Jct([new jct,new oht,new Xct,new zct,new eht,new Iht,new Aht,new tht],(function(e,...t){return(o,B=0)=>{const C=[],Q=o.split(`
1067
+ `);const D=l.state[C];if(D==null)return;JSON.stringify(t.getState())!==JSON.stringify(D)&&r(D);return}t.dispatchFromDevtools&&typeof t.dispatch=="function"&&t.dispatch(l)});case"DISPATCH":switch(c.payload.type){case"RESET":return r(a),C===void 0?E?.init(t.getState()):E?.init(UlA(Q.name));case"COMMIT":if(C===void 0){E?.init(t.getState());return}return E?.init(UlA(Q.name));case"ROLLBACK":return DHA(c.state,l=>{if(C===void 0){r(l),E?.init(t.getState());return}r(l[C]),E?.init(UlA(Q.name))});case"JUMP_TO_STATE":case"JUMP_TO_ACTION":return DHA(c.state,l=>{if(C===void 0){r(l);return}JSON.stringify(t.getState())!==JSON.stringify(l[C])&&r(l[C])});case"IMPORT_STATE":{const{nextLiftedState:l}=c.payload,D=(h=l.computedStates.slice(-1)[0])==null?void 0:h.state;if(!D)return;r(C===void 0?D:D[C]),E?.send(null,l);return}case"PAUSE_RECORDING":return s=!s}return}}),a},DHA=(g,A)=>{let I;try{I=JSON.parse(g)}catch(e){console.error("[zustand devtools middleware] Could not parse the received json",e)}I!==void 0&&A(I)},Nm=window.TSCIRCUIT_FILESERVER_API_BASE_URL??"/api",Fat=[".tsx",".ts",".jsx",".js",".mjs",".json",".kicad_pcb",".kicad_sym",".kicad_sch",".kicad_prl",".kicad_pro"],dHA=g=>Fat.some(A=>g.endsWith(A)),YAA=Wzg.extend("store");async function iXg(g,A){return(await(await fetch(`${Nm}/files/upsert`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({file_path:g,text_content:A})})).json()).file}async function yHA(g){return(await(await fetch(`${Nm}/files/get?file_path=${encodeURIComponent(g)}`)).json()).file}async function Uat(g){const A=g?`${Nm}/events/list?since=${encodeURIComponent(g)}`:`${Nm}/events/list`;return(await(await fetch(A)).json()).event_list}async function Jat(){const g=await fetch(`${Nm}/files/list`),{file_list:A}=await g.json(),I=new Map;for(const e of A){if(dHA(e.file_path)){const t=await yHA(e.file_path);I.set(e.file_path,t.text_content);continue}I.set(e.file_path,"__STATIC_ASSET__")}return I}const Pat=["manual-edits.json","manual_edits.json"],Uc=CXg()(QXg((g,A)=>({fsMap:new Map,lastEventTime:new Date().toISOString(),isPolling:!1,error:null,circuitJson:null,lastManualEditsChangeSentAt:0,recentEvents:[],simulateScenarioOrder:void 0,currentMainComponentPath:null,recentlySavedFiles:[],loadInitialFiles:async()=>{const I=await Jat();YAA("loaded initial files",{fsMap:I}),g({fsMap:I})},upsertFile:async(I,e)=>{try{const t=await iXg(I,e);g(o=>({fsMap:new Map(o.fsMap).set(t.file_path,t.text_content)}))}catch(t){g({error:t})}},getFile:async I=>{try{const e=await yHA(I);g(t=>({fsMap:new Map(t.fsMap).set(e.file_path,e.text_content)}))}catch(e){g({error:e})}},setCircuitJson:I=>{I!==A().circuitJson&&g({circuitJson:I})},addRecentlySavedFile:I=>{g(e=>{if(Pat.includes(I)||!dHA(I))return e;const t=e.recentlySavedFiles.filter(o=>o!==I);return{recentlySavedFiles:[I,...t].slice(0,10)}})},startPolling:()=>{const I=async()=>{const e=A();if(e.isPolling){try{const t=await Uat(e.lastEventTime);if(t.length>0){const o=t[t.length-1].created_at;YAA("received events",t.map(Q=>Q.event_type)),g(Q=>({recentEvents:[...Q.recentEvents,...t].slice(0,100),lastEventTime:o}));let B=0;const C=new Map(e.fsMap);for(const Q of t)if(Q.event_type==="FILE_UPDATED"){B++;const i=await yHA(Q.file_path);if(Q.file_path==="manual_edits.json"&&Date.now()-e.lastManualEditsChangeSentAt<1e3)continue;dHA(i.file_path)?C.set(i.file_path,i.text_content??""):C.set(i.file_path,"__STATIC_ASSET__"),A().addRecentlySavedFile(Q.file_path)}else Q.event_type==="FILE_DELETED"&&(B++,C.delete(Q.file_path));B>0&&(YAA("updating fsMap, fsUpdateCount:",B),g({fsMap:C}))}}catch(t){g({error:t})}setTimeout(I,1e3)}};g({isPolling:!0}),I()},stopPolling:()=>{g({isPolling:!1})},pushEvent:async I=>{await fetch(`${Nm}/events/create`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(I)})},applyEditEventsAndUpdateManualEditsJson:async I=>{YAA("applyEditEventsAndUpdateManualEditsJson",{editEvents:I});const e=A();if(!e.circuitJson)return;const t=e.fsMap.get("manual-edits.json"),o=t?JSON.parse(t):{},B=KVg({circuitJson:e.circuitJson,editEvents:I,manualEditsFile:o});YAA("updatedManualEditsFileContent",B),g(C=>({lastManualEditsChangeSentAt:Date.now(),fsMap:new Map(C.fsMap).set("manual-edits.json",JSON.stringify(B))})),await iXg("manual-edits.json",JSON.stringify(B,null,2))},setSimulateScenarioOrder:I=>g({simulateScenarioOrder:I}),setCurrentMainComponentPath:I=>g({currentMainComponentPath:I})}),{name:"run-frame-store"})),Kat=Wzg.extend("useEditEventController"),Lat=()=>{const g=Uc(r=>r.applyEditEventsAndUpdateManualEditsJson),[A,I]=z.useState([]),[e,t]=z.useState(!1),o=A.filter(r=>!r._applied),B=A.filter(r=>r._applied),C=e?A:o,Q=z.useCallback(r=>{I(a=>[...a,{...r,_applied:!1}])},[]),i=z.useCallback(r=>{I(a=>a.map(c=>c===r?{...c,_applied:!0}:c))},[]),E=z.useCallback(()=>{I(r=>r.map(a=>({...a,_applied:!0})))},[]),n=z.useCallback(()=>{t(!0),A.length!==0&&(Kat("removing edit events that are applied"),I(r=>r.filter(a=>!a._applied)))},[A]),s=z.useCallback(()=>{t(!1)},[]);return z.useEffect(()=>{if(A.filter(a=>!a._applied).length===0)return;const r=setTimeout(()=>{E(),g(A)},1e3);return()=>clearTimeout(r)},[A]),{unappliedEditEvents:o,appliedEditEvents:B,editEventsForRender:C,pushEditEvent:Q,markEditEventApplied:i,markRenderStarted:n,markRenderComplete:s,markAllEditEventsApplied:E}},wHA=kE("run-frame:useHasReceivedInitialFilesLoaded"),Yat=()=>{const[g,A]=z.useState(!1),I=Uc(t=>t.recentEvents),e=Uc(t=>t.loadInitialFiles);return z.useEffect(()=>{(async()=>{await e();try{const o=await fetch(`${Nm}/events/list?event_type=INITIAL_FILES_UPLOADED`);if(o.ok){const{event_list:B}=await o.json();if(B.length>0){wHA("INITIAL_FILES_UPLOADED found in history. Assuming ready."),A(!0);return}}}catch(o){console.error("Failed to check for event history",o)}wHA("No INITIAL_FILES_UPLOADED in history, waiting for polling.")})()},[e]),z.useEffect(()=>{g||I.some(t=>t.event_type==="INITIAL_FILES_UPLOADED")&&(wHA("INITIAL_FILES_UPLOADED received via polling. Assuming ready."),A(!0))},[I,g]),g};function OT(g,A,I){const[e,t]=z.useState(()=>{if(I!==void 0)return I;try{const o=window.localStorage.getItem(g);return o?JSON.parse(o):A}catch(o){return console.error("Error reading from localStorage:",o),A}});return z.useEffect(()=>{try{window.localStorage.setItem(g,JSON.stringify(e))}catch(o){console.error("Error writing to localStorage:",o)}},[g,e]),[e,t]}var _at=Object.defineProperty,WT=(g,A)=>_at(g,"name",{value:A,configurable:!0}),EXg=!!(typeof window<"u"&&window.document&&window.document.createElement);function So(g,A,{checkForDefaultPrevented:I=!0}={}){return WT(function(t){if(g?.(t),I===!1||!t||!t.defaultPrevented)return A?.(t)},"handleEvent")}WT(So,"composeEventHandlers");function bat(g){if(!EXg)throw new Error("Cannot access window outside of the DOM");return g?.ownerDocument?.defaultView??window}WT(bat,"getOwnerWindow");function uHA(g){if(!EXg)throw new Error("Cannot access document outside of the DOM");return g?.ownerDocument??document}WT(uHA,"getOwnerDocument");function nXg(g,A=!1){const{activeElement:I}=uHA(g);if(!I?.nodeName)return null;if(sXg(I)&&I.contentDocument)return nXg(I.contentDocument.body,A);if(A){const e=I.getAttribute("aria-activedescendant");if(e){const t=uHA(I).getElementById(e);if(t)return t}}return I}WT(nXg,"getActiveElement");function sXg(g){return g.tagName==="IFRAME"}WT(sXg,"isFrame");var Hat=Object.defineProperty,$2=(g,A)=>Hat(g,"name",{value:A,configurable:!0});function vat(g,A){const I=z.createContext(A);I.displayName=g+"Context";const e=$2(o=>{const{children:B,...C}=o,Q=z.useMemo(()=>C,Object.values(C));return T.jsx(I.Provider,{value:Q,children:B})},"Provider");e.displayName=g+"Provider";function t(o,B={}){const{optional:C=!1}=B,Q=z.useContext(I);if(Q)return Q;if(A!==void 0)return A;if(!C)throw new Error(`\`${o}\` must be used within \`${g}\``)}return $2(t,"useContext"),[e,t]}$2(vat,"createContext");function nk(g,A=[]){let I=[];function e(o,B){const C=z.createContext(B);C.displayName=o+"Context";const Q=I.length;I=[...I,B];const i=$2(n=>{const{scope:s,children:r,...a}=n,c=s?.[g]?.[Q]||C,h=z.useMemo(()=>a,Object.values(a));return T.jsx(c.Provider,{value:h,children:r})},"Provider");i.displayName=o+"Provider";function E(n,s,r={}){const{optional:a=!1}=r,c=s?.[g]?.[Q]||C,h=z.useContext(c);if(h)return h;if(B!==void 0)return B;if(!a)throw new Error(`\`${n}\` must be used within \`${o}\``)}return $2(E,"useContext"),[i,E]}$2(e,"createContext");const t=$2(()=>{const o=I.map(B=>z.createContext(B));return $2(function(C){const Q=C?.[g]||o;return z.useMemo(()=>({[`__scope${g}`]:{...C,[g]:Q}}),[C,Q])},"useScope")},"createScope");return t.scopeName=g,[e,aXg(t,...A)]}$2(nk,"createContextScope");function aXg(...g){const A=g[0];if(g.length===1)return A;const I=$2(()=>{const e=g.map(t=>({useScope:t(),scopeName:t.scopeName}));return $2(function(o){const B=e.reduce((C,{useScope:Q,scopeName:i})=>{const n=Q(o)[`__scope${i}`];return{...C,...n}},{});return z.useMemo(()=>({[`__scope${A.scopeName}`]:B}),[B])},"useComposedScopes")},"createScope");return I.scopeName=A.scopeName,I}$2(aXg,"composeContextScopes");var Tat=Object.defineProperty,GHA=(g,A)=>Tat(g,"name",{value:A,configurable:!0});function mHA(g,A){if(typeof g=="function")return g(A);g!=null&&(g.current=A)}GHA(mHA,"setRef");function I5(...g){return A=>{let I=!1;const e=g.map(t=>{const o=mHA(t,A);return!I&&typeof o=="function"&&(I=!0),o});if(I)return()=>{for(let t=0;t<e.length;t++){const o=e[t];typeof o=="function"?o():mHA(g[t],null)}}}}GHA(I5,"composeRefs");function Gi(...g){return z.useCallback(I5(...g),g)}GHA(Gi,"useComposedRefs");var qat=Object.defineProperty,jM=(g,A)=>qat(g,"name",{value:A,configurable:!0});function fR(g){const A=z.forwardRef((I,e)=>{let{children:t,...o}=I,B=null,C=!1;const Q=[];t=yXg(t),z.Children.forEach(t,s=>{if(DXg(s)){C=!0;const r=s;let a="child"in r.props?r.props.child:r.props.children;for(;pHA(a)&&typeof JlA=="function";)a=JlA(a._payload);B=Oat(r,a),Q.push(B?.props?.children)}else Q.push(s)}),B?B=z.cloneElement(B,void 0,Q):!C&&z.Children.count(t)===1&&z.isValidElement(t)&&(B=t);const i=B?lXg(B):void 0,E=Gi(e,i);if(!B){if(t||t===0)throw new Error(C?jat(g):Vat(g));return t}const n=hXg(o,B.props??{});return B.type!==z.Fragment&&(n.ref=e?E:i),z.cloneElement(B,n)});return A.displayName=`${g}.Slot`,A}jM(fR,"createSlot");var Zat=fR("Slot"),rXg=Symbol.for("radix.slottable");function cXg(g){const A=jM(I=>"child"in I?I.children(I.child):I.children,"Slottable");return A.displayName=`${g}.Slottable`,A.__radixId=rXg,A}jM(cXg,"createSlottable");var Oat=jM((g,A)=>"child"in g.props?z.isValidElement(A)?z.cloneElement(A,void 0,g.props.children(A.props.children)):null:z.isValidElement(A)?A:null,"getSlottableElementFromSlottable");function hXg(g,A){const I={...A};for(const e in A){const t=g[e],o=A[e];/^on[A-Z]/.test(e)?t&&o?I[e]=(...C)=>{const Q=o(...C);return t(...C),Q}:t&&(I[e]=t):e==="style"?I[e]={...t,...o}:e==="className"?I[e]=[t,o].filter(Boolean).join(" "):e==="aria-describedby"&&(I[e]=wXg(o,t))}return{...g,...I}}jM(hXg,"mergeProps");function lXg(g){let A=Object.getOwnPropertyDescriptor(g.props,"ref")?.get,I=A&&"isReactWarning"in A&&A.isReactWarning;return I?g.ref:(A=Object.getOwnPropertyDescriptor(g,"ref")?.get,I=A&&"isReactWarning"in A&&A.isReactWarning,I?g.props.ref:g.props.ref||g.ref)}jM(lXg,"getElementRef");function DXg(g){return z.isValidElement(g)&&typeof g.type=="function"&&"__radixId"in g.type&&g.type.__radixId===rXg}jM(DXg,"isSlottable");var Wat=Symbol.for("react.lazy");function pHA(g){return g!=null&&typeof g=="object"&&"$$typeof"in g&&g.$$typeof===Wat&&"_payload"in g&&dXg(g._payload)}jM(pHA,"isLazyComponent");function dXg(g){return typeof g=="object"&&g!==null&&"then"in g}jM(dXg,"isPromiseLike");function yXg(g){let A=g;for(;pHA(A)&&typeof JlA=="function";)A=JlA(A._payload);return A}jM(yXg,"useUnwrappedLazy");function wXg(...g){const A=new Set;for(const I of g)if(typeof I=="string")for(const e of String(I).trim().split(/\s+/))e&&A.add(e);return A.size>0?Array.from(A).join(" "):void 0}jM(wXg,"concatAriaDescribedby");var Vat=jM(g=>`${g} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,"createSlotError"),jat=jM(g=>`${g} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,"createSlottableError"),JlA=_p[" use ".trim().toString()],uh=globalThis?.document?z.useLayoutEffect:()=>{},zat=Object.defineProperty,Rd=(g,A)=>zat(g,"name",{value:A,configurable:!0});function PlA(g){const A=g+"CollectionProvider",[I,e]=nk(A),[t,o]=I(A,{collectionRef:{current:null},itemMap:new Map}),B=Rd(c=>{const{scope:h,children:l}=c,D=z.useRef(null),d=z.useRef(new Map).current;return T.jsx(t,{scope:h,itemMap:d,collectionRef:D,children:l})},"CollectionProvider");B.displayName=A;const C=g+"CollectionSlot",Q=fR(C),i=z.forwardRef((c,h)=>{const{scope:l,children:D}=c,d=o(C,l),y=Gi(h,d.collectionRef);return T.jsx(Q,{ref:y,children:D})});i.displayName=C;const E=g+"CollectionItemSlot",n="data-radix-collection-item",s=fR(E),r=z.forwardRef((c,h)=>{const{scope:l,children:D,...d}=c,y=z.useRef(null),w=Gi(h,y),u=o(E,l);return z.useEffect(()=>(u.itemMap.set(y,{ref:y,...d}),()=>{u.itemMap.delete(y)})),T.jsx(s,{[n]:"",ref:w,children:D})});r.displayName=E;function a(c){const h=o(g+"CollectionConsumer",c);return z.useCallback(()=>{const D=h.collectionRef.current;if(!D)return[];const d=Array.from(D.querySelectorAll(`[${n}]`));return Array.from(h.itemMap.values()).sort((u,G)=>d.indexOf(u.ref.current)-d.indexOf(G.ref.current))},[h.collectionRef,h.itemMap])}return Rd(a,"useCollection"),[{Provider:B,Slot:i,ItemSlot:r},a,e]}Rd(PlA,"createCollection");var uXg=new WeakMap,KlA=(LS=class extends Map{constructor(I){super(I);j0g(this,vl);DCA(this,vl,[...super.keys()]),uXg.set(this,!0)}set(I,e){return uXg.get(this)&&!this.has(I)&&Xn(this,vl).push(I),super.set(I,e),this}insert(I,e,t){const o=this.has(e),B=o?this.size:this.size+1,C=kHA(I),Q=C>=0?Math.min(C,B-1):Math.max(B+C,0);if(o?Xn(this,vl).indexOf(e)===Q:Q===this.size)return this.set(e,t),this;const i=Xn(this,vl).filter(n=>n!==e);i.splice(Q,0,e);const E=i.map(n=>[n,n===e?t:this.get(n)]);this.clear();for(const[n,s]of E)this.set(n,s);return this}with(I,e,t){const o=new LS(this);return o.insert(I,e,t),o}before(I){const e=Xn(this,vl).indexOf(I)-1;if(!(e<0))return this.entryAt(e)}setBefore(I,e,t){const o=Xn(this,vl).indexOf(I);if(o===-1)return this;const B=Xn(this,vl).indexOf(e),C=B!==-1&&B<o?o-1:o;return this.insert(C,e,t)}after(I){let e=Xn(this,vl).indexOf(I);if(e=e===-1||e===this.size-1?-1:e+1,e!==-1)return this.entryAt(e)}setAfter(I,e,t){const o=Xn(this,vl).indexOf(I);if(o===-1)return this;const B=Xn(this,vl).indexOf(e),C=B!==-1&&B<=o?o:o+1;return this.insert(C,e,t)}first(){return this.entryAt(0)}last(){return this.entryAt(-1)}clear(){return DCA(this,vl,[]),super.clear()}delete(I){const e=super.delete(I);return e&&Xn(this,vl).splice(Xn(this,vl).indexOf(I),1),e}deleteAt(I){const e=this.keyAt(I);return e!==void 0?this.delete(e):!1}at(I){const e=LlA(Xn(this,vl),I);if(e!==void 0)return this.get(e)}entryAt(I){const e=LlA(Xn(this,vl),I);if(e!==void 0)return[e,this.get(e)]}indexOf(I){return Xn(this,vl).indexOf(I)}keyAt(I){return LlA(Xn(this,vl),I)}from(I,e){const t=this.indexOf(I);if(t===-1)return;let o=t+e;return o<0&&(o=0),o>=this.size&&(o=this.size-1),this.at(o)}keyFrom(I,e){const t=this.indexOf(I);if(t===-1)return;let o=t+e;return o<0&&(o=0),o>=this.size&&(o=this.size-1),this.keyAt(o)}find(I,e){let t=0;for(const o of this){if(Reflect.apply(I,e,[o,t,this]))return o;t++}}findIndex(I,e){let t=0;for(const o of this){if(Reflect.apply(I,e,[o,t,this]))return t;t++}return-1}filter(I,e){const t=[];let o=0;for(const B of this)Reflect.apply(I,e,[B,o,this])&&t.push(B),o++;return new LS(t)}map(I,e){const t=[];let o=0;for(const B of this)t.push([B[0],Reflect.apply(I,e,[B,o,this])]),o++;return new LS(t)}reduce(...I){const[e,t]=I,o=I.length>1;if(!o&&this.size===0)throw new TypeError("Reduce of empty OrderedDict with no initial value");let B=0,C=t;for(const Q of this)B===0&&!o?C=Q:C=Reflect.apply(e,this,[C,Q,B,this]),B++;return C}reduceRight(...I){const[e,t]=I,o=I.length>1;if(!o&&this.size===0)throw new TypeError("Reduce of empty OrderedDict with no initial value");let B=t;for(let C=this.size-1;C>=0;C--){const Q=this.entryAt(C);C===this.size-1&&!o?B=Q:B=Reflect.apply(e,this,[B,Q,C,this])}return B}sort(I){if(typeof I!="function")throw new TypeError("OrderedDict.sort requires a compare function");const e=[...this.entries()].sort(I);this.clear();for(const[t,o]of e)this.set(t,o);return this}toSorted(I){if(typeof I!="function")throw new TypeError("OrderedDict.toSorted requires a compare function");const e=[...this.entries()].sort(I);return new LS(e)}toReversed(){const I=new LS;for(let e=this.size-1;e>=0;e--){const t=this.keyAt(e),o=this.get(t);I.set(t,o)}return I}toSpliced(...I){const e=[...this.entries()];return e.splice(...I),new LS(e)}slice(I,e){const t=new LS;for(const o of Xn(this,vl).slice(I,e))t.set(o,this.get(o));return t}every(I,e){let t=0;for(const o of this){if(!Reflect.apply(I,e,[o,t,this]))return!1;t++}return!0}some(I,e){let t=0;for(const o of this){if(Reflect.apply(I,e,[o,t,this]))return!0;t++}return!1}},vl=new WeakMap,Rd(LS,"OrderedDict"),LS);function LlA(g,A){if("at"in Array.prototype)return Array.prototype.at.call(g,A);const I=GXg(g,A);return I===-1?void 0:g[I]}Rd(LlA,"at");function GXg(g,A){const I=g.length,e=kHA(A),t=e>=0?e:I+e;return t<0||t>=I?-1:t}Rd(GXg,"toSafeIndex");function kHA(g){return g!==g||g===0?0:Math.trunc(g)}Rd(kHA,"toSafeInteger");function Xat(g){const A=g+"CollectionProvider",[I,e]=nk(A),[t,o]=I(A);t.displayName=g+"CollectionStableContextProvider";const[B,C]=I(A);B.displayName=g+"CollectionStatefulContextProvider";const Q=Rd(({state:u,...G})=>u?T.jsx(E,{...G,state:u}):T.jsx(i,{...G}),"CollectionProvider");Q.displayName=A;const i=Rd(u=>{const G=D();return T.jsx(E,{...u,state:G})},"CollectionInit");i.displayName=g+"CollectionInit";const E=Rd(u=>{const{scope:G,children:m,state:p}=u,k=z.useRef(null),[S,R]=z.useState(null),x=Gi(k,R),[N,U]=p,K=z.useRef(new KlA),Y=z.useCallback(()=>{const b=K.current;return kXg(b)||b.sort(YlA),b},[]);return z.useEffect(()=>{if(!S)return;const b=MXg(()=>{U(q=>{const j=q.toSorted(YlA);return j.some(([Z],gA)=>q.keyAt(gA)!==Z)?j:q})});return b.observe(S,{childList:!0,subtree:!0}),()=>{b.disconnect()}},[S,U]),T.jsx(t,{scope:G,collectionElementRef:x,collectionElementRefObject:k,getCollection:Y,setCollection:U,registryRef:K,children:T.jsx(B,{scope:G,collectionElement:S,collection:N,children:m})})},"CollectionProviderImpl");E.displayName=g+"CollectionProviderImpl";const n=g+"CollectionSlot",s=fR(n),r=z.forwardRef((u,G)=>{const{scope:m,children:p}=u,k=o(n,m),S=Gi(G,k.collectionElementRef);return T.jsx(s,{ref:S,children:p})});r.displayName=n;const a=g+"CollectionItemSlot",c="data-radix-collection-item",h=fR(a),l=z.forwardRef((u,G)=>{const{scope:m,children:p,...k}=u,S=z.useRef(null),R=o(a,m),{setCollection:x,registryRef:N}=R,U=z.useRef(k);mXg(U.current,k)||(U.current=k);const K=U.current,Y=z.useCallback(j=>{const W=N.current;j?W.set(j,{...U.current,element:j}):S.current&&W.delete(S.current)},[N]),b=Gi(G,Y,S);uh(()=>{const j=S.current,W=N.current;j&&W.has(j)&&W.set(j,{...K,element:j})},[K,N]);const q=z.useRef(null);return z.useEffect(()=>{const j=S.current,W=q.current;(W?.element??null)===j&&(!j||W?.itemData===K)||(q.current=j?{element:j,itemData:K}:null,x(Z=>{const gA=new KlA(Z);return W&&W.element!==j&&gA.delete(W.element),j&&gA.set(j,{...K,element:j}),gA.sort(YlA)}))}),z.useEffect(()=>()=>{const j=q.current;q.current=null,j&&x(W=>{if(!W.has(j.element))return W;const Z=new KlA(W);return Z.delete(j.element),Z})},[x]),T.jsx(h,{[c]:"",ref:b,children:p})});l.displayName=a;function D(){return z.useState(new KlA)}Rd(D,"useInitCollection");function d(u){const{collection:G}=C(g+"CollectionConsumer",u);return G}Rd(d,"useCollection");function y(u){const{getCollection:G}=o(g+"CollectionConsumer",u);return G}return Rd(y,"useGetCollection"),[{Provider:Q,Slot:r,ItemSlot:l},{createCollectionScope:e,useCollection:d,useGetCollection:y,useInitCollection:D}]}Rd(Xat,"createCollection");function mXg(g,A){if(g===A)return!0;if(typeof g!="object"||typeof A!="object"||g==null||A==null)return!1;const I=Object.keys(g),e=Object.keys(A);if(I.length!==e.length)return!1;for(const t of I)if(!Object.prototype.hasOwnProperty.call(A,t)||g[t]!==A[t])return!1;return!0}Rd(mXg,"shallowEqual");function pXg(g,A){return!!(A.compareDocumentPosition(g)&Node.DOCUMENT_POSITION_PRECEDING)}Rd(pXg,"isElementPreceding");function kXg(g){let A;for(const I of g.keys()){if(A){const e=A.compareDocumentPosition(I);if(!(e&Node.DOCUMENT_POSITION_DISCONNECTED)&&e&Node.DOCUMENT_POSITION_PRECEDING)return!1}A=I}return!0}Rd(kXg,"isInDocumentOrder");function YlA(g,A){return!g[1].element||!A[1].element?0:pXg(g[1].element,A[1].element)?-1:1}Rd(YlA,"sortByDocumentPosition");function MXg(g){return new MutationObserver(I=>{for(const e of I)if(e.type==="childList"){g();return}})}Rd(MXg,"getChildListObserver");var $at=Object.defineProperty,Art=(g,A)=>$at(g,"name",{value:A,configurable:!0}),grt=_p[" useId ".trim().toString()]||(()=>{}),Irt=0;function Y0(g){const[A,I]=z.useState(grt());return uh(()=>{g||I(e=>e??String(Irt++))},[g]),g||(A?`radix-${A}`:"")}Art(Y0,"useId");var Dx=zfA();const SXg=Lp(Dx);var ert=Object.defineProperty,trt=(g,A)=>ert(g,"name",{value:A,configurable:!0}),ort=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],yQ=ort.reduce((g,A)=>{const I=fR(`Primitive.${A}`),e=z.forwardRef((t,o)=>{const{asChild:B,...C}=t,Q=B?I:A;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),T.jsx(Q,{...C,ref:o})});return e.displayName=`Primitive.${A}`,{...g,[A]:e}},{});function MHA(g,A){g&&Dx.flushSync(()=>g.dispatchEvent(A))}trt(MHA,"dispatchDiscreteCustomEvent");var Brt=Object.defineProperty,Crt=(g,A)=>Brt(g,"name",{value:A,configurable:!0}),fXg=_p[" useInsertionEffect ".trim().toString()];function zM(g){const A=z.useRef(g);return typeof fXg=="function"?fXg(()=>{A.current=g}):uh(()=>{A.current=g}),z.useMemo(()=>((...I)=>A.current?.(...I)),[])}Crt(zM,"useCallbackRef");var Qrt=Object.defineProperty,irt=(g,A)=>Qrt(g,"name",{value:A,configurable:!0}),RXg=_p[" useEffectEvent ".trim().toString()],NXg=_p[" useInsertionEffect ".trim().toString()];function xXg(g){if(typeof RXg=="function")return RXg(g);const A=z.useRef(()=>{throw new Error("Cannot call an event handler while rendering.")});return typeof NXg=="function"?NXg(()=>{A.current=g}):uh(()=>{A.current=g}),z.useMemo(()=>((...I)=>A.current?.(...I)),[])}irt(xXg,"useEffectEvent");var Ert=Object.defineProperty,_AA=(g,A)=>Ert(g,"name",{value:A,configurable:!0}),nrt=_p[" useInsertionEffect ".trim().toString()]||uh;function RR({prop:g,defaultProp:A,onChange:I=_AA(()=>{},"onChange"),caller:e}){const[t,o,B]=FXg({defaultProp:A,onChange:I}),C=g!==void 0,Q=C?g:t,i=z.useCallback(E=>{if(C){const n=UXg(E)?E(g):E;n!==g&&B.current?.(n)}else o(E)},[C,g,o,B]);return[Q,i]}_AA(RR,"useControllableState");function FXg({defaultProp:g,onChange:A}){const[I,e]=z.useState(g),t=z.useRef(I),o=z.useRef(A);return nrt(()=>{o.current=A},[A]),z.useEffect(()=>{t.current!==I&&(o.current?.(I),t.current=I)},[I,t]),[I,e,o]}_AA(FXg,"useUncontrolledState");function UXg(g){return typeof g=="function"}_AA(UXg,"isFunction");var JXg=Symbol("RADIX:SYNC_STATE");function srt(g,A,I,e){const{prop:t,defaultProp:o,onChange:B,caller:C}=A,Q=t!==void 0,i=xXg(B),E=[{...I,state:o}];e&&E.push(e);const[n,s]=z.useReducer((h,l)=>{if(l.type===JXg)return{...h,state:l.state};const D=g(h,l);return Q&&!Object.is(D.state,h.state)&&i(D.state),D},...E),r=n.state,a=z.useRef(r);z.useEffect(()=>{a.current!==r&&(a.current=r,Q||i(r))},[r,a,Q]);const c=z.useMemo(()=>t!==void 0?{...n,state:t}:n,[n,t]);return z.useEffect(()=>{Q&&!Object.is(t,n.state)&&s({type:JXg,state:t})},[t,n.state,Q]),[c,s]}_AA(srt,"useControllableStateReducer");var art=Object.defineProperty,rrt=(g,A)=>art(g,"name",{value:A,configurable:!0}),crt={LTR:"ltr"},hrt=z.createContext(void 0);function bAA(g){const A=z.useContext(hrt);return g||A||crt.LTR}rrt(bAA,"useDirection");var lrt=Object.defineProperty,SHA=(g,A)=>lrt(g,"name",{value:A,configurable:!0}),fHA=!1;function PXg(){const[g,A]=z.useState(fHA);return z.useEffect(()=>{fHA||(fHA=!0,A(!0))},[]),g}SHA(PXg,"useIsHydrated");var KXg=_p[" useSyncExternalStore ".trim().toString()];function LXg(){return()=>{}}SHA(LXg,"subscribe");function YXg(){return KXg(LXg,()=>!0,()=>!1)}SHA(YXg,"useIsHydratedModern");var Drt=typeof KXg=="function"?YXg:PXg,drt=Object.defineProperty,e5=(g,A)=>drt(g,"name",{value:A,configurable:!0}),RHA="rovingFocusGroup.onEntryFocus",yrt={bubbles:!1,cancelable:!0},_lA="RovingFocusGroup",[NHA,_Xg,wrt]=PlA(_lA),[urt,blA]=nk(_lA,[wrt]),bXg={Vertical:"vertical",Horizontal:"horizontal"},Grt={RTL:"rtl"},[mrt,prt]=urt(_lA),HXg=z.forwardRef(e5(function(A,I){return T.jsx(NHA.Provider,{scope:A.__scopeRovingFocusGroup,children:T.jsx(NHA.Slot,{scope:A.__scopeRovingFocusGroup,children:T.jsx(krt,{...A,ref:I})})})},"RovingFocusGroup")),krt=z.forwardRef(e5(function(A,I){const{__scopeRovingFocusGroup:e,orientation:t,loop:o=!1,dir:B,currentTabStopId:C,defaultCurrentTabStopId:Q,onCurrentTabStopIdChange:i,onEntryFocus:E,preventScrollOnEntryFocus:n=!1,...s}=A,r=z.useRef(null),a=Gi(I,r),c=bAA(B),[h,l]=RR({prop:C,defaultProp:Q??null,onChange:i,caller:_lA}),[D,d]=z.useState(!1),y=zM(E),w=_Xg(e),u=z.useRef(!1),[G,m]=z.useState(0);return z.useEffect(()=>{const p=r.current;if(p)return p.addEventListener(RHA,y),()=>p.removeEventListener(RHA,y)},[y]),T.jsx(mrt,{scope:e,orientation:t,dir:c,loop:o,currentTabStopId:h,onItemFocus:z.useCallback(p=>l(p),[l]),onItemShiftTab:z.useCallback(()=>d(!0),[]),onFocusableItemAdd:z.useCallback(()=>m(p=>p+1),[]),onFocusableItemRemove:z.useCallback(()=>m(p=>p-1),[]),children:T.jsx(yQ.div,{tabIndex:D||G===0?-1:0,"data-orientation":t,...s,ref:a,style:{outline:"none",...A.style},onMouseDown:So(A.onMouseDown,()=>{u.current=!0}),onFocus:So(A.onFocus,p=>{const k=!u.current;if(p.target===p.currentTarget&&k&&!D){const S=new CustomEvent(RHA,yrt);if(p.currentTarget.dispatchEvent(S),!S.defaultPrevented){const R=w().filter(Y=>Y.focusable),x=R.find(Y=>Y.active),N=R.find(Y=>Y.id===h),K=[x,N,...R].filter(Boolean).map(Y=>Y.ref.current);xHA(K,n)}}u.current=!1}),onBlur:So(A.onBlur,()=>d(!1))})})},"RovingFocusGroupImpl")),Mrt="RovingFocusGroupItem",vXg=z.forwardRef(e5(function(A,I){const{__scopeRovingFocusGroup:e,focusable:t=!0,active:o=!1,tabStopId:B,children:C,...Q}=A,i=Y0(),E=B||i,n=prt(Mrt,e),s=n.currentTabStopId===E,r=_Xg(e),{onFocusableItemAdd:a,onFocusableItemRemove:c,currentTabStopId:h}=n,l=Drt();return uh(()=>{if(!(!l||!t))return a(),()=>c()},[l,t,a,c]),z.useEffect(()=>{if(!(l||!t))return a(),()=>c()},[l,t,a,c]),T.jsx(NHA.ItemSlot,{scope:e,id:E,focusable:t,active:o,children:T.jsx(yQ.span,{tabIndex:s?0:-1,"data-orientation":n.orientation,...Q,ref:I,onMouseDown:So(A.onMouseDown,D=>{t?n.onItemFocus(E):D.preventDefault()}),onFocus:So(A.onFocus,()=>n.onItemFocus(E)),onKeyDown:So(A.onKeyDown,D=>{if(D.key==="Tab"&&D.shiftKey){n.onItemShiftTab();return}if(D.target!==D.currentTarget)return;const d=qXg(D,n.orientation,n.dir);if(d!==void 0){if(D.metaKey||D.ctrlKey||D.altKey||D.shiftKey)return;D.preventDefault();let w=r().filter(u=>u.focusable).map(u=>u.ref.current);if(d==="last")w.reverse();else if(d==="prev"||d==="next"){d==="prev"&&w.reverse();const u=w.indexOf(D.currentTarget);w=n.loop?ZXg(w,u+1):w.slice(u+1)}setTimeout(()=>xHA(w))}}),children:typeof C=="function"?C({isCurrentTabStop:s,hasTabStop:h!=null}):C})})},"RovingFocusGroupItem")),Srt={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function TXg(g,A){return A!==Grt.RTL?g:g==="ArrowLeft"?"ArrowRight":g==="ArrowRight"?"ArrowLeft":g}e5(TXg,"getDirectionAwareKey");function qXg(g,A,I){const e=TXg(g.key,I);if(!(A===bXg.Vertical&&["ArrowLeft","ArrowRight"].includes(e))&&!(A===bXg.Horizontal&&["ArrowUp","ArrowDown"].includes(e)))return Srt[e]}e5(qXg,"getFocusIntent");function xHA(g,A=!1){const I=document.activeElement;for(const e of g)if(e===I||(e.focus({preventScroll:A}),document.activeElement!==I))return}e5(xHA,"focusFirst");function ZXg(g,A){return g.map((I,e)=>g[(A+e)%g.length])}e5(ZXg,"wrapArray");var frt=Object.defineProperty,QJ=(g,A)=>frt(g,"name",{value:A,configurable:!0});function OXg(g,A){return z.useReducer((I,e)=>A[I][e]??I,g)}QJ(OXg,"useStateMachine");var XM=QJ(g=>{const{present:A,children:I}=g,e=WXg(A),t=typeof I=="function"?I({present:e.isPresent}):z.Children.only(I),o=VXg(e.ref,jXg(t));return typeof I=="function"||e.isPresent?z.cloneElement(t,{ref:o}):null},"Presence");function WXg(g){const[A,I]=z.useState(),e=z.useRef(null),t=z.useRef(g),o=z.useRef("none"),B=z.useRef(void 0),C=g?"mounted":"unmounted",[Q,i]=OXg(C,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return z.useEffect(()=>{Q==="mounted"?(o.current=B.current??VT(e.current),B.current=void 0):o.current="none"},[Q]),uh(()=>{const E=e.current,n=t.current;if(n!==g){const r=o.current,a=VT(E);g?(B.current=a,i("MOUNT")):a==="none"||E?.display==="none"?i("UNMOUNT"):i(n&&r!==a?"ANIMATION_OUT":"UNMOUNT"),t.current=g}},[g,i]),uh(()=>{if(A){let E;const n=A.ownerDocument.defaultView??window,s=QJ(a=>{const h=VT(e.current).includes(CSS.escape(a.animationName));if(a.target===A&&h&&(i("ANIMATION_END"),!t.current)){const l=A.style.animationFillMode;A.style.animationFillMode="forwards",E=n.setTimeout(()=>{A.style.animationFillMode==="forwards"&&(A.style.animationFillMode=l)})}},"handleAnimationEnd"),r=QJ(a=>{a.target===A&&(o.current=VT(e.current))},"handleAnimationStart");return A.addEventListener("animationstart",r),A.addEventListener("animationcancel",s),A.addEventListener("animationend",s),()=>{n.clearTimeout(E),A.removeEventListener("animationstart",r),A.removeEventListener("animationcancel",s),A.removeEventListener("animationend",s)}}else i("ANIMATION_END")},[A,i]),{isPresent:["mounted","unmountSuspended"].includes(Q),ref:z.useCallback(E=>{if(E){const n=getComputedStyle(E);e.current=n,B.current=VT(n)}else e.current=null;I(E)},[])}}QJ(WXg,"usePresence");function FHA(g,A){if(typeof g=="function")return g(A);g!=null&&(g.current=A)}QJ(FHA,"setRef");function VXg(...g){const A=z.useRef(g);return A.current=g,z.useCallback(I=>{const e=A.current;let t=!1;const o=e.map(B=>{const C=FHA(B,I);return!t&&typeof C=="function"&&(t=!0),C});if(t)return()=>{for(let B=0;B<o.length;B++){const C=o[B];typeof C=="function"?C():FHA(e[B],null)}}},[])}QJ(VXg,"useStableComposedRefs");function VT(g){return g?.animationName||"none"}QJ(VT,"getAnimationName");function jXg(g){let A=Object.getOwnPropertyDescriptor(g.props,"ref")?.get,I=A&&"isReactWarning"in A&&A.isReactWarning;return I?g.ref:(A=Object.getOwnPropertyDescriptor(g,"ref")?.get,I=A&&"isReactWarning"in A&&A.isReactWarning,I?g.props.ref:g.props.ref||g.ref)}QJ(jXg,"getElementRef");var Rrt=Object.defineProperty,jT=(g,A)=>Rrt(g,"name",{value:A,configurable:!0}),zXg={Automatic:"automatic",Manual:"manual"},UHA="Tabs",[Nrt,woB]=nk(UHA,[blA]),XXg=blA(),[xrt,JHA]=Nrt(UHA),Frt=z.forwardRef(jT(function(A,I){const{__scopeTabs:e,value:t,onValueChange:o,defaultValue:B,orientation:C="horizontal",dir:Q,activationMode:i=zXg.Automatic,...E}=A,n=bAA(Q),[s,r]=RR({prop:t,onChange:o,defaultProp:B??"",caller:UHA});return T.jsx(xrt,{scope:e,baseId:Y0(),value:s,onValueChange:r,orientation:C,dir:n,activationMode:i,children:T.jsx(yQ.div,{dir:n,"data-orientation":C,...E,ref:I})})},"Tabs")),Urt="TabsList",$Xg=z.forwardRef(jT(function(A,I){const{__scopeTabs:e,loop:t=!0,...o}=A,B=JHA(Urt,e),C=XXg(e);return T.jsx(HXg,{asChild:!0,...C,orientation:B.orientation,dir:B.dir,loop:t,children:T.jsx(yQ.div,{role:"tablist","aria-orientation":B.orientation,...o,ref:I})})},"TabsList")),Jrt="TabsTrigger",A$g=z.forwardRef(jT(function(A,I){const{__scopeTabs:e,value:t,disabled:o=!1,...B}=A,C=JHA(Jrt,e),Q=XXg(e),i=PHA(C.baseId,t),E=KHA(C.baseId,t),n=t===C.value;return T.jsx(vXg,{asChild:!0,...Q,focusable:!o,active:n,children:T.jsx(yQ.button,{type:"button",role:"tab","aria-selected":n,"aria-controls":E,"data-state":n?"active":"inactive","data-disabled":o?"":void 0,disabled:o,id:i,...B,ref:I,onMouseDown:So(A.onMouseDown,s=>{!o&&s.button===0&&s.ctrlKey===!1?(s.currentTarget.focus(),C.onValueChange(t)):s.preventDefault()}),onKeyDown:So(A.onKeyDown,s=>{o||s.target!==s.currentTarget||[" ","Enter"].includes(s.key)&&C.onValueChange(t)}),onFocus:So(A.onFocus,()=>{const s=C.activationMode!==zXg.Manual;!n&&!o&&s&&C.onValueChange(t)})})})},"TabsTrigger")),Prt="TabsContent",g$g=z.forwardRef(jT(function(A,I){const{__scopeTabs:e,value:t,forceMount:o,children:B,...C}=A,Q=JHA(Prt,e),i=PHA(Q.baseId,t),E=KHA(Q.baseId,t),n=t===Q.value,s=z.useRef(n);return z.useEffect(()=>{const r=requestAnimationFrame(()=>s.current=!1);return()=>cancelAnimationFrame(r)},[]),T.jsx(XM,{present:o||n,children:({present:r})=>T.jsx(yQ.div,{"data-state":n?"active":"inactive","data-orientation":Q.orientation,role:"tabpanel","aria-labelledby":i,hidden:!r,id:E,tabIndex:0,...C,ref:I,style:{...A.style,animationDuration:s.current?"0s":void 0},children:r&&B})})},"TabsContent"));function PHA(g,A){return`${g}-trigger-${A}`}jT(PHA,"makeTriggerId");function KHA(g,A){return`${g}-content-${A}`}jT(KHA,"makeContentId");function I$g(g){var A,I,e="";if(typeof g=="string"||typeof g=="number")e+=g;else if(typeof g=="object")if(Array.isArray(g)){var t=g.length;for(A=0;A<t;A++)g[A]&&(I=I$g(g[A]))&&(e&&(e+=" "),e+=I)}else for(I in g)g[I]&&(e&&(e+=" "),e+=I);return e}function NR(){for(var g,A,I=0,e="",t=arguments.length;I<t;I++)(g=arguments[I])&&(A=I$g(g))&&(e&&(e+=" "),e+=A);return e}const LHA="-",Krt=g=>{const A=Yrt(g),{conflictingClassGroups:I,conflictingClassGroupModifiers:e}=g;return{getClassGroupId:B=>{const C=B.split(LHA);return C[0]===""&&C.length!==1&&C.shift(),e$g(C,A)||Lrt(B)},getConflictingClassGroupIds:(B,C)=>{const Q=I[B]||[];return C&&e[B]?[...Q,...e[B]]:Q}}},e$g=(g,A)=>{if(g.length===0)return A.classGroupId;const I=g[0],e=A.nextPart.get(I),t=e?e$g(g.slice(1),e):void 0;if(t)return t;if(A.validators.length===0)return;const o=g.join(LHA);return A.validators.find(({validator:B})=>B(o))?.classGroupId},t$g=/^\[(.+)\]$/,Lrt=g=>{if(t$g.test(g)){const A=t$g.exec(g)[1],I=A?.substring(0,A.indexOf(":"));if(I)return"arbitrary.."+I}},Yrt=g=>{const{theme:A,prefix:I}=g,e={nextPart:new Map,validators:[]};return brt(Object.entries(g.classGroups),I).forEach(([o,B])=>{YHA(B,e,o,A)}),e},YHA=(g,A,I,e)=>{g.forEach(t=>{if(typeof t=="string"){const o=t===""?A:o$g(A,t);o.classGroupId=I;return}if(typeof t=="function"){if(_rt(t)){YHA(t(e),A,I,e);return}A.validators.push({validator:t,classGroupId:I});return}Object.entries(t).forEach(([o,B])=>{YHA(B,o$g(A,o),I,e)})})},o$g=(g,A)=>{let I=g;return A.split(LHA).forEach(e=>{I.nextPart.has(e)||I.nextPart.set(e,{nextPart:new Map,validators:[]}),I=I.nextPart.get(e)}),I},_rt=g=>g.isThemeGetter,brt=(g,A)=>A?g.map(([I,e])=>{const t=e.map(o=>typeof o=="string"?A+o:typeof o=="object"?Object.fromEntries(Object.entries(o).map(([B,C])=>[A+B,C])):o);return[I,t]}):g,Hrt=g=>{if(g<1)return{get:()=>{},set:()=>{}};let A=0,I=new Map,e=new Map;const t=(o,B)=>{I.set(o,B),A++,A>g&&(A=0,e=I,I=new Map)};return{get(o){let B=I.get(o);if(B!==void 0)return B;if((B=e.get(o))!==void 0)return t(o,B),B},set(o,B){I.has(o)?I.set(o,B):t(o,B)}}},B$g="!",vrt=g=>{const{separator:A,experimentalParseClassName:I}=g,e=A.length===1,t=A[0],o=A.length,B=C=>{const Q=[];let i=0,E=0,n;for(let h=0;h<C.length;h++){let l=C[h];if(i===0){if(l===t&&(e||C.slice(h,h+o)===A)){Q.push(C.slice(E,h)),E=h+o;continue}if(l==="/"){n=h;continue}}l==="["?i++:l==="]"&&i--}const s=Q.length===0?C:C.substring(E),r=s.startsWith(B$g),a=r?s.substring(1):s,c=n&&n>E?n-E:void 0;return{modifiers:Q,hasImportantModifier:r,baseClassName:a,maybePostfixModifierPosition:c}};return I?C=>I({className:C,parseClassName:B}):B},Trt=g=>{if(g.length<=1)return g;const A=[];let I=[];return g.forEach(e=>{e[0]==="["?(A.push(...I.sort(),e),I=[]):I.push(e)}),A.push(...I.sort()),A},qrt=g=>({cache:Hrt(g.cacheSize),parseClassName:vrt(g),...Krt(g)}),Zrt=/\s+/,Ort=(g,A)=>{const{parseClassName:I,getClassGroupId:e,getConflictingClassGroupIds:t}=A,o=[],B=g.trim().split(Zrt);let C="";for(let Q=B.length-1;Q>=0;Q-=1){const i=B[Q],{modifiers:E,hasImportantModifier:n,baseClassName:s,maybePostfixModifierPosition:r}=I(i);let a=!!r,c=e(a?s.substring(0,r):s);if(!c){if(!a){C=i+(C.length>0?" "+C:C);continue}if(c=e(s),!c){C=i+(C.length>0?" "+C:C);continue}a=!1}const h=Trt(E).join(":"),l=n?h+B$g:h,D=l+c;if(o.includes(D))continue;o.push(D);const d=t(c,a);for(let y=0;y<d.length;++y){const w=d[y];o.push(l+w)}C=i+(C.length>0?" "+C:C)}return C};function Wrt(){let g=0,A,I,e="";for(;g<arguments.length;)(A=arguments[g++])&&(I=C$g(A))&&(e&&(e+=" "),e+=I);return e}const C$g=g=>{if(typeof g=="string")return g;let A,I="";for(let e=0;e<g.length;e++)g[e]&&(A=C$g(g[e]))&&(I&&(I+=" "),I+=A);return I};function Vrt(g,...A){let I,e,t,o=B;function B(Q){const i=A.reduce((E,n)=>n(E),g());return I=qrt(i),e=I.cache.get,t=I.cache.set,o=C,C(Q)}function C(Q){const i=e(Q);if(i)return i;const E=Ort(Q,I);return t(Q,E),E}return function(){return o(Wrt.apply(null,arguments))}}const Jc=g=>{const A=I=>I[g]||[];return A.isThemeGetter=!0,A},Q$g=/^\[(?:([a-z-]+):)?(.+)\]$/i,jrt=/^\d+\/\d+$/,zrt=new Set(["px","full","screen"]),Xrt=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,$rt=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Act=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,gct=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Ict=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,iJ=g=>zT(g)||zrt.has(g)||jrt.test(g),C3=g=>XT(g,"length",Ect),zT=g=>!!g&&!Number.isNaN(Number(g)),_HA=g=>XT(g,"number",zT),HAA=g=>!!g&&Number.isInteger(Number(g)),ect=g=>g.endsWith("%")&&zT(g.slice(0,-1)),fi=g=>Q$g.test(g),Q3=g=>Xrt.test(g),tct=new Set(["length","size","percentage"]),oct=g=>XT(g,tct,i$g),Bct=g=>XT(g,"position",i$g),Cct=new Set(["image","url"]),Qct=g=>XT(g,Cct,sct),ict=g=>XT(g,"",nct),vAA=()=>!0,XT=(g,A,I)=>{const e=Q$g.exec(g);return e?e[1]?typeof A=="string"?e[1]===A:A.has(e[1]):I(e[2]):!1},Ect=g=>$rt.test(g)&&!Act.test(g),i$g=()=>!1,nct=g=>gct.test(g),sct=g=>Ict.test(g),act=Vrt(()=>{const g=Jc("colors"),A=Jc("spacing"),I=Jc("blur"),e=Jc("brightness"),t=Jc("borderColor"),o=Jc("borderRadius"),B=Jc("borderSpacing"),C=Jc("borderWidth"),Q=Jc("contrast"),i=Jc("grayscale"),E=Jc("hueRotate"),n=Jc("invert"),s=Jc("gap"),r=Jc("gradientColorStops"),a=Jc("gradientColorStopPositions"),c=Jc("inset"),h=Jc("margin"),l=Jc("opacity"),D=Jc("padding"),d=Jc("saturate"),y=Jc("scale"),w=Jc("sepia"),u=Jc("skew"),G=Jc("space"),m=Jc("translate"),p=()=>["auto","contain","none"],k=()=>["auto","hidden","clip","visible","scroll"],S=()=>["auto",fi,A],R=()=>[fi,A],x=()=>["",iJ,C3],N=()=>["auto",zT,fi],U=()=>["bottom","center","left","left-bottom","left-top","right","right-bottom","right-top","top"],K=()=>["solid","dashed","dotted","double","none"],Y=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],b=()=>["start","end","center","between","around","evenly","stretch"],q=()=>["","0",fi],j=()=>["auto","avoid","all","avoid-page","page","left","right","column"],W=()=>[zT,fi];return{cacheSize:500,separator:":",theme:{colors:[vAA],spacing:[iJ,C3],blur:["none","",Q3,fi],brightness:W(),borderColor:[g],borderRadius:["none","","full",Q3,fi],borderSpacing:R(),borderWidth:x(),contrast:W(),grayscale:q(),hueRotate:W(),invert:q(),gap:R(),gradientColorStops:[g],gradientColorStopPositions:[ect,C3],inset:S(),margin:S(),opacity:W(),padding:R(),saturate:W(),scale:W(),sepia:q(),skew:W(),space:R(),translate:R()},classGroups:{aspect:[{aspect:["auto","square","video",fi]}],container:["container"],columns:[{columns:[Q3]}],"break-after":[{"break-after":j()}],"break-before":[{"break-before":j()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:[...U(),fi]}],overflow:[{overflow:k()}],"overflow-x":[{"overflow-x":k()}],"overflow-y":[{"overflow-y":k()}],overscroll:[{overscroll:p()}],"overscroll-x":[{"overscroll-x":p()}],"overscroll-y":[{"overscroll-y":p()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:[c]}],"inset-x":[{"inset-x":[c]}],"inset-y":[{"inset-y":[c]}],start:[{start:[c]}],end:[{end:[c]}],top:[{top:[c]}],right:[{right:[c]}],bottom:[{bottom:[c]}],left:[{left:[c]}],visibility:["visible","invisible","collapse"],z:[{z:["auto",HAA,fi]}],basis:[{basis:S()}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["wrap","wrap-reverse","nowrap"]}],flex:[{flex:["1","auto","initial","none",fi]}],grow:[{grow:q()}],shrink:[{shrink:q()}],order:[{order:["first","last","none",HAA,fi]}],"grid-cols":[{"grid-cols":[vAA]}],"col-start-end":[{col:["auto",{span:["full",HAA,fi]},fi]}],"col-start":[{"col-start":N()}],"col-end":[{"col-end":N()}],"grid-rows":[{"grid-rows":[vAA]}],"row-start-end":[{row:["auto",{span:[HAA,fi]},fi]}],"row-start":[{"row-start":N()}],"row-end":[{"row-end":N()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":["auto","min","max","fr",fi]}],"auto-rows":[{"auto-rows":["auto","min","max","fr",fi]}],gap:[{gap:[s]}],"gap-x":[{"gap-x":[s]}],"gap-y":[{"gap-y":[s]}],"justify-content":[{justify:["normal",...b()]}],"justify-items":[{"justify-items":["start","end","center","stretch"]}],"justify-self":[{"justify-self":["auto","start","end","center","stretch"]}],"align-content":[{content:["normal",...b(),"baseline"]}],"align-items":[{items:["start","end","center","baseline","stretch"]}],"align-self":[{self:["auto","start","end","center","stretch","baseline"]}],"place-content":[{"place-content":[...b(),"baseline"]}],"place-items":[{"place-items":["start","end","center","baseline","stretch"]}],"place-self":[{"place-self":["auto","start","end","center","stretch"]}],p:[{p:[D]}],px:[{px:[D]}],py:[{py:[D]}],ps:[{ps:[D]}],pe:[{pe:[D]}],pt:[{pt:[D]}],pr:[{pr:[D]}],pb:[{pb:[D]}],pl:[{pl:[D]}],m:[{m:[h]}],mx:[{mx:[h]}],my:[{my:[h]}],ms:[{ms:[h]}],me:[{me:[h]}],mt:[{mt:[h]}],mr:[{mr:[h]}],mb:[{mb:[h]}],ml:[{ml:[h]}],"space-x":[{"space-x":[G]}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":[G]}],"space-y-reverse":["space-y-reverse"],w:[{w:["auto","min","max","fit","svw","lvw","dvw",fi,A]}],"min-w":[{"min-w":[fi,A,"min","max","fit"]}],"max-w":[{"max-w":[fi,A,"none","full","min","max","fit","prose",{screen:[Q3]},Q3]}],h:[{h:[fi,A,"auto","min","max","fit","svh","lvh","dvh"]}],"min-h":[{"min-h":[fi,A,"min","max","fit","svh","lvh","dvh"]}],"max-h":[{"max-h":[fi,A,"min","max","fit","svh","lvh","dvh"]}],size:[{size:[fi,A,"auto","min","max","fit"]}],"font-size":[{text:["base",Q3,C3]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:["thin","extralight","light","normal","medium","semibold","bold","extrabold","black",_HA]}],"font-family":[{font:[vAA]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:["tighter","tight","normal","wide","wider","widest",fi]}],"line-clamp":[{"line-clamp":["none",zT,_HA]}],leading:[{leading:["none","tight","snug","normal","relaxed","loose",iJ,fi]}],"list-image":[{"list-image":["none",fi]}],"list-style-type":[{list:["none","disc","decimal",fi]}],"list-style-position":[{list:["inside","outside"]}],"placeholder-color":[{placeholder:[g]}],"placeholder-opacity":[{"placeholder-opacity":[l]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"text-color":[{text:[g]}],"text-opacity":[{"text-opacity":[l]}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...K(),"wavy"]}],"text-decoration-thickness":[{decoration:["auto","from-font",iJ,C3]}],"underline-offset":[{"underline-offset":["auto",iJ,fi]}],"text-decoration-color":[{decoration:[g]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:R()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",fi]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",fi]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-opacity":[{"bg-opacity":[l]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:[...U(),Bct]}],"bg-repeat":[{bg:["no-repeat",{repeat:["","x","y","round","space"]}]}],"bg-size":[{bg:["auto","cover","contain",oct]}],"bg-image":[{bg:["none",{"gradient-to":["t","tr","r","br","b","bl","l","tl"]},Qct]}],"bg-color":[{bg:[g]}],"gradient-from-pos":[{from:[a]}],"gradient-via-pos":[{via:[a]}],"gradient-to-pos":[{to:[a]}],"gradient-from":[{from:[r]}],"gradient-via":[{via:[r]}],"gradient-to":[{to:[r]}],rounded:[{rounded:[o]}],"rounded-s":[{"rounded-s":[o]}],"rounded-e":[{"rounded-e":[o]}],"rounded-t":[{"rounded-t":[o]}],"rounded-r":[{"rounded-r":[o]}],"rounded-b":[{"rounded-b":[o]}],"rounded-l":[{"rounded-l":[o]}],"rounded-ss":[{"rounded-ss":[o]}],"rounded-se":[{"rounded-se":[o]}],"rounded-ee":[{"rounded-ee":[o]}],"rounded-es":[{"rounded-es":[o]}],"rounded-tl":[{"rounded-tl":[o]}],"rounded-tr":[{"rounded-tr":[o]}],"rounded-br":[{"rounded-br":[o]}],"rounded-bl":[{"rounded-bl":[o]}],"border-w":[{border:[C]}],"border-w-x":[{"border-x":[C]}],"border-w-y":[{"border-y":[C]}],"border-w-s":[{"border-s":[C]}],"border-w-e":[{"border-e":[C]}],"border-w-t":[{"border-t":[C]}],"border-w-r":[{"border-r":[C]}],"border-w-b":[{"border-b":[C]}],"border-w-l":[{"border-l":[C]}],"border-opacity":[{"border-opacity":[l]}],"border-style":[{border:[...K(),"hidden"]}],"divide-x":[{"divide-x":[C]}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":[C]}],"divide-y-reverse":["divide-y-reverse"],"divide-opacity":[{"divide-opacity":[l]}],"divide-style":[{divide:K()}],"border-color":[{border:[t]}],"border-color-x":[{"border-x":[t]}],"border-color-y":[{"border-y":[t]}],"border-color-s":[{"border-s":[t]}],"border-color-e":[{"border-e":[t]}],"border-color-t":[{"border-t":[t]}],"border-color-r":[{"border-r":[t]}],"border-color-b":[{"border-b":[t]}],"border-color-l":[{"border-l":[t]}],"divide-color":[{divide:[t]}],"outline-style":[{outline:["",...K()]}],"outline-offset":[{"outline-offset":[iJ,fi]}],"outline-w":[{outline:[iJ,C3]}],"outline-color":[{outline:[g]}],"ring-w":[{ring:x()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:[g]}],"ring-opacity":[{"ring-opacity":[l]}],"ring-offset-w":[{"ring-offset":[iJ,C3]}],"ring-offset-color":[{"ring-offset":[g]}],shadow:[{shadow:["","inner","none",Q3,ict]}],"shadow-color":[{shadow:[vAA]}],opacity:[{opacity:[l]}],"mix-blend":[{"mix-blend":[...Y(),"plus-lighter","plus-darker"]}],"bg-blend":[{"bg-blend":Y()}],filter:[{filter:["","none"]}],blur:[{blur:[I]}],brightness:[{brightness:[e]}],contrast:[{contrast:[Q]}],"drop-shadow":[{"drop-shadow":["","none",Q3,fi]}],grayscale:[{grayscale:[i]}],"hue-rotate":[{"hue-rotate":[E]}],invert:[{invert:[n]}],saturate:[{saturate:[d]}],sepia:[{sepia:[w]}],"backdrop-filter":[{"backdrop-filter":["","none"]}],"backdrop-blur":[{"backdrop-blur":[I]}],"backdrop-brightness":[{"backdrop-brightness":[e]}],"backdrop-contrast":[{"backdrop-contrast":[Q]}],"backdrop-grayscale":[{"backdrop-grayscale":[i]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[E]}],"backdrop-invert":[{"backdrop-invert":[n]}],"backdrop-opacity":[{"backdrop-opacity":[l]}],"backdrop-saturate":[{"backdrop-saturate":[d]}],"backdrop-sepia":[{"backdrop-sepia":[w]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":[B]}],"border-spacing-x":[{"border-spacing-x":[B]}],"border-spacing-y":[{"border-spacing-y":[B]}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["none","all","","colors","opacity","shadow","transform",fi]}],duration:[{duration:W()}],ease:[{ease:["linear","in","out","in-out",fi]}],delay:[{delay:W()}],animate:[{animate:["none","spin","ping","pulse","bounce",fi]}],transform:[{transform:["","gpu","none"]}],scale:[{scale:[y]}],"scale-x":[{"scale-x":[y]}],"scale-y":[{"scale-y":[y]}],rotate:[{rotate:[HAA,fi]}],"translate-x":[{"translate-x":[m]}],"translate-y":[{"translate-y":[m]}],"skew-x":[{"skew-x":[u]}],"skew-y":[{"skew-y":[u]}],"transform-origin":[{origin:["center","top","top-right","right","bottom-right","bottom","bottom-left","left","top-left",fi]}],accent:[{accent:["auto",g]}],appearance:[{appearance:["none","auto"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",fi]}],"caret-color":[{caret:[g]}],"pointer-events":[{"pointer-events":["none","auto"]}],resize:[{resize:["none","y","x",""]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":R()}],"scroll-mx":[{"scroll-mx":R()}],"scroll-my":[{"scroll-my":R()}],"scroll-ms":[{"scroll-ms":R()}],"scroll-me":[{"scroll-me":R()}],"scroll-mt":[{"scroll-mt":R()}],"scroll-mr":[{"scroll-mr":R()}],"scroll-mb":[{"scroll-mb":R()}],"scroll-ml":[{"scroll-ml":R()}],"scroll-p":[{"scroll-p":R()}],"scroll-px":[{"scroll-px":R()}],"scroll-py":[{"scroll-py":R()}],"scroll-ps":[{"scroll-ps":R()}],"scroll-pe":[{"scroll-pe":R()}],"scroll-pt":[{"scroll-pt":R()}],"scroll-pr":[{"scroll-pr":R()}],"scroll-pb":[{"scroll-pb":R()}],"scroll-pl":[{"scroll-pl":R()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",fi]}],fill:[{fill:[g,"none"]}],"stroke-w":[{stroke:[iJ,C3,_HA]}],stroke:[{stroke:[g,"none"]}],sr:["sr-only","not-sr-only"],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]}}});var E$g={env:{},version:""};const Se="u">typeof window?window:void 0,nG="u">typeof globalThis?globalThis:Se,Hw=nG?.navigator,ro=nG?.document,Ca=nG?.location,TAA=nG?.fetch,bHA=nG?.XMLHttpRequest&&"withCredentials"in new nG.XMLHttpRequest?nG.XMLHttpRequest:void 0,n$g=nG?.AbortController,rct=nG?.CompressionStream,xm=Hw?.userAgent,qAA=typeof globalThis<"u"?globalThis:Se;qAA&&typeof self>"u"&&(qAA.self=qAA),qAA&&typeof File>"u"&&(qAA.File=function(){});const UB=Se??{},cct="0.9.10",EJ={DEBUG:!1,LIB_VERSION:cct,LIB_NAME:"browser-common"};var dx=(function(g){return g.AnonymousId="anonymous_id",g.DistinctId="distinct_id",g.Props="props",g.EnablePersonProcessing="enable_person_processing",g.PersonMode="person_mode",g.FeatureFlagDetails="feature_flag_details",g.FeatureFlags="feature_flags",g.FeatureFlagPayloads="feature_flag_payloads",g.BootstrapFeatureFlagDetails="bootstrap_feature_flag_details",g.BootstrapFeatureFlags="bootstrap_feature_flags",g.BootstrapFeatureFlagPayloads="bootstrap_feature_flag_payloads",g.OverrideFeatureFlags="override_feature_flags",g.Queue="queue",g.AiQueue="ai_queue",g.AiCaptureQueue="ai_capture_queue",g.LogsQueue="logs_queue",g.OptedOut="opted_out",g.SessionId="session_id",g.SessionStartTimestamp="session_start_timestamp",g.SessionLastTimestamp="session_timestamp",g.PersonProperties="person_properties",g.GroupProperties="group_properties",g.InstalledAppBuild="installed_app_build",g.InstalledAppVersion="installed_app_version",g.SessionReplay="session_replay",g.PushRegistered="push_registered",g.SessionReplayEventTriggerActivatedSession="session_replay_event_trigger_activated_session",g.SurveyLastSeenDate="survey_last_seen_date",g.SurveysInProgress="surveys_in_progress",g.SurveysSeen="surveys_seen",g.Surveys="surveys",g.RemoteConfig="remote_config",g.FlagsEndpointWasHit="flags_endpoint_was_hit",g.DeviceId="device_id",g})({}),HHA=(function(g){return g.GZipJS="gzip-js",g.Base64="base64",g})({});const hct=["$snapshot","$pageview","$pageleave","$set","survey dismissed","survey sent","survey shown","$identify","$groupidentify","$create_alias","$$client_ingestion_warning","$web_experiment_applied","$feature_enrollment_update","$feature_flag_called"],lct=["token"];function yB(g,A){return g.indexOf(A)!==-1}const $T=function(g){return g.trim()},vHA=function(g){return g.replace(/^\$/,"")};function s$g(g){var A;const I=[];return(A=JSON.stringify(g,function(e,t){if(typeof t=="bigint")return t.toString();if(typeof t!="function"&&typeof t!="symbol"){if(t instanceof Error)return{name:t.name,message:t.message,stack:t.stack};if(t&&typeof t=="object"){for(;I.length>0&&I[I.length-1]!==this;)I.pop();if(I.includes(t))return"[Circular]";I.push(t)}return t}}))!==null&&A!==void 0?A:"null"}const a$g=Object.prototype,THA=a$g.hasOwnProperty,HlA=a$g.toString,cB=Array.isArray||function(g){return HlA.call(g)==="[object Array]"},C0=g=>typeof g=="function",yC=g=>g===Object(g)&&!cB(g),sk=g=>{if(yC(g)){for(const A in g)if(THA.call(g,A))return!1;return!0}return!1},Ye=g=>g===void 0,qC=g=>HlA.call(g)=="[object String]",ZAA=g=>qC(g)&&g.trim().length===0,Pc=g=>g===null,hC=g=>Ye(g)||Pc(g),Gh=g=>HlA.call(g)=="[object Number]"&&g==g,nJ=g=>Gh(g)&&g>0,Fm=g=>HlA.call(g)==="[object Boolean]",Dct=g=>yB(hct,g),dct=g=>yB(lct,g);function r$g(g){return g===null||typeof g!="object"}function vlA(g,A){return{}.toString.call(g)===`[object ${A}]`}function Aq(g){switch({}.toString.call(g)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object DOMError]":case"[object WebAssembly.Exception]":return!0;default:return c$g(g,Error)}}function qHA(g){return"u">typeof Event&&c$g(g,Event)}function c$g(g,A){try{return g instanceof A}catch{return!1}}const yct=[!0,"true",1,"1","yes"],ZHA=g=>yB(yct,g),wct=[!1,"false",0,"0","no"];function h$g(g,A,I,e,t,o,B){try{var C=g[o](B),Q=C.value}catch(i){return void I(i)}C.done?A(Q):Promise.resolve(Q).then(e,t)}function Qa(g){return function(){var A=this,I=arguments;return new Promise(function(e,t){var o=g.apply(A,I);function B(Q){h$g(o,e,t,B,C,"next",Q)}function C(Q){h$g(o,e,t,B,C,"throw",Q)}B(void 0)})}}const uct=["amazonbot","amazonproductbot","app.hypefactors.com","applebot","archive.org_bot","awariobot","backlinksextendedbot","baiduspider","bingbot","bingpreview","chrome-lighthouse","dataforseobot","deepscan","duckduckbot","facebookexternal","facebookcatalog","http://yandex.com/bots","hubspot","ia_archiver","leikibot","linkedinbot","meta-externalagent","mj12bot","msnbot","nessus","petalbot","pinterestbot","prerender","rogerbot","screaming frog","sebot-wa","sitebulb","slackbot","slurp","trendictionbot","turnitin","twitterbot","vercel-screenshot","vercelbot","yahoo! slurp","yandexbot","zoombot","bot.htm","bot.php","(bot;","bot/","crawler","ahrefsbot","ahrefssiteaudit","semrushbot","siteauditbot","splitsignalbot","gptbot","oai-searchbot","chatgpt-user","perplexitybot","better uptime bot","sentryuptimebot","uptimerobot","headlesschrome","cypress","google-hoteladsverifier","adsbot-google","apis-google","duplexweb-google","feedfetcher-google","google favicon","google web preview","google-read-aloud","googlebot","googleother","google-cloudvertexbot","googleweblight","mediapartners-google","storebot-google","google-inspectiontool","bytespider"],TlA=new Map,l$g=function(g,A=[]){if(!g)return!1;const I=(function(B,C){let Q="";for(let i=0;C.length>i;i++){const E=C[i];Q+=E.length+":"+E}return B.length+":"+B+"|"+C.length+":"+Q})(g,A),e=TlA.get(I);if(e!==void 0)return e;const t=g.toLowerCase(),o=uct.concat(A).some(B=>t.indexOf(B.toLowerCase())!==-1);return 256>TlA.size||TlA.clear(),TlA.set(I,o),o};function yx(g,A,I,e,t){return A>I&&(e.warn("min cannot be greater than max."),A=I),Gh(g)?g>I?(e.warn(" cannot be greater than max: "+I+". Using max value instead."),I):A>g?(e.warn(" cannot be less than min: "+A+". Using min value instead."),A):g:(e.warn(" must be a number. using max or fallback. max: "+I+", fallback: "+t),yx(t??I,A,I,e))}var Gct=class{constructor(A){this.C={},this.I=A.I,this.R=yx(A.bucketSize,0,100,A.$),this.A=yx(A.refillRate,0,this.R,A.$),this.O=yx(A.refillInterval,0,864e5,A.$)}F(A,I){const e=Math.floor((I-A.lastAccess)/this.O);e>0&&(A.tokens=Math.min(A.tokens+e*this.A,this.R),A.lastAccess=A.lastAccess+e*this.O)}consumeRateLimit(A){var I;const e=Date.now(),t=String(A);let o=this.C[t];return o?this.F(o,e):(o={tokens:this.R,lastAccess:e},this.C[t]=o),o.tokens===0||(o.tokens--,o.tokens===0&&((I=this.I)===null||I===void 0||I.call(this,A)),o.tokens===0)}stop(){this.C={}}};const gq="Mobile",OAA="Android",qlA="Tablet",D$g="Android Tablet",d$g="iPad",y$g="Apple Watch",ZlA="Safari",OlA="BlackBerry",w$g="Samsung Internet",WlA="Chrome",u$g="Chrome iOS",G$g="Internet Explorer",m$g="Internet Explorer Mobile",p$g="Opera",k$g="Microsoft Edge",VlA="Firefox",M$g="Firefox iOS",jlA="Nintendo",zlA="PlayStation",XlA="Xbox",S$g="Android Mobile",f$g="Mobile Safari",OHA="Windows",R$g="Windows Phone",N$g="Nokia",WHA="Ouya",mct="Generic "+gq.toLowerCase(),x$g="Generic "+qlA.toLowerCase(),VHA="Konqueror",F$g="Oculus Browser",U$g="Vivaldi",J$g="Yandex",P$g="Whale",K$g="DuckDuckGo",L$g="Pale Moon",Y$g="Waterfox",jHA="Brave",_$g="Claude",b$g="Codex",H$g="ChatGPT",v$g="Google Search App",zHA=new RegExp("Version/(\\d+(\\.\\d+)?)"),XHA=new RegExp("(Claude|Codex|ChatGPT)\\/(\\d+(\\.\\d+)?)"),pct=new RegExp(XlA,"i"),kct=new RegExp("PlayStation \\w+","i"),Mct=new RegExp("Nintendo \\w+","i"),$HA=new RegExp("BlackBerry|PlayBook|BB10","i"),Sct={"NT3.51":"NT 3.11","NT4.0":"NT 4.0","5.0":"2000",5.1:"XP",5.2:"XP","6.0":"Vista",6.1:"7",6.2:"8",6.3:"8.1",6.4:"10","10.0":"10"},T$g=function(g,A,I,e){return A=A||"",(function(o){return o?.brave?jHA:null})(I)||(e?.detectGoogleSearchApp&&yB(g,"GSA/")?v$g:yB(g," OPR/")&&yB(g,"Mini")?"Opera Mini":yB(g," OPR/")?p$g:$HA.test(g)?OlA:yB(g,"IEMobile")||yB(g,"WPDesktop")?m$g:yB(g,"OculusBrowser")?F$g:yB(g,"SamsungBrowser")?w$g:yB(g,"Edge")||yB(g,"Edg/")?k$g:yB(g,"Vivaldi/")?U$g:yB(g,"YaBrowser/")?J$g:yB(g,"Whale/")?P$g:yB(g,"DuckDuckGo/")||yB(g,"Ddg/")?K$g:yB(g,"Claude/")?_$g:yB(g,"Codex/")?b$g:yB(g,"ChatGPT/")?H$g:yB(g,"FBIOS")?"Facebook Mobile":yB(g,"UCWEB")||yB(g,"UCBrowser")?"UC Browser":yB(g,"CriOS")?u$g:yB(g,"CrMo")||yB(g,WlA)?WlA:yB(g,OAA)&&yB(g,ZlA)?S$g:yB(g,"FxiOS")?M$g:yB(g.toLowerCase(),VHA.toLowerCase())?VHA:yB(g,"Brave/")?jHA:((o,B)=>B&&yB(B,"Apple")||(function(C){return yB(C,ZlA)&&!yB(C,WlA)&&!yB(C,OAA)})(o))(g,A)?yB(g,gq)?f$g:ZlA:yB(g,"PaleMoon/")?L$g:yB(g,"Waterfox/")?Y$g:yB(g,VlA)?VlA:yB(g,"MSIE")||yB(g,"Trident/")?G$g:yB(g,"Gecko")?VlA:"")},fct={[m$g]:[new RegExp("rv:(\\d+(\\.\\d+)?)")],[k$g]:[new RegExp("Edge?\\/(\\d+(\\.\\d+)?)")],[WlA]:[new RegExp("(Chrome|CrMo)\\/(\\d+(\\.\\d+)?)")],[u$g]:[new RegExp("CriOS\\/(\\d+(\\.\\d+)?)")],"UC Browser":[new RegExp("(UCBrowser|UCWEB)\\/(\\d+(\\.\\d+)?)")],[ZlA]:[zHA],[f$g]:[zHA],[p$g]:[new RegExp("(Opera|OPR)\\/(\\d+(\\.\\d+)?)")],[VlA]:[new RegExp("Firefox\\/(\\d+(\\.\\d+)?)")],[M$g]:[new RegExp("FxiOS\\/(\\d+(\\.\\d+)?)")],[VHA]:[new RegExp("Konqueror[:/]?(\\d+(\\.\\d+)?)","i")],[OlA]:[new RegExp("BlackBerry (\\d+(\\.\\d+)?)"),zHA],[S$g]:[new RegExp("android\\s(\\d+(\\.\\d+)?)","i")],[w$g]:[new RegExp("SamsungBrowser\\/(\\d+(\\.\\d+)?)")],[F$g]:[new RegExp("OculusBrowser\\/(\\d+(\\.\\d+)?)")],[U$g]:[new RegExp("Vivaldi\\/(\\d+(\\.\\d+)?)")],[J$g]:[new RegExp("YaBrowser\\/(\\d+(\\.\\d+)?)")],[P$g]:[new RegExp("Whale\\/(\\d+(\\.\\d+)?)")],[jHA]:[new RegExp("Brave\\/(\\d+(\\.\\d+)?)")],[_$g]:[XHA],[b$g]:[XHA],[H$g]:[XHA],[K$g]:[new RegExp("(DuckDuckGo|Ddg)\\/(\\d+(\\.\\d+)?)")],[L$g]:[new RegExp("PaleMoon\\/(\\d+(\\.\\d+)?)")],[Y$g]:[new RegExp("Waterfox\\/(\\d+(\\.\\d+)?)")],[v$g]:[new RegExp("GSA\\/(\\d+(\\.\\d+)?)")],[G$g]:[new RegExp("(rv:|MSIE )(\\d+(\\.\\d+)?)")],Mozilla:[new RegExp("rv:(\\d+(\\.\\d+)?)")]},Rct=function(g,A,I,e){const t=T$g(g,A,I,e),o=fct[t];if(Ye(o))return null;for(let B=0;o.length>B;B++){const C=g.match(o[B]);if(C)return parseFloat(C[C.length-2])}return null},q$g=[[new RegExp("Xbox; Xbox (.*?)[);]","i"),g=>[XlA,g&&g[1]||""]],[new RegExp(jlA,"i"),[jlA,""]],[new RegExp(zlA,"i"),[zlA,""]],[$HA,[OlA,""]],[new RegExp(OHA,"i"),(g,A)=>{if(/Phone/.test(A)||/WPDesktop/.test(A))return[R$g,""];if(new RegExp(gq).test(A)&&!/IEMobile\b/.test(A))return["Windows Mobile",""];const I=/Windows NT ([0-9.]+)/i.exec(A);if(I&&I[1]){let e=Sct[I[1]]||"";return/arm/i.test(A)&&(e="RT"),[OHA,e]}return[OHA,""]}],[/((iPhone|iPad|iPod).*?OS (\d+)_(\d+)_?(\d+)?|iPhone)/,g=>g&&g[3]?["iOS",[g[3],g[4],g[5]||"0"].join(".")]:["iOS",""]],[/(watch.*\/(\d+\.\d+\.\d+)|watch os,(\d+\.\d+),)/i,g=>{let A="";return g&&g.length>=3&&(A=Ye(g[2])?g[3]:g[2]),["watchOS",A]}],[new RegExp("(Android (\\d+)\\.(\\d+)\\.?(\\d+)?|Android)","i"),g=>g&&g[2]?[OAA,[g[2],g[3],g[4]||"0"].join(".")]:[OAA,""]],[/Mac OS X (\d+)[_.](\d+)[_.]?(\d+)?/i,g=>{const A=["Mac OS X",""];return g&&g[1]&&(A[1]=[g[1],g[2],g[3]||"0"].join(".")),A}],[/Mac/i,["Mac OS X",""]],[/CrOS/,["Chrome OS",""]],[/Linux|debian/i,["Linux",""]]],Z$g=function(g){for(let A=0;q$g.length>A;A++){const[I,e]=q$g[A],t=I.exec(g),o=t&&(C0(e)?e(t,g):e);if(o)return o}return["",""]},O$g=function(g){return Mct.test(g)?jlA:kct.test(g)?zlA:pct.test(g)?XlA:new RegExp(WHA,"i").test(g)?WHA:new RegExp("(Windows Phone|WPDesktop)","i").test(g)?R$g:/iPad/.test(g)?d$g:/iPod/.test(g)?"iPod Touch":/iPhone/.test(g)?"iPhone":/(watch)(?: ?os[,/]|\d,\d\/)[\d.]+/i.test(g)?y$g:$HA.test(g)?OlA:/(kobo)\s(ereader|touch)/i.test(g)?"Kobo":new RegExp(N$g,"i").test(g)?N$g:/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i.test(g)||/(kf[a-z]+)( bui|\)).+silk\//i.test(g)?"Kindle Fire":/(Android|ZTE)/i.test(g)?new RegExp(gq).test(g)&&!/(9138B|TB782B|Nexus [97]|pixel c|HUAWEISHT|BTV|noble nook|smart ultra 6)/i.test(g)||/pixel[\daxl ]{1,6}/i.test(g)&&!/pixel c/i.test(g)||/(huaweimed-al00|tah-|APA|SM-G92|i980|zte|U304AA)/i.test(g)||/lmy47v/i.test(g)&&!/QTAQZ3/i.test(g)?OAA:D$g:new RegExp("(pda|Mobile)","i").test(g)?mct:new RegExp(qlA,"i").test(g)&&!new RegExp("Tablet pc","i").test(g)?x$g:""},Nct=function(g,A){var I;const e=O$g(g);return e===d$g||e===D$g||e==="Kobo"||e==="Kindle Fire"||e===x$g?qlA:e===jlA||e===XlA||e===zlA||e===WHA?"Console":e===y$g?"Wearable":e?gq:A?.userAgentDataPlatform==="Android"&&((I=A?.maxTouchPoints)!==null&&I!==void 0?I:0)>0?600>Math.min((t=A?.screenWidth)!==null&&t!==void 0?t:0,(o=A?.screenHeight)!==null&&o!==void 0?o:0)/((B=A?.devicePixelRatio)!==null&&B!==void 0?B:1)?gq:qlA:"Desktop";var t,o,B},A6A=/\bFBAV\/(\d+(?:\.\d+)*)/i,W$g=[[/\bInstagram(?:[ /](\d+(?:\.\d+)*))?\b/i,"Instagram"],[/\bBarcelona[ /](\d+(?:\.\d+)*)?/i,"Threads"],[/\b(?:MessengerForiOS|(?:FBAN|FB_IAB)\/Orca-Android)\b/i,"Messenger",A6A],[/\bFBAN\/EMA\b/i,"Facebook Lite",A6A],[/\b(?:FBIOS|(?:FBAN|FB_IAB)\/(?:FB4A|FBIOS))\b/i,"Facebook",A6A],[/\bLinkedInApp(?:\]?\/(\d+(?:\.\d+)*))?\b/i,"LinkedIn"],[/\bTwitter(?:Android| for (?:iPhone|iPad|Android))(?:\/(\d+(?:\.\d+)*))?\b/i,"Twitter"],[/\b(?:musical_ly|trill)(?:[_/](\d+\.\d+(?:\.\d+)*))?(?=\b|_)/i,"TikTok",/\bapp_version\/(\d+(?:\.\d+)*)/i],[/\b(?:MicroMessenger|WeChat)\/(\d+(?:\.\d+)*)?/i,"WeChat"],[/\bLine\/(\d+(?:\.\d+)*)?/i,"Line"],[/\bGSA\/(\d+(?:\.\d+)*)?/i,"Google"],[/\[Pinterest\/(?:iOS|Android)\b|\bPinterest(?: for (?:Android(?: Tablet)?|iOS))?\/(\d+(?:\.\d+)*)/i,"Pinterest"],[/\b(?:WA4A|WAiOS)\/(\d+(?:\.\d+)*)?/i,"WhatsApp"],[/\bSnapchat[ /](\d+(?:\.\d+)*)?/i,"Snapchat"],[/\bBing(?:Web|Sapphire)\/(\d+(?:\.\d+)*)?/i,"Bing"],[/\bNAVER\(inapp; search;/i,"Naver",/\bNAVER\(inapp; search;[^;)]*; (\d+(?:\.\d+)*)/i],[/\bKAKAOTALK[ /](\d+\.\d+(?:\.\d+)*)?/i,"KakaoTalk"]],g6A="[Truncated]",WAA="[Unserializable]";function Iq(g){let A="";for(let I=0;g.length>I;I++){const e=g.charCodeAt(I);if(55296>e||e>56319)A+=56320>e||e>57343?g[I]:"�";else{const t=g.charCodeAt(I+1);56320>t||t>57343?A+="�":(A+=g[I]+g[I+1],I++)}}return A}function V$g(g,A){if(!A)return g;let I=[];try{I=Object.keys(A)}catch{I=[]}for(const e of I){let t;try{t=A[e]}catch{t=WAA}Object.defineProperty(g,e,{value:t,enumerable:!0,writable:!0,configurable:!0})}return g}const $lA=3e5;var j$g=class{record(A){if(A.kind==="too-large")return;if(A.kind!=="retry-later")return void this.reset();if(!A.retryAfterMs)return;const I=this.isOpen(),e=Date.now(),t=Math.min(A.retryAfterMs,$lA);if(!I)return this.ts=e,void(this.es=e+t);this.es=Math.max(this.es,Math.min(e+t,this.ts+$lA))}remainingMs(){const A=Date.now();if(this.ts-5e3>A)return this.reset(),0;const I=Math.min($lA,Math.max(0,this.es-A));return I===0&&this.reset(),I}isOpen(){return this.remainingMs()>0}reset(){this.es=0,this.ts=0}constructor(){this.es=0,this.ts=0}};const xct=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function z$g(g,A){return typeof(I=g)=="string"&&xct.test(I)?g:A();var I}function X$g(g,A){const I=new Error(A);try{Object.defineProperty(I,"name",{value:g,writable:!0,enumerable:!0,configurable:!0})}catch{}return I}function i3(g){return g&&g.split("#")[0]}function $$g(g){try{return g()}catch{return}}function AAI(g,A){const I=setTimeout(g,A);return I!=null&&I.unref&&I?.unref(),I}function gAI(g,A,I){return IAI.apply(this,arguments)}function IAI(){return(IAI=Qa(function*(g,A,I){let e;try{return yield Promise.race([g,new Promise((t,o)=>{e=AAI(()=>{try{I?.(),t()}catch(B){o(B)}},A)})])}finally{clearTimeout(e)}})).apply(this,arguments)}function VAA(g){return VAA=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(A){return typeof A}:function(A){return A&&typeof Symbol=="function"&&A.constructor===Symbol&&A!==Symbol.prototype?"symbol":typeof A},VAA(g)}function Fct(g,A,I){return(A=(function(e){var t=(function(o){if(VAA(o)!="object"||!o)return o;var B=o[Symbol.toPrimitive];if(B!==void 0){var C=B.call(o,"string");if(VAA(C)!="object")return C;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(o)})(e);return VAA(t)=="symbol"?t:t+""})(A))in g?Object.defineProperty(g,A,{value:I,enumerable:!0,configurable:!0,writable:!0}):g[A]=I,g}function eAI(g,A){var I=Object.keys(g);if(Object.getOwnPropertySymbols){var e=Object.getOwnPropertySymbols(g);A&&(e=e.filter(function(t){return Object.getOwnPropertyDescriptor(g,t).enumerable})),I.push.apply(I,e)}return I}function QI(g){for(var A=1;arguments.length>A;A++){var I=arguments[A]!=null?arguments[A]:{};A%2?eAI(Object(I),!0).forEach(function(e){Fct(g,e,I[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(g,Object.getOwnPropertyDescriptors(I)):eAI(Object(I)).forEach(function(e){Object.defineProperty(g,e,Object.getOwnPropertyDescriptor(I,e))})}return g}let jAA,tAI,oAI,eq;function Uct(g){var A;const I=globalThis._posthogChunkIds,e=globalThis._debugIds;if(!I&&!e)return;const t=I?Object.keys(I):[],o=e?Object.keys(e):[];if(eq&&BAI(I,t,tAI)&&BAI(e,o,oAI))return eq;tAI=I?QI({},I):void 0,oAI=e?QI({},e):void 0,eq={},(A=jAA)!==null&&A!==void 0||(jAA={});const B=(C,Q)=>{for(const E of C){const n=Q[E];if(!n)continue;const s=jAA?.[E];if(s){eq[s]=n;continue}const r=g(E);for(let a=r.length-1;a>=0;a--){var i;const c=(i=r[a])===null||i===void 0?void 0:i.filename;if(c){eq[c]=n,jAA[E]=c;break}}}};return e&&B(o,e),I&&B(t,I),eq}function BAI(g,A,I){return g&&I?A.length===Object.keys(I).length&&A.every(e=>g[e]===I[e]):g===I}var Jct=class{constructor(A,I,e=[]){this.coercers=A,this.stackParser=I,this.modifiers=e}buildFromUnknown(A,I={}){const e=I&&I.mechanism||{handled:!0,type:"generic"},t=this.buildCoercingContext(e,I,0).apply(A),o=this.buildParsingContext(I),B=this.parseStacktrace(t,o);return{$exception_list:this.convertToExceptionList(B,e),$exception_level:"error"}}modifyFrames(A){var I=this;return Qa(function*(){for(const e of A)e.stacktrace&&e.stacktrace.frames&&cB(e.stacktrace.frames)&&(e.stacktrace.frames=yield I.applyModifiers(e.stacktrace.frames));return A})()}coerceFallback(A){var I;return{type:"Error",value:"Unknown error",stack:(I=A.syntheticException)===null||I===void 0?void 0:I.stack,synthetic:!0}}parseStacktrace(A,I){var e;let t,o;if(A.cause!=null&&(t=this.parseStacktrace(A.cause,I)),A.stack!=""&&A.stack!=null)try{o=this.applyChunkIds(this.stackParser(A.stack,A.synthetic?I.skipFirstLines:0),I.chunkIdMap)}catch{}return QI(QI({},A),{},{cause:t,stack:o,errors:(e=A.errors)===null||e===void 0?void 0:e.map(B=>this.parseStacktrace(B,I))})}applyChunkIds(A,I){return A.map(e=>(e.filename&&I&&(e.chunk_id=I[e.filename]),e))}applyCoercers(A,I){for(const e of this.coercers)if(e.match(A))return e.coerce(A,I);return this.coerceFallback(I)}applyModifiers(A){var I=this;return Qa(function*(){let e=A;for(const t of I.modifiers)e=yield t(e);return e})()}convertToExceptionList(A,I){const e=[],t=(o,B,C)=>{var Q;const i=e.length,E=B===void 0?QI(QI({type:typeof I.type=="string"&&I.type.length>0?I.type:"generic"},typeof I.handled=="boolean"?{handled:I.handled}:I.handled===void 0?{handled:!0}:{}),{},{synthetic:typeof I.synthetic=="boolean"?I.synthetic:o.synthetic,exception_id:i}):{type:"chained",source:C,synthetic:o.synthetic,exception_id:i,parent_id:B},n={type:o.type,value:o.value,mechanism:E};o.stack&&(n.stacktrace={type:"raw",frames:o.stack}),e.push(n),o.cause&&t(o.cause,i,"cause");for(const s of(Q=o.errors)!==null&&Q!==void 0?Q:[])t(s,i,"member")};return t(A),e}buildParsingContext(A){var I;return{chunkIdMap:Uct(this.stackParser),skipFirstLines:(I=A.skipFirstLines)!==null&&I!==void 0?I:1}}getAggregateErrors(A){try{if(Aq(A)){let e=Object.getPrototypeOf(A);for(let t=0;e&&100>t;t++){var I;const o=(I=Object.getOwnPropertyDescriptor(e,"constructor"))===null||I===void 0?void 0:I.value;if(typeof o=="function"&&o.name==="AggregateError"){const B=A.errors;return cB(B)?B:void 0}e=Object.getPrototypeOf(e)}}}catch{}}buildCoercingContext(A,I,e=0){let t=0,o=0,B=!1;const C=new Set,Q=[],i={},E=(r,a,c=0)=>{const h=n(a,c),l=h.apply;if(h.apply=G=>{Q.push(r);try{return l(G)}finally{Q.pop()}},c>4||c>0&&Q.indexOf(r)!==-1)return this.coerceFallback(h);const D=typeof r=="object"&&r!==null||typeof r=="function";if(c===0&&t>=50||D&&C.has(r))return;D&&C.add(r),c===0&&t++;const d=this.getAggregateErrors(r);let y,w;B||(B=!!d);try{if(y=this.applyCoercers(r,h),!y)throw i}catch(G){if(G===i)return void(c===0&&t--);if(!B)throw G;y=this.coerceFallback(h)}if(!d||t>=50)return y;try{w=d.length}catch{return y}if(!Number.isInteger(w)||0>w||w>4294967295)return y;const u=[];for(let G=0;50>t&&1e3>o&&w>G;G++){let m;o++;try{m=h.next(d[G])}catch{t++,m=this.coerceFallback(n(a+1))}m&&u.push(m)}return QI(QI({},y),{},{errors:u})},n=(r,a=0)=>QI(QI({},I),{},{syntheticException:r==0?I.syntheticException:void 0,mechanism:r==0?A:{},apply(c){const h=E(c,r,a+1);if(!h)throw i;return h},next:c=>E(c,r+1)}),s=n(e);return QI(QI({},s),{},{apply:r=>{var a;return(a=E(r,e))!==null&&a!==void 0?a:this.coerceFallback(s)}})}};const Pct=/^([a-z][a-z0-9.+-]+):/i,Kct=["http","https","file","blob","app","capacitor","ionic","webpack","webpack-internal","ng"];function Lct(g){if(!g||g==="<anonymous>")return!1;const A=Pct.exec(g);return!A||Kct.includes(A[1].toLowerCase())}function I6A(g,A,I,e,t){const o={platform:g,filename:A,function:I==="<anonymous>"?"?":I,in_app:Lct(A)};return Ye(e)||(o.lineno=e),Ye(t)||(o.colno=t),o}const CAI=(g,A)=>{const I=g.indexOf("safari-extension")!==-1,e=g.indexOf("safari-web-extension")!==-1;return I||e?[g.indexOf("@")!==-1?g.split("@")[0]:"?",I?`safari-extension:${A}`:`safari-web-extension:${A}`]:[g,A]},Yct=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,_ct=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,bct=/\((\S*)(?::(\d+))(?::(\d+))\)/,Hct=(g,A)=>{const I=Yct.exec(g);if(I){const[,t,o,B]=I;return I6A(A,t,"?",+o,+B)}const e=_ct.exec(g);if(e){if(e[2]&&e[2].indexOf("eval")===0){const B=bct.exec(e[2]);B&&(e[2]=B[1],e[3]=B[2],e[4]=B[3])}const[t,o]=CAI(e[1]||"?",e[2]);return I6A(A,o,t,e[3]?+e[3]:void 0,e[4]?+e[4]:void 0)}},vct=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,Tct=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,qct=(g,A)=>{const I=vct.exec(g);if(I){if(I[3]&&I[3].indexOf(" > eval")>-1){const o=Tct.exec(I[3]);o&&(I[1]=I[1]||"eval",I[3]=o[1],I[4]=o[2],I[5]="")}let e=I[3],t=I[1]||"?";return[t,e]=CAI(t,e),I6A(A,e,t,I[4]?+I[4]:void 0,I[5]?+I[5]:void 0)}},QAI=/\(error: (.*)\)/;function e6A(g,A){return g.filename===A.filename&&g.function===A.function&&g.module===A.module&&g.lineno===A.lineno&&g.colno===A.colno}function Zct(g){for(let A=1;10>=A;A++){const I=g.length-2*A;if(0>I)break;let e=!0;for(let t=0;A>t;t++)if(!e6A(g[I+t],g[I+A+t])){e=!1;break}if(e){for(let t=0;A>t;t++)g[I+t]=g[I+A+t];return g.length=I+A,{start:I,length:A}}}}function Oct(g,A){const I=A.start+A.length,e=EAI(g,A);e&&g.splice(I+e===g.length?I:A.start,e)}function iAI(g,A){let I=A.start;for(;I>0&&e6A(g[I-1],g[I-1+A.length]);)I--;return A.start-I}function EAI(g,A){const I=A.start+A.length;let e=I;for(;g.length>e&&e6A(g[e],g[e-A.length]);)e++;return e-I}function Wct(g,A){const I=A[0];let e=g.length-(I?iAI(g,I):0);for(const t of A)e-=EAI(g,t);return e}function Vct(g,A,I){for(let e=0;g.length>e;e++){const t=g[(A+e)%g.length],o=g[(I+e)%g.length];if(t!==o)return o>t}return!1}var jct=class{match(A){return this.isDOMException(A)||this.isDOMError(A)}coerce(A,I){const e=qC(A.stack);return{type:this.getType(A),value:this.getValue(A),stack:e?A.stack:void 0,cause:A.cause?I.next(A.cause):void 0,synthetic:!1}}getType(A){return this.isDOMError(A)?"DOMError":"DOMException"}getValue(A){const I=A.name||(this.isDOMError(A)?"DOMError":"DOMException");return A.message?`${I}: ${A.message}`:I}isDOMException(A){return vlA(A,"DOMException")}isDOMError(A){return vlA(A,"DOMError")}},zct=class{match(A){return Aq(A)}coerce(A,I){var e;const t=this.getStack(A),o=t===void 0?(e=I.syntheticException)===null||e===void 0?void 0:e.stack:void 0,B=!!o;return{type:this.getType(A),value:this.getMessage(A,I),stack:t??o,cause:A.cause?I.next(A.cause):void 0,synthetic:B}}getType(A){return A.name||A.constructor.name}getMessage(A,I){const e=A.message;return String(e.error&&typeof e.error.message=="string"?e.error.message:e)}getStack(A){try{const I=A.stacktrace;if(typeof I=="string"&&I.length>0)return I;const e=A.stack;return typeof e=="string"&&e.length>0?e:void 0}catch{return}}},Xct=class{match(A){return!!vlA(A,"ErrorEvent")&&(A.error!=null||this.hr(A))}coerce(A,I){var e;if(A.error!=null)return I.apply(A.error);const t=I.apply(A.message);return QI(QI({},t),{},{stack:(e=this.vr(A))!==null&&e!==void 0?e:t.stack,synthetic:!0})}hr(A){return qC(A.message)&&A.message.length>0}vr(A){var I,e;const t=A,o=(I=t.lineno)!==null&&I!==void 0?I:0,B=(e=t.colno)!==null&&e!==void 0?e:0;if(qC(t.filename)&&t.filename.length!==0&&o!==0)return`Error
1068
+ at ${t.filename}:${o}:${B}`}};const $ct=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i;var Aht=class{match(A){return typeof A=="string"}coerce(A,I){var e;const[t,o]=this.getInfos(A);return{type:t??"Error",value:o??A,stack:(e=I.syntheticException)===null||e===void 0?void 0:e.stack,synthetic:!0}}getInfos(A){let I="Error",e=A;const t=A.match($ct);return t&&(I=t[1],e=t[2]),[I,e]}};const ght=["fatal","error","warning","log","info","debug"];function nAI(g,A=40){const I=Object.keys(g);if(I.sort(),!I.length)return"[object has no keys]";for(let e=I.length;e>0;e--){const t=I.slice(0,e).join(", ");if(A>=t.length)return e===I.length?t:t.length>A?`${t.slice(0,A)}...`:t}return""}var Iht=class{match(A){return typeof A=="object"&&A!==null}coerce(A,I){var e,t;const o=this.getErrorPropertyFromObject(A);return o?I.apply(o):{type:this.getType(A),value:this.getValue(A),stack:(e=this.getStack(A))!==null&&e!==void 0?e:(t=I.syntheticException)===null||t===void 0?void 0:t.stack,level:this.isSeverityLevel(A.level)?A.level:"error",synthetic:!0}}getType(A){if(qHA(A))return A.constructor.name;const I="name"in A?A.name:void 0;return qC(I)&&!ZAA(I)?I:"Error"}getValue(A){if("name"in A&&typeof A.name=="string"){let e=`'${A.name}' captured as exception`;return"message"in A&&typeof A.message=="string"&&(e+=` with message: '${A.message}'`),e}if("message"in A&&typeof A.message=="string")return A.message;const I=this.getObjectClassName(A);return`${I&&I!=="Object"?`'${I}'`:"Object"} captured as exception with keys: ${nAI(A)}`}isSeverityLevel(A){return qC(A)&&!ZAA(A)&&ght.indexOf(A)>=0}getStack(A){try{return qC(A.stacktrace)&&A.stacktrace.length>0?A.stacktrace:qC(A.stack)&&A.stack.length>0?A.stack:void 0}catch{return}}getErrorPropertyFromObject(A){for(const I in A)if({}.hasOwnProperty.call(A,I)){const e=A[I];if(Aq(e))return e}}getObjectClassName(A){try{const I=Object.getPrototypeOf(A);return I?I.constructor.name:void 0}catch{return}}},eht=class{match(A){return qHA(A)}coerce(A,I){var e;const t=A.constructor.name;return{type:t,value:`${t} captured as exception with keys: ${nAI(A)}`,stack:(e=I.syntheticException)===null||e===void 0?void 0:e.stack,synthetic:!0}}},tht=class{match(A){return r$g(A)}coerce(A,I){var e;return{type:"Error",value:`Primitive value captured as exception: ${String(A)}`,stack:(e=I.syntheticException)===null||e===void 0?void 0:e.stack,synthetic:!0}}},oht=class{match(A){return vlA(A,"PromiseRejectionEvent")||this.isCustomEventWrappingRejection(A)}isCustomEventWrappingRejection(A){if(!qHA(A))return!1;try{const I=A.detail;return I!=null&&typeof I=="object"&&"reason"in I}catch{return!1}}coerce(A,I){var e;const t=this.getUnhandledRejectionReason(A);return r$g(t)?{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(t)}`,stack:(e=I.syntheticException)===null||e===void 0?void 0:e.stack,synthetic:!0}:I.apply(t)}getUnhandledRejectionReason(A){try{if("reason"in A)return A.reason;if("detail"in A&&A.detail!=null&&typeof A.detail=="object"&&"reason"in A.detail)return A.detail.reason}catch{}return A}};const ADA="$message",gDA="$timestamp",Bht=new Set([ADA,gDA]),t6A={enabled:!0,max_bytes:32768};function IDA(g){var A;return g?{enabled:(A=g.enabled)!==null&&A!==void 0?A:t6A.enabled,max_bytes:Qht(g.max_bytes,t6A.max_bytes)}:QI({},t6A)}var Cht=class{constructor(A){this.ns=[],this.ss=0,this.Ar=IDA(A)}setConfig(A){this.Ar=IDA(A),this.rs()}add(A){const I=(function(t){let o;try{o=s$g(t)}catch{return}try{const B=JSON.parse(o);if(!yC(B))return;const C=B,Q=C[ADA],i=C[gDA];return!qC(Q)||Q.trim().length===0||!qC(i)&&!Gh(i)?void 0:{step:C,json:o}}catch{return}})(A);if(!I)return;const e=(function(t){if("u">typeof TextEncoder)return new TextEncoder().encode(t).length;const o=encodeURIComponent(t);let B=0;for(let C=0;o.length>C;C++)o[C]==="%"?(B+=1,C+=2):B+=1;return B})(I.json);e>this.Ar.max_bytes||(this.ns.push({step:I.step,bytes:e}),this.ss+=e,this.rs())}getAttachable(){return this.ns.map(A=>A.step)}clear(){this.ns=[],this.ss=0}size(){return this.ns.length}rs(){for(;this.ss>this.Ar.max_bytes&&this.ns.length>0;){const A=this.ns.shift();A&&(this.ss-=A.bytes)}}};function Qht(g,A){if(!Gh(g)||g===1/0||g===-1/0)return A;const I=Math.floor(g);return 0>I?A:I}const sAI=g=>{if(typeof g!="string")return g;try{return JSON.parse(g)}catch{return g}};function aAI(g){return typeof g=="string"||g}function rAI(g){return typeof g=="string"?g:void 0}const iht=["$feature_flag","$feature_flag_response","$feature_flag_has_experiment","$feature_flag_id","$feature_flag_version","$feature_flag_reason","$feature_flag_request_id","$feature_flag_evaluated_at","$feature_flag_error","locally_evaluated","$groups","$process_person_profile","$geoip_disable","$current_url","$pathname","$referring_domain","utm_source","utm_medium","utm_campaign","utm_content","utm_term","gad_source","mc_cid","gclid","gclsrc","dclid","gbraid","wbraid","fbclid","msclkid","twclid","li_fat_id","igshid","ttclid","rdt_cid","epik","qclid","sccid","oppref","bfcid","irclid","_kx","$session_id","$window_id","$lib","$lib_version","$device_id","$is_server"],cAI="NativeGzipValidationError",o6A=g=>g.length>=2&&g[0]===31&&g[1]===139,hAI=(g,A)=>g===HHA.GZipJS||A===HHA.GZipJS||A==="gzip",lAI=g=>!(!g||typeof g!="object")&&("name"in g?String(g.name):"")==="NotReadableError";let zAA;const eDA=g=>{throw X$g(cAI,`Native gzip produced invalid output: ${g}`)},Eht=(DAI=Qa(function*(g,A){18>g.size&&eDA("too-short");const I=new Uint8Array(yield g.slice(0,10).arrayBuffer());o6A(I)&&I[2]===8||eDA("invalid-header");const e=new DataView(yield g.slice(g.size-8).arrayBuffer());e.getUint32(0,!0)!==(o=>{const B=(()=>{if(zAA)return zAA;zAA=[];for(let Q=0;256>Q;Q++){let i=Q;for(let E=0;8>E;E++)i=1&i?3988292384^i>>>1:i>>>1;zAA[Q]=i>>>0}return zAA})();let C=4294967295;for(let Q=0;o.length>Q;Q++)C=B[255&(C^o[Q])]^C>>>8;return(4294967295^C)>>>0})(A)&&eDA("invalid-crc");const t=A.length>>>0;e.getUint32(4,!0)!==t&&eDA("invalid-size")}),function(g,A){return DAI.apply(this,arguments)});var DAI;function B6A(){return B6A=Qa(function*(g,A=!0,I){try{const t=new TextEncoder().encode(g),o=new globalThis.CompressionStream("gzip"),B=o.writable.getWriter(),C=B.write(t).then(()=>B.close()).catch((e=Qa(function*(E){try{yield B.abort(E)}catch{}throw E}),function(E){return e.apply(this,arguments)})),Q=new Response(o.readable).blob(),[i]=yield Promise.all([Q,C]);return yield Eht(i,t),i}catch(t){if(I?.rethrow)throw t;return A&&console.error("Failed to gzip compress data",t),null}var e}),B6A.apply(this,arguments)}function dAI(g,A){if(g==null)return{};var I,e,t=(function(B,C){if(B==null)return{};var Q={};for(var i in B)if({}.hasOwnProperty.call(B,i)){if(C.includes(i))continue;Q[i]=B[i]}return Q})(g,A);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(g);for(e=0;o.length>e;e++)A.includes(I=o[e])||{}.propertyIsEnumerable.call(g,I)&&(t[I]=g[I])}return t}const sG="[redacted]",nht=/^[A-Za-z0-9+/\n\r]+=*$/,sht=/^[A-Za-z0-9_-]+={0,2}$/,aht=/[-_]/,rht=/^data:[^,\s]*;base64,/i,cht=/^[A-Za-z0-9+/_-]+={0,2}$/,hht=/\bph[a-z]_[A-Za-z0-9_-]{20,}\b/g,lht=/^(authorization|cookie|set-cookie|x-api-key|api[-_]?key|api[-_]?token|access[-_]?token|refresh[-_]?token|token|password|secret|client[-_]?secret|private[-_]?key)$/i,yAI=/[a-z][a-z0-9+.-]{0,63}:[^\s<>"]+/gi,Dht=/[\s<>"]/,wAI=new RegExp(yAI.source,"i"),uAI=/[a-z][a-z0-9+.-]{0,63}:\/\//i,dht=new RegExp(`^${uAI.source}`,"i"),yht=new RegExp(uAI.source,"gi"),wht=/(^|[-_./;])(auth|token|secret|password|passwd|pwd|credential|signature|sig|key|hmac|sas|bearer|jwt|session|sessionid)([-_./;]|$)/i,uht=/^(code|AWSAccessKeyId|GoogleAccessId|Policy)$/i,Ght=/[\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]/g,mht=/[A-Za-z0-9._%+-]{1,64}@[A-Za-z0-9.-]{1,255}\.[A-Za-z]{2,24}/g,pht=/\b(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\b/g,kht=/(^|[^\w:])((?:(?:[0-9A-Fa-f]{1,4}:){7}[0-9A-Fa-f]{1,4}|(?:[0-9A-Fa-f]{1,4}:){1,7}:|(?:[0-9A-Fa-f]{1,4}:){1,6}:[0-9A-Fa-f]{1,4}(?::[0-9A-Fa-f]{1,4}){0,5}|::(?:[0-9A-Fa-f]{1,4}(?::[0-9A-Fa-f]{1,4}){0,6})))(?=$|[^\w:])/g,Mht=/\b\d{3}[ .-]\d{2}[ .-]\d{4}\b/g,Sht=/\b\d(?:[ ./-]?\d){12,}\b/g,GAI=/\d+/g,fht=/(^|[^\w+])((?:\+?1[ ./-]?)?(?:\(\d{3}\)[ ./-]?|\d{3}[ ./-])\d{3}[ ./-]\d{4})(?![\w])/g,Rht=/(^|[^\w])(\+\d{1,3}(?:[ ./()-]{0,2}\d){7,13})(?![\w])/g;function C6A(g){return(function(A){return lht.test(A)})(g)||wht.test(g)||uht.test(g)}function Q6A(g){return g.split("&",129).length>128}function Nht(g,A,I){return C6A(g)||A.includes(";")&&(function(e){return e.split(";").some(t=>C6A(t.split("=",1)[0]))})(A)?sG:wAI.test(A)?I?E6A(A,{allowNestedUrls:!1,stripPunctuation:!0}):sG:A}function mAI(g,A){const I=new URLSearchParams;let e=!1,t=!1;for(const[o,B]of new URLSearchParams(g)){const C=tDA(o),Q=tDA(B);e||(e=C!==o||Q!==B);const i=Nht(C,Q,A);e||(e=i!==Q),t=C6A(C)||i!==Q,I.append(C,i)}return{changed:e,lastFieldSensitive:t,serialized:I.toString()}}function pAI(g,A){if(!g.includes("="))return{value:xht(g,A),lastFieldSensitive:!1};const I=mAI(g,A);return{value:I.changed?I.serialized:g,lastFieldSensitive:I.lastFieldSensitive}}function xht(g,A){return A?E6A(g,{allowNestedUrls:!1,stripPunctuation:!0}):wAI.test(g)?sG:g}function Fht(g,A,I){return g==="#"?!A.fragment&&(A.fragment=!0):g==="?"&&(A.fragment?I!=="="&&!A.fragmentQuery&&(A.fragmentQuery=!0):!A.query&&(A.query=!0))}function i6A(g,A){var I;if(g.length>8192&&dht.test(g))return sG;const{address:e,suffix:t}=A.stripPunctuation?(function(h){let l=h.length;for(;l>0&&".,;:!?)]}'".includes(h[l-1]);)l--;return{address:h.slice(0,l),suffix:h.slice(l)}})(g):{address:g,suffix:""};let o;try{o=new URL(e)}catch{return sG+t}const B=o.search.slice(1),C=o.hash!=="",Q=(function(h){const l=h.slice(1),D=l.indexOf("?");return 0>D?{head:l,tail:null}:{head:l.slice(0,D),tail:l.slice(D+1)}})(o.hash);if(Q6A(B)||Q6A(Q.head)||Q6A((I=Q.tail)!==null&&I!==void 0?I:""))return sG+t;let i=!1;(o.username||o.password)&&(o.username=sG,o.password="",i=!0);const E=mAI(B,A.allowNestedUrls);E.changed&&(o.search=E.serialized,i=!0);const n=pAI(Q.head,A.allowNestedUrls),s=Q.tail===null?null:(r=Q.tail,n.lastFieldSensitive?{value:r===""?"":sG,lastFieldSensitive:!0}:pAI(r,A.allowNestedUrls));var r;const a=s===null?n.value:`${n.value}?${s.value}`;a!==o.hash.slice(1)&&(o.hash=a,i=!0);const c=C?s??n:E;return(i?tDA(o.toString()):e)+(c.lastFieldSensitive?"":t)}function E6A(g,A){return g.replace(yAI,I=>(function(e,t){const o=(function(Q){if(!Q.includes("://"))return[];const i=[...Q.matchAll(yht)].map(c=>c.index),E=[],n={query:!1,fragment:!1,fragmentQuery:!1};let s=0,r=!1,a="";for(let c=0;Q.length>c&&i.length>s;c++){i[s]===c&&(c>0&&a!=="="&&E.push(c),s++);const h=Q[c];Fht(h,n,a)?(a=h,r=!0):r&&"=&".includes(h)&&(a=h)}return E})(e);if(o.length===0)return i6A(e,t);let B="",C=0;for(const Q of o)B+=i6A(e.slice(C,Q),QI(QI({},t),{},{stripPunctuation:!1})),C=Q;return B+i6A(e.slice(C),t)})(I,QI(QI({},A),{},{stripPunctuation:A.stripPunctuation&&I.length!==g.length})))}function tDA(g){return g.replace(hht,sG)}function kAI(g,A){return(function(I){return I.length>=10240&&(nht.test(I)||(function(e){const t=rht.exec(e);if(!t)return!1;let o;try{o=decodeURIComponent(e.slice(t[0].length))}catch{return!1}return cht.test(o.replace(/[\r\n]/g,""))})(I)||aht.test(I)&&sht.test(I))})(g)?"[binary data redacted - not supported by PostHog MCP analytics]":(function(I,e,t){const o=4*t.maxStringLength;if(I.length>o){const B=e(I.slice(0,(function(C,Q){let i=Q;for(;i>0&&!Dht.test(C[i-1]);)i--;return i})(I,o)));if(B.length>=2*t.maxStringLength)return B+t.truncationSuffix}return e(I)})(g,I=>(function(e){return E6A(e,{allowNestedUrls:!0,stripPunctuation:!0})})((function(e){let t=e.replace(Ght," ");return t=t.replace(mht,sG),t=t.replace(pht,sG),t=t.replace(kht,`$1${sG}`),t=t.replace(Sht,Jht),t=t.replace(Mht,sG),t=t.replace(fht,`$1${sG}`),t=t.replace(Rht,`$1${sG}`),t})(tDA(I))),A)}function Uht(g){let A=0,I=!1;for(let e=g.length-1;e>=0;e--){let t=g.charCodeAt(e)-48;if(0>t||t>9)return!1;I&&(t*=2,t>9&&(t-=9)),A+=t,I=!I}return A%10==0}function Jht(g){const A=[];for(let o=GAI.exec(g);o!==null;o=GAI.exec(g))A.push({digits:o[0],start:o.index,end:o.index+o[0].length});let I="",e=0,t=0;for(;A.length>t;){let o="",B=-1;for(let C=t;A.length>C&&(o+=A[C].digits,19>=o.length);C++)o.length>=13&&Uht(o)&&(B=C);0>B?t++:(I+=g.slice(e,A[t].start)+sG,e=A[B].end,t=B+1)}return I+g.slice(e)}const Pht={}.propertyIsEnumerable;function oDA(g,A){try{return MAI(g,A,{ancestors:new WeakSet,remainingNodes:1e4},0)}catch{return[]}}function n6A(g,A,I,e){if(0>=I.remainingNodes)return{stringValue:g6A};if(I.remainingNodes--,Fm(g))return{boolValue:g};if(typeof g=="bigint")return(function(t,o){const B=t.toString(),C=BigInt("9223372036854775808");return t>=C||-C>t?(o?.debug(`Attribute ${B} is outside the int64 range; encoding it as a string`),{stringValue:B}):{intValue:B}})(g,A);if(typeof g=="number"){if(!Number.isFinite(g))return{stringValue:String(g)};if(Number.isInteger(g)){if(Number.isSafeInteger(g))return{intValue:String(g)};if(typeof BigInt>"u")return{stringValue:String(g)};const t=BigInt(g).toString();return g>=9223372036854776e3||-9223372036854776e3>g?(A?.debug(`Attribute ${t} is outside the int64 range; encoding it as a string`),{stringValue:t}):{intValue:t}}return{doubleValue:g}}if(typeof g=="string")return{stringValue:Iq(g)};if(typeof g=="function")return{stringValue:"[Function]"};if(typeof g=="symbol")return{stringValue:String(g)};if(typeof g=="object"&&g!==null){if(I.ancestors.has(g))return{stringValue:"[Circular]"};if(e>=20)return{stringValue:g6A};if(g instanceof Date){const t=g.getTime(),o=Number.isFinite(t)?g.toISOString():String(g);return{stringValue:typeof o=="string"?Iq(o):String(o)}}I.ancestors.add(g);try{try{const t=g.toJSON;if(typeof t=="function")return n6A(t.call(g),A,I,e+1)}catch{}return cB(g)?{arrayValue:{values:Kht(g,A,I,e+1)}}:{kvlistValue:{values:MAI(g,A,I,e+1)}}}finally{I.ancestors.delete(g)}}return{stringValue:Iq(String(g))}}function Kht(g,A,I,e){const t=[],o=Math.min(g.length,1e3);let B=0;for(;o>B&&I.remainingNodes>0;B++)try{const C=B in g?g[B]:void 0;if(hC(C))continue;t.push(n6A(C,A,I,e))}catch{t.push({stringValue:WAA})}return g.length>B&&t.push({stringValue:g6A}),t}function MAI(g,A,I,e){const t=[];for(const o in g)if(Pht.call(g,o)){if(!o){A?.debug("Dropping an attribute with an empty key");continue}if(t.length>=1e3||0>=I.remainingNodes){A?.debug("Attributes truncated: the value exceeds the OTLP encoder budget");break}try{const B=g[o];if(Pc(B)||Ye(B))continue;t.push({key:Iq(o),value:n6A(B,A,I,e)})}catch{t.push({key:Iq(o),value:{stringValue:WAA}})}}return t}function SAI(g,A,I){return QI(QI(QI(QI({},V$g({},g.resourceAttributes)),{},{"service.name":g.serviceName||"unknown_service"},g.environment&&{"deployment.environment":g.environment}),g.serviceVersion&&{"service.version":g.serviceVersion}),{},{"telemetry.sdk.name":A,"telemetry.sdk.version":I})}const Lht=["service.name","deployment.environment","service.version","telemetry.sdk.name","telemetry.sdk.version"];function fAI(g,A){const I=V$g({},g),e={};for(const t of Lht)({}).hasOwnProperty.call(I,t)&&(e[t]=I[t],delete I[t]);return[...oDA(I,A),...oDA(e,A)]}const RAI={darwin:"macOS",win32:"Windows",cygwin:"Windows",linux:"Linux",android:"Android",freebsd:"FreeBSD",openbsd:"OpenBSD",netbsd:"NetBSD",sunos:"SunOS",aix:"AIX",haiku:"Haiku","Mac OS X":"macOS"},NAI={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}},Yht=NAI.info;function _ht(g){try{return Iq(String(g))}catch{return WAA}}function bht(g,A,I,e){const t=g.level||"info",{text:o,number:B}=NAI[t]||Yht,C=(function(s=Date.now()){return String(s)+"000000"})(Gh(e)?e:void 0),Q={};A.distinctId&&(Q.posthogDistinctId=A.distinctId),A.sessionId&&(Q.sessionId=A.sessionId),A.windowId&&(Q["window.id"]=A.windowId),hC(A.sessionStartTimestamp)||(Q.sessionStartTimestamp=String(A.sessionStartTimestamp)),hC(A.lastActivityTimestamp)||(Q.lastActivityTimestamp=String(A.lastActivityTimestamp)),A.currentUrl&&(Q["url.full"]=A.currentUrl),A.screenName&&(Q["screen.name"]=A.screenName),A.appState&&(Q["app.state"]=A.appState),A.activeFeatureFlags&&A.activeFeatureFlags.length>0&&(Q.feature_flags=A.activeFeatureFlags);const i=QI({},Q),E=g.attributes;if(E){let s=[];try{s=Object.keys(E)}catch{s=[]}for(const r of s){let a;try{a=E[r]}catch{a=WAA}Object.defineProperty(i,r,{value:a,enumerable:!0,writable:!0,configurable:!0})}}const n={timeUnixNano:C,observedTimeUnixNano:C,severityNumber:B,severityText:o,body:{stringValue:_ht(g.body)},attributes:oDA(i,I)};return g.trace_id&&(n.traceId=g.trace_id),g.span_id&&(n.spanId=g.span_id),Ye(g.trace_flags)||(n.flags=g.trace_flags),n}function xAI(g,A,I){return SAI(g,A,I)}function FAI(g,A,I,e){return{resourceLogs:[{resource:{attributes:fAI(A)},scopeLogs:[{scope:{name:I,version:e},logRecords:g}]}]}}var UAI=class{constructor(A){this.ls=A,this.us=0}get pending(){return!!this.cs}arm(A){this.clear(),this.us=Date.now()+A,this.cs=AAI(()=>{this.cs=void 0,this.ls()},A)}armNoEarlierThan(A){this.cs&&Date.now()+A<=this.us||this.arm(A)}clear(){this.cs&&(clearTimeout(this.cs),this.cs=void 0)}};function JAI(){return .75+.5*Math.random()}function PAI(g,A,I,e){const t=Math.min(Math.max(0,A-1),6),o=g*Math.pow(2,t);return Math.round(Math.min(o,Math.max(e,g))*I)}var Hht=class{constructor(A,I,e,t,o,B=()=>Promise.resolve(),C){var Q;this._instance=A,this.Ar=I,this.$=e,this.hs=t,this.ds=o,this.vs=B,this.fs=C,this.ps=new UAI(()=>this.gs()),this.ys=null,this.bs=0,this._s=0,this.ws=new j$g,this.ks=0,this.Ss=1,this.xs=0,this.$s=0,this.Cs=!1,this.Ts=I.maxBufferSize,this.Is=Math.max((Q=I.maxQueueSize)!==null&&Q!==void 0?Q:I.maxBufferSize,I.maxBufferSize),this.Ms=I.flushIntervalMs,this.Es=I.maxBatchRecordsPerPost,this.Ps=I.rateCapWindowMs,this.Rs=I.maxLogsPerInterval}clearQueue(){this._s++,this._instance.setPersistedProperty(dx.LogsQueue,[])}reset(){this.ps.clear(),this.xs=0,this.$s=0,this.Cs=!1,this.ks=0,this.Ss=1,this.ws.reset(),this.Es=this.Ar.maxBatchRecordsPerPost}onReconnect(){this.ks=0,this.Ss=1,this.ws.isOpen()?this.As()&&this.Fs():this.gs()}captureLog(A,I){var e;if(this._instance.isDisabled||this._instance.optedOut||!A?.body)return;const t=this.Os(A);if(t===null)return;if(!t.body)return void this.$.info("Log was rejected in beforeSend function");if(!this.Ds())return;const o={record:bht(t,(e=I?.context)!==null&&e!==void 0?e:this.hs(),this.$,I?.occurredAtMs)};this.ds(()=>this.Ls(o))}Os(A){const I=this.Ar.beforeSend;if(!I)return A;const e=cB(I)?I:[I];let t=A;for(const o of e)try{const B=o(t);if(!B)return this.$.info("Log was rejected in beforeSend function"),null;t=B}catch(B){return this.$.error("Error in beforeSend function for log:",B),null}return t}Ds(){if(this.Rs===void 0)return!0;const A=Date.now(),I=A-this.xs;return this.Ps>I&&I>=0||(this.xs=A,this.$s=0,this.Cs=!1),this.Rs>this.$s?(this.$s++,!0):(this.Cs||(this.$.warn(`captureLog dropping logs: exceeded ${this.Rs} logs per ${this.Ps}ms`),this.Cs=!0),!1)}flush(){var A=this;return Qa(function*(){if(!A._instance.isDisabled)return A.ys||(A.ys=A.Ns().finally(()=>{A.ys=null})),A.ys})()}Ns(){var A=this;return Qa(function*(){var I;A.ps.clear();let e=(I=A._instance.getPersistedProperty(dx.LogsQueue))!==null&&I!==void 0?I:[];if(e.length===0)return;const t=e.length;let o=0;for(;e.length>0&&t>o;){var B,C;const Q=A._s;A.bs=0;const i=Math.min(e.length,A.Es),E=e.slice(0,i),n=FAI(E.map(r=>r.record),A.qs(),(B=A.fs)!==null&&B!==void 0?B:A._instance.getLibraryId(),A._instance.getLibraryVersion()),s=yield A._instance.js(n);if(A._s!==Q)return;if(s.kind==="too-large"&&E.length>1)A.Es=Math.max(1,Math.floor(E.length/2)),A.$.warn(`Logs batch of size ${E.length} was too large for the ingestion endpoint, reducing batch size to ${A.Es}`);else if(A.ws.record(s),A.ps.pending&&A.ps.arm(Math.max(A.Ms,A.ws.remainingMs())),s.kind==="retry-later"||(s.kind==="too-large"?A.$.warn("Dropping a single log record with batch size 1 — the record is larger than the server cap and cannot be split further."):s.kind==="ok"&&A.Ar.maxBatchRecordsPerPost>A.Es&&(A.Es=Math.min(A.Ar.maxBatchRecordsPerPost,A.Es+1)),yield A.Bs(E.length),e=(C=A._instance.getPersistedProperty(dx.LogsQueue))!==null&&C!==void 0?C:[],o+=E.length,s.kind==="fatal"))throw s.error}})()}Bs(A){var I=this;return Qa(function*(){var e;const t=Math.max(0,A-I.bs),o=(e=I._instance.getPersistedProperty(dx.LogsQueue))!==null&&e!==void 0?e:[];I._instance.setPersistedProperty(dx.LogsQueue,o.slice(t)),yield I.vs()})()}qs(){return xAI(this.Ar,this._instance.getLibraryId(),this._instance.getLibraryVersion())}Ls(A){var I;if(this._instance.optedOut)return;const e=(I=this._instance.getPersistedProperty(dx.LogsQueue))!==null&&I!==void 0?I:[];this.Is>e.length||(e.shift(),this.bs++,this.$.info("Logs queue is full, dropping oldest record.")),e.push(A),this._instance.setPersistedProperty(dx.LogsQueue,e),this.Ts>e.length||this.ws.isOpen()?this.Fs():this.gs()}Fs(){this.ps.pending||this.ps.arm(Math.max(this.Ms,this.ws.remainingMs()))}zs(){return Math.max(PAI(this.Ms,this.ks,this.Ss,3e4),this.ws.remainingMs())}As(){const A=this._instance.getPersistedProperty(dx.LogsQueue);return!!A&&A.length>0}shutdown(A){var I=this;return Qa(function*(){I.ps.clear();const e=I.flush().catch(()=>{});A!==void 0?yield gAI(e,A):yield e})()}flushWithTimeout(A){var I=this;return Qa(function*(){const e=I.flush();yield gAI(e,A,()=>{e.catch(()=>{})})})()}gs(){this.flush().then(()=>{this.ks=0,this.Ss=1},A=>{this.ks++,this.Ss=JAI(),this.$.error("PostHog logs flush failed:",A)}).finally(()=>{!this._instance.isDisabled&&this.As()&&this.ps.armNoEarlierThan(this.zs())})}};const vht=/^[0-9a-f]+$/;function KAI(g,A,I){return typeof g=="string"&&g.length===A&&g!==I&&vht.test(g)}const Tht=/^([0-9a-f]{2})-([0-9a-f]{32})-([0-9a-f]{16})-([0-9a-f]{2})(-.*)?$/,qht="00",s6A=[0,5,10,25,50,75,100,250,500,750,1e3,2500,5e3,7500,1e4];function a6A(g){return String(g)+"000000"}function LAI(g,A,I,e){let t="";return e&&(t=Object.keys(e).sort().map(o=>`${JSON.stringify(o)}:${JSON.stringify(e[o])}`).join(",")),`${g}\0${A}\0${I??""}\0${t}`}var Zht=class{constructor(A,I,e){this._instance=A,this.Ar=I,this.$=e,this.Hs=new Map,this.ps=new UAI(()=>this.flush().catch(t=>{this.$.error("Metrics flush failed:",t)})),this.ys=null,this.Us=!1,this.Ws=new Map,this.Vs=new Set,this.ws=new j$g,this.ks=0,this.Ss=1,this.Gs=0}count(A,I=1,e){this.Qs({name:A,type:"count",value:I,unit:e?.unit,attributes:e?.attributes})}gauge(A,I,e){this.Qs({name:A,type:"gauge",value:I,unit:e?.unit,attributes:e?.attributes})}histogram(A,I,e){this.Qs({name:A,type:"histogram",value:I,unit:e?.unit,attributes:e?.attributes})}flush(){var A=this;const I=this.ys,e=(function(){var t=Qa(function*(){I&&(yield I.catch(()=>{})),yield A.Zs()});return function(){return t.apply(this,arguments)}})()().finally(()=>{this.ys===e&&(this.ys=null)});return this.ys=e,e}drainWindow(){if(this.Hs.size===0)return null;const A=this.Hs;return this.Hs=new Map,this.Us=!1,this.Ws=new Map,this.Vs=new Set,this.Js(A)}reset(){this.Gs++,this.ws.reset(),this.ks=0,this.Ss=1,this.ps.clear(),this.Hs=new Map,this.ys=null,this.Us=!1,this.Ws=new Map,this.Vs=new Set}Qs(A){if(this._instance.isDisabled||this._instance.optedOut)return;const I=this.Os(A);if(I===null)return;if(!I.name||typeof I.name!="string")return void this.$.warn("Dropping metric with empty name");if(typeof I.value!="number"||!Number.isFinite(I.value))return void this.$.warn(`Dropping metric '${I.name}': value must be a finite number`);if(I.type==="count"&&0>I.value)return void this.$.warn(`Dropping count '${I.name}': counters are monotonic, value must be >= 0`);let e,t;try{e=I.attributes?QI({},I.attributes):void 0,t=LAI(I.type,I.name,I.unit,e)}catch(Q){return void this.$.warn(`Dropping metric '${I.name}': attributes could not be serialized`,Q)}let o=this.Hs.get(t);if(!o){if(!this.Ks())return;o={name:I.name,type:I.type,unit:I.unit,attributes:e,windowStartMs:Date.now()},this.Hs.set(t,o)}const B=this.Ws.get(I.name);B===void 0?this.Ws.set(I.name,I.type):B===I.type||this.Vs.has(I.name)||(this.Vs.add(I.name),this.$.warn(`Metric name '${I.name}' is already used as a ${B}; recording it as a ${I.type} too will blend both series in charts. Use a distinct name.`)),this.Xs(o,I.value);const C=this.Ys();C&&(o.exemplar=QI(QI({},C),{},{value:I.value,timeMs:Date.now()})),this.Fs()}Ys(){try{var A,I;const e=(function(t){const o=(function(C){if(typeof C!="string")return;const Q=Tht.exec(C.trim());if(!Q)return;const[,i,E,n,s,r]=Q;return i==="ff"||i==="00"&&r||!(function(a){return KAI(a,32,"00000000000000000000000000000000")})(E)||!(function(a){return KAI(a,16,"0000000000000000")})(n)?void 0:{version:i,traceId:E,spanId:n,flags:s}})(t);return o&&{traceId:o.traceId,spanId:o.spanId,flags:(B=o.flags,1&parseInt(B,16)?"01":qht)};var B})((A=(I=this._instance).getActiveSpan)===null||A===void 0||(A=A.call(I))===null||A===void 0?void 0:A.traceparent());if(e&&e.flags==="01")return{traceId:e.traceId,spanId:e.spanId}}catch{}}Ks(){return this.Ar.maxSeriesPerFlush>this.Hs.size||(this.Us||(this.Us=!0,this.$.warn(`Metric series cap reached (${this.Ar.maxSeriesPerFlush} per flush window); dropping new series until the next flush. Reduce attribute cardinality.`)),!1)}Xs(A,I){switch(A.type){case"count":var e;A.total=((e=A.total)!==null&&e!==void 0?e:0)+I;break;case"gauge":A.last=I;break;case"histogram":{A.hist||(A.hist={count:0,sum:0,min:I,max:I,bucketCounts:new Array(s6A.length+1).fill(0)});const t=A.hist;t.count+=1,t.sum+=I,t.min=Math.min(t.min,I),t.max=Math.max(t.max,I),t.bucketCounts[(function(o,B){for(let C=0;B.length>C;C++)if(B[C]>=o)return C;return B.length})(I,s6A)]+=1;break}}}Os(A){const I=this.Ar.beforeSend;if(!I)return A;const e=cB(I)?I:[I];let t=A;for(const o of e)try{const B=o(t);if(!B)return this.$.info("Metric was rejected in beforeSend function"),null;t=B}catch(B){return this.$.error("Error in beforeSend function for metric:",B),null}return t}Fs(){this.ps.pending||this.ps.arm(this.zs())}zs(){return Math.max(PAI(this.Ar.flushIntervalMs,this.ks,this.Ss,3e4),this.ws.remainingMs())}Zs(){var A=this;return Qa(function*(){if(A.ps.clear(),A.Hs.size===0)return;const I=A.Hs;A.Hs=new Map,A.Us=!1,A.Ws=new Map,A.Vs=new Set;const e=A.Gs,t=yield A._instance.po(A.Js(I));if(e===A.Gs)switch(A.ws.record(t),t.kind==="retry-later"?(A.ks++,A.Ss=JAI()):(A.ks=0,A.Ss=1),A.ps.pending&&A.ps.arm(A.zs()),t.kind){case"ok":return;case"retry-later":return A.mo(I),void A.ps.armNoEarlierThan(A.zs());case"too-large":return void A.$.warn("Metrics batch exceeded the server size limit and was dropped");case"fatal":return void A.$.error("Failed to send metrics batch:",t.error)}})()}Js(A){return I=this.yo(A),e=(function(B,C,Q){return SAI(B,C,Q)})(this.Ar,this._instance.getLibraryId(),this._instance.getLibraryVersion()),t=this._instance.getLibraryId(),o=this._instance.getLibraryVersion(),{resourceMetrics:[{resource:{attributes:fAI(e)},scopeMetrics:[{scope:{name:t,version:o},metrics:I}]}]};var I,e,t,o}yo(A){const I=a6A(Date.now()),e=new Map;for(const C of A.values()){var t;const Q=LAI(C.type,C.name,C.unit,void 0);let i=e.get(Q);i||(i=QI({name:C.name},C.unit&&{unit:C.unit}),C.type==="count"?i.sum={aggregationTemporality:1,isMonotonic:!0,dataPoints:[]}:C.type==="gauge"?i.gauge={dataPoints:[]}:i.histogram={aggregationTemporality:1,dataPoints:[]},e.set(Q,i));const E=oDA((t=C.attributes)!==null&&t!==void 0?t:{},this.$),n=a6A(C.windowStartMs),s=Oht(C.exemplar);if(C.type==="count"){var o;const r=QI({attributes:E,startTimeUnixNano:n,timeUnixNano:I,asDouble:(o=C.total)!==null&&o!==void 0?o:0},s);i.sum.dataPoints.push(r)}else if(C.type==="gauge"){var B;const r=QI({attributes:E,timeUnixNano:I,asDouble:(B=C.last)!==null&&B!==void 0?B:0},s);i.gauge.dataPoints.push(r)}else if(C.hist){const r=QI({attributes:E,startTimeUnixNano:n,timeUnixNano:I,count:C.hist.count,sum:C.hist.sum,min:C.hist.min,max:C.hist.max,bucketCounts:C.hist.bucketCounts,explicitBounds:s6A},s);i.histogram.dataPoints.push(r)}}return Array.from(e.values())}mo(A){for(const[o,B]of A){var I;const C=this.Hs.get(o);if(C)switch(C.windowStartMs=Math.min(C.windowStartMs,B.windowStartMs),C.exemplar=(I=C.exemplar)!==null&&I!==void 0?I:B.exemplar,C.type){case"count":var e,t;C.total=((e=C.total)!==null&&e!==void 0?e:0)+((t=B.total)!==null&&t!==void 0?t:0);break;case"gauge":break;case"histogram":if(B.hist)if(C.hist){C.hist.count+=B.hist.count,C.hist.sum+=B.hist.sum,C.hist.min=Math.min(C.hist.min,B.hist.min),C.hist.max=Math.max(C.hist.max,B.hist.max);for(let Q=0;C.hist.bucketCounts.length>Q;Q++)C.hist.bucketCounts[Q]+=B.hist.bucketCounts[Q]}else C.hist=B.hist}else this.Ks()&&this.Hs.set(o,B)}}};function Oht(g){return g?{exemplars:[{filteredAttributes:[],timeUnixNano:a6A(g.timeMs),asDouble:g.value,traceId:g.traceId,spanId:g.spanId}]}:{}}const YAI=(g,{debugEnabled:A}={})=>{const I={N(e,...t){let o;try{o=typeof window>"u"?void 0:window}catch{return}o&&(EJ.DEBUG||o.POSTHOG_DEBUG||A)&&!Ye(o.console)&&o.console&&("__rrweb_original__"in o.console[e]?o.console[e].__rrweb_original__:o.console[e])(g,...t)},debug(...e){I.N("debug",...e)},info(...e){I.N("log",...e)},warn(...e){I.N("warn",...e)},error(...e){I.N("error",...e)},critical(...e){console.error(g,...e)},uninitializedWarning(e){I.error(`You must initialize PostHog before calling ${e}`)},createLogger:(e,t)=>YAI(`${g} ${e}`,t)};return I},Dt=YAI("[PostHog.js]"),zr=Dt.createLogger,Wht=zr("[ExternalScriptsLoader]"),BDA=g=>{const A=ro?.querySelectorAll("script");if(A){for(let I=0;A.length>I;I++)if(A[I].src===g||A[I].getAttribute("src")===g)return A[I]}},t5=(g,A,I)=>{if(g.config.disable_external_dependency_loading)return Wht.warn(`${A} was requested but loading of external scripts is disabled.`),I("Loading of external scripts is disabled");const e=BDA(A);if(e){if(e.__posthog_loading_callback_fired)return I();const o=e.__posthog_loading_error;return o?I(o):(e.addEventListener("load",B=>{e.__posthog_loading_callback_fired=!0,I(void 0,B)}),void e.addEventListener("error",B=>{e.__posthog_loading_error=B,I(B)}))}const t=()=>{if(!ro)return I("document not found");if(BDA(A))return t5(g,A,I);let o=ro.createElement("script");if(o.type="text/javascript",o.crossOrigin="anonymous",o.src=A,o.onload=C=>{o.__posthog_loading_callback_fired=!0,I(void 0,C)},o.onerror=C=>{o.__posthog_loading_error=C,I(C)},g.config.prepare_external_dependency_script&&(o=g.config.prepare_external_dependency_script(o)),!o)return I("prepare_external_dependency_script returned null");if(g.config.external_scripts_inject_target==="head")ro.head.appendChild(o);else{const C=ro.querySelectorAll("body > script");var B;C.length>0?(B=C[0].parentNode)===null||B===void 0||B.insertBefore(o,C[0]):ro.body.appendChild(o)}};ro?.body?t():ro?.addEventListener("DOMContentLoaded",t)},r6A={},_AI=(g,A)=>{let I=`/static/${A}.js?v=${g.version}`;return A==="toolbar"&&(I=`${I}&t=${Math.floor(Date.now()/3e5)*3e5}`),g.requestRouter.endpointFor("assets",I)};UB.__PosthogExtensions__=UB.__PosthogExtensions__||{},UB.__PosthogExtensions__.loadExternalDependency=(g,A,I)=>{if(A==="remote-config"){const t=g.requestRouter.endpointFor("assets",`/array/${g.config.token}/config.js`);return void t5(g,t,I)}const e=g.config.strict_script_versioning;if(e){const t=g.requestRouter.endpointFor("assets",`/static/${g.version}/${A}.js`),o=r6A[t];if(e==="fallback"&&o){if(BDA(o))return void t5(g,o,I);delete r6A[t]}return void t5(g,t,e==="fallback"?(B,C)=>{if(B)if(typeof B=="string")I(B);else{var Q;const i=_AI(g,A);r6A[t]=i;const E=BDA(t);E==null||(Q=E.parentNode)===null||Q===void 0||Q.removeChild(E),t5(g,i,I)}else I(void 0,C)}:I)}t5(g,_AI(g,A),I)},UB.__PosthogExtensions__.loadSiteApp=(g,A,I)=>{const e=g.requestRouter.endpointFor("api",A);t5(g,e,I)},EJ.DEBUG=!1,EJ.LIB_VERSION="1.438.20",EJ.LIB_NAME="web";var ak=EJ;const c6A="$early_access_features",sJ="$active_feature_flags",o5="$feature_flag_details",XAA="$feature_flag_errors",E3="$feature_flag_evaluated_at",B5="$feature_flag_request_id",$AA="$minimal_flag_called_events",xR="$enabled_feature_flags",n3="$stored_group_properties",s3="$stored_person_properties",aJ="$flag_call_reported",AgA="$flag_call_reported_session_id",a3="$feature_flag_payloads",wx="$override_feature_flags",C5="$override_feature_flag_payloads",tq="visibilitychange",bAI="$autocapture_disabled_server_side",ggA="$surveys",CDA="$surveys_loaded_at",h6A="PostHog loadExternalDependency extension not found.",l6A="$surveys_activated",QDA="$surveys_activated_session",iDA="$surveys_activated_timestamps",Vht="$people_distinct_id",FR="distinct_id",D6A="$device_id",d6A="$device_model",EDA="__alias",jht="__cmpns",HAI="$fbc",oq="$fbc_persistence",vAI="$fbp",IgA="$fbp_persistence",y6A="__timers",w6A="$heatmaps_enabled_server_side",u6A="$exception_capture_enabled_server_side",TAI="$error_tracking_suppression_rules",G6A="$error_tracking_capture_extension_exceptions",m6A="$web_vitals_enabled_server_side",p6A="$dead_clicks_enabled_server_side",k6A="$product_tours_enabled_server_side",qAI="$logs_capture_enabled_server_side",ZAI="$web_vitals_allowed_metrics",egA="$session_recording_remote_config",zht="$session_recording_enabled_server_side",Xht="$replay_sample_rate",$ht="$replay_override_sampling",A0t="$replay_override_linked_flag",g0t="$replay_override_url_trigger",I0t="$replay_override_event_trigger",Bq="$sesid",OAI="$session_is_sampled",e0t="$session_past_minimum_duration",t0t="$session_recording_url_trigger_activated_session",o0t="$session_recording_event_trigger_activated_session",B0t="$debug_first_full_snapshot_timestamp",C0t="$sess_rec_flush_size",WAI="$groups",M6A="ph_product_tours",Q0t="$product_tours_activated",i0t="$product_tours_activated_session",E0t="$conversations_widget_session_id",n0t="$conversations_ticket_id",s0t="$conversations_widget_state",a0t="$conversations_user_traits",Um="$user_state",S6A="$client_session_props",r0t="$capture_rate_limit",VAI="$initial_campaign_params",jAI="$initial_referrer_info",Cq="$initial_person_info",f6A="$epp",R6A="$posthog_cookieless",zAI="$cookieless_mode",XAI="$sdk_debug_extensions_init_method",$AI="$sdk_debug_extensions_init_time_ms",N6A="$sdk_debug_recording_script_not_loaded",x6A="$sdk_debug_replay_stale_config",AgI="$sdk_debug_replay_event_trigger_status",ggI="$sdk_debug_replay_linked_flag_trigger_status",IgI="$sdk_debug_replay_matched_recording_trigger_groups",egI="$sdk_debug_replay_pending_trigger_conditions",tgI="$sdk_debug_replay_remote_trigger_matching_config",ogI="$sdk_debug_replay_trigger_groups_count",BgI="$sdk_debug_replay_url_trigger_status",c0t="$session_recording_start_reason",rJ="anonymous",nDA="identified",CgI="identified_only",sDA="beforeunload",F6A="$pageview",QgI="$pageleave",igI="$identify",EgI="$groupidentify";function Qq(g,A){cB(g)&&g.forEach(A)}function Gn(g,A){if(!hC(g))if(cB(g))g.forEach(A);else if((I=>I instanceof FormData)(g))g.forEach((I,e)=>A(I,e));else for(const I in g)THA.call(g,I)&&A(g[I],I)}const sr=function(g,...A){for(const I of A)for(const e in I)I[e]!==void 0&&(g[e]=I[e]);return g};function aDA(g){const A=Object.keys(g);let I=A.length;const e=new Array(I);for(;I--;)e[I]=[A[I],g[A[I]]];return e}const h0t=function(g){return function(...A){try{return g.apply(this,A)}catch(I){Dt.critical("Implementation error. Please turn on debug mode and open a ticket on https://app.posthog.com/home#panel=support%3Asupport%3A."),Dt.critical(I)}}},U6A=function(g){const A={};return Gn(g,function(I,e){(qC(I)&&I.length>0||Gh(I))&&(A[e]=I)}),A};function ngI(g){const A=QI({},g);for(const I of["name","message","stack","cause","errors"])try{I in g&&(A[I]=g[I])}catch{}return A}const l0t=["herokuapp.com","vercel.app","netlify.app"];function D0t(g){const A=g?.hostname;if(!qC(A))return!1;const I=A.split(".").slice(-2).join(".");for(const e of l0t)if(I===e)return!1;return!0}function NE(g,A,I,e){const{capture:t=!1,passive:o=!0}=e??{};g?.addEventListener(A,I,{capture:t,passive:o})}function J6A(g){return g.name==="ph_toolbar_internal"}const tgA=g=>{if(ro){try{const A=g+"=",I=ro.cookie.split(";").filter(e=>e.length);for(let e=0;I.length>e;e++){let t=I[e];for(;t.charAt(0)==" ";)t=t.substring(1,t.length);if(t.indexOf(A)===0)return decodeURIComponent(t.substring(A.length,t.length))}}catch{}return null}};Math.trunc||(Math.trunc=function(g){return 0>g?Math.ceil(g):Math.floor(g)}),Number.isInteger||(Number.isInteger=function(g){return Gh(g)&&isFinite(g)&&Math.floor(g)===g});var d0t=class Qlg{constructor(A){if(this.bytes=A,A.length!==16)throw new TypeError("not 128-bit length")}static fromFieldsV7(A,I,e,t){if(!Number.isInteger(A)||!Number.isInteger(I)||!Number.isInteger(e)||!Number.isInteger(t)||0>A||0>I||0>e||0>t||A>0xffffffffffff||I>4095||e>1073741823||t>4294967295)throw new RangeError("invalid field value");const o=new Uint8Array(16);return o[0]=A/Math.pow(2,40),o[1]=A/Math.pow(2,32),o[2]=A/Math.pow(2,24),o[3]=A/Math.pow(2,16),o[4]=A/256,o[5]=A,o[6]=112|I>>>8,o[7]=I,o[8]=128|e>>>24,o[9]=e>>>16,o[10]=e>>>8,o[11]=e,o[12]=t>>>24,o[13]=t>>>16,o[14]=t>>>8,o[15]=t,new Qlg(o)}toString(){let A="";for(let I=0;this.bytes.length>I;I++)A=A+(this.bytes[I]>>>4).toString(16)+(15&this.bytes[I]).toString(16),I!==3&&I!==5&&I!==7&&I!==9||(A+="-");if(A.length!==36)throw new Error("Invalid UUIDv7 was generated");return A}clone(){return new Qlg(this.bytes.slice(0))}equals(A){return this.compareTo(A)===0}compareTo(A){for(let I=0;16>I;I++){const e=this.bytes[I]-A.bytes[I];if(e!==0)return Math.sign(e)}return 0}},y0t=class{generate(){const A=this.generateOrAbort();if(!Ye(A))return A;{this.Ct=0;const I=this.generateOrAbort();if(Ye(I))throw new Error("Could not generate UUID after timestamp reset");return I}}generateOrAbort(){const A=(()=>{const I=Date.now();return Gh(I)&&isFinite(I)?Math.min(Math.max(Math.floor(I),0),0xffffffffffff):0})();if(A>this.Ct)this.Ct=A,this.It();else{if(this.Ct>=A+1e4)return;this.Mt++,this.Mt>4398046511103&&(this.Ct++,this.It())}return d0t.fromFieldsV7(this.Ct,Math.trunc(this.Mt/Math.pow(2,30)),this.Mt&Math.pow(2,30)-1,this.Tt.nextUint32())}It(){this.Mt=1024*this.Tt.nextUint32()+(1023&this.Tt.nextUint32())}constructor(){this.Ct=0,this.Mt=0,this.Tt=new u0t}};const w0t=g=>{if("u">typeof UUIDV7_DENY_WEAK_RNG&&UUIDV7_DENY_WEAK_RNG)throw new Error("no cryptographically strong RNG available");for(let A=0;g.length>A;A++)g[A]=65536*Math.trunc(65536*Math.random())+Math.trunc(65536*Math.random());return g};let sgI;var u0t=class{nextUint32(){var A;return this.Rt.length>this.Et||(((A=sgI)!==null&&A!==void 0?A:sgI="u">typeof window&&!Ye(window.crypto)&&crypto.getRandomValues?I=>crypto.getRandomValues(I):w0t)(this.Rt),this.Et=0),this.Rt[this.Et++]}constructor(){this.Rt=new Uint32Array(8),this.Et=1/0}};let agI;const UR=()=>G0t().toString(),G0t=()=>(agI||(agI=new y0t)).generate();let ogA="";const m0t=/[a-z0-9][a-z0-9-]+\.[a-z]{2,}$/i;let iq=null;const Kc={$t(){if(!Pc(iq))return iq;if(iq=!1,ro)try{const g=`__ph_cookie_support_${UR()}`;Kc.At(g,"xyz"),iq=tgA(g)==='"xyz"',Kc.Pt(g)}catch{iq=!1}return iq},Ft(g){Dt.error("cookieStore error: "+g)},Ot:tgA,Lt(g){let A;try{A=JSON.parse(Kc.Ot(g))||{}}catch{}return A},At(g,A,I,e,t){if(!ro)return!1;try{let o="",B="";const C=(function(i,E){if(E){let n=(function(s,r=ro){if(ogA)return ogA;if(!r||["localhost","127.0.0.1"].includes(s))return"";const a=s.split(".");let c=Math.min(a.length,8);const h="dmn_chk_"+UR();for(;!ogA&&c--;){const l=a.slice(c).join("."),D=h+"=1;domain=."+l+";path=/";r.cookie=D+";max-age=3",r.cookie.includes(h)&&(r.cookie=D+";max-age=0",ogA=l)}return ogA})(i);if(!n){const s=(r=>{const a=r.match(m0t);return a?a[0]:""})(i);s!==n&&Dt.info("Warning: cookie subdomain discovery mismatch",s,n),n=s}return n?"; domain=."+n:""}return""})(ro.location.hostname,e);if(I){const i=new Date;i.setTime(i.getTime()+864e5*I),o="; expires="+i.toUTCString()}t&&(B="; secure");const Q=g+"="+encodeURIComponent(JSON.stringify(A))+o+"; SameSite=Lax; path=/"+C+B;return Q.length>3686.4&&Dt.warn("cookieStore warning: large cookie, len="+Q.length),ro.cookie=Q,!0}catch{return!1}},Pt(g,A){if(ro?.cookie&&(!A||!Pc(tgA(g))))try{Kc.At(g,"",-1,A)}catch{return}}};let P6A=null;const aE={$t(){if(!Pc(P6A))return P6A;let g=!0;if(Ye(Se))g=!1;else try{const A="__mplssupport__";aE.At(A,"xyz"),aE.Ot(A)!=='"xyz"'&&(g=!1),aE.Pt(A)}catch{g=!1}return g||Dt.error("localStorage unsupported; falling back to cookie store"),P6A=g,g},Ft(g){Dt.error("localStorage error: "+g)},Ot(g){try{return Se?.localStorage.getItem(g)}catch(A){aE.Ft(A)}return null},Lt(g){try{return JSON.parse(aE.Ot(g))||{}}catch{}return null},At(g,A){try{return Se?.localStorage.setItem(g,JSON.stringify(A)),!0}catch(I){aE.Ft(I)}return!1},Pt(g){try{Se?.localStorage.removeItem(g)}catch(A){aE.Ft(A)}}},K6A=[s3,sJ,xR,o5,a3,B5,E3,XAA,aJ],Q5=[D6A,FR,Bq,OAI,f6A,Cq,oq,Um],rDA=g=>g+"_cpm",p0t=["__proto__","constructor","prototype"],L6A=g=>{if(!yC(g))return{};const A={};return Object.keys(g).forEach(I=>{p0t.indexOf(I)===-1&&(A[I]=g[I])}),A},Y6A=(g,A=[])=>{const I={};return[...Q5,...A].forEach(e=>{const t=g[e];Ye(t)||Pc(t)||t===""||(I[e]=t)}),I},rgI=g=>{let A=5381,I=2166136261;for(let e=0;g.length>e;e++){const t=g.charCodeAt(e);A=33*A^t,I=Math.imul(I^t,16777619)}return g.length.toString(36)+"."+(A>>>0).toString(36)+"."+(I>>>0).toString(36)},cgI=(g,A)=>({p:A,f:rgI(JSON.stringify(g))}),hgI=(g,A)=>{if(!A)return{properties:[],isValid:!1};try{const I=Kc.Lt(rDA(g)),e=I?.f===rgI(A)&&cB(I.p);return{properties:e?I.p:[],isValid:e}}catch{return{properties:[],isValid:!1}}},_6A=(g,A)=>A+"|"+(Kc.Ot(rDA(g))||""),Eq={},b6A={$t:()=>!0,Ft(g){Dt.error("memoryStorage error: "+g)},Ot:g=>g in Eq?Eq[g]:null,Lt:g=>g in Eq?Eq[g]:null,At:(g,A)=>(Eq[g]=A,!0),Pt(g){delete Eq[g]}};let i5=null;const ia={$t(){if(!Pc(i5))return i5;if(i5=!0,Ye(Se))i5=!1;else try{const g="__support__";ia.At(g,"xyz"),ia.Ot(g)!=='"xyz"'&&(i5=!1),ia.Pt(g)}catch{i5=!1}return i5},Ft(g){Dt.error("sessionStorage error: ",g)},Ot(g){try{return Se?.sessionStorage.getItem(g)}catch(A){ia.Ft(A)}return null},Lt(g){try{return JSON.parse(ia.Ot(g))||null}catch{}return null},At(g,A){try{return Se?.sessionStorage.setItem(g,JSON.stringify(A)),!0}catch(I){ia.Ft(I)}return!1},Pt(g){try{Se?.sessionStorage.removeItem(g)}catch(A){ia.Ft(A)}}};var k0t=class{constructor(A){this._instance=A}get Ar(){return this._instance.config}get consent(){return this.Sl()?0:this.xl}isOptedOut(){return this.Ar.cookieless_mode==="always"||this.isRejected()||this.consent===-1&&this.Ar.cookieless_mode==="on_reject"}isOptedIn(){return!this.isOptedOut()}isExplicitlyOptedOut(){return this.consent===0}isRejected(){return this.consent===0||this.consent===-1&&this.Ar.opt_out_capturing_by_default}optInOut(A){this.$l.At(this.Cl,A?1:0,this.Ar.cookie_expiration,this.Ar.cross_subdomain_cookie,this.Ar.secure_cookie)}reset(){this.$l.Pt(this.Cl,this.Ar.cross_subdomain_cookie)}get Cl(){const{token:A,opt_out_capturing_cookie_prefix:I,consent_persistence_name:e}=this._instance.config;return e||(I?I+A:"__ph_opt_in_out_"+A)}get xl(){const A=this.$l.Ot(this.Cl);return ZHA(A)?1:yB(wct,A)?0:-1}get $l(){const A=this.Ar.opt_out_capturing_persistence_type,I=A==="localStorage"?aE:Kc,e=I.$t()?I:b6A;if(!this.Tl||this.Tl!==e){this.Tl=e;const t=A==="localStorage"?Kc:aE;t.Ot(this.Cl)&&(this.Tl.Ot(this.Cl)||this.optInOut(ZHA(t.Ot(this.Cl))),t.Pt(this.Cl,this.Ar.cross_subdomain_cookie))}return this.Tl}Sl(){return!!this.Ar.respect_dnt&&[Hw?.doNotTrack,Hw?.msDoNotTrack,UB.doNotTrack,Hw?.globalPrivacyControl].some(A=>ZHA(A))}};function lgI(g,A){var I;const e=g==null||(I=g.config)===null||I===void 0?void 0:I.get_current_url;if(!C0(e))return A;try{const t=e(A);return qC(t)&&t?t:A}catch(t){return Dt.error("Error in get_current_url, falling back to window.location.href",t),A}}function DgI(g){var A;return g instanceof Element&&(g.id==="__POSTHOG_TOOLBAR__"||!!(!((A=g.closest)===null||A===void 0)&&A.call(g,".toolbar-global-fade-container")))}function JR(g){return!!g&&g.nodeType===1}function vw(g,A){return!!g&&!!g.tagName&&g.tagName.toLowerCase()===A.toLowerCase()}function dgI(g){return!!g&&g.nodeType===3}function H6A(g){return!!g&&g.nodeType===11&&JR(g.host)}function v6A(g){return g?$T(g).split(/\s+/):[]}function ygI(g,A){const I=(function(e){var t;const o=typeof window>"u"?void 0:window,B=o==null||(t=o.location)===null||t===void 0?void 0:t.href;return Ye(B)?void 0:lgI(e,B)})(A);return!!(I&&g&&g.some(e=>I.match(e)))}function nq(g){let A="";switch(typeof g.className){case"string":A=g.className;break;case"object":A=(g.className&&"baseVal"in g.className?g.className.baseVal:null)||g.getAttribute("class")||"";break;default:A=""}return v6A(A)}function wgI(g){return hC(g)?null:$T(g).split(/(\s+)/).filter(A=>aq(A)).join("").replace(/[\r\n]/g," ").replace(/[ ]+/g," ").substring(0,255)}function BgA(g){let A="";return E5(g)&&!sq(g)&&g.childNodes&&g.childNodes.length&&Gn(g.childNodes,function(I){var e;dgI(I)&&I.textContent&&(A+=(e=wgI(I.textContent))!==null&&e!==void 0?e:"")}),$T(A)}function CgA(g){var A;return Ye(g.target)?g.srcElement||null:!((A=g.target)===null||A===void 0)&&A.shadowRoot?g.composedPath()[0]||null:g.target||null}const T6A=["a","button","form","input","select","textarea","label"];function q6A(g,A){const I=g.matches||g.matchesSelector||g.msMatchesSelector||g.mozMatchesSelector||g.webkitMatchesSelector||g.oMatchesSelector;try{return!!I&&I.call(g,A)}catch{return!1}}function Z6A(g,A){if(Ye(A))return!0;for(const I of g)if(A.some(e=>q6A(I,e)))return!0;return!1}function ugI(g){const A=g.parentNode;return!(!A||!JR(A))&&A}const O6A=[".ph-no-autocapture","[data-ph-no-autocapture]"],GgI=["next","previous","prev",">","<","→","←","›","‹","»","«","▶","◀","❯","❮"],W6A=[...GgI,"+","-","−","–"],mgI=W6A.length+10,M0t=["button","a","input","select","textarea","label"],S0t=["button","link","tab","menuitem","option"],pgI=(g,A)=>/[a-z0-9]/i.test(A)?yB(W6A,A)?new RegExp(`\\b${A}\\b`).test(g):g.includes(A):g===A,f0t=g=>yB(M0t,g.tagName.toLowerCase())||yB(S0t,(g.getAttribute("role")||"").toLowerCase());function V6A(g){let A="",I="";const e=B=>{JR(B)&&E5(B)&&!sq(B)&&(A+=` ${BgA(B)}`,I=I||B.getAttribute("aria-label")||"",Gn(B.childNodes,e))};e(g),A=$T(A.replace(/\s+/g," "));const t=(aq(A)?A:"").toLowerCase(),o=g.getAttribute("aria-label")||(t?"":I);return{safeText:t,ariaLabel:$T(o).toLowerCase()}}const kgI=[".ph-no-rageclick",".ph-no-capture"],R0t=["","text","search","email","password","url","tel","number"];function MgI(g,A){if(!(!(typeof window>"u")&&window)||j6A(g))return!1;let I,e,t;var o,B;if(Fm(A)?(I=!!A&&kgI,e=void 0,t=!1):(I=(o=A?.css_selector_ignorelist)!==null&&o!==void 0?o:kgI,e=A?.content_ignorelist,t=(B=A?.ignore_text_selection)!==null&&B!==void 0&&B),I===!1||t&&(function(Q){return!(!Q||!JR(Q))&&(!!vw(Q,"textarea")||(vw(Q,"input")?yB(R0t,(Q.getAttribute("type")||"").toLowerCase()):(function(i){var E;if(i.isContentEditable)return!0;const n=(E=i.getAttribute)===null||E===void 0?void 0:E.call(i,"contenteditable");return n==="true"||n===""})(Q)))})(g))return!1;const{targetElementList:C}=SgI(g,!1);return!(e&&(function(Q,{safeText:i,ariaLabel:E}){let n;if(Q===!0)n=GgI;else{if(!cB(Q))return!1;if(Q.length>mgI)return Dt.error(`[PostHog] content_ignorelist array cannot exceed ${mgI} items. Use css_selector_ignorelist for more complex matching.`),!1;n=Q.map(s=>s.toLowerCase())}return n.some(s=>pgI(i,s)||pgI(E,s))})(e,(function(Q,i){for(const n of i)if(f0t(n))return V6A(n);for(const n of i){try{var E;if(((E=window)===null||E===void 0?void 0:E.getComputedStyle(n).getPropertyValue("cursor"))!=="pointer")break}catch{break}const s=V6A(n);if(s.safeText||s.ariaLabel)return s}return V6A(Q)})(g,C))||Z6A(C,I))}const j6A=g=>!g||vw(g,"html")||!JR(g),SgI=(g,A)=>{const I=typeof window>"u"?void 0:window;if(!I||j6A(g))return{parentIsUsefulElement:!1,targetElementList:[]};let e=!1;const t=[g];let o=g;for(;o.parentNode&&!vw(o,"body");){if(H6A(o.parentNode)){t.push(o.parentNode.host),o=o.parentNode.host;continue}const B=ugI(o);if(!B)break;if(A||T6A.indexOf(B.tagName.toLowerCase())>-1)e=!0;else try{const C=I.getComputedStyle(B);C&&C.getPropertyValue("cursor")==="pointer"&&(e=!0)}catch{}t.push(B),o=B}return{parentIsUsefulElement:e,targetElementList:t}};function E5(g){const A=new Set;let I=0;for(let o=g;o.parentNode&&!vw(o,"body");o=o.parentNode){if(I++>=1e3||A.has(o))return!1;A.add(o);const B=nq(o);if(yB(B,"ph-sensitive")||yB(B,"ph-no-capture"))return!1}if(yB(nq(g),"ph-include"))return!0;const e=g.type||"";if(qC(e))switch(e.toLowerCase()){case"hidden":case"password":return!1}const t=g.name||g.id||"";return!qC(t)||!/^cc|cardnum|ccnum|creditcard|csc|cvc|cvv|exp|pass|pwd|routing|seccode|securitycode|securitynum|socialsec|socsec|ssn/i.test(t.replace(/[^a-zA-Z0-9]/g,""))}function sq(g){return!!(vw(g,"input")&&!["button","checkbox","submit","reset"].includes(g.type)||vw(g,"select")||vw(g,"textarea")||g.getAttribute("contenteditable")==="true")}const fgI=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}))$"),RgI=/(^|[^0-9A-Za-z_])([0-9][0-9 -]*[0-9])(?=$|[^0-9A-Za-z_])/g,N0t=[16,15,14,13],x0t=new RegExp("^(\\d{3}-?\\d{2}-?\\d{4})$"),NgI=new RegExp("(^|[^0-9])((?!000|666)[0-9]{3}-?(?!00)[0-9]{2}-?(?!0000)[0-9]{4})(?=$|([^0-9]))","g"),xgI=/[0-9A-Za-z_]/;function F0t(g){let A=0,I=!1;for(let e=g.length-1;e>=0;e--){let t=g.charCodeAt(e)-48;I&&(t*=2,t>9&&(t-=9)),A+=t,I=!I}return A%10==0}function aq(g,A=!0){return!(hC(g)||qC(g)&&(g=$T(g),(A?fgI.test((g||"").replace(/[- ]/g,"")):(function(I){let e;for(RgI.lastIndex=0;e=RgI.exec(I);){const t=e[2];if(!t)continue;const o=t.replace(/[- ]/g,"");for(let B=0;o.length>B;B++)for(const C of N0t){const Q=B+C;if(o.length>=Q){const i=o.slice(B,Q);if(fgI.test(i)&&F0t(i))return!0}}}return!1})(g))||(A?x0t.test(g):(function(I){let e;for(NgI.lastIndex=0;e=NgI.exec(I);){const t=e[1],o=e[3];if(!(t&&o&&xgI.test(t)&&xgI.test(o)))return!0}return!1})(g))))}function FgI(g){let A=BgA(g);return A=`${A} ${UgI(g)}`.trim(),aq(A)?A:""}function UgI(g){let A="";return g&&g.childNodes&&g.childNodes.length&&Gn(g.childNodes,function(I){var e;if(I&&((e=I.tagName)===null||e===void 0?void 0:e.toLowerCase())==="span")try{const t=BgA(I);A=`${A} ${t}`.trim(),I.childNodes&&I.childNodes.length&&(A=`${A} ${UgI(I)}`.trim())}catch(t){Dt.error("[AutoCapture]",t)}}),A}function JgI(g){return g.replace(/"|\\"/g,'\\"')}function U0t(g){const A=g.attr__class;if(A)return cB(A)?A:v6A(A)}const cDA=zr("[Dead Clicks]"),J0t=()=>!0,P0t=g=>{var A;const I=!!(!((A=g.instance.persistence)===null||A===void 0)&&A.get_property(p6A)),e=g.instance.config.capture_dead_clicks;return Fm(e)?e:!!yC(e)||I};var PgI=class{get lazyLoadedDeadClicksAutocapture(){return this.Il}constructor(A,I,e){this.instance=A,this.isEnabled=I,this.onCapture=e,this.startIfEnabledOrStop()}onRemoteConfig(A){if(!A.ok)return;const I=A.config;"captureDeadClicks"in I&&(this.instance.persistence&&this.instance.persistence.register({[p6A]:I.captureDeadClicks}),this.startIfEnabledOrStop())}startIfEnabledOrStop(){this.isEnabled(this)?this.Ml(()=>{this.El()}):this.stop()}Ml(A){var I,e,t;!((I=UB.__PosthogExtensions__)===null||I===void 0)&&I.initDeadClicksAutocapture?A():(e=UB.__PosthogExtensions__)===null||e===void 0||(t=e.loadExternalDependency)===null||t===void 0||t.call(e,this.instance,"dead-clicks-autocapture",o=>{o?cDA.error("failed to load script",o):A()})}El(){var A;if(ro){if(!this.Il&&(!((A=UB.__PosthogExtensions__)===null||A===void 0)&&A.initDeadClicksAutocapture)){const I=yC(this.instance.config.capture_dead_clicks)?QI({},this.instance.config.capture_dead_clicks):{};I.__onCapture=this.onCapture,this.onCapture&&(I.capture_dead_swipes=!1),this.Il=UB.__PosthogExtensions__.initDeadClicksAutocapture(this.instance,I),this.Il.start(ro),cDA.info("starting...")}}else cDA.error("`document` not found. Cannot start.")}stop(){this.Il&&(this.Il.stop(),this.Il=void 0,cDA.info("stopping..."))}};const QgA=zr("[SegmentIntegration]");function KgI(g,A,I=!0){const e=g.config.segment;if(!e)return A();const{analytics:t,filterProperties:o}=(C=>C0(C.register))(B=e)?{analytics:B}:B;var B;(function(C,Q,i,E){const n=r=>{const a=()=>r.anonymousId()||UR();C.config.get_device_id=a,E&&r.id()&&(C.register({distinct_id:r.id(),$device_id:a()}),C.persistence.set_property(Um,nDA)),i(E?void 0:r.anonymousId()||void 0)},s=Q.user();"then"in s&&C0(s.then)?s.then(n):n(s)})(g,t,C=>{t.register(((Q,i,{filterProperties:E}={})=>{typeof Promise<"u"&&Promise.resolve||QgA.warn("This browser does not have Promise support, and can not use the segment integration");const n=(s,r)=>{if(!r)return s;const a=!!i&&s.event.anonymousId===i&&!s.event.userId;a||s.event.userId||s.event.anonymousId===Q.get_distinct_id()||(QgA.info("No userId set, resetting PostHog"),Q.reset()),a||(i=void 0),s.event.userId&&s.event.userId!==Q.get_distinct_id()&&(QgA.info("UserId set, identifying with PostHog"),Q.identify(s.event.userId));let c=Q.calculateEventProperties(r,s.event.properties);if(!hC(E)){const h=s.event.properties||{},l={};for(const d of Object.keys(c))THA.call(h,d)||(l[d]=c[d]);const D=((d,y)=>{const w=cB(d)?d:[d];let u=QI({},y);for(const G of w)try{if(u=G(u),hC(u))return null}catch(m){return QgA.error("Error in Segment filterProperties:",m),null}return u})(E,l);if(hC(D))return s;c=D}return s.event.properties=Object.assign({},c,s.event.properties),s};return{name:"PostHog JS",type:"enrichment",version:"1.0.0",isLoaded(){return!0},load(){return Promise.resolve()},track(s){return n(s,s.event.event)},page(s){return n(s,F6A)},identify(s){return n(s,igI)},screen(s){return n(s,"$screen")}}})(g,C,{filterProperties:o})).then(()=>{A()},Q=>{QgA.error("Failed to register the Segment integration",Q),A()})},I)}const LgI="posthog-js";function YgI(g,{organization:A,projectId:I,prefix:e,severityAllowList:t=["error"],sendExceptionsToPostHog:o=!0}={}){return B=>{var C,Q,i,E,n;if(t!=="*"&&!t.includes(B.level)||!g.__loaded)return B;B.tags||(B.tags={});const s=g.requestRouter.endpointFor("ui",`/project/${g.config.token}/person/${g.get_distinct_id()}`);B.tags["PostHog Person URL"]=s,g.sessionRecordingStarted()&&(B.tags["PostHog Recording URL"]=g.get_session_replay_url({withTimestamp:!0}));const r=((C=B.exception)===null||C===void 0?void 0:C.values)||[],a=r.map(l=>QI(QI({},l),{},{stacktrace:l.stacktrace?QI(QI({},l.stacktrace),{},{type:"raw",frames:(l.stacktrace.frames||[]).map(D=>QI(QI({},D),{},{platform:"web:javascript"}))}):void 0})),c={$exception_message:((Q=r[0])===null||Q===void 0?void 0:Q.value)||B.message,$exception_type:(i=r[0])===null||i===void 0?void 0:i.type,$exception_level:B.level,$exception_list:a,$sentry_event_id:B.event_id,$sentry_exception:B.exception,$sentry_exception_message:((E=r[0])===null||E===void 0?void 0:E.value)||B.message,$sentry_exception_type:(n=r[0])===null||n===void 0?void 0:n.type,$sentry_tags:B.tags};var h;return A&&I&&(c.$sentry_url=(e||"https://sentry.io/organizations/")+A+"/issues/?project="+I+"&query="+B.event_id),o&&((h=g.exceptions)===null||h===void 0||h.sendExceptionEvent(c)),B}}var K0t=class{constructor(A,I,e,t,o,B){this.name=LgI,this.setupOnce=function(C){C(YgI(A,{organization:I,projectId:e,prefix:t,severityAllowList:o,sendExceptionsToPostHog:B==null||B}))}}},_gI=class{constructor(A){this.Pl=(I,e,t)=>{t&&(t.noSessionId||t.activityTimeout||t.sessionPastMaximumLength||t.crossTabAdoption)&&(Dt.info("[PageViewManager] Session rotated, clearing pageview state",{sessionId:I,changeReason:t}),this.Rl=void 0,this._instance.scrollManager.resetContext())},this._instance=A,this.Al()}Al(){var A;this.Fl=(A=this._instance.sessionManager)===null||A===void 0?void 0:A.onSessionId(this.Pl)}destroy(){var A;(A=this.Fl)===null||A===void 0||A.call(this),this.Fl=void 0}doPageView(A,I){var e;const t=this.Ol(A,I);return this.Rl={pathname:(e=Se?.location.pathname)!==null&&e!==void 0?e:"",pageViewId:I,timestamp:A},this._instance.scrollManager.resetContext(),t}doPageLeave(A){var I;return this.Ol(A,(I=this.Rl)===null||I===void 0?void 0:I.pageViewId)}doEvent(){var A;return{$pageview_id:(A=this.Rl)===null||A===void 0?void 0:A.pageViewId}}Ol(A,I){const e=this.Rl;if(!e)return{$pageview_id:I};let t={$pageview_id:I,$prev_pageview_id:e.pageViewId};const o=this._instance.scrollManager.getContext();if(o&&!this._instance.config.disable_scroll_properties){let{maxScrollHeight:B,lastScrollY:C,maxScrollY:Q,maxContentHeight:i,lastContentY:E,maxContentY:n}=o;if(!(Ye(B)||Ye(C)||Ye(Q)||Ye(i)||Ye(E)||Ye(n))){B=Math.ceil(B),C=Math.ceil(C),Q=Math.ceil(Q),i=Math.ceil(i),E=Math.ceil(E),n=Math.ceil(n);const s=B>1?yx(C/B,0,1,Dt):1,r=B>1?yx(Q/B,0,1,Dt):1,a=i>1?yx(E/i,0,1,Dt):1,c=i>1?yx(n/i,0,1,Dt):1;t=sr(t,{$prev_pageview_last_scroll:C,$prev_pageview_last_scroll_percentage:s,$prev_pageview_max_scroll:Q,$prev_pageview_max_scroll_percentage:r,$prev_pageview_last_content:E,$prev_pageview_last_content_percentage:a,$prev_pageview_max_content:n,$prev_pageview_max_content_percentage:c})}}return e.pathname&&(t.$prev_pageview_pathname=e.pathname),e.timestamp&&(t.$prev_pageview_duration=(A.getTime()-e.timestamp.getTime())/1e3),t}};const igA=["flags","surveys"],L0t={[Vht]:{exposure:"hidden"},[EDA]:{exposure:"hidden"},[jht]:{exposure:"hidden"},[y6A]:{exposure:"hidden"},[oq]:{exposure:"hidden"},[IgA]:{exposure:"hidden"},[bAI]:{exposure:"event"},[w6A]:{exposure:"hidden"},[qAI]:{exposure:"hidden"},[u6A]:{exposure:"event"},[TAI]:{exposure:"hidden"},[G6A]:{exposure:"event"},[m6A]:{exposure:"event"},[p6A]:{exposure:"event"},[k6A]:{exposure:"hidden"},[ZAI]:{exposure:"event"},[egA]:{exposure:"hidden"},[zht]:{exposure:"hidden"},[Bq]:{exposure:"hidden"},[OAI]:{exposure:"event"},[Xht]:{exposure:"event",shouldSkipFromEventProperties:g=>Pc(g)},[e0t]:{exposure:"event"},[t0t]:{exposure:"event"},[o0t]:{exposure:"event"},[B0t]:{exposure:"event"},[C0t]:{exposure:"hidden"},[xR]:{exposure:"hidden",storageGroup:"flags"},[sJ]:{exposure:"hidden",storageGroup:"flags"},[c6A]:{exposure:"hidden"},[o5]:{exposure:"hidden",storageGroup:"flags"},[a3]:{exposure:"hidden",storageGroup:"flags"},[B5]:{exposure:"hidden",storageGroup:"flags",volatile:!0},[$AA]:{exposure:"hidden",storageGroup:"flags"},[wx]:{exposure:"hidden"},[C5]:{exposure:"hidden"},[s3]:{exposure:"hidden"},[n3]:{exposure:"hidden"},[ggA]:{exposure:"hidden",storageGroup:"surveys"},[CDA]:{exposure:"hidden",storageGroup:"surveys",volatile:!0},[l6A]:{exposure:"event"},[QDA]:{exposure:"hidden"},[iDA]:{exposure:"hidden"},[M6A]:{exposure:"hidden"},[Q0t]:{exposure:"hidden"},[i0t]:{exposure:"hidden"},[E0t]:{exposure:"event"},[n0t]:{exposure:"event"},[s0t]:{exposure:"event"},[a0t]:{exposure:"event"},[aJ]:{exposure:"hidden"},[AgA]:{exposure:"hidden"},[WAI]:{exposure:"event"},[XAA]:{exposure:"hidden"},[E3]:{exposure:"hidden",storageGroup:"flags",volatile:!0},[Um]:{exposure:"hidden"},[S6A]:{exposure:"hidden"},[r0t]:{exposure:"hidden"},[VAI]:{exposure:"hidden"},[jAI]:{exposure:"hidden"},[Cq]:{exposure:"hidden"},[f6A]:{exposure:"hidden"},[$ht]:{exposure:"event"},[A0t]:{exposure:"event"},[g0t]:{exposure:"event"},[I0t]:{exposure:"event"},[XAI]:{exposure:"event"},[$AI]:{exposure:"event"},[N6A]:{exposure:"hidden"},[x6A]:{exposure:"hidden"},[AgI]:{exposure:"hidden"},[ggI]:{exposure:"hidden"},[IgI]:{exposure:"hidden"},[egI]:{exposure:"hidden"},[tgI]:{exposure:"hidden"},[ogI]:{exposure:"hidden"},[BgI]:{exposure:"hidden"},[c0t]:{exposure:"event"}},Y0t=[["$posthog_sr_group_event_trigger_",{exposure:"hidden"}],["$posthog_sr_group_url_trigger_",{exposure:"hidden"}],["$posthog_sr_group_sampling_",{exposure:"hidden"}]],Ry=g=>{const A=L0t[g];if(A)return A;for(const[I,e]of Y0t)if(g.indexOf(I)===0)return e};function bgI(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{return}}const cJ=g=>{const A=typeof document>"u"?void 0:document,I=A?.createElement("a");return Ye(I)?null:(I.href=g,I)},HgI=()=>{try{return"u">typeof window&&window.navigator.onLine!==!1}catch{return!1}},vgI=(g,A)=>g>=A&&HgI(),TgI=(g,A,I,e)=>{if(g===0){if(HgI()){const t=A+1;return t===I&&e(),t}return A}return 0},rq=(g,A)=>{try{let I;return JSON.stringify(g,(e,t)=>{var o;return Aq(t)?((o=I)!==null&&o!==void 0||(I=new WeakMap),I.has(t)||I.set(t,ngI(t)),I.get(t)):typeof t=="bigint"?t.toString():t},A)}catch{return s$g(g)}},cq=function(g,A){const I=((g.split("#")[0]||"").split(/\?(.*)/)[1]||"").replace(/^\?+/g,"").split("&");let e;for(let t=0;I.length>t;t++){const o=I[t].split(/=(.*)/);if(o[0]===A){e=o;break}}if(!cB(e)||2>e.length)return"";{let t=e[1].replace(/\+/g," ");try{t=decodeURIComponent(t)}catch{Dt.error("Skipping decoding for malformed query param: "+t)}return t}},EgA=function(g,A,I){if(!g||!A||!A.length)return g;const e=g.split("#"),t=e[1],o=(e[0]||"").split("?"),B=o[1],C=o[0],Q=(B||"").split("&"),i=[];for(let n=0;Q.length>n;n++){const s=Q[n].split("=");cB(s)&&(A.includes(s[0])?i.push(s[0]+"="+I):i.push(Q[n]))}let E=C;return B!=null&&(E+="?"+i.join("&")),t!=null&&(E+="#"+t),E},hDA=function(g,A){const I=g.match(new RegExp(A+"=([^&]*)"));return I?I[1]:null},hq=["gclid","gclsrc","dclid","gbraid","wbraid","fbclid","msclkid","twclid","li_fat_id","igshid","ttclid","rdt_cid","epik","qclid","sccid","oppref","bfcid","irclid","_kx"],_0t=["utm_source","utm_medium","utm_campaign","utm_content","utm_term","gad_source","mc_cid",...hq],ngA="<masked>",b0t=["li_fat_id"];function qgI(g,A,I){if(!ro)return{};const e=A?[...hq,...I||[]]:[],t=ZgI(EgA(ro.URL,e,ngA),g),o=(function(){const B={};return Gn(b0t,function(C){const Q=tgA(C);B[C]=Q||null}),B})();return sr(o,t)}function ZgI(g,A){const I=_0t.concat(A||[]),e={};return Gn(I,function(t){const o=cq(g,t);e[t]=o||null}),e}function OgI(g){const A=(function(t){return t?t.search("https?://(.*)google.([^/?]*)")===0?"google":t.search("https?://(.*)bing.com")===0?"bing":t.search("https?://(.*)yahoo.com")===0?"yahoo":t.search("https?://(.*)duckduckgo.com")===0?"duckduckgo":null:null})(g),I=A!="yahoo"?"q":"p",e={};if(!Pc(A)){e.$search_engine=A;const t=ro?cq(ro.referrer,I):"";t.length&&(e.ph_keyword=t)}return e}function WgI(){return navigator.language||navigator.userLanguage}function H0t(){const g=WgI();return typeof g=="string"?g.split("-")[0]:void 0}const lDA="$direct";function VgI(){return ro?.referrer||lDA}function jgI(g,A,I=!1){const e=g?[...hq,...A||[]]:[],t=I?i3(Ca?.href):Ca?.href,o=t?.substring(0,1e3);return{r:VgI().substring(0,1e3),u:o?EgA(o,e,ngA):void 0}}function zgI(g,A=!1){var I;const{r:e,u:t}=g,o=A?i3(t):t,B={$referrer:e,$referring_domain:e==null?void 0:e==lDA?lDA:(I=cJ(e))===null||I===void 0?void 0:I.host};if(o){B.$current_url=o;const C=cJ(o);B.$host=C?.host,B.$pathname=C?.pathname;const Q=ZgI(o);sr(B,Q)}if(e){const C=OgI(e);sr(B,C)}return B}function v0t(){try{return new Date().getTimezoneOffset()}catch{return}}const T0t={flags:E3,surveys:CDA},q0t=["cookie","localstorage","localstorage+cookie","sessionstorage","memory"],DDA=g=>`${g}_cookie_identity_change_pending`,dDA=g=>{let A="",I=0;for(const e of g){const t=encodeURIComponent(JSON.stringify(e).slice(1,-1)).length;if(I+t>1e3)break;A+=e,I+=t}return A},SD="main",hJ=[xR,sJ,o5,a3,B5,E3,$AA,s3],z6A=g=>hJ.indexOf(g)!==-1,XgI=[oq,IgA],$gI=g=>XgI.indexOf(g)!==-1,r3=(g,A)=>{try{return JSON.stringify(g)===JSON.stringify(A)}catch{return g===A}},lq=g=>{if(!g)return{};const A=JSON.parse(g);return yC(A)?A:{}},AII=(g,A)=>{Gn(g,(I,e)=>{const t=Ry(e);t&&t.exposure!=="event"||{}.hasOwnProperty.call(A,e)||delete g[e]})};var X6A=class{constructor(A,I,e=!0,t=!A.cookieless_mode){if(this.Dl={},this.Ll=!1,this.Nl=!1,this.ql=!1,this.jl=!1,this.Bl=!1,this.zl=new Map,this.Hl=!1,this.Ul=!1,this.Wl=!1,this.Vl=new Set,this.Gl=new Set,this.Ar=A,this.Ql=e,this.props={},this.Zl=void 0,this.Jl=(o=>{let B="";return o.token&&(B=o.token.replace(/\+/g,"PL").replace(/\//g,"SL").replace(/=/g,"EQ")),o.persistence_name?"ph_"+o.persistence_name:"ph_"+B+"_posthog"})(A),this.hi=A.disable_persistence||!!I,this.$l=this.Kl(A),this.ql=this.Xl(A),this.load(t),this.Yl(),A.debug&&Dt.info("Persistence loaded",A.persistence,QI({},this.props)),this.update_config(A,A,I),this.save(),Se){const o=()=>this.flush();NE(Se,"beforeunload",o,{capture:!1}),NE(Se,"pagehide",o,{capture:!1}),this.tu=B=>{if(this.Ll&&(!B.storageArea||B.storageArea===Se?.localStorage)&&B.key)if(B.key!==this.Jl){if(this.ql){const C=igA.find(Q=>B.key===this.eu(Q));C&&this.iu(B.key,C)}}else this.iu(B.key,SD)},NE(Se,"storage",this.tu)}}markCrossTabFeatureFlagChanges(A){Object.entries(A).forEach(([I,e])=>{const t=this.zl.get(I);if(!z6A(I)||t===!0)return;if(e===!0)return void this.nu(I,!0);const o=new Set(t||[]);e.forEach(B=>o.add(B)),o.size&&this.nu(I,o)})}onCrossTabFeatureFlagChange(A){return this.Gl.add(A),()=>this.Gl.delete(A)}destroy(){this.tu&&Se&&(Se.removeEventListener("storage",this.tu),this.tu=void 0),this.Gl.clear()}iu(A,I,e=!0){if(this.hi)return!1;let t,o;try{if(o=aE.Ot(A),Pc(o)){const Q=this.su(I);return Q.storageValue=null,I!==SD&&(Q.persisted=!1),!1}t=lq(o)}catch{return!1}const B=I===SD?t:aE.Lt(this.Jl);if(B&&this.ru(B))return!1;const C=this.ou(t,I,e);return I===SD&&this.ql&&!r3(this.au().main,t)||this.lu(t,I,!0,o),C}ru(A){const I=this.props[FR],e=A[FR];return!Ye(I)&&!Ye(e)&&I!==e}lu(A,I,e,t){const o=this.su(I);o.storageValue=t,I!==SD&&(o.persisted=e);try{o.fingerprint=this.uu(A,I)}catch{o.fingerprint=void 0}}ou(A,I,e){let t=!1;return hJ.forEach(o=>{var B;const C=(B=Ry(o))===null||B===void 0?void 0:B.storageGroup;if(I===SD&&this.ql&&C||I!==SD&&C!==I)return;const Q=o in A,i=this.cu(o,Q?A[o]:void 0),E=this.zl.has(o)?o in this.props:Q;E===o in this.props&&r3(i,this.props[o])||(E?this.hu(o,i,!1):this.du(o,!1),t=!0)}),t&&e&&this.Gl.forEach(o=>o()),t}vu(){if(!this.Ll)return!1;try{this.Wl=!1;const A=aE.Ot(this.Jl),I=this.su(SD);let e,t=!1,o=!1;if(A!==I.storageValue)if(Pc(A))I.storageValue=null;else{if(e=lq(A),this.Wl=!this.Ul&&this.ru(e),this.Wl)return!1;o=this.ou(e,SD,!1),!this.ql||r3(this.au().main,e)?this.lu(e,SD,!0,A):I.storageValue=A,t=!0}return this.ql&&igA.forEach(B=>{const C=aE.Ot(this.eu(B)),Q=this.su(B),i=e||{},E=t&&hJ.some(s=>{var r;return((r=Ry(s))===null||r===void 0?void 0:r.storageGroup)===B&&s in i});if(C===Q.storageValue&&!E)return;if(Pc(C))return Q.storageValue=null,Q.persisted=!1,void(E&&(o=this.ou(i,B,!1)||o));const n=lq(C);o=this.ou(n,B,!1)||o,this.lu(n,B,!0,C)}),o}catch{return!1}}nu(A,I){this.zl.set(A,I);const e=Ry(A);e?.volatile||(this.su((this.ql?e?.storageGroup:void 0)||SD).fingerprint=void 0,this.fu(A))}pu(){hJ.forEach(A=>this.zl.set(A,!0))}Yl(){if(this.Ll)try{const A=aE.Ot(this.Jl),I=lq(A);this.su(SD).storageValue=A,hJ.forEach(e=>{var t;const o=this.ql?(t=Ry(e))===null||t===void 0?void 0:t.storageGroup:void 0,B=o?aE.Ot(this.eu(o)):null;if(o){const Q=this.su(o);Q.storageValue=B,Q.persisted=!Pc(B)}const C=o&&!Pc(B)?lq(B):I;e in this.props?this.gu(e,C[e],this.props[e]):e in C&&this.nu(e,!0)})}catch{}}cu(A,I){const e=this.zl.get(A);if(!e)return I;if(e===!0)return this.props[A];if(A==="$active_feature_flags"){const B=new Set(cB(I)?I:[]),C=new Set(cB(this.props[A])?this.props[A]:[]);return e.forEach(Q=>C.has(Q)?B.add(Q):B.delete(Q)),Array.from(B)}const t=yC(I)?QI({},I):{},o=yC(this.props[A])?this.props[A]:{};return e.forEach(B=>{B in o?t[B]=o[B]:delete t[B]}),t}gu(A,I,e){if(!z6A(A))return;const t=this.zl.get(A);if(t===!0)return;let o=I;if(this.Ll)try{var B;const Q=this.ql?(B=Ry(A))===null||B===void 0?void 0:B.storageGroup:void 0,i=Q?this.eu(Q):this.Jl;o=lq(aE.Ot(i))[A]}catch{}const C=new Set(t||[]);if(A==="$active_feature_flags"){if(!Ye(I)&&!cB(I)||!Ye(o)&&!cB(o)||!cB(e))return void this.nu(A,!0);const Q=new Set(I||[]),i=new Set(o||[]),E=new Set(e);new Set([...Q,...E]).forEach(n=>{Q.has(n)!==E.has(n)&&C.add(n)}),C.forEach(n=>{i.has(n)===E.has(n)&&C.delete(n)})}else{if(!yC(e))return void(r3(o,e)?this.zl.delete(A):this.nu(A,!0));{if(!Ye(I)&&!yC(I)||Ye(I)&&sk(e)&&Ye(o))return void this.nu(A,!0);const Q=yC(I)?I:{},i=yC(o)?o:{};new Set([...Object.keys(Q),...Object.keys(e)]).forEach(E=>{E in Q==E in e&&r3(Q[E],e[E])||C.add(E)}),C.forEach(E=>{E in i==E in e&&r3(i[E],e[E])&&C.delete(E)})}}C.size?this.nu(A,C):this.zl.delete(A)}mu(){var A;const I=(A=this.Ar)===null||A===void 0?void 0:A.persistence_save_debounce_ms;return Gh(I)&&I>0?I:0}yu(A){if(this.Ar.cookieWinsOnConflict&&this.Ar.persistence.toLowerCase()==="localstorage+cookie")if(A)try{const I=Y6A(A,this.Ar.cookie_persisted_properties||[]),e=cgI(I,this.Ar.cookie_persisted_properties||[]),t=JSON.stringify(I)+"|"+JSON.stringify(e),o=Kc.Ot(this.Jl)||void 0;o&&_6A(this.Jl,o)===t&&(this.bu=t,this._u=o)}catch{}else try{const I=Kc.Ot(this.Jl)||void 0;this.bu=I?_6A(this.Jl,I):void 0,this._u=I}catch{}}syncCookieProperties(){return this.wu(this.Ar)}wu(A,I=!1){if(this.hi&&!I||this.Bl||!A.cookieWinsOnConflict||A.persistence.toLowerCase()!=="localstorage+cookie")return!1;let e;try{e=Kc.Ot(this.Jl)||void 0}catch{}if(!e||e===this._u)return!1;const t=_6A(this.Jl,e);let o;try{o=L6A(JSON.parse(e))}catch{return!1}if((Kc.Ot(this.Jl)||void 0)!==e)return!1;this.bu=t,this._u=e;const B=hgI(this.Jl,e),C=[...Q5,...B.properties],Q={};if(Object.keys(o).forEach(h=>{const l=o[h];(Ye(l)||Pc(l)||l===""||h==="$user_state"&&l!=="anonymous"&&l!=="identified")&&(Q[h]=!0,delete o[h])}),sk(o))return!1;const i="distinct_id"in o||o.$user_state==="anonymous"||o.$user_state==="identified",E=this.props,n=E[FR],s=E[Um],r=sr({},E);[...Q5,...A.cookie_persisted_properties||[]].forEach(h=>{if(C.indexOf(h)!==-1&&!(h in o)&&!Q[h]&&(i||h!=="distinct_id"&&h!=="$user_state")){const l=r[h];(B.isValid||Q5.indexOf(h)===-1||l!==!1&&l!==0)&&delete r[h]}}),this.props=sr(r,o),hJ.forEach(h=>{const l=h in this.props;h in E===l&&r3(E[h],this.props[h])||(l?this.gu(h,E[h],this.props[h]):this.nu(h,!0))}),!i||"$user_state"in o||"$user_state"in this.props||this.hu(Um,rJ);const a=this.props[FR],c=this.props[Um];return!i||a===n&&c===s||(this.Ul=!0,this.jl=!0,ia.At(DDA(this.Jl),!0),this.du(s3),this.du(sJ),this.du(xR),this.du(o5),this.du(a3),this.du(B5),this.du(E3),this.du(XAA),this.du(aJ),c!=="anonymous"||s!=="identified"&&o.$user_state!=="anonymous"&&(Ye(n)||a===n)||(AII(this.props,o),this.du(n3)),c==="identified"?this.props.$user_id=a:delete this.props.$user_id,this.du(EDA)),!0}consumeCookieIdentityChange(){const A=DDA(this.Jl),I=this.jl||!!ia.Ot(A);return this.jl=!1,I&&ia.Pt(A),I}ku(A=!1){return!(this.Bl||this.hi&&!A||!this.Ar.cookieWinsOnConflict||this.Ar.persistence.toLowerCase()!=="localstorage+cookie"||(this.Bl=!0,0))}Su(){this.Bl&&(Ye(this.xu)||(clearTimeout(this.xu),this.xu=void 0),delete this.Dl[SD],this.$u(!0))}Cu(A=!0){if(this.Bl)try{A?this.Su():Ye(this.xu)||(clearTimeout(this.xu),this.xu=void 0)}finally{this.Bl=!1}}isDisabled(){return!!this.hi}Kl(A){q0t.indexOf(A.persistence.toLowerCase())===-1&&(Dt.critical("Unknown persistence type "+A.persistence+"; falling back to localStorage+cookie"),A.persistence="localStorage+cookie");const I=((C=[],Q=!1,i=()=>!1)=>{const E=[...Q5,...C];return QI(QI({},aE),{},{Lt(n){try{let r,a={};try{r=Kc.Ot(n)||void 0,a=r?L6A(JSON.parse(r)):{}}catch{}const c=JSON.parse(aE.Ot(n)||"{}");let h;if(Q){const l=hgI(n,r),D=[...Q5,...l.properties],d={};Object.keys(a).forEach(w=>{const u=a[w];Pc(u)||u===""||w==="$user_state"&&u!=="anonymous"&&u!=="identified"||(d[w]=u)});const y="distinct_id"in d||d.$user_state==="anonymous"||d.$user_state==="identified";if(Object.keys(d).length>0){var s;const w=c[FR],u=(s=c.$user_state)!==null&&s!==void 0?s:rJ;E.forEach(G=>{if(D.indexOf(G)!==-1&&!(G in a)&&(y||G!=="distinct_id"&&G!=="$user_state")){const m=c[G];(l.isValid||Q5.indexOf(G)===-1||m!==!1&&m!==0)&&delete c[G]}}),!y||"$user_state"in a||"$user_state"in c||(c[Um]=rJ),!y||("distinct_id"in d?d[FR]:c[FR])===w&&("$user_state"in d?d[Um]:c[Um])===u||(K6A.forEach(G=>delete c[G]),d.$user_state==="identified"&&"distinct_id"in d?c.$user_id=d[FR]:delete c.$user_id,d.$user_state!=="identified"&&(delete c[WAI],delete c[n3]),delete c.__alias)}h=sr(c,d)}else h=sr(a,c);return i()||aE.At(n,h),h}catch{}return null},At(n,s,r,a,c,h){const l=aE.At(n,s,void 0,void 0,h);try{const D=Y6A(s,C);if(Object.keys(D).length){if(Q){const d=rDA(n),y=cgI(D,C);if(Kc.At(d,y,r,a,c,h),Kc.Ot(d)!==JSON.stringify(y)){Kc.Pt(d,a);const w=Y6A(s);return Kc.At(n,w,r,a,c,h),l}}Kc.At(n,D,r,a,c,h)}}catch(D){aE.Ft(D)}return l},Pt(n,s){try{Se?.localStorage.removeItem(n),Kc.Pt(n,s),Kc.Pt(rDA(n),s)}catch(r){aE.Ft(r)}}})})(A.cookie_persisted_properties||[],A.cookieWinsOnConflict,()=>!!this.hi);let e,t=!1,o=!1;const B=A.persistence.toLowerCase();return B==="localstorage"&&aE.$t()?(e=aE,o=!0):B==="localstorage+cookie"&&I.$t()?(e=I,o=!0,t=!0):B==="sessionstorage"&&ia.$t()?e=ia:B==="memory"?e=b6A:B==="cookie"&&Kc.$t()?(e=Kc,t=!0):I.$t()?(e=I,o=!0,t=!0):Kc.$t()?(e=Kc,t=!0):e=b6A,this.Ll=o,this.Nl=t,e}eu(A){return`${this.Jl}__${A}`}Xl(A){return this.Ll&&!!A.split_storage}properties(){const A={};return Gn(this.props,(I,e)=>{const t=Ry(e);if(!t||t.exposure==="event"){var o;if(!(t==null||(o=t.shouldSkipFromEventProperties)===null||o===void 0)&&o.call(t,I))return;A[e]=I}}),A}load(A=!1){if(this.hi&&!A)return;const I=this.Ar.cookieWinsOnConflict&&this.Ar.persistence.toLowerCase()==="localstorage+cookie",e=I?aE.Lt(this.Jl):null;let t={};if(I)try{t=L6A(Kc.Lt(this.Jl)),Gn(t,(Q,i)=>{(Ye(Q)||Pc(Q)||Q==="")&&delete t[i]})}catch{}const o=this.$l.Lt(this.Jl);if(o&&(this.props=sr({},o)),this.ql&&this.Tu(),I&&o){var B,C;const Q=e?.[FR],i=(B=e?.$user_state)!==null&&B!==void 0?B:rJ,E=o[FR],n=(C=o.$user_state)!==null&&C!==void 0?C:rJ;if(E!==Q||n!==i){this.jl=!0,this.hi||ia.At(DDA(this.Jl),!0);const s=sr({},this.props);K6A.forEach(a=>delete s[a]),n!=="anonymous"||i!=="identified"&&t.$user_state!=="anonymous"&&(Ye(Q)||E===Q)||(AII(s,t),delete s[n3]),this.props=s;const r=new Set;K6A.forEach(a=>{var c;const h=(c=Ry(a))===null||c===void 0?void 0:c.storageGroup;h&&r.add(h)}),r.forEach(a=>{if(this.hi)return;const c={};Gn(this.props,(h,l)=>{var D;((D=Ry(l))===null||D===void 0?void 0:D.storageGroup)===a&&(c[l]=h)}),sk(c)?(aE.Pt(this.eu(a)),this.Dl[a]={}):aE.At(this.eu(a),c)&&(this.Dl[a]={persisted:!0,fingerprint:this.uu(c,a)})})}}ia.Ot(DDA(this.Jl))&&(this.jl=!0)}Tu(){for(const A of igA){const I=aE.Lt(this.eu(A));if(I&&!sk(I)){const e=this.su(A);e.persisted=!0,this.Iu(A)||(e.fingerprint=this.uu(I,A)),this.Mu(A,I)||sr(this.props,I)}}}Iu(A){return Object.keys(this.props).some(I=>{var e;return((e=Ry(I))===null||e===void 0?void 0:e.storageGroup)===A})}Mu(A,I){const e=T0t[A];if(!e)return!1;const t=I[e],o=this.props[e];return Gh(t)&&Gh(o)&&o>t}refreshKey(A){var I;if(this.hi||this.Vl.has(A))return;const e=this.ql?(I=Ry(A))===null||I===void 0?void 0:I.storageGroup:void 0,t=e?aE.Lt(this.eu(e)):this.$l.Lt(this.Jl);if(t&&A in t)this.hu(A,t[A],!1);else{if(e){const o=this.$l.Lt(this.Jl);if(o&&A in o)return void this.hu(A,o[A],!1)}this.du(A,!1)}}save(){if(this.hi)return;const A=this.mu();A>0?Ye(this.xu)&&(this.xu=setTimeout(()=>{this.xu=void 0,this.$u()},A)):this.$u()}flush(){Ye(this.xu)||(clearTimeout(this.xu),this.xu=void 0,this.$u())}$u(A=!1){if(this.hi||this.Bl&&!A)return;A||(this.syncCookieProperties(),this.Ar.cookieWinsOnConflict&&this.Ar.persistence.toLowerCase()==="localstorage+cookie"||XgI.forEach(o=>this.refreshKey(o)));const I=!A&&!this.Hl;I||(this.Wl=!1);const e=!!I&&this.vu();if(this.Wl)return void(this.Ar.debug&&Dt.warn("skipping persistence write because storage belongs to a different distinct ID"));if(this.ql)return this.Eu(),void(e&&this.Gl.forEach(o=>o()));const t=this.Pu(this.$l,this.Jl,this.props,SD);t==="written"&&this.yu(this.props),t!=="failed"&&(this.zl.clear(),this.Ul=!1,this.Vl.clear()),e&&this.Gl.forEach(o=>o())}Eu(){const{main:A,groups:I}=this.au(),e=this.Pu(this.$l,this.Jl,A,SD);e==="written"&&this.yu(A),e!=="failed"&&(this.Ul=!1,this.Vl.clear(),hJ.forEach(o=>{var B;!((B=Ry(o))===null||B===void 0)&&B.storageGroup||this.zl.delete(o)}));for(const o of igA){var t;const B=I[o];if(sk(B)&&!(!((t=this.Dl[o])===null||t===void 0)&&t.persisted)){hJ.forEach(Q=>{var i;((i=Ry(Q))===null||i===void 0?void 0:i.storageGroup)===o&&this.zl.delete(Q)});continue}const C=this.Pu(aE,this.eu(o),B,o);C!=="failed"&&hJ.forEach(Q=>{const i=Ry(Q);i?.storageGroup!==o||C!=="written"&&i.volatile||this.zl.delete(Q)})}}au(){const A={},I={flags:{},surveys:{}};return Gn(this.props,(e,t)=>{var o;const B=(o=Ry(t))===null||o===void 0?void 0:o.storageGroup;B?I[B][t]=e:A[t]=e}),{main:A,groups:I}}uu(A,I){if(I===SD)return JSON.stringify(A)+"|"+this.Ru+"|"+this.Au+"|"+this.Fu;const e={};return Gn(A,(t,o)=>{var B;e[o]=!((B=Ry(o))===null||B===void 0)&&B.volatile?"__volatile__":t}),JSON.stringify(e)}Pu(A,I,e,t){const o=this.su(t);if(t!==SD&&!o.dirty&&!Ye(o.fingerprint))return"skipped";let B;try{if(B=this.uu(e,t),B===o.fingerprint)return o.dirty=!1,"skipped"}catch{B=void 0}return A.At(I,e,this.Ru,this.Au,this.Fu,this.Ar.debug)?(o.dirty=!1,t!==SD&&(o.persisted=!0),Ye(B)||(o.fingerprint=B),this.Ll&&(o.storageValue=aE.Ot(I)),"written"):(this.Ar.debug&&Dt.warn(`failed to persist storage entry "${I}"; will retry on next save`),"failed")}remove({keepGroupEntries:A=!1}={}){if(this.pu(),Ye(this.xu)||(clearTimeout(this.xu),this.xu=void 0),this.$l.Pt(this.Jl,!1),this.$l.Pt(this.Jl,!0),!A&&this.Ql)for(const I of igA)aE.Pt(this.eu(I));A?delete this.Dl[SD]:this.Dl={},this.bu=void 0,this._u=void 0}clear(){this.remove(),this.props={}}register_once(A,I,e){if(yC(A)){this.syncCookieProperties(),Ye(I)&&(I="None"),this.Ru=Ye(e)?this.Ou:e;let t=!1;if(Gn(A,(o,B)=>{this.props.hasOwnProperty(B)&&this.props[B]!==I||(this.hu(B,o),t=!0)}),t)return this.save(),!0}return!1}register(A,I){if(yC(A)){this.syncCookieProperties(),this.Ru=Ye(I)?this.Ou:I;let e=!1;if(Gn(A,(t,o)=>{A.hasOwnProperty(o)&&(this.props[o]!==t||yC(t)||cB(t))&&(this.hu(o,t),e=!0)}),e)return this.save(),!0}return!1}unregister(A){this.syncCookieProperties();const I=typeof A=="string"?[A]:A;let e=!1;for(const t of I)t in this.props&&(this.du(t),e=!0);e&&this.save()}update_campaign_params(){const A=ro?.URL;if(A===this.Zl)return;const I=qgI(this.Ar.custom_campaign_params,this.Ar.mask_personal_data_properties,this.Ar.custom_personal_data_properties),e=!sk(U6A(I));return e&&this.register(I),this.Zl=A,e?I:void 0}update_search_keyword(){this.register((function(){const A=ro?.referrer;return A?OgI(A):{}})())}update_referrer_info(){var A;this.register_once({$referrer:VgI(),$referring_domain:ro?.referrer&&((A=cJ(ro.referrer))===null||A===void 0?void 0:A.host)||lDA},void 0)}set_initial_person_info(){if(this.props.$initial_campaign_params||this.props.$initial_referrer_info)return;const A=jgI(this.Ar.mask_personal_data_properties,this.Ar.custom_personal_data_properties,this.Ar.disable_capture_url_hashes);this.register_once({[Cq]:this.Nl?{r:dDA(A.r),u:A.u?dDA(A.u):void 0}:A},void 0)}get_initial_props(){const A={};Gn([jAI,VAI],e=>{const t=this.props[e];t&&Gn(t,function(o,B){A["$initial_"+vHA(B)]=o})});const I=this.props[Cq];if(I){const e=(function(t,o=!1){const B=zgI(t,o),C={};return Gn(B,function(Q,i){C[`$initial_${vHA(i)}`]=Q}),C})(I,this.Ar.disable_capture_url_hashes);sr(A,e)}return A}safe_merge(A){return Gn(this.props,function(I,e){e in A||(A[e]=I)}),A}update_config(A,I,e){const t=A.persistence!==I.persistence,o=!((a,c)=>{if(a.length!==c.length)return!1;const h=[...a].sort(),l=[...c].sort();return h.every((D,d)=>D===l[d])})(A.cookie_persisted_properties||[],I.cookie_persisted_properties||[]),B=t||o,C=A.cookieWinsOnConflict!==I.cookieWinsOnConflict,Q=A.disable_persistence||!!e,i=!!this.hi&&!Q;Q||this.wu(I,i),this.Ar=A,!Q&&(t||o||C)&&(this.bu=void 0,this._u=void 0,this.wu(QI(QI({},A),{},{cookie_persisted_properties:I.cookie_persisted_properties}),i));const E=B||C?this.Kl(A):this.$l;this.Du();const n=this.Xl(A),s=B||n!==this.ql,r=!Q&&(s||A.cross_subdomain_cookie!==this.Au||A.secure_cookie!==this.Fu)&&this.ku(i);this.Hl=s;try{if(this.Ou=this.Ru=A.cookie_expiration,this.set_disabled(Q),this.set_cross_subdomain(A.cross_subdomain_cookie),this.set_secure(A.secure_cookie),s){const a=this.props;this.clear(),this.$l=E,this.ql=n,this.props=a,this.save()}else C&&(this.$l=E,Q||(delete this.Dl[SD],this.$u()))}finally{this.Hl=!1,r&&this.Cu()}}Du(){const A=this.props[Cq];if(!this.Nl||!yC(A)||typeof A.r!="string")return;const I=dDA(A.r),e=typeof A.u=="string"?dDA(A.u):A.u;I===A.r&&e===A.u||this.hu(Cq,QI(QI({},A),{},{r:I,u:e}))}set_disabled(A){this.hi=A,this.hi?this.remove():this.save()}set_cross_subdomain(A){A!==this.Au&&(this.Au=A,this.remove({keepGroupEntries:!0}),this.save())}set_secure(A){A!==this.Fu&&(this.Fu=A,this.remove({keepGroupEntries:!0}),this.save())}set_event_timer(A,I){const e=this.props.__timers||{};e[A]=I,this.hu(y6A,e),this.save()}remove_event_timer(A){const I=this.props.__timers||{},e=I[A];return Ye(e)||(delete I[A],this.hu(y6A,I),this.save()),e}get_property(A){return this.props[A]}set_property(A,I){this.hu(A,I),this.save()}hu(A,I,e=!0){var t;const o=this.props[A];this.props[A]=I,e&&(A!=="distinct_id"&&A!=="$user_state"||o===I||(this.Ul=!0),$gI(A)&&!r3(o,I)&&this.Vl.add(A),this.gu(A,o,I),!((t=Ry(A))===null||t===void 0)&&t.volatile||this.fu(A))}du(A,I=!0){delete this.props[A],I&&(z6A(A)&&this.nu(A,!0),$gI(A)&&this.Vl.add(A),this.fu(A))}fu(A){var I;const e=(I=Ry(A))===null||I===void 0?void 0:I.storageGroup;e&&(this.su(e).dirty=!0)}su(A){return this.Dl[A]||(this.Dl[A]={})}};const $M={GZipJS:"gzip-js",Base64:"base64"},sgA={Activation:"events",Cancellation:"cancelEvents"},$6A={Popover:"popover",API:"api",Widget:"widget"},AS={SHOWN:"survey shown",DISMISSED:"survey dismissed",SENT:"survey sent"},AvA={SURVEY_ID:"$survey_id",SURVEY_ITERATION:"$survey_iteration",SURVEY_LAST_SEEN_DATE:"$survey_last_seen_date"},gvA={Popover:"popover",Inline:"inline"};function yDA(g){let A=!0;return{dispose(){if(A){A=!1;const I=g();I&&C0(I.then)&&I.then(void 0,()=>{})}}}}const Z0t={SHOWN:"product tour shown"},gII={TOUR_LAST_SEEN_DATE:"$product_tour_last_seen_date",TOUR_TYPE:"$product_tour_type"},III=zr("[RateLimiter]");var O0t=class{constructor(g){this.serverLimits={},this.lastEventRateLimited=!1,this.checkForLimiting=A=>{const I=A.text;if(I&&I.length)try{(JSON.parse(I).quota_limited||[]).forEach(e=>{III.info(`${e||"events"} is quota limited.`),this.serverLimits[e]=new Date().getTime()+6e4})}catch(e){return void III.warn(`could not rate limit - continuing. Error: "${e?.message}"`,{text:I})}},this.instance=g,this.lastEventRateLimited=this.clientRateLimitContext(!0).isRateLimited}get captureEventsPerSecond(){var g;return((g=this.instance.config.rate_limiting)===null||g===void 0?void 0:g.events_per_second)||10}get captureEventsBurstLimit(){var g;return Math.max(((g=this.instance.config.rate_limiting)===null||g===void 0?void 0:g.events_burst_limit)||10*this.captureEventsPerSecond,this.captureEventsPerSecond)}clientRateLimitContext(g=!1){var A,I,e;const{captureEventsBurstLimit:t,captureEventsPerSecond:o}=this,B=new Date().getTime(),C=(A=(I=this.instance.persistence)===null||I===void 0?void 0:I.get_property("$capture_rate_limit"))!==null&&A!==void 0?A:{tokens:t,last:B};C.tokens+=Math.max(0,B-C.last)/1e3*o,C.last=Math.max(C.last,B),C.tokens>t&&(C.tokens=t);const Q=1>C.tokens;if(Q||g||(C.tokens=Math.max(0,C.tokens-1)),Q&&!g){const i=(Gh(C.dropped)?C.dropped:0)+1;C.dropped=i,!this.lastEventRateLimited&&this.Lu(i)&&(C.dropped=0)}return this.lastEventRateLimited=Q,(e=this.instance.persistence)===null||e===void 0||e.set_property("$capture_rate_limit",C),{isRateLimited:Q,remainingTokens:C.tokens}}Nu(g){const A=this.instance.config.property_denylist;return!cB(A)||!A.includes(g)}qu(){var g;if(this.Nu("$current_url")&&this.Nu("$pathname")&&Ca?.pathname)return`${(g=Ca.origin)!==null&&g!==void 0?g:""}${Ca.pathname}`}Lu(g){var A,I;const{captureEventsBurstLimit:e,captureEventsPerSecond:t}=this,o=this.qu(),B=this.Nu("$session_id")?(A=(I=this.instance).get_session_id)===null||A===void 0?void 0:A.call(I):void 0,C=[`${g} event(s) dropped since the last warning`,o?`triggered on ${o}`:void 0,B?`session ${B}`:void 0].filter(Boolean).join(", ");return!!this.instance.capture("$$client_ingestion_warning",{$$client_ingestion_warning_message:`posthog-js client rate limited: ${C}. Config is set to ${t} events per second and ${e} events burst limit.`},{skip_client_rate_limiting:!0})}isServerRateLimited(g){const A=this.serverLimits[g||"events"]||!1;return A!==!1&&new Date().getTime()<A}};const c3=zr("[RemoteConfig]");var eII=class{constructor(A){this._instance=A}get remoteConfig(){var A;return(A=UB._POSTHOG_REMOTE_CONFIG)===null||A===void 0||(A=A[this._instance.config.token])===null||A===void 0?void 0:A.config}ju(A){var I,e,t;!((I=UB.__PosthogExtensions__)===null||I===void 0)&&I.loadExternalDependency?(e=UB.__PosthogExtensions__)===null||e===void 0||(t=e.loadExternalDependency)===null||t===void 0||t.call(e,this._instance,"remote-config",()=>A(this.remoteConfig)):A()}Bu(A){this._instance._send_request({method:"GET",url:this._instance.requestRouter.endpointFor("assets",`/array/${this._instance.config.token}/config`),callback:A})}load(){try{if(this.remoteConfig)return c3.info("Using preloaded remote config",this.remoteConfig),void this.zu(this.remoteConfig);if(this._instance.Hu())return void c3.warn("Remote config is disabled. Falling back to local config.");this.ju(A=>{if(!A)return c3.info("No config found after loading remote JS config. Falling back to JSON."),void this.Bu(I=>{this.zu(I.json,I)});this.zu(A)})}catch(A){c3.error("Error loading remote config",A),this.zu()}}zu(A,I){!A&&I&&(I.statusCode===0?I.error||c3.warn("Failed to fetch remote config from PostHog."):c3.error("Failed to fetch remote config from PostHog."));try{this._instance.zu(A?{ok:!0,config:A}:{ok:!1})}catch(t){c3.error("Error applying remote config",t)}if(A?.hasFeatureFlags!==!1&&!this._instance.config.advanced_disable_feature_flags_on_first_load)try{var e;(e=this._instance.featureFlags)===null||e===void 0||e.ensureFlagsLoaded()}catch(t){c3.error("Error loading feature flags",t)}}},Af=Uint8Array,rk=Uint16Array,Dq=Uint32Array,IvA=new Af([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),evA=new Af([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),tII=new Af([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),oII=function(g,A){for(var I=new rk(31),e=0;31>e;++e)I[e]=A+=1<<g[e-1];var t=new Dq(I[30]);for(e=1;30>e;++e)for(var o=I[e];I[e+1]>o;++o)t[o]=o-I[e]<<5|e;return[I,t]},BII=oII(IvA,2),tvA=BII[1];BII[0][28]=258,tvA[258]=28;for(var CII=oII(evA,0)[1],QII=new rk(32768),Lc=0;32768>Lc;++Lc){var dq=(43690&Lc)>>>1|(21845&Lc)<<1;QII[Lc]=((65280&(dq=(61680&(dq=(52428&dq)>>>2|(13107&dq)<<2))>>>4|(3855&dq)<<4))>>>8|(255&dq)<<8)>>>1}var agA=function(g,A,I){for(var e=g.length,t=0,o=new rk(A);e>t;++t)++o[g[t]-1];var B,C=new rk(A);for(t=0;A>t;++t)C[t]=C[t-1]+o[t-1]<<1;for(B=new rk(e),t=0;e>t;++t)B[t]=QII[C[g[t]-1]++]>>>15-g[t];return B},n5=new Af(288);for(Lc=0;144>Lc;++Lc)n5[Lc]=8;for(Lc=144;256>Lc;++Lc)n5[Lc]=9;for(Lc=256;280>Lc;++Lc)n5[Lc]=7;for(Lc=280;288>Lc;++Lc)n5[Lc]=8;var wDA=new Af(32);for(Lc=0;32>Lc;++Lc)wDA[Lc]=5;var W0t=agA(n5,9),V0t=agA(wDA,5),iII=function(g){return(g/8|0)+(7&g&&1)},EII=function(g,A,I){(I==null||I>g.length)&&(I=g.length);var e=new(g instanceof rk?rk:g instanceof Dq?Dq:Af)(I-A);return e.set(g.subarray(A,I)),e},lJ=function(g,A,I){var e=A/8|0;g[e]|=I<<=7&A,g[e+1]|=I>>>8},rgA=function(g,A,I){var e=A/8|0;g[e]|=I<<=7&A,g[e+1]|=I>>>8,g[e+2]|=I>>>16},ovA=function(g,A){for(var I=[],e=0;g.length>e;++e)g[e]&&I.push({s:e,f:g[e]});var t=I.length,o=I.slice();if(!t)return[new Af(0),0];if(t==1){var B=new Af(I[0].s+1);return B[I[0].s]=1,[B,1]}I.sort(function(w,u){return w.f-u.f}),I.push({s:-1,f:25001});var C=I[0],Q=I[1],i=0,E=1,n=2;for(I[0]={s:-1,f:C.f+Q.f,l:C,r:Q};E!=t-1;)C=I[I[n].f>I[i].f?i++:n++],Q=I[i!=E&&I[n].f>I[i].f?i++:n++],I[E++]={s:-1,f:C.f+Q.f,l:C,r:Q};var s=o[0].s;for(e=1;t>e;++e)o[e].s>s&&(s=o[e].s);var r=new rk(s+1),a=BvA(I[E-1],r,0);if(a>A){e=0;var c=0,h=a-A,l=1<<h;for(o.sort(function(w,u){return r[u.s]-r[w.s]||w.f-u.f});t>e;++e){var D=o[e].s;if(A>=r[D])break;c+=l-(1<<a-r[D]),r[D]=A}for(c>>>=h;c>0;){var d=o[e].s;A>r[d]?c-=1<<A-r[d]++-1:++e}for(;e>=0&&c;--e){var y=o[e].s;r[y]==A&&(--r[y],++c)}a=A}return[new Af(r),a]},BvA=function(g,A,I){return g.s==-1?Math.max(BvA(g.l,A,I+1),BvA(g.r,A,I+1)):A[g.s]=I},nII=function(g){for(var A=g.length;A&&!g[--A];);for(var I=new rk(++A),e=0,t=g[0],o=1,B=function(Q){I[e++]=Q},C=1;A>=C;++C)if(g[C]==t&&C!=A)++o;else{if(!t&&o>2){for(;o>138;o-=138)B(32754);o>2&&(B(o>10?o-11<<5|28690:o-3<<5|12305),o=0)}else if(o>3){for(B(t),--o;o>6;o-=6)B(8304);o>2&&(B(o-3<<5|8208),o=0)}for(;o--;)B(t);o=1,t=g[C]}return[I.subarray(0,e),A]},cgA=function(g,A){for(var I=0,e=0;A.length>e;++e)I+=g[e]*A[e];return I},CvA=function(g,A,I){var e=I.length,t=iII(A+2);g[t]=255&e,g[t+1]=e>>>8,g[t+2]=255^g[t],g[t+3]=255^g[t+1];for(var o=0;e>o;++o)g[t+o+4]=I[o];return 8*(t+4+e)},sII=function(g,A,I,e,t,o,B,C,Q,i,E){lJ(A,E++,I),++t[256];for(var n=ovA(t,15),s=n[0],r=n[1],a=ovA(o,15),c=a[0],h=a[1],l=nII(s),D=l[0],d=l[1],y=nII(c),w=y[0],u=y[1],G=new rk(19),m=0;D.length>m;++m)G[31&D[m]]++;for(m=0;w.length>m;++m)G[31&w[m]]++;for(var p=ovA(G,7),k=p[0],S=p[1],R=19;R>4&&!k[tII[R-1]];--R);var x,N,U,K,Y=i+5<<3,b=cgA(t,n5)+cgA(o,wDA)+B,q=cgA(t,s)+cgA(o,c)+B+14+3*R+cgA(G,k)+(2*G[16]+3*G[17]+7*G[18]);if(b>=Y&&q>=Y)return CvA(A,E,g.subarray(Q,Q+i));if(lJ(A,E,1+(b>q)),E+=2,b>q){x=agA(s,r),N=s,U=agA(c,h),K=c;var j=agA(k,S);for(lJ(A,E,d-257),lJ(A,E+5,u-1),lJ(A,E+10,R-4),E+=14,m=0;R>m;++m)lJ(A,E+3*m,k[tII[m]]);E+=3*R;for(var W=[D,w],Z=0;2>Z;++Z){var gA=W[Z];for(m=0;gA.length>m;++m)lJ(A,E,j[tA=31&gA[m]]),E+=k[tA],tA>15&&(lJ(A,E,gA[m]>>>5&127),E+=gA[m]>>>12)}}else x=W0t,N=n5,U=V0t,K=wDA;for(m=0;C>m;++m)if(e[m]>255){var tA;rgA(A,E,x[257+(tA=e[m]>>>18&31)]),E+=N[tA+257],tA>7&&(lJ(A,E,e[m]>>>23&31),E+=IvA[tA]);var IA=31&e[m];rgA(A,E,U[IA]),E+=K[IA],IA>3&&(rgA(A,E,e[m]>>>5&8191),E+=evA[IA])}else rgA(A,E,x[e[m]]),E+=N[e[m]];return rgA(A,E,x[256]),E+N[256]},j0t=new Dq([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),z0t=(function(){for(var g=new Dq(256),A=0;256>A;++A){for(var I=A,e=9;--e;)I=(1&I&&3988292384)^I>>>1;g[A]=I}return g})(),QvA=function(g,A,I){for(;I;++A)g[A]=I,I>>>=8};function X0t(g,A){A===void 0&&(A={});var I=(function(){var n=4294967295;return{p(s){for(var r=n,a=0;s.length>a;++a)r=z0t[255&r^s[a]]^r>>>8;n=r},d(){return 4294967295^n}}})(),e=g.length;I.p(g);var t,o,B,C,Q,i=(C=10+((t=A).filename&&t.filename.length+1||0),Q=8,(function(n,s,r,a,c,h){var l=n.length,D=new Af(a+l+5*(1+Math.floor(l/7e3))+c),d=D.subarray(a,D.length-c),y=0;if(!s||8>l)for(var w=0;l>=w;w+=65535){var u=w+65535;l>u?y=CvA(d,y,n.subarray(w,u)):(d[w]=h,y=CvA(d,y,n.subarray(w,l)))}else{for(var G=j0t[s-1],m=G>>>13,p=8191&G,k=(1<<r)-1,S=new rk(32768),R=new rk(k+1),x=Math.ceil(r/3),N=2*x,U=function(dA){return(n[dA]^n[dA+1]<<x^n[dA+2]<<N)&k},K=new Dq(25e3),Y=new rk(288),b=new rk(32),q=0,j=0,W=(w=0,0),Z=0,gA=0;l>w;++w){var tA=U(w),IA=32767&w,QA=R[tA];if(S[IA]=QA,R[tA]=IA,w>=Z){var nA=l-w;if((q>7e3||W>24576)&&nA>423){y=sII(n,d,0,K,Y,b,j,W,gA,w-gA,y),W=q=j=0,gA=w;for(var DA=0;286>DA;++DA)Y[DA]=0;for(DA=0;30>DA;++DA)b[DA]=0}var CA=2,hA=0,sA=p,cA=IA-QA&32767;if(nA>2&&tA==U(w-cA))for(var SA=Math.min(m,nA)-1,FA=Math.min(32767,w),aA=Math.min(258,nA);FA>=cA&&--sA&&IA!=QA;){if(n[w+CA]==n[w+CA-cA]){for(var xA=0;aA>xA&&n[w+xA]==n[w+xA-cA];++xA);if(xA>CA){if(CA=xA,hA=cA,xA>SA)break;var RA=Math.min(cA,xA-2),NA=0;for(DA=0;RA>DA;++DA){var HA=w-cA+DA+32768&32767,PA=HA-S[HA]+32768&32767;PA>NA&&(NA=PA,QA=HA)}}}cA+=(IA=QA)-(QA=S[IA])+32768&32767}if(hA){K[W++]=268435456|tvA[CA]<<18|CII[hA];var GA=31&tvA[CA],LA=31&CII[hA];j+=IvA[GA]+evA[LA],++Y[257+GA],++b[LA],Z=w+CA,++q}else K[W++]=n[w],++Y[n[w]]}}y=sII(n,d,h,K,Y,b,j,W,gA,w-gA,y)}return EII(D,0,a+iII(y)+c)})(o=g,(B=A).level==null?6:B.level,B.mem==null?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(o.length)))):12+B.mem,C,Q,!0)),E=i.length;return(function(n,s){var r=s.filename;if(n[0]=31,n[1]=139,n[2]=8,n[8]=2>s.level?4:s.level==9?2:0,n[9]=3,s.mtime!=0&&QvA(n,4,Math.floor(new Date(s.mtime||Date.now())/1e3)),r){n[3]=8;for(var a=0;r.length>=a;++a)n[a+10]=r.charCodeAt(a)}})(i,A),QvA(i,E-8,I.d()),QvA(i,E-4,e),i}const $0t=!!bHA||!!TAA,aII=new WeakMap,rII="text/plain";let ivA=0,uDA=!1;const cII=(g,A)=>{const[I,e]=g.split("#"),[t,o]=I.split("?");if(!o)return g;const B=o.split("&").filter(C=>C.split("=")[0]!==A).join("&");return`${t}${B?`?${B}`:""}${e?`#${e}`:""}`},GDA=(g,A,I=!0)=>{var e;const[t,o]=g.split("?"),B=QI({},A),C=(e=o?.split("&").map(i=>{var E;const[n,s]=i.split("="),r=I&&(E=B[n])!==null&&E!==void 0?E:s;return delete B[n],`${n}=${r}`}))!==null&&e!==void 0?e:[],Q=(function(i,E="&"){let n,s;const r=[];return Gn(i,function(a,c){Ye(a)||Ye(c)||c==="undefined"||(n=encodeURIComponent((h=>h instanceof File)(a)?a.name:a.toString()),s=encodeURIComponent(c),r[r.length]=s+"="+n)}),r.join(E)})(B);return Q&&C.push(Q),C.length>0?`${t}?${C.join("&")}`:t},EvA=g=>{if(g.lr)return g.lr;const{data:A,compression:I}=g;if(!A)return;if(I===$M.GZipJS){const t=X0t((function(o){var B=o.length;if(typeof TextEncoder<"u")return new TextEncoder().encode(o);for(var C=new Af(o.length+(o.length>>>1)),Q=0,i=function(r){C[Q++]=r},E=0;B>E;++E){if(Q+5>C.length){var n=new Af(Q+8+(B-E<<1));n.set(C),C=n}var s=o.charCodeAt(E);128>s?i(s):2048>s?(i(192|s>>>6),i(128|63&s)):s>55295&&57344>s?(i(240|(s=65536+(1047552&s)|1023&o.charCodeAt(++E))>>>18),i(128|s>>>12&63),i(128|s>>>6&63),i(128|63&s)):(i(224|s>>>12),i(128|s>>>6&63),i(128|63&s))}return EII(C,0,Q)})(rq(A)),{mtime:0});return{contentType:rII,body:t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength),estimatedSize:t.byteLength}}if(I===$M.Base64){const t=(function(B){return B&&btoa(encodeURIComponent(B).replace(/%([0-9A-F]{2})/g,(C,Q)=>String.fromCharCode(parseInt(Q,16))))})(rq(A)),o=(B=>"data="+encodeURIComponent(typeof B=="string"?B:rq(B)))(t);return{contentType:"application/x-www-form-urlencoded",body:o,estimatedSize:new Blob([o]).size}}const e=rq(A);return{contentType:"application/json",body:e,estimatedSize:new Blob([e]).size}},hII=g=>{const A=()=>g.transport==="sendBeacon"?{url:GDA(g.url,{compression:$M.Base64}),encodedBody:EvA(QI(QI({},g),{},{compression:$M.Base64,lr:void 0}))}:{url:cII(g.url,"compression"),encodedBody:EvA(QI(QI({},g),{},{compression:void 0,lr:void 0}))};let I;try{I=EvA(g)}catch(t){if(hAI(g.compression,cq(g.url,"compression")))return Dt.error("Failed to gzip request body, sending uncompressed payload",t),A();throw t}return I&&hAI(g.compression,cq(g.url,"compression"))&&!((e=I.body)instanceof ArrayBuffer?o6A(new Uint8Array(e)):ArrayBuffer.isView(e)&&o6A(new Uint8Array(e.buffer,e.byteOffset,e.byteLength)))?(uDA=!0,A()):{url:g.url,encodedBody:I};var e},lII=g=>{try{return hII(g)}catch(I){var A;return Dt.error(I),void((A=g.callback)===null||A===void 0||A.call(g,{statusCode:0,error:I}))}},Alt=(function(){var g=Qa(function*(A){const I=yield(function(t){return B6A.apply(this,arguments)})(rq(A.data),ak.DEBUG,{rethrow:!0});if(!I)return A;const e=yield I.arrayBuffer();return QI(QI({},A),{},{lr:{contentType:rII,body:e,estimatedSize:e.byteLength}})});return function(A){return g.apply(this,arguments)}})(),glt=/Failed to fetch|NetworkError|Load failed/i,DII=g=>g?.name==="TypeError"&&glt.test(g?.message||""),dII=g=>{try{const A=(function(I,e=Date.now()){if(typeof I!="string"||!I)return;const t=I.trim(),o=/^\d+\s*,/.test(t)?t.slice(0,t.indexOf(",")).trim():t;if(/^\d+$/.test(o)){const Q=1e3*Math.min(Number(o),300);return Q>0?Q:void 0}if(!/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun)[a-z]*[ ,]/.test(o))return;const B=/^\w{3} \w{3} /.test(o)?o+" GMT":o,C=Date.parse(B)-e;return Number.isFinite(C)&&C>0?Math.min(C,$lA):void 0})(g());return Ye(A)?void 0:Math.min(A,3e4)}catch{return}},yII=g=>{const A=lII(g);if(!A)return;const I=new bHA;aII.set(I,!0);const{url:e,encodedBody:t}=A;I.open(g.method||"GET",e,!0);const{contentType:o,body:B}=t??{};Gn(g.headers,function(C,Q){I.setRequestHeader(Q,C)}),o&&I.setRequestHeader("Content-Type",o),g.timeout&&(I.timeout=g.timeout),I.onreadystatechange=()=>{if(I.readyState===4){var C;const Q={statusCode:I.status,text:I.responseText};if(I.status===200)try{Q.json=JSON.parse(I.responseText)}catch{}(C=g.callback)===null||C===void 0||C.call(g,Q,dII(()=>I.getResponseHeader("Retry-After")))}},I.send(B)},wII=g=>{const A=lII(g);if(!A)return;const{url:I,encodedBody:e}=A,{contentType:t,body:o,estimatedSize:B}=e??{},C=new Headers;Gn(g.headers,function(a,c){C.append(c,a)}),t&&C.append("Content-Type",t);let Q=null,i=!1;if(n$g){const a=new n$g;Q={signal:a.signal,timeout:setTimeout(()=>{i=!0;try{a.abort(X$g("AbortError","PostHog request timed out"+((c=g.timeout)?` after ${c}ms`:"")))}catch(h){n(h)}var c},g.timeout)}}let E=!1;const n=a=>{var c;E||(E=!0,i&&a?.name==="AbortError"||DII(a)?Dt.warn(a):Dt.error(a),(c=g.callback)===null||c===void 0||c.call(g,{statusCode:0,error:a}))};let s=0;const r=()=>{ivA-=s,s=0,Q&&clearTimeout(Q.timeout)};try{const a=QI({method:g?.method||"GET",headers:C,referrerPolicy:"strict-origin",body:o,signal:Q?.signal},g.fetchOptions),c=B??(Ye(o)?0:void 0);a.keepalive=a.method==="POST"&&!g.kl&&a.keepalive!==!1&&a.body===o&&!Ye(c)&&c>=0&&52428.8>ivA+c,a.keepalive&&(s=c,ivA+=s),TAA(I,a).then(h=>h.text().then(l=>{var D;if(E)return;const d={statusCode:h.status,text:l};if(h.status===200)try{d.json=JSON.parse(l)}catch(y){Dt.error(y)}E=!0,r(),(D=g.callback)===null||D===void 0||D.call(g,d,dII(()=>h.headers.get("Retry-After")))})).catch(h=>{r(),n(h)}).finally(r)}catch(a){r(),n(a)}},nvA=g=>{try{var A;const{url:I,encodedBody:e}=hII(g),{contentType:t,body:o,estimatedSize:B}=e??{};if(!o)return;const C=o instanceof Blob?o:new Blob([o],{type:t});if(Hw.sendBeacon(I,C))return;const Q=cB(g.data)?g.data:(A=g.data)===null||A===void 0?void 0:A.batch;if(cB(Q)&&Q.length>1&&(B??0)>16384){const i=Math.ceil(Q.length/2),E=n=>cB(g.data)?n:QI(QI({},g.data),{},{batch:n});return nvA(QI(QI({},g),{},{data:E(Q.slice(0,i))})),void nvA(QI(QI({},g),{},{data:E(Q.slice(i))}))}Dt.warn(`Beacon of ~${B??0} bytes was rejected by the browser, falling back to ${TAA?"fetch":"XHR"}`),TAA?wII(QI(QI({},g),{},{kl:!0})):yII(g)}catch(I){Dt.warn("Beacon send failed",I)}},uII=(g,A,I,e)=>{const t=e==="query"?A==="POST"?"sent_at":"_":void 0;return GDA(I===$M.GZipJS?cII(g,"compression"):g,QI(QI({},t?{[t]:Date.now().toString()}:{}),I===$M.GZipJS?{}:{compression:I}))},Ilt=(()=>{const g=[];return TAA&&g.push({transport:"fetch",method:wII}),bHA&&g.push({transport:"XHR",method:yII}),Hw?.sendBeacon&&g.push({transport:"sendBeacon",method:nvA}),g})();let GII=!$0t&&xm?.indexOf("MSIE")===-1&&xm?.indexOf("Mozilla")===-1;function mII(g,A,I){var e,t,o;I&&(A=QI(QI({},A),{},{callback:B=>I(B)})),g.__loaded?GII?g.__request_queue.push(A):g.rateLimiter.isServerRateLimited(A.batchKey)?A.fireCallbackOnDrop&&((t=A.callback)===null||t===void 0||t.call(A,{statusCode:429})):(A.transport=A.transport||g.config.api_transport,A.headers=QI(QI({},g.config.request_headers),A.headers),A.compression=A.compression==="best-available"?(e=g.compression)!==null&&e!==void 0?e:A.compressionFallback:A.compression,(Ye(g.config.disable_beacon)?g.config.__preview_disable_beacon:g.config.disable_beacon)&&(A.disableTransport=["sendBeacon"]),A.fetchOptions=A.fetchOptions||g.config.fetch_options,((B,C)=>{var Q,i,E;const n=QI(QI({},B),{},{callback:C??(h=>{var l;return(l=B.callback)===null||l===void 0?void 0:l.call(B,h)})});n.timeout=n.timeout||6e4;const s=(Q=n.transport)!==null&&Q!==void 0?Q:"fetch";s==="sendBeacon"&&Ye(n.compression)&&n.data&&(n.compression=$M.Base64),n.method==="POST"&&n.data&&(n.timestampMode==="capture-body"?n.data=(h=>{var l,D;const d=(cB(h)?h:[h]).map(w=>QI(QI({},w),w.timestamp instanceof Date&&!isNaN(w.timestamp.getTime())?{timestamp:w.timestamp.toISOString()}:{})),y=d[0];return{api_key:(l=y==null||(D=y.properties)===null||D===void 0?void 0:D.token)!==null&&l!==void 0?l:y?.token,batch:d,sent_at:new Date().toISOString()}})(n.data):n.timestampMode==="body"&&(n.data=((h,l=new Date().toISOString())=>cB(h)?h.map(D=>QI(QI({},D),{},{sent_at:l})):QI(QI({},h),{},{sent_at:l}))(n.data))),n.url=uII(n.url,n.method,n.compression,n.timestampMode);const r=Ilt.filter(h=>!n.disableTransport||!h.transport||!n.disableTransport.includes(h.transport)),a=(i=(E=(function(h,l){for(let D=0;h.length>D;D++)if(l(h[D]))return h[D]})(r,h=>h.transport===s))===null||E===void 0?void 0:E.method)!==null&&i!==void 0?i:r[0].method;if(!a)throw new Error("No available transport method");const c=h=>{try{a(h)}catch(D){var l;DII(D)?Dt.warn(D):Dt.error(D),(l=n.callback)===null||l===void 0||l.call(n,{statusCode:0,error:D})}};s!=="sendBeacon"&&!n.preferSyncCompression&&n.data&&n.compression===$M.GZipJS&&rct&&typeof Promise<"u"&&!uDA?Alt(n).then(h=>{c(h)}).catch(h=>{if(lAI(h))return uDA=!0,void c(QI(QI({},n),{},{compression:void 0,url:uII(B.url,B.method,void 0,B.timestampMode)}));(l=>{if(!l||typeof l!="object")return!1;const D="name"in l?String(l.name):"";return lAI(l)||D===cAI})(h)&&(uDA=!0),c(n)}):c(n)})(A,(B,C)=>{var Q,i,E;g.rateLimiter.checkForLimiting(B),400>B.statusCode||(Q=(i=g.config).on_request_error)===null||Q===void 0||Q.call(i,B),I?I(B,C):(E=A.callback)===null||E===void 0||E.call(A,B)})):A.fireCallbackOnDrop&&((o=A.callback)===null||o===void 0||o.call(A,{statusCode:0}))}var elt=class{constructor(A,I){this.Uu=!0,this.Wu=[],this.Vu=yx(I?.flush_interval_ms||3e3,250,5e3,Dt.createLogger("flush interval"),3e3),this.Gu=A}enqueue(A){this.Wu.push(A),this.Qu||this.Zu()}unload(){this.Ju();const A=this.Wu.length>0?this.Ku():{},I=Object.values(A);[...I.filter(e=>e.url.indexOf("/e")===0),...I.filter(e=>e.url.indexOf("/e")!==0)].map(e=>{this.Xu(QI(QI({},e),{},{callback:void 0}),"sendBeacon")})}enable(){this.Uu=!1,this.Zu()}Zu(){this.Uu||(this.Qu=setTimeout(()=>{this.Ju(),this.Yu()},this.Vu))}Yu(){if(this.Wu.length>0){const A=this.Ku();for(const I in A)this.Xu(A[I])}}Xu(A,I){try{this.Gu(A,I)}catch(e){Dt.error(e)}}Ju(){clearTimeout(this.Qu),this.Qu=void 0}Ku(){const A={},I={};Gn(this.Wu,e=>{var t;const o=e,B=((o?o.batchKey:null)||o.url)+(o.batchGroup?`:${o.batchGroup}`:"");Ye(A[B])&&(A[B]=QI(QI({},o),{},{data:[],callback:void 0,fireCallbackOnDrop:void 0}),I[B]=[]),(t=A[B].data)===null||t===void 0||t.push(o.data),o.callback&&I[B].push(o.callback)});for(const e in I){const t=I[e];t.length&&(A[e].callback=o=>{for(const B of t)B(o)})}return this.Wu=[],A}};const tlt=["retriesPerformedSoFar"];var olt=class{constructor(A){this._instance=A,this.tc=!1,this.ec=3e3,this.Wu=[],this.Wu=[],this.nc=!0,this.resume()}resume(){if(!Ye(Se)&&"onLine"in Se.navigator){if(this.nc=Se.navigator.onLine,this.sc)return;this.sc=()=>{this.nc=!0,this.Yu()},this.rc=()=>{this.nc=!1},NE(Se,"online",this.sc),NE(Se,"offline",this.rc)}}get length(){return this.Wu.length}retriableRequest(A,I){let{retriesPerformedSoFar:e}=A,t=dAI(A,tlt);nJ(e)&&(t.url=GDA(t.url,{retry_count:e})),mII(this._instance,I?QI(QI({},t),{},{transport:I}):t,(o,B)=>{var C;if(o.statusCode!==200&&(400>o.statusCode||o.statusCode>=500)){if((o.statusCode===0?3:10)>(e??0))return void this.Ls(QI({retriesPerformedSoFar:e},t),B);o.statusCode===0&&Dt.warn(`Request failed before receiving an HTTP response; this can happen due to network issues, CORS, browser blocking, or ad blockers. Stopped retrying after ${e??0} retries.`)}(C=t.callback)===null||C===void 0||C.call(t,o)})}Ls(A,I){const e=A.retriesPerformedSoFar||0;A.retriesPerformedSoFar=e+1;const t=Math.max((function(C){const Q=3e3*Math.pow(2,C),i=Q/2,E=Math.min(18e5,Q),n=(Math.random()-.5)*(E-i);return Math.ceil(E+n)})(e),I??0),o=Date.now()+t;this.Wu.push({retryAt:o,requestOptions:A});let B=`Enqueued failed request for retry in ${t}`;navigator.onLine||(B+=" (Browser is offline)"),Dt.warn(B),this.tc||(this.tc=!0,this.oc())}oc(){if(this.ac&&clearTimeout(this.ac),this.Wu.length===0)return this.tc=!1,void(this.ac=void 0);this.ac=setTimeout(()=>{this.nc&&this.Wu.length>0&&this.Yu(),this.oc()},this.ec)}Yu(){const A=Date.now(),I=[],e=this.Wu.filter(t=>A>t.retryAt||(I.push(t),!1));if(this.Wu=I,e.length>0)for(const{requestOptions:t}of e)this.retriableRequest(t)}unload(){this.ac&&(clearTimeout(this.ac),this.ac=void 0),this.tc=!1,Ye(Se)||(this.sc&&(Se.removeEventListener("online",this.sc),this.sc=void 0),this.rc&&(Se.removeEventListener("offline",this.rc),this.rc=void 0));for(const{requestOptions:A}of this.Wu)try{this._instance._send_request(QI(QI({},A),{},{callback:cB(A.data)?void 0:A.callback,transport:"sendBeacon"}))}catch(I){Dt.error(I)}this.Wu=[]}},Blt=class{constructor(A){this._instance=A,this.lc=()=>{var I,e,t,o;this.uc||(this.uc={});const B=this.scrollElement(),C=this.scrollY(),Q=B?Math.max(0,B.scrollHeight-B.clientHeight):0,i=C+(B?.clientHeight||0),E=B?.scrollHeight||0;this.uc.lastScrollY=Math.ceil(C),this.uc.maxScrollY=Math.max(C,(I=this.uc.maxScrollY)!==null&&I!==void 0?I:0),this.uc.maxScrollHeight=Math.max(Q,(e=this.uc.maxScrollHeight)!==null&&e!==void 0?e:0),this.uc.lastContentY=i,this.uc.maxContentY=Math.max(i,(t=this.uc.maxContentY)!==null&&t!==void 0?t:0),this.uc.maxContentHeight=Math.max(E,(o=this.uc.maxContentHeight)!==null&&o!==void 0?o:0)}}get cc(){return this._instance.config.scroll_root_selector}getContext(){return this.uc}resetContext(){const A=this.uc;return this.uc=void 0,setTimeout(this.lc,0),A}startMeasuringScrollPosition(){NE(Se,"scroll",this.lc,{capture:!0}),NE(Se,"scrollend",this.lc,{capture:!0}),NE(Se,"resize",this.lc)}scrollElement(){if(this.cc){const e=cB(this.cc)?this.cc:[this.cc];for(const t of e){var A;const o=Se==null||(A=Se.document)===null||A===void 0?void 0:A.querySelector(t);if(o)return o}return}var I;return Se==null||(I=Se.document)===null||I===void 0?void 0:I.documentElement}hc(A){var I,e;const t=A==="y"?"scrollTop":"scrollLeft";if(this.cc){const o=this.scrollElement();return o&&o[t]||0}return Se?A==="y"?Se.scrollY||Se.pageYOffset||((I=Se.document)===null||I===void 0||(I=I.documentElement)===null||I===void 0?void 0:I.scrollTop)||0:Se.scrollX||Se.pageXOffset||((e=Se.document)===null||e===void 0||(e=e.documentElement)===null||e===void 0?void 0:e.scrollLeft)||0:0}scrollY(){return this.hc("y")}scrollX(){return this.hc("x")}};const Clt=g=>jgI(g?.config.mask_personal_data_properties,g?.config.custom_personal_data_properties,g?.config.disable_capture_url_hashes);var pII=class{constructor(A,I,e,t){this.qe=o=>{const B=this.dc();if(B&&B.sessionId===o)return;const C={sessionId:o,props:this.vc(this._instance)};this.fc.register({[S6A]:C})},this._instance=A,this.gc=I,this.fc=e,this.vc=t||Clt,this.gc.onSessionId(this.qe)}dc(){return this.fc.props[S6A]}getSetOnceProps(){var A;const I=(A=this.dc())===null||A===void 0?void 0:A.props;return I?"r"in I?zgI(I,this._instance.config.disable_capture_url_hashes):{$referring_domain:I.referringDomain,$pathname:I.initialPathName,utm_source:I.utm_source,utm_campaign:I.utm_campaign,utm_medium:I.utm_medium,utm_content:I.utm_content,utm_term:I.utm_term}:{}}getSessionProps(){const A={};return Gn(U6A(this.getSetOnceProps()),(I,e)=>{e==="$current_url"&&(e="url"),A[`$session_entry_${vHA(e)}`]=I}),A}},mDA=class{on(A,I){return this.bo[A]||(this.bo[A]=[]),this.bo[A].push(I),()=>{this.bo[A]=this.bo[A].filter(e=>e!==I)}}emit(A,I){for(const e of this.bo[A]||[])e(I);for(const e of this.bo["*"]||[])e(A,I)}constructor(){this.bo={}}};const yq=zr("[SessionId]"),kII=864e5;var MII=class{on(g,A){return this.mc.on(g,A)}constructor(g,A,I){var e;if(this.yc=null,this.bc=null,this._c=[],this.wc=void 0,this.kc=!1,this.mc=new mDA,this.Sc=(o,B)=>!(!nJ(o)||!nJ(B))&&Math.abs(o-B)>this.sessionTimeoutMs,!g.persistence)throw new Error("SessionIdManager requires a PostHogPersistence instance");if(g.config.cookieless_mode==="always")throw new Error('SessionIdManager cannot be used with cookieless_mode="always"');this.Ar=g.config,this.fc=g.persistence,this.je=void 0,this.Xt=void 0,this._sessionStartTimestamp=null,this.xc=void 0,this._sessionActivityTimestamp=null,this.$c=A||UR,this.Cc=I||UR;const t=this.Ar.persistence_name||this.Ar.token;if(this._sessionTimeoutMs=1e3*yx(this.Ar.session_idle_timeout_seconds||1800,60,36e3,yq.createLogger("session_idle_timeout_seconds"),1800),g.register({$configured_session_timeout_ms:this._sessionTimeoutMs}),this.Tc(),this.Ic="ph_"+t+"_window_id",this.Mc="ph_"+t+"_primary_window_exists",this.Ec()){const o=ia.Lt(this.Ic),B=ia.Lt(this.Mc);o&&!B?this.je=o:ia.Pt(this.Ic),ia.At(this.Mc,!0)}!((e=this.Ar.bootstrap)===null||e===void 0)&&e.sessionID&&this.setBootstrapSessionId(this.Ar.bootstrap.sessionID),this.Pc()}get sessionTimeoutMs(){return this._sessionTimeoutMs}onSessionId(g){return Ye(this._c)&&(this._c=[]),this._c.push(g),this.Xt&&g(this.Xt,this.je),()=>{this._c=this._c.filter(A=>A!==g)}}Ec(){return this.Ar.persistence!=="memory"&&!this.fc.hi&&ia.$t()}Rc(g){g!==this.je&&(this.je=g,this.Ec()&&ia.At(this.Ic,g))}Ac(){return this.je?this.je:this.Ec()?ia.Lt(this.Ic):null}Fc(g){const A=this.yc;return!Pc(A)&&!Pc(g)&&5e3>Math.abs(g-A)}Oc(g,A,I){const e=A!==this._sessionActivityTimestamp,t=!(g!==this.Xt||I!==this._sessionStartTimestamp);this._sessionStartTimestamp=I,this._sessionActivityTimestamp=A,this.Xt=g,t&&!e||t&&this.Fc(A)||(this.yc=A,this.fc.register({[Bq]:[A,g,I]}))}Dc(){var g;const A=(g=this.Ar)===null||g===void 0?void 0:g.persistence_save_debounce_ms;return nJ(A)&&A>0}Lc(){this.Dc()?this.fc.refreshKey(Bq):(this.fc.flush(),this.fc.load())}Nc(){var g;if(Pc(this._sessionActivityTimestamp)||this._sessionActivityTimestamp===this.yc)return;this.Lc();const[,A,I]=this.qc();A===this.Xt&&I===this._sessionStartTimestamp&&(this.yc=this._sessionActivityTimestamp,this.fc.register({[Bq]:[this._sessionActivityTimestamp,(g=this.Xt)!==null&&g!==void 0?g:null,this._sessionStartTimestamp]}),this.fc.flush())}jc(){const[g]=this.qc(),A=nJ(g)?g:0,I=nJ(this._sessionActivityTimestamp)?this._sessionActivityTimestamp:0;return Math.max(A,I)}Bc(g){return this.Lc(),this.Sc(g,this.jc())}qc(){const g=this.fc.props[Bq];return cB(g)&&g.length===2&&g.push(g[0]),g||[0,null,0]}resetSessionId(){this.yc=null,this.xc=void 0,clearTimeout(this.zc),this.zc=void 0,this.Oc(null,null,null)}setBootstrapSessionId(g,A=!1){const I=((e,t=new Date().getTime())=>{try{const o=(B=>{const C=B.replace(/-/g,"");if(C.length!==32)throw new Error("Not a valid UUID");if(C[12]!=="7")throw new Error("Not a UUIDv7");return parseInt(C.substring(0,12),16)})(e);return o>t+6e4?void yq.error("Bootstrap sessionID cannot be in the future"):o}catch(o){return void yq.error("Invalid sessionID in bootstrap",o)}})(g);return!Ye(I)&&(A?this.xc={sessionId:g,sessionStartTimestamp:I}:this.Oc(g,new Date().getTime(),I),!0)}destroy(){this.kc=!0,this.Nc(),clearTimeout(this.zc),this.zc=void 0,this.wc&&Se&&(Se.removeEventListener(sDA,this.wc,{capture:!1}),this.wc=void 0),this._c=[]}Pc(){this.wc=()=>{this.Nc(),this.Ec()&&ia.Pt(this.Mc)},NE(Se,sDA,this.wc,{capture:!1})}checkAndGetSessionAndWindowId(g=!1,A=null,I=!1){if(this.Ar.cookieless_mode==="always")throw new Error('checkAndGetSessionAndWindowId should not be called with cookieless_mode="always"');const e=A||new Date().getTime(),t=this.Xt;if(I)this.bc=e;else if(Pc(this.bc)||this.bc>e||e-this.bc>=1e3){var o,B;(o=(B=this.fc).syncCookieProperties)===null||o===void 0||o.call(B),this.bc=e}let[,C,Q]=this.qc();const i=!Ye(t)&&C!==t,E=this.jc();let n=this.Ac();const s=this.xc,r=!!s&&(s.sessionStartTimestamp>e+6e4||e-s.sessionStartTimestamp>kII),a=s?r:nJ(Q)&&Math.abs(e-Q)>kII;let c=!1,h=i,l=!C||!!s;const D=C;let d=!l&&!g&&this.Sc(e,E);if(d&&(d=this.Bc(e),d||yq.info("cross-tab refresh kept the session alive",{sessionId:C}),[,C,Q]=this.qc(),d||(l=!C||!!s)),l||d||a){h=!1;const G=s&&!r;C=G?s.sessionId:this.$c(),n=this.Cc(),yq.info("new session ID assigned",{sessionId:C,windowId:n,bootstrapped:!!G,changeReason:{noSessionId:l,activityTimeout:d,sessionPastMaximumLength:a}}),Q=G?s.sessionStartTimestamp:e,this.xc=void 0,c=!0}else n||(n=this.Cc(),c=!0),h=h||C!==D,h&&(yq.info("adopted cross-tab session id",{sessionId:C,windowId:n}),c=!0);const y=nJ(E)&&g&&!a?E:e,w=nJ(Q)?Q:new Date().getTime();this.Rc(n),this.Oc(C,y,w),g||this.Tc();const u={noSessionId:l,activityTimeout:d,sessionPastMaximumLength:a,crossTabAdoption:h};return c&&this._c.forEach(G=>G(C,n,u)),{sessionId:C,windowId:n,sessionStartTimestamp:w,changeReason:c?u:void 0,lastActivityTimestamp:E}}Tc(){this.kc||(clearTimeout(this.zc),this.zc=setTimeout(()=>{if(!this.kc)if(this.Bc(new Date().getTime())){const g=this.Xt;this.resetSessionId(),this.mc.emit("forcedIdleReset",{idleSessionId:g})}else this.Tc()},1.1*this.sessionTimeoutMs))}};const SII=function(g,A){if(!g)return!1;const I=g.userAgent;if(I&&l$g(I,A))return!0;try{const e=g?.userAgentData;if(e?.brands&&e.brands.some(t=>l$g(t?.brand,A)))return!0}catch{}return!!g.webdriver};function fII(){return(fII=Qa(function*(){const g=Hw?.userAgentData;if(g?.getHighEntropyValues)try{const A=yield g.getHighEntropyValues(["model"]),I=A?.model;return qC(I)&&I.length>0?I:void 0}catch(A){return void Dt.info("Unable to resolve $device_model from userAgentData.getHighEntropyValues",A)}})).apply(this,arguments)}function Qlt(g,A){let I=`$survey_${A}/${g.id}`;return g.current_iteration&&g.current_iteration>0&&(I=`$survey_${A}/${g.id}/${g.current_iteration}`),I}function RII(g){var A;return!!(!((A=g.conditions)===null||A===void 0||(A=A.events)===null||A===void 0||(A=A.values)===null||A===void 0)&&A.length)}const pDA=(g,A)=>{if(!(I=>{try{new RegExp(I)}catch{return!1}return!0})(A))return!1;try{return new RegExp(A).test(g)}catch{return!1}},kDA=g=>g.toLowerCase(),NII={exact:(g,A)=>A.some(I=>g.some(e=>I===e)),is_not:(g,A)=>A.every(I=>g.every(e=>I!==e)),regex:(g,A)=>A.some(I=>g.some(e=>pDA(I,e))),not_regex:(g,A)=>A.every(I=>g.every(e=>!pDA(I,e))),icontains:(g,A)=>A.map(kDA).some(I=>g.map(kDA).some(e=>I.includes(e))),not_icontains:(g,A)=>A.map(kDA).every(I=>g.map(kDA).every(e=>!I.includes(e))),gt:(g,A)=>A.some(I=>{const e=parseFloat(I);return!isNaN(e)&&g.some(t=>e>parseFloat(t))}),lt:(g,A)=>A.some(I=>{const e=parseFloat(I);return!isNaN(e)&&g.some(t=>e<parseFloat(t))})};function xII(g,A){return!g||Object.entries(g).every(([I,e])=>{const t=A?.[I];if(t==null)return!1;const o=NII[e.operator];return!!o&&o(e.values.map(String),[String(t)])})}function svA(g,A,I){return rq({distinct_id:g,userPropertiesToSet:A,userPropertiesToSetOnce:I})}const avA="custom",FII="i.posthog.com",ilt=/^\/static\//,Elt=["/s/","/e/","/i/"];var nlt=class{constructor(A){this.Hc={},this.instance=A}get apiHost(){const A=this.instance.config.api_host.trim().replace(/\/$/,"");return A==="https://app.posthog.com"?"https://us.i.posthog.com":A}get flagsApiHost(){const A=this.instance.config.flags_api_host;return A?A.trim().replace(/\/$/,""):this.apiHost}get uiHost(){var A;let I=(A=this.instance.config.ui_host)===null||A===void 0?void 0:A.replace(/\/$/,"");return I||(I=this.apiHost.replace(`.${FII}`,".posthog.com")),I==="https://app.posthog.com"?"https://us.posthog.com":I}get region(){return this.Hc[this.apiHost]||(this.Hc[this.apiHost]=/https:\/\/(app|us|us-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?"us":/https:\/\/(eu|eu-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?"eu":avA),this.Hc[this.apiHost]}Uc(A){if(!ilt.test(A))return;const I=this.instance.config.asset_host;return typeof I=="string"&&I.trim().replace(/\/$/,"")||void 0}Wc(A){const I=cJ(A);return I?I.protocol+"//"+I.host+I.pathname:void 0}Vc(A,I,e){if(A==="ui")return e;let t=e;const o=this.instance.config.rewriteRequestPath;if(o){var B;const C=((B=cJ(e))===null||B===void 0?void 0:B.href)||e;t=o(new URL(C)).toString()}if(o&&A==="api"&&Elt.some(C=>I.indexOf(C)===0)){const C=this.Wc(t);if(C){const Q=this.apiHost;let i=this.Gc;i?.apiHost===Q&&i.rewriteRequestPath===o||(i={apiHost:Q,rewriteRequestPath:o,urls:new Set},this.Gc=i),i.urls.add(C)}}return t}isIngestionEndpoint(A){const I=this.Gc,e=this.Wc(A);return I?.apiHost===this.apiHost&&I.rewriteRequestPath===this.instance.config.rewriteRequestPath&&!!e&&I.urls.has(e)}endpointFor(A,I=""){if(I&&(I=I[0]==="/"?I:`/${I}`),A==="ui")return this.Vc(A,I,this.uiHost+I);if(A==="flags")return this.Vc(A,I,this.flagsApiHost+I);if(A==="assets"){const t=this.Uc(I);if(t)return this.Vc(A,I,`${t}${I}`)}if(this.region===avA)return this.Vc(A,I,this.apiHost+I);const e=FII+I;switch(A){case"assets":return this.Vc(A,I,`https://${this.region}-assets.${e}`);case"api":return this.Vc(A,I,`https://${this.region}.${e}`)}}};const mn=zr("[Surveys]"),UII=g=>{try{const A=(I=>((e,t)=>`seenSurvey_${(function(o){return o.current_iteration&&o.current_iteration>0?`${o.id}_${o.current_iteration}`:o.id})(t)}`)(0,I))(g);if(localStorage.getItem(A))return;localStorage.setItem(A,"true")}catch(A){mn.error("Failed to persist survey seen state",A)}},slt=[$6A.Popover,$6A.Widget,$6A.API],alt={ignoreConditions:!1,ignoreDelay:!1,displayType:gvA.Popover},rlt=zr("[PostHog ExternalIntegrations]"),clt={intercom:"intercom-integration",crispChat:"crisp-chat-integration"};var hlt=class{constructor(A){this._instance=A}Ml(A,I){var e,t;(e=UB.__PosthogExtensions__)===null||e===void 0||(t=e.loadExternalDependency)===null||t===void 0||t.call(e,this._instance,A,o=>{if(o)return rlt.error("failed to load script",o);I()})}startIfEnabledOrStop(){var A;for(const[o,B]of Object.entries((A=this._instance.config.integrations)!==null&&A!==void 0?A:{})){var I,e,t;B&&!(!((I=UB.__PosthogExtensions__)===null||I===void 0||(I=I.integrations)===null||I===void 0)&&I[o])&&this.Ml(clt[o],()=>{var C;(C=UB.__PosthogExtensions__)===null||C===void 0||(C=C.integrations)===null||C===void 0||(C=C[o])===null||C===void 0||C.start(this._instance)}),!B&&(!((e=UB.__PosthogExtensions__)===null||e===void 0||(e=e.integrations)===null||e===void 0)&&e[o])&&((t=UB.__PosthogExtensions__)===null||t===void 0||(t=t.integrations)===null||t===void 0||(t=t[o])===null||t===void 0||t.stop())}}},JII=class{constructor(A){this.disabled=A===!1;const I=yC(A)?A:{};this.thresholdPx=I.threshold_px||30,this.timeoutMs=I.timeout_ms||1e3,this.clickCount=I.click_count||3,this.clicks=[]}isRageClick(A,I,e){if(this.disabled)return!1;const t=this.clicks[this.clicks.length-1];if(t&&Math.abs(A-t.x)+Math.abs(I-t.y)<this.thresholdPx&&this.timeoutMs>e-t.timestamp){if(this.clicks.push({x:A,y:I,timestamp:e}),this.clicks.length===this.clickCount)return!0}else this.clicks=[{x:A,y:I,timestamp:e}];return!1}};const rvA=()=>typeof window>"u"?void 0:window,hgA=()=>typeof document>"u"?void 0:document,cvA="$copy_autocapture",hvA=zr("[AutoCapture]");function lvA(g,A){return A.length>g?A.slice(0,g)+"...":A}function llt(g){if(g.previousElementSibling)return g.previousElementSibling;let A=g;do A=A.previousSibling;while(A&&!JR(A));return A}function Dlt(g,{e:A,maskAllElementAttributes:I,maskAllText:e,elementAttributeIgnoreList:t,elementsChainAsString:o,disableCaptureUrlHashes:B}){var C,Q;if(!JR(g))return{props:{}};const i=[g],E=new Set([g]);let n=g;for(;n.parentNode&&!vw(n,"body")&&1e3>i.length;){if(H6A(n.parentNode)){const u=n.parentNode.host;if(E.has(u))break;E.add(u),i.push(u),n=u;continue}if(!JR(n.parentNode)||E.has(n.parentNode))break;E.add(n.parentNode),i.push(n.parentNode),n=n.parentNode}const s=A.type==="click"&&g.namespaceURI==="http://www.w3.org/2000/svg"?i.findIndex(u=>vw(u,"button")||vw(u,"a")):-1;s>0&&(e=e||i.slice(0,s+1).some(u=>!E5(u)||sq(u)));const r=[],a={};let c,h=!1,l=!1;if(Gn(i,u=>{const G=E5(u);if(vw(u,"a")&&!I&&!t?.includes("href")){const m=u.getAttribute("href");h=!!(G&&m&&aq(m))&&(B?i3(m):m)}yB(nq(u),"ph-no-capture")&&(l=!0),r.push((function(m,p,k,S,R=!1){const x=m.tagName.toLowerCase(),N={tag_name:x};T6A.indexOf(x)>-1&&!k&&(N.$el_text=x.toLowerCase()==="a"||x.toLowerCase()==="button"?lvA(1024,FgI(m)):lvA(1024,BgA(m)));const U=nq(m);p||S?.includes("class")||0>=U.length||(N.classes=U.filter(function(q){return q!==""})),Gn(m.attributes,function(q){var j;if((!sq(m)||["name","id","class","aria-label"].indexOf(q.name)!==-1)&&!S?.includes(q.name)&&!p&&aq(q.value)&&(!qC(j=q.name)||j.substring(0,10)!=="_ngcontent"&&j.substring(0,7)!=="_nghost")){let W=q.value;q.name==="class"&&(W=v6A(W).join(" ")),N["attr__"+q.name]=lvA(1024,q.name==="href"&&R?i3(W):W)}});let K=1,Y=1,b=m;for(;b=llt(b);)K++,b.tagName===m.tagName&&Y++;return N.nth_child=K,N.nth_of_type=Y,N})(u,I,e,t,B)),Gn((function(m){if(!E5(m))return{};const p={};return Gn(m.attributes,function(k){if(k.name&&k.name.indexOf("data-ph-capture-attribute")===0){const S=k.name.replace("data-ph-capture-attribute-",""),R=k.value;S&&R&&aq(R)&&(p[S]=R)}}),p})(u),(m,p)=>{({}).hasOwnProperty.call(a,p)||(a[p]=m)})}),l)return{props:{},explicitNoCapture:l};if(s>0&&(g=i[s],r.splice(0,s)),e||(r[0].$el_text=vw(g,"a")||vw(g,"button")?FgI(g):BgA(g)),h){var D,d;r[0].attr__href=h;const u=(D=cJ(h))===null||D===void 0?void 0:D.host,G=(d=rvA())===null||d===void 0||(d=d.location)===null||d===void 0?void 0:d.host;u&&G&&u!==G&&(c=h)}return{props:sr((w=A.type,{$event_type:w,$ce_version:1}),o?{}:{$elements:r},{$elements_chain:(y=r,cB(y)?(function(u){return u.map(G=>{var m,p;let k="";if(G.tag_name&&(k+=G.tag_name),G.attr_class){G.attr_class.sort();for(const x of G.attr_class)k+=`.${x.replace(/"/g,"")}`}const S=QI(QI(QI(QI({},G.text?{text:G.text}:{}),{},{"nth-child":(m=G.nth_child)!==null&&m!==void 0?m:0,"nth-of-type":(p=G.nth_of_type)!==null&&p!==void 0?p:0},G.href?{href:G.href}:{}),G.attr_id?{attr_id:G.attr_id}:{}),G.attributes),R={};return aDA(S).sort(([x],[N])=>(function(U,K){return K>U?-1:U>K?1:0})(x,N)).forEach(([x,N])=>R[JgI(x.toString())]=JgI(N.toString())),k+=":",k+=aDA(R).map(([x,N])=>`${x}="${N}"`).join(""),k}).join(";")})((function(u){return u.map(G=>{var m,p;const k={text:(m=G.$el_text)===null||m===void 0?void 0:m.slice(0,400),tag_name:G.tag_name,href:(p=G.attr__href)===null||p===void 0?void 0:p.slice(0,2048),attr_class:U0t(G),attr_id:G.attr__id,nth_child:G.nth_child,nth_of_type:G.nth_of_type,attributes:{}};return aDA(G).filter(([S])=>S.indexOf("attr__")===0).forEach(([S,R])=>k.attributes[S]=R),k})})(y)):"")},!((C=r[0])===null||C===void 0)&&C.$el_text?{$el_text:(Q=r[0])===null||Q===void 0?void 0:Q.$el_text}:{},c&&A.type==="click"?{$external_click_url:c}:{},a),target:g};var y,w}const PII="autocapture";var dlt=class{el(){this.il=void 0,clearTimeout(this.nl),this.nl=void 0}sl(A){var I;if(!E5(A))return!0;const e=(I=this.rl().css_selector_ignorelist)!==null&&I!==void 0?I:O6A,t=new Set;let o=A;for(;o;){if(t.size>=1e3||t.has(o))return!0;t.add(o);const B=o,C=nq(B);if(yB(C,"ph-no-capture")||yB(C,"ph-sensitive")||sq(B)||e.some(i=>q6A(B,i)))return!0;const Q=o.parentNode;o=H6A(Q)?Q.host:Q&&JR(Q)?Q:null}return!1}ol(A){if(!this.isEnabled||A.type==="pointercancel")return void this.el();if(A.type==="pointerdown"){var I;this.el();const t=CgA(A);return void(A.isPrimary&&A.button===0&&!A.ctrlKey&&t&&JR(t)&&(this.il={target:t,excluded:this.sl(t),id:A.pointerId,x:A.clientX,y:A.clientY,released:!1,distinctId:(I=this.xa)===null||I===void 0?void 0:I.distinctId}))}const e=this.il;e&&(A.pointerId!==e.id||Math.abs(A.clientX-e.x)>5||Math.abs(A.clientY-e.y)>5?this.el():A.type==="pointerup"&&(e.released=!0,this.nl=setTimeout(()=>this.el(),0)))}al(A){var I;const e=this.il;this.el();const t=CgA(A);if(e?.released&&e.target.isConnected&&e.distinctId===((I=this.xa)===null||I===void 0?void 0:I.distinctId)&&A.pointerId===e.id&&(A.detail>0||A.pointerType==="touch"||A.pointerType==="pen")&&A.button===0&&5>=Math.abs(A.clientX-e.x)&&5>=Math.abs(A.clientY-e.y)&&t&&(vw(t,"html")||vw(t,"body"))){var o,B,C;if(e.excluded)return null;const Q=(o=this.rl().css_selector_ignorelist)!==null&&o!==void 0?o:O6A;return[t,(B=hgA())===null||B===void 0?void 0:B.documentElement,(C=hgA())===null||C===void 0?void 0:C.body].some(i=>{if(!i)return!1;const E=nq(i);return yB(E,"ph-no-capture")||yB(E,"ph-sensitive")||!E5(i)||sq(i)||Q.some(n=>q6A(i,n))})?null:e.target}}constructor(A){this.Ta=A,this.name=PII,this.ll=!1,this.ul=null,this.cl=!1,this.hl=new Map,this.dl=!1,this.Ar={enabled:!1,rageclick:!1,maskAllElementAttributes:!1,maskAllText:!1,disableCaptureUrlHashes:!1,remoteRequestsDisabled:!1},this.Ci=!1,this.Ta.refresh(this.Ar),this.rageclicks=new JII(this.Ar.rageclick),this.vl=null}setup(A){this.fl(),this.xa=A;const I=A.onRemoteConfig(this.onRemoteConfig.bind(this));this.Ci?I.dispose():(this.qa=I,this.startIfEnabled())}dispose(){var A;this.Ci||(this.Ci=!0,this.xa=void 0,(A=this.qa)===null||A===void 0||A.dispose(),this.qa=void 0,this.hl.clear(),this.vl=null,this.pl())}rl(){return this.Ta.refresh(this.Ar),this.Ar}fl(){var A,I;return this.rl(),this.Ar.url_allowlist=(A=this.Ar.url_allowlist)===null||A===void 0?void 0:A.map(e=>new RegExp(e)),this.Ar.url_ignorelist=(I=this.Ar.url_ignorelist)===null||I===void 0?void 0:I.map(e=>new RegExp(e)),this.Ar}gl(){const A=rvA(),I=hgA();if(!this.isBrowserSupported())return void hvA.info("Disabling Automatic Event Collection because this browser is not supported");if(!A||!I)return;this.ml=A,this.yl=I;const e=this.bl=t=>{t=t||A?.event;try{if(t.type==="blur")return void this.el();if(t.type.indexOf("pointer")===0)return void this.ol(t);const o=t.type==="click"?this.al(t):void 0;if(Pc(o))return;this._l(t,"$autocapture",o)}catch(o){hvA.error("Failed to capture event",o)}};if(NE(A,"blur",e),NE(I,"submit",e,{capture:!0}),NE(I,"change",e,{capture:!0}),NE(I,"click",e,{capture:!0}),Gn(["pointerdown","pointermove","pointerup","pointercancel"],t=>{NE(I,t,e,{capture:!0})}),this.rl().capture_copied_text){const t=this.wl=o=>{o=o||A?.event;try{this._l(o,cvA)}catch(B){hvA.error("Failed to capture clipboard event",B)}};NE(I,"copy",t,{capture:!0}),NE(I,"cut",t,{capture:!0}),NE(I,"paste",t,{capture:!0})}}pl(){const A=this.ml,I=this.yl;this.el(),this.bl&&(A?.removeEventListener("blur",this.bl),Gn(["pointerdown","pointermove","pointerup","pointercancel"],e=>{I?.removeEventListener(e,this.bl,!0)}),I?.removeEventListener("submit",this.bl,!0),I?.removeEventListener("change",this.bl,!0),I?.removeEventListener("click",this.bl,!0),this.bl=void 0),this.wl&&(I?.removeEventListener("copy",this.wl,!0),I?.removeEventListener("cut",this.wl,!0),I?.removeEventListener("paste",this.wl,!0),this.wl=void 0),this.ml=void 0,this.yl=void 0,this.ll=!1}startIfEnabled(){this.isEnabled||this.el(),!this.Ci&&this.xa&&this.isEnabled&&!this.ll&&(this.gl(),this.ll=!0)}onRemoteConfig(A){if(this.Ci)return;if(this.cl=!0,!A.ok)return void this.startIfEnabled();const I=A.config;I.elementsChainAsString&&(this.dl=I.elementsChainAsString);const e=I.autocapture_opt_out;var t;Fm(e)&&((t=this.xa)===null||t===void 0||t.kv.set("$autocapture_disabled_server_side",e),this.ul=e),this.startIfEnabled()}setElementSelectors(A,I=this){if(this.Ci)return;A.size?this.hl.set(I,new Set(A)):this.hl.delete(I);const e=new Set;this.hl.forEach(t=>{t.forEach(o=>e.add(o))}),this.vl=e}getElementSelectors(A,I){var e;const t=[];return(e=this.vl)===null||e===void 0||e.forEach(o=>{var B;const C=(B=hgA())===null||B===void 0?void 0:B.querySelectorAll(o);C?.forEach(Q=>{A!==Q&&I!==Q||yB(t,o)||t.push(o)})}),t}get isEnabled(){var A,I;if(this.Ci)return!1;const e=(A=this.xa)===null||A===void 0?void 0:A.kv.get(bAI),t=this.ul,o=this.rl();if(!o.remoteRequestsDisabled&&!this.cl)return!1;const B=o.remoteRequestsDisabled&&!this.cl;if(Pc(t)&&!Fm(e)&&!B)return!1;const C=(I=this.ul)!==null&&I!==void 0?I:!!e;return!!o.enabled&&!C}_l(A,I="$autocapture",e){if(!this.isEnabled)return void this.el();let t=e||CgA(A);dgI(t)&&(t=t.parentNode||null);const o=this.fl();var B;I==="$autocapture"&&A.type==="click"&&A instanceof MouseEvent&&o.rageclick&&(!((B=this.rageclicks)===null||B===void 0)&&B.isRageClick(A.clientX,A.clientY,A.timeStamp||new Date().getTime()))&&MgI(t,o.rageclick)&&this._l(A,"$rageclick",e);const C=I===cvA,Q=C?QI(QI({},o),{},{dom_event_allowlist:void 0}):o;if(t&&(function(s,r,a,c,h,l){var D;const d=typeof window>"u"?void 0:window;if(!d||j6A(s)||a?.url_allowlist&&!ygI(a.url_allowlist,l)||a?.url_ignorelist&&ygI(a.url_ignorelist,l))return!1;if(a?.dom_event_allowlist){const G=a.dom_event_allowlist;if(G&&!G.some(m=>r.type===m))return!1}const{parentIsUsefulElement:y,targetElementList:w}=SgI(s,c);if(!(function(G,m){const p=m?.element_allowlist;if(Ye(p))return!0;for(const k of G)if(p.some(S=>k.tagName.toLowerCase()===S))return!0;return!1})(w,a)||!Z6A(w,a?.css_selector_allowlist)||Z6A(w,(D=a?.css_selector_ignorelist)!==null&&D!==void 0?D:O6A))return!1;try{const G=d.getComputedStyle(s);if(G&&G.getPropertyValue("cursor")==="pointer"&&r.type==="click")return!0}catch{}const u=s.tagName.toLowerCase();switch(u){case"html":return!1;case"form":return(h||["submit"]).indexOf(r.type)>=0;case"input":case"select":case"textarea":return(h||["change","click"]).indexOf(r.type)>=0;default:return y?(h||["click"]).indexOf(r.type)>=0:(h||["click"]).indexOf(r.type)>=0&&(T6A.indexOf(u)>-1||s.getAttribute("contenteditable")==="true")}})(t,A,Q,C,C?["copy","cut","paste"]:void 0,{config:{get_current_url:o.getCurrentUrl}})){var i;const{props:s,explicitNoCapture:r,target:a}=Dlt(t,{e:A,maskAllElementAttributes:o.maskAllElementAttributes,maskAllText:o.maskAllText,elementAttributeIgnoreList:o.element_attribute_ignorelist,elementsChainAsString:this.dl,disableCaptureUrlHashes:o.disableCaptureUrlHashes});if(r)return!1;const c=this.getElementSelectors(t,a);if(c&&c.length>0&&(s.$element_selectors=c),I===cvA){const h=A.type||"clipboard";if(h!=="paste"){var E,n;const l=(E=rvA())===null||E===void 0||(E=E.getSelection())===null||E===void 0?void 0:E.toString(),D=wgI(l);if(!D)return!1;s.$selected_content=D,s.$clipboard_text_length=(n=l?.length)!==null&&n!==void 0?n:0}s.$copy_type=h}return(i=this.xa)===null||i===void 0||i.capture(I,s),!0}}isBrowserSupported(){var A;return C0((A=hgA())===null||A===void 0?void 0:A.querySelectorAll)}};const KII="featureFlags",LII="logs";var ylt=class{constructor(A){this._instance=A}initialize(){}get(A){const I=this._instance.persistence;if(typeof A=="string")return I?.get_property(A);const e={};for(const t of A){const o=I?.get_property(t);Ye(o)||(e[t]=o)}return e}set(A,I){var e;(e=this._instance.persistence)===null||e===void 0||e.register(typeof A=="string"?{[A]:I}:A)}remove(A){var I;(I=this._instance.persistence)===null||I===void 0||I.unregister(A)}},wlt=class{constructor(A){this.instance=A,this.$=Dt,this.kv=new ylt(A),this.onSession=I=>yDA(this.instance.onSessionId(e=>{try{I(e)}catch(t){this.$.error("Browser extension session listener failed",t)}})),this.onEvent=I=>yDA(this.instance._addCaptureHook((e,t)=>{if(t)try{I({event:e,properties:t.properties})}catch(o){this.$.error("Browser extension event listener failed",o)}})),this.onRemoteConfig=I=>{const e=o=>{try{I(o)}catch(B){this.$.error("Browser extension remote config listener failed",B)}},t=this.instance.ur.on("extensionsRemoteConfig",e);return this.instance.cr&&e(this.instance.cr),yDA(t)}}get logger(){return this.$}get distinctId(){return this.instance.get_distinct_id()}get anonymousId(){var A;return(A=this.instance.get_property("$device_id"))!==null&&A!==void 0?A:this.distinctId}get deviceId(){const A=this.instance.get_property(D6A);return typeof A=="string"?A:void 0}get library(){return{name:ak.LIB_NAME,version:ak.LIB_VERSION}}get initialPersonProperties(){var A,I;return(A=(I=this.instance.persistence)===null||I===void 0?void 0:I.get_initial_props())!==null&&A!==void 0?A:{}}get groups(){return this.instance.getGroups()}get session(){try{var A,I,e,t,o;const B=(A=this.instance.sessionManager)===null||A===void 0?void 0:A.checkAndGetSessionAndWindowId(!0);return{sessionId:(I=B?.sessionId)!==null&&I!==void 0?I:"",windowId:(e=B?.windowId)!==null&&e!==void 0?e:"",sessionStartTimestamp:(t=B?.sessionStartTimestamp)!==null&&t!==void 0?t:0,lastActivityTimestamp:(o=B?.lastActivityTimestamp)!==null&&o!==void 0?o:0}}catch{return{sessionId:"",windowId:"",sessionStartTimestamp:0,lastActivityTimestamp:0}}}get isOptedOut(){return this.instance.has_opted_out_capturing()}get canCapture(){return C0(this.instance.is_capturing)?this.instance.is_capturing():!this.isOptedOut}get projectToken(){return this.instance.config.token}getExtension(A){let I;switch(A){case KII:case"featureFlagsCommon":I=this.instance.featureFlags;break;case LII:I=this.instance.logs;break;case"surveys":I=this.instance.surveys;break;case PII:I=this.instance.autocapture}return I}capture(A,I,e){if(!e)return void this.instance.capture(A,I);const t=QI({timestamp:e.timestamp,uuid:e.uuid,$set:e.set,$set_once:e.setOnce},e.delivery==="unload"?{transport:"sendBeacon",send_instantly:!0}:{});this.instance.capture(A,I,t)}registerDynamicEventProperties(A){return yDA(this.instance.dr(A))}sendRequest(A){var I=this;return Qa(function*(e,t={}){var o;const B=(o=t.target)!==null&&o!==void 0?o:"api",C=t.query?GDA(e,t.query):e,Q=I.instance.requestRouter.endpointFor(B,C),i={method:t.method,url:Q,data:t.body,headers:t.headers,timeout:t.timeoutMs,fireCallbackOnDrop:!0,transport:t.transport,compression:t.compression,compressionFallback:t.target==="flags"&&t.compression==="best-available"?HHA.Base64:void 0,timestampMode:t.sentAt};return B==="api"&&e==="/i/v1/logs"&&(i.batchKey="logs"),t.transport==="sendBeacon"?(I.instance._send_request(i),{statusCode:202}):new Promise(E=>{i.callback=E,I.instance._send_request(i)})}).apply(this,arguments)}};const lgA={};let DvA=0;const DgA=()=>{},YII='Consent opt in/out is not valid with cookieless_mode="always" and will be ignored',wq="Surveys module not available",_II="sanitize_properties is deprecated. Use before_send instead",bII="Invalid value for property_denylist config: ",ult=["$recording_status","$sdk_debug_recording_script_not_loaded","$sdk_debug_replay_url_trigger_status","$sdk_debug_replay_event_trigger_status","$sdk_debug_replay_linked_flag_trigger_status","$sdk_debug_replay_rrweb_error","$sdk_debug_replay_internal_buffer_length","$sdk_debug_replay_flushed_size"],Glt=["$feature_flag_called","$$heatmap","$snapshot"],HII=g=>g.charAt(0)==="$"&&!yB(Glt,g),mlt=/^[A-Za-z0-9_-]{1,400}$/,vII=/^fb\.[0-9]+\.[0-9]+\.[A-Za-z0-9_-]+(?:\.[A-Za-z0-9_-]+)?$/,TII=/^fb\.[0-9]+\.[0-9]+\.[0-9]+$/,plt=["token","distinct_id",zAI],dgA="posthog",klt=g=>{const A={};return g&&g!=="unset"&&("2025-11-30">g||(A.strictMinimumDuration=!0),"2026-05-30">g||(A.canvasCapture={resolutionScale:.6}),"2026-06-25">g||(A.streamNetworkBody=!0),"2026-08-30">g||(A.captureJsonLd=!0)),A},dvA=g=>{var A;return QI({api_host:"https://us.i.posthog.com",flags_api_host:null,ui_host:null,asset_host:null,token:"",autocapture:!0,cross_subdomain_cookie:D0t(ro?.location),persistence:"localStorage+cookie",persistence_name:"",cookie_persisted_properties:[],loaded:DgA,save_campaign_params:!0,custom_campaign_params:[],custom_blocked_useragents:[],save_referrer:!0,capture_pageleave:"if_capture_pageview",defaults:g??"unset",__preview_deferred_init_extensions:!1,__preview_replay_sync_fetch:!1,__preview_external_dependency_versioned_paths:!1,__preview_cookie_wins_on_conflict:!1,debug:Ca&&qC(Ca?.search)&&Ca.search.indexOf("__posthog_debug=true")!==-1||!1,cookie_expiration:365,upgrade:!1,disable_session_recording:!1,disable_persistence:!1,disable_web_experiments:!0,disable_surveys:!1,disable_surveys_automatic_display:!1,disable_conversations:!1,disable_product_tours:!1,disableDeviceModel:!1,reuseAnonymousId:!1,disable_external_dependency_loading:!1,strict_script_versioning:"fallback",enable_recording_console_log:void 0,secure_cookie:(Se==null||(A=Se.location)===null||A===void 0?void 0:A.protocol)==="https:",ip:!1,opt_out_capturing_by_default:!1,opt_out_persistence_by_default:!1,opt_out_useragent_filter:!1,opt_out_capturing_persistence_type:"localStorage",consent_persistence_name:null,opt_out_capturing_cookie_prefix:null,opt_in_site_apps:!1,property_denylist:[],respect_dnt:!1,sanitize_properties:null,request_headers:{},request_batching:!0,properties_string_max_length:65535,mask_all_element_attributes:!1,mask_all_text:!1,mask_personal_data_properties:!1,custom_personal_data_properties:[],advanced_disable_flags:!1,advanced_disable_decide:!1,advanced_disable_feature_flags:!1,advanced_disable_feature_flags_on_first_load:!1,advanced_only_evaluate_survey_feature_flags:!1,advanced_feature_flags_dedup_per_session:!1,advanced_enable_surveys:!1,advanced_disable_toolbar_metrics:!1,feature_flag_request_timeout_ms:3e3,feature_flag_request_max_retries:1,surveys_request_timeout_ms:1e4,on_request_error(I){Dt.error("Bad HTTP status: "+I.statusCode+" "+I.text)},get_device_id:I=>I,capture_performance:void 0,name:"posthog",bootstrap:{},disable_compression:!1,session_idle_timeout_seconds:1800,person_profiles:CgI,before_send:void 0,get_current_url:void 0,request_queue_config:{flush_interval_ms:3e3},error_tracking:{},_onCapture:DgA},(I=>({rageclick:I&&I>="2026-05-30"?{content_ignorelist:W6A,ignore_text_selection:!0}:!I||"2025-11-30">I||{content_ignorelist:!0},capture_pageview:!I||"2025-05-24">I||"history_change",session_recording:klt(I),external_scripts_inject_target:I&&I>="2026-01-30"?"head":"body",internal_or_test_user_hostname:I&&I>="2026-01-30"?/^(localhost|127\.0\.0\.1)$/:void 0,persistence_save_debounce_ms:I&&I>="2026-05-30"?250:0,split_storage:!(!I||"2026-05-30">I),detect_google_search_app:!(!I||"2026-05-30">I),disable_capture_url_hashes:!(!I||"2026-06-25">I),cookieWinsOnConflict:!(!I||I==="unset"||"2026-08-29">I)}))(g))},Mlt=[["process_person","person_profiles"],["xhr_headers","request_headers"],["cookie_name","persistence_name"],["disable_cookie","disable_persistence"],["__preview_disable_beacon","disable_beacon"],["store_google","save_campaign_params"],["verbose","debug"],["__preview_cookie_wins_on_conflict","cookieWinsOnConflict"]],qII=g=>{const A={};for(const[t,o]of Mlt)Ye(g[t])||(A[o]=g[t]);const I=sr({},A,g),e=g.__preview_external_dependency_versioned_paths;return Ye(e)||(Ye(g.strict_script_versioning)&&(I.strict_script_versioning=!!e),qC(e)&&Ye(g.asset_host)&&(I.asset_host=e)),cB(g.property_blacklist)&&(Ye(g.property_denylist)?I.property_denylist=g.property_blacklist:cB(g.property_denylist)?I.property_denylist=[...g.property_blacklist,...g.property_denylist]:Dt.error(bII+g.property_denylist)),I};var Slt=class{constructor(){this.__forceAllowLocalhost=!1}get Qc(){return this.__forceAllowLocalhost}set Qc(A){Dt.error("WebPerformanceObserver is deprecated and has no impact on network capture. Use `_forceAllowLocalhostNetworkCapture` on `posthog.sessionRecording`"),this.__forceAllowLocalhost=A}},ygA=class fY{Zc(A){if(!A)return;const I=this.Jc.indexOf(A);I!==-1&&this.Jc.splice(I,1)}Kc(A,I){var e;return this.Zc(A),this.Jc.push(I),(e=I.initialize)===null||e===void 0||e.call(I),I}Xc(){return this.config.cookieless_mode==="always"||this.config.cookieless_mode==="on_reject"&&this.consent.isRejected()}Yc(){if(this.th||this.config.reuseAnonymousId||this.config.segment||this.Xc())return;const A=this.config.persistence==="memory"||this.config.persistence==="sessionStorage";if(!A&&!this.config.disable_persistence||this.eh)return;let I,e,t;A?(I=`persistence is set to '${this.config.persistence}'`,e=this.config.persistence==="memory"?"on every page load":"for every new browser tab or window",t="Either set persistence to 'localStorage+cookie', keep this persistence and pass a stable ID through bootstrap.distinctID, or enable reuseAnonymousId."):(I="persistence is disabled (disable_persistence is true)",e="on every page load",t="Either set disable_persistence to false, keep persistence disabled and pass a stable ID through bootstrap.distinctID, or enable reuseAnonymousId."),this.th=!0,console.warn("[PostHog.js]",`${I} but no bootstrap.distinctID was provided. PostHog will mint a new distinct ID ${e}, so calling identify() merges a new ID onto the person each time. A person can then pass the distinct-ID limit and its events stop appearing on person pages and the session tab. ${t}`)}ih(){const A=this.persistence;if(!A||this.nh)return;if(this.Xc())return void(this.config.cookieless_mode==="on_reject"&&this.get_distinct_id()!=="$posthog_cookieless"&&(this.sh(),this.rh()));if(this.get_distinct_id()!=="$posthog_cookieless")return;this.oh()||A.load(!0);const I=this.get_distinct_id();if(!I||I==="$posthog_cookieless"){const e=this.config.get_device_id(UR());this.register({distinct_id:e,$device_id:e}),A.set_property(Um,rJ)}this.sh()}get decideEndpointWasHit(){var A,I;return(A=(I=this.featureFlags)===null||I===void 0?void 0:I.hasLoadedFlags)!==null&&A!==void 0&&A}get flagsEndpointWasHit(){var A,I;return(A=(I=this.featureFlags)===null||I===void 0?void 0:I.hasLoadedFlags)!==null&&A!==void 0&&A}constructor(){var A;this.ah=!1,this.uh=!1,this.webPerformance=new Slt,this.hh=!1,this.version=ak.LIB_VERSION,this.dh=new Set,this.fh="",this.ur=new mDA,this.Jc=[],this.ph=[],this.gh=!1,this.eh=!1,this.th=!1,this.nh=!1,this._calculate_event_properties=this.calculateEventProperties.bind(this),this.config=dvA(),this.SentryIntegration=K0t,this.sentryIntegration=e=>(function(t,o){const B=YgI(t,o);return{name:LgI,processEvent:C=>B(C)}})(this,e),this.__request_queue=[],this.__loaded=!1,this.analyticsDefaultEndpoint="/e/",this.mh=!1,this.yh=null,this.bh=null,this._h=null,this.scrollManager=new Blt(this),this.pageViewManager=new _gI(this),this.rateLimiter=new O0t(this),this.requestRouter=new nlt(this),this.consent=new k0t(this),this.externalIntegrations=new hlt(this);const I=(A=fY.__defaultExtensionClasses)!==null&&A!==void 0?A:{};this.featureFlags=I.featureFlags&&new I.featureFlags(this),this.toolbar=I.toolbar&&new I.toolbar(this),this.surveys=I.surveys&&new I.surveys(this),this.conversations=I.conversations&&new I.conversations(this),this.logs=I.logs&&new I.logs(this),this.metrics=I.metrics&&new I.metrics(this),this.experiments=I.experiments&&new I.experiments(this),this.exceptions=I.exceptions&&new I.exceptions(this),this.people={set:(e,t,o)=>{const B=qC(e)?{[e]:t}:e;this.setPersonProperties(B),o?.({})},set_once:(e,t,o)=>{const B=qC(e)?{[e]:t}:e;this.setPersonProperties(void 0,B),o?.({})}},this.on("eventCaptured",e=>Dt.info(`send "${e?.event}"`,e))}init(A,I,e){if(e&&e!==dgA){var t;const o=(t=lgA[e])!==null&&t!==void 0?t:new fY;return o._init(A,I,e),lgA[e]=o,lgA[dgA][e]=o,o}return this._init(A,I,e)}_init(A,I={},e){var t,o,B;const C=qC(A)?A.trim():"";if(!C)return Dt.critical("PostHog was initialized without a token. This likely indicates a misconfiguration. Please check the first argument passed to posthog.init()"),this;var Q;if(this.__loaded)return C!==((Q=this.config)===null||Q===void 0?void 0:Q.token)?console.warn("[PostHog.js]",`You have already initialized PostHog with a different project token! Re-initializing is a no-op, so events will keep going to the project this instance was initialized with. To capture into a second project, load PostHog once, then initialize a named instance after the SDK has loaded, e.g. posthog.init('${C}', { ... }, 'project2')`):console.warn("[PostHog.js]","You have already initialized PostHog! Re-initializing is a no-op"),this;this.__loaded=!0,this.config=dvA(I.defaults),I.debug=this.wh(I.debug),this.kh=I,this.Sh=[],I.person_profiles?this.bh=I.person_profiles:I.process_person&&(this.bh=I.process_person);const i=dvA(I.defaults),E=qII(I),n=sr({},i,E,{name:e,token:C});yC(i.rageclick)&&yC(E.rageclick)&&(n.rageclick=sr({},i.rageclick,E.rageclick)),yC(i.session_recording)&&yC(E.session_recording)&&(n.session_recording=sr({},i.session_recording,E.session_recording)),this.set_config(n),this.config.on_xhr_error&&Dt.error("on_xhr_error is deprecated. Use on_request_error instead"),this.compression=I.disable_compression?void 0:$M.GZipJS;const s=this.oh(),r=!this.Xc();if(this.persistence=new X6A(this.config,s,!0,r),this.sessionPersistence=this.config.persistence==="sessionStorage"||this.config.persistence==="memory"?this.persistence:new X6A(QI(QI({},this.config),{},{persistence:"sessionStorage"}),s,!1,r),this.fh="ph_"+(this.config.persistence_name||this.config.token)+"_session_registered_properties",this.config.persistence!=="memory"&&!s&&ia.$t()){const D=ia.Lt(this.fh);cB(D)&&D.forEach(d=>{qC(d)&&this.dh.add(d)})}else ia.Pt(this.fh);const a=QI({},this.persistence.props),c=QI({},this.sessionPersistence.props);this.register({$initialization_time:new Date().toISOString()}),this.xh=new elt((D,d)=>this.$h(D,d),this.config.request_queue_config),this.Ch=new olt(this),this.__request_queue=[];const h=this.Xc();h||(this.sessionManager=new MII(this),this.sessionPropsManager=new pII(this,this.sessionManager,this.persistence),this.sessionManager.onSessionId((D,d,y)=>{(y?.activityTimeout||y?.sessionPastMaximumLength||y?.crossTabAdoption)&&this.Th()})),this.Ih(),this.config.__preview_deferred_init_extensions?(Dt.info("Deferring extension initialization to improve startup performance"),this.Mh=setTimeout(()=>{this.Mh=void 0,this.Eh(h)},0)):(Dt.info("Initializing extensions synchronously"),this.Eh(h)),ak.DEBUG=ak.DEBUG||this.config.debug,ak.DEBUG&&Dt.info("Starting in debug mode",{this:this,config:I,thisC:QI({},this.config),p:a,s:c}),this.config.identity_distinct_id&&!(!((t=I.bootstrap)===null||t===void 0)&&t.distinctID)&&(I.bootstrap=QI(QI({},I.bootstrap),{},{distinctID:this.config.identity_distinct_id,isIdentifiedID:!0}));const l=(o=I.bootstrap)===null||o===void 0?void 0:o.distinctID;if(this.eh=!!l&&!ZAA(l),(B=I.bootstrap)===null||B===void 0?void 0:B.distinctID){const D=I.bootstrap.distinctID,d=this.get_distinct_id(),y=this.persistence.get_property(Um);if(I.bootstrap.isIdentifiedID&&d!=null&&d!==D&&y==="anonymous")this.identify(D);else if(I.bootstrap.isIdentifiedID&&d!=null&&d!==D&&y==="identified")Dt.warn("Bootstrap distinctID differs from an already-identified user. The existing identity is preserved. Call reset() before reinitializing if you intend to switch users.");else{const w=this.config.get_device_id(UR()),u=I.bootstrap.isIdentifiedID?w:D;this.persistence.set_property(Um,I.bootstrap.isIdentifiedID?nDA:rJ),this.register({distinct_id:D,$device_id:u})}}if(h)this.register_once({distinct_id:R6A,$device_id:null},"");else if(!this.get_distinct_id()){const D=this.config.get_device_id(UR());this.register_once({distinct_id:D,$device_id:D},""),this.persistence.set_property(Um,rJ)}return NE(Se,"onpagehide"in self?"pagehide":"unload",this._handle_unload.bind(this),{passive:!1}),NE(Se,"pageshow",()=>{var D;this.ah=!1,this.uh||(D=this.Ch)===null||D===void 0||D.resume()}),I.segment?KgI(this,()=>this.Ph()):this.Ph(),C0(this.config._onCapture)&&this.config._onCapture!==DgA&&(Dt.warn("onCapture is deprecated. Please use `before_send` instead"),this.on("eventCaptured",D=>this.config._onCapture(D.event,D))),this.config.ip&&Dt.warn('The `ip` config option has NO EFFECT AT ALL and has been deprecated. Use a custom transformation or "Discard IP data" project setting instead. See https://posthog.com/tutorials/web-redact-properties#hiding-customer-ip-address for more information.'),this.config.disableDeviceModel||(function(){return fII.apply(this,arguments)})().then(D=>{D&&this.register({[d6A]:D})}).catch(DgA),this}Rh(A){const I=A;return qC(I.name)&&C0(I.setup)}Ah(A,I){var e=this;this.Rh(A)?I.push(Qa(function*(){try{yield A.setup(e.Fh())}catch(o){Dt.error(`Failed to set up extension "${A.name}"`,o);try{var t;yield(t=A.dispose)===null||t===void 0?void 0:t.call(A)}catch(B){Dt.error(`Failed to dispose extension "${A.name}"`,B)}}})):this.Jc.push(A)}Ih(){var A,I,e,t=this;const o=(A=(I=this.config.__extensionClasses)===null||I===void 0?void 0:I.featureFlags)!==null&&A!==void 0?A:(e=fY.__defaultExtensionClasses)===null||e===void 0?void 0:e.featureFlags;var B,C,Q;if(o)if(this.featureFlags&&this.featureFlags instanceof o||((B=this.Oh)===null||B===void 0||B.call(this),this.Oh=void 0,this.featureFlags=new o(this)),C0(this.featureFlags.onReloading)&&C0(this.featureFlags.setup)){if(!this.Oh){this.Oh=this.featureFlags.onReloading(()=>{this.ur.emit("featureFlagsReloading",!0)});const i=this.featureFlags;Qa(function*(){try{yield i.setup(t.Fh())}catch(E){Dt.error("Failed to set up feature flags",E);const n=t.Oh;t.Oh=void 0;try{n?.()}catch(s){Dt.error("Failed to unsubscribe feature flag reloading",s)}try{yield i.dispose()}catch(s){Dt.error("Failed to dispose feature flags",s)}}})()}}else(C=(Q=this.featureFlags).initialize)===null||C===void 0||C.call(Q)}Eh(A){const I=performance.now(),e=QI(QI({},fY.__defaultExtensionClasses),this.config.__extensionClasses),t=[];var o,B,C,Q,i,E,n,s;e.exceptions&&this.Jc.push(this.exceptions=(o=this.exceptions)!==null&&o!==void 0?o:new e.exceptions(this)),e.historyAutocapture&&this.Jc.push(this.historyAutocapture=new e.historyAutocapture(this)),e.tracingHeaders&&this.Jc.push(this.tracingHeaders=new e.tracingHeaders(this)),e.siteApps&&this.Jc.push(this.siteApps=new e.siteApps(this)),e.sessionRecording&&!A&&this.Jc.push(this.sessionRecording=new e.sessionRecording(this)),this.config.disable_scroll_properties||t.push(()=>{this.scrollManager.startMeasuringScrollPosition()}),e.autocapture&&this.Ah(this.autocapture=new e.autocapture(this),t),e.surveys&&this.Ah(this.surveys=(B=this.surveys)!==null&&B!==void 0?B:new e.surveys(this),t),e.logs&&this.Ah(this.logs=(C=this.logs)!==null&&C!==void 0?C:new e.logs(this),t),e.metrics&&this.Jc.push(this.metrics=(Q=this.metrics)!==null&&Q!==void 0?Q:new e.metrics(this)),e.conversations&&this.Jc.push(this.conversations=(i=this.conversations)!==null&&i!==void 0?i:new e.conversations(this)),e.productTours&&this.Jc.push(this.productTours=new e.productTours(this)),e.heatmaps&&this.Jc.push(this.heatmaps=new e.heatmaps(this)),e.webVitalsAutocapture&&this.Jc.push(this.webVitalsAutocapture=new e.webVitalsAutocapture(this)),e.exceptionObserver&&this.Jc.push(this.exceptionObserver=new e.exceptionObserver(this)),e.deadClicksAutocapture&&this.Jc.push(this.deadClicksAutocapture=new e.deadClicksAutocapture(this,P0t)),e.toolbar&&this.Jc.push(this.toolbar=(E=this.toolbar)!==null&&E!==void 0?E:new e.toolbar(this)),e.experiments&&this.Jc.push(this.experiments=(n=this.experiments)!==null&&n!==void 0?n:new e.experiments(this)),e.webMCP&&this.Jc.push(this.webMCP=(s=this.webMCP)!==null&&s!==void 0?s:new e.webMCP(this)),this.Jc.forEach(r=>{r.initialize&&t.push(()=>{var a;(a=r.initialize)===null||a===void 0||a.call(r)})}),t.push(()=>{if(this.Dh){const r=this.Dh;this.Dh=void 0,this.Jc.forEach(a=>{var c;return(c=a.onRemoteConfig)===null||c===void 0?void 0:c.call(a,r)})}}),this.Lh(t,I)}Lh(A,I){for(;A.length>0;){if(this.config.__preview_deferred_init_extensions&&performance.now()-I>=30&&A.length>0)return void(this.Mh=setTimeout(()=>{this.Mh=void 0,this.Lh(A,I)},0));const t=A.shift();if(t)try{t()}catch(o){Dt.error("Error initializing extension:",o)}}const e=Math.round(performance.now()-I);this.register_for_session({[XAI]:this.config.__preview_deferred_init_extensions?"deferred":"synchronous",[$AI]:e}),this.config.__preview_deferred_init_extensions&&Dt.info(`PostHog extensions initialized (${e}ms)`)}zu(A){if(!ro||!ro.body)return Dt.info("document not ready yet, trying again in 500 milliseconds..."),void setTimeout(()=>{this.zu(A)},500);if(this.config.__preview_deferred_init_extensions&&(this.Dh=A),this.cr=A,this.compression=void 0,A.ok){var I;const e=A.config;e.supportedCompression&&!this.config.disable_compression&&(this.compression=yB(e.supportedCompression,$M.GZipJS)?$M.GZipJS:yB(e.supportedCompression,$M.Base64)?$M.Base64:void 0),!((I=e.analytics)===null||I===void 0)&&I.endpoint&&(this.analyticsDefaultEndpoint=e.analytics.endpoint)}this.set_config({person_profiles:this.bh?this.bh:CgI}),this.ur.emit("extensionsRemoteConfig",A),this.Jc.forEach(e=>{var t;return(t=e.onRemoteConfig)===null||t===void 0?void 0:t.call(e,A)})}Ph(){try{this.config.loaded(this)}catch(A){Dt.critical("`loaded` function failed",A)}if(this.Nh(),this.config.internal_or_test_user_hostname&&Ca?.hostname){const A=Ca.hostname,I=this.config.internal_or_test_user_hostname;(typeof I=="string"?A===I:I.test(A))&&this.setInternalOrTestUser()}this.config.capture_pageview&&setTimeout(()=>{(this.consent.isOptedIn()||this.Xc())&&this.qh()},1),this.jh=new eII(this),this.jh.load()}Nh(){var A;this.is_capturing()&&this.config.request_batching&&((A=this.xh)===null||A===void 0||A.enable())}_dom_loaded(){this.is_capturing()&&Qq(this.__request_queue,A=>this.$h(A)),this.__request_queue=[],this.Nh()}_handle_unload(){var A,I,e,t,o,B;this.ah=!0,(A=this.surveys)===null||A===void 0||(I=A.handlePageUnload)===null||I===void 0||I.call(A),(e=this.metrics)===null||e===void 0||e.flush("sendBeacon"),this.config.request_batching?(this.Bh()&&this.capture(QgI),(t=this.logs)===null||t===void 0||t.flushLogs("sendBeacon"),(o=this.xh)===null||o===void 0||o.unload(),(B=this.Ch)===null||B===void 0||B.unload()):this.Bh()&&this.capture(QgI,null,{transport:"sendBeacon"})}_send_request(A){mII(this,A)}$h(A,I){this.Ch?this.Ch.retriableRequest(A,I):this._send_request(I?QI(QI({},A),{},{transport:I}):A)}_execute_array(A){DvA++;try{let I;const e=[],t=[],o=[];Qq(A,C=>{if(C)if(I=C[0],cB(I))o.push(C);else if(C0(C))try{C.call(this)}catch(Q){Dt.error("Error executing queued PostHog call",C,Q)}else cB(C)&&I==="alias"?e.push(C):cB(C)&&I.indexOf("capture")!==-1&&C0(this[I])?o.push(C):t.push(C)});const B=function(C,Q){Qq(C,function(i){try{if(cB(i[0])){let E=Q;Gn(i,function(n){E=E[n[0]].apply(E,n.slice(1))})}else Q[i[0]].apply(Q,i.slice(1))}catch(E){Dt.error("Error executing queued PostHog call",i,E)}})};B(e,this),B(t,this),B(o,this)}finally{DvA--}}push(A){if(DvA>0&&cB(A)&&qC(A[0])){const I=fY.prototype[A[0]];return void(C0(I)&&I.apply(this,A.slice(1)))}this._execute_array([A])}get zh(){return{property:HAI,persistenceKey:oq,cookieName:"_fbc",pattern:vII,register:(A,I)=>{var e;return(e=this.persistence)===null||e===void 0?void 0:e.register({[oq]:{value:A,delivered:I}})},unregister:()=>{var A;return(A=this.persistence)===null||A===void 0?void 0:A.unregister(oq)}}}get Hh(){return{property:vAI,persistenceKey:IgA,cookieName:"_fbp",pattern:TII,register:(A,I)=>{var e;return(e=this.persistence)===null||e===void 0?void 0:e.register({[IgA]:{value:A,delivered:I}})},unregister:()=>{var A;return(A=this.persistence)===null||A===void 0?void 0:A.unregister(IgA)}}}Uh(A){var I;const e=(I=this.persistence)===null||I===void 0?void 0:I.get_property(A.persistenceKey);return qC(e)&&A.pattern.test(e)?{value:e,delivered:!1}:yC(e)&&qC(e.value)&&A.pattern.test(e.value)?{value:e.value,delivered:e.delivered===!0}:void 0}Wh(A,I,e){return I===e?.value?{value:I,pending:!e.delivered}:(A.register(I,!1),{value:I,pending:!0})}Vh(A){if(!this.config.save_campaign_params||this.Xc())return;const I=tgA(A.cookieName);return qC(I)&&A.pattern.test(I)?I:void 0}Gh(A,I,e,t){if(!this.persistence)return;const o=this.zh;this.persistence.refreshKey(o.persistenceKey);const B=this.Uh(o);if(t)return void o.unregister();if(e)return qC(I)&&vII.test(I)?this.Wh(o,I,B):void o.unregister();const C=qC(A)&&mlt.test(A)?A:void 0,Q=this.Vh(o);return Q&&((i,E,n)=>{const s=i.split(".");if(E)return s[3]===E;if(!n)return!0;const r=n.value.split(".");return s[3]===r[3]||Number(s[2])>Number(r[2])})(Q,C,B)?this.Wh(o,Q,B):C?B?.value.split(".")[3]===C?{value:B.value,pending:!B.delivered}:this.Wh(o,`fb.1.${Date.now()}.${C}`,B):B?{value:B.value,pending:!B.delivered}:void 0}Qh(A,I,e){if(!this.persistence)return;const t=this.Hh;this.persistence.refreshKey(t.persistenceKey);const o=this.Uh(t);if(e)return void t.unregister();if(I)return qC(A)&&TII.test(A)?this.Wh(t,A,o):void t.unregister();const B=this.Vh(t);return B?this.Wh(t,B,o):o?{value:o.value,pending:!o.delivered}:void 0}Zh(A,I){if(!this.persistence)return;this.persistence.refreshKey(A.persistenceKey);const e=this.Uh(A);e?.value!==I||e.delivered||A.register(I,!0)}capture(A,I,e){var t,o;if(!(this.__loaded&&this.persistence&&this.sessionPersistence&&this.xh))return void Dt.uninitializedWarning("posthog.capture");if(!this.is_capturing())return void Dt.info(`Event "${A}" was not captured because capturing is disabled (opted out or consent pending).`);if(Ye(A)||!qC(A))return void Dt.error("No event name provided to posthog.capture");if(this.ih(),A==="$snapshot"&&this.Xc())return;const B=!this.config.opt_out_useragent_filter&&this._is_bot();if(B&&!this.config.__preview_capture_bot_pageviews)return void Dt.info(`Event "${A}" was not captured because the user agent looks like a bot. Set \`opt_out_useragent_filter: true\` to capture it.`);const C=e?.skip_client_rate_limiting?void 0:this.rateLimiter.clientRateLimitContext();if(C?.isRateLimited)return void Dt.critical("This capture call is ignored due to client rate limiting.");let Q;I?.$current_url&&!qC(I?.$current_url)&&(Dt.error("Invalid `$current_url` property provided to `posthog.capture`. Input must be a string. Ignoring provided value."),I==null||delete I.$current_url),A!=="$exception"||e?.Jh||Dt.warn("Using `posthog.capture('$exception')` is unreliable because it does not attach required metadata. Use `posthog.captureException(error)` instead, which attaches required metadata automatically."),this.sessionPersistence.update_search_keyword(),this.config.save_campaign_params&&(Q=this.sessionPersistence.update_campaign_params()),this.config.save_referrer&&this.sessionPersistence.update_referrer_info(),(this.config.save_campaign_params||this.config.save_referrer)&&this.persistence.set_initial_person_info();const i=new Date,E=e?.timestamp||i,n=z$g(e?.uuid,UR);let s={uuid:n,event:A,properties:this.calculateEventProperties(A,I||{},E,n)};A==="$pageview"&&this.config.__preview_capture_bot_pageviews&&B&&(s.event="$bot_pageview",s.properties.$browser_type="bot"),C&&(s.properties.$lib_rate_limit_remaining_tokens=C.remainingTokens);const r=A==="$feature_flag_called"&&s.properties.$feature_flag_has_experiment===!1&&this.get_property("$minimal_flag_called_events")===!0;e?.$set&&!r&&(s.$set=e?.$set);const a=yC(I?.$set)?I.$set:void 0,c=cB(I?.$unset)?I.$unset:[],h=e?.$unset||[],l=N=>{var U;const K=!!e?.$set&&N in e.$set;return{hasProvided:K||!!a&&N in a,provided:K?e==null||(U=e.$set)===null||U===void 0?void 0:U[N]:a?.[N],unset:c.indexOf(N)!==-1||h.indexOf(N)!==-1}},D=l(HAI),d=l(vAI),y=[{channel:this.zh,hasProvided:D.hasProvided,update:this.Gh(Q?.fbclid,D.provided,D.hasProvided,D.unset)},{channel:this.Hh,hasProvided:d.hasProvided,update:this.Qh(d.provided,d.hasProvided,d.unset)}];for(const{channel:N,hasProvided:U,update:K}of y)K&&s.properties.$process_person_profile===!0&&K.pending&&!U&&!r&&(s.$set=QI({[N.property]:K.value},s.$set));const w=e?.$unset;w&&(s.$unset=w);const u=r?void 0:this.Kh(e?.$set_once,A!==EgI,A===igI);if(u&&(s.$set_once=u),e?._noTruncate||(G=this.config.properties_string_max_length,s=(function(N,U){const K=new Set;return(function Y(b,q){if(b!==Object(b))return U?U(b):b;if(K.has(b))return;let j;if(K.add(b),cB(b))j=[],Qq(b,W=>{j.push(Y(W))});else{const W={};Gn(Aq(b)?ngI(b):b,(Z,gA)=>{K.has(Z)||(W[gA]=Y(Z))}),j=W}return j})(N)})(s,N=>qC(N)?N.slice(0,G):N)),s.timestamp=E,Ye(e?.timestamp)||(s.properties.$event_time_override_provided=!0,s.properties.$event_time_override_system_time=i),r&&(s.properties=((N,U=[])=>{const K={},Y=b=>{N[b]!==void 0&&(K[b]=N[b])};return iht.forEach(Y),U.forEach(Y),K})(s.properties,plt)),A===AS.DISMISSED||A===AS.SENT){const N=I?.[AvA.SURVEY_ID],U=I?.[AvA.SURVEY_ITERATION];UII({id:N,current_iteration:U}),s.$set=QI(QI({},s.$set),{},{[Qlt({id:N,current_iteration:U},A===AS.SENT?"responded":"dismissed")]:!0})}else A===AS.SHOWN&&(s.$set=QI(QI({},s.$set),{},{[AvA.SURVEY_LAST_SEEN_DATE]:new Date().toISOString()}));var G;if(A===Z0t.SHOWN){const N=I?.[gII.TOUR_TYPE];N&&(s.$set=QI(QI({},s.$set),{},{[`${gII.TOUR_LAST_SEEN_DATE}/${N}`]:new Date().toISOString()}))}const m=QI(QI({},s.properties.$set),s.$set);if(sk(m)||this.setPersonPropertiesForFlags(m),!hC(this.config.before_send)){const N=this.Os(s);if(!N)return;s=N,s.uuid=z$g(s.uuid,UR)}this.sessionRecording&&!this.gh&&HII(A)&&(this.gh=!0,setTimeout(()=>this.gh=!1,3e4));const p=y.filter(({channel:N,update:U})=>{var K,Y,b;const q=(K=(Y=s.$set)===null||Y===void 0?void 0:Y[N.property])!==null&&K!==void 0?K:yC((b=s.properties)===null||b===void 0?void 0:b.$set)?s.properties.$set[N.property]:void 0;return U?.pending&&q===U.value});this.ur.emit("eventCaptured",s);const k=(t=e?._url)!==null&&t!==void 0?t:this.requestRouter.endpointFor("api",this.analyticsDefaultEndpoint),S=e?._batchKey==="recordings"||/\/s\/(?:\?|$)/.test(k),R=QI(QI(QI({method:"POST",url:k,data:s,compression:"best-available",preferSyncCompression:e?.send_instantly,timestampMode:S?"body":"capture-body",batchKey:e?._batchKey},S&&(!((o=s.properties)===null||o===void 0)&&o.$session_id)?{batchGroup:s.properties.$session_id+(s.properties.$window_id?`-${s.properties.$window_id}`:"")}:{}),e?.transport?{transport:e.transport}:{}),p.length?{fireCallbackOnDrop:!0,callback:N=>{if(N.statusCode>=200&&300>N.statusCode)for(const{channel:U,update:K}of p)this.Zh(U,K.value)}}:{});if(!this.config.request_batching||e&&!e?._batchKey||e?.send_instantly){var x;let N;!R.transport&&!R.callback&&sk((x=this.config.request_headers)!==null&&x!==void 0?x:{})&&this.ah&&(N="sendBeacon"),this.$h(R,N)}else this.xh.enqueue(R);return s}_addCaptureHook(A){return this.on("eventCaptured",I=>A(I.event,I))}getExtension(A){var I;return(I=this.Xh)===null||I===void 0?void 0:I.getExtension(A)}Fh(){var A;return(A=this.Xh)!==null&&A!==void 0?A:this.Xh=new wlt(this)}dr(A){this.ph.push(A);let I=!0;return()=>{if(!I)return;I=!1;const e=this.ph.indexOf(A);e!==-1&&this.ph.splice(e,1)}}Yh(A=!0){var I,e,t;return!!(!((I=this.persistence)===null||I===void 0)&&I.consumeCookieIdentityChange())&&(this._h=null,this.persistence.get_property("$user_state")==="anonymous"&&((t=this.sessionPersistence)===null||t===void 0||t.clear(),this.dh.clear(),this.td()),(e=this.featureFlags)===null||e===void 0||e.reset(),A&&this.reloadFeatureFlags(),!0)}calculateEventProperties(A,I,e,t,o){if(e=e||new Date,!this.persistence||!this.sessionPersistence)return I;this.ih(),this.persistence.syncCookieProperties(),this.Yh();const B=o?void 0:this.persistence.remove_event_timer(A);let C=QI({},I);if(C.token=this.config.token,C.$config_defaults=this.config.defaults,this.Xc()&&(C[zAI]=!0),A==="$snapshot"){const D=QI(QI({},this.persistence.properties()),this.sessionPersistence.properties());return C.distinct_id=D.distinct_id,(!qC(C.distinct_id)&&!Gh(C.distinct_id)||ZAA(C.distinct_id))&&Dt.error("Invalid distinct_id for replay event. This indicates a bug in your implementation"),C}const Q=(function(D,d,y,w=!1){var u,G,m,p;if(!xm)return{};const k=D?[...hq,...d||[]]:[],[S,R]=Z$g(xm),[x,N]=(function(tA){for(let IA=0;W$g.length>IA;IA++){const[QA,nA,DA]=W$g[IA],CA=tA.match(QA);if(CA){const hA=DA&&tA.match(DA)||CA;return[nA,hA?.[1]||""]}}return["",""]})(xm),U=(function(){const tA="u">typeof navigator?navigator:void 0;return tA?.brave?{brave:!0}:{}})(),K={};Ye(y)||(K.detectGoogleSearchApp=y);const Y={},b=(u=navigator)===null||u===void 0||(u=u.userAgentData)===null||u===void 0?void 0:u.platform,q=(G=navigator)===null||G===void 0?void 0:G.maxTouchPoints,j=Se==null||(m=Se.screen)===null||m===void 0?void 0:m.width,W=Se==null||(p=Se.screen)===null||p===void 0?void 0:p.height,Z=Se?.devicePixelRatio;Ye(b)||(Y.userAgentDataPlatform=b),Ye(q)||(Y.maxTouchPoints=q),Ye(j)||(Y.screenWidth=j),Ye(W)||(Y.screenHeight=W),Ye(Z)||(Y.devicePixelRatio=Z);const gA=sr(U6A({$os:S,$os_version:R,$browser:T$g(xm,navigator.vendor,U,K),$webview_app:x,$webview_app_version:N,$device:O$g(xm),$device_type:Nct(xm,Y),$timezone:bgI(),$timezone_offset:v0t()}),{$current_url:EgA(w?i3(Ca?.href):Ca?.href,k,ngA),$host:Ca?.host,$pathname:Ca?.pathname,$raw_user_agent:xm.length>1e3?xm.substring(0,997)+"...":xm,$browser_version:Rct(xm,navigator.vendor,U,K),$browser_language:WgI(),$browser_language_prefix:H0t(),$screen_height:Se?.screen.height,$screen_width:Se?.screen.width,$viewport_height:Se?.innerHeight,$viewport_width:Se?.innerWidth,$lib:EJ.LIB_NAME,$lib_version:EJ.LIB_VERSION,$insert_id:Math.random().toString(36).substring(2,10)+Math.random().toString(36).substring(2,10),$time:Date.now()/1e3});return EJ.SDK_DIST_CHANNEL&&(gA.$sdk_dist_channel=EJ.SDK_DIST_CHANNEL),gA})(this.config.mask_personal_data_properties,this.config.custom_personal_data_properties,this.config.detect_google_search_app,this.config.disable_capture_url_hashes);if(this.sessionManager){const{sessionId:D,windowId:d}=this.sessionManager.checkAndGetSessionAndWindowId(o,e.getTime(),!0);C.$session_id=D,C.$window_id=d}this.sessionPropsManager&&sr(C,this.sessionPropsManager.getSessionProps());try{var i;if(this.sessionRecording){const D=this.sessionRecording.sdkDebugProperties,d=!this.gh&&HII(A);for(const y in D)(d||yB(ult,y))&&(C[y]=D[y])}C.$sdk_debug_retry_queue_size=(i=this.Ch)===null||i===void 0?void 0:i.length}catch(D){C.$sdk_debug_error_capturing_properties=String(D)}let E;if(this.requestRouter.region===avA&&(C.$lib_custom_api_host=this.config.api_host),E=A!=="$pageview"||o?A!=="$pageleave"||o?this.pageViewManager.doEvent():this.pageViewManager.doPageLeave(e):this.pageViewManager.doPageView(e,t),C=sr(C,E),A==="$pageview"&&ro&&(C.title=ro.title),!Ye(B)){const D=e.getTime()-B;C.$duration=parseFloat((D/1e3).toFixed(3))}xm&&this.config.opt_out_useragent_filter&&(C.$browser_type=this._is_bot()?"bot":"browser");const n=this.persistence.properties(),s=this.sessionPersistence.properties(),r=C.$groups,a=n.$groups;yC(r)&&!sk(r)&&(C.$groups=QI(QI({},yC(a)?a:{}),r)),Gn(["$referrer","$referring_domain"],D=>{D in n&&delete s[D]});const c={};if(this.ph.length>0)for(const D of this.ph.slice())try{sr(c,D())}catch(d){Dt.error("Failed to produce browser extension event properties",d)}C=sr({},Q,n,s,QI(QI({},c),C)),C.$is_identified=this._isIdentified(),cB(this.config.property_denylist)?Gn(this.config.property_denylist,function(D){delete C[D]}):Dt.error(bII+this.config.property_denylist+" or property_blacklist config: "+this.config.property_blacklist);const h=this.config.sanitize_properties;h&&(Dt.error(_II),C=h(C,A));const l=this.ed();return C.$process_person_profile=l,l&&!o&&this.nd("_calculate_event_properties"),C}Kh(A,I=!0,e=!1){var t;if(!this.persistence||!this.ed()||this.hh&&!e)return A;const o=this.persistence.get_initial_props(),B=(t=this.sessionPropsManager)===null||t===void 0?void 0:t.getSetOnceProps();let C=sr({},o,B||{},A||{});const Q=this.config.sanitize_properties;return Q&&(Dt.error(_II),C=Q(C,"$set_once")),I&&(this.hh=!0),sk(C)?void 0:C}register(A,I){var e;(e=this.persistence)===null||e===void 0||e.register(A,I)}register_once(A,I,e){var t;(t=this.persistence)===null||t===void 0||t.register_once(A,I,e)}register_for_session(A){var I,e;(I=this.persistence)===null||I===void 0||I.syncCookieProperties(),this.Yh(),(e=this.sessionPersistence)===null||e===void 0||e.register(A),Object.keys(A).forEach(t=>this.dh.add(t)),this.td()}unregister(A){var I;(I=this.persistence)===null||I===void 0||I.unregister(A)}unregister_for_session(A){var I;(I=this.sessionPersistence)===null||I===void 0||I.unregister(A),this.dh.delete(A),this.td()}sd(A,I){this.register({[A]:I})}Th(){this.dh.forEach(A=>{var I;(I=this.sessionPersistence)===null||I===void 0||I.unregister(A)}),this.dh.clear(),this.td()}td(){var A;if(!this.fh)return;if(this.config.persistence==="memory"||!((A=this.sessionPersistence)===null||A===void 0)&&A.hi||!ia.$t())return void ia.Pt(this.fh);const I=[];this.dh.forEach(e=>I.push(e)),I.length>0?ia.At(this.fh,I):ia.Pt(this.fh)}getFeatureFlag(A,I){var e;return(e=this.featureFlags)===null||e===void 0?void 0:e.getFeatureFlag(A,I)}getFeatureFlagPayload(A){var I;return(I=this.featureFlags)===null||I===void 0?void 0:I.getFeatureFlagPayload(A)}getFeatureFlagResult(A,I){var e;return(e=this.featureFlags)===null||e===void 0?void 0:e.getFeatureFlagResult(A,I)}getAllFeatureFlags(){var A,I;return(A=(I=this.featureFlags)===null||I===void 0?void 0:I.getAllFeatureFlags())!==null&&A!==void 0?A:[]}isFeatureEnabled(A,I){var e,t;return(e=(t=this.featureFlags)===null||t===void 0?void 0:t.isFeatureEnabled(A,I))!==null&&e!==void 0?e:I?.defaultValue}reloadFeatureFlags(){var A;(A=this.featureFlags)===null||A===void 0||A.reloadFeatureFlags()}updateFlags(A,I,e){var t;(t=this.featureFlags)===null||t===void 0||t.updateFlags(A,I,e)}updateEarlyAccessFeatureEnrollment(A,I,e){var t;(t=this.featureFlags)===null||t===void 0||t.updateEarlyAccessFeatureEnrollment(A,I,e)}getEarlyAccessFeatures(A,I=!1,e){var t;return(t=this.featureFlags)===null||t===void 0?void 0:t.getEarlyAccessFeatures(A,I,e)}on(A,I){return this.ur.on(A,I)}onFeatureFlags(A){return this.featureFlags?this.featureFlags.onFeatureFlags(A):(A([],{},{errorsLoading:!0}),()=>{})}onSurveysLoaded(A){return this.surveys?this.surveys.onSurveysLoaded(A):(A([],{isLoaded:!1,error:wq}),()=>{})}onSessionId(A){var I,e;return(I=(e=this.sessionManager)===null||e===void 0?void 0:e.onSessionId(A))!==null&&I!==void 0?I:()=>{}}getSurveys(A,I=!1){this.surveys?this.surveys.getSurveys(A,I):A([],{isLoaded:!1,error:wq})}getActiveMatchingSurveys(A,I=!1){this.surveys?this.surveys.getActiveMatchingSurveys(A,I):A([],{isLoaded:!1,error:wq})}onActiveMatchingSurveysChanged(A){return this.surveys?this.surveys.onActiveMatchingSurveysChanged(A):(A([],{isLoaded:!1,error:wq}),()=>{})}renderSurvey(A,I){var e;(e=this.surveys)===null||e===void 0||e.renderSurvey(A,I)}displaySurvey(A,I=alt){var e;(e=this.surveys)===null||e===void 0||e.displaySurvey(A,I)}cancelPendingSurvey(A){var I;(I=this.surveys)===null||I===void 0||I.cancelPendingSurvey(A)}canRenderSurvey(A){var I,e;return(I=(e=this.surveys)===null||e===void 0?void 0:e.canRenderSurvey(A))!==null&&I!==void 0?I:{visible:!1,disabledReason:wq}}canRenderSurveyAsync(A,I=!1){var e,t;return(e=(t=this.surveys)===null||t===void 0?void 0:t.canRenderSurveyAsync(A,I))!==null&&e!==void 0?e:Promise.resolve({visible:!1,disabledReason:wq})}rd(A){return!A||ZAA(A)?(Dt.critical("Unique user id has not been set in posthog.identify"),!1):A==="$posthog_cookieless"?(Dt.critical(`The string "${A}" was set in posthog.identify which indicates an error. This ID is only used as a sentinel value.`),!1):!["distinct_id","distinctid"].includes(A.toLowerCase())&&!["undefined","null"].includes(A.toLowerCase())||(Dt.critical(`The string "${A}" was set in posthog.identify which indicates an error. This ID should be unique to the user and not a hardcoded string.`),!1)}identify(A,I,e){if(!this.__loaded||!this.persistence)return Dt.uninitializedWarning("posthog.identify");if(Gh(A)&&(A=A.toString(),Dt.warn("The first argument to posthog.identify was a number, but it should be a string. It has been converted to a string.")),!this.rd(A)||!this.nd("posthog.identify"))return;this.ih();const t=this.get_distinct_id(),o=this.persistence.syncCookieProperties()&&this.get_distinct_id()!==t,B=this.Yh(!1),C=this.persistence.ku();let Q=!1;try{const E=this.get_distinct_id();this.register({$user_id:A}),this.get_property("$device_id")||this.register_once({$had_persisted_distinct_id:!0,$device_id:E},""),A!==E&&A!==this.get_property("__alias")&&(this.unregister(EDA),this.register({distinct_id:A}));const n=(this.persistence.get_property("$user_state")||"anonymous")===rJ,s=A!==E,r=!s&&n;if(s&&n){var i;const a=this.config.reuseAnonymousId?{distinct_id:A}:{distinct_id:A,$anon_distinct_id:E};this.persistence.set_property(Um,nDA),this.setPersonPropertiesForFlags({$set:I||{},$set_once:e||{}},!1),this.config.cookieWinsOnConflict&&this.persistence.Su(),this.capture("$identify",a,{$set:I||{},$set_once:e||{}})&&(this._h=svA(A,I,e)),(i=this.featureFlags)===null||i===void 0||i.setAnonymousDistinctId(this.config.reuseAnonymousId?void 0:E)}else if(r){this.persistence.set_property(Um,nDA);const a=I||{},c=e||{};this.setPersonPropertiesForFlags({$set:a,$set_once:c},!1),this.config.cookieWinsOnConflict&&this.persistence.Su(),this.capture("$set",{$set:a,$set_once:c})&&(this._h=svA(A,I,e))}else(I||e)&&this.setPersonProperties(I,e);s||o||B?(this.reloadFeatureFlags(),this.featureFlags?this.featureFlags.resetFlagCallReported():this.unregister(aJ)):r&&(I||e)&&this.reloadFeatureFlags(),Q=!0}finally{C&&this.persistence.Cu(Q)}}setPersonProperties(A,I){if(!A&&!I||!this.nd("posthog.setPersonProperties"))return;const e=svA(this.get_distinct_id(),A,I);this._h!==e?(this.setPersonPropertiesForFlags({$set:A||{},$set_once:I||{}},!0),this.capture("$set",{$set:A||{},$set_once:I||{}})&&(this._h=e)):Dt.info("A duplicate setPersonProperties call was made with the same properties. It has been ignored.")}unsetPersonProperties(A){var I;const e=(cB(A)?A:[A]).filter(t=>qC(t)&&t.length>0);e.length!==0&&this.nd("posthog.unsetPersonProperties")&&((I=this.featureFlags)===null||I===void 0||I.unsetPersonPropertiesForFlags(e,!0),this.capture("$set",{$unset:e}),this._h=null)}group(A,I,e){var t;if(!A||!I)return void Dt.error("posthog.group requires a group type and group key");(t=this.persistence)===null||t===void 0||t.syncCookieProperties(),this.Yh();const o=this.getGroups(),B=o[A]!==I;if(B&&this.resetGroupPropertiesForFlags(A),this.register({$groups:QI(QI({},o),{},{[A]:I})}),(B||e)&&this.ed()){const C={$group_type:A,$group_key:I};e&&(C.$group_set=e),this.capture(EgI,C)}e&&this.setGroupPropertiesForFlags({[A]:e}),B&&!e&&this.reloadFeatureFlags()}resetGroups(){this.register({$groups:{}}),this.resetGroupPropertiesForFlags(),this.reloadFeatureFlags()}setPersonPropertiesForFlags(A,I=!0){var e;(e=this.featureFlags)===null||e===void 0||e.setPersonPropertiesForFlags(A,I)}resetPersonPropertiesForFlags(A=!0){var I;(I=this.featureFlags)===null||I===void 0||I.resetPersonPropertiesForFlags(A)}setGroupPropertiesForFlags(A,I=!0){var e;this.nd("posthog.setGroupPropertiesForFlags")&&((e=this.featureFlags)===null||e===void 0||e.setGroupPropertiesForFlags(A,I))}resetGroupPropertiesForFlags(A){var I;(I=this.featureFlags)===null||I===void 0||I.resetGroupPropertiesForFlags(A)}reset(A){const I=Fm(A)?A:A?.resetDeviceID,e=Fm(A)||A==null?void 0:A.bootstrap;this.od(I,!1,e)}od(A,I=!1,e){var t,o,B,C,Q,i;if(Dt.info("reset"),!this.__loaded)return Dt.uninitializedWarning("posthog.reset");const E=e?.sessionID;this.config.bootstrap=e||((t=this.kh)===null||t===void 0?void 0:t.bootstrap)||{},(o=this.featureFlags)===null||o===void 0||(B=o.updateConfig)===null||B===void 0||B.call(o,this.config,this.Hu());const n=this.get_property(D6A),s=this.get_property(d6A),r=this.get_property(egA);(C=this.sessionRecording)===null||C===void 0||C.flushBeforeIdentityReset();const a=this.is_capturing();I||this.consent.reset(),I||!a||this.is_capturing()||console.warn("[PostHog.js]","reset() cleared the stored consent, and capturing is now off because of `opt_out_capturing_by_default`. Call opt_in_capturing() again, and prefer calling reset() before opting in rather than after.");const c=(Q=this.persistence)===null||Q===void 0||(i=Q.ku)===null||i===void 0?void 0:i.call(Q),h=this.nh;this.nh=h||I;let l=!1;try{var D,d,y,w,u,G,m,p,k,S,R,x,N;if((D=this.persistence)===null||D===void 0||D.clear(),(d=this.sessionPersistence)===null||d===void 0||d.clear(),this.dh.clear(),this.td(),Ye(r)||(S=this.persistence)===null||S===void 0||S.register({$session_recording_remote_config:r}),(y=this.surveys)===null||y===void 0||y.reset(),(w=this.featureFlags)===null||w===void 0||w.reset(),(u=this.conversations)===null||u===void 0||u.reset(),(G=this.logs)===null||G===void 0||G.reset(),(m=this.metrics)===null||m===void 0||m.reset(),(p=this.persistence)===null||p===void 0||p.set_property("$user_state","anonymous"),(k=this.sessionManager)===null||k===void 0||k.resetSessionId(),this._h=null,this.config.cookieless_mode==="always")this.register_once({distinct_id:R6A,$device_id:null},"");else{const b=this.config.get_device_id(UR());this.register_once({distinct_id:b,$device_id:A?b:n},""),A||Ye(s)||this.register({[d6A]:s})}if(this.register({$last_posthog_reset:new Date().toISOString()},1),e&&(e.distinctID&&!this.Xc()&&((N=this.persistence)===null||N===void 0||N.set_property("$user_state",e.isIdentifiedID?"identified":"anonymous"),this.register({distinct_id:e.distinctID})),(R=this.featureFlags)===null||R===void 0||R.initialize(),!hC(E)&&!(!((x=this.sessionManager)===null||x===void 0)&&x.setBootstrapSessionId(E,!0)))){const b=QI({},e);delete b.sessionID,this.config.bootstrap=b}delete this.config.identity_distinct_id,delete this.config.identity_hash,delete this.config.identity_claims,l=!0}finally{var U,K;this.nh=h,c&&((U=this.persistence)===null||U===void 0||(K=U.Cu)===null||K===void 0||K.call(U,l))}var Y;this.cr&&((Y=this.conversations)===null||Y===void 0||Y.onRemoteConfig(this.cr)),this.reloadFeatureFlags()}shutdown(A){var I=this;return Qa(function*(){if(!I.__loaded)return void Dt.uninitializedWarning("posthog.shutdown");I.uh=!0,clearTimeout(I.Mh),I.Mh=void 0;const e=I.Oh;I.Oh=void 0;for(const t of[()=>{var o;return(o=I.sessionRecording)===null||o===void 0?void 0:o.dispose()},()=>{var o;return(o=I.logs)===null||o===void 0?void 0:o.flushLogs("sendBeacon")},()=>{var o;return(o=I.metrics)===null||o===void 0?void 0:o.flush("sendBeacon")},()=>{var o;return(o=I.metrics)===null||o===void 0?void 0:o.dispose()},()=>{var o;return(o=I.logs)===null||o===void 0?void 0:o.dispose()},()=>{var o;return(o=I.surveys)===null||o===void 0?void 0:o.dispose()},()=>{var o;return(o=I.autocapture)===null||o===void 0?void 0:o.dispose()},()=>e?.(),()=>{var o;return(o=I.xh)===null||o===void 0?void 0:o.unload()},()=>{var o;return(o=I.Ch)===null||o===void 0?void 0:o.unload()},()=>{var o;return(o=I.featureFlags)===null||o===void 0?void 0:o.destroy()},()=>{var o;return(o=I.persistence)===null||o===void 0?void 0:o.destroy()},()=>{var o;return(o=I.sessionPersistence)===null||o===void 0?void 0:o.destroy()}])try{const o=t();o&&C0(o.then)&&o.then(void 0,B=>{Dt.error("Error during shutdown",B)})}catch(o){Dt.error("Error during shutdown",o)}})()}setIdentity(A,I){var e;delete this.config.identity_claims,this.config.identity_distinct_id=A,this.config.identity_hash=I,this.alias(A),(e=this.conversations)===null||e===void 0||e.ad()}clearIdentity(){var A;delete this.config.identity_distinct_id,delete this.config.identity_hash,delete this.config.identity_claims,(A=this.conversations)===null||A===void 0||A.ld()}get_distinct_id(){return this.get_property("distinct_id")}getGroups(){return this.get_property("$groups")||{}}get_session_id(){var A,I;return(A=(I=this.sessionManager)===null||I===void 0?void 0:I.checkAndGetSessionAndWindowId(!0).sessionId)!==null&&A!==void 0?A:""}get_session_replay_url(A){if(!this.sessionManager)return"";const{sessionId:I,sessionStartTimestamp:e}=this.sessionManager.checkAndGetSessionAndWindowId(!0);let t=this.requestRouter.endpointFor("ui",`/project/${this.config.token}/replay/${I}`);if(A?.withTimestamp&&e){var o;const B=(o=A.timestampLookBack)!==null&&o!==void 0?o:10;if(!e)return t;t+=`?t=${Math.max(Math.floor((new Date().getTime()-e)/1e3)-B,0)}`}return t}alias(A,I){return A===this.get_property("$people_distinct_id")?(Dt.critical("Attempting to create alias for existing People user - aborting."),-2):this.nd("posthog.alias")?(Ye(I)&&(I=this.get_distinct_id()),A!==I?(this.sd(EDA,A),this.capture("$create_alias",{alias:A,distinct_id:I})):(Dt.warn("alias matches current distinct_id - skipping api call."),this.identify(A),-1)):void 0}set_config(A){const I=QI({},this.config);if(yC(A)){var e,t,o,B,C,Q,i,E,n,s,r,a,c,h;sr(this.config,qII(A));const w=this.oh();if(this.persistence){const G=this.config.persistence==="sessionStorage"||this.config.persistence==="memory";var l,D;if(G&&this.sessionPersistence!==this.persistence&&((l=this.sessionPersistence)===null||l===void 0||l.remove(),(D=this.sessionPersistence)===null||D===void 0||D.destroy()),this.persistence.update_config(this.config,I,w),G)this.sessionPersistence=this.persistence;else if(this.sessionPersistence===this.persistence)this.sessionPersistence=new X6A(QI(QI({},this.config),{},{persistence:"sessionStorage"}),w,!1);else{var d;(d=this.sessionPersistence)===null||d===void 0||d.update_config(QI(QI({},this.config),{},{persistence:"sessionStorage"}),QI(QI({},I),{},{persistence:"sessionStorage"}),w)}}const u=this.wh(this.config.debug);var y;Fm(u)&&(this.config.debug=u),Fm(this.config.debug)&&(this.config.debug?(ak.DEBUG=!0,aE.$t()&&aE.At("ph_debug",!0),Dt.info("set_config",{config:A,oldConfig:I,newConfig:QI({},this.config)})):(ak.DEBUG=!1,aE.$t()&&aE.Pt("ph_debug"))),(e=this.featureFlags)===null||e===void 0||(t=e.updateConfig)===null||t===void 0||t.call(e,this.config,this.Hu()),(o=this.exceptionObserver)===null||o===void 0||o.onConfigChange(),(B=this.exceptions)===null||B===void 0||B.onConfigChange(),(C=this.metrics)===null||C===void 0||C.onConfigChange(),(Q=this.webMCP)===null||Q===void 0||Q.startIfEnabled(),(i=this.sessionRecording)===null||i===void 0||i.startIfEnabledOrStop(),(E=this.tracingHeaders)===null||E===void 0||E.startIfEnabledOrStop(),(n=this.autocapture)===null||n===void 0||n.startIfEnabled(),(s=this.heatmaps)===null||s===void 0||s.startIfEnabled(),("capture_pageview"in A||"disable_capture_url_hashes"in A)&&((y=this.historyAutocapture)===null||y===void 0||y.startIfEnabledOrStop()),(r=this.exceptionObserver)===null||r===void 0||r.startIfEnabledOrStop(),(a=this.deadClicksAutocapture)===null||a===void 0||a.startIfEnabledOrStop(),(c=this.surveys)===null||c===void 0||c.loadIfEnabled(),this.sh(),(h=this.externalIntegrations)===null||h===void 0||h.startIfEnabledOrStop(),!I.segment&&this.config.segment&&this.persistence&&KgI(this,DgA,!1)}}_overrideSDKInfo(A,I){ak.LIB_NAME=A,ak.LIB_VERSION=I}startSessionRecording(A){const I=A===!0,e={sampling:I||!!A?.sampling,linked_flag:I||!!A?.linked_flag,url_trigger:I||!!A?.url_trigger,event_trigger:I||!!A?.event_trigger};var t,o,B,C,Q;Object.values(e).some(Boolean)&&((t=this.sessionManager)===null||t===void 0||t.checkAndGetSessionAndWindowId(),e.sampling&&((o=this.sessionRecording)===null||o===void 0||o.overrideSampling()),e.linked_flag&&((B=this.sessionRecording)===null||B===void 0||B.overrideLinkedFlag()),e.url_trigger&&((C=this.sessionRecording)===null||C===void 0||C.overrideTrigger("url")),e.event_trigger&&((Q=this.sessionRecording)===null||Q===void 0||Q.overrideTrigger("event"))),this.set_config({disable_session_recording:!1})}stopSessionRecording(){this.set_config({disable_session_recording:!0})}sessionRecordingStarted(){var A;return!!(!((A=this.sessionRecording)===null||A===void 0)&&A.started)}captureException(A,I){try{if(!this.exceptions)return;const e=this.exceptions.buildProperties(A,{handled:!0,syntheticException:new Error("PostHog syntheticException")});return this.exceptions.sendExceptionEvent(QI(QI({},e),I))}catch{return}}addExceptionStep(A,I){var e;(e=this.exceptions)===null||e===void 0||e.addExceptionStep(A,I)}captureLog(A){var I;(I=this.logs)===null||I===void 0||I.captureLog(A)}get logger(){var A,I;return(A=(I=this.logs)===null||I===void 0?void 0:I.logger)!==null&&A!==void 0?A:fY.ud}startExceptionAutocapture(A){this.set_config({capture_exceptions:A==null||A})}stopExceptionAutocapture(){this.set_config({capture_exceptions:!1})}loadToolbar(A){var I,e;return(I=(e=this.toolbar)===null||e===void 0?void 0:e.loadToolbar(A))!==null&&I!==void 0&&I}get_property(A){var I;return(I=this.persistence)===null||I===void 0?void 0:I.props[A]}getSessionProperty(A){var I;return(I=this.sessionPersistence)===null||I===void 0?void 0:I.props[A]}toString(){var A;let I=(A=this.config.name)!==null&&A!==void 0?A:dgA;return I!==dgA&&(I="posthog."+I),I}_isIdentified(){var A,I;return((A=this.persistence)===null||A===void 0?void 0:A.get_property("$user_state"))==="identified"||((I=this.sessionPersistence)===null||I===void 0?void 0:I.get_property("$user_state"))==="identified"}ed(){var A,I;return!(this.config.person_profiles==="never"||this.config.person_profiles==="identified_only"&&!this._isIdentified()&&sk(this.getGroups())&&!(!((A=this.persistence)===null||A===void 0||(A=A.props)===null||A===void 0)&&A.__alias)&&!(!((I=this.persistence)===null||I===void 0||(I=I.props)===null||I===void 0)&&I.$epp))}Bh(){return this.config.capture_pageleave===!0||this.config.capture_pageleave==="if_capture_pageview"&&!!this.config.capture_pageview}createPersonProfile(){this.ed()||this.nd("posthog.createPersonProfile")&&this.setPersonProperties({},{})}setInternalOrTestUser(){this.nd("posthog.setInternalOrTestUser")&&this.setPersonProperties({$internal_or_test_user:!0})}nd(A){return this.config.person_profiles==="never"?(Dt.error(A+' was called, but process_person is set to "never". This call will be ignored.'),!1):(this.Yc(),this.sd(f6A,!0),!0)}oh(){if(this.config.cookieless_mode==="always")return!0;const A=this.consent.isOptedOut();return this.config.disable_persistence||A&&!(!this.config.opt_out_persistence_by_default&&this.config.cookieless_mode!=="on_reject")}sh(){var A,I;const e=this.oh();var t,o,B;return this.is_capturing()||(t=this.logs)===null||t===void 0||t.hd(),((A=this.persistence)===null||A===void 0?void 0:A.hi)!==e&&((o=this.persistence)===null||o===void 0||o.set_disabled(e)),((I=this.sessionPersistence)===null||I===void 0?void 0:I.hi)!==e&&((B=this.sessionPersistence)===null||B===void 0||B.set_disabled(e)),this.td(),e}opt_in_capturing(A){var I;if(this.config.cookieless_mode!=="always"){if(this.Xc()){var e,t,o,B,C,Q;(e=this.sessionRecording)===null||e===void 0||e.dispose({discardBufferedEvents:!0}),this.od(!0,!0),(t=this.sessionManager)===null||t===void 0||t.destroy(),(o=this.pageViewManager)===null||o===void 0||o.destroy(),this.sessionManager=new MII(this),this.pageViewManager=new _gI(this),this.persistence&&(this.sessionPropsManager=new pII(this,this.sessionManager,this.persistence));const a=(B=(C=this.config.__extensionClasses)===null||C===void 0?void 0:C.sessionRecording)!==null&&B!==void 0?B:(Q=fY.__defaultExtensionClasses)===null||Q===void 0?void 0:Q.sessionRecording;var i,E;a&&(this.sessionRecording=this.Kc(this.sessionRecording,new a(this)),this.cr&&((i=this.sessionRecording)===null||i===void 0||(E=i.onRemoteConfig)===null||E===void 0||E.call(i,this.cr)))}var n,s,r;this.consent.optInOut(!0),this.sh(),this.Nh(),(I=this.sessionRecording)===null||I===void 0||I.startIfEnabledOrStop(),this.config.cookieless_mode=="on_reject"&&((n=this.surveys)===null||n===void 0||n.loadIfEnabled(),(s=this.conversations)===null||s===void 0||s.loadIfEnabled()),(Ye(A?.captureEventName)||A?.captureEventName)&&this.capture((r=A?.captureEventName)!==null&&r!==void 0?r:"$opt_in",A?.captureProperties,{send_instantly:!0}),this.config.capture_pageview&&this.qh()}else Dt.warn(YII)}opt_out_capturing(){this.config.cookieless_mode!=="always"?(this.consent.optInOut(!1),this.sh(),this.config.cookieless_mode==="on_reject"&&this.rh()):Dt.warn(YII)}rh(){var A,I;const e=this.sessionRecording;e?.dispose({discardBufferedEvents:!0}),this.get_distinct_id()!=="$posthog_cookieless"&&this.od(!0,!0),this.register({distinct_id:R6A,$device_id:null}),this.Zc(e),this.sessionRecording=void 0,(A=this.sessionManager)===null||A===void 0||A.destroy(),(I=this.pageViewManager)===null||I===void 0||I.destroy(),this.sessionManager=void 0,this.sessionPropsManager=void 0,this.config.capture_pageview&&this.qh(),this.Nh()}has_opted_in_capturing(){return this.consent.isOptedIn()}has_opted_out_capturing(){return this.consent.isOptedOut()}get_explicit_consent_status(){const A=this.consent.consent;return A===1?"granted":A===0?"denied":"pending"}is_capturing(){return!this.nh&&(this.config.cookieless_mode==="always"||(this.config.cookieless_mode==="on_reject"?this.consent.isRejected()||this.consent.isOptedIn():!this.has_opted_out_capturing()))}clear_opt_in_out_capturing(){this.consent.reset(),this.sh()}_is_bot(){return Hw?SII(Hw,this.config.custom_blocked_useragents):void 0}qh(){ro&&(ro.visibilityState==="visible"?this.mh||(this.mh=!0,this.capture(F6A,{title:ro.title},{send_instantly:!0}),this.yh&&(ro.removeEventListener(tq,this.yh),this.yh=null)):this.yh||(this.yh=this.qh.bind(this),NE(ro,tq,this.yh)))}debug(A){A===!1?(Se?.console.log("You've disabled debug mode."),this.set_config({debug:!1})):(Se?.console.log("You're now in debug mode. All calls to PostHog will be logged in your console.\nYou can disable this with `posthog.debug(false)`."),this.set_config({debug:!0}))}Hu(){const A=this.kh||{};return"advanced_disable_flags"in A?!!A.advanced_disable_flags:this.config.advanced_disable_flags!==!1?!!this.config.advanced_disable_flags:this.config.advanced_disable_decide===!0?(Dt.warn("Config field 'advanced_disable_decide' is deprecated. Please use 'advanced_disable_flags' instead. The old field will be removed in a future major version."),!0):(function(I,e,t,o,B){const C=e in I&&!hC(I[e]),Q=t in I&&!hC(I[t]);return C?I[e]:!!Q&&(B&&B.warn(`Config field '${t}' is deprecated. Please use '${e}' instead. The old field will be removed in a future major version.`),I[t])})(A,"advanced_disable_flags","advanced_disable_decide",0,Dt)}Os(A){var I;if(hC(this.config.before_send))return A;const e=Object.keys((I=A.properties)!==null&&I!==void 0?I:{}).filter(dct),t=cB(this.config.before_send)?this.config.before_send:[this.config.before_send];let o=A;for(const B of t)try{if(o=B(o),hC(o)){const C=`Event '${A.event}' was rejected in beforeSend function`;return Dct(A.event)?Dt.warn(`${C}. This can cause unexpected behavior.`):Dt.info(C),null}o.properties&&!sk(o.properties)||Dt.warn(`Event '${A.event}' has no properties after beforeSend function, this is likely an error.`)}catch(C){return Dt.error(`Error in beforeSend function for event '${A.event}':`,C),null}for(const B of e)if(o.properties&&hC(o.properties[B]))return Dt.warn(`Event '${A.event}' had its '${B}' property removed in a beforeSend function. This property is required for ingestion, so the event will be dropped.`),null;return o}getPageViewId(){var A;return(A=this.pageViewManager.Rl)===null||A===void 0?void 0:A.pageViewId}captureTraceFeedback(A,I){this.capture("$ai_feedback",{$ai_trace_id:String(A),$ai_feedback_text:I})}captureTraceMetric(A,I,e){this.capture("$ai_metric",{$ai_trace_id:String(A),$ai_metric_name:I,$ai_metric_value:String(e)})}wh(A){const I=Fm(A)&&!A,e=aE.$t()&&aE.Ot("ph_debug")==="true";return!I&&(!!e||A)}};ygA.__defaultExtensionClasses={},ygA.ud=(()=>{const g=()=>{};return{trace:g,debug:g,info:g,warn:g,error:g,fatal:g}})(),(function(g,A){for(let I=0;A.length>I;I++)g.prototype[A[I]]=h0t(g.prototype[A[I]])})(ygA,["identify"]);var flt=class{constructor(A){this._instance=A}refresh(A){const I=this._instance.config,e=yC(I.autocapture)?I.autocapture:void 0;A.enabled=!!I.autocapture,A.rageclick=I.rageclick,A.maskAllElementAttributes=I.mask_all_element_attributes,A.maskAllText=I.mask_all_text,A.disableCaptureUrlHashes=I.disable_capture_url_hashes,A.getCurrentUrl=I.get_current_url,A.remoteRequestsDisabled=this._instance.Hu(),A.url_allowlist=e?.url_allowlist,A.url_ignorelist=e?.url_ignorelist,A.dom_event_allowlist=e?.dom_event_allowlist,A.element_allowlist=e?.element_allowlist,A.css_selector_allowlist=e?.css_selector_allowlist,A.css_selector_ignorelist=e?.css_selector_ignorelist,A.element_attribute_ignorelist=e?.element_attribute_ignorelist,A.capture_copied_text=e?.capture_copied_text}};const wgA=zr("[ExceptionAutocapture]"),ZII=()=>{},OII=g=>{var A;if(C0(g))return(A=g.__posthog_layer__)!==null&&A!==void 0?A:g.__rrweb_layer__};function uq(g,A,I){try{if(!(A in g))return ZII;const e={next:g[A]},t=I(function(...o){return e.next.apply(this,o)});return C0(t)&&(t.prototype=t.prototype||{},Object.defineProperties(t,{__posthog_wrapped__:{enumerable:!1,value:!0},__posthog_layer__:{enumerable:!1,value:e}})),g[A]=t,()=>{if(g[A]===t)return void(g[A]=e.next);let o=g[A],B=OII(o);for(;B;){if(B.next===t)return void(B.next=e.next);o=B.next,B=OII(o)}}}catch{return ZII}}const Rlt=zr("[TracingHeaders]"),s5=zr("[Web Vitals]"),WII=9e5,VII=["CLS","FCP","INP","LCP"],Nlt=["INP","LCP"],xlt=["interactionTarget","interactionType","inputDelay","processingDuration","presentationDelay","loadState","target","url","timeToFirstByte","resourceLoadDelay","resourceLoadDuration","elementRenderDelay","largestShiftTarget","largestShiftTime","largestShiftValue","firstByteToFCP"],yvA="disabled",jII="lazy_loading",DJ=zr("[SessionRecording]"),Flt=[N6A,x6A,AgI,ggI,IgI,egI,tgI,ogI,BgI],Ult=zr("[Heatmaps]");function wvA(g){return yC(g)&&"clientX"in g&&"clientY"in g&&Gh(g.clientX)&&Gh(g.clientY)}const MDA=zr("[Product Tours]"),uvA=g=>{var A;return!g.config.disable_product_tours&&!!(!((A=g.persistence)===null||A===void 0)&&A.get_property(k6A))},Jlt=["$set_once","$set"],ux=zr("[SiteApps]"),zII="Error while initializing PostHog app with config id ";function Gq(g,A,I){if(hC(g))return!1;switch(I){case"exact":return g===A;case"contains":{const e=A.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/_/g,".").replace(/%/g,".*");return new RegExp(e,"i").test(g)}case"regex":try{return new RegExp(A).test(g)}catch{return!1}default:return!1}}var Plt=class{constructor(A){this.Ai=A,this._o=new Set,this.wo=new Set,this.ko=new mDA,this.So=(I,e)=>this.xo(I,e)&&this.$o(I,e)&&this.Co(I,e)&&this.To(I,e),this.xo=(I,e)=>!e?.event||I?.event===e?.event}init(){var A,I;Ye((A=this.Ai)===null||A===void 0?void 0:A.subscribeCapture)||(this.Io=(I=this.Ai)===null||I===void 0?void 0:I.subscribeCapture((e,t)=>{this.on(e,t)}))}dispose(){var A,I,e;(A=this.Io)===null||A===void 0||A.call(this),this.Io=void 0,(I=this.Ai)===null||I===void 0||(e=I.setElementSelectors)===null||e===void 0||e.call(I,new Set,this),this.ko=new mDA}register(A){var I,e;if(!Ye((I=this.Ai)===null||I===void 0?void 0:I.subscribeCapture)&&(A.forEach(t=>{var o;this._o.add(t),(o=t.steps)===null||o===void 0||o.forEach(B=>{this.wo.add(B?.event||"")})}),(e=this.Ai)===null||e===void 0?void 0:e.setElementSelectors)){const t=new Set;this._o.forEach(o=>{var B;(B=o.steps)===null||B===void 0||B.forEach(C=>{C?.selector&&t.add(C.selector)})}),this.Ai.setElementSelectors(t,this)}}replace(A){this._o.clear(),this.wo.clear(),this.register(A)}on(A,I){I!=null&&A.length!=0&&(this.wo.has(A)||this.wo.has(I.event))&&this._o.forEach(e=>{this.Mo(I,e)&&this.ko.emit("actionCaptured",e.name)})}Eo(A){this.onAction("actionCaptured",I=>A(I))}Mo(A,I){if(I?.steps==null)return!1;for(const e of I.steps)if(this.So(A,e))return!0;return!1}onAction(A,I){return this.ko.on(A,I)}$o(A,I){if(I?.url){var e;let B=A==null||(e=A.properties)===null||e===void 0?void 0:e.$current_url;if(!A?.properties||!("$current_url"in A.properties))try{var t,o;B=(t=this.Ai)===null||t===void 0||(o=t.getActionUrl)===null||o===void 0?void 0:o.call(t)}catch{return!1}if(!B||typeof B!="string"||!Gq(B,I.url,I.url_matching||"contains"))return!1}return!0}Co(A,I){return!!this.Po(A,I)&&!!this.Ro(A,I)&&!!this.Ao(A,I)}Po(A,I){var e;if(!I?.href)return!0;const t=this.Fo(A);if(t.length>0)return t.some(B=>Gq(B.href,I.href,I.href_matching||"exact"));const o=(A==null||(e=A.properties)===null||e===void 0?void 0:e.$elements_chain)||"";return!!o&&Gq((function(B){const C=B.match(/(?::|")href="(.*?)"/);return C?C[1]:""})(o),I.href,I.href_matching||"exact")}Ro(A,I){var e;if(!I?.text)return!0;const t=this.Fo(A);if(t.length>0)return t.some(i=>Gq(i.text,I.text,I.text_matching||"exact")||Gq(i.$el_text,I.text,I.text_matching||"exact"));const o=(A==null||(e=A.properties)===null||e===void 0?void 0:e.$elements_chain)||"";return!!o&&(B=(function(i){const E=[],n=/(?::|")text="(.*?)"/g;let s;for(;!hC(s=n.exec(i));)E.includes(s[1])||E.push(s[1]);return E})(o),C=I.text,Q=I.text_matching||"exact",B.some(i=>Gq(i,C,Q)));var B,C,Q}Ao(A,I){var e,t;if(!I?.selector)return!0;const o=A==null||(e=A.properties)===null||e===void 0?void 0:e.$element_selectors;if(o?.includes(I.selector))return!0;const B=(A==null||(t=A.properties)===null||t===void 0?void 0:t.$elements_chain)||"";if(I.selector_regex&&B)try{return new RegExp(I.selector_regex).test(B)}catch{}return!1}Fo(A){var I;return(A==null||(I=A.properties)===null||I===void 0?void 0:I.$elements)==null?[]:A?.properties.$elements}To(A,I){return!I?.properties||I.properties.length===0||xII(I.properties.reduce((e,t)=>{const o=cB(t.value)?t.value.map(String):t.value!=null?[String(t.value)]:[];return e[t.key]={values:o,operator:t.operator||"exact"},e},{}),A?.properties)}},Klt=class{constructor(A,I){this.Oo=I,this.Do=[],this.Ai=A,this.Lo=new Map,this.No=new Map,this.qo=new Map}jo(){var A,I;this.Bo=(A=(I=this.Ai).subscribeSession)===null||A===void 0?void 0:A.call(I,e=>this.zo(e))}Ho(A){return!1}Uo(){return null}Wo(A){}Vo(){}Go(A,I){return!!A&&xII(A.propertyFilters,I?.properties)}Qo(A,I){const e=new Map;return A.forEach(t=>{var o;(o=t.conditions)===null||o===void 0||(o=o[I])===null||o===void 0||(o=o.values)===null||o===void 0||o.forEach(B=>{if(B?.name){const C=e.get(B.name)||[];C.push(t.id),e.set(B.name,C)}})}),e}Zo(A,I,e){const t=(e===sgA.Activation?this.Lo:this.No).get(A);let o=[];return this.Jo(B=>{o=B.filter(C=>t?.includes(C.id))}),o.filter(B=>{var C;const Q=(C=B.conditions)===null||C===void 0||(C=C[e])===null||C===void 0||(C=C.values)===null||C===void 0?void 0:C.find(i=>i.name===A);return this.Go(Q,I)})}register(A){this.Ko(A,!1)}replace(A){this.Ko(A,!0)}Ko(A,I){Ye(this.Ai.subscribeCapture)||(this.Xo(A,I),this.Yo(A,I))}Yo(A,I){const e=A.filter(B=>{var C;return(C=B.conditions)===null||C===void 0||(C=C.actions)===null||C===void 0||(C=C.values)===null||C===void 0?void 0:C.length});var t;if(I&&this.qo.clear(),e.length===0)return void(I&&((t=this.ta)===null||t===void 0||t.replace([])));this.ta||(this.ta=new Plt(this.Ai),this.ta.init(),this.ta.Eo(B=>this.onAction(B)));const o=[];e.forEach(B=>{var C;(C=B.conditions)===null||C===void 0||(C=C.actions)===null||C===void 0||C.values.forEach(Q=>{if(o.push(Q),Q.name){var i;const E=(i=this.qo.get(Q.name))!==null&&i!==void 0?i:[];E.includes(B.id)||E.push(B.id),this.qo.set(Q.name,E)}})}),I?this.ta.replace(o):this.ta.register(o)}ea(A,I){I.forEach((e,t)=>{var o;const B=(o=A.get(t))!==null&&o!==void 0?o:[];e.forEach(C=>{B.includes(C)||B.push(C)}),A.set(t,B)})}Xo(A,I){var e,t,o;const B=A.filter(E=>{var n,s;return((n=E.conditions)===null||n===void 0?void 0:n.events)&&((s=E.conditions)===null||s===void 0||(s=s.events)===null||s===void 0||(s=s.values)===null||s===void 0?void 0:s.length)>0}),C=A.filter(E=>{var n,s;return((n=E.conditions)===null||n===void 0?void 0:n.cancelEvents)&&((s=E.conditions)===null||s===void 0||(s=s.cancelEvents)===null||s===void 0||(s=s.values)===null||s===void 0?void 0:s.length)>0}),Q=this.Qo(A,sgA.Activation),i=this.Qo(A,sgA.Cancellation);I?(this.Lo=Q,this.No=i):(this.ea(this.Lo,Q),this.ea(this.No,i)),(B.length!==0||C.length!==0||A.some(E=>{var n;return(n=E.conditions)===null||n===void 0||(n=n.actions)===null||n===void 0||(n=n.values)===null||n===void 0?void 0:n.length}))&&((e=this.Io)!==null&&e!==void 0||(this.Io=(t=(o=this.Ai).subscribeCapture)===null||t===void 0?void 0:t.call(o,(E,n)=>{this.onEvent(E,n)})))}onEvent(A,I){var e,t;const o=this.ia(),B=(I==null||(e=I.properties)===null||e===void 0?void 0:e.$survey_id)||(I==null||(t=I.properties)===null||t===void 0?void 0:t.$product_tour_id);if(B&&this.getActivatedIds().includes(B)){const Q=this.na(A,B,I);if(Q==="consume")return o.info("event consumed activated item, removing it",{event:A,itemId:B}),void this.sa([B]);if(Q==="persist")return o.info("shown item promoted to persisted activation",{event:A,itemId:B}),this.ra(B),void this.oa([B])}if(this.No.has(A)){const Q=this.Zo(A,I,sgA.Cancellation);Q.length>0&&(o.info("cancel event matched, cancelling items",{event:A,itemsToCancel:Q.map(i=>i.id)}),this.sa(Q.map(i=>i.id)),Q.forEach(i=>this.aa(i.id)))}if(!this.Lo.has(A))return;o.info("event name matched",{event:A,eventPayload:I,items:this.Lo.get(A)});const C=this.Zo(A,I,sgA.Activation);this.la(C.map(Q=>Q.id))}onAction(A){this.qo.has(A)&&this.la(this.qo.get(A)||[])}la(A){if(A.length===0)return;const I=!!this.Ai.getSessionId(),e=[];for(const t of A)I&&this.Ho(t)?this.ra(t)&&this.ua(t):e.push(t);e.length>0&&(this.Do=[...new Set([...this.Do,...e])]),this.ia().info("updating activated items",{activatedItems:this.getActivatedIds()}),this.ca()}ra(A){this.Do=this.Do.filter(e=>e!==A);const I=this.ha();return!I.includes(A)&&(this.da([...I,A]),this.va(),!0)}sa(A){const I=new Set(A);this.Do=this.Do.filter(o=>!I.has(o));const e=this.fa(),t=e.filter(o=>!I.has(o));t.length!==e.length&&(this.da(t),t.length===0&&this.pa()),this.oa(A),this.ca()}ca(){try{var A;(A=this.Oo)===null||A===void 0||A.call(this)}catch(I){this.ia().error("Error while handling activated items change",I)}}ga(){const A=this.Uo();if(!A)return{};const I=this.Ai.getProperty(A);return I&&typeof I=="object"?I:{}}ua(A){if(!this.Uo())return;const I=this.ga();this.Wo(QI(QI({},I),{},{[A]:Date.now()}))}oa(A){if(!this.Uo())return;const I=this.ga(),e={};let t=!1;for(const[o,B]of Object.entries(I))A.includes(o)?t=!0:e[o]=B;t&&(sk(e)?this.Vo():this.Wo(e))}ma(){this.Uo()&&this.Vo()}getActivationTimestamp(A){if(!this.ha().includes(A))return;const I=this.ga()[A];return Gh(I)?I:void 0}fa(){const A=this.ya();return this.Ai.getProperty(A)||[]}ha(){const A=this.fa();if(A.length===0)return[];const I=this.Ai.getProperty(this.ba()),e=this.Ai.getSessionId();return e&&I===e?A:[]}va(){const A=this.Ai.getSessionId();A&&this._a(A)}pa(){this.wa()}zo(A){const I=this.Ai.getProperty(this.ba());if(I&&I!==A){const e=this.fa(),t=this.ga();e.length>0&&(this.da([]),e.filter(o=>Gh(t[o])).forEach(o=>this.aa(o))),this.pa(),this.ma(),e.length>0&&this.ca()}}getActivatedIds(){return[...new Set([...this.ha(),...this.Do])].filter(A=>!this.ka(A))}dispose(){var A,I,e;(A=this.Bo)===null||A===void 0||A.call(this),this.Bo=void 0,(I=this.Io)===null||I===void 0||I.call(this),this.Io=void 0,(e=this.ta)===null||e===void 0||e.dispose(),this.ta=void 0}reset(){this.Do=[],this.fa().length>0&&this.da([]),this.pa(),this.ma(),this.ca()}getEventToItemsMap(){return this.Lo}Sa(){return this.ta}},Llt=class extends Klt{constructor(A,I,e,t){var o;super({subscribeCapture(B){const C=A.onEvent(Q=>B(Q.event,Q));return()=>C.dispose()},subscribeSession(B){const C=A.onSession(B);return()=>C.dispose()},getSessionId(){var B;return(B=A.session)===null||B===void 0?void 0:B.sessionId},getProperty:B=>A.kv.get(B),getActionUrl:e?.getActionUrl,setElementSelectors:(o=e?.setElementSelectors)!==null&&o!==void 0?o:(B,C)=>{var Q;return(Q=A.getExtension("autocapture"))===null||Q===void 0?void 0:Q.setElementSelectors(B,C)}},t),this.xa=A,this.$a=I,this.jo()}ya(){return l6A}ba(){return QDA}Uo(){return iDA}Wo(A){this.xa.kv.set({[iDA]:A})}Vo(){this.xa.kv.remove(iDA)}Ho(A){var I;let e;this.Jo(o=>{e=o.find(B=>B.id===A)});const t=e==null||(I=e.appearance)===null||I===void 0?void 0:I.surveyPopupDelaySeconds;return Gh(t)&&t>0}Ca(){return AS.SHOWN}Jo(A){this.$a.getSurveys(A)}aa(A){this.$a.cancelPendingSurvey(A)}ia(){return mn}da(A){this.xa.kv.set({[l6A]:A})}_a(A){this.xa.kv.set({[QDA]:A})}wa(){this.xa.kv.remove(QDA)}ka(){return!1}na(A,I,e){var t;if(A===AS.SENT&&(e==null||(t=e.properties)===null||t===void 0?void 0:t.$survey_completed)===!1)return"ignore";let o;return this.Jo(B=>{o=B.find(C=>C.id===I)}),!o||(function(B){var C;return RII(B)&&!!(!((C=B.conditions)===null||C===void 0||(C=C.events)===null||C===void 0)&&C.repeatedActivation)||B.schedule==="always"})(o)?A===AS.SHOWN?"consume":"ignore":A===AS.SHOWN?"persist":A===AS.DISMISSED||A===AS.SENT?"consume":"ignore"}getSurveys(){return this.getActivatedIds()}getEventToSurveys(){return this.getEventToItemsMap()}};const GvA=(g,A)=>g?.then?g.then(A):A(g),mq="SDK is not enabled or survey functionality is not yet loaded",XII="Disabled. Not loading surveys.";var Ylt=class{constructor(A){this.Ta=A,this.name="surveys",this._surveyEventReceiver=null,this._surveyManager=null,this.Ia=!1,this.Ma=!1,this.Ea=[],this.Pa=[],this.Ra=null,this.Aa=null,this.Ci=!1,this.Fa=new Set,this.onRemoteConfig=I=>{if(this.Ci||this.Ar.disableSurveys)return;if(!I.ok)return this.Ma=!0,this.Oa({isLoaded:!1,error:"Remote config unavailable. Not loading surveys."}),mn.warn("Remote config unavailable. Not loading surveys.");const e=I.config.surveys;if(hC(e))return mn.warn("Flags not loaded yet. Not loading surveys.");this.Da=Fm(e)?e:e.length>0,mn.info(`flags response received, isSurveysEnabled: ${this.Da}`),this.loadIfEnabled()},this.Oa=I=>{this.Pa.slice().forEach(e=>this.La(e,I))}}setup(A){if(!this.Ci)return this.Na=A,GvA(A.kv.initialize(),()=>{if(this.Na!==A||this.Ci)return;this.Na=void 0,this.xa=A;const I=A.onRemoteConfig(this.onRemoteConfig);this.Ci?I.dispose():(this.qa=I,this.loadIfEnabled())})}dispose(){var A,I,e,t,o;this.Ci||(this.Ci=!0,this.Na=void 0,this.xa=void 0,(A=this.qa)===null||A===void 0||A.dispose(),this.qa=void 0,(I=this._surveyEventReceiver)===null||I===void 0||I.dispose(),this._surveyEventReceiver=null,(e=this._surveyManager)===null||e===void 0||(t=e.dispose)===null||t===void 0||t.call(e),this._surveyManager=null,this.Ea=[],this.Pa.forEach(B=>{B.active=!1}),this.Pa=[],(o=this.ja)===null||o===void 0||o.call(this),this.ja=void 0,this.Ra=null,this.Fa.forEach(B=>clearTimeout(B)),this.Fa.clear())}get Ar(){return this.Ta.get()}getRenderContext(){if(!this.xa)return;const A=this;return{client:this.xa,get config(){return A.Ar},surveys:A}}initialize(){this.loadIfEnabled()}reset(){var A,I;(A=this._surveyManager)===null||A===void 0||(I=A.clearInMemoryInProgressSurveyState)===null||I===void 0||I.call(A);try{var e;(e=this._surveyEventReceiver)===null||e===void 0||e.reset(),localStorage.removeItem("lastSeenSurveyDate");const t=[];for(let o=0;o<localStorage.length;o++){const B=localStorage.key(o);(B?.startsWith("seenSurvey_")||B?.startsWith("inProgressSurvey_"))&&t.push(B)}t.forEach(o=>localStorage.removeItem(o))}catch{}this.Oa()}loadIfEnabled(){if(this.Ci||!this.xa)return;const A=this.Ar;if(this._surveyManager)return;if(this.Ia)return void mn.info("Already initializing surveys, skipping...");if(A.disableSurveys)return void mn.info(XII);if(A.cookielessMode&&this.xa.isOptedOut)return void mn.info("Not loading surveys in cookieless mode without consent.");const I=this.Ta.getExtensions();if(!I)return void this.Ba("PostHog Extensions not found.");if(Ye(this.Da)&&!A.advancedEnableSurveys)return;const e=this.Da||A.advancedEnableSurveys;this.Ia=!0,this.Ma=!1;try{const t=I.generateSurveys;if(t)return this.za(t,e),void(this.Ia=!1);const o=I.loadExternalDependency;if(!o)return this.Ba(h6A),void(this.Ia=!1);o(B=>{try{if(this.Ci)return;const C=this.Ta.getExtensions();B||!C?.generateSurveys?this.Ba("Could not load surveys script",B):this.za(C.generateSurveys,e)}finally{this.Ia=!1}})}catch(t){throw this.Ia=!1,this.Ba("Error initializing surveys",t),t}}za(A,I){var e;if(this.Ci)return;this._surveyManager=A(I),this._surveyEventReceiver=this.Ha(this.xa,this.Oa);const t=(e=this.xa)===null||e===void 0?void 0:e.kv.get(ggA);t&&this.Ua(t),mn.info("Surveys loaded successfully"),this.Wa(),this.Oa(),this.Va({isLoaded:!0})}Ha(A,I){return new Llt(A,this,void 0,I)}Ba(A,I){this.Ma=!0,mn.error(A,I),this.Oa({isLoaded:!1,error:A}),this.Va({isLoaded:!1,error:A})}onSurveysLoaded(A){return this.Ea.push(A),this._surveyManager&&this.Va({isLoaded:!0}),()=>{this.Ea=this.Ea.filter(I=>I!==A)}}getSurveys(A,I=!1){if(this.Ci)return;const e=this.xa;if(!e)return A([],{isLoaded:!1,error:mq});if(this.Ar.disableSurveys)return mn.info(XII),A([]);const t=e.kv.get(ggA);if(t&&!I)return A(t,{isLoaded:!0}),void(this.Ga()&&this.getSurveys(()=>{},!0));if(this.Ra)return void this.Ra.then(({surveys:C,context:Q})=>{this.Ci||A(C,Q)}).catch(C=>mn.error("Error in survey callback",C));const o=e.sendRequest("/api/surveys/",{method:"GET",query:{token:e.projectToken},sentAt:"query",timeoutMs:this.Ar.requestTimeoutMs}).then(C=>{try{return this.Qa(e,C)}catch(Q){return mn.error("Error processing surveys response",Q),this.Qa(e,{statusCode:0,error:Q})}},C=>this.Qa(e,{statusCode:0,error:C}));this.Ra=o;const B=()=>{this.Ra===o&&(this.Ra=null)};o.then(C=>{B(),this.Ci||(this.Oa(C.context),A(C.surveys,C.context))},B).catch(C=>mn.error("Error in survey callback",C))}Qa(A,I){if(this.Ci)return{surveys:[],context:{isLoaded:!1,error:mq}};const e=I.statusCode;if(e!==200||!I.json){const o=`Surveys API could not be loaded, status: ${e}`;return e!==0?mn.error(o):I.error||mn.warn(o),this.Aa=Date.now(),{surveys:[],context:{isLoaded:!1,error:o}}}this.Aa=null;const t=I.json.surveys||[];return A.kv.set({[ggA]:t,[CDA]:Date.now()}),this.Ua(t),{surveys:t,context:{isLoaded:!0}}}Ua(A){const I=A.filter(e=>(function(t){return!(!t.start_date||t.end_date)})(e)&&(RII(e)||(function(t){var o;return!!(!((o=t.conditions)===null||o===void 0||(o=o.actions)===null||o===void 0||(o=o.values)===null||o===void 0)&&o.length)})(e)));this.Za(I)}Za(A){var I;(I=this._surveyEventReceiver)===null||I===void 0||I.replace(A)}Ga(){return this.Ja()&&!this.Ra&&!this.Ka()}Ja(){var A;const I=(A=this.xa)===null||A===void 0?void 0:A.kv.get(CDA);return Gh(I)&&Date.now()-I>3e5}Ka(){return Gh(this.Aa)&&3e5>Date.now()-this.Aa}markSurveyAsSeen(A,I){var e;const t={id:A,current_iteration:(e=I?.iteration)!==null&&e!==void 0?e:null};UII(t);try{localStorage.setItem("lastSeenSurveyDate",new Date().toISOString())}catch{}this.Oa()}Va(A){for(const I of this.Ea){if(this.Ci)return;try{A.isLoaded?this.getSurveys(I):I([],A)}catch(e){mn.error("Error in survey callback",e)}}}getActiveMatchingSurveys(A,I=!1){if(!hC(this._surveyManager))return this._surveyManager.getActiveMatchingSurveys(A,I);mn.warn("init was not called")}onActiveMatchingSurveysChanged(A){var I;if(this.Ci)return()=>{};const e={callback:A,active:!0,revision:0};this.Pa.push(e),this.Wa();const t=(I=this.xa)===null||I===void 0?void 0:I.kv.get(ggA);return this.Ar.disableSurveys||!this._surveyManager&&this.Ma&&!this.Ia||!t&&!hC(this.Aa)&&!this.Ra?this.La(e,{isLoaded:!1}):this._surveyManager&&this.La(e),()=>{var o;e.active=!1,this.Pa=this.Pa.filter(B=>B!==e),this.Pa.length===0&&((o=this.ja)===null||o===void 0||o.call(this),this.ja=void 0)}}Wa(){var A,I,e;this._surveyManager&&this.Pa.length>0&&((A=this.ja)!==null&&A!==void 0||(this.ja=(I=(e=this.Ta).onMatchingConditionsChanged)===null||I===void 0?void 0:I.call(e,this.Oa)))}La(A,I){if(this.Ci||!A.active)return;const e=++A.revision,t=o=>{if(!this.Ci&&A.active&&e===A.revision)try{const B=I??{isLoaded:!0},C=JSON.stringify([o,B]);if(C===A.lastResult)return;A.lastResult=C,A.callback(o,B)}catch(B){mn.error("Error in active matching surveys callback",B)}};try{I&&!I.isLoaded?t([]):this.getActiveMatchingSurveys(t)}catch(o){mn.error("Error in active matching surveys callback",o)}}Xa(A){let I=null;return this.getSurveys(e=>{var t;I=(t=e.find(o=>o.id===A))!==null&&t!==void 0?t:null}),I}Ya(A){if(hC(this._surveyManager))return{eligible:!1,reason:mq};const I=typeof A=="string"?this.Xa(A):A;return I?this._surveyManager.checkSurveyEligibility(I):{eligible:!1,reason:"Survey not found"}}tl(A){var I;if(!(!((I=this.xa)===null||I===void 0)&&I.canCapture))return{eligible:!1,reason:"PostHog is not capturing, so a survey response cannot be recorded"};if(hC(this._surveyManager))return{eligible:!1,reason:mq};const e=typeof A=="string"?this.Xa(A):A;return e?this._surveyManager.checkSurveyRenderability(e):{eligible:!1,reason:"Survey not found"}}canRenderSurvey(A){if(hC(this._surveyManager))return mn.warn("init was not called"),{visible:!1,disabledReason:mq};const I=this.tl(A);return{visible:I.eligible,disabledReason:I.reason}}canRenderSurveyAsync(A,I){return hC(this._surveyManager)?(mn.warn("init was not called"),Promise.resolve({visible:!1,disabledReason:mq})):new Promise(e=>{this.getSurveys(t=>{var o;const B=(o=t.find(C=>C.id===A))!==null&&o!==void 0?o:null;if(B){const C=this.tl(B);e({visible:C.eligible,disabledReason:C.reason})}else e({visible:!1,disabledReason:"Survey not found"})},I)})}renderSurvey(A,I,e){var t,o,B;if(!(!((t=this.xa)===null||t===void 0)&&t.canCapture))return;if(hC(this._surveyManager))return void mn.warn("init was not called");const C=typeof A=="string"?this.Xa(A):A;if(!C?.id)return void mn.warn("Survey not found");if(!slt.includes(C.type))return void mn.warn(`Surveys of type ${C.type} cannot be rendered in the app`);const Q=(o=typeof document>"u"?void 0:document)===null||o===void 0?void 0:o.querySelector(I);if(Q){if(!((B=C.appearance)===null||B===void 0)&&B.surveyPopupDelaySeconds){mn.info(`Rendering survey ${C.id} with delay of ${C.appearance.surveyPopupDelaySeconds} seconds`);const i=setTimeout(()=>{var E,n,s;this.Fa.delete(i),!this.Ci&&(!((E=this.xa)===null||E===void 0)&&E.canCapture)&&(mn.info(`Rendering survey ${C.id} with delay of ${(n=C.appearance)===null||n===void 0?void 0:n.surveyPopupDelaySeconds} seconds`),(s=this._surveyManager)===null||s===void 0||s.renderSurvey(C,Q,e),mn.info(`Survey ${C.id} rendered`))},1e3*C.appearance.surveyPopupDelaySeconds);return void this.Fa.add(i)}this._surveyManager.renderSurvey(C,Q,e)}else mn.warn("Survey element not found")}displaySurvey(A,I){var e,t;if(!(!((e=this.xa)===null||e===void 0)&&e.canCapture))return;if(hC(this._surveyManager))return void mn.warn("init was not called");const o=this.Xa(A);if(!o)return void mn.warn("Survey not found");let B=o;if(!((t=o.appearance)===null||t===void 0)&&t.surveyPopupDelaySeconds&&I.ignoreDelay&&(B=QI(QI({},o),{},{appearance:QI(QI({},o.appearance),{},{surveyPopupDelaySeconds:0})})),I.displayType!==gvA.Popover&&I.initialResponses&&mn.warn("initialResponses is only supported for popover surveys. prefill will not be applied."),I.ignoreConditions===!1){const C=this.Ya(o);if(!C.eligible)return void mn.warn("Survey is not eligible to be displayed: ",C.reason)}I.displayType!==gvA.Inline?this._surveyManager.handlePopoverSurvey(B,I):this.renderSurvey(B,I.selector,I.properties)}cancelPendingSurvey(A){hC(this._surveyManager)?mn.warn("init was not called"):this._surveyManager.cancelSurvey(A)}handlePageUnload(){var A,I;(A=this._surveyManager)===null||A===void 0||(I=A.handlePageUnload)===null||I===void 0||I.call(A)}},_lt=class{constructor(A){this._instance=A}get(){var A,I,e,t;const o=(A=this._instance)===null||A===void 0?void 0:A.config;return{disableSurveys:!!o?.disable_surveys,cookielessMode:!!o?.cookieless_mode,advancedEnableSurveys:!!o?.advanced_enable_surveys,requestTimeoutMs:(I=o?.surveys_request_timeout_ms)!==null&&I!==void 0?I:1e4,prefillFromUrl:!!(!(o==null||(e=o.surveys)===null||e===void 0)&&e.prefillFromUrl),automaticDisplay:!o?.disable_surveys_automatic_display,featureFlagEvaluation:!o?.advanced_disable_feature_flags,overrideLanguage:o?.override_display_language,prepareStylesheet:o?.prepare_external_dependency_stylesheet,get_current_url:o?.get_current_url,uiHost:(t=this._instance)===null||t===void 0||(t=t.requestRouter)===null||t===void 0?void 0:t.endpointFor("ui","")}}getExtensions(){const A=UB?.__PosthogExtensions__;if(!A||!this._instance)return;const I=this._instance,{generateSurveys:e,loadExternalDependency:t}=A;return{generateSurveys:e?o=>e(I,o):void 0,loadExternalDependency:t?o=>t(I,"surveys",o):void 0}}onMatchingConditionsChanged(A){var I,e;const t=(I=this._instance)===null||I===void 0?void 0:I._addCaptureHook(Q=>{Q!=="$pageview"&&Q!==AS.SHOWN&&Q!==AS.DISMISSED&&Q!==AS.SENT||A()}),o=()=>A();NE(Se,"PHSurveyShown",o);let B=!1;const C=(e=this._instance)===null||e===void 0?void 0:e.onFeatureFlags(()=>{B&&A()});return B=!0,()=>{B=!1,t?.(),C?.(),Se?.removeEventListener("PHSurveyShown",o)}}};const blt=Se?.location?hDA(Se.location.hash,"__posthog")||hDA(location.hash,"state"):null,$II="_postHogToolbarParams",AeI=zr("[Toolbar]"),geI=zr("[FeatureFlags]"),a5=zr("[FeatureFlags]",{debugEnabled:!0}),mvA=`" failed. Feature flags didn't load in time.`,Hlt=[502,504],IeI=["click","keydown","wheel","touchstart","pointerdown"],eeI="connection_error",teI=g=>{const A={};for(let I=0;g.length>I;I++)A[g[I]]=!0;return A},oeI=g=>{const A={};for(const[I,e]of aDA(g||{}))e&&(A[I]=e);return A};var vlt=class{constructor(A){this.name="featureFlags",this.dd=!1,this.featureFlagEventHandlers=[],this.$=geI,this.vd={},this.fd={},this.pd=[],this.gd=new Set,this.md=new Set,this.yd=!1,this.bd=!1,this._d=0,this.wd=!1,this.kd=!1,this.Sd=!1,this.xd=!1,this.$d=!1,this.Cd=0,this.Td=!1,this.rn=()=>{const I=this.Id();this.Cd=0,I&&this.reloadFeatureFlags()},this.Md=()=>{var I,e;const t=this.Ed,o=(I=this.Pd)!==null&&I!==void 0?I:t;Ye(t)||Ye(o)||this.Ar.remoteRequestsDisabled||!this.Rd||this.Rd.visibilityState==="hidden"||Date.now()-((e=this.Ad)!==null&&e!==void 0?e:0)<o||(this.Pd=this.Td||!this.Ar.idleRefreshBackoff?t:Math.min(2*o,36e5),this.Td=!1,this.reloadFeatureFlags(),this.Fd())},this.Od=()=>{this.Td&&this.Pd===this.Ed||this.Dd()},this.sn=()=>{var I;((I=this.Rd)===null||I===void 0?void 0:I.visibilityState)==="visible"&&this.Dd()},this.Ta=A}get Ld(){}Nd(){this.xa&&this.qd()}setup(A){try{this.jd=typeof window>"u"?void 0:window,this.Rd=typeof document>"u"?void 0:document}catch{this.jd=void 0,this.Rd=void 0}return this.Na=A,this.$=A.logger.createLogger("[FeatureFlags]"),GvA(A.kv.initialize(),()=>{this.Na===A&&(this.Na=void 0,this.xa=A,this.Bd(A))})}Bd(A){var I;if(this.xa===A)return this.jd&&NE(this.jd,"online",this.rn),this.qd(),this.zd=A.registerDynamicEventProperties(()=>this.Hd()?this.vd:this.fd),this.Ud=(I=this.Ld)===null||I===void 0?void 0:I.onCrossTabFeatureFlagChange(()=>{this.Wd(),this.Vd(),this.Gd()}),this.Vd(),this.initialize()}Dd(){this.Td=!0,this.Pd=this.Ed,this.Md()}qd(){var A;const I=this.Ar.refreshIntervalMs,e=!this.Ar.remoteRequestsDisabled&&this.Rd&&!Ye(I)&&I>0?I:void 0;this.Ar.idleRefreshBackoff||(this.Pd=e),e!==this.Ed&&(this.Qd(),Ye(e)||(this.Ed=e,this.Pd=e,this.Fd(),!((A=this.Rd)===null||A===void 0)&&A.addEventListener&&(NE(this.Rd,tq,this.sn),Qq(IeI,t=>{NE(this.Rd,t,this.Od,{capture:!0})}))))}Fd(){Ye(this.Ed)||(Ye(this.Zd)||clearInterval(this.Zd),this.Ad=Date.now(),this.Zd=setInterval(this.Md,this.Ed))}Qd(){var A,I;Ye(this.Zd)||(clearInterval(this.Zd),this.Zd=void 0,(A=this.Rd)===null||A===void 0||(I=A.removeEventListener)===null||I===void 0||I.call(A,"visibilitychange",this.sn),Qq(IeI,e=>{var t,o;(t=this.Rd)===null||t===void 0||(o=t.removeEventListener)===null||o===void 0||o.call(t,e,this.Od,{capture:!0})})),this.Ed=void 0,this.Pd=void 0,this.Td=!1,this.Ad=void 0}destroy(){this.Jd()}dispose(){this.Jd()}Jd(){var A,I,e;this.Qd(),this._d++,this.kd=!1,this.Na=void 0,this.Kd(this.gd,"cancelled"),this.Kd(this.md,"cancelled"),this.xa&&(this.Xd(),(A=this.zd)===null||A===void 0||A.dispose(),this.zd=void 0,(I=this.Ud)===null||I===void 0||I.call(this),this.Ud=void 0,this.pd=[],(e=this.jd)===null||e===void 0||e.removeEventListener("online",this.rn),this.xa=void 0)}get Ar(){return this.Ta.get()}Yd(A){var I;return this.tv&&A in this.tv?this.tv[A]:(I=this.xa)===null||I===void 0?void 0:I.kv.get(A)}Wd(){return!!this.tv&&(this.tv=void 0,!0)}ev(){var A;return!Ye((A=this.xa)===null||A===void 0?void 0:A.kv.get("$enabled_feature_flags"))&&this.Wd()}At(A){this.iv(()=>{var I;return(I=this.xa)===null||I===void 0?void 0:I.kv.set(A)})}nv(A,I,e){if(!this.Ld||!A.$enabled_feature_flags)return;const t=this.Yd("$enabled_feature_flags")||{},o=A.$enabled_feature_flags||{},B=I.flags||I.featureFlags,C=I.flags?Object.entries(I.flags).filter(([,l])=>!l?.failed).map(([l])=>l):[],Q=!!I.errorsWhileComputingFlags&&!!I.flags,i=Q?C:e&&!cB(B)?Object.keys(B||{}):Array.from(new Set([...Object.keys(t),...Object.keys(o)])),E=this.Yd("$feature_flag_payloads")||{},n=A.$feature_flag_payloads||{},s=Q||e?i:Array.from(new Set([...Object.keys(E),...Object.keys(n)])),r=!Q&&!e,a=!!r||i,c=!!r||s,h={[sJ]:a,[xR]:a,[a3]:c};A.$feature_flag_details&&(h[o5]=a);for(const l of[B5,E3,$AA])Ye(A[l])||(h[l]=!0);this.Ld.markCrossTabFeatureFlagChanges(h)}Pt(A){this.iv(()=>{var I;return(I=this.xa)===null||I===void 0?void 0:I.kv.remove(A)})}iv(A){try{A()}catch(I){this.$.error("Failed to update feature flag persistence",I)}}Vd(){const A={};for(const t of[sJ,a3,B5,wx]){const o=this.Yd(t);Ye(o)||(A[t]=o)}this.vd=A;const I=QI({},A),e=this.Yd(xR);if(e)for(const[t,o]of Object.entries(e))I[`$feature/${t}`]=o;this.fd=I}Hd(){const A=this.Ar.cacheTtlMs;if(!A||0>=A)return!1;const I=this.Yd(E3);return typeof I!="number"||Date.now()-I>A}sv(){return!!this.Hd()&&(this.$d||this.bd||(this.$d=!0,this.$.warn("Feature flag cache is stale, triggering refresh..."),this.reloadFeatureFlags()),!0)}rv(){const A=this.Ar.evaluationContexts;return A?.length?A.filter(I=>{const e=I&&typeof I=="string"&&I.trim().length>0;return e||this.$.error("Invalid evaluation context found:",I,"Expected non-empty string"),e}):[]}ov(){const A=this.Ar.flagKeys;if(!Ye(A))return A.filter(I=>{const e=I&&typeof I=="string"&&I.trim().length>0;return e||this.$.error("Invalid flag key found:",I,"Expected non-empty string"),e})}initialize(){var A,I;const e=this.Ar,t=(A=(I=e.bootstrap)===null||I===void 0?void 0:I.featureFlags)!==null&&A!==void 0?A:{};if(Object.keys(t).length){var o,B;const C=(o=(B=e.bootstrap)===null||B===void 0?void 0:B.featureFlagPayloads)!==null&&o!==void 0?o:{},Q=Object.keys(t).filter(E=>!Ye(t[E])).reduce((E,n)=>(E[n]=t[n],E),{}),i=Object.keys(C).filter(E=>Q[E]).reduce((E,n)=>(E[n]=C[n],E),{});return this.av({featureFlags:Q,featureFlagPayloads:i},void 0,{persist:!1})}}updateFlags(A,I,e){var t,o;const B=e?.merge&&(t=this.Yd("$enabled_feature_flags"))!==null&&t!==void 0?t:{},C=e?.merge&&(o=this.Yd("$feature_flag_payloads"))!==null&&o!==void 0?o:{},Q=QI(QI({},B),A),i=QI(QI({},C),I),E={};for(const[n,s]of Object.entries(Q))E[n]={key:n,enabled:aAI(s),variant:rAI(s),reason:void 0,metadata:Ye(i?.[n])?void 0:{id:0,version:void 0,description:void 0,payload:i[n]}};this.av({flags:E})}get hasLoadedFlags(){return this.yd}getFlags(){return Object.keys(this.getFlagVariants())}getFlagsWithDetails(){const A=this.Yd(o5),I=this.Yd(wx),e=this.Yd(C5);if(!e&&!I)return A||{};const t=sr({},A||{}),o=[...new Set([...Object.keys(e||{}),...Object.keys(I||{})])];for(const Q of o){var B,C;const i=t[Q],E=I?.[Q],n=Ye(E)?(B=i?.enabled)!==null&&B!==void 0&&B:!!E,s=Ye(E)?i?.variant:typeof E=="string"?E:void 0,r=e?.[Q],a=QI(QI({},i),{},{enabled:n,variant:n?s??i?.variant:void 0});n!==i?.enabled&&(a.original_enabled=i?.enabled),s!==i?.variant&&(a.original_variant=i?.variant),r&&(a.metadata=QI(QI({},i?.metadata),{},{payload:r,original_payload:i==null||(C=i.metadata)===null||C===void 0?void 0:C.payload})),t[Q]=a}return this.dd||(this.$.warn(" Overriding feature flag details!",{flagDetails:A,overriddenPayloads:e,finalDetails:t}),this.dd=!0),t}getAllFeatureFlags(){const A=this.getFlagVariants(),I=this.getFlagPayloads();return Object.keys(A).map(e=>{const t=A[e];return{key:e,enabled:aAI(t),variant:rAI(t),payload:sAI(I[e])}})}getFlagVariants(){const A=this.Yd(xR),I=this.Yd(wx);if(!I)return A||{};const e=sr({},A||{}),t=Object.keys(I);for(let o=0;t.length>o;o++)e[t[o]]=I[t[o]];return this.dd||(this.$.warn(" Overriding feature flags!",{enabledFlags:A,overriddenFlags:I,finalFlags:e}),this.dd=!0),e}getFlagPayloads(){const A=this.Yd(a3),I=this.Yd(C5);if(!I)return A||{};const e=sr({},A||{}),t=Object.keys(I);for(let o=0;t.length>o;o++)e[t[o]]=I[t[o]];return this.dd||(this.$.warn(" Overriding feature flag payloads!",{flagPayloads:A,overriddenPayloads:I,finalPayloads:e}),this.dd=!0),e}reloadFeatureFlags(){this.wd||this.Ar.featureFlagsDisabled||this.Id()||(this.Sd&&this.$.warn("reloadFeatureFlags() was called inside an onFeatureFlags callback. This callback also runs when flags change in other tabs, so this can cause a request loop."),this.bd&&(this.kd=!0),this.lv||(this.pd.slice().forEach(A=>{try{A()}catch(I){this.$.error("Error while running feature flags reloading callback",I)}}),this.lv=setTimeout(()=>{this.uv()},5)))}reloadFeatureFlagsAsync(){return!this.xa||this.wd||this.Ar.featureFlagsDisabled||this.Ar.remoteRequestsDisabled||this.Id()?Promise.resolve({status:"skipped"}):new Promise(A=>{this.gd.add(A),this.reloadFeatureFlags()})}Kd(A,I){A.forEach(e=>e({status:I})),A.clear()}Xd(){clearTimeout(this.lv),this.lv=void 0}onReloading(A){return this.pd.push(A),()=>{this.pd=this.pd.filter(I=>I!==A)}}ensureFlagsLoaded(){this.yd||this.bd||this.lv||this.reloadFeatureFlags()}setAnonymousDistinctId(A){this.$anon_distinct_id=A}setReloadingPaused(A){this.wd=A}resetFlagCallReported(){this.Pt(aJ)}uv(A){var I;this.Xd();const e=this.xa;if(!e||this.Ar.remoteRequestsDisabled||this.Id())return void this.Kd(this.gd,"skipped");if(this.bd)return void(this.kd=!0);const t={token:e.projectToken,distinct_id:e.distinctId,groups:e.groups,$anon_distinct_id:this.$anon_distinct_id,person_properties:QI(QI(QI({},e.initialPersonProperties),this.Yd("$stored_person_properties")||{}),{},{$lib:e.library.name,$lib_version:e.library.version}),group_properties:this.Yd(n3),timezone:bgI()};Ye(e.deviceId)||(t.$device_id=e.deviceId),(A?.disableFlags||this.Ar.featureFlagsDisabled)&&(t.disable_flags=!0);const o=this.rv();o.length&&(t.evaluation_contexts=o);const B=this.ov();Ye(B)||(t.flag_keys=B);const C=this.Ar.onlyEvaluateSurveyFeatureFlags,Q="/flags/?v=2"+(C?"&only_evaluate_survey_feature_flags=true":""),i=this._d,E=this.gd;this.gd=new Set,this.md=E,this.bd=!0;const n=()=>{this.kd&&(this.kd=!1,this.uv())},s=l=>{var D,d;const y=(D=l.json)!==null&&D!==void 0?D:{},w=l.statusCode!==200;if(this.bd=!1,i!==this._d)return void n();if(this.hv(l.statusCode),w||this.kd||(this.$anon_distinct_id=void 0),t.disable_flags&&!this.kd)return void this.Kd(E,"skipped");this.xd=!w;const u=[];l.error?u.push(l.error instanceof Error&&l.error.name==="AbortError"?"timeout":l.error instanceof Error?eeI:"unknown_error"):l.statusCode!==200&&u.push(`api_error_${l.statusCode}`),y.errorsWhileComputingFlags&&u.push("errors_while_computing_flags");const G=!!(!((d=y.quotaLimited)===null||d===void 0)&&d.includes("feature_flags"));G&&u.push("quota_limited"),this.At({[XAA]:u}),G?this.$.warn("You have hit your feature flags quota limit, and will not be able to load feature flags until the quota is reset. Please visit https://posthog.com/docs/billing/limits-alerts to learn more."):t.disable_flags||this.av(y,w,{partialResponse:C}),this.Kd(E,t.disable_flags?"skipped":u.length||!y.flags&&!y.featureFlags?"error":"loaded"),n()},r=l=>{this.bd=!1,i===this._d&&(this.At({[XAA]:[eeI]}),this.$.error("Feature flag request failed",l),this.ev()&&this.Gd(!0),this.Kd(E,"error")),n()};let a=(I=this.Ar.requestMaxRetries)!==null&&I!==void 0?I:1;const c=()=>a>0&&i===this._d,h=()=>{if(i!==this._d||!this.xa||this.Ar.remoteRequestsDisabled)return this.bd=!1,this.Kd(E,"skipped"),void n();try{e.sendRequest(Q,{target:"flags",method:"POST",body:t,compression:this.Ar.compression,sentAt:"body",timeoutMs:this.Ar.requestTimeoutMs}).then(l=>{if((D=>Hlt.includes(D.statusCode)||(d=>d.statusCode===0&&d.error instanceof Error&&d.error.name==="AbortError")(D))(l)&&c())return a--,void setTimeout(h,500);s(l)}).catch(r)}catch(l){r(l)}};h()}Id(){return vgI(this.Cd,3)}hv(A){this.Cd=TgI(A,this.Cd,3,()=>this.$.warn("Feature flag requests are failing before receiving an HTTP response; this can happen due to network issues, CORS, browser blocking, or ad blockers. Stopped refreshing feature flags; will try again when connectivity changes."))}getFeatureFlag(A,I={}){var e;if(I.fresh&&!this.xd)return;if(!(this.yd||this.getFlags()&&this.getFlags().length>0))return void this.$.warn('getFeatureFlag for key "'+A+mvA);if(this.sv())return;const t=this.getFeatureFlagResult(A,I);return(e=t?.variant)!==null&&e!==void 0?e:t?.enabled}getFeatureFlagDetails(A){return this.getFlagsWithDetails()[A]}getFeatureFlagPayload(A){const I=this.getFeatureFlagResult(A,{send_event:!1});return I?.payload}getFeatureFlagResult(A,I={}){if(I.fresh&&!this.xd)return;if(!(this.yd||this.getFlags()&&this.getFlags().length>0))return void this.$.warn('getFeatureFlagResult for key "'+A+mvA);if(this.sv())return;const e=this.getFlagVariants(),t=A in e,o=e[A],B=this.getFlagPayloads()[A],C=String(o),Q=this.Yd("$feature_flag_request_id")||void 0,i=this.Yd("$feature_flag_evaluated_at")||void 0;let E,n=this.Yd("$flag_call_reported")||{};if(this.Ar.deduplicateCallsPerSession){var s;const R=(s=this.xa)===null||s===void 0||(s=s.session)===null||s===void 0?void 0:s.sessionId,x=this.Yd(AgA);R&&R!==x&&(n={},E=R)}if(!I.send_event&&"send_event"in I)E&&this.At({[aJ]:n,[AgA]:E});else{var r,a;const R=(r=this.xa)===null||r===void 0?void 0:r.canCapture;if(!R&&Object.keys(n).length>0&&(n={},this.At({[aJ]:n})),R&&!(!((a=n[A])===null||a===void 0)&&a.includes(C))){var c,h,l,D,d,y,w,u,G,m,p,k,S;cB(n[A])?n[A].push(C):n[A]=[C],this.At(QI({[aJ]:n},E?{[AgA]:E}:{}));const x=this.getFeatureFlagDetails(A),N=[...(c=this.Yd("$feature_flag_errors"))!==null&&c!==void 0?c:[]];Ye(o)&&N.push("flag_missing");const U={$feature_flag:A,$feature_flag_response:o,$feature_flag_payload:B??null,$feature_flag_request_id:Q,$feature_flag_evaluated_at:i,$feature_flag_bootstrapped_response:(h=(l=this.Ar.bootstrap)===null||l===void 0||(l=l.featureFlags)===null||l===void 0?void 0:l[A])!==null&&h!==void 0?h:null,$feature_flag_bootstrapped_payload:(D=(d=this.Ar.bootstrap)===null||d===void 0||(d=d.featureFlagPayloads)===null||d===void 0?void 0:d[A])!==null&&D!==void 0?D:null,$used_bootstrap_value:!this.xd};Ye(x==null||(y=x.metadata)===null||y===void 0?void 0:y.has_experiment)||(U.$feature_flag_has_experiment=x.metadata.has_experiment),Ye(x==null||(w=x.metadata)===null||w===void 0?void 0:w.version)||(U.$feature_flag_version=x.metadata.version);const K=(u=x==null||(G=x.reason)===null||G===void 0?void 0:G.description)!==null&&u!==void 0?u:x==null||(m=x.reason)===null||m===void 0?void 0:m.code;K&&(U.$feature_flag_reason=K),!(x==null||(p=x.metadata)===null||p===void 0)&&p.id&&(U.$feature_flag_id=x.metadata.id),Ye(x?.original_variant)&&Ye(x?.original_enabled)||(U.$feature_flag_original_response=Ye(x.original_variant)?x.original_enabled:x.original_variant),!(x==null||(k=x.metadata)===null||k===void 0)&&k.original_payload&&(U.$feature_flag_original_payload=x==null||(S=x.metadata)===null||S===void 0?void 0:S.original_payload),N.length&&(U.$feature_flag_error=N.join(",")),this.dv(U)}else E&&this.At({[aJ]:n,[AgA]:E})}return t?{key:A,enabled:!!o,variant:typeof o=="string"?o:void 0,payload:sAI(B)}:void 0}dv(A){try{var I;(I=this.xa)===null||I===void 0||I.capture("$feature_flag_called",A)}catch(e){this.$.error("Failed to capture feature flag call",e)}}getRemoteConfigPayload(A,I){this.vv(A,I)}vv(A,I){var e=this;return Qa(function*(){const t=e.xa;if(!t)return;const o={distinct_id:t.distinctId,token:t.projectToken,person_properties:{$lib:t.library.name,$lib_version:t.library.version}},B=e.rv();B.length&&(o.evaluation_contexts=B);const C=e.ov();let Q;Ye(C)||(o.flag_keys=C);try{var i;const E=(i=(yield t.sendRequest("/flags/?v=2",{target:"flags",method:"POST",body:o,compression:e.Ar.compression,sentAt:"body",timeoutMs:e.Ar.requestTimeoutMs})).json)===null||i===void 0?void 0:i.featureFlagPayloads;Q=E?.[A]||void 0}catch(E){return void e.$.error("Remote config feature flag request failed",E)}try{I(Q)}catch(E){e.$.error("Remote config feature flag callback failed",E)}})()}isFeatureEnabled(A,I={}){if(I.fresh&&!this.xd)return I.defaultValue;if(!(this.yd||this.getFlags()&&this.getFlags().length>0))return this.$.warn('isFeatureEnabled for key "'+A+mvA),I.defaultValue;const e=this.getFeatureFlag(A,I);return Ye(e)?I.defaultValue:!!e}addFeatureFlagsHandler(A){this.featureFlagEventHandlers.push(A)}removeFeatureFlagsHandler(A){this.featureFlagEventHandlers=this.featureFlagEventHandlers.filter(I=>I!==A)}receivedFeatureFlags(A,I,e){this.av(A,I,e)}av(A,I,e){if(!this.xa)return;this.yd=!0;const t=((o,B={},C={},Q={},i,E=geI)=>{const n=((y,w)=>{const u=y.flags;if(u){const G=Object.fromEntries(Object.keys(u).map(p=>{var k;return[p,(k=u[p].variant)!==null&&k!==void 0?k:u[p].enabled]})),m=Object.fromEntries(Object.keys(u).filter(p=>u[p].enabled).filter(p=>{var k;return!Ye((k=u[p].metadata)===null||k===void 0?void 0:k.payload)}).map(p=>{var k;return[p,(k=u[p].metadata)===null||k===void 0?void 0:k.payload]}));return QI(QI({},y),{},{featureFlags:G,featureFlagPayloads:m})}return y.featureFlags&&w.warn("Using an older version of the feature flags endpoint. Please upgrade your PostHog server to the latest version"),y})(o,E),s=n.flags,r=n.featureFlags,a=n.featureFlagPayloads;if(!r)return;const c=o.requestId,h=o.evaluatedAt;if(cB(r)){E.warn("v1 of the feature flags endpoint is deprecated. Please use the latest version.");const y={};if(r)for(let w=0;r.length>w;w++)y[r[w]]=!0;return{[sJ]:r,[xR]:y,[$AA]:!1}}let l=r,D=a,d=s;if(i?.partialResponse){const y=Object.keys(l),w=D||{};l=QI(QI({},B),l),D=QI(QI({},C),w),y.forEach(u=>{u in w||D==null||delete D[u]}),d=QI(QI({},Q),d)}else if(o.errorsWhileComputingFlags)if(s){const y=new Set(Object.keys(s).filter(u=>{var G;return!(!((G=s[u])===null||G===void 0)&&G.failed)}));l=QI(QI({},B),Object.fromEntries(Object.entries(l).filter(([u])=>y.has(u))));const w=Object.fromEntries(Object.entries(D||{}).filter(([u])=>y.has(u)));D=QI(QI({},C),w),y.forEach(u=>{u in w||D==null||delete D[u]}),d=QI(QI({},Q),Object.fromEntries(Object.entries(d||{}).filter(([u])=>y.has(u))))}else l=QI(QI({},B),l),D=QI(QI({},C),D),d=QI(QI({},Q),d);return QI(QI({[sJ]:Object.keys(oeI(l)),[xR]:l||{},[a3]:D||{},[o5]:d||{},[$AA]:o.minimalFlagCalledEvents===!0},c?{[B5]:c}:{}),h?{[E3]:h}:{})})(A,this.getFlagVariants(),this.getFlagPayloads(),this.getFlagsWithDetails(),e,this.$);if(t)if(e?.persist===!1){const o=!Ye(this.xa.kv.get(xR));this.tv=t,o||this.At(t)}else this.Wd(),this.nv(t,A,!!e?.partialResponse),this.At(t);else I&&this.ev();I||(this.$d=!1),this.Gd(I)}override(A,I=!1){this.$.warn("override is deprecated. Please use overrideFeatureFlags instead."),this.overrideFeatureFlags({flags:A,suppressWarning:I})}overrideFeatureFlags(A){this.fv(A)}fv(A){if(this.xa){if(A===!1)return this.Pt([wx,C5]),this.Gd(),void a5.info("All overrides cleared");if(cB(A))return this.At({[wx]:teI(A)}),this.Gd(),void a5.info("Flag overrides set",{flags:A});if(A&&typeof A=="object"&&("flags"in A||"payloads"in A)){var I;const e=A;this.dd=!!((I=e.suppressWarning)!==null&&I!==void 0&&I);const t={},o=e.flags,B=e.payloads;return o&&(t[wx]=cB(o)?teI(o):o),B&&(t[C5]=B),Object.keys(t).length&&this.At(t),o===!1&&B===!1?this.Pt([wx,C5]):o===!1?this.Pt(wx):B===!1&&this.Pt(C5),this.Gd(),o===!1?a5.info("Flag overrides cleared"):o&&a5.info("Flag overrides set",{flags:o}),void(B===!1?a5.info("Payload overrides cleared"):B&&a5.info("Payload overrides set",{payloads:B}))}if(A&&typeof A=="object")return this.At({[wx]:A}),this.Gd(),void a5.info("Flag overrides set",{flags:A});this.$.warn("Invalid overrideOptions provided to overrideFeatureFlags",{overrideOptions:A})}else this.$.warn("posthog.featureFlags.overrideFeatureFlags called before feature flags were ready")}onFeatureFlags(A){if(this.addFeatureFlagsHandler(A),this.yd){const{flags:I,flagVariants:e}=this.pv();try{A(I,e)}catch(t){this.$.error("Error while running feature flags callback",t)}}return()=>this.removeFeatureFlagsHandler(A)}updateEarlyAccessFeatureEnrollment(A,I,e){var t;const o=(this.Yd("$early_access_features")||[]).find(E=>E.flagKey===A),B={[`$feature_enrollment/${A}`]:I},C={$feature_flag:A,$feature_enrollment:I,$set:B};o&&(C.$early_access_feature_name=o.name),e&&(C.$feature_enrollment_stage=e);const Q=QI(QI({},this.getFlagVariants()),{},{[A]:I});(t=this.Ld)===null||t===void 0||t.markCrossTabFeatureFlagChanges({$active_feature_flags:[A],$enabled_feature_flags:[A],$stored_person_properties:Object.keys(B)}),this.At({[sJ]:Object.keys(oeI(Q)),[xR]:Q,[s3]:QI(QI({},this.Yd("$stored_person_properties")||{}),B)}),this.Gd();try{var i;(i=this.xa)===null||i===void 0||i.capture("$feature_enrollment_update",C)}catch(E){this.$.error("Failed to capture early access feature enrollment",E)}}getEarlyAccessFeatures(A,I=!1,e){const t=this.Yd(c6A);!t||I?this.gv(A,e):A(t)}gv(A,I){var e=this;return Qa(function*(){const t=e.xa;if(!t)return;const o=I?`&${I.map(C=>`stage=${C}`).join("&")}`:"";let B;try{const C=yield t.sendRequest(`/api/early_access_features/?token=${t.projectToken}${o}`,{target:"api",method:"GET",sentAt:"query"});if(!C.json)return;B=C.json.earlyAccessFeatures,e.At({[c6A]:B})}catch(C){return void e.$.error("Early access feature request failed",C)}try{A(B)}catch(C){e.$.error("Early access feature callback failed",C)}})()}pv(){const A=this.getFlags(),I=this.getFlagVariants();return{flags:A.filter(e=>I[e]),flagVariants:Object.keys(I).filter(e=>I[e]).reduce((e,t)=>(e[t]=I[t],e),{})}}Gd(A){this.Vd();const{flags:I,flagVariants:e}=this.pv(),t=this.Sd;this.Sd=!0,this.featureFlagEventHandlers.forEach(o=>{try{o(I,e,{errorsLoading:A})}catch(B){this.$.error("Error while running feature flags callback",B)}}),this.Sd=t}setPersonPropertiesForFlags(A,I=!0){this.mv(A,I)}mv(A,I=!0){const e=this.Yd("$stored_person_properties")||{},t=A?.$set||(A?.$set_once?{}:A),o=A?.$set_once,B={};if(o)for(const C in o)({}).hasOwnProperty.call(o,C)&&(C in e||(B[C]=o[C]));this.At({[s3]:QI(QI(QI({},e),B),t)}),I&&this.reloadFeatureFlags()}unsetPersonPropertiesForFlags(A,I=!0){const e=QI({},this.Yd("$stored_person_properties")||{});A.forEach(t=>{delete e[t]}),this.At({[s3]:e}),I&&this.reloadFeatureFlags()}resetPersonPropertiesForFlags(A=!0){this.Pt(s3),A&&this.reloadFeatureFlags()}setGroupPropertiesForFlags(A,I=!0){const e=this.Yd("$stored_group_properties")||{},t=QI({},e);for(const o of Object.keys(A))t[o]=QI(QI({},e[o]),A[o]);this.At({[n3]:t}),I&&this.reloadFeatureFlags()}resetGroupPropertiesForFlags(A){if(A){const I=this.Yd("$stored_group_properties")||{};this.At({[n3]:QI(QI({},I),{},{[A]:{}})})}else this.Pt(n3)}reset(){this._d++,this.Kd(this.gd,"cancelled"),this.Kd(this.md,"cancelled"),this.kd=!1,this.vd={},this.fd={},this.tv=void 0,this.yd=!1,this.wd=!1,this.xd=!1,this.$anon_distinct_id=void 0,this.Xd(),this.dd=!1,this.Cd=0}};const BeI=zr("[FeatureFlags]");var Tlt=class{constructor(A,I=!1){this.yv=!1,this.update(A,I)}update(A,I){this.bv=((e,t)=>{var o,B,C,Q,i,E,n,s;return{bootstrap:{featureFlags:(o=(B=e.bootstrap)===null||B===void 0?void 0:B.featureFlags)!==null&&o!==void 0?o:void 0,featureFlagPayloads:(C=(Q=e.bootstrap)===null||Q===void 0?void 0:Q.featureFlagPayloads)!==null&&C!==void 0?C:void 0},remoteRequestsDisabled:t,featureFlagsDisabled:!!e.advanced_disable_feature_flags,onlyEvaluateSurveyFeatureFlags:!!e.advanced_only_evaluate_survey_feature_flags,deduplicateCallsPerSession:!!e.advanced_feature_flags_dedup_per_session,cacheTtlMs:e.feature_flag_cache_ttl_ms,refreshIntervalMs:(i=e.remote_config_refresh_interval_ms)!==null&&i!==void 0?i:3e5,idleRefreshBackoff:Ye(e.remote_config_refresh_interval_ms),requestTimeoutMs:e.feature_flag_request_timeout_ms,requestMaxRetries:Math.max(0,(E=e.feature_flag_request_max_retries)!==null&&E!==void 0?E:1),compression:e.disable_compression?void 0:"best-available",evaluationContexts:(n=(s=e.evaluation_contexts)!==null&&s!==void 0?s:e.evaluation_environments)!==null&&n!==void 0?n:[],flagKeys:cB(e.flag_keys)?e.flag_keys:void 0}})(A,I),!A.evaluation_environments||A.evaluation_contexts||this.yv||(BeI.warn("evaluation_environments is deprecated. Use evaluation_contexts instead. evaluation_environments will be removed in a future version."),this.yv=!0),Ye(A.flag_keys)||cB(A.flag_keys)||BeI.error("Invalid flag_keys found:",A.flag_keys,"Expected array of non-empty strings")}get(){return this.bv}};const CeI=g=>Aq(g)&&(g.name==="RangeError"&&g.message.indexOf("Maximum call stack size exceeded")===0||g.name==="InternalError"&&g.message==="too much recursion"),PR=zr("[Error tracking]"),pvA="webkit-masked-url:",qlt=[{value:"isolatedAPI.contexts.topHostname",exact:!1},{value:"No response from target",exact:!0}],Zlt=["chrome-extension://","moz-extension://","safari-extension:","safari-web-extension:",pvA],Olt=["__firefox__","__gCrWeb"],QeI="Refusing to render web experiment since the viewer is a likely bot",Wlt={icontains:(g,A)=>A.toLowerCase().indexOf(g.toLowerCase())>-1,not_icontains:(g,A)=>A.toLowerCase().indexOf(g.toLowerCase())===-1,regex:(g,A)=>pDA(A,g),not_regex:(g,A)=>!pDA(A,g),exact:(g,A)=>A===g,is_not:(g,A)=>A!==g},gf=zr("[Conversations]"),r5="Conversations not available yet.";function ieI(g,A){var I,e,t,o,B,C,Q;const i=(I=g?.flushIntervalMs)!==null&&I!==void 0?I:3e3,E=(e=g?.maxBufferSize)!==null&&e!==void 0?e:100,n=A?.consoleCapture?void 0:(t=g?.maxLogsPerInterval)!==null&&t!==void 0?t:1e3,s=Ye(n)?Math.max(E,2048):Math.max(E,n),r=QI(QI({},(function(){let a="",c="";try{var h;const l="u">typeof globalThis?globalThis:"u">typeof window?window:void 0,D=l==null||(h=l.navigator)===null||h===void 0?void 0:h.userAgent;D&&([a,c]=Z$g(D))}catch{}return(function(l,D){const d=(function(y){if(y)return{}.hasOwnProperty.call(RAI,y)?RAI[y]:y})(l);return QI(QI({},d?{"os.name":d}:{}),D?{"os.version":D}:{})})(a,c)})()),g?.resourceAttributes);return{serviceName:(o=(B=r?.["service.name"])!==null&&B!==void 0?B:g?.serviceName)!==null&&o!==void 0?o:A?.serviceNameDefault,serviceVersion:(C=r?.["service.version"])!==null&&C!==void 0?C:g?.serviceVersion,environment:(Q=r?.["deployment.environment"])!==null&&Q!==void 0?Q:g?.environment,resourceAttributes:r,beforeSend:g?.beforeSend,flushIntervalMs:i,maxBufferSize:E,maxQueueSize:s,maxBatchRecordsPerPost:100,rateCapWindowMs:i,maxLogsPerInterval:n,backgroundFlushBudgetMs:0,terminationFlushBudgetMs:0}}const Vlt=["debug","log","warn","error","info"],jlt=g=>{for(;g?.__rrweb_original__;)g=g.__rrweb_original__;return g},EeI="console",neI="__posthogHandledLogsRequestError",kvA=(g,A)=>{const I=g instanceof Error?g:new Error(A);return I[neI]=!0,I},seI=g=>!!g&&typeof g=="object"&&g[neI]===!0;var zlt=class{get _v(){return QI(QI({},this.$),{},{error:(...g)=>{g.some(seI)||this.$.error(...g)}})}constructor(g,A){var I;this.Ta=g,this.wv=A,this.name="logs",this.Sv=!1,this.xv=!1,this.$v=!1,this.$=zr("[logs]"),this.Wu=[],this.Cv=[],this.Cd=0,this.Tv=!1,this.Ci=!1,this.Iv=[],this.Mv=[],this.Ev=!1,this.Pv=!1,this.Rv=!1,this.Av=()=>{var e,t;this.Ci||(this.Cd=0,(e=this.Fv)===null||e===void 0||e.onReconnect(),(t=this.Ov)===null||t===void 0||t.onReconnect())},this.Sv=!!(!((I=g.get())===null||I===void 0)&&I.captureConsoleLogs)}get Dv(){return!0}Lv(){}Nv(){if(!this.Rv){try{this.jd=typeof window>"u"?void 0:window}catch{this.jd=void 0}this.jd&&(NE(this.jd,"online",this.Av),this.Rv=!0)}}qv(g,A,I,e){this.Nv();const t=ieI(this.Ta.get(),I);return[new Hht(this.jv(g,A),t,this._v,()=>this.wv(),o=>o(),void 0,e),t]}Bv(){const g=this.Ta.get();var A;return this.Fv&&this.zv===g||((A=this.Fv)===null||A===void 0||A.reset(),this.zv=g,[this.Fv,this.Hv]=this.qv(()=>this.Wu,I=>{this.Wu=I})),this.Fv}Uv(){const g=this.Ta.get();var A;return this.Ov&&this.Wv===g||((A=this.Ov)===null||A===void 0||A.reset(),this.Wv=g,[this.Ov,this.Vv]=this.qv(()=>this.Cv,I=>{this.Cv=I},{serviceNameDefault:"posthog-browser-logs",consoleCapture:!0},EeI)),this.Ov}setup(g){if(!this.Ci&&!this.Tv)return this.Tv=!0,this.xa=g,this.$=g.logger.createLogger("[logs]"),GvA(g.kv.initialize(),()=>{this.Ci||this.Bd(g)})}Bd(g){var A;this.Nv(),!((A=this.Ta.get())===null||A===void 0)&&A.captureConsoleLogs&&(this.Sv=!0),(this.Sv||this.Ta.remoteConfigWillArrive&&g.kv.get(this.Ta.captureHintKey))&&this.Gv();let I=!1;const e=g.onRemoteConfig(t=>{var o;I=t.ok&&((o=t.config.logs)===null||o===void 0?void 0:o.captureConsoleLogs)===!0,this.onRemoteConfig(t)});this.Ci?e.dispose():(this.qa=e,I||this.loadIfEnabled())}dispose(){var g,A,I,e,t,o,B;this.Ci||(this.Ci=!0,this.Qv(),(g=this.qa)===null||g===void 0||g.dispose(),this.qa=void 0,this.xa=void 0,this.$v=!1,(A=this.jd)===null||A===void 0||A.removeEventListener("online",this.Av),(I=this.Zv)===null||I===void 0||I.call(this),this.Zv=void 0,(e=this.Fv)===null||e===void 0||e.clearQueue(),(t=this.Ov)===null||t===void 0||t.clearQueue(),(o=this.Fv)===null||o===void 0||o.reset(),(B=this.Ov)===null||B===void 0||B.reset())}onRemoteConfig(g){var A,I;if(this.Ci)return;const e=g.ok?(A=g.config.logs)===null||A===void 0?void 0:A.captureConsoleLogs:void 0;hC(e)?this.Jv():((I=this.xa)===null||I===void 0||I.kv.set(this.Ta.captureHintKey,!!e),e?(this.Sv=!0,this.xv||this.Gv(),this.loadIfEnabled()):this.Jv())}reset(){var g,A,I,e;this.Qv(),(g=this.Fv)===null||g===void 0||g.clearQueue(),this.Wu=[],(A=this.Fv)===null||A===void 0||A.reset(),(I=this.Ov)===null||I===void 0||I.clearQueue(),this.Cv=[],(e=this.Ov)===null||e===void 0||e.reset(),this.Cd=0}captureLog(g){!this.Ci&&this.xa&&this.Bv().captureLog(g)}captureConsoleLog(g){!this.Ci&&this.xa&&this.Uv().captureLog(g)}captureBufferedConsoleLog(g,A,I){!this.Ci&&this.xa&&this.Uv().captureLog(g,{context:A,occurredAtMs:I})}hd(){var g;this.Qv(),(g=this.Ov)===null||g===void 0||g.clearQueue(),this.Cv=[]}Jv(){this.Sv||this.Qv()}Gv(){var g;if(this.Ev||!(!((g=this.jd)===null||g===void 0)&&g.console))return;const A=ieI(this.Ta.get()).maxBufferSize;let I=!0;this.Mv.push(()=>{I=!1});for(const e of Vlt){let t;try{t=jlt(this.jd.console[e])}catch{continue}t&&this.Mv.push(uq(this.jd.console,e,o=>{const B=(...C)=>{try{I&&this.Kv(e,C,A)}catch{}return o.apply(this.jd.console,C)};return B.__rrweb_original__=t,B}))}this.Ev=!0,this.Xv=setTimeout(()=>{this.Qv()},3e4)}Kv(g,A,I){var e;if(this.Ev&&!this.Pv&&A.length!==0)if(!((e=this.xa)===null||e===void 0)&&e.canCapture){if(I>this.Iv.length){this.Pv=!0;try{this.Iv.push({level:g,args:A,occurredAtMs:Date.now(),context:this.wv()})}finally{this.Pv=!1}}}else this.Qv()}Qv(){if(this.Iv=[],this.Ev){this.Ev=!1,this.Xv&&(clearTimeout(this.Xv),this.Xv=void 0);for(const g of this.Mv)g();this.Mv=[]}}Yv(){const g=this.Iv;return this.Qv(),g}get logger(){return this.tf||(this.tf={trace:(g,A)=>this.captureLog({body:g,level:"trace",attributes:A}),debug:(g,A)=>this.captureLog({body:g,level:"debug",attributes:A}),info:(g,A)=>this.captureLog({body:g,level:"info",attributes:A}),warn:(g,A)=>this.captureLog({body:g,level:"warn",attributes:A}),error:(g,A)=>this.captureLog({body:g,level:"error",attributes:A}),fatal:(g,A)=>this.captureLog({body:g,level:"fatal",attributes:A})}),this.tf}flushLogs(g){this.xa&&(g?this.ef(g):(this.Fv&&this.Fv.flush().catch(A=>this.if(A)),this.Ov&&this.Ov.flush().catch(A=>this.if(A))))}flush(){var g=this;return Qa(function*(){var A,I;const e=(A=g.Fv)===null||A===void 0?void 0:A.flush().catch(o=>g.if(o)),t=(I=g.Ov)===null||I===void 0?void 0:I.flush().catch(o=>g.if(o));yield e,yield t})()}if(g){seI(g)||this.$.error("PostHog logs flush failed:",g)}loadIfEnabled(){if(this.Ci||!this.Sv||this.xv||this.$v)return;const g=this.Lv();if(g){this.$v=!0;try{g((A,I)=>{if(this.$v=!1,!this.Ci&&this.Sv)if(A||!I)this.$.error("Could not load logs script",A),this.Qv();else{const e=this.Yv();this.Zv=I.initialize(this.xa),this.xv=!0,e.length>0&&I.replay(this.xa,e)}})}catch(A){throw this.$v=!1,A}}else this.Qv()}jv(g,A){const I=this.xa;return{get isDisabled(){return!1},get optedOut(){return!I.canCapture},getPersistedProperty:e=>e===dx.LogsQueue?g():void 0,setPersistedProperty(e,t){e===dx.LogsQueue&&A(t??[])},js:e=>this.js(e),getLibraryId:()=>I.library.name,getLibraryVersion:()=>I.library.version}}js(g){return new Promise(A=>{if(vgI(this.Cd,3))return void A({kind:"fatal",error:kvA(void 0,"logs endpoint is unreachable, dropping batch")});let I=!1;const e=B=>{I||(I=!0,clearTimeout(t),A(B))},t=setTimeout(()=>{this.$.warn("Logs request timed out before receiving a response"),e({kind:"retry-later",error:kvA(void 0,"logs request timed out")})},9e4),o=this.Dv;this.xa.sendRequest("/i/v1/logs",{method:"POST",query:{token:this.xa.projectToken},body:g,compression:"best-available",timeoutMs:6e4}).then(B=>{var C;const Q=B.statusCode;this.nf(Q,o),Q>=200&&300>Q?e({kind:"ok"}):Q===413?e({kind:"too-large"}):Q!==0&&Q!==408&&Q!==429&&500>Q?e({kind:"fatal",error:new Error(`logs request failed with status ${Q}`)}):Q===0?(B.error||this.$.warn("Logs request failed before receiving an HTTP response"),e({kind:"retry-later",error:kvA(B.error,"logs request failed before receiving an HTTP response")})):e({kind:"retry-later",error:(C=B.error)!==null&&C!==void 0?C:new Error(`logs request failed with status ${Q}`)})},B=>{e({kind:"retry-later",error:B})})})}nf(g,A){(g!==0||A)&&(this.Cd=TgI(g,this.Cd,3,()=>this.$.warn("Log requests are failing before receiving an HTTP response; this can happen due to network issues, CORS, browser blocking, or ad blockers. Stopped sending logs; will try again when connectivity changes.")))}ef(g){this.Wu.length>0&&this.sf(g,this.Wu,this.Hv,this.xa.library.name,A=>{this.Wu=A}),this.Cv.length>0&&this.sf(g,this.Cv,this.Vv,EeI,A=>{this.Cv=A})}sf(g,A,I,e,t){if(A.length===0)return;const o=A.map(C=>C.record);t([]);const B=FAI(o,xAI(I,this.xa.library.name,this.xa.library.version),e,this.xa.library.version);this.xa.sendRequest("/i/v1/logs",{method:"POST",query:{token:this.xa.projectToken},body:B,compression:"best-available",transport:g,timeoutMs:6e4}).catch(C=>this.if(C))}};const SDA=zr("[NetworkMetrics]"),MvA=()=>{var g;return!(Se==null||(g=Se.performance)===null||g===void 0)&&g.now?Se.performance.now():Date.now()},Xlt={"http:":80,"https:":443},$lt=new Set(["CONNECT","DELETE","GET","HEAD","OPTIONS","PATCH","POST","PUT","TRACE"]),aeI=(g,A)=>{var I;const e=String(A);return{method:String(g).toUpperCase(),url:((I=cJ(e))===null||I===void 0?void 0:I.href)||e}},SvA=(g,A,I,e,t,o,B=!1)=>{try{var C,Q;const i=t();if(!i)return;const E=I||void 0,n=MvA()-e,s=cJ(A.url);if(s&&s.protocol!=="http:"&&s.protocol!=="https:")return;const r={url:s?.href||A.url,method:A.method},a=C0(i.name)?i.name(r):qC(i.name)?i.name:"http.client.request.duration";if(!a)return;const c=B&&!E?void 0:((l,D)=>l?400>l?void 0:String(l):D?.name||"_OTHER")(E,o),h=QI(QI(QI(QI(QI({},(l=>{const D=$lt.has(l)?l:"_OTHER";return QI({"http.request.method":D},D==="_OTHER"&&l!==D?{"http.request.method_original":l}:{})})(r.method)),s?(l=>{return{"server.address":l.hostname.startsWith("[")&&l.hostname.endsWith("]")?l.hostname.slice(1,-1):l.hostname,"server.port":Number(l.port)||Xlt[l.protocol],"url.scheme":l.protocol.slice(0,-1),"url.template":(D=l.pathname,D.split("/").map(d=>(y=>/^\d+$/.test(y)||y.length>=8&&/^[0-9a-f-]*\d[0-9a-f-]*$/i.test(y))(d)?":id":d).join("/"))};var D})(s):{}),E?{"http.response.status_code":E}:{}),c?{"error.type":c}:{}),(C=i.attributes)===null||C===void 0?void 0:C.call(i,r,{status:E,durationMs:n}));(Q=g.metrics)===null||Q===void 0||Q.histogram(a,n,{unit:"ms",attributes:h})}catch(i){SDA.error("Failed to record network metric",i)}},reI=()=>{},ADt=(g,A)=>C0(Se?.fetch)?uq(Se,"fetch",I=>function(...e){const t=MvA(),o=I.apply(this,e);if(!A())return o;try{var B,C,Q;const[i,E]=e,n=aeI((B=(C=E?.method)!==null&&C!==void 0?C:i?.method)!==null&&B!==void 0?B:"GET",(Q=i?.url)!==null&&Q!==void 0?Q:i);return o.then(s=>(SvA(g,n,s?.status,t,A,void 0,!0),s),s=>{throw SvA(g,n,void 0,t,A,s),s})}catch(i){return SDA.error("Failed to observe fetch",i),o}}):reI,gDt=(g,A)=>{var I;const e=Se==null||(I=Se.XMLHttpRequest)===null||I===void 0?void 0:I.prototype;if(!e)return reI;const t=new WeakMap,o=uq(e,"open",C=>function(...Q){try{aII.has(this)||t.set(this,aeI(Q[0],Q[1]))}catch(i){SDA.error("Failed to observe XHR open",i)}return C.apply(this,Q)}),B=uq(e,"send",C=>function(...Q){let i;try{const E=t.get(this);if(E&&A()){const n=MvA();i=()=>{this.removeEventListener("loadend",i),SvA(g,E,this.status,n,A)},NE(this,"loadend",i)}}catch(E){SDA.error("Failed to observe XHR send",E)}try{return C.apply(this,Q)}catch(E){throw i&&this.removeEventListener("loadend",i),E}});return()=>{o(),B()}},ceI=new WeakMap,IDt=new Set(["$comment","$defs","$id","$schema","additionalProperties","default","definitions","deprecated","description","examples","minProperties","properties","readOnly","required","title","type","writeOnly"]),eDt={maxStringLength:2048,truncationSuffix:"..."},tDt={maxStringLength:2048,truncationSuffix:"..."};function heI(g){if(g)return g===!0?{intent:!0,model:!0}:{intent:g.intent!==!1,model:g.model!==!1}}function fvA(g,A){return{}.hasOwnProperty.call(g,A)}function RvA(g,A){const I=Object.create(g);return A&&Object.defineProperty(I,"inputSchema",{configurable:!0,enumerable:!0,writable:!0,value:A}),I}function leI(g,A,I=!1){if(!qC(g))return;const e=g.trim();return e?(I?kAI(e,eDt):e).slice(0,A):void 0}function DeI(g){try{return yC(g)&&g.isError===!0}catch{return!1}}function deI(g){return kAI(g||"Unknown error",tDt).slice(0,2048)}function oDt(g,A){try{return deI(A?(function(I){try{return!yC(I)||!cB(I.content)?void 0:I.content.filter(e=>yC(e)&&e.type==="text"&&qC(e.text)).map(e=>e.text).join(" ").trim()||void 0}catch{return}})(g):yC(g)&&qC(g.message)?g.message:qC(g)?g:String(g))}catch{return"Unknown error"}}function BDt(g,A,I){return A.errorResult?[{type:"Error",value:I,mechanism:{type:"generic",handled:!0,synthetic:!0,exception_id:0}}]:g.buildProperties(A.error,{handled:!0}).$exception_list.map(e=>QI(QI({},e),{},{value:deI(e.value)}))}function CDt(g,A){if(A)return"Error";try{if(!yC(g))return"Error";let I=qC(g.name)?g.name.trim():"";const e=g.constructor;return I&&I!=="Error"||!C0(e)||e.name==="Error"||(I=e.name),(I||"Error").slice(0,256)}catch{return"Error"}}function QDt(g,A){return{message:oDt(g,A),type:CDt(g,A)}}const fDA={featureFlags:class extends vlt{constructor(g){const A=new Tlt(g.config,g.Hu());super(A),this.name=KII,this._instance=g,this.rf=A}get Ld(){return this._instance.persistence}updateConfig(g,A){this.rf.update(g,A),this.Nd()}}},iDt={sessionRecording:class{get Ar(){return this._instance.config}get fc(){return this._instance.persistence}get started(){var g;return!!(!((g=this.af)===null||g===void 0)&&g.isStarted)}get status(){var g,A;return this.lf==="awaiting_config"||this.lf==="missing_config"?this.lf:(g=(A=this.af)===null||A===void 0?void 0:A.status)!==null&&g!==void 0?g:this.lf}constructor(g){if(this._instance=g,this._forceAllowLocalhostNetworkCapture=!1,this.lf=yvA,this.uf=void 0,this.cf=!1,this.Je=(()=>{var A,I;if(!ro?.visibilityState||ro.visibilityState==="visible")return!0;const e=Se==null||(A=Se.performance)===null||A===void 0||(I=A.getEntriesByType)===null||I===void 0?void 0:I.call(A,"visibility-state");return!e?.length||e.some(t=>t.name==="visible")})(),this.sn=()=>{var A,I;ro?.visibilityState==="visible"&&(this.Je=!0,(A=this.af)===null||A===void 0||(I=A.setDocumentWasEverVisible)===null||I===void 0||I.call(A,!0))},!this._instance.sessionManager)throw DJ.error("started without valid sessionManager"),new Error("[SessionRecording] started without valid sessionManager. This is a bug.");if(this.Ar.cookieless_mode==="always")throw new Error('[SessionRecording] cannot be used with cookieless_mode="always"');ro?.addEventListener&&NE(ro,"visibilitychange",this.sn)}initialize(){this.startIfEnabledOrStop()}dispose({discardBufferedEvents:g=!1}={}){var A;this.cf=!0,ro==null||(A=ro.removeEventListener)===null||A===void 0||A.call(ro,"visibilitychange",this.sn),g?this.hf(!0):this.stopRecording()}get df(){var g;const A=!!(!((g=this._instance.get_property("$session_recording_remote_config"))===null||g===void 0)&&g.enabled),I=!this.Ar.disable_session_recording,e=this.Ar.disable_session_recording||this._instance.consent.isOptedOut();return Se&&A&&I&&!e}startIfEnabledOrStop(g){var A;if(this.cf||this.df&&(!((A=this.af)===null||A===void 0)&&A.isStarted))return;const I=!Ye(Object.assign)&&!Ye(Array.from);this.df&&I?(this.vf(g),DJ.info("starting")):(this.lf=yvA,this.stopRecording())}vf(g){var A,I;if(this.df)if(this.lf!=="awaiting_config"&&this.lf!=="missing_config"&&(this.lf=jII),(UB==null||(A=UB.__PosthogExtensions__)===null||A===void 0||(A=A.rrweb)===null||A===void 0?void 0:A.record)&&((I=UB.__PosthogExtensions__)===null||I===void 0?void 0:I.initSessionRecording))this.ff(g);else{var e,t;const o=this._instance.sessionManager;(e=UB.__PosthogExtensions__)===null||e===void 0||(t=e.loadExternalDependency)===null||t===void 0||t.call(e,this._instance,this.pf,B=>{if(!this.cf&&this.df&&this._instance.sessionManager===o)return B?(this._instance.register_for_session({$sdk_debug_recording_script_not_loaded:!0}),DJ.error("could not load recorder",B)):void this.ff(g);this.lf="disabled"})}}stopRecording(){var g,A;(g=this.uf)===null||g===void 0||g.call(this),this.uf=void 0,(A=this.af)===null||A===void 0||A.stop()}hf(g=!1){var A,I;(A=this.uf)===null||A===void 0||A.call(this),this.uf=void 0,(I=this.af)===null||I===void 0||I.discard({discardProducerEvents:g})}gf(){var g,A;(g=this.fc)===null||g===void 0||g.unregister("$session_is_sampled"),(A=this.fc)===null||A===void 0||A.unregister("$replay_sample_rate")}mf(g,A){if(hC(g))return null;const I=Gh(g)?g:parseFloat(g);return typeof(e=I)!="number"||!Number.isFinite(e)||0>e||e>1?(DJ.warn(`${A} must be between 0 and 1. Ignoring invalid value:`,g),null):I;var e}yf(g){if(this.fc){var A,I;const e=this.fc,t=()=>{var o;const B=g.sessionRecording===!1?void 0:g.sessionRecording,C=this.mf((o=this.Ar.session_recording)===null||o===void 0?void 0:o.sampleRate,"session_recording.sampleRate"),Q=this.mf(B?.sampleRate,"remote config sampleRate"),i=C??Q;hC(i)&&this.gf();const E=B?.minimumDurationMilliseconds;e.register({[egA]:QI(QI({cache_timestamp:Date.now(),enabled:!!B},B),{},{networkPayloadCapture:QI({capturePerformance:g.capturePerformance},B?.networkPayloadCapture),canvasRecording:{enabled:B?.recordCanvas,fps:B?.canvasFps,quality:B?.canvasQuality},sampleRate:i,minimumDurationMilliseconds:Ye(E)?null:E,endpoint:B?.endpoint,triggerMatchType:B?.triggerMatchType,masking:B?.masking,urlTriggers:B?.urlTriggers,version:B?.version,triggerGroups:B?.triggerGroups})})};t(),(A=this.uf)===null||A===void 0||A.call(this),this.uf=(I=this._instance.sessionManager)===null||I===void 0?void 0:I.onSessionId(t)}}onRemoteConfig(g){const A=g.ok?g.config:void 0;return A&&"sessionRecording"in A?A.sessionRecording===!1?(this.yf(A),void this.hf()):(this.yf(A),void this.startIfEnabledOrStop()):(this.lf==="awaiting_config"&&(this.lf="missing_config",this._instance.register_for_session({[x6A]:!0}),DJ.warn("config refresh failed, recording will not start until page reload")),void this.startIfEnabledOrStop())}log(g,A="log"){var I;!((I=this.af)===null||I===void 0)&&I.log?this.af.log(g,A):DJ.warn("log called before recorder was ready")}get pf(){var g,A;const I=(g=this._instance)===null||g===void 0||(g=g.persistence)===null||g===void 0?void 0:g.get_property(egA);return(I==null||(A=I.scriptConfig)===null||A===void 0?void 0:A.script)||"lazy-recorder"}bf(){const g=this._instance.get_property(egA);if(!g)return!1;let A;try{A=typeof g=="object"?g:JSON.parse(g)}catch(I){return DJ.warn("persisted remote config for session recording is invalid and will be ignored",I),!1}return!hC(A.cache_timestamp)&&36e5>=Date.now()-A.cache_timestamp}ff(g){var A,I,e;if(!this.cf&&this.df&&this._instance.sessionManager){if(!(!((A=UB.__PosthogExtensions__)===null||A===void 0)&&A.initSessionRecording))return DJ.warn("Called on script loaded before session recording is available. This can be caused by adblockers."),void this._instance.register_for_session({[N6A]:!0});var t;if(this.af||(this.af=(t=UB.__PosthogExtensions__)===null||t===void 0?void 0:t.initSessionRecording(this._instance,this.Je),this.af._forceAllowLocalhostNetworkCapture=this._forceAllowLocalhostNetworkCapture),!this.bf())return this.lf==="missing_config"||this.lf==="awaiting_config"?void 0:(this.lf="awaiting_config",DJ.info("persisted remote config is stale, requesting fresh config before starting"),void new eII(this._instance).load());this.lf=jII,(I=(e=this.af).setDocumentWasEverVisible)===null||I===void 0||I.call(e,this.Je),this.af.start(g)}else this.lf=yvA}onRRwebEmit(g){var A,I;(A=this.af)===null||A===void 0||(I=A.onRRwebEmit)===null||I===void 0||I.call(A,g)}overrideLinkedFlag(){var g,A;this.af||(A=this.fc)===null||A===void 0||A.register({$replay_override_linked_flag:!0}),(g=this.af)===null||g===void 0||g.overrideLinkedFlag()}overrideSampling(){var g,A;this.af||(A=this.fc)===null||A===void 0||A.register({$replay_override_sampling:!0}),(g=this.af)===null||g===void 0||g.overrideSampling()}overrideTrigger(g){var A,I;this.af||(I=this.fc)===null||I===void 0||I.register({[g==="url"?"$replay_override_url_trigger":"$replay_override_event_trigger"]:!0}),(A=this.af)===null||A===void 0||A.overrideTrigger(g)}get sdkDebugProperties(){var g;const A={};for(const e of Flt){var I;const t=(I=this._instance.sessionPersistence)===null||I===void 0?void 0:I.get_property(e);Ye(t)||(A[e]=t)}return QI(QI({},A),((g=this.af)===null||g===void 0?void 0:g.sdkDebugProperties)||{$recording_status:this.status})}tryAddCustomEvent(g,A){var I;return!!(!((I=this.af)===null||I===void 0)&&I.tryAddCustomEvent(g,A))}flushBeforeIdentityReset(){var g,A;(g=this.af)===null||g===void 0||(A=g.flushBeforeIdentityReset)===null||A===void 0||A.call(g)}}},EDt={autocapture:class extends dlt{constructor(g){super(new flt(g)),this.instance=g}},historyAutocapture:class{constructor(g){this._f=!1,this._instance=g,this.wf=this.kf()}initialize(){this.startIfEnabled()}get isEnabled(){const g=this.Sf();return!!(g.path||g.search||this.xf(g))}startIfEnabled(){this.isEnabled&&(Dt.info("History API monitoring enabled, starting..."),this.monitorHistoryChanges())}startIfEnabledOrStop(){this.stop(),this.wf=this.kf(),this.startIfEnabled()}stop(){this.$f&&this.$f(),this.$f=void 0,this.Cf&&this.Cf(),this.Cf=void 0,Dt.info("History API monitoring stopped")}monitorHistoryChanges(){Se&&Se.history&&(this.Tf("pushState"),this.Tf("replaceState"),this.If(),this.xf()&&this.Mf())}Tf(g){var A;if(!Se||!((A=Se.history[g])===null||A===void 0)&&A.__posthog_wrapped__)return;const I=this;uq(Se.history,g,e=>function(t,o,B){var C;I.Ef(B)&&I.Pf(),e.call(this,t,o,B),I.Rf(g,!I._f&&(Se==null||(C=Se.event)===null||C===void 0?void 0:C.type)!=="popstate")})}kf(){const g=Se?.location;if(g?.pathname)return{pathname:g.pathname,search:g.search,hash:g.hash}}Sf(){const g=this._instance.config.capture_pageview;return g==="history_change"?{path:!0}:yC(g)?g:{}}xf(g=this.Sf()){return!!g.hash&&!this._instance.config.disable_capture_url_hashes}Af(g){const A=this.Sf(),I=this.wf;return!(!I||!(A.path&&g.pathname!==I.pathname||A.search&&g.search!==I.search||this.xf(A)&&g.hash!==I.hash))}Rf(g,A=!1){try{A||this.Pf();const I=this.kf();if(!I)return;if(this.Af(I)){const e=()=>this._instance.capture(F6A,{navigation_type:g});A?(this.Ff=e,Promise.resolve().then(()=>this.Pf())):e()}this.wf=I}catch(I){Dt.error(`Error capturing ${g} pageview`,I)}}Ef(g){var A,I;return!(hC(g)||!Se)&&((A=cJ(String(g)))===null||A===void 0?void 0:A.href)!==((I=Se.location)===null||I===void 0?void 0:I.href)}Pf(){const g=this.Ff;if(g){this.Ff=void 0,this._f=!0;try{g()}catch(A){Dt.error("Error capturing deferred pageview",A)}finally{this._f=!1}this.wf=this.kf()}}If(){if(this.$f)return;const g=()=>{this.Rf("popstate")};NE(Se,"popstate",g),this.$f=()=>{Se&&Se.removeEventListener("popstate",g)}}Mf(){if(this.Cf)return;const g=()=>{this.Rf("hashchange")};NE(Se,"hashchange",g),this.Cf=()=>{Se&&Se.removeEventListener("hashchange",g)}}},heatmaps:class{get Ar(){return this.instance.config}constructor(g){var A;this.Of=!1,this.ll=!1,this.Df=null,this.instance=g,this.Of=!!(!((A=this.instance.persistence)===null||A===void 0)&&A.props[w6A]),this.rageclicks=new JII(g.config.rageclick)}initialize(){this.startIfEnabled()}get flushIntervalMilliseconds(){let g=5e3;return yC(this.Ar.capture_heatmaps)&&this.Ar.capture_heatmaps.flush_interval_milliseconds&&(g=this.Ar.capture_heatmaps.flush_interval_milliseconds),g}get isEnabled(){return hC(this.Ar.capture_heatmaps)?hC(this.Ar.enable_heatmaps)?this.Of:this.Ar.enable_heatmaps:this.Ar.capture_heatmaps!==!1}startIfEnabled(){if(this.isEnabled){if(this.ll)return;Ult.info("starting..."),this.Lf(),this.sn()}else{var g;clearInterval((g=this.Df)!==null&&g!==void 0?g:void 0),this.Nf(),this.getAndClearBuffer()}}onRemoteConfig(g){if(!g.ok)return;const A=g.config;if(!("heatmaps"in A))return;const I=!!A.heatmaps;this.instance.persistence&&this.instance.persistence.register({[w6A]:I}),this.Of=I,this.startIfEnabled()}getAndClearBuffer(){const g=this.Rt;return this.Rt=void 0,g}qf(g){wvA(g.originalEvent)&&this.$r(g.originalEvent,"deadclick")}sn(){this.Df&&clearInterval(this.Df),this.Df=ro?.visibilityState==="visible"?setInterval(this.Yu.bind(this),this.flushIntervalMilliseconds):null}Lf(){Se&&ro&&(this.jf=this.Yu.bind(this),NE(Se,sDA,this.jf),this.Bf=g=>this.$r(g||Se?.event),NE(ro,"click",this.Bf,{capture:!0}),this.zf=g=>this.Hf(g||Se?.event),NE(ro,"mousemove",this.zf,{capture:!0}),this.Uf=new PgI(this.instance,J0t,this.qf.bind(this)),this.Uf.startIfEnabledOrStop(),this.Wf=this.sn.bind(this),NE(ro,tq,this.Wf),this.ll=!0)}Nf(){var g;Se&&ro&&(this.jf&&Se.removeEventListener(sDA,this.jf),this.Bf&&ro.removeEventListener("click",this.Bf,{capture:!0}),this.zf&&ro.removeEventListener("mousemove",this.zf,{capture:!0}),this.Wf&&ro.removeEventListener(tq,this.Wf),clearTimeout(this.Vf),(g=this.Uf)===null||g===void 0||g.stop(),this.ll=!1)}Gf(g,A){const I=this.instance.scrollManager.scrollY(),e=this.instance.scrollManager.scrollX(),t=this.instance.scrollManager.scrollElement(),o=(function(B,C,Q){let i=B;for(;i&&JR(i)&&!vw(i,"body");){if(i===Q)return!1;let r;try{var E,n,s;r=(E=(n=(s=i.ownerDocument)===null||s===void 0?void 0:s.defaultView)!==null&&n!==void 0?n:Se)===null||E===void 0?void 0:E.getComputedStyle(i).position}catch{return!1}if(yB(C,r))return!0;i=ugI(i)}return!1})(CgA(g),["fixed","sticky"],t);return{x:g.clientX+(o?0:e),y:g.clientY+(o?0:I),target_fixed:o,type:A}}$r(g,A="click"){var I;if(DgI(g.target)||!wvA(g))return;const e=this.Gf(g,A);!((I=this.rageclicks)===null||I===void 0)&&I.isRageClick(g.clientX,g.clientY,new Date().getTime())&&MgI(CgA(g),this.instance.config.rageclick)&&this.Qs(QI(QI({},e),{},{type:"rageclick"})),this.Qs(e)}Hf(g){!DgI(g.target)&&wvA(g)&&(clearTimeout(this.Vf),this.Vf=setTimeout(()=>{this.Qs(this.Gf(g,"mousemove"))},500))}Qs(g){if(!Se)return;const A=this.Ar.disable_capture_url_hashes?i3(Se.location.href):Se.location.href,I=this.Ar.custom_personal_data_properties,e=this.Ar.mask_personal_data_properties?[...hq,...I||[]]:[],t=EgA(A,e,ngA);this.Rt=this.Rt||{},this.Rt[t]||(this.Rt[t]=[]),this.Rt[t].push(g)}Yu(){this.Rt&&!sk(this.Rt)&&this.instance.capture("$$heatmap",{$heatmap_data:this.getAndClearBuffer()})}},deadClicksAutocapture:PgI,webVitalsAutocapture:class{constructor(g){var A;this._instance=g,this.Of=!1,this.ll=!1,this.Rt={navigationKey:void 0,url:void 0,metrics:[],firstMetricTimestamp:void 0},this.Qf=(I=!1)=>{clearTimeout(this.Zf),this.Zf=void 0,this.Rt.metrics.length!==0&&(this._instance.capture("$web_vitals",QI({$current_url:this.Rt.url},this.Rt.metrics.reduce((e,t)=>QI(QI({},e),{},{[`$web_vitals_${t.name}_event`]:QI({},t),[`$web_vitals_${t.name}_value`]:t.value}),{})),I?{transport:"sendBeacon",send_instantly:!0}:void 0),this.Rt={navigationKey:void 0,url:void 0,metrics:[],firstMetricTimestamp:void 0})},this.Jf=I=>{var e;if(this.Rt=this.Rt||{navigationKey:void 0,url:void 0,metrics:[],firstMetricTimestamp:void 0},hC(I?.name)||hC(I?.value))return void s5.error("Invalid metric received",I);const t=typeof I.navigationURL=="string"?I.navigationURL:void 0,o=this.Kf(t);if(Ye(o))return;const B=Gh(I.navigationId)||typeof I.navigationId=="string"?`navigation:${I.navigationId}`:`url:${o}`;if(this.Xf&&I.value>=this.Xf)return void s5.error("Ignoring metric with value >= "+this.Xf,I);this.Rt.navigationKey!==B&&(this.Qf(),this.Zf=setTimeout(this.Qf,this.flushToCaptureTimeoutMs)),Ye(this.Rt.navigationKey)&&(this.Rt.navigationKey=B,this.Rt.url=o),this.Rt.firstMetricTimestamp=Ye(this.Rt.firstMetricTimestamp)?Date.now():this.Rt.firstMetricTimestamp;const C=(e=this._instance.sessionManager)===null||e===void 0?void 0:e.checkAndGetSessionAndWindowId(!0),Q=QI(QI(QI({},I),t?{navigationURL:o}:{}),{},{$current_url:o,timestamp:Date.now()});if(delete Q.entries,yC(I.attribution)&&this.attributionMetrics.indexOf(I.name)>-1){const i={};for(const E of xlt){const n=E==="url"&&typeof I.attribution[E]=="string"?this.Kf(I.attribution[E]):I.attribution[E];Ye(n)||(i[E]=n)}Q.attribution=i}else delete Q.attribution;Ye(C)||(Q.$session_id=C.sessionId,Q.$window_id=C.windowId),this.Rt.metrics.push(Q),this.Rt.metrics.length===this.allowedMetrics.length&&this.Qf()},this.Yf=()=>{if(this.ll)return;let I,e,t,o,B=!1;const C=UB.__PosthogExtensions__,Q=C?.postHogWebVitalsCallbacksByFlavor,i=Q?.[this.tp]||(this.tp==="web-vitals"&&Ye(Q)?C?.postHogWebVitalsCallbacks:void 0);if(!Ye(i)){const r=i.withoutAttribution,a=this.attributionMetrics;B=!Ye(r),I=a.indexOf("LCP")>-1?i.onLCP:r?.onLCP||i.onLCP,e=a.indexOf("CLS")>-1?i.onCLS:r?.onCLS||i.onCLS,t=a.indexOf("FCP")>-1?i.onFCP:r?.onFCP||i.onFCP,o=a.indexOf("INP")>-1?i.onINP:r?.onINP||i.onINP}if(!(I&&e&&t&&o))return void s5.error("web vitals callbacks not loaded - not starting");const E={reportSoftNavs:this.useSoftNavs},n=B&&this.attributionMetrics.indexOf("INP")>-1?QI(QI({},E),{},{includeProcessedEventEntries:!1}):E;this.allowedMetrics.indexOf("LCP")>-1&&I(this.Jf.bind(this),E),this.allowedMetrics.indexOf("CLS")>-1&&e(this.Jf.bind(this),E),this.allowedMetrics.indexOf("FCP")>-1&&t(this.Jf.bind(this),E),this.allowedMetrics.indexOf("INP")>-1&&o(this.Jf.bind(this),n);const s=Se?.document;NE(s,tq,()=>{s?.visibilityState==="hidden"&&this.Qf(!0)}),NE(Se,"pagehide",()=>this.Qf(!0)),this.ll=!0},this.Of=!!(!((A=this._instance.persistence)===null||A===void 0)&&A.props[m6A]),this.startIfEnabled()}get ep(){return this._instance.config.capture_performance}get allowedMetrics(){var g,A;const I=yC(this.ep)?(g=this.ep)===null||g===void 0?void 0:g.web_vitals_allowed_metrics:void 0;return hC(I)?((A=this._instance.persistence)===null||A===void 0?void 0:A.props.$web_vitals_allowed_metrics)||VII:I}get flushToCaptureTimeoutMs(){return(yC(this.ep)?this.ep.web_vitals_delayed_flush_ms:void 0)||5e3}get attributionMetrics(){const g=yC(this.ep)?this.ep.web_vitals_attribution:void 0;return Fm(g)?g?VII:[]:cB(g)?g:Nlt}get useAttribution(){return this.attributionMetrics.length>0}get useSoftNavs(){const g=yC(this.ep)?this.ep.__preview_web_vitals_soft_navs:void 0;return g!=null&&g}get Xf(){const g=yC(this.ep)&&Gh(this.ep.__web_vitals_max_value)?this.ep.__web_vitals_max_value:WII;return g>0&&6e4>=g?WII:g}get isEnabled(){const g=Ca?.protocol;if(g!=="http:"&&g!=="https:")return s5.info("Web Vitals are disabled on non-http/https protocols"),!1;const A=yC(this.ep)?this.ep.web_vitals:Fm(this.ep)?this.ep:void 0;return Fm(A)?A:this.Of}startIfEnabled(){this.isEnabled&&!this.ll&&(s5.info("enabled, starting..."),this.Ml(this.Yf))}onRemoteConfig(g){if(!g.ok)return;const A=g.config;if(!("capturePerformance"in A))return;const I=yC(A.capturePerformance)&&!!A.capturePerformance.web_vitals,e=yC(A.capturePerformance)?A.capturePerformance.web_vitals_allowed_metrics:void 0;this._instance.persistence&&(this._instance.persistence.register({[m6A]:I}),this._instance.persistence.register({[ZAI]:e})),this.Of=I,this.startIfEnabled()}get tp(){return this.useSoftNavs?this.useAttribution?"web-vitals-with-attribution-soft-navs":"web-vitals-soft-navs":this.useAttribution?"web-vitals-with-attribution":"web-vitals"}Ml(g){var A;const I=UB.__PosthogExtensions__,e=this.tp,t=I?.postHogWebVitalsCallbacksByFlavor;t?.[e]||e==="web-vitals"&&Ye(t)&&I?.postHogWebVitalsCallbacks?g():I==null||(A=I.loadExternalDependency)===null||A===void 0||A.call(I,this._instance,e,o=>{o?s5.error("failed to load script",o):g()})}Kf(g){const A=g||Se?.location.href;if(!A)return void s5.error("Could not determine current URL");const I=this._instance.config.disable_capture_url_hashes?i3(A):A,e=this._instance.config.custom_personal_data_properties,t=this._instance.config.mask_personal_data_properties?[...hq,...e||[]]:[];return EgA(I,t,ngA)}}},nDt={exceptionObserver:class{constructor(g){var A;this.Yf=()=>{var I;if(!Se||!this.isEnabled||!(!((I=UB.__PosthogExtensions__)===null||I===void 0)&&I.errorWrappingFunctions))return;const e=UB.__PosthogExtensions__.errorWrappingFunctions.wrapOnError,t=UB.__PosthogExtensions__.errorWrappingFunctions.wrapUnhandledRejection,o=UB.__PosthogExtensions__.errorWrappingFunctions.wrapConsoleError;try{!this.np&&this.Ar.capture_unhandled_errors&&(this.np=e(this.captureException.bind(this))),!this.sp&&this.Ar.capture_unhandled_rejections&&(this.sp=t(this.captureException.bind(this))),!this.rp&&this.Ar.capture_console_errors&&(this.rp=o(this.captureException.bind(this)))}catch(B){wgA.error("failed to start",B),this.op()}},this._instance=g,this.ap=!!(!((A=this._instance.persistence)===null||A===void 0)&&A.props[u6A]),this.wt=new Gct(QI(QI({},(function(I={}){var e,t,o,B;return{refillRate:(e=(t=I.exceptionRateLimiterRefillRate)!==null&&t!==void 0?t:I.__exceptionRateLimiterRefillRate)!==null&&e!==void 0?e:1,bucketSize:(o=(B=I.exceptionRateLimiterBucketSize)!==null&&B!==void 0?B:I.__exceptionRateLimiterBucketSize)!==null&&o!==void 0?o:10}})(this._instance.config.error_tracking)),{},{refillInterval:1e4,$:wgA})),this.Ar=this.lp(),this.startIfEnabledOrStop()}lp(){const g=this._instance.config.capture_exceptions;let A={capture_unhandled_errors:!1,capture_unhandled_rejections:!1,capture_console_errors:!1};return yC(g)?A=QI(QI({},A),g):(Ye(g)?this.ap:g)&&(A=QI(QI({},A),{},{capture_unhandled_errors:!0,capture_unhandled_rejections:!0})),A}get isEnabled(){return this.Ar.capture_console_errors||this.Ar.capture_unhandled_errors||this.Ar.capture_unhandled_rejections}startIfEnabledOrStop(){this.isEnabled?(wgA.info("enabled"),this.op(),this.Ml(this.Yf)):this.op()}Ml(g){var A,I,e;!((A=UB.__PosthogExtensions__)===null||A===void 0)&&A.errorWrappingFunctions?g():(I=UB.__PosthogExtensions__)===null||I===void 0||(e=I.loadExternalDependency)===null||e===void 0||e.call(I,this._instance,"exception-autocapture",t=>{if(t)return wgA.error("failed to load script",t);g()})}op(){var g,A,I;(g=this.np)===null||g===void 0||g.call(this),this.np=void 0,(A=this.sp)===null||A===void 0||A.call(this),this.sp=void 0,(I=this.rp)===null||I===void 0||I.call(this),this.rp=void 0}onRemoteConfig(g){if(!g.ok)return;const A=g.config;"autocaptureExceptions"in A&&(this.ap=!!A.autocaptureExceptions||!1,this._instance.persistence&&this._instance.persistence.register({[u6A]:this.ap}),this.Ar=this.lp(),this.startIfEnabledOrStop())}onConfigChange(){this.Ar=this.lp()}captureException(g){try{var A,I,e;const t=(A=g==null||(I=g.$exception_list)===null||I===void 0||(I=I[0])===null||I===void 0?void 0:I.type)!==null&&A!==void 0?A:"Exception";if(this.wt.consumeRateLimit(t))return void wgA.info("Skipping exception capture because of client rate limiting.",{exception:t});(e=this._instance.exceptions)===null||e===void 0||e.sendExceptionEvent(g)}catch{}}},exceptions:class{constructor(g){var A,I;this.up=[],this.cp=new Jct([new jct,new oht,new Xct,new zct,new eht,new Iht,new Aht,new tht],(function(e,...t){return(o,B=0)=>{const C=[],Q=o.split(`
1069
1069
  `),i=Math.min(Q.length,B+1e3),E=[];for(let r=B;i>r;r++){const a=Q[r];if(a.length>1024)continue;const c=QAI.test(a)?a.replace(QAI,"$1"):a;if(!c.match(/\S*Error: /)){for(const h of t){const l=h(c,e);if(l){C.push(l);const D=Zct(C);if(D){for(let d=E.length-1;d>=0;d--){const y=E[d];if(D.start>=y.start+y.length)break;E.pop()}E.push(D)}break}}if(Wct(C,E)>=50)break}}const n=[...E].sort((r,a)=>a.start-r.start),s=n[n.length-1];if(s){const r=iAI(C,s);C.splice(s.start-r,r);for(const a of n)a.start-=r}for(const r of n)Oct(C,r);return E.some(r=>r.start===0&&C.length===r.length)&&(function(r){const a=r.map(h=>`${h.function}|${h.filename}|${h.lineno}|${h.colno}|${h.module}`);let c=0;for(let h=1;a.length>h;h++)Vct(a,h,c)&&(c=h);r.push(...r.splice(0,c))})(C),(function(r){if(!r.length)return[];const a=Array.from(r);return a.reverse(),a.slice(0,50).map(c=>{return QI(QI({},c),{},{filename:c.filename||(h=a,h[h.length-1]||{}).filename,function:c.function||"?"});var h})})(C)}})("web:javascript",Hct,qct)),this._instance=g,this.up=(A=(I=this._instance.persistence)===null||I===void 0?void 0:I.get_property("$error_tracking_suppression_rules"))!==null&&A!==void 0?A:[],this.hp=IDA(this.dp()),this.vp=new Cht(this.hp)}onConfigChange(){this.hp=IDA(this.dp()),this.vp.setConfig(this.hp)}onRemoteConfig(g){var A,I,e;if(!g.ok)return;const t=g.config;if(!("errorTracking"in t))return;const o=(A=(I=t.errorTracking)===null||I===void 0?void 0:I.suppressionRules)!==null&&A!==void 0?A:[],B=(e=t.errorTracking)===null||e===void 0?void 0:e.captureExtensionExceptions;this.up=o,this._instance.persistence&&this._instance.persistence.register({[TAI]:this.up,[G6A]:B})}get fp(){var g;const A=!!this._instance.get_property(G6A),I=this._instance.config.error_tracking.captureExtensionExceptions;return(g=I??A)!==null&&g!==void 0&&g}buildProperties(g,A){return this.cp.buildFromUnknown(g,{syntheticException:A?.syntheticException,mechanism:{handled:A?.handled}})}addExceptionStep(g,A){if(this.hp.enabled)try{if(!qC(g)||g.trim().length===0)return void PR.warn("Ignoring exception step because message must be a non-empty string");const{sanitizedProperties:I,droppedKeys:e}=(function(t){if(!t)return{sanitizedProperties:{},droppedKeys:[]};const o=[];return{sanitizedProperties:Object.keys(t).reduce((B,C)=>Bht.has(C)?(o.push(C),B):(B[C]=t[C],B),{}),droppedKeys:o}})(this.pp(A));e.length>0&&PR.warn("Ignoring reserved exception step fields",{droppedKeys:e}),this.vp.add(QI({[ADA]:g,[gDA]:new Date().toISOString()},I))}catch(I){PR.error("Failed to add exception step. Ignoring breadcrumb.",I)}}sendExceptionEvent(g){try{const A=g.$exception_list;if(this.gp(A)){if(this.mp(A))return this.yp("Exception dropped: matched a suppression rule"),void PR.info("Skipping exception capture because a suppression rule matched");if(!this.fp&&this.bp(A))return this.yp("Exception dropped: thrown by a browser extension"),void PR.info("Skipping exception capture because it was thrown by an extension");if(!this.fp&&this._p(A))return this.yp("Exception dropped: thrown by an injected browser script"),void PR.info("Skipping exception capture because it was thrown by an injected browser script");if(!this._instance.config.error_tracking.__capturePostHogExceptions&&this.wp(A))return this.yp("Exception dropped: thrown by the PostHog SDK"),void PR.info("Skipping exception capture because it was thrown by the PostHog SDK")}const I=this.hp.enabled&&hC(g.$exception_steps)?this.kp(g):g,e=(function(){if("u">typeof E$g){var t;const B=(t=E$g.env.POSTHOG_RELEASE_ID)===null||t===void 0?void 0:t.trim();if(B)return B}const o=globalThis._posthogReleaseId;return typeof o=="string"&&o.length>0?o:void 0})();e&&(I.$release_id=e);try{const t=this._instance.capture("$exception",I,{_noTruncate:!0,_batchKey:"exceptionEvent",Jh:!0});return t&&this.vp.clear(),t}catch(t){return CeI(t)||PR.error("Failed to capture exception event. Dropping this exception.",t),void this.vp.clear()}}catch(A){return void(CeI(A)||PR.error("Failed to process exception event. Ignoring this exception.",A))}}kp(g){try{const A=this.vp.getAttachable();return A.length===0?g:QI(QI({},g),{},{$exception_steps:A})}catch(A){return PR.error("Failed to read buffered exception steps. Capturing exception without steps.",A),g}}yp(g){this.hp.enabled&&this.vp.add({[ADA]:g,[gDA]:new Date().toISOString()})}pp(g){return yC(g)?QI({},g):{}}dp(){var g,A;return(g=(A=this._instance.config.error_tracking)===null||A===void 0?void 0:A.exception_steps)!==null&&g!==void 0?g:{}}mp(g){if(g.length===0)return!1;try{const A=g.reduce((I,{type:e,value:t})=>(qC(e)&&e.length>0&&I.$exception_types.push(e),qC(t)&&t.length>0&&I.$exception_values.push(t),I),{$exception_types:[],$exception_values:[]});return this.up.some(I=>{const e=I.values.map(t=>{const o=NII[t.operator],B=A[t.key];if(!o||!B)return!1;const C=cB(t.value)?t.value:[t.value];return C.length>0&&o(C,B)});return I.type==="OR"?e.some(Boolean):e.every(Boolean)})}catch(A){return PR.warn("Failed to evaluate suppression rules. Capturing the exception.",A),!1}}bp(g){const A=g.flatMap(e=>{var t,o;return(t=(o=e.stacktrace)===null||o===void 0?void 0:o.frames)!==null&&t!==void 0?t:[]}),I=A.filter(({filename:e})=>!!e&&Zlt.some(t=>e.startsWith(t)));return I.length!==0&&(!I.every(({filename:e})=>!!e&&e.startsWith(pvA))||g.some(({type:e,value:t})=>e==="NoResponse"||qC(t)&&qlt.some(({value:o,exact:B})=>B?t===o:t.includes(o)))&&!A.some(({in_app:e,filename:t})=>e&&!t?.startsWith(pvA)))}_p(g){return g.some(({value:A})=>qC(A)&&Olt.some(I=>A.includes(I)))}wp(g){if(g.length>0){var A,I,e,t;const o=(A=(I=g[0].stacktrace)===null||I===void 0?void 0:I.frames)!==null&&A!==void 0?A:[],B=o[o.length-1];return(e=B==null||(t=B.filename)===null||t===void 0?void 0:t.includes("posthog.com/static"))!==null&&e!==void 0&&e}return!1}gp(g){return!hC(g)&&cB(g)}}},sDt=QI({productTours:class{get fc(){return this._instance.persistence}constructor(g){this.Sp=null,this.xp=null,this._instance=g}initialize(){this.loadIfEnabled()}onRemoteConfig(g){if(!g.ok)return;const A=g.config;if("productTours"in A){var I,e;if(this.fc&&this.fc.register({[k6A]:!!A.productTours}),!uvA(this._instance))return!this.Sp&&hC((I=this.fc)===null||I===void 0?void 0:I.props.ph_product_tours)||MDA.info("product tours disabled; stopping and clearing cached tours"),(e=this.Sp)===null||e===void 0||e.stop(),this.Sp=null,void this.clearCache();this.loadIfEnabled()}}loadIfEnabled(){!this.Sp&&uvA(this._instance)&&this.Ml(()=>this.$p())}Ml(g){var A,I,e;!((A=UB.__PosthogExtensions__)===null||A===void 0)&&A.generateProductTours?g():(I=UB.__PosthogExtensions__)===null||I===void 0||(e=I.loadExternalDependency)===null||e===void 0||e.call(I,this._instance,"product-tours",t=>{t?MDA.error("Could not load product tours script",t):g()})}$p(){var g;!this.Sp&&(!((g=UB.__PosthogExtensions__)===null||g===void 0)&&g.generateProductTours)&&(this.Sp=UB.__PosthogExtensions__.generateProductTours(this._instance,!0))}getProductTours(g,A=!1){if(cB(this.xp)&&!A)return void g(this.xp,{isLoaded:!0});const I=this.fc;if(I){const e=I.props[M6A];if(cB(e)&&!A)return this.xp=e,void g(e,{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:e=>{if(!uvA(this._instance))return void g([],{isLoaded:!0});const t=e.statusCode;if(t!==200||!e.json){const B=`Product Tours API could not be loaded, status: ${t}`;return t===0?e.error||MDA.warn(B):MDA.error(B),void g([],{isLoaded:!1,error:B})}const o=cB(e.json.product_tours)?e.json.product_tours:[];this.xp=o,I&&I.register({[M6A]:o}),g(o,{isLoaded:!0})}})}getActiveProductTours(g){hC(this.Sp)?g([],{isLoaded:!1,error:"Product tours not loaded"}):this.Sp.getActiveProductTours(g)}showProductTour(g){var A;(A=this.Sp)===null||A===void 0||A.showTourById(g)}previewTour(g){this.Sp?this.Sp.previewTour(g):this.Ml(()=>{var A;this.$p(),(A=this.Sp)===null||A===void 0||A.previewTour(g)})}dismissProductTour(){var g;(g=this.Sp)===null||g===void 0||g.dismissTour("user_clicked_skip")}nextStep(){var g;(g=this.Sp)===null||g===void 0||g.nextStep()}previousStep(){var g;(g=this.Sp)===null||g===void 0||g.previousStep()}clearCache(){var g;this.xp=null,(g=this.fc)===null||g===void 0||g.unregister("ph_product_tours")}resetTour(g){var A;(A=this.Sp)===null||A===void 0||A.resetTour(g)}resetAllTours(){var g;(g=this.Sp)===null||g===void 0||g.resetAllTours()}cancelPendingTour(g){var A;(A=this.Sp)===null||A===void 0||A.cancelPendingTour(g)}}},fDA),aDt={siteApps:class{constructor(g){this._instance=g,this.Cp=0,this.Tp=[],this.apps={}}get isEnabled(){return!!this._instance.config.opt_in_site_apps}Ip(g,A){if(!A)return;const I=this.globalsForEvent(A);this.Tp.push(I),this.Tp.length>1e3&&(this.Tp=this.Tp.slice(10))}get siteAppLoaders(){var g;return(g=UB._POSTHOG_REMOTE_CONFIG)===null||g===void 0||(g=g[this._instance.config.token])===null||g===void 0?void 0:g.siteApps}initialize(){if(this.isEnabled){const g=this._instance._addCaptureHook(this.Ip.bind(this));this.Mp=()=>{g(),this.Tp=[],this.Mp=void 0}}}globalsForEvent(g){var A,I,e,t,o,B,C;if(!g)throw new Error("Event payload is required");const Q={},i=this._instance.get_property("$groups")||[],E=this._instance.get_property("$stored_group_properties")||{};for(const[r,a]of Object.entries(E))Q[r]={id:i[r],type:r,properties:a};const{$set_once:n,$set:s}=g;return{event:QI(QI({},dAI(g,Jlt)),{},{properties:QI(QI(QI({},g.properties),s?{$set:QI(QI({},(A=(I=g.properties)===null||I===void 0?void 0:I.$set)!==null&&A!==void 0?A:{}),s)}:{}),n?{$set_once:QI(QI({},(e=(t=g.properties)===null||t===void 0?void 0:t.$set_once)!==null&&e!==void 0?e:{}),n)}:{}),elements_chain:(o=(B=g.properties)===null||B===void 0?void 0:B.$elements_chain)!==null&&o!==void 0?o:"",distinct_id:(C=g.properties)===null||C===void 0?void 0:C.distinct_id}),person:{properties:this._instance.get_property("$stored_person_properties")},groups:Q}}Ep(g){var A;const I=(A=g.tagName)===null||A===void 0?void 0:A.toLowerCase();return I==="style"&&this._instance.config.prepare_external_dependency_stylesheet?this._instance.config.prepare_external_dependency_stylesheet(g)||(ux.error("prepare_external_dependency_stylesheet returned null"),null):I==="script"&&this._instance.config.prepare_external_dependency_script?this._instance.config.prepare_external_dependency_script(g)||(ux.error("prepare_external_dependency_script returned null"),null):g}Pp(){var g,A,I,e,t,o,B,C;if(!this._instance.config.prepare_external_dependency_stylesheet&&!this._instance.config.prepare_external_dependency_script)return()=>{};const Q=ro?.defaultView,i=Q==null||(g=Q.Node)===null||g===void 0?void 0:g.prototype;if(!Q||!i)return()=>{};if(this.Cp++,this.Rp)return this.Ap();const E=[],n=this,s=new WeakSet,r=(h,l,D)=>{if(!h?.[l])return;const d=h[l];h[l]=D(d),E.push(()=>{h[l]=d})},a=h=>{if(s.has(h))return h;const l=n.Ep(h);return l&&s.add(l),l},c=h=>h.map(l=>typeof l=="string"?l:a(l)).filter(l=>!Pc(l));return r(i,"appendChild",h=>function(l){const D=a(l);return D?h.call(this,D):l}),r(i,"insertBefore",h=>function(l,D){const d=a(l);return d?h.call(this,d,D):l}),r(i,"replaceChild",h=>function(l,D){const d=a(l);return d?h.call(this,d,D):D}),[(A=Q.Element)===null||A===void 0?void 0:A.prototype,(I=Q.Document)===null||I===void 0?void 0:I.prototype,(e=Q.DocumentFragment)===null||e===void 0?void 0:e.prototype].forEach(h=>{r(h,"append",l=>function(...D){return l.apply(this,c(D))}),r(h,"prepend",l=>function(...D){return l.apply(this,c(D))})}),[(t=Q.Element)===null||t===void 0?void 0:t.prototype,(o=Q.CharacterData)===null||o===void 0?void 0:o.prototype,(B=Q.DocumentType)===null||B===void 0?void 0:B.prototype].forEach(h=>{r(h,"before",l=>function(...D){return l.apply(this,c(D))}),r(h,"after",l=>function(...D){return l.apply(this,c(D))}),r(h,"replaceWith",l=>function(...D){const d=c(D);return D.length&&!d.length?void 0:l.apply(this,d)})}),r((C=Q.Element)===null||C===void 0?void 0:C.prototype,"insertAdjacentElement",h=>function(l,D){const d=a(D);return d?h.call(this,l,d):null}),this.Rp=()=>{E.forEach(h=>h()),this.Rp=void 0},this.Ap()}Ap(){let g=!1;return()=>{var A;g||(g=!0,this.Cp--,this.Cp===0&&((A=this.Rp)===null||A===void 0||A.call(this)))}}Fp(g,A=!0){const I=this.Pp();try{const e=g(I);return A&&I(),e}catch(e){throw I(),e}}setupSiteApp(g){const A=this.apps[g.id],I=()=>{var o;!A.errored&&this.Tp.length&&(ux.info(`Processing ${this.Tp.length} events for site app with id ${g.id}`),this.Tp.forEach(B=>this.Fp(()=>{var C;return(C=A.processEvent)===null||C===void 0?void 0:C.call(A,B)})),A.processedBuffer=!0),Object.values(this.apps).every(B=>B.processedBuffer||B.errored)&&((o=this.Mp)===null||o===void 0||o.call(this))};let e=!1;const t=o=>{A.errored=!o,A.loaded=!0,ux.info(`Site app with id ${g.id} ${o?"loaded":"errored"}`),e&&I()};try{const{processEvent:o}=this.Fp(B=>g.init({posthog:this._instance,callback(C){B(),t(C)}}),!1);o&&(A.processEvent=o),e=!0}catch(o){ux.error(zII+g.id,o),t(!1)}if(e&&A.loaded)try{I()}catch(o){ux.error(`Error while processing buffered events PostHog app with config id ${g.id}`,o),A.errored=!0}}Op(){const g=this.siteAppLoaders||[];for(const A of g)this.apps[A.id]={id:A.id,loaded:!1,errored:!1,processedBuffer:!1};for(const A of g)this.setupSiteApp(A)}Dp(g){if(Object.keys(this.apps).length===0)return;const A=this.globalsForEvent(g);for(const I of Object.values(this.apps))try{this.Fp(()=>{var e;return(e=I.processEvent)===null||e===void 0?void 0:e.call(I,A)})}catch(e){ux.error(`Error while processing event ${g.event} for site app ${I.id}`,e)}}onRemoteConfig(g){var A,I,e;if(!((A=this.siteAppLoaders)===null||A===void 0)&&A.length)return this.isEnabled?(this.Op(),void this._instance.on("eventCaptured",C=>this.Dp(C))):void ux.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.');if((I=this.Mp)===null||I===void 0||I.call(this),!g.ok)return;const t=g.config;if(!((e=t.siteApps)===null||e===void 0)&&e.length)if(this.isEnabled)for(const{id:C,url:Q}of t.siteApps){var o,B;UB[`__$$ph_site_app_${C}`]=this._instance,(o=UB.__PosthogExtensions__)===null||o===void 0||(B=o.loadSiteApp)===null||B===void 0||B.call(o,this._instance,Q,i=>{if(i)return ux.error(zII+C,i)})}else ux.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.')}}},rDt={tracingHeaders:class{constructor(g){this._instance=g,this.Lp=void 0,this.Np=void 0,this.qp=void 0,this.Yf=()=>{const A=this.jp();var I,e;A?(Ye(this.Lp)&&(this.Lp=(I=UB.__PosthogExtensions__)===null||I===void 0||(I=I.tracingHeadersPatchFns)===null||I===void 0?void 0:I._patchXHR(A,()=>this._instance.get_distinct_id(),this._instance.sessionManager)),Ye(this.Np)&&(this.Np=(e=UB.__PosthogExtensions__)===null||e===void 0||(e=e.tracingHeadersPatchFns)===null||e===void 0?void 0:e._patchFetch(A,()=>this._instance.get_distinct_id(),this._instance.sessionManager))):this.op()}}initialize(){this.startIfEnabledOrStop()}Ml(g){var A,I,e;!((A=UB.__PosthogExtensions__)===null||A===void 0)&&A.tracingHeadersPatchFns?g():(I=UB.__PosthogExtensions__)===null||I===void 0||(e=I.loadExternalDependency)===null||e===void 0||e.call(I,this._instance,"tracing-headers",t=>{if(t)return Rlt.error("failed to load script",t);g()})}Bp(){var g,A;return(g=(A=this._instance.config.tracing_headers)!==null&&A!==void 0?A:this._instance.config.addTracingHeaders)!==null&&g!==void 0?g:this._instance.config.__add_tracing_headers}jp(){const g=this.Bp();return cB(g)?(cB(this.qp)?this.qp.splice(0,this.qp.length,...g):this.qp=[...g],g.length>0?this.qp:void 0):(cB(this.qp)&&this.qp.splice(0),this.qp=g||void 0,this.qp)}op(){var g,A;(g=this.Lp)===null||g===void 0||g.call(this),(A=this.Np)===null||A===void 0||A.call(this),this.Lp=void 0,this.Np=void 0}startIfEnabledOrStop(){this.jp()?this.Ml(this.Yf):this.op()}}},cDt=QI({surveys:class extends Ylt{constructor(g){super(new _lt(g))}}},fDA),hDt={toolbar:class{constructor(g){this.instance=g}zp(g){UB.ph_toolbar_state=g}Hp(){var g;return(g=UB.ph_toolbar_state)!==null&&g!==void 0?g:0}initialize(){return this.maybeLoadToolbar()}maybeLoadToolbar(g=void 0,A=void 0,I=void 0){var e,t;if(J6A(this.instance.config)||!Se||!ro)return!1;g=(e=g)!==null&&e!==void 0?e:Se.location,I=(t=I)!==null&&t!==void 0?t:Se.history;try{if(!A){try{Se.localStorage.setItem("test","test"),Se.localStorage.removeItem("test")}catch{return!1}A=Se?.localStorage}const o=blt||hDA(g.hash,"__posthog")||hDA(g.hash,"state");let B;const C=o?$$g(()=>JSON.parse(atob(decodeURIComponent(o))))||$$g(()=>JSON.parse(decodeURIComponent(o))):null;return C&&C.action==="ph_authorize"?(B=C,B.source="url",B&&Object.keys(B).length>0&&(C.desiredHash?g.hash=C.desiredHash:I?I.replaceState(I.state,"",g.pathname+g.search):g.hash="")):(B=JSON.parse(A.getItem($II)||"{}"),B.source="localstorage",delete B.userIntent),!(!B.token||this.instance.config.token!==B.token||(this.loadToolbar(B),0))}catch{return!1}}Up(g){const A=UB.ph_load_toolbar||UB.ph_load_editor;!hC(A)&&C0(A)?A(g,this.instance):AeI.warn("No toolbar load function found")}loadToolbar(g){const A=!!ro?.getElementById("__POSTHOG_TOOLBAR__");if(!Se||A)return!1;const I=this.instance.requestRouter.region==="custom"&&this.instance.config.advanced_disable_toolbar_metrics,e=QI(QI({token:this.instance.config.token},g),{},{apiURL:this.instance.requestRouter.endpointFor("ui")},I?{instrument:!1}:{});if(Se.localStorage.setItem($II,JSON.stringify(QI(QI({},e),{},{source:void 0}))),this.Hp()===2)this.Up(e);else if(this.Hp()===0){var t,o;this.zp(1),(t=UB.__PosthogExtensions__)===null||t===void 0||(o=t.loadExternalDependency)===null||o===void 0||o.call(t,this.instance,"toolbar",B=>{if(B)return AeI.error("[Toolbar] Failed to load",B),void this.zp(0);this.zp(2),this.Up(e)}),NE(Se,"turbolinks:load",()=>{this.zp(0),this.loadToolbar(e)})}return!0}Wp(g){return this.loadToolbar(g)}maybeLoadEditor(g=void 0,A=void 0,I=void 0){return this.maybeLoadToolbar(g,A,I)}}},lDt=QI({experiments:class Kp{get Ar(){return this._instance.config}constructor(A){this._instance=A,this.getWebExperimentsAndEvaluateDisplayLogic=(I=!1)=>{this.getWebExperiments(e=>{Kp.Vp("retrieved web experiments from the server"),this.Gp=new Map,e.forEach(t=>{if(t.feature_flag_key){var o;this.Gp&&(Kp.Vp("setting flag key ",t.feature_flag_key," to web experiment ",t),(o=this.Gp)===null||o===void 0||o.set(t.feature_flag_key,t));const B=this._instance.getFeatureFlag(t.feature_flag_key);qC(B)&&t.variants[B]&&this.Qp(t.name,B,t.variants[B].transforms)}else if(t.variants)for(const B in t.variants){const C=t.variants[B];Kp.Zp(C,this._instance)&&this.Qp(t.name,B,C.transforms)}})},I)},this._instance.onFeatureFlags(I=>{this.onFeatureFlags(I)})}initialize(){}onFeatureFlags(A){if(this._is_bot())Kp.Vp(QeI);else if(!this.Ar.disable_web_experiments){if(hC(this.Gp))return this.Gp=new Map,this.loadIfEnabled(),void this.previewWebExperiment();Kp.Vp("applying feature flags",A),A.forEach(I=>{var e;if(this.Gp&&(!((e=this.Gp)===null||e===void 0)&&e.has(I))){var t;const o=this._instance.getFeatureFlag(I),B=(t=this.Gp)===null||t===void 0?void 0:t.get(I);o&&B?.variants[o]&&this.Qp(B.name,o,B.variants[o].transforms)}})}}previewWebExperiment(){const A=Kp.getWindowLocation();if(A?.search){const I=cq(A?.search,"__experiment_id"),e=cq(A?.search,"__experiment_variant");I&&e&&(Kp.Vp(`previewing web experiments ${I} && ${e}`),this.getWebExperiments(t=>{this.Jp(parseInt(I),e,t)},!1,!0))}}loadIfEnabled(){this.Ar.disable_web_experiments||this.getWebExperimentsAndEvaluateDisplayLogic()}getWebExperiments(A,I,e){if(this.Ar.disable_web_experiments&&!e)return A([]);const t=this._instance.get_property("$web_experiments");if(t&&!I)return A(t);this._instance._send_request({url:this._instance.requestRouter.endpointFor("api",`/api/web_experiments/?token=${this.Ar.token}`),method:"GET",timestampMode:"query",callback:o=>A(o.statusCode===200&&o.json&&o.json.experiments||[])})}Jp(A,I,e){const t=e.filter(o=>o.id===A);t&&t.length>0&&(Kp.Vp(`Previewing web experiment [${t[0].name}] with variant [${I}]`),this.Qp(t[0].name,I,t[0].variants[I].transforms))}static Zp(A,I){return!hC(A.conditions)&&Kp.Kp(A,I)&&Kp.Xp(A)}static Kp(A,I){var e;if(hC(A.conditions)||hC((e=A.conditions)===null||e===void 0?void 0:e.url))return!0;const t=Kp.getWindowLocation();if(t){var o,B,C;const Q=lgI(I,t.href);return!(!((o=A.conditions)===null||o===void 0)&&o.url)||Wlt[(B=(C=A.conditions)===null||C===void 0?void 0:C.urlMatchType)!==null&&B!==void 0?B:"icontains"](A.conditions.url,Q)}return!1}static getWindowLocation(){return Se?.location}static Xp(A){var I;if(hC(A.conditions)||hC((I=A.conditions)===null||I===void 0?void 0:I.utm))return!0;const e=qgI();if(e.utm_source){var t,o,B,C,Q,i,E,n;const s=!(!((t=A.conditions)===null||t===void 0||(t=t.utm)===null||t===void 0)&&t.utm_campaign)||((o=A.conditions)===null||o===void 0||(o=o.utm)===null||o===void 0?void 0:o.utm_campaign)==e.utm_campaign,r=!(!((B=A.conditions)===null||B===void 0||(B=B.utm)===null||B===void 0)&&B.utm_source)||((C=A.conditions)===null||C===void 0||(C=C.utm)===null||C===void 0?void 0:C.utm_source)==e.utm_source,a=!(!((Q=A.conditions)===null||Q===void 0||(Q=Q.utm)===null||Q===void 0)&&Q.utm_medium)||((i=A.conditions)===null||i===void 0||(i=i.utm)===null||i===void 0?void 0:i.utm_medium)==e.utm_medium,c=!(!((E=A.conditions)===null||E===void 0||(E=E.utm)===null||E===void 0)&&E.utm_term)||((n=A.conditions)===null||n===void 0||(n=n.utm)===null||n===void 0?void 0:n.utm_term)==e.utm_term;return s&&a&&c&&r}return!1}static Vp(A,...I){Dt.info(`[WebExperiments] ${A}`,I)}Qp(A,I,e){this._is_bot()?Kp.Vp(QeI):I!=="control"?e.forEach(t=>{if(t.selector){var o;Kp.Vp(`applying transform of variant ${I} for experiment ${A} `,t);const B=(o=document)===null||o===void 0?void 0:o.querySelectorAll(t.selector);B?.forEach(C=>{const Q=C;t.html&&(Q.innerHTML=t.html),t.css&&Q.setAttribute("style",t.css)})}}):Kp.Vp("Control variants leave the page unmodified.")}_is_bot(){return Hw&&this._instance?SII(Hw,this.Ar.custom_blocked_useragents):void 0}}},fDA),DDt={conversations:class{constructor(g){this._instance=g,this.Yp=void 0,this._conversationsManager=null,this.tg=!1,this.ne=null,this.eg=!1,this.ig=0}initialize(){this.loadIfEnabled()}onRemoteConfig(g){if(this._instance.config.disable_conversations||(this.ng=g.ok,!g.ok))return;const A=g.config.conversations;hC(A)||(Fm(A)?this.Yp=A:(this.Yp=A.enabled,this.ne=A),this.loadIfEnabled())}reset(){var g;(g=this._conversationsManager)===null||g===void 0||g.reset(),this._conversationsManager=null,this.ig++,this.Yp=void 0,this.ne=null,this.ng=void 0,this.eg=!1}loadIfEnabled(){if(this._conversationsManager||this.tg||this._instance.config.disable_conversations||J6A(this._instance.config)||this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut())return;const g=UB?.__PosthogExtensions__;if(g&&!Ye(this.Yp)&&this.Yp)if(this.ne&&this.ne.token){this.tg=!0;try{const A=g.initConversations;if(A)return this.sg(A),void(this.tg=!1);const I=g.loadExternalDependency;if(!I)return void this.rg(h6A);const e=this.ig;I(this._instance,"conversations",t=>{if(e!==this.ig)return this.tg=!1,void this.loadIfEnabled();t||!g.initConversations?this.rg("Could not load conversations script",t):this.sg(g.initConversations),this.tg=!1})}catch(A){this.rg("Error initializing conversations",A),this.tg=!1}}else gf.error("Conversations enabled but missing token in remote config.")}sg(g){if(this.ne)try{this._conversationsManager=g(this.ne,this._instance),this.eg=!1,gf.info("Conversations loaded successfully")}catch(A){this.rg("Error completing conversations initialization",A)}else gf.error("Cannot complete initialization: remote config is null")}rg(g,A){gf.error(g,A),this._conversationsManager=null,this.tg=!1,this.eg=!0}show(){this._conversationsManager?this._conversationsManager.show():gf.warn("Conversations not loaded yet.")}hide(){this._conversationsManager&&this._conversationsManager.hide()}isAvailable(){return this.Yp===!0&&!Pc(this._conversationsManager)}getUnavailableReason(){return this.isAvailable()?null:this._instance.config.disable_conversations?"disabled_by_config":J6A(this._instance.config)?"disabled_for_toolbar":this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut()?"consent_opted_out":this.ng===!1?"remote_config_failed":Ye(this.Yp)?this.ng?"disabled_in_project":"remote_config_pending":this.Yp?hC(this.ne)||!this.ne.token?"missing_token":UB?.__PosthogExtensions__?this.tg?"initializing":this.eg?"load_failed":"not_loaded":"extensions_unavailable":"disabled_in_project"}isVisible(){var g,A;return(g=(A=this._conversationsManager)===null||A===void 0?void 0:A.isVisible())!==null&&g!==void 0&&g}sendMessage(g,A,I){var e=this;return Qa(function*(){return e._conversationsManager?e._conversationsManager.sendMessage(g,A,I):(gf.warn(r5),null)})()}getMessages(g,A){var I=this;return Qa(function*(){return I._conversationsManager?I._conversationsManager.getMessages(g,A):(gf.warn(r5),null)})()}markAsRead(g){var A=this;return Qa(function*(){return A._conversationsManager?A._conversationsManager.markAsRead(g):(gf.warn(r5),null)})()}getTickets(g){var A=this;return Qa(function*(){return A._conversationsManager?A._conversationsManager.getTickets(g):(gf.warn(r5),null)})()}requestRestoreLink(g){var A=this;return Qa(function*(){return A._conversationsManager?A._conversationsManager.requestRestoreLink(g):(gf.warn(r5),null)})()}restoreFromToken(g){var A=this;return Qa(function*(){return A._conversationsManager?A._conversationsManager.restoreFromToken(g):(gf.warn(r5),null)})()}restoreFromUrlToken(){var g=this;return Qa(function*(){return g._conversationsManager?g._conversationsManager.restoreFromUrlToken():(gf.warn(r5),null)})()}getCurrentTicketId(){var g,A;return(g=(A=this._conversationsManager)===null||A===void 0?void 0:A.getCurrentTicketId())!==null&&g!==void 0?g:null}getWidgetSessionId(){var g,A;return(g=(A=this._conversationsManager)===null||A===void 0?void 0:A.getWidgetSessionId())!==null&&g!==void 0?g:null}ad(){var g;(g=this._conversationsManager)===null||g===void 0||g.setIdentity()}ld(){var g;(g=this._conversationsManager)===null||g===void 0||g.clearIdentity()}}},dDt={logs:class extends zlt{constructor(g){super({get(){var A;return g==null||(A=g.config)===null||A===void 0?void 0:A.logs},captureHintKey:qAI,get remoteConfigWillArrive(){var A,I;return!(!((A=g.Hu)===null||A===void 0)&&A.call(g))||!!(!((I=UB._POSTHOG_REMOTE_CONFIG)===null||I===void 0||(I=I[g.config.token])===null||I===void 0)&&I.config)}},()=>(function(A){var I;const e={};if(e.distinctId=A.get_distinct_id(),A.sessionManager){const{sessionId:t,windowId:o,sessionStartTimestamp:B,lastActivityTimestamp:C}=A.sessionManager.checkAndGetSessionAndWindowId(!0);e.sessionId=t,e.windowId=o,hC(B)||(e.sessionStartTimestamp=B),hC(C)||(e.lastActivityTimestamp=C)}if(!(UB==null||(I=UB.location)===null||I===void 0)&&I.href&&(e.currentUrl=A.config.disable_capture_url_hashes?i3(UB.location.href):UB.location.href),A.featureFlags){const t=A.featureFlags.getFlags();t&&t.length>0&&(e.activeFeatureFlags=t)}return e})(g)),this._instance=g,this.name=LII,this.Nv()}get Dv(){return this._instance.__loaded}Lv(){const g=zr("[logs]"),A=UB?.__PosthogExtensions__;if(!A)return void g.error("PostHog Extensions not found.");const I=A.loadExternalDependency;if(I)return e=>{I(this._instance,"logs",t=>{const o=A.logs;e(t,o?.initializeLogs?{initialize:B=>o.initializeLogs(B),replay(B,C){var Q;return(Q=o.replayConsoleBuffer)===null||Q===void 0?void 0:Q.call(o,B,C)}}:void 0)})};g.error(h6A)}}},yDt={metrics:class{constructor(g){this._instance=g,this.$=zr("[metrics]"),this.Ci=!1}initialize(){this.onConfigChange()}onConfigChange(){var g;if(this.Ci)return;const A=!!(!((g=this._instance.config.metrics)===null||g===void 0)&&g.network);A&&!this.og?this.og=(I=>{let e=!0;const t=()=>e?(C=>{var Q;const i=(Q=C.config.metrics)===null||Q===void 0?void 0:Q.network;return i===!0?{}:i||void 0})(I):void 0,o=ADt(I,t),B=gDt(I,t);return()=>{e=!1,o(),B()}})(this._instance):!A&&this.og&&(this.og(),this.og=void 0)}Bv(){var g;const A=(g=this._instance)===null||g===void 0||(g=g.config)===null||g===void 0?void 0:g.metrics;var I;return this.Fv&&this.zv===A||((I=this.Fv)===null||I===void 0||I.reset(),this.zv=A,this.Fv=new Zht(this.jv(),(function(e){var t,o,B,C,Q;const i=e?.resourceAttributes;return{serviceName:(t=i?.["service.name"])!==null&&t!==void 0?t:e?.serviceName,serviceVersion:(o=i?.["service.version"])!==null&&o!==void 0?o:e?.serviceVersion,environment:(B=i?.["deployment.environment"])!==null&&B!==void 0?B:e?.environment,resourceAttributes:i,beforeSend:e?.beforeSend,flushIntervalMs:(C=e?.flushIntervalMs)!==null&&C!==void 0?C:1e4,maxSeriesPerFlush:(Q=e?.maxSeriesPerFlush)!==null&&Q!==void 0?Q:1e3}})(A),this.$)),this.Fv}count(g,A=1,I){this.Bv().count(g,A,I)}gauge(g,A,I){this.Bv().gauge(g,A,I)}histogram(g,A,I){this.Bv().histogram(g,A,I)}flush(g){if(!this.Fv)return Promise.resolve();if(g){const A=this.Fv.drainWindow();return A&&this.po(A,g),Promise.resolve()}return this.Fv.flush().catch(A=>this.$.error("PostHog metrics flush failed:",A))}reset(){var g;(g=this.Fv)===null||g===void 0||g.reset()}dispose(){var g,A;this.Ci=!0,(g=this.og)===null||g===void 0||g.call(this),this.og=void 0,(A=this.Fv)===null||A===void 0||A.reset()}jv(){const g=this._instance,A=this;return{get isDisabled(){return!1},get optedOut(){return!g.is_capturing()},po:I=>A.po(I),getLibraryId:()=>ak.LIB_NAME,getLibraryVersion:()=>ak.LIB_VERSION}}po(g,A){return new Promise(I=>{let e=!1;const t=B=>{e||(e=!0,clearTimeout(o),I(B))},o=setTimeout(()=>t({kind:"retry-later",error:new Error("metrics request timed out")}),9e4);this._instance._send_request(QI(QI({method:"POST",url:this.ag(),data:g,compression:"best-available",batchKey:"metrics"},A&&{transport:A}),{},{fireCallbackOnDrop:!0,callback(B){const C=B.statusCode;if(C>=200&&300>C)t({kind:"ok"});else if(C===413)t({kind:"too-large"});else if(C!==0&&C!==408&&C!==429&&500>C)t({kind:"fatal",error:new Error(`metrics request failed with status ${C}`)});else{var Q;t({kind:"retry-later",error:(Q=B.error)!==null&&Q!==void 0?Q:new Error(`metrics request failed with status ${C}`)})}}}))})}ag(){return this._instance.requestRouter.endpointFor("api","/i/v1/metrics")+"?token="+encodeURIComponent(this._instance.config.token)}}},wDt={webMCP:class{constructor(g){this._instance=g,this.lg=!1}initialize(){this.startIfEnabled()}startIfEnabled(){if(!this._instance.config.capture_webmcp||this.lg)return;const g=ro?.modelContext;if(!g||!C0(g.registerTool))return;const A=ceI.get(g);if(A)return A.instances.add(this._instance),void(this.lg=!0);const I={instances:new Set([this._instance])},e=g.registerTool,t=this;uq(g,"registerTool",o=>{const B=o;return function(C,...Q){let i=C;try{i=t.ug(C,I)}catch{return B.call(this,C,...Q)}return B.call(this,i,...Q)}}),g.registerTool!==e&&(ceI.set(g,I),this.lg=!0)}ug(g,A){if(!g||!C0(g.execute))return g;const I=g.execute,e=this,{tool:t,injected:o}=(function(B,C){const Q={intent:!1,model:!1},i=B.inputSchema;if(!(function(a){return!!Ye(a)||yC(a)&&Object.keys(a).every(c=>IDt.has(c)||c.startsWith("x-"))&&a.additionalProperties!==!0&&!yC(a.additionalProperties)&&(!a.type||a.type==="object")&&(!a.properties||yC(a.properties))&&(!a.required||cB(a.required))})(i))return{tool:RvA(B),injected:Q};const E=i?.properties||{},n=a=>fvA(E,a)||cB(i?.required)&&i.required.includes(a);if(Q.intent=C.intent&&!n("context"),Q.model=C.model&&!n("llm_model"),!Q.intent&&!Q.model)return{tool:RvA(B),injected:Q};const s=QI({},E),r=cB(i?.required)?[...i.required]:[];return Q.intent&&(s.context={type:"string",description:`Explain why this tool is called and how it supports the user's goal. Describe the abstract purpose only. Do not include personal or identifying information. Generalize specific entities as roles such as "a customer".`},r.includes("context")||r.push("context")),Q.model&&(s.llm_model={type:"string",description:'The exact model identifier you are running as, taken from your system prompt or environment. Pass "unknown" if you do not know it. Never guess.'},r.includes("llm_model")||r.push("llm_model")),{tool:RvA(B,QI(QI({},i),{},{type:i?.type||"object",properties:s,required:r})),injected:Q}})(g,(function(B){const C={intent:!1,model:!1};for(const Q of B.instances){const i=heI(Q.config.capture_webmcp);C.intent||(C.intent=i?.intent===!0),C.model||(C.model=i?.model===!0)}return C})(A));return Object.defineProperty(t,"execute",{configurable:!0,enumerable:!0,writable:!0,value(...B){const C=new Date,Q=(function(r,a){if(!yC(r))return{};try{const c=a.intent?leI(r.context,2048,!0):void 0,h=a.model?leI(r.llm_model,256):void 0;return QI(QI({},c&&c!=="{}"?{intent:c}:{}),h&&h.toLowerCase()!=="unknown"?{model:h}:{})}catch{return{}}})(B[0],o),i=(function(r,a){const c=r[0];if(!yC(c))return r;try{const h=a.intent&&fvA(c,"context"),l=a.model&&fvA(c,"llm_model");if(!h&&!l)return r;const D=QI({},c);return h&&delete D.context,l&&delete D.llm_model,[D,...r.slice(1)]}catch{return r}})(B,o);let E;try{E=I.apply(this===t?g:this,i)}catch(r){throw e.cg(A,t,C,{error:r,errorResult:!1},Q),r}if((n=E)&&typeof n.then=="function")return Promise.resolve(E).then(r=>{const a=DeI(r)?{error:r,errorResult:!0}:void 0;return e.cg(A,t,C,a,Q),r},r=>{throw e.cg(A,t,C,{error:r,errorResult:!1},Q),r});var n;const s=DeI(E)?{error:E,errorResult:!0}:void 0;return e.cg(A,t,C,s,Q),E}}),t}cg(g,A,I,e,t){const o=Date.now()-I.getTime();let B;for(const Q of g.instances){var C;const i=heI(Q.config.capture_webmcp);if(i){e&&!B&&(B=QDt(e.error,e.errorResult));try{Q.capture("$mcp_tool_call",QI(QI(QI({$mcp_source:"posthog_mcp_analytics",$mcp_interface:"webmcp",$mcp_tool_name:A.name,$mcp_resource_name:A.name,$mcp_tool_description:A.description,$mcp_server_name:Ca?.hostname,$mcp_duration_ms:o,$mcp_is_error:!!e},B?{$mcp_error_type:B.type,$mcp_error_message:B.message}:{}),i.intent&&t.intent?{$mcp_intent:t.intent,$mcp_intent_source:"context_parameter"}:{}),i.model&&t.model?{$mcp_llm_model:t.model,$mcp_llm_model_source:"self_reported"}:{}),{timestamp:I})}catch{continue}if(e&&B&&Q.exceptions&&(!((C=Q.exceptionObserver)===null||C===void 0)&&C.isEnabled))try{const E={$exception_list:BDt(Q.exceptions,e,B.message),$exception_level:"error",$exception_source:"mcp.tool_call",$mcp_interface:"webmcp",$mcp_tool_name:A.name,$mcp_resource_name:A.name,$mcp_tool_description:A.description,$mcp_server_name:Ca?.hostname};Q.exceptionObserver.captureException(E)}catch{}}}}}};ygA.__defaultExtensionClasses=QI({},QI(QI(QI(QI(QI(QI(QI(QI(QI(QI(QI(QI(QI(QI({},fDA),iDt),EDt),nDt),sDt),aDt),cDt),rDt),hDt),lDt),DDt),dDt),yDt),wDt));var pq=(function(){ak.SDK_DIST_CHANNEL="npm";const g=lgA[dgA]=new ygA;return(function(){function A(){A.done||(A.done=!0,GII=!1,Gn(lgA,function(I){I._dom_loaded()}))}ro?.addEventListener?ro.readyState==="complete"?A():NE(ro,"DOMContentLoaded",A,{capture:!1}):Se&&Dt.error("Browser doesn't support `document.addEventListener` so PostHog couldn't be initialized")})(),g})();class dJ extends Error{response;request;options;constructor(A,I,e){const t=A.status||A.status===0?A.status:"",o=A.statusText??"",B=`${t} ${o}`.trim(),C=B?`status code ${B}`:"an unknown error";super(`Request failed with ${C}: ${I.method} ${I.url}`),this.name="HTTPError",this.response=A,this.request=I,this.options=e}}class yeI extends Error{name="NonError";value;constructor(A){let I="Non-error value was thrown";try{typeof A=="string"?I=A:A&&typeof A=="object"&&"message"in A&&typeof A.message=="string"&&(I=A.message)}catch{}super(I),this.value=A}}class NvA extends Error{name="ForceRetryError";customDelay;code;customRequest;constructor(A){const I=A?.cause?A.cause instanceof Error?A.cause:new yeI(A.cause):void 0;super(A?.code?`Forced retry: ${A.code}`:"Forced retry",I?{cause:I}:void 0),this.customDelay=A?.delay,this.code=A?.code,this.customRequest=A?.request}}const weI=(()=>{let g=!1,A=!1;const I=typeof globalThis.ReadableStream=="function",e=typeof globalThis.Request=="function";if(I&&e)try{A=new globalThis.Request("https://empty.invalid",{body:new globalThis.ReadableStream,method:"POST",get duplex(){return g=!0,"half"}}).headers.has("Content-Type")}catch(t){if(t instanceof Error&&t.message==="unsupported BodyInit type")return!1;throw t}return g&&!A})(),uDt=typeof globalThis.AbortController=="function",ueI=typeof globalThis.AbortSignal=="function"&&typeof globalThis.AbortSignal.any=="function",GDt=typeof globalThis.ReadableStream=="function",mDt=typeof globalThis.FormData=="function",GeI=["get","post","put","patch","head","delete"],pDt={json:"application/json",text:"text/*",formData:"multipart/form-data",arrayBuffer:"*/*",blob:"*/*",bytes:"*/*"},xvA=2147483647,kDt=new TextEncoder().encode("------WebKitFormBoundaryaxpyiPgbbPti10Rw").length,meI=Symbol("stop");class peI{options;constructor(A){this.options=A}}const MDt=g=>new peI(g),SDt={json:!0,parseJson:!0,stringifyJson:!0,searchParams:!0,prefixUrl:!0,retry:!0,timeout:!0,hooks:!0,throwHttpErrors:!0,onDownloadProgress:!0,onUploadProgress:!0,fetch:!0,context:!0},fDt={next:!0},RDt={method:!0,headers:!0,body:!0,mode:!0,credentials:!0,cache:!0,redirect:!0,referrer:!0,referrerPolicy:!0,integrity:!0,keepalive:!0,signal:!0,window:!0,duplex:!0},NDt=g=>{if(!g)return 0;if(g instanceof FormData){let A=0;for(const[I,e]of g)A+=kDt,A+=new TextEncoder().encode(`Content-Disposition: form-data; name="${I}"`).length,A+=typeof e=="string"?new TextEncoder().encode(e).length:e.size;return A}if(g instanceof Blob)return g.size;if(g instanceof ArrayBuffer)return g.byteLength;if(typeof g=="string")return new TextEncoder().encode(g).length;if(g instanceof URLSearchParams)return new TextEncoder().encode(g.toString()).length;if("byteLength"in g)return g.byteLength;if(typeof g=="object"&&g!==null)try{const A=JSON.stringify(g);return new TextEncoder().encode(A).length}catch{return 0}return 0},keI=(g,A,I)=>{let e,t=0;return g.pipeThrough(new TransformStream({transform(o,B){if(B.enqueue(o),e){t+=e.byteLength;let C=A===0?0:t/A;C>=1&&(C=1-Number.EPSILON),I?.({percent:C,totalBytes:Math.max(A,t),transferredBytes:t},e)}e=o},flush(){e&&(t+=e.byteLength,I?.({percent:1,totalBytes:Math.max(A,t),transferredBytes:t},e))}}))},xDt=(g,A)=>{if(!g.body)return g;if(g.status===204)return new Response(null,{status:g.status,statusText:g.statusText,headers:g.headers});const I=Math.max(0,Number(g.headers.get("content-length"))||0);return new Response(keI(g.body,I,A),{status:g.status,statusText:g.statusText,headers:g.headers})},FDt=(g,A,I)=>{if(!g.body)return g;const e=NDt(I??g.body);return new Request(g,{duplex:"half",body:keI(g.body,e,A)})},c5=g=>g!==null&&typeof g=="object",RDA=(...g)=>{for(const A of g)if((!c5(A)||Array.isArray(A))&&A!==void 0)throw new TypeError("The `options` argument must be an object");return FvA({},...g)},MeI=(g={},A={})=>{const I=new globalThis.Headers(g),e=A instanceof globalThis.Headers,t=new globalThis.Headers(A);for(const[o,B]of t.entries())e&&B==="undefined"||B===void 0?I.delete(o):I.set(o,B);return I};function NDA(g,A,I){return Object.hasOwn(A,I)&&A[I]===void 0?[]:FvA(g[I]??[],A[I]??[])}const SeI=(g={},A={})=>({beforeRequest:NDA(g,A,"beforeRequest"),beforeRetry:NDA(g,A,"beforeRetry"),afterResponse:NDA(g,A,"afterResponse"),beforeError:NDA(g,A,"beforeError")}),UDt=(g,A)=>{const I=new URLSearchParams;for(const e of[g,A])if(e!==void 0)if(e instanceof URLSearchParams)for(const[t,o]of e.entries())I.append(t,o);else if(Array.isArray(e))for(const t of e){if(!Array.isArray(t)||t.length!==2)throw new TypeError("Array search parameters must be provided in [[key, value], ...] format");I.append(String(t[0]),String(t[1]))}else if(c5(e))for(const[t,o]of Object.entries(e))o!==void 0&&I.append(t,String(o));else{const t=new URLSearchParams(e);for(const[o,B]of t.entries())I.append(o,B)}return I},FvA=(...g)=>{let A={},I={},e={},t;const o=[];for(const B of g)if(Array.isArray(B))Array.isArray(A)||(A=[]),A=[...A,...B];else if(c5(B)){for(let[C,Q]of Object.entries(B)){if(C==="signal"&&Q instanceof globalThis.AbortSignal){o.push(Q);continue}if(C==="context"){if(Q!=null&&(!c5(Q)||Array.isArray(Q)))throw new TypeError("The `context` option must be an object");A={...A,context:Q==null?{}:{...A.context,...Q}};continue}if(C==="searchParams"){Q==null?t=void 0:t=t===void 0?Q:UDt(t,Q);continue}c5(Q)&&C in A&&(Q=FvA(A[C],Q)),A={...A,[C]:Q}}c5(B.hooks)&&(e=SeI(e,B.hooks),A.hooks=e),c5(B.headers)&&(I=MeI(I,B.headers),A.headers=I)}return t!==void 0&&(A.searchParams=t),o.length>0&&(o.length===1?A.signal=o[0]:ueI?A.signal=AbortSignal.any(o):A.signal=o.at(-1)),A},JDt=g=>GeI.includes(g)?g.toUpperCase():g,feI={limit:2,methods:["get","put","head","delete","options","trace"],statusCodes:[408,413,429,500,502,503,504],afterStatusCodes:[413,429,503],maxRetryAfter:Number.POSITIVE_INFINITY,backoffLimit:Number.POSITIVE_INFINITY,delay:g=>.3*2**(g-1)*1e3,jitter:void 0,retryOnTimeout:!1},PDt=(g={})=>{if(typeof g=="number")return{...feI,limit:g};if(g.methods&&!Array.isArray(g.methods))throw new Error("retry.methods must be an array");if(g.methods&&=g.methods.map(I=>I.toLowerCase()),g.statusCodes&&!Array.isArray(g.statusCodes))throw new Error("retry.statusCodes must be an array");const A=Object.fromEntries(Object.entries(g).filter(([,I])=>I!==void 0));return{...feI,...A}};class UvA extends Error{request;constructor(A){super(`Request timed out: ${A.method} ${A.url}`),this.name="TimeoutError",this.request=A}}async function KDt(g,A,I,e){return new Promise((t,o)=>{const B=setTimeout(()=>{I&&I.abort(),o(new UvA(g))},e.timeout);e.fetch(g,A).then(t).catch(o).then(()=>{clearTimeout(B)})})}async function LDt(g,{signal:A}){return new Promise((I,e)=>{A&&(A.throwIfAborted(),A.addEventListener("abort",t,{once:!0}));function t(){clearTimeout(o),e(A.reason)}const o=setTimeout(()=>{A?.removeEventListener("abort",t),I()},g)})}const YDt=(g,A)=>{const I={};for(const e in A)Object.hasOwn(A,e)&&!(e in RDt)&&!(e in SDt)&&(!(e in g)||e in fDt)&&(I[e]=A[e]);return I},_Dt=g=>g===void 0?!1:Array.isArray(g)?g.length>0:g instanceof URLSearchParams?g.size>0:typeof g=="object"?Object.keys(g).length>0:typeof g=="string"?g.trim().length>0:!!g;function bDt(g){return g instanceof dJ||g?.name===dJ.name}function HDt(g){return g instanceof UvA||g?.name===UvA.name}let ReI=class ilg{static create(A,I){const e=new ilg(A,I),t=async()=>{if(typeof e.#A.timeout=="number"&&e.#A.timeout>xvA)throw new RangeError(`The \`timeout\` option cannot be greater than ${xvA}`);await Promise.resolve();let B=await e.#l();for(const C of e.#A.hooks.afterResponse){const Q=e.#s(B.clone());let i;try{i=await C(e.request,e.#n(),Q,{retryCount:e.#t})}catch(n){throw e.#Q(Q),e.#Q(B),n}if(i instanceof peI)throw e.#Q(Q),e.#Q(B),new NvA(i.options);const E=i instanceof globalThis.Response?i:B;Q!==E&&e.#Q(Q),B!==E&&e.#Q(B),B=E}if(e.#s(B),!B.ok&&(typeof e.#A.throwHttpErrors=="function"?e.#A.throwHttpErrors(B.status):e.#A.throwHttpErrors)){let C=new dJ(B,e.request,e.#n());for(const Q of e.#A.hooks.beforeError)C=await Q(C,{retryCount:e.#t});throw C}if(e.#A.onDownloadProgress){if(typeof e.#A.onDownloadProgress!="function")throw new TypeError("The `onDownloadProgress` option must be a function");if(!GDt)throw new Error("Streams are not supported in your environment. `ReadableStream` is missing.");const C=B.clone();return e.#Q(B),xDt(C,e.#A.onDownloadProgress)}return B},o=e.#h(t).finally(()=>{const B=e.#B;e.#a(B?.body??void 0),e.#a(e.request.body??void 0)});for(const[B,C]of Object.entries(pDt))B==="bytes"&&typeof globalThis.Response?.prototype?.bytes!="function"||(o[B]=async()=>{e.request.headers.set("accept",e.request.headers.get("accept")||C);const Q=await o;if(B==="json"){if(Q.status===204)return"";const i=await Q.text();return i===""?"":I.parseJson?I.parseJson(i):JSON.parse(i)}return Q[B]()});return o}static#e(A){return A&&typeof A=="object"&&!Array.isArray(A)&&!(A instanceof URLSearchParams)?Object.fromEntries(Object.entries(A).filter(([,I])=>I!==void 0)):A}request;#I;#t=0;#g;#A;#B;#o;#i;constructor(A,I={}){if(this.#g=A,this.#A={...I,headers:MeI(this.#g.headers,I.headers),hooks:SeI({beforeRequest:[],beforeRetry:[],beforeError:[],afterResponse:[]},I.hooks),method:JDt(I.method??this.#g.method??"GET"),prefixUrl:String(I.prefixUrl||""),retry:PDt(I.retry),throwHttpErrors:I.throwHttpErrors??!0,timeout:I.timeout??1e4,fetch:I.fetch??globalThis.fetch.bind(globalThis),context:I.context??{}},typeof this.#g!="string"&&!(this.#g instanceof URL||this.#g instanceof globalThis.Request))throw new TypeError("`input` must be a string, URL, or Request");if(this.#A.prefixUrl&&typeof this.#g=="string"){if(this.#g.startsWith("/"))throw new Error("`input` must not begin with a slash when using `prefixUrl`");this.#A.prefixUrl.endsWith("/")||(this.#A.prefixUrl+="/"),this.#g=this.#A.prefixUrl+this.#g}uDt&&ueI&&(this.#o=this.#A.signal??this.#g.signal,this.#I=new globalThis.AbortController,this.#A.signal=this.#o?AbortSignal.any([this.#o,this.#I.signal]):this.#I.signal),weI&&(this.#A.duplex="half"),this.#A.json!==void 0&&(this.#A.body=this.#A.stringifyJson?.(this.#A.json)??JSON.stringify(this.#A.json),this.#A.headers.set("content-type",this.#A.headers.get("content-type")??"application/json"));const e=I.headers&&new globalThis.Headers(I.headers).has("content-type");if(this.#g instanceof globalThis.Request&&(mDt&&this.#A.body instanceof globalThis.FormData||this.#A.body instanceof URLSearchParams)&&!e&&this.#A.headers.delete("content-type"),this.request=new globalThis.Request(this.#g,this.#A),_Dt(this.#A.searchParams)){const o="?"+(typeof this.#A.searchParams=="string"?this.#A.searchParams.replace(/^\?/,""):new URLSearchParams(ilg.#e(this.#A.searchParams)).toString()),B=this.request.url.replace(/(?:\?.*?)?(?=#|$)/,o);this.request=new globalThis.Request(B,this.#A)}if(this.#A.onUploadProgress){if(typeof this.#A.onUploadProgress!="function")throw new TypeError("The `onUploadProgress` option must be a function");if(!weI)throw new Error("Request streams are not supported in your environment. The `duplex` option for `Request` is not available.");this.request=this.#c(this.request,this.#A.body??void 0)}}#C(){const A=this.#A.retry.delay(this.#t);let I=A;this.#A.retry.jitter===!0?I=Math.random()*A:typeof this.#A.retry.jitter=="function"&&(I=this.#A.retry.jitter(A),(!Number.isFinite(I)||I<0)&&(I=A));const e=this.#A.retry.backoffLimit??Number.POSITIVE_INFINITY;return Math.min(e,I)}async#E(A){if(this.#t++,this.#t>this.#A.retry.limit)throw A;const I=A instanceof Error?A:new yeI(A);if(I instanceof NvA)return I.customDelay??this.#C();if(!this.#A.retry.methods.includes(this.request.method.toLowerCase()))throw A;if(this.#A.retry.shouldRetry!==void 0){const e=await this.#A.retry.shouldRetry({error:I,retryCount:this.#t});if(e===!1)throw A;if(e===!0)return this.#C()}if(HDt(A)&&!this.#A.retry.retryOnTimeout)throw A;if(bDt(A)){if(!this.#A.retry.statusCodes.includes(A.response.status))throw A;const e=A.response.headers.get("Retry-After")??A.response.headers.get("RateLimit-Reset")??A.response.headers.get("X-RateLimit-Retry-After")??A.response.headers.get("X-RateLimit-Reset")??A.response.headers.get("X-Rate-Limit-Reset");if(e&&this.#A.retry.afterStatusCodes.includes(A.response.status)){let t=Number(e)*1e3;Number.isNaN(t)?t=Date.parse(e)-Date.now():t>=Date.parse("2024-01-01")&&(t-=Date.now());const o=this.#A.retry.maxRetryAfter??t;return t<o?t:o}if(A.response.status===413)throw A}return this.#C()}#s(A){return this.#A.parseJson&&(A.json=async()=>this.#A.parseJson(await A.text())),A}#a(A){A&&A.cancel().catch(()=>{})}#Q(A){this.#a(A.body??void 0)}async#h(A){try{return await A()}catch(I){const e=Math.min(await this.#E(I),xvA);if(this.#t<1)throw I;if(await LDt(e,this.#o?{signal:this.#o}:{}),I instanceof NvA&&I.customRequest){const t=this.#A.signal?new globalThis.Request(I.customRequest,{signal:this.#A.signal}):new globalThis.Request(I.customRequest);this.#r(t)}for(const t of this.#A.hooks.beforeRetry){const o=await t({request:this.request,options:this.#n(),error:I,retryCount:this.#t});if(o instanceof globalThis.Request){this.#r(o);break}if(o instanceof globalThis.Response)return o;if(o===meI)return}return this.#h(A)}}async#l(){this.#I?.signal.aborted&&(this.#I=new globalThis.AbortController,this.#A.signal=this.#o?AbortSignal.any([this.#o,this.#I.signal]):this.#I.signal,this.request=new globalThis.Request(this.request,{signal:this.#A.signal}));for(const I of this.#A.hooks.beforeRequest){const e=await I(this.request,this.#n(),{retryCount:this.#t});if(e instanceof Response)return e;if(e instanceof globalThis.Request){this.#r(e);break}}const A=YDt(this.request,this.#A);return this.#B=this.request,this.request=this.#B.clone(),this.#A.timeout===!1?this.#A.fetch(this.#B,A):KDt(this.#B,A,this.#I,this.#A)}#n(){if(!this.#i){const{hooks:A,...I}=this.#A;this.#i=Object.freeze(I)}return this.#i}#r(A){this.#i=void 0,this.request=this.#c(A)}#c(A,I){return!this.#A.onUploadProgress||!A.body?A:FDt(A,this.#A.onUploadProgress,I??this.#A.body??void 0)}};const JvA=g=>{const A=(I,e)=>ReI.create(I,RDA(g,e));for(const I of GeI)A[I]=(e,t)=>ReI.create(e,RDA(g,t,{method:I}));return A.create=I=>JvA(RDA(I)),A.extend=I=>(typeof I=="function"&&(I=I(g??{})),JvA(RDA(g,I))),A.stop=meI,A.retry=MDt,A},vDt=JvA();class TDt extends dJ{constructor(A,I,e,t){super(A,I,e),this.name="RegistryHTTPError",this.message=t}}function yJ(g){return typeof window<"u"?window[g]:null}function h3(){const g=yJ("TSCIRCUIT_REGISTRY_API_BASE_URL")||void 0||"https://registry-api.tscircuit.com",A=yJ("TSCIRCUIT_REGISTRY_TOKEN");return vDt.create({prefixUrl:g,headers:{Authorization:`Bearer ${A}`},timeout:3e4,hooks:{afterResponse:[async(I,e,t)=>{if(t.ok)return t;let o=null;try{o=await t.clone().json()}catch(n){console.error("Failed to parse registry error response",n)}const B=o?.error?.message??o?.error?.error_message??o?.message,C=o?.error?.error_code??o?.error_code,Q=new URL(t.url),E=[`Registry request failed for ${`${Q.pathname}${Q.search}`} (${t.status})`];throw B&&E.push(`Server message: ${B}`),C&&E.push(`Error code: ${C}`),new TDt(t,I,e,E.join(" | "))}]}})}function xDA(){return!!yJ("TSCIRCUIT_REGISTRY_TOKEN")}const ugA={get:(g,A)=>h3().get(g,A),post:(g,A)=>h3().post(g,A),put:(g,A)=>h3().put(g,A),delete:(g,A)=>h3().delete(g,A),patch:(g,A)=>h3().patch(g,A)},qDt="phc_htd8AQjSfVEsFCLQMAiUooG4Q0DKBCjqYuQglc9V3Wo",ZDt="https://postpig.tscircuit.com",NeI="runframe:anonymous-id",PvA=()=>typeof window<"u",xeI=g=>g.includes("localhost")||g.includes("127.0.0.1"),ODt=g=>{try{return new URL(g).hostname}catch{return null}},WDt=()=>{if(!PvA())return null;let g=null;return document.referrer&&(g=ODt(document.referrer)),g??window.location.hostname},VDt=()=>typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`,jDt=()=>{if(!PvA())return null;try{const g=window.localStorage.getItem(NeI);if(g)return g;const A=VDt();return window.localStorage.setItem(NeI,A),A}catch{return null}},zDt=()=>yJ("TSCIRCUIT_USE_RUNFRAME_FOR_CLI")===!0,FeI=()=>!PvA()||yJ("TSCIRCUIT_TELEMETRY_DISABLED")===!0||xeI(window.location.hostname)&&!zDt()?!1:(pq.__loaded||pq.init(qDt,{api_host:ZDt,person_profiles:"always"}),!0),XDt=()=>{if(!FeI())return null;const g=WDt(),A=g!=null&&!xeI(g);let I=null;A||(I=jDt());let e,t;return A?(e=`domain:${g}`,t="domain"):(e=void 0,I&&(e=`anonymous:${I}`),t="anonymous_id"),{embedDomain:g,anonymousId:I,distinctId:e,identityType:t}},$Dt=(g,{source:A,...I})=>{const e=XDt();if(!e)return;const{embedDomain:t,anonymousId:o,distinctId:B,identityType:C}=e;if(B){const Q={};C==="domain"&&t&&(Q.embed_domain=t),C==="anonymous_id"&&o&&(Q.runframe_anonymous_id=o),pq.identify(B,Q)}pq.capture(g,{...I,source:A,embed_domain:t,runframe_anonymous_id:o,identity_type:C})},Adt=g=>{$Dt("runframe_activity",g)};FeI();function gdt(g){const A=String.fromCodePoint(...g);return btoa(A)}function Idt(g,A){const I=JSON.stringify(g),e=d9g(u9g(I));return`https://tscircuit.com/editor?#data:application/gzip;base64,${gdt(e)}`}function oo(...g){return act(NR(g))}const UeI=g=>g.replace(/_/g," ").replace(/\b\w/g,A=>A.toUpperCase()),KvA=Frt,FDA=z.forwardRef(({className:g,...A},I)=>T.jsx($Xg,{ref:I,className:oo("rf-inline-flex rf-h-9 rf-items-center rf-justify-center rf-rounded-lg rf-bg-zinc-100 rf-p-1 rf-text-zinc-500 dark:rf-bg-zinc-800 dark:rf-text-zinc-400",g),...A}));FDA.displayName=$Xg.displayName;const Gx=z.forwardRef(({className:g,...A},I)=>T.jsx(A$g,{ref:I,className:oo("rf-inline-flex rf-items-center rf-justify-center rf-whitespace-nowrap rf-rounded-md rf-px-3 rf-py-1 rf-text-sm rf-font-medium rf-ring-offset-white rf-transition-all focus-visible:rf-outline-none focus-visible:rf-ring-2 focus-visible:rf-ring-zinc-950 focus-visible:rf-ring-offset-2 disabled:rf-pointer-events-none disabled:rf-opacity-50 data-[state=active]:rf-bg-white data-[state=active]:rf-text-zinc-950 data-[state=active]:rf-shadow dark:rf-ring-offset-zinc-950 dark:focus-visible:rf-ring-zinc-300 dark:data-[state=active]:rf-bg-zinc-950 dark:data-[state=active]:rf-text-zinc-50",g),...A}));Gx.displayName=A$g.displayName;const Ny=z.forwardRef(({className:g,...A},I)=>T.jsx(g$g,{ref:I,className:oo("rf-h-full rf-mt-2 rf-ring-offset-white focus-visible:rf-outline-none focus-visible:rf-ring-2 focus-visible:rf-ring-zinc-950 focus-visible:rf-ring-offset-2 dark:rf-ring-offset-zinc-950 dark:focus-visible:rf-ring-zinc-300",g),...A}));Ny.displayName=g$g.displayName;function mI(g,A){return Array.isArray(A)?[g.a*A[0]+g.c*A[1]+g.e,g.b*A[0]+g.d*A[1]+g.f]:{x:g.a*A.x+g.c*A.y+g.e,y:g.b*A.x+g.d*A.y+g.f}}const edt=/^matrix\(\s*([0-9_+-.e]+)\s*,\s*([0-9_+-.e]+)\s*,\s*([0-9_+-.e]+)\s*,\s*([0-9_+-.e]+)\s*,\s*([0-9_+-.e]+)\s*,\s*([0-9_+-.e]+)\s*\)$/i;function tdt(g){const A=g.match(edt);if(A===null||A.length<7)throw new Error(`'${g}' is not a matrix`);return{a:parseFloat(A[1]),b:parseFloat(A[2]),c:parseFloat(A[3]),d:parseFloat(A[4]),e:parseFloat(A[5]),f:parseFloat(A[6])}}function odt(g){const{a:A,b:I,c:e,d:t,e:o,f:B}=g,C=A*t-I*e;return{a:t/C,b:I/-C,c:e/-C,d:A/C,e:(t*o-e*B)/-C,f:(I*o-A*B)/C}}function GgA(g){return typeof g>"u"}function fD(g,A=0){return{a:1,c:0,e:g,b:0,d:1,f:A}}function mgA(...g){g=Array.isArray(g[0])?g[0]:g;const A=(I,e)=>({a:I.a*e.a+I.c*e.b,c:I.a*e.c+I.c*e.d,e:I.a*e.e+I.c*e.f+I.e,b:I.b*e.a+I.d*e.b,d:I.b*e.c+I.d*e.d,f:I.b*e.e+I.d*e.f+I.f});switch(g.length){case 0:throw new Error("no matrices provided");case 1:return g[0];case 2:return A(g[0],g[1]);default:{const[I,e,...t]=g,o=A(I,e);return mgA(o,...t)}}}function os(...g){return mgA(...g)}const{cos:Bdt,sin:Cdt}=Math;function mx(g,A,I){const e=Bdt(g),t=Cdt(g),o={a:e,c:-t,e:0,b:t,d:e,f:0};return GgA(A)||GgA(I)?o:mgA([fD(A,I),o,fD(-A,-I)])}function ck(g,A=void 0,I=void 0,e=void 0){GgA(A)&&(A=g);const t={a:g,c:0,e:0,b:0,d:A,f:0};return GgA(I)||GgA(e)?t:mgA([fD(I,e),t,fD(-I,-e)])}function Qdt(g){return px(g)}function px(g){return`matrix(${g.a},${g.b},${g.c},${g.d},${g.e},${g.f})`}function idt(g,A=1e10){return{a:Math.round(g.a*A)/A,b:Math.round(g.b*A)/A,c:Math.round(g.c*A)/A,d:Math.round(g.d*A)/A,e:Math.round(g.e*A)/A,f:Math.round(g.f*A)/A}}function Edt(g,A){const I=g[0].x!=null?g[0].x:g[0][0],e=g[0].y!=null?g[0].y:g[0][1],t=A[0].x!=null?A[0].x:A[0][0],o=A[0].y!=null?A[0].y:A[0][1],B=g[1].x!=null?g[1].x:g[1][0],C=g[1].y!=null?g[1].y:g[1][1],Q=A[1].x!=null?A[1].x:A[1][0],i=A[1].y!=null?A[1].y:A[1][1],E=g[2].x!=null?g[2].x:g[2][0],n=g[2].y!=null?g[2].y:g[2][1],s=A[2].x!=null?A[2].x:A[2][0],r=A[2].y!=null?A[2].y:A[2][1],a={a:I-E,b:e-n,c:B-E,d:C-n,e:E,f:n},c={a:t-s,b:o-r,c:Q-s,d:i-r,e:s,f:r},h=odt(a),l=mgA([c,h]);return idt(l)}function ndt(g,A){function I(){this.constructor=g}I.prototype=A.prototype,g.prototype=new I}function UDA(g,A,I,e){var t=Error.call(this,g);return Object.setPrototypeOf&&Object.setPrototypeOf(t,UDA.prototype),t.expected=A,t.found=I,t.location=e,t.name="SyntaxError",t}ndt(UDA,Error);function LvA(g,A,I){return I=I||" ",g.length>A?g:(A-=g.length,I+=I.repeat(A),g+I.slice(0,A))}UDA.prototype.format=function(g){var A="Error: "+this.message;if(this.location){var I=null,e;for(e=0;e<g.length;e++)if(g[e].source===this.location.source){I=g[e].text.split(/\r\n|\n|\r/g);break}var t=this.location.start,o=this.location.source&&typeof this.location.source.offset=="function"?this.location.source.offset(t):t,B=this.location.source+":"+o.line+":"+o.column;if(I){var C=this.location.end,Q=LvA("",o.line.toString().length," "),i=I[t.line-1],E=t.line===C.line?C.column:i.length+1,n=E-t.column||1;A+=`
1070
1070
  --> `+B+`
1071
1071
  `+Q+` |
@@ -5667,7 +5667,7 @@ test("${i} should solve problem correctly", () => {
5667
5667
  // Add more specific assertions based on expected output
5668
5668
  // expect(solver.netLabelPlacementSolver!.netLabelPlacements).toMatchInlineSnapshot()
5669
5669
  })
5670
- `,n=new Blob([E],{type:"text/plain"}),s=URL.createObjectURL(n),r=document.createElement("a");r.href=s,r.download=`${i}.test.ts`,r.click(),URL.revokeObjectURL(s)}catch(Q){alert(`Error generating test.ts for ${g.getSolverName()}: ${Q instanceof Error?Q.message:String(Q)}`)}e(!1)};return T.jsxs("div",{className:`relative ${A}`,ref:t,children:[T.jsx("button",{className:"px-2 py-1 rounded text-xs cursor-pointer",onClick:()=>e(!I),title:`Download options for ${g.getSolverName()}`,children:g.getSolverName()}),I&&T.jsxs("div",{className:"absolute top-full left-0 mt-1 bg-white border border-gray-300 rounded shadow-lg z-10 min-w-[150px]",children:[T.jsx("button",{className:"w-full text-left px-3 py-2 hover:bg-gray-100 text-xs",onClick:o,children:"Download JSON"}),T.jsx("button",{className:"w-full text-left px-3 py-2 hover:bg-gray-100 text-xs",onClick:B,children:"Download page.tsx"}),T.jsx("button",{className:"w-full text-left px-3 py-2 hover:bg-gray-100 text-xs",onClick:C,children:"Download test.ts"})]})]})},VJI=g=>g.activeSubSolver?[g,...VJI(g.activeSubSolver)]:[g],npo=({solver:g})=>{const A=VJI(g);return T.jsx("div",{className:"flex gap-1 items-center text-sm pt-1",children:A.map((I,e)=>T.jsxs("div",{className:"flex items-center",children:[e>0&&T.jsx("span",{className:"text-gray-400 mx-1",children:"→"}),T.jsx(Epo,{solver:I})]},I.getSolverName()))})},spo=({solver:g,triggerRender:A,animationSpeed:I=25,renderer:e,onRendererChange:t,onAnimationSpeedChange:o,onDownloadVisualization:B,onSolverStarted:C,onSolverCompleted:Q})=>{const[i,E]=z.useReducer(m=>!m,!1),n=z.useRef(void 0),s=z.useRef(null),r="solver-debugger-last-iteration",[a,c]=z.useState(null),h=z.useRef(null),l=z.useMemo(()=>[{label:"Slow",value:250,description:"250ms"},{label:"Normal",value:100,description:"100ms"},{label:"Fast",value:10,description:"10ms"},{label:"Fast (2x)",value:5,description:"5ms"},{label:"Fast (10x)",value:1,description:"1ms"},{label:"Fast 20x",value:.5,description:"2 steps / 1ms"},{label:"Fast 100x",value:.1,description:"10 steps / 1ms"}],[]),D=()=>{const m=Math.max(1,I),p=I<1?Math.round(1/I):1;n.current=setInterval(()=>{if(g.solved||g.failed){n.current&&(clearInterval(n.current),n.current=void 0),E(),A(),Q&&g.solved&&Q(g);return}for(let k=0;k<p&&!(g.solved||g.failed);k++)g.step();A()},m)},d=()=>{n.current&&(clearInterval(n.current),n.current=void 0)},y=()=>{!g.solved&&!g.failed&&(g.step(),A())},w=()=>{!g.solved&&!g.failed&&(C&&C(g),g.solve(),A(),Q&&Q(g))},u=()=>{i?(d(),E()):(E(),D())},G=()=>{if(g.solved||g.failed||i)return;s.current===null&&typeof window<"u"&&(s.current=window.localStorage.getItem(r));const m=window.prompt("Step until which iteration?",s.current??`${g.iterations}`);if(m===null)return;s.current=m,typeof window<"u"&&window.localStorage.setItem(r,m);const p=Number(m);if(!Number.isFinite(p)){window.alert("Please enter a valid number for the iteration");return}for(;g.iterations<p&&!g.solved&&!g.failed;)g.step();A(),g.solved&&Q&&Q(g)};return z.useEffect(()=>()=>{d()},[]),z.useEffect(()=>{(g.solved||g.failed)&&i&&(d(),E())},[g.solved,g.failed,i]),z.useEffect(()=>{i&&(d(),D())},[I,i]),z.useEffect(()=>{if(typeof document>"u")return;const m=p=>{h.current&&!h.current.contains(p.target)&&c(null)};return document.addEventListener("mousedown",m),()=>{document.removeEventListener("mousedown",m)}},[]),T.jsxs("div",{className:"space-y-2 p-2 border-b",children:[T.jsx("div",{className:"flex items-center",children:T.jsxs("div",{className:"flex items-center gap-2",ref:h,children:[T.jsxs("div",{className:"flex h-9 items-center space-x-1 rounded-md border border-slate-200 bg-white p-1 shadow-sm",children:[T.jsxs("div",{className:"relative",children:[T.jsx("button",{type:"button",onClick:()=>c(a==="renderer"?null:"renderer"),className:"flex select-none items-center rounded-sm px-3 py-1 text-sm font-medium outline-none focus:bg-slate-100 data-[state=open]:bg-slate-100","data-state":a==="renderer"?"open":"closed",children:"Renderer"}),a==="renderer"&&T.jsx("div",{className:"absolute left-0 z-50 mt-1 min-w-[10rem] rounded-md border border-slate-200 bg-white p-1 text-slate-950 shadow-md",children:["vector","canvas"].map(m=>T.jsxs("button",{type:"button",onClick:()=>{t(m),c(null)},className:"flex w-full items-center rounded-sm px-2 py-1.5 text-sm hover:bg-slate-100",children:[m==="vector"?"Vector":"Canvas",e===m&&T.jsx("span",{className:"ml-auto text-xs text-slate-500",children:"✓"})]},m))})]}),T.jsxs("div",{className:"relative",children:[T.jsx("button",{type:"button",onClick:()=>c(a==="debug"?null:"debug"),className:"flex select-none items-center rounded-sm px-3 py-1 text-sm font-medium outline-none focus:bg-slate-100 data-[state=open]:bg-slate-100","data-state":a==="debug"?"open":"closed",children:"Debug"}),a==="debug"&&T.jsx("div",{className:"absolute left-0 z-50 mt-1 min-w-[12rem] rounded-md border border-slate-200 bg-white p-1 text-slate-950 shadow-md",children:T.jsx("button",{type:"button",onClick:()=>{B(),c(null)},className:"flex w-full items-center rounded-sm px-2 py-1.5 text-sm hover:bg-slate-100",children:"Download Visualization"})})]}),T.jsxs("div",{className:"relative",children:[T.jsx("button",{type:"button",onClick:()=>c(a==="animation"?null:"animation"),className:"flex select-none items-center rounded-sm px-3 py-1 text-sm font-medium outline-none focus:bg-slate-100 data-[state=open]:bg-slate-100","data-state":a==="animation"?"open":"closed",children:"Animation"}),a==="animation"&&T.jsx("div",{className:"absolute left-0 z-50 mt-1 min-w-[12rem] rounded-md border border-slate-200 bg-white p-1 text-slate-950 shadow-md",children:l.map(m=>T.jsxs("button",{type:"button",onClick:()=>{o(m.value),c(null)},className:"flex w-full items-center rounded-sm px-2 py-1.5 text-sm hover:bg-slate-100",children:[m.label,T.jsx("span",{className:"ml-auto text-xs text-slate-500",children:m.description}),I===m.value&&T.jsx("span",{className:"ml-2 text-xs text-slate-500",children:"✓"})]},m.value))})]})]}),T.jsx(npo,{solver:g})]})}),T.jsxs("div",{className:"flex gap-2 items-center flex-wrap",children:[T.jsx("button",{onClick:y,disabled:g.solved||g.failed||i,className:"bg-blue-500 hover:bg-blue-600 disabled:bg-gray-300 text-white px-3 py-1 rounded text-sm",children:"Step"}),T.jsx("button",{onClick:w,disabled:g.solved||g.failed||i,className:"bg-green-500 hover:bg-green-600 disabled:bg-gray-300 text-white px-3 py-1 rounded text-sm",children:"Solve"}),T.jsx("button",{onClick:u,disabled:g.solved||g.failed,className:`px-3 py-1 rounded text-white text-sm ${i?"bg-red-500 hover:bg-red-600":"bg-yellow-500 hover:bg-yellow-600"} disabled:bg-gray-300`,children:i?"Stop":"Animate"}),T.jsx("button",{onClick:G,disabled:g.solved||g.failed||i,className:"bg-orange-500 hover:bg-orange-600 disabled:bg-gray-300 text-white px-3 py-1 rounded text-sm",children:"Step Until Iteration"}),T.jsxs("div",{className:"text-sm text-gray-600",children:["Iterations: ",g.iterations]}),g.timeToSolve!==void 0&&T.jsxs("div",{className:"text-sm text-gray-600",children:["Time: ",(g.timeToSolve/1e3).toFixed(3),"s"]}),g.solved&&T.jsx("div",{className:"px-2 py-1 bg-green-100 text-green-800 rounded text-sm",children:"Solved"}),g.failed&&T.jsx("div",{className:"px-2 py-1 bg-red-100 text-red-800 rounded text-sm",children:"Failed"})]}),g.error&&T.jsxs("div",{className:"text-red-600 text-sm",children:["Error: ",g.error]})]})},apo=g=>g!==null&&"pipelineDef"in g&&Array.isArray(g.pipelineDef),rpo=(g,A,I)=>{const e=g.currentPipelineStageIndex;return A<e?"Completed":A===e&&g.activeSubSolver?g.activeSubSolver.failed?"Failed":"In Progress":"Not Started"},cpo=(g,A)=>{const e=g.pipelineDef[A].solverName,t=rpo(g,A),o=g[e],B=g.firstIterationOfStage?.[e]??(A===g.currentPipelineStageIndex?g.iterations:null),C=g.iterations;let Q=0;if(t==="Completed"){const s=g.pipelineDef[A+1],r=s?g.firstIterationOfStage?.[s.solverName]:void 0;r!==void 0&&B!==null?Q=r-B:B!==null&&(Q=C-B)}else t==="In Progress"&&B!==null&&(Q=C-B);const i=g.timeSpentOnStage?.[e]??0;let E=0;t==="Completed"?E=1:t==="In Progress"&&o&&(E=o.progress??0);const n=o?.stats??null;return{index:A,name:e,status:t,firstIteration:B,iterations:Q,progress:E,timeSpent:i,stats:n&&Object.keys(n).length>0?n:null,solverInstance:o??null}},hpo=({status:g})=>{const A={"Not Started":"text-blue-600","In Progress":"text-yellow-600",Completed:"text-green-600",Failed:"text-red-600"};return T.jsx("span",{className:`font-medium ${A[g]}`,children:g})},lpo=({progress:g})=>{if(g===0)return null;const A=Math.round(g*100);return T.jsxs("div",{className:"flex items-center gap-2",children:[T.jsx("div",{className:"w-20 h-2 bg-gray-200 rounded overflow-hidden",children:T.jsx("div",{className:"h-full bg-blue-500 transition-all duration-200",style:{width:`${A}%`}})}),T.jsxs("span",{className:"text-xs text-gray-500",children:[A,"%"]})]})},jJI=g=>{if(typeof g=="string")return g;if(typeof g=="number"||typeof g=="boolean"||typeof g=="bigint"||g==null)return String(g);if(typeof g=="object")try{return JSON.stringify(g)}catch{return String(g)}return String(g)},Dpo=g=>Object.entries(g).map(([A,I])=>`${A}: ${jJI(I)}`).join(", "),dpo=({stats:g})=>{if(!g||Object.keys(g).length===0)return T.jsx("span",{children:"-"});const A=Object.entries(g),I=Dpo(g);return T.jsxs("details",{className:"cursor-pointer",children:[T.jsx("summary",{className:"whitespace-nowrap overflow-hidden text-ellipsis max-w-[200px]",children:I}),T.jsx("div",{className:"mt-1 text-xs",children:A.map(([e,t])=>T.jsxs("div",{children:[e,": ",jJI(t)]},e))})]})},rCg=g=>{if(g===null||typeof g!="object")return g;if(Array.isArray(g))return g.map(rCg);const A={};for(const[I,e]of Object.entries(g))I.startsWith("_")||(A[I]=rCg(e));return A},ypo=(g,A)=>{try{if(typeof g.getConstructorParams!="function"){alert(`getConstructorParams() is not implemented for ${A}`);return}const I=rCg(g.getConstructorParams()),e=new Blob([JSON.stringify(I,null,2)],{type:"application/json"}),t=URL.createObjectURL(e),o=document.createElement("a");o.href=t,o.download=`${A}_input.json`,o.click(),URL.revokeObjectURL(t)}catch(I){alert(`Error downloading input for ${A}: ${I instanceof Error?I.message:String(I)}`)}},wpo=({expanded:g})=>T.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",className:`w-4 h-4 transition-transform duration-200 ${g?"rotate-90":""}`,children:T.jsx("path",{fillRule:"evenodd",d:"M4.5 5.653c0-1.426 1.529-2.33 2.779-1.643l11.54 6.348c1.295.712 1.295 2.573 0 3.285L7.28 19.991c-1.25.687-2.779-.217-2.779-1.643V5.653z",clipRule:"evenodd"})}),zJI=g=>{let A=g;for(;A.activeSubSolver;)A=A.activeSubSolver;return A},XJI=({solver:g,onStepUntilPhase:A,onDownloadInput:I,isNested:e=!1,indentLevel:t=0,triggerRender:o})=>{const[B,C]=z.useState(new Set),Q=g.pipelineDef.map((h,l)=>cpo(g,l)),i=h=>{C(l=>{const D=new Set(l);return D.has(h)?D.delete(h):D.add(h),D})},E=h=>{A?.(h)},n=h=>{h.solverInstance&&(I?I(h.solverInstance,h.name):ypo(h.solverInstance,h.name))},s=h=>`${(h/1e3).toFixed(2)}s`,r=()=>{if(!g.solved&&!g.failed){const h=g.activeSubSolver;for(;!g.solved&&!g.failed&&(g.step(),!(g.activeSubSolver&&g.activeSubSolver!==h)););o?.()}},a=()=>{if(!g.solved&&!g.failed){const h=zJI(g);for(;!g.solved&&!g.failed&&(g.step(),zJI(g)===h););o?.()}},c=t*24;return T.jsxs("div",{className:e?"":"border-t border-gray-200",children:[!e&&T.jsxs("div",{className:"px-4 py-2 bg-gray-50 border-b border-gray-200 flex items-center justify-between",children:[T.jsx("h3",{className:"text-sm font-semibold text-gray-700",children:"Pipeline Stages"}),T.jsxs("div",{className:"flex gap-2",children:[T.jsx("button",{onClick:a,disabled:g.solved||g.failed,className:"bg-indigo-500 hover:bg-indigo-600 disabled:bg-gray-300 disabled:cursor-not-allowed cursor-pointer text-white px-3 py-1 rounded text-sm",children:"Next Solver"}),T.jsx("button",{onClick:r,disabled:g.solved||g.failed,className:"bg-purple-500 hover:bg-purple-600 disabled:bg-gray-300 disabled:cursor-not-allowed cursor-pointer text-white px-3 py-1 rounded text-sm",children:"Next Stage"})]})]}),T.jsx("div",{className:"overflow-x-auto",children:T.jsxs("table",{className:"w-full text-sm",children:[!e&&T.jsx("thead",{children:T.jsxs("tr",{className:"bg-gray-50 border-b border-gray-200",children:[T.jsx("th",{className:"px-4 py-2 text-left font-semibold text-gray-700",children:"Stage"}),T.jsx("th",{className:"px-4 py-2 text-left font-semibold text-gray-700",children:"Status"}),T.jsxs("th",{className:"px-4 py-2 text-center font-semibold text-gray-700",children:["i",T.jsx("sub",{children:"0"})]}),T.jsx("th",{className:"px-4 py-2 text-left font-semibold text-gray-700",children:"Iterations"}),T.jsx("th",{className:"px-4 py-2 text-left font-semibold text-gray-700",children:"Progress"}),T.jsx("th",{className:"px-4 py-2 text-left font-semibold text-gray-700",children:"Time"}),T.jsx("th",{className:"px-4 py-2 text-left font-semibold text-gray-700",children:"Stats"}),T.jsx("th",{className:"px-4 py-2 text-left font-semibold text-gray-700",children:"Input"})]})}),T.jsx("tbody",{children:Q.map(h=>{const l=apo(h.solverInstance),D=B.has(h.name);return T.jsxs(rC.Fragment,{children:[T.jsxs("tr",{className:`border-b border-gray-100 ${h.status==="In Progress"?"bg-yellow-50":""}`,children:[T.jsx("td",{className:"px-4 py-2",children:T.jsxs("div",{className:"flex items-center gap-2",style:{paddingLeft:c},children:[l?T.jsx("button",{onClick:()=>i(h.name),className:"text-gray-500 hover:text-gray-700",title:D?"Collapse":"Expand",children:T.jsx(wpo,{expanded:D})}):T.jsx("span",{className:"w-4"}),T.jsx("span",{className:"text-gray-400 w-6",children:String(h.index+1).padStart(2,"0")}),T.jsx("button",{onClick:()=>E(h.name),disabled:h.status==="Completed"||g.solved||g.failed,className:"text-blue-500 hover:text-blue-700 disabled:text-gray-300 disabled:cursor-not-allowed",title:`Step until ${h.name} completes`,children:T.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",className:"w-4 h-4",children:T.jsx("path",{fillRule:"evenodd",d:"M4.5 5.653c0-1.426 1.529-2.33 2.779-1.643l11.54 6.348c1.295.712 1.295 2.573 0 3.285L7.28 19.991c-1.25.687-2.779-.217-2.779-1.643V5.653z",clipRule:"evenodd"})})}),T.jsx("span",{className:"font-medium text-gray-900",children:h.name})]})}),T.jsx("td",{className:"px-4 py-2",children:T.jsx(hpo,{status:h.status})}),T.jsx("td",{className:"px-4 py-2 text-center text-gray-600",children:h.firstIteration!==null?h.firstIteration:""}),T.jsx("td",{className:"px-4 py-2 text-gray-600",children:h.iterations}),T.jsx("td",{className:"px-4 py-2",children:T.jsx(lpo,{progress:h.progress})}),T.jsx("td",{className:"px-4 py-2 text-gray-600",children:s(h.timeSpent)}),T.jsx("td",{className:"px-4 py-2 text-gray-500",children:T.jsx(dpo,{stats:h.stats})}),T.jsx("td",{className:"px-4 py-2",children:h.solverInstance?T.jsxs("button",{onClick:()=>n(h),className:"flex items-center gap-1 text-blue-500 hover:text-blue-700",title:`Download input for ${h.name}`,children:[T.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",className:"w-4 h-4",children:T.jsx("path",{fillRule:"evenodd",d:"M12 2.25a.75.75 0 01.75.75v11.69l3.22-3.22a.75.75 0 111.06 1.06l-4.5 4.5a.75.75 0 01-1.06 0l-4.5-4.5a.75.75 0 111.06-1.06l3.22 3.22V3a.75.75 0 01.75-.75zm-9 13.5a.75.75 0 01.75.75v2.25a1.5 1.5 0 001.5 1.5h13.5a1.5 1.5 0 001.5-1.5V16.5a.75.75 0 011.5 0v2.25a3 3 0 01-3 3H5.25a3 3 0 01-3-3V16.5a.75.75 0 01.75-.75z",clipRule:"evenodd"})}),T.jsx("span",{children:"Input"})]}):null})]}),l&&D&&T.jsx("tr",{children:T.jsx("td",{colSpan:8,className:"p-0",children:T.jsx(XJI,{solver:h.solverInstance,onStepUntilPhase:A,onDownloadInput:I,isNested:!0,indentLevel:t+1,triggerRender:o})})})]},h.name)})})]})})]})};function upo({graphics:g}){const A=g.points??[],I=g.lines??[],e=g.rects??[],t=g.circles??[],o=g.texts??[];let B=Number.POSITIVE_INFINITY,C=Number.POSITIVE_INFINITY,Q=Number.NEGATIVE_INFINITY,i=Number.NEGATIVE_INFINITY;const E=(h,l)=>{typeof h=="number"&&(h<B&&(B=h),h>Q&&(Q=h)),typeof l=="number"&&(l<C&&(C=l),l>i&&(i=l))};for(const h of A)E(h.x,h.y);for(const h of I){const l=h.points??[];for(const D of l)E(D.x,D.y)}for(const h of e){const l=h.x??0,D=h.y??0,d=h.width??0,y=h.height??0;E(l,D),E(l+d,D+y)}for(const h of t){const l=h.x??0,D=h.y??0,d=h.radius??1;E(l-d,D-d),E(l+d,D+d)}for(const h of o)E(h.x,h.y);(!isFinite(B)||!isFinite(C)||!isFinite(Q)||!isFinite(i))&&(B=-20,C=-20,Q=20,i=20);const n=10,s=B-n,r=C-n,a=Math.max(1,Q-B+2*n),c=Math.max(1,i-C+2*n);return T.jsxs("svg",{className:"w-full h-[400px] bg-white",viewBox:`${s} ${r} ${a} ${c}`,role:"img","aria-label":"Graphics fallback",children:[e.map((h,l)=>T.jsx("rect",{x:h.x??0,y:h.y??0,width:h.width??0,height:h.height??0,fill:"none",stroke:h.strokeColor??"black",strokeWidth:h.strokeWidth??1},`rect-${l}`)),I.map((h,l)=>T.jsx("polyline",{fill:"none",stroke:h.strokeColor??"black",strokeWidth:h.strokeWidth??1,points:(h.points??[]).map(D=>`${D.x??0},${D.y??0}`).join(" ")},`line-${l}`)),t.map((h,l)=>T.jsx("circle",{cx:h.x??0,cy:h.y??0,r:h.radius??1.5,fill:h.fillColor??"none",stroke:h.strokeColor??"black",strokeWidth:h.strokeWidth??1},`circle-${l}`)),A.map((h,l)=>T.jsx("circle",{cx:h.x??0,cy:h.y??0,r:h.radius??1.5,fill:h.color??"black"},`point-${l}`)),o.map((h,l)=>T.jsx("text",{x:h.x??0,y:h.y??0,fontSize:h.fontSize??10,fill:h.color??"black",children:h.text??""},`text-${l}`))]})}var Gpo=class extends rC.Component{constructor(g){super(g),this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(g){console.error("InteractiveGraphics render error:",g)}render(){return this.state.hasError?this.props.fallback:this.props.children}},mpo=({solver:g,createSolver:A,animationSpeed:I=25,onSolverStarted:e,onSolverCompleted:t})=>{const[o,B]=z.useReducer(D=>D+1,0),[C]=z.useState(()=>{if(A)return A();if(!g)throw new Error("GenericSolverDebugger requires solver or createSolver");return g}),[Q,i]=z.useState(()=>typeof window>"u"?"vector":window.localStorage.getItem("solver-utils-renderer")==="canvas"?"canvas":"vector"),[E,n]=z.useState(I),s=z.useMemo(()=>{try{return C.visualize()||{points:[],lines:[],rects:[],circles:[]}}catch(D){return console.error("Visualization error:",D),{points:[],lines:[],rects:[],circles:[]}}},[C,o]),r=z.useMemo(()=>(s.rects?.length||0)===0&&(s.lines?.length||0)===0&&(s.points?.length||0)===0&&(s.circles?.length||0)===0,[s]);z.useEffect(()=>{if(!(typeof document>"u")&&!document.querySelector('script[src="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4"]')){const D=document.createElement("script");D.src="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4",document.head.appendChild(D)}},[]),z.useEffect(()=>{n(I)},[I]);const a=C.pipelineDef!==void 0,c=D=>{const d=C;if(!C.solved&&!C.failed){for(;!C.solved&&!C.failed&&d.currentPipelineStageIndex<=d.pipelineDef.findIndex(y=>y.solverName===D);)C.step();B()}},h=()=>{const D=JSON.stringify(s,null,2),d=new Blob([D],{type:"application/json"}),y=URL.createObjectURL(d),w=document.createElement("a");w.download="visualization.json",w.href=y,document.body.appendChild(w),w.click(),document.body.removeChild(w),URL.revokeObjectURL(y)},l=D=>{i(D),typeof window<"u"&&window.localStorage.setItem("solver-utils-renderer",D)};return T.jsxs("div",{children:[T.jsx(spo,{solver:C,triggerRender:B,animationSpeed:E,renderer:Q,onRendererChange:l,onAnimationSpeedChange:n,onDownloadVisualization:h,onSolverStarted:e,onSolverCompleted:t}),r?T.jsx("div",{className:"p-4 text-gray-500",children:"No Graphics Yet"}):T.jsx(Gpo,{fallback:T.jsx(upo,{graphics:s}),children:Q==="canvas"?T.jsx(ipo,{graphics:s}):T.jsx(Bpo,{graphics:s})}),a&&T.jsx(XJI,{solver:C,onStepUntilPhase:c,triggerRender:B})]})};const ppo=()=>{z.useEffect(()=>{const g="tailwind-cdn-script";if(document.getElementById(g)||window.tailwind)return;const A=document.createElement("div");A.className="hidden",document.body.appendChild(A);const I=window.getComputedStyle(A).display==="none";if(document.body.removeChild(A),I)return;const e=document.createElement("script");e.id=g,e.src="https://cdn.tailwindcss.com",document.head.appendChild(e)},[])},kpo=1e3,Yk=(g,A)=>{const{fileName:I,mimeType:e="text/plain"}=A,t=g instanceof Blob?g:new Blob([g],{type:e}),o=URL.createObjectURL(t),B=document.createElement("a");B.href=o,B.download=I,B.target="_blank",B.rel="noopener noreferrer",B.style.display="none",document.body.appendChild(B),B.click(),document.body.removeChild(B),setTimeout(()=>{URL.revokeObjectURL(o)},kpo)},cCg=g=>{let A=g.trim().replace(/[\\/:*?"<>|]/g,"_").replace(/[\x00-\x1f]/g,"").replace(/^\.+/,"").replace(/\.+$/,"").replace(/\s+/g," ").replace(/_+/g,"_");return/^(con|prn|aux|nul|com[0-9]|lpt[0-9])$/i.test(A)&&(A=`_${A}`),A=A.slice(0,200),A||"untitled"},Mpo=g=>{const A=g.solverConstructorArgs??[g.solverParams];if(g.solverName!=="AutoroutingPipelineSolver7_MultiGraph"||A.length!==1)return A;const[{input:I,options:e}]=A;return[I,e]},DF="https://github.com/tscircuit/tscircuit-autorouter/issues/new",$JI="https://github.com/tscircuit/copper-pour-solver/issues/new",API="https://github.com/tscircuit/calculate-packing/issues/new",Spo="https://github.com/tscircuit/matchpack/issues/new",gPI="https://github.com/tscircuit/schematic-trace-solver/issues/new?template=json-bug-report.yml",fpo={PackSolver2:API,LayoutPipelineSolver:Spo,AutoroutingPipelineSolver:DF,AssignableAutoroutingPipeline2:DF,AssignableAutoroutingPipeline3:DF,AutoroutingPipeline1_OriginalUnravel:DF,AutoroutingPipelineSolver3_HgPortPointPathing:DF,AutoroutingPipelineSolver4:DF,AutoroutingPipelineSolver5:DF,AutoroutingPipelineSolver7_MultiGraph:DF,AutoroutingPipelineSolver8:DF,CopperPourPipelineSolver:$JI,SchematicTracePipelineSolver:gPI},Rpo=g=>g.toLowerCase().includes("pack")?b1I:g.toLowerCase().includes("rout")?v1I:Sro,IPI=g=>{const A=fpo[g];if(A)return A;const I=g.toLowerCase();return I.includes("autorout")?DF:I.includes("schematic")&&I.includes("trace")?gPI:I.includes("copperpour")?$JI:I.includes("pack")?API:null},Npo=g=>`${cCg(`${g.componentName}-${g.solverName}`)}-solver-input.json`,ePI=g=>{Yk(JSON.stringify(g.solverParams,null,2),{fileName:Npo(g),mimeType:"application/json"})},xpo=({solverEvent:g})=>{const A=IPI(g.solverName);return T.jsxs("div",{className:"rf-flex rf-items-center rf-justify-end rf-gap-2 rf-border-b rf-border-gray-200 rf-bg-gray-50 rf-px-4 rf-py-2",children:[T.jsxs(si,{type:"button",variant:"outline",size:"sm",onClick:()=>ePI(g),children:[T.jsx(GtA,{className:"rf-w-4 rf-h-4"}),"Download"]}),A?T.jsx(si,{asChild:!0,variant:"outline",size:"sm",children:T.jsxs("a",{href:A,target:"_blank",rel:"noopener noreferrer",children:[T.jsx(SGA,{className:"rf-w-4 rf-h-4"}),"Report"]})}):T.jsxs(si,{type:"button",variant:"outline",size:"sm",disabled:!0,title:"No report link configured for this solver",children:[T.jsx(SGA,{className:"rf-w-4 rf-h-4"}),"Report"]})]})},Fpo=({solverEvent:g})=>{const A=IPI(g.solverName);return A?T.jsx(si,{asChild:!0,variant:"ghost",size:"icon",className:"rf-h-8 rf-w-8",children:T.jsx("a",{href:A,target:"_blank",rel:"noopener noreferrer",title:"Report solver bug","aria-label":"Report solver bug",children:T.jsx(SGA,{className:"rf-w-4 rf-h-4"})})}):T.jsx(si,{type:"button",variant:"ghost",size:"icon",className:"rf-h-8 rf-w-8",disabled:!0,title:"No report link configured for this solver","aria-label":"Report solver bug",children:T.jsx(SGA,{className:"rf-w-4 rf-h-4"})})},Upo=({solverEvents:g=[]})=>{const[A,I]=z.useState(null);ppo();const e=z.useMemo(()=>{const C=new Map;for(const Q of g){const i=`${Q.componentName}-${Q.solverName}`;C.set(i,Q)}return C},[g]),t=z.useMemo(()=>Array.from(e.keys()),[e]),o=A?e.get(A):null,B=z.useMemo(()=>{if(!o)return{instance:null,error:null,classFound:!1};const C=N9A[o.solverName];if(!C)return{instance:null,error:`Solver class "${o.solverName}" not found in SOLVERS registry. Available: ${Object.keys(N9A).join(", ")}`,classFound:!1};try{return{instance:new C(...Mpo(o)),error:null,classFound:!0}}catch(Q){const i=Q instanceof Error?Q.message:String(Q);return console.error("Failed to reconstruct solver:",Q),{instance:null,error:`Failed to instantiate solver: ${i}`,classFound:!0}}},[o]);return g.length===0?T.jsx("div",{className:"rf-p-4",children:T.jsx("div",{className:"rf-bg-gray-50 rf-rounded-md rf-border rf-border-gray-200",children:T.jsxs("div",{className:"rf-p-4",children:[T.jsx("h3",{className:"rf-text-lg rf-font-semibold rf-text-gray-800 rf-mb-3",children:"No Solvers Detected"}),T.jsx("p",{className:"rf-text-sm rf-text-gray-600",children:"Solvers will appear here when the circuit runs. Solvers are used for tasks like component packing and autorouting."})]})})}):T.jsxs("div",{className:"rf-flex rf-h-full rf-overflow-hidden",children:[T.jsxs("div",{className:"rf-w-64 rf-border-r rf-border-gray-200 rf-overflow-y-auto rf-flex-shrink-0",children:[T.jsxs("div",{className:"rf-text-xs rf-font-semibold rf-text-gray-500 rf-px-3 rf-py-2 rf-bg-gray-50 rf-border-b rf-border-gray-200",children:[t.length," ",t.length===1?"Solver":"Solvers"]}),t.map(C=>{const Q=e.get(C),i=A===C;return T.jsx("div",{className:`rf-px-3 rf-py-2 rf-cursor-pointer rf-border-b rf-border-gray-100 ${i?"rf-bg-blue-50 rf-border-l-2 rf-border-l-blue-500":"hover:rf-bg-gray-50"}`,onClick:()=>I(C),children:(()=>{const E=Rpo(Q.solverName);return T.jsxs("div",{className:"rf-flex rf-items-center rf-gap-2",children:[T.jsx(E,{className:"rf-w-4 rf-h-4 rf-text-blue-500 rf-flex-shrink-0"}),T.jsxs("div",{className:"rf-flex-1 rf-min-w-0",children:[T.jsx("div",{className:"rf-text-sm rf-font-medium rf-text-gray-800 rf-truncate",children:Q.componentName}),T.jsx("div",{className:"rf-text-xs rf-text-gray-500 rf-truncate",children:Q.solverName})]})]})})()},C)})]}),T.jsx("div",{className:"rf-flex-1 rf-overflow-hidden",children:o?B.instance?T.jsxs("div",{className:"rf-flex rf-h-full rf-flex-col rf-overflow-y-auto",children:[T.jsx(xpo,{solverEvent:o}),T.jsx("div",{className:"rf-min-h-0 rf-flex-1",children:T.jsx(mS,{fallback:T.jsx("div",{className:"rf-p-4",children:T.jsxs("div",{className:"rf-bg-red-50 rf-rounded-md rf-border rf-border-red-200 rf-p-4",children:[T.jsx("h3",{className:"rf-text-lg rf-font-semibold rf-text-red-800 rf-mb-2",children:"Error Loading Solver Debugger"}),T.jsxs("p",{className:"rf-text-sm rf-text-red-600",children:["Failed to render the solver debugger for"," ",o.solverName]})]})}),children:T.jsx(mpo,{solver:B.instance})})})]}):T.jsxs("div",{className:"rf-p-4",children:[T.jsxs("div",{className:"rf-mb-4",children:[T.jsx("h3",{className:"rf-text-lg rf-font-semibold rf-text-gray-800",children:o.solverName}),T.jsxs("p",{className:"rf-text-sm rf-text-gray-500",children:["Component: ",o.componentName]})]}),B.error&&T.jsx("div",{className:`rf-rounded-md rf-border rf-p-4 rf-mb-4 ${B.classFound?"rf-bg-red-50 rf-border-red-200":"rf-bg-yellow-50 rf-border-yellow-200"}`,children:T.jsx("p",{className:`rf-text-sm ${B.classFound?"rf-text-red-700":"rf-text-yellow-700"}`,children:B.error})}),T.jsxs("div",{className:"rf-border rf-border-gray-200 rf-rounded-md rf-overflow-hidden",children:[T.jsxs("div",{className:"rf-px-3 rf-py-2 rf-bg-gray-50 rf-flex rf-items-center rf-justify-between rf-gap-2",children:[T.jsx("span",{className:"rf-text-sm rf-font-medium rf-text-gray-700",children:"Solver Parameters"}),T.jsxs("div",{className:"rf-flex rf-items-center rf-gap-1",children:[T.jsx(Fpo,{solverEvent:o}),T.jsx(si,{type:"button",variant:"ghost",size:"icon",className:"rf-h-8 rf-w-8","aria-label":"Download solver input JSON",title:"Download solver input JSON",onClick:()=>ePI(o),children:T.jsx(GtA,{className:"rf-w-4 rf-h-4"})})]})]}),T.jsx("div",{className:"rf-p-3 rf-bg-white rf-border-t rf-border-gray-200",children:T.jsx("pre",{className:"rf-text-xs rf-font-mono rf-text-gray-600 rf-whitespace-pre-wrap rf-overflow-x-auto",children:JSON.stringify(o.solverParams,null,2)})})]})]}):T.jsx("div",{className:"rf-flex rf-items-center rf-justify-center rf-h-full",children:T.jsx("p",{className:"rf-text-sm rf-text-gray-500",children:"Select a solver from the list to view details"})})})]})},Jpo=["subcircuit_id","componentDisplayName","phaseName","routingPhaseIndex","phaseOrdinal","phaseCount","phaseStageIndex","phaseStageCount","connectionCount","obstacleCount","previousTraceCount","isReroutePhase","autorouterName","autorouterVersion","solverName","effort","cacheStatus"],Ppo=["phaseOrdinal","routingPhaseIndex","phaseName","phaseStageIndex"];function Kpo(g,A){let I=-1,e=-1;for(let t=g.length-1;t>=0;t--){const o=g[t];if(o.status!=="running"||o.subcircuit_id!==A.subcircuit_id||o.componentDisplayName!==A.componentDisplayName)continue;let B=0,C=!1;for(const Q of Ppo)if(!(o[Q]===void 0||A[Q]===void 0)){if(o[Q]!==A[Q]){C=!0;break}B++}!C&&B>e&&(I=t,e=B)}return I}function Lpo(g,A){const I=Object.fromEntries(Jpo.filter(B=>A[B]!==void 0).map(B=>[B,A[B]])),e=A.simpleRouteJson?structuredClone(A.simpleRouteJson):void 0,t=A.type==="autorouting:start"?-1:Kpo(g,A),o={...t===-1?{id:`autorouting_phase_${g.length+1}`}:g[t],...I,status:A.type==="autorouting:start"?"running":A.type==="autorouting:end"?"complete":"error",...A.type==="autorouting:start"?{startSimpleRouteJson:e}:A.type==="autorouting:end"?{endSimpleRouteJson:e}:{errorSimpleRouteJson:e,error:A.error?{...A.error}:void 0}};return t===-1?[...g,o]:g.map((B,C)=>C===t?o:B)}const Ypo=new Map([["custom","Custom"],["fanout","Fanout"],["single_layer_fanout","Single layer fanout"],["tscircuit_simplify","Simplify"]]),_po=new Set(["tscircuit","default","auto","auto_local"]);function bpo(g){if(g==="FanoutSolver")return"Fanout";if(g==="AutoroutingPipelineSolver11_Simplification")return"Simplify";const A=g.match(/^AutoroutingPipeline(?:Solver)?(\d+)(?:_|$)/);if(A)return`Pipeline${A[1]}`;const I=g.match(/^AssignableAutoroutingPipeline(\d+)$/);return I?`Assignable${I[1]}`:g}function Hpo(g){const A=g.autorouterName?.trim(),I=A?.replace(/-/g,"_"),e=I&&Ypo.get(I);if(e)return e;if(I&&!_po.has(I))return A;const t=g.solverName?.trim();if(t)return bpo(t);const o=g.autorouterVersion?.trim();if(o){const B=o.match(/^beta[_-]pipeline(\d+)$/);return B?`Pipeline${B[1]}`:o==="latest"?"default":o}return A?"default":"Unknown"}const hCg="#fbbf24";function vpo(g){const A=g.endSimpleRouteJson?.traces??[],I=new Set(A.flatMap(t=>[t.pcb_trace_id,t.__replaces_pcb_trace_id].filter(o=>o!==void 0)));return[...(g.startSimpleRouteJson?.traces??[]).filter(t=>!I.has(t.pcb_trace_id)),...A]}function tPI(g){const A=new Map((g.startSimpleRouteJson?.traces??[]).map(I=>[I.pcb_trace_id,I]));return(g.endSimpleRouteJson?.traces??[]).filter(I=>{const e=A.get(I.pcb_trace_id);return!e||!!I.__replaces_pcb_trace_id&&I.__replaces_pcb_trace_id!==e.__replaces_pcb_trace_id||JSON.stringify(e.route)!==JSON.stringify(I.route)}).map(I=>I.pcb_trace_id)}function Tpo(g,A){return{outer_diameter:g.via_diameter??A.minViaPadDiameter??A.min_via_pad_diameter??A.minViaDiameter??.6,hole_diameter:g.via_hole_diameter??A.minViaHoleDiameter??A.min_via_hole_diameter??.3}}function oPI(g,A){const I=[];for(const C of g.route)C.route_type==="wire"?I.push({...C,layer:C.layer}):C.route_type==="via"?I.push({route_type:"via",x:C.x,y:C.y,from_layer:C.from_layer,to_layer:C.to_layer,...Tpo(C,A)}):C.route_type==="through_obstacle"&&I.push({route_type:"through_pad",start:{...C.start},end:{...C.end},width:C.width,start_layer:C.from_layer,end_layer:C.to_layer,pcb_smtpad_id:C.circuitJsonMetadata?.pcb_smtpad_id,pcb_plated_hole_id:C.circuitJsonMetadata?.pcb_plated_hole_id});const e=C=>{let Q=-1,i=Number.POSITIVE_INFINITY;return I.forEach((E,n)=>{if(E.route_type!=="wire")return;const s=Math.hypot(E.x-C.x,E.y-C.y);s<i&&(i=s,Q=n)}),Q},t=g.route.filter(C=>C.route_type==="jumper").map(C=>[e(C.start),e(C.end)].sort((Q,i)=>Q-i)).filter(([C,Q])=>C>=0&&Q>C).sort(([C],[Q])=>C-Q),o=[];let B=0;for(const[C,Q]of t)C>=B&&o.push(I.slice(B,C+1)),B=Math.max(B,Q);return B<I.length&&o.push(I.slice(B)),o}function qpo(g){const A=[],I=[],e=g.endSimpleRouteJson;if(!e)return{lines:A,circles:I};const t=new Set(tPI(g));for(const o of e.traces??[])if(t.has(o.pcb_trace_id))for(const B of oPI(o,e)){let C;for(const Q of B){if(Q.route_type==="through_pad"){C={...Q.end,layer:Q.end_layer,width:Q.width};continue}const i=Q.route_type==="wire"?Q.layer:Q.from_layer;C&&C.layer===i&&(C.x!==Q.x||C.y!==Q.y)&&A.push({points:[{x:C.x,y:C.y},{x:Q.x,y:Q.y}],strokeWidth:Q.route_type==="wire"?Q.width:C.width,strokeColor:hCg,layer:i}),Q.route_type==="via"&&I.push({center:{x:Q.x,y:Q.y},radius:Q.outer_diameter/2,stroke:hCg,fill:"transparent"}),C={x:Q.x,y:Q.y,layer:Q.route_type==="wire"?Q.layer:Q.to_layer,width:Q.route_type==="wire"?Q.width:C?.width??e.minTraceWidth}}}return{coordinateSystem:"cartesian",lines:A,circles:I}}function Zpo(g){const A=JSON.stringify(g);let I=2166136261;for(let e=0;e<A.length;e++)I=Math.imul(I^A.charCodeAt(e),16777619);return(I>>>0).toString(36)}const Opo=new Set(["pcb_trace","pcb_via","pcb_copper_pour","pcb_ground_plane","pcb_ground_plane_region","pcb_thermal_spoke","pcb_breakout_point"]);function Wpo(g,A,I){const e=I==="input"?A.startSimpleRouteJson??A.errorSimpleRouteJson:A.endSimpleRouteJson,t=g.filter(i=>!Opo.has(i.type)&&!i.type.endsWith("_error")&&!i.type.endsWith("_warning"));if(!e)return t;const o=I==="input"?e.traces??[]:vpo(A),B=new Set(g.filter(i=>i.type==="source_trace").map(i=>i.source_trace_id)),C=["top",...Array.from({length:Math.max(0,e.layerCount-2)},(i,E)=>`inner${E+1}`),...e.layerCount>1?["bottom"]:[]],Q=[];for(const i of o){const n=e.connections.find(r=>r.name===i.connection_name||r.source_trace_id===i.connection_name)?.source_trace_id??i.connection_name??"",s=oPI(i,e);for(const[r,a]of s.entries()){const c={type:"pcb_trace",pcb_trace_id:`${A.id}_${I}_${i.pcb_trace_id}_${r}_${Zpo(a)}`,subcircuit_id:A.subcircuit_id??void 0,source_trace_id:B.has(n)?n:void 0,route:a};Q.push(c);for(const[h,l]of a.entries()){if(l.route_type!=="via")continue;const D=C.indexOf(l.from_layer),d=C.indexOf(l.to_layer),y={type:"pcb_via",pcb_via_id:`${c.pcb_trace_id}_via_${h}`,pcb_trace_id:c.pcb_trace_id,subcircuit_id:A.subcircuit_id??void 0,x:l.x,y:l.y,outer_diameter:l.outer_diameter,hole_diameter:l.hole_diameter,layers:D>=0&&d>=0?C.slice(Math.min(D,d),Math.max(D,d)+1):[l.from_layer,l.to_layer]};Q.push(y)}}}return[...t,...Q]}const lCg=(g,A)=>g.phaseName||`Phase ${g.phaseOrdinal??A+1}`,BPI=g=>g.componentDisplayName?.match(/name="([^"]+)"/)?.[1]?.replace(/^\./,"")||g.componentDisplayName||g.subcircuit_id||"Board",CPI=g=>g.startSimpleRouteJson??g.endSimpleRouteJson??g.errorSimpleRouteJson,Vpo={is_showing_autorouting:!0,is_showing_rats_nest:!1,is_showing_drc_errors:!1,is_showing_drc_warnings:!1,is_showing_pcb_groups:!1},jpo=({circuitJson:g,phases:A=[],isRunning:I=!1})=>{const[e,t]=z.useState(null),[o,B]=z.useState("output"),[C,Q]=z.useState(!0),[i,E]=z.useState(!1),n=z.useRef(null),[s,r]=z.useState(480),a=e?A.findIndex(N=>N.id===e.id&&CPI(N)===CPI(e)):-1,c=a<0?A.length-1:a,h=A[c],l=a<0,D=!!h?.endSimpleRouteJson,d=h?.startSimpleRouteJson??h?.errorSimpleRouteJson,y=!!d,w=o==="output"&&!D?"input":o==="input"&&!y?"output":o,u=w==="input"?d:h?.endSimpleRouteJson,G=z.useMemo(()=>!h||!u?null:Wpo(g??[],h,w),[g,h,u,w]),m=z.useMemo(()=>h&&w==="output"&&C?qpo(h):{lines:[],circles:[]},[h,w,C]);if(z.useLayoutEffect(()=>{const N=n.current;if(!N)return;const U=()=>r(Math.max(360,N.clientHeight));U();const K=new ResizeObserver(U);return K.observe(N),()=>K.disconnect()},[!!h]),!h)return T.jsxs("div",{className:"rf-flex rf-min-h-[400px] rf-flex-col rf-items-center rf-justify-center rf-gap-3 rf-p-8 rf-text-center",children:[T.jsx(v1I,{className:"rf-h-7 rf-w-7 rf-text-blue-500"}),T.jsx("h3",{className:"rf-text-base rf-font-medium",children:I?"Waiting for autorouting":"No autorouting captures"}),T.jsx("p",{className:"rf-max-w-md rf-text-sm rf-text-gray-500",children:I?"Phases appear as the circuit routes. Each capture includes its input and output on the PCB.":"Run a circuit with autorouting enabled to inspect its phases. A circuit JSON file alone does not include routing history."})]});const p=lCg(h,c),k=h.status==="running"&&I,S=!D,R=d?.connections.length,x=G?.filter(N=>N.type==="pcb_trace").length??0;return T.jsxs("div",{className:"rf-flex rf-h-full rf-min-h-[620px] rf-flex-col rf-bg-white md:rf-flex-row","data-testid":"autorouting-explorer",children:[T.jsxs("aside",{className:"rf-flex rf-shrink-0 rf-flex-col rf-border-b rf-border-gray-200 md:rf-w-52 md:rf-border-b-0 md:rf-border-r","aria-label":"Routing phases",children:[T.jsxs("div",{className:"rf-flex rf-items-center rf-justify-between rf-px-3 rf-py-2 rf-text-xs rf-text-gray-500",children:[T.jsx("span",{children:"Routing phases"}),T.jsx("span",{children:A.length})]}),T.jsx("div",{className:"rf-flex rf-gap-1 rf-overflow-x-auto rf-px-1.5 rf-pb-1.5 md:rf-flex-col md:rf-overflow-x-hidden md:rf-overflow-y-auto",children:A.map((N,U)=>{const K=tPI(N).length,Y=N.endSimpleRouteJson?`${K} ${K===1?"trace":"traces"} routed`:N.status==="error"?"Failed":N.status==="running"&&I?"Routing…":"No output";return T.jsxs("button",{type:"button","aria-pressed":U===c,title:`${BPI(N)} · ${Y}`,onClick:()=>t(N),className:oo("rf-flex rf-min-w-[192px] rf-items-start rf-gap-2 rf-rounded-md rf-border rf-px-2 rf-py-2 rf-text-left md:rf-min-w-0",U===c?"rf-border-blue-200 rf-bg-blue-50":"rf-border-transparent hover:rf-bg-gray-50"),children:[T.jsx("span",{className:oo("rf-flex rf-h-5 rf-w-5 rf-shrink-0 rf-items-center rf-justify-center rf-rounded-full rf-text-[11px]",U===c?"rf-bg-blue-600 rf-text-white":"rf-bg-gray-100 rf-text-gray-500"),children:U+1}),T.jsxs("span",{className:"rf-min-w-0 rf-flex-1",children:[T.jsxs("span",{className:"rf-flex rf-items-center rf-gap-1",children:[T.jsx("span",{className:"rf-min-w-0 rf-flex-1 rf-truncate rf-text-xs rf-font-medium rf-leading-5 rf-text-gray-800",title:lCg(N,U),children:lCg(N,U)}),N.status==="complete"?T.jsx(nF,{"aria-label":"Captured",className:"rf-h-3 rf-w-3 rf-shrink-0 rf-text-green-600"}):N.status==="error"?T.jsx(Uog,{"aria-label":"Failed",className:"rf-h-3 rf-w-3 rf-shrink-0 rf-text-red-500"}):I?T.jsx(pS,{"aria-label":"Routing",className:"rf-h-3 rf-w-3 rf-shrink-0 rf-animate-spin rf-text-blue-500"}):null]}),T.jsxs("span",{className:"rf-block rf-text-[11px] rf-leading-4 rf-text-gray-500",children:[Hpo(N)," · ",Y]})]})]},N.id)})})]}),T.jsxs("div",{className:"rf-flex rf-min-w-0 rf-flex-1 rf-flex-col",children:[T.jsxs("div",{className:"rf-flex rf-flex-wrap rf-items-center rf-gap-3 rf-border-b rf-border-gray-200 rf-px-4 rf-py-3",children:[T.jsxs("h3",{className:"rf-mr-auto rf-flex rf-items-center rf-gap-2 rf-text-sm rf-font-medium",children:[p,T.jsxs("span",{className:"rf-text-xs rf-font-normal rf-text-gray-500",children:[c+1," of ",A.length]})]}),I&&T.jsx("button",{type:"button",onClick:()=>t(null),disabled:l,className:"rf-text-xs rf-text-blue-600 disabled:rf-text-gray-500",children:l?"Following latest":"Follow latest"}),T.jsx("div",{className:"rf-flex rf-rounded-md rf-bg-gray-100 rf-p-1","aria-label":"Phase snapshot",children:["input","output"].map(N=>T.jsx("button",{type:"button","aria-pressed":w===N,disabled:N==="input"?!y:!D,onClick:()=>B(N),className:oo("rf-rounded rf-px-3 rf-py-1 rf-text-xs disabled:rf-opacity-40",w===N?"rf-bg-white rf-text-gray-900 rf-shadow-sm":"rf-text-gray-500"),children:N==="input"?"Input":"Output"},N))})]}),T.jsxs("div",{className:"rf-flex rf-flex-wrap rf-items-center rf-justify-between rf-gap-2 rf-px-4 rf-py-2 rf-text-xs rf-text-gray-600",children:[T.jsxs("label",{className:"rf-flex rf-items-center rf-gap-2",children:[T.jsx("input",{type:"checkbox",checked:C,disabled:w!=="output",onChange:N=>Q(N.target.checked),className:"rf-accent-blue-600"}),T.jsx("span",{"aria-hidden":"true",className:"rf-inline-block rf-h-0.5 rf-w-3",style:{backgroundColor:hCg}}),"Highlight changes (all layers)"]}),T.jsxs("span",{children:[w==="input"?"Before this phase":"After this phase"," ","· ",x," traces"]})]}),S&&T.jsx("div",{className:oo("rf-border-y rf-px-4 rf-py-2 rf-text-xs",h.status==="error"?"rf-border-red-100 rf-bg-red-50 rf-text-red-700":"rf-border-blue-100 rf-bg-blue-50 rf-text-blue-700"),role:"status",children:h.status==="error"?`Routing failed: ${h.error?.message||"No output was captured."}`:k?"Routing in progress. Showing captured input until output is available.":"No output was captured for this phase. Showing the available input."}),T.jsx("div",{ref:n,className:"rf-relative rf-min-h-[360px] rf-flex-1","data-testid":"autorouting-pcb",children:G?T.jsx(Nog,{circuitJson:G,height:s,allowEditing:!1,clickToInteractEnabled:!1,initialState:Vpo,debugGraphics:m}):T.jsx("div",{className:"rf-p-6 rf-text-sm rf-text-gray-500",children:"No PCB snapshot available for this capture."})}),T.jsxs("div",{className:"rf-flex rf-flex-wrap rf-items-center rf-justify-between rf-gap-2 rf-border-t rf-border-gray-200 rf-px-4 rf-py-3 rf-text-xs rf-text-gray-500",children:[T.jsxs("span",{children:[R===void 0?"Input unavailable":`${R} input connections`,` · ${BPI(h)}`]}),T.jsxs("div",{className:"rf-flex rf-items-center rf-gap-4",children:[T.jsxs("button",{type:"button",disabled:!u,onClick:()=>Yk(JSON.stringify(u,null,2),{fileName:`${h.id}-${w}.srj.json`,mimeType:"application/json"}),className:"rf-flex rf-items-center rf-gap-1 disabled:rf-opacity-40",children:[T.jsx(GtA,{className:"rf-h-3 rf-w-3"}),"Download SRJ"]}),T.jsxs("button",{type:"button","aria-expanded":i,onClick:()=>E(!i),className:"rf-flex rf-items-center rf-gap-1",children:[T.jsx(pb,{className:oo("rf-h-3 rf-w-3",i&&"rf-rotate-90")}),"Inspect SRJ"]})]})]}),i&&T.jsx("pre",{className:"rf-m-0 rf-max-h-64 rf-overflow-auto rf-border-t rf-border-gray-200 rf-bg-gray-50 rf-p-4 rf-text-xs","aria-label":`${p} ${w} SRJ`,children:u?JSON.stringify(u,null,2):"No snapshot captured."})]})]})},QPI=({errorMessage:g,errorStack:A,circuitJsonErrors:I})=>{z.useEffect(()=>{if(yJ("TSCIRCUIT_TELEMETRY_DISABLED")!==!0&&g){const e=new Error(g);A&&(e.stack=A);try{pq.captureException(e)}catch{}}},[g,A]),z.useEffect(()=>{if(yJ("TSCIRCUIT_TELEMETRY_DISABLED")!==!0&&I&&I.length>0)for(const e of I){const t=new Error(e.message||"Circuit JSON Error");e.stack&&(t.stack=e.stack);try{pq.captureException(t,{error_type:e.type})}catch{}}},[I])},iPI=g=>{z.useEffect(()=>{try{Adt(g)}catch{}},[g.source,g.component,g.isWebEmbedded,g.activeTab])},EPI="0.0.3057",zpo={version:EPI},jmA=CXg()(QXg(g=>({lastRunEvalVersion:void 0,setLastRunEvalVersion:A=>{g({lastRunEvalVersion:A})}}),{name:"runframe-runner-store"})),Xpo=g=>{const[A,I]=z.useState([]),[e,t]=z.useState(null),[o,B]=z.useState(""),[C,Q]=OT("eval-version-selection",null),i=jmA(r=>r.setLastRunEvalVersion),E=jmA(r=>r.lastRunEvalVersion);return z.useEffect(()=>{g&&fetch("https://data.jsdelivr.com/v1/package/npm/@tscircuit/eval").then(r=>r.json()).then(r=>{if(Array.isArray(r?.versions)){let a=[...r.versions];r.tags?.latest&&(t(r.tags.latest),a=a.filter(c=>c!==r.tags.latest)),I(a)}}).catch(()=>{})},[g]),z.useEffect(()=>{g&&(C?(window.TSCIRCUIT_LATEST_EVAL_VERSION=C,i(C)):e&&(window.TSCIRCUIT_LATEST_EVAL_VERSION=e,i(e)))},[g,C,e]),{versions:z.useMemo(()=>A.filter(r=>r.includes(o)).slice(0,50),[A,o]),latestVersion:e,lastRunEvalVersion:E,search:o,setSearch:B,selectVersion:r=>{Q(r),B("")}}},$po=({snippetNames:g,onSelect:A,onCancel:I,isOpen:e})=>{const[t,o]=z.useState(""),[B,C]=z.useState("");if(!e)return null;const Q=g.filter(n=>n.toLowerCase().includes(B.toLowerCase())),i=B&&!g.includes(B),E=n=>{n.key==="Enter"&&(Q.length===1?o(Q[0]):i&&o(B))};return T.jsx("div",{className:"rf-fixed rf-inset-0 rf-bg-black rf-bg-opacity-50 rf-flex rf-items-center rf-justify-center rf-z-[100]",children:T.jsxs("div",{className:"rf-bg-white rf-rounded-lg rf-p-6 rf-w-96",children:[T.jsx("h2",{className:"rf-text-lg rf-font-semibold rf-mb-4",children:"Select Snippet"}),T.jsx("input",{type:"text",className:"rf-w-full rf-px-4 rf-py-2 rf-border rf-rounded rf-mb-4",placeholder:"Search snippets or new snippet name...",value:B,onChange:n=>C(n.target.value),onKeyDown:E}),T.jsxs("div",{className:"rf-h-60 rf-overflow-y-auto",children:[Q.map(n=>T.jsx("button",{type:"button",className:`w-full text-left px-4 py-2 rounded hover:bg-gray-100 ${t===n?"bg-blue-50":""}`,onClick:()=>o(n),children:n},n)),i&&T.jsxs("button",{type:"button",className:`w-full text-left px-4 py-2 rounded hover:bg-gray-100 text-blue-500 ${t===B?"bg-blue-50":""}`,onClick:()=>o(B),children:['Create new "',B,'"']})]}),T.jsxs("div",{className:"rf-mt-4 rf-flex rf-justify-end rf-gap-2",children:[T.jsx("button",{type:"button",className:"rf-px-4 rf-py-2 rf-text-gray-600 rf-hover:text-gray-800",onClick:I,children:"Cancel"}),T.jsx("button",{type:"button",className:"rf-px-4 rf-py-2 rf-bg-blue-500 rf-text-white rf-rounded rf-hover:bg-blue-600 rf-disabled:opacity-50",onClick:()=>t&&A(t),disabled:!t,children:t===B?`Create "${t}"`:`Save to ${t}`})]})]})})},Ako=g=>{const A=z.useRef(null),I=Uc(e=>e.recentEvents);z.useEffect(()=>{if(I.length===0)return;const e=I[0];e.event_id!==A.current&&(g(e),A.current=e.event_id)},[I,g])};var gko=Object.defineProperty,CP=(g,A)=>gko(g,"name",{value:A,configurable:!0}),Iko="AlertDialog",[eko,CCB]=nk(Iko,[hFI]),QP=hFI(),tko=CP(g=>{const{__scopeAlertDialog:A,...I}=g,e=QP(A);return T.jsx(smA,{...e,...I,modal:!0})},"AlertDialog");z.forwardRef(CP(function(A,I){const{__scopeAlertDialog:e,...t}=A,o=QP(e);return T.jsx($0o,{...o,...t,ref:I})},"AlertDialogTrigger"));var oko=CP(g=>{const{__scopeAlertDialog:A,...I}=g,e=QP(A);return T.jsx(amA,{...e,...I})},"AlertDialogPortal"),nPI=z.forwardRef(CP(function(A,I){const{__scopeAlertDialog:e,...t}=A,o=QP(e);return T.jsx(PtA,{...o,...t,ref:I})},"AlertDialogOverlay")),Bko="AlertDialogContent",[Cko,Qko]=eko(Bko),sPI=z.forwardRef(CP(function(A,I){const{__scopeAlertDialog:e,children:t,...o}=A,B=QP(e),C=z.useRef(null),Q=Gi(I,C),i=z.useRef(null);return T.jsx(Cko,{scope:e,cancelRef:i,children:T.jsx(LtA,{role:"alertdialog",...B,...o,ref:Q,onOpenAutoFocus:So(o.onOpenAutoFocus,E=>{E.preventDefault(),i.current?.focus({preventScroll:!0})}),onPointerDownOutside:E=>E.preventDefault(),onInteractOutside:E=>E.preventDefault(),children:t})})},"AlertDialogContent")),aPI=z.forwardRef(CP(function(A,I){const{__scopeAlertDialog:e,...t}=A,o=QP(e);return T.jsx(rmA,{...o,...t,ref:I})},"AlertDialogTitle")),rPI=z.forwardRef(CP(function(A,I){const{__scopeAlertDialog:e,...t}=A,o=QP(e);return T.jsx(cmA,{...o,...t,ref:I})},"AlertDialogDescription")),cPI=z.forwardRef(CP(function(A,I){const{__scopeAlertDialog:e,...t}=A,o=QP(e);return T.jsx(GBg,{...o,...t,ref:I})},"AlertDialogAction")),iko="AlertDialogCancel",hPI=z.forwardRef(CP(function(A,I){const{__scopeAlertDialog:e,...t}=A,{cancelRef:o}=Qko(iko,e),B=QP(e),C=Gi(I,o);return T.jsx(GBg,{...B,...t,ref:C})},"AlertDialogCancel"));const lPI=tko,Eko=oko,DPI=z.forwardRef(({className:g,...A},I)=>T.jsx(nPI,{className:oo("rf-fixed rf-inset-0 rf-z-50 rf-bg-black/80 data-[state=open]:rf-animate-in data-[state=closed]:rf-animate-out data-[state=closed]:rf-fade-out-0 data-[state=open]:rf-fade-in-0",g),...A,ref:I}));DPI.displayName=nPI.displayName;const DCg=z.forwardRef(({className:g,...A},I)=>T.jsxs(Eko,{children:[T.jsx(DPI,{}),T.jsx(sPI,{ref:I,className:oo("rf-fixed rf-left-[50%] rf-top-[50%] rf-z-50 rf-grid rf-w-full rf-max-w-lg rf-translate-x-[-50%] rf-translate-y-[-50%] rf-gap-4 rf-border rf-border-zinc-200 rf-bg-white rf-p-6 rf-shadow-lg rf-duration-200 data-[state=open]:rf-animate-in data-[state=closed]:rf-animate-out data-[state=closed]:rf-fade-out-0 data-[state=open]:rf-fade-in-0 data-[state=closed]:rf-zoom-out-95 data-[state=open]:rf-zoom-in-95 data-[state=closed]:rf-slide-out-to-left-1/2 data-[state=closed]:rf-slide-out-to-top-[48%] data-[state=open]:rf-slide-in-from-left-1/2 data-[state=open]:rf-slide-in-from-top-[48%] sm:rf-rounded-lg dark:rf-border-zinc-800 dark:rf-bg-zinc-950",g),...A})]}));DCg.displayName=sPI.displayName;const dCg=({className:g,...A})=>T.jsx("div",{className:oo("rf-flex rf-flex-col rf-space-y-2 rf-text-center sm:rf-text-left",g),...A});dCg.displayName="AlertDialogHeader";const yCg=({className:g,...A})=>T.jsx("div",{className:oo("rf-flex rf-flex-col-reverse sm:rf-flex-row sm:rf-justify-end sm:rf-space-x-2",g),...A});yCg.displayName="AlertDialogFooter";const wCg=z.forwardRef(({className:g,...A},I)=>T.jsx(aPI,{ref:I,className:oo("rf-text-lg rf-font-semibold",g),...A}));wCg.displayName=aPI.displayName;const uCg=z.forwardRef(({className:g,...A},I)=>T.jsx(rPI,{ref:I,className:oo("rf-text-sm rf-text-zinc-500 dark:rf-text-zinc-400",g),...A}));uCg.displayName=rPI.displayName;const nko=z.forwardRef(({className:g,...A},I)=>T.jsx(cPI,{ref:I,className:oo(CO(),g),...A}));nko.displayName=cPI.displayName;const GCg=z.forwardRef(({className:g,...A},I)=>T.jsx(hPI,{ref:I,className:oo(CO({variant:"outline"}),"rf-mt-2 sm:rf-mt-0",g),...A}));GCg.displayName=hPI.displayName;var sko=Object.defineProperty,iP=(g,A)=>sko(g,"name",{value:A,configurable:!0}),mCg="Checkbox",[ako,QCB]=nk(mCg),[rko,pCg]=ako(mCg);function dPI(g){const{__scopeCheckbox:A,checked:I,children:e,defaultChecked:t,disabled:o,form:B,name:C,onCheckedChange:Q,required:i,value:E="on",internal_do_not_use_render:n}=g,[s,r]=RR({prop:I,defaultProp:t??!1,onChange:Q,caller:mCg}),[a,c]=z.useState(null),[h,l]=z.useState(null),[D,d]=z.useState(null),y=a?!!B||!!a.closest("form"):!0,w={checked:s,disabled:o,setChecked:r,control:a,setControl:c,name:C,form:B,value:E,userClick:D,onUserClick:d,required:i,defaultChecked:yf(t)?!1:t,isFormControl:y,bubbleInput:h,setBubbleInput:l};return T.jsx(rko,{scope:A,...w,children:wPI(n)?n(w):e})}iP(dPI,"CheckboxProvider");var cko="CheckboxTrigger",hko=z.forwardRef(iP(function({__scopeCheckbox:A,onKeyDown:I,onClick:e,...t},o){const{control:B,value:C,disabled:Q,checked:i,required:E,setControl:n,setChecked:s,onUserClick:r,isFormControl:a,bubbleInput:c}=pCg(cko,A),h=Gi(o,n),l=z.useRef(i);return z.useEffect(()=>{const D=B?.form;if(D){const d=iP(()=>s(l.current),"reset");return D.addEventListener("reset",d),()=>D.removeEventListener("reset",d)}},[B,s]),T.jsx(yQ.button,{type:"button",role:"checkbox","aria-checked":yf(i)?"mixed":i,"aria-required":E,"data-state":kCg(i),"data-disabled":Q?"":void 0,disabled:Q,value:C,...t,ref:h,onKeyDown:So(I,D=>{D.key==="Enter"&&D.preventDefault()}),onClick:So(e,D=>{const d=D.isPropagationStopped();r({requestedChecked:yf(i)?!0:!i,hasConsumerStoppedPropagation:d}),s(y=>yf(y)?!0:!y),c&&a&&(d||D.stopPropagation())})})},"CheckboxTrigger")),yPI=z.forwardRef(iP(function(A,I){const{__scopeCheckbox:e,name:t,checked:o,defaultChecked:B,required:C,disabled:Q,value:i,onCheckedChange:E,form:n,...s}=A;return T.jsx(dPI,{__scopeCheckbox:e,checked:o,defaultChecked:B,disabled:Q,required:C,onCheckedChange:E,name:t,form:n,value:i,internal_do_not_use_render:({isFormControl:r})=>T.jsxs(T.Fragment,{children:[T.jsx(hko,{...s,ref:I,__scopeCheckbox:e}),r&&T.jsx(yko,{__scopeCheckbox:e})]})})},"Checkbox")),lko="CheckboxIndicator",Dko=z.forwardRef(iP(function(A,I){const{__scopeCheckbox:e,forceMount:t,...o}=A,B=pCg(lko,e);return T.jsx(XM,{present:t||yf(B.checked)||B.checked===!0,children:T.jsx(yQ.span,{"data-state":kCg(B.checked),"data-disabled":B.disabled?"":void 0,...o,ref:I,style:{pointerEvents:"none",...A.style}})})},"CheckboxIndicator")),dko="CheckboxBubbleInput",yko=z.forwardRef(iP(function({__scopeCheckbox:A,onClick:I,...e},t){const{control:o,userClick:B,checked:C,defaultChecked:Q,required:i,disabled:E,name:n,value:s,form:r,bubbleInput:a,setBubbleInput:c}=pCg(dko,A),h=Gi(t,c),l=tBg(o),D=z.useRef(!1),d=z.useRef(C),y=z.useRef(B),w=z.useRef(null);z.useEffect(()=>{const G=a;if(!G)return;const m=window.HTMLInputElement.prototype,k=Object.getOwnPropertyDescriptor(m,"checked").set;if(!k)return;const S=d.current!==C;d.current=C;const R=B!==null&&B!==y.current;if(y.current=B,R)w.current=S?null:B,S&&(G.indeterminate=yf(C),k.call(G,yf(C)?!1:C)),G.dispatchEvent(new Event("click",{bubbles:!B.hasConsumerStoppedPropagation}));else if(S){const x=w.current;w.current=null;const N=x?.requestedChecked===C;D.current=!0,G.indeterminate=yf(C),k.call(G,yf(C)?!1:C),G.dispatchEvent(new Event("click",{bubbles:!(N&&x.hasConsumerStoppedPropagation)})),D.current=!1}},[a,C,B]);const u=z.useRef(yf(C)?!1:C);return T.jsx(yQ.input,{type:"checkbox","aria-hidden":!0,defaultChecked:Q??u.current,required:i,disabled:E,name:n,value:s,form:r,...e,tabIndex:-1,ref:h,onClick:So(I,G=>{D.current&&G.stopPropagation()}),style:{...e.style,...l,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})},"CheckboxBubbleInput"));function wPI(g){return typeof g=="function"}iP(wPI,"isFunction");function yf(g){return g==="indeterminate"}iP(yf,"isIndeterminate");function kCg(g){return yf(g)?"indeterminate":g?"checked":"unchecked"}iP(kCg,"getState");const BoA=z.forwardRef(({className:g,...A},I)=>T.jsx(yPI,{ref:I,className:oo("rf-peer rf-h-4 rf-w-4 rf-shrink-0 rf-rounded-sm rf-border rf-border-zinc-200 rf-border-zinc-900 rf-shadow focus-visible:rf-outline-none focus-visible:rf-ring-1 focus-visible:rf-ring-zinc-950 disabled:rf-cursor-not-allowed disabled:rf-opacity-50 data-[state=checked]:rf-bg-zinc-900 data-[state=checked]:rf-text-zinc-50 dark:rf-border-zinc-800 dark:rf-border-zinc-50 dark:focus-visible:rf-ring-zinc-300 dark:data-[state=checked]:rf-bg-zinc-50 dark:data-[state=checked]:rf-text-zinc-900",g),...A,children:T.jsx(Dko,{className:oo("rf-flex rf-items-center rf-justify-center rf-text-current"),children:T.jsx(nF,{className:"rf-h-4 rf-w-4"})})}));BoA.displayName=yPI.displayName;const Ub=smA,wko=amA,uPI=z.forwardRef(({className:g,...A},I)=>T.jsx(PtA,{className:oo("rf-fixed rf-inset-0 rf-z-50 rf-bg-black/80 data-[state=open]:rf-animate-in data-[state=closed]:rf-animate-out data-[state=closed]:rf-fade-out-0 data-[state=open]:rf-fade-in-0",g),...A,ref:I}));uPI.displayName=PtA.displayName;const SL=z.forwardRef(({className:g,children:A,showOverlay:I=!0,...e},t)=>T.jsxs(wko,{children:[T.jsx(uPI,{className:oo(I?"":"rf-hidden")}),T.jsx(LtA,{ref:t,className:oo("rf-fixed rf-left-[50%] rf-top-[50%] rf-z-50 rf-grid rf-w-full rf-max-w-lg rf-translate-x-[-50%] rf-translate-y-[-50%] rf-gap-4 rf-border rf-border-zinc-200 rf-bg-white rf-p-6 rf-shadow-lg rf-duration-200 data-[state=open]:rf-animate-in data-[state=closed]:rf-animate-out data-[state=closed]:rf-fade-out-0 data-[state=open]:rf-fade-in-0 data-[state=closed]:rf-zoom-out-95 data-[state=open]:rf-zoom-in-95 data-[state=closed]:rf-slide-out-to-left-1/2 data-[state=closed]:rf-slide-out-to-top-[48%] data-[state=open]:rf-slide-in-from-left-1/2 data-[state=open]:rf-slide-in-from-top-[48%] sm:rf-rounded-lg dark:rf-border-zinc-800 dark:rf-bg-zinc-950",g),...e,children:A})]}));SL.displayName=LtA.displayName;const fL=({className:g,...A})=>T.jsx("div",{className:oo("rf-flex rf-flex-col rf-space-y-2 rf-text-center sm:rf-text-left",g),...A});fL.displayName="DialogHeader";const JO=({className:g,...A})=>T.jsx("div",{className:oo("rf-flex rf-flex-col-reverse sm:rf-flex-row sm:rf-justify-end sm:rf-space-x-2",g),...A});JO.displayName="DialogFooter";const RL=z.forwardRef(({className:g,...A},I)=>T.jsx(rmA,{ref:I,className:oo("rf-text-lg rf-font-semibold",g),...A}));RL.displayName=rmA.displayName;const Jb=z.forwardRef(({className:g,...A},I)=>T.jsx(cmA,{ref:I,className:oo("rf-text-sm rf-text-zinc-500 dark:rf-text-zinc-400",g),...A}));Jb.displayName=cmA.displayName;const zmA={"tscircuit.com":{label:"tscircuit.com",placeholder:"Search tscircuit packages...",emptyMessage:"No packages found"},jlcpcb:{label:"JLCPCB Parts",placeholder:"Search JLCPCB parts (e.g. C14663)...",emptyMessage:"No parts found"},kicad:{label:"KiCad Footprints",placeholder:"Search KiCad footprints...",emptyMessage:"No footprints found"}},uko="https://cdn.jsdelivr.net/npm/easyeda@latest/dist/browser/index.js";let MCg=null;const SCg=async()=>(MCg||(MCg=import(uko)),MCg),Gko=g=>(A,I)=>{const e=new Headers(I?.headers),t={};return e.forEach((o,B)=>{t[B]=o}),fetch(`${g?.apiBase??Nm}/proxy`,{...I,headers:{...t,"X-Target-Url":A.toString(),"X-Sender-Origin":t.origin??"","X-Sender-Host":t.host??"https://easyeda.com","X-Sender-Referer":t.referer??"","X-Sender-User-Agent":t["user-agent"]??"","X-Sender-Cookie":t.cookie??"",authority:t.authority??"","content-type":t["content-type"]??"",...g?.headers}})},mko=async(g,A=10)=>{const I=encodeURIComponent(g),e=await fetch(`https://jlcsearch.tscircuit.com/api/search?limit=${A}&q=${I}`);if(!e.ok)throw new Error(`JLCPCB API error: ${e.status}`);return(await e.json()).components??[]},pko=g=>({lcscId:g.lcsc,manufacturer:g.mfr,description:g.description,partNumber:`C${g.lcsc}`,package:g.package,price:g.price,stock:g.stock,isBasic:g.is_basic}),GPI=async(g,A)=>{const{fetchEasyEDAComponent:I}=await SCg();return I(g,{fetch:Gko(A),includeModelMetadata:A?.includeModelMetadata})},kko=async(g,A)=>{const{convertRawEasyToTsx:I}=await SCg(),e=await GPI(g,A);return I({rawEasy:e})},Mko=async(g,A)=>{const{EasyEdaJsonSchema:I,convertEasyEdaJsonToCircuitJson:e}=await SCg(),t=await GPI(g,{...A,includeModelMetadata:!1}),o=I.parse(t);return e(o,{shouldRecenter:!0,showDesignator:!0,useModelCdn:!1})};function NL(g){return Array.isArray?Array.isArray(g):pPI(g)==="[object Array]"}function Sko(g){if(typeof g=="string")return g;if(typeof g=="bigint")return g.toString();const A=g+"";return A=="0"&&1/g==-1/0?"-0":A}function fCg(g){return g==null?"":Sko(g)}function dG(g){return typeof g=="string"}function XmA(g){return typeof g=="number"}function fko(g){return g===!0||g===!1||Rko(g)&&pPI(g)=="[object Boolean]"}function mPI(g){return typeof g=="object"}function Rko(g){return mPI(g)&&g!==null}function xS(g){return g!=null}function $mA(g){return!g.trim().length}function pPI(g){return g==null?g===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(g)}const Nko="Incorrect 'index' type",RCg="Invalid doc index: must be a non-negative integer within the bounds of the docs array",xko=g=>`Invalid value for key ${g}`,Fko=g=>`Pattern length exceeds max of ${g}.`,Uko=g=>`Missing ${g} property in key`,Jko=g=>`Property 'weight' in key '${g}' must be a positive integer`,Pko="Fuse.match does not support useTokenSearch: token search requires corpus-level statistics (df, fieldCount) that a one-off string comparison does not have. Use new Fuse(...).search(...) instead.",kPI=Object.prototype.hasOwnProperty;var Kko=class{constructor(g){this._keys=[],this._keyMap={};let A=0;g.forEach(I=>{const e=MPI(I);this._keys.push(e),this._keyMap[e.id]=e,A+=e.weight}),this._keys.forEach(I=>{I.weight/=A})}get(g){return this._keyMap[g]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}};function MPI(g){let A=null,I=null,e=null,t=1,o=null;if(dG(g)||NL(g))e=g,A=SPI(g),I=ApA(g);else{if(!kPI.call(g,"name"))throw new Error(Uko("name"));const B=g.name;if(e=B,kPI.call(g,"weight")&&g.weight!==void 0&&(t=g.weight,t<=0))throw new Error(Jko(ApA(B)));A=SPI(B),I=ApA(B),o=g.getFn??null}return{path:A,id:I,weight:t,src:e,getFn:o}}function SPI(g){return NL(g)?g:g.split(".")}function ApA(g){return NL(g)?g.join("."):g}function Lko(g,A){const I=[];let e=!1;const t=(o,B,C,Q)=>{if(xS(o))if(!B[C])I.push(Q!==void 0?{v:o,i:Q}:o);else{const i=o[B[C]];if(!xS(i))return;if(C===B.length-1&&(dG(i)||XmA(i)||fko(i)||typeof i=="bigint"))I.push(Q!==void 0?{v:fCg(i),i:Q}:fCg(i));else if(NL(i)){e=!0;for(let E=0,n=i.length;E<n;E+=1)t(i[E],B,C+1,E)}else B.length&&t(i,B,C+1,Q)}};return t(g,dG(A)?A.split("."):A,0),e?I:I[0]}const cQ=Object.freeze({...{isCaseSensitive:!1,ignoreDiacritics:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:(g,A)=>g.score===A.score?g.idx<A.idx?-1:1:g.score<A.score?-1:1},...{includeMatches:!1,findAllMatches:!1,minMatchCharLength:1},...{location:0,threshold:.6,distance:100},...{useExtendedSearch:!1,useTokenSearch:!1,tokenize:void 0,tokenMatch:"any",getFn:Lko,ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1}});function Yko(g){return g>=9&&g<=13||g===32||g===160}function _ko(g=1,A=3){const I=new Map,e=Math.pow(10,A);return{get(t){let o=0,B=!1;for(let Q=0;Q<t.length;Q++)Yko(t.charCodeAt(Q))?B=!1:B||(o++,B=!0);if(o===0&&(o=1),I.has(o))return I.get(o);const C=Math.round(e/Math.pow(o,.5*g))/e;return I.set(o,C),C},clear(){I.clear()}}}var NCg=class{constructor({getFn:g=cQ.getFn,fieldNormWeight:A=cQ.fieldNormWeight}={}){this.norm=_ko(A,3),this.getFn=g,this.isCreated=!1,this.docs=[],this.keys=[],this._keysMap={},this.setIndexRecords()}setSources(g=[]){this.docs=g}setIndexRecords(g=[]){this.records=g}setKeys(g=[]){this.keys=g,this._keysMap={},g.forEach((A,I)=>{this._keysMap[A.id]=I})}create(){if(this.isCreated||!this.docs.length)return;this.isCreated=!0;const g=this.docs.length;this.records=new Array(g);let A=0;if(dG(this.docs[0]))for(let I=0;I<g;I++){const e=this._createStringRecord(this.docs[I],I);e&&(this.records[A++]=e)}else for(let I=0;I<g;I++)this.records[A++]=this._createObjectRecord(this.docs[I],I);this.records.length=A,this.norm.clear()}add(g,A){if(!Number.isInteger(A)||A<0)throw new Error(RCg);if(dG(g)){const e=this._createStringRecord(g,A);return e&&this.records.push(e),e}const I=this._createObjectRecord(g,A);return this.records.push(I),I}removeAt(g){if(!Number.isInteger(g)||g<0)throw new Error(RCg);for(let A=0,I=this.records.length;A<I;A+=1)if(this.records[A].i===g){this.records.splice(A,1);break}for(let A=0,I=this.records.length;A<I;A+=1)this.records[A].i>g&&(this.records[A].i-=1)}removeAll(g){const A=new Set;for(const e of g)Number.isInteger(e)&&e>=0&&A.add(e);if(A.size===0)return;this.records=this.records.filter(e=>!A.has(e.i));const I=Array.from(A).sort((e,t)=>e-t);for(const e of this.records){let t=0,o=I.length;for(;t<o;){const B=t+o>>>1;I[B]<e.i?t=B+1:o=B}e.i-=t}}getValueForItemAtKeyId(g,A){return g[this._keysMap[A]]}size(){return this.records.length}_createStringRecord(g,A){return!xS(g)||$mA(g)?null:{v:g,i:A,n:this.norm.get(g)}}_createObjectRecord(g,A){const I={i:A,$:{}};for(let e=0,t=this.keys.length;e<t;e++){const o=this.keys[e],B=o.getFn?o.getFn(g):this.getFn(g,o.path);if(xS(B)){if(NL(B)){const C=[];for(let Q=0,i=B.length;Q<i;Q+=1){const E=B[Q];if(xS(E)){if(dG(E)){if(!$mA(E)){const n={v:E,i:Q,n:this.norm.get(E)};C.push(n)}}else if(xS(E.v)){const n=dG(E.v)?E.v:fCg(E.v);if(!$mA(n)){const s={v:n,i:E.i,n:this.norm.get(n)};C.push(s)}}}}I.$[e]=C}else if(dG(B)&&!$mA(B)){const C={v:B,n:this.norm.get(B)};I.$[e]=C}}}return I}toJSON(){return{keys:this.keys.map(({getFn:g,...A})=>A),records:this.records}}};function fPI(g,A,{getFn:I=cQ.getFn,fieldNormWeight:e=cQ.fieldNormWeight}={}){const t=new NCg({getFn:I,fieldNormWeight:e});return t.setKeys(g.map(MPI)),t.setSources(A),t.create(),t}function bko(g,{getFn:A=cQ.getFn,fieldNormWeight:I=cQ.fieldNormWeight}={}){const{keys:e,records:t}=g,o=new NCg({getFn:A,fieldNormWeight:I});return o.setKeys(e),o.setIndexRecords(t),o}function Hko(g=[],A=cQ.minMatchCharLength){const I=[];let e=-1,t=-1,o=0;for(let B=g.length;o<B;o+=1){const C=g[o];C&&e===-1?e=o:!C&&e!==-1&&(t=o-1,t-e+1>=A&&I.push([e,t]),e=-1)}return g[o-1]&&o-e>=A&&I.push([e,o-1]),I}function vko(g,A,I,{location:e=cQ.location,distance:t=cQ.distance,threshold:o=cQ.threshold,findAllMatches:B=cQ.findAllMatches,minMatchCharLength:C=cQ.minMatchCharLength,includeMatches:Q=cQ.includeMatches,ignoreLocation:i=cQ.ignoreLocation}={}){if(A.length>32)throw new Error(Fko(32));const E=A.length,n=g.length,s=Math.max(0,Math.min(e,n));let r=o,a=s;const c=(p,k)=>{const S=p/E;if(i)return S;const R=Math.abs(s-k);return t?S+R/t:R?1:S},h=C>1||Q,l=h?Array(n):[];let D;for(;(D=g.indexOf(A,a))>-1;){const p=c(0,D);if(r=Math.min(p,r),a=D+E,h){let k=0;for(;k<E;)l[D+k]=1,k+=1}}a=-1;let d=[],y=1,w=0,u=E+n;const G=1<<E-1;for(let p=0;p<E;p+=1){let k=0,S=u;for(;k<S;)c(p,s+S)<=r?k=S:u=S,S=Math.floor((u-k)/2+k);u=S;let R=Math.max(1,s-S+1);const x=B?n:Math.min(s+S,n)+E,N=Array(x+2);N[x+1]=(1<<p)-1;for(let U=x;U>=R;U-=1){const K=U-1,Y=I[g[K]];if(N[U]=(N[U+1]<<1|1)&Y,p&&(N[U]|=(d[U+1]|d[U])<<1|1|d[U+1]),N[U]&G&&(y=c(p,K),y<=r)){if(r=y,a=K,w=p,a<=s)break;R=Math.max(1,2*s-a)}}if(c(p+1,s)>r)break;d=N}if(h&&a>=0){const p=Math.min(n-1,a+E-1+w);for(let k=a;k<=p;k+=1)I[g[k]]&&(l[k]=1)}const m={isMatch:a>=0,score:Math.max(.001,y)};if(h){const p=Hko(l,C);p.length?Q&&(m.indices=p):m.isMatch=!1}return m}function Tko(g){const A={};for(let I=0,e=g.length;I<e;I+=1){const t=g.charAt(I);A[t]=(A[t]||0)|1<<e-I-1}return A}function xCg(g){if(g.length<=1)return g;g.sort((I,e)=>I[0]-e[0]||I[1]-e[1]);const A=[g[0]];for(let I=1,e=g.length;I<e;I+=1){const t=A[A.length-1],o=g[I];o[0]<=t[1]+1?t[1]=Math.max(t[1],o[1]):A.push(o)}return A}const RPI={ł:"l",Ł:"L",đ:"d",Đ:"D",ø:"o",Ø:"O",ħ:"h",Ħ:"H",ŧ:"t",Ŧ:"T",ı:"i",ß:"ss"},qko=new RegExp("["+Object.keys(RPI).join("")+"]","g"),CoA=typeof String.prototype.normalize=="function"?g=>g.normalize("NFD").replace(/[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D3-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C04\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u1885\u1886\u18A9\u1920-\u192B\u1930-\u193B\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DF9\u1DFB-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F]/g,"").replace(qko,A=>RPI[A]):g=>g;var FCg=class{constructor(g,{location:A=cQ.location,threshold:I=cQ.threshold,distance:e=cQ.distance,includeMatches:t=cQ.includeMatches,findAllMatches:o=cQ.findAllMatches,minMatchCharLength:B=cQ.minMatchCharLength,isCaseSensitive:C=cQ.isCaseSensitive,ignoreDiacritics:Q=cQ.ignoreDiacritics,ignoreLocation:i=cQ.ignoreLocation}={}){if(this.options={location:A,threshold:I,distance:e,includeMatches:t,findAllMatches:o,minMatchCharLength:B,isCaseSensitive:C,ignoreDiacritics:Q,ignoreLocation:i},g=C?g:g.toLowerCase(),g=Q?CoA(g):g,this.pattern=g,this.chunks=[],!this.pattern.length)return;const E=(s,r)=>{this.chunks.push({pattern:s,alphabet:Tko(s),startIndex:r})},n=this.pattern.length;if(n>32){let s=0;const r=n%32,a=n-r;for(;s<a;)E(this.pattern.substr(s,32),s),s+=32;if(r){const c=n-32;E(this.pattern.substr(c),c)}}else E(this.pattern,0)}searchIn(g){const{isCaseSensitive:A,ignoreDiacritics:I,includeMatches:e}=this.options;if(g=A?g:g.toLowerCase(),g=I?CoA(g):g,this.pattern===g){if(g.length<this.options.minMatchCharLength)return{isMatch:!1,score:1};const a={isMatch:!0,score:0};return e&&(a.indices=[[0,g.length-1]]),a}const{location:t,distance:o,threshold:B,findAllMatches:C,minMatchCharLength:Q,ignoreLocation:i}=this.options,E=[];let n=0,s=!1;this.chunks.forEach(({pattern:a,alphabet:c,startIndex:h})=>{const{isMatch:l,score:D,indices:d}=vko(g,a,c,{location:t+h,distance:o,threshold:B,findAllMatches:C,minMatchCharLength:Q,includeMatches:e,ignoreLocation:i});l&&(s=!0),n+=D,l&&d&&E.push(...d)});const r={isMatch:s,score:s?n/this.chunks.length:1};return s&&e&&(r.indices=xCg(E)),r}};const Zko=new Set(["fuzzy","include"]);function Oko(g){return g.startsWith("inverse")}const UCg=[{type:"exact",multiRegex:/^="(.*)"$/,singleRegex:/^=(.*)$/,create:g=>({type:"exact",search(A){const I=A===g;return{isMatch:I,score:I?0:1,indices:[0,g.length-1]}}})},{type:"include",multiRegex:/^'"(.*)"$/,singleRegex:/^'(.*)$/,create:g=>({type:"include",search(A){let I=0,e;const t=[],o=g.length;for(;(e=A.indexOf(g,I))>-1;)I=e+o,t.push([e,I-1]);const B=!!t.length;return{isMatch:B,score:B?0:1,indices:t}}})},{type:"prefix-exact",multiRegex:/^\^"(.*)"$/,singleRegex:/^\^(.*)$/,create:g=>({type:"prefix-exact",search(A){const I=A.startsWith(g);return{isMatch:I,score:I?0:1,indices:[0,g.length-1]}}})},{type:"inverse-prefix-exact",multiRegex:/^!\^"(.*)"$/,singleRegex:/^!\^(.*)$/,create:g=>({type:"inverse-prefix-exact",search(A){const I=!A.startsWith(g);return{isMatch:I,score:I?0:1,indices:[0,A.length-1]}}})},{type:"inverse-suffix-exact",multiRegex:/^!"(.*)"\$$/,singleRegex:/^!(.*)\$$/,create:g=>({type:"inverse-suffix-exact",search(A){const I=!A.endsWith(g);return{isMatch:I,score:I?0:1,indices:[0,A.length-1]}}})},{type:"suffix-exact",multiRegex:/^"(.*)"\$$/,singleRegex:/^(.*)\$$/,create:g=>({type:"suffix-exact",search(A){const I=A.endsWith(g);return{isMatch:I,score:I?0:1,indices:[A.length-g.length,A.length-1]}}})},{type:"inverse-exact",multiRegex:/^!"(.*)"$/,singleRegex:/^!(.*)$/,create:g=>({type:"inverse-exact",search(A){const I=A.indexOf(g)===-1;return{isMatch:I,score:I?0:1,indices:[0,A.length-1]}}})},{type:"fuzzy",multiRegex:/^"(.*)"$/,singleRegex:/^(.*)$/,create:(g,A={})=>{const I=new FCg(g,{location:A.location??cQ.location,threshold:A.threshold??cQ.threshold,distance:A.distance??cQ.distance,includeMatches:A.includeMatches??cQ.includeMatches,findAllMatches:A.findAllMatches??cQ.findAllMatches,minMatchCharLength:A.minMatchCharLength??cQ.minMatchCharLength,isCaseSensitive:A.isCaseSensitive??cQ.isCaseSensitive,ignoreDiacritics:A.ignoreDiacritics??cQ.ignoreDiacritics,ignoreLocation:A.ignoreLocation??cQ.ignoreLocation});return{type:"fuzzy",search(e){return I.searchIn(e)}}}}],NPI=UCg.length,Wko="\0",Vko="|";function jko(g){const A=[],I=g.length;let e=0;for(;e<I;){for(;e<I&&g[e]===" ";)e++;if(e>=I)break;let t=e;for(;t<I&&g[t]!==" "&&g[t]!=='"';)t++;if(t<I&&g[t]==='"'){for(t++;t<I;){if(g[t]==='"'){const o=t+1;if(o>=I||g[o]===" "){t++;break}if(g[o]==="$"&&(o+1>=I||g[o+1]===" ")){t+=2;break}}t++}A.push(g.substring(e,t)),e=t}else{for(;t<I&&g[t]!==" ";)t++;A.push(g.substring(e,t)),e=t}}return A}function xPI(g,A){const I=g.match(A);return I?I[1]:null}function zko(g,A={}){return g.replace(/\\\|/g,Wko).split(Vko).map(I=>{const e=jko(I.replace(/\u0000/g,"|").trim()).filter(o=>o&&!!o.trim()),t=[];for(let o=0,B=e.length;o<B;o+=1){const C=e[o];let Q=!1,i=-1;for(;!Q&&++i<NPI;){const E=UCg[i],n=xPI(C,E.multiRegex);n&&(t.push(E.create(n,A)),Q=!0)}if(!Q)for(i=-1;++i<NPI;){const E=UCg[i],n=xPI(C,E.singleRegex);if(n){t.push(E.create(n,A));break}}}return t})}var Xko=class{constructor(g,{isCaseSensitive:A=cQ.isCaseSensitive,ignoreDiacritics:I=cQ.ignoreDiacritics,includeMatches:e=cQ.includeMatches,minMatchCharLength:t=cQ.minMatchCharLength,ignoreLocation:o=cQ.ignoreLocation,findAllMatches:B=cQ.findAllMatches,location:C=cQ.location,threshold:Q=cQ.threshold,distance:i=cQ.distance}={}){this.query=null,this.options={isCaseSensitive:A,ignoreDiacritics:I,includeMatches:e,minMatchCharLength:t,findAllMatches:B,ignoreLocation:o,location:C,threshold:Q,distance:i},g=A?g:g.toLowerCase(),g=I?CoA(g):g,this.pattern=g,this.query=zko(this.pattern,this.options)}static condition(g,A){return A.useExtendedSearch}searchIn(g){const A=this.query;if(!A)return{isMatch:!1,score:1};const{includeMatches:I,isCaseSensitive:e,ignoreDiacritics:t}=this.options;g=e?g:g.toLowerCase(),g=t?CoA(g):g;let o=0;const B=[];let C=0,Q=!1;for(let i=0,E=A.length;i<E;i+=1){const n=A[i];B.length=0,o=0,Q=!1;for(let s=0,r=n.length;s<r;s+=1){const a=n[s],{isMatch:c,indices:h,score:l}=a.search(g);if(c)o+=1,C+=l,Oko(a.type)&&(Q=!0),I&&(Zko.has(a.type)?B.push(...h):B.push(h));else{C=0,o=0,B.length=0,Q=!1;break}}if(o){const s={isMatch:!0,score:C/o};return Q&&(s.hasInverse=!0),I&&(s.indices=xCg(B)),s}}return{isMatch:!1,score:1}}};const JCg=[];function PCg(...g){JCg.push(...g)}function gpA(g,A){for(let I=0,e=JCg.length;I<e;I+=1){const t=JCg[I];if(t.condition(g,A))return new t(g,A)}return new FCg(g,A)}const IpA={AND:"$and",OR:"$or"},KCg={PATH:"$path",PATTERN:"$val"},LCg=g=>!!(g[IpA.AND]||g[IpA.OR]),$ko=g=>!!g[KCg.PATH],AMo=g=>!NL(g)&&mPI(g)&&!LCg(g),FPI=g=>({[IpA.AND]:Object.keys(g).map(A=>({[A]:g[A]}))});function UPI(g,A,{auto:I=!0}={}){const e=t=>{if(dG(t)){const Q={keyId:null,pattern:t};return I&&(Q.searcher=gpA(t,A)),Q}const o=Object.keys(t),B=$ko(t);if(!B&&o.length>1&&!LCg(t))return e(FPI(t));if(AMo(t)){const Q=B?t[KCg.PATH]:o[0],i=B?t[KCg.PATTERN]:t[Q];if(!dG(i))throw new Error(xko(Q));const E={keyId:ApA(Q),pattern:i};return I&&(E.searcher=gpA(i,A)),E}const C={children:[],operator:o[0]};return o.forEach(Q=>{const i=t[Q];NL(i)&&i.forEach(E=>{C.children.push(e(E))})}),C};return LCg(g)||(g=FPI(g)),e(g)}function YCg(g,{ignoreFieldNorm:A=cQ.ignoreFieldNorm}){let I=1;return g.forEach(({key:e,norm:t,score:o})=>{const B=e?e.weight:null;I*=Math.pow(o===0&&B?Number.EPSILON:o,(B||1)*(A?1:t))}),I}function gMo(g,{ignoreFieldNorm:A=cQ.ignoreFieldNorm}){g.forEach(I=>{I.score=YCg(I.matches,{ignoreFieldNorm:A})})}var IMo=class{constructor(g,A){this.limit=g,this.heap=[],this.comparator=A}get size(){return this.heap.length}insert(g){this.size<this.limit?(this.heap.push(g),this._bubbleUp(this.size-1)):this.comparator(g,this.heap[0])<0&&(this.heap[0]=g,this._sinkDown(0))}extractSorted(){return this.heap.sort(this.comparator)}_bubbleUp(g){const A=this.heap;for(;g>0;){const I=g-1>>1;if(this.comparator(A[g],A[I])<=0)break;const e=A[g];A[g]=A[I],A[I]=e,g=I}}_sinkDown(g){const A=this.heap,I=A.length;let e=g;do{g=e;const t=2*g+1,o=2*g+2;if(t<I&&this.comparator(A[t],A[e])>0&&(e=t),o<I&&this.comparator(A[o],A[e])>0&&(e=o),e!==g){const B=A[g];A[g]=A[e],A[e]=B}}while(e!==g)}};function eMo(g){const A=[];return g.matches.forEach(I=>{if(!xS(I.indices)||!I.indices.length)return;const e={indices:I.indices,value:I.value};I.key&&(e.key=I.key.id),I.idx>-1&&(e.refIndex=I.idx),A.push(e)}),A}function tMo(g,A,{includeMatches:I=cQ.includeMatches,includeScore:e=cQ.includeScore}={}){return g.map(t=>{const{idx:o}=t,B={item:A[o],refIndex:o};return I&&(B.matches=eMo(t)),e&&(B.score=t.score),B})}const oMo=/[\p{L}\p{M}\p{N}_]+/gu,JPI=new WeakSet;function BMo(g){JPI.has(g)||(JPI.add(g),console.warn(`[Fuse] tokenize regex ${g} lacks the global flag; only the first match per text will be returned. Add the 'g' flag.`))}function CMo(g){if(typeof g=="function"){let A=!1;return I=>{const e=g(I);if(!A&&(A=!0,!Array.isArray(e)||e.some(t=>typeof t!="string")))throw new Error(`[Fuse] tokenize function must return string[]; received ${Array.isArray(e)?"array containing non-strings":typeof e}.`);return e}}return g instanceof RegExp?(g.global||BMo(g),A=>A.match(g)||[]):A=>A.match(oMo)||[]}function _Cg({isCaseSensitive:g=!1,ignoreDiacritics:A=!1,tokenize:I}={}){const e=CMo(I);return{tokenize(t){return g||(t=t.toLowerCase()),A&&(t=CoA(t)),e(t)}}}var QMo=class{static condition(g,A){return A.useTokenSearch}constructor(g,A){this.options=A,this.analyzer=_Cg({isCaseSensitive:A.isCaseSensitive,ignoreDiacritics:A.ignoreDiacritics,tokenize:A.tokenize});const I=this.analyzer.tokenize(g),{df:e,fieldCount:t}=A._invertedIndex;this.termSearchers=[],this.idfWeights=[];for(const o of I){this.termSearchers.push(new FCg(o,{location:A.location,threshold:A.threshold,distance:A.distance,includeMatches:A.includeMatches,findAllMatches:A.findAllMatches,minMatchCharLength:A.minMatchCharLength,isCaseSensitive:A.isCaseSensitive,ignoreDiacritics:A.ignoreDiacritics,ignoreLocation:!0}));const B=e.get(o)||0,C=Math.log(1+(t-B+.5)/(B+.5));this.idfWeights.push(C)}this.combineAll=A.tokenMatch==="all",this.numTerms=this.termSearchers.length,this.useMask=this.numTerms<=31}searchIn(g){if(!this.termSearchers.length)return{isMatch:!1,score:1};const A=[];let I=0,e=0,t=0,o=0;const B=this.combineAll&&!this.useMask?new Set:null;for(let i=0;i<this.termSearchers.length;i++){const E=this.termSearchers[i].searchIn(g),n=this.idfWeights[i];e+=n,E.isMatch&&(t++,I+=n*(1-E.score),E.indices&&A.push(...E.indices),this.combineAll&&(this.useMask?o|=1<<i:B.add(i)))}if(t===0)return{isMatch:!1,score:1};const C=e>0?1-I/e:0,Q={isMatch:!0,score:Math.max(.001,C)};return this.options.includeMatches&&A.length&&(Q.indices=xCg(A)),this.combineAll&&(this.useMask?Q.matchedMask=o:Q.matchedTerms=B,Q.termCount=this.numTerms),Q}};function bCg(g,A,I,e){const t=e.tokenize(A);if(!t.length)return;g.fieldCount++,g.docFieldCount.set(I,(g.docFieldCount.get(I)||0)+1);const o=new Set(t);let B=g.docTermFieldHits.get(I);B||(B=new Map,g.docTermFieldHits.set(I,B));for(const C of o)B.set(C,(B.get(C)||0)+1),g.df.set(C,(g.df.get(C)||0)+1)}function PPI(g,A,I,e){const{i:t,v:o,$:B}=A;if(o!==void 0){bCg(g,o,t,e);return}if(B)for(let C=0;C<I;C++){const Q=B[C];if(Q)if(Array.isArray(Q))for(const i of Q)bCg(g,i.v,t,e);else bCg(g,Q.v,t,e)}}function iMo(g,A,I){const e={fieldCount:0,df:new Map,docFieldCount:new Map,docTermFieldHits:new Map};for(const t of g)PPI(e,t,A,I);return e}function EMo(g,A,I,e){PPI(g,A,I,e)}function nMo(g,A){const I=g.docFieldCount.get(A);if(I===void 0)return;g.fieldCount-=I,g.docFieldCount.delete(A);const e=g.docTermFieldHits.get(A);if(e){for(const[t,o]of e){const B=(g.df.get(t)||0)-o;B<=0?g.df.delete(t):g.df.set(t,B)}g.docTermFieldHits.delete(A)}}function KPI(g,A){if(A.length===0)return;const I=Array.from(new Set(A)).sort((C,Q)=>C-Q);for(const C of I)nMo(g,C);const e=C=>{let Q=0,i=I.length;for(;Q<i;){const E=Q+i>>>1;I[E]<C?Q=E+1:i=E}return C-Q},t=I[0],o=new Map;for(const[C,Q]of g.docFieldCount)o.set(C>t?e(C):C,Q);g.docFieldCount=o;const B=new Map;for(const[C,Q]of g.docTermFieldHits)B.set(C>t?e(C):C,Q);g.docTermFieldHits=B}var xL=class{constructor(g,A,I){this.options={...cQ,...A},this.options.useExtendedSearch,this.options.useTokenSearch,this._keyStore=new Kko(this.options.keys),this._docs=g,this._myIndex=null,this._invertedIndex=null,this.setCollection(g,I),this._lastQuery=null,this._lastSearcher=null}_getSearcher(g){if(this._lastQuery===g)return this._lastSearcher;const A=gpA(g,this._invertedIndex?{...this.options,_invertedIndex:this._invertedIndex}:this.options);return this._lastQuery=g,this._lastSearcher=A,A}setCollection(g,A){if(this._docs=g,A&&!(A instanceof NCg))throw new Error(Nko);if(this._myIndex=A||fPI(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight}),this.options.useTokenSearch){const I=_Cg({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics,tokenize:this.options.tokenize});this._invertedIndex=iMo(this._myIndex.records,this._myIndex.keys.length,I)}this._invalidateSearcherCache()}add(g){if(!xS(g))return;this._docs.push(g);const A=this._myIndex.add(g,this._docs.length-1);if(this._invertedIndex&&A){const I=_Cg({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics,tokenize:this.options.tokenize});EMo(this._invertedIndex,A,this._myIndex.keys.length,I)}this._invalidateSearcherCache()}remove(g=()=>!1){const A=[],I=[];for(let e=0,t=this._docs.length;e<t;e+=1)g(this._docs[e],e)&&(A.push(this._docs[e]),I.push(e));if(I.length){this._invertedIndex&&KPI(this._invertedIndex,I);const e=new Set(I);this._docs=this._docs.filter((t,o)=>!e.has(o)),this._myIndex.removeAll(I),this._invalidateSearcherCache()}return A}removeAt(g){if(!Number.isInteger(g)||g<0||g>=this._docs.length)throw new Error(RCg);this._invertedIndex&&KPI(this._invertedIndex,[g]);const A=this._docs.splice(g,1)[0];return this._myIndex.removeAt(g),this._invalidateSearcherCache(),A}_invalidateSearcherCache(){this._lastQuery=null,this._lastSearcher=null}getIndex(){return this._myIndex}_normalizedKeys(){return this._myIndex.keys.map(g=>this._keyStore.get(g.id)||g)}search(g,A){const{limit:I=-1}=A||{},{includeMatches:e,includeScore:t,shouldSort:o,sortFn:B,ignoreFieldNorm:C}=this.options;if(dG(g)&&!g.trim()){let s=this._docs.map((r,a)=>({item:r,refIndex:a}));return XmA(I)&&I>-1&&(s=s.slice(0,I)),s}const Q=o&&XmA(I)&&I>0&&dG(g),i=B,E=(s,r)=>i(s,r)||s.idx-r.idx;let n;if(Q){const s=new IMo(I,E);dG(this._docs[0])?this._searchStringList(g,{heap:s,ignoreFieldNorm:C}):this._searchObjectList(g,{heap:s,ignoreFieldNorm:C}),n=s.extractSorted()}else n=dG(g)?dG(this._docs[0])?this._searchStringList(g):this._searchObjectList(g):this._searchLogical(g),gMo(n,{ignoreFieldNorm:C}),o&&n.sort(dG(g)?E:i),XmA(I)&&I>-1&&(n=n.slice(0,I));return tMo(n,this._docs,{includeMatches:e,includeScore:t})}_searchStringList(g,{heap:A,ignoreFieldNorm:I}={}){const e=this._getSearcher(g),t=this.options.useTokenSearch&&this.options.tokenMatch==="all",{records:o}=this._myIndex,B=A?null:[];return o.forEach(({v:C,i:Q,n:i})=>{if(!xS(C))return;const E=e.searchIn(C);if(E.isMatch){const n={score:E.score,value:C,norm:i,indices:E.indices};t&&(n.matchedMask=E.matchedMask,n.matchedTerms=E.matchedTerms,n.termCount=E.termCount);const s=[n];if(!t||this._coversAllTokens(s)){const r={item:C,idx:Q,matches:s};A?(r.score=YCg(r.matches,{ignoreFieldNorm:I}),A.insert(r)):B.push(r)}}}),B}_searchLogical(g){const A=UPI(g,this.options),I=this._normalizedKeys(),e=(C,Q,i)=>{if(!("children"in C)){const{keyId:r,searcher:a}=C;let c;return r===null?(c=[],I.forEach((h,l)=>{c.push(...this._findMatches({key:h,value:Q[l],searcher:a}))})):c=this._findMatches({key:this._keyStore.get(r),value:this._myIndex.getValueForItemAtKeyId(Q,r),searcher:a}),c&&c.length?[{idx:i,item:Q,matches:c}]:[]}const{children:E,operator:n}=C,s=[];for(let r=0,a=E.length;r<a;r+=1){const c=E[r],h=e(c,Q,i);if(h.length)s.push(...h);else if(n===IpA.AND)return[]}return s},t=this._myIndex.records,o=new Map,B=[];return t.forEach(({$:C,i:Q})=>{if(xS(C)){const i=e(A,C,Q);i.length&&(o.has(Q)||(o.set(Q,{idx:Q,item:C,matches:[]}),B.push(o.get(Q))),i.forEach(({matches:E})=>{o.get(Q).matches.push(...E)}))}}),B}_searchObjectList(g,{heap:A,ignoreFieldNorm:I}={}){const e=this._getSearcher(g),t=this.options.useTokenSearch&&this.options.tokenMatch==="all",{records:o}=this._myIndex,B=this._normalizedKeys(),C=A?null:[];return o.forEach(({$:Q,i})=>{if(!xS(Q))return;const E=[];let n=!1,s=!1;if(B.forEach((r,a)=>{const c=this._findMatches({key:r,value:Q[a],searcher:e});c.length?(E.push(...c),c[0].hasInverse&&(s=!0)):n=!0}),!(s&&n)&&E.length&&(!t||this._coversAllTokens(E))){const r={idx:i,item:Q,matches:E};A?(r.score=YCg(r.matches,{ignoreFieldNorm:I}),A.insert(r)):C.push(r)}}),C}_findMatches({key:g,value:A,searcher:I}){if(!xS(A))return[];const e=[];if(NL(A))A.forEach(({v:t,i:o,n:B})=>{if(!xS(t))return;const C=I.searchIn(t);if(C.isMatch){const Q={score:C.score,key:g,value:t,idx:o,norm:B,indices:C.indices,hasInverse:C.hasInverse};C.termCount!==void 0&&(Q.matchedMask=C.matchedMask,Q.matchedTerms=C.matchedTerms,Q.termCount=C.termCount),e.push(Q)}});else{const{v:t,n:o}=A,B=I.searchIn(t);if(B.isMatch){const C={score:B.score,key:g,value:t,norm:o,indices:B.indices,hasInverse:B.hasInverse};B.termCount!==void 0&&(C.matchedMask=B.matchedMask,C.matchedTerms=B.matchedTerms,C.termCount=B.termCount),e.push(C)}}return e}_coversAllTokens(g){const A=g.length?g[0].termCount:void 0;if(A===void 0)return!0;if(A<=31){let e=0;for(let t=0;t<g.length;t++)e|=g[t].matchedMask||0;return e===2**A-1}const I=new Set;for(let e=0;e<g.length;e++){const t=g[e].matchedTerms;if(t)for(const o of t)I.add(o)}return I.size===A}};xL.version="7.5.0",xL.createIndex=fPI,xL.parseIndex=bko,xL.config=cQ,xL.match=function(g,A,I){if(I&&I.useTokenSearch)throw new Error(Pko);return gpA(g,{...cQ,...I}).searchIn(A)},xL.parseQuery=UPI,PCg(Xko),PCg(QMo),xL.use=function(...g){g.forEach(A=>PCg(A))};var sMo=xL;const aMo="https://kicad-mod-cache.tscircuit.com";let HCg=null,QoA=null,vCg=null;const rMo=async()=>HCg||QoA||(QoA=fetch("https://kicad-mod-cache.tscircuit.com/kicad_files.json").then(g=>g.json()).then(g=>(HCg=g,QoA=null,g)),QoA),cMo=async(g,A=20)=>{const I=await rMo();return vCg||(vCg=new sMo(I)),vCg.search(g).slice(0,A).map(e=>e.item)},hMo=g=>{const A=g.replace(".pretty/","/").replace(".kicad_mod",""),I=`kicad:${A}`;return{path:g,qualifiedName:I,description:A}},lMo=g=>g.replace(/^\/+/,"").split("/").map(A=>encodeURIComponent(A)).join("/"),DMo=async g=>{const A=await fetch(`${aMo}/${lMo(g)}`);if(!A.ok)throw new Error(`KiCad footprint fetch failed: ${A.status}`);const I=await A.text(),{KicadFootprintToCircuitJsonConverter:e}=await NS("kicad-to-circuit-json"),t=new e;return t.addFile(g.split("/").pop()??"selected-footprint.kicad_mod",I),t.runUntilFinished(),t.getOutput()},LPI=g=>g?.source==="jlcpcb"||g?.source==="kicad",dMo=async(g,A)=>{if(g.source==="jlcpcb")return Mko(g.component.partNumber,A?.jlcpcb);if(g.source==="kicad")return DMo(g.footprint.path);throw new Error("Footprint preview is not available for this source")},yMo=({query:g,placeholder:A,isSearching:I,onQueryChange:e,onSubmit:t})=>{const o=z.useCallback(B=>{B.key==="Enter"&&(B.preventDefault(),t())},[t]);return T.jsxs("div",{className:"rf-flex rf-items-center rf-gap-2 rf-mt-4",children:[T.jsxs("div",{className:"rf-relative rf-flex-grow",children:[T.jsx(Pog,{className:"rf-absolute rf-left-2 rf-top-2.5 rf-h-4 rf-w-4 rf-text-muted-foreground"}),T.jsx(QCg,{placeholder:A,className:"rf-pl-8",spellCheck:!1,autoComplete:"off",value:g,onChange:B=>e(B.target.value),onKeyDown:o})]}),T.jsx(si,{onClick:t,disabled:I||g.trim().length<1,className:"sm:rf-px-4 rf-px-3",children:I?T.jsx(pS,{className:"rf-h-4 rf-w-4 rf-animate-spin"}):T.jsxs(T.Fragment,{children:[T.jsx(Pog,{className:"rf-h-4 rf-w-4 sm:rf-hidden"}),T.jsx("span",{className:"rf-hidden sm:rf-inline",children:"Search"})]})})]})},wMo=new Intl.NumberFormat("en-US",{style:"currency",currency:"USD"}),uMo=g=>wMo.format(g),YPI=g=>{switch(g.source){case"tscircuit.com":{const A=g.package;return`tscircuit-${A.package_id??`${A.org_owner_tscircuit_handle??"unknown"}-${A.unscoped_name??A.name??"package"}`}`}case"jlcpcb":return`jlc-${g.component.lcscId}`;case"kicad":return`kicad-${g.footprint.path}`;default:return"unknown"}},GMo=g=>{switch(g.source){case"tscircuit.com":return g.package.unscoped_name;case"jlcpcb":return g.component.isDirectLookup?g.component.partNumber:g.component.manufacturer;case"kicad":return g.footprint.qualifiedName}},mMo=g=>{switch(g.source){case"tscircuit.com":return g.package.description||(g.package.org_owner_tscircuit_handle?`Component by ${g.package.org_owner_tscircuit_handle}`:void 0);case"jlcpcb":return g.component.description;case"kicad":return g.footprint.description}},pMo=g=>{switch(g.source){case"tscircuit.com":return g.package.name;case"jlcpcb":return g.component.isDirectLookup?void 0:g.component.partNumber;case"kicad":return}},kMo=({results:g,selected:A,onSelect:I,onShowDetails:e})=>{const t=A?YPI(A):null;return T.jsx("div",{className:"rf-divide-y rf-w-full rf-overflow-hidden",children:g.map(o=>{const B=YPI(o),C=t===B,Q=GMo(o),i=mMo(o),E=pMo(o),n=o.source==="jlcpcb"?o.component.stock:null,s=o.source==="jlcpcb"?o.component.price:null,r=o.source==="jlcpcb"?o.component.isBasic:null,a=o.source==="jlcpcb"?o.component.isDirectLookup:!1;return T.jsxs("div",{className:`rf-p-3 rf-flex rf-flex-col sm:rf-grid sm:rf-grid-cols-[minmax(0,1fr)_auto] rf-items-start sm:rf-items-center rf-cursor-pointer hover:rf-bg-zinc-100 rf-gap-2 rf-overflow-hidden ${C?"rf-bg-zinc-100":""}`,onClick:()=>I(o),children:[T.jsxs("div",{className:"rf-min-w-0 rf-overflow-hidden rf-w-full",children:[T.jsxs("div",{className:"rf-flex rf-items-start rf-gap-2 rf-min-w-0",children:[T.jsxs("div",{className:"rf-font-medium rf-text-sm rf-truncate rf-flex-1 rf-min-w-0 rf-flex rf-items-center rf-gap-1.5",children:[Q,o.source==="jlcpcb"&&r!=null&&T.jsx("span",{className:`rf-text-xs rf-px-1.5 rf-py-0.5 rf-rounded rf-font-medium rf-flex-shrink-0 ${r?"rf-bg-green-100 rf-text-green-700":"rf-bg-orange-100 rf-text-orange-700"}`,children:r?"Basic":"Extended"}),a&&T.jsx("span",{className:"rf-text-xs rf-px-1.5 rf-py-0.5 rf-rounded rf-font-medium rf-flex-shrink-0 rf-bg-blue-100 rf-text-blue-700",children:"Direct lookup"}),o.source==="tscircuit.com"&&o.package.is_private&&T.jsx(Tro,{className:"rf-ml-1 rf-h-3 rf-w-3 rf-text-zinc-400 rf-flex-shrink-0"})]}),o.source==="jlcpcb"&&n!=null?T.jsxs("div",{className:"rf-text-xs rf-text-zinc-500 rf-font-medium rf-whitespace-nowrap rf-flex-shrink-0 sm:rf-hidden",children:[n.toLocaleString()," in stock"]}):null]}),T.jsxs("div",{className:"rf-text-xs rf-text-zinc-500 rf-truncate rf-w-full",children:[E?T.jsx("span",{className:"rf-mr-2",children:E}):null,i]})]}),T.jsxs("div",{children:[o.source==="tscircuit.com"&&e?T.jsx("div",{className:"rf-flex-shrink-0 rf-w-full sm:rf-w-auto",children:T.jsx(si,{variant:"outline",size:"sm",className:"rf-text-xs rf-w-full sm:rf-w-auto",onClick:c=>{c.stopPropagation(),e(o)},children:"See Details"})}):o.source==="jlcpcb"&&n!=null?T.jsxs("div",{className:"rf-hidden sm:rf-block rf-text-xs rf-text-zinc-500 rf-font-medium rf-whitespace-nowrap rf-flex-shrink-0",children:[n.toLocaleString()," in stock"]}):null,s!=null&&T.jsx("div",{className:"rf-hidden sm:rf-block rf-text-xs rf-text-zinc-500 rf-font-medium rf-whitespace-nowrap rf-flex-shrink-0 rf-text-right",children:uMo(s)})]})]},B)})})},MMo=({circuitJson:g,error:A,isLoading:I,height:e})=>T.jsx("section",{className:"rf-flex rf-min-w-0 rf-items-center rf-justify-center",style:{height:e},children:I?T.jsxs("div",{className:"rf-flex rf-w-full rf-items-center rf-justify-center rf-gap-2 rf-bg-zinc-950 rf-text-sm rf-text-zinc-300",style:{height:e},children:[T.jsx(pS,{className:"rf-h-4 rf-w-4 rf-animate-spin"}),"Loading preview..."]}):A?T.jsx("div",{className:"rf-flex rf-w-full rf-items-center rf-justify-center rf-bg-zinc-950 rf-p-4",style:{height:e},children:T.jsxs("div",{className:"rf-flex rf-max-w-[320px] rf-items-start rf-gap-2 rf-text-sm rf-text-zinc-300",children:[T.jsx(Uog,{className:"rf-mt-0.5 rf-h-4 rf-w-4 rf-flex-shrink-0"}),T.jsx("span",{children:A})]})}):g?T.jsx("div",{className:"rf-w-full rf-min-w-0 rf-overflow-hidden",children:T.jsx(Nog,{circuitJson:g,height:e,allowEditing:!1,clickToInteractEnabled:!1,focusOnHover:!1,disablePcbGroups:!0})}):T.jsx("div",{className:"rf-flex rf-w-full rf-items-center rf-justify-center rf-bg-zinc-950 rf-text-sm rf-text-zinc-300",style:{height:e},children:"No preview"})}),_PI={importComponentDialog:101,importComponentDetailsDialog:102},SMo=({packageResult:g,isOpen:A,onOpenChange:I,isLoading:e,details:t,previewTab:o,onPreviewTabChange:B,isSubmitting:C,onImport:Q})=>{const i=g?.package??null,E=i?.latest_pcb_preview_image_url,n=i?.latest_sch_preview_image_url,s=i?.latest_cad_preview_image_url,r=i?.unscoped_name?.split("/").pop()??i?.unscoped_name,a=i?.org_owner_tscircuit_handle??void 0,c=a?`https://tscircuit.com/${a}`:void 0,h=a&&r?`https://tscircuit.com/${a}/${r}`:void 0;return T.jsx(Ub,{open:A,onOpenChange:I,children:T.jsxs(SL,{showOverlay:!1,style:{width:"calc(100vw - 2rem)",zIndex:_PI.importComponentDetailsDialog},className:"rf-max-w-5xl no-scrollbar !rf-overflow-y-auto rf-max-h-[90vh] rf-overflow-hidden rf-flex rf-flex-col rf-rounded-sm",children:[T.jsx(fL,{className:"rf-pb-4 rf-border-b",children:T.jsx("div",{className:"rf-flex rf-items-start rf-justify-between rf-gap-4",children:T.jsxs("div",{className:"rf-flex-1 rf-min-w-0",children:[T.jsx(RL,{className:"rf-text-xl rf-font-semibold rf-truncate",children:r}),T.jsx(Jb,{children:i?.description})]})})}),T.jsxs("div",{className:"rf-flex-1 rf-overflow-y-auto rf-py-4 rf-space-y-6",children:[a?T.jsxs("div",{children:[T.jsx("span",{className:"rf-text-xs rf-font-medium rf-text-gray-500 rf-uppercase rf-tracking-wide",children:"Created by"}),T.jsx("div",{className:"rf-mt-1 rf-text-sm rf-font-medium",children:c?T.jsx("a",{href:c,target:"_blank",rel:"noopener noreferrer",className:"rf-text-black hover:rf-underline",children:a}):a})]}):null,(s||E||n)&&T.jsx(T.Fragment,{children:T.jsxs("div",{children:[T.jsx("h3",{className:"rf-text-lg rf-font-semibold rf-mb-4",children:"Preview"}),T.jsxs(KvA,{value:o,onValueChange:l=>B(l),children:[T.jsxs(FDA,{className:"rf-inline-flex rf-h-9 rf-items-center rf-justify-center rf-rounded-lg rf-bg-zinc-100 rf-p-1 rf-text-zinc-500 dark:rf-bg-zinc-800 dark:rf-text-zinc-400",children:[E&&T.jsx(Gx,{value:"pcb",children:"PCB"}),n&&T.jsx(Gx,{value:"schematic",children:"Schematic"}),s&&T.jsx(Gx,{value:"3d",children:"3D"})]}),T.jsxs("div",{className:"rf-mt-4",children:[T.jsx(Ny,{value:"pcb",className:"rf-border rf-rounded-lg rf-overflow-hidden rf-bg-gray-50",children:E?T.jsx("img",{src:E,alt:`${r??"package"} PCB preview`,className:"rf-w-full rf-h-full rf-object-contain rf-bg-white rf-p-4"}):null}),T.jsx(Ny,{value:"schematic",className:"rf-border rf-rounded-lg rf-overflow-hidden rf-bg-gray-50",children:n?T.jsx("img",{src:n,alt:`${r??"package"} schematic preview`,className:"rf-w-full rf-h-full rf-object-contain rf-bg-white rf-p-4"}):null}),T.jsx(Ny,{value:"3d",className:"rf-border rf-rounded-lg rf-overflow-hidden rf-bg-gray-50",children:s?T.jsx("img",{src:s,alt:`${r??"package"} 3D preview`,className:"rf-w-full rf-h-full rf-object-contain rf-bg-white rf-p-4"}):null})]})]})]})}),t?.ai_description?T.jsxs("section",{children:[T.jsx("h3",{className:"rf-text-lg rf-font-semibold rf-mb-3",children:"AI Description"}),T.jsx("div",{className:"rf-bg-gray-50 rf-border rf-border-gray-200 rf-rounded-lg rf-p-4",children:T.jsx("p",{className:"rf-text-sm rf-text-gray-700 rf-leading-relaxed",children:t.ai_description})})]}):null,t?.ai_usage_instructions?T.jsxs("section",{children:[T.jsx("h3",{className:"rf-text-lg rf-font-semibold rf-mb-3",children:"Usage Instructions"}),T.jsx("div",{className:"rf-bg-gray-50 rf-border rf-border-gray-200 rf-rounded-lg rf-p-4",children:T.jsx("p",{className:"rf-text-sm rf-text-gray-700 rf-leading-relaxed rf-whitespace-pre-wrap",children:t.ai_usage_instructions})})]}):null,e?T.jsxs("div",{className:"rf-flex rf-justify-center rf-items-center rf-gap-2 rf-text-gray-500",children:[T.jsx(pS,{className:"rf-h-4 rf-w-4 rf-animate-spin"}),T.jsx("span",{className:"rf-text-sm",children:"Loading package details..."})]}):null]}),T.jsxs(JO,{className:"rf-pt-4 rf-border-t rf-flex rf-flex-col sm:rf-flex-row rf-justify-between rf-gap-2",children:[T.jsx("div",{className:"rf-flex-1",children:h?T.jsxs(si,{variant:"outline",size:"sm",className:"rf-gap-2 rf-w-full sm:rf-w-auto",onClick:()=>window.open(h,"_blank"),children:[T.jsx(Kro,{className:"rf-h-4 rf-w-4"}),"View on tscircuit.com"]}):null}),T.jsxs("div",{className:"rf-flex rf-flex-col sm:rf-flex-row rf-gap-2",children:[T.jsx(si,{variant:"outline",onClick:()=>I(!1),className:"rf-order-2 sm:rf-order-1",children:"Close"}),T.jsx(si,{onClick:Q,disabled:C,className:"rf-bg-blue-600 hover:rf-bg-blue-700",children:C?T.jsx(pS,{className:"rf-h-4 rf-w-4 rf-animate-spin"}):"Import Component"})]})]})]})})},fMo=()=>{const[g,A]=z.useState(null),[I,e]=z.useState(!1),t=z.useCallback(async(B,C)=>{e(!0);try{const Q=await fetch(`https://api.tscircuit.com/packages/get?name=${encodeURIComponent(`${B}/${C}`)}`);if(!Q.ok)throw new Error(`Failed to load package details: ${Q.status}`);const i=await Q.json();A(i.package??null)}catch(Q){console.error("Failed to fetch package details",Q),A(null)}finally{e(!1)}},[]),o=z.useCallback(()=>{A(null),e(!1)},[]);return{details:g,isLoading:I,fetchDetails:t,reset:o}},RMo=(g,A)=>{const[I,e]=z.useState({circuitJson:null,error:null,isLoading:!1});return z.useEffect(()=>{if(!g||!LPI(g)){e({circuitJson:null,error:null,isLoading:!1});return}let t=!1;return e({circuitJson:null,error:null,isLoading:!0}),dMo(g,A).then(o=>{t||e({circuitJson:o,error:null,isLoading:!1})}).catch(o=>{t||e({circuitJson:null,error:o instanceof Error?o.message:"Failed to load footprint preview",isLoading:!1})}),()=>{t=!0}},[g,A]),I},NMo=async(g,A)=>{const I={"Content-Type":"application/json"};A&&(I.Authorization=`Bearer ${A}`);const e=await fetch("https://registry-api.tscircuit.com/packages/search",{method:"POST",headers:I,body:JSON.stringify({query:g})});if(!e.ok)throw new Error(`tscircuit registry error: ${e.status}`);return(await e.json()).packages??[]},xMo=({sessionToken:g})=>{const[A,I]=z.useState([]),[e,t]=z.useState(!1),[o,B]=z.useState(null),[C,Q]=z.useState(!1),i=z.useCallback(async n=>{const s=n.trim();if(!s)return[];t(!0),B(null);try{const a=(await NMo(s,g)).map(c=>({source:"tscircuit.com",package:c}));return I(a),a}catch(r){return console.error("Error searching tscircuit packages",r),I([]),B(r instanceof Error?r.message:"Failed to search tscircuit packages"),[]}finally{t(!1),Q(!0)}},[g]),E=z.useCallback(()=>{I([]),t(!1),B(null),Q(!1)},[]);return{results:A,isSearching:e,error:o,hasSearched:C,search:i,reset:E}},FMo=g=>{const A=/^C(\d+)$/i.exec(g.trim());if(!A)return null;const I=Number(A[1]);if(!Number.isSafeInteger(I))return null;const e=`C${A[1]}`;return{source:"jlcpcb",component:{lcscId:I,manufacturer:e,partNumber:e,description:"Import directly from EasyEDA; stock and availability are unknown",package:"",isDirectLookup:!0}}},bPI=(g,A)=>{const I=FMo(g);return I?A.some(t=>t.component.partNumber.toUpperCase()===I.component.partNumber)?A:[I,...A]:A},UMo=g=>{const A=g.trim();return/^C\d+/i.test(A)?A.replace(/^C/i,""):A},JMo=()=>{const[g,A]=z.useState([]),[I,e]=z.useState(!1),[t,o]=z.useState(null),[B,C]=z.useState(!1),Q=z.useCallback(async E=>{const n=UMo(E);if(!n)return[];e(!0),o(null);try{const s=await mko(n,10),r=bPI(E,s.map(a=>({source:"jlcpcb",component:pko(a)})));return A(r),r}catch(s){console.error("Error searching JLCPCB components",s);const r=bPI(E,[]);return A(r),o(r.length>0?null:s instanceof Error?s.message:"Failed to search JLCPCB components"),r}finally{e(!1),C(!0)}},[]),i=z.useCallback(()=>{A([]),e(!1),o(null),C(!1)},[]);return{results:g,isSearching:I,error:t,hasSearched:B,search:Q,reset:i}},PMo=()=>{const[g,A]=z.useState([]),[I,e]=z.useState(!1),[t,o]=z.useState(null),[B,C]=z.useState(!1),Q=z.useCallback(async E=>{const n=E.trim();if(!n)return[];e(!0),o(null);try{const r=(await cMo(n,20)).map(a=>({source:"kicad",footprint:hMo(a)}));return A(r),r}catch(s){return console.error("Error searching KiCad footprints",s),A([]),o(s instanceof Error?s.message:"Failed to search KiCad footprints"),[]}finally{e(!1),C(!0)}},[]),i=z.useCallback(()=>{A([]),e(!1),o(null),C(!1)},[]);return{results:g,isSearching:I,error:t,hasSearched:B,search:Q,reset:i}},KMo=({onTscircuitPackageSelected:g,onJlcpcbComponentTsxLoaded:A,onKicadStringSelected:I})=>{const e=[];return g&&e.push("tscircuit.com"),A&&e.push("jlcpcb"),I&&e.push("kicad"),e},LMo=({isOpen:g,onClose:A,jlcpcbProxyRequestHeaders:I,onKicadStringSelected:e,onTscircuitPackageSelected:t,onJlcpcbComponentTsxLoaded:o,jlcpcbProxyApiBase:B,tscircuitSessionToken:C})=>{eoA();const Q=z.useMemo(()=>KMo({onKicadStringSelected:e,onTscircuitPackageSelected:t,onJlcpcbComponentTsxLoaded:o}),[e,t,o]),i=Q.length>0,E=Q.length===1,[n,s]=z.useState(Q[0]??"tscircuit.com"),[r,a]=z.useState(""),[c,h]=z.useState(null),{results:l,isSearching:D,error:d,hasSearched:y,search:w,reset:u}=xMo({sessionToken:C}),{results:G,isSearching:m,error:p,hasSearched:k,search:S,reset:R}=JMo(),{results:x,isSearching:N,error:U,hasSearched:K,search:Y,reset:b}=PMo(),{details:q,isLoading:j,fetchDetails:W,reset:Z}=fMo(),[gA,tA]=z.useState(null),[IA,QA]=z.useState(!1),[nA,DA]=z.useState("pcb"),[CA,hA]=z.useState(null),[sA,cA]=z.useState(!1),SA=z.useMemo(()=>({jlcpcb:{headers:I,apiBase:B}}),[B,I]),{circuitJson:FA,error:aA,isLoading:xA}=RMo(c,SA),RA=LPI(c);z.useEffect(()=>{hA(null)},[c]);const NA=z.useCallback(()=>{u(),R(),b(),h(null)},[R,b,u]);z.useEffect(()=>{g||(NA(),a(""),QA(!1),tA(null),hA(null))},[g,NA]),z.useEffect(()=>{a(""),h(null),n==="tscircuit.com"?u():n==="jlcpcb"?R():n==="kicad"&&b()},[n,R,b,u]);const HA=kA=>{h(kA),tA(kA),DA("pcb"),QA(!0),Z();const OA=kA.package.org_owner_tscircuit_handle,$A=kA.package.unscoped_name;if(OA&&$A){const og=$A.split("/").pop()??$A;W(OA,og)}},PA=async()=>{r.trim()&&(h(null),n==="tscircuit.com"?await w(r):n==="jlcpcb"?await S(r):n==="kicad"&&await Y(r))},GA=async kA=>{try{if(hA(null),cA(!0),kA.source==="kicad"){if(!e)throw new Error("KiCad handler not provided");await e({result:kA,footprint:kA.footprint.qualifiedName})}else if(kA.source==="jlcpcb"){if(!o)throw new Error("JLCPCB handler not provided");const OA=await kko(kA.component.partNumber,{headers:I,apiBase:B});await o({result:kA,tsx:OA})}else if(kA.source==="tscircuit.com"){if(!t)throw new Error("tscircuit package handler not provided");const OA=kA.package.org_owner_tscircuit_handle,$A=kA.package.unscoped_name;if(!OA||!$A)throw new Error("Missing package metadata");const og=$A.split("/").pop()??$A,dg=`@tsci/${OA}.${og}`;await t({result:kA,fullPackageName:dg})}return!0}catch(OA){return console.error("Failed to import component",OA),hA(OA instanceof Error?OA.message:"Failed to import component"),!1}finally{cA(!1)}};let LA=[],dA=!1,bA=null,WA=!1;n==="tscircuit.com"?(LA=l,dA=D,bA=d,WA=y):n==="jlcpcb"?(LA=G,dA=m,bA=p,WA=k):n==="kicad"&&(LA=x,dA=N,bA=U,WA=K);const Qg=async()=>{if(!c)return;await GA(c)&&(A(),NA(),a(""))},YA=kA=>{kA||A()},uA=kA=>{QA(kA),kA||tA(null)};return T.jsxs(Ub,{open:g,onOpenChange:YA,children:[T.jsxs(SL,{style:{width:"calc(100vw - 2rem)",maxWidth:RA?"min(1120px, calc(100vw - 2rem))":"min(672px, calc(100vw - 2rem))",zIndex:_PI.importComponentDialog},className:"rf-rounded-sm rf-max-h-[90vh] rf-overflow-y-auto rf-overflow-x-hidden rf-flex rf-flex-col",children:[T.jsxs(fL,{children:[T.jsxs(RL,{className:"rf-text-lg sm:rf-text-xl",children:["Import ",E?zmA[n].label:""," ","Component"]}),T.jsx(Jb,{className:"rf-text-sm",children:i?"Search for components from available sources.":"Import options are disabled because no handlers were provided."})]}),i?T.jsxs(KvA,{value:n,onValueChange:kA=>s(kA),className:"rf-min-w-0 rf-w-full",children:[!E&&T.jsx(FDA,{className:"rf-flex rf-w-full rf-gap-2",children:Q.map(kA=>T.jsx(Gx,{value:kA,className:"rf-flex-1 rf-text-xs sm:rf-text-sm",children:zmA[kA].label},kA))}),T.jsxs("div",{className:"rf-min-w-0",style:RA?{display:"grid",gridTemplateColumns:"minmax(0, 1fr) minmax(360px, 0.95fr)",gap:"1.5rem",alignItems:"start"}:void 0,children:[T.jsxs("div",{className:"rf-min-w-0",children:[T.jsx(yMo,{query:r,placeholder:zmA[n].placeholder,isSearching:dA,onQueryChange:a,onSubmit:PA}),T.jsx("div",{className:"no-scrollbar rf-mt-4 rf-flex-1 rf-min-h-[200px] !rf-max-h-[40vh] !rf-overflow-y-auto rf-overflow-x-hidden rf-border rf-rounded-md rf-min-w-0",children:dA?T.jsxs("div",{className:"rf-p-8 rf-text-center rf-text-zinc-500",children:[T.jsx(pS,{className:"rf-h-8 rf-w-8 rf-animate-spin rf-mx-auto rf-mb-2"}),T.jsx("p",{children:"Searching..."})]}):LA.length>0?T.jsx(kMo,{results:LA,selected:c,onSelect:h,onShowDetails:n==="tscircuit.com"?HA:void 0}):T.jsx("div",{className:"rf-p-8 rf-text-center rf-text-zinc-500",children:bA?`Error: ${bA}`:WA?zmA[n].emptyMessage:"Enter a search term to find components"})})]}),RA?T.jsx("div",{className:"rf-mt-4",children:T.jsx(MMo,{circuitJson:FA,error:aA,isLoading:xA,height:325})}):null]})]}):null,CA?T.jsx("div",{className:"rf-text-sm rf-text-red-600 rf-mt-2",children:CA}):null,T.jsxs(JO,{className:"rf-flex rf-flex-col sm:rf-flex-row rf-gap-2",children:[T.jsx(si,{variant:"outline",onClick:A,className:"rf-order-2 sm:rf-order-1",children:"Cancel"}),T.jsx(si,{onClick:Qg,disabled:!c||sA,className:"rf-order-1 sm:rf-order-2",children:sA?T.jsx(pS,{className:"rf-h-4 rf-w-4 rf-animate-spin"}):"Import"})]})]}),T.jsx(SMo,{packageResult:gA,isOpen:IA,onOpenChange:uA,isLoading:j,details:q,previewTab:nA,onPreviewTabChange:kA=>DA(kA),isSubmitting:sA,onImport:()=>{gA&&GA(gA).then(kA=>{kA&&(QA(!1),A(),NA(),a(""))})}})]})},YMo=g=>{const A=g.match(/export const (\w+) =/);if(!A)throw new Error("Could not determine component name from TSX contents");return A[1]},HPI=g=>{const A=Uc(B=>B.pushEvent),I=Uc(B=>B.upsertFile),e=async({result:B,fullPackageName:C})=>{const i=B.package.unscoped_name??B.package.name;await KC.promise(A({event_type:"INSTALL_PACKAGE",full_package_name:C}),{loading:`Requesting install for "${i}"`,success:`Install requested for "${i}"`,error:E=>`Failed to request install: ${E instanceof Error?E.message:String(E)}`})},t=async({footprint:B})=>{await KC.promise(navigator.clipboard.writeText(B),{loading:`Copying "${B}"`,success:`Copied "${B}" to clipboard`,error:C=>`Failed to copy footprint: ${C instanceof Error?C.message:String(C)}`})},o=async({result:B,tsx:C})=>{const i=`imports/${YMo(C)}.tsx`;await KC.promise(I(i,C),{loading:`Importing ${B.component.partNumber}`,success:`Imported to "${i}"`,error:E=>`Failed to import component: ${E instanceof Error?E.message:String(E)}`})};return T.jsx(LMo,{...g,onTscircuitPackageSelected:e,onKicadStringSelected:t,onJlcpcbComponentTsxLoaded:o})};HPI.displayName="ImportComponentDialogForCli";const _Mo=async({circuitJson:g,projectName:A})=>{const{convertCircuitJsonToAltiumZip:I}=await Promise.resolve().then(()=>BTo),e=await I(g,A);return new Blob([new Uint8Array(e)],{type:"application/zip"})},bMo=async({circuitJson:g,projectName:A})=>{await KC.promise((async()=>{const I=await _Mo({circuitJson:g,projectName:A});Yk(I,{fileName:`${A}_altium_project.zip`})})(),{loading:"Generating Altium project...",success:"Altium project ZIP ready",error:I=>`Failed to generate Altium project: ${I instanceof Error?I.message:String(I)}`})};var TCg={exports:{}},vPI;function HMo(){return vPI||(vPI=1,(function(g,A){var I={env:{},version:""};(function(e){g.exports=e()})(function(){return(function e(t,o,B){function C(E,n){if(!o[E]){if(!t[E]){var s=typeof sU=="function"&&sU;if(!n&&s)return s(E,!0);if(Q)return Q(E,!0);var r=new Error("Cannot find module '"+E+"'");throw r.code="MODULE_NOT_FOUND",r}var a=o[E]={exports:{}};t[E][0].call(a.exports,function(c){var h=t[E][1][c];return C(h||c)},a,a.exports,e,t,o,B)}return o[E].exports}for(var Q=typeof sU=="function"&&sU,i=0;i<B.length;i++)C(B[i]);return C})({1:[function(e,t,o){var B=e("./utils"),C=e("./support"),Q="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";o.encode=function(i){for(var E,n,s,r,a,c,h,l=[],D=0,d=i.length,y=d,w=B.getTypeOf(i)!=="string";D<i.length;)y=d-D,s=w?(E=i[D++],n=D<d?i[D++]:0,D<d?i[D++]:0):(E=i.charCodeAt(D++),n=D<d?i.charCodeAt(D++):0,D<d?i.charCodeAt(D++):0),r=E>>2,a=(3&E)<<4|n>>4,c=1<y?(15&n)<<2|s>>6:64,h=2<y?63&s:64,l.push(Q.charAt(r)+Q.charAt(a)+Q.charAt(c)+Q.charAt(h));return l.join("")},o.decode=function(i){var E,n,s,r,a,c,h=0,l=0,D="data:";if(i.substr(0,D.length)===D)throw new Error("Invalid base64 input, it looks like a data url.");var d,y=3*(i=i.replace(/[^A-Za-z0-9+/=]/g,"")).length/4;if(i.charAt(i.length-1)===Q.charAt(64)&&y--,i.charAt(i.length-2)===Q.charAt(64)&&y--,y%1!=0)throw new Error("Invalid base64 input, bad content length.");for(d=C.uint8array?new Uint8Array(0|y):new Array(0|y);h<i.length;)E=Q.indexOf(i.charAt(h++))<<2|(r=Q.indexOf(i.charAt(h++)))>>4,n=(15&r)<<4|(a=Q.indexOf(i.charAt(h++)))>>2,s=(3&a)<<6|(c=Q.indexOf(i.charAt(h++))),d[l++]=E,a!==64&&(d[l++]=n),c!==64&&(d[l++]=s);return d}},{"./support":30,"./utils":32}],2:[function(e,t,o){var B=e("./external"),C=e("./stream/DataWorker"),Q=e("./stream/Crc32Probe"),i=e("./stream/DataLengthProbe");function E(n,s,r,a,c){this.compressedSize=n,this.uncompressedSize=s,this.crc32=r,this.compression=a,this.compressedContent=c}E.prototype={getContentWorker:function(){var n=new C(B.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new i("data_length")),s=this;return n.on("end",function(){if(this.streamInfo.data_length!==s.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),n},getCompressedWorker:function(){return new C(B.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},E.createWorkerFrom=function(n,s,r){return n.pipe(new Q).pipe(new i("uncompressedSize")).pipe(s.compressWorker(r)).pipe(new i("compressedSize")).withStreamInfo("compression",s)},t.exports=E},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(e,t,o){var B=e("./stream/GenericWorker");o.STORE={magic:"\0\0",compressWorker:function(){return new B("STORE compression")},uncompressWorker:function(){return new B("STORE decompression")}},o.DEFLATE=e("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(e,t,o){var B=e("./utils"),C=(function(){for(var Q,i=[],E=0;E<256;E++){Q=E;for(var n=0;n<8;n++)Q=1&Q?3988292384^Q>>>1:Q>>>1;i[E]=Q}return i})();t.exports=function(Q,i){return Q!==void 0&&Q.length?B.getTypeOf(Q)!=="string"?(function(E,n,s,r){var a=C,c=r+s;E^=-1;for(var h=r;h<c;h++)E=E>>>8^a[255&(E^n[h])];return-1^E})(0|i,Q,Q.length,0):(function(E,n,s,r){var a=C,c=r+s;E^=-1;for(var h=r;h<c;h++)E=E>>>8^a[255&(E^n.charCodeAt(h))];return-1^E})(0|i,Q,Q.length,0):0}},{"./utils":32}],5:[function(e,t,o){o.base64=!1,o.binary=!1,o.dir=!1,o.createFolders=!0,o.date=null,o.compression=null,o.compressionOptions=null,o.comment=null,o.unixPermissions=null,o.dosPermissions=null},{}],6:[function(e,t,o){var B=null;B=typeof Promise<"u"?Promise:e("lie"),t.exports={Promise:B}},{lie:37}],7:[function(e,t,o){var B=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Uint32Array<"u",C=e("pako"),Q=e("./utils"),i=e("./stream/GenericWorker"),E=B?"uint8array":"array";function n(s,r){i.call(this,"FlateWorker/"+s),this._pako=null,this._pakoAction=s,this._pakoOptions=r,this.meta={}}o.magic="\b\0",Q.inherits(n,i),n.prototype.processChunk=function(s){this.meta=s.meta,this._pako===null&&this._createPako(),this._pako.push(Q.transformTo(E,s.data),!1)},n.prototype.flush=function(){i.prototype.flush.call(this),this._pako===null&&this._createPako(),this._pako.push([],!0)},n.prototype.cleanUp=function(){i.prototype.cleanUp.call(this),this._pako=null},n.prototype._createPako=function(){this._pako=new C[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var s=this;this._pako.onData=function(r){s.push({data:r,meta:s.meta})}},o.compressWorker=function(s){return new n("Deflate",s)},o.uncompressWorker=function(){return new n("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(e,t,o){function B(a,c){var h,l="";for(h=0;h<c;h++)l+=String.fromCharCode(255&a),a>>>=8;return l}function C(a,c,h,l,D,d){var y,w,u=a.file,G=a.compression,m=d!==E.utf8encode,p=Q.transformTo("string",d(u.name)),k=Q.transformTo("string",E.utf8encode(u.name)),S=u.comment,R=Q.transformTo("string",d(S)),x=Q.transformTo("string",E.utf8encode(S)),N=k.length!==u.name.length,U=x.length!==S.length,K="",Y="",b="",q=u.dir,j=u.date,W={crc32:0,compressedSize:0,uncompressedSize:0};c&&!h||(W.crc32=a.crc32,W.compressedSize=a.compressedSize,W.uncompressedSize=a.uncompressedSize);var Z=0;c&&(Z|=8),m||!N&&!U||(Z|=2048);var gA=0,tA=0;q&&(gA|=16),D==="UNIX"?(tA=798,gA|=(function(QA,nA){var DA=QA;return QA||(DA=nA?16893:33204),(65535&DA)<<16})(u.unixPermissions,q)):(tA=20,gA|=(function(QA){return 63&(QA||0)})(u.dosPermissions)),y=j.getUTCHours(),y<<=6,y|=j.getUTCMinutes(),y<<=5,y|=j.getUTCSeconds()/2,w=j.getUTCFullYear()-1980,w<<=4,w|=j.getUTCMonth()+1,w<<=5,w|=j.getUTCDate(),N&&(Y=B(1,1)+B(n(p),4)+k,K+="up"+B(Y.length,2)+Y),U&&(b=B(1,1)+B(n(R),4)+x,K+="uc"+B(b.length,2)+b);var IA="";return IA+=`
5670
+ `,n=new Blob([E],{type:"text/plain"}),s=URL.createObjectURL(n),r=document.createElement("a");r.href=s,r.download=`${i}.test.ts`,r.click(),URL.revokeObjectURL(s)}catch(Q){alert(`Error generating test.ts for ${g.getSolverName()}: ${Q instanceof Error?Q.message:String(Q)}`)}e(!1)};return T.jsxs("div",{className:`relative ${A}`,ref:t,children:[T.jsx("button",{className:"px-2 py-1 rounded text-xs cursor-pointer",onClick:()=>e(!I),title:`Download options for ${g.getSolverName()}`,children:g.getSolverName()}),I&&T.jsxs("div",{className:"absolute top-full left-0 mt-1 bg-white border border-gray-300 rounded shadow-lg z-10 min-w-[150px]",children:[T.jsx("button",{className:"w-full text-left px-3 py-2 hover:bg-gray-100 text-xs",onClick:o,children:"Download JSON"}),T.jsx("button",{className:"w-full text-left px-3 py-2 hover:bg-gray-100 text-xs",onClick:B,children:"Download page.tsx"}),T.jsx("button",{className:"w-full text-left px-3 py-2 hover:bg-gray-100 text-xs",onClick:C,children:"Download test.ts"})]})]})},VJI=g=>g.activeSubSolver?[g,...VJI(g.activeSubSolver)]:[g],npo=({solver:g})=>{const A=VJI(g);return T.jsx("div",{className:"flex gap-1 items-center text-sm pt-1",children:A.map((I,e)=>T.jsxs("div",{className:"flex items-center",children:[e>0&&T.jsx("span",{className:"text-gray-400 mx-1",children:"→"}),T.jsx(Epo,{solver:I})]},I.getSolverName()))})},spo=({solver:g,triggerRender:A,animationSpeed:I=25,renderer:e,onRendererChange:t,onAnimationSpeedChange:o,onDownloadVisualization:B,onSolverStarted:C,onSolverCompleted:Q})=>{const[i,E]=z.useReducer(m=>!m,!1),n=z.useRef(void 0),s=z.useRef(null),r="solver-debugger-last-iteration",[a,c]=z.useState(null),h=z.useRef(null),l=z.useMemo(()=>[{label:"Slow",value:250,description:"250ms"},{label:"Normal",value:100,description:"100ms"},{label:"Fast",value:10,description:"10ms"},{label:"Fast (2x)",value:5,description:"5ms"},{label:"Fast (10x)",value:1,description:"1ms"},{label:"Fast 20x",value:.5,description:"2 steps / 1ms"},{label:"Fast 100x",value:.1,description:"10 steps / 1ms"}],[]),D=()=>{const m=Math.max(1,I),p=I<1?Math.round(1/I):1;n.current=setInterval(()=>{if(g.solved||g.failed){n.current&&(clearInterval(n.current),n.current=void 0),E(),A(),Q&&g.solved&&Q(g);return}for(let k=0;k<p&&!(g.solved||g.failed);k++)g.step();A()},m)},d=()=>{n.current&&(clearInterval(n.current),n.current=void 0)},y=()=>{!g.solved&&!g.failed&&(g.step(),A())},w=()=>{!g.solved&&!g.failed&&(C&&C(g),g.solve(),A(),Q&&Q(g))},u=()=>{i?(d(),E()):(E(),D())},G=()=>{if(g.solved||g.failed||i)return;s.current===null&&typeof window<"u"&&(s.current=window.localStorage.getItem(r));const m=window.prompt("Step until which iteration?",s.current??`${g.iterations}`);if(m===null)return;s.current=m,typeof window<"u"&&window.localStorage.setItem(r,m);const p=Number(m);if(!Number.isFinite(p)){window.alert("Please enter a valid number for the iteration");return}for(;g.iterations<p&&!g.solved&&!g.failed;)g.step();A(),g.solved&&Q&&Q(g)};return z.useEffect(()=>()=>{d()},[]),z.useEffect(()=>{(g.solved||g.failed)&&i&&(d(),E())},[g.solved,g.failed,i]),z.useEffect(()=>{i&&(d(),D())},[I,i]),z.useEffect(()=>{if(typeof document>"u")return;const m=p=>{h.current&&!h.current.contains(p.target)&&c(null)};return document.addEventListener("mousedown",m),()=>{document.removeEventListener("mousedown",m)}},[]),T.jsxs("div",{className:"space-y-2 p-2 border-b",children:[T.jsx("div",{className:"flex items-center",children:T.jsxs("div",{className:"flex items-center gap-2",ref:h,children:[T.jsxs("div",{className:"flex h-9 items-center space-x-1 rounded-md border border-slate-200 bg-white p-1 shadow-sm",children:[T.jsxs("div",{className:"relative",children:[T.jsx("button",{type:"button",onClick:()=>c(a==="renderer"?null:"renderer"),className:"flex select-none items-center rounded-sm px-3 py-1 text-sm font-medium outline-none focus:bg-slate-100 data-[state=open]:bg-slate-100","data-state":a==="renderer"?"open":"closed",children:"Renderer"}),a==="renderer"&&T.jsx("div",{className:"absolute left-0 z-50 mt-1 min-w-[10rem] rounded-md border border-slate-200 bg-white p-1 text-slate-950 shadow-md",children:["vector","canvas"].map(m=>T.jsxs("button",{type:"button",onClick:()=>{t(m),c(null)},className:"flex w-full items-center rounded-sm px-2 py-1.5 text-sm hover:bg-slate-100",children:[m==="vector"?"Vector":"Canvas",e===m&&T.jsx("span",{className:"ml-auto text-xs text-slate-500",children:"✓"})]},m))})]}),T.jsxs("div",{className:"relative",children:[T.jsx("button",{type:"button",onClick:()=>c(a==="debug"?null:"debug"),className:"flex select-none items-center rounded-sm px-3 py-1 text-sm font-medium outline-none focus:bg-slate-100 data-[state=open]:bg-slate-100","data-state":a==="debug"?"open":"closed",children:"Debug"}),a==="debug"&&T.jsx("div",{className:"absolute left-0 z-50 mt-1 min-w-[12rem] rounded-md border border-slate-200 bg-white p-1 text-slate-950 shadow-md",children:T.jsx("button",{type:"button",onClick:()=>{B(),c(null)},className:"flex w-full items-center rounded-sm px-2 py-1.5 text-sm hover:bg-slate-100",children:"Download Visualization"})})]}),T.jsxs("div",{className:"relative",children:[T.jsx("button",{type:"button",onClick:()=>c(a==="animation"?null:"animation"),className:"flex select-none items-center rounded-sm px-3 py-1 text-sm font-medium outline-none focus:bg-slate-100 data-[state=open]:bg-slate-100","data-state":a==="animation"?"open":"closed",children:"Animation"}),a==="animation"&&T.jsx("div",{className:"absolute left-0 z-50 mt-1 min-w-[12rem] rounded-md border border-slate-200 bg-white p-1 text-slate-950 shadow-md",children:l.map(m=>T.jsxs("button",{type:"button",onClick:()=>{o(m.value),c(null)},className:"flex w-full items-center rounded-sm px-2 py-1.5 text-sm hover:bg-slate-100",children:[m.label,T.jsx("span",{className:"ml-auto text-xs text-slate-500",children:m.description}),I===m.value&&T.jsx("span",{className:"ml-2 text-xs text-slate-500",children:"✓"})]},m.value))})]})]}),T.jsx(npo,{solver:g})]})}),T.jsxs("div",{className:"flex gap-2 items-center flex-wrap",children:[T.jsx("button",{onClick:y,disabled:g.solved||g.failed||i,className:"bg-blue-500 hover:bg-blue-600 disabled:bg-gray-300 text-white px-3 py-1 rounded text-sm",children:"Step"}),T.jsx("button",{onClick:w,disabled:g.solved||g.failed||i,className:"bg-green-500 hover:bg-green-600 disabled:bg-gray-300 text-white px-3 py-1 rounded text-sm",children:"Solve"}),T.jsx("button",{onClick:u,disabled:g.solved||g.failed,className:`px-3 py-1 rounded text-white text-sm ${i?"bg-red-500 hover:bg-red-600":"bg-yellow-500 hover:bg-yellow-600"} disabled:bg-gray-300`,children:i?"Stop":"Animate"}),T.jsx("button",{onClick:G,disabled:g.solved||g.failed||i,className:"bg-orange-500 hover:bg-orange-600 disabled:bg-gray-300 text-white px-3 py-1 rounded text-sm",children:"Step Until Iteration"}),T.jsxs("div",{className:"text-sm text-gray-600",children:["Iterations: ",g.iterations]}),g.timeToSolve!==void 0&&T.jsxs("div",{className:"text-sm text-gray-600",children:["Time: ",(g.timeToSolve/1e3).toFixed(3),"s"]}),g.solved&&T.jsx("div",{className:"px-2 py-1 bg-green-100 text-green-800 rounded text-sm",children:"Solved"}),g.failed&&T.jsx("div",{className:"px-2 py-1 bg-red-100 text-red-800 rounded text-sm",children:"Failed"})]}),g.error&&T.jsxs("div",{className:"text-red-600 text-sm",children:["Error: ",g.error]})]})},apo=g=>g!==null&&"pipelineDef"in g&&Array.isArray(g.pipelineDef),rpo=(g,A,I)=>{const e=g.currentPipelineStageIndex;return A<e?"Completed":A===e&&g.activeSubSolver?g.activeSubSolver.failed?"Failed":"In Progress":"Not Started"},cpo=(g,A)=>{const e=g.pipelineDef[A].solverName,t=rpo(g,A),o=g[e],B=g.firstIterationOfStage?.[e]??(A===g.currentPipelineStageIndex?g.iterations:null),C=g.iterations;let Q=0;if(t==="Completed"){const s=g.pipelineDef[A+1],r=s?g.firstIterationOfStage?.[s.solverName]:void 0;r!==void 0&&B!==null?Q=r-B:B!==null&&(Q=C-B)}else t==="In Progress"&&B!==null&&(Q=C-B);const i=g.timeSpentOnStage?.[e]??0;let E=0;t==="Completed"?E=1:t==="In Progress"&&o&&(E=o.progress??0);const n=o?.stats??null;return{index:A,name:e,status:t,firstIteration:B,iterations:Q,progress:E,timeSpent:i,stats:n&&Object.keys(n).length>0?n:null,solverInstance:o??null}},hpo=({status:g})=>{const A={"Not Started":"text-blue-600","In Progress":"text-yellow-600",Completed:"text-green-600",Failed:"text-red-600"};return T.jsx("span",{className:`font-medium ${A[g]}`,children:g})},lpo=({progress:g})=>{if(g===0)return null;const A=Math.round(g*100);return T.jsxs("div",{className:"flex items-center gap-2",children:[T.jsx("div",{className:"w-20 h-2 bg-gray-200 rounded overflow-hidden",children:T.jsx("div",{className:"h-full bg-blue-500 transition-all duration-200",style:{width:`${A}%`}})}),T.jsxs("span",{className:"text-xs text-gray-500",children:[A,"%"]})]})},jJI=g=>{if(typeof g=="string")return g;if(typeof g=="number"||typeof g=="boolean"||typeof g=="bigint"||g==null)return String(g);if(typeof g=="object")try{return JSON.stringify(g)}catch{return String(g)}return String(g)},Dpo=g=>Object.entries(g).map(([A,I])=>`${A}: ${jJI(I)}`).join(", "),dpo=({stats:g})=>{if(!g||Object.keys(g).length===0)return T.jsx("span",{children:"-"});const A=Object.entries(g),I=Dpo(g);return T.jsxs("details",{className:"cursor-pointer",children:[T.jsx("summary",{className:"whitespace-nowrap overflow-hidden text-ellipsis max-w-[200px]",children:I}),T.jsx("div",{className:"mt-1 text-xs",children:A.map(([e,t])=>T.jsxs("div",{children:[e,": ",jJI(t)]},e))})]})},rCg=g=>{if(g===null||typeof g!="object")return g;if(Array.isArray(g))return g.map(rCg);const A={};for(const[I,e]of Object.entries(g))I.startsWith("_")||(A[I]=rCg(e));return A},ypo=(g,A)=>{try{if(typeof g.getConstructorParams!="function"){alert(`getConstructorParams() is not implemented for ${A}`);return}const I=rCg(g.getConstructorParams()),e=new Blob([JSON.stringify(I,null,2)],{type:"application/json"}),t=URL.createObjectURL(e),o=document.createElement("a");o.href=t,o.download=`${A}_input.json`,o.click(),URL.revokeObjectURL(t)}catch(I){alert(`Error downloading input for ${A}: ${I instanceof Error?I.message:String(I)}`)}},wpo=({expanded:g})=>T.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",className:`w-4 h-4 transition-transform duration-200 ${g?"rotate-90":""}`,children:T.jsx("path",{fillRule:"evenodd",d:"M4.5 5.653c0-1.426 1.529-2.33 2.779-1.643l11.54 6.348c1.295.712 1.295 2.573 0 3.285L7.28 19.991c-1.25.687-2.779-.217-2.779-1.643V5.653z",clipRule:"evenodd"})}),zJI=g=>{let A=g;for(;A.activeSubSolver;)A=A.activeSubSolver;return A},XJI=({solver:g,onStepUntilPhase:A,onDownloadInput:I,isNested:e=!1,indentLevel:t=0,triggerRender:o})=>{const[B,C]=z.useState(new Set),Q=g.pipelineDef.map((h,l)=>cpo(g,l)),i=h=>{C(l=>{const D=new Set(l);return D.has(h)?D.delete(h):D.add(h),D})},E=h=>{A?.(h)},n=h=>{h.solverInstance&&(I?I(h.solverInstance,h.name):ypo(h.solverInstance,h.name))},s=h=>`${(h/1e3).toFixed(2)}s`,r=()=>{if(!g.solved&&!g.failed){const h=g.activeSubSolver;for(;!g.solved&&!g.failed&&(g.step(),!(g.activeSubSolver&&g.activeSubSolver!==h)););o?.()}},a=()=>{if(!g.solved&&!g.failed){const h=zJI(g);for(;!g.solved&&!g.failed&&(g.step(),zJI(g)===h););o?.()}},c=t*24;return T.jsxs("div",{className:e?"":"border-t border-gray-200",children:[!e&&T.jsxs("div",{className:"px-4 py-2 bg-gray-50 border-b border-gray-200 flex items-center justify-between",children:[T.jsx("h3",{className:"text-sm font-semibold text-gray-700",children:"Pipeline Stages"}),T.jsxs("div",{className:"flex gap-2",children:[T.jsx("button",{onClick:a,disabled:g.solved||g.failed,className:"bg-indigo-500 hover:bg-indigo-600 disabled:bg-gray-300 disabled:cursor-not-allowed cursor-pointer text-white px-3 py-1 rounded text-sm",children:"Next Solver"}),T.jsx("button",{onClick:r,disabled:g.solved||g.failed,className:"bg-purple-500 hover:bg-purple-600 disabled:bg-gray-300 disabled:cursor-not-allowed cursor-pointer text-white px-3 py-1 rounded text-sm",children:"Next Stage"})]})]}),T.jsx("div",{className:"overflow-x-auto",children:T.jsxs("table",{className:"w-full text-sm",children:[!e&&T.jsx("thead",{children:T.jsxs("tr",{className:"bg-gray-50 border-b border-gray-200",children:[T.jsx("th",{className:"px-4 py-2 text-left font-semibold text-gray-700",children:"Stage"}),T.jsx("th",{className:"px-4 py-2 text-left font-semibold text-gray-700",children:"Status"}),T.jsxs("th",{className:"px-4 py-2 text-center font-semibold text-gray-700",children:["i",T.jsx("sub",{children:"0"})]}),T.jsx("th",{className:"px-4 py-2 text-left font-semibold text-gray-700",children:"Iterations"}),T.jsx("th",{className:"px-4 py-2 text-left font-semibold text-gray-700",children:"Progress"}),T.jsx("th",{className:"px-4 py-2 text-left font-semibold text-gray-700",children:"Time"}),T.jsx("th",{className:"px-4 py-2 text-left font-semibold text-gray-700",children:"Stats"}),T.jsx("th",{className:"px-4 py-2 text-left font-semibold text-gray-700",children:"Input"})]})}),T.jsx("tbody",{children:Q.map(h=>{const l=apo(h.solverInstance),D=B.has(h.name);return T.jsxs(rC.Fragment,{children:[T.jsxs("tr",{className:`border-b border-gray-100 ${h.status==="In Progress"?"bg-yellow-50":""}`,children:[T.jsx("td",{className:"px-4 py-2",children:T.jsxs("div",{className:"flex items-center gap-2",style:{paddingLeft:c},children:[l?T.jsx("button",{onClick:()=>i(h.name),className:"text-gray-500 hover:text-gray-700",title:D?"Collapse":"Expand",children:T.jsx(wpo,{expanded:D})}):T.jsx("span",{className:"w-4"}),T.jsx("span",{className:"text-gray-400 w-6",children:String(h.index+1).padStart(2,"0")}),T.jsx("button",{onClick:()=>E(h.name),disabled:h.status==="Completed"||g.solved||g.failed,className:"text-blue-500 hover:text-blue-700 disabled:text-gray-300 disabled:cursor-not-allowed",title:`Step until ${h.name} completes`,children:T.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",className:"w-4 h-4",children:T.jsx("path",{fillRule:"evenodd",d:"M4.5 5.653c0-1.426 1.529-2.33 2.779-1.643l11.54 6.348c1.295.712 1.295 2.573 0 3.285L7.28 19.991c-1.25.687-2.779-.217-2.779-1.643V5.653z",clipRule:"evenodd"})})}),T.jsx("span",{className:"font-medium text-gray-900",children:h.name})]})}),T.jsx("td",{className:"px-4 py-2",children:T.jsx(hpo,{status:h.status})}),T.jsx("td",{className:"px-4 py-2 text-center text-gray-600",children:h.firstIteration!==null?h.firstIteration:""}),T.jsx("td",{className:"px-4 py-2 text-gray-600",children:h.iterations}),T.jsx("td",{className:"px-4 py-2",children:T.jsx(lpo,{progress:h.progress})}),T.jsx("td",{className:"px-4 py-2 text-gray-600",children:s(h.timeSpent)}),T.jsx("td",{className:"px-4 py-2 text-gray-500",children:T.jsx(dpo,{stats:h.stats})}),T.jsx("td",{className:"px-4 py-2",children:h.solverInstance?T.jsxs("button",{onClick:()=>n(h),className:"flex items-center gap-1 text-blue-500 hover:text-blue-700",title:`Download input for ${h.name}`,children:[T.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",className:"w-4 h-4",children:T.jsx("path",{fillRule:"evenodd",d:"M12 2.25a.75.75 0 01.75.75v11.69l3.22-3.22a.75.75 0 111.06 1.06l-4.5 4.5a.75.75 0 01-1.06 0l-4.5-4.5a.75.75 0 111.06-1.06l3.22 3.22V3a.75.75 0 01.75-.75zm-9 13.5a.75.75 0 01.75.75v2.25a1.5 1.5 0 001.5 1.5h13.5a1.5 1.5 0 001.5-1.5V16.5a.75.75 0 011.5 0v2.25a3 3 0 01-3 3H5.25a3 3 0 01-3-3V16.5a.75.75 0 01.75-.75z",clipRule:"evenodd"})}),T.jsx("span",{children:"Input"})]}):null})]}),l&&D&&T.jsx("tr",{children:T.jsx("td",{colSpan:8,className:"p-0",children:T.jsx(XJI,{solver:h.solverInstance,onStepUntilPhase:A,onDownloadInput:I,isNested:!0,indentLevel:t+1,triggerRender:o})})})]},h.name)})})]})})]})};function upo({graphics:g}){const A=g.points??[],I=g.lines??[],e=g.rects??[],t=g.circles??[],o=g.texts??[];let B=Number.POSITIVE_INFINITY,C=Number.POSITIVE_INFINITY,Q=Number.NEGATIVE_INFINITY,i=Number.NEGATIVE_INFINITY;const E=(h,l)=>{typeof h=="number"&&(h<B&&(B=h),h>Q&&(Q=h)),typeof l=="number"&&(l<C&&(C=l),l>i&&(i=l))};for(const h of A)E(h.x,h.y);for(const h of I){const l=h.points??[];for(const D of l)E(D.x,D.y)}for(const h of e){const l=h.x??0,D=h.y??0,d=h.width??0,y=h.height??0;E(l,D),E(l+d,D+y)}for(const h of t){const l=h.x??0,D=h.y??0,d=h.radius??1;E(l-d,D-d),E(l+d,D+d)}for(const h of o)E(h.x,h.y);(!isFinite(B)||!isFinite(C)||!isFinite(Q)||!isFinite(i))&&(B=-20,C=-20,Q=20,i=20);const n=10,s=B-n,r=C-n,a=Math.max(1,Q-B+2*n),c=Math.max(1,i-C+2*n);return T.jsxs("svg",{className:"w-full h-[400px] bg-white",viewBox:`${s} ${r} ${a} ${c}`,role:"img","aria-label":"Graphics fallback",children:[e.map((h,l)=>T.jsx("rect",{x:h.x??0,y:h.y??0,width:h.width??0,height:h.height??0,fill:"none",stroke:h.strokeColor??"black",strokeWidth:h.strokeWidth??1},`rect-${l}`)),I.map((h,l)=>T.jsx("polyline",{fill:"none",stroke:h.strokeColor??"black",strokeWidth:h.strokeWidth??1,points:(h.points??[]).map(D=>`${D.x??0},${D.y??0}`).join(" ")},`line-${l}`)),t.map((h,l)=>T.jsx("circle",{cx:h.x??0,cy:h.y??0,r:h.radius??1.5,fill:h.fillColor??"none",stroke:h.strokeColor??"black",strokeWidth:h.strokeWidth??1},`circle-${l}`)),A.map((h,l)=>T.jsx("circle",{cx:h.x??0,cy:h.y??0,r:h.radius??1.5,fill:h.color??"black"},`point-${l}`)),o.map((h,l)=>T.jsx("text",{x:h.x??0,y:h.y??0,fontSize:h.fontSize??10,fill:h.color??"black",children:h.text??""},`text-${l}`))]})}var Gpo=class extends rC.Component{constructor(g){super(g),this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(g){console.error("InteractiveGraphics render error:",g)}render(){return this.state.hasError?this.props.fallback:this.props.children}},mpo=({solver:g,createSolver:A,animationSpeed:I=25,onSolverStarted:e,onSolverCompleted:t})=>{const[o,B]=z.useReducer(D=>D+1,0),[C]=z.useState(()=>{if(A)return A();if(!g)throw new Error("GenericSolverDebugger requires solver or createSolver");return g}),[Q,i]=z.useState(()=>typeof window>"u"?"vector":window.localStorage.getItem("solver-utils-renderer")==="canvas"?"canvas":"vector"),[E,n]=z.useState(I),s=z.useMemo(()=>{try{return C.visualize()||{points:[],lines:[],rects:[],circles:[]}}catch(D){return console.error("Visualization error:",D),{points:[],lines:[],rects:[],circles:[]}}},[C,o]),r=z.useMemo(()=>(s.rects?.length||0)===0&&(s.lines?.length||0)===0&&(s.points?.length||0)===0&&(s.circles?.length||0)===0,[s]);z.useEffect(()=>{if(!(typeof document>"u")&&!document.querySelector('script[src="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4"]')){const D=document.createElement("script");D.src="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4",document.head.appendChild(D)}},[]),z.useEffect(()=>{n(I)},[I]);const a=C.pipelineDef!==void 0,c=D=>{const d=C;if(!C.solved&&!C.failed){for(;!C.solved&&!C.failed&&d.currentPipelineStageIndex<=d.pipelineDef.findIndex(y=>y.solverName===D);)C.step();B()}},h=()=>{const D=JSON.stringify(s,null,2),d=new Blob([D],{type:"application/json"}),y=URL.createObjectURL(d),w=document.createElement("a");w.download="visualization.json",w.href=y,document.body.appendChild(w),w.click(),document.body.removeChild(w),URL.revokeObjectURL(y)},l=D=>{i(D),typeof window<"u"&&window.localStorage.setItem("solver-utils-renderer",D)};return T.jsxs("div",{children:[T.jsx(spo,{solver:C,triggerRender:B,animationSpeed:E,renderer:Q,onRendererChange:l,onAnimationSpeedChange:n,onDownloadVisualization:h,onSolverStarted:e,onSolverCompleted:t}),r?T.jsx("div",{className:"p-4 text-gray-500",children:"No Graphics Yet"}):T.jsx(Gpo,{fallback:T.jsx(upo,{graphics:s}),children:Q==="canvas"?T.jsx(ipo,{graphics:s}):T.jsx(Bpo,{graphics:s})}),a&&T.jsx(XJI,{solver:C,onStepUntilPhase:c,triggerRender:B})]})};const ppo=()=>{z.useEffect(()=>{const g="tailwind-cdn-script";if(document.getElementById(g)||window.tailwind)return;const A=document.createElement("div");A.className="hidden",document.body.appendChild(A);const I=window.getComputedStyle(A).display==="none";if(document.body.removeChild(A),I)return;const e=document.createElement("script");e.id=g,e.src="https://cdn.tailwindcss.com",document.head.appendChild(e)},[])},kpo=1e3,Yk=(g,A)=>{const{fileName:I,mimeType:e="text/plain"}=A,t=g instanceof Blob?g:new Blob([g],{type:e}),o=URL.createObjectURL(t),B=document.createElement("a");B.href=o,B.download=I,B.target="_blank",B.rel="noopener noreferrer",B.style.display="none",document.body.appendChild(B),B.click(),document.body.removeChild(B),setTimeout(()=>{URL.revokeObjectURL(o)},kpo)},cCg=g=>{let A=g.trim().replace(/[\\/:*?"<>|]/g,"_").replace(/[\x00-\x1f]/g,"").replace(/^\.+/,"").replace(/\.+$/,"").replace(/\s+/g," ").replace(/_+/g,"_");return/^(con|prn|aux|nul|com[0-9]|lpt[0-9])$/i.test(A)&&(A=`_${A}`),A=A.slice(0,200),A||"untitled"},Mpo=g=>{const A=g.solverConstructorArgs??[g.solverParams];if(g.solverName!=="AutoroutingPipelineSolver7_MultiGraph"||A.length!==1)return A;const[{input:I,options:e}]=A;return[I,e]},DF="https://github.com/tscircuit/tscircuit-autorouter/issues/new",$JI="https://github.com/tscircuit/copper-pour-solver/issues/new",API="https://github.com/tscircuit/calculate-packing/issues/new",Spo="https://github.com/tscircuit/matchpack/issues/new",gPI="https://github.com/tscircuit/schematic-trace-solver/issues/new?template=json-bug-report.yml",fpo={PackSolver2:API,LayoutPipelineSolver:Spo,AutoroutingPipelineSolver:DF,AssignableAutoroutingPipeline2:DF,AssignableAutoroutingPipeline3:DF,AutoroutingPipeline1_OriginalUnravel:DF,AutoroutingPipelineSolver3_HgPortPointPathing:DF,AutoroutingPipelineSolver4:DF,AutoroutingPipelineSolver5:DF,AutoroutingPipelineSolver7_MultiGraph:DF,AutoroutingPipelineSolver8:DF,CopperPourPipelineSolver:$JI,SchematicTracePipelineSolver:gPI},Rpo=g=>g.toLowerCase().includes("pack")?b1I:g.toLowerCase().includes("rout")?v1I:Sro,IPI=g=>{const A=fpo[g];if(A)return A;const I=g.toLowerCase();return I.includes("autorout")?DF:I.includes("schematic")&&I.includes("trace")?gPI:I.includes("copperpour")?$JI:I.includes("pack")?API:null},Npo=g=>`${cCg(`${g.componentName}-${g.solverName}`)}-solver-input.json`,ePI=g=>{Yk(JSON.stringify(g.solverParams,null,2),{fileName:Npo(g),mimeType:"application/json"})},xpo=({solverEvent:g})=>{const A=IPI(g.solverName);return T.jsxs("div",{className:"rf-flex rf-items-center rf-justify-end rf-gap-2 rf-border-b rf-border-gray-200 rf-bg-gray-50 rf-px-4 rf-py-2",children:[T.jsxs(si,{type:"button",variant:"outline",size:"sm",onClick:()=>ePI(g),children:[T.jsx(GtA,{className:"rf-w-4 rf-h-4"}),"Download"]}),A?T.jsx(si,{asChild:!0,variant:"outline",size:"sm",children:T.jsxs("a",{href:A,target:"_blank",rel:"noopener noreferrer",children:[T.jsx(SGA,{className:"rf-w-4 rf-h-4"}),"Report"]})}):T.jsxs(si,{type:"button",variant:"outline",size:"sm",disabled:!0,title:"No report link configured for this solver",children:[T.jsx(SGA,{className:"rf-w-4 rf-h-4"}),"Report"]})]})},Fpo=({solverEvent:g})=>{const A=IPI(g.solverName);return A?T.jsx(si,{asChild:!0,variant:"ghost",size:"icon",className:"rf-h-8 rf-w-8",children:T.jsx("a",{href:A,target:"_blank",rel:"noopener noreferrer",title:"Report solver bug","aria-label":"Report solver bug",children:T.jsx(SGA,{className:"rf-w-4 rf-h-4"})})}):T.jsx(si,{type:"button",variant:"ghost",size:"icon",className:"rf-h-8 rf-w-8",disabled:!0,title:"No report link configured for this solver","aria-label":"Report solver bug",children:T.jsx(SGA,{className:"rf-w-4 rf-h-4"})})},Upo=({solverEvents:g=[]})=>{const[A,I]=z.useState(null);ppo();const e=z.useMemo(()=>{const C=new Map;for(const Q of g){const i=`${Q.componentName}-${Q.solverName}`;C.set(i,Q)}return C},[g]),t=z.useMemo(()=>Array.from(e.keys()),[e]),o=A?e.get(A):null,B=z.useMemo(()=>{if(!o)return{instance:null,error:null,classFound:!1};const C=N9A[o.solverName];if(!C)return{instance:null,error:`Solver class "${o.solverName}" not found in SOLVERS registry. Available: ${Object.keys(N9A).join(", ")}`,classFound:!1};try{return{instance:new C(...Mpo(o)),error:null,classFound:!0}}catch(Q){const i=Q instanceof Error?Q.message:String(Q);return console.error("Failed to reconstruct solver:",Q),{instance:null,error:`Failed to instantiate solver: ${i}`,classFound:!0}}},[o]);return g.length===0?T.jsx("div",{className:"rf-p-4",children:T.jsx("div",{className:"rf-bg-gray-50 rf-rounded-md rf-border rf-border-gray-200",children:T.jsxs("div",{className:"rf-p-4",children:[T.jsx("h3",{className:"rf-text-lg rf-font-semibold rf-text-gray-800 rf-mb-3",children:"No Solvers Detected"}),T.jsx("p",{className:"rf-text-sm rf-text-gray-600",children:"Solvers will appear here when the circuit runs. Solvers are used for tasks like component packing and autorouting."})]})})}):T.jsxs("div",{className:"rf-flex rf-h-full rf-overflow-hidden",children:[T.jsxs("div",{className:"rf-w-64 rf-border-r rf-border-gray-200 rf-overflow-y-auto rf-flex-shrink-0",children:[T.jsxs("div",{className:"rf-text-xs rf-font-semibold rf-text-gray-500 rf-px-3 rf-py-2 rf-bg-gray-50 rf-border-b rf-border-gray-200",children:[t.length," ",t.length===1?"Solver":"Solvers"]}),t.map(C=>{const Q=e.get(C),i=A===C;return T.jsx("div",{className:`rf-px-3 rf-py-2 rf-cursor-pointer rf-border-b rf-border-gray-100 ${i?"rf-bg-blue-50 rf-border-l-2 rf-border-l-blue-500":"hover:rf-bg-gray-50"}`,onClick:()=>I(C),children:(()=>{const E=Rpo(Q.solverName);return T.jsxs("div",{className:"rf-flex rf-items-center rf-gap-2",children:[T.jsx(E,{className:"rf-w-4 rf-h-4 rf-text-blue-500 rf-flex-shrink-0"}),T.jsxs("div",{className:"rf-flex-1 rf-min-w-0",children:[T.jsx("div",{className:"rf-text-sm rf-font-medium rf-text-gray-800 rf-truncate",children:Q.componentName}),T.jsx("div",{className:"rf-text-xs rf-text-gray-500 rf-truncate",children:Q.solverName})]})]})})()},C)})]}),T.jsx("div",{className:"rf-flex-1 rf-overflow-hidden",children:o?B.instance?T.jsxs("div",{className:"rf-flex rf-h-full rf-flex-col rf-overflow-y-auto",children:[T.jsx(xpo,{solverEvent:o}),T.jsx("div",{className:"rf-min-h-0 rf-flex-1",children:T.jsx(mS,{fallback:T.jsx("div",{className:"rf-p-4",children:T.jsxs("div",{className:"rf-bg-red-50 rf-rounded-md rf-border rf-border-red-200 rf-p-4",children:[T.jsx("h3",{className:"rf-text-lg rf-font-semibold rf-text-red-800 rf-mb-2",children:"Error Loading Solver Debugger"}),T.jsxs("p",{className:"rf-text-sm rf-text-red-600",children:["Failed to render the solver debugger for"," ",o.solverName]})]})}),children:T.jsx(mpo,{solver:B.instance})})})]}):T.jsxs("div",{className:"rf-p-4",children:[T.jsxs("div",{className:"rf-mb-4",children:[T.jsx("h3",{className:"rf-text-lg rf-font-semibold rf-text-gray-800",children:o.solverName}),T.jsxs("p",{className:"rf-text-sm rf-text-gray-500",children:["Component: ",o.componentName]})]}),B.error&&T.jsx("div",{className:`rf-rounded-md rf-border rf-p-4 rf-mb-4 ${B.classFound?"rf-bg-red-50 rf-border-red-200":"rf-bg-yellow-50 rf-border-yellow-200"}`,children:T.jsx("p",{className:`rf-text-sm ${B.classFound?"rf-text-red-700":"rf-text-yellow-700"}`,children:B.error})}),T.jsxs("div",{className:"rf-border rf-border-gray-200 rf-rounded-md rf-overflow-hidden",children:[T.jsxs("div",{className:"rf-px-3 rf-py-2 rf-bg-gray-50 rf-flex rf-items-center rf-justify-between rf-gap-2",children:[T.jsx("span",{className:"rf-text-sm rf-font-medium rf-text-gray-700",children:"Solver Parameters"}),T.jsxs("div",{className:"rf-flex rf-items-center rf-gap-1",children:[T.jsx(Fpo,{solverEvent:o}),T.jsx(si,{type:"button",variant:"ghost",size:"icon",className:"rf-h-8 rf-w-8","aria-label":"Download solver input JSON",title:"Download solver input JSON",onClick:()=>ePI(o),children:T.jsx(GtA,{className:"rf-w-4 rf-h-4"})})]})]}),T.jsx("div",{className:"rf-p-3 rf-bg-white rf-border-t rf-border-gray-200",children:T.jsx("pre",{className:"rf-text-xs rf-font-mono rf-text-gray-600 rf-whitespace-pre-wrap rf-overflow-x-auto",children:JSON.stringify(o.solverParams,null,2)})})]})]}):T.jsx("div",{className:"rf-flex rf-items-center rf-justify-center rf-h-full",children:T.jsx("p",{className:"rf-text-sm rf-text-gray-500",children:"Select a solver from the list to view details"})})})]})},Jpo=["subcircuit_id","componentDisplayName","phaseName","routingPhaseIndex","phaseOrdinal","phaseCount","phaseStageIndex","phaseStageCount","connectionCount","obstacleCount","previousTraceCount","isReroutePhase","autorouterName","autorouterVersion","solverName","effort","cacheStatus"],Ppo=["phaseOrdinal","routingPhaseIndex","phaseName","phaseStageIndex"];function Kpo(g,A){let I=-1,e=-1;for(let t=g.length-1;t>=0;t--){const o=g[t];if(o.status!=="running"||o.subcircuit_id!==A.subcircuit_id||o.componentDisplayName!==A.componentDisplayName)continue;let B=0,C=!1;for(const Q of Ppo)if(!(o[Q]===void 0||A[Q]===void 0)){if(o[Q]!==A[Q]){C=!0;break}B++}!C&&B>e&&(I=t,e=B)}return I}function Lpo(g,A){const I=Object.fromEntries(Jpo.filter(B=>A[B]!==void 0).map(B=>[B,A[B]])),e=A.simpleRouteJson?structuredClone(A.simpleRouteJson):void 0,t=A.type==="autorouting:start"?-1:Kpo(g,A),o={...t===-1?{id:`autorouting_phase_${g.length+1}`}:g[t],...I,status:A.type==="autorouting:start"?"running":A.type==="autorouting:end"?"complete":"error",...A.type==="autorouting:start"?{startSimpleRouteJson:e}:A.type==="autorouting:end"?{endSimpleRouteJson:e}:{errorSimpleRouteJson:e,error:A.error?{...A.error}:void 0}};return t===-1?[...g,o]:g.map((B,C)=>C===t?o:B)}const Ypo=new Map([["custom","Custom"],["fanout","Fanout"],["single_layer_fanout","Single layer fanout"],["tscircuit_simplify","Simplify"]]),_po=new Set(["tscircuit","default","auto","auto_local"]);function bpo(g){if(g==="FanoutSolver")return"Fanout";if(g==="AutoroutingPipelineSolver11_Simplification")return"Simplify";const A=g.match(/^AutoroutingPipeline(?:Solver)?(\d+)(?:_|$)/);if(A)return`Pipeline${A[1]}`;const I=g.match(/^AssignableAutoroutingPipeline(\d+)$/);return I?`Assignable${I[1]}`:g}function Hpo(g){const A=g.autorouterName?.trim(),I=A?.replace(/-/g,"_"),e=I&&Ypo.get(I);if(e)return e;if(I&&!_po.has(I))return A;const t=g.solverName?.trim();if(t)return bpo(t);const o=g.autorouterVersion?.trim();if(o){const B=o.match(/^beta[_-]pipeline(\d+)$/);return B?`Pipeline${B[1]}`:o==="latest"?"default":o}return A?"default":"Unknown"}const hCg="#fbbf24";function vpo(g){const A=g.endSimpleRouteJson?.traces??[],I=new Set(A.flatMap(t=>[t.pcb_trace_id,t.__replaces_pcb_trace_id].filter(o=>o!==void 0)));return[...(g.startSimpleRouteJson?.traces??[]).filter(t=>!I.has(t.pcb_trace_id)),...A]}function tPI(g){const A=new Map((g.startSimpleRouteJson?.traces??[]).map(I=>[I.pcb_trace_id,I]));return(g.endSimpleRouteJson?.traces??[]).filter(I=>{const e=A.get(I.pcb_trace_id);return!e||!!I.__replaces_pcb_trace_id&&I.__replaces_pcb_trace_id!==e.__replaces_pcb_trace_id||JSON.stringify(e.route)!==JSON.stringify(I.route)}).map(I=>I.pcb_trace_id)}function Tpo(g,A){return{outer_diameter:g.via_diameter??A.minViaPadDiameter??A.min_via_pad_diameter??A.minViaDiameter??.6,hole_diameter:g.via_hole_diameter??A.minViaHoleDiameter??A.min_via_hole_diameter??.3}}function oPI(g,A){const I=[];for(const C of g.route)C.route_type==="wire"?I.push({...C,layer:C.layer}):C.route_type==="via"?I.push({route_type:"via",x:C.x,y:C.y,from_layer:C.from_layer,to_layer:C.to_layer,...Tpo(C,A)}):C.route_type==="through_obstacle"&&I.push({route_type:"through_pad",start:{...C.start},end:{...C.end},width:C.width,start_layer:C.from_layer,end_layer:C.to_layer,pcb_smtpad_id:C.circuitJsonMetadata?.pcb_smtpad_id,pcb_plated_hole_id:C.circuitJsonMetadata?.pcb_plated_hole_id});const e=C=>{let Q=-1,i=Number.POSITIVE_INFINITY;return I.forEach((E,n)=>{if(E.route_type!=="wire")return;const s=Math.hypot(E.x-C.x,E.y-C.y);s<i&&(i=s,Q=n)}),Q},t=g.route.filter(C=>C.route_type==="jumper").map(C=>[e(C.start),e(C.end)].sort((Q,i)=>Q-i)).filter(([C,Q])=>C>=0&&Q>C).sort(([C],[Q])=>C-Q),o=[];let B=0;for(const[C,Q]of t)C>=B&&o.push(I.slice(B,C+1)),B=Math.max(B,Q);return B<I.length&&o.push(I.slice(B)),o}function qpo(g){const A=[],I=[],e=g.endSimpleRouteJson;if(!e)return{lines:A,circles:I};const t=new Set(tPI(g));for(const o of e.traces??[])if(t.has(o.pcb_trace_id))for(const B of oPI(o,e)){let C;for(const Q of B){if(Q.route_type==="through_pad"){C={...Q.end,layer:Q.end_layer,width:Q.width};continue}const i=Q.route_type==="wire"?Q.layer:Q.from_layer;C&&C.layer===i&&(C.x!==Q.x||C.y!==Q.y)&&A.push({points:[{x:C.x,y:C.y},{x:Q.x,y:Q.y}],strokeWidth:Q.route_type==="wire"?Q.width:C.width,strokeColor:hCg,layer:i}),Q.route_type==="via"&&I.push({center:{x:Q.x,y:Q.y},radius:Q.outer_diameter/2,stroke:hCg,fill:"transparent"}),C={x:Q.x,y:Q.y,layer:Q.route_type==="wire"?Q.layer:Q.to_layer,width:Q.route_type==="wire"?Q.width:C?.width??e.minTraceWidth}}}return{coordinateSystem:"cartesian",lines:A,circles:I}}function Zpo(g){const A=JSON.stringify(g);let I=2166136261;for(let e=0;e<A.length;e++)I=Math.imul(I^A.charCodeAt(e),16777619);return(I>>>0).toString(36)}const Opo=new Set(["pcb_trace","pcb_via","pcb_copper_pour","pcb_ground_plane","pcb_ground_plane_region","pcb_thermal_spoke","pcb_breakout_point"]);function Wpo(g,A,I){const e=I==="input"?A.startSimpleRouteJson??A.errorSimpleRouteJson:A.endSimpleRouteJson,t=g.filter(i=>!Opo.has(i.type)&&!i.type.endsWith("_error")&&!i.type.endsWith("_warning"));if(!e)return t;const o=I==="input"?e.traces??[]:vpo(A),B=new Set(g.filter(i=>i.type==="source_trace").map(i=>i.source_trace_id)),C=["top",...Array.from({length:Math.max(0,e.layerCount-2)},(i,E)=>`inner${E+1}`),...e.layerCount>1?["bottom"]:[]],Q=[];for(const i of o){const n=e.connections.find(r=>r.name===i.connection_name||r.source_trace_id===i.connection_name)?.source_trace_id??i.connection_name??"",s=oPI(i,e);for(const[r,a]of s.entries()){const c={type:"pcb_trace",pcb_trace_id:`${A.id}_${I}_${i.pcb_trace_id}_${r}_${Zpo(a)}`,subcircuit_id:A.subcircuit_id??void 0,source_trace_id:B.has(n)?n:void 0,route:a};Q.push(c);for(const[h,l]of a.entries()){if(l.route_type!=="via")continue;const D=C.indexOf(l.from_layer),d=C.indexOf(l.to_layer),y={type:"pcb_via",pcb_via_id:`${c.pcb_trace_id}_via_${h}`,pcb_trace_id:c.pcb_trace_id,subcircuit_id:A.subcircuit_id??void 0,x:l.x,y:l.y,outer_diameter:l.outer_diameter,hole_diameter:l.hole_diameter,layers:D>=0&&d>=0?C.slice(Math.min(D,d),Math.max(D,d)+1):[l.from_layer,l.to_layer]};Q.push(y)}}}return[...t,...Q]}const lCg=(g,A)=>g.phaseName||`Phase ${g.phaseOrdinal??A+1}`,BPI=g=>g.componentDisplayName?.match(/name="([^"]+)"/)?.[1]?.replace(/^\./,"")||g.componentDisplayName||g.subcircuit_id||"Board",CPI=g=>g.startSimpleRouteJson??g.endSimpleRouteJson??g.errorSimpleRouteJson,Vpo={is_showing_autorouting:!0,is_showing_rats_nest:!1,is_showing_drc_errors:!1,is_showing_drc_warnings:!1,is_showing_pcb_groups:!1},jpo=({circuitJson:g,phases:A=[],isRunning:I=!1})=>{const[e,t]=z.useState(null),[o,B]=z.useState("output"),[C,Q]=z.useState(!0),[i,E]=z.useState(!1),n=z.useRef(null),[s,r]=z.useState(480),a=e?A.findIndex(N=>N.id===e.id&&CPI(N)===CPI(e)):-1,c=a<0?A.length-1:a,h=A[c],l=a<0,D=!!h?.endSimpleRouteJson,d=h?.startSimpleRouteJson??h?.errorSimpleRouteJson,y=!!d,w=o==="output"&&!D?"input":o==="input"&&!y?"output":o,u=w==="input"?d:h?.endSimpleRouteJson,G=z.useMemo(()=>!h||!u?null:Wpo(g??[],h,w),[g,h,u,w]),m=z.useMemo(()=>h&&w==="output"&&C?qpo(h):{lines:[],circles:[]},[h,w,C]);if(z.useLayoutEffect(()=>{const N=n.current;if(!N)return;const U=()=>r(Math.max(360,N.clientHeight));U();const K=new ResizeObserver(U);return K.observe(N),()=>K.disconnect()},[!!h]),!h)return T.jsxs("div",{className:"rf-flex rf-min-h-[400px] rf-flex-col rf-items-center rf-justify-center rf-gap-3 rf-p-8 rf-text-center",children:[T.jsx(v1I,{className:"rf-h-7 rf-w-7 rf-text-blue-500"}),T.jsx("h3",{className:"rf-text-base rf-font-medium",children:I?"Waiting for autorouting":"No autorouting captures"}),T.jsx("p",{className:"rf-max-w-md rf-text-sm rf-text-gray-500",children:I?"Phases appear as the circuit routes. Each capture includes its input and output on the PCB.":"Run a circuit with autorouting enabled to inspect its phases. A circuit JSON file alone does not include routing history."})]});const p=lCg(h,c),k=h.status==="running"&&I,S=!D,R=d?.connections.length,x=G?.filter(N=>N.type==="pcb_trace").length??0;return T.jsxs("div",{className:"rf-flex rf-h-full rf-min-h-[620px] rf-flex-col rf-bg-white md:rf-flex-row","data-testid":"autorouting-explorer",children:[T.jsxs("aside",{className:"rf-flex rf-shrink-0 rf-flex-col rf-border-b rf-border-gray-200 md:rf-w-52 md:rf-border-b-0 md:rf-border-r","aria-label":"Routing phases",children:[T.jsxs("div",{className:"rf-flex rf-items-center rf-justify-between rf-px-3 rf-py-2 rf-text-xs rf-text-gray-500",children:[T.jsx("span",{children:"Routing phases"}),T.jsx("span",{children:A.length})]}),T.jsx("div",{className:"rf-flex rf-gap-1 rf-overflow-x-auto rf-px-1.5 rf-pb-1.5 md:rf-flex-col md:rf-overflow-x-hidden md:rf-overflow-y-auto",children:A.map((N,U)=>{const K=tPI(N).length,Y=N.endSimpleRouteJson?`${K} ${K===1?"trace":"traces"} routed`:N.status==="error"?"Failed":N.status==="running"&&I?"Routing…":"No output";return T.jsxs("button",{type:"button","aria-pressed":U===c,title:`${BPI(N)} · ${Y}`,onClick:()=>t(N),className:oo("rf-flex rf-min-w-[192px] rf-items-start rf-gap-2 rf-rounded-md rf-border rf-px-2 rf-py-2 rf-text-left md:rf-min-w-0",U===c?"rf-border-blue-200 rf-bg-blue-50":"rf-border-transparent hover:rf-bg-gray-50"),children:[T.jsx("span",{className:oo("rf-flex rf-h-5 rf-w-5 rf-shrink-0 rf-items-center rf-justify-center rf-rounded-full rf-text-[11px]",U===c?"rf-bg-blue-600 rf-text-white":"rf-bg-gray-100 rf-text-gray-500"),children:U+1}),T.jsxs("span",{className:"rf-min-w-0 rf-flex-1",children:[T.jsxs("span",{className:"rf-flex rf-items-center rf-gap-1",children:[T.jsx("span",{className:"rf-min-w-0 rf-flex-1 rf-truncate rf-text-xs rf-font-medium rf-leading-5 rf-text-gray-800",title:lCg(N,U),children:lCg(N,U)}),N.status==="complete"?T.jsx(nF,{"aria-label":"Captured",className:"rf-h-3 rf-w-3 rf-shrink-0 rf-text-green-600"}):N.status==="error"?T.jsx(Uog,{"aria-label":"Failed",className:"rf-h-3 rf-w-3 rf-shrink-0 rf-text-red-500"}):I?T.jsx(pS,{"aria-label":"Routing",className:"rf-h-3 rf-w-3 rf-shrink-0 rf-animate-spin rf-text-blue-500"}):null]}),T.jsxs("span",{className:"rf-block rf-text-[11px] rf-leading-4 rf-text-gray-500",children:[Hpo(N)," · ",Y]})]})]},N.id)})})]}),T.jsxs("div",{className:"rf-flex rf-min-w-0 rf-flex-1 rf-flex-col",children:[T.jsxs("div",{className:"rf-flex rf-flex-wrap rf-items-center rf-gap-3 rf-border-b rf-border-gray-200 rf-px-4 rf-py-3",children:[T.jsxs("h3",{className:"rf-mr-auto rf-flex rf-items-center rf-gap-2 rf-text-sm rf-font-medium",children:[p,T.jsxs("span",{className:"rf-text-xs rf-font-normal rf-text-gray-500",children:[c+1," of ",A.length]})]}),I&&T.jsx("button",{type:"button",onClick:()=>t(null),disabled:l,className:"rf-text-xs rf-text-blue-600 disabled:rf-text-gray-500",children:l?"Following latest":"Follow latest"}),T.jsx("div",{className:"rf-flex rf-rounded-md rf-bg-gray-100 rf-p-1","aria-label":"Phase snapshot",children:["input","output"].map(N=>T.jsx("button",{type:"button","aria-pressed":w===N,disabled:N==="input"?!y:!D,onClick:()=>B(N),className:oo("rf-rounded rf-px-3 rf-py-1 rf-text-xs disabled:rf-opacity-40",w===N?"rf-bg-white rf-text-gray-900 rf-shadow-sm":"rf-text-gray-500"),children:N==="input"?"Input":"Output"},N))})]}),T.jsxs("div",{className:"rf-flex rf-flex-wrap rf-items-center rf-justify-between rf-gap-2 rf-px-4 rf-py-2 rf-text-xs rf-text-gray-600",children:[T.jsxs("label",{className:"rf-flex rf-items-center rf-gap-2",children:[T.jsx("input",{type:"checkbox",checked:C,disabled:w!=="output",onChange:N=>Q(N.target.checked),className:"rf-accent-blue-600"}),T.jsx("span",{"aria-hidden":"true",className:"rf-inline-block rf-h-0.5 rf-w-3",style:{backgroundColor:hCg}}),"Highlight changes (all layers)"]}),T.jsxs("span",{children:[w==="input"?"Before this phase":"After this phase"," ","· ",x," traces"]})]}),S&&T.jsx("div",{className:oo("rf-border-y rf-px-4 rf-py-2 rf-text-xs",h.status==="error"?"rf-border-red-100 rf-bg-red-50 rf-text-red-700":"rf-border-blue-100 rf-bg-blue-50 rf-text-blue-700"),role:"status",children:h.status==="error"?`Routing failed: ${h.error?.message||"No output was captured."}`:k?"Routing in progress. Showing captured input until output is available.":"No output was captured for this phase. Showing the available input."}),T.jsx("div",{ref:n,className:"rf-relative rf-min-h-[360px] rf-flex-1","data-testid":"autorouting-pcb",children:G?T.jsx(Nog,{circuitJson:G,height:s,allowEditing:!1,clickToInteractEnabled:!1,initialState:Vpo,debugGraphics:m}):T.jsx("div",{className:"rf-p-6 rf-text-sm rf-text-gray-500",children:"No PCB snapshot available for this capture."})}),T.jsxs("div",{className:"rf-flex rf-flex-wrap rf-items-center rf-justify-between rf-gap-2 rf-border-t rf-border-gray-200 rf-px-4 rf-py-3 rf-text-xs rf-text-gray-500",children:[T.jsxs("span",{children:[R===void 0?"Input unavailable":`${R} input connections`,` · ${BPI(h)}`]}),T.jsxs("div",{className:"rf-flex rf-items-center rf-gap-4",children:[T.jsxs("button",{type:"button",disabled:!u,onClick:()=>Yk(JSON.stringify(u,null,2),{fileName:`${h.id}-${w}.srj.json`,mimeType:"application/json"}),className:"rf-flex rf-items-center rf-gap-1 disabled:rf-opacity-40",children:[T.jsx(GtA,{className:"rf-h-3 rf-w-3"}),"Download SRJ"]}),T.jsxs("button",{type:"button","aria-expanded":i,onClick:()=>E(!i),className:"rf-flex rf-items-center rf-gap-1",children:[T.jsx(pb,{className:oo("rf-h-3 rf-w-3",i&&"rf-rotate-90")}),"Inspect SRJ"]})]})]}),i&&T.jsx("pre",{className:"rf-m-0 rf-max-h-64 rf-overflow-auto rf-border-t rf-border-gray-200 rf-bg-gray-50 rf-p-4 rf-text-xs","aria-label":`${p} ${w} SRJ`,children:u?JSON.stringify(u,null,2):"No snapshot captured."})]})]})},QPI=({errorMessage:g,errorStack:A,circuitJsonErrors:I})=>{z.useEffect(()=>{if(yJ("TSCIRCUIT_TELEMETRY_DISABLED")!==!0&&g){const e=new Error(g);A&&(e.stack=A);try{pq.captureException(e)}catch{}}},[g,A]),z.useEffect(()=>{if(yJ("TSCIRCUIT_TELEMETRY_DISABLED")!==!0&&I&&I.length>0)for(const e of I){const t=new Error(e.message||"Circuit JSON Error");e.stack&&(t.stack=e.stack);try{pq.captureException(t,{error_type:e.type})}catch{}}},[I])},iPI=g=>{z.useEffect(()=>{try{Adt(g)}catch{}},[g.source,g.component,g.isWebEmbedded,g.activeTab])},EPI="0.0.3058",zpo={version:EPI},jmA=CXg()(QXg(g=>({lastRunEvalVersion:void 0,setLastRunEvalVersion:A=>{g({lastRunEvalVersion:A})}}),{name:"runframe-runner-store"})),Xpo=g=>{const[A,I]=z.useState([]),[e,t]=z.useState(null),[o,B]=z.useState(""),[C,Q]=OT("eval-version-selection",null),i=jmA(r=>r.setLastRunEvalVersion),E=jmA(r=>r.lastRunEvalVersion);return z.useEffect(()=>{g&&fetch("https://data.jsdelivr.com/v1/package/npm/@tscircuit/eval").then(r=>r.json()).then(r=>{if(Array.isArray(r?.versions)){let a=[...r.versions];r.tags?.latest&&(t(r.tags.latest),a=a.filter(c=>c!==r.tags.latest)),I(a)}}).catch(()=>{})},[g]),z.useEffect(()=>{g&&(C?(window.TSCIRCUIT_LATEST_EVAL_VERSION=C,i(C)):e&&(window.TSCIRCUIT_LATEST_EVAL_VERSION=e,i(e)))},[g,C,e]),{versions:z.useMemo(()=>A.filter(r=>r.includes(o)).slice(0,50),[A,o]),latestVersion:e,lastRunEvalVersion:E,search:o,setSearch:B,selectVersion:r=>{Q(r),B("")}}},$po=({snippetNames:g,onSelect:A,onCancel:I,isOpen:e})=>{const[t,o]=z.useState(""),[B,C]=z.useState("");if(!e)return null;const Q=g.filter(n=>n.toLowerCase().includes(B.toLowerCase())),i=B&&!g.includes(B),E=n=>{n.key==="Enter"&&(Q.length===1?o(Q[0]):i&&o(B))};return T.jsx("div",{className:"rf-fixed rf-inset-0 rf-bg-black rf-bg-opacity-50 rf-flex rf-items-center rf-justify-center rf-z-[100]",children:T.jsxs("div",{className:"rf-bg-white rf-rounded-lg rf-p-6 rf-w-96",children:[T.jsx("h2",{className:"rf-text-lg rf-font-semibold rf-mb-4",children:"Select Snippet"}),T.jsx("input",{type:"text",className:"rf-w-full rf-px-4 rf-py-2 rf-border rf-rounded rf-mb-4",placeholder:"Search snippets or new snippet name...",value:B,onChange:n=>C(n.target.value),onKeyDown:E}),T.jsxs("div",{className:"rf-h-60 rf-overflow-y-auto",children:[Q.map(n=>T.jsx("button",{type:"button",className:`w-full text-left px-4 py-2 rounded hover:bg-gray-100 ${t===n?"bg-blue-50":""}`,onClick:()=>o(n),children:n},n)),i&&T.jsxs("button",{type:"button",className:`w-full text-left px-4 py-2 rounded hover:bg-gray-100 text-blue-500 ${t===B?"bg-blue-50":""}`,onClick:()=>o(B),children:['Create new "',B,'"']})]}),T.jsxs("div",{className:"rf-mt-4 rf-flex rf-justify-end rf-gap-2",children:[T.jsx("button",{type:"button",className:"rf-px-4 rf-py-2 rf-text-gray-600 rf-hover:text-gray-800",onClick:I,children:"Cancel"}),T.jsx("button",{type:"button",className:"rf-px-4 rf-py-2 rf-bg-blue-500 rf-text-white rf-rounded rf-hover:bg-blue-600 rf-disabled:opacity-50",onClick:()=>t&&A(t),disabled:!t,children:t===B?`Create "${t}"`:`Save to ${t}`})]})]})})},Ako=g=>{const A=z.useRef(null),I=Uc(e=>e.recentEvents);z.useEffect(()=>{if(I.length===0)return;const e=I[0];e.event_id!==A.current&&(g(e),A.current=e.event_id)},[I,g])};var gko=Object.defineProperty,CP=(g,A)=>gko(g,"name",{value:A,configurable:!0}),Iko="AlertDialog",[eko,CCB]=nk(Iko,[hFI]),QP=hFI(),tko=CP(g=>{const{__scopeAlertDialog:A,...I}=g,e=QP(A);return T.jsx(smA,{...e,...I,modal:!0})},"AlertDialog");z.forwardRef(CP(function(A,I){const{__scopeAlertDialog:e,...t}=A,o=QP(e);return T.jsx($0o,{...o,...t,ref:I})},"AlertDialogTrigger"));var oko=CP(g=>{const{__scopeAlertDialog:A,...I}=g,e=QP(A);return T.jsx(amA,{...e,...I})},"AlertDialogPortal"),nPI=z.forwardRef(CP(function(A,I){const{__scopeAlertDialog:e,...t}=A,o=QP(e);return T.jsx(PtA,{...o,...t,ref:I})},"AlertDialogOverlay")),Bko="AlertDialogContent",[Cko,Qko]=eko(Bko),sPI=z.forwardRef(CP(function(A,I){const{__scopeAlertDialog:e,children:t,...o}=A,B=QP(e),C=z.useRef(null),Q=Gi(I,C),i=z.useRef(null);return T.jsx(Cko,{scope:e,cancelRef:i,children:T.jsx(LtA,{role:"alertdialog",...B,...o,ref:Q,onOpenAutoFocus:So(o.onOpenAutoFocus,E=>{E.preventDefault(),i.current?.focus({preventScroll:!0})}),onPointerDownOutside:E=>E.preventDefault(),onInteractOutside:E=>E.preventDefault(),children:t})})},"AlertDialogContent")),aPI=z.forwardRef(CP(function(A,I){const{__scopeAlertDialog:e,...t}=A,o=QP(e);return T.jsx(rmA,{...o,...t,ref:I})},"AlertDialogTitle")),rPI=z.forwardRef(CP(function(A,I){const{__scopeAlertDialog:e,...t}=A,o=QP(e);return T.jsx(cmA,{...o,...t,ref:I})},"AlertDialogDescription")),cPI=z.forwardRef(CP(function(A,I){const{__scopeAlertDialog:e,...t}=A,o=QP(e);return T.jsx(GBg,{...o,...t,ref:I})},"AlertDialogAction")),iko="AlertDialogCancel",hPI=z.forwardRef(CP(function(A,I){const{__scopeAlertDialog:e,...t}=A,{cancelRef:o}=Qko(iko,e),B=QP(e),C=Gi(I,o);return T.jsx(GBg,{...B,...t,ref:C})},"AlertDialogCancel"));const lPI=tko,Eko=oko,DPI=z.forwardRef(({className:g,...A},I)=>T.jsx(nPI,{className:oo("rf-fixed rf-inset-0 rf-z-50 rf-bg-black/80 data-[state=open]:rf-animate-in data-[state=closed]:rf-animate-out data-[state=closed]:rf-fade-out-0 data-[state=open]:rf-fade-in-0",g),...A,ref:I}));DPI.displayName=nPI.displayName;const DCg=z.forwardRef(({className:g,...A},I)=>T.jsxs(Eko,{children:[T.jsx(DPI,{}),T.jsx(sPI,{ref:I,className:oo("rf-fixed rf-left-[50%] rf-top-[50%] rf-z-50 rf-grid rf-w-full rf-max-w-lg rf-translate-x-[-50%] rf-translate-y-[-50%] rf-gap-4 rf-border rf-border-zinc-200 rf-bg-white rf-p-6 rf-shadow-lg rf-duration-200 data-[state=open]:rf-animate-in data-[state=closed]:rf-animate-out data-[state=closed]:rf-fade-out-0 data-[state=open]:rf-fade-in-0 data-[state=closed]:rf-zoom-out-95 data-[state=open]:rf-zoom-in-95 data-[state=closed]:rf-slide-out-to-left-1/2 data-[state=closed]:rf-slide-out-to-top-[48%] data-[state=open]:rf-slide-in-from-left-1/2 data-[state=open]:rf-slide-in-from-top-[48%] sm:rf-rounded-lg dark:rf-border-zinc-800 dark:rf-bg-zinc-950",g),...A})]}));DCg.displayName=sPI.displayName;const dCg=({className:g,...A})=>T.jsx("div",{className:oo("rf-flex rf-flex-col rf-space-y-2 rf-text-center sm:rf-text-left",g),...A});dCg.displayName="AlertDialogHeader";const yCg=({className:g,...A})=>T.jsx("div",{className:oo("rf-flex rf-flex-col-reverse sm:rf-flex-row sm:rf-justify-end sm:rf-space-x-2",g),...A});yCg.displayName="AlertDialogFooter";const wCg=z.forwardRef(({className:g,...A},I)=>T.jsx(aPI,{ref:I,className:oo("rf-text-lg rf-font-semibold",g),...A}));wCg.displayName=aPI.displayName;const uCg=z.forwardRef(({className:g,...A},I)=>T.jsx(rPI,{ref:I,className:oo("rf-text-sm rf-text-zinc-500 dark:rf-text-zinc-400",g),...A}));uCg.displayName=rPI.displayName;const nko=z.forwardRef(({className:g,...A},I)=>T.jsx(cPI,{ref:I,className:oo(CO(),g),...A}));nko.displayName=cPI.displayName;const GCg=z.forwardRef(({className:g,...A},I)=>T.jsx(hPI,{ref:I,className:oo(CO({variant:"outline"}),"rf-mt-2 sm:rf-mt-0",g),...A}));GCg.displayName=hPI.displayName;var sko=Object.defineProperty,iP=(g,A)=>sko(g,"name",{value:A,configurable:!0}),mCg="Checkbox",[ako,QCB]=nk(mCg),[rko,pCg]=ako(mCg);function dPI(g){const{__scopeCheckbox:A,checked:I,children:e,defaultChecked:t,disabled:o,form:B,name:C,onCheckedChange:Q,required:i,value:E="on",internal_do_not_use_render:n}=g,[s,r]=RR({prop:I,defaultProp:t??!1,onChange:Q,caller:mCg}),[a,c]=z.useState(null),[h,l]=z.useState(null),[D,d]=z.useState(null),y=a?!!B||!!a.closest("form"):!0,w={checked:s,disabled:o,setChecked:r,control:a,setControl:c,name:C,form:B,value:E,userClick:D,onUserClick:d,required:i,defaultChecked:yf(t)?!1:t,isFormControl:y,bubbleInput:h,setBubbleInput:l};return T.jsx(rko,{scope:A,...w,children:wPI(n)?n(w):e})}iP(dPI,"CheckboxProvider");var cko="CheckboxTrigger",hko=z.forwardRef(iP(function({__scopeCheckbox:A,onKeyDown:I,onClick:e,...t},o){const{control:B,value:C,disabled:Q,checked:i,required:E,setControl:n,setChecked:s,onUserClick:r,isFormControl:a,bubbleInput:c}=pCg(cko,A),h=Gi(o,n),l=z.useRef(i);return z.useEffect(()=>{const D=B?.form;if(D){const d=iP(()=>s(l.current),"reset");return D.addEventListener("reset",d),()=>D.removeEventListener("reset",d)}},[B,s]),T.jsx(yQ.button,{type:"button",role:"checkbox","aria-checked":yf(i)?"mixed":i,"aria-required":E,"data-state":kCg(i),"data-disabled":Q?"":void 0,disabled:Q,value:C,...t,ref:h,onKeyDown:So(I,D=>{D.key==="Enter"&&D.preventDefault()}),onClick:So(e,D=>{const d=D.isPropagationStopped();r({requestedChecked:yf(i)?!0:!i,hasConsumerStoppedPropagation:d}),s(y=>yf(y)?!0:!y),c&&a&&(d||D.stopPropagation())})})},"CheckboxTrigger")),yPI=z.forwardRef(iP(function(A,I){const{__scopeCheckbox:e,name:t,checked:o,defaultChecked:B,required:C,disabled:Q,value:i,onCheckedChange:E,form:n,...s}=A;return T.jsx(dPI,{__scopeCheckbox:e,checked:o,defaultChecked:B,disabled:Q,required:C,onCheckedChange:E,name:t,form:n,value:i,internal_do_not_use_render:({isFormControl:r})=>T.jsxs(T.Fragment,{children:[T.jsx(hko,{...s,ref:I,__scopeCheckbox:e}),r&&T.jsx(yko,{__scopeCheckbox:e})]})})},"Checkbox")),lko="CheckboxIndicator",Dko=z.forwardRef(iP(function(A,I){const{__scopeCheckbox:e,forceMount:t,...o}=A,B=pCg(lko,e);return T.jsx(XM,{present:t||yf(B.checked)||B.checked===!0,children:T.jsx(yQ.span,{"data-state":kCg(B.checked),"data-disabled":B.disabled?"":void 0,...o,ref:I,style:{pointerEvents:"none",...A.style}})})},"CheckboxIndicator")),dko="CheckboxBubbleInput",yko=z.forwardRef(iP(function({__scopeCheckbox:A,onClick:I,...e},t){const{control:o,userClick:B,checked:C,defaultChecked:Q,required:i,disabled:E,name:n,value:s,form:r,bubbleInput:a,setBubbleInput:c}=pCg(dko,A),h=Gi(t,c),l=tBg(o),D=z.useRef(!1),d=z.useRef(C),y=z.useRef(B),w=z.useRef(null);z.useEffect(()=>{const G=a;if(!G)return;const m=window.HTMLInputElement.prototype,k=Object.getOwnPropertyDescriptor(m,"checked").set;if(!k)return;const S=d.current!==C;d.current=C;const R=B!==null&&B!==y.current;if(y.current=B,R)w.current=S?null:B,S&&(G.indeterminate=yf(C),k.call(G,yf(C)?!1:C)),G.dispatchEvent(new Event("click",{bubbles:!B.hasConsumerStoppedPropagation}));else if(S){const x=w.current;w.current=null;const N=x?.requestedChecked===C;D.current=!0,G.indeterminate=yf(C),k.call(G,yf(C)?!1:C),G.dispatchEvent(new Event("click",{bubbles:!(N&&x.hasConsumerStoppedPropagation)})),D.current=!1}},[a,C,B]);const u=z.useRef(yf(C)?!1:C);return T.jsx(yQ.input,{type:"checkbox","aria-hidden":!0,defaultChecked:Q??u.current,required:i,disabled:E,name:n,value:s,form:r,...e,tabIndex:-1,ref:h,onClick:So(I,G=>{D.current&&G.stopPropagation()}),style:{...e.style,...l,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})},"CheckboxBubbleInput"));function wPI(g){return typeof g=="function"}iP(wPI,"isFunction");function yf(g){return g==="indeterminate"}iP(yf,"isIndeterminate");function kCg(g){return yf(g)?"indeterminate":g?"checked":"unchecked"}iP(kCg,"getState");const BoA=z.forwardRef(({className:g,...A},I)=>T.jsx(yPI,{ref:I,className:oo("rf-peer rf-h-4 rf-w-4 rf-shrink-0 rf-rounded-sm rf-border rf-border-zinc-200 rf-border-zinc-900 rf-shadow focus-visible:rf-outline-none focus-visible:rf-ring-1 focus-visible:rf-ring-zinc-950 disabled:rf-cursor-not-allowed disabled:rf-opacity-50 data-[state=checked]:rf-bg-zinc-900 data-[state=checked]:rf-text-zinc-50 dark:rf-border-zinc-800 dark:rf-border-zinc-50 dark:focus-visible:rf-ring-zinc-300 dark:data-[state=checked]:rf-bg-zinc-50 dark:data-[state=checked]:rf-text-zinc-900",g),...A,children:T.jsx(Dko,{className:oo("rf-flex rf-items-center rf-justify-center rf-text-current"),children:T.jsx(nF,{className:"rf-h-4 rf-w-4"})})}));BoA.displayName=yPI.displayName;const Ub=smA,wko=amA,uPI=z.forwardRef(({className:g,...A},I)=>T.jsx(PtA,{className:oo("rf-fixed rf-inset-0 rf-z-50 rf-bg-black/80 data-[state=open]:rf-animate-in data-[state=closed]:rf-animate-out data-[state=closed]:rf-fade-out-0 data-[state=open]:rf-fade-in-0",g),...A,ref:I}));uPI.displayName=PtA.displayName;const SL=z.forwardRef(({className:g,children:A,showOverlay:I=!0,...e},t)=>T.jsxs(wko,{children:[T.jsx(uPI,{className:oo(I?"":"rf-hidden")}),T.jsx(LtA,{ref:t,className:oo("rf-fixed rf-left-[50%] rf-top-[50%] rf-z-50 rf-grid rf-w-full rf-max-w-lg rf-translate-x-[-50%] rf-translate-y-[-50%] rf-gap-4 rf-border rf-border-zinc-200 rf-bg-white rf-p-6 rf-shadow-lg rf-duration-200 data-[state=open]:rf-animate-in data-[state=closed]:rf-animate-out data-[state=closed]:rf-fade-out-0 data-[state=open]:rf-fade-in-0 data-[state=closed]:rf-zoom-out-95 data-[state=open]:rf-zoom-in-95 data-[state=closed]:rf-slide-out-to-left-1/2 data-[state=closed]:rf-slide-out-to-top-[48%] data-[state=open]:rf-slide-in-from-left-1/2 data-[state=open]:rf-slide-in-from-top-[48%] sm:rf-rounded-lg dark:rf-border-zinc-800 dark:rf-bg-zinc-950",g),...e,children:A})]}));SL.displayName=LtA.displayName;const fL=({className:g,...A})=>T.jsx("div",{className:oo("rf-flex rf-flex-col rf-space-y-2 rf-text-center sm:rf-text-left",g),...A});fL.displayName="DialogHeader";const JO=({className:g,...A})=>T.jsx("div",{className:oo("rf-flex rf-flex-col-reverse sm:rf-flex-row sm:rf-justify-end sm:rf-space-x-2",g),...A});JO.displayName="DialogFooter";const RL=z.forwardRef(({className:g,...A},I)=>T.jsx(rmA,{ref:I,className:oo("rf-text-lg rf-font-semibold",g),...A}));RL.displayName=rmA.displayName;const Jb=z.forwardRef(({className:g,...A},I)=>T.jsx(cmA,{ref:I,className:oo("rf-text-sm rf-text-zinc-500 dark:rf-text-zinc-400",g),...A}));Jb.displayName=cmA.displayName;const zmA={"tscircuit.com":{label:"tscircuit.com",placeholder:"Search tscircuit packages...",emptyMessage:"No packages found"},jlcpcb:{label:"JLCPCB Parts",placeholder:"Search JLCPCB parts (e.g. C14663)...",emptyMessage:"No parts found"},kicad:{label:"KiCad Footprints",placeholder:"Search KiCad footprints...",emptyMessage:"No footprints found"}},uko="https://cdn.jsdelivr.net/npm/easyeda@latest/dist/browser/index.js";let MCg=null;const SCg=async()=>(MCg||(MCg=import(uko)),MCg),Gko=g=>(A,I)=>{const e=new Headers(I?.headers),t={};return e.forEach((o,B)=>{t[B]=o}),fetch(`${g?.apiBase??Nm}/proxy`,{...I,headers:{...t,"X-Target-Url":A.toString(),"X-Sender-Origin":t.origin??"","X-Sender-Host":t.host??"https://easyeda.com","X-Sender-Referer":t.referer??"","X-Sender-User-Agent":t["user-agent"]??"","X-Sender-Cookie":t.cookie??"",authority:t.authority??"","content-type":t["content-type"]??"",...g?.headers}})},mko=async(g,A=10)=>{const I=encodeURIComponent(g),e=await fetch(`https://jlcsearch.tscircuit.com/api/search?limit=${A}&q=${I}`);if(!e.ok)throw new Error(`JLCPCB API error: ${e.status}`);return(await e.json()).components??[]},pko=g=>({lcscId:g.lcsc,manufacturer:g.mfr,description:g.description,partNumber:`C${g.lcsc}`,package:g.package,price:g.price,stock:g.stock,isBasic:g.is_basic}),GPI=async(g,A)=>{const{fetchEasyEDAComponent:I}=await SCg();return I(g,{fetch:Gko(A),includeModelMetadata:A?.includeModelMetadata})},kko=async(g,A)=>{const{convertRawEasyToTsx:I}=await SCg(),e=await GPI(g,A);return I({rawEasy:e})},Mko=async(g,A)=>{const{EasyEdaJsonSchema:I,convertEasyEdaJsonToCircuitJson:e}=await SCg(),t=await GPI(g,{...A,includeModelMetadata:!1}),o=I.parse(t);return e(o,{shouldRecenter:!0,showDesignator:!0,useModelCdn:!1})};function NL(g){return Array.isArray?Array.isArray(g):pPI(g)==="[object Array]"}function Sko(g){if(typeof g=="string")return g;if(typeof g=="bigint")return g.toString();const A=g+"";return A=="0"&&1/g==-1/0?"-0":A}function fCg(g){return g==null?"":Sko(g)}function dG(g){return typeof g=="string"}function XmA(g){return typeof g=="number"}function fko(g){return g===!0||g===!1||Rko(g)&&pPI(g)=="[object Boolean]"}function mPI(g){return typeof g=="object"}function Rko(g){return mPI(g)&&g!==null}function xS(g){return g!=null}function $mA(g){return!g.trim().length}function pPI(g){return g==null?g===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(g)}const Nko="Incorrect 'index' type",RCg="Invalid doc index: must be a non-negative integer within the bounds of the docs array",xko=g=>`Invalid value for key ${g}`,Fko=g=>`Pattern length exceeds max of ${g}.`,Uko=g=>`Missing ${g} property in key`,Jko=g=>`Property 'weight' in key '${g}' must be a positive integer`,Pko="Fuse.match does not support useTokenSearch: token search requires corpus-level statistics (df, fieldCount) that a one-off string comparison does not have. Use new Fuse(...).search(...) instead.",kPI=Object.prototype.hasOwnProperty;var Kko=class{constructor(g){this._keys=[],this._keyMap={};let A=0;g.forEach(I=>{const e=MPI(I);this._keys.push(e),this._keyMap[e.id]=e,A+=e.weight}),this._keys.forEach(I=>{I.weight/=A})}get(g){return this._keyMap[g]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}};function MPI(g){let A=null,I=null,e=null,t=1,o=null;if(dG(g)||NL(g))e=g,A=SPI(g),I=ApA(g);else{if(!kPI.call(g,"name"))throw new Error(Uko("name"));const B=g.name;if(e=B,kPI.call(g,"weight")&&g.weight!==void 0&&(t=g.weight,t<=0))throw new Error(Jko(ApA(B)));A=SPI(B),I=ApA(B),o=g.getFn??null}return{path:A,id:I,weight:t,src:e,getFn:o}}function SPI(g){return NL(g)?g:g.split(".")}function ApA(g){return NL(g)?g.join("."):g}function Lko(g,A){const I=[];let e=!1;const t=(o,B,C,Q)=>{if(xS(o))if(!B[C])I.push(Q!==void 0?{v:o,i:Q}:o);else{const i=o[B[C]];if(!xS(i))return;if(C===B.length-1&&(dG(i)||XmA(i)||fko(i)||typeof i=="bigint"))I.push(Q!==void 0?{v:fCg(i),i:Q}:fCg(i));else if(NL(i)){e=!0;for(let E=0,n=i.length;E<n;E+=1)t(i[E],B,C+1,E)}else B.length&&t(i,B,C+1,Q)}};return t(g,dG(A)?A.split("."):A,0),e?I:I[0]}const cQ=Object.freeze({...{isCaseSensitive:!1,ignoreDiacritics:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:(g,A)=>g.score===A.score?g.idx<A.idx?-1:1:g.score<A.score?-1:1},...{includeMatches:!1,findAllMatches:!1,minMatchCharLength:1},...{location:0,threshold:.6,distance:100},...{useExtendedSearch:!1,useTokenSearch:!1,tokenize:void 0,tokenMatch:"any",getFn:Lko,ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1}});function Yko(g){return g>=9&&g<=13||g===32||g===160}function _ko(g=1,A=3){const I=new Map,e=Math.pow(10,A);return{get(t){let o=0,B=!1;for(let Q=0;Q<t.length;Q++)Yko(t.charCodeAt(Q))?B=!1:B||(o++,B=!0);if(o===0&&(o=1),I.has(o))return I.get(o);const C=Math.round(e/Math.pow(o,.5*g))/e;return I.set(o,C),C},clear(){I.clear()}}}var NCg=class{constructor({getFn:g=cQ.getFn,fieldNormWeight:A=cQ.fieldNormWeight}={}){this.norm=_ko(A,3),this.getFn=g,this.isCreated=!1,this.docs=[],this.keys=[],this._keysMap={},this.setIndexRecords()}setSources(g=[]){this.docs=g}setIndexRecords(g=[]){this.records=g}setKeys(g=[]){this.keys=g,this._keysMap={},g.forEach((A,I)=>{this._keysMap[A.id]=I})}create(){if(this.isCreated||!this.docs.length)return;this.isCreated=!0;const g=this.docs.length;this.records=new Array(g);let A=0;if(dG(this.docs[0]))for(let I=0;I<g;I++){const e=this._createStringRecord(this.docs[I],I);e&&(this.records[A++]=e)}else for(let I=0;I<g;I++)this.records[A++]=this._createObjectRecord(this.docs[I],I);this.records.length=A,this.norm.clear()}add(g,A){if(!Number.isInteger(A)||A<0)throw new Error(RCg);if(dG(g)){const e=this._createStringRecord(g,A);return e&&this.records.push(e),e}const I=this._createObjectRecord(g,A);return this.records.push(I),I}removeAt(g){if(!Number.isInteger(g)||g<0)throw new Error(RCg);for(let A=0,I=this.records.length;A<I;A+=1)if(this.records[A].i===g){this.records.splice(A,1);break}for(let A=0,I=this.records.length;A<I;A+=1)this.records[A].i>g&&(this.records[A].i-=1)}removeAll(g){const A=new Set;for(const e of g)Number.isInteger(e)&&e>=0&&A.add(e);if(A.size===0)return;this.records=this.records.filter(e=>!A.has(e.i));const I=Array.from(A).sort((e,t)=>e-t);for(const e of this.records){let t=0,o=I.length;for(;t<o;){const B=t+o>>>1;I[B]<e.i?t=B+1:o=B}e.i-=t}}getValueForItemAtKeyId(g,A){return g[this._keysMap[A]]}size(){return this.records.length}_createStringRecord(g,A){return!xS(g)||$mA(g)?null:{v:g,i:A,n:this.norm.get(g)}}_createObjectRecord(g,A){const I={i:A,$:{}};for(let e=0,t=this.keys.length;e<t;e++){const o=this.keys[e],B=o.getFn?o.getFn(g):this.getFn(g,o.path);if(xS(B)){if(NL(B)){const C=[];for(let Q=0,i=B.length;Q<i;Q+=1){const E=B[Q];if(xS(E)){if(dG(E)){if(!$mA(E)){const n={v:E,i:Q,n:this.norm.get(E)};C.push(n)}}else if(xS(E.v)){const n=dG(E.v)?E.v:fCg(E.v);if(!$mA(n)){const s={v:n,i:E.i,n:this.norm.get(n)};C.push(s)}}}}I.$[e]=C}else if(dG(B)&&!$mA(B)){const C={v:B,n:this.norm.get(B)};I.$[e]=C}}}return I}toJSON(){return{keys:this.keys.map(({getFn:g,...A})=>A),records:this.records}}};function fPI(g,A,{getFn:I=cQ.getFn,fieldNormWeight:e=cQ.fieldNormWeight}={}){const t=new NCg({getFn:I,fieldNormWeight:e});return t.setKeys(g.map(MPI)),t.setSources(A),t.create(),t}function bko(g,{getFn:A=cQ.getFn,fieldNormWeight:I=cQ.fieldNormWeight}={}){const{keys:e,records:t}=g,o=new NCg({getFn:A,fieldNormWeight:I});return o.setKeys(e),o.setIndexRecords(t),o}function Hko(g=[],A=cQ.minMatchCharLength){const I=[];let e=-1,t=-1,o=0;for(let B=g.length;o<B;o+=1){const C=g[o];C&&e===-1?e=o:!C&&e!==-1&&(t=o-1,t-e+1>=A&&I.push([e,t]),e=-1)}return g[o-1]&&o-e>=A&&I.push([e,o-1]),I}function vko(g,A,I,{location:e=cQ.location,distance:t=cQ.distance,threshold:o=cQ.threshold,findAllMatches:B=cQ.findAllMatches,minMatchCharLength:C=cQ.minMatchCharLength,includeMatches:Q=cQ.includeMatches,ignoreLocation:i=cQ.ignoreLocation}={}){if(A.length>32)throw new Error(Fko(32));const E=A.length,n=g.length,s=Math.max(0,Math.min(e,n));let r=o,a=s;const c=(p,k)=>{const S=p/E;if(i)return S;const R=Math.abs(s-k);return t?S+R/t:R?1:S},h=C>1||Q,l=h?Array(n):[];let D;for(;(D=g.indexOf(A,a))>-1;){const p=c(0,D);if(r=Math.min(p,r),a=D+E,h){let k=0;for(;k<E;)l[D+k]=1,k+=1}}a=-1;let d=[],y=1,w=0,u=E+n;const G=1<<E-1;for(let p=0;p<E;p+=1){let k=0,S=u;for(;k<S;)c(p,s+S)<=r?k=S:u=S,S=Math.floor((u-k)/2+k);u=S;let R=Math.max(1,s-S+1);const x=B?n:Math.min(s+S,n)+E,N=Array(x+2);N[x+1]=(1<<p)-1;for(let U=x;U>=R;U-=1){const K=U-1,Y=I[g[K]];if(N[U]=(N[U+1]<<1|1)&Y,p&&(N[U]|=(d[U+1]|d[U])<<1|1|d[U+1]),N[U]&G&&(y=c(p,K),y<=r)){if(r=y,a=K,w=p,a<=s)break;R=Math.max(1,2*s-a)}}if(c(p+1,s)>r)break;d=N}if(h&&a>=0){const p=Math.min(n-1,a+E-1+w);for(let k=a;k<=p;k+=1)I[g[k]]&&(l[k]=1)}const m={isMatch:a>=0,score:Math.max(.001,y)};if(h){const p=Hko(l,C);p.length?Q&&(m.indices=p):m.isMatch=!1}return m}function Tko(g){const A={};for(let I=0,e=g.length;I<e;I+=1){const t=g.charAt(I);A[t]=(A[t]||0)|1<<e-I-1}return A}function xCg(g){if(g.length<=1)return g;g.sort((I,e)=>I[0]-e[0]||I[1]-e[1]);const A=[g[0]];for(let I=1,e=g.length;I<e;I+=1){const t=A[A.length-1],o=g[I];o[0]<=t[1]+1?t[1]=Math.max(t[1],o[1]):A.push(o)}return A}const RPI={ł:"l",Ł:"L",đ:"d",Đ:"D",ø:"o",Ø:"O",ħ:"h",Ħ:"H",ŧ:"t",Ŧ:"T",ı:"i",ß:"ss"},qko=new RegExp("["+Object.keys(RPI).join("")+"]","g"),CoA=typeof String.prototype.normalize=="function"?g=>g.normalize("NFD").replace(/[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D3-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C04\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u1885\u1886\u18A9\u1920-\u192B\u1930-\u193B\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DF9\u1DFB-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F]/g,"").replace(qko,A=>RPI[A]):g=>g;var FCg=class{constructor(g,{location:A=cQ.location,threshold:I=cQ.threshold,distance:e=cQ.distance,includeMatches:t=cQ.includeMatches,findAllMatches:o=cQ.findAllMatches,minMatchCharLength:B=cQ.minMatchCharLength,isCaseSensitive:C=cQ.isCaseSensitive,ignoreDiacritics:Q=cQ.ignoreDiacritics,ignoreLocation:i=cQ.ignoreLocation}={}){if(this.options={location:A,threshold:I,distance:e,includeMatches:t,findAllMatches:o,minMatchCharLength:B,isCaseSensitive:C,ignoreDiacritics:Q,ignoreLocation:i},g=C?g:g.toLowerCase(),g=Q?CoA(g):g,this.pattern=g,this.chunks=[],!this.pattern.length)return;const E=(s,r)=>{this.chunks.push({pattern:s,alphabet:Tko(s),startIndex:r})},n=this.pattern.length;if(n>32){let s=0;const r=n%32,a=n-r;for(;s<a;)E(this.pattern.substr(s,32),s),s+=32;if(r){const c=n-32;E(this.pattern.substr(c),c)}}else E(this.pattern,0)}searchIn(g){const{isCaseSensitive:A,ignoreDiacritics:I,includeMatches:e}=this.options;if(g=A?g:g.toLowerCase(),g=I?CoA(g):g,this.pattern===g){if(g.length<this.options.minMatchCharLength)return{isMatch:!1,score:1};const a={isMatch:!0,score:0};return e&&(a.indices=[[0,g.length-1]]),a}const{location:t,distance:o,threshold:B,findAllMatches:C,minMatchCharLength:Q,ignoreLocation:i}=this.options,E=[];let n=0,s=!1;this.chunks.forEach(({pattern:a,alphabet:c,startIndex:h})=>{const{isMatch:l,score:D,indices:d}=vko(g,a,c,{location:t+h,distance:o,threshold:B,findAllMatches:C,minMatchCharLength:Q,includeMatches:e,ignoreLocation:i});l&&(s=!0),n+=D,l&&d&&E.push(...d)});const r={isMatch:s,score:s?n/this.chunks.length:1};return s&&e&&(r.indices=xCg(E)),r}};const Zko=new Set(["fuzzy","include"]);function Oko(g){return g.startsWith("inverse")}const UCg=[{type:"exact",multiRegex:/^="(.*)"$/,singleRegex:/^=(.*)$/,create:g=>({type:"exact",search(A){const I=A===g;return{isMatch:I,score:I?0:1,indices:[0,g.length-1]}}})},{type:"include",multiRegex:/^'"(.*)"$/,singleRegex:/^'(.*)$/,create:g=>({type:"include",search(A){let I=0,e;const t=[],o=g.length;for(;(e=A.indexOf(g,I))>-1;)I=e+o,t.push([e,I-1]);const B=!!t.length;return{isMatch:B,score:B?0:1,indices:t}}})},{type:"prefix-exact",multiRegex:/^\^"(.*)"$/,singleRegex:/^\^(.*)$/,create:g=>({type:"prefix-exact",search(A){const I=A.startsWith(g);return{isMatch:I,score:I?0:1,indices:[0,g.length-1]}}})},{type:"inverse-prefix-exact",multiRegex:/^!\^"(.*)"$/,singleRegex:/^!\^(.*)$/,create:g=>({type:"inverse-prefix-exact",search(A){const I=!A.startsWith(g);return{isMatch:I,score:I?0:1,indices:[0,A.length-1]}}})},{type:"inverse-suffix-exact",multiRegex:/^!"(.*)"\$$/,singleRegex:/^!(.*)\$$/,create:g=>({type:"inverse-suffix-exact",search(A){const I=!A.endsWith(g);return{isMatch:I,score:I?0:1,indices:[0,A.length-1]}}})},{type:"suffix-exact",multiRegex:/^"(.*)"\$$/,singleRegex:/^(.*)\$$/,create:g=>({type:"suffix-exact",search(A){const I=A.endsWith(g);return{isMatch:I,score:I?0:1,indices:[A.length-g.length,A.length-1]}}})},{type:"inverse-exact",multiRegex:/^!"(.*)"$/,singleRegex:/^!(.*)$/,create:g=>({type:"inverse-exact",search(A){const I=A.indexOf(g)===-1;return{isMatch:I,score:I?0:1,indices:[0,A.length-1]}}})},{type:"fuzzy",multiRegex:/^"(.*)"$/,singleRegex:/^(.*)$/,create:(g,A={})=>{const I=new FCg(g,{location:A.location??cQ.location,threshold:A.threshold??cQ.threshold,distance:A.distance??cQ.distance,includeMatches:A.includeMatches??cQ.includeMatches,findAllMatches:A.findAllMatches??cQ.findAllMatches,minMatchCharLength:A.minMatchCharLength??cQ.minMatchCharLength,isCaseSensitive:A.isCaseSensitive??cQ.isCaseSensitive,ignoreDiacritics:A.ignoreDiacritics??cQ.ignoreDiacritics,ignoreLocation:A.ignoreLocation??cQ.ignoreLocation});return{type:"fuzzy",search(e){return I.searchIn(e)}}}}],NPI=UCg.length,Wko="\0",Vko="|";function jko(g){const A=[],I=g.length;let e=0;for(;e<I;){for(;e<I&&g[e]===" ";)e++;if(e>=I)break;let t=e;for(;t<I&&g[t]!==" "&&g[t]!=='"';)t++;if(t<I&&g[t]==='"'){for(t++;t<I;){if(g[t]==='"'){const o=t+1;if(o>=I||g[o]===" "){t++;break}if(g[o]==="$"&&(o+1>=I||g[o+1]===" ")){t+=2;break}}t++}A.push(g.substring(e,t)),e=t}else{for(;t<I&&g[t]!==" ";)t++;A.push(g.substring(e,t)),e=t}}return A}function xPI(g,A){const I=g.match(A);return I?I[1]:null}function zko(g,A={}){return g.replace(/\\\|/g,Wko).split(Vko).map(I=>{const e=jko(I.replace(/\u0000/g,"|").trim()).filter(o=>o&&!!o.trim()),t=[];for(let o=0,B=e.length;o<B;o+=1){const C=e[o];let Q=!1,i=-1;for(;!Q&&++i<NPI;){const E=UCg[i],n=xPI(C,E.multiRegex);n&&(t.push(E.create(n,A)),Q=!0)}if(!Q)for(i=-1;++i<NPI;){const E=UCg[i],n=xPI(C,E.singleRegex);if(n){t.push(E.create(n,A));break}}}return t})}var Xko=class{constructor(g,{isCaseSensitive:A=cQ.isCaseSensitive,ignoreDiacritics:I=cQ.ignoreDiacritics,includeMatches:e=cQ.includeMatches,minMatchCharLength:t=cQ.minMatchCharLength,ignoreLocation:o=cQ.ignoreLocation,findAllMatches:B=cQ.findAllMatches,location:C=cQ.location,threshold:Q=cQ.threshold,distance:i=cQ.distance}={}){this.query=null,this.options={isCaseSensitive:A,ignoreDiacritics:I,includeMatches:e,minMatchCharLength:t,findAllMatches:B,ignoreLocation:o,location:C,threshold:Q,distance:i},g=A?g:g.toLowerCase(),g=I?CoA(g):g,this.pattern=g,this.query=zko(this.pattern,this.options)}static condition(g,A){return A.useExtendedSearch}searchIn(g){const A=this.query;if(!A)return{isMatch:!1,score:1};const{includeMatches:I,isCaseSensitive:e,ignoreDiacritics:t}=this.options;g=e?g:g.toLowerCase(),g=t?CoA(g):g;let o=0;const B=[];let C=0,Q=!1;for(let i=0,E=A.length;i<E;i+=1){const n=A[i];B.length=0,o=0,Q=!1;for(let s=0,r=n.length;s<r;s+=1){const a=n[s],{isMatch:c,indices:h,score:l}=a.search(g);if(c)o+=1,C+=l,Oko(a.type)&&(Q=!0),I&&(Zko.has(a.type)?B.push(...h):B.push(h));else{C=0,o=0,B.length=0,Q=!1;break}}if(o){const s={isMatch:!0,score:C/o};return Q&&(s.hasInverse=!0),I&&(s.indices=xCg(B)),s}}return{isMatch:!1,score:1}}};const JCg=[];function PCg(...g){JCg.push(...g)}function gpA(g,A){for(let I=0,e=JCg.length;I<e;I+=1){const t=JCg[I];if(t.condition(g,A))return new t(g,A)}return new FCg(g,A)}const IpA={AND:"$and",OR:"$or"},KCg={PATH:"$path",PATTERN:"$val"},LCg=g=>!!(g[IpA.AND]||g[IpA.OR]),$ko=g=>!!g[KCg.PATH],AMo=g=>!NL(g)&&mPI(g)&&!LCg(g),FPI=g=>({[IpA.AND]:Object.keys(g).map(A=>({[A]:g[A]}))});function UPI(g,A,{auto:I=!0}={}){const e=t=>{if(dG(t)){const Q={keyId:null,pattern:t};return I&&(Q.searcher=gpA(t,A)),Q}const o=Object.keys(t),B=$ko(t);if(!B&&o.length>1&&!LCg(t))return e(FPI(t));if(AMo(t)){const Q=B?t[KCg.PATH]:o[0],i=B?t[KCg.PATTERN]:t[Q];if(!dG(i))throw new Error(xko(Q));const E={keyId:ApA(Q),pattern:i};return I&&(E.searcher=gpA(i,A)),E}const C={children:[],operator:o[0]};return o.forEach(Q=>{const i=t[Q];NL(i)&&i.forEach(E=>{C.children.push(e(E))})}),C};return LCg(g)||(g=FPI(g)),e(g)}function YCg(g,{ignoreFieldNorm:A=cQ.ignoreFieldNorm}){let I=1;return g.forEach(({key:e,norm:t,score:o})=>{const B=e?e.weight:null;I*=Math.pow(o===0&&B?Number.EPSILON:o,(B||1)*(A?1:t))}),I}function gMo(g,{ignoreFieldNorm:A=cQ.ignoreFieldNorm}){g.forEach(I=>{I.score=YCg(I.matches,{ignoreFieldNorm:A})})}var IMo=class{constructor(g,A){this.limit=g,this.heap=[],this.comparator=A}get size(){return this.heap.length}insert(g){this.size<this.limit?(this.heap.push(g),this._bubbleUp(this.size-1)):this.comparator(g,this.heap[0])<0&&(this.heap[0]=g,this._sinkDown(0))}extractSorted(){return this.heap.sort(this.comparator)}_bubbleUp(g){const A=this.heap;for(;g>0;){const I=g-1>>1;if(this.comparator(A[g],A[I])<=0)break;const e=A[g];A[g]=A[I],A[I]=e,g=I}}_sinkDown(g){const A=this.heap,I=A.length;let e=g;do{g=e;const t=2*g+1,o=2*g+2;if(t<I&&this.comparator(A[t],A[e])>0&&(e=t),o<I&&this.comparator(A[o],A[e])>0&&(e=o),e!==g){const B=A[g];A[g]=A[e],A[e]=B}}while(e!==g)}};function eMo(g){const A=[];return g.matches.forEach(I=>{if(!xS(I.indices)||!I.indices.length)return;const e={indices:I.indices,value:I.value};I.key&&(e.key=I.key.id),I.idx>-1&&(e.refIndex=I.idx),A.push(e)}),A}function tMo(g,A,{includeMatches:I=cQ.includeMatches,includeScore:e=cQ.includeScore}={}){return g.map(t=>{const{idx:o}=t,B={item:A[o],refIndex:o};return I&&(B.matches=eMo(t)),e&&(B.score=t.score),B})}const oMo=/[\p{L}\p{M}\p{N}_]+/gu,JPI=new WeakSet;function BMo(g){JPI.has(g)||(JPI.add(g),console.warn(`[Fuse] tokenize regex ${g} lacks the global flag; only the first match per text will be returned. Add the 'g' flag.`))}function CMo(g){if(typeof g=="function"){let A=!1;return I=>{const e=g(I);if(!A&&(A=!0,!Array.isArray(e)||e.some(t=>typeof t!="string")))throw new Error(`[Fuse] tokenize function must return string[]; received ${Array.isArray(e)?"array containing non-strings":typeof e}.`);return e}}return g instanceof RegExp?(g.global||BMo(g),A=>A.match(g)||[]):A=>A.match(oMo)||[]}function _Cg({isCaseSensitive:g=!1,ignoreDiacritics:A=!1,tokenize:I}={}){const e=CMo(I);return{tokenize(t){return g||(t=t.toLowerCase()),A&&(t=CoA(t)),e(t)}}}var QMo=class{static condition(g,A){return A.useTokenSearch}constructor(g,A){this.options=A,this.analyzer=_Cg({isCaseSensitive:A.isCaseSensitive,ignoreDiacritics:A.ignoreDiacritics,tokenize:A.tokenize});const I=this.analyzer.tokenize(g),{df:e,fieldCount:t}=A._invertedIndex;this.termSearchers=[],this.idfWeights=[];for(const o of I){this.termSearchers.push(new FCg(o,{location:A.location,threshold:A.threshold,distance:A.distance,includeMatches:A.includeMatches,findAllMatches:A.findAllMatches,minMatchCharLength:A.minMatchCharLength,isCaseSensitive:A.isCaseSensitive,ignoreDiacritics:A.ignoreDiacritics,ignoreLocation:!0}));const B=e.get(o)||0,C=Math.log(1+(t-B+.5)/(B+.5));this.idfWeights.push(C)}this.combineAll=A.tokenMatch==="all",this.numTerms=this.termSearchers.length,this.useMask=this.numTerms<=31}searchIn(g){if(!this.termSearchers.length)return{isMatch:!1,score:1};const A=[];let I=0,e=0,t=0,o=0;const B=this.combineAll&&!this.useMask?new Set:null;for(let i=0;i<this.termSearchers.length;i++){const E=this.termSearchers[i].searchIn(g),n=this.idfWeights[i];e+=n,E.isMatch&&(t++,I+=n*(1-E.score),E.indices&&A.push(...E.indices),this.combineAll&&(this.useMask?o|=1<<i:B.add(i)))}if(t===0)return{isMatch:!1,score:1};const C=e>0?1-I/e:0,Q={isMatch:!0,score:Math.max(.001,C)};return this.options.includeMatches&&A.length&&(Q.indices=xCg(A)),this.combineAll&&(this.useMask?Q.matchedMask=o:Q.matchedTerms=B,Q.termCount=this.numTerms),Q}};function bCg(g,A,I,e){const t=e.tokenize(A);if(!t.length)return;g.fieldCount++,g.docFieldCount.set(I,(g.docFieldCount.get(I)||0)+1);const o=new Set(t);let B=g.docTermFieldHits.get(I);B||(B=new Map,g.docTermFieldHits.set(I,B));for(const C of o)B.set(C,(B.get(C)||0)+1),g.df.set(C,(g.df.get(C)||0)+1)}function PPI(g,A,I,e){const{i:t,v:o,$:B}=A;if(o!==void 0){bCg(g,o,t,e);return}if(B)for(let C=0;C<I;C++){const Q=B[C];if(Q)if(Array.isArray(Q))for(const i of Q)bCg(g,i.v,t,e);else bCg(g,Q.v,t,e)}}function iMo(g,A,I){const e={fieldCount:0,df:new Map,docFieldCount:new Map,docTermFieldHits:new Map};for(const t of g)PPI(e,t,A,I);return e}function EMo(g,A,I,e){PPI(g,A,I,e)}function nMo(g,A){const I=g.docFieldCount.get(A);if(I===void 0)return;g.fieldCount-=I,g.docFieldCount.delete(A);const e=g.docTermFieldHits.get(A);if(e){for(const[t,o]of e){const B=(g.df.get(t)||0)-o;B<=0?g.df.delete(t):g.df.set(t,B)}g.docTermFieldHits.delete(A)}}function KPI(g,A){if(A.length===0)return;const I=Array.from(new Set(A)).sort((C,Q)=>C-Q);for(const C of I)nMo(g,C);const e=C=>{let Q=0,i=I.length;for(;Q<i;){const E=Q+i>>>1;I[E]<C?Q=E+1:i=E}return C-Q},t=I[0],o=new Map;for(const[C,Q]of g.docFieldCount)o.set(C>t?e(C):C,Q);g.docFieldCount=o;const B=new Map;for(const[C,Q]of g.docTermFieldHits)B.set(C>t?e(C):C,Q);g.docTermFieldHits=B}var xL=class{constructor(g,A,I){this.options={...cQ,...A},this.options.useExtendedSearch,this.options.useTokenSearch,this._keyStore=new Kko(this.options.keys),this._docs=g,this._myIndex=null,this._invertedIndex=null,this.setCollection(g,I),this._lastQuery=null,this._lastSearcher=null}_getSearcher(g){if(this._lastQuery===g)return this._lastSearcher;const A=gpA(g,this._invertedIndex?{...this.options,_invertedIndex:this._invertedIndex}:this.options);return this._lastQuery=g,this._lastSearcher=A,A}setCollection(g,A){if(this._docs=g,A&&!(A instanceof NCg))throw new Error(Nko);if(this._myIndex=A||fPI(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight}),this.options.useTokenSearch){const I=_Cg({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics,tokenize:this.options.tokenize});this._invertedIndex=iMo(this._myIndex.records,this._myIndex.keys.length,I)}this._invalidateSearcherCache()}add(g){if(!xS(g))return;this._docs.push(g);const A=this._myIndex.add(g,this._docs.length-1);if(this._invertedIndex&&A){const I=_Cg({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics,tokenize:this.options.tokenize});EMo(this._invertedIndex,A,this._myIndex.keys.length,I)}this._invalidateSearcherCache()}remove(g=()=>!1){const A=[],I=[];for(let e=0,t=this._docs.length;e<t;e+=1)g(this._docs[e],e)&&(A.push(this._docs[e]),I.push(e));if(I.length){this._invertedIndex&&KPI(this._invertedIndex,I);const e=new Set(I);this._docs=this._docs.filter((t,o)=>!e.has(o)),this._myIndex.removeAll(I),this._invalidateSearcherCache()}return A}removeAt(g){if(!Number.isInteger(g)||g<0||g>=this._docs.length)throw new Error(RCg);this._invertedIndex&&KPI(this._invertedIndex,[g]);const A=this._docs.splice(g,1)[0];return this._myIndex.removeAt(g),this._invalidateSearcherCache(),A}_invalidateSearcherCache(){this._lastQuery=null,this._lastSearcher=null}getIndex(){return this._myIndex}_normalizedKeys(){return this._myIndex.keys.map(g=>this._keyStore.get(g.id)||g)}search(g,A){const{limit:I=-1}=A||{},{includeMatches:e,includeScore:t,shouldSort:o,sortFn:B,ignoreFieldNorm:C}=this.options;if(dG(g)&&!g.trim()){let s=this._docs.map((r,a)=>({item:r,refIndex:a}));return XmA(I)&&I>-1&&(s=s.slice(0,I)),s}const Q=o&&XmA(I)&&I>0&&dG(g),i=B,E=(s,r)=>i(s,r)||s.idx-r.idx;let n;if(Q){const s=new IMo(I,E);dG(this._docs[0])?this._searchStringList(g,{heap:s,ignoreFieldNorm:C}):this._searchObjectList(g,{heap:s,ignoreFieldNorm:C}),n=s.extractSorted()}else n=dG(g)?dG(this._docs[0])?this._searchStringList(g):this._searchObjectList(g):this._searchLogical(g),gMo(n,{ignoreFieldNorm:C}),o&&n.sort(dG(g)?E:i),XmA(I)&&I>-1&&(n=n.slice(0,I));return tMo(n,this._docs,{includeMatches:e,includeScore:t})}_searchStringList(g,{heap:A,ignoreFieldNorm:I}={}){const e=this._getSearcher(g),t=this.options.useTokenSearch&&this.options.tokenMatch==="all",{records:o}=this._myIndex,B=A?null:[];return o.forEach(({v:C,i:Q,n:i})=>{if(!xS(C))return;const E=e.searchIn(C);if(E.isMatch){const n={score:E.score,value:C,norm:i,indices:E.indices};t&&(n.matchedMask=E.matchedMask,n.matchedTerms=E.matchedTerms,n.termCount=E.termCount);const s=[n];if(!t||this._coversAllTokens(s)){const r={item:C,idx:Q,matches:s};A?(r.score=YCg(r.matches,{ignoreFieldNorm:I}),A.insert(r)):B.push(r)}}}),B}_searchLogical(g){const A=UPI(g,this.options),I=this._normalizedKeys(),e=(C,Q,i)=>{if(!("children"in C)){const{keyId:r,searcher:a}=C;let c;return r===null?(c=[],I.forEach((h,l)=>{c.push(...this._findMatches({key:h,value:Q[l],searcher:a}))})):c=this._findMatches({key:this._keyStore.get(r),value:this._myIndex.getValueForItemAtKeyId(Q,r),searcher:a}),c&&c.length?[{idx:i,item:Q,matches:c}]:[]}const{children:E,operator:n}=C,s=[];for(let r=0,a=E.length;r<a;r+=1){const c=E[r],h=e(c,Q,i);if(h.length)s.push(...h);else if(n===IpA.AND)return[]}return s},t=this._myIndex.records,o=new Map,B=[];return t.forEach(({$:C,i:Q})=>{if(xS(C)){const i=e(A,C,Q);i.length&&(o.has(Q)||(o.set(Q,{idx:Q,item:C,matches:[]}),B.push(o.get(Q))),i.forEach(({matches:E})=>{o.get(Q).matches.push(...E)}))}}),B}_searchObjectList(g,{heap:A,ignoreFieldNorm:I}={}){const e=this._getSearcher(g),t=this.options.useTokenSearch&&this.options.tokenMatch==="all",{records:o}=this._myIndex,B=this._normalizedKeys(),C=A?null:[];return o.forEach(({$:Q,i})=>{if(!xS(Q))return;const E=[];let n=!1,s=!1;if(B.forEach((r,a)=>{const c=this._findMatches({key:r,value:Q[a],searcher:e});c.length?(E.push(...c),c[0].hasInverse&&(s=!0)):n=!0}),!(s&&n)&&E.length&&(!t||this._coversAllTokens(E))){const r={idx:i,item:Q,matches:E};A?(r.score=YCg(r.matches,{ignoreFieldNorm:I}),A.insert(r)):C.push(r)}}),C}_findMatches({key:g,value:A,searcher:I}){if(!xS(A))return[];const e=[];if(NL(A))A.forEach(({v:t,i:o,n:B})=>{if(!xS(t))return;const C=I.searchIn(t);if(C.isMatch){const Q={score:C.score,key:g,value:t,idx:o,norm:B,indices:C.indices,hasInverse:C.hasInverse};C.termCount!==void 0&&(Q.matchedMask=C.matchedMask,Q.matchedTerms=C.matchedTerms,Q.termCount=C.termCount),e.push(Q)}});else{const{v:t,n:o}=A,B=I.searchIn(t);if(B.isMatch){const C={score:B.score,key:g,value:t,norm:o,indices:B.indices,hasInverse:B.hasInverse};B.termCount!==void 0&&(C.matchedMask=B.matchedMask,C.matchedTerms=B.matchedTerms,C.termCount=B.termCount),e.push(C)}}return e}_coversAllTokens(g){const A=g.length?g[0].termCount:void 0;if(A===void 0)return!0;if(A<=31){let e=0;for(let t=0;t<g.length;t++)e|=g[t].matchedMask||0;return e===2**A-1}const I=new Set;for(let e=0;e<g.length;e++){const t=g[e].matchedTerms;if(t)for(const o of t)I.add(o)}return I.size===A}};xL.version="7.5.0",xL.createIndex=fPI,xL.parseIndex=bko,xL.config=cQ,xL.match=function(g,A,I){if(I&&I.useTokenSearch)throw new Error(Pko);return gpA(g,{...cQ,...I}).searchIn(A)},xL.parseQuery=UPI,PCg(Xko),PCg(QMo),xL.use=function(...g){g.forEach(A=>PCg(A))};var sMo=xL;const aMo="https://kicad-mod-cache.tscircuit.com";let HCg=null,QoA=null,vCg=null;const rMo=async()=>HCg||QoA||(QoA=fetch("https://kicad-mod-cache.tscircuit.com/kicad_files.json").then(g=>g.json()).then(g=>(HCg=g,QoA=null,g)),QoA),cMo=async(g,A=20)=>{const I=await rMo();return vCg||(vCg=new sMo(I)),vCg.search(g).slice(0,A).map(e=>e.item)},hMo=g=>{const A=g.replace(".pretty/","/").replace(".kicad_mod",""),I=`kicad:${A}`;return{path:g,qualifiedName:I,description:A}},lMo=g=>g.replace(/^\/+/,"").split("/").map(A=>encodeURIComponent(A)).join("/"),DMo=async g=>{const A=await fetch(`${aMo}/${lMo(g)}`);if(!A.ok)throw new Error(`KiCad footprint fetch failed: ${A.status}`);const I=await A.text(),{KicadFootprintToCircuitJsonConverter:e}=await NS("kicad-to-circuit-json"),t=new e;return t.addFile(g.split("/").pop()??"selected-footprint.kicad_mod",I),t.runUntilFinished(),t.getOutput()},LPI=g=>g?.source==="jlcpcb"||g?.source==="kicad",dMo=async(g,A)=>{if(g.source==="jlcpcb")return Mko(g.component.partNumber,A?.jlcpcb);if(g.source==="kicad")return DMo(g.footprint.path);throw new Error("Footprint preview is not available for this source")},yMo=({query:g,placeholder:A,isSearching:I,onQueryChange:e,onSubmit:t})=>{const o=z.useCallback(B=>{B.key==="Enter"&&(B.preventDefault(),t())},[t]);return T.jsxs("div",{className:"rf-flex rf-items-center rf-gap-2 rf-mt-4",children:[T.jsxs("div",{className:"rf-relative rf-flex-grow",children:[T.jsx(Pog,{className:"rf-absolute rf-left-2 rf-top-2.5 rf-h-4 rf-w-4 rf-text-muted-foreground"}),T.jsx(QCg,{placeholder:A,className:"rf-pl-8",spellCheck:!1,autoComplete:"off",value:g,onChange:B=>e(B.target.value),onKeyDown:o})]}),T.jsx(si,{onClick:t,disabled:I||g.trim().length<1,className:"sm:rf-px-4 rf-px-3",children:I?T.jsx(pS,{className:"rf-h-4 rf-w-4 rf-animate-spin"}):T.jsxs(T.Fragment,{children:[T.jsx(Pog,{className:"rf-h-4 rf-w-4 sm:rf-hidden"}),T.jsx("span",{className:"rf-hidden sm:rf-inline",children:"Search"})]})})]})},wMo=new Intl.NumberFormat("en-US",{style:"currency",currency:"USD"}),uMo=g=>wMo.format(g),YPI=g=>{switch(g.source){case"tscircuit.com":{const A=g.package;return`tscircuit-${A.package_id??`${A.org_owner_tscircuit_handle??"unknown"}-${A.unscoped_name??A.name??"package"}`}`}case"jlcpcb":return`jlc-${g.component.lcscId}`;case"kicad":return`kicad-${g.footprint.path}`;default:return"unknown"}},GMo=g=>{switch(g.source){case"tscircuit.com":return g.package.unscoped_name;case"jlcpcb":return g.component.isDirectLookup?g.component.partNumber:g.component.manufacturer;case"kicad":return g.footprint.qualifiedName}},mMo=g=>{switch(g.source){case"tscircuit.com":return g.package.description||(g.package.org_owner_tscircuit_handle?`Component by ${g.package.org_owner_tscircuit_handle}`:void 0);case"jlcpcb":return g.component.description;case"kicad":return g.footprint.description}},pMo=g=>{switch(g.source){case"tscircuit.com":return g.package.name;case"jlcpcb":return g.component.isDirectLookup?void 0:g.component.partNumber;case"kicad":return}},kMo=({results:g,selected:A,onSelect:I,onShowDetails:e})=>{const t=A?YPI(A):null;return T.jsx("div",{className:"rf-divide-y rf-w-full rf-overflow-hidden",children:g.map(o=>{const B=YPI(o),C=t===B,Q=GMo(o),i=mMo(o),E=pMo(o),n=o.source==="jlcpcb"?o.component.stock:null,s=o.source==="jlcpcb"?o.component.price:null,r=o.source==="jlcpcb"?o.component.isBasic:null,a=o.source==="jlcpcb"?o.component.isDirectLookup:!1;return T.jsxs("div",{className:`rf-p-3 rf-flex rf-flex-col sm:rf-grid sm:rf-grid-cols-[minmax(0,1fr)_auto] rf-items-start sm:rf-items-center rf-cursor-pointer hover:rf-bg-zinc-100 rf-gap-2 rf-overflow-hidden ${C?"rf-bg-zinc-100":""}`,onClick:()=>I(o),children:[T.jsxs("div",{className:"rf-min-w-0 rf-overflow-hidden rf-w-full",children:[T.jsxs("div",{className:"rf-flex rf-items-start rf-gap-2 rf-min-w-0",children:[T.jsxs("div",{className:"rf-font-medium rf-text-sm rf-truncate rf-flex-1 rf-min-w-0 rf-flex rf-items-center rf-gap-1.5",children:[Q,o.source==="jlcpcb"&&r!=null&&T.jsx("span",{className:`rf-text-xs rf-px-1.5 rf-py-0.5 rf-rounded rf-font-medium rf-flex-shrink-0 ${r?"rf-bg-green-100 rf-text-green-700":"rf-bg-orange-100 rf-text-orange-700"}`,children:r?"Basic":"Extended"}),a&&T.jsx("span",{className:"rf-text-xs rf-px-1.5 rf-py-0.5 rf-rounded rf-font-medium rf-flex-shrink-0 rf-bg-blue-100 rf-text-blue-700",children:"Direct lookup"}),o.source==="tscircuit.com"&&o.package.is_private&&T.jsx(Tro,{className:"rf-ml-1 rf-h-3 rf-w-3 rf-text-zinc-400 rf-flex-shrink-0"})]}),o.source==="jlcpcb"&&n!=null?T.jsxs("div",{className:"rf-text-xs rf-text-zinc-500 rf-font-medium rf-whitespace-nowrap rf-flex-shrink-0 sm:rf-hidden",children:[n.toLocaleString()," in stock"]}):null]}),T.jsxs("div",{className:"rf-text-xs rf-text-zinc-500 rf-truncate rf-w-full",children:[E?T.jsx("span",{className:"rf-mr-2",children:E}):null,i]})]}),T.jsxs("div",{children:[o.source==="tscircuit.com"&&e?T.jsx("div",{className:"rf-flex-shrink-0 rf-w-full sm:rf-w-auto",children:T.jsx(si,{variant:"outline",size:"sm",className:"rf-text-xs rf-w-full sm:rf-w-auto",onClick:c=>{c.stopPropagation(),e(o)},children:"See Details"})}):o.source==="jlcpcb"&&n!=null?T.jsxs("div",{className:"rf-hidden sm:rf-block rf-text-xs rf-text-zinc-500 rf-font-medium rf-whitespace-nowrap rf-flex-shrink-0",children:[n.toLocaleString()," in stock"]}):null,s!=null&&T.jsx("div",{className:"rf-hidden sm:rf-block rf-text-xs rf-text-zinc-500 rf-font-medium rf-whitespace-nowrap rf-flex-shrink-0 rf-text-right",children:uMo(s)})]})]},B)})})},MMo=({circuitJson:g,error:A,isLoading:I,height:e})=>T.jsx("section",{className:"rf-flex rf-min-w-0 rf-items-center rf-justify-center",style:{height:e},children:I?T.jsxs("div",{className:"rf-flex rf-w-full rf-items-center rf-justify-center rf-gap-2 rf-bg-zinc-950 rf-text-sm rf-text-zinc-300",style:{height:e},children:[T.jsx(pS,{className:"rf-h-4 rf-w-4 rf-animate-spin"}),"Loading preview..."]}):A?T.jsx("div",{className:"rf-flex rf-w-full rf-items-center rf-justify-center rf-bg-zinc-950 rf-p-4",style:{height:e},children:T.jsxs("div",{className:"rf-flex rf-max-w-[320px] rf-items-start rf-gap-2 rf-text-sm rf-text-zinc-300",children:[T.jsx(Uog,{className:"rf-mt-0.5 rf-h-4 rf-w-4 rf-flex-shrink-0"}),T.jsx("span",{children:A})]})}):g?T.jsx("div",{className:"rf-w-full rf-min-w-0 rf-overflow-hidden",children:T.jsx(Nog,{circuitJson:g,height:e,allowEditing:!1,clickToInteractEnabled:!1,focusOnHover:!1,disablePcbGroups:!0})}):T.jsx("div",{className:"rf-flex rf-w-full rf-items-center rf-justify-center rf-bg-zinc-950 rf-text-sm rf-text-zinc-300",style:{height:e},children:"No preview"})}),_PI={importComponentDialog:101,importComponentDetailsDialog:102},SMo=({packageResult:g,isOpen:A,onOpenChange:I,isLoading:e,details:t,previewTab:o,onPreviewTabChange:B,isSubmitting:C,onImport:Q})=>{const i=g?.package??null,E=i?.latest_pcb_preview_image_url,n=i?.latest_sch_preview_image_url,s=i?.latest_cad_preview_image_url,r=i?.unscoped_name?.split("/").pop()??i?.unscoped_name,a=i?.org_owner_tscircuit_handle??void 0,c=a?`https://tscircuit.com/${a}`:void 0,h=a&&r?`https://tscircuit.com/${a}/${r}`:void 0;return T.jsx(Ub,{open:A,onOpenChange:I,children:T.jsxs(SL,{showOverlay:!1,style:{width:"calc(100vw - 2rem)",zIndex:_PI.importComponentDetailsDialog},className:"rf-max-w-5xl no-scrollbar !rf-overflow-y-auto rf-max-h-[90vh] rf-overflow-hidden rf-flex rf-flex-col rf-rounded-sm",children:[T.jsx(fL,{className:"rf-pb-4 rf-border-b",children:T.jsx("div",{className:"rf-flex rf-items-start rf-justify-between rf-gap-4",children:T.jsxs("div",{className:"rf-flex-1 rf-min-w-0",children:[T.jsx(RL,{className:"rf-text-xl rf-font-semibold rf-truncate",children:r}),T.jsx(Jb,{children:i?.description})]})})}),T.jsxs("div",{className:"rf-flex-1 rf-overflow-y-auto rf-py-4 rf-space-y-6",children:[a?T.jsxs("div",{children:[T.jsx("span",{className:"rf-text-xs rf-font-medium rf-text-gray-500 rf-uppercase rf-tracking-wide",children:"Created by"}),T.jsx("div",{className:"rf-mt-1 rf-text-sm rf-font-medium",children:c?T.jsx("a",{href:c,target:"_blank",rel:"noopener noreferrer",className:"rf-text-black hover:rf-underline",children:a}):a})]}):null,(s||E||n)&&T.jsx(T.Fragment,{children:T.jsxs("div",{children:[T.jsx("h3",{className:"rf-text-lg rf-font-semibold rf-mb-4",children:"Preview"}),T.jsxs(KvA,{value:o,onValueChange:l=>B(l),children:[T.jsxs(FDA,{className:"rf-inline-flex rf-h-9 rf-items-center rf-justify-center rf-rounded-lg rf-bg-zinc-100 rf-p-1 rf-text-zinc-500 dark:rf-bg-zinc-800 dark:rf-text-zinc-400",children:[E&&T.jsx(Gx,{value:"pcb",children:"PCB"}),n&&T.jsx(Gx,{value:"schematic",children:"Schematic"}),s&&T.jsx(Gx,{value:"3d",children:"3D"})]}),T.jsxs("div",{className:"rf-mt-4",children:[T.jsx(Ny,{value:"pcb",className:"rf-border rf-rounded-lg rf-overflow-hidden rf-bg-gray-50",children:E?T.jsx("img",{src:E,alt:`${r??"package"} PCB preview`,className:"rf-w-full rf-h-full rf-object-contain rf-bg-white rf-p-4"}):null}),T.jsx(Ny,{value:"schematic",className:"rf-border rf-rounded-lg rf-overflow-hidden rf-bg-gray-50",children:n?T.jsx("img",{src:n,alt:`${r??"package"} schematic preview`,className:"rf-w-full rf-h-full rf-object-contain rf-bg-white rf-p-4"}):null}),T.jsx(Ny,{value:"3d",className:"rf-border rf-rounded-lg rf-overflow-hidden rf-bg-gray-50",children:s?T.jsx("img",{src:s,alt:`${r??"package"} 3D preview`,className:"rf-w-full rf-h-full rf-object-contain rf-bg-white rf-p-4"}):null})]})]})]})}),t?.ai_description?T.jsxs("section",{children:[T.jsx("h3",{className:"rf-text-lg rf-font-semibold rf-mb-3",children:"AI Description"}),T.jsx("div",{className:"rf-bg-gray-50 rf-border rf-border-gray-200 rf-rounded-lg rf-p-4",children:T.jsx("p",{className:"rf-text-sm rf-text-gray-700 rf-leading-relaxed",children:t.ai_description})})]}):null,t?.ai_usage_instructions?T.jsxs("section",{children:[T.jsx("h3",{className:"rf-text-lg rf-font-semibold rf-mb-3",children:"Usage Instructions"}),T.jsx("div",{className:"rf-bg-gray-50 rf-border rf-border-gray-200 rf-rounded-lg rf-p-4",children:T.jsx("p",{className:"rf-text-sm rf-text-gray-700 rf-leading-relaxed rf-whitespace-pre-wrap",children:t.ai_usage_instructions})})]}):null,e?T.jsxs("div",{className:"rf-flex rf-justify-center rf-items-center rf-gap-2 rf-text-gray-500",children:[T.jsx(pS,{className:"rf-h-4 rf-w-4 rf-animate-spin"}),T.jsx("span",{className:"rf-text-sm",children:"Loading package details..."})]}):null]}),T.jsxs(JO,{className:"rf-pt-4 rf-border-t rf-flex rf-flex-col sm:rf-flex-row rf-justify-between rf-gap-2",children:[T.jsx("div",{className:"rf-flex-1",children:h?T.jsxs(si,{variant:"outline",size:"sm",className:"rf-gap-2 rf-w-full sm:rf-w-auto",onClick:()=>window.open(h,"_blank"),children:[T.jsx(Kro,{className:"rf-h-4 rf-w-4"}),"View on tscircuit.com"]}):null}),T.jsxs("div",{className:"rf-flex rf-flex-col sm:rf-flex-row rf-gap-2",children:[T.jsx(si,{variant:"outline",onClick:()=>I(!1),className:"rf-order-2 sm:rf-order-1",children:"Close"}),T.jsx(si,{onClick:Q,disabled:C,className:"rf-bg-blue-600 hover:rf-bg-blue-700",children:C?T.jsx(pS,{className:"rf-h-4 rf-w-4 rf-animate-spin"}):"Import Component"})]})]})]})})},fMo=()=>{const[g,A]=z.useState(null),[I,e]=z.useState(!1),t=z.useCallback(async(B,C)=>{e(!0);try{const Q=await fetch(`https://api.tscircuit.com/packages/get?name=${encodeURIComponent(`${B}/${C}`)}`);if(!Q.ok)throw new Error(`Failed to load package details: ${Q.status}`);const i=await Q.json();A(i.package??null)}catch(Q){console.error("Failed to fetch package details",Q),A(null)}finally{e(!1)}},[]),o=z.useCallback(()=>{A(null),e(!1)},[]);return{details:g,isLoading:I,fetchDetails:t,reset:o}},RMo=(g,A)=>{const[I,e]=z.useState({circuitJson:null,error:null,isLoading:!1});return z.useEffect(()=>{if(!g||!LPI(g)){e({circuitJson:null,error:null,isLoading:!1});return}let t=!1;return e({circuitJson:null,error:null,isLoading:!0}),dMo(g,A).then(o=>{t||e({circuitJson:o,error:null,isLoading:!1})}).catch(o=>{t||e({circuitJson:null,error:o instanceof Error?o.message:"Failed to load footprint preview",isLoading:!1})}),()=>{t=!0}},[g,A]),I},NMo=async(g,A)=>{const I={"Content-Type":"application/json"};A&&(I.Authorization=`Bearer ${A}`);const e=await fetch("https://registry-api.tscircuit.com/packages/search",{method:"POST",headers:I,body:JSON.stringify({query:g})});if(!e.ok)throw new Error(`tscircuit registry error: ${e.status}`);return(await e.json()).packages??[]},xMo=({sessionToken:g})=>{const[A,I]=z.useState([]),[e,t]=z.useState(!1),[o,B]=z.useState(null),[C,Q]=z.useState(!1),i=z.useCallback(async n=>{const s=n.trim();if(!s)return[];t(!0),B(null);try{const a=(await NMo(s,g)).map(c=>({source:"tscircuit.com",package:c}));return I(a),a}catch(r){return console.error("Error searching tscircuit packages",r),I([]),B(r instanceof Error?r.message:"Failed to search tscircuit packages"),[]}finally{t(!1),Q(!0)}},[g]),E=z.useCallback(()=>{I([]),t(!1),B(null),Q(!1)},[]);return{results:A,isSearching:e,error:o,hasSearched:C,search:i,reset:E}},FMo=g=>{const A=/^C(\d+)$/i.exec(g.trim());if(!A)return null;const I=Number(A[1]);if(!Number.isSafeInteger(I))return null;const e=`C${A[1]}`;return{source:"jlcpcb",component:{lcscId:I,manufacturer:e,partNumber:e,description:"Import directly from EasyEDA; stock and availability are unknown",package:"",isDirectLookup:!0}}},bPI=(g,A)=>{const I=FMo(g);return I?A.some(t=>t.component.partNumber.toUpperCase()===I.component.partNumber)?A:[I,...A]:A},UMo=g=>{const A=g.trim();return/^C\d+/i.test(A)?A.replace(/^C/i,""):A},JMo=()=>{const[g,A]=z.useState([]),[I,e]=z.useState(!1),[t,o]=z.useState(null),[B,C]=z.useState(!1),Q=z.useCallback(async E=>{const n=UMo(E);if(!n)return[];e(!0),o(null);try{const s=await mko(n,10),r=bPI(E,s.map(a=>({source:"jlcpcb",component:pko(a)})));return A(r),r}catch(s){console.error("Error searching JLCPCB components",s);const r=bPI(E,[]);return A(r),o(r.length>0?null:s instanceof Error?s.message:"Failed to search JLCPCB components"),r}finally{e(!1),C(!0)}},[]),i=z.useCallback(()=>{A([]),e(!1),o(null),C(!1)},[]);return{results:g,isSearching:I,error:t,hasSearched:B,search:Q,reset:i}},PMo=()=>{const[g,A]=z.useState([]),[I,e]=z.useState(!1),[t,o]=z.useState(null),[B,C]=z.useState(!1),Q=z.useCallback(async E=>{const n=E.trim();if(!n)return[];e(!0),o(null);try{const r=(await cMo(n,20)).map(a=>({source:"kicad",footprint:hMo(a)}));return A(r),r}catch(s){return console.error("Error searching KiCad footprints",s),A([]),o(s instanceof Error?s.message:"Failed to search KiCad footprints"),[]}finally{e(!1),C(!0)}},[]),i=z.useCallback(()=>{A([]),e(!1),o(null),C(!1)},[]);return{results:g,isSearching:I,error:t,hasSearched:B,search:Q,reset:i}},KMo=({onTscircuitPackageSelected:g,onJlcpcbComponentTsxLoaded:A,onKicadStringSelected:I})=>{const e=[];return g&&e.push("tscircuit.com"),A&&e.push("jlcpcb"),I&&e.push("kicad"),e},LMo=({isOpen:g,onClose:A,jlcpcbProxyRequestHeaders:I,onKicadStringSelected:e,onTscircuitPackageSelected:t,onJlcpcbComponentTsxLoaded:o,jlcpcbProxyApiBase:B,tscircuitSessionToken:C})=>{eoA();const Q=z.useMemo(()=>KMo({onKicadStringSelected:e,onTscircuitPackageSelected:t,onJlcpcbComponentTsxLoaded:o}),[e,t,o]),i=Q.length>0,E=Q.length===1,[n,s]=z.useState(Q[0]??"tscircuit.com"),[r,a]=z.useState(""),[c,h]=z.useState(null),{results:l,isSearching:D,error:d,hasSearched:y,search:w,reset:u}=xMo({sessionToken:C}),{results:G,isSearching:m,error:p,hasSearched:k,search:S,reset:R}=JMo(),{results:x,isSearching:N,error:U,hasSearched:K,search:Y,reset:b}=PMo(),{details:q,isLoading:j,fetchDetails:W,reset:Z}=fMo(),[gA,tA]=z.useState(null),[IA,QA]=z.useState(!1),[nA,DA]=z.useState("pcb"),[CA,hA]=z.useState(null),[sA,cA]=z.useState(!1),SA=z.useMemo(()=>({jlcpcb:{headers:I,apiBase:B}}),[B,I]),{circuitJson:FA,error:aA,isLoading:xA}=RMo(c,SA),RA=LPI(c);z.useEffect(()=>{hA(null)},[c]);const NA=z.useCallback(()=>{u(),R(),b(),h(null)},[R,b,u]);z.useEffect(()=>{g||(NA(),a(""),QA(!1),tA(null),hA(null))},[g,NA]),z.useEffect(()=>{a(""),h(null),n==="tscircuit.com"?u():n==="jlcpcb"?R():n==="kicad"&&b()},[n,R,b,u]);const HA=kA=>{h(kA),tA(kA),DA("pcb"),QA(!0),Z();const OA=kA.package.org_owner_tscircuit_handle,$A=kA.package.unscoped_name;if(OA&&$A){const og=$A.split("/").pop()??$A;W(OA,og)}},PA=async()=>{r.trim()&&(h(null),n==="tscircuit.com"?await w(r):n==="jlcpcb"?await S(r):n==="kicad"&&await Y(r))},GA=async kA=>{try{if(hA(null),cA(!0),kA.source==="kicad"){if(!e)throw new Error("KiCad handler not provided");await e({result:kA,footprint:kA.footprint.qualifiedName})}else if(kA.source==="jlcpcb"){if(!o)throw new Error("JLCPCB handler not provided");const OA=await kko(kA.component.partNumber,{headers:I,apiBase:B});await o({result:kA,tsx:OA})}else if(kA.source==="tscircuit.com"){if(!t)throw new Error("tscircuit package handler not provided");const OA=kA.package.org_owner_tscircuit_handle,$A=kA.package.unscoped_name;if(!OA||!$A)throw new Error("Missing package metadata");const og=$A.split("/").pop()??$A,dg=`@tsci/${OA}.${og}`;await t({result:kA,fullPackageName:dg})}return!0}catch(OA){return console.error("Failed to import component",OA),hA(OA instanceof Error?OA.message:"Failed to import component"),!1}finally{cA(!1)}};let LA=[],dA=!1,bA=null,WA=!1;n==="tscircuit.com"?(LA=l,dA=D,bA=d,WA=y):n==="jlcpcb"?(LA=G,dA=m,bA=p,WA=k):n==="kicad"&&(LA=x,dA=N,bA=U,WA=K);const Qg=async()=>{if(!c)return;await GA(c)&&(A(),NA(),a(""))},YA=kA=>{kA||A()},uA=kA=>{QA(kA),kA||tA(null)};return T.jsxs(Ub,{open:g,onOpenChange:YA,children:[T.jsxs(SL,{style:{width:"calc(100vw - 2rem)",maxWidth:RA?"min(1120px, calc(100vw - 2rem))":"min(672px, calc(100vw - 2rem))",zIndex:_PI.importComponentDialog},className:"rf-rounded-sm rf-max-h-[90vh] rf-overflow-y-auto rf-overflow-x-hidden rf-flex rf-flex-col",children:[T.jsxs(fL,{children:[T.jsxs(RL,{className:"rf-text-lg sm:rf-text-xl",children:["Import ",E?zmA[n].label:""," ","Component"]}),T.jsx(Jb,{className:"rf-text-sm",children:i?"Search for components from available sources.":"Import options are disabled because no handlers were provided."})]}),i?T.jsxs(KvA,{value:n,onValueChange:kA=>s(kA),className:"rf-min-w-0 rf-w-full",children:[!E&&T.jsx(FDA,{className:"rf-flex rf-w-full rf-gap-2",children:Q.map(kA=>T.jsx(Gx,{value:kA,className:"rf-flex-1 rf-text-xs sm:rf-text-sm",children:zmA[kA].label},kA))}),T.jsxs("div",{className:"rf-min-w-0",style:RA?{display:"grid",gridTemplateColumns:"minmax(0, 1fr) minmax(360px, 0.95fr)",gap:"1.5rem",alignItems:"start"}:void 0,children:[T.jsxs("div",{className:"rf-min-w-0",children:[T.jsx(yMo,{query:r,placeholder:zmA[n].placeholder,isSearching:dA,onQueryChange:a,onSubmit:PA}),T.jsx("div",{className:"no-scrollbar rf-mt-4 rf-flex-1 rf-min-h-[200px] !rf-max-h-[40vh] !rf-overflow-y-auto rf-overflow-x-hidden rf-border rf-rounded-md rf-min-w-0",children:dA?T.jsxs("div",{className:"rf-p-8 rf-text-center rf-text-zinc-500",children:[T.jsx(pS,{className:"rf-h-8 rf-w-8 rf-animate-spin rf-mx-auto rf-mb-2"}),T.jsx("p",{children:"Searching..."})]}):LA.length>0?T.jsx(kMo,{results:LA,selected:c,onSelect:h,onShowDetails:n==="tscircuit.com"?HA:void 0}):T.jsx("div",{className:"rf-p-8 rf-text-center rf-text-zinc-500",children:bA?`Error: ${bA}`:WA?zmA[n].emptyMessage:"Enter a search term to find components"})})]}),RA?T.jsx("div",{className:"rf-mt-4",children:T.jsx(MMo,{circuitJson:FA,error:aA,isLoading:xA,height:325})}):null]})]}):null,CA?T.jsx("div",{className:"rf-text-sm rf-text-red-600 rf-mt-2",children:CA}):null,T.jsxs(JO,{className:"rf-flex rf-flex-col sm:rf-flex-row rf-gap-2",children:[T.jsx(si,{variant:"outline",onClick:A,className:"rf-order-2 sm:rf-order-1",children:"Cancel"}),T.jsx(si,{onClick:Qg,disabled:!c||sA,className:"rf-order-1 sm:rf-order-2",children:sA?T.jsx(pS,{className:"rf-h-4 rf-w-4 rf-animate-spin"}):"Import"})]})]}),T.jsx(SMo,{packageResult:gA,isOpen:IA,onOpenChange:uA,isLoading:j,details:q,previewTab:nA,onPreviewTabChange:kA=>DA(kA),isSubmitting:sA,onImport:()=>{gA&&GA(gA).then(kA=>{kA&&(QA(!1),A(),NA(),a(""))})}})]})},YMo=g=>{const A=g.match(/export const (\w+) =/);if(!A)throw new Error("Could not determine component name from TSX contents");return A[1]},HPI=g=>{const A=Uc(B=>B.pushEvent),I=Uc(B=>B.upsertFile),e=async({result:B,fullPackageName:C})=>{const i=B.package.unscoped_name??B.package.name;await KC.promise(A({event_type:"INSTALL_PACKAGE",full_package_name:C}),{loading:`Requesting install for "${i}"`,success:`Install requested for "${i}"`,error:E=>`Failed to request install: ${E instanceof Error?E.message:String(E)}`})},t=async({footprint:B})=>{await KC.promise(navigator.clipboard.writeText(B),{loading:`Copying "${B}"`,success:`Copied "${B}" to clipboard`,error:C=>`Failed to copy footprint: ${C instanceof Error?C.message:String(C)}`})},o=async({result:B,tsx:C})=>{const i=`imports/${YMo(C)}.tsx`;await KC.promise(I(i,C),{loading:`Importing ${B.component.partNumber}`,success:`Imported to "${i}"`,error:E=>`Failed to import component: ${E instanceof Error?E.message:String(E)}`})};return T.jsx(LMo,{...g,onTscircuitPackageSelected:e,onKicadStringSelected:t,onJlcpcbComponentTsxLoaded:o})};HPI.displayName="ImportComponentDialogForCli";const _Mo=async({circuitJson:g,projectName:A})=>{const{convertCircuitJsonToAltiumZip:I}=await Promise.resolve().then(()=>BTo),e=await I(g,A);return new Blob([new Uint8Array(e)],{type:"application/zip"})},bMo=async({circuitJson:g,projectName:A})=>{await KC.promise((async()=>{const I=await _Mo({circuitJson:g,projectName:A});Yk(I,{fileName:`${A}_altium_project.zip`})})(),{loading:"Generating Altium project...",success:"Altium project ZIP ready",error:I=>`Failed to generate Altium project: ${I instanceof Error?I.message:String(I)}`})};var TCg={exports:{}},vPI;function HMo(){return vPI||(vPI=1,(function(g,A){var I={env:{},version:""};(function(e){g.exports=e()})(function(){return(function e(t,o,B){function C(E,n){if(!o[E]){if(!t[E]){var s=typeof sU=="function"&&sU;if(!n&&s)return s(E,!0);if(Q)return Q(E,!0);var r=new Error("Cannot find module '"+E+"'");throw r.code="MODULE_NOT_FOUND",r}var a=o[E]={exports:{}};t[E][0].call(a.exports,function(c){var h=t[E][1][c];return C(h||c)},a,a.exports,e,t,o,B)}return o[E].exports}for(var Q=typeof sU=="function"&&sU,i=0;i<B.length;i++)C(B[i]);return C})({1:[function(e,t,o){var B=e("./utils"),C=e("./support"),Q="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";o.encode=function(i){for(var E,n,s,r,a,c,h,l=[],D=0,d=i.length,y=d,w=B.getTypeOf(i)!=="string";D<i.length;)y=d-D,s=w?(E=i[D++],n=D<d?i[D++]:0,D<d?i[D++]:0):(E=i.charCodeAt(D++),n=D<d?i.charCodeAt(D++):0,D<d?i.charCodeAt(D++):0),r=E>>2,a=(3&E)<<4|n>>4,c=1<y?(15&n)<<2|s>>6:64,h=2<y?63&s:64,l.push(Q.charAt(r)+Q.charAt(a)+Q.charAt(c)+Q.charAt(h));return l.join("")},o.decode=function(i){var E,n,s,r,a,c,h=0,l=0,D="data:";if(i.substr(0,D.length)===D)throw new Error("Invalid base64 input, it looks like a data url.");var d,y=3*(i=i.replace(/[^A-Za-z0-9+/=]/g,"")).length/4;if(i.charAt(i.length-1)===Q.charAt(64)&&y--,i.charAt(i.length-2)===Q.charAt(64)&&y--,y%1!=0)throw new Error("Invalid base64 input, bad content length.");for(d=C.uint8array?new Uint8Array(0|y):new Array(0|y);h<i.length;)E=Q.indexOf(i.charAt(h++))<<2|(r=Q.indexOf(i.charAt(h++)))>>4,n=(15&r)<<4|(a=Q.indexOf(i.charAt(h++)))>>2,s=(3&a)<<6|(c=Q.indexOf(i.charAt(h++))),d[l++]=E,a!==64&&(d[l++]=n),c!==64&&(d[l++]=s);return d}},{"./support":30,"./utils":32}],2:[function(e,t,o){var B=e("./external"),C=e("./stream/DataWorker"),Q=e("./stream/Crc32Probe"),i=e("./stream/DataLengthProbe");function E(n,s,r,a,c){this.compressedSize=n,this.uncompressedSize=s,this.crc32=r,this.compression=a,this.compressedContent=c}E.prototype={getContentWorker:function(){var n=new C(B.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new i("data_length")),s=this;return n.on("end",function(){if(this.streamInfo.data_length!==s.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),n},getCompressedWorker:function(){return new C(B.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},E.createWorkerFrom=function(n,s,r){return n.pipe(new Q).pipe(new i("uncompressedSize")).pipe(s.compressWorker(r)).pipe(new i("compressedSize")).withStreamInfo("compression",s)},t.exports=E},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(e,t,o){var B=e("./stream/GenericWorker");o.STORE={magic:"\0\0",compressWorker:function(){return new B("STORE compression")},uncompressWorker:function(){return new B("STORE decompression")}},o.DEFLATE=e("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(e,t,o){var B=e("./utils"),C=(function(){for(var Q,i=[],E=0;E<256;E++){Q=E;for(var n=0;n<8;n++)Q=1&Q?3988292384^Q>>>1:Q>>>1;i[E]=Q}return i})();t.exports=function(Q,i){return Q!==void 0&&Q.length?B.getTypeOf(Q)!=="string"?(function(E,n,s,r){var a=C,c=r+s;E^=-1;for(var h=r;h<c;h++)E=E>>>8^a[255&(E^n[h])];return-1^E})(0|i,Q,Q.length,0):(function(E,n,s,r){var a=C,c=r+s;E^=-1;for(var h=r;h<c;h++)E=E>>>8^a[255&(E^n.charCodeAt(h))];return-1^E})(0|i,Q,Q.length,0):0}},{"./utils":32}],5:[function(e,t,o){o.base64=!1,o.binary=!1,o.dir=!1,o.createFolders=!0,o.date=null,o.compression=null,o.compressionOptions=null,o.comment=null,o.unixPermissions=null,o.dosPermissions=null},{}],6:[function(e,t,o){var B=null;B=typeof Promise<"u"?Promise:e("lie"),t.exports={Promise:B}},{lie:37}],7:[function(e,t,o){var B=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Uint32Array<"u",C=e("pako"),Q=e("./utils"),i=e("./stream/GenericWorker"),E=B?"uint8array":"array";function n(s,r){i.call(this,"FlateWorker/"+s),this._pako=null,this._pakoAction=s,this._pakoOptions=r,this.meta={}}o.magic="\b\0",Q.inherits(n,i),n.prototype.processChunk=function(s){this.meta=s.meta,this._pako===null&&this._createPako(),this._pako.push(Q.transformTo(E,s.data),!1)},n.prototype.flush=function(){i.prototype.flush.call(this),this._pako===null&&this._createPako(),this._pako.push([],!0)},n.prototype.cleanUp=function(){i.prototype.cleanUp.call(this),this._pako=null},n.prototype._createPako=function(){this._pako=new C[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var s=this;this._pako.onData=function(r){s.push({data:r,meta:s.meta})}},o.compressWorker=function(s){return new n("Deflate",s)},o.uncompressWorker=function(){return new n("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(e,t,o){function B(a,c){var h,l="";for(h=0;h<c;h++)l+=String.fromCharCode(255&a),a>>>=8;return l}function C(a,c,h,l,D,d){var y,w,u=a.file,G=a.compression,m=d!==E.utf8encode,p=Q.transformTo("string",d(u.name)),k=Q.transformTo("string",E.utf8encode(u.name)),S=u.comment,R=Q.transformTo("string",d(S)),x=Q.transformTo("string",E.utf8encode(S)),N=k.length!==u.name.length,U=x.length!==S.length,K="",Y="",b="",q=u.dir,j=u.date,W={crc32:0,compressedSize:0,uncompressedSize:0};c&&!h||(W.crc32=a.crc32,W.compressedSize=a.compressedSize,W.uncompressedSize=a.uncompressedSize);var Z=0;c&&(Z|=8),m||!N&&!U||(Z|=2048);var gA=0,tA=0;q&&(gA|=16),D==="UNIX"?(tA=798,gA|=(function(QA,nA){var DA=QA;return QA||(DA=nA?16893:33204),(65535&DA)<<16})(u.unixPermissions,q)):(tA=20,gA|=(function(QA){return 63&(QA||0)})(u.dosPermissions)),y=j.getUTCHours(),y<<=6,y|=j.getUTCMinutes(),y<<=5,y|=j.getUTCSeconds()/2,w=j.getUTCFullYear()-1980,w<<=4,w|=j.getUTCMonth()+1,w<<=5,w|=j.getUTCDate(),N&&(Y=B(1,1)+B(n(p),4)+k,K+="up"+B(Y.length,2)+Y),U&&(b=B(1,1)+B(n(R),4)+x,K+="uc"+B(b.length,2)+b);var IA="";return IA+=`
5671
5671
  \0`,IA+=B(Z,2),IA+=G.magic,IA+=B(y,2),IA+=B(w,2),IA+=B(W.crc32,4),IA+=B(W.compressedSize,4),IA+=B(W.uncompressedSize,4),IA+=B(p.length,2),IA+=B(K.length,2),{fileRecord:s.LOCAL_FILE_HEADER+IA+p+K,dirRecord:s.CENTRAL_FILE_HEADER+B(tA,2)+IA+B(R.length,2)+"\0\0\0\0"+B(gA,4)+B(l,4)+p+K+R}}var Q=e("../utils"),i=e("../stream/GenericWorker"),E=e("../utf8"),n=e("../crc32"),s=e("../signature");function r(a,c,h,l){i.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=c,this.zipPlatform=h,this.encodeFileName=l,this.streamFiles=a,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}Q.inherits(r,i),r.prototype.push=function(a){var c=a.meta.percent||0,h=this.entriesCount,l=this._sources.length;this.accumulate?this.contentBuffer.push(a):(this.bytesWritten+=a.data.length,i.prototype.push.call(this,{data:a.data,meta:{currentFile:this.currentFile,percent:h?(c+100*(h-l-1))/h:100}}))},r.prototype.openedSource=function(a){this.currentSourceOffset=this.bytesWritten,this.currentFile=a.file.name;var c=this.streamFiles&&!a.file.dir;if(c){var h=C(a,c,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:h.fileRecord,meta:{percent:0}})}else this.accumulate=!0},r.prototype.closedSource=function(a){this.accumulate=!1;var c=this.streamFiles&&!a.file.dir,h=C(a,c,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(h.dirRecord),c)this.push({data:(function(l){return s.DATA_DESCRIPTOR+B(l.crc32,4)+B(l.compressedSize,4)+B(l.uncompressedSize,4)})(a),meta:{percent:100}});else for(this.push({data:h.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},r.prototype.flush=function(){for(var a=this.bytesWritten,c=0;c<this.dirRecords.length;c++)this.push({data:this.dirRecords[c],meta:{percent:100}});var h=this.bytesWritten-a,l=(function(D,d,y,w,u){var G=Q.transformTo("string",u(w));return s.CENTRAL_DIRECTORY_END+"\0\0\0\0"+B(D,2)+B(D,2)+B(d,4)+B(y,4)+B(G.length,2)+G})(this.dirRecords.length,h,a,this.zipComment,this.encodeFileName);this.push({data:l,meta:{percent:100}})},r.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},r.prototype.registerPrevious=function(a){this._sources.push(a);var c=this;return a.on("data",function(h){c.processChunk(h)}),a.on("end",function(){c.closedSource(c.previous.streamInfo),c._sources.length?c.prepareNextSource():c.end()}),a.on("error",function(h){c.error(h)}),this},r.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},r.prototype.error=function(a){var c=this._sources;if(!i.prototype.error.call(this,a))return!1;for(var h=0;h<c.length;h++)try{c[h].error(a)}catch{}return!0},r.prototype.lock=function(){i.prototype.lock.call(this);for(var a=this._sources,c=0;c<a.length;c++)a[c].lock()},t.exports=r},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(e,t,o){var B=e("../compressions"),C=e("./ZipFileWorker");o.generateWorker=function(Q,i,E){var n=new C(i.streamFiles,E,i.platform,i.encodeFileName),s=0;try{Q.forEach(function(r,a){s++;var c=(function(d,y){var w=d||y,u=B[w];if(!u)throw new Error(w+" is not a valid compression method !");return u})(a.options.compression,i.compression),h=a.options.compressionOptions||i.compressionOptions||{},l=a.dir,D=a.date;a._compressWorker(c,h).withStreamInfo("file",{name:r,dir:l,date:D,comment:a.comment||"",unixPermissions:a.unixPermissions,dosPermissions:a.dosPermissions}).pipe(n)}),n.entriesCount=s}catch(r){n.error(r)}return n}},{"../compressions":3,"./ZipFileWorker":8}],10:[function(e,t,o){function B(){if(!(this instanceof B))return new B;if(arguments.length)throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.");this.files=Object.create(null),this.comment=null,this.root="",this.clone=function(){var C=new B;for(var Q in this)typeof this[Q]!="function"&&(C[Q]=this[Q]);return C}}(B.prototype=e("./object")).loadAsync=e("./load"),B.support=e("./support"),B.defaults=e("./defaults"),B.version="3.10.2",B.loadAsync=function(C,Q){return new B().loadAsync(C,Q)},B.external=e("./external"),t.exports=B},{"./defaults":5,"./external":6,"./load":11,"./object":15,"./support":30}],11:[function(e,t,o){var B=e("./utils"),C=e("./external"),Q=e("./utf8"),i=e("./zipEntries"),E=e("./stream/Crc32Probe"),n=e("./nodejsUtils");function s(r){return new C.Promise(function(a,c){var h=r.decompressed.getContentWorker().pipe(new E);h.on("error",function(l){c(l)}).on("end",function(){h.streamInfo.crc32!==r.decompressed.crc32?c(new Error("Corrupted zip : CRC32 mismatch")):a()}).resume()})}t.exports=function(r,a){var c=this;return a=B.extend(a||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:Q.utf8decode}),n.isNode&&n.isStream(r)?C.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")):B.prepareContent("the loaded zip file",r,!0,a.optimizedBinaryString,a.base64).then(function(h){var l=new i(a);return l.load(h),l}).then(function(h){var l=[C.Promise.resolve(h)],D=h.files;if(a.checkCRC32)for(var d=0;d<D.length;d++)l.push(s(D[d]));return C.Promise.all(l)}).then(function(h){for(var l=h.shift(),D=l.files,d=0;d<D.length;d++){var y=D[d],w=y.fileNameStr,u=B.resolve(y.fileNameStr);c.file(u,y.decompressed,{binary:!0,optimizedBinaryString:!0,date:y.date,dir:y.dir,comment:y.fileCommentStr.length?y.fileCommentStr:null,unixPermissions:y.unixPermissions,dosPermissions:y.dosPermissions,createFolders:a.createFolders}),y.dir||(c.file(u).unsafeOriginalName=w)}return l.zipComment.length&&(c.comment=l.zipComment),c})}},{"./external":6,"./nodejsUtils":14,"./stream/Crc32Probe":25,"./utf8":31,"./utils":32,"./zipEntries":33}],12:[function(e,t,o){var B=e("../utils"),C=e("../stream/GenericWorker");function Q(i,E){C.call(this,"Nodejs stream input adapter for "+i),this._upstreamEnded=!1,this._bindStream(E)}B.inherits(Q,C),Q.prototype._bindStream=function(i){var E=this;(this._stream=i).pause(),i.on("data",function(n){E.push({data:n,meta:{percent:0}})}).on("error",function(n){E.isPaused?this.generatedError=n:E.error(n)}).on("end",function(){E.isPaused?E._upstreamEnded=!0:E.end()})},Q.prototype.pause=function(){return!!C.prototype.pause.call(this)&&(this._stream.pause(),!0)},Q.prototype.resume=function(){return!!C.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},t.exports=Q},{"../stream/GenericWorker":28,"../utils":32}],13:[function(e,t,o){var B=e("readable-stream").Readable;function C(Q,i,E){B.call(this,i),this._helper=Q;var n=this;Q.on("data",function(s,r){n.push(s)||n._helper.pause(),E&&E(r)}).on("error",function(s){n.emit("error",s)}).on("end",function(){n.push(null)})}e("../utils").inherits(C,B),C.prototype._read=function(){this._helper.resume()},t.exports=C},{"../utils":32,"readable-stream":16}],14:[function(e,t,o){t.exports={isNode:typeof Buffer<"u",newBufferFrom:function(B,C){if(Buffer.from&&Buffer.from!==Uint8Array.from)return Buffer.from(B,C);if(typeof B=="number")throw new Error('The "data" argument must not be a number');return new Buffer(B,C)},allocBuffer:function(B){if(Buffer.alloc)return Buffer.alloc(B);var C=new Buffer(B);return C.fill(0),C},isBuffer:function(B){return Buffer.isBuffer(B)},isStream:function(B){return B&&typeof B.on=="function"&&typeof B.pause=="function"&&typeof B.resume=="function"}}},{}],15:[function(e,t,o){function B(u,G,m){var p,k=Q.getTypeOf(G),S=Q.extend(m||{},n);S.date=S.date||new Date,S.compression!==null&&(S.compression=S.compression.toUpperCase()),typeof S.unixPermissions=="string"&&(S.unixPermissions=parseInt(S.unixPermissions,8)),S.unixPermissions&&16384&S.unixPermissions&&(S.dir=!0),S.dosPermissions&&16&S.dosPermissions&&(S.dir=!0),S.dir&&(u=D(u)),S.createFolders&&(p=l(u))&&d.call(this,p,!0);var R=k==="string"&&S.binary===!1&&S.base64===!1;m&&m.binary!==void 0||(S.binary=!R),(G instanceof s&&G.uncompressedSize===0||S.dir||!G||G.length===0)&&(S.base64=!1,S.binary=!0,G="",S.compression="STORE",k="string");var x=null;x=G instanceof s||G instanceof i?G:c.isNode&&c.isStream(G)?new h(u,G):Q.prepareContent(u,G,S.binary,S.optimizedBinaryString,S.base64);var N=new r(u,x,S);this.files[u]=N}var C=e("./utf8"),Q=e("./utils"),i=e("./stream/GenericWorker"),E=e("./stream/StreamHelper"),n=e("./defaults"),s=e("./compressedObject"),r=e("./zipObject"),a=e("./generate"),c=e("./nodejsUtils"),h=e("./nodejs/NodejsStreamInputAdapter"),l=function(u){u.slice(-1)==="/"&&(u=u.substring(0,u.length-1));var G=u.lastIndexOf("/");return 0<G?u.substring(0,G):""},D=function(u){return u.slice(-1)!=="/"&&(u+="/"),u},d=function(u,G){return G=G!==void 0?G:n.createFolders,u=D(u),this.files[u]||B.call(this,u,null,{dir:!0,createFolders:G}),this.files[u]};function y(u){return Object.prototype.toString.call(u)==="[object RegExp]"}var w={load:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},forEach:function(u){var G,m,p;for(G in this.files)p=this.files[G],(m=G.slice(this.root.length,G.length))&&G.slice(0,this.root.length)===this.root&&u(m,p)},filter:function(u){var G=[];return this.forEach(function(m,p){u(m,p)&&G.push(p)}),G},file:function(u,G,m){if(arguments.length!==1)return u=this.root+u,B.call(this,u,G,m),this;if(y(u)){var p=u;return this.filter(function(S,R){return!R.dir&&p.test(S)})}var k=this.files[this.root+u];return k&&!k.dir?k:null},folder:function(u){if(!u)return this;if(y(u))return this.filter(function(k,S){return S.dir&&u.test(k)});var G=this.root+u,m=d.call(this,G),p=this.clone();return p.root=m.name,p},remove:function(u){u=this.root+u;var G=this.files[u];if(G||(u.slice(-1)!=="/"&&(u+="/"),G=this.files[u]),G&&!G.dir)delete this.files[u];else for(var m=this.filter(function(k,S){return S.name.slice(0,u.length)===u}),p=0;p<m.length;p++)delete this.files[m[p].name];return this},generate:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},generateInternalStream:function(u){var G,m={};try{if((m=Q.extend(u||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:C.utf8encode})).type=m.type.toLowerCase(),m.compression=m.compression.toUpperCase(),m.type==="binarystring"&&(m.type="string"),!m.type)throw new Error("No output type specified.");Q.checkSupport(m.type),m.platform!=="darwin"&&m.platform!=="freebsd"&&m.platform!=="linux"&&m.platform!=="sunos"||(m.platform="UNIX"),m.platform==="win32"&&(m.platform="DOS");var p=m.comment||this.comment||"";G=a.generateWorker(this,m,p)}catch(k){(G=new i("error")).error(k)}return new E(G,m.type||"string",m.mimeType)},generateAsync:function(u,G){return this.generateInternalStream(u).accumulate(G)},generateNodeStream:function(u,G){return(u=u||{}).type||(u.type="nodebuffer"),this.generateInternalStream(u).toNodejsStream(G)}};t.exports=w},{"./compressedObject":2,"./defaults":5,"./generate":9,"./nodejs/NodejsStreamInputAdapter":12,"./nodejsUtils":14,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31,"./utils":32,"./zipObject":35}],16:[function(e,t,o){t.exports=e("stream")},{stream:void 0}],17:[function(e,t,o){var B=e("./DataReader");function C(Q){B.call(this,Q);for(var i=0;i<this.data.length;i++)Q[i]=255&Q[i]}e("../utils").inherits(C,B),C.prototype.byteAt=function(Q){return this.data[this.zero+Q]},C.prototype.lastIndexOfSignature=function(Q){for(var i=Q.charCodeAt(0),E=Q.charCodeAt(1),n=Q.charCodeAt(2),s=Q.charCodeAt(3),r=this.length-4;0<=r;--r)if(this.data[r]===i&&this.data[r+1]===E&&this.data[r+2]===n&&this.data[r+3]===s)return r-this.zero;return-1},C.prototype.readAndCheckSignature=function(Q){var i=Q.charCodeAt(0),E=Q.charCodeAt(1),n=Q.charCodeAt(2),s=Q.charCodeAt(3),r=this.readData(4);return i===r[0]&&E===r[1]&&n===r[2]&&s===r[3]},C.prototype.readData=function(Q){if(this.checkOffset(Q),Q===0)return[];var i=this.data.slice(this.zero+this.index,this.zero+this.index+Q);return this.index+=Q,i},t.exports=C},{"../utils":32,"./DataReader":18}],18:[function(e,t,o){var B=e("../utils");function C(Q){this.data=Q,this.length=Q.length,this.index=0,this.zero=0}C.prototype={checkOffset:function(Q){this.checkIndex(this.index+Q)},checkIndex:function(Q){if(this.length<this.zero+Q||Q<0)throw new Error("End of data reached (data length = "+this.length+", asked index = "+Q+"). Corrupted zip ?")},setIndex:function(Q){this.checkIndex(Q),this.index=Q},skip:function(Q){this.setIndex(this.index+Q)},byteAt:function(){},readInt:function(Q){var i,E=0;for(this.checkOffset(Q),i=this.index+Q-1;i>=this.index;i--)E=(E<<8)+this.byteAt(i);return this.index+=Q,E},readString:function(Q){return B.transformTo("string",this.readData(Q))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var Q=this.readInt(4);return new Date(Date.UTC(1980+(Q>>25&127),(Q>>21&15)-1,Q>>16&31,Q>>11&31,Q>>5&63,(31&Q)<<1))}},t.exports=C},{"../utils":32}],19:[function(e,t,o){var B=e("./Uint8ArrayReader");function C(Q){B.call(this,Q)}e("../utils").inherits(C,B),C.prototype.readData=function(Q){this.checkOffset(Q);var i=this.data.slice(this.zero+this.index,this.zero+this.index+Q);return this.index+=Q,i},t.exports=C},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(e,t,o){var B=e("./DataReader");function C(Q){B.call(this,Q)}e("../utils").inherits(C,B),C.prototype.byteAt=function(Q){return this.data.charCodeAt(this.zero+Q)},C.prototype.lastIndexOfSignature=function(Q){return this.data.lastIndexOf(Q)-this.zero},C.prototype.readAndCheckSignature=function(Q){return Q===this.readData(4)},C.prototype.readData=function(Q){this.checkOffset(Q);var i=this.data.slice(this.zero+this.index,this.zero+this.index+Q);return this.index+=Q,i},t.exports=C},{"../utils":32,"./DataReader":18}],21:[function(e,t,o){var B=e("./ArrayReader");function C(Q){B.call(this,Q)}e("../utils").inherits(C,B),C.prototype.readData=function(Q){if(this.checkOffset(Q),Q===0)return new Uint8Array(0);var i=this.data.subarray(this.zero+this.index,this.zero+this.index+Q);return this.index+=Q,i},t.exports=C},{"../utils":32,"./ArrayReader":17}],22:[function(e,t,o){var B=e("../utils"),C=e("../support"),Q=e("./ArrayReader"),i=e("./StringReader"),E=e("./NodeBufferReader"),n=e("./Uint8ArrayReader");t.exports=function(s){var r=B.getTypeOf(s);return B.checkSupport(r),r!=="string"||C.uint8array?r==="nodebuffer"?new E(s):C.uint8array?new n(B.transformTo("uint8array",s)):new Q(B.transformTo("array",s)):new i(s)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(e,t,o){o.LOCAL_FILE_HEADER="PK",o.CENTRAL_FILE_HEADER="PK",o.CENTRAL_DIRECTORY_END="PK",o.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK\x07",o.ZIP64_CENTRAL_DIRECTORY_END="PK",o.DATA_DESCRIPTOR="PK\x07\b"},{}],24:[function(e,t,o){var B=e("./GenericWorker"),C=e("../utils");function Q(i){B.call(this,"ConvertWorker to "+i),this.destType=i}C.inherits(Q,B),Q.prototype.processChunk=function(i){this.push({data:C.transformTo(this.destType,i.data),meta:i.meta})},t.exports=Q},{"../utils":32,"./GenericWorker":28}],25:[function(e,t,o){var B=e("./GenericWorker"),C=e("../crc32");function Q(){B.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}e("../utils").inherits(Q,B),Q.prototype.processChunk=function(i){this.streamInfo.crc32=C(i.data,this.streamInfo.crc32||0),this.push(i)},t.exports=Q},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(e,t,o){var B=e("../utils"),C=e("./GenericWorker");function Q(i){C.call(this,"DataLengthProbe for "+i),this.propName=i,this.withStreamInfo(i,0)}B.inherits(Q,C),Q.prototype.processChunk=function(i){if(i){var E=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=E+i.data.length}C.prototype.processChunk.call(this,i)},t.exports=Q},{"../utils":32,"./GenericWorker":28}],27:[function(e,t,o){var B=e("../utils"),C=e("./GenericWorker");function Q(i){C.call(this,"DataWorker");var E=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,i.then(function(n){E.dataIsReady=!0,E.data=n,E.max=n&&n.length||0,E.type=B.getTypeOf(n),E.isPaused||E._tickAndRepeat()},function(n){E.error(n)})}B.inherits(Q,C),Q.prototype.cleanUp=function(){C.prototype.cleanUp.call(this),this.data=null},Q.prototype.resume=function(){return!!C.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,B.delay(this._tickAndRepeat,[],this)),!0)},Q.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(B.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},Q.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var i=null,E=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":i=this.data.substring(this.index,E);break;case"uint8array":i=this.data.subarray(this.index,E);break;case"array":case"nodebuffer":i=this.data.slice(this.index,E)}return this.index=E,this.push({data:i,meta:{percent:this.max?this.index/this.max*100:0}})},t.exports=Q},{"../utils":32,"./GenericWorker":28}],28:[function(e,t,o){function B(C){this.name=C||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}B.prototype={push:function(C){this.emit("data",C)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(C){this.emit("error",C)}return!0},error:function(C){return!this.isFinished&&(this.isPaused?this.generatedError=C:(this.isFinished=!0,this.emit("error",C),this.previous&&this.previous.error(C),this.cleanUp()),!0)},on:function(C,Q){return this._listeners[C].push(Q),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(C,Q){if(this._listeners[C])for(var i=0;i<this._listeners[C].length;i++)this._listeners[C][i].call(this,Q)},pipe:function(C){return C.registerPrevious(this)},registerPrevious:function(C){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.streamInfo=C.streamInfo,this.mergeStreamInfo(),this.previous=C;var Q=this;return C.on("data",function(i){Q.processChunk(i)}),C.on("end",function(){Q.end()}),C.on("error",function(i){Q.error(i)}),this},pause:function(){return!this.isPaused&&!this.isFinished&&(this.isPaused=!0,this.previous&&this.previous.pause(),!0)},resume:function(){if(!this.isPaused||this.isFinished)return!1;var C=this.isPaused=!1;return this.generatedError&&(this.error(this.generatedError),C=!0),this.previous&&this.previous.resume(),!C},flush:function(){},processChunk:function(C){this.push(C)},withStreamInfo:function(C,Q){return this.extraStreamInfo[C]=Q,this.mergeStreamInfo(),this},mergeStreamInfo:function(){for(var C in this.extraStreamInfo)Object.prototype.hasOwnProperty.call(this.extraStreamInfo,C)&&(this.streamInfo[C]=this.extraStreamInfo[C])},lock:function(){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.isLocked=!0,this.previous&&this.previous.lock()},toString:function(){var C="Worker "+this.name;return this.previous?this.previous+" -> "+C:C}},t.exports=B},{}],29:[function(e,t,o){var B=e("../utils"),C=e("./ConvertWorker"),Q=e("./GenericWorker"),i=e("../base64"),E=e("../support"),n=e("../external"),s=null;if(E.nodestream)try{s=e("../nodejs/NodejsStreamOutputAdapter")}catch{}function r(c,h){return new n.Promise(function(l,D){var d=[],y=c._internalType,w=c._outputType,u=c._mimeType;c.on("data",function(G,m){d.push(G),h&&h(m)}).on("error",function(G){d=[],D(G)}).on("end",function(){try{var G=(function(m,p,k){switch(m){case"blob":return B.newBlob(B.transformTo("arraybuffer",p),k);case"base64":return i.encode(p);default:return B.transformTo(m,p)}})(w,(function(m,p){var k,S=0,R=null,x=0;for(k=0;k<p.length;k++)x+=p[k].length;switch(m){case"string":return p.join("");case"array":return Array.prototype.concat.apply([],p);case"uint8array":for(R=new Uint8Array(x),k=0;k<p.length;k++)R.set(p[k],S),S+=p[k].length;return R;case"nodebuffer":return Buffer.concat(p);default:throw new Error("concat : unsupported type '"+m+"'")}})(y,d),u);l(G)}catch(m){D(m)}d=[]}).resume()})}function a(c,h,l){var D=h;switch(h){case"blob":case"arraybuffer":D="uint8array";break;case"base64":D="string"}try{this._internalType=D,this._outputType=h,this._mimeType=l,B.checkSupport(D),this._worker=c.pipe(new C(D)),c.lock()}catch(d){this._worker=new Q("error"),this._worker.error(d)}}a.prototype={accumulate:function(c){return r(this,c)},on:function(c,h){var l=this;return c==="data"?this._worker.on(c,function(D){h.call(l,D.data,D.meta)}):this._worker.on(c,function(){B.delay(h,arguments,l)}),this},resume:function(){return B.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(c){if(B.checkSupport("nodestream"),this._outputType!=="nodebuffer")throw new Error(this._outputType+" is not supported by this method");return new s(this,{objectMode:this._outputType!=="nodebuffer"},c)}},t.exports=a},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(e,t,o){if(o.base64=!0,o.array=!0,o.string=!0,o.arraybuffer=typeof ArrayBuffer<"u"&&typeof Uint8Array<"u",o.nodebuffer=typeof Buffer<"u",o.uint8array=typeof Uint8Array<"u",typeof ArrayBuffer>"u")o.blob=!1;else{var B=new ArrayBuffer(0);try{o.blob=new Blob([B],{type:"application/zip"}).size===0}catch{try{var C=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);C.append(B),o.blob=C.getBlob("application/zip").size===0}catch{o.blob=!1}}}try{o.nodestream=!!e("readable-stream").Readable}catch{o.nodestream=!1}},{"readable-stream":16}],31:[function(e,t,o){for(var B=e("./utils"),C=e("./support"),Q=e("./nodejsUtils"),i=e("./stream/GenericWorker"),E=new Array(256),n=0;n<256;n++)E[n]=252<=n?6:248<=n?5:240<=n?4:224<=n?3:192<=n?2:1;E[254]=E[254]=1;function s(){i.call(this,"utf-8 decode"),this.leftOver=null}function r(){i.call(this,"utf-8 encode")}o.utf8encode=function(a){return C.nodebuffer?Q.newBufferFrom(a,"utf-8"):(function(c){var h,l,D,d,y,w=c.length,u=0;for(d=0;d<w;d++)(64512&(l=c.charCodeAt(d)))==55296&&d+1<w&&(64512&(D=c.charCodeAt(d+1)))==56320&&(l=65536+(l-55296<<10)+(D-56320),d++),u+=l<128?1:l<2048?2:l<65536?3:4;for(h=C.uint8array?new Uint8Array(u):new Array(u),d=y=0;y<u;d++)(64512&(l=c.charCodeAt(d)))==55296&&d+1<w&&(64512&(D=c.charCodeAt(d+1)))==56320&&(l=65536+(l-55296<<10)+(D-56320),d++),l<128?h[y++]=l:(l<2048?h[y++]=192|l>>>6:(l<65536?h[y++]=224|l>>>12:(h[y++]=240|l>>>18,h[y++]=128|l>>>12&63),h[y++]=128|l>>>6&63),h[y++]=128|63&l);return h})(a)},o.utf8decode=function(a){return C.nodebuffer?B.transformTo("nodebuffer",a).toString("utf-8"):(function(c){var h,l,D,d,y=c.length,w=new Array(2*y);for(h=l=0;h<y;)if((D=c[h++])<128)w[l++]=D;else if(4<(d=E[D]))w[l++]=65533,h+=d-1;else{for(D&=d===2?31:d===3?15:7;1<d&&h<y;)D=D<<6|63&c[h++],d--;1<d?w[l++]=65533:D<65536?w[l++]=D:(D-=65536,w[l++]=55296|D>>10&1023,w[l++]=56320|1023&D)}return w.length!==l&&(w.subarray?w=w.subarray(0,l):w.length=l),B.applyFromCharCode(w)})(a=B.transformTo(C.uint8array?"uint8array":"array",a))},B.inherits(s,i),s.prototype.processChunk=function(a){var c=B.transformTo(C.uint8array?"uint8array":"array",a.data);if(this.leftOver&&this.leftOver.length){if(C.uint8array){var h=c;(c=new Uint8Array(h.length+this.leftOver.length)).set(this.leftOver,0),c.set(h,this.leftOver.length)}else c=this.leftOver.concat(c);this.leftOver=null}var l=(function(d,y){var w;for((y=y||d.length)>d.length&&(y=d.length),w=y-1;0<=w&&(192&d[w])==128;)w--;return w<0||w===0?y:w+E[d[w]]>y?w:y})(c),D=c;l!==c.length&&(C.uint8array?(D=c.subarray(0,l),this.leftOver=c.subarray(l,c.length)):(D=c.slice(0,l),this.leftOver=c.slice(l,c.length))),this.push({data:o.utf8decode(D),meta:a.meta})},s.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:o.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},o.Utf8DecodeWorker=s,B.inherits(r,i),r.prototype.processChunk=function(a){this.push({data:o.utf8encode(a.data),meta:a.meta})},o.Utf8EncodeWorker=r},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(e,t,o){var B=e("./support"),C=e("./base64"),Q=e("./nodejsUtils"),i=e("./external");function E(h){return h}function n(h,l){for(var D=0;D<h.length;++D)l[D]=255&h.charCodeAt(D);return l}e("setimmediate"),o.newBlob=function(h,l){o.checkSupport("blob");try{return new Blob([h],{type:l})}catch{try{var D=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);return D.append(h),D.getBlob(l)}catch{throw new Error("Bug : can't construct the Blob.")}}};var s={stringifyByChunk:function(h,l,D){var d=[],y=0,w=h.length;if(w<=D)return String.fromCharCode.apply(null,h);for(;y<w;)l==="array"||l==="nodebuffer"?d.push(String.fromCharCode.apply(null,h.slice(y,Math.min(y+D,w)))):d.push(String.fromCharCode.apply(null,h.subarray(y,Math.min(y+D,w)))),y+=D;return d.join("")},stringifyByChar:function(h){for(var l="",D=0;D<h.length;D++)l+=String.fromCharCode(h[D]);return l},applyCanBeUsed:{uint8array:(function(){try{return B.uint8array&&String.fromCharCode.apply(null,new Uint8Array(1)).length===1}catch{return!1}})(),nodebuffer:(function(){try{return B.nodebuffer&&String.fromCharCode.apply(null,Q.allocBuffer(1)).length===1}catch{return!1}})()}};function r(h){var l=65536,D=o.getTypeOf(h),d=!0;if(D==="uint8array"?d=s.applyCanBeUsed.uint8array:D==="nodebuffer"&&(d=s.applyCanBeUsed.nodebuffer),d)for(;1<l;)try{return s.stringifyByChunk(h,D,l)}catch{l=Math.floor(l/2)}return s.stringifyByChar(h)}function a(h,l){for(var D=0;D<h.length;D++)l[D]=h[D];return l}o.applyFromCharCode=r;var c={};c.string={string:E,array:function(h){return n(h,new Array(h.length))},arraybuffer:function(h){return c.string.uint8array(h).buffer},uint8array:function(h){return n(h,new Uint8Array(h.length))},nodebuffer:function(h){return n(h,Q.allocBuffer(h.length))}},c.array={string:r,array:E,arraybuffer:function(h){return new Uint8Array(h).buffer},uint8array:function(h){return new Uint8Array(h)},nodebuffer:function(h){return Q.newBufferFrom(h)}},c.arraybuffer={string:function(h){return r(new Uint8Array(h))},array:function(h){return a(new Uint8Array(h),new Array(h.byteLength))},arraybuffer:E,uint8array:function(h){return new Uint8Array(h)},nodebuffer:function(h){return Q.newBufferFrom(new Uint8Array(h))}},c.uint8array={string:r,array:function(h){return a(h,new Array(h.length))},arraybuffer:function(h){return h.buffer},uint8array:E,nodebuffer:function(h){return Q.newBufferFrom(h)}},c.nodebuffer={string:r,array:function(h){return a(h,new Array(h.length))},arraybuffer:function(h){return c.nodebuffer.uint8array(h).buffer},uint8array:function(h){return a(h,new Uint8Array(h.length))},nodebuffer:E},o.transformTo=function(h,l){if(l=l||"",!h)return l;o.checkSupport(h);var D=o.getTypeOf(l);return c[D][h](l)},o.resolve=function(h){for(var l=h.split("/"),D=[],d=0;d<l.length;d++){var y=l[d];y==="."||y===""&&d!==0&&d!==l.length-1||(y===".."?D.pop():D.push(y))}return D.join("/")},o.getTypeOf=function(h){if(typeof h=="string")return"string";var l=Object.prototype.toString.call(h);return l==="[object Array]"?"array":B.nodebuffer&&Q.isBuffer(h)?"nodebuffer":B.uint8array&&l==="[object Uint8Array]"?"uint8array":B.arraybuffer&&l==="[object ArrayBuffer]"?"arraybuffer":void 0},o.checkSupport=function(h){if(!B[h.toLowerCase()])throw new Error(h+" is not supported by this platform")},o.MAX_VALUE_16BITS=65535,o.MAX_VALUE_32BITS=-1,o.pretty=function(h){var l,D,d="";for(D=0;D<(h||"").length;D++)d+="\\x"+((l=h.charCodeAt(D))<16?"0":"")+l.toString(16).toUpperCase();return d},o.delay=function(h,l,D){setImmediate(function(){h.apply(D||null,l||[])})},o.inherits=function(h,l){function D(){}D.prototype=l.prototype,h.prototype=new D},o.extend=function(){var h,l,D={};for(h=0;h<arguments.length;h++)for(l in arguments[h])Object.prototype.hasOwnProperty.call(arguments[h],l)&&D[l]===void 0&&(D[l]=arguments[h][l]);return D},o.prepareContent=function(h,l,D,d,y){return i.Promise.resolve(l).then(function(w){return B.blob&&(w instanceof Blob||["[object File]","[object Blob]"].indexOf(Object.prototype.toString.call(w))!==-1)?Blob.prototype.arrayBuffer!==void 0?w.arrayBuffer():typeof FileReader<"u"?new i.Promise(function(u,G){var m=new FileReader;m.onload=function(p){u(p.target.result)},m.onerror=function(p){G(p.target.error)},m.readAsArrayBuffer(w)}):i.Promise.reject(new Error(h+" is a Blob, but we have no way of reading it.")):w}).then(function(w){var u=o.getTypeOf(w);return u?(u==="arraybuffer"?w=o.transformTo("uint8array",w):u==="string"&&(y?w=C.decode(w):D&&d!==!0&&(w=(function(G){return n(G,B.uint8array?new Uint8Array(G.length):new Array(G.length))})(w))),w):i.Promise.reject(new Error("Can't read the data of '"+h+"'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"))})}},{"./base64":1,"./external":6,"./nodejsUtils":14,"./support":30,setimmediate:54}],33:[function(e,t,o){var B=e("./reader/readerFor"),C=e("./utils"),Q=e("./signature"),i=e("./zipEntry"),E=e("./support");function n(s){this.files=[],this.loadOptions=s}n.prototype={checkSignature:function(s){if(!this.reader.readAndCheckSignature(s)){this.reader.index-=4;var r=this.reader.readString(4);throw new Error("Corrupted zip or bug: unexpected signature ("+C.pretty(r)+", expected "+C.pretty(s)+")")}},isSignature:function(s,r){var a=this.reader.index;this.reader.setIndex(s);var c=this.reader.readString(4)===r;return this.reader.setIndex(a),c},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var s=this.reader.readData(this.zipCommentLength),r=E.uint8array?"uint8array":"array",a=C.transformTo(r,s);this.zipComment=this.loadOptions.decodeFileName(a)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.reader.skip(4),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var s,r,a,c=this.zip64EndOfCentralSize-44;0<c;)s=this.reader.readInt(2),r=this.reader.readInt(4),a=this.reader.readData(r),this.zip64ExtensibleData[s]={id:s,length:r,value:a}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),1<this.disksCount)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var s,r;for(s=0;s<this.files.length;s++)r=this.files[s],this.reader.setIndex(r.localHeaderOffset),this.checkSignature(Q.LOCAL_FILE_HEADER),r.readLocalPart(this.reader),r.handleUTF8(),r.processAttributes()},readCentralDir:function(){var s;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(Q.CENTRAL_FILE_HEADER);)(s=new i({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(s);if(this.centralDirRecords!==this.files.length&&this.centralDirRecords!==0&&this.files.length===0)throw new Error("Corrupted zip or bug: expected "+this.centralDirRecords+" records in central dir, got "+this.files.length)},readEndOfCentral:function(){var s=this.reader.lastIndexOfSignature(Q.CENTRAL_DIRECTORY_END);if(s<0)throw this.isSignature(0,Q.LOCAL_FILE_HEADER)?new Error("Corrupted zip: can't find end of central directory"):new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html");this.reader.setIndex(s);var r=s;if(this.checkSignature(Q.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===C.MAX_VALUE_16BITS||this.diskWithCentralDirStart===C.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===C.MAX_VALUE_16BITS||this.centralDirRecords===C.MAX_VALUE_16BITS||this.centralDirSize===C.MAX_VALUE_32BITS||this.centralDirOffset===C.MAX_VALUE_32BITS){if(this.zip64=!0,(s=this.reader.lastIndexOfSignature(Q.ZIP64_CENTRAL_DIRECTORY_LOCATOR))<0)throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");if(this.reader.setIndex(s),this.checkSignature(Q.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,Q.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(Q.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(Q.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}var a=this.centralDirOffset+this.centralDirSize;this.zip64&&(a+=20,a+=12+this.zip64EndOfCentralSize);var c=r-a;if(0<c)this.isSignature(r,Q.CENTRAL_FILE_HEADER)||(this.reader.zero=c);else if(c<0)throw new Error("Corrupted zip: missing "+Math.abs(c)+" bytes.")},prepareReader:function(s){this.reader=B(s)},load:function(s){this.prepareReader(s),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},t.exports=n},{"./reader/readerFor":22,"./signature":23,"./support":30,"./utils":32,"./zipEntry":34}],34:[function(e,t,o){var B=e("./reader/readerFor"),C=e("./utils"),Q=e("./compressedObject"),i=e("./crc32"),E=e("./utf8"),n=e("./compressions"),s=e("./support");function r(a,c){this.options=a,this.loadOptions=c}r.prototype={isEncrypted:function(){return(1&this.bitFlag)==1},useUTF8:function(){return(2048&this.bitFlag)==2048},readLocalPart:function(a){var c,h;if(a.skip(22),this.fileNameLength=a.readInt(2),h=a.readInt(2),this.fileName=a.readData(this.fileNameLength),a.skip(h),this.compressedSize===-1||this.uncompressedSize===-1)throw new Error("Bug or corrupted zip : didn't get enough information from the central directory (compressedSize === -1 || uncompressedSize === -1)");if((c=(function(l){for(var D in n)if(Object.prototype.hasOwnProperty.call(n,D)&&n[D].magic===l)return n[D];return null})(this.compressionMethod))===null)throw new Error("Corrupted zip : compression "+C.pretty(this.compressionMethod)+" unknown (inner file : "+C.transformTo("string",this.fileName)+")");this.decompressed=new Q(this.compressedSize,this.uncompressedSize,this.crc32,c,a.readData(this.compressedSize))},readCentralPart:function(a){this.versionMadeBy=a.readInt(2),a.skip(2),this.bitFlag=a.readInt(2),this.compressionMethod=a.readString(2),this.date=a.readDate(),this.crc32=a.readInt(4),this.compressedSize=a.readInt(4),this.uncompressedSize=a.readInt(4);var c=a.readInt(2);if(this.extraFieldsLength=a.readInt(2),this.fileCommentLength=a.readInt(2),this.diskNumberStart=a.readInt(2),this.internalFileAttributes=a.readInt(2),this.externalFileAttributes=a.readInt(4),this.localHeaderOffset=a.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");a.skip(c),this.readExtraFields(a),this.parseZIP64ExtraField(a),this.fileComment=a.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var a=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),a==0&&(this.dosPermissions=63&this.externalFileAttributes),a==3&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||this.fileNameStr.slice(-1)!=="/"||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var a=B(this.extraFields[1].value);this.uncompressedSize===C.MAX_VALUE_32BITS&&(this.uncompressedSize=a.readInt(8)),this.compressedSize===C.MAX_VALUE_32BITS&&(this.compressedSize=a.readInt(8)),this.localHeaderOffset===C.MAX_VALUE_32BITS&&(this.localHeaderOffset=a.readInt(8)),this.diskNumberStart===C.MAX_VALUE_32BITS&&(this.diskNumberStart=a.readInt(4))}},readExtraFields:function(a){var c,h,l,D=a.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});a.index+4<D;)c=a.readInt(2),h=a.readInt(2),l=a.readData(h),this.extraFields[c]={id:c,length:h,value:l};a.setIndex(D)},handleUTF8:function(){var a=s.uint8array?"uint8array":"array";if(this.useUTF8())this.fileNameStr=E.utf8decode(this.fileName),this.fileCommentStr=E.utf8decode(this.fileComment);else{var c=this.findExtraFieldUnicodePath();if(c!==null)this.fileNameStr=c;else{var h=C.transformTo(a,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(h)}var l=this.findExtraFieldUnicodeComment();if(l!==null)this.fileCommentStr=l;else{var D=C.transformTo(a,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(D)}}},findExtraFieldUnicodePath:function(){var a=this.extraFields[28789];if(a){var c=B(a.value);return c.readInt(1)!==1||i(this.fileName)!==c.readInt(4)?null:E.utf8decode(c.readData(a.length-5))}return null},findExtraFieldUnicodeComment:function(){var a=this.extraFields[25461];if(a){var c=B(a.value);return c.readInt(1)!==1||i(this.fileComment)!==c.readInt(4)?null:E.utf8decode(c.readData(a.length-5))}return null}},t.exports=r},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(e,t,o){function B(c,h,l){this.name=c,this.dir=l.dir,this.date=l.date,this.comment=l.comment,this.unixPermissions=l.unixPermissions,this.dosPermissions=l.dosPermissions,this._data=h,this._dataBinary=l.binary,this.options={compression:l.compression,compressionOptions:l.compressionOptions}}var C=e("./stream/StreamHelper"),Q=e("./stream/DataWorker"),i=e("./utf8"),E=e("./compressedObject"),n=e("./stream/GenericWorker");B.prototype={internalStream:function(c){var h=null,l="string";try{if(!c)throw new Error("No output type specified.");var D=(l=c.toLowerCase())==="string"||l==="text";l!=="binarystring"&&l!=="text"||(l="string"),h=this._decompressWorker();var d=!this._dataBinary;d&&!D&&(h=h.pipe(new i.Utf8EncodeWorker)),!d&&D&&(h=h.pipe(new i.Utf8DecodeWorker))}catch(y){(h=new n("error")).error(y)}return new C(h,l,"")},async:function(c,h){return this.internalStream(c).accumulate(h)},nodeStream:function(c,h){return this.internalStream(c||"nodebuffer").toNodejsStream(h)},_compressWorker:function(c,h){if(this._data instanceof E&&this._data.compression.magic===c.magic)return this._data.getCompressedWorker();var l=this._decompressWorker();return this._dataBinary||(l=l.pipe(new i.Utf8EncodeWorker)),E.createWorkerFrom(l,c,h)},_decompressWorker:function(){return this._data instanceof E?this._data.getContentWorker():this._data instanceof n?this._data:new Q(this._data)}};for(var s=["asText","asBinary","asNodeBuffer","asUint8Array","asArrayBuffer"],r=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},a=0;a<s.length;a++)B.prototype[s[a]]=r;t.exports=B},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(e,t,o){(function(B){var C,Q,i=B.MutationObserver||B.WebKitMutationObserver;if(i){var E=0,n=new i(c),s=B.document.createTextNode("");n.observe(s,{characterData:!0}),C=function(){s.data=E=++E%2}}else if(B.setImmediate||B.MessageChannel===void 0)C="document"in B&&"onreadystatechange"in B.document.createElement("script")?function(){var h=B.document.createElement("script");h.onreadystatechange=function(){c(),h.onreadystatechange=null,h.parentNode.removeChild(h),h=null},B.document.documentElement.appendChild(h)}:function(){setTimeout(c,0)};else{var r=new B.MessageChannel;r.port1.onmessage=c,C=function(){r.port2.postMessage(0)}}var a=[];function c(){var h,l;Q=!0;for(var D=a.length;D;){for(l=a,a=[],h=-1;++h<D;)l[h]();D=a.length}Q=!1}t.exports=function(h){a.push(h)!==1||Q||C()}}).call(this,typeof NY<"u"?NY:typeof self<"u"?self:typeof window<"u"?window:{})},{}],37:[function(e,t,o){var B=e("immediate");function C(){}var Q={},i=["REJECTED"],E=["FULFILLED"],n=["PENDING"];function s(D){if(typeof D!="function")throw new TypeError("resolver must be a function");this.state=n,this.queue=[],this.outcome=void 0,D!==C&&h(this,D)}function r(D,d,y){this.promise=D,typeof d=="function"&&(this.onFulfilled=d,this.callFulfilled=this.otherCallFulfilled),typeof y=="function"&&(this.onRejected=y,this.callRejected=this.otherCallRejected)}function a(D,d,y){B(function(){var w;try{w=d(y)}catch(u){return Q.reject(D,u)}w===D?Q.reject(D,new TypeError("Cannot resolve promise with itself")):Q.resolve(D,w)})}function c(D){var d=D&&D.then;if(D&&(typeof D=="object"||typeof D=="function")&&typeof d=="function")return function(){d.apply(D,arguments)}}function h(D,d){var y=!1;function w(m){y||(y=!0,Q.reject(D,m))}function u(m){y||(y=!0,Q.resolve(D,m))}var G=l(function(){d(u,w)});G.status==="error"&&w(G.value)}function l(D,d){var y={};try{y.value=D(d),y.status="success"}catch(w){y.status="error",y.value=w}return y}(t.exports=s).prototype.finally=function(D){if(typeof D!="function")return this;var d=this.constructor;return this.then(function(y){return d.resolve(D()).then(function(){return y})},function(y){return d.resolve(D()).then(function(){throw y})})},s.prototype.catch=function(D){return this.then(null,D)},s.prototype.then=function(D,d){if(typeof D!="function"&&this.state===E||typeof d!="function"&&this.state===i)return this;var y=new this.constructor(C);return this.state!==n?a(y,this.state===E?D:d,this.outcome):this.queue.push(new r(y,D,d)),y},r.prototype.callFulfilled=function(D){Q.resolve(this.promise,D)},r.prototype.otherCallFulfilled=function(D){a(this.promise,this.onFulfilled,D)},r.prototype.callRejected=function(D){Q.reject(this.promise,D)},r.prototype.otherCallRejected=function(D){a(this.promise,this.onRejected,D)},Q.resolve=function(D,d){var y=l(c,d);if(y.status==="error")return Q.reject(D,y.value);var w=y.value;if(w)h(D,w);else{D.state=E,D.outcome=d;for(var u=-1,G=D.queue.length;++u<G;)D.queue[u].callFulfilled(d)}return D},Q.reject=function(D,d){D.state=i,D.outcome=d;for(var y=-1,w=D.queue.length;++y<w;)D.queue[y].callRejected(d);return D},s.resolve=function(D){return D instanceof this?D:Q.resolve(new this(C),D)},s.reject=function(D){var d=new this(C);return Q.reject(d,D)},s.all=function(D){var d=this;if(Object.prototype.toString.call(D)!=="[object Array]")return this.reject(new TypeError("must be an array"));var y=D.length,w=!1;if(!y)return this.resolve([]);for(var u=new Array(y),G=0,m=-1,p=new this(C);++m<y;)k(D[m],m);return p;function k(S,R){d.resolve(S).then(function(x){u[R]=x,++G!==y||w||(w=!0,Q.resolve(p,u))},function(x){w||(w=!0,Q.reject(p,x))})}},s.race=function(D){var d=this;if(Object.prototype.toString.call(D)!=="[object Array]")return this.reject(new TypeError("must be an array"));var y=D.length,w=!1;if(!y)return this.resolve([]);for(var u=-1,G=new this(C);++u<y;)m=D[u],d.resolve(m).then(function(p){w||(w=!0,Q.resolve(G,p))},function(p){w||(w=!0,Q.reject(G,p))});var m;return G}},{immediate:36}],38:[function(e,t,o){var B={};(0,e("./lib/utils/common").assign)(B,e("./lib/deflate"),e("./lib/inflate"),e("./lib/zlib/constants")),t.exports=B},{"./lib/deflate":39,"./lib/inflate":40,"./lib/utils/common":41,"./lib/zlib/constants":44}],39:[function(e,t,o){var B=e("./zlib/deflate"),C=e("./utils/common"),Q=e("./utils/strings"),i=e("./zlib/messages"),E=e("./zlib/zstream"),n=Object.prototype.toString,s=0,r=-1,a=0,c=8;function h(D){if(!(this instanceof h))return new h(D);this.options=C.assign({level:r,method:c,chunkSize:16384,windowBits:15,memLevel:8,strategy:a,to:""},D||{});var d=this.options;d.raw&&0<d.windowBits?d.windowBits=-d.windowBits:d.gzip&&0<d.windowBits&&d.windowBits<16&&(d.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new E,this.strm.avail_out=0;var y=B.deflateInit2(this.strm,d.level,d.method,d.windowBits,d.memLevel,d.strategy);if(y!==s)throw new Error(i[y]);if(d.header&&B.deflateSetHeader(this.strm,d.header),d.dictionary){var w;if(w=typeof d.dictionary=="string"?Q.string2buf(d.dictionary):n.call(d.dictionary)==="[object ArrayBuffer]"?new Uint8Array(d.dictionary):d.dictionary,(y=B.deflateSetDictionary(this.strm,w))!==s)throw new Error(i[y]);this._dict_set=!0}}function l(D,d){var y=new h(d);if(y.push(D,!0),y.err)throw y.msg||i[y.err];return y.result}h.prototype.push=function(D,d){var y,w,u=this.strm,G=this.options.chunkSize;if(this.ended)return!1;w=d===~~d?d:d===!0?4:0,typeof D=="string"?u.input=Q.string2buf(D):n.call(D)==="[object ArrayBuffer]"?u.input=new Uint8Array(D):u.input=D,u.next_in=0,u.avail_in=u.input.length;do{if(u.avail_out===0&&(u.output=new C.Buf8(G),u.next_out=0,u.avail_out=G),(y=B.deflate(u,w))!==1&&y!==s)return this.onEnd(y),!(this.ended=!0);u.avail_out!==0&&(u.avail_in!==0||w!==4&&w!==2)||(this.options.to==="string"?this.onData(Q.buf2binstring(C.shrinkBuf(u.output,u.next_out))):this.onData(C.shrinkBuf(u.output,u.next_out)))}while((0<u.avail_in||u.avail_out===0)&&y!==1);return w===4?(y=B.deflateEnd(this.strm),this.onEnd(y),this.ended=!0,y===s):w!==2||(this.onEnd(s),!(u.avail_out=0))},h.prototype.onData=function(D){this.chunks.push(D)},h.prototype.onEnd=function(D){D===s&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=C.flattenChunks(this.chunks)),this.chunks=[],this.err=D,this.msg=this.strm.msg},o.Deflate=h,o.deflate=l,o.deflateRaw=function(D,d){return(d=d||{}).raw=!0,l(D,d)},o.gzip=function(D,d){return(d=d||{}).gzip=!0,l(D,d)}},{"./utils/common":41,"./utils/strings":42,"./zlib/deflate":46,"./zlib/messages":51,"./zlib/zstream":53}],40:[function(e,t,o){var B=e("./zlib/inflate"),C=e("./utils/common"),Q=e("./utils/strings"),i=e("./zlib/constants"),E=e("./zlib/messages"),n=e("./zlib/zstream"),s=e("./zlib/gzheader"),r=Object.prototype.toString;function a(h){if(!(this instanceof a))return new a(h);this.options=C.assign({chunkSize:16384,windowBits:0,to:""},h||{});var l=this.options;l.raw&&0<=l.windowBits&&l.windowBits<16&&(l.windowBits=-l.windowBits,l.windowBits===0&&(l.windowBits=-15)),!(0<=l.windowBits&&l.windowBits<16)||h&&h.windowBits||(l.windowBits+=32),15<l.windowBits&&l.windowBits<48&&(15&l.windowBits)==0&&(l.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new n,this.strm.avail_out=0;var D=B.inflateInit2(this.strm,l.windowBits);if(D!==i.Z_OK)throw new Error(E[D]);this.header=new s,B.inflateGetHeader(this.strm,this.header)}function c(h,l){var D=new a(l);if(D.push(h,!0),D.err)throw D.msg||E[D.err];return D.result}a.prototype.push=function(h,l){var D,d,y,w,u,G,m=this.strm,p=this.options.chunkSize,k=this.options.dictionary,S=!1;if(this.ended)return!1;d=l===~~l?l:l===!0?i.Z_FINISH:i.Z_NO_FLUSH,typeof h=="string"?m.input=Q.binstring2buf(h):r.call(h)==="[object ArrayBuffer]"?m.input=new Uint8Array(h):m.input=h,m.next_in=0,m.avail_in=m.input.length;do{if(m.avail_out===0&&(m.output=new C.Buf8(p),m.next_out=0,m.avail_out=p),(D=B.inflate(m,i.Z_NO_FLUSH))===i.Z_NEED_DICT&&k&&(G=typeof k=="string"?Q.string2buf(k):r.call(k)==="[object ArrayBuffer]"?new Uint8Array(k):k,D=B.inflateSetDictionary(this.strm,G)),D===i.Z_BUF_ERROR&&S===!0&&(D=i.Z_OK,S=!1),D!==i.Z_STREAM_END&&D!==i.Z_OK)return this.onEnd(D),!(this.ended=!0);m.next_out&&(m.avail_out!==0&&D!==i.Z_STREAM_END&&(m.avail_in!==0||d!==i.Z_FINISH&&d!==i.Z_SYNC_FLUSH)||(this.options.to==="string"?(y=Q.utf8border(m.output,m.next_out),w=m.next_out-y,u=Q.buf2string(m.output,y),m.next_out=w,m.avail_out=p-w,w&&C.arraySet(m.output,m.output,y,w,0),this.onData(u)):this.onData(C.shrinkBuf(m.output,m.next_out)))),m.avail_in===0&&m.avail_out===0&&(S=!0)}while((0<m.avail_in||m.avail_out===0)&&D!==i.Z_STREAM_END);return D===i.Z_STREAM_END&&(d=i.Z_FINISH),d===i.Z_FINISH?(D=B.inflateEnd(this.strm),this.onEnd(D),this.ended=!0,D===i.Z_OK):d!==i.Z_SYNC_FLUSH||(this.onEnd(i.Z_OK),!(m.avail_out=0))},a.prototype.onData=function(h){this.chunks.push(h)},a.prototype.onEnd=function(h){h===i.Z_OK&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=C.flattenChunks(this.chunks)),this.chunks=[],this.err=h,this.msg=this.strm.msg},o.Inflate=a,o.inflate=c,o.inflateRaw=function(h,l){return(l=l||{}).raw=!0,c(h,l)},o.ungzip=c},{"./utils/common":41,"./utils/strings":42,"./zlib/constants":44,"./zlib/gzheader":47,"./zlib/inflate":49,"./zlib/messages":51,"./zlib/zstream":53}],41:[function(e,t,o){var B=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";o.assign=function(i){for(var E=Array.prototype.slice.call(arguments,1);E.length;){var n=E.shift();if(n){if(typeof n!="object")throw new TypeError(n+"must be non-object");for(var s in n)n.hasOwnProperty(s)&&(i[s]=n[s])}}return i},o.shrinkBuf=function(i,E){return i.length===E?i:i.subarray?i.subarray(0,E):(i.length=E,i)};var C={arraySet:function(i,E,n,s,r){if(E.subarray&&i.subarray)i.set(E.subarray(n,n+s),r);else for(var a=0;a<s;a++)i[r+a]=E[n+a]},flattenChunks:function(i){var E,n,s,r,a,c;for(E=s=0,n=i.length;E<n;E++)s+=i[E].length;for(c=new Uint8Array(s),E=r=0,n=i.length;E<n;E++)a=i[E],c.set(a,r),r+=a.length;return c}},Q={arraySet:function(i,E,n,s,r){for(var a=0;a<s;a++)i[r+a]=E[n+a]},flattenChunks:function(i){return[].concat.apply([],i)}};o.setTyped=function(i){i?(o.Buf8=Uint8Array,o.Buf16=Uint16Array,o.Buf32=Int32Array,o.assign(o,C)):(o.Buf8=Array,o.Buf16=Array,o.Buf32=Array,o.assign(o,Q))},o.setTyped(B)},{}],42:[function(e,t,o){var B=e("./common"),C=!0,Q=!0;try{String.fromCharCode.apply(null,[0])}catch{C=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{Q=!1}for(var i=new B.Buf8(256),E=0;E<256;E++)i[E]=252<=E?6:248<=E?5:240<=E?4:224<=E?3:192<=E?2:1;function n(s,r){if(r<65537&&(s.subarray&&Q||!s.subarray&&C))return String.fromCharCode.apply(null,B.shrinkBuf(s,r));for(var a="",c=0;c<r;c++)a+=String.fromCharCode(s[c]);return a}i[254]=i[254]=1,o.string2buf=function(s){var r,a,c,h,l,D=s.length,d=0;for(h=0;h<D;h++)(64512&(a=s.charCodeAt(h)))==55296&&h+1<D&&(64512&(c=s.charCodeAt(h+1)))==56320&&(a=65536+(a-55296<<10)+(c-56320),h++),d+=a<128?1:a<2048?2:a<65536?3:4;for(r=new B.Buf8(d),h=l=0;l<d;h++)(64512&(a=s.charCodeAt(h)))==55296&&h+1<D&&(64512&(c=s.charCodeAt(h+1)))==56320&&(a=65536+(a-55296<<10)+(c-56320),h++),a<128?r[l++]=a:(a<2048?r[l++]=192|a>>>6:(a<65536?r[l++]=224|a>>>12:(r[l++]=240|a>>>18,r[l++]=128|a>>>12&63),r[l++]=128|a>>>6&63),r[l++]=128|63&a);return r},o.buf2binstring=function(s){return n(s,s.length)},o.binstring2buf=function(s){for(var r=new B.Buf8(s.length),a=0,c=r.length;a<c;a++)r[a]=s.charCodeAt(a);return r},o.buf2string=function(s,r){var a,c,h,l,D=r||s.length,d=new Array(2*D);for(a=c=0;a<D;)if((h=s[a++])<128)d[c++]=h;else if(4<(l=i[h]))d[c++]=65533,a+=l-1;else{for(h&=l===2?31:l===3?15:7;1<l&&a<D;)h=h<<6|63&s[a++],l--;1<l?d[c++]=65533:h<65536?d[c++]=h:(h-=65536,d[c++]=55296|h>>10&1023,d[c++]=56320|1023&h)}return n(d,c)},o.utf8border=function(s,r){var a;for((r=r||s.length)>s.length&&(r=s.length),a=r-1;0<=a&&(192&s[a])==128;)a--;return a<0||a===0?r:a+i[s[a]]>r?a:r}},{"./common":41}],43:[function(e,t,o){t.exports=function(B,C,Q,i){for(var E=65535&B|0,n=B>>>16&65535|0,s=0;Q!==0;){for(Q-=s=2e3<Q?2e3:Q;n=n+(E=E+C[i++]|0)|0,--s;);E%=65521,n%=65521}return E|n<<16|0}},{}],44:[function(e,t,o){t.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],45:[function(e,t,o){var B=(function(){for(var C,Q=[],i=0;i<256;i++){C=i;for(var E=0;E<8;E++)C=1&C?3988292384^C>>>1:C>>>1;Q[i]=C}return Q})();t.exports=function(C,Q,i,E){var n=B,s=E+i;C^=-1;for(var r=E;r<s;r++)C=C>>>8^n[255&(C^Q[r])];return-1^C}},{}],46:[function(e,t,o){var B,C=e("../utils/common"),Q=e("./trees"),i=e("./adler32"),E=e("./crc32"),n=e("./messages"),s=0,r=4,a=0,c=-2,h=-1,l=4,D=2,d=8,y=9,w=286,u=30,G=19,m=2*w+1,p=15,k=3,S=258,R=S+k+1,x=42,N=113,U=1,K=2,Y=3,b=4;function q(aA,xA){return aA.msg=n[xA],xA}function j(aA){return(aA<<1)-(4<aA?9:0)}function W(aA){for(var xA=aA.length;0<=--xA;)aA[xA]=0}function Z(aA){var xA=aA.state,RA=xA.pending;RA>aA.avail_out&&(RA=aA.avail_out),RA!==0&&(C.arraySet(aA.output,xA.pending_buf,xA.pending_out,RA,aA.next_out),aA.next_out+=RA,xA.pending_out+=RA,aA.total_out+=RA,aA.avail_out-=RA,xA.pending-=RA,xA.pending===0&&(xA.pending_out=0))}function gA(aA,xA){Q._tr_flush_block(aA,0<=aA.block_start?aA.block_start:-1,aA.strstart-aA.block_start,xA),aA.block_start=aA.strstart,Z(aA.strm)}function tA(aA,xA){aA.pending_buf[aA.pending++]=xA}function IA(aA,xA){aA.pending_buf[aA.pending++]=xA>>>8&255,aA.pending_buf[aA.pending++]=255&xA}function QA(aA,xA){var RA,NA,HA=aA.max_chain_length,PA=aA.strstart,GA=aA.prev_length,LA=aA.nice_match,dA=aA.strstart>aA.w_size-R?aA.strstart-(aA.w_size-R):0,bA=aA.window,WA=aA.w_mask,Qg=aA.prev,YA=aA.strstart+S,uA=bA[PA+GA-1],kA=bA[PA+GA];aA.prev_length>=aA.good_match&&(HA>>=2),LA>aA.lookahead&&(LA=aA.lookahead);do if(bA[(RA=xA)+GA]===kA&&bA[RA+GA-1]===uA&&bA[RA]===bA[PA]&&bA[++RA]===bA[PA+1]){PA+=2,RA++;do;while(bA[++PA]===bA[++RA]&&bA[++PA]===bA[++RA]&&bA[++PA]===bA[++RA]&&bA[++PA]===bA[++RA]&&bA[++PA]===bA[++RA]&&bA[++PA]===bA[++RA]&&bA[++PA]===bA[++RA]&&bA[++PA]===bA[++RA]&&PA<YA);if(NA=S-(YA-PA),PA=YA-S,GA<NA){if(aA.match_start=xA,LA<=(GA=NA))break;uA=bA[PA+GA-1],kA=bA[PA+GA]}}while((xA=Qg[xA&WA])>dA&&--HA!=0);return GA<=aA.lookahead?GA:aA.lookahead}function nA(aA){var xA,RA,NA,HA,PA,GA,LA,dA,bA,WA,Qg=aA.w_size;do{if(HA=aA.window_size-aA.lookahead-aA.strstart,aA.strstart>=Qg+(Qg-R)){for(C.arraySet(aA.window,aA.window,Qg,Qg,0),aA.match_start-=Qg,aA.strstart-=Qg,aA.block_start-=Qg,xA=RA=aA.hash_size;NA=aA.head[--xA],aA.head[xA]=Qg<=NA?NA-Qg:0,--RA;);for(xA=RA=Qg;NA=aA.prev[--xA],aA.prev[xA]=Qg<=NA?NA-Qg:0,--RA;);HA+=Qg}if(aA.strm.avail_in===0)break;if(GA=aA.strm,LA=aA.window,dA=aA.strstart+aA.lookahead,bA=HA,WA=void 0,WA=GA.avail_in,bA<WA&&(WA=bA),RA=WA===0?0:(GA.avail_in-=WA,C.arraySet(LA,GA.input,GA.next_in,WA,dA),GA.state.wrap===1?GA.adler=i(GA.adler,LA,WA,dA):GA.state.wrap===2&&(GA.adler=E(GA.adler,LA,WA,dA)),GA.next_in+=WA,GA.total_in+=WA,WA),aA.lookahead+=RA,aA.lookahead+aA.insert>=k)for(PA=aA.strstart-aA.insert,aA.ins_h=aA.window[PA],aA.ins_h=(aA.ins_h<<aA.hash_shift^aA.window[PA+1])&aA.hash_mask;aA.insert&&(aA.ins_h=(aA.ins_h<<aA.hash_shift^aA.window[PA+k-1])&aA.hash_mask,aA.prev[PA&aA.w_mask]=aA.head[aA.ins_h],aA.head[aA.ins_h]=PA,PA++,aA.insert--,!(aA.lookahead+aA.insert<k)););}while(aA.lookahead<R&&aA.strm.avail_in!==0)}function DA(aA,xA){for(var RA,NA;;){if(aA.lookahead<R){if(nA(aA),aA.lookahead<R&&xA===s)return U;if(aA.lookahead===0)break}if(RA=0,aA.lookahead>=k&&(aA.ins_h=(aA.ins_h<<aA.hash_shift^aA.window[aA.strstart+k-1])&aA.hash_mask,RA=aA.prev[aA.strstart&aA.w_mask]=aA.head[aA.ins_h],aA.head[aA.ins_h]=aA.strstart),RA!==0&&aA.strstart-RA<=aA.w_size-R&&(aA.match_length=QA(aA,RA)),aA.match_length>=k)if(NA=Q._tr_tally(aA,aA.strstart-aA.match_start,aA.match_length-k),aA.lookahead-=aA.match_length,aA.match_length<=aA.max_lazy_match&&aA.lookahead>=k){for(aA.match_length--;aA.strstart++,aA.ins_h=(aA.ins_h<<aA.hash_shift^aA.window[aA.strstart+k-1])&aA.hash_mask,RA=aA.prev[aA.strstart&aA.w_mask]=aA.head[aA.ins_h],aA.head[aA.ins_h]=aA.strstart,--aA.match_length!=0;);aA.strstart++}else aA.strstart+=aA.match_length,aA.match_length=0,aA.ins_h=aA.window[aA.strstart],aA.ins_h=(aA.ins_h<<aA.hash_shift^aA.window[aA.strstart+1])&aA.hash_mask;else NA=Q._tr_tally(aA,0,aA.window[aA.strstart]),aA.lookahead--,aA.strstart++;if(NA&&(gA(aA,!1),aA.strm.avail_out===0))return U}return aA.insert=aA.strstart<k-1?aA.strstart:k-1,xA===r?(gA(aA,!0),aA.strm.avail_out===0?Y:b):aA.last_lit&&(gA(aA,!1),aA.strm.avail_out===0)?U:K}function CA(aA,xA){for(var RA,NA,HA;;){if(aA.lookahead<R){if(nA(aA),aA.lookahead<R&&xA===s)return U;if(aA.lookahead===0)break}if(RA=0,aA.lookahead>=k&&(aA.ins_h=(aA.ins_h<<aA.hash_shift^aA.window[aA.strstart+k-1])&aA.hash_mask,RA=aA.prev[aA.strstart&aA.w_mask]=aA.head[aA.ins_h],aA.head[aA.ins_h]=aA.strstart),aA.prev_length=aA.match_length,aA.prev_match=aA.match_start,aA.match_length=k-1,RA!==0&&aA.prev_length<aA.max_lazy_match&&aA.strstart-RA<=aA.w_size-R&&(aA.match_length=QA(aA,RA),aA.match_length<=5&&(aA.strategy===1||aA.match_length===k&&4096<aA.strstart-aA.match_start)&&(aA.match_length=k-1)),aA.prev_length>=k&&aA.match_length<=aA.prev_length){for(HA=aA.strstart+aA.lookahead-k,NA=Q._tr_tally(aA,aA.strstart-1-aA.prev_match,aA.prev_length-k),aA.lookahead-=aA.prev_length-1,aA.prev_length-=2;++aA.strstart<=HA&&(aA.ins_h=(aA.ins_h<<aA.hash_shift^aA.window[aA.strstart+k-1])&aA.hash_mask,RA=aA.prev[aA.strstart&aA.w_mask]=aA.head[aA.ins_h],aA.head[aA.ins_h]=aA.strstart),--aA.prev_length!=0;);if(aA.match_available=0,aA.match_length=k-1,aA.strstart++,NA&&(gA(aA,!1),aA.strm.avail_out===0))return U}else if(aA.match_available){if((NA=Q._tr_tally(aA,0,aA.window[aA.strstart-1]))&&gA(aA,!1),aA.strstart++,aA.lookahead--,aA.strm.avail_out===0)return U}else aA.match_available=1,aA.strstart++,aA.lookahead--}return aA.match_available&&(NA=Q._tr_tally(aA,0,aA.window[aA.strstart-1]),aA.match_available=0),aA.insert=aA.strstart<k-1?aA.strstart:k-1,xA===r?(gA(aA,!0),aA.strm.avail_out===0?Y:b):aA.last_lit&&(gA(aA,!1),aA.strm.avail_out===0)?U:K}function hA(aA,xA,RA,NA,HA){this.good_length=aA,this.max_lazy=xA,this.nice_length=RA,this.max_chain=NA,this.func=HA}function sA(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=d,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new C.Buf16(2*m),this.dyn_dtree=new C.Buf16(2*(2*u+1)),this.bl_tree=new C.Buf16(2*(2*G+1)),W(this.dyn_ltree),W(this.dyn_dtree),W(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new C.Buf16(p+1),this.heap=new C.Buf16(2*w+1),W(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new C.Buf16(2*w+1),W(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function cA(aA){var xA;return aA&&aA.state?(aA.total_in=aA.total_out=0,aA.data_type=D,(xA=aA.state).pending=0,xA.pending_out=0,xA.wrap<0&&(xA.wrap=-xA.wrap),xA.status=xA.wrap?x:N,aA.adler=xA.wrap===2?0:1,xA.last_flush=s,Q._tr_init(xA),a):q(aA,c)}function SA(aA){var xA=cA(aA);return xA===a&&(function(RA){RA.window_size=2*RA.w_size,W(RA.head),RA.max_lazy_match=B[RA.level].max_lazy,RA.good_match=B[RA.level].good_length,RA.nice_match=B[RA.level].nice_length,RA.max_chain_length=B[RA.level].max_chain,RA.strstart=0,RA.block_start=0,RA.lookahead=0,RA.insert=0,RA.match_length=RA.prev_length=k-1,RA.match_available=0,RA.ins_h=0})(aA.state),xA}function FA(aA,xA,RA,NA,HA,PA){if(!aA)return c;var GA=1;if(xA===h&&(xA=6),NA<0?(GA=0,NA=-NA):15<NA&&(GA=2,NA-=16),HA<1||y<HA||RA!==d||NA<8||15<NA||xA<0||9<xA||PA<0||l<PA)return q(aA,c);NA===8&&(NA=9);var LA=new sA;return(aA.state=LA).strm=aA,LA.wrap=GA,LA.gzhead=null,LA.w_bits=NA,LA.w_size=1<<LA.w_bits,LA.w_mask=LA.w_size-1,LA.hash_bits=HA+7,LA.hash_size=1<<LA.hash_bits,LA.hash_mask=LA.hash_size-1,LA.hash_shift=~~((LA.hash_bits+k-1)/k),LA.window=new C.Buf8(2*LA.w_size),LA.head=new C.Buf16(LA.hash_size),LA.prev=new C.Buf16(LA.w_size),LA.lit_bufsize=1<<HA+6,LA.pending_buf_size=4*LA.lit_bufsize,LA.pending_buf=new C.Buf8(LA.pending_buf_size),LA.d_buf=1*LA.lit_bufsize,LA.l_buf=3*LA.lit_bufsize,LA.level=xA,LA.strategy=PA,LA.method=RA,SA(aA)}B=[new hA(0,0,0,0,function(aA,xA){var RA=65535;for(RA>aA.pending_buf_size-5&&(RA=aA.pending_buf_size-5);;){if(aA.lookahead<=1){if(nA(aA),aA.lookahead===0&&xA===s)return U;if(aA.lookahead===0)break}aA.strstart+=aA.lookahead,aA.lookahead=0;var NA=aA.block_start+RA;if((aA.strstart===0||aA.strstart>=NA)&&(aA.lookahead=aA.strstart-NA,aA.strstart=NA,gA(aA,!1),aA.strm.avail_out===0)||aA.strstart-aA.block_start>=aA.w_size-R&&(gA(aA,!1),aA.strm.avail_out===0))return U}return aA.insert=0,xA===r?(gA(aA,!0),aA.strm.avail_out===0?Y:b):(aA.strstart>aA.block_start&&(gA(aA,!1),aA.strm.avail_out),U)}),new hA(4,4,8,4,DA),new hA(4,5,16,8,DA),new hA(4,6,32,32,DA),new hA(4,4,16,16,CA),new hA(8,16,32,32,CA),new hA(8,16,128,128,CA),new hA(8,32,128,256,CA),new hA(32,128,258,1024,CA),new hA(32,258,258,4096,CA)],o.deflateInit=function(aA,xA){return FA(aA,xA,d,15,8,0)},o.deflateInit2=FA,o.deflateReset=SA,o.deflateResetKeep=cA,o.deflateSetHeader=function(aA,xA){return aA&&aA.state?aA.state.wrap!==2?c:(aA.state.gzhead=xA,a):c},o.deflate=function(aA,xA){var RA,NA,HA,PA;if(!aA||!aA.state||5<xA||xA<0)return aA?q(aA,c):c;if(NA=aA.state,!aA.output||!aA.input&&aA.avail_in!==0||NA.status===666&&xA!==r)return q(aA,aA.avail_out===0?-5:c);if(NA.strm=aA,RA=NA.last_flush,NA.last_flush=xA,NA.status===x)if(NA.wrap===2)aA.adler=0,tA(NA,31),tA(NA,139),tA(NA,8),NA.gzhead?(tA(NA,(NA.gzhead.text?1:0)+(NA.gzhead.hcrc?2:0)+(NA.gzhead.extra?4:0)+(NA.gzhead.name?8:0)+(NA.gzhead.comment?16:0)),tA(NA,255&NA.gzhead.time),tA(NA,NA.gzhead.time>>8&255),tA(NA,NA.gzhead.time>>16&255),tA(NA,NA.gzhead.time>>24&255),tA(NA,NA.level===9?2:2<=NA.strategy||NA.level<2?4:0),tA(NA,255&NA.gzhead.os),NA.gzhead.extra&&NA.gzhead.extra.length&&(tA(NA,255&NA.gzhead.extra.length),tA(NA,NA.gzhead.extra.length>>8&255)),NA.gzhead.hcrc&&(aA.adler=E(aA.adler,NA.pending_buf,NA.pending,0)),NA.gzindex=0,NA.status=69):(tA(NA,0),tA(NA,0),tA(NA,0),tA(NA,0),tA(NA,0),tA(NA,NA.level===9?2:2<=NA.strategy||NA.level<2?4:0),tA(NA,3),NA.status=N);else{var GA=d+(NA.w_bits-8<<4)<<8;GA|=(2<=NA.strategy||NA.level<2?0:NA.level<6?1:NA.level===6?2:3)<<6,NA.strstart!==0&&(GA|=32),GA+=31-GA%31,NA.status=N,IA(NA,GA),NA.strstart!==0&&(IA(NA,aA.adler>>>16),IA(NA,65535&aA.adler)),aA.adler=1}if(NA.status===69)if(NA.gzhead.extra){for(HA=NA.pending;NA.gzindex<(65535&NA.gzhead.extra.length)&&(NA.pending!==NA.pending_buf_size||(NA.gzhead.hcrc&&NA.pending>HA&&(aA.adler=E(aA.adler,NA.pending_buf,NA.pending-HA,HA)),Z(aA),HA=NA.pending,NA.pending!==NA.pending_buf_size));)tA(NA,255&NA.gzhead.extra[NA.gzindex]),NA.gzindex++;NA.gzhead.hcrc&&NA.pending>HA&&(aA.adler=E(aA.adler,NA.pending_buf,NA.pending-HA,HA)),NA.gzindex===NA.gzhead.extra.length&&(NA.gzindex=0,NA.status=73)}else NA.status=73;if(NA.status===73)if(NA.gzhead.name){HA=NA.pending;do{if(NA.pending===NA.pending_buf_size&&(NA.gzhead.hcrc&&NA.pending>HA&&(aA.adler=E(aA.adler,NA.pending_buf,NA.pending-HA,HA)),Z(aA),HA=NA.pending,NA.pending===NA.pending_buf_size)){PA=1;break}PA=NA.gzindex<NA.gzhead.name.length?255&NA.gzhead.name.charCodeAt(NA.gzindex++):0,tA(NA,PA)}while(PA!==0);NA.gzhead.hcrc&&NA.pending>HA&&(aA.adler=E(aA.adler,NA.pending_buf,NA.pending-HA,HA)),PA===0&&(NA.gzindex=0,NA.status=91)}else NA.status=91;if(NA.status===91)if(NA.gzhead.comment){HA=NA.pending;do{if(NA.pending===NA.pending_buf_size&&(NA.gzhead.hcrc&&NA.pending>HA&&(aA.adler=E(aA.adler,NA.pending_buf,NA.pending-HA,HA)),Z(aA),HA=NA.pending,NA.pending===NA.pending_buf_size)){PA=1;break}PA=NA.gzindex<NA.gzhead.comment.length?255&NA.gzhead.comment.charCodeAt(NA.gzindex++):0,tA(NA,PA)}while(PA!==0);NA.gzhead.hcrc&&NA.pending>HA&&(aA.adler=E(aA.adler,NA.pending_buf,NA.pending-HA,HA)),PA===0&&(NA.status=103)}else NA.status=103;if(NA.status===103&&(NA.gzhead.hcrc?(NA.pending+2>NA.pending_buf_size&&Z(aA),NA.pending+2<=NA.pending_buf_size&&(tA(NA,255&aA.adler),tA(NA,aA.adler>>8&255),aA.adler=0,NA.status=N)):NA.status=N),NA.pending!==0){if(Z(aA),aA.avail_out===0)return NA.last_flush=-1,a}else if(aA.avail_in===0&&j(xA)<=j(RA)&&xA!==r)return q(aA,-5);if(NA.status===666&&aA.avail_in!==0)return q(aA,-5);if(aA.avail_in!==0||NA.lookahead!==0||xA!==s&&NA.status!==666){var LA=NA.strategy===2?(function(dA,bA){for(var WA;;){if(dA.lookahead===0&&(nA(dA),dA.lookahead===0)){if(bA===s)return U;break}if(dA.match_length=0,WA=Q._tr_tally(dA,0,dA.window[dA.strstart]),dA.lookahead--,dA.strstart++,WA&&(gA(dA,!1),dA.strm.avail_out===0))return U}return dA.insert=0,bA===r?(gA(dA,!0),dA.strm.avail_out===0?Y:b):dA.last_lit&&(gA(dA,!1),dA.strm.avail_out===0)?U:K})(NA,xA):NA.strategy===3?(function(dA,bA){for(var WA,Qg,YA,uA,kA=dA.window;;){if(dA.lookahead<=S){if(nA(dA),dA.lookahead<=S&&bA===s)return U;if(dA.lookahead===0)break}if(dA.match_length=0,dA.lookahead>=k&&0<dA.strstart&&(Qg=kA[YA=dA.strstart-1])===kA[++YA]&&Qg===kA[++YA]&&Qg===kA[++YA]){uA=dA.strstart+S;do;while(Qg===kA[++YA]&&Qg===kA[++YA]&&Qg===kA[++YA]&&Qg===kA[++YA]&&Qg===kA[++YA]&&Qg===kA[++YA]&&Qg===kA[++YA]&&Qg===kA[++YA]&&YA<uA);dA.match_length=S-(uA-YA),dA.match_length>dA.lookahead&&(dA.match_length=dA.lookahead)}if(dA.match_length>=k?(WA=Q._tr_tally(dA,1,dA.match_length-k),dA.lookahead-=dA.match_length,dA.strstart+=dA.match_length,dA.match_length=0):(WA=Q._tr_tally(dA,0,dA.window[dA.strstart]),dA.lookahead--,dA.strstart++),WA&&(gA(dA,!1),dA.strm.avail_out===0))return U}return dA.insert=0,bA===r?(gA(dA,!0),dA.strm.avail_out===0?Y:b):dA.last_lit&&(gA(dA,!1),dA.strm.avail_out===0)?U:K})(NA,xA):B[NA.level].func(NA,xA);if(LA!==Y&&LA!==b||(NA.status=666),LA===U||LA===Y)return aA.avail_out===0&&(NA.last_flush=-1),a;if(LA===K&&(xA===1?Q._tr_align(NA):xA!==5&&(Q._tr_stored_block(NA,0,0,!1),xA===3&&(W(NA.head),NA.lookahead===0&&(NA.strstart=0,NA.block_start=0,NA.insert=0))),Z(aA),aA.avail_out===0))return NA.last_flush=-1,a}return xA!==r?a:NA.wrap<=0?1:(NA.wrap===2?(tA(NA,255&aA.adler),tA(NA,aA.adler>>8&255),tA(NA,aA.adler>>16&255),tA(NA,aA.adler>>24&255),tA(NA,255&aA.total_in),tA(NA,aA.total_in>>8&255),tA(NA,aA.total_in>>16&255),tA(NA,aA.total_in>>24&255)):(IA(NA,aA.adler>>>16),IA(NA,65535&aA.adler)),Z(aA),0<NA.wrap&&(NA.wrap=-NA.wrap),NA.pending!==0?a:1)},o.deflateEnd=function(aA){var xA;return aA&&aA.state?(xA=aA.state.status)!==x&&xA!==69&&xA!==73&&xA!==91&&xA!==103&&xA!==N&&xA!==666?q(aA,c):(aA.state=null,xA===N?q(aA,-3):a):c},o.deflateSetDictionary=function(aA,xA){var RA,NA,HA,PA,GA,LA,dA,bA,WA=xA.length;if(!aA||!aA.state||(PA=(RA=aA.state).wrap)===2||PA===1&&RA.status!==x||RA.lookahead)return c;for(PA===1&&(aA.adler=i(aA.adler,xA,WA,0)),RA.wrap=0,WA>=RA.w_size&&(PA===0&&(W(RA.head),RA.strstart=0,RA.block_start=0,RA.insert=0),bA=new C.Buf8(RA.w_size),C.arraySet(bA,xA,WA-RA.w_size,RA.w_size,0),xA=bA,WA=RA.w_size),GA=aA.avail_in,LA=aA.next_in,dA=aA.input,aA.avail_in=WA,aA.next_in=0,aA.input=xA,nA(RA);RA.lookahead>=k;){for(NA=RA.strstart,HA=RA.lookahead-(k-1);RA.ins_h=(RA.ins_h<<RA.hash_shift^RA.window[NA+k-1])&RA.hash_mask,RA.prev[NA&RA.w_mask]=RA.head[RA.ins_h],RA.head[RA.ins_h]=NA,NA++,--HA;);RA.strstart=NA,RA.lookahead=k-1,nA(RA)}return RA.strstart+=RA.lookahead,RA.block_start=RA.strstart,RA.insert=RA.lookahead,RA.lookahead=0,RA.match_length=RA.prev_length=k-1,RA.match_available=0,aA.next_in=LA,aA.input=dA,aA.avail_in=GA,RA.wrap=PA,a},o.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./messages":51,"./trees":52}],47:[function(e,t,o){t.exports=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}},{}],48:[function(e,t,o){t.exports=function(B,C){var Q,i,E,n,s,r,a,c,h,l,D,d,y,w,u,G,m,p,k,S,R,x,N,U,K;Q=B.state,i=B.next_in,U=B.input,E=i+(B.avail_in-5),n=B.next_out,K=B.output,s=n-(C-B.avail_out),r=n+(B.avail_out-257),a=Q.dmax,c=Q.wsize,h=Q.whave,l=Q.wnext,D=Q.window,d=Q.hold,y=Q.bits,w=Q.lencode,u=Q.distcode,G=(1<<Q.lenbits)-1,m=(1<<Q.distbits)-1;A:do{y<15&&(d+=U[i++]<<y,y+=8,d+=U[i++]<<y,y+=8),p=w[d&G];g:for(;;){if(d>>>=k=p>>>24,y-=k,(k=p>>>16&255)===0)K[n++]=65535&p;else{if(!(16&k)){if((64&k)==0){p=w[(65535&p)+(d&(1<<k)-1)];continue g}if(32&k){Q.mode=12;break A}B.msg="invalid literal/length code",Q.mode=30;break A}S=65535&p,(k&=15)&&(y<k&&(d+=U[i++]<<y,y+=8),S+=d&(1<<k)-1,d>>>=k,y-=k),y<15&&(d+=U[i++]<<y,y+=8,d+=U[i++]<<y,y+=8),p=u[d&m];I:for(;;){if(d>>>=k=p>>>24,y-=k,!(16&(k=p>>>16&255))){if((64&k)==0){p=u[(65535&p)+(d&(1<<k)-1)];continue I}B.msg="invalid distance code",Q.mode=30;break A}if(R=65535&p,y<(k&=15)&&(d+=U[i++]<<y,(y+=8)<k&&(d+=U[i++]<<y,y+=8)),a<(R+=d&(1<<k)-1)){B.msg="invalid distance too far back",Q.mode=30;break A}if(d>>>=k,y-=k,(k=n-s)<R){if(h<(k=R-k)&&Q.sane){B.msg="invalid distance too far back",Q.mode=30;break A}if(N=D,(x=0)===l){if(x+=c-k,k<S){for(S-=k;K[n++]=D[x++],--k;);x=n-R,N=K}}else if(l<k){if(x+=c+l-k,(k-=l)<S){for(S-=k;K[n++]=D[x++],--k;);if(x=0,l<S){for(S-=k=l;K[n++]=D[x++],--k;);x=n-R,N=K}}}else if(x+=l-k,k<S){for(S-=k;K[n++]=D[x++],--k;);x=n-R,N=K}for(;2<S;)K[n++]=N[x++],K[n++]=N[x++],K[n++]=N[x++],S-=3;S&&(K[n++]=N[x++],1<S&&(K[n++]=N[x++]))}else{for(x=n-R;K[n++]=K[x++],K[n++]=K[x++],K[n++]=K[x++],2<(S-=3););S&&(K[n++]=K[x++],1<S&&(K[n++]=K[x++]))}break}}break}}while(i<E&&n<r);i-=S=y>>3,d&=(1<<(y-=S<<3))-1,B.next_in=i,B.next_out=n,B.avail_in=i<E?E-i+5:5-(i-E),B.avail_out=n<r?r-n+257:257-(n-r),Q.hold=d,Q.bits=y}},{}],49:[function(e,t,o){var B=e("../utils/common"),C=e("./adler32"),Q=e("./crc32"),i=e("./inffast"),E=e("./inftrees"),n=1,s=2,r=0,a=-2,c=1,h=852,l=592;function D(x){return(x>>>24&255)+(x>>>8&65280)+((65280&x)<<8)+((255&x)<<24)}function d(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new B.Buf16(320),this.work=new B.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function y(x){var N;return x&&x.state?(N=x.state,x.total_in=x.total_out=N.total=0,x.msg="",N.wrap&&(x.adler=1&N.wrap),N.mode=c,N.last=0,N.havedict=0,N.dmax=32768,N.head=null,N.hold=0,N.bits=0,N.lencode=N.lendyn=new B.Buf32(h),N.distcode=N.distdyn=new B.Buf32(l),N.sane=1,N.back=-1,r):a}function w(x){var N;return x&&x.state?((N=x.state).wsize=0,N.whave=0,N.wnext=0,y(x)):a}function u(x,N){var U,K;return x&&x.state?(K=x.state,N<0?(U=0,N=-N):(U=1+(N>>4),N<48&&(N&=15)),N&&(N<8||15<N)?a:(K.window!==null&&K.wbits!==N&&(K.window=null),K.wrap=U,K.wbits=N,w(x))):a}function G(x,N){var U,K;return x?(K=new d,(x.state=K).window=null,(U=u(x,N))!==r&&(x.state=null),U):a}var m,p,k=!0;function S(x){if(k){var N;for(m=new B.Buf32(512),p=new B.Buf32(32),N=0;N<144;)x.lens[N++]=8;for(;N<256;)x.lens[N++]=9;for(;N<280;)x.lens[N++]=7;for(;N<288;)x.lens[N++]=8;for(E(n,x.lens,0,288,m,0,x.work,{bits:9}),N=0;N<32;)x.lens[N++]=5;E(s,x.lens,0,32,p,0,x.work,{bits:5}),k=!1}x.lencode=m,x.lenbits=9,x.distcode=p,x.distbits=5}function R(x,N,U,K){var Y,b=x.state;return b.window===null&&(b.wsize=1<<b.wbits,b.wnext=0,b.whave=0,b.window=new B.Buf8(b.wsize)),K>=b.wsize?(B.arraySet(b.window,N,U-b.wsize,b.wsize,0),b.wnext=0,b.whave=b.wsize):(K<(Y=b.wsize-b.wnext)&&(Y=K),B.arraySet(b.window,N,U-K,Y,b.wnext),(K-=Y)?(B.arraySet(b.window,N,U-K,K,0),b.wnext=K,b.whave=b.wsize):(b.wnext+=Y,b.wnext===b.wsize&&(b.wnext=0),b.whave<b.wsize&&(b.whave+=Y))),0}o.inflateReset=w,o.inflateReset2=u,o.inflateResetKeep=y,o.inflateInit=function(x){return G(x,15)},o.inflateInit2=G,o.inflate=function(x,N){var U,K,Y,b,q,j,W,Z,gA,tA,IA,QA,nA,DA,CA,hA,sA,cA,SA,FA,aA,xA,RA,NA,HA=0,PA=new B.Buf8(4),GA=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!x||!x.state||!x.output||!x.input&&x.avail_in!==0)return a;(U=x.state).mode===12&&(U.mode=13),q=x.next_out,Y=x.output,W=x.avail_out,b=x.next_in,K=x.input,j=x.avail_in,Z=U.hold,gA=U.bits,tA=j,IA=W,xA=r;A:for(;;)switch(U.mode){case c:if(U.wrap===0){U.mode=13;break}for(;gA<16;){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}if(2&U.wrap&&Z===35615){PA[U.check=0]=255&Z,PA[1]=Z>>>8&255,U.check=Q(U.check,PA,2,0),gA=Z=0,U.mode=2;break}if(U.flags=0,U.head&&(U.head.done=!1),!(1&U.wrap)||(((255&Z)<<8)+(Z>>8))%31){x.msg="incorrect header check",U.mode=30;break}if((15&Z)!=8){x.msg="unknown compression method",U.mode=30;break}if(gA-=4,aA=8+(15&(Z>>>=4)),U.wbits===0)U.wbits=aA;else if(aA>U.wbits){x.msg="invalid window size",U.mode=30;break}U.dmax=1<<aA,x.adler=U.check=1,U.mode=512&Z?10:12,gA=Z=0;break;case 2:for(;gA<16;){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}if(U.flags=Z,(255&U.flags)!=8){x.msg="unknown compression method",U.mode=30;break}if(57344&U.flags){x.msg="unknown header flags set",U.mode=30;break}U.head&&(U.head.text=Z>>8&1),512&U.flags&&(PA[0]=255&Z,PA[1]=Z>>>8&255,U.check=Q(U.check,PA,2,0)),gA=Z=0,U.mode=3;case 3:for(;gA<32;){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}U.head&&(U.head.time=Z),512&U.flags&&(PA[0]=255&Z,PA[1]=Z>>>8&255,PA[2]=Z>>>16&255,PA[3]=Z>>>24&255,U.check=Q(U.check,PA,4,0)),gA=Z=0,U.mode=4;case 4:for(;gA<16;){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}U.head&&(U.head.xflags=255&Z,U.head.os=Z>>8),512&U.flags&&(PA[0]=255&Z,PA[1]=Z>>>8&255,U.check=Q(U.check,PA,2,0)),gA=Z=0,U.mode=5;case 5:if(1024&U.flags){for(;gA<16;){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}U.length=Z,U.head&&(U.head.extra_len=Z),512&U.flags&&(PA[0]=255&Z,PA[1]=Z>>>8&255,U.check=Q(U.check,PA,2,0)),gA=Z=0}else U.head&&(U.head.extra=null);U.mode=6;case 6:if(1024&U.flags&&(j<(QA=U.length)&&(QA=j),QA&&(U.head&&(aA=U.head.extra_len-U.length,U.head.extra||(U.head.extra=new Array(U.head.extra_len)),B.arraySet(U.head.extra,K,b,QA,aA)),512&U.flags&&(U.check=Q(U.check,K,QA,b)),j-=QA,b+=QA,U.length-=QA),U.length))break A;U.length=0,U.mode=7;case 7:if(2048&U.flags){if(j===0)break A;for(QA=0;aA=K[b+QA++],U.head&&aA&&U.length<65536&&(U.head.name+=String.fromCharCode(aA)),aA&&QA<j;);if(512&U.flags&&(U.check=Q(U.check,K,QA,b)),j-=QA,b+=QA,aA)break A}else U.head&&(U.head.name=null);U.length=0,U.mode=8;case 8:if(4096&U.flags){if(j===0)break A;for(QA=0;aA=K[b+QA++],U.head&&aA&&U.length<65536&&(U.head.comment+=String.fromCharCode(aA)),aA&&QA<j;);if(512&U.flags&&(U.check=Q(U.check,K,QA,b)),j-=QA,b+=QA,aA)break A}else U.head&&(U.head.comment=null);U.mode=9;case 9:if(512&U.flags){for(;gA<16;){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}if(Z!==(65535&U.check)){x.msg="header crc mismatch",U.mode=30;break}gA=Z=0}U.head&&(U.head.hcrc=U.flags>>9&1,U.head.done=!0),x.adler=U.check=0,U.mode=12;break;case 10:for(;gA<32;){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}x.adler=U.check=D(Z),gA=Z=0,U.mode=11;case 11:if(U.havedict===0)return x.next_out=q,x.avail_out=W,x.next_in=b,x.avail_in=j,U.hold=Z,U.bits=gA,2;x.adler=U.check=1,U.mode=12;case 12:if(N===5||N===6)break A;case 13:if(U.last){Z>>>=7&gA,gA-=7&gA,U.mode=27;break}for(;gA<3;){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}switch(U.last=1&Z,gA-=1,3&(Z>>>=1)){case 0:U.mode=14;break;case 1:if(S(U),U.mode=20,N!==6)break;Z>>>=2,gA-=2;break A;case 2:U.mode=17;break;case 3:x.msg="invalid block type",U.mode=30}Z>>>=2,gA-=2;break;case 14:for(Z>>>=7&gA,gA-=7&gA;gA<32;){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}if((65535&Z)!=(Z>>>16^65535)){x.msg="invalid stored block lengths",U.mode=30;break}if(U.length=65535&Z,gA=Z=0,U.mode=15,N===6)break A;case 15:U.mode=16;case 16:if(QA=U.length){if(j<QA&&(QA=j),W<QA&&(QA=W),QA===0)break A;B.arraySet(Y,K,b,QA,q),j-=QA,b+=QA,W-=QA,q+=QA,U.length-=QA;break}U.mode=12;break;case 17:for(;gA<14;){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}if(U.nlen=257+(31&Z),Z>>>=5,gA-=5,U.ndist=1+(31&Z),Z>>>=5,gA-=5,U.ncode=4+(15&Z),Z>>>=4,gA-=4,286<U.nlen||30<U.ndist){x.msg="too many length or distance symbols",U.mode=30;break}U.have=0,U.mode=18;case 18:for(;U.have<U.ncode;){for(;gA<3;){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}U.lens[GA[U.have++]]=7&Z,Z>>>=3,gA-=3}for(;U.have<19;)U.lens[GA[U.have++]]=0;if(U.lencode=U.lendyn,U.lenbits=7,RA={bits:U.lenbits},xA=E(0,U.lens,0,19,U.lencode,0,U.work,RA),U.lenbits=RA.bits,xA){x.msg="invalid code lengths set",U.mode=30;break}U.have=0,U.mode=19;case 19:for(;U.have<U.nlen+U.ndist;){for(;hA=(HA=U.lencode[Z&(1<<U.lenbits)-1])>>>16&255,sA=65535&HA,!((CA=HA>>>24)<=gA);){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}if(sA<16)Z>>>=CA,gA-=CA,U.lens[U.have++]=sA;else{if(sA===16){for(NA=CA+2;gA<NA;){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}if(Z>>>=CA,gA-=CA,U.have===0){x.msg="invalid bit length repeat",U.mode=30;break}aA=U.lens[U.have-1],QA=3+(3&Z),Z>>>=2,gA-=2}else if(sA===17){for(NA=CA+3;gA<NA;){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}gA-=CA,aA=0,QA=3+(7&(Z>>>=CA)),Z>>>=3,gA-=3}else{for(NA=CA+7;gA<NA;){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}gA-=CA,aA=0,QA=11+(127&(Z>>>=CA)),Z>>>=7,gA-=7}if(U.have+QA>U.nlen+U.ndist){x.msg="invalid bit length repeat",U.mode=30;break}for(;QA--;)U.lens[U.have++]=aA}}if(U.mode===30)break;if(U.lens[256]===0){x.msg="invalid code -- missing end-of-block",U.mode=30;break}if(U.lenbits=9,RA={bits:U.lenbits},xA=E(n,U.lens,0,U.nlen,U.lencode,0,U.work,RA),U.lenbits=RA.bits,xA){x.msg="invalid literal/lengths set",U.mode=30;break}if(U.distbits=6,U.distcode=U.distdyn,RA={bits:U.distbits},xA=E(s,U.lens,U.nlen,U.ndist,U.distcode,0,U.work,RA),U.distbits=RA.bits,xA){x.msg="invalid distances set",U.mode=30;break}if(U.mode=20,N===6)break A;case 20:U.mode=21;case 21:if(6<=j&&258<=W){x.next_out=q,x.avail_out=W,x.next_in=b,x.avail_in=j,U.hold=Z,U.bits=gA,i(x,IA),q=x.next_out,Y=x.output,W=x.avail_out,b=x.next_in,K=x.input,j=x.avail_in,Z=U.hold,gA=U.bits,U.mode===12&&(U.back=-1);break}for(U.back=0;hA=(HA=U.lencode[Z&(1<<U.lenbits)-1])>>>16&255,sA=65535&HA,!((CA=HA>>>24)<=gA);){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}if(hA&&(240&hA)==0){for(cA=CA,SA=hA,FA=sA;hA=(HA=U.lencode[FA+((Z&(1<<cA+SA)-1)>>cA)])>>>16&255,sA=65535&HA,!(cA+(CA=HA>>>24)<=gA);){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}Z>>>=cA,gA-=cA,U.back+=cA}if(Z>>>=CA,gA-=CA,U.back+=CA,U.length=sA,hA===0){U.mode=26;break}if(32&hA){U.back=-1,U.mode=12;break}if(64&hA){x.msg="invalid literal/length code",U.mode=30;break}U.extra=15&hA,U.mode=22;case 22:if(U.extra){for(NA=U.extra;gA<NA;){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}U.length+=Z&(1<<U.extra)-1,Z>>>=U.extra,gA-=U.extra,U.back+=U.extra}U.was=U.length,U.mode=23;case 23:for(;hA=(HA=U.distcode[Z&(1<<U.distbits)-1])>>>16&255,sA=65535&HA,!((CA=HA>>>24)<=gA);){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}if((240&hA)==0){for(cA=CA,SA=hA,FA=sA;hA=(HA=U.distcode[FA+((Z&(1<<cA+SA)-1)>>cA)])>>>16&255,sA=65535&HA,!(cA+(CA=HA>>>24)<=gA);){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}Z>>>=cA,gA-=cA,U.back+=cA}if(Z>>>=CA,gA-=CA,U.back+=CA,64&hA){x.msg="invalid distance code",U.mode=30;break}U.offset=sA,U.extra=15&hA,U.mode=24;case 24:if(U.extra){for(NA=U.extra;gA<NA;){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}U.offset+=Z&(1<<U.extra)-1,Z>>>=U.extra,gA-=U.extra,U.back+=U.extra}if(U.offset>U.dmax){x.msg="invalid distance too far back",U.mode=30;break}U.mode=25;case 25:if(W===0)break A;if(QA=IA-W,U.offset>QA){if((QA=U.offset-QA)>U.whave&&U.sane){x.msg="invalid distance too far back",U.mode=30;break}nA=QA>U.wnext?(QA-=U.wnext,U.wsize-QA):U.wnext-QA,QA>U.length&&(QA=U.length),DA=U.window}else DA=Y,nA=q-U.offset,QA=U.length;for(W<QA&&(QA=W),W-=QA,U.length-=QA;Y[q++]=DA[nA++],--QA;);U.length===0&&(U.mode=21);break;case 26:if(W===0)break A;Y[q++]=U.length,W--,U.mode=21;break;case 27:if(U.wrap){for(;gA<32;){if(j===0)break A;j--,Z|=K[b++]<<gA,gA+=8}if(IA-=W,x.total_out+=IA,U.total+=IA,IA&&(x.adler=U.check=U.flags?Q(U.check,Y,IA,q-IA):C(U.check,Y,IA,q-IA)),IA=W,(U.flags?Z:D(Z))!==U.check){x.msg="incorrect data check",U.mode=30;break}gA=Z=0}U.mode=28;case 28:if(U.wrap&&U.flags){for(;gA<32;){if(j===0)break A;j--,Z+=K[b++]<<gA,gA+=8}if(Z!==(4294967295&U.total)){x.msg="incorrect length check",U.mode=30;break}gA=Z=0}U.mode=29;case 29:xA=1;break A;case 30:xA=-3;break A;case 31:return-4;default:return a}return x.next_out=q,x.avail_out=W,x.next_in=b,x.avail_in=j,U.hold=Z,U.bits=gA,(U.wsize||IA!==x.avail_out&&U.mode<30&&(U.mode<27||N!==4))&&R(x,x.output,x.next_out,IA-x.avail_out)?(U.mode=31,-4):(tA-=x.avail_in,IA-=x.avail_out,x.total_in+=tA,x.total_out+=IA,U.total+=IA,U.wrap&&IA&&(x.adler=U.check=U.flags?Q(U.check,Y,IA,x.next_out-IA):C(U.check,Y,IA,x.next_out-IA)),x.data_type=U.bits+(U.last?64:0)+(U.mode===12?128:0)+(U.mode===20||U.mode===15?256:0),(tA==0&&IA===0||N===4)&&xA===r&&(xA=-5),xA)},o.inflateEnd=function(x){if(!x||!x.state)return a;var N=x.state;return N.window&&(N.window=null),x.state=null,r},o.inflateGetHeader=function(x,N){var U;return x&&x.state?(2&(U=x.state).wrap)==0?a:((U.head=N).done=!1,r):a},o.inflateSetDictionary=function(x,N){var U,K=N.length;return x&&x.state?(U=x.state).wrap!==0&&U.mode!==11?a:U.mode===11&&C(1,N,K,0)!==U.check?-3:R(x,N,K,K)?(U.mode=31,-4):(U.havedict=1,r):a},o.inflateInfo="pako inflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./inffast":48,"./inftrees":50}],50:[function(e,t,o){var B=e("../utils/common"),C=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],Q=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],i=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],E=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];t.exports=function(n,s,r,a,c,h,l,D){var d,y,w,u,G,m,p,k,S,R=D.bits,x=0,N=0,U=0,K=0,Y=0,b=0,q=0,j=0,W=0,Z=0,gA=null,tA=0,IA=new B.Buf16(16),QA=new B.Buf16(16),nA=null,DA=0;for(x=0;x<=15;x++)IA[x]=0;for(N=0;N<a;N++)IA[s[r+N]]++;for(Y=R,K=15;1<=K&&IA[K]===0;K--);if(K<Y&&(Y=K),K===0)return c[h++]=20971520,c[h++]=20971520,D.bits=1,0;for(U=1;U<K&&IA[U]===0;U++);for(Y<U&&(Y=U),x=j=1;x<=15;x++)if(j<<=1,(j-=IA[x])<0)return-1;if(0<j&&(n===0||K!==1))return-1;for(QA[1]=0,x=1;x<15;x++)QA[x+1]=QA[x]+IA[x];for(N=0;N<a;N++)s[r+N]!==0&&(l[QA[s[r+N]]++]=N);if(m=n===0?(gA=nA=l,19):n===1?(gA=C,tA-=257,nA=Q,DA-=257,256):(gA=i,nA=E,-1),x=U,G=h,q=N=Z=0,w=-1,u=(W=1<<(b=Y))-1,n===1&&852<W||n===2&&592<W)return 1;for(;;){for(p=x-q,S=l[N]<m?(k=0,l[N]):l[N]>m?(k=nA[DA+l[N]],gA[tA+l[N]]):(k=96,0),d=1<<x-q,U=y=1<<b;c[G+(Z>>q)+(y-=d)]=p<<24|k<<16|S|0,y!==0;);for(d=1<<x-1;Z&d;)d>>=1;if(d!==0?(Z&=d-1,Z+=d):Z=0,N++,--IA[x]==0){if(x===K)break;x=s[r+l[N]]}if(Y<x&&(Z&u)!==w){for(q===0&&(q=Y),G+=U,j=1<<(b=x-q);b+q<K&&!((j-=IA[b+q])<=0);)b++,j<<=1;if(W+=1<<b,n===1&&852<W||n===2&&592<W)return 1;c[w=Z&u]=Y<<24|b<<16|G-h|0}}return Z!==0&&(c[G+Z]=x-q<<24|64<<16|0),D.bits=Y,0}},{"../utils/common":41}],51:[function(e,t,o){t.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],52:[function(e,t,o){var B=e("../utils/common"),C=0,Q=1;function i(HA){for(var PA=HA.length;0<=--PA;)HA[PA]=0}var E=0,n=29,s=256,r=s+1+n,a=30,c=19,h=2*r+1,l=15,D=16,d=7,y=256,w=16,u=17,G=18,m=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],p=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],k=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],S=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],R=new Array(2*(r+2));i(R);var x=new Array(2*a);i(x);var N=new Array(512);i(N);var U=new Array(256);i(U);var K=new Array(n);i(K);var Y,b,q,j=new Array(a);function W(HA,PA,GA,LA,dA){this.static_tree=HA,this.extra_bits=PA,this.extra_base=GA,this.elems=LA,this.max_length=dA,this.has_stree=HA&&HA.length}function Z(HA,PA){this.dyn_tree=HA,this.max_code=0,this.stat_desc=PA}function gA(HA){return HA<256?N[HA]:N[256+(HA>>>7)]}function tA(HA,PA){HA.pending_buf[HA.pending++]=255&PA,HA.pending_buf[HA.pending++]=PA>>>8&255}function IA(HA,PA,GA){HA.bi_valid>D-GA?(HA.bi_buf|=PA<<HA.bi_valid&65535,tA(HA,HA.bi_buf),HA.bi_buf=PA>>D-HA.bi_valid,HA.bi_valid+=GA-D):(HA.bi_buf|=PA<<HA.bi_valid&65535,HA.bi_valid+=GA)}function QA(HA,PA,GA){IA(HA,GA[2*PA],GA[2*PA+1])}function nA(HA,PA){for(var GA=0;GA|=1&HA,HA>>>=1,GA<<=1,0<--PA;);return GA>>>1}function DA(HA,PA,GA){var LA,dA,bA=new Array(l+1),WA=0;for(LA=1;LA<=l;LA++)bA[LA]=WA=WA+GA[LA-1]<<1;for(dA=0;dA<=PA;dA++){var Qg=HA[2*dA+1];Qg!==0&&(HA[2*dA]=nA(bA[Qg]++,Qg))}}function CA(HA){var PA;for(PA=0;PA<r;PA++)HA.dyn_ltree[2*PA]=0;for(PA=0;PA<a;PA++)HA.dyn_dtree[2*PA]=0;for(PA=0;PA<c;PA++)HA.bl_tree[2*PA]=0;HA.dyn_ltree[2*y]=1,HA.opt_len=HA.static_len=0,HA.last_lit=HA.matches=0}function hA(HA){8<HA.bi_valid?tA(HA,HA.bi_buf):0<HA.bi_valid&&(HA.pending_buf[HA.pending++]=HA.bi_buf),HA.bi_buf=0,HA.bi_valid=0}function sA(HA,PA,GA,LA){var dA=2*PA,bA=2*GA;return HA[dA]<HA[bA]||HA[dA]===HA[bA]&&LA[PA]<=LA[GA]}function cA(HA,PA,GA){for(var LA=HA.heap[GA],dA=GA<<1;dA<=HA.heap_len&&(dA<HA.heap_len&&sA(PA,HA.heap[dA+1],HA.heap[dA],HA.depth)&&dA++,!sA(PA,LA,HA.heap[dA],HA.depth));)HA.heap[GA]=HA.heap[dA],GA=dA,dA<<=1;HA.heap[GA]=LA}function SA(HA,PA,GA){var LA,dA,bA,WA,Qg=0;if(HA.last_lit!==0)for(;LA=HA.pending_buf[HA.d_buf+2*Qg]<<8|HA.pending_buf[HA.d_buf+2*Qg+1],dA=HA.pending_buf[HA.l_buf+Qg],Qg++,LA===0?QA(HA,dA,PA):(QA(HA,(bA=U[dA])+s+1,PA),(WA=m[bA])!==0&&IA(HA,dA-=K[bA],WA),QA(HA,bA=gA(--LA),GA),(WA=p[bA])!==0&&IA(HA,LA-=j[bA],WA)),Qg<HA.last_lit;);QA(HA,y,PA)}function FA(HA,PA){var GA,LA,dA,bA=PA.dyn_tree,WA=PA.stat_desc.static_tree,Qg=PA.stat_desc.has_stree,YA=PA.stat_desc.elems,uA=-1;for(HA.heap_len=0,HA.heap_max=h,GA=0;GA<YA;GA++)bA[2*GA]!==0?(HA.heap[++HA.heap_len]=uA=GA,HA.depth[GA]=0):bA[2*GA+1]=0;for(;HA.heap_len<2;)bA[2*(dA=HA.heap[++HA.heap_len]=uA<2?++uA:0)]=1,HA.depth[dA]=0,HA.opt_len--,Qg&&(HA.static_len-=WA[2*dA+1]);for(PA.max_code=uA,GA=HA.heap_len>>1;1<=GA;GA--)cA(HA,bA,GA);for(dA=YA;GA=HA.heap[1],HA.heap[1]=HA.heap[HA.heap_len--],cA(HA,bA,1),LA=HA.heap[1],HA.heap[--HA.heap_max]=GA,HA.heap[--HA.heap_max]=LA,bA[2*dA]=bA[2*GA]+bA[2*LA],HA.depth[dA]=(HA.depth[GA]>=HA.depth[LA]?HA.depth[GA]:HA.depth[LA])+1,bA[2*GA+1]=bA[2*LA+1]=dA,HA.heap[1]=dA++,cA(HA,bA,1),2<=HA.heap_len;);HA.heap[--HA.heap_max]=HA.heap[1],(function(kA,OA){var $A,og,dg,Sg,Bg,Yg,iI=OA.dyn_tree,mA=OA.max_code,ng=OA.stat_desc.static_tree,pg=OA.stat_desc.has_stree,Ug=OA.stat_desc.extra_bits,mg=OA.stat_desc.extra_base,Rg=OA.stat_desc.max_length,Jg=0;for(Sg=0;Sg<=l;Sg++)kA.bl_count[Sg]=0;for(iI[2*kA.heap[kA.heap_max]+1]=0,$A=kA.heap_max+1;$A<h;$A++)Rg<(Sg=iI[2*iI[2*(og=kA.heap[$A])+1]+1]+1)&&(Sg=Rg,Jg++),iI[2*og+1]=Sg,mA<og||(kA.bl_count[Sg]++,Bg=0,mg<=og&&(Bg=Ug[og-mg]),Yg=iI[2*og],kA.opt_len+=Yg*(Sg+Bg),pg&&(kA.static_len+=Yg*(ng[2*og+1]+Bg)));if(Jg!==0){do{for(Sg=Rg-1;kA.bl_count[Sg]===0;)Sg--;kA.bl_count[Sg]--,kA.bl_count[Sg+1]+=2,kA.bl_count[Rg]--,Jg-=2}while(0<Jg);for(Sg=Rg;Sg!==0;Sg--)for(og=kA.bl_count[Sg];og!==0;)mA<(dg=kA.heap[--$A])||(iI[2*dg+1]!==Sg&&(kA.opt_len+=(Sg-iI[2*dg+1])*iI[2*dg],iI[2*dg+1]=Sg),og--)}})(HA,PA),DA(bA,uA,HA.bl_count)}function aA(HA,PA,GA){var LA,dA,bA=-1,WA=PA[1],Qg=0,YA=7,uA=4;for(WA===0&&(YA=138,uA=3),PA[2*(GA+1)+1]=65535,LA=0;LA<=GA;LA++)dA=WA,WA=PA[2*(LA+1)+1],++Qg<YA&&dA===WA||(Qg<uA?HA.bl_tree[2*dA]+=Qg:dA!==0?(dA!==bA&&HA.bl_tree[2*dA]++,HA.bl_tree[2*w]++):Qg<=10?HA.bl_tree[2*u]++:HA.bl_tree[2*G]++,bA=dA,uA=(Qg=0)===WA?(YA=138,3):dA===WA?(YA=6,3):(YA=7,4))}function xA(HA,PA,GA){var LA,dA,bA=-1,WA=PA[1],Qg=0,YA=7,uA=4;for(WA===0&&(YA=138,uA=3),LA=0;LA<=GA;LA++)if(dA=WA,WA=PA[2*(LA+1)+1],!(++Qg<YA&&dA===WA)){if(Qg<uA)for(;QA(HA,dA,HA.bl_tree),--Qg!=0;);else dA!==0?(dA!==bA&&(QA(HA,dA,HA.bl_tree),Qg--),QA(HA,w,HA.bl_tree),IA(HA,Qg-3,2)):Qg<=10?(QA(HA,u,HA.bl_tree),IA(HA,Qg-3,3)):(QA(HA,G,HA.bl_tree),IA(HA,Qg-11,7));bA=dA,uA=(Qg=0)===WA?(YA=138,3):dA===WA?(YA=6,3):(YA=7,4)}}i(j);var RA=!1;function NA(HA,PA,GA,LA){IA(HA,(E<<1)+(LA?1:0),3),(function(dA,bA,WA,Qg){hA(dA),tA(dA,WA),tA(dA,~WA),B.arraySet(dA.pending_buf,dA.window,bA,WA,dA.pending),dA.pending+=WA})(HA,PA,GA)}o._tr_init=function(HA){RA||((function(){var PA,GA,LA,dA,bA,WA=new Array(l+1);for(dA=LA=0;dA<n-1;dA++)for(K[dA]=LA,PA=0;PA<1<<m[dA];PA++)U[LA++]=dA;for(U[LA-1]=dA,dA=bA=0;dA<16;dA++)for(j[dA]=bA,PA=0;PA<1<<p[dA];PA++)N[bA++]=dA;for(bA>>=7;dA<a;dA++)for(j[dA]=bA<<7,PA=0;PA<1<<p[dA]-7;PA++)N[256+bA++]=dA;for(GA=0;GA<=l;GA++)WA[GA]=0;for(PA=0;PA<=143;)R[2*PA+1]=8,PA++,WA[8]++;for(;PA<=255;)R[2*PA+1]=9,PA++,WA[9]++;for(;PA<=279;)R[2*PA+1]=7,PA++,WA[7]++;for(;PA<=287;)R[2*PA+1]=8,PA++,WA[8]++;for(DA(R,r+1,WA),PA=0;PA<a;PA++)x[2*PA+1]=5,x[2*PA]=nA(PA,5);Y=new W(R,m,s+1,r,l),b=new W(x,p,0,a,l),q=new W(new Array(0),k,0,c,d)})(),RA=!0),HA.l_desc=new Z(HA.dyn_ltree,Y),HA.d_desc=new Z(HA.dyn_dtree,b),HA.bl_desc=new Z(HA.bl_tree,q),HA.bi_buf=0,HA.bi_valid=0,CA(HA)},o._tr_stored_block=NA,o._tr_flush_block=function(HA,PA,GA,LA){var dA,bA,WA=0;0<HA.level?(HA.strm.data_type===2&&(HA.strm.data_type=(function(Qg){var YA,uA=4093624447;for(YA=0;YA<=31;YA++,uA>>>=1)if(1&uA&&Qg.dyn_ltree[2*YA]!==0)return C;if(Qg.dyn_ltree[18]!==0||Qg.dyn_ltree[20]!==0||Qg.dyn_ltree[26]!==0)return Q;for(YA=32;YA<s;YA++)if(Qg.dyn_ltree[2*YA]!==0)return Q;return C})(HA)),FA(HA,HA.l_desc),FA(HA,HA.d_desc),WA=(function(Qg){var YA;for(aA(Qg,Qg.dyn_ltree,Qg.l_desc.max_code),aA(Qg,Qg.dyn_dtree,Qg.d_desc.max_code),FA(Qg,Qg.bl_desc),YA=c-1;3<=YA&&Qg.bl_tree[2*S[YA]+1]===0;YA--);return Qg.opt_len+=3*(YA+1)+5+5+4,YA})(HA),dA=HA.opt_len+3+7>>>3,(bA=HA.static_len+3+7>>>3)<=dA&&(dA=bA)):dA=bA=GA+5,GA+4<=dA&&PA!==-1?NA(HA,PA,GA,LA):HA.strategy===4||bA===dA?(IA(HA,2+(LA?1:0),3),SA(HA,R,x)):(IA(HA,4+(LA?1:0),3),(function(Qg,YA,uA,kA){var OA;for(IA(Qg,YA-257,5),IA(Qg,uA-1,5),IA(Qg,kA-4,4),OA=0;OA<kA;OA++)IA(Qg,Qg.bl_tree[2*S[OA]+1],3);xA(Qg,Qg.dyn_ltree,YA-1),xA(Qg,Qg.dyn_dtree,uA-1)})(HA,HA.l_desc.max_code+1,HA.d_desc.max_code+1,WA+1),SA(HA,HA.dyn_ltree,HA.dyn_dtree)),CA(HA),LA&&hA(HA)},o._tr_tally=function(HA,PA,GA){return HA.pending_buf[HA.d_buf+2*HA.last_lit]=PA>>>8&255,HA.pending_buf[HA.d_buf+2*HA.last_lit+1]=255&PA,HA.pending_buf[HA.l_buf+HA.last_lit]=255&GA,HA.last_lit++,PA===0?HA.dyn_ltree[2*GA]++:(HA.matches++,PA--,HA.dyn_ltree[2*(U[GA]+s+1)]++,HA.dyn_dtree[2*gA(PA)]++),HA.last_lit===HA.lit_bufsize-1},o._tr_align=function(HA){IA(HA,2,3),QA(HA,y,R),(function(PA){PA.bi_valid===16?(tA(PA,PA.bi_buf),PA.bi_buf=0,PA.bi_valid=0):8<=PA.bi_valid&&(PA.pending_buf[PA.pending++]=255&PA.bi_buf,PA.bi_buf>>=8,PA.bi_valid-=8)})(HA)}},{"../utils/common":41}],53:[function(e,t,o){t.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(e,t,o){(function(B){(function(C,Q){if(!C.setImmediate){var i,E,n,s,r=1,a={},c=!1,h=C.document,l=Object.getPrototypeOf&&Object.getPrototypeOf(C);l=l&&l.setTimeout?l:C,i={}.toString.call(C.process)==="[object process]"?function(w){I.nextTick(function(){d(w)})}:(function(){if(C.postMessage&&!C.importScripts){var w=!0,u=C.onmessage;return C.onmessage=function(){w=!1},C.postMessage("","*"),C.onmessage=u,w}})()?(s="setImmediate$"+Math.random()+"$",C.addEventListener?C.addEventListener("message",y,!1):C.attachEvent("onmessage",y),function(w){C.postMessage(s+w,"*")}):C.MessageChannel?((n=new MessageChannel).port1.onmessage=function(w){d(w.data)},function(w){n.port2.postMessage(w)}):h&&"onreadystatechange"in h.createElement("script")?(E=h.documentElement,function(w){var u=h.createElement("script");u.onreadystatechange=function(){d(w),u.onreadystatechange=null,E.removeChild(u),u=null},E.appendChild(u)}):function(w){setTimeout(d,0,w)},l.setImmediate=function(w){typeof w!="function"&&(w=new Function(""+w));for(var u=new Array(arguments.length-1),G=0;G<u.length;G++)u[G]=arguments[G+1];var m={callback:w,args:u};return a[r]=m,i(r),r++},l.clearImmediate=D}function D(w){delete a[w]}function d(w){if(c)setTimeout(d,0,w);else{var u=a[w];if(u){c=!0;try{(function(G){var m=G.callback,p=G.args;switch(p.length){case 0:m();break;case 1:m(p[0]);break;case 2:m(p[0],p[1]);break;case 3:m(p[0],p[1],p[2]);break;default:m.apply(Q,p)}})(u)}finally{D(w),c=!1}}}}function y(w){w.source===C&&typeof w.data=="string"&&w.data.indexOf(s)===0&&d(+w.data.slice(s.length))}})(typeof self>"u"?B===void 0?this:B:self)}).call(this,typeof NY<"u"?NY:typeof self<"u"?self:typeof window<"u"?window:{})},{}]},{},[10])(10)})})(TCg)),TCg.exports}var vMo=HMo();const ioA=Lp(vMo),TMo=async()=>await Promise.resolve().then(()=>CVo),qMo=async({circuitJson:g,projectName:A})=>{try{const{circuitJsonToStep:I}=await TMo(),e=await I(g,{exportMode:"assembly"}),t=new ioA;for(const[o,B]of Object.entries(e))t.file(o,B);Yk(await t.generateAsync({type:"blob"}),{fileName:`${A}-assembly.zip`})}catch(I){KC.error(`Failed to export assembly STEP: ${I instanceof Error?I.message:String(I)}`)}},ZMo=async({circuitJson:g,projectName:A})=>{await KC.promise((async()=>{const I=new ioA,[e,{convertCircuitJsonToBomRows:t,convertBomRowsToCsv:o},{convertCircuitJsonToPickAndPlaceCsv:B}]=await Promise.all([NS("circuit-json-to-gerber"),NS("circuit-json-to-bom-csv"),NS("circuit-json-to-pnp-csv")]),C=g.filter(r=>!("error_type"in r)&&!("warning_type"in r)),Q=e.convertCircuitJsonToGerberFiles(C,{flip_y_axis:!1});for(const[r,a]of Object.entries(Q))I.file(`gerber/${r}`,a);const i=await t({circuitJson:g}),E=await o(i);I.file("bom.csv",E);const n=await B(g,{supplier:"jlcpcb"});I.file("pick_and_place.csv",n);const s=await I.generateAsync({type:"blob"});Yk(s,{fileName:`${A}_fabrication_files.zip`})})(),{loading:"Generating fabrication files...",success:"Fabrication ZIP ready",error:I=>`Failed to generate fabrication files: ${I instanceof Error?I.message:String(I)}`})},OMo=async g=>{const{createFdmComponentBox:A,renderFdmComponentBoxPng:I}=await NS("circuit-json-to-fdm-component-box"),[e,t]=await Promise.all([A(g),I(g,{},{width:960,height:640})]);return{...e,previewPng:t}},WMo=async g=>{const{createFdmComponentBox:A}=await NS("circuit-json-to-fdm-component-box");return A(g)},TPI=({generatedBox:g,projectName:A})=>{const I=Uint8Array.from(g.threeMf);Yk(new Blob([I.buffer],{type:"model/3mf"}),{fileName:`${cCg(A)}-component-box.3mf`})},VMo=async({circuitJson:g,projectName:A})=>{await KC.promise((async()=>{const I=await WMo(g);TPI({generatedBox:I,projectName:A})})(),{loading:"Generating component box...",success:"Component box 3MF ready",error:I=>`Failed to generate component box: ${I instanceof Error?I.message:String(I)}`})},jMo=async({circuitJson:g,projectName:A})=>{let I;try{const{convertCircuitJsonToGltf:e}=await NS("circuit-json-to-gltf");console.log("convertCircuitJsonToGltf",e);const t=await e(g,{format:"glb",boardTextureResolution:1024});if(!t||!(t instanceof ArrayBuffer))throw new Error("Invalid GLB data returned from converter");I=new Blob([t],{type:"model/gltf-binary"})}catch(e){console.error("GLB Export Error:",e);return}Yk(I,{fileName:`${A}.glb`})},zMo=async({circuitJson:g,libraryName:A})=>{const{CircuitJsonToKicadLibraryConverter:I}=await NS("circuit-json-to-kicad"),e=new I(g,{libraryName:A,footprintLibraryName:A});e.runUntilFinished();const t=e.getOutput(),o=new ioA;o.file(`${A}.kicad_sym`,t.kicadSymString);for(const B of t.footprints){const C=o.folder(`${A}.pretty`);C&&C.file(`${B.footprintName}.kicad_mod`,`${B.kicadModString}
5672
5672
  `)}if(t.model3dSourcePaths.length>0){const B=o.folder(`${A}.3dshapes`);if(B)for(const C of t.model3dSourcePaths)try{const Q=C.split("/").pop()||C,i=await fetch(C);if(i.ok){const E=await i.arrayBuffer();B.file(Q,E)}}catch{}}return o.file("fp-lib-table",t.fpLibTableString),o.file("sym-lib-table",t.symLibTableString),o},XMo=async({circuitJson:g,projectName:A})=>{await KC.promise((async()=>{const e=await(await zMo({circuitJson:g,libraryName:A})).generateAsync({type:"blob"});Yk(e,{fileName:`${A}_kicad_library.zip`})})(),{loading:"Generating KiCad library...",success:"KiCad library ZIP ready",error:I=>`Failed to generate KiCad library: ${I instanceof Error?I.message:String(I)}`})},$Mo=async({circuitJson:g,projectName:A})=>{const{CircuitJsonToKicadPcbConverter:I,CircuitJsonToKicadSchConverter:e,CircuitJsonToKicadProConverter:t,resolveAndLoadKicad3dModelFiles:o}=await NS("circuit-json-to-kicad"),B=new e(g);B.runUntilFinished();const C=B.getOutputString(),Q=new I(g,{includeBuiltin3dModels:!0,projectName:A});Q.runUntilFinished();const i=Q.getOutputString(),E=new t(g,{projectName:A,schematicFilename:`${A}.kicad_sch`,pcbFilename:`${A}.kicad_pcb`});E.runUntilFinished();const n=E.getOutputString(),s=new ioA;return s.file(`${A}.kicad_sch`,C),s.file(`${A}.kicad_pcb`,i),s.file(`${A}.kicad_pro`,n),await o({projectName:A,model3dSourcePaths:Q.getModel3dSourcePaths(),fetch,onModelFile:({outputPath:r,content:a})=>{s.file(r,a)},onError:({sourcePath:r})=>{console.warn(`Failed to load 3D model from ${r}`)}}),s},ASo=async({circuitJson:g,projectName:A})=>{await KC.promise((async()=>{const e=await(await $Mo({circuitJson:g,projectName:A})).generateAsync({type:"blob"});Yk(e,{fileName:`${A}_kicad_project.zip`})})(),{loading:"Generating KiCad project...",success:"KiCad project ZIP ready",error:I=>`Failed to generate KiCad project: ${I instanceof Error?I.message:String(I)}`})},qPI=async({circuitJson:g,projectName:A,options:I={}})=>{try{const{convertCircuitJsonToLbrn:e}=await NS("circuit-json-to-lbrn"),o=(await e(g,{includeSilkscreen:I.includeSilkscreen??!1,includeOxidationCleaningLayer:I.includeOxidationCleaningLayer??!0})).toXml(),B=new Blob([o],{type:"application/lbrn"});Yk(B,{fileName:`${A}.lbrn2`})}catch(e){const t=e instanceof Error?e.message:"Unknown error";KC.error(`Failed to export to LBRN format: ${t}`)}},gSo=async({circuitJson:g,projectName:A})=>{const{convertCircuitJsonToPinoutSvg:I}=await NS("circuit-to-svg"),e=I(g);Yk(e,{fileName:`${A}-pinout.svg`,mimeType:"image/svg+xml"})},ISo=async({circuitJson:g,projectName:A})=>{const{circuitJsonToStep:I}=await NS("circuit-json-to-step"),e=g.find(i=>i.type==="pcb_board"),t=e&&"width"in e?e.width:void 0,o=e&&"height"in e?e.height:void 0,B=e&&"thickness"in e?e.thickness:void 0;if(t===void 0||o===void 0||B===void 0){KC.error("Board dimensions not found. Please add a pcb_board with width, height, and thickness to your circuit.");return}let C;try{C=await I(g,{boardWidth:t,boardHeight:o,boardThickness:B,productName:A,includeComponents:!0,includeExternalMeshes:!0})}catch(i){const E=i instanceof Error?i.message:"Unknown error";KC.error(`Failed to convert circuit to STEP format: ${E}`);return}const Q=new Blob([C],{type:"application/step"});try{Yk(Q,{fileName:`${A}.step`})}catch(i){const E=i instanceof Error?i.message:"Unknown error";KC.error(`Failed to download STEP file: ${E}`)}},eSo=[{extension:"json",name:"Circuit JSON"},{extension:"json",name:"Simple Route JSON"},{extension:"zip",name:"Fabrication Files"},{extension:"zip",name:"KiCad Project"},{extension:"zip",name:"Altium Project"},{extension:"zip",name:"KiCad Library"},{extension:"glb",name:"GLB (Binary GLTF)"},{extension:"svg",name:"Pinout SVG"},{extension:"step",name:"STEP"},{extension:"zip",name:"Assembly STEP"},{extension:"lbrn2",name:"LightBurn"}],tSo=async({exportName:g,circuitJson:A,simpleRouteJson:I,projectName:e})=>{const t=cCg(e);if(g==="Fabrication Files"){await ZMo({circuitJson:A,projectName:t});return}if(g==="KiCad Project"){await ASo({circuitJson:A,projectName:t});return}if(g==="Altium Project"){await bMo({circuitJson:A,projectName:t});return}if(g==="KiCad Library"){await XMo({circuitJson:A,projectName:t});return}if(g==="Circuit JSON"){Yk(JSON.stringify(A,null,2),{fileName:`${t}.circuit.json`,mimeType:"application/json"});return}if(g==="Simple Route JSON"){if(!I)throw new Error("No Simple Route JSON available to export");Yk(JSON.stringify(I,null,2),{fileName:`${t}.simple-route.json`,mimeType:"application/json"});return}if(g==="GLB (Binary GLTF)"){await jMo({circuitJson:A,projectName:t});return}if(g==="Pinout SVG"){gSo({circuitJson:A,projectName:t});return}if(g==="STEP"){await ISo({circuitJson:A,projectName:t});return}if(g==="Assembly STEP"){await qMo({circuitJson:A,projectName:t});return}if(g==="Component Box (3MF)"){await VMo({circuitJson:A,projectName:t});return}if(g==="LightBurn"){await qPI({circuitJson:A,projectName:t});return}throw new Error(`Unsupported export type: "${g}"`)},oSo=({packageName:g,onSelectReview:A})=>{const I=Uc(n=>n.fsMap),e=Uc(n=>n.circuitJson),[t,o]=z.useState([]),[B,C]=z.useState(!1),[Q,i]=z.useState(!1);z.useEffect(()=>{!g||!xDA()||(C(!0),ugA.get("ai_reviews/list",{searchParams:{package_name:g}}).json().then(n=>o(n.ai_reviews)).catch(n=>{console.error("Failed to load AI reviews",n),KC.error("Failed to load AI reviews")}).finally(()=>C(!1)))},[g]);const E=async()=>{if(!e){KC.error("Need Circuit JSON to Request AI Review");return}if(!xDA()){KC.error("Missing registry token");return}i(!0);try{const{ai_review:n}=await ugA.post("ai_reviews/create",{json:{package_name:g??"unknown",fs_map:Object.fromEntries(I),circuit_json:e}}).json();o(s=>[n,...s]),A(n),KC.success("AI review requested")}catch(n){console.error("Failed to create AI review",n),KC.error("Failed to request AI review")}finally{i(!1)}};return T.jsxs(T.Fragment,{children:[T.jsxs(fL,{children:[T.jsx(RL,{children:"AI Review"}),T.jsx(Jb,{children:"Select an AI review or request a new one."})]}),T.jsx("div",{className:"rf-flex rf-gap-4 rf-mt-4",children:T.jsx("div",{className:"rf-w-48 rf-h-64 rf-overflow-y-auto rf-border rf-rounded rf-p-2 rf-flex-shrink-0",children:B?T.jsx("div",{className:"rf-text-sm",children:"Loading..."}):t.length>0?t.map(n=>T.jsx("div",{className:"rf-text-sm rf-p-2 rf-cursor-pointer rf-rounded hover:rf-bg-zinc-100",onClick:()=>A(n),children:new Date(n.created_at||"").toLocaleString()},n.ai_review_id)):T.jsx("div",{className:"rf-text-sm rf-text-muted-foreground",children:"No AI reviews found."})})}),T.jsx(JO,{className:"rf-mt-4",children:T.jsx(si,{onClick:E,disabled:Q,children:Q?"Requesting...":"Review my Board"})})]})};function qCg(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var Pb=qCg();function ZPI(g){Pb=g}var EoA={exec:()=>null};function qs(g,A=""){let I=typeof g=="string"?g:g.source;const e={replace:(t,o)=>{let B=typeof o=="string"?o:o.source;return B=B.replace(qm.caret,"$1"),I=I.replace(t,B),e},getRegex:()=>new RegExp(I,A)};return e}var qm={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:g=>new RegExp(`^( {0,3}${g})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:g=>new RegExp(`^ {0,${Math.min(3,g-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:g=>new RegExp(`^ {0,${Math.min(3,g-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:g=>new RegExp(`^ {0,${Math.min(3,g-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:g=>new RegExp(`^ {0,${Math.min(3,g-1)}}#`),htmlBeginRegex:g=>new RegExp(`^ {0,${Math.min(3,g-1)}}<(?:[a-z].*>|!--)`,"i")},BSo=/^(?:[ \t]*(?:\n|$))+/,CSo=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,QSo=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,noA=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,iSo=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,ZCg=/(?:[*+-]|\d{1,9}[.)])/,OPI=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,WPI=qs(OPI).replace(/bull/g,ZCg).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),ESo=qs(OPI).replace(/bull/g,ZCg).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),OCg=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,nSo=/^[^\n]+/,WCg=/(?!\s*\])(?:\\.|[^\[\]\\])+/,sSo=qs(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",WCg).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),aSo=qs(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,ZCg).getRegex(),epA="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",VCg=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,rSo=qs("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",VCg).replace("tag",epA).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),VPI=qs(OCg).replace("hr",noA).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",epA).getRegex(),cSo=qs(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",VPI).getRegex(),jCg={blockquote:cSo,code:CSo,def:sSo,fences:QSo,heading:iSo,hr:noA,html:rSo,lheading:WPI,list:aSo,newline:BSo,paragraph:VPI,table:EoA,text:nSo},jPI=qs("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",noA).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",epA).getRegex(),hSo={...jCg,lheading:ESo,table:jPI,paragraph:qs(OCg).replace("hr",noA).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",jPI).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",epA).getRegex()},lSo={...jCg,html:qs(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",VCg).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:EoA,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:qs(OCg).replace("hr",noA).replace("heading",` *#{1,6} *[^
5673
5673
  ]`).replace("lheading",WPI).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},DSo=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,dSo=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,zPI=/^( {2,}|\\)\n(?!\s*$)/,ySo=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,tpA=/[\p{P}\p{S}]/u,zCg=/[\s\p{P}\p{S}]/u,XPI=/[^\s\p{P}\p{S}]/u,wSo=qs(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,zCg).getRegex(),$PI=/(?!~)[\p{P}\p{S}]/u,uSo=/(?!~)[\s\p{P}\p{S}]/u,GSo=/(?:[^\s\p{P}\p{S}]|~)/u,mSo=/\[[^[\]]*?\]\((?:\\.|[^\\\(\)]|\((?:\\.|[^\\\(\)])*\))*\)|`[^`]*?`|<[^<>]*?>/g,A4I=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,pSo=qs(A4I,"u").replace(/punct/g,tpA).getRegex(),kSo=qs(A4I,"u").replace(/punct/g,$PI).getRegex(),g4I="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",MSo=qs(g4I,"gu").replace(/notPunctSpace/g,XPI).replace(/punctSpace/g,zCg).replace(/punct/g,tpA).getRegex(),SSo=qs(g4I,"gu").replace(/notPunctSpace/g,GSo).replace(/punctSpace/g,uSo).replace(/punct/g,$PI).getRegex(),fSo=qs("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,XPI).replace(/punctSpace/g,zCg).replace(/punct/g,tpA).getRegex(),RSo=qs(/\\(punct)/,"gu").replace(/punct/g,tpA).getRegex(),NSo=qs(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),xSo=qs(VCg).replace("(?:-->|$)","-->").getRegex(),FSo=qs("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",xSo).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),opA=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,USo=qs(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",opA).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),I4I=qs(/^!?\[(label)\]\[(ref)\]/).replace("label",opA).replace("ref",WCg).getRegex(),e4I=qs(/^!?\[(ref)\](?:\[\])?/).replace("ref",WCg).getRegex(),JSo=qs("reflink|nolink(?!\\()","g").replace("reflink",I4I).replace("nolink",e4I).getRegex(),XCg={_backpedal:EoA,anyPunctuation:RSo,autolink:NSo,blockSkip:mSo,br:zPI,code:dSo,del:EoA,emStrongLDelim:pSo,emStrongRDelimAst:MSo,emStrongRDelimUnd:fSo,escape:DSo,link:USo,nolink:e4I,punctuation:wSo,reflink:I4I,reflinkSearch:JSo,tag:FSo,text:ySo,url:EoA},PSo={...XCg,link:qs(/^!?\[(label)\]\((.*?)\)/).replace("label",opA).getRegex(),reflink:qs(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",opA).getRegex()},$Cg={...XCg,emStrongRDelimAst:SSo,emStrongLDelim:kSo,url:qs(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\.|[^\\])*?(?:\\.|[^\s~\\]))\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/},KSo={...$Cg,br:qs(zPI).replace("{2,}","*").getRegex(),text:qs($Cg.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},BpA={normal:jCg,gfm:hSo,pedantic:lSo},soA={normal:XCg,gfm:$Cg,breaks:KSo,pedantic:PSo},LSo={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},t4I=g=>LSo[g];function dF(g,A){if(A){if(qm.escapeTest.test(g))return g.replace(qm.escapeReplace,t4I)}else if(qm.escapeTestNoEncode.test(g))return g.replace(qm.escapeReplaceNoEncode,t4I);return g}function o4I(g){try{g=encodeURI(g).replace(qm.percentDecode,"%")}catch{return null}return g}function B4I(g,A){const I=g.replace(qm.findPipe,(o,B,C)=>{let Q=!1,i=B;for(;--i>=0&&C[i]==="\\";)Q=!Q;return Q?"|":" |"}),e=I.split(qm.splitPipe);let t=0;if(e[0].trim()||e.shift(),e.length>0&&!e.at(-1)?.trim()&&e.pop(),A)if(e.length>A)e.splice(A);else for(;e.length<A;)e.push("");for(;t<e.length;t++)e[t]=e[t].trim().replace(qm.slashPipe,"|");return e}function aoA(g,A,I){const e=g.length;if(e===0)return"";let t=0;for(;t<e&&g.charAt(e-t-1)===A;)t++;return g.slice(0,e-t)}function YSo(g,A){if(g.indexOf(A[1])===-1)return-1;let I=0;for(let e=0;e<g.length;e++)if(g[e]==="\\")e++;else if(g[e]===A[0])I++;else if(g[e]===A[1]&&(I--,I<0))return e;return I>0?-2:-1}function C4I(g,A,I,e,t){const o=A.href,B=A.title||null,C=g[1].replace(t.other.outputLinkReplace,"$1");e.state.inLink=!0;const Q={type:g[0].charAt(0)==="!"?"image":"link",raw:I,href:o,title:B,text:C,tokens:e.inlineTokens(C)};return e.state.inLink=!1,Q}function _So(g,A,I){const e=g.match(I.other.indentCodeCompensation);if(e===null)return A;const t=e[1];return A.split(`