@cmmd-center/forge 0.13.114 → 0.13.115
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.
- package/dist/bin.cjs +2 -2
- package/dist/bin.mjs +2 -2
- package/dist/client/assets/{DiffPanel-CzgGHPBx.js → DiffPanel-DpvZA40X.js} +2 -2
- package/dist/client/assets/{DiffPanel.logic-Bs_UprSP.js → DiffPanel.logic-DzYl3pWb.js} +2 -2
- package/dist/client/assets/{DiffWorkerPoolProvider-wX7NVimp.js → DiffWorkerPoolProvider-tAwS1xfi.js} +2 -2
- package/dist/client/assets/{PullRequestCodePanel-6d1k7utK.js → PullRequestCodePanel-DGbt7FBZ.js} +2 -2
- package/dist/client/assets/{Virtualizer-ZzjXAD_c.js → Virtualizer-CmxrsmD5.js} +2 -2
- package/dist/client/assets/{WorkerPoolContext-CHKnGAoP.js → WorkerPoolContext-Cd6b1XeV.js} +32 -32
- package/dist/client/assets/{index-BiK_RT3-.js → index-C6Zp8912.js} +6 -6
- package/dist/client/index.html +4 -4
- package/dist/forge-build.json +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/transport-CgH8pQK3.js","assets/rolldown-runtime-hePW80VL.js","assets/workspaceReadinessAtom-D6bgTvKb.js","assets/atomRegistry-C1yW8tyM.js","assets/Stream-mUTFnSY9.js","assets/angular-html-B8mrqUL5.js","assets/html-XwrE-1r6.js","assets/javascript-obGGvMPs.js","assets/css-CNuuLpMC.js","assets/angular-ts-Bzix210W.js","assets/scss-YesllqfO.js","assets/apl-Dhin1L29.js","assets/xml-BlnrEAEy.js","assets/java-DdHNQ9hk.js","assets/json-DAgxKhMr.js","assets/astro-B-4NNgOP.js","assets/typescript-BydbNFcO.js","assets/postcss-BXeXVLqQ.js","assets/tsx-CUOciP0b.js","assets/blade-Wr94ul2N.js","assets/html-derivative-i4STDFnl.js","assets/sql-ClgswhA6.js","assets/bsl-BkkzgIyY.js","assets/sdbl-bTVj8UrX.js","assets/c-iCihek07.js","assets/cairo-DLTphjLi.js","assets/python-gzcpVVnB.js","assets/cobol-Cw2-KvLW.js","assets/coffee-CiiSLhB6.js","assets/cpp-DjoE5qBx.js","assets/regexp-DR20uMnK.js","assets/glsl-D5MA2a_X.js","assets/crystal-wCJpIkgB.js","assets/shellscript-Da78Ox-3.js","assets/edge-DCY0a-ow.js","assets/elixir-DP304Xio.js","assets/elm-o4NJxfws.js","assets/erb-BcNYoZVd.js","assets/ruby-2bd251b9.js","assets/haml-CwEpbK1d.js","assets/graphql-Ctjuxyvl.js","assets/jsx-gTgmArGx.js","assets/lua-FONpmTUP.js","assets/yaml-Du_6cdrH.js","assets/erlang-Cphh6RMH.js","assets/markdown-BYOwaDjH.js","assets/fortran-fixed-form-DEKoE2YW.js","assets/fortran-free-form-CYNrtFtB.js","assets/fsharp-D13ZGOAj.js","assets/gdresource-C0sCabJj.js","assets/gdshader-CBce3t8t.js","assets/gdscript-Cp2uCuqX.js","assets/git-commit-BSykSTBG.js","assets/diff-woXpYk--.js","assets/git-rebase-BDPpS8w6.js","assets/glimmer-js-BONyzAsu.js","assets/glimmer-ts-f9c0GCOe.js","assets/hack-7ztQ7Up-.js","assets/handlebars-ryMP1rBR.js","assets/http-kmH8AyfE.js","assets/hurl-DCZHXKU4.js","assets/csv-Dx-8-gkx.js","assets/hxml-B0Qn7Nwc.js","assets/haxe-OTjmBuCE.js","assets/jinja-B-tLrNsM.js","assets/jison-CBjhYtSs.js","assets/julia-CjHxn3vf.js","assets/r-D6UWEOL2.js","assets/just-CZ9bduw9.js","assets/perl-BAov3eih.js","assets/latex-D9bvcAJr.js","assets/tex-0w6-Dtgt.js","assets/liquid-G0MH4h_m.js","assets/marko-DV5GrDmo.js","assets/less-DVTAwKKz.js","assets/mdc-cg1lnqpW.js","assets/nextflow-BJtWHP5T.js","assets/nextflow-groovy-DJMQeKeT.js","assets/nginx-BTMw9COX.js","assets/nim-B6yJ_yaC.js","assets/php-Cg76ANFt.js","assets/pug-DkgDHZci.js","assets/qml-_a-QhfPD.js","assets/razor-D3EoCAik.js","assets/csharp-Ct8U2NOr.js","assets/rst-YTmaoyaq.js","assets/cmake-Bj61d0ZC.js","assets/sas-B6p8-ynO.js","assets/shaderlab-TOUzSsQk.js","assets/hlsl-Cvrh5tZx.js","assets/shellsession-CVsQGYfZ.js","assets/soy-DEd-qcad.js","assets/sparql-D_iOobhT.js","assets/turtle-ByJddavk.js","assets/stata-RoaAgbqU.js","assets/surrealql-DIn4NJsS.js","assets/svelte-Bj3Hmc9F.js","assets/templ-TjxbArHn.js","assets/go-rLFTqkRN.js","assets/ts-tags-DFwAVxhO.js","assets/twig-BbcH-NR0.js","assets/vue-BNi0qJZP.js","assets/vue-html-DkKkQnZL.js","assets/vue-vine-DFaKYU4X.js","assets/stylus-B6D30XZt.js","assets/xsl-BOPS8gLt.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{n as e,r as t,t as n}from"./rolldown-runtime-hePW80VL.js";import{$ as r,$t as i,Aa as a,An as o,Ar as s,At as c,B as l,Br as u,Bt as d,Ci as f,Dn as p,Ei as m,En as h,Er as g,Fa as _,Fi as v,Fn as y,Gn as b,Gt as x,Ha as S,Hn as C,Hr as w,Ht as T,Ia as E,It as ee,J as te,Jt as ne,Kt as re,L as ie,La as ae,Ln as oe,Lt as D,M as se,Ma as ce,Mr as le,Ni as ue,Nn as de,Nt as fe,Oa as pe,Pi as me,Pn as he,Pt as ge,Qi as _e,Rn as ve,Rr as ye,Rt as be,Si as xe,Ta as Se,Tn as Ce,Tr as we,Tt as Te,Ua as Ee,Un as De,Ur as Oe,Ut as eee,V as tee,Va as ke,Vn as Ae,Vr as je,Vt as Me,W as nee,Wa as ree,Wn as iee,Wr as aee,Wt as oee,X as see,Yi as Ne,Yt as cee,Z as lee,Zi as uee,_ as dee,_t as fee,an as pee,at as Pe,bn as mee,br as hee,bt as Fe,ca as Ie,ci as Le,ct as gee,dn as _ee,ea as Re,en as ze,et as Be,fi as Ve,gi as vee,gn as He,hn as yee,hr as bee,ht as xee,in as Ue,it as See,ja as Cee,jn as We,jr as wee,jt as Ge,ki as Tee,kr as Eee,kt as Dee,li as Ke,ln as Oee,m as kee,mn as Aee,mr as qe,na as jee,ni as Mee,nt as Je,oa as Nee,or as Ye,pn as Xe,pt as Pee,q as Fee,qt as Iee,r as Lee,rn as Ze,rr as Ree,rt as zee,sn as Bee,un as Vee,ut as Hee,vn as Qe,vr as Uee,wn as Wee,wr as $e,wt as et,xi as Gee,xn as tt,y as Kee,yi as qee,yn as Jee,z as Yee,zn as Xee,zt as Zee}from"./Stream-mUTFnSY9.js";import{i as Qee,l as nt,n as rt,o as it,s as at}from"./atomRegistry-C1yW8tyM.js";import{En as $ee,Fn as ot,J as st,On as ete,Rn as tte,Tn as ct,an as lt,cn as nte,dn as ut,fn as dt,gn as rte,hn as ft,i as ite,ln as ate,on as ote,sn as pt,un as ste}from"./CompositeItem-B299hxbI.js";import{$t as cte,A as mt,At as ht,Bt as gt,C as lte,Ct as _t,D as vt,Dt as yt,E as ute,En as bt,Et as xt,Fn as St,G as dte,Gn as fte,Gt as Ct,H as wt,Hn as pte,Ht as mte,In as Tt,J as hte,Jt as Et,Kn as gte,Kt as Dt,Lt as Ot,Mn as kt,Mt as At,Nn as _te,Nt as jt,O as Mt,On as vte,Ot as Nt,Q as yte,Qt as bte,R as Pt,Rt as xte,Sn as Ste,T as Cte,Tn as wte,U as Ft,Un as It,Ut as Lt,Vn as Rt,Vt as Tte,W as Ete,Wn as Dte,Wt as zt,Xt as Ote,Yn as kte,Yt as Ate,Zt as Bt,_n as Vt,_t as jte,a as Mte,an as Nte,b as Ht,bt as Pte,c as Fte,cn as Ut,dt as Wt,en as Ite,er as Gt,ft as Kt,gn as qt,gt as Jt,hn as Yt,i as Lte,in as Rte,j as Xt,jn as zte,jt as Zt,k as Bte,kn as Qt,l as $t,mt as Vte,nn as en,nt as tn,on as nn,pn as rn,qt as an,rt as on,s as O,sn,tn as cn,tt as Hte,ut as ln,v as un,vn as k,vt as dn,w as Ute,wt as Wte,x as Gte,xn as fn,yn as pn,zn as Kte,zt as qte}from"./src-BAHvoNAY.js";import{$ as Jte,A as mn,B as Yte,C as Xte,D as Zte,E as Qte,F as hn,G as $te,H as ene,I as gn,J as tne,K as nne,L as _n,M as vn,N as yn,O as rne,P as bn,Q as ine,R as ane,T as one,U as sne,W as cne,X as lne,Y as une,Z as dne,_ as fne,a as xn,c as pne,d as mne,et as hne,it as Sn,l as gne,n as Cn,nt as _ne,q as vne,rt as yne,s as bne,tt as xne,u as Sne,w as Cne}from"./cmmdAuthRedirect-BYBGztDm.js";import{t as A}from"./preload-helper-Czpn1I53.js";import{n as j,t as wn}from"./transport-CgH8pQK3.js";import{n as wne,t as Tne}from"./workspaceReadinessAtom-D6bgTvKb.js";function Ene(e){return e[e.length-1]}function Dne(e,t){return typeof e==`function`?e(t):e}var Tn=Object.prototype.hasOwnProperty,One=Object.prototype.propertyIsEnumerable;function kne(e){for(let t in e)if(Tn.call(e,t))return!0;return!1}var Ane=()=>Object.create(null),jne=(e,t)=>En(e,t,Ane);function En(e,t,n=()=>({}),r=0){if(e===t)return e;if(r>500)return t;let i=t,a=An(e)&&An(i);if(!a&&!(On(e)&&On(i)))return i;let o=a?e:Dn(e);if(!o)return i;let s=a?i:Dn(i);if(!s)return i;let c=o.length,l=s.length,u=a?Array(l):n(),d=0;for(let t=0;t<l;t++){let o=a?t:s[t],l=e[o],f=i[o];if(l===f){u[o]=l,(a?t<c:Tn.call(e,o))&&d++;continue}if(l===null||f===null||typeof l!=`object`||typeof f!=`object`){u[o]=f;continue}let p=En(l,f,n,r+1);u[o]=p,p===l&&d++}return c===l&&d===c?e:u}function Dn(e){let t=Object.keys(e);if(t.length!==Object.getOwnPropertyNames(e).length)return!1;let n=Object.getOwnPropertySymbols(e);if(n.length===0)return t;for(let r of n){if(!One.call(e,r))return!1;t.push(r)}return t}function On(e){if(!kn(e))return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(!kn(n)||!n.hasOwnProperty(`isPrototypeOf`))}function kn(e){return Object.prototype.toString.call(e)===`[object Object]`}function An(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function jn(e,t,n){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return!1;for(let r=0,i=e.length;r<i;r++)if(!jn(e[r],t[r],n))return!1;return!0}if(On(e)&&On(t)){let r=n?.ignoreUndefined??!0;if(n?.partial){for(let i in t)if((!r||t[i]!==void 0)&&!jn(e[i],t[i],n))return!1;return!0}let i=0;if(!r)i=Object.keys(e).length;else for(let t in e)e[t]!==void 0&&i++;let a=0;for(let o in t)if((!r||t[o]!==void 0)&&(a++,a>i||!jn(e[o],t[o],n)))return!1;return i===a}return!1}var Mne=/[\x00-\x1f\x7f"<>`{}]/g;function Nne(e){return e.replace(Mne,e=>`%`+e.charCodeAt(0).toString(16).toUpperCase().padStart(2,`0`))}function Mn(e){let t;try{t=decodeURI(e)}catch{t=e.replaceAll(/%[0-9A-F]{2}/gi,e=>{try{return decodeURI(e)}catch{return e}})}return Nne(t)}var Pne=[`http:`,`https:`,`mailto:`,`tel:`];function Fne(e,t){if(!e)return!1;try{let n=new URL(e);return!t.has(n.protocol)}catch{return!1}}function Ine(e){if(!e||!/[%\\\x00-\x1f\x7f]/.test(e)&&!e.startsWith(`//`))return{path:e,handledProtocolRelativeURL:!1};let t=/%25|%5C/gi,n=0,r=``,i;for(;(i=t.exec(e))!==null;)r+=Mn(e.slice(n,i.index))+i[0],n=t.lastIndex;r+=Mn(n?e.slice(n):e);let a=!1;return r.startsWith(`//`)&&(a=!0,r=`/`+r.replace(/^\/+/,``)),{path:r,handledProtocolRelativeURL:a}}function Lne(e){return/\s|[^\u0000-\u007F]/.test(e)?e.replace(/\s|[^\u0000-\u007F]/gu,encodeURIComponent):e}function Rne(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function Nn(){throw Error(`Invariant failed`)}var M=t(ree(),1),Pn=M.createContext(null);function Fn(e){return M.useContext(Pn)}var In=M.createContext(void 0),zne=M.createContext(void 0),Bne=tte();function Vne(e,t){return e===t}function Ln(e,t,n=Vne){let r=(0,M.useCallback)(t=>{if(!e)return()=>{};let{unsubscribe:n}=e.subscribe(t);return n},[e]),i=(0,M.useCallback)(()=>e?.get(),[e]);return(0,Bne.useSyncExternalStoreWithSelector)(r,i,i,t,n)}var Rn={};function zn(e,t){let n=M.useRef();return r=>{let i=e?.select?e.select(r):r;return e?.structuralSharing??t.options.defaultStructuralSharing?n.current=En(n.current,i):i}}function Bn(e){let t=Fn(),n=M.useContext(e.from?zne:In),r=e.from??n,i=t.stores.getMatchStore(r),a=zn(e,t),o=Ln(i,e=>e?a(e):Rn);if(o!==Rn)return o;(e.shouldThrow??!0)&&Nn()}function Hne(e){return Bn({from:e.from,shouldThrow:e.shouldThrow,structuralSharing:e.structuralSharing,strict:e.strict,select:t=>{let n=e.strict===!1?t.params:t._strictParams;return e.select?e.select(n):n}})}var N=Ee(),Vn=typeof window<`u`&&(window.desktopBridge!==void 0||window.nativeApi!==void 0),Hn=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},Un=new class extends Hn{#e;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<`u`&&window.addEventListener){let t=()=>e();return window.addEventListener(`visibilitychange`,t,!1),()=>{window.removeEventListener(`visibilitychange`,t)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(e=>{typeof e==`boolean`?this.setFocused(e):this.onFocus()})}setFocused(e){this.#e!==e&&(this.#e=e,this.onFocus())}onFocus(){let e=this.isFocused();this.listeners.forEach(t=>{t(e)})}isFocused(){return typeof this.#e==`boolean`?this.#e:globalThis.document?.visibilityState!==`hidden`}},Une={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},Wn=new class{#e=Une;setTimeoutProvider(e){this.#e=e}setTimeout(e,t){return this.#e.setTimeout(e,t)}clearTimeout(e){this.#e.clearTimeout(e)}setInterval(e,t){return this.#e.setInterval(e,t)}clearInterval(e){this.#e.clearInterval(e)}};function Wne(e){setTimeout(e,0)}var Gne=typeof window>`u`||`Deno`in globalThis;function Gn(){}function Kne(e,t){return typeof e==`function`?e(t):e}function Kn(e){return typeof e==`number`&&e>=0&&e!==1/0}function qn(e,t){return Math.max(e+(t||0)-Date.now(),0)}function Jn(e,t){return typeof e==`function`?e(t):e}function Yn(e,t){return typeof e==`function`?e(t):e}function qne(e,t){let{type:n=`all`,exact:r,fetchStatus:i,predicate:a,queryKey:o,stale:s}=e;if(o){if(r){if(t.queryHash!==Xn(o,t.options))return!1}else if(!Qn(t.queryKey,o))return!1}if(n!==`all`){let e=t.isActive();if(n===`active`&&!e||n===`inactive`&&e)return!1}return!(typeof s==`boolean`&&t.isStale()!==s||i&&i!==t.state.fetchStatus||a&&!a(t))}function Jne(e,t){let{exact:n,status:r,predicate:i,mutationKey:a}=e;if(a){if(!t.options.mutationKey)return!1;if(n){if(Zn(t.options.mutationKey)!==Zn(a))return!1}else if(!Qn(t.options.mutationKey,a))return!1}return!(r&&t.state.status!==r||i&&!i(t))}function Xn(e,t){return(t?.queryKeyHashFn||Zn)(e)}function Zn(e){return JSON.stringify(e,(e,t)=>nr(t)?Object.keys(t).sort().reduce((e,n)=>(e[n]=t[n],e),{}):t)}function Qn(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(e&&t&&typeof e==`object`&&typeof t==`object`){if(Array.isArray(e)&&Array.isArray(t)){for(let n=0;n<t.length;n++)if(!Qn(e[n],t[n]))return!1;return!0}let n=Object.keys(t);for(let r of n)if(!Qn(e[r],t[r]))return!1;return!0}return!1}var Yne=Object.prototype.hasOwnProperty;function $n(e,t,n=0){if(e===t)return e;if(n>500)return t;let r=tr(e)&&tr(t);if(!r&&!(nr(e)&&nr(t)))return t;let i=(r?e:Object.keys(e)).length,a=r?t:Object.keys(t),o=a.length,s=r?Array(o):{},c=0;for(let l=0;l<o;l++){let o=r?l:a[l],u=e[o],d=t[o];if(u===d){s[o]=u,(r?l<i:Yne.call(e,o))&&c++;continue}if(u===null||d===null||typeof u!=`object`||typeof d!=`object`){s[o]=d;continue}let f=$n(u,d,n+1);s[o]=f,f===u&&c++}return i===o&&c===i?e:s}function er(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(e[n]!==t[n])return!1;return!0}function tr(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function nr(e){if(!rr(e))return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(!rr(n)||!n.hasOwnProperty(`isPrototypeOf`)||Object.getPrototypeOf(e)!==Object.prototype)}function rr(e){return Object.prototype.toString.call(e)===`[object Object]`}function Xne(e){return new Promise(t=>{Wn.setTimeout(t,e)})}function ir(e,t,n){return typeof n.structuralSharing==`function`?n.structuralSharing(e,t):n.structuralSharing===!1?t:$n(e,t)}function Zne(e){return e}function Qne(e,t,n=0){let r=[...e,t];return n&&r.length>n?r.slice(1):r}function $ne(e,t,n=0){let r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var ar=Symbol();function or(e,t){return!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===ar?()=>Promise.reject(Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function sr(e,t){return typeof e==`function`?e(...t):!!e}function ere(e,t,n){let r=!1,i;return Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(i??=t(),r?i:(r=!0,i.aborted?n():i.addEventListener(`abort`,n,{once:!0}),i))}),e}var cr=(()=>{let e=()=>Gne;return{isServer(){return e()},setIsServer(t){e=t}}})();function lr(){let e,t,n=new Promise((n,r)=>{e=n,t=r});n.status=`pending`,n.catch(()=>{});function r(e){Object.assign(n,e),delete n.resolve,delete n.reject}return n.resolve=t=>{r({status:`fulfilled`,value:t}),e(t)},n.reject=e=>{r({status:`rejected`,reason:e}),t(e)},n}var tre=Wne;function nre(){let e=[],t=0,n=e=>{e()},r=e=>{e()},i=tre,a=r=>{t?e.push(r):i(()=>{n(r)})},o=()=>{let t=e;e=[],t.length&&i(()=>{r(()=>{t.forEach(e=>{n(e)})})})};return{batch:e=>{let n;t++;try{n=e()}finally{t--,t||o()}return n},batchCalls:e=>(...t)=>{a(()=>{e(...t)})},schedule:a,setNotifyFunction:e=>{n=e},setBatchNotifyFunction:e=>{r=e},setScheduler:e=>{i=e}}}var ur=nre(),dr=new class extends Hn{#e=!0;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<`u`&&window.addEventListener){let t=()=>e(!0),n=()=>e(!1);return window.addEventListener(`online`,t,!1),window.addEventListener(`offline`,n,!1),()=>{window.removeEventListener(`online`,t),window.removeEventListener(`offline`,n)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(this.setOnline.bind(this))}setOnline(e){this.#e!==e&&(this.#e=e,this.listeners.forEach(t=>{t(e)}))}isOnline(){return this.#e}};function rre(e){return Math.min(1e3*2**e,3e4)}function fr(e){return(e??`online`)!==`online`||dr.isOnline()}var pr=class extends Error{constructor(e){super(`CancelledError`),this.revert=e?.revert,this.silent=e?.silent}};function mr(e){let t=!1,n=0,r,i=lr(),a=()=>i.status!==`pending`,o=t=>{if(!a()){let n=new pr(t);f(n),e.onCancel?.(n)}},s=()=>{t=!0},c=()=>{t=!1},l=()=>Un.isFocused()&&(e.networkMode===`always`||dr.isOnline())&&e.canRun(),u=()=>fr(e.networkMode)&&e.canRun(),d=e=>{a()||(r?.(),i.resolve(e))},f=e=>{a()||(r?.(),i.reject(e))},p=()=>new Promise(t=>{r=e=>{(a()||l())&&t(e)},e.onPause?.()}).then(()=>{r=void 0,a()||e.onContinue?.()}),m=()=>{if(a())return;let r,i=n===0?e.initialPromise:void 0;try{r=i??e.fn()}catch(e){r=Promise.reject(e)}Promise.resolve(r).then(d).catch(r=>{if(a())return;let i=e.retry??(cr.isServer()?0:3),o=e.retryDelay??rre,s=typeof o==`function`?o(n,r):o,c=i===!0||typeof i==`number`&&n<i||typeof i==`function`&&i(n,r);if(t||!c){f(r);return}n++,e.onFail?.(n,r),Xne(s).then(()=>l()?void 0:p()).then(()=>{t?f(r):m()})})};return{promise:i,status:()=>i.status,cancel:o,continue:()=>(r?.(),i),cancelRetry:s,continueRetry:c,canStart:u,start:()=>(u()?m():p().then(m),i)}}var hr=class{#e;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),Kn(this.gcTime)&&(this.#e=Wn.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(cr.isServer()?1/0:3e5))}clearGcTimeout(){this.#e!==void 0&&(Wn.clearTimeout(this.#e),this.#e=void 0)}};function ire(e){return{onFetch:(t,n)=>{let r=t.options,i=t.fetchOptions?.meta?.fetchMore?.direction,a=t.state.data?.pages||[],o=t.state.data?.pageParams||[],s={pages:[],pageParams:[]},c=0,l=async()=>{let n=!1,l=e=>{ere(e,()=>t.signal,()=>n=!0)},u=or(t.options,t.fetchOptions),d=async(e,r,i)=>{if(n)return Promise.reject(t.signal.reason);if(r==null&&e.pages.length)return Promise.resolve(e);let a=(()=>{let e={client:t.client,queryKey:t.queryKey,pageParam:r,direction:i?`backward`:`forward`,meta:t.options.meta};return l(e),e})(),o=await u(a),{maxPages:s}=t.options,c=i?$ne:Qne;return{pages:c(e.pages,o,s),pageParams:c(e.pageParams,r,s)}};if(i&&a.length){let e=i===`backward`,t=e?_r:gr,n={pages:a,pageParams:o};s=await d(n,t(r,n),e)}else{let t=e??a.length;do{let e=c===0?o[0]??r.initialPageParam:gr(r,s);if(c>0&&e==null)break;s=await d(s,e),c++}while(c<t)}return s};t.fetchFn=t.options.persister?()=>t.options.persister?.(l,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n):l}}}function gr(e,{pages:t,pageParams:n}){let r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function _r(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}function are(e,t){return t?gr(e,t)!=null:!1}function ore(e,t){return!t||!e.getPreviousPageParam?!1:_r(e,t)!=null}var sre=class extends hr{#e;#t;#n;#r;#i;#a;#o;#s;constructor(e){super(),this.#s=!1,this.#o=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.#i=e.client,this.#r=this.#i.getQueryCache(),this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.#t=br(this.options),this.state=e.state??this.#t,this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return this.#e}get promise(){return this.#a?.promise}setOptions(e){if(this.options={...this.#o,...e},e?._type&&(this.#e=e._type),this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){let e=br(this.options);e.data!==void 0&&(this.setState(yr(e.data,e.dataUpdatedAt)),this.#t=e)}}optionalRemove(){!this.observers.length&&this.state.fetchStatus===`idle`&&this.#r.remove(this)}setData(e,t){let n=ir(this.state.data,e,this.options);return this.#l({data:n,type:`success`,dataUpdatedAt:t?.updatedAt,manual:t?.manual}),n}setState(e){this.#l({type:`setState`,state:e})}cancel(e){let t=this.#a?.promise;return this.#a?.cancel(e),t?t.then(Gn).catch(Gn):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#t}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(e=>Yn(e.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===ar||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0&&this.observers.some(e=>Jn(e.options.staleTime,this)===`static`)}isStale(){return this.getObserversCount()>0?this.observers.some(e=>e.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(e=0){return this.state.data===void 0?!0:e===`static`?!1:this.state.isInvalidated?!0:!qn(this.state.dataUpdatedAt,e)}onFocus(){this.observers.find(e=>e.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),this.#a?.continue()}onOnline(){this.observers.find(e=>e.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),this.#a?.continue()}addObserver(e){this.observers.includes(e)||(this.observers.push(e),this.clearGcTimeout(),this.#r.notify({type:`observerAdded`,query:this,observer:e}))}removeObserver(e){this.observers.includes(e)&&(this.observers=this.observers.filter(t=>t!==e),this.observers.length||(this.#a&&(this.#s||this.#c()?this.#a.cancel({revert:!0}):this.#a.cancelRetry()),this.scheduleGc()),this.#r.notify({type:`observerRemoved`,query:this,observer:e}))}getObserversCount(){return this.observers.length}#c(){return this.state.fetchStatus===`paused`&&this.state.status===`pending`}invalidate(){this.state.isInvalidated||this.#l({type:`invalidate`})}async fetch(e,t){if(this.state.fetchStatus!==`idle`&&this.#a?.status()!==`rejected`){if(this.state.data!==void 0&&t?.cancelRefetch)this.cancel({silent:!0});else if(this.#a)return this.#a.continueRetry(),this.#a.promise}if(e&&this.setOptions(e),!this.options.queryFn){let e=this.observers.find(e=>e.options.queryFn);e&&this.setOptions(e.options)}let n=new AbortController,r=e=>{Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(this.#s=!0,n.signal)})},i=()=>{let e=or(this.options,t),n=(()=>{let e={client:this.#i,queryKey:this.queryKey,meta:this.meta};return r(e),e})();return this.#s=!1,this.options.persister?this.options.persister(e,n,this):e(n)},a=(()=>{let e={fetchOptions:t,options:this.options,queryKey:this.queryKey,client:this.#i,state:this.state,fetchFn:i};return r(e),e})();(this.#e===`infinite`?ire(this.options.pages):this.options.behavior)?.onFetch(a,this),this.#n=this.state,(this.state.fetchStatus===`idle`||this.state.fetchMeta!==a.fetchOptions?.meta)&&this.#l({type:`fetch`,meta:a.fetchOptions?.meta}),this.#a=mr({initialPromise:t?.initialPromise,fn:a.fetchFn,onCancel:e=>{e instanceof pr&&e.revert&&this.setState({...this.#n,fetchStatus:`idle`}),n.abort()},onFail:(e,t)=>{this.#l({type:`failed`,failureCount:e,error:t})},onPause:()=>{this.#l({type:`pause`})},onContinue:()=>{this.#l({type:`continue`})},retry:a.options.retry,retryDelay:a.options.retryDelay,networkMode:a.options.networkMode,canRun:()=>!0});try{let e=await this.#a.start();if(e===void 0)throw Error(`${this.queryHash} data is undefined`);return this.setData(e),this.#r.config.onSuccess?.(e,this),this.#r.config.onSettled?.(e,this.state.error,this),e}catch(e){if(e instanceof pr){if(e.silent)return this.#a.promise;if(e.revert){if(this.state.data===void 0)throw e;return this.state.data}}throw this.#l({type:`error`,error:e}),this.#r.config.onError?.(e,this),this.#r.config.onSettled?.(this.state.data,e,this),e}finally{this.scheduleGc()}}#l(e){let t=t=>{switch(e.type){case`failed`:return{...t,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case`pause`:return{...t,fetchStatus:`paused`};case`continue`:return{...t,fetchStatus:`fetching`};case`fetch`:return{...t,...vr(t.data,this.options),fetchMeta:e.meta??null};case`success`:let n={...t,...yr(e.data,e.dataUpdatedAt),dataUpdateCount:t.dataUpdateCount+1,...!e.manual&&{fetchStatus:`idle`,fetchFailureCount:0,fetchFailureReason:null}};return this.#n=e.manual?n:void 0,n;case`error`:let r=e.error;return{...t,error:r,errorUpdateCount:t.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:t.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:`idle`,status:`error`,isInvalidated:!0};case`invalidate`:return{...t,isInvalidated:!0};case`setState`:return{...t,...e.state}}};this.state=t(this.state),ur.batch(()=>{this.observers.forEach(e=>{e.onQueryUpdate()}),this.#r.notify({query:this,type:`updated`,action:e})})}};function vr(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:fr(t.networkMode)?`fetching`:`paused`,...e===void 0&&{error:null,status:`pending`}}}function yr(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:`success`}}function br(e){let t=typeof e.initialData==`function`?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt==`function`?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?`success`:`pending`,fetchStatus:`idle`}}var xr=class extends Hn{constructor(e,t){super(),this.options=t,this.#e=e,this.#s=null,this.#o=lr(),this.bindMethods(),this.setOptions(t)}#e;#t=void 0;#n=void 0;#r=void 0;#i;#a;#o;#s;#c;#l;#u;#d;#f;#p;#m=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(this.#t.addObserver(this),Sr(this.#t,this.options)?this.#h():this.updateResult(),this.#y())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return Cr(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return Cr(this.#t,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#b(),this.#x(),this.#t.removeObserver(this)}setOptions(e){let t=this.options,n=this.#t;if(this.options=this.#e.defaultQueryOptions(e),this.options.enabled!==void 0&&typeof this.options.enabled!=`boolean`&&typeof this.options.enabled!=`function`&&typeof Yn(this.options.enabled,this.#t)!=`boolean`)throw Error(`Expected enabled to be a boolean or a callback that returns a boolean`);this.#S(),this.#t.setOptions(this.options),t._defaulted&&!er(this.options,t)&&this.#e.getQueryCache().notify({type:`observerOptionsUpdated`,query:this.#t,observer:this});let r=this.hasListeners();r&&wr(this.#t,n,this.options,t)&&this.#h(),this.updateResult(),r&&(this.#t!==n||Yn(this.options.enabled,this.#t)!==Yn(t.enabled,this.#t)||Jn(this.options.staleTime,this.#t)!==Jn(t.staleTime,this.#t))&&this.#g();let i=this.#_();r&&(this.#t!==n||Yn(this.options.enabled,this.#t)!==Yn(t.enabled,this.#t)||i!==this.#p)&&this.#v(i)}getOptimisticResult(e){let t=this.#e.getQueryCache().build(this.#e,e),n=this.createResult(t,e);return lre(this,n)&&(this.#r=n,this.#a=this.options,this.#i=this.#t.state),n}getCurrentResult(){return this.#r}trackResult(e,t){return new Proxy(e,{get:(e,n)=>(this.trackProp(n),t?.(n),n===`promise`&&(this.trackProp(`data`),!this.options.experimental_prefetchInRender&&this.#o.status===`pending`&&this.#o.reject(Error(`experimental_prefetchInRender feature flag is not enabled`))),Reflect.get(e,n))})}trackProp(e){this.#m.add(e)}getCurrentQuery(){return this.#t}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){let t=this.#e.defaultQueryOptions(e),n=this.#e.getQueryCache().build(this.#e,t);return n.fetch().then(()=>this.createResult(n,t))}fetch(e){return this.#h({...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#r))}#h(e){this.#S();let t=this.#t.fetch(this.options,e);return e?.throwOnError||(t=t.catch(Gn)),t}#g(){this.#b();let e=Jn(this.options.staleTime,this.#t);if(cr.isServer()||this.#r.isStale||!Kn(e))return;let t=qn(this.#r.dataUpdatedAt,e)+1;this.#d=Wn.setTimeout(()=>{this.#r.isStale||this.updateResult()},t)}#_(){return(typeof this.options.refetchInterval==`function`?this.options.refetchInterval(this.#t):this.options.refetchInterval)??!1}#v(e){this.#x(),this.#p=e,!(cr.isServer()||Yn(this.options.enabled,this.#t)===!1||!Kn(this.#p)||this.#p===0)&&(this.#f=Wn.setInterval(()=>{(this.options.refetchIntervalInBackground||Un.isFocused())&&this.#h()},this.#p))}#y(){this.#g(),this.#v(this.#_())}#b(){this.#d!==void 0&&(Wn.clearTimeout(this.#d),this.#d=void 0)}#x(){this.#f!==void 0&&(Wn.clearInterval(this.#f),this.#f=void 0)}createResult(e,t){let n=this.#t,r=this.options,i=this.#r,a=this.#i,o=this.#a,s=e===n?this.#n:e.state,{state:c}=e,l={...c},u=!1,d;if(t._optimisticResults){let i=this.hasListeners(),a=!i&&Sr(e,t),o=i&&wr(e,n,t,r);(a||o)&&(l={...l,...vr(c.data,e.options)}),t._optimisticResults===`isRestoring`&&(l.fetchStatus=`idle`)}let{error:f,errorUpdatedAt:p,status:m}=l;d=l.data;let h=!1;if(t.placeholderData!==void 0&&d===void 0&&m===`pending`){let e;i?.isPlaceholderData&&t.placeholderData===o?.placeholderData?(e=i.data,h=!0):e=typeof t.placeholderData==`function`?t.placeholderData(this.#u?.state.data,this.#u):t.placeholderData,e!==void 0&&(m=`success`,d=ir(i?.data,e,t),u=!0)}if(t.select&&d!==void 0&&!h)if(i&&d===a?.data&&t.select===this.#c)d=this.#l;else try{this.#c=t.select,d=t.select(d),d=ir(i?.data,d,t),this.#l=d,this.#s=null}catch(e){this.#s=e}this.#s&&(f=this.#s,d=this.#l,p=Date.now(),m=`error`);let g=l.fetchStatus===`fetching`,_=m===`pending`,v=m===`error`,y=_&&g,b=d!==void 0,x={status:m,fetchStatus:l.fetchStatus,isPending:_,isSuccess:m===`success`,isError:v,isInitialLoading:y,isLoading:y,data:d,dataUpdatedAt:l.dataUpdatedAt,error:f,errorUpdatedAt:p,failureCount:l.fetchFailureCount,failureReason:l.fetchFailureReason,errorUpdateCount:l.errorUpdateCount,isFetched:e.isFetched(),isFetchedAfterMount:l.dataUpdateCount>s.dataUpdateCount||l.errorUpdateCount>s.errorUpdateCount,isFetching:g,isRefetching:g&&!_,isLoadingError:v&&!b,isPaused:l.fetchStatus===`paused`,isPlaceholderData:u,isRefetchError:v&&b,isStale:Tr(e,t),refetch:this.refetch,promise:this.#o,isEnabled:Yn(t.enabled,e)!==!1};if(this.options.experimental_prefetchInRender){let t=x.data!==void 0,r=x.status===`error`&&!t,i=e=>{r?e.reject(x.error):t&&e.resolve(x.data)},a=()=>{let e=this.#o=x.promise=lr();i(e)},o=this.#o;switch(o.status){case`pending`:e.queryHash===n.queryHash&&i(o);break;case`fulfilled`:(r||x.data!==o.value)&&a();break;case`rejected`:(!r||x.error!==o.reason)&&a()}}return x}updateResult(){let e=this.#r,t=this.createResult(this.#t,this.options);this.#i=this.#t.state,this.#a=this.options,this.#i.data!==void 0&&(this.#u=this.#t),!er(t,e)&&(this.#r=t,this.#C({listeners:(()=>{if(!e)return!0;let{notifyOnChangeProps:t}=this.options,n=typeof t==`function`?t():t;if(n===`all`||!n&&!this.#m.size)return!0;let r=new Set(n??this.#m);return this.options.throwOnError&&r.add(`error`),Object.keys(this.#r).some(t=>{let n=t;return this.#r[n]!==e[n]&&r.has(n)})})()}))}#S(){let e=this.#e.getQueryCache().build(this.#e,this.options);if(e===this.#t)return;let t=this.#t;this.#t=e,this.#n=e.state,this.hasListeners()&&(t?.removeObserver(this),e.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#y()}#C(e){ur.batch(()=>{e.listeners&&this.listeners.forEach(e=>{e(this.#r)}),this.#e.getQueryCache().notify({query:this.#t,type:`observerResultsUpdated`})})}};function cre(e,t){return Yn(t.enabled,e)!==!1&&e.state.data===void 0&&(e.state.status!==`error`||Yn(t.retryOnMount,e)!==!1)}function Sr(e,t){return cre(e,t)||e.state.data!==void 0&&Cr(e,t,t.refetchOnMount)}function Cr(e,t,n){if(Yn(t.enabled,e)!==!1&&Jn(t.staleTime,e)!==`static`){let r=typeof n==`function`?n(e):n;return r===`always`||r!==!1&&Tr(e,t)}return!1}function wr(e,t,n,r){return(e!==t||Yn(r.enabled,e)===!1)&&(!n.suspense||e.state.status!==`error`)&&Tr(e,n)}function Tr(e,t){return Yn(t.enabled,e)!==!1&&e.isStaleByTime(Jn(t.staleTime,e))}function lre(e,t){return!er(e.getCurrentResult(),t)}var Er=M.createContext(void 0),Dr=e=>{let t=M.useContext(Er);if(e)return e;if(!t)throw Error(`No QueryClient set, use QueryClientProvider to set one`);return t},ure=({client:e,children:t})=>(M.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),(0,N.jsx)(Er.Provider,{value:e,children:t})),Or=M.createContext(!1),kr=()=>M.useContext(Or);Or.Provider;function dre(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var fre=M.createContext(dre()),Ar=()=>M.useContext(fre),jr=(e,t,n)=>{let r=n?.state.error&&typeof e.throwOnError==`function`?sr(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||r)&&(t.isReset()||(e.retryOnMount=!1))},Mr=e=>{M.useEffect(()=>{e.clearReset()},[e])},Nr=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:i})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(i&&e.data===void 0||sr(n,[e.error,r])),Pr=e=>{if(e.suspense){let t=1e3,n=e=>e===`static`?e:Math.max(e??t,t),r=e.staleTime;e.staleTime=typeof r==`function`?(...e)=>n(r(...e)):n(r),typeof e.gcTime==`number`&&(e.gcTime=Math.max(e.gcTime,t))}},pre=(e,t)=>e.isLoading&&e.isFetching&&!t,Fr=(e,t)=>e?.suspense&&t.isPending,Ir=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function Lr(e,t,n){let r=kr(),i=Ar(),a=Dr(n),o=a.defaultQueryOptions(e);a.getDefaultOptions().queries?._experimental_beforeQuery?.(o);let s=a.getQueryCache().get(o.queryHash),c=e.subscribed!==!1;o._optimisticResults=r?`isRestoring`:c?`optimistic`:void 0,Pr(o),jr(o,i,s),Mr(i);let l=!a.getQueryCache().get(o.queryHash),[u]=M.useState(()=>new t(a,o)),d=u.getOptimisticResult(o),f=!r&&c;if(M.useSyncExternalStore(M.useCallback(e=>{let t=f?u.subscribe(ur.batchCalls(e)):Gn;return u.updateResult(),t},[u,f]),()=>u.getCurrentResult(),()=>u.getCurrentResult()),M.useEffect(()=>{u.setOptions(o)},[o,u]),Fr(o,d))throw Ir(o,u,i);if(Nr({result:d,errorResetBoundary:i,throwOnError:o.throwOnError,query:s,suspense:o.suspense}))throw d.error;return a.getDefaultOptions().queries?._experimental_afterQuery?.(o,d),o.experimental_prefetchInRender&&!cr.isServer()&&pre(d,r)&&(l?Ir(o,u,i):s?.promise)?.catch(Gn).finally(()=>{u.updateResult()}),o.notifyOnChangeProps?d:u.trackResult(d)}function Rr(e,t){return Lr(e,xr,t)}function mre(e){return e}var hre=g,zr=globalThis.Number,gre=e=>{if(e===`NaN`)return v(NaN);if(e===`Infinity`)return v(1/0);if(e===`-Infinity`)return v(-1/0);if(e.trim()===``)return me();let t=zr(e);return zr.isNaN(t)?me():v(t)},_re=[[`GET`,`get`],[`POST`,`post`],[`PUT`,`put`],[`DELETE`,`del`],[`PATCH`,`patch`],[`HEAD`,`head`],[`OPTIONS`,`options`],[`TRACE`,`trace`]],Br=`~effect/http/HttpClientRequest`,vre={[Br]:Br,..._e,toJSON(){return{_id:`HttpClientRequest`,method:this.method,url:this.url,urlParams:this.urlParams,hash:this.hash,headers:Nee(this.headers),body:this.body.toJSON()}},pipe(){return ke(this,arguments)}};function Vr(e,t,n,r,i,a){let o=Object.create(vre);return o.method=e,o.url=t,o.urlParams=n,o.hash=r,o.headers=i,o.body=a,o}var yre=Vr(`GET`,``,bte,me(),mte,Ote),Hr=e=>(t,n)=>xre(yre,{method:e,url:t,...n??void 0}),bre=Hr(`POST`),xre=_(2,(e,t)=>{let n=e;return t.method&&(n=Sre(n,t.method)),t.url&&(n=Tre(n,t.url)),t.headers&&(n=Ur(n,t.headers)),t.urlParams&&(n=Ere(n,t.urlParams)),t.hash&&(n=Dre(n,t.hash)),t.body&&(n=Gr(n,t.body)),t.accept&&(n=Wr(n,t.accept)),t.acceptJson&&(n=wre(n)),n}),Sre=_(2,(e,t)=>Vr(t,e.url,e.urlParams,e.hash,e.headers,e.body)),Cre=_(3,(e,t,n)=>Vr(e.method,e.url,e.urlParams,e.hash,Et(e.headers,t,n),e.body)),Ur=_(2,(e,t)=>Vr(e.method,e.url,e.urlParams,e.hash,Ate(e.headers,t),e.body)),Wr=_(2,(e,t)=>Cre(e,`Accept`,t)),wre=Wr(`application/json`),Tre=_(2,(e,t)=>{if(typeof t==`string`)return Vr(e.method,t,e.urlParams,e.hash,e.headers,e.body);let n=new URL(t.toString()),r=cte(n.searchParams),i=Gee(n.hash===``?void 0:n.hash.slice(1));return n.search=``,n.hash=``,Vr(e.method,n.toString(),r,i,e.headers,e.body)}),Ere=_(2,(e,t)=>Vr(e.method,e.url,cn(e.urlParams,t),e.hash,e.headers,e.body)),Dre=_(2,(e,t)=>Vr(e.method,e.url,e.urlParams,v(t),e.headers,e.body)),Gr=_(2,(e,t)=>{let n=e.headers;return t._tag===`Empty`||t._tag===`FormData`?n=an(an(n,`Content-Type`),`Content-length`):(t.contentType&&(n=Et(n,`content-type`,t.contentType)),t.contentLength!==void 0&&(n=Et(n,`content-length`,t.contentLength.toString()))),Vr(e.method,e.url,e.urlParams,e.hash,n,t)}),Ore=e=>zt({b3:`${e.traceId}-${e.spanId}-${e.sampled?`1`:`0`}${ue(e.parent,{onNone:()=>``,onSome:e=>`-${e.spanId}`})}`,traceparent:`00-${e.traceId}-${e.spanId}-${e.sampled?`01`:`00`}`}),Kr=`~effect/http/HttpClient`,qr=Ke(`effect/HttpClient`),Jr=_(2,(e,t)=>Yr(n=>t(e.postprocess(n)),e.preprocess)),kre=Jr(Je(xte)),Yr=(e,t)=>{let n=Object.create(Are);return n.preprocess=t,n.postprocess=e,n.execute=function(n){return e(t(n))},n},Are={[Kr]:Kr,pipe(){return ke(this,arguments)},..._e,toJSON(){return{_id:`effect/HttpClient`}},...Object.fromEntries(_re.map(([e,t])=>[t,function(t,n){return this.execute(Hr(e)(t,n))}]))},jre=e=>Yr(t=>Je(t,t=>Qe(n=>{let i=Fre.get(t),a=i??new AbortController,o=Ite(t.url,t.urlParams,m(t.hash));if(Mee(o))return r(new en({reason:new Rte({request:t,cause:o.failure})}));let s=o.success;if(n.getRef(Eee)||n.getRef(Xr)(t)){let r=e(t,s,a.signal,n);return i?r:Xe(e=>Te(e(r),{onSuccess(e){return Qr.register(e,a),ze(new $r(e,a))},onFailure(e){return qe(e)&&a.abort(),Be(e)}}))}return yee(n.getRef(Nre)(t),{kind:`client`},r=>{r.attribute(`http.request.method`,t.method),r.attribute(`server.address`,s.origin),s.port!==``&&r.attribute(`server.port`,+s.port),r.attribute(`url.full`,s.toString()),r.attribute(`url.path`,s.pathname),r.attribute(`url.scheme`,s.protocol.slice(0,-1));let o=s.search.slice(1);o!==``&&r.attribute(`url.query`,o);let c=n.getRef(Tte),l=Dt(t.headers,c);for(let e in l)r.attribute(`http.request.header.${e}`,String(l[e]));return t=n.getRef(Zr)?Ur(t,Ore(r)):t,Xe(o=>o(e(t,s,a.signal,n)).pipe(Jee(r,{captureStackTrace:!1}),Te({onSuccess:e=>{r.attribute(`http.response.status_code`,e.status);let t=Dt(e.headers,c);for(let e in t)r.attribute(`http.response.header.${e}`,String(t[e]));return i?ze(e):(Qr.register(e,a),ze(new $r(e,a)))},onFailure(e){return!i&&qe(e)&&a.abort(),Be(e)}})))})})),ze),Mre=_(2,(e,t)=>{let n=Ce(t),r=n?`errors-and-responses`:t.retryOn??`errors-and-responses`,i=n?t:t.schedule,o=i&&h(i),s=n?void 0:t.times;return Jr(e,E(r===`errors-only`?ae:ee({schedule:o,times:s,while:ti}),r===`response-only`?ae:D({while:n||t.while===void 0?ei:a(ei,t.while),schedule:i,times:s})))}),Xr=Le(`effect/http/HttpClient/TracerDisabledWhen`,{defaultValue:()=>Cee}),Zr=Le(`effect/HttpClient/TracerPropagationEnabled`,{defaultValue:ce}),Nre=Le(`effect/http/HttpClient/SpanNameGenerator`,{defaultValue:()=>e=>`http.client ${e.method}`}),Pre=e=>We(qr)(te(t=>Fe(e,e=>Jr(e,Aee(e=>vee(t,e)))))),Qr=(()=>{if(`FinalizationRegistry`in globalThis&&globalThis.FinalizationRegistry){let e=new FinalizationRegistry(e=>{e.abort()});return{register(t,n){e.register(t,n,t)},unregister(t){e.unregister(t)}}}let e=new Map;return{register(t,n){e.set(t,setTimeout(()=>n.abort(),5e3))},unregister(t){let n=e.get(t);n!==void 0&&(clearTimeout(n),e.delete(t))}}})(),Fre=new WeakMap,$r=class{original;controller;constructor(e,t){this.original=e,this.controller=t}[Ot]=Ot;[gt]=gt;applyInterrupt(e){return Ze(()=>(Qr.unregister(this.original),Dee(e,()=>Ue(()=>{this.controller.abort()}))))}get request(){return this.original.request}get status(){return this.original.status}get headers(){return this.original.headers}get cookies(){return this.original.cookies}get remoteAddress(){return this.original.remoteAddress}get formData(){return this.applyInterrupt(this.original.formData)}get text(){return this.applyInterrupt(this.original.text)}get json(){return this.applyInterrupt(this.original.json)}get urlParamsBody(){return this.applyInterrupt(this.original.urlParamsBody)}get arrayBuffer(){return this.applyInterrupt(this.original.arrayBuffer)}get stream(){return dee(()=>(Qr.unregister(this.original),Lee(this.original.stream,Ue(()=>{this.controller.abort()}))))}toJSON(){return this.original.toJSON()}[Re](){return this.original[Re]()}pipe(){return ke(this,arguments)}},ei=e=>hee(e)||Ire(e),Ire=e=>nn(e)&&(e.reason._tag===`TransportError`||e.reason._tag===`StatusCodeError`&&ti(e.reason.response)),ti=e=>e.status===408||e.status===429||e.status===500||e.status===502||e.status===503||e.status===504;function ni(e){return{id:e.id??`ws:${e.label}`,label:e.label,source:e.source??`manual`,target:e.target}}function Lre(e){return e?.target.wsBaseUrl??null}function Rre(e){return e?.target.httpBaseUrl??null}function zre(e,t){return{...e,environmentId:t.environmentId,label:t.label}}function Bre(e){return e.cloudMode?`cmmd-cloud-runtime`:`local-web`}function Vre(e){let t=Bre(e);return{topology:t,controlPlane:t!==`cmmd-cloud-runtime`,executionPlane:!0,workspaceProxy:!1}}function Hre(e){let t=e.topology===`cmmd-cloud-runtime`;return{cmmd:!0,ownerBootstrapPromotion:e.topology!==`cloud-shell`&&!t,bearerBootstrap:!0,desktopBootstrap:e.topology===`desktop-local`,providerCredentialBroker:e.topology===`cmmd-control-plane`}}function Ure(e){let t=e.executionPlane;return{agents:t,browser:t,github:t,terminal:t,providerEgress:e.topology===`cmmd-control-plane`}}function Wre(e,t){return{localProjects:t.executionPlane,cloudProjects:e.cloudMode}}function ri(e){let t=e.capabilities,n=t.runtime??Vre(t);return{repositoryIdentity:t.repositoryIdentity,pullRequests:t.pullRequests??!1,cloudMode:t.cloudMode,posthogPublicKey:t.posthogPublicKey,posthogHost:t.posthogHost,runtime:n,auth:t.auth??Hre(n),tools:t.tools??Ure(n),projects:t.projects??Wre(t,n)}}function Gre(e){return e?ri(e).projects.cloudProjects:!1}function Kre(e){return e?ri(e).runtime.workspaceProxy??!1:!1}function ii(e,t){return{environmentId:e,projectId:t}}function ai(e,t){return{environmentId:e,threadId:t}}var oi=`scoped:v1:`;function si(e){let t=`projectId`in e?e.projectId:e.threadId;return t.includes(`:`)||e.environmentId.startsWith(oi)?`${oi}${encodeURIComponent(e.environmentId)}:${encodeURIComponent(t)}`:`${e.environmentId}:${t}`}function ci(e){return si(e)}function li(e){return si(e)}function qre(e){let t=e.slice(10),n=t.indexOf(`:`);if(n<=0||n>=t.length-1||t.indexOf(`:`,n+1)!==-1)return null;try{let e=decodeURIComponent(t.slice(0,n)),r=decodeURIComponent(t.slice(n+1));return e.length>0&&r.length>0?{environmentId:e,localId:r}:null}catch{return null}}function ui(e){if(e.startsWith(oi))return qre(e);let t=e.lastIndexOf(`:`);return t<=0||t>=e.length-1?null:{environmentId:e.slice(0,t),localId:e.slice(t+1)}}function di(e){let t=ui(e);return t?{environmentId:t.environmentId,projectId:t.localId}:null}function fi(e){let t=ui(e);return t?{environmentId:t.environmentId,threadId:t.localId}:null}var pi=`~effect/ManagedRuntime`,mi=(e,t)=>{let n=t?.memoMap??de(),r=iee(`parallel`),i=C(r,`sequential`),a={onFiberStart:ie(r)},s=e=>e?{...e,onFiberStart:e.onFiberStart?t=>{a.onFiberStart(t),e.onFiberStart(t)}:a.onFiberStart}:a,c,l=Qe(t=>(c||=d(pee(o(e,n,i),e=>Ue(()=>{u.cachedContext=e})),{...a,scheduler:t.currentScheduler}),See(se(c)))),u={[pi]:pi,memoMap:n,scope:r,contextEffect:l,cachedContext:void 0,context(){return u.cachedContext===void 0?T(u.contextEffect):Promise.resolve(u.cachedContext)},dispose(){return T(u.disposeEffect)},disposeEffect:Ze(()=>(u.contextEffect=see(`ManagedRuntime disposed`),u.cachedContext=void 0,Ae(u.scope,Ye))),runFork(e,t){return u.cachedContext===void 0?d(hi(u,e),s(t)):Me(u.cachedContext)(e,s(t))},runCallback(e,t){return u.cachedContext===void 0?be(hi(u,e),s(t)):Zee(u.cachedContext)(e,s(t))},runSyncExit(e){return u.cachedContext===void 0?Iee(hi(u,e)):ne(u.cachedContext)(e)},runSync(e){return u.cachedContext===void 0?re(hi(u,e)):cee(u.cachedContext)(e)},runPromiseExit(e,t){return u.cachedContext===void 0?eee(hi(u,e),s(t)):oee(u.cachedContext)(e,s(t))},runPromise(e,t){return u.cachedContext===void 0?T(hi(u,e),s(t)):x(u.cachedContext)(e,s(t))}};return u};function hi(e,t){return Je(e.contextEffect,e=>fe(t,e))}var gi={accept:!1,observe:!1,missingFrameCount:0,startsNewStream:!1};function _i(e){let t=e===!0;return{accept:t,observe:t,missingFrameCount:0,startsNewStream:t}}function Jre(e,t){let n=e.streamGeneration===void 0&&e.streamId===void 0,r=t.streamGeneration!==void 0||t.streamId!==void 0;return n&&r?_i(t.keyframe):null}function Yre(e,t){return e.streamGeneration===void 0||t.streamGeneration===void 0?null:t.streamGeneration<e.streamGeneration?gi:t.streamGeneration>e.streamGeneration?_i(t.keyframe):null}function Xre(e,t){if(!e.streamId||!t.streamId)return null;if(e.streamId!==t.streamId)return _i(t.keyframe);if(t.sequence<=e.observedSequence)return gi;let n=Math.max(0,t.sequence-e.observedSequence-1);return{accept:n===0||t.keyframe===!0,observe:!0,missingFrameCount:n,startsNewStream:!1}}function Zre(e,t){if(t.sequence>e.acceptedSequence)return{accept:!0,observe:!0,missingFrameCount:0,startsNewStream:!1};if(!e.acceptedCapturedAt)return gi;let n=Date.parse(e.acceptedCapturedAt),r=Date.parse(t.capturedAt);return Number.isNaN(n)||Number.isNaN(r)||r<=n?gi:{accept:!0,observe:!0,missingFrameCount:0,startsNewStream:!1}}function Qre(e,t){return Jre(e,t)??Yre(e,t)??Xre(e,t)??Zre(e,t)}function $re(e,t){let n=Qre(e,t);if(!n.observe)return{accept:n.accept,observe:n.observe,missingFrameCount:n.missingFrameCount,state:e};let r=n.startsNewStream?t.sequence:Math.max(e.observedSequence,t.sequence),i={...e,observedSequence:r,gapCount:e.gapCount+n.missingFrameCount},a=n.accept?{...i,acceptedSequence:t.sequence,acceptedCapturedAt:t.capturedAt,...t.streamId?{streamId:t.streamId}:{},...t.streamGeneration===void 0?{}:{streamGeneration:t.streamGeneration}}:i;return{accept:n.accept,observe:n.observe,missingFrameCount:n.missingFrameCount,state:a}}var vi=S();function eie(e){return e.stageLabel.trim().toLowerCase()===`latest`?e.baseName:`${e.baseName} (${e.stageLabel})`}var yi=`Forge`,bi=``,xi=bi===`latest`||bi===`nightly`?bi:null,Si=xi===`nightly`?`Nightly`:xi===`latest`?`Latest`:null,Ci=Si??`Alpha`,wi=Si?eie({baseName:yi,stageLabel:Ci}):yi,Ti=`0.13.4`,Ei=ft(`forge-app-top-bar drag-region @container/header-actions relative z-20 w-full min-w-0 shrink-0 bg-background`,`grid grid-cols-[minmax(0,1fr)_minmax(0,auto)] items-center`),Di=`flex h-full min-w-0 items-center gap-1 md:gap-1.5`,Oi=`flex h-touch min-w-0 max-w-full touch-manipulation items-center justify-center rounded-lg px-3 text-foreground transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring md:h-7 md:px-2`,tie={width:`calc(100% - var(--forge-right-panel-reserved-width, 0px))`},nie=`forge-app-shell flex w-full min-w-0 flex-row`,ki=`forge-app-shell flex w-full min-w-0 flex-col`,rie=`flex min-h-0 min-w-0 flex-1 flex-col`,iie=`relative flex h-[var(--forge-content-height)] min-h-0 min-w-0 flex-1 overflow-hidden`;function Ai(e){let t=(0,vi.c)(19),{showStageBadge:n,tone:r,variant:i}=e,a=n!==void 0&&n,o=r===void 0?`default`:r,s=(i===void 0?`default`:i)===`auth`,c=s?20:16,l=s?`h-5 w-5 shrink-0`:`h-4 w-4 shrink-0`,u;t[0]!==c||t[1]!==l?(u=(0,N.jsx)(`img`,{className:l,src:`/forge-mark.svg`,width:c,height:c,alt:``,"aria-hidden":`true`}),t[0]=c,t[1]=l,t[2]=u):u=t[2];let d=u,f=s?`text-[15px] sm:text-base`:`text-sm`,p=o===`on-dark`?`text-primary-foreground`:`text-foreground`,m;t[3]!==f||t[4]!==p?(m=ft(`truncate font-semibold tracking-tight`,f,p),t[3]=f,t[4]=p,t[5]=m):m=t[5];let h;t[6]===m?h=t[7]:(h=(0,N.jsx)(`span`,{className:m,children:yi}),t[6]=m,t[7]=h);let g=h,_=s?`rounded-full bg-muted/50 px-2 py-0.5 text-[9px] leading-none font-medium tracking-[0.14em] text-muted-foreground/70 uppercase [text-indent:0.14em]`:`rounded-full bg-muted/50 px-1.5 py-0.5 text-[8px] leading-none font-medium tracking-[0.18em] text-muted-foreground/60 uppercase [text-indent:0.18em]`,v;t[8]===_?v=t[9]:(v=(0,N.jsx)(`span`,{className:_,children:Ci}),t[8]=_,t[9]=v);let y=v;if(a){let e;t[10]!==d||t[11]!==g?(e=(0,N.jsxs)(`span`,{className:`flex items-center gap-2`,children:[d,g]}),t[10]=d,t[11]=g,t[12]=e):e=t[12];let n;return t[13]!==y||t[14]!==e?(n=(0,N.jsxs)(`div`,{className:`flex items-center gap-1.5 rounded-md`,"aria-label":wi,children:[e,y]}),t[13]=y,t[14]=e,t[15]=n):n=t[15],n}let b;return t[16]!==d||t[17]!==g?(b=(0,N.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5`,"aria-label":wi,children:[d,g]}),t[16]=d,t[17]=g,t[18]=b):b=t[18],b}function ji(e){let t=(0,vi.c)(5),{className:n}=e,r;t[0]===n?r=t[1]:(r=ft(`pointer-events-none flex select-none items-center`,n),t[0]=n,t[1]=r);let i;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,N.jsx)(Ai,{}),t[2]=i):i=t[2];let a;return t[3]===r?a=t[4]:(a=(0,N.jsx)(`div`,{className:r,children:i}),t[3]=r,t[4]=a),a}function aie(){let e=new Map;return{clear:()=>e.clear(),getItem:t=>e.get(t)??null,key:t=>Array.from(e.keys()).at(t)??null,get length(){return e.size},removeItem:t=>e.delete(t),setItem:(t,n)=>e.set(t,n)}}var Mi=typeof window<`u`?window.localStorage:aie(),oie=(e,t)=>wte(kt(e))(t),sie=(e,t)=>zte(kt(e))(t),Ni=(e,t)=>{let n=Mi.getItem(e);return n?oie(t,n):null},Pi=(e,t,n)=>{let r=sie(n,t);Mi.setItem(e,r)},Fi=e=>{Mi.removeItem(e)},Ii=`forge:local_storage_change`;function cie(e){typeof window>`u`||window.dispatchEvent(new CustomEvent(Ii,{detail:{key:e}}))}function Li(e,t,n){let[r,i]=(0,M.useState)(()=>{try{return Ni(e,n)??t}catch(e){return console.error(`[LOCALSTORAGE] Error:`,e),t}}),a=(0,M.useCallback)(t=>{i(r=>{try{let i=typeof t==`function`?t(r):t;return i===null?Fi(e):Pi(e,i,n),queueMicrotask(()=>cie(e)),i}catch(e){return console.error(`[LOCALSTORAGE] Error:`,e),r}})},[e,n]),o=(0,M.useRef)(e);return(0,M.useEffect)(()=>{if(o.current!==e){o.current=e;try{let r=Ni(e,n);i(r??t)}catch(e){console.error(`[LOCALSTORAGE] Error:`,e)}}},[e,t,n]),(0,M.useEffect)(()=>{let r=()=>{try{let r=Ni(e,n);i(r??t)}catch(e){console.error(`[LOCALSTORAGE] Error:`,e)}},a=t=>{t.key===e&&r()},o=t=>{t.detail.key===e&&r()};return window.addEventListener(`storage`,a),window.addEventListener(Ii,o),()=>{window.removeEventListener(`storage`,a),window.removeEventListener(Ii,o)}},[e,t,n]),[r,a]}var Ri=`cmmd-runtime:`;function zi(e){return`${Ri}${e}`}var lie=/^env_[0-9a-f]{32}$/,uie=/^[A-Za-z0-9][A-Za-z0-9._-]*$/,Bi={shape:`local`,isCloud:!1,legacyRuntimeId:null},die={shape:`cloud-project-placeholder`,isCloud:!0,legacyRuntimeId:null},fie={shape:`durable-environment`,isCloud:!0,legacyRuntimeId:null};function Vi(e){if(typeof e!=`string`)return Bi;if(e.startsWith(`cmmd-runtime:`)){let t=e.slice(Ri.length);return uie.test(t)?{shape:`legacy-runtime`,isCloud:!0,legacyRuntimeId:t}:Bi}return e.startsWith(`cmmd-cloud-project:`)?die:lie.test(e)?fie:Bi}var Hi=`forge:client-settings:v1`,pie=`forge:saved-environment-registry:v1`,mie=pn({environmentId:Nt,label:k,httpBaseUrl:k,wsBaseUrl:k,createdAt:k,lastConnectedAt:Yt(k),cmmdOrganizationId:Tt(k),cmmdProjectId:Tt(k),runtimeId:Tt(k),runtimeTicketExpiresAt:Tt(k),lastAuthenticatedPullRequestCapability:Tt(Ut),bearerToken:Tt(k)}),Ui=pn({version:Tt(qt),records:Tt(sn(mie))});function Wi(){return typeof window<`u`}var hie={uiFontSize:14,codeFontSize:15},gie=[[`uiFontSize`,11,20],[`codeFontSize`,11,20]];function _ie(e){return e.defaultThreadRuntime===`desktop-cloud-bridge`?{...e,defaultThreadRuntime:`cloud`}:null}function vie(e){if(typeof e.fontDefaultsVersion==`number`)return null;let t=Object.entries(hie).filter(([t,n])=>e[t]===n);if(t.length===0)return null;let n={...e};for(let[e]of t)delete n[e];return n}function yie(e){let t=gie.flatMap(([t,n,r])=>{let i=e[t];if(typeof i!=`number`||!Number.isFinite(i))return[];let a=Math.min(r,Math.max(n,Math.round(i)));return a===i?[]:[[t,a]]});if(t.length===0)return null;let n={...e};for(let[e,r]of t)n[e]=r;return n}function Gi(e){if(!e||typeof e!=`object`)return e;let t=e,n=!1;for(let e of[_ie,vie,yie]){let r=e(t);r!==null&&(t=r,n=!0)}return n?t:e}function bie(){if(!Wi())return null;try{let e=window.localStorage.getItem(Hi);return e?Qt(un)(Gi(JSON.parse(e))):null}catch{return null}}function xie(e){Wi()&&Pi(Hi,e,un)}function Ki(){if(!Wi())return{};try{return Ni(`forge:saved-environment-registry:v1`,Ui)??{}}catch{return{}}}function qi(e){Wi()&&Pi(pie,e,Ui)}function Ji(){return Ki().records??[]}function Sie(e){qi({version:1,records:e})}function Cie(){return Ji().map(e=>wt(e))}function wie(e){let t=new Map(Ji().map(e=>[e.environmentId,e]));Sie(e.map(e=>{let n=Vi(e.environmentId).legacyRuntimeId===null?t.get(e.environmentId)?.bearerToken:void 0;return n?{...wt(e),bearerToken:n}:wt(e)}))}function Tie(e){return Ji().find(t=>t.environmentId===e)?.bearerToken??null}function Eie(e,t){let n=Ki(),r=n.records??[],i=!1;return qi({version:n.version??1,records:r.map(n=>n.environmentId===e?(i=!0,Object.assign(wt(n),{bearerToken:t})):n)}),i}function Die(e){let t=Ki();qi({version:t.version??1,records:(t.records??[]).map(t=>t.environmentId===e?wt(t):t)})}var Oie=Qt(un);function kie(){return typeof window>`u`?void 0:window.desktopBridge}function Yi(e){let t=kie(),n=t?.[e];return typeof n==`function`?n.bind(t):null}async function Xi(){let e=Yi(`getClientSettings`);if(e){let t=await e();return t?Oie(t):null}return bie()}async function Zi(e){let t=Yi(`setClientSettings`);if(t)return t(e);xie(e)}async function Qi(){let e=Yi(`getSavedEnvironmentRegistry`);return e?e():Cie()}async function $i(e){let t=Yi(`setSavedEnvironmentRegistry`);if(t)return t(e);wie(e)}async function ea(e){let t=Yi(`getSavedEnvironmentSecret`);return t?t(e):Tie(e)}async function ta(e,t){let n=Yi(`setSavedEnvironmentSecret`);return n?n(e,t):Eie(e,t)}async function na(e){let t=Yi(`removeSavedEnvironmentSecret`);if(t)return t(e);Die(e)}var ra=`token`;function ia(e){return new URLSearchParams(e.hash.startsWith(`#`)?e.hash.slice(1):e.hash)}function aa(e){let t=ia(e).get(ra)?.trim()??``;if(t.length>0)return t;let n=e.searchParams.get(ra)?.trim()??``;return n.length>0?n:null}function Aie(e){let t=new URL(e.toString()),n=ia(t);return n.has(ra)&&(n.delete(ra),t.hash=n.toString()),t.searchParams.delete(ra),t}function oa(e,t){let n=new URL(e.toString());return n.searchParams.delete(ra),n.hash=new URLSearchParams([[ra,t]]).toString(),n}function jie(e,t){let n=new URL(e);return n.pathname=`/login`,oa(n,t).toString()}function Mie(e){return oa(new URL(`/login`,window.location.href),e).toString()}var Nie=`host`;function Pie(e){let t=new URL(e),n=aa(t),r=new URL(`forge:///pair`);return r.searchParams.set(Nie,t.origin),n&&r.searchParams.set(ra,n),r.toString()}function Fie(e){return{_tag:`Value`,value:e}}function Iie(e,t){return{_tag:`Record`,keys:e,value:t}}function Lie(e,t){return{_tag:`Array`,length:e,value:t}}Gt(`SourceError`);var sa=Le(`effect/ConfigProvider`,{defaultValue:()=>zie()}),Rie={...Ne,toJSON(){return{_id:`ConfigProvider`}}};function ca(e,t,n){let r=Object.create(Rie);return r.get=e,r.mapInput=t,r.prefix=n,r.load=r=>(t&&(r=t(r)),n&&(r=[...n,...r]),e(r)),r}function zie(e){let t=e?.env??{APP_VERSION:`0.13.4`,BASE_URL:`/`,DEV:!1,MODE:`production`,PROD:!0,SSR:!1,TSS_INLINE_CSS_ENABLED:`false`,VITE_COMMIT_SHA:``,VITE_HOSTED_APP_CHANNEL:``,VITE_HTTP_URL:``,VITE_SENTRY_COMMIT_SHA:`518017fb843f3cf854b0f27708fe397d6f2eb026`,VITE_SENTRY_DEBUG:``,VITE_SENTRY_DSN:``,VITE_SENTRY_ENABLED:``,VITE_SENTRY_ENVIRONMENT:`production`,VITE_SENTRY_PROFILES_SAMPLE_RATE:``,VITE_SENTRY_RELEASE:`forge-web@0.13.4+518017fb843f3cf854b0f27708fe397d6f2eb026`,VITE_SENTRY_REPLAYS_ON_ERROR_SAMPLE_RATE:``,VITE_SENTRY_REPLAYS_SESSION_SAMPLE_RATE:``,VITE_SENTRY_TRACES_SAMPLE_RATE:``,VITE_WS_URL:``},n=Bie(t);return ca(e=>ze(Hie(n,t,e)))}function Bie(e){let t={};for(let[n,r]of Object.entries(e)){if(r===void 0)continue;let e=n.split(`_`),i=t;for(let t of e)i.children??={},i=i.children[t]??={};i.value=r}return t}var Vie=/^(0|[1-9][0-9]*)$/;function Hie(e,t,n){let r=t[n.map(String).join(`_`)],i=Uie(e,n),a=i?.children?Object.keys(i.children):[];return a.length===0?r===void 0?void 0:Fie(r):a.every(e=>Vie.test(e))?Lie(Math.max(...a.map(e=>parseInt(e,10)))+1,r):Iie(new Set(a),r)}function Uie(e,t){if(t.length===0)return e;let n=e;for(let e of t)if(n=n?.children?.[String(e)],!n)return;return n}var la=`~effect/Config`,Wie=class{_tag=`ConfigError`;name=`ConfigError`;cause;constructor(e){this.cause=e}get message(){return this.cause.toString()}toString(){return`ConfigError(${this.message})`}},Gie={...Ne,...uee,[la]:la,asEffect(){return Je(sa.asEffect(),e=>this.parse(e))},toJSON(){return{_id:`Config`}}};function Kie(e){let t=Object.create(Gie);return t.parse=e,t}var ua=Pe(function*(e,t){let n=yield*e.load(t);if(n!==void 0)switch(n._tag){case`Value`:return n.value;case`Record`:{if(n.value!==void 0)return n.value;let r={};for(let i of n.keys){let n=yield*ua(e,[...t,i]);n!==void 0&&(r[i]=n)}return r}case`Array`:{if(n.value!==void 0)return n.value;let r=[];for(let i=0;i<n.length;i++)r.push(yield*ua(e,[...t,i]));return r}}}),da=Pe(function*(e,t,n){switch(e._tag){case`Objects`:{let r={};for(let i of e.propertySignatures){let e=i.name;if(typeof e==`string`){let a=yield*da(i.type,t,[...n,e]);a!==void 0&&(r[e]=a)}}if(e.indexSignatures.length>0){let i=yield*t.load(n);if(i&&i._tag===`Record`)for(let a of e.indexSignatures){let e=pte(a.parameter);for(let o of i.keys)if(!Object.hasOwn(r,o)&&e(o)){let e=yield*da(a.type,t,[...n,o]);e!==void 0&&(r[o]=e)}}}return r}case`Arrays`:{let r=yield*t.load(n);if(r&&r._tag===`Value`)return r.value;let i=[];for(let r=0;r<e.elements.length;r++)i.push(yield*da(e.elements[r],t,[...n,r]));return i}case`Union`:return yield*ua(t,n);case`Suspend`:return yield*da(e.thunk(),t,n);default:{let e=yield*t.load(n);return e===void 0?void 0:e._tag===`Value`||e._tag===`Record`&&e.value!==void 0||e._tag===`Array`&&e.value!==void 0?e.value:void 0}}});function fa(e,t){let n=Kte(e),r=It(n),i=fte(n.ast),a=typeof t==`string`?[t]:t??[];return Kie(e=>{let t=e.prefix?[...e.prefix,...a]:a;return da(i,e,a).pipe(zee(e=>r(e).pipe(et(e=>new Rt(t.length>0?new kte(t,e):e)))),et(e=>new Wie(e)))})}var qie=(e,t,n)=>{let r=Vt(e,t),i=k.pipe(bt(Vt(k,k),gte(n)),bt(r));return Ste([r,i])},P=typeof __SENTRY_DEBUG__>`u`||__SENTRY_DEBUG__,F=globalThis,pa=`10.74.0`;function ma(){return ha(F),F}function ha(e){let t=e.__SENTRY__=e.__SENTRY__||{};return t.version=t.version||`10.74.0`,t[pa]=t[`10.74.0`]||{}}function ga(e,t,n=F){let r=n.__SENTRY__=n.__SENTRY__||{},i=r[pa]=r[`10.74.0`]||{};return i[e]||(i[e]=t())}var _a=[`debug`,`info`,`warn`,`error`,`log`,`assert`,`trace`],Jie=`Sentry Logger `,va={};function ya(e){if(!(`console`in F))return e();let t=F.console,n={},r=Object.keys(va);r.forEach(e=>{let r=va[e];n[e]=t[e],t[e]=r});try{return e()}finally{r.forEach(e=>{t[e]=n[e]})}}function Yie(){Sa().enabled=!0}function Xie(){Sa().enabled=!1}function ba(){return Sa().enabled}function Zie(...e){xa(`log`,...e)}function Qie(...e){xa(`warn`,...e)}function $ie(...e){xa(`error`,...e)}function xa(e,...t){P&&ba()&&ya(()=>{F.console[e](`${Jie}[${e}]:`,...t)})}function Sa(){return P?ga(`loggerSettings`,()=>({enabled:!1})):{enabled:!1}}var I={enable:Yie,disable:Xie,isEnabled:ba,log:Zie,warn:Qie,error:$ie},Ca=50,wa=/\(error: (.*)\)/,Ta=/captureMessage|captureException/;function Ea(...e){let t=e.sort((e,t)=>e[0]-t[0]).map(e=>e[1]);return(e,n=0,r=0)=>{let i=[],a=e.split(`
|
|
2
|
+
import{n as e,r as t,t as n}from"./rolldown-runtime-hePW80VL.js";import{$ as r,$t as i,Aa as a,An as o,Ar as s,At as c,B as l,Br as u,Bt as d,Ci as f,Dn as p,Ei as m,En as h,Er as g,Fa as _,Fi as v,Fn as y,Gn as b,Gt as x,Ha as S,Hn as C,Hr as w,Ht as T,Ia as E,It as ee,J as te,Jt as ne,Kt as re,L as ie,La as ae,Ln as oe,Lt as D,M as se,Ma as ce,Mr as le,Ni as ue,Nn as de,Nt as fe,Oa as pe,Pi as me,Pn as he,Pt as ge,Qi as _e,Rn as ve,Rr as ye,Rt as be,Si as xe,Ta as Se,Tn as Ce,Tr as we,Tt as Te,Ua as Ee,Un as De,Ur as Oe,Ut as eee,V as tee,Va as ke,Vn as Ae,Vr as je,Vt as Me,W as nee,Wa as ree,Wn as iee,Wr as aee,Wt as oee,X as see,Yi as Ne,Yt as cee,Z as lee,Zi as uee,_ as dee,_t as fee,an as pee,at as Pe,bn as mee,br as hee,bt as Fe,ca as Ie,ci as Le,ct as gee,dn as _ee,ea as Re,en as ze,et as Be,fi as Ve,gi as vee,gn as He,hn as yee,hr as bee,ht as xee,in as Ue,it as See,ja as Cee,jn as We,jr as wee,jt as Ge,ki as Tee,kr as Eee,kt as Dee,li as Ke,ln as Oee,m as kee,mn as Aee,mr as qe,na as jee,ni as Mee,nt as Je,oa as Nee,or as Ye,pn as Xe,pt as Pee,q as Fee,qt as Iee,r as Lee,rn as Ze,rr as Ree,rt as zee,sn as Bee,un as Vee,ut as Hee,vn as Qe,vr as Uee,wn as Wee,wr as $e,wt as et,xi as Gee,xn as tt,y as Kee,yi as qee,yn as Jee,z as Yee,zn as Xee,zt as Zee}from"./Stream-mUTFnSY9.js";import{i as Qee,l as nt,n as rt,o as it,s as at}from"./atomRegistry-C1yW8tyM.js";import{En as $ee,Fn as ot,J as st,On as ete,Rn as tte,Tn as ct,an as lt,cn as nte,dn as ut,fn as dt,gn as rte,hn as ft,i as ite,ln as ate,on as ote,sn as pt,un as ste}from"./CompositeItem-B299hxbI.js";import{$t as cte,A as mt,At as ht,Bt as gt,C as lte,Ct as _t,D as vt,Dt as yt,E as ute,En as bt,Et as xt,Fn as St,G as dte,Gn as fte,Gt as Ct,H as wt,Hn as pte,Ht as mte,In as Tt,J as hte,Jt as Et,Kn as gte,Kt as Dt,Lt as Ot,Mn as kt,Mt as At,Nn as _te,Nt as jt,O as Mt,On as vte,Ot as Nt,Q as yte,Qt as bte,R as Pt,Rt as xte,Sn as Ste,T as Cte,Tn as wte,U as Ft,Un as It,Ut as Lt,Vn as Rt,Vt as Tte,W as Ete,Wn as Dte,Wt as zt,Xt as Ote,Yn as kte,Yt as Ate,Zt as Bt,_n as Vt,_t as jte,a as Mte,an as Nte,b as Ht,bt as Pte,c as Fte,cn as Ut,dt as Wt,en as Ite,er as Gt,ft as Kt,gn as qt,gt as Jt,hn as Yt,i as Lte,in as Rte,j as Xt,jn as zte,jt as Zt,k as Bte,kn as Qt,l as $t,mt as Vte,nn as en,nt as tn,on as nn,pn as rn,qt as an,rt as on,s as O,sn,tn as cn,tt as Hte,ut as ln,v as un,vn as k,vt as dn,w as Ute,wt as Wte,x as Gte,xn as fn,yn as pn,zn as Kte,zt as qte}from"./src-BAHvoNAY.js";import{$ as Jte,A as mn,B as Yte,C as Xte,D as Zte,E as Qte,F as hn,G as $te,H as ene,I as gn,J as tne,K as nne,L as _n,M as vn,N as yn,O as rne,P as bn,Q as ine,R as ane,T as one,U as sne,W as cne,X as lne,Y as une,Z as dne,_ as fne,a as xn,c as pne,d as mne,et as hne,it as Sn,l as gne,n as Cn,nt as _ne,q as vne,rt as yne,s as bne,tt as xne,u as Sne,w as Cne}from"./cmmdAuthRedirect-BYBGztDm.js";import{t as A}from"./preload-helper-Czpn1I53.js";import{n as j,t as wn}from"./transport-CgH8pQK3.js";import{n as wne,t as Tne}from"./workspaceReadinessAtom-D6bgTvKb.js";function Ene(e){return e[e.length-1]}function Dne(e,t){return typeof e==`function`?e(t):e}var Tn=Object.prototype.hasOwnProperty,One=Object.prototype.propertyIsEnumerable;function kne(e){for(let t in e)if(Tn.call(e,t))return!0;return!1}var Ane=()=>Object.create(null),jne=(e,t)=>En(e,t,Ane);function En(e,t,n=()=>({}),r=0){if(e===t)return e;if(r>500)return t;let i=t,a=An(e)&&An(i);if(!a&&!(On(e)&&On(i)))return i;let o=a?e:Dn(e);if(!o)return i;let s=a?i:Dn(i);if(!s)return i;let c=o.length,l=s.length,u=a?Array(l):n(),d=0;for(let t=0;t<l;t++){let o=a?t:s[t],l=e[o],f=i[o];if(l===f){u[o]=l,(a?t<c:Tn.call(e,o))&&d++;continue}if(l===null||f===null||typeof l!=`object`||typeof f!=`object`){u[o]=f;continue}let p=En(l,f,n,r+1);u[o]=p,p===l&&d++}return c===l&&d===c?e:u}function Dn(e){let t=Object.keys(e);if(t.length!==Object.getOwnPropertyNames(e).length)return!1;let n=Object.getOwnPropertySymbols(e);if(n.length===0)return t;for(let r of n){if(!One.call(e,r))return!1;t.push(r)}return t}function On(e){if(!kn(e))return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(!kn(n)||!n.hasOwnProperty(`isPrototypeOf`))}function kn(e){return Object.prototype.toString.call(e)===`[object Object]`}function An(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function jn(e,t,n){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return!1;for(let r=0,i=e.length;r<i;r++)if(!jn(e[r],t[r],n))return!1;return!0}if(On(e)&&On(t)){let r=n?.ignoreUndefined??!0;if(n?.partial){for(let i in t)if((!r||t[i]!==void 0)&&!jn(e[i],t[i],n))return!1;return!0}let i=0;if(!r)i=Object.keys(e).length;else for(let t in e)e[t]!==void 0&&i++;let a=0;for(let o in t)if((!r||t[o]!==void 0)&&(a++,a>i||!jn(e[o],t[o],n)))return!1;return i===a}return!1}var Mne=/[\x00-\x1f\x7f"<>`{}]/g;function Nne(e){return e.replace(Mne,e=>`%`+e.charCodeAt(0).toString(16).toUpperCase().padStart(2,`0`))}function Mn(e){let t;try{t=decodeURI(e)}catch{t=e.replaceAll(/%[0-9A-F]{2}/gi,e=>{try{return decodeURI(e)}catch{return e}})}return Nne(t)}var Pne=[`http:`,`https:`,`mailto:`,`tel:`];function Fne(e,t){if(!e)return!1;try{let n=new URL(e);return!t.has(n.protocol)}catch{return!1}}function Ine(e){if(!e||!/[%\\\x00-\x1f\x7f]/.test(e)&&!e.startsWith(`//`))return{path:e,handledProtocolRelativeURL:!1};let t=/%25|%5C/gi,n=0,r=``,i;for(;(i=t.exec(e))!==null;)r+=Mn(e.slice(n,i.index))+i[0],n=t.lastIndex;r+=Mn(n?e.slice(n):e);let a=!1;return r.startsWith(`//`)&&(a=!0,r=`/`+r.replace(/^\/+/,``)),{path:r,handledProtocolRelativeURL:a}}function Lne(e){return/\s|[^\u0000-\u007F]/.test(e)?e.replace(/\s|[^\u0000-\u007F]/gu,encodeURIComponent):e}function Rne(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function Nn(){throw Error(`Invariant failed`)}var M=t(ree(),1),Pn=M.createContext(null);function Fn(e){return M.useContext(Pn)}var In=M.createContext(void 0),zne=M.createContext(void 0),Bne=tte();function Vne(e,t){return e===t}function Ln(e,t,n=Vne){let r=(0,M.useCallback)(t=>{if(!e)return()=>{};let{unsubscribe:n}=e.subscribe(t);return n},[e]),i=(0,M.useCallback)(()=>e?.get(),[e]);return(0,Bne.useSyncExternalStoreWithSelector)(r,i,i,t,n)}var Rn={};function zn(e,t){let n=M.useRef();return r=>{let i=e?.select?e.select(r):r;return e?.structuralSharing??t.options.defaultStructuralSharing?n.current=En(n.current,i):i}}function Bn(e){let t=Fn(),n=M.useContext(e.from?zne:In),r=e.from??n,i=t.stores.getMatchStore(r),a=zn(e,t),o=Ln(i,e=>e?a(e):Rn);if(o!==Rn)return o;(e.shouldThrow??!0)&&Nn()}function Hne(e){return Bn({from:e.from,shouldThrow:e.shouldThrow,structuralSharing:e.structuralSharing,strict:e.strict,select:t=>{let n=e.strict===!1?t.params:t._strictParams;return e.select?e.select(n):n}})}var N=Ee(),Vn=typeof window<`u`&&(window.desktopBridge!==void 0||window.nativeApi!==void 0),Hn=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},Un=new class extends Hn{#e;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<`u`&&window.addEventListener){let t=()=>e();return window.addEventListener(`visibilitychange`,t,!1),()=>{window.removeEventListener(`visibilitychange`,t)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(e=>{typeof e==`boolean`?this.setFocused(e):this.onFocus()})}setFocused(e){this.#e!==e&&(this.#e=e,this.onFocus())}onFocus(){let e=this.isFocused();this.listeners.forEach(t=>{t(e)})}isFocused(){return typeof this.#e==`boolean`?this.#e:globalThis.document?.visibilityState!==`hidden`}},Une={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},Wn=new class{#e=Une;setTimeoutProvider(e){this.#e=e}setTimeout(e,t){return this.#e.setTimeout(e,t)}clearTimeout(e){this.#e.clearTimeout(e)}setInterval(e,t){return this.#e.setInterval(e,t)}clearInterval(e){this.#e.clearInterval(e)}};function Wne(e){setTimeout(e,0)}var Gne=typeof window>`u`||`Deno`in globalThis;function Gn(){}function Kne(e,t){return typeof e==`function`?e(t):e}function Kn(e){return typeof e==`number`&&e>=0&&e!==1/0}function qn(e,t){return Math.max(e+(t||0)-Date.now(),0)}function Jn(e,t){return typeof e==`function`?e(t):e}function Yn(e,t){return typeof e==`function`?e(t):e}function qne(e,t){let{type:n=`all`,exact:r,fetchStatus:i,predicate:a,queryKey:o,stale:s}=e;if(o){if(r){if(t.queryHash!==Xn(o,t.options))return!1}else if(!Qn(t.queryKey,o))return!1}if(n!==`all`){let e=t.isActive();if(n===`active`&&!e||n===`inactive`&&e)return!1}return!(typeof s==`boolean`&&t.isStale()!==s||i&&i!==t.state.fetchStatus||a&&!a(t))}function Jne(e,t){let{exact:n,status:r,predicate:i,mutationKey:a}=e;if(a){if(!t.options.mutationKey)return!1;if(n){if(Zn(t.options.mutationKey)!==Zn(a))return!1}else if(!Qn(t.options.mutationKey,a))return!1}return!(r&&t.state.status!==r||i&&!i(t))}function Xn(e,t){return(t?.queryKeyHashFn||Zn)(e)}function Zn(e){return JSON.stringify(e,(e,t)=>nr(t)?Object.keys(t).sort().reduce((e,n)=>(e[n]=t[n],e),{}):t)}function Qn(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(e&&t&&typeof e==`object`&&typeof t==`object`){if(Array.isArray(e)&&Array.isArray(t)){for(let n=0;n<t.length;n++)if(!Qn(e[n],t[n]))return!1;return!0}let n=Object.keys(t);for(let r of n)if(!Qn(e[r],t[r]))return!1;return!0}return!1}var Yne=Object.prototype.hasOwnProperty;function $n(e,t,n=0){if(e===t)return e;if(n>500)return t;let r=tr(e)&&tr(t);if(!r&&!(nr(e)&&nr(t)))return t;let i=(r?e:Object.keys(e)).length,a=r?t:Object.keys(t),o=a.length,s=r?Array(o):{},c=0;for(let l=0;l<o;l++){let o=r?l:a[l],u=e[o],d=t[o];if(u===d){s[o]=u,(r?l<i:Yne.call(e,o))&&c++;continue}if(u===null||d===null||typeof u!=`object`||typeof d!=`object`){s[o]=d;continue}let f=$n(u,d,n+1);s[o]=f,f===u&&c++}return i===o&&c===i?e:s}function er(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(e[n]!==t[n])return!1;return!0}function tr(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function nr(e){if(!rr(e))return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(!rr(n)||!n.hasOwnProperty(`isPrototypeOf`)||Object.getPrototypeOf(e)!==Object.prototype)}function rr(e){return Object.prototype.toString.call(e)===`[object Object]`}function Xne(e){return new Promise(t=>{Wn.setTimeout(t,e)})}function ir(e,t,n){return typeof n.structuralSharing==`function`?n.structuralSharing(e,t):n.structuralSharing===!1?t:$n(e,t)}function Zne(e){return e}function Qne(e,t,n=0){let r=[...e,t];return n&&r.length>n?r.slice(1):r}function $ne(e,t,n=0){let r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var ar=Symbol();function or(e,t){return!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===ar?()=>Promise.reject(Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function sr(e,t){return typeof e==`function`?e(...t):!!e}function ere(e,t,n){let r=!1,i;return Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(i??=t(),r?i:(r=!0,i.aborted?n():i.addEventListener(`abort`,n,{once:!0}),i))}),e}var cr=(()=>{let e=()=>Gne;return{isServer(){return e()},setIsServer(t){e=t}}})();function lr(){let e,t,n=new Promise((n,r)=>{e=n,t=r});n.status=`pending`,n.catch(()=>{});function r(e){Object.assign(n,e),delete n.resolve,delete n.reject}return n.resolve=t=>{r({status:`fulfilled`,value:t}),e(t)},n.reject=e=>{r({status:`rejected`,reason:e}),t(e)},n}var tre=Wne;function nre(){let e=[],t=0,n=e=>{e()},r=e=>{e()},i=tre,a=r=>{t?e.push(r):i(()=>{n(r)})},o=()=>{let t=e;e=[],t.length&&i(()=>{r(()=>{t.forEach(e=>{n(e)})})})};return{batch:e=>{let n;t++;try{n=e()}finally{t--,t||o()}return n},batchCalls:e=>(...t)=>{a(()=>{e(...t)})},schedule:a,setNotifyFunction:e=>{n=e},setBatchNotifyFunction:e=>{r=e},setScheduler:e=>{i=e}}}var ur=nre(),dr=new class extends Hn{#e=!0;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<`u`&&window.addEventListener){let t=()=>e(!0),n=()=>e(!1);return window.addEventListener(`online`,t,!1),window.addEventListener(`offline`,n,!1),()=>{window.removeEventListener(`online`,t),window.removeEventListener(`offline`,n)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(this.setOnline.bind(this))}setOnline(e){this.#e!==e&&(this.#e=e,this.listeners.forEach(t=>{t(e)}))}isOnline(){return this.#e}};function rre(e){return Math.min(1e3*2**e,3e4)}function fr(e){return(e??`online`)!==`online`||dr.isOnline()}var pr=class extends Error{constructor(e){super(`CancelledError`),this.revert=e?.revert,this.silent=e?.silent}};function mr(e){let t=!1,n=0,r,i=lr(),a=()=>i.status!==`pending`,o=t=>{if(!a()){let n=new pr(t);f(n),e.onCancel?.(n)}},s=()=>{t=!0},c=()=>{t=!1},l=()=>Un.isFocused()&&(e.networkMode===`always`||dr.isOnline())&&e.canRun(),u=()=>fr(e.networkMode)&&e.canRun(),d=e=>{a()||(r?.(),i.resolve(e))},f=e=>{a()||(r?.(),i.reject(e))},p=()=>new Promise(t=>{r=e=>{(a()||l())&&t(e)},e.onPause?.()}).then(()=>{r=void 0,a()||e.onContinue?.()}),m=()=>{if(a())return;let r,i=n===0?e.initialPromise:void 0;try{r=i??e.fn()}catch(e){r=Promise.reject(e)}Promise.resolve(r).then(d).catch(r=>{if(a())return;let i=e.retry??(cr.isServer()?0:3),o=e.retryDelay??rre,s=typeof o==`function`?o(n,r):o,c=i===!0||typeof i==`number`&&n<i||typeof i==`function`&&i(n,r);if(t||!c){f(r);return}n++,e.onFail?.(n,r),Xne(s).then(()=>l()?void 0:p()).then(()=>{t?f(r):m()})})};return{promise:i,status:()=>i.status,cancel:o,continue:()=>(r?.(),i),cancelRetry:s,continueRetry:c,canStart:u,start:()=>(u()?m():p().then(m),i)}}var hr=class{#e;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),Kn(this.gcTime)&&(this.#e=Wn.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(cr.isServer()?1/0:3e5))}clearGcTimeout(){this.#e!==void 0&&(Wn.clearTimeout(this.#e),this.#e=void 0)}};function ire(e){return{onFetch:(t,n)=>{let r=t.options,i=t.fetchOptions?.meta?.fetchMore?.direction,a=t.state.data?.pages||[],o=t.state.data?.pageParams||[],s={pages:[],pageParams:[]},c=0,l=async()=>{let n=!1,l=e=>{ere(e,()=>t.signal,()=>n=!0)},u=or(t.options,t.fetchOptions),d=async(e,r,i)=>{if(n)return Promise.reject(t.signal.reason);if(r==null&&e.pages.length)return Promise.resolve(e);let a=(()=>{let e={client:t.client,queryKey:t.queryKey,pageParam:r,direction:i?`backward`:`forward`,meta:t.options.meta};return l(e),e})(),o=await u(a),{maxPages:s}=t.options,c=i?$ne:Qne;return{pages:c(e.pages,o,s),pageParams:c(e.pageParams,r,s)}};if(i&&a.length){let e=i===`backward`,t=e?_r:gr,n={pages:a,pageParams:o};s=await d(n,t(r,n),e)}else{let t=e??a.length;do{let e=c===0?o[0]??r.initialPageParam:gr(r,s);if(c>0&&e==null)break;s=await d(s,e),c++}while(c<t)}return s};t.fetchFn=t.options.persister?()=>t.options.persister?.(l,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n):l}}}function gr(e,{pages:t,pageParams:n}){let r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function _r(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}function are(e,t){return t?gr(e,t)!=null:!1}function ore(e,t){return!t||!e.getPreviousPageParam?!1:_r(e,t)!=null}var sre=class extends hr{#e;#t;#n;#r;#i;#a;#o;#s;constructor(e){super(),this.#s=!1,this.#o=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.#i=e.client,this.#r=this.#i.getQueryCache(),this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.#t=br(this.options),this.state=e.state??this.#t,this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return this.#e}get promise(){return this.#a?.promise}setOptions(e){if(this.options={...this.#o,...e},e?._type&&(this.#e=e._type),this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){let e=br(this.options);e.data!==void 0&&(this.setState(yr(e.data,e.dataUpdatedAt)),this.#t=e)}}optionalRemove(){!this.observers.length&&this.state.fetchStatus===`idle`&&this.#r.remove(this)}setData(e,t){let n=ir(this.state.data,e,this.options);return this.#l({data:n,type:`success`,dataUpdatedAt:t?.updatedAt,manual:t?.manual}),n}setState(e){this.#l({type:`setState`,state:e})}cancel(e){let t=this.#a?.promise;return this.#a?.cancel(e),t?t.then(Gn).catch(Gn):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#t}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(e=>Yn(e.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===ar||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0&&this.observers.some(e=>Jn(e.options.staleTime,this)===`static`)}isStale(){return this.getObserversCount()>0?this.observers.some(e=>e.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(e=0){return this.state.data===void 0?!0:e===`static`?!1:this.state.isInvalidated?!0:!qn(this.state.dataUpdatedAt,e)}onFocus(){this.observers.find(e=>e.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),this.#a?.continue()}onOnline(){this.observers.find(e=>e.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),this.#a?.continue()}addObserver(e){this.observers.includes(e)||(this.observers.push(e),this.clearGcTimeout(),this.#r.notify({type:`observerAdded`,query:this,observer:e}))}removeObserver(e){this.observers.includes(e)&&(this.observers=this.observers.filter(t=>t!==e),this.observers.length||(this.#a&&(this.#s||this.#c()?this.#a.cancel({revert:!0}):this.#a.cancelRetry()),this.scheduleGc()),this.#r.notify({type:`observerRemoved`,query:this,observer:e}))}getObserversCount(){return this.observers.length}#c(){return this.state.fetchStatus===`paused`&&this.state.status===`pending`}invalidate(){this.state.isInvalidated||this.#l({type:`invalidate`})}async fetch(e,t){if(this.state.fetchStatus!==`idle`&&this.#a?.status()!==`rejected`){if(this.state.data!==void 0&&t?.cancelRefetch)this.cancel({silent:!0});else if(this.#a)return this.#a.continueRetry(),this.#a.promise}if(e&&this.setOptions(e),!this.options.queryFn){let e=this.observers.find(e=>e.options.queryFn);e&&this.setOptions(e.options)}let n=new AbortController,r=e=>{Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(this.#s=!0,n.signal)})},i=()=>{let e=or(this.options,t),n=(()=>{let e={client:this.#i,queryKey:this.queryKey,meta:this.meta};return r(e),e})();return this.#s=!1,this.options.persister?this.options.persister(e,n,this):e(n)},a=(()=>{let e={fetchOptions:t,options:this.options,queryKey:this.queryKey,client:this.#i,state:this.state,fetchFn:i};return r(e),e})();(this.#e===`infinite`?ire(this.options.pages):this.options.behavior)?.onFetch(a,this),this.#n=this.state,(this.state.fetchStatus===`idle`||this.state.fetchMeta!==a.fetchOptions?.meta)&&this.#l({type:`fetch`,meta:a.fetchOptions?.meta}),this.#a=mr({initialPromise:t?.initialPromise,fn:a.fetchFn,onCancel:e=>{e instanceof pr&&e.revert&&this.setState({...this.#n,fetchStatus:`idle`}),n.abort()},onFail:(e,t)=>{this.#l({type:`failed`,failureCount:e,error:t})},onPause:()=>{this.#l({type:`pause`})},onContinue:()=>{this.#l({type:`continue`})},retry:a.options.retry,retryDelay:a.options.retryDelay,networkMode:a.options.networkMode,canRun:()=>!0});try{let e=await this.#a.start();if(e===void 0)throw Error(`${this.queryHash} data is undefined`);return this.setData(e),this.#r.config.onSuccess?.(e,this),this.#r.config.onSettled?.(e,this.state.error,this),e}catch(e){if(e instanceof pr){if(e.silent)return this.#a.promise;if(e.revert){if(this.state.data===void 0)throw e;return this.state.data}}throw this.#l({type:`error`,error:e}),this.#r.config.onError?.(e,this),this.#r.config.onSettled?.(this.state.data,e,this),e}finally{this.scheduleGc()}}#l(e){let t=t=>{switch(e.type){case`failed`:return{...t,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case`pause`:return{...t,fetchStatus:`paused`};case`continue`:return{...t,fetchStatus:`fetching`};case`fetch`:return{...t,...vr(t.data,this.options),fetchMeta:e.meta??null};case`success`:let n={...t,...yr(e.data,e.dataUpdatedAt),dataUpdateCount:t.dataUpdateCount+1,...!e.manual&&{fetchStatus:`idle`,fetchFailureCount:0,fetchFailureReason:null}};return this.#n=e.manual?n:void 0,n;case`error`:let r=e.error;return{...t,error:r,errorUpdateCount:t.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:t.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:`idle`,status:`error`,isInvalidated:!0};case`invalidate`:return{...t,isInvalidated:!0};case`setState`:return{...t,...e.state}}};this.state=t(this.state),ur.batch(()=>{this.observers.forEach(e=>{e.onQueryUpdate()}),this.#r.notify({query:this,type:`updated`,action:e})})}};function vr(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:fr(t.networkMode)?`fetching`:`paused`,...e===void 0&&{error:null,status:`pending`}}}function yr(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:`success`}}function br(e){let t=typeof e.initialData==`function`?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt==`function`?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?`success`:`pending`,fetchStatus:`idle`}}var xr=class extends Hn{constructor(e,t){super(),this.options=t,this.#e=e,this.#s=null,this.#o=lr(),this.bindMethods(),this.setOptions(t)}#e;#t=void 0;#n=void 0;#r=void 0;#i;#a;#o;#s;#c;#l;#u;#d;#f;#p;#m=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(this.#t.addObserver(this),Sr(this.#t,this.options)?this.#h():this.updateResult(),this.#y())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return Cr(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return Cr(this.#t,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#b(),this.#x(),this.#t.removeObserver(this)}setOptions(e){let t=this.options,n=this.#t;if(this.options=this.#e.defaultQueryOptions(e),this.options.enabled!==void 0&&typeof this.options.enabled!=`boolean`&&typeof this.options.enabled!=`function`&&typeof Yn(this.options.enabled,this.#t)!=`boolean`)throw Error(`Expected enabled to be a boolean or a callback that returns a boolean`);this.#S(),this.#t.setOptions(this.options),t._defaulted&&!er(this.options,t)&&this.#e.getQueryCache().notify({type:`observerOptionsUpdated`,query:this.#t,observer:this});let r=this.hasListeners();r&&wr(this.#t,n,this.options,t)&&this.#h(),this.updateResult(),r&&(this.#t!==n||Yn(this.options.enabled,this.#t)!==Yn(t.enabled,this.#t)||Jn(this.options.staleTime,this.#t)!==Jn(t.staleTime,this.#t))&&this.#g();let i=this.#_();r&&(this.#t!==n||Yn(this.options.enabled,this.#t)!==Yn(t.enabled,this.#t)||i!==this.#p)&&this.#v(i)}getOptimisticResult(e){let t=this.#e.getQueryCache().build(this.#e,e),n=this.createResult(t,e);return lre(this,n)&&(this.#r=n,this.#a=this.options,this.#i=this.#t.state),n}getCurrentResult(){return this.#r}trackResult(e,t){return new Proxy(e,{get:(e,n)=>(this.trackProp(n),t?.(n),n===`promise`&&(this.trackProp(`data`),!this.options.experimental_prefetchInRender&&this.#o.status===`pending`&&this.#o.reject(Error(`experimental_prefetchInRender feature flag is not enabled`))),Reflect.get(e,n))})}trackProp(e){this.#m.add(e)}getCurrentQuery(){return this.#t}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){let t=this.#e.defaultQueryOptions(e),n=this.#e.getQueryCache().build(this.#e,t);return n.fetch().then(()=>this.createResult(n,t))}fetch(e){return this.#h({...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#r))}#h(e){this.#S();let t=this.#t.fetch(this.options,e);return e?.throwOnError||(t=t.catch(Gn)),t}#g(){this.#b();let e=Jn(this.options.staleTime,this.#t);if(cr.isServer()||this.#r.isStale||!Kn(e))return;let t=qn(this.#r.dataUpdatedAt,e)+1;this.#d=Wn.setTimeout(()=>{this.#r.isStale||this.updateResult()},t)}#_(){return(typeof this.options.refetchInterval==`function`?this.options.refetchInterval(this.#t):this.options.refetchInterval)??!1}#v(e){this.#x(),this.#p=e,!(cr.isServer()||Yn(this.options.enabled,this.#t)===!1||!Kn(this.#p)||this.#p===0)&&(this.#f=Wn.setInterval(()=>{(this.options.refetchIntervalInBackground||Un.isFocused())&&this.#h()},this.#p))}#y(){this.#g(),this.#v(this.#_())}#b(){this.#d!==void 0&&(Wn.clearTimeout(this.#d),this.#d=void 0)}#x(){this.#f!==void 0&&(Wn.clearInterval(this.#f),this.#f=void 0)}createResult(e,t){let n=this.#t,r=this.options,i=this.#r,a=this.#i,o=this.#a,s=e===n?this.#n:e.state,{state:c}=e,l={...c},u=!1,d;if(t._optimisticResults){let i=this.hasListeners(),a=!i&&Sr(e,t),o=i&&wr(e,n,t,r);(a||o)&&(l={...l,...vr(c.data,e.options)}),t._optimisticResults===`isRestoring`&&(l.fetchStatus=`idle`)}let{error:f,errorUpdatedAt:p,status:m}=l;d=l.data;let h=!1;if(t.placeholderData!==void 0&&d===void 0&&m===`pending`){let e;i?.isPlaceholderData&&t.placeholderData===o?.placeholderData?(e=i.data,h=!0):e=typeof t.placeholderData==`function`?t.placeholderData(this.#u?.state.data,this.#u):t.placeholderData,e!==void 0&&(m=`success`,d=ir(i?.data,e,t),u=!0)}if(t.select&&d!==void 0&&!h)if(i&&d===a?.data&&t.select===this.#c)d=this.#l;else try{this.#c=t.select,d=t.select(d),d=ir(i?.data,d,t),this.#l=d,this.#s=null}catch(e){this.#s=e}this.#s&&(f=this.#s,d=this.#l,p=Date.now(),m=`error`);let g=l.fetchStatus===`fetching`,_=m===`pending`,v=m===`error`,y=_&&g,b=d!==void 0,x={status:m,fetchStatus:l.fetchStatus,isPending:_,isSuccess:m===`success`,isError:v,isInitialLoading:y,isLoading:y,data:d,dataUpdatedAt:l.dataUpdatedAt,error:f,errorUpdatedAt:p,failureCount:l.fetchFailureCount,failureReason:l.fetchFailureReason,errorUpdateCount:l.errorUpdateCount,isFetched:e.isFetched(),isFetchedAfterMount:l.dataUpdateCount>s.dataUpdateCount||l.errorUpdateCount>s.errorUpdateCount,isFetching:g,isRefetching:g&&!_,isLoadingError:v&&!b,isPaused:l.fetchStatus===`paused`,isPlaceholderData:u,isRefetchError:v&&b,isStale:Tr(e,t),refetch:this.refetch,promise:this.#o,isEnabled:Yn(t.enabled,e)!==!1};if(this.options.experimental_prefetchInRender){let t=x.data!==void 0,r=x.status===`error`&&!t,i=e=>{r?e.reject(x.error):t&&e.resolve(x.data)},a=()=>{let e=this.#o=x.promise=lr();i(e)},o=this.#o;switch(o.status){case`pending`:e.queryHash===n.queryHash&&i(o);break;case`fulfilled`:(r||x.data!==o.value)&&a();break;case`rejected`:(!r||x.error!==o.reason)&&a()}}return x}updateResult(){let e=this.#r,t=this.createResult(this.#t,this.options);this.#i=this.#t.state,this.#a=this.options,this.#i.data!==void 0&&(this.#u=this.#t),!er(t,e)&&(this.#r=t,this.#C({listeners:(()=>{if(!e)return!0;let{notifyOnChangeProps:t}=this.options,n=typeof t==`function`?t():t;if(n===`all`||!n&&!this.#m.size)return!0;let r=new Set(n??this.#m);return this.options.throwOnError&&r.add(`error`),Object.keys(this.#r).some(t=>{let n=t;return this.#r[n]!==e[n]&&r.has(n)})})()}))}#S(){let e=this.#e.getQueryCache().build(this.#e,this.options);if(e===this.#t)return;let t=this.#t;this.#t=e,this.#n=e.state,this.hasListeners()&&(t?.removeObserver(this),e.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#y()}#C(e){ur.batch(()=>{e.listeners&&this.listeners.forEach(e=>{e(this.#r)}),this.#e.getQueryCache().notify({query:this.#t,type:`observerResultsUpdated`})})}};function cre(e,t){return Yn(t.enabled,e)!==!1&&e.state.data===void 0&&(e.state.status!==`error`||Yn(t.retryOnMount,e)!==!1)}function Sr(e,t){return cre(e,t)||e.state.data!==void 0&&Cr(e,t,t.refetchOnMount)}function Cr(e,t,n){if(Yn(t.enabled,e)!==!1&&Jn(t.staleTime,e)!==`static`){let r=typeof n==`function`?n(e):n;return r===`always`||r!==!1&&Tr(e,t)}return!1}function wr(e,t,n,r){return(e!==t||Yn(r.enabled,e)===!1)&&(!n.suspense||e.state.status!==`error`)&&Tr(e,n)}function Tr(e,t){return Yn(t.enabled,e)!==!1&&e.isStaleByTime(Jn(t.staleTime,e))}function lre(e,t){return!er(e.getCurrentResult(),t)}var Er=M.createContext(void 0),Dr=e=>{let t=M.useContext(Er);if(e)return e;if(!t)throw Error(`No QueryClient set, use QueryClientProvider to set one`);return t},ure=({client:e,children:t})=>(M.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),(0,N.jsx)(Er.Provider,{value:e,children:t})),Or=M.createContext(!1),kr=()=>M.useContext(Or);Or.Provider;function dre(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var fre=M.createContext(dre()),Ar=()=>M.useContext(fre),jr=(e,t,n)=>{let r=n?.state.error&&typeof e.throwOnError==`function`?sr(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||r)&&(t.isReset()||(e.retryOnMount=!1))},Mr=e=>{M.useEffect(()=>{e.clearReset()},[e])},Nr=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:i})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(i&&e.data===void 0||sr(n,[e.error,r])),Pr=e=>{if(e.suspense){let t=1e3,n=e=>e===`static`?e:Math.max(e??t,t),r=e.staleTime;e.staleTime=typeof r==`function`?(...e)=>n(r(...e)):n(r),typeof e.gcTime==`number`&&(e.gcTime=Math.max(e.gcTime,t))}},pre=(e,t)=>e.isLoading&&e.isFetching&&!t,Fr=(e,t)=>e?.suspense&&t.isPending,Ir=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function Lr(e,t,n){let r=kr(),i=Ar(),a=Dr(n),o=a.defaultQueryOptions(e);a.getDefaultOptions().queries?._experimental_beforeQuery?.(o);let s=a.getQueryCache().get(o.queryHash),c=e.subscribed!==!1;o._optimisticResults=r?`isRestoring`:c?`optimistic`:void 0,Pr(o),jr(o,i,s),Mr(i);let l=!a.getQueryCache().get(o.queryHash),[u]=M.useState(()=>new t(a,o)),d=u.getOptimisticResult(o),f=!r&&c;if(M.useSyncExternalStore(M.useCallback(e=>{let t=f?u.subscribe(ur.batchCalls(e)):Gn;return u.updateResult(),t},[u,f]),()=>u.getCurrentResult(),()=>u.getCurrentResult()),M.useEffect(()=>{u.setOptions(o)},[o,u]),Fr(o,d))throw Ir(o,u,i);if(Nr({result:d,errorResetBoundary:i,throwOnError:o.throwOnError,query:s,suspense:o.suspense}))throw d.error;return a.getDefaultOptions().queries?._experimental_afterQuery?.(o,d),o.experimental_prefetchInRender&&!cr.isServer()&&pre(d,r)&&(l?Ir(o,u,i):s?.promise)?.catch(Gn).finally(()=>{u.updateResult()}),o.notifyOnChangeProps?d:u.trackResult(d)}function Rr(e,t){return Lr(e,xr,t)}function mre(e){return e}var hre=g,zr=globalThis.Number,gre=e=>{if(e===`NaN`)return v(NaN);if(e===`Infinity`)return v(1/0);if(e===`-Infinity`)return v(-1/0);if(e.trim()===``)return me();let t=zr(e);return zr.isNaN(t)?me():v(t)},_re=[[`GET`,`get`],[`POST`,`post`],[`PUT`,`put`],[`DELETE`,`del`],[`PATCH`,`patch`],[`HEAD`,`head`],[`OPTIONS`,`options`],[`TRACE`,`trace`]],Br=`~effect/http/HttpClientRequest`,vre={[Br]:Br,..._e,toJSON(){return{_id:`HttpClientRequest`,method:this.method,url:this.url,urlParams:this.urlParams,hash:this.hash,headers:Nee(this.headers),body:this.body.toJSON()}},pipe(){return ke(this,arguments)}};function Vr(e,t,n,r,i,a){let o=Object.create(vre);return o.method=e,o.url=t,o.urlParams=n,o.hash=r,o.headers=i,o.body=a,o}var yre=Vr(`GET`,``,bte,me(),mte,Ote),Hr=e=>(t,n)=>xre(yre,{method:e,url:t,...n??void 0}),bre=Hr(`POST`),xre=_(2,(e,t)=>{let n=e;return t.method&&(n=Sre(n,t.method)),t.url&&(n=Tre(n,t.url)),t.headers&&(n=Ur(n,t.headers)),t.urlParams&&(n=Ere(n,t.urlParams)),t.hash&&(n=Dre(n,t.hash)),t.body&&(n=Gr(n,t.body)),t.accept&&(n=Wr(n,t.accept)),t.acceptJson&&(n=wre(n)),n}),Sre=_(2,(e,t)=>Vr(t,e.url,e.urlParams,e.hash,e.headers,e.body)),Cre=_(3,(e,t,n)=>Vr(e.method,e.url,e.urlParams,e.hash,Et(e.headers,t,n),e.body)),Ur=_(2,(e,t)=>Vr(e.method,e.url,e.urlParams,e.hash,Ate(e.headers,t),e.body)),Wr=_(2,(e,t)=>Cre(e,`Accept`,t)),wre=Wr(`application/json`),Tre=_(2,(e,t)=>{if(typeof t==`string`)return Vr(e.method,t,e.urlParams,e.hash,e.headers,e.body);let n=new URL(t.toString()),r=cte(n.searchParams),i=Gee(n.hash===``?void 0:n.hash.slice(1));return n.search=``,n.hash=``,Vr(e.method,n.toString(),r,i,e.headers,e.body)}),Ere=_(2,(e,t)=>Vr(e.method,e.url,cn(e.urlParams,t),e.hash,e.headers,e.body)),Dre=_(2,(e,t)=>Vr(e.method,e.url,e.urlParams,v(t),e.headers,e.body)),Gr=_(2,(e,t)=>{let n=e.headers;return t._tag===`Empty`||t._tag===`FormData`?n=an(an(n,`Content-Type`),`Content-length`):(t.contentType&&(n=Et(n,`content-type`,t.contentType)),t.contentLength!==void 0&&(n=Et(n,`content-length`,t.contentLength.toString()))),Vr(e.method,e.url,e.urlParams,e.hash,n,t)}),Ore=e=>zt({b3:`${e.traceId}-${e.spanId}-${e.sampled?`1`:`0`}${ue(e.parent,{onNone:()=>``,onSome:e=>`-${e.spanId}`})}`,traceparent:`00-${e.traceId}-${e.spanId}-${e.sampled?`01`:`00`}`}),Kr=`~effect/http/HttpClient`,qr=Ke(`effect/HttpClient`),Jr=_(2,(e,t)=>Yr(n=>t(e.postprocess(n)),e.preprocess)),kre=Jr(Je(xte)),Yr=(e,t)=>{let n=Object.create(Are);return n.preprocess=t,n.postprocess=e,n.execute=function(n){return e(t(n))},n},Are={[Kr]:Kr,pipe(){return ke(this,arguments)},..._e,toJSON(){return{_id:`effect/HttpClient`}},...Object.fromEntries(_re.map(([e,t])=>[t,function(t,n){return this.execute(Hr(e)(t,n))}]))},jre=e=>Yr(t=>Je(t,t=>Qe(n=>{let i=Fre.get(t),a=i??new AbortController,o=Ite(t.url,t.urlParams,m(t.hash));if(Mee(o))return r(new en({reason:new Rte({request:t,cause:o.failure})}));let s=o.success;if(n.getRef(Eee)||n.getRef(Xr)(t)){let r=e(t,s,a.signal,n);return i?r:Xe(e=>Te(e(r),{onSuccess(e){return Qr.register(e,a),ze(new $r(e,a))},onFailure(e){return qe(e)&&a.abort(),Be(e)}}))}return yee(n.getRef(Nre)(t),{kind:`client`},r=>{r.attribute(`http.request.method`,t.method),r.attribute(`server.address`,s.origin),s.port!==``&&r.attribute(`server.port`,+s.port),r.attribute(`url.full`,s.toString()),r.attribute(`url.path`,s.pathname),r.attribute(`url.scheme`,s.protocol.slice(0,-1));let o=s.search.slice(1);o!==``&&r.attribute(`url.query`,o);let c=n.getRef(Tte),l=Dt(t.headers,c);for(let e in l)r.attribute(`http.request.header.${e}`,String(l[e]));return t=n.getRef(Zr)?Ur(t,Ore(r)):t,Xe(o=>o(e(t,s,a.signal,n)).pipe(Jee(r,{captureStackTrace:!1}),Te({onSuccess:e=>{r.attribute(`http.response.status_code`,e.status);let t=Dt(e.headers,c);for(let e in t)r.attribute(`http.response.header.${e}`,String(t[e]));return i?ze(e):(Qr.register(e,a),ze(new $r(e,a)))},onFailure(e){return!i&&qe(e)&&a.abort(),Be(e)}})))})})),ze),Mre=_(2,(e,t)=>{let n=Ce(t),r=n?`errors-and-responses`:t.retryOn??`errors-and-responses`,i=n?t:t.schedule,o=i&&h(i),s=n?void 0:t.times;return Jr(e,E(r===`errors-only`?ae:ee({schedule:o,times:s,while:ti}),r===`response-only`?ae:D({while:n||t.while===void 0?ei:a(ei,t.while),schedule:i,times:s})))}),Xr=Le(`effect/http/HttpClient/TracerDisabledWhen`,{defaultValue:()=>Cee}),Zr=Le(`effect/HttpClient/TracerPropagationEnabled`,{defaultValue:ce}),Nre=Le(`effect/http/HttpClient/SpanNameGenerator`,{defaultValue:()=>e=>`http.client ${e.method}`}),Pre=e=>We(qr)(te(t=>Fe(e,e=>Jr(e,Aee(e=>vee(t,e)))))),Qr=(()=>{if(`FinalizationRegistry`in globalThis&&globalThis.FinalizationRegistry){let e=new FinalizationRegistry(e=>{e.abort()});return{register(t,n){e.register(t,n,t)},unregister(t){e.unregister(t)}}}let e=new Map;return{register(t,n){e.set(t,setTimeout(()=>n.abort(),5e3))},unregister(t){let n=e.get(t);n!==void 0&&(clearTimeout(n),e.delete(t))}}})(),Fre=new WeakMap,$r=class{original;controller;constructor(e,t){this.original=e,this.controller=t}[Ot]=Ot;[gt]=gt;applyInterrupt(e){return Ze(()=>(Qr.unregister(this.original),Dee(e,()=>Ue(()=>{this.controller.abort()}))))}get request(){return this.original.request}get status(){return this.original.status}get headers(){return this.original.headers}get cookies(){return this.original.cookies}get remoteAddress(){return this.original.remoteAddress}get formData(){return this.applyInterrupt(this.original.formData)}get text(){return this.applyInterrupt(this.original.text)}get json(){return this.applyInterrupt(this.original.json)}get urlParamsBody(){return this.applyInterrupt(this.original.urlParamsBody)}get arrayBuffer(){return this.applyInterrupt(this.original.arrayBuffer)}get stream(){return dee(()=>(Qr.unregister(this.original),Lee(this.original.stream,Ue(()=>{this.controller.abort()}))))}toJSON(){return this.original.toJSON()}[Re](){return this.original[Re]()}pipe(){return ke(this,arguments)}},ei=e=>hee(e)||Ire(e),Ire=e=>nn(e)&&(e.reason._tag===`TransportError`||e.reason._tag===`StatusCodeError`&&ti(e.reason.response)),ti=e=>e.status===408||e.status===429||e.status===500||e.status===502||e.status===503||e.status===504;function ni(e){return{id:e.id??`ws:${e.label}`,label:e.label,source:e.source??`manual`,target:e.target}}function Lre(e){return e?.target.wsBaseUrl??null}function Rre(e){return e?.target.httpBaseUrl??null}function zre(e,t){return{...e,environmentId:t.environmentId,label:t.label}}function Bre(e){return e.cloudMode?`cmmd-cloud-runtime`:`local-web`}function Vre(e){let t=Bre(e);return{topology:t,controlPlane:t!==`cmmd-cloud-runtime`,executionPlane:!0,workspaceProxy:!1}}function Hre(e){let t=e.topology===`cmmd-cloud-runtime`;return{cmmd:!0,ownerBootstrapPromotion:e.topology!==`cloud-shell`&&!t,bearerBootstrap:!0,desktopBootstrap:e.topology===`desktop-local`,providerCredentialBroker:e.topology===`cmmd-control-plane`}}function Ure(e){let t=e.executionPlane;return{agents:t,browser:t,github:t,terminal:t,providerEgress:e.topology===`cmmd-control-plane`}}function Wre(e,t){return{localProjects:t.executionPlane,cloudProjects:e.cloudMode}}function ri(e){let t=e.capabilities,n=t.runtime??Vre(t);return{repositoryIdentity:t.repositoryIdentity,pullRequests:t.pullRequests??!1,cloudMode:t.cloudMode,posthogPublicKey:t.posthogPublicKey,posthogHost:t.posthogHost,runtime:n,auth:t.auth??Hre(n),tools:t.tools??Ure(n),projects:t.projects??Wre(t,n)}}function Gre(e){return e?ri(e).projects.cloudProjects:!1}function Kre(e){return e?ri(e).runtime.workspaceProxy??!1:!1}function ii(e,t){return{environmentId:e,projectId:t}}function ai(e,t){return{environmentId:e,threadId:t}}var oi=`scoped:v1:`;function si(e){let t=`projectId`in e?e.projectId:e.threadId;return t.includes(`:`)||e.environmentId.startsWith(oi)?`${oi}${encodeURIComponent(e.environmentId)}:${encodeURIComponent(t)}`:`${e.environmentId}:${t}`}function ci(e){return si(e)}function li(e){return si(e)}function qre(e){let t=e.slice(10),n=t.indexOf(`:`);if(n<=0||n>=t.length-1||t.indexOf(`:`,n+1)!==-1)return null;try{let e=decodeURIComponent(t.slice(0,n)),r=decodeURIComponent(t.slice(n+1));return e.length>0&&r.length>0?{environmentId:e,localId:r}:null}catch{return null}}function ui(e){if(e.startsWith(oi))return qre(e);let t=e.lastIndexOf(`:`);return t<=0||t>=e.length-1?null:{environmentId:e.slice(0,t),localId:e.slice(t+1)}}function di(e){let t=ui(e);return t?{environmentId:t.environmentId,projectId:t.localId}:null}function fi(e){let t=ui(e);return t?{environmentId:t.environmentId,threadId:t.localId}:null}var pi=`~effect/ManagedRuntime`,mi=(e,t)=>{let n=t?.memoMap??de(),r=iee(`parallel`),i=C(r,`sequential`),a={onFiberStart:ie(r)},s=e=>e?{...e,onFiberStart:e.onFiberStart?t=>{a.onFiberStart(t),e.onFiberStart(t)}:a.onFiberStart}:a,c,l=Qe(t=>(c||=d(pee(o(e,n,i),e=>Ue(()=>{u.cachedContext=e})),{...a,scheduler:t.currentScheduler}),See(se(c)))),u={[pi]:pi,memoMap:n,scope:r,contextEffect:l,cachedContext:void 0,context(){return u.cachedContext===void 0?T(u.contextEffect):Promise.resolve(u.cachedContext)},dispose(){return T(u.disposeEffect)},disposeEffect:Ze(()=>(u.contextEffect=see(`ManagedRuntime disposed`),u.cachedContext=void 0,Ae(u.scope,Ye))),runFork(e,t){return u.cachedContext===void 0?d(hi(u,e),s(t)):Me(u.cachedContext)(e,s(t))},runCallback(e,t){return u.cachedContext===void 0?be(hi(u,e),s(t)):Zee(u.cachedContext)(e,s(t))},runSyncExit(e){return u.cachedContext===void 0?Iee(hi(u,e)):ne(u.cachedContext)(e)},runSync(e){return u.cachedContext===void 0?re(hi(u,e)):cee(u.cachedContext)(e)},runPromiseExit(e,t){return u.cachedContext===void 0?eee(hi(u,e),s(t)):oee(u.cachedContext)(e,s(t))},runPromise(e,t){return u.cachedContext===void 0?T(hi(u,e),s(t)):x(u.cachedContext)(e,s(t))}};return u};function hi(e,t){return Je(e.contextEffect,e=>fe(t,e))}var gi={accept:!1,observe:!1,missingFrameCount:0,startsNewStream:!1};function _i(e){let t=e===!0;return{accept:t,observe:t,missingFrameCount:0,startsNewStream:t}}function Jre(e,t){let n=e.streamGeneration===void 0&&e.streamId===void 0,r=t.streamGeneration!==void 0||t.streamId!==void 0;return n&&r?_i(t.keyframe):null}function Yre(e,t){return e.streamGeneration===void 0||t.streamGeneration===void 0?null:t.streamGeneration<e.streamGeneration?gi:t.streamGeneration>e.streamGeneration?_i(t.keyframe):null}function Xre(e,t){if(!e.streamId||!t.streamId)return null;if(e.streamId!==t.streamId)return _i(t.keyframe);if(t.sequence<=e.observedSequence)return gi;let n=Math.max(0,t.sequence-e.observedSequence-1);return{accept:n===0||t.keyframe===!0,observe:!0,missingFrameCount:n,startsNewStream:!1}}function Zre(e,t){if(t.sequence>e.acceptedSequence)return{accept:!0,observe:!0,missingFrameCount:0,startsNewStream:!1};if(!e.acceptedCapturedAt)return gi;let n=Date.parse(e.acceptedCapturedAt),r=Date.parse(t.capturedAt);return Number.isNaN(n)||Number.isNaN(r)||r<=n?gi:{accept:!0,observe:!0,missingFrameCount:0,startsNewStream:!1}}function Qre(e,t){return Jre(e,t)??Yre(e,t)??Xre(e,t)??Zre(e,t)}function $re(e,t){let n=Qre(e,t);if(!n.observe)return{accept:n.accept,observe:n.observe,missingFrameCount:n.missingFrameCount,state:e};let r=n.startsNewStream?t.sequence:Math.max(e.observedSequence,t.sequence),i={...e,observedSequence:r,gapCount:e.gapCount+n.missingFrameCount},a=n.accept?{...i,acceptedSequence:t.sequence,acceptedCapturedAt:t.capturedAt,...t.streamId?{streamId:t.streamId}:{},...t.streamGeneration===void 0?{}:{streamGeneration:t.streamGeneration}}:i;return{accept:n.accept,observe:n.observe,missingFrameCount:n.missingFrameCount,state:a}}var vi=S();function eie(e){return e.stageLabel.trim().toLowerCase()===`latest`?e.baseName:`${e.baseName} (${e.stageLabel})`}var yi=`Forge`,bi=``,xi=bi===`latest`||bi===`nightly`?bi:null,Si=xi===`nightly`?`Nightly`:xi===`latest`?`Latest`:null,Ci=Si??`Alpha`,wi=Si?eie({baseName:yi,stageLabel:Ci}):yi,Ti=`0.13.4`,Ei=ft(`forge-app-top-bar drag-region @container/header-actions relative z-20 w-full min-w-0 shrink-0 bg-background`,`grid grid-cols-[minmax(0,1fr)_minmax(0,auto)] items-center`),Di=`flex h-full min-w-0 items-center gap-1 md:gap-1.5`,Oi=`flex h-touch min-w-0 max-w-full touch-manipulation items-center justify-center rounded-lg px-3 text-foreground transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring md:h-7 md:px-2`,tie={width:`calc(100% - var(--forge-right-panel-reserved-width, 0px))`},nie=`forge-app-shell flex w-full min-w-0 flex-row`,ki=`forge-app-shell flex w-full min-w-0 flex-col`,rie=`flex min-h-0 min-w-0 flex-1 flex-col`,iie=`relative flex h-[var(--forge-content-height)] min-h-0 min-w-0 flex-1 overflow-hidden`;function Ai(e){let t=(0,vi.c)(19),{showStageBadge:n,tone:r,variant:i}=e,a=n!==void 0&&n,o=r===void 0?`default`:r,s=(i===void 0?`default`:i)===`auth`,c=s?20:16,l=s?`h-5 w-5 shrink-0`:`h-4 w-4 shrink-0`,u;t[0]!==c||t[1]!==l?(u=(0,N.jsx)(`img`,{className:l,src:`/forge-mark.svg`,width:c,height:c,alt:``,"aria-hidden":`true`}),t[0]=c,t[1]=l,t[2]=u):u=t[2];let d=u,f=s?`text-[15px] sm:text-base`:`text-sm`,p=o===`on-dark`?`text-primary-foreground`:`text-foreground`,m;t[3]!==f||t[4]!==p?(m=ft(`truncate font-semibold tracking-tight`,f,p),t[3]=f,t[4]=p,t[5]=m):m=t[5];let h;t[6]===m?h=t[7]:(h=(0,N.jsx)(`span`,{className:m,children:yi}),t[6]=m,t[7]=h);let g=h,_=s?`rounded-full bg-muted/50 px-2 py-0.5 text-[9px] leading-none font-medium tracking-[0.14em] text-muted-foreground/70 uppercase [text-indent:0.14em]`:`rounded-full bg-muted/50 px-1.5 py-0.5 text-[8px] leading-none font-medium tracking-[0.18em] text-muted-foreground/60 uppercase [text-indent:0.18em]`,v;t[8]===_?v=t[9]:(v=(0,N.jsx)(`span`,{className:_,children:Ci}),t[8]=_,t[9]=v);let y=v;if(a){let e;t[10]!==d||t[11]!==g?(e=(0,N.jsxs)(`span`,{className:`flex items-center gap-2`,children:[d,g]}),t[10]=d,t[11]=g,t[12]=e):e=t[12];let n;return t[13]!==y||t[14]!==e?(n=(0,N.jsxs)(`div`,{className:`flex items-center gap-1.5 rounded-md`,"aria-label":wi,children:[e,y]}),t[13]=y,t[14]=e,t[15]=n):n=t[15],n}let b;return t[16]!==d||t[17]!==g?(b=(0,N.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5`,"aria-label":wi,children:[d,g]}),t[16]=d,t[17]=g,t[18]=b):b=t[18],b}function ji(e){let t=(0,vi.c)(5),{className:n}=e,r;t[0]===n?r=t[1]:(r=ft(`pointer-events-none flex select-none items-center`,n),t[0]=n,t[1]=r);let i;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,N.jsx)(Ai,{}),t[2]=i):i=t[2];let a;return t[3]===r?a=t[4]:(a=(0,N.jsx)(`div`,{className:r,children:i}),t[3]=r,t[4]=a),a}function aie(){let e=new Map;return{clear:()=>e.clear(),getItem:t=>e.get(t)??null,key:t=>Array.from(e.keys()).at(t)??null,get length(){return e.size},removeItem:t=>e.delete(t),setItem:(t,n)=>e.set(t,n)}}var Mi=typeof window<`u`?window.localStorage:aie(),oie=(e,t)=>wte(kt(e))(t),sie=(e,t)=>zte(kt(e))(t),Ni=(e,t)=>{let n=Mi.getItem(e);return n?oie(t,n):null},Pi=(e,t,n)=>{let r=sie(n,t);Mi.setItem(e,r)},Fi=e=>{Mi.removeItem(e)},Ii=`forge:local_storage_change`;function cie(e){typeof window>`u`||window.dispatchEvent(new CustomEvent(Ii,{detail:{key:e}}))}function Li(e,t,n){let[r,i]=(0,M.useState)(()=>{try{return Ni(e,n)??t}catch(e){return console.error(`[LOCALSTORAGE] Error:`,e),t}}),a=(0,M.useCallback)(t=>{i(r=>{try{let i=typeof t==`function`?t(r):t;return i===null?Fi(e):Pi(e,i,n),queueMicrotask(()=>cie(e)),i}catch(e){return console.error(`[LOCALSTORAGE] Error:`,e),r}})},[e,n]),o=(0,M.useRef)(e);return(0,M.useEffect)(()=>{if(o.current!==e){o.current=e;try{let r=Ni(e,n);i(r??t)}catch(e){console.error(`[LOCALSTORAGE] Error:`,e)}}},[e,t,n]),(0,M.useEffect)(()=>{let r=()=>{try{let r=Ni(e,n);i(r??t)}catch(e){console.error(`[LOCALSTORAGE] Error:`,e)}},a=t=>{t.key===e&&r()},o=t=>{t.detail.key===e&&r()};return window.addEventListener(`storage`,a),window.addEventListener(Ii,o),()=>{window.removeEventListener(`storage`,a),window.removeEventListener(Ii,o)}},[e,t,n]),[r,a]}var Ri=`cmmd-runtime:`;function zi(e){return`${Ri}${e}`}var lie=/^env_[0-9a-f]{32}$/,uie=/^[A-Za-z0-9][A-Za-z0-9._-]*$/,Bi={shape:`local`,isCloud:!1,legacyRuntimeId:null},die={shape:`cloud-project-placeholder`,isCloud:!0,legacyRuntimeId:null},fie={shape:`durable-environment`,isCloud:!0,legacyRuntimeId:null};function Vi(e){if(typeof e!=`string`)return Bi;if(e.startsWith(`cmmd-runtime:`)){let t=e.slice(Ri.length);return uie.test(t)?{shape:`legacy-runtime`,isCloud:!0,legacyRuntimeId:t}:Bi}return e.startsWith(`cmmd-cloud-project:`)?die:lie.test(e)?fie:Bi}var Hi=`forge:client-settings:v1`,pie=`forge:saved-environment-registry:v1`,mie=pn({environmentId:Nt,label:k,httpBaseUrl:k,wsBaseUrl:k,createdAt:k,lastConnectedAt:Yt(k),cmmdOrganizationId:Tt(k),cmmdProjectId:Tt(k),runtimeId:Tt(k),runtimeTicketExpiresAt:Tt(k),lastAuthenticatedPullRequestCapability:Tt(Ut),bearerToken:Tt(k)}),Ui=pn({version:Tt(qt),records:Tt(sn(mie))});function Wi(){return typeof window<`u`}var hie={uiFontSize:14,codeFontSize:15},gie=[[`uiFontSize`,11,20],[`codeFontSize`,11,20]];function _ie(e){return e.defaultThreadRuntime===`desktop-cloud-bridge`?{...e,defaultThreadRuntime:`cloud`}:null}function vie(e){if(typeof e.fontDefaultsVersion==`number`)return null;let t=Object.entries(hie).filter(([t,n])=>e[t]===n);if(t.length===0)return null;let n={...e};for(let[e]of t)delete n[e];return n}function yie(e){let t=gie.flatMap(([t,n,r])=>{let i=e[t];if(typeof i!=`number`||!Number.isFinite(i))return[];let a=Math.min(r,Math.max(n,Math.round(i)));return a===i?[]:[[t,a]]});if(t.length===0)return null;let n={...e};for(let[e,r]of t)n[e]=r;return n}function Gi(e){if(!e||typeof e!=`object`)return e;let t=e,n=!1;for(let e of[_ie,vie,yie]){let r=e(t);r!==null&&(t=r,n=!0)}return n?t:e}function bie(){if(!Wi())return null;try{let e=window.localStorage.getItem(Hi);return e?Qt(un)(Gi(JSON.parse(e))):null}catch{return null}}function xie(e){Wi()&&Pi(Hi,e,un)}function Ki(){if(!Wi())return{};try{return Ni(`forge:saved-environment-registry:v1`,Ui)??{}}catch{return{}}}function qi(e){Wi()&&Pi(pie,e,Ui)}function Ji(){return Ki().records??[]}function Sie(e){qi({version:1,records:e})}function Cie(){return Ji().map(e=>wt(e))}function wie(e){let t=new Map(Ji().map(e=>[e.environmentId,e]));Sie(e.map(e=>{let n=Vi(e.environmentId).legacyRuntimeId===null?t.get(e.environmentId)?.bearerToken:void 0;return n?{...wt(e),bearerToken:n}:wt(e)}))}function Tie(e){return Ji().find(t=>t.environmentId===e)?.bearerToken??null}function Eie(e,t){let n=Ki(),r=n.records??[],i=!1;return qi({version:n.version??1,records:r.map(n=>n.environmentId===e?(i=!0,Object.assign(wt(n),{bearerToken:t})):n)}),i}function Die(e){let t=Ki();qi({version:t.version??1,records:(t.records??[]).map(t=>t.environmentId===e?wt(t):t)})}var Oie=Qt(un);function kie(){return typeof window>`u`?void 0:window.desktopBridge}function Yi(e){let t=kie(),n=t?.[e];return typeof n==`function`?n.bind(t):null}async function Xi(){let e=Yi(`getClientSettings`);if(e){let t=await e();return t?Oie(t):null}return bie()}async function Zi(e){let t=Yi(`setClientSettings`);if(t)return t(e);xie(e)}async function Qi(){let e=Yi(`getSavedEnvironmentRegistry`);return e?e():Cie()}async function $i(e){let t=Yi(`setSavedEnvironmentRegistry`);if(t)return t(e);wie(e)}async function ea(e){let t=Yi(`getSavedEnvironmentSecret`);return t?t(e):Tie(e)}async function ta(e,t){let n=Yi(`setSavedEnvironmentSecret`);return n?n(e,t):Eie(e,t)}async function na(e){let t=Yi(`removeSavedEnvironmentSecret`);if(t)return t(e);Die(e)}var ra=`token`;function ia(e){return new URLSearchParams(e.hash.startsWith(`#`)?e.hash.slice(1):e.hash)}function aa(e){let t=ia(e).get(ra)?.trim()??``;if(t.length>0)return t;let n=e.searchParams.get(ra)?.trim()??``;return n.length>0?n:null}function Aie(e){let t=new URL(e.toString()),n=ia(t);return n.has(ra)&&(n.delete(ra),t.hash=n.toString()),t.searchParams.delete(ra),t}function oa(e,t){let n=new URL(e.toString());return n.searchParams.delete(ra),n.hash=new URLSearchParams([[ra,t]]).toString(),n}function jie(e,t){let n=new URL(e);return n.pathname=`/login`,oa(n,t).toString()}function Mie(e){return oa(new URL(`/login`,window.location.href),e).toString()}var Nie=`host`;function Pie(e){let t=new URL(e),n=aa(t),r=new URL(`forge:///pair`);return r.searchParams.set(Nie,t.origin),n&&r.searchParams.set(ra,n),r.toString()}function Fie(e){return{_tag:`Value`,value:e}}function Iie(e,t){return{_tag:`Record`,keys:e,value:t}}function Lie(e,t){return{_tag:`Array`,length:e,value:t}}Gt(`SourceError`);var sa=Le(`effect/ConfigProvider`,{defaultValue:()=>zie()}),Rie={...Ne,toJSON(){return{_id:`ConfigProvider`}}};function ca(e,t,n){let r=Object.create(Rie);return r.get=e,r.mapInput=t,r.prefix=n,r.load=r=>(t&&(r=t(r)),n&&(r=[...n,...r]),e(r)),r}function zie(e){let t=e?.env??{APP_VERSION:`0.13.4`,BASE_URL:`/`,DEV:!1,MODE:`production`,PROD:!0,SSR:!1,TSS_INLINE_CSS_ENABLED:`false`,VITE_COMMIT_SHA:``,VITE_HOSTED_APP_CHANNEL:``,VITE_HTTP_URL:``,VITE_SENTRY_COMMIT_SHA:`cde08c954e416e4076c8b79afc695b6f4bf19ba9`,VITE_SENTRY_DEBUG:``,VITE_SENTRY_DSN:``,VITE_SENTRY_ENABLED:``,VITE_SENTRY_ENVIRONMENT:`production`,VITE_SENTRY_PROFILES_SAMPLE_RATE:``,VITE_SENTRY_RELEASE:`forge-web@0.13.4+cde08c954e416e4076c8b79afc695b6f4bf19ba9`,VITE_SENTRY_REPLAYS_ON_ERROR_SAMPLE_RATE:``,VITE_SENTRY_REPLAYS_SESSION_SAMPLE_RATE:``,VITE_SENTRY_TRACES_SAMPLE_RATE:``,VITE_WS_URL:``},n=Bie(t);return ca(e=>ze(Hie(n,t,e)))}function Bie(e){let t={};for(let[n,r]of Object.entries(e)){if(r===void 0)continue;let e=n.split(`_`),i=t;for(let t of e)i.children??={},i=i.children[t]??={};i.value=r}return t}var Vie=/^(0|[1-9][0-9]*)$/;function Hie(e,t,n){let r=t[n.map(String).join(`_`)],i=Uie(e,n),a=i?.children?Object.keys(i.children):[];return a.length===0?r===void 0?void 0:Fie(r):a.every(e=>Vie.test(e))?Lie(Math.max(...a.map(e=>parseInt(e,10)))+1,r):Iie(new Set(a),r)}function Uie(e,t){if(t.length===0)return e;let n=e;for(let e of t)if(n=n?.children?.[String(e)],!n)return;return n}var la=`~effect/Config`,Wie=class{_tag=`ConfigError`;name=`ConfigError`;cause;constructor(e){this.cause=e}get message(){return this.cause.toString()}toString(){return`ConfigError(${this.message})`}},Gie={...Ne,...uee,[la]:la,asEffect(){return Je(sa.asEffect(),e=>this.parse(e))},toJSON(){return{_id:`Config`}}};function Kie(e){let t=Object.create(Gie);return t.parse=e,t}var ua=Pe(function*(e,t){let n=yield*e.load(t);if(n!==void 0)switch(n._tag){case`Value`:return n.value;case`Record`:{if(n.value!==void 0)return n.value;let r={};for(let i of n.keys){let n=yield*ua(e,[...t,i]);n!==void 0&&(r[i]=n)}return r}case`Array`:{if(n.value!==void 0)return n.value;let r=[];for(let i=0;i<n.length;i++)r.push(yield*ua(e,[...t,i]));return r}}}),da=Pe(function*(e,t,n){switch(e._tag){case`Objects`:{let r={};for(let i of e.propertySignatures){let e=i.name;if(typeof e==`string`){let a=yield*da(i.type,t,[...n,e]);a!==void 0&&(r[e]=a)}}if(e.indexSignatures.length>0){let i=yield*t.load(n);if(i&&i._tag===`Record`)for(let a of e.indexSignatures){let e=pte(a.parameter);for(let o of i.keys)if(!Object.hasOwn(r,o)&&e(o)){let e=yield*da(a.type,t,[...n,o]);e!==void 0&&(r[o]=e)}}}return r}case`Arrays`:{let r=yield*t.load(n);if(r&&r._tag===`Value`)return r.value;let i=[];for(let r=0;r<e.elements.length;r++)i.push(yield*da(e.elements[r],t,[...n,r]));return i}case`Union`:return yield*ua(t,n);case`Suspend`:return yield*da(e.thunk(),t,n);default:{let e=yield*t.load(n);return e===void 0?void 0:e._tag===`Value`||e._tag===`Record`&&e.value!==void 0||e._tag===`Array`&&e.value!==void 0?e.value:void 0}}});function fa(e,t){let n=Kte(e),r=It(n),i=fte(n.ast),a=typeof t==`string`?[t]:t??[];return Kie(e=>{let t=e.prefix?[...e.prefix,...a]:a;return da(i,e,a).pipe(zee(e=>r(e).pipe(et(e=>new Rt(t.length>0?new kte(t,e):e)))),et(e=>new Wie(e)))})}var qie=(e,t,n)=>{let r=Vt(e,t),i=k.pipe(bt(Vt(k,k),gte(n)),bt(r));return Ste([r,i])},P=typeof __SENTRY_DEBUG__>`u`||__SENTRY_DEBUG__,F=globalThis,pa=`10.74.0`;function ma(){return ha(F),F}function ha(e){let t=e.__SENTRY__=e.__SENTRY__||{};return t.version=t.version||`10.74.0`,t[pa]=t[`10.74.0`]||{}}function ga(e,t,n=F){let r=n.__SENTRY__=n.__SENTRY__||{},i=r[pa]=r[`10.74.0`]||{};return i[e]||(i[e]=t())}var _a=[`debug`,`info`,`warn`,`error`,`log`,`assert`,`trace`],Jie=`Sentry Logger `,va={};function ya(e){if(!(`console`in F))return e();let t=F.console,n={},r=Object.keys(va);r.forEach(e=>{let r=va[e];n[e]=t[e],t[e]=r});try{return e()}finally{r.forEach(e=>{t[e]=n[e]})}}function Yie(){Sa().enabled=!0}function Xie(){Sa().enabled=!1}function ba(){return Sa().enabled}function Zie(...e){xa(`log`,...e)}function Qie(...e){xa(`warn`,...e)}function $ie(...e){xa(`error`,...e)}function xa(e,...t){P&&ba()&&ya(()=>{F.console[e](`${Jie}[${e}]:`,...t)})}function Sa(){return P?ga(`loggerSettings`,()=>({enabled:!1})):{enabled:!1}}var I={enable:Yie,disable:Xie,isEnabled:ba,log:Zie,warn:Qie,error:$ie},Ca=50,wa=/\(error: (.*)\)/,Ta=/captureMessage|captureException/;function Ea(...e){let t=e.sort((e,t)=>e[0]-t[0]).map(e=>e[1]);return(e,n=0,r=0)=>{let i=[],a=e.split(`
|
|
3
3
|
`);for(let e=n;e<a.length;e++){let n=a[e];n.length>1024&&(n=n.slice(0,1024));let o=wa.test(n)?n.replace(wa,`$1`):n;if(!o.includes(`Error: `)){for(let e of t){let t=e(o);if(t){i.push(t);break}}if(i.length>=Ca+r)break}}return tae(i.slice(r))}}function eae(e){return Array.isArray(e)?Ea(...e):e}function tae(e){if(!e.length)return[];let t=Array.from(e);return/sentryWrapped/.test(Da(t).function||``)&&t.pop(),t.reverse(),Ta.test(Da(t).function||``)&&(t.pop(),Ta.test(Da(t).function||``)&&t.pop()),t.slice(0,Ca).map(e=>({...e,filename:e.filename||Da(t).filename,function:e.function||`?`}))}function Da(e){return e[e.length-1]||{}}var Oa=`<anonymous>`;function ka(e){try{return!e||typeof e!=`function`?Oa:e.name||Oa}catch{return Oa}}function Aa(e){let t=e.exception;if(t){let e=[];try{return t.values.forEach(t=>{t.stacktrace.frames&&e.push(...t.stacktrace.frames)}),e}catch{return}}}function nae(e){let t=e?.startsWith(`file://`)?e.slice(7):e;return t?.match(/\/[A-Z]:/)&&(t=t.slice(1)),t}var ja={},Ma={};function Na(e,t){return ja[e]=ja[e]||[],ja[e].push(t),()=>{let n=ja[e];if(n){let e=n.indexOf(t);e!==-1&&n.splice(e,1)}}}function Pa(e,t){if(!Ma[e]){Ma[e]=!0;try{t()}catch(t){P&&I.error(`Error while instrumenting ${e}`,t)}}}function Fa(e,t){let n=e&&ja[e];if(n)for(let r of n)try{r(t)}catch(t){P&&I.error(`Error while triggering instrumentation handler.
|
|
4
4
|
Type: ${e}
|
|
5
5
|
Name: ${ka(r)}
|
|
@@ -516,10 +516,10 @@ Url: ${Mk(e)}`),!0;if(!IDe(e,t.allowUrls))return W&&K.warn(`Event dropped due to
|
|
|
516
516
|
Event: ${dT(e)}.
|
|
517
517
|
Url: ${Mk(e)}`),!0}else if(e.type===`transaction`&&PDe(e,t.ignoreTransactions))return W&&K.warn(`Event dropped due to being matched by \`ignoreTransactions\` option.
|
|
518
518
|
Event: ${dT(e)}`),!0;return!1}function NDe(e,t){return t?.length?JO(e).some(e=>sT(e,t)):!1}function PDe(e,t){if(!t?.length)return!1;let n=e.transaction;return n?sT(n,t):!1}function FDe(e,t){if(!t?.length)return!1;let n=Mk(e);return n?sT(n,t):!1}function IDe(e,t){if(!t?.length)return!0;let n=Mk(e);return!n||sT(n,t)}function LDe(e=[]){for(let t=e.length-1;t>=0;t--){let n=e[t];if(n&&n.filename!==`<anonymous>`&&n.filename!==`[native code]`)return n.filename||null}return null}function Mk(e){try{let t=[...e.exception?.values??[]].reverse().find(e=>e.mechanism?.parent_id===void 0&&e.stacktrace?.frames?.length)?.stacktrace?.frames;return t?LDe(t):null}catch{return W&&K.error(`Cannot extract url for event ${dT(e)}`),null}}function RDe(e){return e.exception?.values?.length?!e.message&&!e.exception.values.some(e=>e.stacktrace||e.type&&e.type!==`Error`||e.value):!1}function zDe(e,t,n,r,i,a){if(!i.exception?.values||!a||!Rw(a.originalException,Error))return;let o=i.exception.values.length>0?i.exception.values[i.exception.values.length-1]:void 0;o&&(i.exception.values=Nk(e,t,r,a.originalException,n,i.exception.values,o,0))}function Nk(e,t,n,r,i,a,o,s){if(a.length>=n+1)return a;let c=[...a];if(Rw(r[i],Error)){Fk(o,s,r);let a=e(t,r[i]),l=c.length;Ik(a,i,l,s),c=Nk(e,t,n,r[i],i,[a,...c],a,l)}return Pk(r)&&r.errors.forEach((a,l)=>{if(Rw(a,Error)){Fk(o,s,r);let u=e(t,a),d=c.length;Ik(u,`errors[${l}]`,d,s),c=Nk(e,t,n,a,i,[u,...c],u,d)}}),c}function Pk(e){return Array.isArray(e.errors)}function Fk(e,t,n){e.mechanism={handled:!0,type:`auto.core.linked_errors`,...Pk(n)&&{is_exception_group:!0},...e.mechanism,exception_id:t}}function Ik(e,t,n,r){e.mechanism={handled:!0,...e.mechanism,type:`chained`,source:t,exception_id:n,parent_id:r}}function BDe(e){return Dw(e)&&`__sentry_fetch_url_host__`in e&&typeof e.__sentry_fetch_url_host__==`string`}function Lk(e){return BDe(e)?`${e.message} (${e.__sentry_fetch_url_host__})`:e.message}var Rk=new Map,zk=new Set;function VDe(e){if(G._sentryModuleMetadata)for(let t of Object.keys(G._sentryModuleMetadata)){let n=G._sentryModuleMetadata[t];if(zk.has(t))continue;zk.add(t);let r=e(t);for(let e of r.reverse())if(e.filename){Rk.set(e.filename,n);break}}}function HDe(e,t){return VDe(e),Rk.get(t)}function Bk(e,t){t.exception?.values?.forEach(t=>{t.stacktrace?.frames?.forEach(t=>{if(!t.filename||t.module_metadata)return;let n=HDe(e,t.filename);n&&(t.module_metadata=n)})})}function Vk(e){e.exception?.values?.forEach(e=>{e.stacktrace?.frames?.forEach(e=>{delete e.module_metadata})})}var UDe=EO(()=>({name:`ModuleMetadata`,setup(e){e.on(`beforeEnvelope`,e=>{sD(e,(e,t)=>{if(t===`event`){let t=Array.isArray(e)?e[1]:void 0;t&&(Vk(t),e[1]=t)}})}),e.on(`applyFrameMetadata`,t=>{if(t.type)return;let n=e.getOptions().stackParser;Bk(n,t)})}})),Hk=new Set([]);function Uk(e){let t=`console`,n=yw(t,e);return bw(t,WDe),n}var Wk=new Set;function WDe(){`console`in G&&tw.forEach(function(e){Wk.has(e)||!(e in G.console)||(Wk.add(e),Bw(G.console,e,function(t){return nw[e]=t,function(...t){let n=t[0],r=nw[e],i=Hk.size&&typeof n==`string`&&sT(n,Hk);i||xw(`console`,{args:t,level:e}),(!i||W&&K.isEnabled())&&r?.apply(G.console,t)}}))})}function Gk(e){return e===`warn`?`warning`:[`fatal`,`error`,`warning`,`log`,`info`,`debug`].includes(e)?e:`log`}var GDe=`CaptureConsole`,KDe=EO(((e={})=>{let t=e.levels||tw,n=e.handled??!0;return{name:GDe,setup(e){`console`in G&&Uk(({args:r,level:i})=>{J()!==e||!t.includes(i)||qDe(r,i,n)})}}}));function qDe(e,t,n){let r=Gk(t),i=Error(),a={level:Gk(t),extra:{arguments:e}};HT(o=>{if(o.addEventProcessor(e=>(e.logger=`console`,pT(e,{handled:n,type:`auto.core.capture_console`}),e)),t===`assert`){if(!e[0]){let t=`Assertion failed: ${aT(e.slice(1),` `)||`console.assert`}`;o.setExtra(`arguments`,e.slice(1)),o.captureMessage(t,r,{captureContext:a,syntheticException:i})}return}let s=e.find(e=>e instanceof Error);if(s){cO(s,a);return}let c=aT(e,` `);o.captureMessage(c,r,{captureContext:a,syntheticException:i})})}var JDe=`Dedupe`,Kk=EO((()=>{let e;return{name:JDe,processEvent(t){if(t.type)return t;try{if(YDe(t,e))return W&&K.warn(`Event dropped due to being a duplicate of previously captured event.`),null}catch{}return e=t}}}));function YDe(e,t){return t?!!(XDe(e,t)||ZDe(e,t)):!1}function XDe(e,t){let n=e.message,r=t.message;return!(!n&&!r||n&&!r||!n&&r||n!==r||!Jk(e,t)||!qk(e,t))}function ZDe(e,t){let n=Yk(t),r=Yk(e);return!(!n||!r||n.type!==r.type||n.value!==r.value||!Jk(e,t)||!qk(e,t))}function qk(e,t){let n=hw(e),r=hw(t);if(!n&&!r)return!0;if(n&&!r||!n&&r||(n=n,r=r,r.length!==n.length))return!1;for(let e=0;e<r.length;e++){let t=r[e],i=n[e];if(t.filename!==i.filename||t.lineno!==i.lineno||t.colno!==i.colno||t.function!==i.function)return!1}return!0}function Jk(e,t){let n=e.fingerprint,r=t.fingerprint;if(!n&&!r)return!0;if(n&&!r||!n&&r)return!1;n=n,r=r;try{return n.join(``)===r.join(``)}catch{return!1}}function Yk(e){return e.exception?.values?.[0]}var QDe=`ExtraErrorData`,$De=EO(((e={})=>{let{depth:t=3,captureErrorCause:n=!0}=e;return{name:QDe,processEvent(e,r,i){let{maxValueLength:a}=i.getOptions();return eOe(e,r,t,n,a)}}}));function eOe(e,t={},n,r,i){if(!t.originalException||!Dw(t.originalException))return e;let a=t.originalException.name||t.originalException.constructor.name,o=Xk(t.originalException,r,i);if(o){let t={...e.contexts},r=Qw(o,n);return Pw(r)&&(twe(r),t[a]=r),{...e,contexts:t}}return e}function Xk(e,t,n){try{let r=[`name`,`message`,`stack`,`line`,`column`,`fileName`,`lineNumber`,`columnNumber`,`toJSON`],i={};for(let t of Object.keys(e)){if(r.indexOf(t)!==-1)continue;let a=e[t];i[t]=Dw(a)||typeof a==`string`?n?rT(`${a}`,n):`${a}`:a}if(t&&e.cause!==void 0&&(i.cause=Dw(e.cause)?{[e.cause.name||e.cause.constructor.name]:Xk(e.cause,!1,n)}:e.cause),typeof e.toJSON==`function`){let t=e.toJSON();for(let e of Object.keys(t)){let n=t[e];i[e]=Dw(n)?n.toString():n}}return i}catch(e){W&&K.error(`Unable to extract extra data from the Error object:`,e)}return null}function tOe(e,t){let n=0;for(let t=e.length-1;t>=0;t--){let r=e[t];r===`.`?e.splice(t,1):r===`..`?(e.splice(t,1),n++):n&&(e.splice(t,1),n--)}if(t)for(;n--;)e.unshift(`..`);return e}var nOe=/^(\S+:\\|\/?)([\s\S]*?)((?:\.{1,2}|[^/\\]+?|)(\.[^./\\]*|))(?:[/\\]*)$/;function rOe(e){let t=e.length>1024?`<truncated>${e.slice(-1024)}`:e,n=nOe.exec(t);return n?n.slice(1):[]}function Zk(...e){let t=``,n=!1;for(let r=e.length-1;r>=-1&&!n;r--){let i=r>=0?e[r]:`/`;i&&(t=`${i}/${t}`,n=i.charAt(0)===`/`)}return t=tOe(t.split(`/`).filter(e=>!!e),!n).join(`/`),(n?`/`:``)+t||`.`}function Qk(e){let t=0;for(;t<e.length&&e[t]===``;t++);let n=e.length-1;for(;n>=0&&e[n]===``;n--);return t>n?[]:e.slice(t,n-t+1)}function iOe(e,t){e=Zk(e).slice(1),t=Zk(t).slice(1);let n=Qk(e.split(`/`)),r=Qk(t.split(`/`)),i=Math.min(n.length,r.length),a=i;for(let e=0;e<i;e++)if(n[e]!==r[e]){a=e;break}let o=[];for(let e=a;e<n.length;e++)o.push(`..`);return o=o.concat(r.slice(a)),o.join(`/`)}function aOe(e,t){let n=rOe(e)[2]||``;return t&&n.slice(t.length*-1)===t&&(n=n.slice(0,n.length-t.length)),n}var oOe=`RewriteFrames`,sOe=EO((e={})=>{let t=e.root,n=e.prefix||`app:///`,r=`window`in G&&!!G.window,i=e.iteratee||cOe({isBrowser:r,root:t,prefix:n});function a(e){try{return{...e,exception:{...e.exception,values:e.exception.values.map(e=>({...e,...e.stacktrace&&{stacktrace:o(e.stacktrace)}}))}}}catch{return e}}function o(e){return{...e,frames:e?.frames?.map(e=>i(e))}}return{name:oOe,processEvent(e){let t=e;return e.exception&&Array.isArray(e.exception.values)&&(t=a(t)),t}}});function cOe({isBrowser:e,root:t,prefix:n}){return r=>{if(!r.filename)return r;let i=/^[a-zA-Z]:\\/.test(r.filename)||r.filename.includes(`\\`)&&!r.filename.includes(`/`),a=/^\//.test(r.filename);if(e){if(t){let e=r.filename;e.indexOf(t)===0&&(r.filename=e.replace(t,n))}}else if(i||a){let e=i?r.filename.replace(/^[a-zA-Z]:/,``).replace(/\\/g,`/`):r.filename;r.filename=`${n}${t?iOe(t,e):aOe(e)}`}return r}}var lOe=[`reauthenticate`,`signInAnonymously`,`signInWithOAuth`,`signInWithIdToken`,`signInWithOtp`,`signInWithPassword`,`signInWithSSO`,`signOut`,`signUp`,`verifyOtp`],uOe=[`createUser`,`deleteUser`,`listUsers`,`getUserById`,`updateUserById`,`inviteUserByEmail`],dOe={eq:`eq`,neq:`neq`,gt:`gt`,gte:`gte`,lt:`lt`,lte:`lte`,like:`like`,"like(all)":`likeAllOf`,"like(any)":`likeAnyOf`,ilike:`ilike`,"ilike(all)":`ilikeAllOf`,"ilike(any)":`ilikeAnyOf`,is:`is`,in:`in`,cs:`contains`,cd:`containedBy`,sr:`rangeGt`,nxl:`rangeGte`,sl:`rangeLt`,nxr:`rangeLte`,adj:`rangeAdjacent`,ov:`overlaps`,fts:``,plfts:`plain`,phfts:`phrase`,wfts:`websearch`,not:`not`},$k=[`select`,`insert`,`upsert`,`update`,`delete`];function eA(e){try{e.__SENTRY_INSTRUMENTED__=!0}catch{}}function tA(e){try{return e.__SENTRY_INSTRUMENTED__}catch{return!1}}function nA(e,t){if(Object.keys(t).length>0)return t;if(Array.isArray(e)&&e.length>0)return e}function fOe(e,t){return nA(e,t)!==void 0}function pOe(e,t={}){switch(e){case`GET`:return`select`;case`POST`:return t.Prefer?.includes(`resolution=`)?`upsert`:`insert`;case`PATCH`:return`update`;case`DELETE`:return`delete`;default:return`<unknown-op>`}}function mOe(e,t){if(t===``||t===`*`)return`select(*)`;if(e===`select`)return`select(${t})`;if(e===`or`||e.endsWith(`.or`))return`${e}${t}`;let[n,...r]=t.split(`.`),i;return i=n?.startsWith(`fts`)?`textSearch`:n?.startsWith(`plfts`)?`textSearch[plain]`:n?.startsWith(`phfts`)?`textSearch[phrase]`:n?.startsWith(`wfts`)?`textSearch[websearch]`:n&&dOe[n]||`filter`,`${i}(${e}, ${r.join(`.`)})`}function rA(e,t=!1){return new Proxy(e,{apply(n,r,i){return wD({name:`auth ${t?`(admin) `:``}${e.name}`,attributes:{[qT]:`auto.db.supabase`,[KT]:`db`,"db.system":`postgresql`,"db.operation":`auth.${t?`admin.`:``}${e.name}`}},e=>Reflect.apply(n,r,i).then(t=>(Fw(t)&&`error`in t&&t.error?(e.setStatus({code:2}),cO(t.error,{mechanism:{handled:!1,type:`auto.db.supabase.auth`}})):e.setStatus({code:1}),e.end(),t)).catch(t=>{throw e.setStatus({code:2}),e.end(),cO(t,{mechanism:{handled:!1,type:`auto.db.supabase.auth`}}),t}).then(...i))}})}function hOe(e){let t=e.auth;if(!(!t||tA(e.auth))){for(let n of lOe){let r=t[n];r&&typeof e.auth[n]==`function`&&(e.auth[n]=rA(r))}for(let n of uOe){let r=t.admin[n];r&&typeof e.auth.admin[n]==`function`&&(e.auth.admin[n]=rA(r,!0))}eA(e.auth)}}function gOe(e,t){tA(e.prototype.from)||(e.prototype.from=new Proxy(e.prototype.from,{apply(e,n,r){let i=Reflect.apply(e,n,r),a=i.constructor;return vOe(a,t),i}}),eA(e.prototype.from))}function _Oe(e,t){tA(e.prototype.then)||(e.prototype.then=new Proxy(e.prototype.then,{apply(e,n,r){let i=$k,a=n,o=pOe(a.method,a.headers);if(!i.includes(o)||!a?.url?.pathname||typeof a.url.pathname!=`string`)return Reflect.apply(e,n,r);let s=a.url.pathname.split(`/`),c=s.length>0?s[s.length-1]:``,l=[];for(let[e,t]of a.url.searchParams.entries())l.push(mOe(e,t));let u=Object.create(null);if(Pw(a.body))for(let[e,t]of Object.entries(a.body))u[e]=t;let d=J(),f=t.sendOperationData??d?.getDataCollectionOptions().databaseQueryData===!0,p=nA(a.body,u),m=o===`select`?``:`${o}${fOe(a.body,u)?`(...) `:``}`,h=f?l.join(` `):l.length>0?`[redacted]`:``,g=[m.trimEnd(),h].filter(Boolean).join(` `),_=g?`${g} from(${c})`:`from(${c})`,v={"db.table":c,"db.schema":a.schema,"db.url":a.url.origin,"db.sdk":a.headers[`X-Client-Info`],"db.system":`postgresql`,"db.operation":o,[qT]:`auto.db.supabase`,[KT]:`db`};return l.length&&f&&(v[`db.query`]=l),p!==void 0&&f&&(v[`db.body`]=p),wD({name:_,attributes:v},t=>Reflect.apply(e,n,[]).then(e=>{if(t&&(e&&typeof e==`object`&&`status`in e&&tE(t,e.status||500),t.end()),e?.error){let t=Error(e.error.message);e.error.code&&(t.code=e.error.code),e.error.details&&(t.details=e.error.details);let n={};l.length&&f&&(n.query=l),p!==void 0&&f&&(n.body=p),cO(t,e=>(e.addEventProcessor(e=>(pT(e,{handled:!1,type:`auto.db.supabase.postgres`}),e)),e.setContext(`supabase`,n),e))}let n={type:`supabase`,category:`db.${o}`,message:_},r={};return l.length&&f&&(r.query=l),p!==void 0&&f&&(r.body=p),Object.keys(r).length&&(n.data=r),Ek(n),e},e=>{throw t&&(tE(t,500),t.end()),e}).then(...r))}}),eA(e.prototype.then))}function vOe(e,t){for(let n of $k)tA(e.prototype[n])||(e.prototype[n]=new Proxy(e.prototype[n],{apply(e,r,i){let a=Reflect.apply(e,r,i),o=a.constructor;return W&&K.log(`Instrumenting ${n} operation's PostgRESTFilterBuilder`),_Oe(o,t),a}}),eA(e.prototype[n]))}var iA=(e,t={})=>{if(!e){W&&K.warn(`Supabase integration was not installed because no Supabase client was provided.`);return}gOe(e.constructor===Function?e:e.constructor,t),hOe(e)},yOe=`Supabase`,bOe=((e,t)=>({setupOnce(){iA(e,t)},name:yOe})),xOe=EO(e=>bOe(e.supabaseClient,{sendOperationData:e.sendOperationData})),SOe=10,COe=`ZodErrors`;function wOe(e){return Dw(e)&&e.name===`ZodError`&&Array.isArray(e.issues)}function TOe(e){return{...e,path:`path`in e&&Array.isArray(e.path)?e.path.join(`.`):void 0,keys:`keys`in e?JSON.stringify(e.keys):void 0,unionErrors:`unionErrors`in e?JSON.stringify(e.unionErrors):void 0}}function EOe(e){return e.map(e=>typeof e==`number`?`<array>`:e).join(`.`)}function DOe(e){let t=new Set;for(let n of e.issues){let e=EOe(n.path);e.length>0&&t.add(e)}let n=Array.from(t);if(n.length===0){let t=`variable`;if(e.issues.length>0){let n=e.issues[0];n!==void 0&&`expected`in n&&typeof n.expected==`string`&&(t=n.expected)}return`Failed to validate ${t}`}return`Failed to validate keys: ${rT(n.join(`, `),100)}`}function OOe(e,t=!1,n,r){if(!n.exception?.values||!r.originalException||!wOe(r.originalException)||r.originalException.issues.length===0)return n;try{let i=(t?r.originalException.issues:r.originalException.issues.slice(0,e)).map(TOe);return t&&(Array.isArray(r.attachments)||(r.attachments=[]),r.attachments.push({filename:`zod_issues.json`,data:JSON.stringify({issues:i})})),{...n,exception:{...n.exception,values:[{...n.exception.values[0],value:DOe(r.originalException)},...n.exception.values.slice(1)]},extra:{...n.extra,"zoderror.issues":i.slice(0,e)}}}catch(e){return{...n,extra:{...n.extra,"zoderrors sentry integration parse error":{message:`an exception was thrown while processing ZodError within applyZodErrorsToEvent()`,error:e instanceof Error?`${e.name}: ${e.message}
|
|
519
|
-
${e.stack}`:`unknown`}}}}}var kOe=EO(((e={})=>{let t=e.limit??SOe;return{name:COe,processEvent(n,r){return OOe(t,e.saveZodIssuesAsAttachment,n,r)}}})),AOe=EO(e=>({name:`ThirdPartyErrorsFilter`,setup(e){e.on(`beforeEnvelope`,e=>{sD(e,(e,t)=>{if(t===`event`){let t=Array.isArray(e)?e[1]:void 0;t&&(Vk(t),e[1]=t)}})}),e.on(`applyFrameMetadata`,t=>{if(t.type)return;let n=e.getOptions().stackParser;Bk(n,t)})},preprocessEvent(t){e.ignoreSentryInternalFrames&&(G._sentryWrappedDepth??0)>0&&(t.sdkProcessingMetadata={...t.sdkProcessingMetadata,insideSentryWrapped:!0})},processEvent(t){let n=e.ignoreSentryInternalFrames?t.sdkProcessingMetadata?.insideSentryWrapped===!0&&t.exception?.values?.length===1:!1,r=MOe(t,e.ignoreSentryInternalFrames,n);if(r&&r[e.behaviour===`drop-error-if-contains-third-party-frames`||e.behaviour===`apply-tag-if-contains-third-party-frames`?`some`:`every`](t=>!t.some(t=>e.filterKeys.includes(t)))){if(e.behaviour===`drop-error-if-contains-third-party-frames`||e.behaviour===`drop-error-if-exclusively-contains-third-party-frames`)return null;t.tags={...t.tags,third_party_code:!0}}return t}}));function jOe(e,t,n){if(t!==0)return!1;if(n&&NOe(e)||e.function===`sentryWrapped`)return!0;if(!e.context_line||!e.filename||!e.filename.includes(`sentry`)||!e.filename.includes(`helpers`)||!e.context_line.includes(FOe))return!1;if(e.pre_context){let t=e.pre_context.length;for(let n=0;n<t;n++)if(e.pre_context[n]?.includes(POe))return!0}return!1}function MOe(e,t,n){let r=hw(e);if(r)return r.filter((e,r)=>!e.filename||e.lineno==null&&e.colno==null&&e.instruction_addr==null?!1:!t||!jOe(e,r,!!n)).map(e=>e.module_metadata?Object.keys(e.module_metadata).filter(e=>e.startsWith(aA)).map(e=>e.slice(aA.length)):[])}function NOe(e){return!e.context_line&&!e.pre_context&&!!e.function&&e.function.length<=2}var aA=`_sentryBundlerPluginAppKey:`,POe=`Attempt to invoke user-land function`,FOe=`fn.apply(this, wrappedArguments)`,oA=`flag.evaluation.`;function sA(e){if(e.type)return e;let t=q().getScopeData().contexts.flags,n=t?t.values:[];return n.length?(e.contexts===void 0&&(e.contexts={}),e.contexts.flags={values:[...n]},e):e}function cA(e,t,n=100){let r=q().getScopeData().contexts;r.flags||={values:[]};let i=r.flags.values;IOe(i,e,t,n)}function IOe(e,t,n,r){if(typeof n!=`boolean`)return;if(e.length>r){W&&K.error(`[Feature Flags] insertToFlagBuffer called on a buffer larger than maxSize=${r}`);return}let i=e.findIndex(e=>e.flag===t);i!==-1&&e.splice(i,1),e.length===r&&e.shift(),e.push({flag:t,result:n})}function lA(e,t,n=10){if(typeof t!=`boolean`)return;let r=UE();if(!r)return;let i=DE(r).data;if(`${oA}${e}`in i){r.setAttribute(`${oA}${e}`,t);return}Object.keys(i).filter(e=>e.startsWith(oA)).length<n&&r.setAttribute(`${oA}${e}`,t)}var LOe=EO(()=>({name:`FeatureFlags`,processEvent(e,t,n){return sA(e)},addFeatureFlag(e,t){cA(e,t),lA(e,t)}})),ROe=EO(({growthbookClass:e})=>({name:`GrowthBook`,setupOnce(){let t=e.prototype;typeof t.isOn==`function`&&Bw(t,`isOn`,uA),typeof t.getFeatureValue==`function`&&Bw(t,`getFeatureValue`,uA)},processEvent(e,t,n){return sA(e)}}));function uA(e){return function(...t){let n=t[0],r=e.apply(this,t);return typeof n==`string`&&typeof r==`boolean`&&(cA(n,r),lA(n,r)),r}}var zOe=`ConversationId`,BOe=EO((()=>({name:zOe,setup(e){e.on(`spanStart`,e=>{let t=q().getScopeData(),n=BT().getScopeData(),r=t.conversationId||n.conversationId;if(r){let{op:t,data:n,description:i}=DE(e);if(!t?.startsWith(`gen_ai.`)&&!n[`ai.operationId`]&&!i?.startsWith(`ai.`))return;e.setAttribute(Uwe,r)}})}})));function VOe(e,t,n,r,i){if(!e.fetchData)return;let{method:a,url:o}=e.fetchData,s=qE()&&t(o);if(e.endTimestamp){let t=e.fetchData.__span;if(!t)return;let n=r[t];n&&(s&&(WOe(n,e),HOe(n,e,i)),delete r[t]);return}let{spanOrigin:c=`auto.http.browser`,propagateTraceparent:l=!1}=typeof i==`object`?i:{spanOrigin:i},u=J(),d=!!UE(),f=d||!!u&&_D(u),p=s&&f?ED(qOe(o,a,c)):new ZE,m=LD(p)&&d?void 0:p;if(s&&!f&&u?.recordDroppedEvent(`no_parent_span`,`span`),e.fetchData.__span=p.spanContext().spanId,r[p.spanContext().spanId]=p,n(e.fetchData.url)){let t=e.args[0],n={...e.args[1]||{}},r=UOe(t,n,qE()&&f?m:void 0,l);r&&(e.args[1]=n,n.headers=r)}if(u){let t={input:e.args,response:e.response,startTimestamp:e.startTimestamp,endTimestamp:e.endTimestamp};u.emit(`beforeOutgoingRequestSpan`,p,t)}return p}function HOe(e,t,n){(typeof n==`object`&&n?n.onRequestSpanEnd:void 0)?.(e,{headers:t.response?.headers,error:t.error})}function UOe(e,t,n,r){let i=Tk({span:n,propagateTraceparent:r}),a=i[`sentry-trace`],o=i.baggage,s=i.traceparent;if(!a)return;let c=t.headers||(zw(e)?e.headers:void 0);if(!c)return{...i};if(GOe(c)){let e=new Headers(c);if(e.get(`sentry-trace`)||e.set(`sentry-trace`,a),r&&s&&!e.get(`traceparent`)&&e.set(`traceparent`,s),o){let t=e.get(`baggage`);t?dA(t)||e.set(`baggage`,`${t},${o}`):e.set(`baggage`,o)}return e}if(KOe(c)){let e=[...c];e.find(e=>e[0]===`sentry-trace`)||e.push([`sentry-trace`,a]),r&&s&&!e.find(e=>e[0]===`traceparent`)&&e.push([`traceparent`,s]);let t=c.find(e=>e[0]===`baggage`&&typeof e[1]==`string`&&dA(e[1]));return o&&!t&&e.push([`baggage`,o]),e}{let e=`sentry-trace`in c?c[`sentry-trace`]:void 0,t=`traceparent`in c?c.traceparent:void 0,n=`baggage`in c?c.baggage:void 0,i=n?Array.isArray(n)?[...n]:[n]:[],l=n&&(Array.isArray(n)?n.find(e=>dA(e)):dA(n));o&&!l&&i.push(o);let u=Object.assign({},c,{"sentry-trace":e??a,baggage:i.length>0?i.join(`,`):void 0});return r&&s&&!t&&(u.traceparent=s),u}}function WOe(e,t){if(t.response){tE(e,t.response.status);let n=t.response?.headers?.get(`content-length`);if(n){let t=parseInt(n);t>0&&e.setAttribute(`http.response_content_length`,t)}}else t.error&&e.setStatus({code:2,message:`internal_error`});e.end()}function dA(e){return typeof e==`string`&&e.split(`,`).some(e=>e.trim().startsWith(cE))}function GOe(e){return typeof Headers<`u`&&Rw(e,Headers)}function KOe(e){return Array.isArray(e)?e.every(e=>Array.isArray(e)&&e.length===2&&typeof e[0]==`string`):!1}function qOe(e,t,n){if(e.startsWith(`data:`))return{name:`${t} ${xk(e)}`,attributes:fA(e,void 0,t,n)};let r=_k(e);return{name:`${t} ${r?vk(r):e}`,attributes:fA(e,r,t,n)}}function fA(e,t,n,r){let i={url:xk(e),type:`fetch`,"http.method":n,[qT]:r,[KT]:`http.client`};return t&&(gk(t)||(i[`http.url`]=xk(t.href),i[`server.address`]=t.host),t.search&&(i[`http.query`]=t.search),t.hash&&(i[`http.fragment`]=t.hash)),i}function pA(e,t={},n=q()){let{message:r,name:i,email:a,url:o,source:s,associatedEventId:c,tags:l}=e,u={contexts:{feedback:{contact_email:a,name:i,message:r,url:o,source:s,associated_event_id:c}},type:`feedback`,level:`info`,tags:l},d=n?.getClient()||J();return d&&d.emit(`beforeSendFeedback`,u,t),n.captureEvent(u,t)}function mA(e,t,n){return`util`in G&&typeof G.util.format==`function`?G.util.format(...e):JOe(e,t,n)}function JOe(e,t,n){return e.map(e=>Nw(e)?String(e):JSON.stringify(Qw(e,t,n))).join(` `)}function hA(e){return/%[sdifocO]/.test(e)}function gA(e,t){let n={};return n[`sentry.message.template`]=`${e} ${Array(t.length).fill(`{}`).join(` `)}`,t.forEach((e,t)=>{n[`sentry.message.parameter.${t}`]=e}),n}var YOe=`ConsoleLogs`,_A={[qT]:`auto.log.console`},XOe=EO(((e={})=>{let t=e.levels||tw;return{name:YOe,setup(e){let{enableLogs:n,normalizeDepth:r=3,normalizeMaxBreadth:i=1e3}=e.getOptions();if(!n){W&&K.warn("`enableLogs` is not enabled, ConsoleLogs integration disabled");return}let a=Uk(({args:n,level:a})=>{if(J()!==e||!t.includes(a))return;let o=n[0],s=n.slice(1);if(a===`assert`){o||NO({level:`error`,message:s.length>0?`Assertion failed: ${mA(s,r,i)}`:`Assertion failed`,attributes:_A});return}let c=a===`log`,l={..._A};if(Pw(o)){Object.assign(l,Qw(o,r,i));let e=typeof n[1]==`string`?2:1;n.slice(e).forEach((e,t)=>{l[`sentry.message.parameter.${t}`]=Qw(e,r,i)})}else if(s.length>0&&typeof o==`string`&&!hA(o)){let e=gA(o,s);for(let[t,n]of Object.entries(e))l[t]=t.startsWith(`sentry.message.parameter.`)?Qw(n,r,i):n}NO({level:c?`info`:a,message:mA(n,r,i),severityNumber:c?10:void 0,attributes:l})});e.registerCleanup(a)}}}));function ZOe(e,t,n,r){zO({type:e,name:t,value:n,unit:r?.unit,attributes:r?.attributes},{scope:r?.scope})}function vA(e,t,n){ZOe(`distribution`,e,t,n)}var QOe=[`trace`,`debug`,`info`,`warn`,`error`,`fatal`];function $Oe(e={}){let t=new Set(e.levels??QOe),n=e.client;return{log(e){let{type:r,level:i,message:a,args:o,tag:s,date:c,...l}=e,u=n||J();if(!u)return;let d=nke(r,i);if(!t.has(d))return;let{normalizeDepth:f=3,normalizeMaxBreadth:p=1e3}=u.getOptions(),m={};for(let[e,t]of Object.entries(l))m[e]=Qw(t,f,p);m[`sentry.origin`]=`auto.log.consola`,s&&(m[`consola.tag`]=s),r&&(m[`consola.type`]=r),i!=null&&typeof i==`number`&&(m[`consola.level`]=i);let h=ike(rke(o,f,p),f,p);h?.attributes&&Object.assign(m,h.attributes),NO({level:d,message:h?.message||a||o&&mA(o,f,p)||``,attributes:m})}}}var eke={silent:`trace`,fatal:`fatal`,error:`error`,warn:`warn`,log:`info`,info:`info`,success:`info`,fail:`error`,ready:`info`,start:`info`,box:`info`,debug:`debug`,trace:`trace`,verbose:`debug`,critical:`fatal`,notice:`info`},tke={0:`fatal`,1:`warn`,2:`info`,3:`info`,4:`debug`,5:`trace`};function nke(e,t){if(e===`verbose`)return`debug`;if(e===`silent`)return`trace`;if(e){let t=eke[e];if(t)return t}if(typeof t==`number`){let e=tke[t];if(e)return e}return`info`}function rke(e,t,n){if(!e?.length)return{message:``};let r=mA(e,t,n),i=e[0];if(Pw(i)){let t=typeof e[1]==`string`?2:1;return{message:r,attributes:i,messageParameters:e.slice(t)}}{let t=e.slice(1),n=t.length>0&&typeof i==`string`&&!hA(i);return{message:r,messageTemplate:n?i:void 0,messageParameters:n?t:void 0}}}function ike(e,t,n){let{message:r,attributes:i,messageTemplate:a,messageParameters:o}=e,s={};if(a&&o){let e=gA(a,o);for(let[r,i]of Object.entries(e))s[r]=r.startsWith(`sentry.message.parameter.`)?Qw(i,t,n):i}else o&&o.length>0&&o.forEach((e,r)=>{s[`sentry.message.parameter.${r}`]=Qw(e,t,n)});return{message:r,attributes:{...Qw(i,t,n),...s}}}var ake=`gen_ai.prompt`,yA=`gen_ai.system`,bA=`gen_ai.request.model`,xA=`gen_ai.request.stream`,SA=`gen_ai.request.temperature`,CA=`gen_ai.request.max_tokens`,wA=`gen_ai.request.frequency_penalty`,TA=`gen_ai.request.presence_penalty`,EA=`gen_ai.request.top_p`,DA=`gen_ai.request.top_k`,OA=`gen_ai.request.encoding_format`,kA=`gen_ai.request.dimensions`,AA=`gen_ai.response.finish_reasons`,jA=`gen_ai.response.model`,MA=`gen_ai.response.id`,oke=`gen_ai.response.stop_reason`,NA=`gen_ai.usage.input_tokens`,PA=`gen_ai.usage.output_tokens`,FA=`gen_ai.usage.total_tokens`,IA=`gen_ai.operation.name`,LA=`sentry.sdk_meta.gen_ai.input.messages.original_length`,RA=`gen_ai.input.messages`,zA=`gen_ai.system_instructions`,BA=`gen_ai.response.text`,VA=`gen_ai.request.available_tools`,ske=`gen_ai.response.streaming`,HA=`gen_ai.response.tool_calls`,UA=`gen_ai.agent.name`,cke=`gen_ai.pipeline.name`,WA=`gen_ai.conversation.id`,lke=`gen_ai.usage.cache_creation_input_tokens`,uke=`gen_ai.usage.cache_read_input_tokens`,dke=`gen_ai.invoke_agent`,GA=`gen_ai.embeddings.input`,KA=`gen_ai.embeddings`,qA=`gen_ai.execute_tool`,JA=`gen_ai.tool.name`,fke=`gen_ai.tool.call.id`,pke=`gen_ai.tool.type`,YA=`gen_ai.tool.input`,XA=`gen_ai.tool.output`,mke=`gen_ai.tool.description`;function ZA(e){return!e||typeof e!=`object`?!1:gke(e)||$A(e)||hke(e)||ej(e)||tj(e)||_ke(e)||vke(e)||yke(e)||bke(e)||xke(e)||Ske(e)||Cke(e)}function hke(e){return`image_url`in e?typeof e.image_url==`string`?e.image_url.startsWith(`data:`):QA(e):!1}function QA(e){return`image_url`in e&&!!e.image_url&&typeof e.image_url==`object`&&`url`in e.image_url&&typeof e.image_url.url==`string`&&e.image_url.url.startsWith(`data:`)}function gke(e){return`type`in e&&typeof e.type==`string`&&`source`in e&&ZA(e.source)}function $A(e){return`inlineData`in e&&!!e.inlineData&&typeof e.inlineData==`object`&&`data`in e.inlineData&&typeof e.inlineData.data==`string`}function ej(e){return`type`in e&&e.type===`input_audio`&&`input_audio`in e&&!!e.input_audio&&typeof e.input_audio==`object`&&`data`in e.input_audio&&typeof e.input_audio.data==`string`}function tj(e){return`type`in e&&e.type===`file`&&`file`in e&&!!e.file&&typeof e.file==`object`&&`file_data`in e.file&&typeof e.file.file_data==`string`}function _ke(e){return`media_type`in e&&typeof e.media_type==`string`&&`data`in e}function vke(e){return`type`in e&&e.type===`file`&&`mediaType`in e&&typeof e.mediaType==`string`&&`data`in e&&typeof e.data==`string`&&!e.data.startsWith(`http://`)&&!e.data.startsWith(`https://`)}function yke(e){return`type`in e&&e.type===`image`&&`image`in e&&typeof e.image==`string`&&!e.image.startsWith(`http://`)&&!e.image.startsWith(`https://`)}function bke(e){return`type`in e&&(e.type===`blob`||e.type===`base64`)}function xke(e){return`b64_json`in e}function Ske(e){return`type`in e&&`result`in e&&e.type===`image_generation`}function Cke(e){return`uri`in e&&typeof e.uri==`string`&&e.uri.startsWith(`data:`)}var nj=`[Blob substitute]`,wke=[`image_url`,`data`,`content`,`b64_json`,`result`,`uri`,`image`];function rj(e){let t={...e};ZA(t.source)&&(t.source=rj(t.source)),$A(e)&&(t.inlineData={...e.inlineData,data:nj}),QA(e)&&(t.image_url={...e.image_url,url:nj}),ej(e)&&(t.input_audio={...e.input_audio,data:nj}),tj(e)&&(t.file={...e.file,file_data:nj});for(let e of wke)typeof t[e]==`string`&&(t[e]=nj);return t}var ij=2e4,aj=e=>new TextEncoder().encode(e).length,oj=e=>aj(JSON.stringify(e));function sj(e,t){if(aj(e)<=t)return e;let n=0,r=e.length,i=``;for(;n<=r;){let a=Math.floor((n+r)/2),o=e.slice(0,a);aj(o)<=t?(i=o,n=a+1):r=a-1}return i}function Tke(e){return typeof e==`string`?e:`text`in e&&typeof e.text==`string`?e.text:``}function cj(e,t){return typeof e==`string`?t:{...e,text:t}}function Eke(e){return typeof e==`object`&&!!e&&`content`in e&&typeof e.content==`string`}function lj(e){return typeof e==`object`&&!!e&&`content`in e&&Array.isArray(e.content)}function uj(e){return typeof e==`object`&&!!e&&`parts`in e&&Array.isArray(e.parts)&&e.parts.length>0}function Dke(e,t){let n=t-oj({...e,content:``});if(n<=0)return[];let r=sj(e.content,n);return[{...e,content:r}]}function Oke(e){return`parts`in e&&Array.isArray(e.parts)?{key:`parts`,items:e.parts}:`content`in e&&Array.isArray(e.content)?{key:`content`,items:e.content}:{key:null,items:[]}}function kke(e,t){let{key:n,items:r}=Oke(e);if(n===null||r.length===0)return[];let i=r.map(e=>cj(e,``)),a=t-oj({...e,[n]:i});if(a<=0)return[];let o=[];for(let e of r){let t=Tke(e),n=aj(t);if(n<=a)o.push(e),a-=n;else if(o.length===0){let n=sj(t,a);n&&o.push(cj(e,n));break}else break}return o.length<=0?[]:[{...e,[n]:o}]}function Ake(e,t){if(!e)return[];if(typeof e==`string`){let n=sj(e,t);return n?[n]:[]}return typeof e==`object`?Eke(e)?Dke(e,t):lj(e)||uj(e)?kke(e,t):[]:[]}function dj(e){return e.map(e=>{let t;return e&&typeof e==`object`&&(lj(e)?t={...e,content:dj(e.content)}:`content`in e&&ZA(e.content)&&(t={...e,content:rj(e.content)}),uj(e)&&(t={...t??e,parts:dj(e.parts)}),ZA(t)?t=rj(t):ZA(e)&&(t=rj(e))),t??e})}function jke(e,t){if(!Array.isArray(e)||e.length===0)return e;let n=t-2,r=e[e.length-1],i=dj([r]),a=i[0];return oj(a)<=n?i:Ake(a,n)}function Mke(e){return jke(e,ij)}function Nke(e){return sj(e,ij)}function fj(e){let t=J()?.getDataCollectionOptions().genAI;return{...e,recordInputs:e?.recordInputs??t?.inputs??!1,recordOutputs:e?.recordOutputs??t?.outputs??!1}}function pj(e){if(e!==void 0)return e;let t=J();return!t||!_D(t)&&t.getOptions().streamGenAiSpans===!1}function mj(e,t){return e?`${e}.${t}`:t}function Pke(e,t,n,r,i){if(t!==void 0&&e.setAttributes({[NA]:t}),n!==void 0&&e.setAttributes({[PA]:n}),t!==void 0||n!==void 0||r!==void 0||i!==void 0){let a=(t??0)+(n??0)+(r??0)+(i??0);e.setAttributes({[FA]:a})}}function hj(e,t,n){if(!e.isRecording())return;let r={[ske]:!0};t.responseId&&(r[MA]=t.responseId),t.responseModel&&(r[jA]=t.responseModel),t.promptTokens!==void 0&&(r[NA]=t.promptTokens),t.completionTokens!==void 0&&(r[PA]=t.completionTokens),t.totalTokens===void 0?(t.promptTokens!==void 0||t.completionTokens!==void 0||t.cacheCreationInputTokens!==void 0||t.cacheReadInputTokens!==void 0)&&(r[FA]=(t.promptTokens??0)+(t.completionTokens??0)+(t.cacheCreationInputTokens??0)+(t.cacheReadInputTokens??0)):r[FA]=t.totalTokens,t.finishReasons.length&&(r[AA]=JSON.stringify(t.finishReasons)),n&&t.responseTexts.length&&(r[BA]=t.responseTexts.join(``)),n&&t.toolCalls.length&&(r[HA]=JSON.stringify(t.toolCalls)),e.setAttributes(r),e.end()}function gj(e){if(typeof e==`string`)return Nke(e);try{return JSON.stringify(Array.isArray(e)?Mke(e):e)}catch{return`[unserializable]`}}function _j(e){if(!Array.isArray(e))return{systemInstructions:void 0,filteredMessages:e};let t=e.findIndex(e=>e&&typeof e==`object`&&`role`in e&&e.role===`system`);if(t===-1)return{systemInstructions:void 0,filteredMessages:e};let n=e[t],r=typeof n.content==`string`?n.content:n.content===void 0?void 0:JSON.stringify(n.content);return r?{systemInstructions:JSON.stringify([{type:`text`,content:r}]),filteredMessages:[...e.slice(0,t),...e.slice(t+1)]}:{systemInstructions:void 0,filteredMessages:e}}async function Fke(e,t,n){let r=e.catch(e=>{throw cO(e,{mechanism:{handled:!1,type:n}}),e}),i=await t,a=await r;return a&&typeof a==`object`&&`data`in a?{...a,data:i}:i}function vj(e,t,n){return Lw(e)?new Proxy(e,{get(e,r){let i=r in Promise.prototype||r===Symbol.toStringTag?t:e,a=Reflect.get(i,r);return r===`withResponse`&&typeof a==`function`?function(){return Fke(a.call(e),t,n)}:typeof a==`function`?a.bind(i):a}}):t}var Ike={"responses.create":{operation:`chat`},"chat.completions.create":{operation:`chat`},"embeddings.create":{operation:`embeddings`},"conversations.create":{operation:`chat`}},Lke=[`response.created`,`response.in_progress`,`response.failed`,`response.completed`,`response.incomplete`,`response.queued`,`response.output_text.delta`,`response.output_item.added`,`response.function_call_arguments.delta`,`response.function_call_arguments.done`,`response.output_item.done`];function Rke(e){return typeof e==`object`&&!!e&&`type`in e&&typeof e.type==`string`&&e.type.startsWith(`response.`)}function zke(e){return typeof e==`object`&&!!e&&`object`in e&&e.object===`chat.completion.chunk`}function Bke(e,t,n){if(!t||typeof t!=`object`)return;let r=t,i={};if(typeof r.id==`string`&&(i[MA]=r.id),typeof r.model==`string`&&(i[jA]=r.model),r.object===`conversation`&&typeof r.id==`string`&&(i[WA]=r.id),r.usage&&typeof r.usage==`object`){let e=r.usage,t=e.prompt_tokens??e.input_tokens;typeof t==`number`&&(i[NA]=t);let n=e.completion_tokens??e.output_tokens;typeof n==`number`&&(i[PA]=n),typeof e.total_tokens==`number`&&(i[FA]=e.total_tokens)}if(Array.isArray(r.choices)){let e=r.choices,t=e.map(e=>e.finish_reason).filter(e=>typeof e==`string`);if(t.length>0&&(i[AA]=JSON.stringify(t)),n){let t=e.map(e=>e.message?.content||``);i[BA]=JSON.stringify(t);let n=e.map(e=>e.message?.tool_calls).filter(e=>Array.isArray(e)&&e.length>0).flat();n.length>0&&(i[HA]=JSON.stringify(n))}}if(typeof r.status==`string`&&(i[`gen_ai.response.finish_reasons`]||(i[AA]=JSON.stringify([r.status]))),n&&(typeof r.output_text==`string`&&!i[`gen_ai.response.text`]&&(i[BA]=r.output_text),Array.isArray(r.output)&&r.output.length>0&&!i[`gen_ai.response.tool_calls`])){let e=r.output.filter(e=>e?.type===`function_call`);e.length>0&&(i[HA]=JSON.stringify(e))}e.setAttributes(i)}function Vke(e){if(`conversation`in e&&typeof e.conversation==`string`)return e.conversation;if(`previous_response_id`in e&&typeof e.previous_response_id==`string`)return e.previous_response_id}function Hke(e){let t={[bA]:e.model??`unknown`};`temperature`in e&&(t[SA]=e.temperature),`top_p`in e&&(t[EA]=e.top_p),`frequency_penalty`in e&&(t[wA]=e.frequency_penalty),`presence_penalty`in e&&(t[TA]=e.presence_penalty),`stream`in e&&(t[xA]=e.stream),`encoding_format`in e&&(t[OA]=e.encoding_format),`dimensions`in e&&(t[kA]=e.dimensions);let n=Vke(e);return n&&(t[WA]=n),t}function Uke(e,t){for(let n of e){let e=n.index;if(!(e===void 0||!n.function))if(!(e in t.chatCompletionToolCalls))t.chatCompletionToolCalls[e]={...n,function:{name:n.function.name,arguments:n.function.arguments||``}};else{let r=t.chatCompletionToolCalls[e];n.function.arguments&&r?.function&&(r.function.arguments+=n.function.arguments)}}}function Wke(e,t,n){t.responseId=e.id??t.responseId,t.responseModel=e.model??t.responseModel,e.usage&&(t.promptTokens=e.usage.prompt_tokens,t.completionTokens=e.usage.completion_tokens,t.totalTokens=e.usage.total_tokens);for(let r of e.choices??[])n&&(r.delta?.content&&t.responseTexts.push(r.delta.content),r.delta?.tool_calls&&Uke(r.delta.tool_calls,t)),r.finish_reason&&t.finishReasons.push(r.finish_reason)}function Gke(e,t,n,r){if(!(e&&typeof e==`object`)){t.eventTypes.push(`unknown:non-object`);return}if(e instanceof Error){r.setStatus({code:2,message:`internal_error`}),cO(e,{mechanism:{handled:!1,type:`auto.ai.openai.stream-response`}});return}if(!(`type`in e))return;let i=e;if(!Lke.includes(i.type)){t.eventTypes.push(i.type);return}if(n&&(i.type===`response.output_item.done`&&`item`in i&&t.responsesApiToolCalls.push(i.item),i.type===`response.output_text.delta`&&`delta`in i&&i.delta)){t.responseTexts.push(i.delta);return}if(`response`in i){let{response:e}=i;t.responseId=e.id??t.responseId,t.responseModel=e.model??t.responseModel,e.usage&&(t.promptTokens=e.usage.input_tokens,t.completionTokens=e.usage.output_tokens,t.totalTokens=e.usage.total_tokens),e.status&&t.finishReasons.push(e.status),n&&e.output_text&&t.responseTexts.push(e.output_text)}}async function*Kke(e,t,n){let r={eventTypes:[],responseTexts:[],finishReasons:[],responseId:``,responseModel:``,promptTokens:void 0,completionTokens:void 0,totalTokens:void 0,chatCompletionToolCalls:{},responsesApiToolCalls:[]};try{for await(let i of e)zke(i)?Wke(i,r,n):Rke(i)&&Gke(i,r,n,t),yield i}finally{let e=[...Object.values(r.chatCompletionToolCalls),...r.responsesApiToolCalls];hj(t,{...r,toolCalls:e},n)}}function qke(e){let t=Array.isArray(e.tools)?e.tools:[],n=e.web_search_options&&typeof e.web_search_options==`object`?[{type:`web_search_options`,...e.web_search_options}]:[],r=[...t,...n];if(r.length!==0)try{return JSON.stringify(r)}catch(e){W&&K.error(`Failed to serialize OpenAI tools:`,e);return}}function Jke(e,t){let n={[yA]:`openai`,[IA]:t,[qT]:`auto.ai.openai`};if(e.length>0&&typeof e[0]==`object`&&e[0]!==null){let t=e[0],r=qke(t);r&&(n[VA]=r),Object.assign(n,Hke(t))}else n[bA]=`unknown`;return n}function yj(e,t,n,r){if(n===`embeddings`&&`input`in t){let n=t.input;if(n==null||typeof n==`string`&&n.length===0||Array.isArray(n)&&n.length===0)return;e.setAttribute(GA,typeof n==`string`?n:JSON.stringify(n));return}let i=`input`in t?t.input:`messages`in t?t.messages:void 0;if(!i||Array.isArray(i)&&i.length===0)return;let{systemInstructions:a,filteredMessages:o}=_j(i);a&&e.setAttribute(zA,a),e.setAttribute(RA,r?gj(o):nT(o)),Array.isArray(o)?e.setAttribute(LA,o.length):e.setAttribute(LA,1)}function Yke(e,t,n,r,i){return function(...a){let o=n.operation||`unknown`,s=Jke(a,o),c=s[`gen_ai.request.model`]||`unknown`,l=a[0],u=l&&typeof l==`object`&&l.stream===!0,d={name:`${o} ${c}`,op:`gen_ai.${o}`,attributes:s};if(u){let n,s=TD(d,s=>(n=e.apply(r,a),i.recordInputs&&l&&yj(s,l,o,pj(i.enableTruncation)),(async()=>{try{return Kke(await n,s,i.recordOutputs??!1)}catch(e){throw s.setStatus({code:2,message:`internal_error`}),cO(e,{mechanism:{handled:!1,type:`auto.ai.openai.stream`,data:{function:t}}}),s.end(),e}})()));return vj(n,s,`auto.ai.openai`)}let f,p=wD(d,n=>(f=e.apply(r,a),i.recordInputs&&l&&yj(n,l,o,pj(i.enableTruncation)),f.then(e=>(Bke(n,e,i.recordOutputs),e),e=>{throw cO(e,{mechanism:{handled:!1,type:`auto.ai.openai`,data:{function:t}}}),e})));return vj(f,p,`auto.ai.openai`)}}function bj(e,t=``,n){return new Proxy(e,{get(e,r){let i=e[r],a=mj(t,String(r)),o=Ike[a];return typeof i==`function`&&o?Yke(i,a,o,e,n):typeof i==`function`?i.bind(e):i&&typeof i==`object`?bj(i,a,n):i}})}function Xke(e,t){return bj(e,``,fj(t))}var Zke={"messages.create":{operation:`chat`},"messages.stream":{operation:`chat`,streaming:!0},"messages.countTokens":{operation:`chat`},"models.get":{operation:`models`},"completions.create":{operation:`chat`},"models.retrieve":{operation:`models`},"beta.messages.create":{operation:`chat`}};function Qke(e,t,n){if(Array.isArray(t)&&t.length===0)return;let{systemInstructions:r,filteredMessages:i}=_j(t);r&&e.setAttributes({[zA]:r});let a=Array.isArray(i)?i.length:1;e.setAttributes({[RA]:n?gj(i):nT(i),[LA]:a})}var $ke={invalid_request_error:`invalid_argument`,authentication_error:`unauthenticated`,permission_error:`permission_denied`,not_found_error:`not_found`,request_too_large:`failed_precondition`,rate_limit_error:`resource_exhausted`,api_error:`internal_error`,overloaded_error:`unavailable`};function xj(e){return e&&$ke[e]||`internal_error`}function eAe(e,t){t.error&&(e.setStatus({code:2,message:xj(t.error.type)}),cO(t.error,{mechanism:{handled:!1,type:`auto.ai.anthropic.anthropic_error`}}))}function tAe(e){let{system:t,messages:n,input:r}=e,i=typeof t==`string`?[{role:`system`,content:e.system}]:[],a=(Array.isArray(r)?r:r==null?void 0:[r])??(Array.isArray(n)?n:n==null?[]:[n]);return[...i,...a]}function nAe(e,t){return`type`in e&&typeof e.type==`string`&&e.type===`error`&&(t.setStatus({code:2,message:xj(e.error?.type)}),cO(e.error,{mechanism:{handled:!1,type:`auto.ai.anthropic.anthropic_error`}}),!0)}function rAe(e,t){if(e.type===`message_delta`&&(e.usage&&typeof e.usage.output_tokens==`number`&&(t.completionTokens=e.usage.output_tokens),e.delta?.stop_reason&&t.finishReasons.push(e.delta.stop_reason)),e.message){let n=e.message;n.id&&(t.responseId=n.id),n.model&&(t.responseModel=n.model),n.usage&&(typeof n.usage.input_tokens==`number`&&(t.promptTokens=n.usage.input_tokens),typeof n.usage.cache_creation_input_tokens==`number`&&(t.cacheCreationInputTokens=n.usage.cache_creation_input_tokens),typeof n.usage.cache_read_input_tokens==`number`&&(t.cacheReadInputTokens=n.usage.cache_read_input_tokens))}}function iAe(e,t){e.type!==`content_block_start`||typeof e.index!=`number`||!e.content_block||(e.content_block.type===`tool_use`||e.content_block.type===`server_tool_use`)&&(t.activeToolBlocks[e.index]={id:e.content_block.id,name:e.content_block.name,inputJsonParts:[]})}function aAe(e,t,n){if(!(e.type!==`content_block_delta`||!e.delta)){if(typeof e.index==`number`&&`partial_json`in e.delta&&typeof e.delta.partial_json==`string`){let n=t.activeToolBlocks[e.index];n&&n.inputJsonParts.push(e.delta.partial_json)}n&&typeof e.delta.text==`string`&&t.responseTexts.push(e.delta.text)}}function oAe(e,t){if(e.type!==`content_block_stop`||typeof e.index!=`number`)return;let n=t.activeToolBlocks[e.index];if(!n)return;let r=n.inputJsonParts.join(``),i;try{i=r?JSON.parse(r):{}}catch{i={__unparsed:r}}t.toolCalls.push({type:`tool_use`,id:n.id,name:n.name,input:i}),delete t.activeToolBlocks[e.index]}function Sj(e,t,n,r){e&&typeof e==`object`&&(nAe(e,r)||(rAe(e,t),iAe(e,t),aAe(e,t,n),oAe(e,t)))}async function*sAe(e,t,n){let r={responseTexts:[],finishReasons:[],responseId:``,responseModel:``,promptTokens:void 0,completionTokens:void 0,cacheCreationInputTokens:void 0,cacheReadInputTokens:void 0,toolCalls:[],activeToolBlocks:{}};try{for await(let i of e)Sj(i,r,n,t),yield i}finally{hj(t,r,n)}}function cAe(e,t,n){let r={responseTexts:[],finishReasons:[],responseId:``,responseModel:``,promptTokens:void 0,completionTokens:void 0,cacheCreationInputTokens:void 0,cacheReadInputTokens:void 0,toolCalls:[],activeToolBlocks:{}};return e.on(`streamEvent`,e=>{Sj(e,r,n,t)}),e.on(`message`,()=>{hj(t,r,n)}),e.on(`error`,e=>{cO(e,{mechanism:{handled:!1,type:`auto.ai.anthropic.stream_error`}}),t.isRecording()&&(t.setStatus({code:2,message:`internal_error`}),t.end())}),e}function lAe(e,t,n){let r={[yA]:`anthropic`,[IA]:n,[qT]:`auto.ai.anthropic`};if(e.length>0&&typeof e[0]==`object`&&e[0]!==null){let t=e[0];t.tools&&Array.isArray(t.tools)&&(r[VA]=JSON.stringify(t.tools)),r[bA]=t.model??`unknown`,`temperature`in t&&(r[SA]=t.temperature),`top_p`in t&&(r[EA]=t.top_p),`stream`in t&&(r[xA]=t.stream),`top_k`in t&&(r[DA]=t.top_k),`frequency_penalty`in t&&(r[wA]=t.frequency_penalty),`max_tokens`in t&&(r[CA]=t.max_tokens)}else r[bA]=t===`models.retrieve`||t===`models.get`?e[0]:`unknown`;return r}function Cj(e,t,n){Qke(e,tAe(t),n),`prompt`in t&&e.setAttributes({[ake]:JSON.stringify(t.prompt)})}function uAe(e,t){if(`content`in t&&Array.isArray(t.content)){e.setAttributes({[BA]:t.content.map(e=>e.text).filter(e=>!!e).join(``)});let n=[];for(let e of t.content)(e.type===`tool_use`||e.type===`server_tool_use`)&&n.push(e);n.length>0&&e.setAttributes({[HA]:JSON.stringify(n)})}`completion`in t&&e.setAttributes({[BA]:t.completion}),`input_tokens`in t&&e.setAttributes({[BA]:JSON.stringify(t.input_tokens)})}function dAe(e,t){`id`in t&&`model`in t&&(e.setAttributes({[MA]:t.id,[jA]:t.model}),`usage`in t&&t.usage&&Pke(e,t.usage.input_tokens,t.usage.output_tokens,t.usage.cache_creation_input_tokens,t.usage.cache_read_input_tokens))}function fAe(e,t,n){if(!(!t||typeof t!=`object`)){if(`type`in t&&t.type===`error`){eAe(e,t);return}n&&uAe(e,t),dAe(e,t)}}function wj(e,t,n){throw cO(e,{mechanism:{handled:!1,type:`auto.ai.anthropic`,data:{function:n}}}),t.isRecording()&&(t.setStatus({code:2,message:`internal_error`}),t.end()),e}function pAe(e,t,n,r,i,a,o,s,c,l,u){let d={name:`${a} ${i[`gen_ai.request.model`]??`unknown`}`,op:`gen_ai.${a}`,attributes:i};if(l&&!u){let t,i=TD(d,i=>(t=e.apply(n,r),c.recordInputs&&s&&Cj(i,s,pj(c.enableTruncation)),(async()=>{try{return sAe(await t,i,c.recordOutputs??!1)}catch(e){return wj(e,i,o)}})()));return vj(t,i,`auto.ai.anthropic`)}return TD(d,e=>{try{return c.recordInputs&&s&&Cj(e,s,pj(c.enableTruncation)),cAe(t.apply(n,r),e,c.recordOutputs??!1)}catch(t){return wj(t,e,o)}})}function mAe(e,t,n,r,i){return new Proxy(e,{apply(a,o,s){let c=n.operation||`unknown`,l=lAe(s,t,c),u=l[`gen_ai.request.model`]??`unknown`,d=typeof s[0]==`object`?s[0]:void 0,f=!!d?.stream,p=n.streaming===!0;if(f||p)return pAe(e,a,r,s,l,c,t,d,i,f,p);let m,h=wD({name:`${c} ${u}`,op:`gen_ai.${c}`,attributes:l},e=>(m=a.apply(r,s),i.recordInputs&&d&&Cj(e,d,pj(i.enableTruncation)),m.then(t=>(fAe(e,t,i.recordOutputs),t),e=>{throw cO(e,{mechanism:{handled:!1,type:`auto.ai.anthropic`,data:{function:t}}}),e})));return vj(m,h,`auto.ai.anthropic`)}})}function Tj(e,t=``,n){return new Proxy(e,{get(e,r){let i=e[r],a=mj(t,String(r)),o=Zke[a];return typeof i==`function`&&o?mAe(i,a,o,e,n):typeof i==`function`?i.bind(e):i&&typeof i==`object`?Tj(i,a,n):i}})}function hAe(e,t){return Tj(e,``,fj(t))}var gAe={"models.generateContent":{operation:`generate_content`},"models.generateContentStream":{operation:`generate_content`,streaming:!0},"models.embedContent":{operation:`embeddings`},"chats.create":{proxyResultPath:`chat`},"chat.sendMessage":{operation:`chat`},"chat.sendMessageStream":{operation:`chat`,streaming:!0}},_Ae=`google_genai`;function vAe(e,t){let n=e?.promptFeedback;if(n?.blockReason){let e=n.blockReasonMessage??n.blockReason;return t.setStatus({code:2,message:`internal_error`}),cO(`Content blocked: ${e}`,{mechanism:{handled:!1,type:`auto.ai.google_genai`}}),!0}return!1}function yAe(e,t){typeof e.responseId==`string`&&(t.responseId=e.responseId),typeof e.modelVersion==`string`&&(t.responseModel=e.modelVersion);let n=e.usageMetadata;n&&(typeof n.promptTokenCount==`number`&&(t.promptTokens=n.promptTokenCount),typeof n.candidatesTokenCount==`number`&&(t.completionTokens=n.candidatesTokenCount),typeof n.totalTokenCount==`number`&&(t.totalTokens=n.totalTokenCount))}function bAe(e,t,n){Array.isArray(e.functionCalls)&&t.toolCalls.push(...e.functionCalls);for(let r of e.candidates??[]){r?.finishReason&&!t.finishReasons.includes(r.finishReason)&&t.finishReasons.push(r.finishReason);for(let e of r?.content?.parts??[])n&&e.text&&t.responseTexts.push(e.text),e.functionCall&&t.toolCalls.push({type:`function`,id:e.functionCall.id,name:e.functionCall.name,arguments:e.functionCall.args})}}function xAe(e,t,n,r){!e||vAe(e,r)||(yAe(e,t),bAe(e,t,n))}async function*SAe(e,t,n){let r={responseTexts:[],finishReasons:[],toolCalls:[]};try{for await(let i of e)xAe(i,r,n,t),yield i}finally{hj(t,r,n)}}function Ej(e,t=`user`){return typeof e==`string`?[{role:t,content:e}]:Array.isArray(e)?e.flatMap(e=>Ej(e,t)):typeof e!=`object`||!e?[]:`role`in e&&typeof e.role==`string`?[e]:`parts`in e?[{...e,role:t}]:[{role:t,content:e}]}function Dj(e,t){if(`model`in e&&typeof e.model==`string`)return e.model;if(t&&typeof t==`object`){let e=t;if(`model`in e&&typeof e.model==`string`)return e.model;if(`modelVersion`in e&&typeof e.modelVersion==`string`)return e.modelVersion}return`unknown`}function CAe(e){let t={};return`temperature`in e&&typeof e.temperature==`number`&&(t[SA]=e.temperature),`topP`in e&&typeof e.topP==`number`&&(t[EA]=e.topP),`topK`in e&&typeof e.topK==`number`&&(t[DA]=e.topK),`maxOutputTokens`in e&&typeof e.maxOutputTokens==`number`&&(t[CA]=e.maxOutputTokens),`frequencyPenalty`in e&&typeof e.frequencyPenalty==`number`&&(t[wA]=e.frequencyPenalty),`presencePenalty`in e&&typeof e.presencePenalty==`number`&&(t[TA]=e.presencePenalty),t}function wAe(e,t,n){let r={[yA]:_Ae,[IA]:e,[qT]:`auto.ai.google_genai`};if(t){if(r[bA]=Dj(t,n),`config`in t&&typeof t.config==`object`&&t.config){let e=t.config;if(Object.assign(r,CAe(e)),`tools`in e&&Array.isArray(e.tools)){let t=e.tools.flatMap(e=>e.functionDeclarations);r[VA]=JSON.stringify(t)}}}else r[bA]=Dj({},n);return r}function Oj(e,t,n,r){if(n===`embeddings`){let n=t.contents;n!=null&&e.setAttribute(GA,typeof n==`string`?n:JSON.stringify(n));return}let i=[];if(`config`in t&&t.config&&typeof t.config==`object`&&`systemInstruction`in t.config&&t.config.systemInstruction&&i.push(...Ej(t.config.systemInstruction,`system`)),`history`in t&&i.push(...Ej(t.history,`user`)),`contents`in t&&i.push(...Ej(t.contents,`user`)),`message`in t&&i.push(...Ej(t.message,`user`)),Array.isArray(i)&&i.length){let{systemInstructions:t,filteredMessages:n}=_j(i);t&&e.setAttribute(zA,t);let a=Array.isArray(n)?n.length:0;e.setAttributes({[LA]:a,[RA]:r?gj(n):nT(n)})}}function TAe(e,t,n){if(!(!t||typeof t!=`object`)){if(t.modelVersion&&e.setAttribute(jA,t.modelVersion),t.usageMetadata&&typeof t.usageMetadata==`object`){let n=t.usageMetadata;typeof n.promptTokenCount==`number`&&e.setAttributes({[NA]:n.promptTokenCount}),typeof n.candidatesTokenCount==`number`&&e.setAttributes({[PA]:n.candidatesTokenCount}),typeof n.totalTokenCount==`number`&&e.setAttributes({[FA]:n.totalTokenCount})}if(n&&Array.isArray(t.candidates)&&t.candidates.length>0){let n=t.candidates.map(e=>e.content?.parts&&Array.isArray(e.content.parts)?e.content.parts.map(e=>typeof e.text==`string`?e.text:``).filter(e=>e.length>0).join(``):``).filter(e=>e.length>0);n.length>0&&e.setAttributes({[BA]:n.join(``)})}if(n&&t.functionCalls){let n=t.functionCalls;Array.isArray(n)&&n.length>0&&e.setAttributes({[HA]:JSON.stringify(n)})}}}function EAe(e,t,n,r,i){let a=n.operation===`embeddings`;return new Proxy(e,{apply(e,o,s){let c=n.operation||`unknown`,l=s[0],u=wAe(c,l,r),d=u[`gen_ai.request.model`]??`unknown`;return n.streaming?TD({name:`${c} ${d}`,op:`gen_ai.${c}`,attributes:u},async n=>{try{return i.recordInputs&&l&&Oj(n,l,c,pj(i.enableTruncation)),SAe(await e.apply(r,s),n,!!i.recordOutputs)}catch(e){throw n.setStatus({code:2,message:`internal_error`}),cO(e,{mechanism:{handled:!1,type:`auto.ai.google_genai`,data:{function:t}}}),n.end(),e}}):wD({name:`${c} ${d}`,op:`gen_ai.${c}`,attributes:u},n=>(i.recordInputs&&l&&Oj(n,l,c,pj(i.enableTruncation)),SD(()=>e.apply(r,s),e=>{cO(e,{mechanism:{handled:!1,type:`auto.ai.google_genai`,data:{function:t}}})},()=>{},e=>{a||TAe(n,e,i.recordOutputs)})))}})}function kj(e,t=``,n){return new Proxy(e,{get:(e,r,i)=>{let a=Reflect.get(e,r,i),o=mj(t,String(r)),s=gAe[o];if(typeof a==`function`&&s){let t=s.operation?EAe(a,o,s,e,n):a.bind(e);return s.proxyResultPath?function(...e){let r=t(...e);return r&&typeof r==`object`?kj(r,s.proxyResultPath,n):r}:t}return typeof a==`function`?a.bind(e):a&&typeof a==`object`?kj(a,o,n):a}})}function DAe(e,t){return kj(e,``,fj(t))}var Aj=`auto.ai.langchain`,OAe={human:`user`,ai:`assistant`,assistant:`assistant`,system:`system`,function:`function`,tool:`tool`},jj=(e,t,n)=>{n!=null&&(e[t]=n)},Mj=(e,t,n)=>{let r=Number(n);Number.isNaN(r)||(e[t]=r)};function Nj(e){if(Array.isArray(e))try{let t=e.map(e=>e&&typeof e==`object`&&ZA(e)?rj(e):e);return JSON.stringify(t)}catch{return String(e)}return nT(e,String)}function Pj(e){let t=e.toLowerCase();return OAe[t]??t}function Fj(e){return e.includes(`System`)?`system`:e.includes(`Human`)?`user`:e.includes(`AI`)||e.includes(`Assistant`)?`assistant`:e.includes(`Function`)?`function`:e.includes(`Tool`)?`tool`:`user`}function Ij(e){if(!(!e||Array.isArray(e)))return e.invocation_params}function Lj(e){return e.map(e=>{let t=e._getType;if(typeof t==`function`)return{role:Pj(t.call(e)),content:Nj(e.content)};if(e.lc===1&&e.kwargs){let t=e.id,n=Array.isArray(t)&&t.length>0?t[t.length-1]:``;return{role:Pj(typeof n==`string`?Fj(n):`user`),content:Nj(e.kwargs?.content)}}if(e.type)return{role:Pj(String(e.type).toLowerCase()),content:Nj(e.content)};if(e.role)return{role:Pj(String(e.role)),content:Nj(e.content)};let n=e.constructor?.name;return n&&n!==`Object`?{role:Pj(Fj(n)),content:Nj(e.content)}:{role:`user`,content:Nj(e.content)}})}function kAe(e,t,n){let r={},i=`kwargs`in e?e.kwargs:void 0;Mj(r,SA,t?.temperature??n?.ls_temperature??i?.temperature),Mj(r,CA,t?.max_tokens??n?.ls_max_tokens??i?.max_tokens),Mj(r,EA,t?.top_p??i?.top_p);let a=t?.frequency_penalty;Mj(r,wA,a);let o=t?.presence_penalty;return Mj(r,TA,o),t&&`stream`in t&&jj(r,xA,!!t.stream),r}function Rj(e,t,n,r,i){return{[yA]:nT(e??`langchain`,String),[IA]:`chat`,[bA]:nT(t,String),[qT]:Aj,...kAe(n,r,i)}}function AAe(e,t,n,r,i,a){let o=a?.ls_provider,s=Rj(o,i?.model??a?.ls_model_name??`unknown`,e,i,a);if(n&&Array.isArray(t)&&t.length>0){jj(s,LA,t.length);let e=t.map(e=>({role:`user`,content:e}));jj(s,RA,r?gj(e):nT(e))}return s}function jAe(e,t,n,r,i,a){let o=Rj(a?.ls_provider??e.id?.[2],i?.model??a?.ls_model_name??`unknown`,e,i,a);if(n&&Array.isArray(t)&&t.length>0){let{systemInstructions:e,filteredMessages:n}=_j(Lj(t.flat()));e&&jj(o,zA,e),jj(o,LA,Array.isArray(n)?n.length:0),jj(o,RA,r?gj(n):nT(n))}return o}function MAe(e,t){let n=[],r=e.flat();for(let e of r){let t=e.message?.tool_calls;if(Array.isArray(t)&&t.length>0)n.push(...t);else{let t=e.message?.content;if(Array.isArray(t))for(let e of t){let t=e;t.type===`tool_use`&&n.push(t)}}}n.length>0&&jj(t,HA,nT(n,String))}function NAe(e,t){if(!e)return;let n=e.tokenUsage,r=e.usage;if(n)Mj(t,NA,n.promptTokens),Mj(t,PA,n.completionTokens),Mj(t,FA,n.totalTokens);else if(r){Mj(t,NA,r.input_tokens),Mj(t,PA,r.output_tokens);let e=Number(r.input_tokens),n=Number(r.output_tokens),i=(Number.isNaN(e)?0:e)+(Number.isNaN(n)?0:n);i>0&&Mj(t,FA,i),r.cache_creation_input_tokens!==void 0&&Mj(t,lke,r.cache_creation_input_tokens),r.cache_read_input_tokens!==void 0&&Mj(t,uke,r.cache_read_input_tokens)}}function PAe(e,t){if(!e)return;let n={};if(Array.isArray(e.generations)){let r=e.generations.flat().map(e=>e.generationInfo?.finish_reason?e.generationInfo.finish_reason:e.generation_info?.finish_reason?e.generation_info.finish_reason:null).filter(e=>typeof e==`string`);if(r.length>0&&jj(n,AA,nT(r,String)),MAe(e.generations,n),t){let t=e.generations.flat().map(e=>e.text??e.message?.content).filter(e=>typeof e==`string`);t.length>0&&jj(n,BA,nT(t,String))}}NAe(e.llmOutput,n);let r=e.llmOutput,i=e.generations?.[0]?.[0]?.message,a=r?.model_name??r?.model??i?.response_metadata?.model_name;a&&jj(n,jA,a);let o=r?.id??i?.id;o&&jj(n,MA,o);let s=r?.stop_reason??i?.response_metadata?.finish_reason;return s&&jj(n,oke,nT(s,String)),n}function zj(e){let t={},n=e?.lc_agent_name;return typeof n==`string`&&(t[UA]=n),t}function FAe(e){let t=e?.invocation_params?.tools??e?.options?.tools;if(!Array.isArray(t)||t.length===0)return;let n=t.map(e=>{let t=e.function;return{type:`function`,name:e.name??t?.name??``,description:e.description??t?.description}});return JSON.stringify(n)}function IAe(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.addHandler==`function`&&typeof t.copy==`function`}function LAe(e){return typeof e==`object`&&e?.name===`SentryCallbackHandler`}function Bj(e){return e.some(LAe)}function RAe(e,t){if(!e)return[t];if(IAe(e)){if(Bj(e.handlers??[]))return e;let n=e.copy();return n.addHandler(t,!0),n}let n=Array.isArray(e)?e:[e];return Bj(n)?e:[...n,t]}function Vj(e={}){let{recordInputs:t,recordOutputs:n}=fj(e),r=pj(e.enableTruncation),i=new Map,a=e=>{let t=i.get(e);t?.isRecording()&&(t.end(),i.delete(e))},o={lc_serializable:!1,lc_namespace:[`langchain_core`,`callbacks`,`sentry`],lc_secrets:void 0,lc_attributes:void 0,lc_aliases:void 0,lc_serializable_keys:void 0,lc_id:[`langchain_core`,`callbacks`,`sentry`],lc_kwargs:{},name:`SentryCallbackHandler`,ignoreLLM:!1,ignoreChain:!1,ignoreAgent:!1,ignoreRetriever:!1,ignoreCustomEvent:!1,raiseError:!1,awaitHandlers:!0,handleLLMStart(e,n,a,o,s,c,l,u){let d=Ij(c),f=AAe(e,n,t,r,d,l),p=f[bA],m=f[IA];TD({name:`${m} ${p}`,op:`gen_ai.chat`,attributes:{...zj(l),...f,[KT]:`gen_ai.chat`}},e=>(i.set(a,e),e))},handleChatModelStart(e,n,a,o,s,c,l,u){let d=Ij(c),f=jAe(e,n,t,r,d,l),p=FAe(s);p&&(f[VA]=p);let m=f[bA],h=f[IA];TD({name:`${h} ${m}`,op:`gen_ai.chat`,attributes:{...zj(l),...f,[KT]:`gen_ai.chat`}},e=>(i.set(a,e),e))},handleLLMEnd(e,t,r,o,s){let c=i.get(t);if(c?.isRecording()){let r=PAe(e,n);r&&c.setAttributes(r),a(t)}},handleLLMError(e,t){let n=i.get(t);n?.isRecording()&&(n.setStatus({code:2,message:`internal_error`}),a(t)),cO(e,{mechanism:{handled:!1,type:`${Aj}.llm_error_handler`}})},handleChainStart(e,n,r,a,o,s,c,l){if(s?.__sentry_langgraph__)return;let u=l||e.name||`unknown_chain`,d={[qT]:`auto.ai.langchain`,"langchain.chain.name":u};t&&(d[`langchain.chain.inputs`]=JSON.stringify(n)),TD({name:`chain ${u}`,op:`gen_ai.invoke_agent`,attributes:{...d,[KT]:`gen_ai.invoke_agent`}},e=>(i.set(r,e),e))},handleChainEnd(e,t){let r=i.get(t);r?.isRecording()&&(n&&r.setAttributes({"langchain.chain.outputs":JSON.stringify(e)}),a(t))},handleChainError(e,t){let n=i.get(t);n?.isRecording()&&(n.setStatus({code:2,message:`internal_error`}),a(t)),cO(e,{mechanism:{handled:!1,type:`${Aj}.chain_error_handler`}})},handleToolStart(e,n,r,a,o,s,c){if(s?.__sentry_langgraph__)return;let l=c||e.name||`unknown_tool`,u={...zj(s),[qT]:Aj,[IA]:`execute_tool`,[JA]:l};t&&(u[YA]=n),TD({name:`execute_tool ${l}`,op:`gen_ai.execute_tool`,attributes:{...u,[KT]:`gen_ai.execute_tool`}},e=>(i.set(r,e),e))},handleToolEnd(e,t){let r=i.get(t);if(r?.isRecording()){if(n){let t=e,n=t&&typeof t==`object`&&`content`in t?t.content:e;r.setAttributes({[XA]:typeof n==`string`?n:JSON.stringify(n)})}a(t)}},handleToolError(e,t){let n=i.get(t);n?.isRecording()&&(n.setStatus({code:2,message:`internal_error`}),a(t)),cO(e,{mechanism:{handled:!1,type:`${Aj}.tool_error_handler`}})},copy(){return o},toJSON(){return{lc:1,type:`not_implemented`,id:o.lc_id}},toJSONNotImplemented(){return{lc:1,type:`not_implemented`,id:o.lc_id}}};return o}function zAe(e){let t=e.constructor?.name??``;return t.includes(`OpenAI`)?`openai`:t.includes(`Google`)?`google_genai`:t.includes(`Mistral`)?`mistralai`:t.includes(`Vertex`)?`google_vertexai`:t.includes(`Bedrock`)?`aws_bedrock`:t.includes(`Ollama`)?`ollama`:t.includes(`Cloudflare`)?`cloudflare`:t.includes(`Cohere`)?`cohere`:`langchain`}function BAe(e){let t=e??{},n={[qT]:Aj,[KT]:KA,[IA]:`embeddings`,[bA]:t.model??`unknown`};return n[yA]=zAe(t),`dimensions`in t&&(n[kA]=t.dimensions),`encodingFormat`in t&&(n[OA]=t.encodingFormat),n}function VAe(e,t,n={}){let{recordInputs:r}=fj(n),i=BAe(e),a=i[`gen_ai.request.model`]||`unknown`;return r&&t!=null&&(i[GA]=typeof t==`string`?t:JSON.stringify(t)),{name:`embeddings ${a}`,op:KA,attributes:i}}function Hj(e,t={}){return new Proxy(e,{apply(e,n,r){return wD(VAe(n,r[0],t),()=>Reflect.apply(e,n,r).then(void 0,e=>{throw cO(e,{mechanism:{handled:!1,type:`auto.ai.langchain`}}),e}))}})}function HAe(e,t){let n=e;return typeof n.embedQuery==`function`&&(n.embedQuery=Hj(n.embedQuery,t)),typeof n.embedDocuments==`function`&&(n.embedDocuments=Hj(n.embedDocuments,t)),e}var Uj=`auto.ai.langgraph`;function UAe(e){let t=e[0];if(typeof t!=`object`||!t||!(`llm`in t)||!t.llm||typeof t.llm!=`object`)return null;let n=t.llm;return typeof n.modelName!=`string`&&typeof n.model!=`string`?null:n}function WAe(e){let t=e[0];return typeof t==`object`&&t&&`name`in t&&typeof t.name==`string`?t.name:null}function GAe(e,t,n){let r=`__sentry_tool_wrapped__`;for(let i of e){if(!i||typeof i!=`object`)continue;let e=i,a=e.invoke;if(typeof a!=`function`||Object.prototype.hasOwnProperty.call(e,r))continue;let o=typeof e.name==`string`?e.name:`unknown_tool`,s=typeof e.description==`string`?e.description:void 0;e.invoke=new Proxy(a,{apply(e,r,i){let a={[qT]:Uj,[KT]:qA,[IA]:`execute_tool`,[JA]:o,[pke]:`function`},c=i[1]?.metadata?.lc_agent_name??n;typeof c==`string`&&(a[UA]=c),s&&(a[mke]=s);let l=i[0];if(typeof l==`object`&&l&&(`id`in l&&typeof l.id==`string`&&(a[fke]=l.id),t.recordInputs)){let e=`args`in l&&typeof l.args==`object`?l.args:l;try{a[YA]=JSON.stringify(e)}catch{}}return wD({op:qA,name:`execute_tool ${o}`,attributes:a},async n=>{try{let a=await Reflect.apply(e,r,i);if(t.recordOutputs)try{let e=a,t=e&&typeof e==`object`&&`content`in e?e.content:a;n.setAttribute(XA,typeof t==`string`?t:JSON.stringify(t))}catch{}return a}catch(e){throw n.setStatus({code:2,message:`internal_error`}),cO(e,{mechanism:{handled:!1,type:`auto.ai.langgraph.error`}}),e}})}}),Object.defineProperty(e,r,{value:!0,enumerable:!1})}return e}function KAe(e){if(!e||e.length===0)return null;let t=[];for(let n of e)if(n&&typeof n==`object`){let e=n.tool_calls;e&&Array.isArray(e)&&t.push(...e)}return t.length>0?t:null}function qAe(e){let t=e,n=0,r=0,i=0;if(t.usage_metadata&&typeof t.usage_metadata==`object`){let e=t.usage_metadata;return typeof e.input_tokens==`number`&&(n=e.input_tokens),typeof e.output_tokens==`number`&&(r=e.output_tokens),typeof e.total_tokens==`number`&&(i=e.total_tokens),{inputTokens:n,outputTokens:r,totalTokens:i}}if(t.response_metadata&&typeof t.response_metadata==`object`){let e=t.response_metadata;if(e.tokenUsage&&typeof e.tokenUsage==`object`){let t=e.tokenUsage;typeof t.promptTokens==`number`&&(n=t.promptTokens),typeof t.completionTokens==`number`&&(r=t.completionTokens),typeof t.totalTokens==`number`&&(i=t.totalTokens)}}return{inputTokens:n,outputTokens:r,totalTokens:i}}function JAe(e,t){let n=t;if(n.response_metadata&&typeof n.response_metadata==`object`){let t=n.response_metadata;t.model_name&&typeof t.model_name==`string`&&e.setAttribute(jA,t.model_name),t.finish_reason&&typeof t.finish_reason==`string`&&e.setAttribute(AA,[t.finish_reason])}}function YAe(e){if(!e.builder?.nodes?.tools?.runnable?.tools)return null;let t=e.builder?.nodes?.tools?.runnable?.tools;return!t||!Array.isArray(t)||t.length===0?null:t.map(e=>({name:e.lc_kwargs?.name,description:e.lc_kwargs?.description,schema:e.lc_kwargs?.schema}))}function XAe(e,t,n){let r=n?.messages;if(!r||!Array.isArray(r))return;let i=t?.length??0,a=r.length>i?r.slice(i):[];if(a.length===0)return;let o=KAe(a);o&&e.setAttribute(HA,JSON.stringify(o));let s=Lj(a);e.setAttribute(BA,JSON.stringify(s));let c=0,l=0,u=0;for(let t of a){let n=qAe(t);c+=n.inputTokens,l+=n.outputTokens,u+=n.totalTokens,JAe(e,t)}c>0&&e.setAttribute(NA,c),l>0&&e.setAttribute(PA,l),u>0&&e.setAttribute(FA,u)}var Wj=!1,Gj=`__sentry_patched__`;function ZAe(e){let t={[qT]:Uj,[KT]:`gen_ai.create_agent`,[IA]:`create_agent`};return e&&(t[UA]=e),{op:`gen_ai.create_agent`,name:e?`create_agent ${e}`:`create_agent`,attributes:t}}function QAe(e,t){if(Object.prototype.hasOwnProperty.call(e,Gj))return e;let n=Vj(t),r=new Proxy(e,{apply(e,r,i){return Wj?Reflect.apply(e,r,i):wD(ZAe(),a=>{try{let o=Reflect.apply(e,r,i),s=i.length>0?i[0]:{};s?.name&&typeof s.name==`string`&&(a.setAttribute(UA,s.name),a.updateName(`create_agent ${s.name}`));let c=o.invoke;return c&&typeof c==`function`&&(o.invoke=Kj(c.bind(o),o,s,t,void 0,n)),o}catch(e){throw a.setStatus({code:2,message:`internal_error`}),cO(e,{mechanism:{handled:!1,type:`auto.ai.langgraph.error`}}),e}})}});return Object.defineProperty(r,Gj,{value:!0,enumerable:!1}),r}function Kj(e,t,n,r,i,a){return new Proxy(e,{apply(e,o,s){let c=i?.modelName??i?.model;return wD({op:`gen_ai.invoke_agent`,name:`invoke_agent`,attributes:{[qT]:Uj,[KT]:dke,[IA]:`invoke_agent`}},async i=>{try{let l=n?.name;l&&typeof l==`string`&&(i.setAttribute(cke,l),i.setAttribute(UA,l),i.updateName(`invoke_agent ${l}`)),c&&i.setAttribute(bA,c);let u=(s.length>1?s[1]:void 0)?.configurable?.thread_id;if(u&&typeof u==`string`&&i.setAttribute(WA,u),a){let e=s[1]??{};s[1]=e,e.metadata={...e.metadata??{},__sentry_langgraph__:!0,...typeof l==`string`?{lc_agent_name:l}:{}},e.callbacks=RAe(e.callbacks,a)}let d=YAe(t);d&&i.setAttribute(VA,JSON.stringify(d));let f=r.recordInputs,p=r.recordOutputs,m=s.length>0?s[0]?.messages??[]:[];if(m&&f){let{systemInstructions:e,filteredMessages:t}=_j(Lj(m));e&&i.setAttribute(zA,e);let n=pj(r.enableTruncation),a=Array.isArray(t)?t.length:0;i.setAttributes({[RA]:n?gj(t):nT(t),[LA]:a})}let h=await Reflect.apply(e,o,s);return p&&XAe(i,m??null,h),h}catch(e){throw i.setStatus({code:2,message:`internal_error`}),cO(e,{mechanism:{handled:!1,type:`auto.ai.langgraph.error`}}),e}})}})}function $Ae(e,t){if(Object.prototype.hasOwnProperty.call(e,Gj))return e;let n=fj(t),r=Vj(n),i=new Proxy(e,{apply(e,t,i){let a=UAe(i),o=WAe(i),s=i[0];s&&Array.isArray(s.tools)&&s.tools.length>0&&GAe(s.tools,n,o??void 0),Wj=!0;let c;try{c=Reflect.apply(e,t,i)}finally{Wj=!1}let l=c.invoke;if(l&&typeof l==`function`){let e={};o&&(e.name=o),c.invoke=Kj(l.bind(c),c,e,n,a,r)}return c}});return Object.defineProperty(i,Gj,{value:!0,enumerable:!1}),i}function eje(e,t){return e.compile=QAe(e.compile,fj(t)),e}function qj(e,t,n){let r=n.getOptions(),i=n.getDsn(),a=r.tunnel,o=fD(r._metadata),s={sent_at:new Date(Yw()).toISOString(),...Jj(t)&&{trace:t},...o&&{sdk:o},...!!a&&i&&{dsn:fE(i)}},c=n.getDataCollectionOptions().userInfo?`auto`:`never`;return aD(s,[[{type:`span`,item_count:e.length,content_type:`application/vnd.sentry.items.span.v2+json`},{version:2,...jO()&&{ingest_settings:{infer_ip:c,infer_user_agent:c}},items:e}]])}function Jj(e){return!!e.trace_id&&!!e.public_key}function Yj(e){let t=156;if(t+=e.name.length*2,t+=LT(e.attributes),e.links&&e.links.length>0){let n=e.links[0]?.attributes,r=100+(n?LT(n):0);t+=r*e.links.length}return t}var Xj=1e3,Zj=5e6,Qj=class{constructor(e,t){this._traceBuckets=new Map,this._client=e;let{maxSpanLimit:n,flushInterval:r,maxTraceWeightInBytes:i}=t??{};this._maxSpanLimit=n&&n>0&&n<=Xj?n:Xj,this._flushInterval=r&&r>0?r:5e3,this._maxTraceWeight=i&&i>0?i:Zj,this._client.on(`flush`,()=>{this.drain()}),this._client.on(`close`,()=>{this._traceBuckets.forEach(e=>{clearTimeout(e.timeout)}),this._traceBuckets.clear()})}add(e){let t=e.trace_id,n=this._traceBuckets.get(t);n||(n={spans:new Set,size:0,timeout:bO(setTimeout(()=>{this.flush(t)},this._flushInterval))},this._traceBuckets.set(t,n)),n.spans.add(e),n.size+=Yj(e),(n.spans.size>=this._maxSpanLimit||n.size>=this._maxTraceWeight)&&this.flush(t)}drain(){this._traceBuckets.size&&(W&&K.log(`Flushing span tree map with ${this._traceBuckets.size} traces`),this._traceBuckets.forEach((e,t)=>{this.flush(t)}))}flush(e){let t=this._traceBuckets.get(e);if(!t)return;if(!t.spans.size){this._removeTrace(e);return}let n=Array.from(t.spans),r=n[0]?._segmentSpan;if(!r){W&&K.warn(`No segment span reference found on span JSON, cannot compute DSC`),this._removeTrace(e);return}let i=rD(r),a=n.map(e=>{let{_segmentSpan:t,...n}=e;return n}),o=qj(a,i,this._client);W&&K.log(`Sending span envelope for trace ${e} with ${a.length} spans`),this._client.sendEnvelope(o).then(null,e=>{W&&K.error(`Error while sending streamed span envelope:`,e)}),this._removeTrace(e)}_removeTrace(e){let t=this._traceBuckets.get(e);t&&clearTimeout(t.timeout),this._traceBuckets.delete(e)}};function $j(e){if(e!==void 0){if(e>=400&&e<500)return`warning`;if(e>=500)return`error`}}var eM=G;function tM(){return`history`in eM&&!!eM.history}function nM(){if(!(`fetch`in eM))return!1;try{return new Headers,new Request(`data:,`),new Response,!0}catch{return!1}}function rM(e){return e&&/^function\s+\w+\(\)\s+\{\s+\[native code\]\s+\}$/.test(e.toString())}function iM(){if(typeof EdgeRuntime==`string`)return!0;if(!nM())return!1;if(rM(eM.fetch))return!0;let e=!1,t=eM.document;if(t&&typeof t.createElement==`function`)try{let n=t.createElement(`iframe`);n.hidden=!0,t.head.appendChild(n),n.contentWindow?.fetch&&(e=rM(n.contentWindow.fetch)),t.head.removeChild(n)}catch(e){W&&K.warn(`Could not create sandbox iframe for pure fetch check, bailing to window.fetch: `,e)}return e}function aM(){return`ReportingObserver`in eM}function oM(e,t){let n=`fetch`,r=yw(n,e);return bw(n,()=>cM(void 0,t)),r}function sM(e){let t=`fetch-body-resolved`,n=yw(t,e);return bw(t,()=>cM(uM)),n}function cM(e,t=!1){t&&!iM()||Bw(G,`fetch`,function(t){return function(...n){let r=Error(),{method:i,url:a}=pM(n),o={args:n,fetchData:{method:i,url:a},startTimestamp:_T()*1e3,virtualError:r,headers:mM(n)};return e||xw(`fetch`,{...o}),t.apply(G,n).then(async t=>(e?e(t):xw(`fetch`,{...o,endTimestamp:_T()*1e3,response:t}),t),e=>{xw(`fetch`,{...o,endTimestamp:_T()*1e3,error:e}),Dw(e)&&e.stack===void 0&&(e.stack=r.stack,Vw(e,`framesToPop`,1));let t=J()?.getOptions().enhanceFetchErrorMessages??`always`;if(t!==!1&&e instanceof TypeError&&(e.message===`Failed to fetch`||e.message===`Load failed`||e.message===`NetworkError when attempting to fetch resource.`))try{let n=new URL(o.fetchData.url).host;t===`always`?e.message=`${e.message} (${n})`:Vw(e,`__sentry_fetch_url_host__`,n)}catch{}throw e})}})}async function lM(e,t){if(e?.body){let n=e.body,r=n.getReader(),i=setTimeout(()=>{n.cancel().then(null,()=>{})},9e4),a=!0;for(;a;){let e;try{e=setTimeout(()=>{n.cancel().then(null,()=>{})},5e3);let{done:i}=await r.read();clearTimeout(e),i&&(t(),a=!1)}catch{a=!1}finally{clearTimeout(e)}}clearTimeout(i),r.releaseLock(),n.cancel().then(null,()=>{})}}function uM(e){let t;try{t=e.clone()}catch{return}lM(t,()=>{xw(`fetch-body-resolved`,{endTimestamp:_T()*1e3,response:e})})}function dM(e,t){return Fw(e)&&!!e[t]}function fM(e){return typeof e==`string`?e:e?dM(e,`url`)?e.url:e.toString?e.toString():``:``}function pM(e){if(e.length===0)return{method:`GET`,url:``};if(e.length===2){let[t,n]=e;return{url:fM(t),method:dM(n,`method`)?String(n.method).toUpperCase():zw(t)&&dM(t,`method`)?String(t.method).toUpperCase():`GET`}}let t=e[0];return{url:fM(t),method:dM(t,`method`)?String(t.method).toUpperCase():`GET`}}function mM(e){let[t,n]=e;try{if(typeof n==`object`&&n&&`headers`in n&&n.headers)return new Headers(n.headers);if(zw(t))return new Headers(t.headers)}catch{}}function hM(e,t=!1){return!(t||e&&!e.startsWith(`/`)&&!e.match(/^[A-Z]:/)&&!e.startsWith(`.`)&&!e.match(/^[a-zA-Z]([a-zA-Z0-9.\-+])*:\/\//))&&e!==void 0&&!e.includes(`node_modules/`)}function gM(e){let t=/^\s*[-]{4,}$/,n=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/,r=/at (?:async )?(.+?) \(data:(.*?),/;return i=>{let a=i.match(r);if(a)return{filename:`<data:${a[2]}>`,function:a[1]};let o=i.match(n);if(o){let t,n,r,i,a;if(o[1]){r=o[1];let e=r.lastIndexOf(`.`);if(r[e-1]===`.`&&e--,e>0){t=r.slice(0,e),n=r.slice(e+1);let i=t.indexOf(`.Module`);i>0&&(r=r.slice(i+1),t=t.slice(0,i))}i=void 0}n&&(i=t,a=n),n===`<anonymous>`&&(a=void 0,r=void 0),r===void 0&&(a||=`?`,r=i?`${i}.${a}`:a);let s=gw(o[2]),c=o[5]===`native`;!s&&o[5]&&!c&&(s=o[5]);let l=s?yM(s):void 0;return{filename:l??s,module:l&&e?.(l),function:r,lineno:vM(o[3]),colno:vM(o[4]),in_app:hM(s||``,c)}}if(i.match(t))return{filename:i}}}function _M(e){return[90,gM(e)]}function vM(e){return parseInt(e||``,10)||void 0}function yM(e){try{return decodeURI(e)}catch{return}}var bM=G;function xM(){try{return bM.document.location.href}catch{return``}}function SM(e,t=5){if(!bM.HTMLElement)return null;let n=e;for(let e=0;e<t;e++){if(!n)return null;if(n instanceof HTMLElement){if(n.dataset.sentryComponent)return n.dataset.sentryComponent;if(n.dataset.sentryElement)return n.dataset.sentryElement}n=n.parentNode}return null}var CM;(function(e){e[e.Classic=1]=`Classic`,e[e.Protocol=2]=`Protocol`,e[e.Both=3]=`Both`})(CM||={});function wM(e){return{createUrl:t=>`${e}://${t}/sentry_key`,urlMatches:function(e,t){return e.startsWith(this.createUrl(t))},createKey:t=>`${e}.${t}`,namespace:e}}var TM=`sentry-electron-renderer-id`;function EM(e){let t=wM(e);if(window.__SENTRY_IPC__?.[t.namespace])return window.__SENTRY_IPC__[t.namespace];{K.log(`IPC was not configured in preload script, falling back to custom protocol and fetch`);let e=window.__SENTRY_RENDERER_ID__=lT(),n={[TM]:e};return{sendRendererStart:()=>{fetch(t.createUrl(`start`),{method:`POST`,body:``,headers:n}).catch(()=>{console.error(`Sentry SDK failed to establish connection with the Electron main process.
|
|
519
|
+
${e.stack}`:`unknown`}}}}}var kOe=EO(((e={})=>{let t=e.limit??SOe;return{name:COe,processEvent(n,r){return OOe(t,e.saveZodIssuesAsAttachment,n,r)}}})),AOe=EO(e=>({name:`ThirdPartyErrorsFilter`,setup(e){e.on(`beforeEnvelope`,e=>{sD(e,(e,t)=>{if(t===`event`){let t=Array.isArray(e)?e[1]:void 0;t&&(Vk(t),e[1]=t)}})}),e.on(`applyFrameMetadata`,t=>{if(t.type)return;let n=e.getOptions().stackParser;Bk(n,t)})},preprocessEvent(t){e.ignoreSentryInternalFrames&&(G._sentryWrappedDepth??0)>0&&(t.sdkProcessingMetadata={...t.sdkProcessingMetadata,insideSentryWrapped:!0})},processEvent(t){let n=e.ignoreSentryInternalFrames?t.sdkProcessingMetadata?.insideSentryWrapped===!0&&t.exception?.values?.length===1:!1,r=MOe(t,e.ignoreSentryInternalFrames,n);if(r&&r[e.behaviour===`drop-error-if-contains-third-party-frames`||e.behaviour===`apply-tag-if-contains-third-party-frames`?`some`:`every`](t=>!t.some(t=>e.filterKeys.includes(t)))){if(e.behaviour===`drop-error-if-contains-third-party-frames`||e.behaviour===`drop-error-if-exclusively-contains-third-party-frames`)return null;t.tags={...t.tags,third_party_code:!0}}return t}}));function jOe(e,t,n){if(t!==0)return!1;if(n&&NOe(e)||e.function===`sentryWrapped`)return!0;if(!e.context_line||!e.filename||!e.filename.includes(`sentry`)||!e.filename.includes(`helpers`)||!e.context_line.includes(FOe))return!1;if(e.pre_context){let t=e.pre_context.length;for(let n=0;n<t;n++)if(e.pre_context[n]?.includes(POe))return!0}return!1}function MOe(e,t,n){let r=hw(e);if(r)return r.filter((e,r)=>!e.filename||e.lineno==null&&e.colno==null&&e.instruction_addr==null?!1:!t||!jOe(e,r,!!n)).map(e=>e.module_metadata?Object.keys(e.module_metadata).filter(e=>e.startsWith(aA)).map(e=>e.slice(aA.length)):[])}function NOe(e){return!e.context_line&&!e.pre_context&&!!e.function&&e.function.length<=2}var aA=`_sentryBundlerPluginAppKey:`,POe=`Attempt to invoke user-land function`,FOe=`fn.apply(this, wrappedArguments)`,oA=`flag.evaluation.`;function sA(e){if(e.type)return e;let t=q().getScopeData().contexts.flags,n=t?t.values:[];return n.length?(e.contexts===void 0&&(e.contexts={}),e.contexts.flags={values:[...n]},e):e}function cA(e,t,n=100){let r=q().getScopeData().contexts;r.flags||={values:[]};let i=r.flags.values;IOe(i,e,t,n)}function IOe(e,t,n,r){if(typeof n!=`boolean`)return;if(e.length>r){W&&K.error(`[Feature Flags] insertToFlagBuffer called on a buffer larger than maxSize=${r}`);return}let i=e.findIndex(e=>e.flag===t);i!==-1&&e.splice(i,1),e.length===r&&e.shift(),e.push({flag:t,result:n})}function lA(e,t,n=10){if(typeof t!=`boolean`)return;let r=UE();if(!r)return;let i=DE(r).data;if(`${oA}${e}`in i){r.setAttribute(`${oA}${e}`,t);return}Object.keys(i).filter(e=>e.startsWith(oA)).length<n&&r.setAttribute(`${oA}${e}`,t)}var LOe=EO(()=>({name:`FeatureFlags`,processEvent(e,t,n){return sA(e)},addFeatureFlag(e,t){cA(e,t),lA(e,t)}})),ROe=EO(({growthbookClass:e})=>({name:`GrowthBook`,setupOnce(){let t=e.prototype;typeof t.isOn==`function`&&Bw(t,`isOn`,uA),typeof t.getFeatureValue==`function`&&Bw(t,`getFeatureValue`,uA)},processEvent(e,t,n){return sA(e)}}));function uA(e){return function(...t){let n=t[0],r=e.apply(this,t);return typeof n==`string`&&typeof r==`boolean`&&(cA(n,r),lA(n,r)),r}}var zOe=`ConversationId`,BOe=EO((()=>({name:zOe,setup(e){e.on(`spanStart`,e=>{let t=q().getScopeData(),n=BT().getScopeData(),r=t.conversationId||n.conversationId;if(r){let{op:t,data:n,description:i}=DE(e);if(!t?.startsWith(`gen_ai.`)&&!n[`ai.operationId`]&&!i?.startsWith(`ai.`))return;e.setAttribute(Uwe,r)}})}})));function VOe(e,t,n,r,i){if(!e.fetchData)return;let{method:a,url:o}=e.fetchData,s=qE()&&t(o);if(e.endTimestamp){let t=e.fetchData.__span;if(!t)return;let n=r[t];n&&(s&&(WOe(n,e),HOe(n,e,i)),delete r[t]);return}let{spanOrigin:c=`auto.http.browser`,propagateTraceparent:l=!1}=typeof i==`object`?i:{spanOrigin:i},u=J(),d=!!UE(),f=d||!!u&&_D(u),p=s&&f?ED(qOe(o,a,c)):new ZE,m=LD(p)&&d?void 0:p;if(s&&!f&&u?.recordDroppedEvent(`no_parent_span`,`span`),e.fetchData.__span=p.spanContext().spanId,r[p.spanContext().spanId]=p,n(e.fetchData.url)){let t=e.args[0],n={...e.args[1]||{}},r=UOe(t,n,qE()&&f?m:void 0,l);r&&(e.args[1]=n,n.headers=r)}if(u){let t={input:e.args,response:e.response,startTimestamp:e.startTimestamp,endTimestamp:e.endTimestamp};u.emit(`beforeOutgoingRequestSpan`,p,t)}return p}function HOe(e,t,n){(typeof n==`object`&&n?n.onRequestSpanEnd:void 0)?.(e,{headers:t.response?.headers,error:t.error})}function UOe(e,t,n,r){let i=Tk({span:n,propagateTraceparent:r}),a=i[`sentry-trace`],o=i.baggage,s=i.traceparent;if(!a)return;let c=t.headers||(zw(e)?e.headers:void 0);if(!c)return{...i};if(GOe(c)){let e=new Headers(c);if(e.get(`sentry-trace`)||e.set(`sentry-trace`,a),r&&s&&!e.get(`traceparent`)&&e.set(`traceparent`,s),o){let t=e.get(`baggage`);t?dA(t)||e.set(`baggage`,`${t},${o}`):e.set(`baggage`,o)}return e}if(KOe(c)){let e=[...c];e.find(e=>e[0]===`sentry-trace`)||e.push([`sentry-trace`,a]),r&&s&&!e.find(e=>e[0]===`traceparent`)&&e.push([`traceparent`,s]);let t=c.find(e=>e[0]===`baggage`&&typeof e[1]==`string`&&dA(e[1]));return o&&!t&&e.push([`baggage`,o]),e}{let e=`sentry-trace`in c?c[`sentry-trace`]:void 0,t=`traceparent`in c?c.traceparent:void 0,n=`baggage`in c?c.baggage:void 0,i=n?Array.isArray(n)?[...n]:[n]:[],l=n&&(Array.isArray(n)?n.find(e=>dA(e)):dA(n));o&&!l&&i.push(o);let u=Object.assign({},c,{"sentry-trace":e??a,baggage:i.length>0?i.join(`,`):void 0});return r&&s&&!t&&(u.traceparent=s),u}}function WOe(e,t){if(t.response){tE(e,t.response.status);let n=t.response?.headers?.get(`content-length`);if(n){let t=parseInt(n);t>0&&e.setAttribute(`http.response_content_length`,t)}}else t.error&&e.setStatus({code:2,message:`internal_error`});e.end()}function dA(e){return typeof e==`string`&&e.split(`,`).some(e=>e.trim().startsWith(cE))}function GOe(e){return typeof Headers<`u`&&Rw(e,Headers)}function KOe(e){return Array.isArray(e)?e.every(e=>Array.isArray(e)&&e.length===2&&typeof e[0]==`string`):!1}function qOe(e,t,n){if(e.startsWith(`data:`))return{name:`${t} ${xk(e)}`,attributes:fA(e,void 0,t,n)};let r=_k(e);return{name:`${t} ${r?vk(r):e}`,attributes:fA(e,r,t,n)}}function fA(e,t,n,r){let i={url:xk(e),type:`fetch`,"http.method":n,[qT]:r,[KT]:`http.client`};return t&&(gk(t)||(i[`http.url`]=xk(t.href),i[`server.address`]=t.host),t.search&&(i[`http.query`]=t.search),t.hash&&(i[`http.fragment`]=t.hash)),i}function pA(e,t={},n=q()){let{message:r,name:i,email:a,url:o,source:s,associatedEventId:c,tags:l}=e,u={contexts:{feedback:{contact_email:a,name:i,message:r,url:o,source:s,associated_event_id:c}},type:`feedback`,level:`info`,tags:l},d=n?.getClient()||J();return d&&d.emit(`beforeSendFeedback`,u,t),n.captureEvent(u,t)}function mA(e,t,n){return`util`in G&&typeof G.util.format==`function`?G.util.format(...e):JOe(e,t,n)}function JOe(e,t,n){return e.map(e=>Nw(e)?String(e):JSON.stringify(Qw(e,t,n))).join(` `)}function hA(e){return/%[sdifocO]/.test(e)}function gA(e,t){let n={};return n[`sentry.message.template`]=`${e} ${Array(t.length).fill(`{}`).join(` `)}`,t.forEach((e,t)=>{n[`sentry.message.parameter.${t}`]=e}),n}var YOe=`ConsoleLogs`,_A={[qT]:`auto.log.console`},XOe=EO(((e={})=>{let t=e.levels||tw;return{name:YOe,setup(e){let{enableLogs:n,normalizeDepth:r=3,normalizeMaxBreadth:i=1e3}=e.getOptions();if(!n){W&&K.warn("`enableLogs` is not enabled, ConsoleLogs integration disabled");return}let a=Uk(({args:n,level:a})=>{if(J()!==e||!t.includes(a))return;let o=n[0],s=n.slice(1);if(a===`assert`){o||NO({level:`error`,message:s.length>0?`Assertion failed: ${mA(s,r,i)}`:`Assertion failed`,attributes:_A});return}let c=a===`log`,l={..._A};if(Pw(o)){Object.assign(l,Qw(o,r,i));let e=typeof n[1]==`string`?2:1;n.slice(e).forEach((e,t)=>{l[`sentry.message.parameter.${t}`]=Qw(e,r,i)})}else if(s.length>0&&typeof o==`string`&&!hA(o)){let e=gA(o,s);for(let[t,n]of Object.entries(e))l[t]=t.startsWith(`sentry.message.parameter.`)?Qw(n,r,i):n}NO({level:c?`info`:a,message:mA(n,r,i),severityNumber:c?10:void 0,attributes:l})});e.registerCleanup(a)}}}));function ZOe(e,t,n,r){zO({type:e,name:t,value:n,unit:r?.unit,attributes:r?.attributes},{scope:r?.scope})}function vA(e,t,n){ZOe(`distribution`,e,t,n)}var QOe=[`trace`,`debug`,`info`,`warn`,`error`,`fatal`];function $Oe(e={}){let t=new Set(e.levels??QOe),n=e.client;return{log(e){let{type:r,level:i,message:a,args:o,tag:s,date:c,...l}=e,u=n||J();if(!u)return;let d=nke(r,i);if(!t.has(d))return;let{normalizeDepth:f=3,normalizeMaxBreadth:p=1e3}=u.getOptions(),m={};for(let[e,t]of Object.entries(l))m[e]=Qw(t,f,p);m[`sentry.origin`]=`auto.log.consola`,s&&(m[`consola.tag`]=s),r&&(m[`consola.type`]=r),i!=null&&typeof i==`number`&&(m[`consola.level`]=i);let h=ike(rke(o,f,p),f,p);h?.attributes&&Object.assign(m,h.attributes),NO({level:d,message:h?.message||a||o&&mA(o,f,p)||``,attributes:m})}}}var eke={silent:`trace`,fatal:`fatal`,error:`error`,warn:`warn`,log:`info`,info:`info`,success:`info`,fail:`error`,ready:`info`,start:`info`,box:`info`,debug:`debug`,trace:`trace`,verbose:`debug`,critical:`fatal`,notice:`info`},tke={0:`fatal`,1:`warn`,2:`info`,3:`info`,4:`debug`,5:`trace`};function nke(e,t){if(e===`verbose`)return`debug`;if(e===`silent`)return`trace`;if(e){let t=eke[e];if(t)return t}if(typeof t==`number`){let e=tke[t];if(e)return e}return`info`}function rke(e,t,n){if(!e?.length)return{message:``};let r=mA(e,t,n),i=e[0];if(Pw(i)){let t=typeof e[1]==`string`?2:1;return{message:r,attributes:i,messageParameters:e.slice(t)}}{let t=e.slice(1),n=t.length>0&&typeof i==`string`&&!hA(i);return{message:r,messageTemplate:n?i:void 0,messageParameters:n?t:void 0}}}function ike(e,t,n){let{message:r,attributes:i,messageTemplate:a,messageParameters:o}=e,s={};if(a&&o){let e=gA(a,o);for(let[r,i]of Object.entries(e))s[r]=r.startsWith(`sentry.message.parameter.`)?Qw(i,t,n):i}else o&&o.length>0&&o.forEach((e,r)=>{s[`sentry.message.parameter.${r}`]=Qw(e,t,n)});return{message:r,attributes:{...Qw(i,t,n),...s}}}var ake=`gen_ai.prompt`,yA=`gen_ai.system`,bA=`gen_ai.request.model`,xA=`gen_ai.request.stream`,SA=`gen_ai.request.temperature`,CA=`gen_ai.request.max_tokens`,wA=`gen_ai.request.frequency_penalty`,TA=`gen_ai.request.presence_penalty`,EA=`gen_ai.request.top_p`,DA=`gen_ai.request.top_k`,OA=`gen_ai.request.encoding_format`,kA=`gen_ai.request.dimensions`,AA=`gen_ai.response.finish_reasons`,jA=`gen_ai.response.model`,MA=`gen_ai.response.id`,oke=`gen_ai.response.stop_reason`,NA=`gen_ai.usage.input_tokens`,PA=`gen_ai.usage.output_tokens`,FA=`gen_ai.usage.total_tokens`,IA=`gen_ai.operation.name`,LA=`sentry.sdk_meta.gen_ai.input.messages.original_length`,RA=`gen_ai.input.messages`,zA=`gen_ai.system_instructions`,BA=`gen_ai.response.text`,VA=`gen_ai.request.available_tools`,ske=`gen_ai.response.streaming`,HA=`gen_ai.response.tool_calls`,UA=`gen_ai.agent.name`,cke=`gen_ai.pipeline.name`,WA=`gen_ai.conversation.id`,lke=`gen_ai.usage.cache_creation_input_tokens`,uke=`gen_ai.usage.cache_read_input_tokens`,dke=`gen_ai.invoke_agent`,GA=`gen_ai.embeddings.input`,KA=`gen_ai.embeddings`,qA=`gen_ai.execute_tool`,JA=`gen_ai.tool.name`,fke=`gen_ai.tool.call.id`,pke=`gen_ai.tool.type`,YA=`gen_ai.tool.input`,XA=`gen_ai.tool.output`,mke=`gen_ai.tool.description`;function ZA(e){return!e||typeof e!=`object`?!1:gke(e)||$A(e)||hke(e)||ej(e)||tj(e)||_ke(e)||vke(e)||yke(e)||bke(e)||xke(e)||Ske(e)||Cke(e)}function hke(e){return`image_url`in e?typeof e.image_url==`string`?e.image_url.startsWith(`data:`):QA(e):!1}function QA(e){return`image_url`in e&&!!e.image_url&&typeof e.image_url==`object`&&`url`in e.image_url&&typeof e.image_url.url==`string`&&e.image_url.url.startsWith(`data:`)}function gke(e){return`type`in e&&typeof e.type==`string`&&`source`in e&&ZA(e.source)}function $A(e){return`inlineData`in e&&!!e.inlineData&&typeof e.inlineData==`object`&&`data`in e.inlineData&&typeof e.inlineData.data==`string`}function ej(e){return`type`in e&&e.type===`input_audio`&&`input_audio`in e&&!!e.input_audio&&typeof e.input_audio==`object`&&`data`in e.input_audio&&typeof e.input_audio.data==`string`}function tj(e){return`type`in e&&e.type===`file`&&`file`in e&&!!e.file&&typeof e.file==`object`&&`file_data`in e.file&&typeof e.file.file_data==`string`}function _ke(e){return`media_type`in e&&typeof e.media_type==`string`&&`data`in e}function vke(e){return`type`in e&&e.type===`file`&&`mediaType`in e&&typeof e.mediaType==`string`&&`data`in e&&typeof e.data==`string`&&!e.data.startsWith(`http://`)&&!e.data.startsWith(`https://`)}function yke(e){return`type`in e&&e.type===`image`&&`image`in e&&typeof e.image==`string`&&!e.image.startsWith(`http://`)&&!e.image.startsWith(`https://`)}function bke(e){return`type`in e&&(e.type===`blob`||e.type===`base64`)}function xke(e){return`b64_json`in e}function Ske(e){return`type`in e&&`result`in e&&e.type===`image_generation`}function Cke(e){return`uri`in e&&typeof e.uri==`string`&&e.uri.startsWith(`data:`)}var nj=`[Blob substitute]`,wke=[`image_url`,`data`,`content`,`b64_json`,`result`,`uri`,`image`];function rj(e){let t={...e};ZA(t.source)&&(t.source=rj(t.source)),$A(e)&&(t.inlineData={...e.inlineData,data:nj}),QA(e)&&(t.image_url={...e.image_url,url:nj}),ej(e)&&(t.input_audio={...e.input_audio,data:nj}),tj(e)&&(t.file={...e.file,file_data:nj});for(let e of wke)typeof t[e]==`string`&&(t[e]=nj);return t}var ij=2e4,aj=e=>new TextEncoder().encode(e).length,oj=e=>aj(JSON.stringify(e));function sj(e,t){if(aj(e)<=t)return e;let n=0,r=e.length,i=``;for(;n<=r;){let a=Math.floor((n+r)/2),o=e.slice(0,a);aj(o)<=t?(i=o,n=a+1):r=a-1}return i}function Tke(e){return typeof e==`string`?e:`text`in e&&typeof e.text==`string`?e.text:``}function cj(e,t){return typeof e==`string`?t:{...e,text:t}}function Eke(e){return typeof e==`object`&&!!e&&`content`in e&&typeof e.content==`string`}function lj(e){return typeof e==`object`&&!!e&&`content`in e&&Array.isArray(e.content)}function uj(e){return typeof e==`object`&&!!e&&`parts`in e&&Array.isArray(e.parts)&&e.parts.length>0}function Dke(e,t){let n=t-oj({...e,content:``});if(n<=0)return[];let r=sj(e.content,n);return[{...e,content:r}]}function Oke(e){return`parts`in e&&Array.isArray(e.parts)?{key:`parts`,items:e.parts}:`content`in e&&Array.isArray(e.content)?{key:`content`,items:e.content}:{key:null,items:[]}}function kke(e,t){let{key:n,items:r}=Oke(e);if(n===null||r.length===0)return[];let i=r.map(e=>cj(e,``)),a=t-oj({...e,[n]:i});if(a<=0)return[];let o=[];for(let e of r){let t=Tke(e),n=aj(t);if(n<=a)o.push(e),a-=n;else if(o.length===0){let n=sj(t,a);n&&o.push(cj(e,n));break}else break}return o.length<=0?[]:[{...e,[n]:o}]}function Ake(e,t){if(!e)return[];if(typeof e==`string`){let n=sj(e,t);return n?[n]:[]}return typeof e==`object`?Eke(e)?Dke(e,t):lj(e)||uj(e)?kke(e,t):[]:[]}function dj(e){return e.map(e=>{let t;return e&&typeof e==`object`&&(lj(e)?t={...e,content:dj(e.content)}:`content`in e&&ZA(e.content)&&(t={...e,content:rj(e.content)}),uj(e)&&(t={...t??e,parts:dj(e.parts)}),ZA(t)?t=rj(t):ZA(e)&&(t=rj(e))),t??e})}function jke(e,t){if(!Array.isArray(e)||e.length===0)return e;let n=t-2,r=e[e.length-1],i=dj([r]),a=i[0];return oj(a)<=n?i:Ake(a,n)}function Mke(e){return jke(e,ij)}function Nke(e){return sj(e,ij)}function fj(e){let t=J()?.getDataCollectionOptions().genAI;return{...e,recordInputs:e?.recordInputs??t?.inputs??!1,recordOutputs:e?.recordOutputs??t?.outputs??!1}}function pj(e){if(e!==void 0)return e;let t=J();return!t||!_D(t)&&t.getOptions().streamGenAiSpans===!1}function mj(e,t){return e?`${e}.${t}`:t}function Pke(e,t,n,r,i){if(t!==void 0&&e.setAttributes({[NA]:t}),n!==void 0&&e.setAttributes({[PA]:n}),t!==void 0||n!==void 0||r!==void 0||i!==void 0){let a=(t??0)+(n??0)+(r??0)+(i??0);e.setAttributes({[FA]:a})}}function hj(e,t,n){if(!e.isRecording())return;let r={[ske]:!0};t.responseId&&(r[MA]=t.responseId),t.responseModel&&(r[jA]=t.responseModel),t.promptTokens!==void 0&&(r[NA]=t.promptTokens),t.completionTokens!==void 0&&(r[PA]=t.completionTokens),t.totalTokens===void 0?(t.promptTokens!==void 0||t.completionTokens!==void 0||t.cacheCreationInputTokens!==void 0||t.cacheReadInputTokens!==void 0)&&(r[FA]=(t.promptTokens??0)+(t.completionTokens??0)+(t.cacheCreationInputTokens??0)+(t.cacheReadInputTokens??0)):r[FA]=t.totalTokens,t.finishReasons.length&&(r[AA]=JSON.stringify(t.finishReasons)),n&&t.responseTexts.length&&(r[BA]=t.responseTexts.join(``)),n&&t.toolCalls.length&&(r[HA]=JSON.stringify(t.toolCalls)),e.setAttributes(r),e.end()}function gj(e){if(typeof e==`string`)return Nke(e);try{return JSON.stringify(Array.isArray(e)?Mke(e):e)}catch{return`[unserializable]`}}function _j(e){if(!Array.isArray(e))return{systemInstructions:void 0,filteredMessages:e};let t=e.findIndex(e=>e&&typeof e==`object`&&`role`in e&&e.role===`system`);if(t===-1)return{systemInstructions:void 0,filteredMessages:e};let n=e[t],r=typeof n.content==`string`?n.content:n.content===void 0?void 0:JSON.stringify(n.content);return r?{systemInstructions:JSON.stringify([{type:`text`,content:r}]),filteredMessages:[...e.slice(0,t),...e.slice(t+1)]}:{systemInstructions:void 0,filteredMessages:e}}async function Fke(e,t,n){let r=e.catch(e=>{throw cO(e,{mechanism:{handled:!1,type:n}}),e}),i=await t,a=await r;return a&&typeof a==`object`&&`data`in a?{...a,data:i}:i}function vj(e,t,n){return Lw(e)?new Proxy(e,{get(e,r){let i=r in Promise.prototype||r===Symbol.toStringTag?t:e,a=Reflect.get(i,r);return r===`withResponse`&&typeof a==`function`?function(){return Fke(a.call(e),t,n)}:typeof a==`function`?a.bind(i):a}}):t}var Ike={"responses.create":{operation:`chat`},"chat.completions.create":{operation:`chat`},"embeddings.create":{operation:`embeddings`},"conversations.create":{operation:`chat`}},Lke=[`response.created`,`response.in_progress`,`response.failed`,`response.completed`,`response.incomplete`,`response.queued`,`response.output_text.delta`,`response.output_item.added`,`response.function_call_arguments.delta`,`response.function_call_arguments.done`,`response.output_item.done`];function Rke(e){return typeof e==`object`&&!!e&&`type`in e&&typeof e.type==`string`&&e.type.startsWith(`response.`)}function zke(e){return typeof e==`object`&&!!e&&`object`in e&&e.object===`chat.completion.chunk`}function Bke(e,t,n){if(!t||typeof t!=`object`)return;let r=t,i={};if(typeof r.id==`string`&&(i[MA]=r.id),typeof r.model==`string`&&(i[jA]=r.model),r.object===`conversation`&&typeof r.id==`string`&&(i[WA]=r.id),r.usage&&typeof r.usage==`object`){let e=r.usage,t=e.prompt_tokens??e.input_tokens;typeof t==`number`&&(i[NA]=t);let n=e.completion_tokens??e.output_tokens;typeof n==`number`&&(i[PA]=n),typeof e.total_tokens==`number`&&(i[FA]=e.total_tokens)}if(Array.isArray(r.choices)){let e=r.choices,t=e.map(e=>e.finish_reason).filter(e=>typeof e==`string`);if(t.length>0&&(i[AA]=JSON.stringify(t)),n){let t=e.map(e=>e.message?.content||``);i[BA]=JSON.stringify(t);let n=e.map(e=>e.message?.tool_calls).filter(e=>Array.isArray(e)&&e.length>0).flat();n.length>0&&(i[HA]=JSON.stringify(n))}}if(typeof r.status==`string`&&(i[`gen_ai.response.finish_reasons`]||(i[AA]=JSON.stringify([r.status]))),n&&(typeof r.output_text==`string`&&!i[`gen_ai.response.text`]&&(i[BA]=r.output_text),Array.isArray(r.output)&&r.output.length>0&&!i[`gen_ai.response.tool_calls`])){let e=r.output.filter(e=>e?.type===`function_call`);e.length>0&&(i[HA]=JSON.stringify(e))}e.setAttributes(i)}function Vke(e){if(`conversation`in e&&typeof e.conversation==`string`)return e.conversation;if(`previous_response_id`in e&&typeof e.previous_response_id==`string`)return e.previous_response_id}function Hke(e){let t={[bA]:e.model??`unknown`};`temperature`in e&&(t[SA]=e.temperature),`top_p`in e&&(t[EA]=e.top_p),`frequency_penalty`in e&&(t[wA]=e.frequency_penalty),`presence_penalty`in e&&(t[TA]=e.presence_penalty),`stream`in e&&(t[xA]=e.stream),`encoding_format`in e&&(t[OA]=e.encoding_format),`dimensions`in e&&(t[kA]=e.dimensions);let n=Vke(e);return n&&(t[WA]=n),t}function Uke(e,t){for(let n of e){let e=n.index;if(!(e===void 0||!n.function))if(!(e in t.chatCompletionToolCalls))t.chatCompletionToolCalls[e]={...n,function:{name:n.function.name,arguments:n.function.arguments||``}};else{let r=t.chatCompletionToolCalls[e];n.function.arguments&&r?.function&&(r.function.arguments+=n.function.arguments)}}}function Wke(e,t,n){t.responseId=e.id??t.responseId,t.responseModel=e.model??t.responseModel,e.usage&&(t.promptTokens=e.usage.prompt_tokens,t.completionTokens=e.usage.completion_tokens,t.totalTokens=e.usage.total_tokens);for(let r of e.choices??[])n&&(r.delta?.content&&t.responseTexts.push(r.delta.content),r.delta?.tool_calls&&Uke(r.delta.tool_calls,t)),r.finish_reason&&t.finishReasons.push(r.finish_reason)}function Gke(e,t,n,r){if(!(e&&typeof e==`object`)){t.eventTypes.push(`unknown:non-object`);return}if(e instanceof Error){r.setStatus({code:2,message:`internal_error`}),cO(e,{mechanism:{handled:!1,type:`auto.ai.openai.stream-response`}});return}if(!(`type`in e))return;let i=e;if(!Lke.includes(i.type)){t.eventTypes.push(i.type);return}if(n&&(i.type===`response.output_item.done`&&`item`in i&&t.responsesApiToolCalls.push(i.item),i.type===`response.output_text.delta`&&`delta`in i&&i.delta)){t.responseTexts.push(i.delta);return}if(`response`in i){let{response:e}=i;t.responseId=e.id??t.responseId,t.responseModel=e.model??t.responseModel,e.usage&&(t.promptTokens=e.usage.input_tokens,t.completionTokens=e.usage.output_tokens,t.totalTokens=e.usage.total_tokens),e.status&&t.finishReasons.push(e.status),n&&e.output_text&&t.responseTexts.push(e.output_text)}}async function*Kke(e,t,n){let r={eventTypes:[],responseTexts:[],finishReasons:[],responseId:``,responseModel:``,promptTokens:void 0,completionTokens:void 0,totalTokens:void 0,chatCompletionToolCalls:{},responsesApiToolCalls:[]};try{for await(let i of e)zke(i)?Wke(i,r,n):Rke(i)&&Gke(i,r,n,t),yield i}finally{let e=[...Object.values(r.chatCompletionToolCalls),...r.responsesApiToolCalls];hj(t,{...r,toolCalls:e},n)}}function qke(e){let t=Array.isArray(e.tools)?e.tools:[],n=e.web_search_options&&typeof e.web_search_options==`object`?[{type:`web_search_options`,...e.web_search_options}]:[],r=[...t,...n];if(r.length!==0)try{return JSON.stringify(r)}catch(e){W&&K.error(`Failed to serialize OpenAI tools:`,e);return}}function Jke(e,t){let n={[yA]:`openai`,[IA]:t,[qT]:`auto.ai.openai`};if(e.length>0&&typeof e[0]==`object`&&e[0]!==null){let t=e[0],r=qke(t);r&&(n[VA]=r),Object.assign(n,Hke(t))}else n[bA]=`unknown`;return n}function yj(e,t,n,r){if(n===`embeddings`&&`input`in t){let n=t.input;if(n==null||typeof n==`string`&&n.length===0||Array.isArray(n)&&n.length===0)return;e.setAttribute(GA,typeof n==`string`?n:JSON.stringify(n));return}let i=`input`in t?t.input:`messages`in t?t.messages:void 0;if(!i||Array.isArray(i)&&i.length===0)return;let{systemInstructions:a,filteredMessages:o}=_j(i);a&&e.setAttribute(zA,a),e.setAttribute(RA,r?gj(o):nT(o)),Array.isArray(o)?e.setAttribute(LA,o.length):e.setAttribute(LA,1)}function Yke(e,t,n,r,i){return function(...a){let o=n.operation||`unknown`,s=Jke(a,o),c=s[`gen_ai.request.model`]||`unknown`,l=a[0],u=l&&typeof l==`object`&&l.stream===!0,d={name:`${o} ${c}`,op:`gen_ai.${o}`,attributes:s};if(u){let n,s=TD(d,s=>(n=e.apply(r,a),i.recordInputs&&l&&yj(s,l,o,pj(i.enableTruncation)),(async()=>{try{return Kke(await n,s,i.recordOutputs??!1)}catch(e){throw s.setStatus({code:2,message:`internal_error`}),cO(e,{mechanism:{handled:!1,type:`auto.ai.openai.stream`,data:{function:t}}}),s.end(),e}})()));return vj(n,s,`auto.ai.openai`)}let f,p=wD(d,n=>(f=e.apply(r,a),i.recordInputs&&l&&yj(n,l,o,pj(i.enableTruncation)),f.then(e=>(Bke(n,e,i.recordOutputs),e),e=>{throw cO(e,{mechanism:{handled:!1,type:`auto.ai.openai`,data:{function:t}}}),e})));return vj(f,p,`auto.ai.openai`)}}function bj(e,t=``,n){return new Proxy(e,{get(e,r){let i=e[r],a=mj(t,String(r)),o=Ike[a];return typeof i==`function`&&o?Yke(i,a,o,e,n):typeof i==`function`?i.bind(e):i&&typeof i==`object`?bj(i,a,n):i}})}function Xke(e,t){return bj(e,``,fj(t))}var Zke={"messages.create":{operation:`chat`},"messages.stream":{operation:`chat`,streaming:!0},"messages.countTokens":{operation:`chat`},"models.get":{operation:`models`},"completions.create":{operation:`chat`},"models.retrieve":{operation:`models`},"beta.messages.create":{operation:`chat`}};function Qke(e,t,n){if(Array.isArray(t)&&t.length===0)return;let{systemInstructions:r,filteredMessages:i}=_j(t);r&&e.setAttributes({[zA]:r});let a=Array.isArray(i)?i.length:1;e.setAttributes({[RA]:n?gj(i):nT(i),[LA]:a})}var $ke={invalid_request_error:`invalid_argument`,authentication_error:`unauthenticated`,permission_error:`permission_denied`,not_found_error:`not_found`,request_too_large:`failed_precondition`,rate_limit_error:`resource_exhausted`,api_error:`internal_error`,overloaded_error:`unavailable`};function xj(e){return e&&$ke[e]||`internal_error`}function eAe(e,t){t.error&&(e.setStatus({code:2,message:xj(t.error.type)}),cO(t.error,{mechanism:{handled:!1,type:`auto.ai.anthropic.anthropic_error`}}))}function tAe(e){let{system:t,messages:n,input:r}=e,i=typeof t==`string`?[{role:`system`,content:e.system}]:[],a=(Array.isArray(r)?r:r==null?void 0:[r])??(Array.isArray(n)?n:n==null?[]:[n]);return[...i,...a]}function nAe(e,t){return`type`in e&&typeof e.type==`string`&&e.type===`error`&&(t.setStatus({code:2,message:xj(e.error?.type)}),cO(e.error,{mechanism:{handled:!1,type:`auto.ai.anthropic.anthropic_error`}}),!0)}function rAe(e,t){if(e.type===`message_delta`&&(e.usage&&typeof e.usage.output_tokens==`number`&&(t.completionTokens=e.usage.output_tokens),e.delta?.stop_reason&&t.finishReasons.push(e.delta.stop_reason)),e.message){let n=e.message;n.id&&(t.responseId=n.id),n.model&&(t.responseModel=n.model),n.usage&&(typeof n.usage.input_tokens==`number`&&(t.promptTokens=n.usage.input_tokens),typeof n.usage.cache_creation_input_tokens==`number`&&(t.cacheCreationInputTokens=n.usage.cache_creation_input_tokens),typeof n.usage.cache_read_input_tokens==`number`&&(t.cacheReadInputTokens=n.usage.cache_read_input_tokens))}}function iAe(e,t){e.type!==`content_block_start`||typeof e.index!=`number`||!e.content_block||(e.content_block.type===`tool_use`||e.content_block.type===`server_tool_use`)&&(t.activeToolBlocks[e.index]={id:e.content_block.id,name:e.content_block.name,inputJsonParts:[]})}function aAe(e,t,n){if(!(e.type!==`content_block_delta`||!e.delta)){if(typeof e.index==`number`&&`partial_json`in e.delta&&typeof e.delta.partial_json==`string`){let n=t.activeToolBlocks[e.index];n&&n.inputJsonParts.push(e.delta.partial_json)}n&&typeof e.delta.text==`string`&&t.responseTexts.push(e.delta.text)}}function oAe(e,t){if(e.type!==`content_block_stop`||typeof e.index!=`number`)return;let n=t.activeToolBlocks[e.index];if(!n)return;let r=n.inputJsonParts.join(``),i;try{i=r?JSON.parse(r):{}}catch{i={__unparsed:r}}t.toolCalls.push({type:`tool_use`,id:n.id,name:n.name,input:i}),delete t.activeToolBlocks[e.index]}function Sj(e,t,n,r){e&&typeof e==`object`&&(nAe(e,r)||(rAe(e,t),iAe(e,t),aAe(e,t,n),oAe(e,t)))}async function*sAe(e,t,n){let r={responseTexts:[],finishReasons:[],responseId:``,responseModel:``,promptTokens:void 0,completionTokens:void 0,cacheCreationInputTokens:void 0,cacheReadInputTokens:void 0,toolCalls:[],activeToolBlocks:{}};try{for await(let i of e)Sj(i,r,n,t),yield i}finally{hj(t,r,n)}}function cAe(e,t,n){let r={responseTexts:[],finishReasons:[],responseId:``,responseModel:``,promptTokens:void 0,completionTokens:void 0,cacheCreationInputTokens:void 0,cacheReadInputTokens:void 0,toolCalls:[],activeToolBlocks:{}};return e.on(`streamEvent`,e=>{Sj(e,r,n,t)}),e.on(`message`,()=>{hj(t,r,n)}),e.on(`error`,e=>{cO(e,{mechanism:{handled:!1,type:`auto.ai.anthropic.stream_error`}}),t.isRecording()&&(t.setStatus({code:2,message:`internal_error`}),t.end())}),e}function lAe(e,t,n){let r={[yA]:`anthropic`,[IA]:n,[qT]:`auto.ai.anthropic`};if(e.length>0&&typeof e[0]==`object`&&e[0]!==null){let t=e[0];t.tools&&Array.isArray(t.tools)&&(r[VA]=JSON.stringify(t.tools)),r[bA]=t.model??`unknown`,`temperature`in t&&(r[SA]=t.temperature),`top_p`in t&&(r[EA]=t.top_p),`stream`in t&&(r[xA]=t.stream),`top_k`in t&&(r[DA]=t.top_k),`frequency_penalty`in t&&(r[wA]=t.frequency_penalty),`max_tokens`in t&&(r[CA]=t.max_tokens)}else r[bA]=t===`models.retrieve`||t===`models.get`?e[0]:`unknown`;return r}function Cj(e,t,n){Qke(e,tAe(t),n),`prompt`in t&&e.setAttributes({[ake]:JSON.stringify(t.prompt)})}function uAe(e,t){if(`content`in t&&Array.isArray(t.content)){e.setAttributes({[BA]:t.content.map(e=>e.text).filter(e=>!!e).join(``)});let n=[];for(let e of t.content)(e.type===`tool_use`||e.type===`server_tool_use`)&&n.push(e);n.length>0&&e.setAttributes({[HA]:JSON.stringify(n)})}`completion`in t&&e.setAttributes({[BA]:t.completion}),`input_tokens`in t&&e.setAttributes({[BA]:JSON.stringify(t.input_tokens)})}function dAe(e,t){`id`in t&&`model`in t&&(e.setAttributes({[MA]:t.id,[jA]:t.model}),`usage`in t&&t.usage&&Pke(e,t.usage.input_tokens,t.usage.output_tokens,t.usage.cache_creation_input_tokens,t.usage.cache_read_input_tokens))}function fAe(e,t,n){if(!(!t||typeof t!=`object`)){if(`type`in t&&t.type===`error`){eAe(e,t);return}n&&uAe(e,t),dAe(e,t)}}function wj(e,t,n){throw cO(e,{mechanism:{handled:!1,type:`auto.ai.anthropic`,data:{function:n}}}),t.isRecording()&&(t.setStatus({code:2,message:`internal_error`}),t.end()),e}function pAe(e,t,n,r,i,a,o,s,c,l,u){let d={name:`${a} ${i[`gen_ai.request.model`]??`unknown`}`,op:`gen_ai.${a}`,attributes:i};if(l&&!u){let t,i=TD(d,i=>(t=e.apply(n,r),c.recordInputs&&s&&Cj(i,s,pj(c.enableTruncation)),(async()=>{try{return sAe(await t,i,c.recordOutputs??!1)}catch(e){return wj(e,i,o)}})()));return vj(t,i,`auto.ai.anthropic`)}return TD(d,e=>{try{return c.recordInputs&&s&&Cj(e,s,pj(c.enableTruncation)),cAe(t.apply(n,r),e,c.recordOutputs??!1)}catch(t){return wj(t,e,o)}})}function mAe(e,t,n,r,i){return new Proxy(e,{apply(a,o,s){let c=n.operation||`unknown`,l=lAe(s,t,c),u=l[`gen_ai.request.model`]??`unknown`,d=typeof s[0]==`object`?s[0]:void 0,f=!!d?.stream,p=n.streaming===!0;if(f||p)return pAe(e,a,r,s,l,c,t,d,i,f,p);let m,h=wD({name:`${c} ${u}`,op:`gen_ai.${c}`,attributes:l},e=>(m=a.apply(r,s),i.recordInputs&&d&&Cj(e,d,pj(i.enableTruncation)),m.then(t=>(fAe(e,t,i.recordOutputs),t),e=>{throw cO(e,{mechanism:{handled:!1,type:`auto.ai.anthropic`,data:{function:t}}}),e})));return vj(m,h,`auto.ai.anthropic`)}})}function Tj(e,t=``,n){return new Proxy(e,{get(e,r){let i=e[r],a=mj(t,String(r)),o=Zke[a];return typeof i==`function`&&o?mAe(i,a,o,e,n):typeof i==`function`?i.bind(e):i&&typeof i==`object`?Tj(i,a,n):i}})}function hAe(e,t){return Tj(e,``,fj(t))}var gAe={"models.generateContent":{operation:`generate_content`},"models.generateContentStream":{operation:`generate_content`,streaming:!0},"models.embedContent":{operation:`embeddings`},"chats.create":{proxyResultPath:`chat`},"chat.sendMessage":{operation:`chat`},"chat.sendMessageStream":{operation:`chat`,streaming:!0}},_Ae=`google_genai`;function vAe(e,t){let n=e?.promptFeedback;if(n?.blockReason){let e=n.blockReasonMessage??n.blockReason;return t.setStatus({code:2,message:`internal_error`}),cO(`Content blocked: ${e}`,{mechanism:{handled:!1,type:`auto.ai.google_genai`}}),!0}return!1}function yAe(e,t){typeof e.responseId==`string`&&(t.responseId=e.responseId),typeof e.modelVersion==`string`&&(t.responseModel=e.modelVersion);let n=e.usageMetadata;n&&(typeof n.promptTokenCount==`number`&&(t.promptTokens=n.promptTokenCount),typeof n.candidatesTokenCount==`number`&&(t.completionTokens=n.candidatesTokenCount),typeof n.totalTokenCount==`number`&&(t.totalTokens=n.totalTokenCount))}function bAe(e,t,n){Array.isArray(e.functionCalls)&&t.toolCalls.push(...e.functionCalls);for(let r of e.candidates??[]){r?.finishReason&&!t.finishReasons.includes(r.finishReason)&&t.finishReasons.push(r.finishReason);for(let e of r?.content?.parts??[])n&&e.text&&t.responseTexts.push(e.text),e.functionCall&&t.toolCalls.push({type:`function`,id:e.functionCall.id,name:e.functionCall.name,arguments:e.functionCall.args})}}function xAe(e,t,n,r){!e||vAe(e,r)||(yAe(e,t),bAe(e,t,n))}async function*SAe(e,t,n){let r={responseTexts:[],finishReasons:[],toolCalls:[]};try{for await(let i of e)xAe(i,r,n,t),yield i}finally{hj(t,r,n)}}function Ej(e,t=`user`){return typeof e==`string`?[{role:t,content:e}]:Array.isArray(e)?e.flatMap(e=>Ej(e,t)):typeof e!=`object`||!e?[]:`role`in e&&typeof e.role==`string`?[e]:`parts`in e?[{...e,role:t}]:[{role:t,content:e}]}function Dj(e,t){if(`model`in e&&typeof e.model==`string`)return e.model;if(t&&typeof t==`object`){let e=t;if(`model`in e&&typeof e.model==`string`)return e.model;if(`modelVersion`in e&&typeof e.modelVersion==`string`)return e.modelVersion}return`unknown`}function CAe(e){let t={};return`temperature`in e&&typeof e.temperature==`number`&&(t[SA]=e.temperature),`topP`in e&&typeof e.topP==`number`&&(t[EA]=e.topP),`topK`in e&&typeof e.topK==`number`&&(t[DA]=e.topK),`maxOutputTokens`in e&&typeof e.maxOutputTokens==`number`&&(t[CA]=e.maxOutputTokens),`frequencyPenalty`in e&&typeof e.frequencyPenalty==`number`&&(t[wA]=e.frequencyPenalty),`presencePenalty`in e&&typeof e.presencePenalty==`number`&&(t[TA]=e.presencePenalty),t}function wAe(e,t,n){let r={[yA]:_Ae,[IA]:e,[qT]:`auto.ai.google_genai`};if(t){if(r[bA]=Dj(t,n),`config`in t&&typeof t.config==`object`&&t.config){let e=t.config;if(Object.assign(r,CAe(e)),`tools`in e&&Array.isArray(e.tools)){let t=e.tools.flatMap(e=>e.functionDeclarations);r[VA]=JSON.stringify(t)}}}else r[bA]=Dj({},n);return r}function Oj(e,t,n,r){if(n===`embeddings`){let n=t.contents;n!=null&&e.setAttribute(GA,typeof n==`string`?n:JSON.stringify(n));return}let i=[];if(`config`in t&&t.config&&typeof t.config==`object`&&`systemInstruction`in t.config&&t.config.systemInstruction&&i.push(...Ej(t.config.systemInstruction,`system`)),`history`in t&&i.push(...Ej(t.history,`user`)),`contents`in t&&i.push(...Ej(t.contents,`user`)),`message`in t&&i.push(...Ej(t.message,`user`)),Array.isArray(i)&&i.length){let{systemInstructions:t,filteredMessages:n}=_j(i);t&&e.setAttribute(zA,t);let a=Array.isArray(n)?n.length:0;e.setAttributes({[LA]:a,[RA]:r?gj(n):nT(n)})}}function TAe(e,t,n){if(!(!t||typeof t!=`object`)){if(t.modelVersion&&e.setAttribute(jA,t.modelVersion),t.usageMetadata&&typeof t.usageMetadata==`object`){let n=t.usageMetadata;typeof n.promptTokenCount==`number`&&e.setAttributes({[NA]:n.promptTokenCount}),typeof n.candidatesTokenCount==`number`&&e.setAttributes({[PA]:n.candidatesTokenCount}),typeof n.totalTokenCount==`number`&&e.setAttributes({[FA]:n.totalTokenCount})}if(n&&Array.isArray(t.candidates)&&t.candidates.length>0){let n=t.candidates.map(e=>e.content?.parts&&Array.isArray(e.content.parts)?e.content.parts.map(e=>typeof e.text==`string`?e.text:``).filter(e=>e.length>0).join(``):``).filter(e=>e.length>0);n.length>0&&e.setAttributes({[BA]:n.join(``)})}if(n&&t.functionCalls){let n=t.functionCalls;Array.isArray(n)&&n.length>0&&e.setAttributes({[HA]:JSON.stringify(n)})}}}function EAe(e,t,n,r,i){let a=n.operation===`embeddings`;return new Proxy(e,{apply(e,o,s){let c=n.operation||`unknown`,l=s[0],u=wAe(c,l,r),d=u[`gen_ai.request.model`]??`unknown`;return n.streaming?TD({name:`${c} ${d}`,op:`gen_ai.${c}`,attributes:u},async n=>{try{return i.recordInputs&&l&&Oj(n,l,c,pj(i.enableTruncation)),SAe(await e.apply(r,s),n,!!i.recordOutputs)}catch(e){throw n.setStatus({code:2,message:`internal_error`}),cO(e,{mechanism:{handled:!1,type:`auto.ai.google_genai`,data:{function:t}}}),n.end(),e}}):wD({name:`${c} ${d}`,op:`gen_ai.${c}`,attributes:u},n=>(i.recordInputs&&l&&Oj(n,l,c,pj(i.enableTruncation)),SD(()=>e.apply(r,s),e=>{cO(e,{mechanism:{handled:!1,type:`auto.ai.google_genai`,data:{function:t}}})},()=>{},e=>{a||TAe(n,e,i.recordOutputs)})))}})}function kj(e,t=``,n){return new Proxy(e,{get:(e,r,i)=>{let a=Reflect.get(e,r,i),o=mj(t,String(r)),s=gAe[o];if(typeof a==`function`&&s){let t=s.operation?EAe(a,o,s,e,n):a.bind(e);return s.proxyResultPath?function(...e){let r=t(...e);return r&&typeof r==`object`?kj(r,s.proxyResultPath,n):r}:t}return typeof a==`function`?a.bind(e):a&&typeof a==`object`?kj(a,o,n):a}})}function DAe(e,t){return kj(e,``,fj(t))}var Aj=`auto.ai.langchain`,OAe={human:`user`,ai:`assistant`,assistant:`assistant`,system:`system`,function:`function`,tool:`tool`},jj=(e,t,n)=>{n!=null&&(e[t]=n)},Mj=(e,t,n)=>{let r=Number(n);Number.isNaN(r)||(e[t]=r)};function Nj(e){if(Array.isArray(e))try{let t=e.map(e=>e&&typeof e==`object`&&ZA(e)?rj(e):e);return JSON.stringify(t)}catch{return String(e)}return nT(e,String)}function Pj(e){let t=e.toLowerCase();return OAe[t]??t}function Fj(e){return e.includes(`System`)?`system`:e.includes(`Human`)?`user`:e.includes(`AI`)||e.includes(`Assistant`)?`assistant`:e.includes(`Function`)?`function`:e.includes(`Tool`)?`tool`:`user`}function Ij(e){if(!(!e||Array.isArray(e)))return e.invocation_params}function Lj(e){return e.map(e=>{let t=e._getType;if(typeof t==`function`)return{role:Pj(t.call(e)),content:Nj(e.content)};if(e.lc===1&&e.kwargs){let t=e.id,n=Array.isArray(t)&&t.length>0?t[t.length-1]:``;return{role:Pj(typeof n==`string`?Fj(n):`user`),content:Nj(e.kwargs?.content)}}if(e.type)return{role:Pj(String(e.type).toLowerCase()),content:Nj(e.content)};if(e.role)return{role:Pj(String(e.role)),content:Nj(e.content)};let n=e.constructor?.name;return n&&n!==`Object`?{role:Pj(Fj(n)),content:Nj(e.content)}:{role:`user`,content:Nj(e.content)}})}function kAe(e,t,n){let r={},i=`kwargs`in e?e.kwargs:void 0;Mj(r,SA,t?.temperature??n?.ls_temperature??i?.temperature),Mj(r,CA,t?.max_tokens??n?.ls_max_tokens??i?.max_tokens),Mj(r,EA,t?.top_p??i?.top_p);let a=t?.frequency_penalty;Mj(r,wA,a);let o=t?.presence_penalty;return Mj(r,TA,o),t&&`stream`in t&&jj(r,xA,!!t.stream),r}function Rj(e,t,n,r,i){return{[yA]:nT(e??`langchain`,String),[IA]:`chat`,[bA]:nT(t,String),[qT]:Aj,...kAe(n,r,i)}}function AAe(e,t,n,r,i,a){let o=a?.ls_provider,s=Rj(o,i?.model??a?.ls_model_name??`unknown`,e,i,a);if(n&&Array.isArray(t)&&t.length>0){jj(s,LA,t.length);let e=t.map(e=>({role:`user`,content:e}));jj(s,RA,r?gj(e):nT(e))}return s}function jAe(e,t,n,r,i,a){let o=Rj(a?.ls_provider??e.id?.[2],i?.model??a?.ls_model_name??`unknown`,e,i,a);if(n&&Array.isArray(t)&&t.length>0){let{systemInstructions:e,filteredMessages:n}=_j(Lj(t.flat()));e&&jj(o,zA,e),jj(o,LA,Array.isArray(n)?n.length:0),jj(o,RA,r?gj(n):nT(n))}return o}function MAe(e,t){let n=[],r=e.flat();for(let e of r){let t=e.message?.tool_calls;if(Array.isArray(t)&&t.length>0)n.push(...t);else{let t=e.message?.content;if(Array.isArray(t))for(let e of t){let t=e;t.type===`tool_use`&&n.push(t)}}}n.length>0&&jj(t,HA,nT(n,String))}function NAe(e,t){if(!e)return;let n=e.tokenUsage,r=e.usage;if(n)Mj(t,NA,n.promptTokens),Mj(t,PA,n.completionTokens),Mj(t,FA,n.totalTokens);else if(r){Mj(t,NA,r.input_tokens),Mj(t,PA,r.output_tokens);let e=Number(r.input_tokens),n=Number(r.output_tokens),i=(Number.isNaN(e)?0:e)+(Number.isNaN(n)?0:n);i>0&&Mj(t,FA,i),r.cache_creation_input_tokens!==void 0&&Mj(t,lke,r.cache_creation_input_tokens),r.cache_read_input_tokens!==void 0&&Mj(t,uke,r.cache_read_input_tokens)}}function PAe(e,t){if(!e)return;let n={};if(Array.isArray(e.generations)){let r=e.generations.flat().map(e=>e.generationInfo?.finish_reason?e.generationInfo.finish_reason:e.generation_info?.finish_reason?e.generation_info.finish_reason:null).filter(e=>typeof e==`string`);if(r.length>0&&jj(n,AA,nT(r,String)),MAe(e.generations,n),t){let t=e.generations.flat().map(e=>e.text??e.message?.content).filter(e=>typeof e==`string`);t.length>0&&jj(n,BA,nT(t,String))}}NAe(e.llmOutput,n);let r=e.llmOutput,i=e.generations?.[0]?.[0]?.message,a=r?.model_name??r?.model??i?.response_metadata?.model_name;a&&jj(n,jA,a);let o=r?.id??i?.id;o&&jj(n,MA,o);let s=r?.stop_reason??i?.response_metadata?.finish_reason;return s&&jj(n,oke,nT(s,String)),n}function zj(e){let t={},n=e?.lc_agent_name;return typeof n==`string`&&(t[UA]=n),t}function FAe(e){let t=e?.invocation_params?.tools??e?.options?.tools;if(!Array.isArray(t)||t.length===0)return;let n=t.map(e=>{let t=e.function;return{type:`function`,name:e.name??t?.name??``,description:e.description??t?.description}});return JSON.stringify(n)}function IAe(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.addHandler==`function`&&typeof t.copy==`function`}function LAe(e){return typeof e==`object`&&e?.name===`SentryCallbackHandler`}function Bj(e){return e.some(LAe)}function RAe(e,t){if(!e)return[t];if(IAe(e)){if(Bj(e.handlers??[]))return e;let n=e.copy();return n.addHandler(t,!0),n}let n=Array.isArray(e)?e:[e];return Bj(n)?e:[...n,t]}function Vj(e={}){let{recordInputs:t,recordOutputs:n}=fj(e),r=pj(e.enableTruncation),i=new Map,a=e=>{let t=i.get(e);t?.isRecording()&&(t.end(),i.delete(e))},o={lc_serializable:!1,lc_namespace:[`langchain_core`,`callbacks`,`sentry`],lc_secrets:void 0,lc_attributes:void 0,lc_aliases:void 0,lc_serializable_keys:void 0,lc_id:[`langchain_core`,`callbacks`,`sentry`],lc_kwargs:{},name:`SentryCallbackHandler`,ignoreLLM:!1,ignoreChain:!1,ignoreAgent:!1,ignoreRetriever:!1,ignoreCustomEvent:!1,raiseError:!1,awaitHandlers:!0,handleLLMStart(e,n,a,o,s,c,l,u){let d=Ij(c),f=AAe(e,n,t,r,d,l),p=f[bA],m=f[IA];TD({name:`${m} ${p}`,op:`gen_ai.chat`,attributes:{...zj(l),...f,[KT]:`gen_ai.chat`}},e=>(i.set(a,e),e))},handleChatModelStart(e,n,a,o,s,c,l,u){let d=Ij(c),f=jAe(e,n,t,r,d,l),p=FAe(s);p&&(f[VA]=p);let m=f[bA],h=f[IA];TD({name:`${h} ${m}`,op:`gen_ai.chat`,attributes:{...zj(l),...f,[KT]:`gen_ai.chat`}},e=>(i.set(a,e),e))},handleLLMEnd(e,t,r,o,s){let c=i.get(t);if(c?.isRecording()){let r=PAe(e,n);r&&c.setAttributes(r),a(t)}},handleLLMError(e,t){let n=i.get(t);n?.isRecording()&&(n.setStatus({code:2,message:`internal_error`}),a(t)),cO(e,{mechanism:{handled:!1,type:`${Aj}.llm_error_handler`}})},handleChainStart(e,n,r,a,o,s,c,l){if(s?.__sentry_langgraph__)return;let u=l||e.name||`unknown_chain`,d={[qT]:`auto.ai.langchain`,"langchain.chain.name":u};t&&(d[`langchain.chain.inputs`]=JSON.stringify(n)),TD({name:`chain ${u}`,op:`gen_ai.invoke_agent`,attributes:{...d,[KT]:`gen_ai.invoke_agent`}},e=>(i.set(r,e),e))},handleChainEnd(e,t){let r=i.get(t);r?.isRecording()&&(n&&r.setAttributes({"langchain.chain.outputs":JSON.stringify(e)}),a(t))},handleChainError(e,t){let n=i.get(t);n?.isRecording()&&(n.setStatus({code:2,message:`internal_error`}),a(t)),cO(e,{mechanism:{handled:!1,type:`${Aj}.chain_error_handler`}})},handleToolStart(e,n,r,a,o,s,c){if(s?.__sentry_langgraph__)return;let l=c||e.name||`unknown_tool`,u={...zj(s),[qT]:Aj,[IA]:`execute_tool`,[JA]:l};t&&(u[YA]=n),TD({name:`execute_tool ${l}`,op:`gen_ai.execute_tool`,attributes:{...u,[KT]:`gen_ai.execute_tool`}},e=>(i.set(r,e),e))},handleToolEnd(e,t){let r=i.get(t);if(r?.isRecording()){if(n){let t=e,n=t&&typeof t==`object`&&`content`in t?t.content:e;r.setAttributes({[XA]:typeof n==`string`?n:JSON.stringify(n)})}a(t)}},handleToolError(e,t){let n=i.get(t);n?.isRecording()&&(n.setStatus({code:2,message:`internal_error`}),a(t)),cO(e,{mechanism:{handled:!1,type:`${Aj}.tool_error_handler`}})},copy(){return o},toJSON(){return{lc:1,type:`not_implemented`,id:o.lc_id}},toJSONNotImplemented(){return{lc:1,type:`not_implemented`,id:o.lc_id}}};return o}function zAe(e){let t=e.constructor?.name??``;return t.includes(`OpenAI`)?`openai`:t.includes(`Google`)?`google_genai`:t.includes(`Mistral`)?`mistralai`:t.includes(`Vertex`)?`google_vertexai`:t.includes(`Bedrock`)?`aws_bedrock`:t.includes(`Ollama`)?`ollama`:t.includes(`Cloudflare`)?`cloudflare`:t.includes(`Cohere`)?`cohere`:`langchain`}function BAe(e){let t=e??{},n={[qT]:Aj,[KT]:KA,[IA]:`embeddings`,[bA]:t.model??`unknown`};return n[yA]=zAe(t),`dimensions`in t&&(n[kA]=t.dimensions),`encodingFormat`in t&&(n[OA]=t.encodingFormat),n}function VAe(e,t,n={}){let{recordInputs:r}=fj(n),i=BAe(e),a=i[`gen_ai.request.model`]||`unknown`;return r&&t!=null&&(i[GA]=typeof t==`string`?t:JSON.stringify(t)),{name:`embeddings ${a}`,op:KA,attributes:i}}function Hj(e,t={}){return new Proxy(e,{apply(e,n,r){return wD(VAe(n,r[0],t),()=>Reflect.apply(e,n,r).then(void 0,e=>{throw cO(e,{mechanism:{handled:!1,type:`auto.ai.langchain`}}),e}))}})}function HAe(e,t){let n=e;return typeof n.embedQuery==`function`&&(n.embedQuery=Hj(n.embedQuery,t)),typeof n.embedDocuments==`function`&&(n.embedDocuments=Hj(n.embedDocuments,t)),e}var Uj=`auto.ai.langgraph`;function UAe(e){let t=e[0];if(typeof t!=`object`||!t||!(`llm`in t)||!t.llm||typeof t.llm!=`object`)return null;let n=t.llm;return typeof n.modelName!=`string`&&typeof n.model!=`string`?null:n}function WAe(e){let t=e[0];return typeof t==`object`&&t&&`name`in t&&typeof t.name==`string`?t.name:null}function GAe(e,t,n){let r=`__sentry_tool_wrapped__`;for(let i of e){if(!i||typeof i!=`object`)continue;let e=i,a=e.invoke;if(typeof a!=`function`||Object.prototype.hasOwnProperty.call(e,r))continue;let o=typeof e.name==`string`?e.name:`unknown_tool`,s=typeof e.description==`string`?e.description:void 0;e.invoke=new Proxy(a,{apply(e,r,i){let a={[qT]:Uj,[KT]:qA,[IA]:`execute_tool`,[JA]:o,[pke]:`function`},c=i[1]?.metadata?.lc_agent_name??n;typeof c==`string`&&(a[UA]=c),s&&(a[mke]=s);let l=i[0];if(typeof l==`object`&&l&&(`id`in l&&typeof l.id==`string`&&(a[fke]=l.id),t.recordInputs)){let e=`args`in l&&typeof l.args==`object`?l.args:l;try{a[YA]=JSON.stringify(e)}catch{}}return wD({op:qA,name:`execute_tool ${o}`,attributes:a},async n=>{try{let a=await Reflect.apply(e,r,i);if(t.recordOutputs)try{let e=a,t=e&&typeof e==`object`&&`content`in e?e.content:a;n.setAttribute(XA,typeof t==`string`?t:JSON.stringify(t))}catch{}return a}catch(e){throw n.setStatus({code:2,message:`internal_error`}),cO(e,{mechanism:{handled:!1,type:`auto.ai.langgraph.error`}}),e}})}}),Object.defineProperty(e,r,{value:!0,enumerable:!1})}return e}function KAe(e){if(!e||e.length===0)return null;let t=[];for(let n of e)if(n&&typeof n==`object`){let e=n.tool_calls;e&&Array.isArray(e)&&t.push(...e)}return t.length>0?t:null}function qAe(e){let t=e,n=0,r=0,i=0;if(t.usage_metadata&&typeof t.usage_metadata==`object`){let e=t.usage_metadata;return typeof e.input_tokens==`number`&&(n=e.input_tokens),typeof e.output_tokens==`number`&&(r=e.output_tokens),typeof e.total_tokens==`number`&&(i=e.total_tokens),{inputTokens:n,outputTokens:r,totalTokens:i}}if(t.response_metadata&&typeof t.response_metadata==`object`){let e=t.response_metadata;if(e.tokenUsage&&typeof e.tokenUsage==`object`){let t=e.tokenUsage;typeof t.promptTokens==`number`&&(n=t.promptTokens),typeof t.completionTokens==`number`&&(r=t.completionTokens),typeof t.totalTokens==`number`&&(i=t.totalTokens)}}return{inputTokens:n,outputTokens:r,totalTokens:i}}function JAe(e,t){let n=t;if(n.response_metadata&&typeof n.response_metadata==`object`){let t=n.response_metadata;t.model_name&&typeof t.model_name==`string`&&e.setAttribute(jA,t.model_name),t.finish_reason&&typeof t.finish_reason==`string`&&e.setAttribute(AA,[t.finish_reason])}}function YAe(e){if(!e.builder?.nodes?.tools?.runnable?.tools)return null;let t=e.builder?.nodes?.tools?.runnable?.tools;return!t||!Array.isArray(t)||t.length===0?null:t.map(e=>({name:e.lc_kwargs?.name,description:e.lc_kwargs?.description,schema:e.lc_kwargs?.schema}))}function XAe(e,t,n){let r=n?.messages;if(!r||!Array.isArray(r))return;let i=t?.length??0,a=r.length>i?r.slice(i):[];if(a.length===0)return;let o=KAe(a);o&&e.setAttribute(HA,JSON.stringify(o));let s=Lj(a);e.setAttribute(BA,JSON.stringify(s));let c=0,l=0,u=0;for(let t of a){let n=qAe(t);c+=n.inputTokens,l+=n.outputTokens,u+=n.totalTokens,JAe(e,t)}c>0&&e.setAttribute(NA,c),l>0&&e.setAttribute(PA,l),u>0&&e.setAttribute(FA,u)}var Wj=!1,Gj=`__sentry_patched__`;function ZAe(e){let t={[qT]:Uj,[KT]:`gen_ai.create_agent`,[IA]:`create_agent`};return e&&(t[UA]=e),{op:`gen_ai.create_agent`,name:e?`create_agent ${e}`:`create_agent`,attributes:t}}function QAe(e,t){if(Object.prototype.hasOwnProperty.call(e,Gj))return e;let n=Vj(t),r=new Proxy(e,{apply(e,r,i){return Wj?Reflect.apply(e,r,i):wD(ZAe(),a=>{try{let o=Reflect.apply(e,r,i),s=i.length>0?i[0]:{};s?.name&&typeof s.name==`string`&&(a.setAttribute(UA,s.name),a.updateName(`create_agent ${s.name}`));let c=o.invoke;return c&&typeof c==`function`&&(o.invoke=Kj(c.bind(o),o,s,t,void 0,n)),o}catch(e){throw a.setStatus({code:2,message:`internal_error`}),cO(e,{mechanism:{handled:!1,type:`auto.ai.langgraph.error`}}),e}})}});return Object.defineProperty(r,Gj,{value:!0,enumerable:!1}),r}function Kj(e,t,n,r,i,a){return new Proxy(e,{apply(e,o,s){let c=i?.modelName??i?.model;return wD({op:`gen_ai.invoke_agent`,name:`invoke_agent`,attributes:{[qT]:Uj,[KT]:dke,[IA]:`invoke_agent`}},async i=>{try{let l=n?.name;l&&typeof l==`string`&&(i.setAttribute(cke,l),i.setAttribute(UA,l),i.updateName(`invoke_agent ${l}`)),c&&i.setAttribute(bA,c);let u=(s.length>1?s[1]:void 0)?.configurable?.thread_id;if(u&&typeof u==`string`&&i.setAttribute(WA,u),a){let e=s[1]??{};s[1]=e,e.metadata={...e.metadata??{},__sentry_langgraph__:!0,...typeof l==`string`?{lc_agent_name:l}:{}},e.callbacks=RAe(e.callbacks,a)}let d=YAe(t);d&&i.setAttribute(VA,JSON.stringify(d));let f=r.recordInputs,p=r.recordOutputs,m=s.length>0?s[0]?.messages??[]:[];if(m&&f){let{systemInstructions:e,filteredMessages:t}=_j(Lj(m));e&&i.setAttribute(zA,e);let n=pj(r.enableTruncation),a=Array.isArray(t)?t.length:0;i.setAttributes({[RA]:n?gj(t):nT(t),[LA]:a})}let h=await Reflect.apply(e,o,s);return p&&XAe(i,m??null,h),h}catch(e){throw i.setStatus({code:2,message:`internal_error`}),cO(e,{mechanism:{handled:!1,type:`auto.ai.langgraph.error`}}),e}})}})}function $Ae(e,t){if(Object.prototype.hasOwnProperty.call(e,Gj))return e;let n=fj(t),r=Vj(n),i=new Proxy(e,{apply(e,t,i){let a=UAe(i),o=WAe(i),s=i[0];s&&Array.isArray(s.tools)&&s.tools.length>0&&GAe(s.tools,n,o??void 0),Wj=!0;let c;try{c=Reflect.apply(e,t,i)}finally{Wj=!1}let l=c.invoke;if(l&&typeof l==`function`){let e={};o&&(e.name=o),c.invoke=Kj(l.bind(c),c,e,n,a,r)}return c}});return Object.defineProperty(i,Gj,{value:!0,enumerable:!1}),i}function eje(e,t){return e.compile=QAe(e.compile,fj(t)),e}function tje(e,t,n){let r=n.getOptions(),i=n.getDsn(),a=r.tunnel,o=fD(r._metadata),s={sent_at:new Date(Yw()).toISOString(),...qj(t)&&{trace:t},...o&&{sdk:o},...!!a&&i&&{dsn:fE(i)}},c=n.getDataCollectionOptions().userInfo?`auto`:`never`;return aD(s,[[{type:`span`,item_count:e.length,content_type:`application/vnd.sentry.items.span.v2+json`},{version:2,...jO()&&{ingest_settings:{infer_ip:c,infer_user_agent:c}},items:e}]])}function qj(e){return!!e.trace_id&&!!e.public_key}function Jj(e){let t=156;if(t+=e.name.length*2,t+=LT(e.attributes),e.links&&e.links.length>0){let n=e.links[0]?.attributes,r=100+(n?LT(n):0);t+=r*e.links.length}return t}var Yj=1e3,Xj=5e6,Zj=class{constructor(e,t){this._traceBuckets=new Map,this._client=e;let{maxSpanLimit:n,flushInterval:r,maxTraceWeightInBytes:i}=t??{};this._maxSpanLimit=n&&n>0&&n<=Yj?n:Yj,this._flushInterval=r&&r>0?r:5e3,this._maxTraceWeight=i&&i>0?i:Xj,this._client.on(`flush`,()=>{this.drain()}),this._client.on(`close`,()=>{this._traceBuckets.forEach(e=>{clearTimeout(e.timeout)}),this._traceBuckets.clear()})}add(e){let t=e.trace_id,n=this._traceBuckets.get(t);n||(n={spans:new Set,size:0,timeout:bO(setTimeout(()=>{this.flush(t)},this._flushInterval))},this._traceBuckets.set(t,n)),n.spans.add(e),n.size+=Jj(e),(n.spans.size>=this._maxSpanLimit||n.size>=this._maxTraceWeight)&&this.flush(t)}drain(){this._traceBuckets.size&&(W&&K.log(`Flushing span tree map with ${this._traceBuckets.size} traces`),this._traceBuckets.forEach((e,t)=>{this.flush(t)}))}flush(e){let t=this._traceBuckets.get(e);if(!t)return;if(!t.spans.size){this._removeTrace(e);return}let n=Array.from(t.spans),r=n[0]?._segmentSpan;if(!r){W&&K.warn(`No segment span reference found on span JSON, cannot compute DSC`),this._removeTrace(e);return}let i=rD(r),a=n.map(e=>{let{_segmentSpan:t,...n}=e;return n}),o=tje(a,i,this._client);W&&K.log(`Sending span envelope for trace ${e} with ${a.length} spans`),this._client.sendEnvelope(o).then(null,e=>{W&&K.error(`Error while sending streamed span envelope:`,e)}),this._removeTrace(e)}_removeTrace(e){let t=this._traceBuckets.get(e);t&&clearTimeout(t.timeout),this._traceBuckets.delete(e)}};function Qj(e){if(e!==void 0){if(e>=400&&e<500)return`warning`;if(e>=500)return`error`}}var $j=G;function eM(){return`history`in $j&&!!$j.history}function tM(){if(!(`fetch`in $j))return!1;try{return new Headers,new Request(`data:,`),new Response,!0}catch{return!1}}function nM(e){return e&&/^function\s+\w+\(\)\s+\{\s+\[native code\]\s+\}$/.test(e.toString())}function rM(){if(typeof EdgeRuntime==`string`)return!0;if(!tM())return!1;if(nM($j.fetch))return!0;let e=!1,t=$j.document;if(t&&typeof t.createElement==`function`)try{let n=t.createElement(`iframe`);n.hidden=!0,t.head.appendChild(n),n.contentWindow?.fetch&&(e=nM(n.contentWindow.fetch)),t.head.removeChild(n)}catch(e){W&&K.warn(`Could not create sandbox iframe for pure fetch check, bailing to window.fetch: `,e)}return e}function iM(){return`ReportingObserver`in $j}function aM(e,t){let n=`fetch`,r=yw(n,e);return bw(n,()=>sM(void 0,t)),r}function oM(e){let t=`fetch-body-resolved`,n=yw(t,e);return bw(t,()=>sM(lM)),n}function sM(e,t=!1){t&&!rM()||Bw(G,`fetch`,function(t){return function(...n){let r=Error(),{method:i,url:a}=fM(n),o={args:n,fetchData:{method:i,url:a},startTimestamp:_T()*1e3,virtualError:r,headers:pM(n)};return e||xw(`fetch`,{...o}),t.apply(G,n).then(async t=>(e?e(t):xw(`fetch`,{...o,endTimestamp:_T()*1e3,response:t}),t),e=>{xw(`fetch`,{...o,endTimestamp:_T()*1e3,error:e}),Dw(e)&&e.stack===void 0&&(e.stack=r.stack,Vw(e,`framesToPop`,1));let t=J()?.getOptions().enhanceFetchErrorMessages??`always`;if(t!==!1&&e instanceof TypeError&&(e.message===`Failed to fetch`||e.message===`Load failed`||e.message===`NetworkError when attempting to fetch resource.`))try{let n=new URL(o.fetchData.url).host;t===`always`?e.message=`${e.message} (${n})`:Vw(e,`__sentry_fetch_url_host__`,n)}catch{}throw e})}})}async function cM(e,t){if(e?.body){let n=e.body,r=n.getReader(),i=setTimeout(()=>{n.cancel().then(null,()=>{})},9e4),a=!0;for(;a;){let e;try{e=setTimeout(()=>{n.cancel().then(null,()=>{})},5e3);let{done:i}=await r.read();clearTimeout(e),i&&(t(),a=!1)}catch{a=!1}finally{clearTimeout(e)}}clearTimeout(i),r.releaseLock(),n.cancel().then(null,()=>{})}}function lM(e){let t;try{t=e.clone()}catch{return}cM(t,()=>{xw(`fetch-body-resolved`,{endTimestamp:_T()*1e3,response:e})})}function uM(e,t){return Fw(e)&&!!e[t]}function dM(e){return typeof e==`string`?e:e?uM(e,`url`)?e.url:e.toString?e.toString():``:``}function fM(e){if(e.length===0)return{method:`GET`,url:``};if(e.length===2){let[t,n]=e;return{url:dM(t),method:uM(n,`method`)?String(n.method).toUpperCase():zw(t)&&uM(t,`method`)?String(t.method).toUpperCase():`GET`}}let t=e[0];return{url:dM(t),method:uM(t,`method`)?String(t.method).toUpperCase():`GET`}}function pM(e){let[t,n]=e;try{if(typeof n==`object`&&n&&`headers`in n&&n.headers)return new Headers(n.headers);if(zw(t))return new Headers(t.headers)}catch{}}function mM(e,t=!1){return!(t||e&&!e.startsWith(`/`)&&!e.match(/^[A-Z]:/)&&!e.startsWith(`.`)&&!e.match(/^[a-zA-Z]([a-zA-Z0-9.\-+])*:\/\//))&&e!==void 0&&!e.includes(`node_modules/`)}function hM(e){let t=/^\s*[-]{4,}$/,n=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/,r=/at (?:async )?(.+?) \(data:(.*?),/;return i=>{let a=i.match(r);if(a)return{filename:`<data:${a[2]}>`,function:a[1]};let o=i.match(n);if(o){let t,n,r,i,a;if(o[1]){r=o[1];let e=r.lastIndexOf(`.`);if(r[e-1]===`.`&&e--,e>0){t=r.slice(0,e),n=r.slice(e+1);let i=t.indexOf(`.Module`);i>0&&(r=r.slice(i+1),t=t.slice(0,i))}i=void 0}n&&(i=t,a=n),n===`<anonymous>`&&(a=void 0,r=void 0),r===void 0&&(a||=`?`,r=i?`${i}.${a}`:a);let s=gw(o[2]),c=o[5]===`native`;!s&&o[5]&&!c&&(s=o[5]);let l=s?vM(s):void 0;return{filename:l??s,module:l&&e?.(l),function:r,lineno:_M(o[3]),colno:_M(o[4]),in_app:mM(s||``,c)}}if(i.match(t))return{filename:i}}}function gM(e){return[90,hM(e)]}function _M(e){return parseInt(e||``,10)||void 0}function vM(e){try{return decodeURI(e)}catch{return}}var yM=G;function bM(){try{return yM.document.location.href}catch{return``}}function xM(e,t=5){if(!yM.HTMLElement)return null;let n=e;for(let e=0;e<t;e++){if(!n)return null;if(n instanceof HTMLElement){if(n.dataset.sentryComponent)return n.dataset.sentryComponent;if(n.dataset.sentryElement)return n.dataset.sentryElement}n=n.parentNode}return null}var SM;(function(e){e[e.Classic=1]=`Classic`,e[e.Protocol=2]=`Protocol`,e[e.Both=3]=`Both`})(SM||={});function CM(e){return{createUrl:t=>`${e}://${t}/sentry_key`,urlMatches:function(e,t){return e.startsWith(this.createUrl(t))},createKey:t=>`${e}.${t}`,namespace:e}}var wM=`sentry-electron-renderer-id`;function TM(e){let t=CM(e);if(window.__SENTRY_IPC__?.[t.namespace])return window.__SENTRY_IPC__[t.namespace];{K.log(`IPC was not configured in preload script, falling back to custom protocol and fetch`);let e=window.__SENTRY_RENDERER_ID__=lT(),n={[wM]:e};return{sendRendererStart:()=>{fetch(t.createUrl(`start`),{method:`POST`,body:``,headers:n}).catch(()=>{console.error(`Sentry SDK failed to establish connection with the Electron main process.
|
|
520
520
|
- Ensure you have initialized the SDK in the main process
|
|
521
521
|
- If your renderers use custom sessions, be sure to set 'getSessions' in the main process options
|
|
522
|
-
- If you are bundling your main process code and using Electron < v5, you'll need to manually configure a preload script`)})},sendScope:e=>{fetch(t.createUrl(`scope`),{method:`POST`,body:e,headers:n}).catch(()=>{})},sendEnvelope:e=>{let r=typeof e==`string`?e:e.buffer instanceof ArrayBuffer?e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength):Uint8Array.from(e).buffer;fetch(t.createUrl(`envelope`),{method:`POST`,body:r,headers:n}).catch(()=>{})},sendStatus:e=>{fetch(t.createUrl(`status`),{method:`POST`,body:JSON.stringify({status:e}),headers:n}).catch(()=>{})},sendStructuredLog:e=>{fetch(t.createUrl(`structured-log`),{method:`POST`,body:JSON.stringify(e),headers:n}).catch(()=>{})},sendMetric:e=>{fetch(t.createUrl(`metric`),{method:`POST`,body:JSON.stringify(e),headers:n}).catch(()=>{})}}}}var
|
|
522
|
+
- If you are bundling your main process code and using Electron < v5, you'll need to manually configure a preload script`)})},sendScope:e=>{fetch(t.createUrl(`scope`),{method:`POST`,body:e,headers:n}).catch(()=>{})},sendEnvelope:e=>{let r=typeof e==`string`?e:e.buffer instanceof ArrayBuffer?e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength):Uint8Array.from(e).buffer;fetch(t.createUrl(`envelope`),{method:`POST`,body:r,headers:n}).catch(()=>{})},sendStatus:e=>{fetch(t.createUrl(`status`),{method:`POST`,body:JSON.stringify({status:e}),headers:n}).catch(()=>{})},sendStructuredLog:e=>{fetch(t.createUrl(`structured-log`),{method:`POST`,body:JSON.stringify(e),headers:n}).catch(()=>{})},sendMetric:e=>{fetch(t.createUrl(`metric`),{method:`POST`,body:JSON.stringify(e),headers:n}).catch(()=>{})}}}}var EM;function DM(e=J()){if(!e)throw Error(`Could not find client, make sure to call Sentry.init before getIPC`);EM||=new WeakMap;let t=EM.get(e);if(t)return t;let n=e.getOptions().ipcNamespace,r=TM(n);return EM.set(e,r),r.sendRendererStart(),r}var OM=e({debug:()=>jM,error:()=>PM,fatal:()=>FM,fmt:()=>CDe,info:()=>MM,trace:()=>AM,warn:()=>NM});function kM(e,t,n,r){let i=J();NO({level:e,message:t,attributes:n,severityNumber:r},q(),(e,t)=>DM(i).sendStructuredLog(t))}function AM(e,t){kM(`trace`,e,t)}function jM(e,t){kM(`debug`,e,t)}function MM(e,t){kM(`info`,e,t)}function NM(e,t){kM(`warn`,e,t)}function PM(e,t){kM(`error`,e,t)}function FM(e,t){kM(`fatal`,e,t)}var IM=e({count:()=>RM,distribution:()=>BM,gauge:()=>zM});function LM(e,t,n,r){let i=J();zO({type:e,name:t,value:n,unit:r?.unit,attributes:r?.attributes},{scope:r?.scope??q(),captureSerializedMetric:(e,t)=>DM(i).sendMetric(t)})}function RM(e,t=1,n){LM(`counter`,e,t,n)}function zM(e,t,n){LM(`gauge`,e,t,n)}function BM(e,t,n){LM(`distribution`,e,t,n)}var VM=G,HM=VM.document,UM=VM.navigator,WM=`Report a Bug`,GM=`Cancel`,KM=`Send Bug Report`,qM=`Confirm`,JM=`Report a Bug`,YM=`your.email@example.org`,XM=`Email`,ZM=`What's the bug? What did you expect?`,QM=`Description`,$M=`Your Name`,eN=`Name`,tN=`Thank you for your report!`,nN=`(required)`,rN=`Add a screenshot`,nje=`Remove screenshot`,rje=`Highlight`,ije=`Hide`,aje=`Remove`,iN=`Unable to submit feedback with empty message`,aN=`No client setup, cannot send feedback.`,oN=`Unable to determine if Feedback was correctly sent.`,sN=`Unable to send feedback. This could be because this domain is not in your list of allowed domains.`,cN=`Unable to send feedback. This could be because of network issues, or because you are using an ad-blocker.`,oje=`widget`,sje=`api`,cje=5e3,lje={ERROR_EMPTY_MESSAGE:iN,ERROR_NO_CLIENT:aN,ERROR_TIMEOUT:oN,ERROR_FORBIDDEN:sN,ERROR_GENERIC:cN};function lN(e,t){return t?.[e]??lje[e]}function uN(e,t){return Error(lN(e,t))}var dN=(e,t={includeReplay:!0})=>{let n=t.errorMessages;if(!e.message)throw uN(`ERROR_EMPTY_MESSAGE`,n);let r=J();if(!r)throw uN(`ERROR_NO_CLIENT`,n);e.tags&&Object.keys(e.tags).length&&q().setTags(e.tags);let i=pA({source:sje,url:bM(),...e},t);return new Promise((e,t)=>{let a=setTimeout(()=>{o(),t(lN(`ERROR_TIMEOUT`,n))},3e4),o=r.on(`afterSendEvent`,(r,s)=>{if(r.event_id===i)return clearTimeout(a),o(),s?.statusCode&&s.statusCode>=200&&s.statusCode<300?e(i):s?.statusCode===403?t(lN(`ERROR_FORBIDDEN`,n)):t(lN(`ERROR_GENERIC`,n))})})},fN=typeof __SENTRY_DEBUG__>`u`||__SENTRY_DEBUG__;function uje(){return!(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(UM.userAgent)||/Macintosh/i.test(UM.userAgent)&&UM.maxTouchPoints&&UM.maxTouchPoints>1||!isSecureContext)}function pN(e,t){return{...e,...t,tags:{...e.tags,...t.tags},onFormOpen:()=>{t.onFormOpen?.(),e.onFormOpen?.()},onFormClose:()=>{t.onFormClose?.(),e.onFormClose?.()},onSubmitSuccess:(n,r)=>{t.onSubmitSuccess?.(n,r),e.onSubmitSuccess?.(n,r)},onSubmitError:n=>{t.onSubmitError?.(n),e.onSubmitError?.(n)},onFormSubmitted:()=>{t.onFormSubmitted?.(),e.onFormSubmitted?.()},themeDark:{...e.themeDark,...t.themeDark},themeLight:{...e.themeLight,...t.themeLight}}}function dje(e){let t=HM.createElement(`style`);return t.textContent=`
|
|
523
523
|
.widget__actor {
|
|
524
524
|
position: fixed;
|
|
525
525
|
z-index: var(--z-index);
|
|
@@ -570,7 +570,7 @@ ${e.stack}`:`unknown`}}}}}var kOe=EO(((e={})=>{let t=e.limit??SOe;return{name:CO
|
|
|
570
570
|
display: none;
|
|
571
571
|
}
|
|
572
572
|
}
|
|
573
|
-
`,e&&t.setAttribute(`nonce`,e),t}function
|
|
573
|
+
`,e&&t.setAttribute(`nonce`,e),t}function mN(e,t){return Object.entries(t).forEach(([t,n])=>{e.setAttributeNS(null,t,n)}),e}var hN=20,fje=`http://www.w3.org/2000/svg`;function pje(){let e=e=>VM.document.createElementNS(fje,e),t=mN(e(`svg`),{width:`${hN}`,height:`${hN}`,viewBox:`0 0 ${hN} ${hN}`,fill:`var(--actor-color, var(--foreground))`}),n=mN(e(`g`),{clipPath:`url(#clip0_57_80)`}),r=mN(e(`path`),{"fill-rule":`evenodd`,"clip-rule":`evenodd`,d:`M15.6622 15H12.3997C12.2129 14.9959 12.031 14.9396 11.8747 14.8375L8.04965 12.2H7.49956V19.1C7.4875 19.3348 7.3888 19.5568 7.22256 19.723C7.05632 19.8892 6.83435 19.9879 6.59956 20H2.04956C1.80193 19.9968 1.56535 19.8969 1.39023 19.7218C1.21511 19.5467 1.1153 19.3101 1.11206 19.0625V12.2H0.949652C0.824431 12.2017 0.700142 12.1783 0.584123 12.1311C0.468104 12.084 0.362708 12.014 0.274155 11.9255C0.185602 11.8369 0.115689 11.7315 0.0685419 11.6155C0.0213952 11.4995 -0.00202913 11.3752 -0.00034808 11.25V3.75C-0.00900498 3.62067 0.0092504 3.49095 0.0532651 3.36904C0.0972798 3.24712 0.166097 3.13566 0.255372 3.04168C0.344646 2.94771 0.452437 2.87327 0.571937 2.82307C0.691437 2.77286 0.82005 2.74798 0.949652 2.75H8.04965L11.8747 0.1625C12.031 0.0603649 12.2129 0.00407221 12.3997 0H15.6622C15.9098 0.00323746 16.1464 0.103049 16.3215 0.278167C16.4966 0.453286 16.5964 0.689866 16.5997 0.9375V3.25269C17.3969 3.42959 18.1345 3.83026 18.7211 4.41679C19.5322 5.22788 19.9878 6.32796 19.9878 7.47502C19.9878 8.62209 19.5322 9.72217 18.7211 10.5333C18.1345 11.1198 17.3969 11.5205 16.5997 11.6974V14.0125C16.6047 14.1393 16.5842 14.2659 16.5395 14.3847C16.4948 14.5035 16.4268 14.6121 16.3394 14.7042C16.252 14.7962 16.147 14.8698 16.0307 14.9206C15.9144 14.9714 15.7891 14.9984 15.6622 15ZM1.89695 10.325H1.88715V4.625H8.33715C8.52423 4.62301 8.70666 4.56654 8.86215 4.4625L12.6872 1.875H14.7247V13.125H12.6872L8.86215 10.4875C8.70666 10.3835 8.52423 10.327 8.33715 10.325H2.20217C2.15205 10.3167 2.10102 10.3125 2.04956 10.3125C1.9981 10.3125 1.94708 10.3167 1.89695 10.325ZM2.98706 12.2V18.1625H5.66206V12.2H2.98706ZM16.5997 9.93612V5.01393C16.6536 5.02355 16.7072 5.03495 16.7605 5.04814C17.1202 5.13709 17.4556 5.30487 17.7425 5.53934C18.0293 5.77381 18.2605 6.06912 18.4192 6.40389C18.578 6.73866 18.6603 7.10452 18.6603 7.47502C18.6603 7.84552 18.578 8.21139 18.4192 8.54616C18.2605 8.88093 18.0293 9.17624 17.7425 9.41071C17.4556 9.64518 17.1202 9.81296 16.7605 9.90191C16.7072 9.91509 16.6536 9.9265 16.5997 9.93612Z`});t.appendChild(n).appendChild(r);let i=e(`defs`),a=mN(e(`clipPath`),{id:`clip0_57_80`}),o=mN(e(`rect`),{width:`${hN}`,height:`${hN}`,fill:`white`});return a.appendChild(o),i.appendChild(a),t.appendChild(i).appendChild(a).appendChild(o),t}function mje({triggerLabel:e,triggerAriaLabel:t,shadow:n,styleNonce:r}){let i=HM.createElement(`button`);if(i.type=`button`,i.className=`widget__actor`,i.ariaHidden=`false`,i.ariaLabel=t||e||WM,i.appendChild(pje()),e){let t=HM.createElement(`span`);t.appendChild(HM.createTextNode(e)),i.appendChild(t)}let a=dje(r);return{el:i,appendToDom(){n.appendChild(a),n.appendChild(i)},removeFromDom(){i.remove(),a.remove()},show(){i.ariaHidden=`false`},hide(){i.ariaHidden=`true`}}}var gN=`rgba(88, 74, 192, 1)`,hje={foreground:`#2b2233`,background:`#ffffff`,accentForeground:`white`,accentBackground:gN,successColor:`#268d75`,errorColor:`#df3338`,border:`1.5px solid rgba(41, 35, 47, 0.13)`,boxShadow:`0px 4px 24px 0px rgba(43, 34, 51, 0.12)`,outline:`1px auto var(--accent-background)`,interactiveFilter:`brightness(95%)`},_N={foreground:`#ebe6ef`,background:`#29232f`,accentForeground:`white`,accentBackground:gN,successColor:`#2da98c`,errorColor:`#f55459`,border:`1.5px solid rgba(235, 230, 239, 0.15)`,boxShadow:`0px 4px 24px 0px rgba(43, 34, 51, 0.12)`,outline:`1px auto var(--accent-background)`,interactiveFilter:`brightness(150%)`};function vN(e){return`
|
|
574
574
|
--foreground: ${e.foreground};
|
|
575
575
|
--background: ${e.background};
|
|
576
576
|
--accent-foreground: ${e.accentForeground};
|
|
@@ -581,7 +581,7 @@ ${e.stack}`:`unknown`}}}}}var kOe=EO(((e={})=>{let t=e.limit??SOe;return{name:CO
|
|
|
581
581
|
--box-shadow: ${e.boxShadow};
|
|
582
582
|
--outline: ${e.outline};
|
|
583
583
|
--interactive-filter: ${e.interactiveFilter};
|
|
584
|
-
`}function
|
|
584
|
+
`}function yN({colorScheme:e,themeDark:t,themeLight:n,styleNonce:r}){let i=HM.createElement(`style`);return i.textContent=`
|
|
585
585
|
:host {
|
|
586
586
|
--font-family: system-ui, 'Helvetica Neue', Arial, sans-serif;
|
|
587
587
|
--font-size: 14px;
|
|
@@ -596,7 +596,7 @@ ${e.stack}`:`unknown`}}}}}var kOe=EO(((e={})=>{let t=e.limit??SOe;return{name:CO
|
|
|
596
596
|
|
|
597
597
|
${e===`system`?``:`color-scheme: only ${e};`}
|
|
598
598
|
|
|
599
|
-
${
|
|
599
|
+
${vN(e===`dark`?{..._N,...t}:{...hje,...n})}
|
|
600
600
|
}
|
|
601
601
|
|
|
602
602
|
${e===`system`?`
|
|
@@ -604,10 +604,10 @@ ${e===`system`?`
|
|
|
604
604
|
:host {
|
|
605
605
|
color-scheme: only dark;
|
|
606
606
|
|
|
607
|
-
${
|
|
607
|
+
${vN({..._N,...t})}
|
|
608
608
|
}
|
|
609
609
|
}`:``}
|
|
610
|
-
`,r&&i.setAttribute(`nonce`,r),i}var xN=({lazyLoadIntegration:e,getModalIntegration:t,getScreenshotIntegration:n})=>(({id:r=`sentry-feedback`,autoInject:i=!0,showBranding:a=!0,isEmailRequired:o=!1,isNameRequired:s=!1,showEmail:c=!0,showName:l=!0,enableScreenshot:u=!0,useSentryUser:d={email:`email`,name:`username`},tags:f,styleNonce:p,scriptNonce:m,colorScheme:h=`system`,themeLight:g={},themeDark:_={},addScreenshotButtonLabel:v=iN,cancelButtonLabel:y=KM,confirmButtonLabel:b=JM,emailLabel:x=ZM,emailPlaceholder:S=XM,formTitle:C=YM,isRequiredLabel:w=rN,messageLabel:T=$M,messagePlaceholder:E=QM,nameLabel:ee=tN,namePlaceholder:te=eN,removeScreenshotButtonLabel:ne=tje,submitButtonLabel:re=qM,successMessageText:ie=nN,triggerLabel:ae=GM,triggerAriaLabel:oe=``,highlightToolText:D=nje,hideToolText:se=rje,removeHighlightText:ce=ije,errorEmptyMessageText:le=aN,errorNoClientText:ue=oN,errorTimeoutText:de=sN,errorForbiddenText:fe=cN,errorGenericText:pe=lN,onFormOpen:me,onFormClose:he,onSubmitSuccess:ge,onSubmitError:_e,onFormSubmitted:ve}={})=>{let ye={id:r,autoInject:i,showBranding:a,isEmailRequired:o,isNameRequired:s,showEmail:c,showName:l,enableScreenshot:u,useSentryUser:d,tags:f,styleNonce:p,scriptNonce:m,colorScheme:h,themeDark:_,themeLight:g,triggerLabel:ae,triggerAriaLabel:oe,cancelButtonLabel:y,submitButtonLabel:re,confirmButtonLabel:b,formTitle:C,emailLabel:x,emailPlaceholder:S,messageLabel:T,messagePlaceholder:E,nameLabel:ee,namePlaceholder:te,successMessageText:ie,isRequiredLabel:w,addScreenshotButtonLabel:v,removeScreenshotButtonLabel:ne,highlightToolText:D,hideToolText:se,removeHighlightText:ce,errorEmptyMessageText:le,errorNoClientText:ue,errorTimeoutText:de,errorForbiddenText:fe,errorGenericText:pe,onFormClose:he,onFormOpen:me,onSubmitError:_e,onSubmitSuccess:ge,onFormSubmitted:ve},be=null,xe=null,Se=[],Ce=e=>{if(!be){let t=UM.createElement(`div`);t.id=String(e.id),UM.body.appendChild(t),be=t.attachShadow({mode:`open`}),xe=bN(e),be.appendChild(xe)}return be},we=async r=>{let i=r.enableScreenshot&&lje(),a,o;try{a=(t?t():await e(`feedbackModalIntegration`,m))(),TO(a)}catch{throw pN&&K.error("[Feedback] Error when trying to load feedback integrations. Try using `feedbackSyncIntegration` in your `Sentry.init`."),Error(`[Feedback] Missing feedback modal integration!`)}try{let t=i?n?n():await e(`feedbackScreenshotIntegration`,m):void 0;t&&(o=t(),TO(o))}catch{pN&&K.error(`[Feedback] Missing feedback screenshot integration. Proceeding without screenshots.`)}let s={ERROR_EMPTY_MESSAGE:r.errorEmptyMessageText,ERROR_NO_CLIENT:r.errorNoClientText,ERROR_TIMEOUT:r.errorTimeoutText,ERROR_FORBIDDEN:r.errorForbiddenText,ERROR_GENERIC:r.errorGenericText},c=(e,t)=>fN(e,{includeReplay:!0,...t,errorMessages:s}),l=a.createDialog({options:{...r,onFormClose:()=>{l?.close(),r.onFormClose?.()},onFormSubmitted:()=>{l?.close(),r.onFormSubmitted?.()}},screenshotIntegration:o,sendFeedback:c,shadow:Ce(r)});return l},Te=(e,t={})=>{let n=mN(ye,t),r=typeof e==`string`?UM.querySelector(e):typeof e.addEventListener==`function`?e:null;if(!r)throw pN&&K.error(`[Feedback] Unable to attach to target element`),Error(`Unable to attach to target element`);let i=null,a=async()=>{i||=await we({...n,onFormSubmitted:()=>{i?.removeFromDom(),n.onFormSubmitted?.()}}),i.appendToDom(),i.open()};r.addEventListener(`click`,a);let o=()=>{Se=Se.filter(e=>e!==o),i?.removeFromDom(),i=null,r.removeEventListener(`click`,a)};return Se.push(o),o},Ee=(e={})=>{let t=mN(ye,e),n=Ce(t),r=pje({triggerLabel:t.triggerLabel,triggerAriaLabel:t.triggerAriaLabel,shadow:n,styleNonce:p});return Te(r.el,{...t,onFormOpen(){r.hide()},onFormClose(){r.show()},onFormSubmitted(){r.show()}}),r};return{name:`Feedback`,setupOnce(){!jO()||!ye.autoInject||(UM.readyState===`loading`?UM.addEventListener(`DOMContentLoaded`,()=>Ee().appendToDom()):Ee().appendToDom())},attachTo:Te,createWidget(e={}){let t=Ee(mN(ye,e));return t.appendToDom(),t},async createForm(e={}){return we(mN(ye,e))},setTheme(e){if(ye.colorScheme=e,be){let e=bN(ye);xe?be.replaceChild(e,xe):be.prepend(e),xe=e}},remove(){be&&(be.parentElement?.remove(),be=null,xe=null),Se.forEach(e=>e()),Se=[]}}});function hje(){return J()?.getIntegrationByName(`Feedback`)}var SN,CN,wN,TN,EN,DN,ON,kN={},AN=[],gje=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,jN=Array.isArray;function MN(e,t){for(var n in t)e[n]=t[n];return e}function NN(e){var t=e.parentNode;t&&t.removeChild(e)}function PN(e,t,n){var r,i,a,o={};for(a in t)a==`key`?r=t[a]:a==`ref`?i=t[a]:o[a]=t[a];if(arguments.length>2&&(o.children=arguments.length>3?SN.call(arguments,2):n),typeof e==`function`&&e.defaultProps!=null)for(a in e.defaultProps)o[a]===void 0&&(o[a]=e.defaultProps[a]);return FN(e,o,r,i,null)}function FN(e,t,n,r,i){var a={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:i??++wN,__i:-1,__u:0};return i==null&&CN.vnode!=null&&CN.vnode(a),a}function IN(e){return e.children}function LN(e,t){this.props=e,this.context=t}function RN(e,t){if(t==null)return e.__?RN(e.__,e.__i+1):null;for(var n;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null)return n.__e;return typeof e.type==`function`?RN(e):null}function _je(e,t,n){var r,i=e.__v,a=i.__e,o=e.__P;if(o)return(r=MN({},i)).__v=i.__v+1,CN.vnode&&CN.vnode(r),JN(o,r,i,e.__n,o.ownerSVGElement!==void 0,32&i.__u?[a]:null,t,a??RN(i),!!(32&i.__u),n),r.__.__k[r.__i]=r,r.__d=void 0,r.__e!=a&&zN(r),r}function zN(e){var t,n;if((e=e.__)!=null&&e.__c!=null){for(e.__e=e.__c.base=null,t=0;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null){e.__e=e.__c.base=n.__e;break}return zN(e)}}function BN(e){(!e.__d&&(e.__d=!0)&&TN.push(e)&&!VN.__r++||EN!==CN.debounceRendering)&&((EN=CN.debounceRendering)||DN)(VN)}function VN(){var e,t,n,r=[],i=[];for(TN.sort(ON);e=TN.shift();)e.__d&&(n=TN.length,t=_je(e,r,i)||t,n===0||TN.length>n?(YN(r,t,i),i.length=r.length=0,t=void 0,TN.sort(ON)):t&&CN.__c&&CN.__c(t,AN));t&&YN(r,t,i),VN.__r=0}function HN(e,t,n,r,i,a,o,s,c,l,u){var d,f,p,m,h,g=r&&r.__k||AN,_=t.length;for(n.__d=c,vje(n,t,g),c=n.__d,d=0;d<_;d++)(p=n.__k[d])!=null&&typeof p!=`boolean`&&typeof p!=`function`&&(f=p.__i===-1?kN:g[p.__i]||kN,p.__i=d,JN(e,p,f,i,a,o,s,c,l,u),m=p.__e,p.ref&&f.ref!=p.ref&&(f.ref&&XN(f.ref,null,p),u.push(p.ref,p.__c||m,p)),h==null&&m!=null&&(h=m),65536&p.__u||f.__k===p.__k?c=UN(p,c,e):typeof p.type==`function`&&p.__d!==void 0?c=p.__d:m&&(c=m.nextSibling),p.__d=void 0,p.__u&=-196609);n.__d=c,n.__e=h}function vje(e,t,n){var r,i,a,o,s,c=t.length,l=n.length,u=l,d=0;for(e.__k=[],r=0;r<c;r++)(i=e.__k[r]=(i=t[r])==null||typeof i==`boolean`||typeof i==`function`?null:typeof i==`string`||typeof i==`number`||typeof i==`bigint`||i.constructor==String?FN(null,i,null,null,i):jN(i)?FN(IN,{children:i},null,null,null):i.constructor===void 0&&i.__b>0?FN(i.type,i.props,i.key,i.ref?i.ref:null,i.__v):i)==null?(a=n[r])&&a.key==null&&a.__e&&(a.__e==e.__d&&(e.__d=RN(a)),ZN(a,a,!1),n[r]=null,u--):(i.__=e,i.__b=e.__b+1,s=yje(i,n,o=r+d,u),i.__i=s,a=null,s!==-1&&(u--,(a=n[s])&&(a.__u|=131072)),a==null||a.__v===null?(s==-1&&d--,typeof i.type!=`function`&&(i.__u|=65536)):s!==o&&(s===o+1?d++:s>o?u>c-o?d+=s-o:d--:d=s<o&&s==o-1?s-o:0,s!==r+d&&(i.__u|=65536)));if(u)for(r=0;r<l;r++)(a=n[r])!=null&&!(131072&a.__u)&&(a.__e==e.__d&&(e.__d=RN(a)),ZN(a,a))}function UN(e,t,n){var r,i;if(typeof e.type==`function`){for(r=e.__k,i=0;r&&i<r.length;i++)r[i]&&(r[i].__=e,t=UN(r[i],t,n));return t}e.__e!=t&&(n.insertBefore(e.__e,t||null),t=e.__e);do t&&=t.nextSibling;while(t!=null&&t.nodeType===8);return t}function yje(e,t,n,r){var i=e.key,a=e.type,o=n-1,s=n+1,c=t[n];if(c===null||c&&i==c.key&&a===c.type)return n;if(r>+(c!=null&&!(131072&c.__u)))for(;o>=0||s<t.length;){if(o>=0){if((c=t[o])&&!(131072&c.__u)&&i==c.key&&a===c.type)return o;o--}if(s<t.length){if((c=t[s])&&!(131072&c.__u)&&i==c.key&&a===c.type)return s;s++}}return-1}function WN(e,t,n){t[0]===`-`?e.setProperty(t,n??``):e[t]=n==null?``:typeof n!=`number`||gje.test(t)?n:n+`px`}function GN(e,t,n,r,i){var a;n:if(t===`style`)if(typeof n==`string`)e.style.cssText=n;else{if(typeof r==`string`&&(e.style.cssText=r=``),r)for(t in r)n&&t in n||WN(e.style,t,``);if(n)for(t in n)r&&n[t]===r[t]||WN(e.style,t,n[t])}else if(t[0]===`o`&&t[1]===`n`)a=t!==(t=t.replace(/(PointerCapture)$|Capture$/i,`$1`)),t=t.toLowerCase()in e?t.toLowerCase().slice(2):t.slice(2),e.l||={},e.l[t+a]=n,n?r?n.u=r.u:(n.u=Date.now(),e.addEventListener(t,a?qN:KN,a)):e.removeEventListener(t,a?qN:KN,a);else{if(i)t=t.replace(/xlink(H|:h)/,`h`).replace(/sName$/,`s`);else if(t!==`width`&&t!==`height`&&t!==`href`&&t!==`list`&&t!==`form`&&t!==`tabIndex`&&t!==`download`&&t!==`rowSpan`&&t!==`colSpan`&&t!==`role`&&t in e)try{e[t]=n??``;break n}catch{}typeof n==`function`||(n==null||!1===n&&t[4]!==`-`?e.removeAttribute(t):e.setAttribute(t,n))}}function KN(e){if(this.l){var t=this.l[e.type+!1];if(e.t){if(e.t<=t.u)return}else e.t=Date.now();return t(CN.event?CN.event(e):e)}}function qN(e){if(this.l)return this.l[e.type+!0](CN.event?CN.event(e):e)}function JN(e,t,n,r,i,a,o,s,c,l){var u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T=t.type;if(t.constructor!==void 0)return null;128&n.__u&&(c=!!(32&n.__u),a=[s=t.__e=n.__e]),(u=CN.__b)&&u(t);n:if(typeof T==`function`)try{if(_=t.props,v=(u=T.contextType)&&r[u.__c],y=u?v?v.props.value:u.__:r,n.__c?g=(d=t.__c=n.__c).__=d.__E:(`prototype`in T&&T.prototype.render?t.__c=d=new T(_,y):(t.__c=d=new LN(_,y),d.constructor=T,d.render=xje),v&&v.sub(d),d.props=_,d.state||(d.state={}),d.context=y,d.__n=r,f=d.__d=!0,d.__h=[],d._sb=[]),d.__s??(d.__s=d.state),T.getDerivedStateFromProps!=null&&(d.__s==d.state&&(d.__s=MN({},d.__s)),MN(d.__s,T.getDerivedStateFromProps(_,d.__s))),p=d.props,m=d.state,d.__v=t,f)T.getDerivedStateFromProps==null&&d.componentWillMount!=null&&d.componentWillMount(),d.componentDidMount!=null&&d.__h.push(d.componentDidMount);else{if(T.getDerivedStateFromProps==null&&_!==p&&d.componentWillReceiveProps!=null&&d.componentWillReceiveProps(_,y),!d.__e&&(d.shouldComponentUpdate!=null&&!1===d.shouldComponentUpdate(_,d.__s,y)||t.__v===n.__v)){for(t.__v!==n.__v&&(d.props=_,d.state=d.__s,d.__d=!1),t.__e=n.__e,t.__k=n.__k,t.__k.forEach(function(e){e&&(e.__=t)}),b=0;b<d._sb.length;b++)d.__h.push(d._sb[b]);d._sb=[],d.__h.length&&o.push(d);break n}d.componentWillUpdate!=null&&d.componentWillUpdate(_,d.__s,y),d.componentDidUpdate!=null&&d.__h.push(function(){d.componentDidUpdate(p,m,h)})}if(d.context=y,d.props=_,d.__P=e,d.__e=!1,x=CN.__r,S=0,`prototype`in T&&T.prototype.render){for(d.state=d.__s,d.__d=!1,x&&x(t),u=d.render(d.props,d.state,d.context),C=0;C<d._sb.length;C++)d.__h.push(d._sb[C]);d._sb=[]}else do d.__d=!1,x&&x(t),u=d.render(d.props,d.state,d.context),d.state=d.__s;while(d.__d&&++S<25);d.state=d.__s,d.getChildContext!=null&&(r=MN(MN({},r),d.getChildContext())),f||d.getSnapshotBeforeUpdate==null||(h=d.getSnapshotBeforeUpdate(p,m)),HN(e,jN(w=u!=null&&u.type===IN&&u.key==null?u.props.children:u)?w:[w],t,n,r,i,a,o,s,c,l),d.base=t.__e,t.__u&=-161,d.__h.length&&o.push(d),g&&(d.__E=d.__=null)}catch(e){t.__v=null,c||a!=null?(t.__e=s,t.__u|=c?160:32,a[a.indexOf(s)]=null):(t.__e=n.__e,t.__k=n.__k),CN.__e(e,t,n)}else a==null&&t.__v===n.__v?(t.__k=n.__k,t.__e=n.__e):t.__e=bje(n.__e,t,n,r,i,a,o,c,l);(u=CN.diffed)&&u(t)}function YN(e,t,n){for(var r=0;r<n.length;r++)XN(n[r],n[++r],n[++r]);CN.__c&&CN.__c(t,e),e.some(function(t){try{e=t.__h,t.__h=[],e.some(function(e){e.call(t)})}catch(e){CN.__e(e,t.__v)}})}function bje(e,t,n,r,i,a,o,s,c){var l,u,d,f,p,m,h,g=n.props,_=t.props,v=t.type;if(v===`svg`&&(i=!0),a!=null){for(l=0;l<a.length;l++)if((p=a[l])&&`setAttribute`in p==!!v&&(v?p.localName===v:p.nodeType===3)){e=p,a[l]=null;break}}if(e==null){if(v===null)return document.createTextNode(_);e=i?document.createElementNS(`http://www.w3.org/2000/svg`,v):document.createElement(v,_.is&&_),a=null,s=!1}if(v===null)g===_||s&&e.data===_||(e.data=_);else{if(a&&=SN.call(e.childNodes),g=n.props||kN,!s&&a!=null)for(g={},l=0;l<e.attributes.length;l++)g[(p=e.attributes[l]).name]=p.value;for(l in g)p=g[l],l==`children`||(l==`dangerouslySetInnerHTML`?d=p:l===`key`||l in _||GN(e,l,null,p,i));for(l in _)p=_[l],l==`children`?f=p:l==`dangerouslySetInnerHTML`?u=p:l==`value`?m=p:l==`checked`?h=p:l===`key`||s&&typeof p!=`function`||g[l]===p||GN(e,l,p,g[l],i);if(u)s||d&&(u.__html===d.__html||u.__html===e.innerHTML)||(e.innerHTML=u.__html),t.__k=[];else if(d&&(e.innerHTML=``),HN(e,jN(f)?f:[f],t,n,r,i&&v!==`foreignObject`,a,o,a?a[0]:n.__k&&RN(n,0),s,c),a!=null)for(l=a.length;l--;)a[l]!=null&&NN(a[l]);s||(l=`value`,m!==void 0&&(m!==e[l]||v===`progress`&&!m||v===`option`&&m!==g[l])&&GN(e,l,m,g[l],!1),l=`checked`,h!==void 0&&h!==e[l]&&GN(e,l,h,g[l],!1))}return e}function XN(e,t,n){try{typeof e==`function`?e(t):e.current=t}catch(e){CN.__e(e,n)}}function ZN(e,t,n){var r,i;if(CN.unmount&&CN.unmount(e),(r=e.ref)&&(r.current&&r.current!==e.__e||XN(r,null,t)),(r=e.__c)!=null){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(e){CN.__e(e,t)}r.base=r.__P=null,e.__c=void 0}if(r=e.__k)for(i=0;i<r.length;i++)r[i]&&ZN(r[i],t,n||typeof e.type!=`function`);n||e.__e==null||NN(e.__e),e.__=e.__e=e.__d=void 0}function xje(e,t,n){return this.constructor(e,n)}function Sje(e,t,n){var r,i,a,o;CN.__&&CN.__(e,t),i=(r=!1)?null:t.__k,a=[],o=[],JN(t,e=t.__k=PN(IN,null,[e]),i||kN,kN,t.ownerSVGElement!==void 0,i?null:t.firstChild?SN.call(t.childNodes):null,a,i?i.__e:t.firstChild,r,o),e.__d=void 0,YN(a,e,o)}SN=AN.slice,CN={__e:function(e,t,n,r){for(var i,a,o;t=t.__;)if((i=t.__c)&&!i.__)try{if((a=i.constructor)&&a.getDerivedStateFromError!=null&&(i.setState(a.getDerivedStateFromError(e)),o=i.__d),i.componentDidCatch!=null&&(i.componentDidCatch(e,r||{}),o=i.__d),o)return i.__E=i}catch(t){e=t}throw e}},wN=0,LN.prototype.setState=function(e,t){var n=this.__s!=null&&this.__s!==this.state?this.__s:this.__s=MN({},this.state);typeof e==`function`&&(e=e(MN({},n),this.props)),e&&MN(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),BN(this))},LN.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),BN(this))},LN.prototype.render=IN,TN=[],DN=typeof Promise==`function`?Promise.prototype.then.bind(Promise.resolve()):setTimeout,ON=function(e,t){return e.__v.__b-t.__v.__b},VN.__r=0;var QN,$N,eP,tP,nP=0,rP=[],iP=[],aP=CN,oP=aP.__b,sP=aP.__r,cP=aP.diffed,lP=aP.__c,uP=aP.unmount,dP=aP.__;function fP(e,t){aP.__h&&aP.__h($N,e,nP||t),nP=0;var n=$N.__H||($N.__H={__:[],__h:[]});return e>=n.__.length&&n.__.push({__V:iP}),n.__[e]}function pP(e){return nP=1,mP(SP,e)}function mP(e,t,n){var r=fP(QN++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):SP(void 0,t),function(e){var t=r.__N?r.__N[0]:r.__[0],n=r.t(t,e);t!==n&&(r.__N=[n,r.__[1]],r.__c.setState({}))}],r.__c=$N,!$N.u)){var i=function(e,t,n){if(!r.__c.__H)return!0;var i=r.__c.__H.__.filter(function(e){return!!e.__c});if(i.every(function(e){return!e.__N}))return!a||a.call(this,e,t,n);var o=!1;return i.forEach(function(e){if(e.__N){var t=e.__[0];e.__=e.__N,e.__N=void 0,t!==e.__[0]&&(o=!0)}}),!(!o&&r.__c.props===e)&&(!a||a.call(this,e,t,n))};$N.u=!0;var a=$N.shouldComponentUpdate,o=$N.componentWillUpdate;$N.componentWillUpdate=function(e,t,n){if(this.__e){var r=a;a=void 0,i(e,t,n),a=r}o&&o.call(this,e,t,n)},$N.shouldComponentUpdate=i}return r.__N||r.__}function Cje(e,t){var n=fP(QN++,3);!aP.__s&&xP(n.__H,t)&&(n.__=e,n.i=t,$N.__H.__h.push(n))}function hP(e,t){var n=fP(QN++,4);!aP.__s&&xP(n.__H,t)&&(n.__=e,n.i=t,$N.__h.push(n))}function wje(e){return nP=5,gP(function(){return{current:e}},[])}function Tje(e,t,n){nP=6,hP(function(){return typeof e==`function`?(e(t()),function(){return e(null)}):e?(e.current=t(),function(){return e.current=null}):void 0},n==null?n:n.concat(e))}function gP(e,t){var n=fP(QN++,7);return xP(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function _P(e,t){return nP=8,gP(function(){return e},t)}function Eje(e){var t=$N.context[e.__c],n=fP(QN++,9);return n.c=e,t?(n.__??(n.__=!0,t.sub($N)),t.props.value):e.__}function Dje(e,t){aP.useDebugValue&&aP.useDebugValue(t?t(e):e)}function Oje(e){var t=fP(QN++,10),n=pP();return t.__=e,$N.componentDidCatch||($N.componentDidCatch=function(e,r){t.__&&t.__(e,r),n[1](e)}),[n[0],function(){n[1](void 0)}]}function kje(){var e=fP(QN++,11);if(!e.__){for(var t=$N.__v;t!==null&&!t.__m&&t.__!==null;)t=t.__;var n=t.__m||(t.__m=[0,0]);e.__=`P`+n[0]+`-`+n[1]++}return e.__}function Aje(){for(var e;e=rP.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(yP),e.__H.__h.forEach(bP),e.__H.__h=[]}catch(t){e.__H.__h=[],aP.__e(t,e.__v)}}aP.__b=function(e){$N=null,oP&&oP(e)},aP.__=function(e,t){t.__k&&t.__k.__m&&(e.__m=t.__k.__m),dP&&dP(e,t)},aP.__r=function(e){sP&&sP(e),QN=0;var t=($N=e.__c).__H;t&&(eP===$N?(t.__h=[],$N.__h=[],t.__.forEach(function(e){e.__N&&(e.__=e.__N),e.__V=iP,e.__N=e.i=void 0})):(t.__h.forEach(yP),t.__h.forEach(bP),t.__h=[],QN=0)),eP=$N},aP.diffed=function(e){cP&&cP(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(rP.push(t)!==1&&tP===aP.requestAnimationFrame||((tP=aP.requestAnimationFrame)||jje)(Aje)),t.__H.__.forEach(function(e){e.i&&(e.__H=e.i),e.__V!==iP&&(e.__=e.__V),e.i=void 0,e.__V=iP})),eP=$N=null},aP.__c=function(e,t){t.some(function(e){try{e.__h.forEach(yP),e.__h=e.__h.filter(function(e){return!e.__||bP(e)})}catch(n){t.some(function(e){e.__h&&=[]}),t=[],aP.__e(n,e.__v)}}),lP&&lP(e,t)},aP.unmount=function(e){uP&&uP(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(e){try{yP(e)}catch(e){t=e}}),n.__H=void 0,t&&aP.__e(t,n.__v))};var vP=typeof requestAnimationFrame==`function`;function jje(e){var t,n=function(){clearTimeout(r),vP&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,100);vP&&(t=requestAnimationFrame(n))}function yP(e){var t=$N,n=e.__c;typeof n==`function`&&(e.__c=void 0,n()),$N=t}function bP(e){var t=$N;e.__c=e.__(),$N=t}function xP(e,t){return!e||e.length!==t.length||t.some(function(t,n){return t!==e[n]})}function SP(e,t){return typeof t==`function`?t(e):t}var Mje=Object.defineProperty({__proto__:null,useCallback:_P,useContext:Eje,useDebugValue:Dje,useEffect:Cje,useErrorBoundary:Oje,useId:kje,useImperativeHandle:Tje,useLayoutEffect:hP,useMemo:gP,useReducer:mP,useRef:wje,useState:pP},Symbol.toStringTag,{value:`Module`}),Nje=`http://www.w3.org/2000/svg`;function Pje(){let e=e=>UM.createElementNS(Nje,e),t=hN(e(`svg`),{width:`32`,height:`30`,viewBox:`0 0 72 66`,fill:`inherit`}),n=hN(e(`path`),{transform:`translate(11, 11)`,d:`M29,2.26a4.67,4.67,0,0,0-8,0L14.42,13.53A32.21,32.21,0,0,1,32.17,40.19H27.55A27.68,27.68,0,0,0,12.09,17.47L6,28a15.92,15.92,0,0,1,9.23,12.17H4.62A.76.76,0,0,1,4,39.06l2.94-5a10.74,10.74,0,0,0-3.36-1.9l-2.91,5a4.54,4.54,0,0,0,1.69,6.24A4.66,4.66,0,0,0,4.62,44H19.15a19.4,19.4,0,0,0-8-17.31l2.31-4A23.87,23.87,0,0,1,23.76,44H36.07a35.88,35.88,0,0,0-16.41-31.8l4.67-8a.77.77,0,0,1,1.05-.27c.53.29,20.29,34.77,20.66,35.17a.76.76,0,0,1-.68,1.13H40.6q.09,1.91,0,3.81h4.78A4.59,4.59,0,0,0,50,39.43a4.49,4.49,0,0,0-.62-2.28Z`});return t.appendChild(n),t}function Fje({options:e}){let t=gP(()=>({__html:Pje().outerHTML}),[]);return PN(`h2`,{class:`dialog__header`},PN(`span`,{class:`dialog__title`},e.formTitle),e.showBranding?PN(`a`,{class:`brand-link`,target:`_blank`,href:`https://sentry.io/welcome/`,title:`Powered by Sentry`,rel:`noopener noreferrer`,dangerouslySetInnerHTML:t}):null)}function Ije(e,t){let n=[];return t.isNameRequired&&!e.name&&n.push(t.nameLabel),t.isEmailRequired&&!e.email&&n.push(t.emailLabel),e.message||n.push(t.messageLabel),n}function CP(e,t){let n=e.get(t);return typeof n==`string`?n.trim():``}function Lje({options:e,defaultEmail:t,defaultName:n,onFormClose:r,onSubmit:i,onSubmitSuccess:a,onSubmitError:o,showEmail:s,showName:c,screenshotInput:l}){let{tags:u,addScreenshotButtonLabel:d,removeScreenshotButtonLabel:f,cancelButtonLabel:p,emailLabel:m,emailPlaceholder:h,isEmailRequired:g,isNameRequired:_,messageLabel:v,messagePlaceholder:y,nameLabel:b,namePlaceholder:x,submitButtonLabel:S,isRequiredLabel:C}=e,[w,T]=pP(!1),[E,ee]=pP(null),[te,ne]=pP(!1),re=l?.input,[ie,ae]=pP(null),oe=_P(e=>{ae(e),ne(!1)},[]),D=_P(e=>{let t=Ije(e,{emailLabel:m,isEmailRequired:g,isNameRequired:_,messageLabel:v,nameLabel:b});return t.length>0?ee(`Please enter in the following required fields: ${t.join(`, `)}`):ee(null),t.length===0},[m,g,_,v,b]);return PN(`form`,{class:`form`,onSubmit:_P(async e=>{T(!0);try{if(e.preventDefault(),!(e.target instanceof HTMLFormElement))return;let t=new FormData(e.target),n=await(l&&te?l.value():void 0),r={name:CP(t,`name`),email:CP(t,`email`),message:CP(t,`message`),attachments:n?[n]:void 0};if(!D(r))return;try{a(r,await i({name:r.name,email:r.email,message:r.message,source:aje,tags:u},{attachments:r.attachments}))}catch(e){pN&&K.error(e);let t=e instanceof Error?e:Error(String(e));ee(t.message),o(t)}}finally{T(!1)}},[l&&te,a,o])},re&&te?PN(re,{onError:oe}):null,PN(`fieldset`,{class:`form__right`,"data-sentry-feedback":!0,disabled:w},PN(`div`,{class:`form__top`},E?PN(`div`,{class:`form__error-container`},E):null,c?PN(`label`,{for:`name`,class:`form__label`},PN(wP,{label:b,isRequiredLabel:C,isRequired:_}),PN(`input`,{class:`form__input`,defaultValue:n,id:`name`,name:`name`,placeholder:x,required:_,type:`text`})):PN(`input`,{"aria-hidden":!0,value:n,name:`name`,type:`hidden`}),s?PN(`label`,{for:`email`,class:`form__label`},PN(wP,{label:m,isRequiredLabel:C,isRequired:g}),PN(`input`,{class:`form__input`,defaultValue:t,id:`email`,name:`email`,placeholder:h,required:g,type:`email`})):PN(`input`,{"aria-hidden":!0,value:t,name:`email`,type:`hidden`}),PN(`label`,{for:`message`,class:`form__label`},PN(wP,{label:v,isRequiredLabel:C,isRequired:!0}),PN(`textarea`,{autoFocus:!0,class:`form__input form__input--textarea`,id:`message`,name:`message`,placeholder:y,required:!0,rows:5})),re?PN(`label`,{for:`screenshot`,class:`form__label`},PN(`button`,{class:`btn btn--default`,disabled:w,type:`button`,onClick:()=>{ae(null),ne(e=>!e)}},te?f:d),ie?PN(`div`,{class:`form__error-container`},ie.message):null):null),PN(`div`,{class:`btn-group`},PN(`button`,{class:`btn btn--primary`,disabled:w,type:`submit`},S),PN(`button`,{class:`btn btn--default`,disabled:w,type:`button`,onClick:r},p))))}function wP({label:e,isRequired:t,isRequiredLabel:n}){return PN(`span`,{class:`form__label__text`},e,t&&PN(`span`,{class:`form__label__text--required`},n))}var TP=16,EP=17,Rje=`http://www.w3.org/2000/svg`;function zje(){let e=e=>HM.document.createElementNS(Rje,e),t=hN(e(`svg`),{width:`${TP}`,height:`${EP}`,viewBox:`0 0 ${TP} ${EP}`,fill:`inherit`}),n=hN(e(`g`),{clipPath:`url(#clip0_57_156)`}),r=hN(e(`path`),{"fill-rule":`evenodd`,"clip-rule":`evenodd`,d:`M3.55544 15.1518C4.87103 16.0308 6.41775 16.5 8 16.5C10.1217 16.5 12.1566 15.6571 13.6569 14.1569C15.1571 12.6566 16 10.6217 16 8.5C16 6.91775 15.5308 5.37103 14.6518 4.05544C13.7727 2.73985 12.5233 1.71447 11.0615 1.10897C9.59966 0.503466 7.99113 0.34504 6.43928 0.653721C4.88743 0.962403 3.46197 1.72433 2.34315 2.84315C1.22433 3.96197 0.462403 5.38743 0.153721 6.93928C-0.15496 8.49113 0.00346625 10.0997 0.608967 11.5615C1.21447 13.0233 2.23985 14.2727 3.55544 15.1518ZM4.40546 3.1204C5.46945 2.40946 6.72036 2.03 8 2.03C9.71595 2.03 11.3616 2.71166 12.575 3.92502C13.7883 5.13838 14.47 6.78405 14.47 8.5C14.47 9.77965 14.0905 11.0306 13.3796 12.0945C12.6687 13.1585 11.6582 13.9878 10.476 14.4775C9.29373 14.9672 7.99283 15.0953 6.73777 14.8457C5.48271 14.596 4.32987 13.9798 3.42502 13.075C2.52018 12.1701 1.90397 11.0173 1.65432 9.76224C1.40468 8.50718 1.5328 7.20628 2.0225 6.02404C2.5122 4.8418 3.34148 3.83133 4.40546 3.1204Z`}),i=hN(e(`path`),{d:`M6.68775 12.4297C6.78586 12.4745 6.89218 12.4984 7 12.5C7.11275 12.4955 7.22315 12.4664 7.32337 12.4145C7.4236 12.3627 7.51121 12.2894 7.58 12.2L12 5.63999C12.0848 5.47724 12.1071 5.28902 12.0625 5.11098C12.0178 4.93294 11.9095 4.77744 11.7579 4.67392C11.6064 4.57041 11.4221 4.52608 11.24 4.54931C11.0579 4.57254 10.8907 4.66173 10.77 4.79999L6.88 10.57L5.13 8.56999C5.06508 8.49566 4.98613 8.43488 4.89768 8.39111C4.80922 8.34735 4.713 8.32148 4.61453 8.31498C4.51605 8.30847 4.41727 8.32147 4.32382 8.35322C4.23038 8.38497 4.14413 8.43484 4.07 8.49999C3.92511 8.63217 3.83692 8.81523 3.82387 9.01092C3.81083 9.2066 3.87393 9.39976 4 9.54999L6.43 12.24C6.50187 12.3204 6.58964 12.385 6.68775 12.4297Z`});t.appendChild(n).append(i,r);let a=e(`defs`),o=hN(e(`clipPath`),{id:`clip0_57_156`}),s=hN(e(`rect`),{width:`${TP}`,height:`${TP}`,fill:`white`,transform:`translate(0 0.5)`});return o.appendChild(s),a.appendChild(o),t.appendChild(a).appendChild(o).appendChild(s),t}function Bje({open:e,onFormSubmitted:t,...n}){let r=n.options,i=gP(()=>({__html:zje().outerHTML}),[]),[a,o]=pP(null),s=_P(()=>{a&&(clearTimeout(a),o(null)),t()},[a]),c=_P((e,r)=>{n.onSubmitSuccess(e,r),o(setTimeout(()=>{t(),o(null)},sje))},[t]);return PN(IN,null,a?PN(`div`,{class:`success__position`,onClick:s},PN(`div`,{class:`success__content`},r.successMessageText,PN(`span`,{class:`success__icon`,dangerouslySetInnerHTML:i}))):PN(`dialog`,{class:`dialog`,onClick:r.onFormClose,open:e},PN(`div`,{class:`dialog__position`},PN(`div`,{class:`dialog__content`,onClick:e=>{e.stopPropagation()}},PN(Fje,{options:r}),PN(Lje,{...n,onSubmitSuccess:c})))))}var Vje=`
|
|
610
|
+
`,r&&i.setAttribute(`nonce`,r),i}var bN=({lazyLoadIntegration:e,getModalIntegration:t,getScreenshotIntegration:n})=>(({id:r=`sentry-feedback`,autoInject:i=!0,showBranding:a=!0,isEmailRequired:o=!1,isNameRequired:s=!1,showEmail:c=!0,showName:l=!0,enableScreenshot:u=!0,useSentryUser:d={email:`email`,name:`username`},tags:f,styleNonce:p,scriptNonce:m,colorScheme:h=`system`,themeLight:g={},themeDark:_={},addScreenshotButtonLabel:v=rN,cancelButtonLabel:y=GM,confirmButtonLabel:b=qM,emailLabel:x=XM,emailPlaceholder:S=YM,formTitle:C=JM,isRequiredLabel:w=nN,messageLabel:T=QM,messagePlaceholder:E=ZM,nameLabel:ee=eN,namePlaceholder:te=$M,removeScreenshotButtonLabel:ne=nje,submitButtonLabel:re=KM,successMessageText:ie=tN,triggerLabel:ae=WM,triggerAriaLabel:oe=``,highlightToolText:D=rje,hideToolText:se=ije,removeHighlightText:ce=aje,errorEmptyMessageText:le=iN,errorNoClientText:ue=aN,errorTimeoutText:de=oN,errorForbiddenText:fe=sN,errorGenericText:pe=cN,onFormOpen:me,onFormClose:he,onSubmitSuccess:ge,onSubmitError:_e,onFormSubmitted:ve}={})=>{let ye={id:r,autoInject:i,showBranding:a,isEmailRequired:o,isNameRequired:s,showEmail:c,showName:l,enableScreenshot:u,useSentryUser:d,tags:f,styleNonce:p,scriptNonce:m,colorScheme:h,themeDark:_,themeLight:g,triggerLabel:ae,triggerAriaLabel:oe,cancelButtonLabel:y,submitButtonLabel:re,confirmButtonLabel:b,formTitle:C,emailLabel:x,emailPlaceholder:S,messageLabel:T,messagePlaceholder:E,nameLabel:ee,namePlaceholder:te,successMessageText:ie,isRequiredLabel:w,addScreenshotButtonLabel:v,removeScreenshotButtonLabel:ne,highlightToolText:D,hideToolText:se,removeHighlightText:ce,errorEmptyMessageText:le,errorNoClientText:ue,errorTimeoutText:de,errorForbiddenText:fe,errorGenericText:pe,onFormClose:he,onFormOpen:me,onSubmitError:_e,onSubmitSuccess:ge,onFormSubmitted:ve},be=null,xe=null,Se=[],Ce=e=>{if(!be){let t=HM.createElement(`div`);t.id=String(e.id),HM.body.appendChild(t),be=t.attachShadow({mode:`open`}),xe=yN(e),be.appendChild(xe)}return be},we=async r=>{let i=r.enableScreenshot&&uje(),a,o;try{a=(t?t():await e(`feedbackModalIntegration`,m))(),TO(a)}catch{throw fN&&K.error("[Feedback] Error when trying to load feedback integrations. Try using `feedbackSyncIntegration` in your `Sentry.init`."),Error(`[Feedback] Missing feedback modal integration!`)}try{let t=i?n?n():await e(`feedbackScreenshotIntegration`,m):void 0;t&&(o=t(),TO(o))}catch{fN&&K.error(`[Feedback] Missing feedback screenshot integration. Proceeding without screenshots.`)}let s={ERROR_EMPTY_MESSAGE:r.errorEmptyMessageText,ERROR_NO_CLIENT:r.errorNoClientText,ERROR_TIMEOUT:r.errorTimeoutText,ERROR_FORBIDDEN:r.errorForbiddenText,ERROR_GENERIC:r.errorGenericText},c=(e,t)=>dN(e,{includeReplay:!0,...t,errorMessages:s}),l=a.createDialog({options:{...r,onFormClose:()=>{l?.close(),r.onFormClose?.()},onFormSubmitted:()=>{l?.close(),r.onFormSubmitted?.()}},screenshotIntegration:o,sendFeedback:c,shadow:Ce(r)});return l},Te=(e,t={})=>{let n=pN(ye,t),r=typeof e==`string`?HM.querySelector(e):typeof e.addEventListener==`function`?e:null;if(!r)throw fN&&K.error(`[Feedback] Unable to attach to target element`),Error(`Unable to attach to target element`);let i=null,a=async()=>{i||=await we({...n,onFormSubmitted:()=>{i?.removeFromDom(),n.onFormSubmitted?.()}}),i.appendToDom(),i.open()};r.addEventListener(`click`,a);let o=()=>{Se=Se.filter(e=>e!==o),i?.removeFromDom(),i=null,r.removeEventListener(`click`,a)};return Se.push(o),o},Ee=(e={})=>{let t=pN(ye,e),n=Ce(t),r=mje({triggerLabel:t.triggerLabel,triggerAriaLabel:t.triggerAriaLabel,shadow:n,styleNonce:p});return Te(r.el,{...t,onFormOpen(){r.hide()},onFormClose(){r.show()},onFormSubmitted(){r.show()}}),r};return{name:`Feedback`,setupOnce(){!jO()||!ye.autoInject||(HM.readyState===`loading`?HM.addEventListener(`DOMContentLoaded`,()=>Ee().appendToDom()):Ee().appendToDom())},attachTo:Te,createWidget(e={}){let t=Ee(pN(ye,e));return t.appendToDom(),t},async createForm(e={}){return we(pN(ye,e))},setTheme(e){if(ye.colorScheme=e,be){let e=yN(ye);xe?be.replaceChild(e,xe):be.prepend(e),xe=e}},remove(){be&&(be.parentElement?.remove(),be=null,xe=null),Se.forEach(e=>e()),Se=[]}}});function gje(){return J()?.getIntegrationByName(`Feedback`)}var xN,SN,CN,wN,TN,EN,DN,ON={},kN=[],_je=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,AN=Array.isArray;function jN(e,t){for(var n in t)e[n]=t[n];return e}function MN(e){var t=e.parentNode;t&&t.removeChild(e)}function NN(e,t,n){var r,i,a,o={};for(a in t)a==`key`?r=t[a]:a==`ref`?i=t[a]:o[a]=t[a];if(arguments.length>2&&(o.children=arguments.length>3?xN.call(arguments,2):n),typeof e==`function`&&e.defaultProps!=null)for(a in e.defaultProps)o[a]===void 0&&(o[a]=e.defaultProps[a]);return PN(e,o,r,i,null)}function PN(e,t,n,r,i){var a={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:i??++CN,__i:-1,__u:0};return i==null&&SN.vnode!=null&&SN.vnode(a),a}function FN(e){return e.children}function IN(e,t){this.props=e,this.context=t}function LN(e,t){if(t==null)return e.__?LN(e.__,e.__i+1):null;for(var n;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null)return n.__e;return typeof e.type==`function`?LN(e):null}function vje(e,t,n){var r,i=e.__v,a=i.__e,o=e.__P;if(o)return(r=jN({},i)).__v=i.__v+1,SN.vnode&&SN.vnode(r),qN(o,r,i,e.__n,o.ownerSVGElement!==void 0,32&i.__u?[a]:null,t,a??LN(i),!!(32&i.__u),n),r.__.__k[r.__i]=r,r.__d=void 0,r.__e!=a&&RN(r),r}function RN(e){var t,n;if((e=e.__)!=null&&e.__c!=null){for(e.__e=e.__c.base=null,t=0;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null){e.__e=e.__c.base=n.__e;break}return RN(e)}}function zN(e){(!e.__d&&(e.__d=!0)&&wN.push(e)&&!BN.__r++||TN!==SN.debounceRendering)&&((TN=SN.debounceRendering)||EN)(BN)}function BN(){var e,t,n,r=[],i=[];for(wN.sort(DN);e=wN.shift();)e.__d&&(n=wN.length,t=vje(e,r,i)||t,n===0||wN.length>n?(JN(r,t,i),i.length=r.length=0,t=void 0,wN.sort(DN)):t&&SN.__c&&SN.__c(t,kN));t&&JN(r,t,i),BN.__r=0}function VN(e,t,n,r,i,a,o,s,c,l,u){var d,f,p,m,h,g=r&&r.__k||kN,_=t.length;for(n.__d=c,yje(n,t,g),c=n.__d,d=0;d<_;d++)(p=n.__k[d])!=null&&typeof p!=`boolean`&&typeof p!=`function`&&(f=p.__i===-1?ON:g[p.__i]||ON,p.__i=d,qN(e,p,f,i,a,o,s,c,l,u),m=p.__e,p.ref&&f.ref!=p.ref&&(f.ref&&YN(f.ref,null,p),u.push(p.ref,p.__c||m,p)),h==null&&m!=null&&(h=m),65536&p.__u||f.__k===p.__k?c=HN(p,c,e):typeof p.type==`function`&&p.__d!==void 0?c=p.__d:m&&(c=m.nextSibling),p.__d=void 0,p.__u&=-196609);n.__d=c,n.__e=h}function yje(e,t,n){var r,i,a,o,s,c=t.length,l=n.length,u=l,d=0;for(e.__k=[],r=0;r<c;r++)(i=e.__k[r]=(i=t[r])==null||typeof i==`boolean`||typeof i==`function`?null:typeof i==`string`||typeof i==`number`||typeof i==`bigint`||i.constructor==String?PN(null,i,null,null,i):AN(i)?PN(FN,{children:i},null,null,null):i.constructor===void 0&&i.__b>0?PN(i.type,i.props,i.key,i.ref?i.ref:null,i.__v):i)==null?(a=n[r])&&a.key==null&&a.__e&&(a.__e==e.__d&&(e.__d=LN(a)),XN(a,a,!1),n[r]=null,u--):(i.__=e,i.__b=e.__b+1,s=bje(i,n,o=r+d,u),i.__i=s,a=null,s!==-1&&(u--,(a=n[s])&&(a.__u|=131072)),a==null||a.__v===null?(s==-1&&d--,typeof i.type!=`function`&&(i.__u|=65536)):s!==o&&(s===o+1?d++:s>o?u>c-o?d+=s-o:d--:d=s<o&&s==o-1?s-o:0,s!==r+d&&(i.__u|=65536)));if(u)for(r=0;r<l;r++)(a=n[r])!=null&&!(131072&a.__u)&&(a.__e==e.__d&&(e.__d=LN(a)),XN(a,a))}function HN(e,t,n){var r,i;if(typeof e.type==`function`){for(r=e.__k,i=0;r&&i<r.length;i++)r[i]&&(r[i].__=e,t=HN(r[i],t,n));return t}e.__e!=t&&(n.insertBefore(e.__e,t||null),t=e.__e);do t&&=t.nextSibling;while(t!=null&&t.nodeType===8);return t}function bje(e,t,n,r){var i=e.key,a=e.type,o=n-1,s=n+1,c=t[n];if(c===null||c&&i==c.key&&a===c.type)return n;if(r>+(c!=null&&!(131072&c.__u)))for(;o>=0||s<t.length;){if(o>=0){if((c=t[o])&&!(131072&c.__u)&&i==c.key&&a===c.type)return o;o--}if(s<t.length){if((c=t[s])&&!(131072&c.__u)&&i==c.key&&a===c.type)return s;s++}}return-1}function UN(e,t,n){t[0]===`-`?e.setProperty(t,n??``):e[t]=n==null?``:typeof n!=`number`||_je.test(t)?n:n+`px`}function WN(e,t,n,r,i){var a;n:if(t===`style`)if(typeof n==`string`)e.style.cssText=n;else{if(typeof r==`string`&&(e.style.cssText=r=``),r)for(t in r)n&&t in n||UN(e.style,t,``);if(n)for(t in n)r&&n[t]===r[t]||UN(e.style,t,n[t])}else if(t[0]===`o`&&t[1]===`n`)a=t!==(t=t.replace(/(PointerCapture)$|Capture$/i,`$1`)),t=t.toLowerCase()in e?t.toLowerCase().slice(2):t.slice(2),e.l||={},e.l[t+a]=n,n?r?n.u=r.u:(n.u=Date.now(),e.addEventListener(t,a?KN:GN,a)):e.removeEventListener(t,a?KN:GN,a);else{if(i)t=t.replace(/xlink(H|:h)/,`h`).replace(/sName$/,`s`);else if(t!==`width`&&t!==`height`&&t!==`href`&&t!==`list`&&t!==`form`&&t!==`tabIndex`&&t!==`download`&&t!==`rowSpan`&&t!==`colSpan`&&t!==`role`&&t in e)try{e[t]=n??``;break n}catch{}typeof n==`function`||(n==null||!1===n&&t[4]!==`-`?e.removeAttribute(t):e.setAttribute(t,n))}}function GN(e){if(this.l){var t=this.l[e.type+!1];if(e.t){if(e.t<=t.u)return}else e.t=Date.now();return t(SN.event?SN.event(e):e)}}function KN(e){if(this.l)return this.l[e.type+!0](SN.event?SN.event(e):e)}function qN(e,t,n,r,i,a,o,s,c,l){var u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T=t.type;if(t.constructor!==void 0)return null;128&n.__u&&(c=!!(32&n.__u),a=[s=t.__e=n.__e]),(u=SN.__b)&&u(t);n:if(typeof T==`function`)try{if(_=t.props,v=(u=T.contextType)&&r[u.__c],y=u?v?v.props.value:u.__:r,n.__c?g=(d=t.__c=n.__c).__=d.__E:(`prototype`in T&&T.prototype.render?t.__c=d=new T(_,y):(t.__c=d=new IN(_,y),d.constructor=T,d.render=Sje),v&&v.sub(d),d.props=_,d.state||(d.state={}),d.context=y,d.__n=r,f=d.__d=!0,d.__h=[],d._sb=[]),d.__s??(d.__s=d.state),T.getDerivedStateFromProps!=null&&(d.__s==d.state&&(d.__s=jN({},d.__s)),jN(d.__s,T.getDerivedStateFromProps(_,d.__s))),p=d.props,m=d.state,d.__v=t,f)T.getDerivedStateFromProps==null&&d.componentWillMount!=null&&d.componentWillMount(),d.componentDidMount!=null&&d.__h.push(d.componentDidMount);else{if(T.getDerivedStateFromProps==null&&_!==p&&d.componentWillReceiveProps!=null&&d.componentWillReceiveProps(_,y),!d.__e&&(d.shouldComponentUpdate!=null&&!1===d.shouldComponentUpdate(_,d.__s,y)||t.__v===n.__v)){for(t.__v!==n.__v&&(d.props=_,d.state=d.__s,d.__d=!1),t.__e=n.__e,t.__k=n.__k,t.__k.forEach(function(e){e&&(e.__=t)}),b=0;b<d._sb.length;b++)d.__h.push(d._sb[b]);d._sb=[],d.__h.length&&o.push(d);break n}d.componentWillUpdate!=null&&d.componentWillUpdate(_,d.__s,y),d.componentDidUpdate!=null&&d.__h.push(function(){d.componentDidUpdate(p,m,h)})}if(d.context=y,d.props=_,d.__P=e,d.__e=!1,x=SN.__r,S=0,`prototype`in T&&T.prototype.render){for(d.state=d.__s,d.__d=!1,x&&x(t),u=d.render(d.props,d.state,d.context),C=0;C<d._sb.length;C++)d.__h.push(d._sb[C]);d._sb=[]}else do d.__d=!1,x&&x(t),u=d.render(d.props,d.state,d.context),d.state=d.__s;while(d.__d&&++S<25);d.state=d.__s,d.getChildContext!=null&&(r=jN(jN({},r),d.getChildContext())),f||d.getSnapshotBeforeUpdate==null||(h=d.getSnapshotBeforeUpdate(p,m)),VN(e,AN(w=u!=null&&u.type===FN&&u.key==null?u.props.children:u)?w:[w],t,n,r,i,a,o,s,c,l),d.base=t.__e,t.__u&=-161,d.__h.length&&o.push(d),g&&(d.__E=d.__=null)}catch(e){t.__v=null,c||a!=null?(t.__e=s,t.__u|=c?160:32,a[a.indexOf(s)]=null):(t.__e=n.__e,t.__k=n.__k),SN.__e(e,t,n)}else a==null&&t.__v===n.__v?(t.__k=n.__k,t.__e=n.__e):t.__e=xje(n.__e,t,n,r,i,a,o,c,l);(u=SN.diffed)&&u(t)}function JN(e,t,n){for(var r=0;r<n.length;r++)YN(n[r],n[++r],n[++r]);SN.__c&&SN.__c(t,e),e.some(function(t){try{e=t.__h,t.__h=[],e.some(function(e){e.call(t)})}catch(e){SN.__e(e,t.__v)}})}function xje(e,t,n,r,i,a,o,s,c){var l,u,d,f,p,m,h,g=n.props,_=t.props,v=t.type;if(v===`svg`&&(i=!0),a!=null){for(l=0;l<a.length;l++)if((p=a[l])&&`setAttribute`in p==!!v&&(v?p.localName===v:p.nodeType===3)){e=p,a[l]=null;break}}if(e==null){if(v===null)return document.createTextNode(_);e=i?document.createElementNS(`http://www.w3.org/2000/svg`,v):document.createElement(v,_.is&&_),a=null,s=!1}if(v===null)g===_||s&&e.data===_||(e.data=_);else{if(a&&=xN.call(e.childNodes),g=n.props||ON,!s&&a!=null)for(g={},l=0;l<e.attributes.length;l++)g[(p=e.attributes[l]).name]=p.value;for(l in g)p=g[l],l==`children`||(l==`dangerouslySetInnerHTML`?d=p:l===`key`||l in _||WN(e,l,null,p,i));for(l in _)p=_[l],l==`children`?f=p:l==`dangerouslySetInnerHTML`?u=p:l==`value`?m=p:l==`checked`?h=p:l===`key`||s&&typeof p!=`function`||g[l]===p||WN(e,l,p,g[l],i);if(u)s||d&&(u.__html===d.__html||u.__html===e.innerHTML)||(e.innerHTML=u.__html),t.__k=[];else if(d&&(e.innerHTML=``),VN(e,AN(f)?f:[f],t,n,r,i&&v!==`foreignObject`,a,o,a?a[0]:n.__k&&LN(n,0),s,c),a!=null)for(l=a.length;l--;)a[l]!=null&&MN(a[l]);s||(l=`value`,m!==void 0&&(m!==e[l]||v===`progress`&&!m||v===`option`&&m!==g[l])&&WN(e,l,m,g[l],!1),l=`checked`,h!==void 0&&h!==e[l]&&WN(e,l,h,g[l],!1))}return e}function YN(e,t,n){try{typeof e==`function`?e(t):e.current=t}catch(e){SN.__e(e,n)}}function XN(e,t,n){var r,i;if(SN.unmount&&SN.unmount(e),(r=e.ref)&&(r.current&&r.current!==e.__e||YN(r,null,t)),(r=e.__c)!=null){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(e){SN.__e(e,t)}r.base=r.__P=null,e.__c=void 0}if(r=e.__k)for(i=0;i<r.length;i++)r[i]&&XN(r[i],t,n||typeof e.type!=`function`);n||e.__e==null||MN(e.__e),e.__=e.__e=e.__d=void 0}function Sje(e,t,n){return this.constructor(e,n)}function Cje(e,t,n){var r,i,a,o;SN.__&&SN.__(e,t),i=(r=!1)?null:t.__k,a=[],o=[],qN(t,e=t.__k=NN(FN,null,[e]),i||ON,ON,t.ownerSVGElement!==void 0,i?null:t.firstChild?xN.call(t.childNodes):null,a,i?i.__e:t.firstChild,r,o),e.__d=void 0,JN(a,e,o)}xN=kN.slice,SN={__e:function(e,t,n,r){for(var i,a,o;t=t.__;)if((i=t.__c)&&!i.__)try{if((a=i.constructor)&&a.getDerivedStateFromError!=null&&(i.setState(a.getDerivedStateFromError(e)),o=i.__d),i.componentDidCatch!=null&&(i.componentDidCatch(e,r||{}),o=i.__d),o)return i.__E=i}catch(t){e=t}throw e}},CN=0,IN.prototype.setState=function(e,t){var n=this.__s!=null&&this.__s!==this.state?this.__s:this.__s=jN({},this.state);typeof e==`function`&&(e=e(jN({},n),this.props)),e&&jN(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),zN(this))},IN.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),zN(this))},IN.prototype.render=FN,wN=[],EN=typeof Promise==`function`?Promise.prototype.then.bind(Promise.resolve()):setTimeout,DN=function(e,t){return e.__v.__b-t.__v.__b},BN.__r=0;var ZN,QN,$N,eP,tP=0,nP=[],rP=[],iP=SN,aP=iP.__b,oP=iP.__r,sP=iP.diffed,cP=iP.__c,lP=iP.unmount,uP=iP.__;function dP(e,t){iP.__h&&iP.__h(QN,e,tP||t),tP=0;var n=QN.__H||(QN.__H={__:[],__h:[]});return e>=n.__.length&&n.__.push({__V:rP}),n.__[e]}function fP(e){return tP=1,pP(xP,e)}function pP(e,t,n){var r=dP(ZN++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):xP(void 0,t),function(e){var t=r.__N?r.__N[0]:r.__[0],n=r.t(t,e);t!==n&&(r.__N=[n,r.__[1]],r.__c.setState({}))}],r.__c=QN,!QN.u)){var i=function(e,t,n){if(!r.__c.__H)return!0;var i=r.__c.__H.__.filter(function(e){return!!e.__c});if(i.every(function(e){return!e.__N}))return!a||a.call(this,e,t,n);var o=!1;return i.forEach(function(e){if(e.__N){var t=e.__[0];e.__=e.__N,e.__N=void 0,t!==e.__[0]&&(o=!0)}}),!(!o&&r.__c.props===e)&&(!a||a.call(this,e,t,n))};QN.u=!0;var a=QN.shouldComponentUpdate,o=QN.componentWillUpdate;QN.componentWillUpdate=function(e,t,n){if(this.__e){var r=a;a=void 0,i(e,t,n),a=r}o&&o.call(this,e,t,n)},QN.shouldComponentUpdate=i}return r.__N||r.__}function wje(e,t){var n=dP(ZN++,3);!iP.__s&&bP(n.__H,t)&&(n.__=e,n.i=t,QN.__H.__h.push(n))}function mP(e,t){var n=dP(ZN++,4);!iP.__s&&bP(n.__H,t)&&(n.__=e,n.i=t,QN.__h.push(n))}function Tje(e){return tP=5,hP(function(){return{current:e}},[])}function Eje(e,t,n){tP=6,mP(function(){return typeof e==`function`?(e(t()),function(){return e(null)}):e?(e.current=t(),function(){return e.current=null}):void 0},n==null?n:n.concat(e))}function hP(e,t){var n=dP(ZN++,7);return bP(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function gP(e,t){return tP=8,hP(function(){return e},t)}function Dje(e){var t=QN.context[e.__c],n=dP(ZN++,9);return n.c=e,t?(n.__??(n.__=!0,t.sub(QN)),t.props.value):e.__}function Oje(e,t){iP.useDebugValue&&iP.useDebugValue(t?t(e):e)}function kje(e){var t=dP(ZN++,10),n=fP();return t.__=e,QN.componentDidCatch||(QN.componentDidCatch=function(e,r){t.__&&t.__(e,r),n[1](e)}),[n[0],function(){n[1](void 0)}]}function Aje(){var e=dP(ZN++,11);if(!e.__){for(var t=QN.__v;t!==null&&!t.__m&&t.__!==null;)t=t.__;var n=t.__m||(t.__m=[0,0]);e.__=`P`+n[0]+`-`+n[1]++}return e.__}function jje(){for(var e;e=nP.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(vP),e.__H.__h.forEach(yP),e.__H.__h=[]}catch(t){e.__H.__h=[],iP.__e(t,e.__v)}}iP.__b=function(e){QN=null,aP&&aP(e)},iP.__=function(e,t){t.__k&&t.__k.__m&&(e.__m=t.__k.__m),uP&&uP(e,t)},iP.__r=function(e){oP&&oP(e),ZN=0;var t=(QN=e.__c).__H;t&&($N===QN?(t.__h=[],QN.__h=[],t.__.forEach(function(e){e.__N&&(e.__=e.__N),e.__V=rP,e.__N=e.i=void 0})):(t.__h.forEach(vP),t.__h.forEach(yP),t.__h=[],ZN=0)),$N=QN},iP.diffed=function(e){sP&&sP(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(nP.push(t)!==1&&eP===iP.requestAnimationFrame||((eP=iP.requestAnimationFrame)||Mje)(jje)),t.__H.__.forEach(function(e){e.i&&(e.__H=e.i),e.__V!==rP&&(e.__=e.__V),e.i=void 0,e.__V=rP})),$N=QN=null},iP.__c=function(e,t){t.some(function(e){try{e.__h.forEach(vP),e.__h=e.__h.filter(function(e){return!e.__||yP(e)})}catch(n){t.some(function(e){e.__h&&=[]}),t=[],iP.__e(n,e.__v)}}),cP&&cP(e,t)},iP.unmount=function(e){lP&&lP(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(e){try{vP(e)}catch(e){t=e}}),n.__H=void 0,t&&iP.__e(t,n.__v))};var _P=typeof requestAnimationFrame==`function`;function Mje(e){var t,n=function(){clearTimeout(r),_P&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,100);_P&&(t=requestAnimationFrame(n))}function vP(e){var t=QN,n=e.__c;typeof n==`function`&&(e.__c=void 0,n()),QN=t}function yP(e){var t=QN;e.__c=e.__(),QN=t}function bP(e,t){return!e||e.length!==t.length||t.some(function(t,n){return t!==e[n]})}function xP(e,t){return typeof t==`function`?t(e):t}var Nje=Object.defineProperty({__proto__:null,useCallback:gP,useContext:Dje,useDebugValue:Oje,useEffect:wje,useErrorBoundary:kje,useId:Aje,useImperativeHandle:Eje,useLayoutEffect:mP,useMemo:hP,useReducer:pP,useRef:Tje,useState:fP},Symbol.toStringTag,{value:`Module`}),Pje=`http://www.w3.org/2000/svg`;function Fje(){let e=e=>HM.createElementNS(Pje,e),t=mN(e(`svg`),{width:`32`,height:`30`,viewBox:`0 0 72 66`,fill:`inherit`}),n=mN(e(`path`),{transform:`translate(11, 11)`,d:`M29,2.26a4.67,4.67,0,0,0-8,0L14.42,13.53A32.21,32.21,0,0,1,32.17,40.19H27.55A27.68,27.68,0,0,0,12.09,17.47L6,28a15.92,15.92,0,0,1,9.23,12.17H4.62A.76.76,0,0,1,4,39.06l2.94-5a10.74,10.74,0,0,0-3.36-1.9l-2.91,5a4.54,4.54,0,0,0,1.69,6.24A4.66,4.66,0,0,0,4.62,44H19.15a19.4,19.4,0,0,0-8-17.31l2.31-4A23.87,23.87,0,0,1,23.76,44H36.07a35.88,35.88,0,0,0-16.41-31.8l4.67-8a.77.77,0,0,1,1.05-.27c.53.29,20.29,34.77,20.66,35.17a.76.76,0,0,1-.68,1.13H40.6q.09,1.91,0,3.81h4.78A4.59,4.59,0,0,0,50,39.43a4.49,4.49,0,0,0-.62-2.28Z`});return t.appendChild(n),t}function Ije({options:e}){let t=hP(()=>({__html:Fje().outerHTML}),[]);return NN(`h2`,{class:`dialog__header`},NN(`span`,{class:`dialog__title`},e.formTitle),e.showBranding?NN(`a`,{class:`brand-link`,target:`_blank`,href:`https://sentry.io/welcome/`,title:`Powered by Sentry`,rel:`noopener noreferrer`,dangerouslySetInnerHTML:t}):null)}function Lje(e,t){let n=[];return t.isNameRequired&&!e.name&&n.push(t.nameLabel),t.isEmailRequired&&!e.email&&n.push(t.emailLabel),e.message||n.push(t.messageLabel),n}function SP(e,t){let n=e.get(t);return typeof n==`string`?n.trim():``}function Rje({options:e,defaultEmail:t,defaultName:n,onFormClose:r,onSubmit:i,onSubmitSuccess:a,onSubmitError:o,showEmail:s,showName:c,screenshotInput:l}){let{tags:u,addScreenshotButtonLabel:d,removeScreenshotButtonLabel:f,cancelButtonLabel:p,emailLabel:m,emailPlaceholder:h,isEmailRequired:g,isNameRequired:_,messageLabel:v,messagePlaceholder:y,nameLabel:b,namePlaceholder:x,submitButtonLabel:S,isRequiredLabel:C}=e,[w,T]=fP(!1),[E,ee]=fP(null),[te,ne]=fP(!1),re=l?.input,[ie,ae]=fP(null),oe=gP(e=>{ae(e),ne(!1)},[]),D=gP(e=>{let t=Lje(e,{emailLabel:m,isEmailRequired:g,isNameRequired:_,messageLabel:v,nameLabel:b});return t.length>0?ee(`Please enter in the following required fields: ${t.join(`, `)}`):ee(null),t.length===0},[m,g,_,v,b]);return NN(`form`,{class:`form`,onSubmit:gP(async e=>{T(!0);try{if(e.preventDefault(),!(e.target instanceof HTMLFormElement))return;let t=new FormData(e.target),n=await(l&&te?l.value():void 0),r={name:SP(t,`name`),email:SP(t,`email`),message:SP(t,`message`),attachments:n?[n]:void 0};if(!D(r))return;try{a(r,await i({name:r.name,email:r.email,message:r.message,source:oje,tags:u},{attachments:r.attachments}))}catch(e){fN&&K.error(e);let t=e instanceof Error?e:Error(String(e));ee(t.message),o(t)}}finally{T(!1)}},[l&&te,a,o])},re&&te?NN(re,{onError:oe}):null,NN(`fieldset`,{class:`form__right`,"data-sentry-feedback":!0,disabled:w},NN(`div`,{class:`form__top`},E?NN(`div`,{class:`form__error-container`},E):null,c?NN(`label`,{for:`name`,class:`form__label`},NN(CP,{label:b,isRequiredLabel:C,isRequired:_}),NN(`input`,{class:`form__input`,defaultValue:n,id:`name`,name:`name`,placeholder:x,required:_,type:`text`})):NN(`input`,{"aria-hidden":!0,value:n,name:`name`,type:`hidden`}),s?NN(`label`,{for:`email`,class:`form__label`},NN(CP,{label:m,isRequiredLabel:C,isRequired:g}),NN(`input`,{class:`form__input`,defaultValue:t,id:`email`,name:`email`,placeholder:h,required:g,type:`email`})):NN(`input`,{"aria-hidden":!0,value:t,name:`email`,type:`hidden`}),NN(`label`,{for:`message`,class:`form__label`},NN(CP,{label:v,isRequiredLabel:C,isRequired:!0}),NN(`textarea`,{autoFocus:!0,class:`form__input form__input--textarea`,id:`message`,name:`message`,placeholder:y,required:!0,rows:5})),re?NN(`label`,{for:`screenshot`,class:`form__label`},NN(`button`,{class:`btn btn--default`,disabled:w,type:`button`,onClick:()=>{ae(null),ne(e=>!e)}},te?f:d),ie?NN(`div`,{class:`form__error-container`},ie.message):null):null),NN(`div`,{class:`btn-group`},NN(`button`,{class:`btn btn--primary`,disabled:w,type:`submit`},S),NN(`button`,{class:`btn btn--default`,disabled:w,type:`button`,onClick:r},p))))}function CP({label:e,isRequired:t,isRequiredLabel:n}){return NN(`span`,{class:`form__label__text`},e,t&&NN(`span`,{class:`form__label__text--required`},n))}var wP=16,TP=17,zje=`http://www.w3.org/2000/svg`;function Bje(){let e=e=>VM.document.createElementNS(zje,e),t=mN(e(`svg`),{width:`${wP}`,height:`${TP}`,viewBox:`0 0 ${wP} ${TP}`,fill:`inherit`}),n=mN(e(`g`),{clipPath:`url(#clip0_57_156)`}),r=mN(e(`path`),{"fill-rule":`evenodd`,"clip-rule":`evenodd`,d:`M3.55544 15.1518C4.87103 16.0308 6.41775 16.5 8 16.5C10.1217 16.5 12.1566 15.6571 13.6569 14.1569C15.1571 12.6566 16 10.6217 16 8.5C16 6.91775 15.5308 5.37103 14.6518 4.05544C13.7727 2.73985 12.5233 1.71447 11.0615 1.10897C9.59966 0.503466 7.99113 0.34504 6.43928 0.653721C4.88743 0.962403 3.46197 1.72433 2.34315 2.84315C1.22433 3.96197 0.462403 5.38743 0.153721 6.93928C-0.15496 8.49113 0.00346625 10.0997 0.608967 11.5615C1.21447 13.0233 2.23985 14.2727 3.55544 15.1518ZM4.40546 3.1204C5.46945 2.40946 6.72036 2.03 8 2.03C9.71595 2.03 11.3616 2.71166 12.575 3.92502C13.7883 5.13838 14.47 6.78405 14.47 8.5C14.47 9.77965 14.0905 11.0306 13.3796 12.0945C12.6687 13.1585 11.6582 13.9878 10.476 14.4775C9.29373 14.9672 7.99283 15.0953 6.73777 14.8457C5.48271 14.596 4.32987 13.9798 3.42502 13.075C2.52018 12.1701 1.90397 11.0173 1.65432 9.76224C1.40468 8.50718 1.5328 7.20628 2.0225 6.02404C2.5122 4.8418 3.34148 3.83133 4.40546 3.1204Z`}),i=mN(e(`path`),{d:`M6.68775 12.4297C6.78586 12.4745 6.89218 12.4984 7 12.5C7.11275 12.4955 7.22315 12.4664 7.32337 12.4145C7.4236 12.3627 7.51121 12.2894 7.58 12.2L12 5.63999C12.0848 5.47724 12.1071 5.28902 12.0625 5.11098C12.0178 4.93294 11.9095 4.77744 11.7579 4.67392C11.6064 4.57041 11.4221 4.52608 11.24 4.54931C11.0579 4.57254 10.8907 4.66173 10.77 4.79999L6.88 10.57L5.13 8.56999C5.06508 8.49566 4.98613 8.43488 4.89768 8.39111C4.80922 8.34735 4.713 8.32148 4.61453 8.31498C4.51605 8.30847 4.41727 8.32147 4.32382 8.35322C4.23038 8.38497 4.14413 8.43484 4.07 8.49999C3.92511 8.63217 3.83692 8.81523 3.82387 9.01092C3.81083 9.2066 3.87393 9.39976 4 9.54999L6.43 12.24C6.50187 12.3204 6.58964 12.385 6.68775 12.4297Z`});t.appendChild(n).append(i,r);let a=e(`defs`),o=mN(e(`clipPath`),{id:`clip0_57_156`}),s=mN(e(`rect`),{width:`${wP}`,height:`${wP}`,fill:`white`,transform:`translate(0 0.5)`});return o.appendChild(s),a.appendChild(o),t.appendChild(a).appendChild(o).appendChild(s),t}function Vje({open:e,onFormSubmitted:t,...n}){let r=n.options,i=hP(()=>({__html:Bje().outerHTML}),[]),[a,o]=fP(null),s=gP(()=>{a&&(clearTimeout(a),o(null)),t()},[a]),c=gP((e,r)=>{n.onSubmitSuccess(e,r),o(setTimeout(()=>{t(),o(null)},cje))},[t]);return NN(FN,null,a?NN(`div`,{class:`success__position`,onClick:s},NN(`div`,{class:`success__content`},r.successMessageText,NN(`span`,{class:`success__icon`,dangerouslySetInnerHTML:i}))):NN(`dialog`,{class:`dialog`,onClick:r.onFormClose,open:e},NN(`div`,{class:`dialog__position`},NN(`div`,{class:`dialog__content`,onClick:e=>{e.stopPropagation()}},NN(Ije,{options:r}),NN(Rje,{...n,onSubmitSuccess:c})))))}var Hje=`
|
|
611
611
|
.dialog {
|
|
612
612
|
position: fixed;
|
|
613
613
|
z-index: var(--z-index);
|
|
@@ -679,7 +679,7 @@ ${e===`system`?`
|
|
|
679
679
|
transition: transform 0.2s ease-in-out;
|
|
680
680
|
}
|
|
681
681
|
|
|
682
|
-
`,
|
|
682
|
+
`,Uje=`
|
|
683
683
|
.dialog__header {
|
|
684
684
|
display: flex;
|
|
685
685
|
gap: 4px;
|
|
@@ -709,7 +709,7 @@ ${e===`system`?`
|
|
|
709
709
|
.brand-link:focus-visible {
|
|
710
710
|
outline: var(--outline);
|
|
711
711
|
}
|
|
712
|
-
`,
|
|
712
|
+
`,Wje=`
|
|
713
713
|
.form {
|
|
714
714
|
display: flex;
|
|
715
715
|
overflow: auto;
|
|
@@ -799,7 +799,7 @@ ${e===`system`?`
|
|
|
799
799
|
color: var(--error-color);
|
|
800
800
|
fill: var(--error-color);
|
|
801
801
|
}
|
|
802
|
-
`,
|
|
802
|
+
`,Gje=`
|
|
803
803
|
.btn-group {
|
|
804
804
|
display: grid;
|
|
805
805
|
gap: 8px;
|
|
@@ -859,7 +859,7 @@ ${e===`system`?`
|
|
|
859
859
|
filter: var(--interactive-filter);
|
|
860
860
|
outline: var(--button-focus-outline, var(--outline));
|
|
861
861
|
}
|
|
862
|
-
`,
|
|
862
|
+
`,Kje=`
|
|
863
863
|
.success__position {
|
|
864
864
|
position: fixed;
|
|
865
865
|
inset: var(--dialog-inset);
|
|
@@ -887,17 +887,17 @@ ${e===`system`?`
|
|
|
887
887
|
.success__icon {
|
|
888
888
|
display: flex;
|
|
889
889
|
}
|
|
890
|
-
`;function
|
|
890
|
+
`;function qje(e){let t=HM.createElement(`style`);return t.textContent=`
|
|
891
891
|
:host {
|
|
892
892
|
--dialog-inset: var(--inset);
|
|
893
893
|
}
|
|
894
894
|
|
|
895
|
-
${Vje}
|
|
896
895
|
${Hje}
|
|
897
896
|
${Uje}
|
|
898
897
|
${Wje}
|
|
899
898
|
${Gje}
|
|
900
|
-
|
|
899
|
+
${Kje}
|
|
900
|
+
`,e&&t.setAttribute(`nonce`,e),t}function Jje(){let e=q().getUser(),t=BT().getUser(),n=VT().getUser();return e&&Object.keys(e).length?e:t&&Object.keys(t).length?t:n}var Yje=(()=>({name:`FeedbackModal`,setupOnce(){},createDialog:({options:e,screenshotIntegration:t,sendFeedback:n,shadow:r})=>{let i=r,a=e.useSentryUser,o=Jje(),s=HM.createElement(`div`),c=qje(e.styleNonce),l=``,u={get el(){return s},appendToDom(){!i.contains(c)&&!i.contains(s)&&(i.appendChild(c),i.appendChild(s))},removeFromDom(){s.remove(),c.remove(),HM.body.style.overflow=l},open(){f(!0),e.onFormOpen?.(),J()?.emit(`openFeedbackWidget`),l=HM.body.style.overflow,HM.body.style.overflow=`hidden`},close(){f(!1),HM.body.style.overflow=l}},d=t?.createInput({h:NN,hooks:Nje,dialog:u,options:e}),f=t=>{Cje(NN(Vje,{options:e,screenshotInput:d,showName:e.showName||e.isNameRequired,showEmail:e.showEmail||e.isEmailRequired,defaultName:String(a&&o?.[a.name]||``),defaultEmail:String(a&&o?.[a.email]||``),onFormClose:()=>{f(!1),e.onFormClose?.()},onSubmit:n,onSubmitSuccess:(t,n)=>{f(!1),e.onSubmitSuccess?.(t,n)},onSubmitError:t=>{e.onSubmitError?.(t)},onFormSubmitted:()=>{e.onFormSubmitted?.()},open:t}),s)};return u}}));function Xje({h:e}){return function(){return e(`svg`,{"data-test-id":`icon-close`,viewBox:`0 0 16 16`,fill:`#2B2233`,height:`25px`,width:`25px`},e(`circle`,{r:`7`,cx:`8`,cy:`8`,fill:`white`}),e(`path`,{strokeWidth:`1.5`,d:`M8,16a8,8,0,1,1,8-8A8,8,0,0,1,8,16ZM8,1.53A6.47,6.47,0,1,0,14.47,8,6.47,6.47,0,0,0,8,1.53Z`}),e(`path`,{strokeWidth:`1.5`,d:`M5.34,11.41a.71.71,0,0,1-.53-.22.74.74,0,0,1,0-1.06l5.32-5.32a.75.75,0,0,1,1.06,1.06L5.87,11.19A.74.74,0,0,1,5.34,11.41Z`}),e(`path`,{strokeWidth:`1.5`,d:`M10.66,11.41a.74.74,0,0,1-.53-.22L4.81,5.87A.75.75,0,0,1,5.87,4.81l5.32,5.32a.74.74,0,0,1,0,1.06A.71.71,0,0,1,10.66,11.41Z`}))}}function Zje(e){let t=HM.createElement(`style`),n=`#1A141F`,r=`#302735`;return t.textContent=`
|
|
901
901
|
.editor {
|
|
902
902
|
display: flex;
|
|
903
903
|
flex-grow: 1;
|
|
@@ -989,26 +989,26 @@ ${Gje}
|
|
|
989
989
|
.editor__rect:hover button {
|
|
990
990
|
opacity: 1;
|
|
991
991
|
}
|
|
992
|
-
`,e&&t.setAttribute(`nonce`,e),t}function Zje({h:e}){return function({action:t,setAction:n,options:r}){return e(`div`,{class:`editor__tool-container`},e(`div`,{class:`editor__tool-bar`},e(`button`,{type:`button`,class:`editor__tool ${t===`highlight`?`editor__tool--active`:``}`,onClick:()=>{n(t===`highlight`?``:`highlight`)}},r.highlightToolText),e(`button`,{type:`button`,class:`editor__tool ${t===`hide`?`editor__tool--active`:``}`,onClick:()=>{n(t===`hide`?``:`hide`)}},r.hideToolText)))}}function Qje({hooks:e}){function t(){let[t,n]=e.useState(HM.devicePixelRatio??1);return e.useEffect(()=>{let e=()=>{n(HM.devicePixelRatio)},t=matchMedia(`(resolution: ${HM.devicePixelRatio}dppx)`);return t.addEventListener(`change`,e),()=>{t.removeEventListener(`change`,e)}},[]),t}return function({onBeforeScreenshot:n,onScreenshot:r,onAfterScreenshot:i,onError:a}){let o=t();e.useEffect(()=>{(async()=>{n();let e=await WM.mediaDevices.getDisplayMedia({video:{width:HM.innerWidth*o,height:HM.innerHeight*o},audio:!1,monitorTypeSurfaces:`exclude`,preferCurrentTab:!0,selfBrowserSurface:`include`,surfaceSwitching:`exclude`}),t=UM.createElement(`video`);await new Promise((n,i)=>{t.srcObject=e,t.onloadedmetadata=()=>{r(t,o),e.getTracks().forEach(e=>e.stop()),n()},t.play().catch(i)}),i()})().catch(a)},[])}}function $je(e,t,n){switch(e.type){case`highlight`:t.shadowColor=`rgba(0, 0, 0, 0.7)`,t.shadowBlur=50,t.fillStyle=n,t.fillRect(e.x-1,e.y-1,e.w+2,e.h+2),t.clearRect(e.x,e.y,e.w,e.h);break;case`hide`:t.fillStyle=`rgb(0, 0, 0)`,t.fillRect(e.x,e.y,e.w,e.h)}}function DP(e,t,n){if(!e)return;let r=e.getContext(`2d`,t);r&&n(e,r)}function OP(e,t){DP(e,{alpha:!0},(e,n)=>{n.drawImage(t,0,0,t.width,t.height,0,0,e.width,e.height)})}function kP(e,t,n){DP(e,{alpha:!0},(e,r)=>{n.length&&(r.fillStyle=`rgba(0, 0, 0, 0.25)`,r.fillRect(0,0,e.width,e.height)),n.forEach(e=>{$je(e,r,t)})})}function eMe({h:e,hooks:t,outputBuffer:n,dialog:r,options:i}){let a=Qje({hooks:t}),o=Zje({h:e}),s=Yje({h:e}),c={__html:Xje(i.styleNonce).innerText},l=r.el.style,u=({screenshot:r})=>{let[a,l]=t.useState(`highlight`),[u,d]=t.useState([]),f=t.useRef(null),p=t.useRef(null),m=t.useRef(null),h=t.useRef(null),[g,_]=t.useState(1),v=t.useMemo(()=>{let e=UM.getElementById(i.id);if(!e)return`white`;let t=getComputedStyle(e);return t.getPropertyValue(`--button-primary-background`)||t.getPropertyValue(`--accent-background`)},[i.id]);t.useLayoutEffect(()=>{let e=()=>{let t=f.current;t&&(DP(r.canvas,{alpha:!1},e=>{let n=Math.min(t.clientWidth/e.width,t.clientHeight/e.height);_(n)}),(t.clientHeight===0||t.clientWidth===0)&&setTimeout(e,0))};return e(),HM.addEventListener(`resize`,e),()=>{HM.removeEventListener(`resize`,e)}},[r]);let y=t.useCallback((e,t)=>{DP(e,{alpha:!0},(e,n)=>{n.scale(t,t),e.width=r.canvas.width,e.height=r.canvas.height})},[r]);t.useEffect(()=>{y(p.current,r.dpi),OP(p.current,r.canvas)},[r]),t.useEffect(()=>{y(m.current,r.dpi),DP(m.current,{alpha:!0},(e,t)=>{t.clearRect(0,0,e.width,e.height)}),kP(m.current,v,u)},[u,v]),t.useEffect(()=>{y(n,r.dpi),OP(n,r.canvas),DP(UM.createElement(`canvas`),{alpha:!0},(e,t)=>{t.scale(r.dpi,r.dpi),e.width=r.canvas.width,e.height=r.canvas.height,kP(e,v,u),OP(n,e)})},[u,r,v]);let b=e=>{if(!a||!h.current)return;let t=h.current.getBoundingClientRect(),n={type:a,x:e.offsetX/g,y:e.offsetY/g},r=(e,n)=>{let r=(n.clientX-t.x)/g,i=(n.clientY-t.y)/g;return{type:e.type,x:Math.min(e.x,r),y:Math.min(e.y,i),w:Math.abs(r-e.x),h:Math.abs(i-e.y)}},i=e=>{DP(m.current,{alpha:!0},(e,t)=>{t.clearRect(0,0,e.width,e.height)}),kP(m.current,v,[...u,r(n,e)])},o=e=>{let t=r(n,e);t.w*g>=1&&t.h*g>=1&&d(e=>[...e,t]),UM.removeEventListener(`mousemove`,i),UM.removeEventListener(`mouseup`,o)};UM.addEventListener(`mousemove`,i),UM.addEventListener(`mouseup`,o)},x=t.useCallback(e=>t=>{t.preventDefault(),t.stopPropagation(),d(t=>{let n=[...t];return n.splice(e,1),n})},[]),S={width:`${r.canvas.width*g}px`,height:`${r.canvas.height*g}px`},C=e=>{e.stopPropagation()};return e(`div`,{class:`editor`},e(`style`,{nonce:i.styleNonce,dangerouslySetInnerHTML:c}),e(`div`,{class:`editor__image-container`},e(`div`,{class:`editor__canvas-container`,ref:f},e(`canvas`,{ref:p,id:`background`,style:S}),e(`canvas`,{ref:m,id:`foreground`,style:S}),e(`div`,{ref:h,onMouseDown:b,style:S},u.map((t,n)=>e(`div`,{key:n,class:`editor__rect`,style:{top:`${t.y*g}px`,left:`${t.x*g}px`,width:`${t.w*g}px`,height:`${t.h*g}px`}},e(`button`,{"aria-label":i.removeHighlightText,onClick:x(n),onMouseDown:C,onMouseUp:C,type:`button`},e(s,null))))))),e(o,{options:i,action:a,setAction:l}))};return function({onError:r}){let[i,o]=t.useState();return a({onBeforeScreenshot:t.useCallback(()=>{l.display=`none`},[]),onScreenshot:t.useCallback((e,t)=>{DP(UM.createElement(`canvas`),{alpha:!1},(n,r)=>{r.scale(t,t),n.width=e.videoWidth,n.height=e.videoHeight,r.drawImage(e,0,0,n.width,n.height),o({canvas:n,dpi:t})}),n.width=e.videoWidth,n.height=e.videoHeight},[]),onAfterScreenshot:t.useCallback(()=>{l.display=`block`},[]),onError:t.useCallback(e=>{l.display=`block`,r(e)},[])}),i?e(u,{screenshot:i}):e(`div`,null)}}var tMe=(()=>({name:`FeedbackScreenshot`,setupOnce(){},createInput:({h:e,hooks:t,dialog:n,options:r})=>{let i=UM.createElement(`canvas`);return{input:eMe({h:e,hooks:t,outputBuffer:i,dialog:n,options:r}),value:async()=>{let e=await new Promise(e=>{i.toBlob(e,`image/png`)});if(e)return{data:new Uint8Array(await e.arrayBuffer()),filename:`screenshot.png`,contentType:`application/png`}}}}})),Y=G,AP=0;function jP(){return AP>0}function nMe(){AP++,setTimeout(()=>{AP--})}function MP(e,t={}){function n(e){return typeof e==`function`}if(!n(e))return e;try{if(Object.prototype.hasOwnProperty.call(e,`__sentry_wrapped__`)){let t=e.__sentry_wrapped__;return typeof t==`function`?t:e}if(Uw(e))return e}catch{return e}let r=function(...n){G._sentryWrappedDepth=(G._sentryWrappedDepth||0)+1;try{let r=n.map(e=>MP(e,t));return e.apply(this,r)}catch(e){throw nMe(),HT(r=>{r.addEventProcessor(e=>(t.mechanism&&(fT(e,void 0,void 0),pT(e,t.mechanism)),e.extra={...e.extra,arguments:n},e)),cO(e)}),e}finally{G._sentryWrappedDepth=(G._sentryWrappedDepth||0)-1}};try{for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(r[t]=e[t])}catch{}Hw(r,e),Vw(e,`__sentry_wrapped__`,r);try{Object.getOwnPropertyDescriptor(r,`name`).configurable&&Object.defineProperty(r,"name",{get(){return e.name}})}catch{}return r}function NP(){let e=xM(),{referrer:t}=Y.document||{},{userAgent:n}=Y.navigator||{};return{url:e,headers:{...t&&{Referer:t},...n&&{"User-Agent":n}}}}var rMe=[`replayIntegration`,`replayCanvasIntegration`,`feedbackIntegration`,`feedbackModalIntegration`,`feedbackScreenshotIntegration`,`captureConsoleIntegration`,`contextLinesIntegration`,`linkedErrorsIntegration`,`dedupeIntegration`,`extraErrorDataIntegration`,`graphqlClientIntegration`,`httpClientIntegration`,`reportingObserverIntegration`,`rewriteFramesIntegration`,`browserProfilingIntegration`,`moduleMetadataIntegration`,`instrumentAnthropicAiClient`,`instrumentOpenAiClient`,`instrumentGoogleGenAIClient`,`instrumentLangGraph`,`createLangChainCallbackHandler`,`instrumentLangChainEmbeddings`],iMe={replayCanvasIntegration:`replay-canvas`,feedbackModalIntegration:`feedback-modal`,feedbackScreenshotIntegration:`feedback-screenshot`};function aMe(e){return iMe[e]||e.replace(`Integration`,``).toLowerCase()}var PP=Y;async function oMe(e,t){let n=rMe.includes(e)?aMe(e):void 0,r=PP.Sentry=PP.Sentry||{};if(!n)throw Error(`Cannot lazy load integration: ${e}`);let i=r[e];if(typeof i==`function`&&!(`_isShim`in i))return i;let a=sMe(n),o=Y.document.createElement(`script`);o.src=a,o.crossOrigin=`anonymous`,o.referrerPolicy=`strict-origin`,t&&o.setAttribute(`nonce`,t);let s=new Promise((e,t)=>{o.addEventListener(`load`,()=>e()),o.addEventListener(`error`,t)}),c=Y.document.currentScript,l=Y.document.body||Y.document.head||c?.parentElement;if(l)l.appendChild(o);else throw Error(`Could not find parent element to insert lazy-loaded ${e} script`);try{await s}catch{throw Error(`Error when loading integration: ${e}`)}let u=r[e];if(typeof u!=`function`)throw Error(`Could not load integration: ${e}`);return u}function sMe(e){let t=J()?.getOptions()?.cdnBaseUrl||`https://browser.sentry-cdn.com`;return new URL(`/${ZC}/${e}.min.js`,t).toString()}var cMe=xN({lazyLoadIntegration:oMe}),FP=xN({getModalIntegration:()=>Jje,getScreenshotIntegration:()=>tMe});function IP(e,t){let n=RP(e,t),r={type:pMe(t),value:mMe(t)};return n.length&&(r.stacktrace={frames:n}),r.type===void 0&&r.value===``&&(r.value=`Unrecoverable error caught`),r}function lMe(e,t,n,r){let i=J()?.getOptions().normalizeDepth,a=_Me(t),o={__serialized__:$w(t,i)};if(a)return{exception:{values:[IP(e,a)]},extra:o};let s={exception:{values:[{type:Iw(t)?t.constructor.name:r?`UnhandledRejection`:`Error`,value:hMe(t,{isUnhandledRejection:r})}]},extra:o};if(n){let t=RP(e,n);t.length&&(s.exception.values[0].stacktrace={frames:t})}return s}function LP(e,t){return{exception:{values:[IP(e,t)]}}}function RP(e,t){let n=t.stacktrace||t.stack||``,r=dMe(t),i=fMe(t);try{return e(n,r,i)}catch{}return[]}var uMe=/Minified React error #\d+;/i;function dMe(e){return e&&uMe.test(e.message)?1:0}function fMe(e){return typeof e.framesToPop==`number`?e.framesToPop:0}function zP(e){return typeof WebAssembly<`u`&&WebAssembly.Exception!==void 0&&e instanceof WebAssembly.Exception}function pMe(e){let t=e?.name;return!t&&zP(e)?e.message&&Array.isArray(e.message)&&e.message.length==2?e.message[0]:`WebAssembly.Exception`:t}function mMe(e){let t=e?.message;return zP(e)?Array.isArray(e.message)&&e.message.length==2?e.message[1]:`wasm exception`:t?t.error&&typeof t.error.message==`string`?Lk(t.error):Lk(e):`No error message`}function BP(e,t,n,r){let i=HP(e,t,n?.syntheticException||void 0,r);return pT(i),i.level=`error`,n?.event_id&&(i.event_id=n.event_id),QD(i)}function VP(e,t,n=`info`,r,i){let a=UP(e,t,r?.syntheticException||void 0,i);return a.level=n,r?.event_id&&(a.event_id=r.event_id),QD(a)}function HP(e,t,n,r,i){let a;if(kw(t)&&t.error)return LP(e,t.error);if(Aw(t)||ZCe(t)){let i=t;if(`stack`in t){a=LP(e,t);let i=a.exception?.values?.[0];if(r&&n&&i&&!i.stacktrace){let t=RP(e,n);t.length&&(i.stacktrace={frames:t},pT(a,{synthetic:!0}))}}else{let t=i.name||(Aw(i)?`DOMError`:`DOMException`),o=i.message?`${t}: ${i.message}`:t;a=UP(e,o,n,r),fT(a,o)}return`code`in i&&(a.tags={...a.tags,"DOMException.code":`${i.code}`}),a}return Dw(t)?LP(e,t):Pw(t)||Iw(t)?(a=lMe(e,t,n,i),pT(a,{synthetic:!0}),a):(a=UP(e,t,n,r),fT(a,`${t}`,void 0),pT(a,{synthetic:!0}),a)}function UP(e,t,n,r){let i={};if(r&&n){let r=RP(e,n);r.length&&(i.exception={values:[{value:t,stacktrace:{frames:r}}]}),pT(i,{synthetic:!0})}if(Mw(t)){let{__sentry_template_string__:e,__sentry_template_values__:n}=t;return i.logentry={message:e,params:n},i}return i.message=t,i}function hMe(e,{isUnhandledRejection:t}){let n=$Ce(e),r=t?`promise rejection`:`exception`;return kw(e)?`Event \`ErrorEvent\` captured as ${r} with message \`${e.message}\``:Iw(e)?`Event \`${gMe(e)}\` (type=${e.type}) captured as ${r}`:`Object captured as ${r} with keys: ${n}`}function gMe(e){try{let t=Object.getPrototypeOf(e);return t?t.constructor.name:void 0}catch{}}function _Me(e){return Object.values(e).find(e=>e instanceof Error)}var WP=class extends dDe{constructor(e){let t=vMe(e);TDe(t,`browser`,[`browser`],Y.SENTRY_SDK_SOURCE||REe()),super(t);let{userInfo:n}=this.getDataCollectionOptions();t._metadata?.sdk&&(t._metadata.sdk.settings={infer_ip:n?`auto`:`never`,...t._metadata.sdk.settings});let{sendClientReports:r}=this._options;Y.document&&Y.document.addEventListener(`visibilitychange`,()=>{Y.document.visibilityState===`hidden`&&(r&&this._flushOutcomes(),queueMicrotask(()=>{this.flush()}))}),n&&this.on(`beforeSendSession`,wDe)}eventFromException(e,t){return BP(this._options.stackParser,e,t,this._options.attachStacktrace)}eventFromMessage(e,t=`info`,n){return VP(this._options.stackParser,e,t,n,this._options.attachStacktrace)}_prepareEvent(e,t,n,r){return e.platform=e.platform||`javascript`,super._prepareEvent(e,t,n,r)}};function vMe(e){return{release:typeof __SENTRY_RELEASE__==`string`?__SENTRY_RELEASE__:Y.SENTRY_RELEASE?.id,sendClientReports:!0,parentSpanIsAlwaysRootSpan:!0,...e}}var GP=typeof __SENTRY_DEBUG__>`u`||__SENTRY_DEBUG__,KP=G,yMe=(e,t)=>e>t[1]?`poor`:e>t[0]?`needs-improvement`:`good`,qP=(e,t,n,r)=>{let i,a;return o=>{t.value>=0&&(o||r)&&(a=t.value-(i??0),(a||i===void 0)&&(i=t.value,t.delta=a,t.rating=yMe(t.value,n),e(t)))}},JP=(e=!0)=>{let t=KP.performance?.getEntriesByType?.(`navigation`)[0];if(!e||t&&t.responseStart>0&&t.responseStart<performance.now())return t},YP=()=>JP()?.activationStart??0;function XP(e,t,n){KP.document&&KP.addEventListener(e,t,n)}function ZP(e,t,n){KP.document&&KP.removeEventListener(e,t,n)}var QP=-1,$P=new Set,bMe=()=>KP.document?.visibilityState===`hidden`&&!KP.document?.prerendering?0:1/0,eF=e=>{if(xMe(e)&&QP>-1){if(e.type===`visibilitychange`||e.type===`pagehide`)for(let e of $P)e();isFinite(QP)||(QP=e.type===`visibilitychange`?e.timeStamp:0,ZP(`prerenderingchange`,eF,!0))}},tF=()=>{if(KP.document&&QP<0){let e=YP();QP=(KP.document.prerendering?void 0:globalThis.performance.getEntriesByType(`visibility-state`).filter(t=>t.name===`hidden`&&t.startTime>e)[0]?.startTime)??bMe(),XP(`visibilitychange`,eF,!0),XP(`pagehide`,eF,!0),XP(`prerenderingchange`,eF,!0)}return{get firstHiddenTime(){return QP},onHidden(e){$P.add(e)}}};function xMe(e){return e.type===`pagehide`||KP.document?.visibilityState===`hidden`}var SMe=()=>`v5-${Date.now()}-${Math.floor(Math.random()*(9e12-1))+0xe8d4a51000}`,nF=(e,t=-1)=>{let n=JP(),r=`navigate`;return n&&(KP.document?.prerendering||YP()>0?r=`prerender`:KP.document?.wasDiscarded?r=`restore`:n.type&&(r=n.type.replace(/_/g,`-`))),{name:e,value:t,rating:`good`,delta:0,entries:[],id:SMe(),navigationType:r}},rF=new WeakMap;function iF(e,t){try{return rF.get(e)||rF.set(e,new t),rF.get(e)}catch{return new t}}var CMe=class{constructor(){this._sessionValue=0,this._sessionEntries=[]}_processEntry(e){if(e.hadRecentInput)return;let t=this._sessionEntries[0],n=this._sessionEntries[this._sessionEntries.length-1];this._sessionValue&&t&&n&&e.startTime-n.startTime<1e3&&e.startTime-t.startTime<5e3?(this._sessionValue+=e.value,this._sessionEntries.push(e)):(this._sessionValue=e.value,this._sessionEntries=[e]),this._onAfterProcessingUnexpectedShift?.(e)}},aF=(e,t,n={})=>{try{if(PerformanceObserver.supportedEntryTypes.includes(e)){let r=new PerformanceObserver(e=>{Promise.resolve().then(()=>{t(e.getEntries())})});return r.observe({type:e,buffered:!0,...n}),r}}catch{}},oF=e=>{let t=!1;return()=>{t||=(e(),!0)}},sF=e=>{KP.document?.prerendering?addEventListener(`prerenderingchange`,()=>e(),!0):e()},wMe=[1800,3e3],TMe=(e,t={})=>{sF(()=>{let n=tF(),r=nF(`FCP`),i,a=aF(`paint`,e=>{for(let t of e)t.name===`first-contentful-paint`&&(a.disconnect(),t.startTime<n.firstHiddenTime&&(r.value=Math.max(t.startTime-YP(),0),r.entries.push(t),i(!0)))});a&&(i=qP(e,r,wMe,t.reportAllChanges))})},EMe=[.1,.25],DMe=(e,t={})=>{TMe(oF(()=>{let n=nF(`CLS`,0),r,i=tF(),a=iF(t,CMe),o=e=>{for(let t of e)a._processEntry(t);a._sessionValue>n.value&&(n.value=a._sessionValue,n.entries=a._sessionEntries,r())},s=aF(`layout-shift`,o);s&&(r=qP(e,n,EMe,t.reportAllChanges),i.onHidden(()=>{o(s.takeRecords()),r(!0)}),KP?.setTimeout?.(r))}))},cF=0,lF=1/0,uF=0,OMe=e=>{e.forEach(e=>{e.interactionId&&(lF=Math.min(lF,e.interactionId),uF=Math.max(uF,e.interactionId),cF=uF?(uF-lF)/7+1:0)})},dF,fF=()=>dF?cF:performance.interactionCount||0,kMe=()=>{`interactionCount`in performance||dF||(dF=aF(`event`,OMe,{type:`event`,buffered:!0,durationThreshold:0}))},pF=10,mF=0,AMe=()=>fF()-mF,jMe=class{constructor(){this._longestInteractionList=[],this._longestInteractionMap=new Map}_resetInteractions(){mF=fF(),this._longestInteractionList.length=0,this._longestInteractionMap.clear()}_estimateP98LongestInteraction(){let e=Math.min(this._longestInteractionList.length-1,Math.floor(AMe()/50));return this._longestInteractionList[e]}_processEntry(e){if(this._onBeforeProcessingEntry?.(e),!(e.interactionId||e.entryType===`first-input`))return;let t=this._longestInteractionList.at(-1),n=this._longestInteractionMap.get(e.interactionId);if(n||this._longestInteractionList.length<pF||e.duration>t._latency){if(n?e.duration>n._latency?(n.entries=[e],n._latency=e.duration):e.duration===n._latency&&e.startTime===n.entries[0].startTime&&n.entries.push(e):(n={id:e.interactionId,entries:[e],_latency:e.duration},this._longestInteractionMap.set(n.id,n),this._longestInteractionList.push(n)),this._longestInteractionList.sort((e,t)=>t._latency-e._latency),this._longestInteractionList.length>pF){let e=this._longestInteractionList.splice(pF);for(let t of e)this._longestInteractionMap.delete(t.id)}this._onAfterProcessingINPCandidate?.(n)}}},hF=e=>{let t=KP.requestIdleCallback||KP.setTimeout;KP.document?.visibilityState===`hidden`?e():(e=oF(e),XP(`visibilitychange`,e,{once:!0,capture:!0}),XP(`pagehide`,e,{once:!0,capture:!0}),t(()=>{e(),ZP(`visibilitychange`,e,{capture:!0}),ZP(`pagehide`,e,{capture:!0})}))},MMe=[200,500],NMe=40,PMe=(e,t={})=>{if(!(globalThis.PerformanceEventTiming&&`interactionId`in PerformanceEventTiming.prototype))return;let n=tF();sF(()=>{kMe();let r=nF(`INP`),i,a=iF(t,jMe),o=e=>{hF(()=>{for(let t of e)a._processEntry(t);let t=a._estimateP98LongestInteraction();t&&t._latency!==r.value&&(r.value=t._latency,r.entries=t.entries,i())})},s=aF(`event`,o,{durationThreshold:t.durationThreshold??NMe});i=qP(e,r,MMe,t.reportAllChanges),s&&(s.observe({type:`first-input`,buffered:!0}),n.onHidden(()=>{o(s.takeRecords()),i(!0)}))})},FMe=class{_processEntry(e){this._onBeforeProcessingEntry?.(e)}},IMe=[2500,4e3],LMe=(e,t={})=>{sF(()=>{let n=tF(),r=nF(`LCP`),i,a=iF(t,FMe),o=e=>{t.reportAllChanges||(e=e.slice(-1));for(let t of e)a._processEntry(t),t.startTime<n.firstHiddenTime&&(r.value=Math.max(t.startTime-YP(),0),r.entries=[t],i())},s=aF(`largest-contentful-paint`,o);if(s){i=qP(e,r,IMe,t.reportAllChanges);let n=oF(()=>{o(s.takeRecords()),s.disconnect(),i(!0)}),a=e=>{e.isTrusted&&(hF(n),ZP(e.type,a,{capture:!0}))};for(let e of[`keydown`,`click`,`visibilitychange`])XP(e,a,{capture:!0})}})},RMe=[800,1800],gF=e=>{KP.document?.prerendering?sF(()=>gF(e)):KP.document?.readyState===`complete`?setTimeout(e):addEventListener(`load`,()=>gF(e),!0)},zMe=(e,t={})=>{let n=nF(`TTFB`),r=qP(e,n,RMe,t.reportAllChanges);gF(()=>{let e=JP();e&&(n.value=Math.max(e.responseStart-YP(),0),n.entries=[e],r(!0))})},_F={},vF={},yF,bF,xF,SF;function CF(e,t=!1){return OF(`cls`,e,VMe,yF,t)}function wF(e,t=!1){return OF(`lcp`,e,HMe,bF,t)}function BMe(e){return OF(`ttfb`,e,UMe,xF)}function TF(e){return OF(`inp`,e,WMe,SF)}function EF(e,t){return kF(e,t),vF[e]||(GMe(e),vF[e]=!0),AF(e,t)}function DF(e,t){let n=_F[e];if(n?.length)for(let r of n)try{r(t)}catch(t){GP&&K.error(`Error while triggering instrumentation handler.
|
|
992
|
+
`,e&&t.setAttribute(`nonce`,e),t}function Qje({h:e}){return function({action:t,setAction:n,options:r}){return e(`div`,{class:`editor__tool-container`},e(`div`,{class:`editor__tool-bar`},e(`button`,{type:`button`,class:`editor__tool ${t===`highlight`?`editor__tool--active`:``}`,onClick:()=>{n(t===`highlight`?``:`highlight`)}},r.highlightToolText),e(`button`,{type:`button`,class:`editor__tool ${t===`hide`?`editor__tool--active`:``}`,onClick:()=>{n(t===`hide`?``:`hide`)}},r.hideToolText)))}}function $je({hooks:e}){function t(){let[t,n]=e.useState(VM.devicePixelRatio??1);return e.useEffect(()=>{let e=()=>{n(VM.devicePixelRatio)},t=matchMedia(`(resolution: ${VM.devicePixelRatio}dppx)`);return t.addEventListener(`change`,e),()=>{t.removeEventListener(`change`,e)}},[]),t}return function({onBeforeScreenshot:n,onScreenshot:r,onAfterScreenshot:i,onError:a}){let o=t();e.useEffect(()=>{(async()=>{n();let e=await UM.mediaDevices.getDisplayMedia({video:{width:VM.innerWidth*o,height:VM.innerHeight*o},audio:!1,monitorTypeSurfaces:`exclude`,preferCurrentTab:!0,selfBrowserSurface:`include`,surfaceSwitching:`exclude`}),t=HM.createElement(`video`);await new Promise((n,i)=>{t.srcObject=e,t.onloadedmetadata=()=>{r(t,o),e.getTracks().forEach(e=>e.stop()),n()},t.play().catch(i)}),i()})().catch(a)},[])}}function eMe(e,t,n){switch(e.type){case`highlight`:t.shadowColor=`rgba(0, 0, 0, 0.7)`,t.shadowBlur=50,t.fillStyle=n,t.fillRect(e.x-1,e.y-1,e.w+2,e.h+2),t.clearRect(e.x,e.y,e.w,e.h);break;case`hide`:t.fillStyle=`rgb(0, 0, 0)`,t.fillRect(e.x,e.y,e.w,e.h)}}function EP(e,t,n){if(!e)return;let r=e.getContext(`2d`,t);r&&n(e,r)}function DP(e,t){EP(e,{alpha:!0},(e,n)=>{n.drawImage(t,0,0,t.width,t.height,0,0,e.width,e.height)})}function OP(e,t,n){EP(e,{alpha:!0},(e,r)=>{n.length&&(r.fillStyle=`rgba(0, 0, 0, 0.25)`,r.fillRect(0,0,e.width,e.height)),n.forEach(e=>{eMe(e,r,t)})})}function tMe({h:e,hooks:t,outputBuffer:n,dialog:r,options:i}){let a=$je({hooks:t}),o=Qje({h:e}),s=Xje({h:e}),c={__html:Zje(i.styleNonce).innerText},l=r.el.style,u=({screenshot:r})=>{let[a,l]=t.useState(`highlight`),[u,d]=t.useState([]),f=t.useRef(null),p=t.useRef(null),m=t.useRef(null),h=t.useRef(null),[g,_]=t.useState(1),v=t.useMemo(()=>{let e=HM.getElementById(i.id);if(!e)return`white`;let t=getComputedStyle(e);return t.getPropertyValue(`--button-primary-background`)||t.getPropertyValue(`--accent-background`)},[i.id]);t.useLayoutEffect(()=>{let e=()=>{let t=f.current;t&&(EP(r.canvas,{alpha:!1},e=>{let n=Math.min(t.clientWidth/e.width,t.clientHeight/e.height);_(n)}),(t.clientHeight===0||t.clientWidth===0)&&setTimeout(e,0))};return e(),VM.addEventListener(`resize`,e),()=>{VM.removeEventListener(`resize`,e)}},[r]);let y=t.useCallback((e,t)=>{EP(e,{alpha:!0},(e,n)=>{n.scale(t,t),e.width=r.canvas.width,e.height=r.canvas.height})},[r]);t.useEffect(()=>{y(p.current,r.dpi),DP(p.current,r.canvas)},[r]),t.useEffect(()=>{y(m.current,r.dpi),EP(m.current,{alpha:!0},(e,t)=>{t.clearRect(0,0,e.width,e.height)}),OP(m.current,v,u)},[u,v]),t.useEffect(()=>{y(n,r.dpi),DP(n,r.canvas),EP(HM.createElement(`canvas`),{alpha:!0},(e,t)=>{t.scale(r.dpi,r.dpi),e.width=r.canvas.width,e.height=r.canvas.height,OP(e,v,u),DP(n,e)})},[u,r,v]);let b=e=>{if(!a||!h.current)return;let t=h.current.getBoundingClientRect(),n={type:a,x:e.offsetX/g,y:e.offsetY/g},r=(e,n)=>{let r=(n.clientX-t.x)/g,i=(n.clientY-t.y)/g;return{type:e.type,x:Math.min(e.x,r),y:Math.min(e.y,i),w:Math.abs(r-e.x),h:Math.abs(i-e.y)}},i=e=>{EP(m.current,{alpha:!0},(e,t)=>{t.clearRect(0,0,e.width,e.height)}),OP(m.current,v,[...u,r(n,e)])},o=e=>{let t=r(n,e);t.w*g>=1&&t.h*g>=1&&d(e=>[...e,t]),HM.removeEventListener(`mousemove`,i),HM.removeEventListener(`mouseup`,o)};HM.addEventListener(`mousemove`,i),HM.addEventListener(`mouseup`,o)},x=t.useCallback(e=>t=>{t.preventDefault(),t.stopPropagation(),d(t=>{let n=[...t];return n.splice(e,1),n})},[]),S={width:`${r.canvas.width*g}px`,height:`${r.canvas.height*g}px`},C=e=>{e.stopPropagation()};return e(`div`,{class:`editor`},e(`style`,{nonce:i.styleNonce,dangerouslySetInnerHTML:c}),e(`div`,{class:`editor__image-container`},e(`div`,{class:`editor__canvas-container`,ref:f},e(`canvas`,{ref:p,id:`background`,style:S}),e(`canvas`,{ref:m,id:`foreground`,style:S}),e(`div`,{ref:h,onMouseDown:b,style:S},u.map((t,n)=>e(`div`,{key:n,class:`editor__rect`,style:{top:`${t.y*g}px`,left:`${t.x*g}px`,width:`${t.w*g}px`,height:`${t.h*g}px`}},e(`button`,{"aria-label":i.removeHighlightText,onClick:x(n),onMouseDown:C,onMouseUp:C,type:`button`},e(s,null))))))),e(o,{options:i,action:a,setAction:l}))};return function({onError:r}){let[i,o]=t.useState();return a({onBeforeScreenshot:t.useCallback(()=>{l.display=`none`},[]),onScreenshot:t.useCallback((e,t)=>{EP(HM.createElement(`canvas`),{alpha:!1},(n,r)=>{r.scale(t,t),n.width=e.videoWidth,n.height=e.videoHeight,r.drawImage(e,0,0,n.width,n.height),o({canvas:n,dpi:t})}),n.width=e.videoWidth,n.height=e.videoHeight},[]),onAfterScreenshot:t.useCallback(()=>{l.display=`block`},[]),onError:t.useCallback(e=>{l.display=`block`,r(e)},[])}),i?e(u,{screenshot:i}):e(`div`,null)}}var nMe=(()=>({name:`FeedbackScreenshot`,setupOnce(){},createInput:({h:e,hooks:t,dialog:n,options:r})=>{let i=HM.createElement(`canvas`);return{input:tMe({h:e,hooks:t,outputBuffer:i,dialog:n,options:r}),value:async()=>{let e=await new Promise(e=>{i.toBlob(e,`image/png`)});if(e)return{data:new Uint8Array(await e.arrayBuffer()),filename:`screenshot.png`,contentType:`application/png`}}}}})),Y=G,kP=0;function AP(){return kP>0}function rMe(){kP++,setTimeout(()=>{kP--})}function jP(e,t={}){function n(e){return typeof e==`function`}if(!n(e))return e;try{if(Object.prototype.hasOwnProperty.call(e,`__sentry_wrapped__`)){let t=e.__sentry_wrapped__;return typeof t==`function`?t:e}if(Uw(e))return e}catch{return e}let r=function(...n){G._sentryWrappedDepth=(G._sentryWrappedDepth||0)+1;try{let r=n.map(e=>jP(e,t));return e.apply(this,r)}catch(e){throw rMe(),HT(r=>{r.addEventProcessor(e=>(t.mechanism&&(fT(e,void 0,void 0),pT(e,t.mechanism)),e.extra={...e.extra,arguments:n},e)),cO(e)}),e}finally{G._sentryWrappedDepth=(G._sentryWrappedDepth||0)-1}};try{for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(r[t]=e[t])}catch{}Hw(r,e),Vw(e,`__sentry_wrapped__`,r);try{Object.getOwnPropertyDescriptor(r,`name`).configurable&&Object.defineProperty(r,"name",{get(){return e.name}})}catch{}return r}function MP(){let e=bM(),{referrer:t}=Y.document||{},{userAgent:n}=Y.navigator||{};return{url:e,headers:{...t&&{Referer:t},...n&&{"User-Agent":n}}}}var iMe=[`replayIntegration`,`replayCanvasIntegration`,`feedbackIntegration`,`feedbackModalIntegration`,`feedbackScreenshotIntegration`,`captureConsoleIntegration`,`contextLinesIntegration`,`linkedErrorsIntegration`,`dedupeIntegration`,`extraErrorDataIntegration`,`graphqlClientIntegration`,`httpClientIntegration`,`reportingObserverIntegration`,`rewriteFramesIntegration`,`browserProfilingIntegration`,`moduleMetadataIntegration`,`instrumentAnthropicAiClient`,`instrumentOpenAiClient`,`instrumentGoogleGenAIClient`,`instrumentLangGraph`,`createLangChainCallbackHandler`,`instrumentLangChainEmbeddings`],aMe={replayCanvasIntegration:`replay-canvas`,feedbackModalIntegration:`feedback-modal`,feedbackScreenshotIntegration:`feedback-screenshot`};function oMe(e){return aMe[e]||e.replace(`Integration`,``).toLowerCase()}var NP=Y;async function sMe(e,t){let n=iMe.includes(e)?oMe(e):void 0,r=NP.Sentry=NP.Sentry||{};if(!n)throw Error(`Cannot lazy load integration: ${e}`);let i=r[e];if(typeof i==`function`&&!(`_isShim`in i))return i;let a=cMe(n),o=Y.document.createElement(`script`);o.src=a,o.crossOrigin=`anonymous`,o.referrerPolicy=`strict-origin`,t&&o.setAttribute(`nonce`,t);let s=new Promise((e,t)=>{o.addEventListener(`load`,()=>e()),o.addEventListener(`error`,t)}),c=Y.document.currentScript,l=Y.document.body||Y.document.head||c?.parentElement;if(l)l.appendChild(o);else throw Error(`Could not find parent element to insert lazy-loaded ${e} script`);try{await s}catch{throw Error(`Error when loading integration: ${e}`)}let u=r[e];if(typeof u!=`function`)throw Error(`Could not load integration: ${e}`);return u}function cMe(e){let t=J()?.getOptions()?.cdnBaseUrl||`https://browser.sentry-cdn.com`;return new URL(`/${ZC}/${e}.min.js`,t).toString()}var lMe=bN({lazyLoadIntegration:sMe}),PP=bN({getModalIntegration:()=>Yje,getScreenshotIntegration:()=>nMe});function FP(e,t){let n=LP(e,t),r={type:mMe(t),value:hMe(t)};return n.length&&(r.stacktrace={frames:n}),r.type===void 0&&r.value===``&&(r.value=`Unrecoverable error caught`),r}function uMe(e,t,n,r){let i=J()?.getOptions().normalizeDepth,a=vMe(t),o={__serialized__:$w(t,i)};if(a)return{exception:{values:[FP(e,a)]},extra:o};let s={exception:{values:[{type:Iw(t)?t.constructor.name:r?`UnhandledRejection`:`Error`,value:gMe(t,{isUnhandledRejection:r})}]},extra:o};if(n){let t=LP(e,n);t.length&&(s.exception.values[0].stacktrace={frames:t})}return s}function IP(e,t){return{exception:{values:[FP(e,t)]}}}function LP(e,t){let n=t.stacktrace||t.stack||``,r=fMe(t),i=pMe(t);try{return e(n,r,i)}catch{}return[]}var dMe=/Minified React error #\d+;/i;function fMe(e){return e&&dMe.test(e.message)?1:0}function pMe(e){return typeof e.framesToPop==`number`?e.framesToPop:0}function RP(e){return typeof WebAssembly<`u`&&WebAssembly.Exception!==void 0&&e instanceof WebAssembly.Exception}function mMe(e){let t=e?.name;return!t&&RP(e)?e.message&&Array.isArray(e.message)&&e.message.length==2?e.message[0]:`WebAssembly.Exception`:t}function hMe(e){let t=e?.message;return RP(e)?Array.isArray(e.message)&&e.message.length==2?e.message[1]:`wasm exception`:t?t.error&&typeof t.error.message==`string`?Lk(t.error):Lk(e):`No error message`}function zP(e,t,n,r){let i=VP(e,t,n?.syntheticException||void 0,r);return pT(i),i.level=`error`,n?.event_id&&(i.event_id=n.event_id),QD(i)}function BP(e,t,n=`info`,r,i){let a=HP(e,t,r?.syntheticException||void 0,i);return a.level=n,r?.event_id&&(a.event_id=r.event_id),QD(a)}function VP(e,t,n,r,i){let a;if(kw(t)&&t.error)return IP(e,t.error);if(Aw(t)||ZCe(t)){let i=t;if(`stack`in t){a=IP(e,t);let i=a.exception?.values?.[0];if(r&&n&&i&&!i.stacktrace){let t=LP(e,n);t.length&&(i.stacktrace={frames:t},pT(a,{synthetic:!0}))}}else{let t=i.name||(Aw(i)?`DOMError`:`DOMException`),o=i.message?`${t}: ${i.message}`:t;a=HP(e,o,n,r),fT(a,o)}return`code`in i&&(a.tags={...a.tags,"DOMException.code":`${i.code}`}),a}return Dw(t)?IP(e,t):Pw(t)||Iw(t)?(a=uMe(e,t,n,i),pT(a,{synthetic:!0}),a):(a=HP(e,t,n,r),fT(a,`${t}`,void 0),pT(a,{synthetic:!0}),a)}function HP(e,t,n,r){let i={};if(r&&n){let r=LP(e,n);r.length&&(i.exception={values:[{value:t,stacktrace:{frames:r}}]}),pT(i,{synthetic:!0})}if(Mw(t)){let{__sentry_template_string__:e,__sentry_template_values__:n}=t;return i.logentry={message:e,params:n},i}return i.message=t,i}function gMe(e,{isUnhandledRejection:t}){let n=$Ce(e),r=t?`promise rejection`:`exception`;return kw(e)?`Event \`ErrorEvent\` captured as ${r} with message \`${e.message}\``:Iw(e)?`Event \`${_Me(e)}\` (type=${e.type}) captured as ${r}`:`Object captured as ${r} with keys: ${n}`}function _Me(e){try{let t=Object.getPrototypeOf(e);return t?t.constructor.name:void 0}catch{}}function vMe(e){return Object.values(e).find(e=>e instanceof Error)}var UP=class extends dDe{constructor(e){let t=yMe(e);TDe(t,`browser`,[`browser`],Y.SENTRY_SDK_SOURCE||REe()),super(t);let{userInfo:n}=this.getDataCollectionOptions();t._metadata?.sdk&&(t._metadata.sdk.settings={infer_ip:n?`auto`:`never`,...t._metadata.sdk.settings});let{sendClientReports:r}=this._options;Y.document&&Y.document.addEventListener(`visibilitychange`,()=>{Y.document.visibilityState===`hidden`&&(r&&this._flushOutcomes(),queueMicrotask(()=>{this.flush()}))}),n&&this.on(`beforeSendSession`,wDe)}eventFromException(e,t){return zP(this._options.stackParser,e,t,this._options.attachStacktrace)}eventFromMessage(e,t=`info`,n){return BP(this._options.stackParser,e,t,n,this._options.attachStacktrace)}_prepareEvent(e,t,n,r){return e.platform=e.platform||`javascript`,super._prepareEvent(e,t,n,r)}};function yMe(e){return{release:typeof __SENTRY_RELEASE__==`string`?__SENTRY_RELEASE__:Y.SENTRY_RELEASE?.id,sendClientReports:!0,parentSpanIsAlwaysRootSpan:!0,...e}}var WP=typeof __SENTRY_DEBUG__>`u`||__SENTRY_DEBUG__,GP=G,bMe=(e,t)=>e>t[1]?`poor`:e>t[0]?`needs-improvement`:`good`,KP=(e,t,n,r)=>{let i,a;return o=>{t.value>=0&&(o||r)&&(a=t.value-(i??0),(a||i===void 0)&&(i=t.value,t.delta=a,t.rating=bMe(t.value,n),e(t)))}},qP=(e=!0)=>{let t=GP.performance?.getEntriesByType?.(`navigation`)[0];if(!e||t&&t.responseStart>0&&t.responseStart<performance.now())return t},JP=()=>qP()?.activationStart??0;function YP(e,t,n){GP.document&&GP.addEventListener(e,t,n)}function XP(e,t,n){GP.document&&GP.removeEventListener(e,t,n)}var ZP=-1,QP=new Set,xMe=()=>GP.document?.visibilityState===`hidden`&&!GP.document?.prerendering?0:1/0,$P=e=>{if(SMe(e)&&ZP>-1){if(e.type===`visibilitychange`||e.type===`pagehide`)for(let e of QP)e();isFinite(ZP)||(ZP=e.type===`visibilitychange`?e.timeStamp:0,XP(`prerenderingchange`,$P,!0))}},eF=()=>{if(GP.document&&ZP<0){let e=JP();ZP=(GP.document.prerendering?void 0:globalThis.performance.getEntriesByType(`visibility-state`).filter(t=>t.name===`hidden`&&t.startTime>e)[0]?.startTime)??xMe(),YP(`visibilitychange`,$P,!0),YP(`pagehide`,$P,!0),YP(`prerenderingchange`,$P,!0)}return{get firstHiddenTime(){return ZP},onHidden(e){QP.add(e)}}};function SMe(e){return e.type===`pagehide`||GP.document?.visibilityState===`hidden`}var CMe=()=>`v5-${Date.now()}-${Math.floor(Math.random()*(9e12-1))+0xe8d4a51000}`,tF=(e,t=-1)=>{let n=qP(),r=`navigate`;return n&&(GP.document?.prerendering||JP()>0?r=`prerender`:GP.document?.wasDiscarded?r=`restore`:n.type&&(r=n.type.replace(/_/g,`-`))),{name:e,value:t,rating:`good`,delta:0,entries:[],id:CMe(),navigationType:r}},nF=new WeakMap;function rF(e,t){try{return nF.get(e)||nF.set(e,new t),nF.get(e)}catch{return new t}}var wMe=class{constructor(){this._sessionValue=0,this._sessionEntries=[]}_processEntry(e){if(e.hadRecentInput)return;let t=this._sessionEntries[0],n=this._sessionEntries[this._sessionEntries.length-1];this._sessionValue&&t&&n&&e.startTime-n.startTime<1e3&&e.startTime-t.startTime<5e3?(this._sessionValue+=e.value,this._sessionEntries.push(e)):(this._sessionValue=e.value,this._sessionEntries=[e]),this._onAfterProcessingUnexpectedShift?.(e)}},iF=(e,t,n={})=>{try{if(PerformanceObserver.supportedEntryTypes.includes(e)){let r=new PerformanceObserver(e=>{Promise.resolve().then(()=>{t(e.getEntries())})});return r.observe({type:e,buffered:!0,...n}),r}}catch{}},aF=e=>{let t=!1;return()=>{t||=(e(),!0)}},oF=e=>{GP.document?.prerendering?addEventListener(`prerenderingchange`,()=>e(),!0):e()},TMe=[1800,3e3],EMe=(e,t={})=>{oF(()=>{let n=eF(),r=tF(`FCP`),i,a=iF(`paint`,e=>{for(let t of e)t.name===`first-contentful-paint`&&(a.disconnect(),t.startTime<n.firstHiddenTime&&(r.value=Math.max(t.startTime-JP(),0),r.entries.push(t),i(!0)))});a&&(i=KP(e,r,TMe,t.reportAllChanges))})},DMe=[.1,.25],OMe=(e,t={})=>{EMe(aF(()=>{let n=tF(`CLS`,0),r,i=eF(),a=rF(t,wMe),o=e=>{for(let t of e)a._processEntry(t);a._sessionValue>n.value&&(n.value=a._sessionValue,n.entries=a._sessionEntries,r())},s=iF(`layout-shift`,o);s&&(r=KP(e,n,DMe,t.reportAllChanges),i.onHidden(()=>{o(s.takeRecords()),r(!0)}),GP?.setTimeout?.(r))}))},sF=0,cF=1/0,lF=0,kMe=e=>{e.forEach(e=>{e.interactionId&&(cF=Math.min(cF,e.interactionId),lF=Math.max(lF,e.interactionId),sF=lF?(lF-cF)/7+1:0)})},uF,dF=()=>uF?sF:performance.interactionCount||0,AMe=()=>{`interactionCount`in performance||uF||(uF=iF(`event`,kMe,{type:`event`,buffered:!0,durationThreshold:0}))},fF=10,pF=0,jMe=()=>dF()-pF,MMe=class{constructor(){this._longestInteractionList=[],this._longestInteractionMap=new Map}_resetInteractions(){pF=dF(),this._longestInteractionList.length=0,this._longestInteractionMap.clear()}_estimateP98LongestInteraction(){let e=Math.min(this._longestInteractionList.length-1,Math.floor(jMe()/50));return this._longestInteractionList[e]}_processEntry(e){if(this._onBeforeProcessingEntry?.(e),!(e.interactionId||e.entryType===`first-input`))return;let t=this._longestInteractionList.at(-1),n=this._longestInteractionMap.get(e.interactionId);if(n||this._longestInteractionList.length<fF||e.duration>t._latency){if(n?e.duration>n._latency?(n.entries=[e],n._latency=e.duration):e.duration===n._latency&&e.startTime===n.entries[0].startTime&&n.entries.push(e):(n={id:e.interactionId,entries:[e],_latency:e.duration},this._longestInteractionMap.set(n.id,n),this._longestInteractionList.push(n)),this._longestInteractionList.sort((e,t)=>t._latency-e._latency),this._longestInteractionList.length>fF){let e=this._longestInteractionList.splice(fF);for(let t of e)this._longestInteractionMap.delete(t.id)}this._onAfterProcessingINPCandidate?.(n)}}},mF=e=>{let t=GP.requestIdleCallback||GP.setTimeout;GP.document?.visibilityState===`hidden`?e():(e=aF(e),YP(`visibilitychange`,e,{once:!0,capture:!0}),YP(`pagehide`,e,{once:!0,capture:!0}),t(()=>{e(),XP(`visibilitychange`,e,{capture:!0}),XP(`pagehide`,e,{capture:!0})}))},NMe=[200,500],PMe=40,FMe=(e,t={})=>{if(!(globalThis.PerformanceEventTiming&&`interactionId`in PerformanceEventTiming.prototype))return;let n=eF();oF(()=>{AMe();let r=tF(`INP`),i,a=rF(t,MMe),o=e=>{mF(()=>{for(let t of e)a._processEntry(t);let t=a._estimateP98LongestInteraction();t&&t._latency!==r.value&&(r.value=t._latency,r.entries=t.entries,i())})},s=iF(`event`,o,{durationThreshold:t.durationThreshold??PMe});i=KP(e,r,NMe,t.reportAllChanges),s&&(s.observe({type:`first-input`,buffered:!0}),n.onHidden(()=>{o(s.takeRecords()),i(!0)}))})},IMe=class{_processEntry(e){this._onBeforeProcessingEntry?.(e)}},LMe=[2500,4e3],RMe=(e,t={})=>{oF(()=>{let n=eF(),r=tF(`LCP`),i,a=rF(t,IMe),o=e=>{t.reportAllChanges||(e=e.slice(-1));for(let t of e)a._processEntry(t),t.startTime<n.firstHiddenTime&&(r.value=Math.max(t.startTime-JP(),0),r.entries=[t],i())},s=iF(`largest-contentful-paint`,o);if(s){i=KP(e,r,LMe,t.reportAllChanges);let n=aF(()=>{o(s.takeRecords()),s.disconnect(),i(!0)}),a=e=>{e.isTrusted&&(mF(n),XP(e.type,a,{capture:!0}))};for(let e of[`keydown`,`click`,`visibilitychange`])YP(e,a,{capture:!0})}})},zMe=[800,1800],hF=e=>{GP.document?.prerendering?oF(()=>hF(e)):GP.document?.readyState===`complete`?setTimeout(e):addEventListener(`load`,()=>hF(e),!0)},BMe=(e,t={})=>{let n=tF(`TTFB`),r=KP(e,n,zMe,t.reportAllChanges);hF(()=>{let e=qP();e&&(n.value=Math.max(e.responseStart-JP(),0),n.entries=[e],r(!0))})},gF={},_F={},vF,yF,bF,xF;function SF(e,t=!1){return DF(`cls`,e,HMe,vF,t)}function CF(e,t=!1){return DF(`lcp`,e,UMe,yF,t)}function VMe(e){return DF(`ttfb`,e,WMe,bF)}function wF(e){return DF(`inp`,e,GMe,xF)}function TF(e,t){return OF(e,t),_F[e]||(KMe(e),_F[e]=!0),kF(e,t)}function EF(e,t){let n=gF[e];if(n?.length)for(let r of n)try{r(t)}catch(t){WP&&K.error(`Error while triggering instrumentation handler.
|
|
993
993
|
Type: ${e}
|
|
994
994
|
Name: ${mw(r)}
|
|
995
|
-
Error:`,t)}}function VMe(){return DMe(e=>{DF(`cls`,{metric:e}),yF=e},{reportAllChanges:!0})}function HMe(){return LMe(e=>{DF(`lcp`,{metric:e}),bF=e},{reportAllChanges:!0})}function UMe(){return zMe(e=>{DF(`ttfb`,{metric:e}),xF=e})}function WMe(){return PMe(e=>{DF(`inp`,{metric:e}),SF=e})}function OF(e,t,n,r,i=!1){kF(e,t);let a;return vF[e]||(a=n(),vF[e]=!0),r&&t({metric:r}),AF(e,t,i?a:void 0)}function GMe(e){let t={};e===`event`&&(t.durationThreshold=0),aF(e,t=>{DF(e,{entries:t})},t)}function kF(e,t){_F[e]=_F[e]||[],_F[e].push(t)}function AF(e,t,n){return()=>{n&&n();let r=_F[e];if(!r)return;let i=r.indexOf(t);i!==-1&&r.splice(i,1)}}function KMe(e){return`duration`in e}var qMe=80,jF={};try{typeof Node<`u`&&(jF.parentNode=Object.getOwnPropertyDescriptor(Node.prototype,`parentNode`).get),typeof Element<`u`&&(jF.tagName=Object.getOwnPropertyDescriptor(Element.prototype,`tagName`).get,jF.id=Object.getOwnPropertyDescriptor(Element.prototype,`id`).get,jF.className=Object.getOwnPropertyDescriptor(Element.prototype,`className`).get,jF.getAttribute=Element.prototype.getAttribute),typeof HTMLElement<`u`&&(jF.dataset=Object.getOwnPropertyDescriptor(HTMLElement.prototype,`dataset`).get)}catch{}function MF(e,t,n){let r=jF[t];if(r)try{return r.call(e,n)}catch{}let i=e[t];return typeof i==`function`?i.call(e,n):i}function NF(e,t={}){if(!e)return`<unknown>`;try{let n=e,r=[],i=0,a=0,o,s=Array.isArray(t)?t:t.keyAttrs,c=!Array.isArray(t)&&t.maxStringLength||qMe;for(;n&&i++<5&&(o=JMe(n,s),!(o===`html`||i>1&&a+r.length*3+o.length>=c));)r.push(o),a+=o.length,n=MF(n,`parentNode`);return r.reverse().join(` > `)}catch{return`<unknown>`}}function JMe(e,t){let n=[],r=MF(e,`tagName`);if(!r)return``;if(typeof HTMLElement<`u`&&e instanceof HTMLElement){let t=MF(e,`dataset`);if(t){if(t.sentryComponent)return t.sentryComponent;if(t.sentryElement)return t.sentryElement}}n.push(r.toLowerCase());let i=t?.length?t.filter(t=>MF(e,`getAttribute`,t)).map(t=>[t,MF(e,`getAttribute`,t)]):null;if(i?.length)i.forEach(e=>{n.push(`[${e[0]}="${e[1]}"]`)});else{let t=MF(e,`id`);t&&n.push(`#${t}`);let r=MF(e,`className`);if(r&&jw(r)){let e=r.split(/\s+/);for(let t of e)n.push(`.${t}`)}}for(let t of[`aria-label`,`type`,`name`,`title`,`alt`]){let r=MF(e,`getAttribute`,t);r&&n.push(`[${t}="${r}"]`)}return n.join(``)}var YMe=e=>{let t=t=>{(t.type===`pagehide`||KP.document?.visibilityState===`hidden`)&&e(t)};XP(`visibilitychange`,t,{capture:!0,once:!0}),XP(`pagehide`,t,{capture:!0,once:!0})};function PF(e){return typeof e==`number`&&isFinite(e)}function FF(e,t,n,{...r}){let i=DE(e).start_timestamp;return i&&i>t&&typeof e.updateStartTime==`function`&&e.updateStartTime(t),DD(e,()=>{let e=ED({startTime:t,...r});return e&&e.end(n),e})}function IF(e){let t=J();if(!t)return;let{name:n,transaction:r,attributes:i,startTime:a}=e,{release:o,environment:s}=t.getOptions(),{userInfo:c}=t.getDataCollectionOptions(),l=t.getIntegrationByName(`Replay`)?.getReplayId(),u=q(),d=u.getUser(),f=d===void 0?void 0:d.email||d.id||d.ip_address,p;try{p=u.getScopeData().contexts.profile.profile_id}catch{}return ED({name:n,attributes:{release:o,environment:s,user:f||void 0,profile_id:p||void 0,replay_id:l||void 0,transaction:r,"user_agent.original":KP.navigator?.userAgent,"client.address":c?`{{auto}}`:void 0,...i},startTime:a,experimental:{standalone:!0}})}function LF(){return KP.addEventListener&&KP.performance}function RF(e){return e/1e3}function XMe(e){let t=`unknown`,n=`unknown`,r=``;for(let i of e){if(i===`/`){[t,n]=e.split(`/`);break}if(!isNaN(Number(i))){t=r===`h`?`http`:r,n=e.split(r)[1];break}r+=i}return r===e&&(t=r),{name:t,version:n}}function zF(e){try{return PerformanceObserver.supportedEntryTypes.includes(e)}catch{return!1}}function BF(e,t){let n,r=!1;function i(e){!r&&n&&t(e,n.spanContext().spanId,n),r=!0}YMe(()=>{i(`pagehide`)});let a=e.on(`beforeStartNavigationSpan`,(e,t)=>{t?.isRedirect||(i(`navigation`),a(),o())}),o=e.on(`afterStartPageLoadSpan`,e=>{n=e,o()})}function ZMe(e){let t=0,n;if(!zF(`layout-shift`))return;let r=CF(({metric:e})=>{let r=e.entries[e.entries.length-1];r&&(t=e.value,n=r)},!0);BF(e,(e,i)=>{QMe(t,n,i,e),r()})}function QMe(e,t,n,r){GP&&K.log(`Sending CLS span (${e})`);let i=t?RF((yT()||0)+t.startTime):_T(),a=q().getScopeData().transactionName,o=t?NF(t.sources[0]?.node):`Layout shift`,s={[qT]:`auto.http.browser.cls`,[KT]:`ui.webvital.cls`,[$T]:0,"sentry.pageload.span_id":n,"sentry.report_event":r};t?.sources&&t.sources.forEach((e,t)=>{s[`cls.source.${t+1}`]=NF(e.node)});let c=IF({name:o,transaction:a,attributes:s,startTime:i});c&&(c.addEvent(`cls`,{[YT]:``,[XT]:e}),c.end(i))}function VF(e){return e!=null&&e>0&&e<=6e4}function $Me(e){let t=0,n;if(!zF(`largest-contentful-paint`))return;let r=wF(({metric:e})=>{let r=e.entries[e.entries.length-1];!r||!VF(e.value)||(t=e.value,n=r)},!0);BF(e,(e,i)=>{eNe(t,n,i,e),r()})}function eNe(e,t,n,r){if(!VF(e))return;GP&&K.log(`Sending LCP span (${e})`);let i=RF((yT()||0)+(t?.startTime||0)),a=q().getScopeData().transactionName,o=t?NF(t.element):`Largest contentful paint`,s={[qT]:`auto.http.browser.lcp`,[KT]:`ui.webvital.lcp`,[$T]:0,"sentry.pageload.span_id":n,"sentry.report_event":r};t&&(t.element&&(s[`lcp.element`]=NF(t.element)),t.id&&(s[`lcp.id`]=t.id),t.url&&(s[`lcp.url`]=t.url),t.loadTime!=null&&(s[`lcp.loadTime`]=t.loadTime),t.renderTime!=null&&(s[`lcp.renderTime`]=t.renderTime),t.size!=null&&(s[`lcp.size`]=t.size));let c=IF({name:o,transaction:a,attributes:s,startTime:i});c&&(c.addEvent(`lcp`,{[YT]:`millisecond`,[XT]:e}),c.end(i))}function HF(e){return e&&((yT()||performance.timeOrigin)+e)/1e3}function UF(e){let t={};if(e.nextHopProtocol!=null){let{name:n,version:r}=XMe(e.nextHopProtocol);t[`network.protocol.version`]=r,t[`network.protocol.name`]=n}return yT()||LF()?.timeOrigin?tNe({...t,"http.request.redirect_start":HF(e.redirectStart),"http.request.redirect_end":HF(e.redirectEnd),"http.request.worker_start":HF(e.workerStart),"http.request.fetch_start":HF(e.fetchStart),"http.request.domain_lookup_start":HF(e.domainLookupStart),"http.request.domain_lookup_end":HF(e.domainLookupEnd),"http.request.connect_start":HF(e.connectStart),"http.request.secure_connection_start":HF(e.secureConnectionStart),"http.request.connection_end":HF(e.connectEnd),"http.request.request_start":HF(e.requestStart),"http.request.response_start":HF(e.responseStart),"http.request.response_end":HF(e.responseEnd),"http.request.time_to_first_byte":e.responseStart==null?void 0:e.responseStart/1e3}):t}function tNe(e){return Object.fromEntries(Object.entries(e).filter(([,e])=>e!=null))}var nNe=2147483647,WF=0,GF={},KF,qF;function rNe({recordClsStandaloneSpans:e,recordLcpStandaloneSpans:t,client:n}){let r=LF();if(r&&yT()){r.mark&&KP.performance.mark(`sentry-tracing-init`);let i=t?$Me(n):t===!1?cNe():void 0,a=e?ZMe(n):e===!1?sNe():void 0,o=lNe(),s=uNe();return()=>{o(),s(),i?.(),a?.()}}return()=>void 0}function iNe(){EF(`longtask`,({entries:e})=>{let t=UE();if(!t)return;let{op:n,start_timestamp:r}=DE(t);for(let i of e){let e=RF(yT()+i.startTime),a=RF(i.duration);n===`navigation`&&r&&e<r||FF(t,e,e+a,{name:`Main UI thread blocked`,op:`ui.long-task`,attributes:{[qT]:`auto.ui.browser.metrics`}})}})}function aNe(){new PerformanceObserver(e=>{let t=UE();if(t)for(let n of e.getEntries()){if(!n.scripts[0])continue;let e=RF(yT()+n.startTime),{start_timestamp:r,op:i}=DE(t);if(i===`navigation`&&r&&e<r)continue;let a=RF(n.duration),o={[qT]:`auto.ui.browser.metrics`},{invoker:s,invokerType:c,sourceURL:l,sourceFunctionName:u,sourceCharPosition:d}=n.scripts[0];o[`browser.script.invoker`]=s,o[`browser.script.invoker_type`]=c,l&&(o[`code.filepath`]=l),u&&(o[`code.function`]=u),d!==-1&&(o[`browser.script.source_char_position`]=d),FF(t,e,e+a,{name:`Main UI thread blocked`,op:`ui.long-animation-frame`,attributes:o})}}).observe({type:`long-animation-frame`,buffered:!0})}function oNe(){EF(`event`,({entries:e})=>{let t=UE();if(t){for(let n of e)if(n.name===`click`){let e=RF(yT()+n.startTime),r=RF(n.duration),i={name:NF(n.target),op:`ui.interaction.${n.name}`,startTime:e,attributes:{[qT]:`auto.ui.browser.metrics`}},a=SM(n.target);a&&(i.attributes[`ui.component_name`]=a),FF(t,e,e+r,i)}}})}function sNe(){return CF(({metric:e})=>{let t=e.entries[e.entries.length-1];t&&(GF.cls={value:e.value,unit:``},qF=t)},!0)}function cNe(){return wF(({metric:e})=>{let t=e.entries[e.entries.length-1];!t||!VF(e.value)||(GF.lcp={value:e.value,unit:`millisecond`},KF=t)},!0)}function lNe(){return BMe(({metric:e})=>{e.entries[e.entries.length-1]&&(GF.ttfb={value:e.value,unit:`millisecond`})})}function uNe(){return EF(`paint`,({entries:e})=>{let t=tF();for(let n of e){let e=n.startTime<t.firstHiddenTime;n.name===`first-paint`&&e&&(GF.fp={value:n.startTime,unit:`millisecond`}),n.name===`first-contentful-paint`&&e&&(GF.fcp={value:n.startTime,unit:`millisecond`})}})}function dNe(e,t){let n=LF(),r=yT();if(!n?.getEntries||!r)return;let{spanStreamingEnabled:i,ignorePerformanceApiSpans:a,ignoreResourceSpans:o}=t,s=RF(r),c=n.getEntries(),{op:l,start_timestamp:u}=DE(e);c.slice(WF).forEach(t=>{let n=RF(t.startTime),r=RF(Math.max(0,t.duration));if(!(l===`navigation`&&u&&s+n<u))switch(t.entryType){case`navigation`:gNe(e,t,s);break;case`mark`:case`paint`:case`measure`:mNe(e,t,n,r,s,a);break;case`resource`:yNe(e,t,t.name,n,r,s,o)}}),WF=Math.max(c.length-1,0),bNe(e,i)}function fNe(e,t){let n=yT();if(!LF()?.getEntries||!n){JF();return}let{spanStreamingEnabled:r,recordClsOnPageloadSpan:i,recordLcpOnPageloadSpan:a}=t,o=RF(n);if(DE(e).op===`pageload`){if(CNe(GF),r){let t=(t,n,r)=>{let i=r??`browser.web_vital.${t}.value`;e.setAttribute(i,n),GP&&K.log(`Setting web vital attribute`,{[i]:n},`on pageload span`)};[`ttfb`,`fp`,`fcp`].forEach(e=>{GF[e]&&t(e,GF[e].value)}),GF[`ttfb.requestTime`]&&t(`ttfb.requestTime`,GF[`ttfb.requestTime`].value,`browser.web_vital.ttfb.request_time`)}else i||delete GF.cls,a||delete GF.lcp,Object.entries(GF).forEach(([t,n])=>{mD(t,n.value,n.unit,e)}),xNe(e,t);e.setAttribute(r?`browser.performance.time_origin`:`performance.timeOrigin`,o),e.setAttribute(r?`browser.performance.navigation.activation_start`:`performance.activationStart`,YP())}JF()}function JF(){KF=void 0,qF=void 0,GF={}}function pNe(e){if(e?.entryType===`measure`)try{return e.detail.devtools.track===`Components ⚛`}catch{return}}function mNe(e,t,n,r,i,a){if(pNe(t)||[`mark`,`measure`].includes(t.entryType)&&sT(t.name,a))return;let o=JP(!1),s=RF(o?o.requestStart:0),c=i+Math.max(n,s),l=i+n,u=l+r,d={[qT]:`auto.resource.browser.metrics`};c!==l&&(d[`sentry.browser.measure_happened_before_request`]=!0,d[`sentry.browser.measure_start_time`]=c),hNe(d,t),c<=u&&FF(e,c,u,{name:t.name,op:t.entryType,attributes:d})}function hNe(e,t){try{let n=t.detail;if(!n)return;if(typeof n==`object`){for(let[t,r]of Object.entries(n))if(r&&Nw(r))e[`sentry.browser.measure.detail.${t}`]=r;else if(r!==void 0)try{e[`sentry.browser.measure.detail.${t}`]=JSON.stringify(r)}catch{}return}if(Nw(n)){e[`sentry.browser.measure.detail`]=n;return}try{e[`sentry.browser.measure.detail`]=JSON.stringify(n)}catch{}}catch{}}function gNe(e,t,n){[`unloadEvent`,`redirect`,`domContentLoadedEvent`,`loadEvent`,`connect`].forEach(r=>{YF(e,t,r,n)}),YF(e,t,`secureConnection`,n,`TLS/SSL`),YF(e,t,`fetch`,n,`cache`),YF(e,t,`domainLookup`,n,`DNS`),vNe(e,t,n)}function YF(e,t,n,r,i=n){let a=t[_Ne(n)],o=t[`${n}Start`];!o||!a||FF(e,r+RF(o),r+RF(a),{op:`browser.${i}`,name:t.name,attributes:{[qT]:`auto.ui.browser.metrics`,...n===`redirect`&&t.redirectCount!=null?{"http.redirect_count":t.redirectCount}:{}}})}function _Ne(e){return e===`secureConnection`?`connectEnd`:e===`fetch`?`domainLookupStart`:`${e}End`}function vNe(e,t,n){let r=n+RF(t.requestStart),i=n+RF(t.responseEnd),a=n+RF(t.responseStart);t.responseEnd&&(FF(e,r,i,{op:`browser.request`,name:t.name,attributes:{[qT]:`auto.ui.browser.metrics`}}),FF(e,a,i,{op:`browser.response`,name:t.name,attributes:{[qT]:`auto.ui.browser.metrics`}}))}function yNe(e,t,n,r,i,a,o){if(t.initiatorType===`xmlhttprequest`||t.initiatorType===`fetch`)return;let s=t.initiatorType?`resource.${t.initiatorType}`:`resource.other`;if(o?.includes(s))return;let c={[qT]:`auto.resource.browser.metrics`},l=yk(n);l.protocol&&(c[`url.scheme`]=l.protocol.split(`:`).pop()),l.host&&(c[`server.address`]=l.host),c[`url.same_origin`]=n.includes(KP.location.origin),c[Vwe]=n,SNe(t,c,[[`responseStatus`,`http.response.status_code`],[`transferSize`,`http.response_transfer_size`],[`encodedBodySize`,`http.response_content_length`],[`decodedBodySize`,`http.decoded_response_content_length`],[`renderBlockingStatus`,`resource.render_blocking_status`],[`deliveryType`,`http.response_delivery_type`]]);let u={...c,...UF(t)},d=a+r;FF(e,d,d+i,{name:n.replace(KP.location.origin,``),op:s,attributes:u})}function bNe(e,t){let n=KP.navigator;if(!n)return;let r=n.connection;r&&(r.effectiveType&&e.setAttribute(t?`network.connection.effective_type`:`effectiveConnectionType`,r.effectiveType),r.type&&e.setAttribute(t?`network.connection.type`:`connectionType`,r.type),PF(r.rtt)&&(t?e.setAttribute(`network.connection.rtt`,r.rtt):DE(e).op===`pageload`&&mD(`connection.rtt`,r.rtt,`millisecond`))),PF(n.deviceMemory)&&(t?e.setAttribute(`device.memory.estimated_capacity`,n.deviceMemory):e.setAttribute(`deviceMemory`,`${n.deviceMemory} GB`)),PF(n.hardwareConcurrency)&&(t?e.setAttribute(`device.processor_count`,n.hardwareConcurrency):e.setAttribute(`hardwareConcurrency`,String(n.hardwareConcurrency)))}function xNe(e,t){KF&&t.recordLcpOnPageloadSpan&&(KF.element&&e.setAttribute(`lcp.element`,NF(KF.element)),KF.id&&e.setAttribute(`lcp.id`,KF.id),KF.url&&e.setAttribute(`lcp.url`,KF.url.trim().slice(0,200)),KF.loadTime!=null&&e.setAttribute(`lcp.loadTime`,KF.loadTime),KF.renderTime!=null&&e.setAttribute(`lcp.renderTime`,KF.renderTime),e.setAttribute(`lcp.size`,KF.size)),qF?.sources&&t.recordClsOnPageloadSpan&&qF.sources.forEach((t,n)=>e.setAttribute(`cls.source.${n+1}`,NF(t.node)))}function SNe(e,t,n){n.forEach(([n,r])=>{let i=e[n];i!=null&&(typeof i==`number`&&i<nNe||typeof i==`string`)&&(t[r]=i)})}function CNe(e){let t=JP(!1);if(!t)return;let{responseStart:n,requestStart:r}=t;r<=n&&(e[`ttfb.requestTime`]={value:n-r,unit:`millisecond`})}var wNe=`ElementTiming`,TNe=EO((()=>({name:wNe,setup(){!LF()||!yT()||EF(`element`,({entries:e})=>{for(let t of e){let e=t;if(!e.identifier)continue;let n=e.identifier,r=e.name,i=e.renderTime,a=e.loadTime,o={"sentry.origin":`auto.ui.browser.element_timing`,"ui.element.identifier":n};r&&(o[`ui.element.paint_type`]=r),e.id&&(o[`ui.element.id`]=e.id),e.element&&(o[`ui.element.type`]=e.element.tagName.toLowerCase()),e.url&&(o[`ui.element.url`]=e.url),e.naturalWidth&&(o[`ui.element.width`]=e.naturalWidth),e.naturalHeight&&(o[`ui.element.height`]=e.naturalHeight),i>0&&vA(`ui.element.render_time`,i,{unit:`millisecond`,attributes:o}),a>0&&vA(`ui.element.load_time`,a,{unit:`millisecond`,attributes:o})}})}}))),XF=[],ZF=new Map,QF=new Map;function ENe(){if(LF()&&yT()){let e=DNe();return()=>{e()}}return()=>void 0}var $F={click:`click`,pointerdown:`click`,pointerup:`click`,mousedown:`click`,mouseup:`click`,touchstart:`click`,touchend:`click`,mouseover:`hover`,mouseout:`hover`,mouseenter:`hover`,mouseleave:`hover`,pointerover:`hover`,pointerout:`hover`,pointerenter:`hover`,pointerleave:`hover`,dragstart:`drag`,dragend:`drag`,drag:`drag`,dragenter:`drag`,dragleave:`drag`,dragover:`drag`,drop:`drag`,keydown:`press`,keyup:`press`,keypress:`press`,input:`press`};function DNe(){return TF(ONe)}var ONe=({metric:e})=>{if(e.value==null)return;let t=RF(e.value);if(t>60)return;let n=e.entries.find(t=>t.duration===e.value&&$F[t.name]);if(!n)return;let{interactionId:r}=n,i=$F[n.name],a=RF(yT()+n.startTime),o=UE(),s=o?VE(o):void 0,c=r==null?void 0:ZF.get(r),l=c?.span||s,u=l?DE(l).description:q().getScopeData().transactionName,d=IF({name:c?.elementName||NF(n.target),transaction:u,attributes:{[qT]:`auto.http.browser.inp`,[KT]:`ui.interaction.${i}`,[$T]:n.duration},startTime:a});d&&(d.addEvent(`inp`,{[YT]:`millisecond`,[XT]:e.value}),d.end(a+t))};function kNe(e){return e==null?void 0:ZF.get(e)}function ANe(){let e=Object.keys($F);jO()&&e.forEach(e=>{KP.addEventListener(e,t,{capture:!0,passive:!0})});function t(e){let t=e.target;if(!t)return;let n=NF(t),r=Math.round(e.timeStamp);if(QF.set(r,n),QF.size>50){let e=QF.keys().next().value;e!==void 0&&QF.delete(e)}}function n(e){let t=Math.round(e.startTime),n=QF.get(t);if(!n)for(let e=-5;e<=5;e++){let r=QF.get(t+e);if(r){n=r;break}}return n||`<unknown>`}let r=({entries:e})=>{let t=UE(),r=t&&VE(t);e.forEach(e=>{if(!KMe(e))return;let t=e.interactionId;if(t==null||ZF.has(t))return;let i=e.target?NF(e.target):n(e);if(XF.length>10){let e=XF.shift();ZF.delete(e)}XF.push(t),ZF.set(t,{span:r,elementName:i})})};EF(`event`,r),EF(`first-input`,r)}function eI(e){let{name:t,op:n,origin:r,metricName:i,value:a,attributes:o,parentSpan:s,reportEvent:c,startTime:l,endTime:u}=e,d=q().getScopeData().transactionName,f={[qT]:r,[KT]:n,[$T]:0,[`browser.web_vital.${i}.value`]:a,[Sl]:d,[bl]:d,"user_agent.original":KP.navigator?.userAgent,...o};s&&OE(s).attributes?.[`sentry.op`]===`pageload`&&(f[`sentry.pageload.span_id`]=s.spanContext().spanId),c&&(f[`browser.web_vital.${i}.report_event`]=c);let p=ED({name:t,attributes:f,startTime:l,parentSpan:s});p&&p.end(u??l)}function jNe(e){let t=0,n;if(!zF(`largest-contentful-paint`))return;let r=wF(({metric:e})=>{let r=e.entries[e.entries.length-1];!r||!VF(e.value)||(t=e.value,n=r)},!0);BF(e,(e,i,a)=>{MNe(t,n,a,e),r()})}function MNe(e,t,n,r){if(!VF(e))return;GP&&K.log(`Sending LCP span (${e})`);let i=yT()||0,a=RF(i),o=RF(i+(t?.startTime||0)),s=t?NF(t.element):`Largest contentful paint`,c={};t?.element&&(c[`browser.web_vital.lcp.element`]=NF(t.element)),t?.id&&(c[`browser.web_vital.lcp.id`]=t.id),t?.url&&(c[`browser.web_vital.lcp.url`]=t.url),t?.loadTime!=null&&(c[`browser.web_vital.lcp.load_time`]=t.loadTime),t?.renderTime!=null&&(c[`browser.web_vital.lcp.render_time`]=t.renderTime),t?.size!=null&&(c[`browser.web_vital.lcp.size`]=t.size),eI({name:s,op:`ui.webvital.lcp`,origin:`auto.http.browser.lcp`,metricName:`lcp`,value:e,attributes:c,parentSpan:n,reportEvent:r,startTime:a,endTime:o})}function NNe(e){let t=0,n;if(!zF(`layout-shift`))return;let r=CF(({metric:e})=>{let r=e.entries[e.entries.length-1];r&&(t=e.value,n=r)},!0);BF(e,(e,i,a)=>{PNe(t,n,a,e),r()})}function PNe(e,t,n,r){GP&&K.log(`Sending CLS span (${e})`);let i=t?RF((yT()||0)+t.startTime):_T(),a=t?NF(t.sources[0]?.node):`Layout shift`,o={};t?.sources&&t.sources.forEach((e,t)=>{o[`browser.web_vital.cls.source.${t+1}`]=NF(e.node)}),eI({name:a,op:`ui.webvital.cls`,origin:`auto.http.browser.cls`,metricName:`cls`,value:e,attributes:o,parentSpan:n,reportEvent:r,startTime:i})}function FNe(){!LF()||!yT()||TF(({metric:e})=>{if(e.value==null||RF(e.value)>60)return;let t=e.entries.find(t=>t.duration===e.value&&$F[t.name]);t&&INe(e.value,t)})}function INe(e,t){GP&&K.log(`Sending INP span (${e})`);let n=RF(yT()+t.startTime),r=RF(e),i=$F[t.name],a=kNe(t.interactionId),o=UE(),s=o?VE(o):void 0,c=a?.span||s,l=c?OE(c).name:q().getScopeData().transactionName;eI({name:a?.elementName||NF(t.target),op:`ui.interaction.${i}`,origin:`auto.http.browser.inp`,metricName:`inp`,value:e,attributes:{[$T]:t.duration,[Sl]:l,[bl]:l},startTime:n,endTime:n+r,parentSpan:c})}var LNe=1e3,tI,nI,rI;function iI(e){yw(`dom`,e),bw(`dom`,RNe)}function RNe(){if(!KP.document)return;let e=xw.bind(null,`dom`),t=aI(e,!0);KP.document.addEventListener(`click`,t,!1),KP.document.addEventListener(`keypress`,t,!1),[`EventTarget`,`Node`].forEach(t=>{let n=KP[t]?.prototype;n?.hasOwnProperty?.(`addEventListener`)&&(Bw(n,`addEventListener`,function(t){return function(n,r,i){if(n===`click`||n==`keypress`)try{let r=this.__sentry_instrumentation_handlers__=this.__sentry_instrumentation_handlers__||{},a=r[n]=r[n]||{refCount:0};if(!a.handler){let r=aI(e);a.handler=r,t.call(this,n,r,i)}a.refCount++}catch{}return t.call(this,n,r,i)}}),Bw(n,`removeEventListener`,function(e){return function(t,n,r){if(t===`click`||t==`keypress`)try{let n=this.__sentry_instrumentation_handlers__||{},i=n[t];i&&(i.refCount--,i.refCount<=0&&(e.call(this,t,i.handler,r),i.handler=void 0,delete n[t]),Object.keys(n).length===0&&delete this.__sentry_instrumentation_handlers__)}catch{}return e.call(this,t,n,r)}}))})}function zNe(e){if(e.type!==nI)return!1;try{if(!e.target||e.target._sentryId!==rI)return!1}catch{}return!0}function BNe(e,t){return e===`keypress`?!t?.tagName||!(t.tagName===`INPUT`||t.tagName===`TEXTAREA`||t.isContentEditable):!1}function aI(e,t=!1){return n=>{if(!n||n._sentryCaptured)return;let r=VNe(n);if(BNe(n.type,r))return;Vw(n,`_sentryCaptured`,!0),r&&!r._sentryId&&Vw(r,`_sentryId`,lT());let i=n.type===`keypress`?`input`:n.type;zNe(n)||(e({event:n,name:i,global:t}),nI=n.type,rI=r?r._sentryId:void 0),clearTimeout(tI),tI=KP.setTimeout(()=>{rI=void 0,nI=void 0},LNe)}}function VNe(e){try{return e.target}catch{return null}}var oI;function sI(e){let t=`history`;yw(t,e),bw(t,HNe)}function HNe(){if(KP.addEventListener(`popstate`,()=>{let e=KP.location.href,t=oI;oI=e,t!==e&&xw(`history`,{from:t,to:e})}),!tM())return;function e(e){return function(...t){let n=t.length>2?t[2]:void 0;if(n){let r=oI,i=UNe(String(n));if(oI=i,r===i)return e.apply(this,t);xw(`history`,{from:r,to:i})}return e.apply(this,t)}}Bw(KP.history,`pushState`,e),Bw(KP.history,`replaceState`,e)}function UNe(e){try{return new URL(e,KP.location.origin).toString()}catch{return e}}var cI={};function lI(e){let t=cI[e];if(t)return t;let n=KP[e];if(rM(n))return cI[e]=n.bind(KP);let r=KP.document;if(r&&typeof r.createElement==`function`)try{let t=r.createElement(`iframe`);t.hidden=!0,r.head.appendChild(t);let i=t.contentWindow;i?.[e]&&(n=i[e]),r.head.removeChild(t)}catch(t){GP&&K.warn(`Could not create sandbox iframe for ${e} check, bailing to window.${e}: `,t)}return n&&(cI[e]=n.bind(KP))}function WNe(e){cI[e]=void 0}function uI(...e){return lI(`setTimeout`)(...e)}var dI=`__sentry_xhr_v3__`;function fI(e){yw(`xhr`,e),bw(`xhr`,GNe)}function GNe(){if(!KP.XMLHttpRequest)return;let e=XMLHttpRequest.prototype;e.open=new Proxy(e.open,{apply(e,t,n){let r=Error(),i=_T()*1e3,a=jw(n[0])?n[0].toUpperCase():void 0,o=KNe(n[1]);if(!a||!o)return e.apply(t,n);t[dI]={method:a,url:o,request_headers:{}},a===`POST`&&o.match(/sentry_key/)&&(t.__sentry_own_request__=!0);let s=()=>{let e=t[dI];if(e&&t.readyState===4){try{e.status_code=t.status}catch{}xw(`xhr`,{endTimestamp:_T()*1e3,startTimestamp:i,xhr:t,virtualError:r}),t.removeEventListener(`readystatechange`,s)}};return`onreadystatechange`in t&&typeof t.onreadystatechange==`function`?t.onreadystatechange=new Proxy(t.onreadystatechange,{apply(e,t,n){return s(),e.apply(t,n)}}):t.addEventListener(`readystatechange`,s),t.setRequestHeader=new Proxy(t.setRequestHeader,{apply(e,t,n){let[r,i]=n,a=t[dI];return a&&jw(r)&&jw(i)&&(a.request_headers[r.toLowerCase()]=i),e.apply(t,n)}}),e.apply(t,n)}}),e.send=new Proxy(e.send,{apply(e,t,n){let r=t[dI];return r?(n[0]!==void 0&&(r.body=n[0]),xw(`xhr`,{startTimestamp:_T()*1e3,xhr:t}),e.apply(t,n)):e.apply(t,n)}})}function KNe(e){if(jw(e))return e;try{return e.toString()}catch{}}var qNe=Symbol.for(`sentry__originalRequestBody`);function pI(e){return new URLSearchParams(e).toString()}function mI(e,t=K){try{if(typeof e==`string`)return[e];if(e instanceof URLSearchParams)return[e.toString()];if(e instanceof FormData)return[pI(e)];if(!e)return[void 0]}catch(n){return GP&&t.error(n,`Failed to serialize body`,e),[void 0,`BODY_PARSE_ERROR`]}return GP&&t.log(`Skipping network body because of body type`,e),[void 0,`UNPARSEABLE_BODY_TYPE`]}function hI(e=[]){if(e.length>=2&&e[1]&&typeof e[1]==`object`&&`body`in e[1])return e[1].body;if(e.length>=1&&e[0]instanceof Request){let t=e[0][qNe];return t===void 0?void 0:t}}function gI(e){let t;try{t=e.getAllResponseHeaders()}catch(t){return GP&&K.error(t,`Failed to get xhr response headers`,e),{}}return t?t.split(`\r
|
|
996
|
-
`).reduce((e,t)=>{let[n,r]=t.split(`: `);return r&&(e[n.toLowerCase()]=r),e},{}):{}}function JNe(e){if(typeof Element>`u`)return!1;try{return e instanceof Element}catch{return!1}}function YNe(e){try{return new URL(e,KP.location.origin).toString()}catch{return e}}var XNe=40;function ZNe(e,t=lI(`fetch`)){let n=0,r=0;async function i(i){let a=i.body.length;n+=a,r++;let o={body:i.body,method:`POST`,referrerPolicy:`strict-origin`,headers:e.headers,keepalive:n<=6e4&&r<15,...e.fetchOptions};try{let n=await t(e.url,o);return{statusCode:n.status,headers:{"x-sentry-rate-limits":n.headers.get(`X-Sentry-Rate-Limits`),"retry-after":n.headers.get(`Retry-After`)}}}catch(e){throw WNe(`fetch`),e}finally{n-=a,r--}}return qO(e,i,WO(e.bufferSize||XNe))}var X=typeof __SENTRY_DEBUG__>`u`||__SENTRY_DEBUG__;function QNe(){let e=J();if(!e){X&&K.warn(`No Sentry client available, profiling is not started`);return}if(!e.getIntegrationByName(`BrowserProfiling`)){X&&K.warn(`BrowserProfiling integration is not available`);return}e.emit(`startUIProfiler`)}function $Ne(){let e=J();if(!e){X&&K.warn(`No Sentry client available, profiling is not started`);return}if(!e.getIntegrationByName(`BrowserProfiling`)){X&&K.warn(`ProfilingIntegration is not available`);return}e.emit(`stopUIProfiler`)}var ePe={startProfiler:QNe,stopProfiler:$Ne},tPe=30,nPe=50;function _I(e,t,n,r){let i={filename:e,function:t===`<anonymous>`?`?`:t,in_app:!0};return n!==void 0&&(i.lineno=n),r!==void 0&&(i.colno=r),i}var rPe=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,iPe=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,aPe=/\((\S*)(?::(\d+))(?::(\d+))\)/,oPe=/at (.+?) ?\(data:(.+?),/,vI=[tPe,e=>{let t=e.match(oPe);if(t)return{filename:`<data:${t[2]}>`,function:t[1]};let n=rPe.exec(e);if(n){let[,e,t,r]=n;return _I(e,`?`,+t,+r)}let r=iPe.exec(e);if(r){if(r[2]?.indexOf(`eval`)===0){let e=aPe.exec(r[2]);e&&(r[2]=e[1],r[3]=e[2],r[4]=e[3])}let[e,t]=yI(r[1]||`?`,r[2]);return _I(t,e,r[3]?+r[3]:void 0,r[4]?+r[4]:void 0)}}],sPe=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,cPe=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,lPe=uw(vI,[nPe,e=>{let t=sPe.exec(e);if(t){if(t[3]&&t[3].indexOf(` > eval`)>-1){let e=cPe.exec(t[3]);e&&(t[1]=t[1]||`eval`,t[3]=e[1],t[4]=e[2],t[5]=``)}let e=t[3],n=t[1]||`?`;return[n,e]=yI(n,e),_I(e,n,t[4]?+t[4]:void 0,t[5]?+t[5]:void 0)}}]),yI=(e,t)=>{let n=e.indexOf(`safari-extension`)!==-1,r=e.indexOf(`safari-web-extension`)!==-1;return n||r?[e.indexOf(`@`)===-1?`?`:e.split(`@`)[0],n?`safari-extension:${t}`:`safari-web-extension:${t}`]:[e,t]};function uPe(e,{metadata:t,tunnel:n,dsn:r}){return aD({event_id:e.event_id,sent_at:new Date().toISOString(),...t?.sdk&&{sdk:{name:t.sdk.name,version:t.sdk.version}},...!!n&&!!r&&{dsn:fE(r)}},[dPe(e)])}function dPe(e){return[{type:`user_report`},e]}var bI=1024,fPe=`Breadcrumbs`,xI=EO(((e={})=>{let t={console:!0,dom:!0,fetch:!0,history:!0,sentry:!0,xhr:!0,...e};return{name:fPe,setup(e){t.console&&Uk(hPe(e)),t.dom&&iI(mPe(e,t.dom)),t.xhr&&fI(gPe(e)),t.fetch&&oM(_Pe(e)),t.history&&sI(vPe(e)),t.sentry&&e.on(`beforeSendEvent`,pPe(e))}}}));function pPe(e){return function(t){J()===e&&Ek({category:`sentry.${t.type===`transaction`?`transaction`:`event`}`,event_id:t.event_id,level:t.level,message:dT(t)},{event:t})}}function mPe(e,t){return function(n){if(J()!==e)return;let r,i,a=typeof t==`object`?t.serializeAttribute:void 0,o=typeof t==`object`&&typeof t.maxStringLength==`number`?t.maxStringLength:void 0;o&&o>bI&&(X&&K.warn(`\`dom.maxStringLength\` cannot exceed ${bI}, but a value of ${o} was configured. Sentry will use ${bI} instead.`),o=bI),typeof a==`string`&&(a=[a]);try{let e=n.event,t=yPe(e)?e.target:e;r=NF(t,{keyAttrs:a,maxStringLength:o}),i=SM(t)}catch{r=`<unknown>`}if(r.length===0)return;let s={category:`ui.${n.name}`,message:r};i&&(s.data={"ui.component_name":i}),Ek(s,{event:n.event,name:n.name,global:n.global})}}function hPe(e){return function(t){if(J()!==e)return;let n={category:`console`,data:{arguments:t.args,logger:`console`},level:Gk(t.level),message:aT(t.args,` `)};if(t.level===`assert`)if(t.args[0]===!1)n.message=`Assertion failed: ${aT(t.args.slice(1),` `)||`console.assert`}`,n.data.arguments=t.args.slice(1);else return;Ek(n,{input:t.args,level:t.level})}}function gPe(e){return function(t){if(J()!==e)return;let{startTimestamp:n,endTimestamp:r}=t,i=t.xhr[dI];if(!n||!r||!i)return;let{method:a,url:o,status_code:s,body:c}=i,l={method:a,url:o,status_code:s},u={xhr:t.xhr,input:c,startTimestamp:n,endTimestamp:r},d={category:`xhr`,data:l,type:`http`,level:$j(s)};e.emit(`beforeOutgoingRequestBreadcrumb`,d,u),Ek(d,u)}}function _Pe(e){return function(t){if(J()!==e)return;let{startTimestamp:n,endTimestamp:r}=t;if(r&&!(t.fetchData.url.match(/sentry_key/)&&t.fetchData.method===`POST`))if(t.error){let i={data:t.error,input:t.args,startTimestamp:n,endTimestamp:r},a={category:`fetch`,data:t.fetchData,level:`error`,type:`http`};e.emit(`beforeOutgoingRequestBreadcrumb`,a,i),Ek(a,i)}else{let i=t.response,a={...t.fetchData,status_code:i?.status},o={input:t.args,response:i,startTimestamp:n,endTimestamp:r},s={category:`fetch`,data:a,type:`http`,level:$j(a.status_code)};e.emit(`beforeOutgoingRequestBreadcrumb`,s,o),Ek(s,o)}}}function vPe(e){return function(t){if(J()!==e)return;let n=t.from,r=t.to,i=yk(Y.location.href),a=n?yk(n):void 0,o=yk(r);a?.path||(a=i),i.protocol===o.protocol&&i.host===o.host&&(r=o.relative),i.protocol===a.protocol&&i.host===a.host&&(n=a.relative),Ek({category:`navigation`,data:{from:n,to:r}})}}function yPe(e){return!!e&&!!e.target}var bPe=`EventTarget,Window,Node,ApplicationCache,AudioTrackList,BroadcastChannel,ChannelMergerNode,CryptoOperation,EventSource,FileReader,HTMLUnknownElement,IDBDatabase,IDBRequest,IDBTransaction,KeyOperation,MediaController,MessagePort,ModalWindow,Notification,SVGElementInstance,Screen,SharedWorker,TextTrack,TextTrackCue,TextTrackList,WebSocket,WebSocketWorker,Worker,XMLHttpRequest,XMLHttpRequestEventTarget,XMLHttpRequestUpload`.split(`,`),xPe=`BrowserApiErrors`,SI=EO(((e={})=>{let t={XMLHttpRequest:!0,eventTarget:!0,requestAnimationFrame:!0,setInterval:!0,setTimeout:!0,unregisterOriginalCallbacks:!1,...e};return{name:xPe,setupOnce(){t.setTimeout&&Bw(Y,`setTimeout`,CI),t.setInterval&&Bw(Y,`setInterval`,CI),t.requestAnimationFrame&&Bw(Y,`requestAnimationFrame`,SPe),t.XMLHttpRequest&&`XMLHttpRequest`in Y&&Bw(XMLHttpRequest.prototype,`send`,CPe);let e=t.eventTarget;e&&(Array.isArray(e)?e:bPe).forEach(e=>wPe(e,t))}}}));function CI(e){return function(...t){let n=t[0];return t[0]=MP(n,{mechanism:{handled:!1,type:`auto.browser.browserapierrors.${mw(e)}`}}),e.apply(this,t)}}function SPe(e){return function(t){return e.apply(this,[MP(t,{mechanism:{data:{handler:mw(e)},handled:!1,type:`auto.browser.browserapierrors.requestAnimationFrame`}})])}}function CPe(e){return function(...t){let n=this;return[`onload`,`onerror`,`onprogress`,`onreadystatechange`].forEach(e=>{e in n&&typeof n[e]==`function`&&Bw(n,e,function(t){let n={mechanism:{data:{handler:mw(t)},handled:!1,type:`auto.browser.browserapierrors.xhr.${e}`}},r=Uw(t);return r&&(n.mechanism.data.handler=mw(r)),MP(t,n)})}),e.apply(this,t)}}function wPe(e,t){let n=Y[e]?.prototype;n?.hasOwnProperty?.(`addEventListener`)&&(Bw(n,`addEventListener`,function(n){return function(r,i,a){try{TPe(i)&&(i.handleEvent=MP(i.handleEvent,{mechanism:{data:{handler:mw(i),target:e},handled:!1,type:`auto.browser.browserapierrors.handleEvent`}}))}catch{}return t.unregisterOriginalCallbacks&&EPe(this,r,i),n.apply(this,[r,MP(i,{mechanism:{data:{handler:mw(i),target:e},handled:!1,type:`auto.browser.browserapierrors.addEventListener`}}),a])}}),Bw(n,`removeEventListener`,function(e){return function(t,n,r){try{if(Object.prototype.hasOwnProperty.call(n,`__sentry_wrapped__`)){let i=n.__sentry_wrapped__;i&&e.call(this,t,i,r)}}catch{}return e.call(this,t,n,r)}}))}function TPe(e){return typeof e.handleEvent==`function`}function EPe(e,t,n){e&&typeof e==`object`&&`removeEventListener`in e&&typeof e.removeEventListener==`function`&&e.removeEventListener(t,n)}var wI=EO((e={})=>{let t=e.lifecycle??`route`;return{name:`BrowserSession`,setupOnce(){if(Y.document===void 0){X&&K.warn("Using the `browserSessionIntegration` in non-browser environments is not supported.");return}gO({ignoreDuration:!0});let e=!1;hF(()=>{e||=(yO(),!0)});let n=BT(),r=n.getUser();n.addScopeListener(t=>{let n=t.getUser();(r?.id!==n?.id||r?.ip_address!==n?.ip_address)&&(r=n,e&&yO())}),t===`route`&&sI(({from:t,to:n})=>{t!==n&&(gO({ignoreDuration:!0}),yO(),e=!0)})}}}),DPe=`CultureContext`,OPe=EO((()=>({name:DPe,preprocessEvent(e){let t=TI();t&&(e.contexts={...e.contexts,culture:{...t,...e.contexts?.culture}})},processSegmentSpan(e){let t=TI();t&&JD(e,{"culture.locale":t.locale,"culture.timezone":t.timezone,"culture.calendar":t.calendar})}})));function TI(){try{let e=Y.Intl;if(!e)return;let t=e.DateTimeFormat().resolvedOptions();return{locale:t.locale,timezone:t.timeZone,calendar:t.calendar}}catch{return}}var kPe=`GlobalHandlers`,EI=EO(((e={})=>{let t={onerror:!0,onunhandledrejection:!0,...e};return{name:kPe,setupOnce(){Error.stackTraceLimit=50},setup(e){t.onerror&&(APe(e),kI(`onerror`)),t.onunhandledrejection&&(jPe(e),kI(`onunhandledrejection`))}}}));function APe(e){Cw(t=>{let{stackParser:n,attachStacktrace:r}=AI();if(J()!==e||jP())return;let{msg:i,url:a,line:o,column:s,error:c}=t,l=MPe(HP(n,c||i,void 0,r,!1),a,o,s);l.level=`error`,uO(l,{originalException:c,mechanism:{handled:!1,type:`auto.browser.global_handlers.onerror`}})})}function jPe(e){Tw(t=>{let{stackParser:n,attachStacktrace:r}=AI();if(J()!==e||jP())return;let i=DI(t),a=Nw(i)?OI(i):HP(n,i,void 0,r,!0);a.level=`error`,uO(a,{originalException:i,mechanism:{handled:!1,type:`auto.browser.global_handlers.onunhandledrejection`}})})}function DI(e){if(Nw(e))return e;try{if(`reason`in e)return e.reason;if(`detail`in e&&`reason`in e.detail)return e.detail.reason}catch{}return e}function OI(e){return{exception:{values:[{type:`UnhandledRejection`,value:`Non-Error promise rejection captured with value: ${String(e)}`}]}}}function MPe(e,t,n,r){let i=e.exception=e.exception||{},a=i.values=i.values||[],o=a[0]=a[0]||{},s=o.stacktrace=o.stacktrace||{},c=s.frames=s.frames||[];return c.length===0&&c.push({colno:r,lineno:n,filename:NPe(t)??xM(),function:`?`,in_app:!0}),e}function kI(e){X&&K.log(`Global Handler attached: ${e}`)}function AI(){return J()?.getOptions()||{stackParser:()=>[],attachStacktrace:!1}}function NPe(e){if(!(!jw(e)||e.length===0))return e.startsWith(`data:`)?`<${xk(e,!1)}>`:e}var jI=EO(()=>({name:`HttpContext`,preprocessEvent(e){if(!Y.navigator&&!Y.location&&!Y.document)return;let t=NP(),n={...t.headers,...e.request?.headers};e.request={...t,...e.request,headers:n}},processSegmentSpan(e){let t=e.attributes?.[KT];if(!Y.navigator&&!Y.location&&!Y.document)return;let n=NP();JD(e,{"url.full":t===`http.client`?void 0:n.url,"http.request.header.user_agent":n.headers[`User-Agent`],"http.request.header.referer":n.headers.Referer})}})),PPe=`cause`,FPe=5,IPe=`LinkedErrors`,MI=EO(((e={})=>{let t=e.limit||FPe,n=e.key||PPe;return{name:IPe,preprocessEvent(e,r,i){zDe(IP,i.getOptions().stackParser,n,t,e,r)}}})),LPe=/^HTML(\w*)Element$/;function NI(e){if(typeof window<`u`&&e===window)return`[Window]`;if(typeof document<`u`&&e===document)return`[Document]`;if(JNe(e)){let t=RPe(e);if(LPe.test(t))return`[HTMLElement: ${NF(e)}]`}}function RPe(e){let t=Object.getPrototypeOf(e);return t?.constructor?t.constructor.name:`null prototype`}function zPe(){return BPe()?(X&&rw(()=>{console.error(`[Sentry] You cannot use Sentry.init() in a browser extension, see: https://docs.sentry.io/platforms/javascript/best-practices/browser-extensions/`)}),!0):!1}function BPe(){if(Y.window===void 0)return!1;let e=Y;if(e.nw||!(e.chrome||e.browser)?.runtime?.id)return!1;let t=xM();return!(Y===Y.top&&/^(?:chrome-extension|moz-extension|ms-browser-extension|safari-web-extension):\/\//.test(t))}function PI(e){return[Ak(),Ok(),BOe(),SI(),xI(),EI(),MI(),Kk(),jI(),OPe(),wI()]}function VPe(e={}){let t=!e.skipBrowserExtensionCheck&&zPe(),n=e.defaultIntegrations==null?PI():e.defaultIntegrations,r={...e,enabled:!t&&e.enabled,stackParser:JCe(e.stackParser||lPe),integrations:NEe({integrations:e.integrations,defaultIntegrations:n}),transport:e.transport||ZNe};return iwe(NI),gDe(WP,r)}function HPe(){}function UPe(e){e()}function FI(e={}){let t=Y.document,n=t?.head||t?.body;if(!n){X&&K.error(`[showReportDialog] Global document not defined`);return}let r=q(),i=J()?.getDsn();if(!i){X&&K.error(`[showReportDialog] DSN not configured`);return}let a={...e,user:{...r.getUser(),...e.user},eventId:e.eventId||pO()},o=Y.document.createElement(`script`);o.async=!0,o.crossOrigin=`anonymous`,o.src=jEe(i,a);let{onLoad:s,onClose:c}=a;if(s&&(o.onload=s),c){let e=t=>{if(t.data===`__sentry_reportdialog_closed__`)try{c()}finally{Y.removeEventListener(`message`,e)}};Y.addEventListener(`message`,e)}n.appendChild(o)}var WPe=G,GPe=`ReportingObserver`,II=new WeakMap,KPe=EO(((e={})=>{let t=e.types||[`crash`,`deprecation`,`intervention`];function n(e){if(II.has(J()))for(let t of e)HT(e=>{e.setExtra(`url`,t.url);let n=`ReportingObserver [${t.type}]`,r=`No details available`;if(t.body){let n={};for(let e in t.body)n[e]=t.body[e];if(e.setExtra(`body`,n),t.type===`crash`){let e=t.body;r=[e.crashId||``,e.reason||``].join(` `).trim()||r}else r=t.body.message||r}lO(`${n}: ${r}`)})}return{name:GPe,setupOnce(){aM()&&new WPe.ReportingObserver(n,{buffered:!0,types:t}).observe()},setup(e){II.set(e,!0)}}})),qPe=`HttpClient`,JPe=EO(((e={})=>{let t={failedRequestStatusCodes:[[500,599]],failedRequestTargets:[/.*/],...e};return{name:qPe,setup(e){tFe(e,t),nFe(e,t)}}}));function YPe(e,t,n,r,i){if(RI(e,n.status,n.url)){let e=rFe(t,r),a,o,s,c,l=BI();if(l.requestHeaders!==!1&&(a=mk(LI(e.headers),l.requestHeaders)),l.responseHeaders!==!1&&(o=mk(LI(n.headers),l.responseHeaders)),l.cookies!==!1){let t=e.headers.get(`Cookie`)||void 0;if(t){let e=hk(t,l.cookies);typeof e==`object`&&(s=e)}let r=n.headers.get(`Set-Cookie`)||void 0;if(r){let e=hk(r,l.cookies);typeof e==`object`&&(c=e)}}uO(zI({url:e.url,method:e.method,status:n.status,requestHeaders:a,responseHeaders:o,requestCookies:s,responseCookies:c,error:i,type:`fetch`}))}}function XPe(e,t,n,r,i){if(RI(e,t.status,t.responseURL)){let e,a,o,s=BI();if(s.cookies!==!1)try{let e=t.getResponseHeader(`Set-Cookie`)||t.getResponseHeader(`set-cookie`)||void 0;if(e){let t=hk(e,s.cookies);typeof t==`object`&&(a=t)}}catch{}if(s.responseHeaders!==!1)try{o=mk(QPe(t),s.responseHeaders)}catch{}s.requestHeaders!==!1&&(e=mk(r,s.requestHeaders)),uO(zI({url:t.responseURL,method:n,status:t.status,requestHeaders:e,responseHeaders:o,responseCookies:a,error:i,type:`xhr`}))}}function ZPe(e){if(e){let t=e[`Content-Length`]||e[`content-length`];if(t)return parseInt(t,10)}}function LI(e){let t={};return e.forEach((e,n)=>{t[n]=e}),t}function QPe(e){let t=e.getAllResponseHeaders();return t?t.split(`\r
|
|
997
|
-
`).reduce((e,t)=>{let[n,r]=t.split(`: `);return n&&r&&(e[n]=r),e},{}):{}}function
|
|
998
|
-
`),`</html>`];return i.forEach(e=>{let n=e.stacktrace;n?.frames&&(n.frames=n.frames.map(e=>cFe(e,o,r,t)))}),e}function cFe(e,t,n,r){return e.filename!==n||!e.lineno||!t.length||dwe(t,e,r),e}var lFe=`GraphQLClient`,uFe=(e=>({name:lFe,setup(t){dFe(t,e),fFe(t,e)}}));function dFe(e,t){e.on(`beforeOutgoingRequestSpan`,(n,r)=>{let i=DE(n).data||{};if(i[`sentry.op`]!==`http.client`)return;let a=i[`url.full`]||i[`http.url`]||i.url,o=i[`http.request.method`]||i[`http.method`];if(!jw(a)||!jw(o))return;let{endpoints:s}=t,c=sT(a,s),l=UI(r);if(c&&l){let t=KI(l);if(t){let r=HI(t);n.updateName(`${o} ${a} (${r})`),WI(t)&&e.getDataCollectionOptions().graphQL.document===!0&&n.setAttribute(hl,t.query),GI(t)&&(n.setAttribute(`graphql.persisted_query.hash.sha256`,t.extensions.persistedQuery.sha256Hash),n.setAttribute(`graphql.persisted_query.version`,t.extensions.persistedQuery.version))}}})}function fFe(e,t){e.on(`beforeOutgoingRequestBreadcrumb`,(n,r)=>{let{category:i,type:a,data:o}=n;if(a===`http`&&(i===`fetch`||i===`xhr`)){let n=o?.url,{endpoints:i}=t,a=sT(n,i),s=UI(r);if(a&&o&&s){let t=KI(s);!o.graphql&&t&&(o[`graphql.operation`]=HI(t),WI(t)&&e.getDataCollectionOptions().graphQL.document===!0&&(o[hl]=t.query),GI(t)&&(o[`graphql.persisted_query.hash.sha256`]=t.extensions.persistedQuery.sha256Hash,o[`graphql.persisted_query.version`]=t.extensions.persistedQuery.version))}}})}function HI(e){if(GI(e))return`persisted ${e.operationName}`;if(WI(e)){let{query:t,operationName:n}=e,{operationName:r=n,operationType:i}=pFe(t);return r?`${i} ${r}`:`${i}`}return`unknown`}function UI(e){let t=`xhr`in e,n;if(t){let t=e.xhr[dI];n=t&&mI(t.body)[0]}else n=mI(hI(e.input))[0];return n}function pFe(e){let t=/^(?:\s*)(query|mutation|subscription)(?:\s*)(\w+)(?:\s*)[{(]/,n=/^(?:\s*)(query|mutation|subscription)(?:\s*)[{(]/,r=e.match(t);if(r)return{operationType:r[1],operationName:r[2]};let i=e.match(n);return i?{operationType:i[1],operationName:void 0}:{operationType:void 0,operationName:void 0}}function WI(e){return Fw(e)&&typeof e.query==`string`}function GI(e){return Fw(e)&&typeof e.operationName==`string`&&Fw(e.extensions)&&Fw(e.extensions.persistedQuery)&&typeof e.extensions.persistedQuery.sha256Hash==`string`&&typeof e.extensions.persistedQuery.version==`number`}function KI(e){try{let t=JSON.parse(e);return WI(t)||GI(t)?t:void 0}catch{return}}var mFe=EO(uFe),hFe=EO((e={})=>{let t=[`script`];function n(r,i,a=0){if(!r)return;let o=`shadowRoot`in r&&r.shadowRoot?r.shadowRoot.children:r.children;for(let r of o){if(!(r instanceof HTMLElement))continue;let o=SM(r,1)||void 0,s=r.tagName.toLowerCase();if(t.includes(s))continue;let c=e.onElement?.({element:r,componentName:o,tagName:s,depth:a})||{};if(c===`skip`)continue;if(c===`children`){n(r,i,a+1);continue}let{x:l,y:u,width:d,height:f}=r.getBoundingClientRect(),p={identifier:r.id||void 0,type:o||s,visible:!0,alpha:1,height:f,width:d,x:l,y:u,...c};p.children=[],n(r,p.children,a+1),i.push(p)}}return{name:`ViewHierarchy`,processEvent:(t,r)=>{if(t.type!==void 0||e.shouldAttach?.(t,r)===!1)return t;let i={rendering_system:`DOM`,positioning:`absolute`,windows:[]};n(e.rootElement?.()||Y.document.body,i.windows);let a={filename:`view-hierarchy.json`,attachmentType:`event.view_hierarchy`,contentType:`application/json`,data:JSON.stringify(i)};return r.attachments=r.attachments||[],r.attachments.push(a),t}}}),qI=G,JI=`sentryReplaySession`,gFe=`replay_event`,YI=`Unable to send Replay`,_Fe=3e5,vFe=9e5,yFe=5e3,bFe=5500,xFe=6e4,SFe=5e3,CFe=3,XI=15e4,ZI=5e3,wFe=3e3,TFe=300,QI=2e7,EFe=4999,DFe=5e4,$I=36e5,OFe=Object.defineProperty,kFe=(e,t,n)=>t in e?OFe(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,eL=(e,t,n)=>kFe(e,typeof t==`symbol`?t:t+``,n),tL=(e=>(e[e.Document=0]=`Document`,e[e.DocumentType=1]=`DocumentType`,e[e.Element=2]=`Element`,e[e.Text=3]=`Text`,e[e.CDATA=4]=`CDATA`,e[e.Comment=5]=`Comment`,e))(tL||{});function AFe(e){return e.nodeType===e.ELEMENT_NODE}function nL(e){return e?.host?.shadowRoot===e}function rL(e){return Object.prototype.toString.call(e)===`[object ShadowRoot]`}function jFe(e){return e.includes(` background-clip: text;`)&&!e.includes(` -webkit-background-clip: text;`)&&(e=e.replace(/\sbackground-clip:\s*text;/g,` -webkit-background-clip: text; background-clip: text;`)),e}function MFe(e){let{cssText:t}=e;if(t.split(`"`).length<3)return t;let n=[`@import`,`url(${JSON.stringify(e.href)})`];return e.layerName===``?n.push(`layer`):e.layerName&&n.push(`layer(${e.layerName})`),e.supportsText&&n.push(`supports(${e.supportsText})`),e.media.length&&n.push(e.media.mediaText),n.join(` `)+`;`}function iL(e){try{let t=e.rules||e.cssRules;return t?jFe(Array.from(t,aL).join(``)):null}catch{return null}}function NFe(e){let t=``;for(let n=0;n<e.style.length;n++){let r=e.style,i=r[n],a=r.getPropertyPriority(i);t+=`${i}:${r.getPropertyValue(i)}${a?` !important`:``};`}return`${e.selectorText} { ${t} }`}function aL(e){let t;if(FFe(e))try{t=iL(e.styleSheet)||MFe(e)}catch{}else if(IFe(e)){let t=e.cssText,n=e.selectorText.includes(`:`),r=typeof e.style.all==`string`&&e.style.all;if(r&&(t=NFe(e)),n&&(t=PFe(t)),n||r)return t}return t||e.cssText}function PFe(e){return e.replace(/(\[(?:[\w-]+)[^\\])(:(?:[\w-]+)\])/gm,`$1\\$2`)}function FFe(e){return`styleSheet`in e}function IFe(e){return`selectorText`in e}var oL=class{constructor(){eL(this,`idNodeMap`,new Map),eL(this,`nodeMetaMap`,new WeakMap)}getId(e){return e?this.getMeta(e)?.id??-1:-1}getNode(e){return this.idNodeMap.get(e)||null}getIds(){return Array.from(this.idNodeMap.keys())}getMeta(e){return this.nodeMetaMap.get(e)||null}removeNodeFromMap(e){let t=this.getId(e);this.idNodeMap.delete(t),e.childNodes&&e.childNodes.forEach(e=>this.removeNodeFromMap(e))}has(e){return this.idNodeMap.has(e)}hasNode(e){return this.nodeMetaMap.has(e)}add(e,t){let n=t.id;this.idNodeMap.set(n,e),this.nodeMetaMap.set(e,t)}replace(e,t){let n=this.getNode(e);if(n){let e=this.nodeMetaMap.get(n);e&&this.nodeMetaMap.set(t,e)}this.idNodeMap.set(e,t)}reset(){this.idNodeMap=new Map,this.nodeMetaMap=new WeakMap}};function LFe(){return new oL}function sL({maskInputOptions:e,tagName:t,type:n}){return t===`OPTION`&&(t=`SELECT`),!!(e[t.toLowerCase()]||n&&e[n]||n===`password`||t===`INPUT`&&!n&&e.text)}function cL({isMasked:e,element:t,value:n,maskInputFn:r}){let i=n||``;return e?(r&&(i=r(i,t)),`*`.repeat(i.length)):i}function lL(e){return e.toLowerCase()}function uL(e){return e.toUpperCase()}var dL=`__rrweb_original__`;function RFe(e){let t=e.getContext(`2d`);if(!t)return!0;for(let n=0;n<e.width;n+=50)for(let r=0;r<e.height;r+=50){let i=t.getImageData,a=dL in i?i[dL]:i;if(new Uint32Array(a.call(t,n,r,Math.min(50,e.width-n),Math.min(50,e.height-r)).data.buffer).some(e=>e!==0))return!1}return!0}function fL(e){let t=e.type;return e.hasAttribute(`data-rr-is-password`)?`password`:t?lL(t):null}function pL(e,t,n){return t===`INPUT`&&(n===`radio`||n===`checkbox`)?e.getAttribute(`value`)||``:e.value}function mL(e,t){let n;try{n=new URL(e,t??window.location.href)}catch{return null}return n.pathname.match(/\.([0-9a-z]+)(?:$)/i)?.[1]??null}var hL={};function gL(e){let t=hL[e];if(t)return t;let n=window.document,r=window[e];if(n&&typeof n.createElement==`function`)try{let t=n.createElement(`iframe`);t.hidden=!0,n.head.appendChild(t);let i=t.contentWindow;i&&i[e]&&(r=i[e]),n.head.removeChild(t)}catch{}return hL[e]=r.bind(window)}function _L(...e){return gL(`setTimeout`)(...e)}function vL(...e){return gL(`clearTimeout`)(...e)}function yL(e){try{return e.contentDocument}catch{}}function zFe(e){try{return e.contentWindow}catch{}}var BFe=1,VFe=RegExp(`[^a-z0-9-_:]`),bL=-2;function xL(){return BFe++}function HFe(e){if(e instanceof HTMLFormElement)return`form`;let t=lL(e.tagName);return VFe.test(t)?`div`:t}function UFe(e){let t=``;return t=e.indexOf(`//`)>-1?e.split(`/`).slice(0,3).join(`/`):e.split(`/`)[0],t=t.split(`?`)[0],t}var SL,CL,WFe=/url\((?:(')([^']*)'|(")(.*?)"|([^)]*))\)/gm,GFe=/^(?:[a-z+]+:)?\/\//i,KFe=/^www\..*/i,qFe=/^(data:)([^,]*),(.*)/i;function JFe(e,t){if(!e||t.size===0)return e;try{let n=e.split(`;`),r=[];for(let e of n){if(e=e.trim(),!e)continue;let n=e.indexOf(`:`);if(n===-1){r.push(e);continue}let i=e.slice(0,n).trim();t.has(i)||r.push(e)}return r.join(`; `)+(r.length>0&&e.endsWith(`;`)?`;`:``)}catch(t){return console.warn(`Error filtering CSS properties:`,t),e}}function wL(e,t){return(e||``).replace(WFe,(e,n,r,i,a,o)=>{let s=r||a||o,c=n||i||``;if(!s)return e;if(GFe.test(s)||KFe.test(s)||qFe.test(s))return`url(${c}${s}${c})`;if(s[0]===`/`)return`url(${c}${UFe(t)+s}${c})`;let l=t.split(`/`),u=s.split(`/`);l.pop();for(let e of u)if(e===`.`)continue;else e===`..`?l.pop():l.push(e);return`url(${c}${l.join(`/`)}${c})`})}var YFe=/^[^ \t\n\r\u000c]+/,XFe=/^[, \t\n\r\u000c]+/;function ZFe(e,t){if(t.trim()===``)return t;let n=0;function r(e){let r,i=e.exec(t.substring(n));return i?(r=i[0],n+=r.length,r):``}let i=[];for(;r(XFe),!(n>=t.length);){let a=r(YFe);if(a.slice(-1)===`,`)a=EL(e,a.substring(0,a.length-1)),i.push(a);else{let r=``;a=EL(e,a);let o=!1;for(;;){let e=t.charAt(n);if(e===``){i.push((a+r).trim());break}if(o)e===`)`&&(o=!1);else{if(e===`,`){n+=1,i.push((a+r).trim());break}e===`(`&&(o=!0)}r+=e,n+=1}}}return i.join(`, `)}var TL=new WeakMap;function EL(e,t){return!t||t.trim()===``?t:DL(e,t)}function QFe(e){return!!(e.tagName===`svg`||e.ownerSVGElement)}function DL(e,t){let n=TL.get(e);if(n||(n=e.createElement(`a`),TL.set(e,n)),!t)t=``;else if(t.startsWith(`blob:`)||t.startsWith(`data:`))return t;return n.setAttribute(`href`,t),n.href}function OL(e,t,n,r,i,a,o){if(!r)return r;if(n===`src`||n===`href`&&(t!==`use`||r[0]!==`#`)||n===`xlink:href`&&r[0]!==`#`||n===`background`&&(t===`table`||t===`td`||t===`th`))return EL(e,r);if(n===`srcset`)return ZFe(e,r);if(n===`style`){let t=wL(r,DL(e));return o&&o.size>0&&(t=JFe(t,o)),t}return t===`object`&&n===`data`?EL(e,r):typeof a==`function`?a(n,r,i):r}function kL(e,t,n){return(e===`video`||e===`audio`)&&t===`autoplay`}function $Fe(e,t,n,r){try{if(r&&e.matches(r))return!1;if(typeof t==`string`){if(e.classList.contains(t))return!0}else for(let n=e.classList.length;n--;){let r=e.classList[n];if(t.test(r))return!0}if(n)return e.matches(n)}catch{}return!1}function eIe(e,t){for(let n=e.classList.length;n--;){let r=e.classList[n];if(t.test(r))return!0}return!1}function AL(e,t,n=1/0,r=0){return!e||e.nodeType!==e.ELEMENT_NODE||r>n?-1:t(e)?r:AL(e.parentNode,t,n,r+1)}function jL(e,t){return n=>{let r=n;if(r===null)return!1;try{if(e){if(typeof e==`string`){if(r.matches(`.${e}`))return!0}else if(eIe(r,e))return!0}return!!(t&&r.matches(t))}catch{return!1}}}function ML(e,t,n,r,i,a){try{let o=e.nodeType===e.ELEMENT_NODE?e:e.parentElement;if(o===null)return!1;if(o.tagName===`INPUT`){let e=o.getAttribute(`autocomplete`);if([`current-password`,`new-password`,`cc-number`,`cc-exp`,`cc-exp-month`,`cc-exp-year`,`cc-csc`].includes(e))return!0}let s=-1,c=-1;if(a){if(c=AL(o,jL(r,i)),c<0)return!0;s=AL(o,jL(t,n),c>=0?c:1/0)}else{if(s=AL(o,jL(t,n)),s<0)return!1;c=AL(o,jL(r,i),s>=0?s:1/0)}return s>=0?c>=0?s<=c:!0:c>=0?!1:!!a}catch{}return!!a}function tIe(e,t,n){let r=zFe(e);if(!r)return;let i=!1,a;try{a=r.document.readyState}catch{return}if(a!==`complete`){let r=_L(()=>{i||=(t(),!0)},n);e.addEventListener(`load`,()=>{vL(r),i=!0,t()});return}let o=`about:blank`;if(r.location.href!==o||e.src===o||e.src===``)return _L(t,0),e.addEventListener(`load`,t);e.addEventListener(`load`,t)}function nIe(e,t,n){let r=!1,i;try{i=e.sheet}catch{i=null}if(i)return;let a=_L(()=>{r||=(t(),!0)},n);e.addEventListener(`load`,()=>{vL(a),r=!0,t()})}function rIe(e,t){let{doc:n,mirror:r,blockClass:i,blockSelector:a,unblockSelector:o,maskAllText:s,maskAttributeFn:c,maskTextClass:l,unmaskTextClass:u,maskTextSelector:d,unmaskTextSelector:f,inlineStylesheet:p,maskInputOptions:m={},maskTextFn:h,maskInputFn:g,dataURLOptions:_={},inlineImages:v,recordCanvas:y,keepIframeSrcFn:b,newlyAddedElement:x=!1,ignoreCSSAttributes:S}=t,C=iIe(n,r);switch(e.nodeType){case e.DOCUMENT_NODE:return e.compatMode===`CSS1Compat`?{type:tL.Document,childNodes:[]}:{type:tL.Document,childNodes:[],compatMode:e.compatMode};case e.DOCUMENT_TYPE_NODE:return{type:tL.DocumentType,name:e.name,publicId:e.publicId,systemId:e.systemId,rootId:C};case e.ELEMENT_NODE:return oIe(e,{doc:n,blockClass:i,blockSelector:a,unblockSelector:o,inlineStylesheet:p,maskAttributeFn:c,maskInputOptions:m,maskInputFn:g,dataURLOptions:_,inlineImages:v,recordCanvas:y,keepIframeSrcFn:b,newlyAddedElement:x,rootId:C,maskTextClass:l,unmaskTextClass:u,maskTextSelector:d,unmaskTextSelector:f,ignoreCSSAttributes:S});case e.TEXT_NODE:return aIe(e,{doc:n,maskAllText:s,maskTextClass:l,unmaskTextClass:u,maskTextSelector:d,unmaskTextSelector:f,maskTextFn:h,maskInputOptions:m,maskInputFn:g,rootId:C});case e.CDATA_SECTION_NODE:return{type:tL.CDATA,textContent:``,rootId:C};case e.COMMENT_NODE:return{type:tL.Comment,textContent:e.textContent||``,rootId:C};default:return!1}}function iIe(e,t){if(!t.hasNode(e))return;let n=t.getId(e);return n===1?void 0:n}function aIe(e,t){let{maskAllText:n,maskTextClass:r,unmaskTextClass:i,maskTextSelector:a,unmaskTextSelector:o,maskTextFn:s,maskInputOptions:c,maskInputFn:l,rootId:u}=t,d=e.parentNode&&e.parentNode.tagName,f=e.textContent,p=d===`STYLE`||void 0,m=d===`SCRIPT`||void 0,h=d===`TEXTAREA`||void 0;if(p&&f){try{e.nextSibling||e.previousSibling||e.parentNode.sheet?.cssRules&&(f=iL(e.parentNode.sheet))}catch(t){console.warn(`Cannot get CSS styles from text's parentNode. Error: ${t}`,e)}f=wL(f,DL(t.doc))}m&&(f=`SCRIPT_PLACEHOLDER`);let g=ML(e,r,a,i,o,n);return!p&&!m&&!h&&f&&g&&(f=s?s(f,e.parentElement):f.replace(/[\S]/g,`*`)),h&&f&&(c.textarea||g)&&(f=l?l(f,e.parentNode):f.replace(/[\S]/g,`*`)),d===`OPTION`&&f&&(f=cL({isMasked:ML(e,r,a,i,o,sL({type:null,tagName:d,maskInputOptions:c})),element:e,value:f,maskInputFn:l})),{type:tL.Text,textContent:f||``,isStyle:p,rootId:u}}function oIe(e,t){let{doc:n,blockClass:r,blockSelector:i,unblockSelector:a,inlineStylesheet:o,maskInputOptions:s={},maskAttributeFn:c,maskInputFn:l,dataURLOptions:u={},inlineImages:d,recordCanvas:f,keepIframeSrcFn:p,newlyAddedElement:m=!1,rootId:h,maskTextClass:g,unmaskTextClass:_,maskTextSelector:v,unmaskTextSelector:y,ignoreCSSAttributes:b}=t,x=$Fe(e,r,i,a),S=HFe(e),C={},w=e.attributes.length;for(let t=0;t<w;t++){let r=e.attributes[t];r.name&&!kL(S,r.name,r.value)&&(C[r.name]=OL(n,S,lL(r.name),r.value,e,c,b))}if(S===`link`&&o){let t=Array.from(n.styleSheets).find(t=>t.href===e.href),r=null;t&&(r=iL(t)),r&&(C.rel=null,C.href=null,C.crossorigin=null,C._cssText=wL(r,t.href))}if(S===`style`&&e.sheet&&!(e.innerText||e.textContent||``).trim().length){let t=iL(e.sheet);t&&(C._cssText=wL(t,DL(n)))}if(S===`input`||S===`textarea`||S===`select`||S===`option`){let t=e,n=fL(t),r=pL(t,uL(S),n),i=t.checked;if(n!==`submit`&&n!==`button`&&r){let e=ML(t,g,v,_,y,sL({type:n,tagName:uL(S),maskInputOptions:s}));C.value=cL({isMasked:e,element:t,value:r,maskInputFn:l})}i&&(C.checked=i)}if(S===`option`&&(e.selected&&!s.select?C.selected=!0:delete C.selected),S===`canvas`&&f){if(e.__context===`2d`)RFe(e)||(C.rr_dataURL=e.toDataURL(u.type,u.quality));else if(!(`__context`in e)){let t=e.toDataURL(u.type,u.quality),r=n.createElement(`canvas`);r.width=e.width,r.height=e.height,t!==r.toDataURL(u.type,u.quality)&&(C.rr_dataURL=t)}}if(S===`img`&&d){SL||(SL=n.createElement(`canvas`),CL=SL.getContext(`2d`));let t=e,r=t.currentSrc||t.getAttribute(`src`)||`<unknown-src>`,i=t.crossOrigin,a=()=>{t.removeEventListener(`load`,a);try{SL.width=t.naturalWidth,SL.height=t.naturalHeight,CL.drawImage(t,0,0),C.rr_dataURL=SL.toDataURL(u.type,u.quality)}catch(e){if(t.crossOrigin!==`anonymous`){t.crossOrigin=`anonymous`,t.complete&&t.naturalWidth!==0?a():t.addEventListener(`load`,a);return}console.warn(`Cannot inline img src=${r}! Error: ${e}`)}t.crossOrigin===`anonymous`&&(i?C.crossOrigin=i:t.removeAttribute(`crossorigin`))};t.complete&&t.naturalWidth!==0?a():t.addEventListener(`load`,a)}if((S===`audio`||S===`video`)&&(C.rr_mediaState=e.paused?`paused`:`played`,C.rr_mediaCurrentTime=e.currentTime),m||(e.scrollLeft&&(C.rr_scrollLeft=e.scrollLeft),e.scrollTop&&(C.rr_scrollTop=e.scrollTop)),x){let{width:t,height:n}=e.getBoundingClientRect();C={class:C.class,rr_width:`${t}px`,rr_height:`${n}px`}}S===`iframe`&&!p(C.src)&&(!x&&!yL(e)&&(C.rr_src=C.src),delete C.src);let T;try{customElements.get(S)&&(T=!0)}catch{}return{type:tL.Element,tagName:S,attributes:C,childNodes:[],isSVG:QFe(e)||void 0,needBlock:x,rootId:h,isCustom:T}}function NL(e){return e==null?``:e.toLowerCase()}function sIe(e,t){return!!(t.comment&&e.type===tL.Comment||e.type===tL.Element&&(t.script&&(e.tagName===`script`||e.tagName===`link`&&(e.attributes.rel===`preload`||e.attributes.rel===`modulepreload`)||e.tagName===`link`&&e.attributes.rel===`prefetch`&&typeof e.attributes.href==`string`&&mL(e.attributes.href)===`js`)||t.headFavicon&&(e.tagName===`link`&&e.attributes.rel===`shortcut icon`||e.tagName===`meta`&&(NL(e.attributes.name).match(/^msapplication-tile(image|color)$/)||NL(e.attributes.name)===`application-name`||NL(e.attributes.rel)===`icon`||NL(e.attributes.rel)===`apple-touch-icon`||NL(e.attributes.rel)===`shortcut icon`))||e.tagName===`meta`&&(t.headMetaDescKeywords&&NL(e.attributes.name).match(/^description|keywords$/)||t.headMetaSocial&&(NL(e.attributes.property).match(/^(og|twitter|fb):/)||NL(e.attributes.name).match(/^(og|twitter):/)||NL(e.attributes.name)===`pinterest`)||t.headMetaRobots&&(NL(e.attributes.name)===`robots`||NL(e.attributes.name)===`googlebot`||NL(e.attributes.name)===`bingbot`)||t.headMetaHttpEquiv&&e.attributes[`http-equiv`]!==void 0||t.headMetaAuthorship&&(NL(e.attributes.name)===`author`||NL(e.attributes.name)===`generator`||NL(e.attributes.name)===`framework`||NL(e.attributes.name)===`publisher`||NL(e.attributes.name)===`progid`||NL(e.attributes.property).match(/^article:/)||NL(e.attributes.property).match(/^product:/))||t.headMetaVerification&&(NL(e.attributes.name)===`google-site-verification`||NL(e.attributes.name)===`yandex-verification`||NL(e.attributes.name)===`csrf-token`||NL(e.attributes.name)===`p:domain_verify`||NL(e.attributes.name)===`verify-v1`||NL(e.attributes.name)===`verification`||NL(e.attributes.name)===`shopify-checkout-api-token`))))}function PL(e,t){let{doc:n,mirror:r,blockClass:i,blockSelector:a,unblockSelector:o,maskAllText:s,maskTextClass:c,unmaskTextClass:l,maskTextSelector:u,unmaskTextSelector:d,skipChild:f=!1,inlineStylesheet:p=!0,maskInputOptions:m={},maskAttributeFn:h,maskTextFn:g,maskInputFn:_,slimDOMOptions:v,dataURLOptions:y={},inlineImages:b=!1,recordCanvas:x=!1,onSerialize:S,onIframeLoad:C,iframeLoadTimeout:w=5e3,onBlockedImageLoad:T,onStylesheetLoad:E,stylesheetLoadTimeout:ee=5e3,keepIframeSrcFn:te=()=>!1,newlyAddedElement:ne=!1,ignoreCSSAttributes:re}=t,{preserveWhiteSpace:ie=!0}=t,ae=rIe(e,{doc:n,mirror:r,blockClass:i,blockSelector:a,maskAllText:s,unblockSelector:o,maskTextClass:c,unmaskTextClass:l,maskTextSelector:u,unmaskTextSelector:d,inlineStylesheet:p,maskInputOptions:m,maskAttributeFn:h,maskTextFn:g,maskInputFn:_,dataURLOptions:y,inlineImages:b,recordCanvas:x,keepIframeSrcFn:te,newlyAddedElement:ne,ignoreCSSAttributes:re});if(!ae)return console.warn(e,`not serialized`),null;let oe;oe=r.hasNode(e)?r.getId(e):sIe(ae,v)||!ie&&ae.type===tL.Text&&!ae.isStyle&&!ae.textContent.trim().length?bL:xL();let D=Object.assign(ae,{id:oe});if(r.add(e,D),oe===bL)return null;S&&S(e);let se=!f;if(D.type===tL.Element){se&&=!D.needBlock;let t=e.shadowRoot;t&&rL(t)&&(D.isShadowHost=!0)}if((D.type===tL.Document||D.type===tL.Element)&&se){v.headWhitespace&&D.type===tL.Element&&D.tagName===`head`&&(ie=!1);let t={doc:n,mirror:r,blockClass:i,blockSelector:a,maskAllText:s,unblockSelector:o,maskTextClass:c,unmaskTextClass:l,maskTextSelector:u,unmaskTextSelector:d,skipChild:f,inlineStylesheet:p,maskInputOptions:m,maskAttributeFn:h,maskTextFn:g,maskInputFn:_,slimDOMOptions:v,dataURLOptions:y,inlineImages:b,recordCanvas:x,preserveWhiteSpace:ie,onSerialize:S,onIframeLoad:C,iframeLoadTimeout:w,onBlockedImageLoad:T,onStylesheetLoad:E,stylesheetLoadTimeout:ee,keepIframeSrcFn:te,ignoreCSSAttributes:re},ne=e.childNodes?Array.from(e.childNodes):[];for(let e of ne){let n=PL(e,t);n&&D.childNodes.push(n)}if(AFe(e)&&e.shadowRoot)for(let n of Array.from(e.shadowRoot.childNodes)){let r=PL(n,t);r&&(rL(e.shadowRoot)&&(r.isShadow=!0),D.childNodes.push(r))}}if(e.parentNode&&nL(e.parentNode)&&rL(e.parentNode)&&(D.isShadow=!0),D.type===tL.Element&&D.tagName===`iframe`&&!D.needBlock&&tIe(e,()=>{let t=yL(e);if(t&&C){let n=PL(t,{doc:t,mirror:r,blockClass:i,blockSelector:a,unblockSelector:o,maskAllText:s,maskTextClass:c,unmaskTextClass:l,maskTextSelector:u,unmaskTextSelector:d,skipChild:!1,inlineStylesheet:p,maskInputOptions:m,maskAttributeFn:h,maskTextFn:g,maskInputFn:_,slimDOMOptions:v,dataURLOptions:y,inlineImages:b,recordCanvas:x,preserveWhiteSpace:ie,onSerialize:S,onIframeLoad:C,iframeLoadTimeout:w,onStylesheetLoad:E,stylesheetLoadTimeout:ee,keepIframeSrcFn:te,ignoreCSSAttributes:re});n&&C(e,n)}},w),D.type===tL.Element&&D.tagName===`img`&&!e.complete&&D.needBlock){let t=e,n=()=>{if(t.isConnected&&!t.complete&&T)try{let e=t.getBoundingClientRect();e.width>0&&e.height>0&&T(t,D,e)}catch{}t.removeEventListener(`load`,n)};t.isConnected&&t.addEventListener(`load`,n)}return D.type===tL.Element&&D.tagName===`link`&&typeof D.attributes.rel==`string`&&(D.attributes.rel===`stylesheet`||D.attributes.rel===`preload`&&typeof D.attributes.href==`string`&&mL(D.attributes.href)===`css`)&&nIe(e,()=>{if(E){let t=PL(e,{doc:n,mirror:r,blockClass:i,blockSelector:a,unblockSelector:o,maskAllText:s,maskTextClass:c,unmaskTextClass:l,maskTextSelector:u,unmaskTextSelector:d,skipChild:!1,inlineStylesheet:p,maskInputOptions:m,maskAttributeFn:h,maskTextFn:g,maskInputFn:_,slimDOMOptions:v,dataURLOptions:y,inlineImages:b,recordCanvas:x,preserveWhiteSpace:ie,onSerialize:S,onIframeLoad:C,iframeLoadTimeout:w,onStylesheetLoad:E,stylesheetLoadTimeout:ee,keepIframeSrcFn:te,ignoreCSSAttributes:re});t&&E(e,t)}},ee),D.type===tL.Element&&delete D.needBlock,D}function cIe(e,t){let{mirror:n=new oL,blockClass:r=`rr-block`,blockSelector:i=null,unblockSelector:a=null,maskAllText:o=!1,maskTextClass:s=`rr-mask`,unmaskTextClass:c=null,maskTextSelector:l=null,unmaskTextSelector:u=null,inlineStylesheet:d=!0,inlineImages:f=!1,recordCanvas:p=!1,maskAllInputs:m=!1,maskAttributeFn:h,maskTextFn:g,maskInputFn:_,slimDOM:v=!1,dataURLOptions:y,preserveWhiteSpace:b,onSerialize:x,onIframeLoad:S,iframeLoadTimeout:C,onBlockedImageLoad:w,onStylesheetLoad:T,stylesheetLoadTimeout:E,keepIframeSrcFn:ee=()=>!1,ignoreCSSAttributes:te=new Set([])}=t||{};return PL(e,{doc:e,mirror:n,blockClass:r,blockSelector:i,unblockSelector:a,maskAllText:o,maskTextClass:s,unmaskTextClass:c,maskTextSelector:l,unmaskTextSelector:u,skipChild:!1,inlineStylesheet:d,maskInputOptions:m===!0?{color:!0,date:!0,"datetime-local":!0,email:!0,month:!0,number:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!0}:m===!1?{}:m,maskAttributeFn:h,maskTextFn:g,maskInputFn:_,slimDOMOptions:v===!0||v===`all`?{script:!0,comment:!0,headFavicon:!0,headWhitespace:!0,headMetaDescKeywords:v===`all`,headMetaSocial:!0,headMetaRobots:!0,headMetaHttpEquiv:!0,headMetaAuthorship:!0,headMetaVerification:!0}:v===!1?{}:v,dataURLOptions:y,inlineImages:f,recordCanvas:p,preserveWhiteSpace:b,onSerialize:x,onIframeLoad:S,iframeLoadTimeout:C,onBlockedImageLoad:w,onStylesheetLoad:T,stylesheetLoadTimeout:E,keepIframeSrcFn:ee,newlyAddedElement:!1,ignoreCSSAttributes:te})}function FL(e,t,n=document){let r={capture:!0,passive:!0};return n.addEventListener(e,t,r),()=>n.removeEventListener(e,t,r)}var IL=`Please stop import mirror directly. Instead of that,\r
|
|
995
|
+
Error:`,t)}}function HMe(){return OMe(e=>{EF(`cls`,{metric:e}),vF=e},{reportAllChanges:!0})}function UMe(){return RMe(e=>{EF(`lcp`,{metric:e}),yF=e},{reportAllChanges:!0})}function WMe(){return BMe(e=>{EF(`ttfb`,{metric:e}),bF=e})}function GMe(){return FMe(e=>{EF(`inp`,{metric:e}),xF=e})}function DF(e,t,n,r,i=!1){OF(e,t);let a;return _F[e]||(a=n(),_F[e]=!0),r&&t({metric:r}),kF(e,t,i?a:void 0)}function KMe(e){let t={};e===`event`&&(t.durationThreshold=0),iF(e,t=>{EF(e,{entries:t})},t)}function OF(e,t){gF[e]=gF[e]||[],gF[e].push(t)}function kF(e,t,n){return()=>{n&&n();let r=gF[e];if(!r)return;let i=r.indexOf(t);i!==-1&&r.splice(i,1)}}function qMe(e){return`duration`in e}var JMe=80,AF={};try{typeof Node<`u`&&(AF.parentNode=Object.getOwnPropertyDescriptor(Node.prototype,`parentNode`).get),typeof Element<`u`&&(AF.tagName=Object.getOwnPropertyDescriptor(Element.prototype,`tagName`).get,AF.id=Object.getOwnPropertyDescriptor(Element.prototype,`id`).get,AF.className=Object.getOwnPropertyDescriptor(Element.prototype,`className`).get,AF.getAttribute=Element.prototype.getAttribute),typeof HTMLElement<`u`&&(AF.dataset=Object.getOwnPropertyDescriptor(HTMLElement.prototype,`dataset`).get)}catch{}function jF(e,t,n){let r=AF[t];if(r)try{return r.call(e,n)}catch{}let i=e[t];return typeof i==`function`?i.call(e,n):i}function MF(e,t={}){if(!e)return`<unknown>`;try{let n=e,r=[],i=0,a=0,o,s=Array.isArray(t)?t:t.keyAttrs,c=!Array.isArray(t)&&t.maxStringLength||JMe;for(;n&&i++<5&&(o=YMe(n,s),!(o===`html`||i>1&&a+r.length*3+o.length>=c));)r.push(o),a+=o.length,n=jF(n,`parentNode`);return r.reverse().join(` > `)}catch{return`<unknown>`}}function YMe(e,t){let n=[],r=jF(e,`tagName`);if(!r)return``;if(typeof HTMLElement<`u`&&e instanceof HTMLElement){let t=jF(e,`dataset`);if(t){if(t.sentryComponent)return t.sentryComponent;if(t.sentryElement)return t.sentryElement}}n.push(r.toLowerCase());let i=t?.length?t.filter(t=>jF(e,`getAttribute`,t)).map(t=>[t,jF(e,`getAttribute`,t)]):null;if(i?.length)i.forEach(e=>{n.push(`[${e[0]}="${e[1]}"]`)});else{let t=jF(e,`id`);t&&n.push(`#${t}`);let r=jF(e,`className`);if(r&&jw(r)){let e=r.split(/\s+/);for(let t of e)n.push(`.${t}`)}}for(let t of[`aria-label`,`type`,`name`,`title`,`alt`]){let r=jF(e,`getAttribute`,t);r&&n.push(`[${t}="${r}"]`)}return n.join(``)}var XMe=e=>{let t=t=>{(t.type===`pagehide`||GP.document?.visibilityState===`hidden`)&&e(t)};YP(`visibilitychange`,t,{capture:!0,once:!0}),YP(`pagehide`,t,{capture:!0,once:!0})};function NF(e){return typeof e==`number`&&isFinite(e)}function PF(e,t,n,{...r}){let i=DE(e).start_timestamp;return i&&i>t&&typeof e.updateStartTime==`function`&&e.updateStartTime(t),DD(e,()=>{let e=ED({startTime:t,...r});return e&&e.end(n),e})}function FF(e){let t=J();if(!t)return;let{name:n,transaction:r,attributes:i,startTime:a}=e,{release:o,environment:s}=t.getOptions(),{userInfo:c}=t.getDataCollectionOptions(),l=t.getIntegrationByName(`Replay`)?.getReplayId(),u=q(),d=u.getUser(),f=d===void 0?void 0:d.email||d.id||d.ip_address,p;try{p=u.getScopeData().contexts.profile.profile_id}catch{}return ED({name:n,attributes:{release:o,environment:s,user:f||void 0,profile_id:p||void 0,replay_id:l||void 0,transaction:r,"user_agent.original":GP.navigator?.userAgent,"client.address":c?`{{auto}}`:void 0,...i},startTime:a,experimental:{standalone:!0}})}function IF(){return GP.addEventListener&&GP.performance}function LF(e){return e/1e3}function ZMe(e){let t=`unknown`,n=`unknown`,r=``;for(let i of e){if(i===`/`){[t,n]=e.split(`/`);break}if(!isNaN(Number(i))){t=r===`h`?`http`:r,n=e.split(r)[1];break}r+=i}return r===e&&(t=r),{name:t,version:n}}function RF(e){try{return PerformanceObserver.supportedEntryTypes.includes(e)}catch{return!1}}function zF(e,t){let n,r=!1;function i(e){!r&&n&&t(e,n.spanContext().spanId,n),r=!0}XMe(()=>{i(`pagehide`)});let a=e.on(`beforeStartNavigationSpan`,(e,t)=>{t?.isRedirect||(i(`navigation`),a(),o())}),o=e.on(`afterStartPageLoadSpan`,e=>{n=e,o()})}function QMe(e){let t=0,n;if(!RF(`layout-shift`))return;let r=SF(({metric:e})=>{let r=e.entries[e.entries.length-1];r&&(t=e.value,n=r)},!0);zF(e,(e,i)=>{$Me(t,n,i,e),r()})}function $Me(e,t,n,r){WP&&K.log(`Sending CLS span (${e})`);let i=t?LF((yT()||0)+t.startTime):_T(),a=q().getScopeData().transactionName,o=t?MF(t.sources[0]?.node):`Layout shift`,s={[qT]:`auto.http.browser.cls`,[KT]:`ui.webvital.cls`,[$T]:0,"sentry.pageload.span_id":n,"sentry.report_event":r};t?.sources&&t.sources.forEach((e,t)=>{s[`cls.source.${t+1}`]=MF(e.node)});let c=FF({name:o,transaction:a,attributes:s,startTime:i});c&&(c.addEvent(`cls`,{[YT]:``,[XT]:e}),c.end(i))}function BF(e){return e!=null&&e>0&&e<=6e4}function eNe(e){let t=0,n;if(!RF(`largest-contentful-paint`))return;let r=CF(({metric:e})=>{let r=e.entries[e.entries.length-1];!r||!BF(e.value)||(t=e.value,n=r)},!0);zF(e,(e,i)=>{tNe(t,n,i,e),r()})}function tNe(e,t,n,r){if(!BF(e))return;WP&&K.log(`Sending LCP span (${e})`);let i=LF((yT()||0)+(t?.startTime||0)),a=q().getScopeData().transactionName,o=t?MF(t.element):`Largest contentful paint`,s={[qT]:`auto.http.browser.lcp`,[KT]:`ui.webvital.lcp`,[$T]:0,"sentry.pageload.span_id":n,"sentry.report_event":r};t&&(t.element&&(s[`lcp.element`]=MF(t.element)),t.id&&(s[`lcp.id`]=t.id),t.url&&(s[`lcp.url`]=t.url),t.loadTime!=null&&(s[`lcp.loadTime`]=t.loadTime),t.renderTime!=null&&(s[`lcp.renderTime`]=t.renderTime),t.size!=null&&(s[`lcp.size`]=t.size));let c=FF({name:o,transaction:a,attributes:s,startTime:i});c&&(c.addEvent(`lcp`,{[YT]:`millisecond`,[XT]:e}),c.end(i))}function VF(e){return e&&((yT()||performance.timeOrigin)+e)/1e3}function HF(e){let t={};if(e.nextHopProtocol!=null){let{name:n,version:r}=ZMe(e.nextHopProtocol);t[`network.protocol.version`]=r,t[`network.protocol.name`]=n}return yT()||IF()?.timeOrigin?nNe({...t,"http.request.redirect_start":VF(e.redirectStart),"http.request.redirect_end":VF(e.redirectEnd),"http.request.worker_start":VF(e.workerStart),"http.request.fetch_start":VF(e.fetchStart),"http.request.domain_lookup_start":VF(e.domainLookupStart),"http.request.domain_lookup_end":VF(e.domainLookupEnd),"http.request.connect_start":VF(e.connectStart),"http.request.secure_connection_start":VF(e.secureConnectionStart),"http.request.connection_end":VF(e.connectEnd),"http.request.request_start":VF(e.requestStart),"http.request.response_start":VF(e.responseStart),"http.request.response_end":VF(e.responseEnd),"http.request.time_to_first_byte":e.responseStart==null?void 0:e.responseStart/1e3}):t}function nNe(e){return Object.fromEntries(Object.entries(e).filter(([,e])=>e!=null))}var rNe=2147483647,UF=0,WF={},GF,KF;function iNe({recordClsStandaloneSpans:e,recordLcpStandaloneSpans:t,client:n}){let r=IF();if(r&&yT()){r.mark&&GP.performance.mark(`sentry-tracing-init`);let i=t?eNe(n):t===!1?lNe():void 0,a=e?QMe(n):e===!1?cNe():void 0,o=uNe(),s=dNe();return()=>{o(),s(),i?.(),a?.()}}return()=>void 0}function aNe(){TF(`longtask`,({entries:e})=>{let t=UE();if(!t)return;let{op:n,start_timestamp:r}=DE(t);for(let i of e){let e=LF(yT()+i.startTime),a=LF(i.duration);n===`navigation`&&r&&e<r||PF(t,e,e+a,{name:`Main UI thread blocked`,op:`ui.long-task`,attributes:{[qT]:`auto.ui.browser.metrics`}})}})}function oNe(){new PerformanceObserver(e=>{let t=UE();if(t)for(let n of e.getEntries()){if(!n.scripts[0])continue;let e=LF(yT()+n.startTime),{start_timestamp:r,op:i}=DE(t);if(i===`navigation`&&r&&e<r)continue;let a=LF(n.duration),o={[qT]:`auto.ui.browser.metrics`},{invoker:s,invokerType:c,sourceURL:l,sourceFunctionName:u,sourceCharPosition:d}=n.scripts[0];o[`browser.script.invoker`]=s,o[`browser.script.invoker_type`]=c,l&&(o[`code.filepath`]=l),u&&(o[`code.function`]=u),d!==-1&&(o[`browser.script.source_char_position`]=d),PF(t,e,e+a,{name:`Main UI thread blocked`,op:`ui.long-animation-frame`,attributes:o})}}).observe({type:`long-animation-frame`,buffered:!0})}function sNe(){TF(`event`,({entries:e})=>{let t=UE();if(t){for(let n of e)if(n.name===`click`){let e=LF(yT()+n.startTime),r=LF(n.duration),i={name:MF(n.target),op:`ui.interaction.${n.name}`,startTime:e,attributes:{[qT]:`auto.ui.browser.metrics`}},a=xM(n.target);a&&(i.attributes[`ui.component_name`]=a),PF(t,e,e+r,i)}}})}function cNe(){return SF(({metric:e})=>{let t=e.entries[e.entries.length-1];t&&(WF.cls={value:e.value,unit:``},KF=t)},!0)}function lNe(){return CF(({metric:e})=>{let t=e.entries[e.entries.length-1];!t||!BF(e.value)||(WF.lcp={value:e.value,unit:`millisecond`},GF=t)},!0)}function uNe(){return VMe(({metric:e})=>{e.entries[e.entries.length-1]&&(WF.ttfb={value:e.value,unit:`millisecond`})})}function dNe(){return TF(`paint`,({entries:e})=>{let t=eF();for(let n of e){let e=n.startTime<t.firstHiddenTime;n.name===`first-paint`&&e&&(WF.fp={value:n.startTime,unit:`millisecond`}),n.name===`first-contentful-paint`&&e&&(WF.fcp={value:n.startTime,unit:`millisecond`})}})}function fNe(e,t){let n=IF(),r=yT();if(!n?.getEntries||!r)return;let{spanStreamingEnabled:i,ignorePerformanceApiSpans:a,ignoreResourceSpans:o}=t,s=LF(r),c=n.getEntries(),{op:l,start_timestamp:u}=DE(e);c.slice(UF).forEach(t=>{let n=LF(t.startTime),r=LF(Math.max(0,t.duration));if(!(l===`navigation`&&u&&s+n<u))switch(t.entryType){case`navigation`:_Ne(e,t,s);break;case`mark`:case`paint`:case`measure`:hNe(e,t,n,r,s,a);break;case`resource`:bNe(e,t,t.name,n,r,s,o)}}),UF=Math.max(c.length-1,0),xNe(e,i)}function pNe(e,t){let n=yT();if(!IF()?.getEntries||!n){qF();return}let{spanStreamingEnabled:r,recordClsOnPageloadSpan:i,recordLcpOnPageloadSpan:a}=t,o=LF(n);if(DE(e).op===`pageload`){if(wNe(WF),r){let t=(t,n,r)=>{let i=r??`browser.web_vital.${t}.value`;e.setAttribute(i,n),WP&&K.log(`Setting web vital attribute`,{[i]:n},`on pageload span`)};[`ttfb`,`fp`,`fcp`].forEach(e=>{WF[e]&&t(e,WF[e].value)}),WF[`ttfb.requestTime`]&&t(`ttfb.requestTime`,WF[`ttfb.requestTime`].value,`browser.web_vital.ttfb.request_time`)}else i||delete WF.cls,a||delete WF.lcp,Object.entries(WF).forEach(([t,n])=>{mD(t,n.value,n.unit,e)}),SNe(e,t);e.setAttribute(r?`browser.performance.time_origin`:`performance.timeOrigin`,o),e.setAttribute(r?`browser.performance.navigation.activation_start`:`performance.activationStart`,JP())}qF()}function qF(){GF=void 0,KF=void 0,WF={}}function mNe(e){if(e?.entryType===`measure`)try{return e.detail.devtools.track===`Components ⚛`}catch{return}}function hNe(e,t,n,r,i,a){if(mNe(t)||[`mark`,`measure`].includes(t.entryType)&&sT(t.name,a))return;let o=qP(!1),s=LF(o?o.requestStart:0),c=i+Math.max(n,s),l=i+n,u=l+r,d={[qT]:`auto.resource.browser.metrics`};c!==l&&(d[`sentry.browser.measure_happened_before_request`]=!0,d[`sentry.browser.measure_start_time`]=c),gNe(d,t),c<=u&&PF(e,c,u,{name:t.name,op:t.entryType,attributes:d})}function gNe(e,t){try{let n=t.detail;if(!n)return;if(typeof n==`object`){for(let[t,r]of Object.entries(n))if(r&&Nw(r))e[`sentry.browser.measure.detail.${t}`]=r;else if(r!==void 0)try{e[`sentry.browser.measure.detail.${t}`]=JSON.stringify(r)}catch{}return}if(Nw(n)){e[`sentry.browser.measure.detail`]=n;return}try{e[`sentry.browser.measure.detail`]=JSON.stringify(n)}catch{}}catch{}}function _Ne(e,t,n){[`unloadEvent`,`redirect`,`domContentLoadedEvent`,`loadEvent`,`connect`].forEach(r=>{JF(e,t,r,n)}),JF(e,t,`secureConnection`,n,`TLS/SSL`),JF(e,t,`fetch`,n,`cache`),JF(e,t,`domainLookup`,n,`DNS`),yNe(e,t,n)}function JF(e,t,n,r,i=n){let a=t[vNe(n)],o=t[`${n}Start`];!o||!a||PF(e,r+LF(o),r+LF(a),{op:`browser.${i}`,name:t.name,attributes:{[qT]:`auto.ui.browser.metrics`,...n===`redirect`&&t.redirectCount!=null?{"http.redirect_count":t.redirectCount}:{}}})}function vNe(e){return e===`secureConnection`?`connectEnd`:e===`fetch`?`domainLookupStart`:`${e}End`}function yNe(e,t,n){let r=n+LF(t.requestStart),i=n+LF(t.responseEnd),a=n+LF(t.responseStart);t.responseEnd&&(PF(e,r,i,{op:`browser.request`,name:t.name,attributes:{[qT]:`auto.ui.browser.metrics`}}),PF(e,a,i,{op:`browser.response`,name:t.name,attributes:{[qT]:`auto.ui.browser.metrics`}}))}function bNe(e,t,n,r,i,a,o){if(t.initiatorType===`xmlhttprequest`||t.initiatorType===`fetch`)return;let s=t.initiatorType?`resource.${t.initiatorType}`:`resource.other`;if(o?.includes(s))return;let c={[qT]:`auto.resource.browser.metrics`},l=yk(n);l.protocol&&(c[`url.scheme`]=l.protocol.split(`:`).pop()),l.host&&(c[`server.address`]=l.host),c[`url.same_origin`]=n.includes(GP.location.origin),c[Vwe]=n,CNe(t,c,[[`responseStatus`,`http.response.status_code`],[`transferSize`,`http.response_transfer_size`],[`encodedBodySize`,`http.response_content_length`],[`decodedBodySize`,`http.decoded_response_content_length`],[`renderBlockingStatus`,`resource.render_blocking_status`],[`deliveryType`,`http.response_delivery_type`]]);let u={...c,...HF(t)},d=a+r;PF(e,d,d+i,{name:n.replace(GP.location.origin,``),op:s,attributes:u})}function xNe(e,t){let n=GP.navigator;if(!n)return;let r=n.connection;r&&(r.effectiveType&&e.setAttribute(t?`network.connection.effective_type`:`effectiveConnectionType`,r.effectiveType),r.type&&e.setAttribute(t?`network.connection.type`:`connectionType`,r.type),NF(r.rtt)&&(t?e.setAttribute(`network.connection.rtt`,r.rtt):DE(e).op===`pageload`&&mD(`connection.rtt`,r.rtt,`millisecond`))),NF(n.deviceMemory)&&(t?e.setAttribute(`device.memory.estimated_capacity`,n.deviceMemory):e.setAttribute(`deviceMemory`,`${n.deviceMemory} GB`)),NF(n.hardwareConcurrency)&&(t?e.setAttribute(`device.processor_count`,n.hardwareConcurrency):e.setAttribute(`hardwareConcurrency`,String(n.hardwareConcurrency)))}function SNe(e,t){GF&&t.recordLcpOnPageloadSpan&&(GF.element&&e.setAttribute(`lcp.element`,MF(GF.element)),GF.id&&e.setAttribute(`lcp.id`,GF.id),GF.url&&e.setAttribute(`lcp.url`,GF.url.trim().slice(0,200)),GF.loadTime!=null&&e.setAttribute(`lcp.loadTime`,GF.loadTime),GF.renderTime!=null&&e.setAttribute(`lcp.renderTime`,GF.renderTime),e.setAttribute(`lcp.size`,GF.size)),KF?.sources&&t.recordClsOnPageloadSpan&&KF.sources.forEach((t,n)=>e.setAttribute(`cls.source.${n+1}`,MF(t.node)))}function CNe(e,t,n){n.forEach(([n,r])=>{let i=e[n];i!=null&&(typeof i==`number`&&i<rNe||typeof i==`string`)&&(t[r]=i)})}function wNe(e){let t=qP(!1);if(!t)return;let{responseStart:n,requestStart:r}=t;r<=n&&(e[`ttfb.requestTime`]={value:n-r,unit:`millisecond`})}var TNe=`ElementTiming`,ENe=EO((()=>({name:TNe,setup(){!IF()||!yT()||TF(`element`,({entries:e})=>{for(let t of e){let e=t;if(!e.identifier)continue;let n=e.identifier,r=e.name,i=e.renderTime,a=e.loadTime,o={"sentry.origin":`auto.ui.browser.element_timing`,"ui.element.identifier":n};r&&(o[`ui.element.paint_type`]=r),e.id&&(o[`ui.element.id`]=e.id),e.element&&(o[`ui.element.type`]=e.element.tagName.toLowerCase()),e.url&&(o[`ui.element.url`]=e.url),e.naturalWidth&&(o[`ui.element.width`]=e.naturalWidth),e.naturalHeight&&(o[`ui.element.height`]=e.naturalHeight),i>0&&vA(`ui.element.render_time`,i,{unit:`millisecond`,attributes:o}),a>0&&vA(`ui.element.load_time`,a,{unit:`millisecond`,attributes:o})}})}}))),YF=[],XF=new Map,ZF=new Map;function DNe(){if(IF()&&yT()){let e=ONe();return()=>{e()}}return()=>void 0}var QF={click:`click`,pointerdown:`click`,pointerup:`click`,mousedown:`click`,mouseup:`click`,touchstart:`click`,touchend:`click`,mouseover:`hover`,mouseout:`hover`,mouseenter:`hover`,mouseleave:`hover`,pointerover:`hover`,pointerout:`hover`,pointerenter:`hover`,pointerleave:`hover`,dragstart:`drag`,dragend:`drag`,drag:`drag`,dragenter:`drag`,dragleave:`drag`,dragover:`drag`,drop:`drag`,keydown:`press`,keyup:`press`,keypress:`press`,input:`press`};function ONe(){return wF(kNe)}var kNe=({metric:e})=>{if(e.value==null)return;let t=LF(e.value);if(t>60)return;let n=e.entries.find(t=>t.duration===e.value&&QF[t.name]);if(!n)return;let{interactionId:r}=n,i=QF[n.name],a=LF(yT()+n.startTime),o=UE(),s=o?VE(o):void 0,c=r==null?void 0:XF.get(r),l=c?.span||s,u=l?DE(l).description:q().getScopeData().transactionName,d=FF({name:c?.elementName||MF(n.target),transaction:u,attributes:{[qT]:`auto.http.browser.inp`,[KT]:`ui.interaction.${i}`,[$T]:n.duration},startTime:a});d&&(d.addEvent(`inp`,{[YT]:`millisecond`,[XT]:e.value}),d.end(a+t))};function ANe(e){return e==null?void 0:XF.get(e)}function jNe(){let e=Object.keys(QF);jO()&&e.forEach(e=>{GP.addEventListener(e,t,{capture:!0,passive:!0})});function t(e){let t=e.target;if(!t)return;let n=MF(t),r=Math.round(e.timeStamp);if(ZF.set(r,n),ZF.size>50){let e=ZF.keys().next().value;e!==void 0&&ZF.delete(e)}}function n(e){let t=Math.round(e.startTime),n=ZF.get(t);if(!n)for(let e=-5;e<=5;e++){let r=ZF.get(t+e);if(r){n=r;break}}return n||`<unknown>`}let r=({entries:e})=>{let t=UE(),r=t&&VE(t);e.forEach(e=>{if(!qMe(e))return;let t=e.interactionId;if(t==null||XF.has(t))return;let i=e.target?MF(e.target):n(e);if(YF.length>10){let e=YF.shift();XF.delete(e)}YF.push(t),XF.set(t,{span:r,elementName:i})})};TF(`event`,r),TF(`first-input`,r)}function $F(e){let{name:t,op:n,origin:r,metricName:i,value:a,attributes:o,parentSpan:s,reportEvent:c,startTime:l,endTime:u}=e,d=q().getScopeData().transactionName,f={[qT]:r,[KT]:n,[$T]:0,[`browser.web_vital.${i}.value`]:a,[Sl]:d,[bl]:d,"user_agent.original":GP.navigator?.userAgent,...o};s&&OE(s).attributes?.[`sentry.op`]===`pageload`&&(f[`sentry.pageload.span_id`]=s.spanContext().spanId),c&&(f[`browser.web_vital.${i}.report_event`]=c);let p=ED({name:t,attributes:f,startTime:l,parentSpan:s});p&&p.end(u??l)}function MNe(e){let t=0,n;if(!RF(`largest-contentful-paint`))return;let r=CF(({metric:e})=>{let r=e.entries[e.entries.length-1];!r||!BF(e.value)||(t=e.value,n=r)},!0);zF(e,(e,i,a)=>{NNe(t,n,a,e),r()})}function NNe(e,t,n,r){if(!BF(e))return;WP&&K.log(`Sending LCP span (${e})`);let i=yT()||0,a=LF(i),o=LF(i+(t?.startTime||0)),s=t?MF(t.element):`Largest contentful paint`,c={};t?.element&&(c[`browser.web_vital.lcp.element`]=MF(t.element)),t?.id&&(c[`browser.web_vital.lcp.id`]=t.id),t?.url&&(c[`browser.web_vital.lcp.url`]=t.url),t?.loadTime!=null&&(c[`browser.web_vital.lcp.load_time`]=t.loadTime),t?.renderTime!=null&&(c[`browser.web_vital.lcp.render_time`]=t.renderTime),t?.size!=null&&(c[`browser.web_vital.lcp.size`]=t.size),$F({name:s,op:`ui.webvital.lcp`,origin:`auto.http.browser.lcp`,metricName:`lcp`,value:e,attributes:c,parentSpan:n,reportEvent:r,startTime:a,endTime:o})}function PNe(e){let t=0,n;if(!RF(`layout-shift`))return;let r=SF(({metric:e})=>{let r=e.entries[e.entries.length-1];r&&(t=e.value,n=r)},!0);zF(e,(e,i,a)=>{FNe(t,n,a,e),r()})}function FNe(e,t,n,r){WP&&K.log(`Sending CLS span (${e})`);let i=t?LF((yT()||0)+t.startTime):_T(),a=t?MF(t.sources[0]?.node):`Layout shift`,o={};t?.sources&&t.sources.forEach((e,t)=>{o[`browser.web_vital.cls.source.${t+1}`]=MF(e.node)}),$F({name:a,op:`ui.webvital.cls`,origin:`auto.http.browser.cls`,metricName:`cls`,value:e,attributes:o,parentSpan:n,reportEvent:r,startTime:i})}function INe(){!IF()||!yT()||wF(({metric:e})=>{if(e.value==null||LF(e.value)>60)return;let t=e.entries.find(t=>t.duration===e.value&&QF[t.name]);t&&LNe(e.value,t)})}function LNe(e,t){WP&&K.log(`Sending INP span (${e})`);let n=LF(yT()+t.startTime),r=LF(e),i=QF[t.name],a=ANe(t.interactionId),o=UE(),s=o?VE(o):void 0,c=a?.span||s,l=c?OE(c).name:q().getScopeData().transactionName;$F({name:a?.elementName||MF(t.target),op:`ui.interaction.${i}`,origin:`auto.http.browser.inp`,metricName:`inp`,value:e,attributes:{[$T]:t.duration,[Sl]:l,[bl]:l},startTime:n,endTime:n+r,parentSpan:c})}var RNe=1e3,eI,tI,nI;function rI(e){yw(`dom`,e),bw(`dom`,zNe)}function zNe(){if(!GP.document)return;let e=xw.bind(null,`dom`),t=iI(e,!0);GP.document.addEventListener(`click`,t,!1),GP.document.addEventListener(`keypress`,t,!1),[`EventTarget`,`Node`].forEach(t=>{let n=GP[t]?.prototype;n?.hasOwnProperty?.(`addEventListener`)&&(Bw(n,`addEventListener`,function(t){return function(n,r,i){if(n===`click`||n==`keypress`)try{let r=this.__sentry_instrumentation_handlers__=this.__sentry_instrumentation_handlers__||{},a=r[n]=r[n]||{refCount:0};if(!a.handler){let r=iI(e);a.handler=r,t.call(this,n,r,i)}a.refCount++}catch{}return t.call(this,n,r,i)}}),Bw(n,`removeEventListener`,function(e){return function(t,n,r){if(t===`click`||t==`keypress`)try{let n=this.__sentry_instrumentation_handlers__||{},i=n[t];i&&(i.refCount--,i.refCount<=0&&(e.call(this,t,i.handler,r),i.handler=void 0,delete n[t]),Object.keys(n).length===0&&delete this.__sentry_instrumentation_handlers__)}catch{}return e.call(this,t,n,r)}}))})}function BNe(e){if(e.type!==tI)return!1;try{if(!e.target||e.target._sentryId!==nI)return!1}catch{}return!0}function VNe(e,t){return e===`keypress`?!t?.tagName||!(t.tagName===`INPUT`||t.tagName===`TEXTAREA`||t.isContentEditable):!1}function iI(e,t=!1){return n=>{if(!n||n._sentryCaptured)return;let r=HNe(n);if(VNe(n.type,r))return;Vw(n,`_sentryCaptured`,!0),r&&!r._sentryId&&Vw(r,`_sentryId`,lT());let i=n.type===`keypress`?`input`:n.type;BNe(n)||(e({event:n,name:i,global:t}),tI=n.type,nI=r?r._sentryId:void 0),clearTimeout(eI),eI=GP.setTimeout(()=>{nI=void 0,tI=void 0},RNe)}}function HNe(e){try{return e.target}catch{return null}}var aI;function oI(e){let t=`history`;yw(t,e),bw(t,UNe)}function UNe(){if(GP.addEventListener(`popstate`,()=>{let e=GP.location.href,t=aI;aI=e,t!==e&&xw(`history`,{from:t,to:e})}),!eM())return;function e(e){return function(...t){let n=t.length>2?t[2]:void 0;if(n){let r=aI,i=WNe(String(n));if(aI=i,r===i)return e.apply(this,t);xw(`history`,{from:r,to:i})}return e.apply(this,t)}}Bw(GP.history,`pushState`,e),Bw(GP.history,`replaceState`,e)}function WNe(e){try{return new URL(e,GP.location.origin).toString()}catch{return e}}var sI={};function cI(e){let t=sI[e];if(t)return t;let n=GP[e];if(nM(n))return sI[e]=n.bind(GP);let r=GP.document;if(r&&typeof r.createElement==`function`)try{let t=r.createElement(`iframe`);t.hidden=!0,r.head.appendChild(t);let i=t.contentWindow;i?.[e]&&(n=i[e]),r.head.removeChild(t)}catch(t){WP&&K.warn(`Could not create sandbox iframe for ${e} check, bailing to window.${e}: `,t)}return n&&(sI[e]=n.bind(GP))}function GNe(e){sI[e]=void 0}function lI(...e){return cI(`setTimeout`)(...e)}var uI=`__sentry_xhr_v3__`;function dI(e){yw(`xhr`,e),bw(`xhr`,KNe)}function KNe(){if(!GP.XMLHttpRequest)return;let e=XMLHttpRequest.prototype;e.open=new Proxy(e.open,{apply(e,t,n){let r=Error(),i=_T()*1e3,a=jw(n[0])?n[0].toUpperCase():void 0,o=qNe(n[1]);if(!a||!o)return e.apply(t,n);t[uI]={method:a,url:o,request_headers:{}},a===`POST`&&o.match(/sentry_key/)&&(t.__sentry_own_request__=!0);let s=()=>{let e=t[uI];if(e&&t.readyState===4){try{e.status_code=t.status}catch{}xw(`xhr`,{endTimestamp:_T()*1e3,startTimestamp:i,xhr:t,virtualError:r}),t.removeEventListener(`readystatechange`,s)}};return`onreadystatechange`in t&&typeof t.onreadystatechange==`function`?t.onreadystatechange=new Proxy(t.onreadystatechange,{apply(e,t,n){return s(),e.apply(t,n)}}):t.addEventListener(`readystatechange`,s),t.setRequestHeader=new Proxy(t.setRequestHeader,{apply(e,t,n){let[r,i]=n,a=t[uI];return a&&jw(r)&&jw(i)&&(a.request_headers[r.toLowerCase()]=i),e.apply(t,n)}}),e.apply(t,n)}}),e.send=new Proxy(e.send,{apply(e,t,n){let r=t[uI];return r?(n[0]!==void 0&&(r.body=n[0]),xw(`xhr`,{startTimestamp:_T()*1e3,xhr:t}),e.apply(t,n)):e.apply(t,n)}})}function qNe(e){if(jw(e))return e;try{return e.toString()}catch{}}var JNe=Symbol.for(`sentry__originalRequestBody`);function fI(e){return new URLSearchParams(e).toString()}function pI(e,t=K){try{if(typeof e==`string`)return[e];if(e instanceof URLSearchParams)return[e.toString()];if(e instanceof FormData)return[fI(e)];if(!e)return[void 0]}catch(n){return WP&&t.error(n,`Failed to serialize body`,e),[void 0,`BODY_PARSE_ERROR`]}return WP&&t.log(`Skipping network body because of body type`,e),[void 0,`UNPARSEABLE_BODY_TYPE`]}function mI(e=[]){if(e.length>=2&&e[1]&&typeof e[1]==`object`&&`body`in e[1])return e[1].body;if(e.length>=1&&e[0]instanceof Request){let t=e[0][JNe];return t===void 0?void 0:t}}function hI(e){let t;try{t=e.getAllResponseHeaders()}catch(t){return WP&&K.error(t,`Failed to get xhr response headers`,e),{}}return t?t.split(`\r
|
|
996
|
+
`).reduce((e,t)=>{let[n,r]=t.split(`: `);return r&&(e[n.toLowerCase()]=r),e},{}):{}}function YNe(e){if(typeof Element>`u`)return!1;try{return e instanceof Element}catch{return!1}}function XNe(e){try{return new URL(e,GP.location.origin).toString()}catch{return e}}var ZNe=40;function QNe(e,t=cI(`fetch`)){let n=0,r=0;async function i(i){let a=i.body.length;n+=a,r++;let o={body:i.body,method:`POST`,referrerPolicy:`strict-origin`,headers:e.headers,keepalive:n<=6e4&&r<15,...e.fetchOptions};try{let n=await t(e.url,o);return{statusCode:n.status,headers:{"x-sentry-rate-limits":n.headers.get(`X-Sentry-Rate-Limits`),"retry-after":n.headers.get(`Retry-After`)}}}catch(e){throw GNe(`fetch`),e}finally{n-=a,r--}}return qO(e,i,WO(e.bufferSize||ZNe))}var X=typeof __SENTRY_DEBUG__>`u`||__SENTRY_DEBUG__;function $Ne(){let e=J();if(!e){X&&K.warn(`No Sentry client available, profiling is not started`);return}if(!e.getIntegrationByName(`BrowserProfiling`)){X&&K.warn(`BrowserProfiling integration is not available`);return}e.emit(`startUIProfiler`)}function ePe(){let e=J();if(!e){X&&K.warn(`No Sentry client available, profiling is not started`);return}if(!e.getIntegrationByName(`BrowserProfiling`)){X&&K.warn(`ProfilingIntegration is not available`);return}e.emit(`stopUIProfiler`)}var tPe={startProfiler:$Ne,stopProfiler:ePe},nPe=30,rPe=50;function gI(e,t,n,r){let i={filename:e,function:t===`<anonymous>`?`?`:t,in_app:!0};return n!==void 0&&(i.lineno=n),r!==void 0&&(i.colno=r),i}var iPe=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,aPe=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,oPe=/\((\S*)(?::(\d+))(?::(\d+))\)/,sPe=/at (.+?) ?\(data:(.+?),/,_I=[nPe,e=>{let t=e.match(sPe);if(t)return{filename:`<data:${t[2]}>`,function:t[1]};let n=iPe.exec(e);if(n){let[,e,t,r]=n;return gI(e,`?`,+t,+r)}let r=aPe.exec(e);if(r){if(r[2]?.indexOf(`eval`)===0){let e=oPe.exec(r[2]);e&&(r[2]=e[1],r[3]=e[2],r[4]=e[3])}let[e,t]=vI(r[1]||`?`,r[2]);return gI(t,e,r[3]?+r[3]:void 0,r[4]?+r[4]:void 0)}}],cPe=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,lPe=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,uPe=uw(_I,[rPe,e=>{let t=cPe.exec(e);if(t){if(t[3]&&t[3].indexOf(` > eval`)>-1){let e=lPe.exec(t[3]);e&&(t[1]=t[1]||`eval`,t[3]=e[1],t[4]=e[2],t[5]=``)}let e=t[3],n=t[1]||`?`;return[n,e]=vI(n,e),gI(e,n,t[4]?+t[4]:void 0,t[5]?+t[5]:void 0)}}]),vI=(e,t)=>{let n=e.indexOf(`safari-extension`)!==-1,r=e.indexOf(`safari-web-extension`)!==-1;return n||r?[e.indexOf(`@`)===-1?`?`:e.split(`@`)[0],n?`safari-extension:${t}`:`safari-web-extension:${t}`]:[e,t]};function dPe(e,{metadata:t,tunnel:n,dsn:r}){return aD({event_id:e.event_id,sent_at:new Date().toISOString(),...t?.sdk&&{sdk:{name:t.sdk.name,version:t.sdk.version}},...!!n&&!!r&&{dsn:fE(r)}},[fPe(e)])}function fPe(e){return[{type:`user_report`},e]}var yI=1024,pPe=`Breadcrumbs`,bI=EO(((e={})=>{let t={console:!0,dom:!0,fetch:!0,history:!0,sentry:!0,xhr:!0,...e};return{name:pPe,setup(e){t.console&&Uk(gPe(e)),t.dom&&rI(hPe(e,t.dom)),t.xhr&&dI(_Pe(e)),t.fetch&&aM(vPe(e)),t.history&&oI(yPe(e)),t.sentry&&e.on(`beforeSendEvent`,mPe(e))}}}));function mPe(e){return function(t){J()===e&&Ek({category:`sentry.${t.type===`transaction`?`transaction`:`event`}`,event_id:t.event_id,level:t.level,message:dT(t)},{event:t})}}function hPe(e,t){return function(n){if(J()!==e)return;let r,i,a=typeof t==`object`?t.serializeAttribute:void 0,o=typeof t==`object`&&typeof t.maxStringLength==`number`?t.maxStringLength:void 0;o&&o>yI&&(X&&K.warn(`\`dom.maxStringLength\` cannot exceed ${yI}, but a value of ${o} was configured. Sentry will use ${yI} instead.`),o=yI),typeof a==`string`&&(a=[a]);try{let e=n.event,t=bPe(e)?e.target:e;r=MF(t,{keyAttrs:a,maxStringLength:o}),i=xM(t)}catch{r=`<unknown>`}if(r.length===0)return;let s={category:`ui.${n.name}`,message:r};i&&(s.data={"ui.component_name":i}),Ek(s,{event:n.event,name:n.name,global:n.global})}}function gPe(e){return function(t){if(J()!==e)return;let n={category:`console`,data:{arguments:t.args,logger:`console`},level:Gk(t.level),message:aT(t.args,` `)};if(t.level===`assert`)if(t.args[0]===!1)n.message=`Assertion failed: ${aT(t.args.slice(1),` `)||`console.assert`}`,n.data.arguments=t.args.slice(1);else return;Ek(n,{input:t.args,level:t.level})}}function _Pe(e){return function(t){if(J()!==e)return;let{startTimestamp:n,endTimestamp:r}=t,i=t.xhr[uI];if(!n||!r||!i)return;let{method:a,url:o,status_code:s,body:c}=i,l={method:a,url:o,status_code:s},u={xhr:t.xhr,input:c,startTimestamp:n,endTimestamp:r},d={category:`xhr`,data:l,type:`http`,level:Qj(s)};e.emit(`beforeOutgoingRequestBreadcrumb`,d,u),Ek(d,u)}}function vPe(e){return function(t){if(J()!==e)return;let{startTimestamp:n,endTimestamp:r}=t;if(r&&!(t.fetchData.url.match(/sentry_key/)&&t.fetchData.method===`POST`))if(t.error){let i={data:t.error,input:t.args,startTimestamp:n,endTimestamp:r},a={category:`fetch`,data:t.fetchData,level:`error`,type:`http`};e.emit(`beforeOutgoingRequestBreadcrumb`,a,i),Ek(a,i)}else{let i=t.response,a={...t.fetchData,status_code:i?.status},o={input:t.args,response:i,startTimestamp:n,endTimestamp:r},s={category:`fetch`,data:a,type:`http`,level:Qj(a.status_code)};e.emit(`beforeOutgoingRequestBreadcrumb`,s,o),Ek(s,o)}}}function yPe(e){return function(t){if(J()!==e)return;let n=t.from,r=t.to,i=yk(Y.location.href),a=n?yk(n):void 0,o=yk(r);a?.path||(a=i),i.protocol===o.protocol&&i.host===o.host&&(r=o.relative),i.protocol===a.protocol&&i.host===a.host&&(n=a.relative),Ek({category:`navigation`,data:{from:n,to:r}})}}function bPe(e){return!!e&&!!e.target}var xPe=`EventTarget,Window,Node,ApplicationCache,AudioTrackList,BroadcastChannel,ChannelMergerNode,CryptoOperation,EventSource,FileReader,HTMLUnknownElement,IDBDatabase,IDBRequest,IDBTransaction,KeyOperation,MediaController,MessagePort,ModalWindow,Notification,SVGElementInstance,Screen,SharedWorker,TextTrack,TextTrackCue,TextTrackList,WebSocket,WebSocketWorker,Worker,XMLHttpRequest,XMLHttpRequestEventTarget,XMLHttpRequestUpload`.split(`,`),SPe=`BrowserApiErrors`,xI=EO(((e={})=>{let t={XMLHttpRequest:!0,eventTarget:!0,requestAnimationFrame:!0,setInterval:!0,setTimeout:!0,unregisterOriginalCallbacks:!1,...e};return{name:SPe,setupOnce(){t.setTimeout&&Bw(Y,`setTimeout`,SI),t.setInterval&&Bw(Y,`setInterval`,SI),t.requestAnimationFrame&&Bw(Y,`requestAnimationFrame`,CPe),t.XMLHttpRequest&&`XMLHttpRequest`in Y&&Bw(XMLHttpRequest.prototype,`send`,wPe);let e=t.eventTarget;e&&(Array.isArray(e)?e:xPe).forEach(e=>TPe(e,t))}}}));function SI(e){return function(...t){let n=t[0];return t[0]=jP(n,{mechanism:{handled:!1,type:`auto.browser.browserapierrors.${mw(e)}`}}),e.apply(this,t)}}function CPe(e){return function(t){return e.apply(this,[jP(t,{mechanism:{data:{handler:mw(e)},handled:!1,type:`auto.browser.browserapierrors.requestAnimationFrame`}})])}}function wPe(e){return function(...t){let n=this;return[`onload`,`onerror`,`onprogress`,`onreadystatechange`].forEach(e=>{e in n&&typeof n[e]==`function`&&Bw(n,e,function(t){let n={mechanism:{data:{handler:mw(t)},handled:!1,type:`auto.browser.browserapierrors.xhr.${e}`}},r=Uw(t);return r&&(n.mechanism.data.handler=mw(r)),jP(t,n)})}),e.apply(this,t)}}function TPe(e,t){let n=Y[e]?.prototype;n?.hasOwnProperty?.(`addEventListener`)&&(Bw(n,`addEventListener`,function(n){return function(r,i,a){try{EPe(i)&&(i.handleEvent=jP(i.handleEvent,{mechanism:{data:{handler:mw(i),target:e},handled:!1,type:`auto.browser.browserapierrors.handleEvent`}}))}catch{}return t.unregisterOriginalCallbacks&&DPe(this,r,i),n.apply(this,[r,jP(i,{mechanism:{data:{handler:mw(i),target:e},handled:!1,type:`auto.browser.browserapierrors.addEventListener`}}),a])}}),Bw(n,`removeEventListener`,function(e){return function(t,n,r){try{if(Object.prototype.hasOwnProperty.call(n,`__sentry_wrapped__`)){let i=n.__sentry_wrapped__;i&&e.call(this,t,i,r)}}catch{}return e.call(this,t,n,r)}}))}function EPe(e){return typeof e.handleEvent==`function`}function DPe(e,t,n){e&&typeof e==`object`&&`removeEventListener`in e&&typeof e.removeEventListener==`function`&&e.removeEventListener(t,n)}var CI=EO((e={})=>{let t=e.lifecycle??`route`;return{name:`BrowserSession`,setupOnce(){if(Y.document===void 0){X&&K.warn("Using the `browserSessionIntegration` in non-browser environments is not supported.");return}gO({ignoreDuration:!0});let e=!1;mF(()=>{e||=(yO(),!0)});let n=BT(),r=n.getUser();n.addScopeListener(t=>{let n=t.getUser();(r?.id!==n?.id||r?.ip_address!==n?.ip_address)&&(r=n,e&&yO())}),t===`route`&&oI(({from:t,to:n})=>{t!==n&&(gO({ignoreDuration:!0}),yO(),e=!0)})}}}),OPe=`CultureContext`,kPe=EO((()=>({name:OPe,preprocessEvent(e){let t=wI();t&&(e.contexts={...e.contexts,culture:{...t,...e.contexts?.culture}})},processSegmentSpan(e){let t=wI();t&&JD(e,{"culture.locale":t.locale,"culture.timezone":t.timezone,"culture.calendar":t.calendar})}})));function wI(){try{let e=Y.Intl;if(!e)return;let t=e.DateTimeFormat().resolvedOptions();return{locale:t.locale,timezone:t.timeZone,calendar:t.calendar}}catch{return}}var APe=`GlobalHandlers`,TI=EO(((e={})=>{let t={onerror:!0,onunhandledrejection:!0,...e};return{name:APe,setupOnce(){Error.stackTraceLimit=50},setup(e){t.onerror&&(jPe(e),OI(`onerror`)),t.onunhandledrejection&&(MPe(e),OI(`onunhandledrejection`))}}}));function jPe(e){Cw(t=>{let{stackParser:n,attachStacktrace:r}=kI();if(J()!==e||AP())return;let{msg:i,url:a,line:o,column:s,error:c}=t,l=NPe(VP(n,c||i,void 0,r,!1),a,o,s);l.level=`error`,uO(l,{originalException:c,mechanism:{handled:!1,type:`auto.browser.global_handlers.onerror`}})})}function MPe(e){Tw(t=>{let{stackParser:n,attachStacktrace:r}=kI();if(J()!==e||AP())return;let i=EI(t),a=Nw(i)?DI(i):VP(n,i,void 0,r,!0);a.level=`error`,uO(a,{originalException:i,mechanism:{handled:!1,type:`auto.browser.global_handlers.onunhandledrejection`}})})}function EI(e){if(Nw(e))return e;try{if(`reason`in e)return e.reason;if(`detail`in e&&`reason`in e.detail)return e.detail.reason}catch{}return e}function DI(e){return{exception:{values:[{type:`UnhandledRejection`,value:`Non-Error promise rejection captured with value: ${String(e)}`}]}}}function NPe(e,t,n,r){let i=e.exception=e.exception||{},a=i.values=i.values||[],o=a[0]=a[0]||{},s=o.stacktrace=o.stacktrace||{},c=s.frames=s.frames||[];return c.length===0&&c.push({colno:r,lineno:n,filename:PPe(t)??bM(),function:`?`,in_app:!0}),e}function OI(e){X&&K.log(`Global Handler attached: ${e}`)}function kI(){return J()?.getOptions()||{stackParser:()=>[],attachStacktrace:!1}}function PPe(e){if(!(!jw(e)||e.length===0))return e.startsWith(`data:`)?`<${xk(e,!1)}>`:e}var AI=EO(()=>({name:`HttpContext`,preprocessEvent(e){if(!Y.navigator&&!Y.location&&!Y.document)return;let t=MP(),n={...t.headers,...e.request?.headers};e.request={...t,...e.request,headers:n}},processSegmentSpan(e){let t=e.attributes?.[KT];if(!Y.navigator&&!Y.location&&!Y.document)return;let n=MP();JD(e,{"url.full":t===`http.client`?void 0:n.url,"http.request.header.user_agent":n.headers[`User-Agent`],"http.request.header.referer":n.headers.Referer})}})),FPe=`cause`,IPe=5,LPe=`LinkedErrors`,jI=EO(((e={})=>{let t=e.limit||IPe,n=e.key||FPe;return{name:LPe,preprocessEvent(e,r,i){zDe(FP,i.getOptions().stackParser,n,t,e,r)}}})),RPe=/^HTML(\w*)Element$/;function MI(e){if(typeof window<`u`&&e===window)return`[Window]`;if(typeof document<`u`&&e===document)return`[Document]`;if(YNe(e)){let t=zPe(e);if(RPe.test(t))return`[HTMLElement: ${MF(e)}]`}}function zPe(e){let t=Object.getPrototypeOf(e);return t?.constructor?t.constructor.name:`null prototype`}function BPe(){return VPe()?(X&&rw(()=>{console.error(`[Sentry] You cannot use Sentry.init() in a browser extension, see: https://docs.sentry.io/platforms/javascript/best-practices/browser-extensions/`)}),!0):!1}function VPe(){if(Y.window===void 0)return!1;let e=Y;if(e.nw||!(e.chrome||e.browser)?.runtime?.id)return!1;let t=bM();return!(Y===Y.top&&/^(?:chrome-extension|moz-extension|ms-browser-extension|safari-web-extension):\/\//.test(t))}function NI(e){return[Ak(),Ok(),BOe(),xI(),bI(),TI(),jI(),Kk(),AI(),kPe(),CI()]}function HPe(e={}){let t=!e.skipBrowserExtensionCheck&&BPe(),n=e.defaultIntegrations==null?NI():e.defaultIntegrations,r={...e,enabled:!t&&e.enabled,stackParser:JCe(e.stackParser||uPe),integrations:NEe({integrations:e.integrations,defaultIntegrations:n}),transport:e.transport||QNe};return iwe(MI),gDe(UP,r)}function UPe(){}function WPe(e){e()}function PI(e={}){let t=Y.document,n=t?.head||t?.body;if(!n){X&&K.error(`[showReportDialog] Global document not defined`);return}let r=q(),i=J()?.getDsn();if(!i){X&&K.error(`[showReportDialog] DSN not configured`);return}let a={...e,user:{...r.getUser(),...e.user},eventId:e.eventId||pO()},o=Y.document.createElement(`script`);o.async=!0,o.crossOrigin=`anonymous`,o.src=jEe(i,a);let{onLoad:s,onClose:c}=a;if(s&&(o.onload=s),c){let e=t=>{if(t.data===`__sentry_reportdialog_closed__`)try{c()}finally{Y.removeEventListener(`message`,e)}};Y.addEventListener(`message`,e)}n.appendChild(o)}var GPe=G,KPe=`ReportingObserver`,FI=new WeakMap,qPe=EO(((e={})=>{let t=e.types||[`crash`,`deprecation`,`intervention`];function n(e){if(FI.has(J()))for(let t of e)HT(e=>{e.setExtra(`url`,t.url);let n=`ReportingObserver [${t.type}]`,r=`No details available`;if(t.body){let n={};for(let e in t.body)n[e]=t.body[e];if(e.setExtra(`body`,n),t.type===`crash`){let e=t.body;r=[e.crashId||``,e.reason||``].join(` `).trim()||r}else r=t.body.message||r}lO(`${n}: ${r}`)})}return{name:KPe,setupOnce(){iM()&&new GPe.ReportingObserver(n,{buffered:!0,types:t}).observe()},setup(e){FI.set(e,!0)}}})),JPe=`HttpClient`,YPe=EO(((e={})=>{let t={failedRequestStatusCodes:[[500,599]],failedRequestTargets:[/.*/],...e};return{name:JPe,setup(e){nFe(e,t),rFe(e,t)}}}));function XPe(e,t,n,r,i){if(LI(e,n.status,n.url)){let e=iFe(t,r),a,o,s,c,l=zI();if(l.requestHeaders!==!1&&(a=mk(II(e.headers),l.requestHeaders)),l.responseHeaders!==!1&&(o=mk(II(n.headers),l.responseHeaders)),l.cookies!==!1){let t=e.headers.get(`Cookie`)||void 0;if(t){let e=hk(t,l.cookies);typeof e==`object`&&(s=e)}let r=n.headers.get(`Set-Cookie`)||void 0;if(r){let e=hk(r,l.cookies);typeof e==`object`&&(c=e)}}uO(RI({url:e.url,method:e.method,status:n.status,requestHeaders:a,responseHeaders:o,requestCookies:s,responseCookies:c,error:i,type:`fetch`}))}}function ZPe(e,t,n,r,i){if(LI(e,t.status,t.responseURL)){let e,a,o,s=zI();if(s.cookies!==!1)try{let e=t.getResponseHeader(`Set-Cookie`)||t.getResponseHeader(`set-cookie`)||void 0;if(e){let t=hk(e,s.cookies);typeof t==`object`&&(a=t)}}catch{}if(s.responseHeaders!==!1)try{o=mk($Pe(t),s.responseHeaders)}catch{}s.requestHeaders!==!1&&(e=mk(r,s.requestHeaders)),uO(RI({url:t.responseURL,method:n,status:t.status,requestHeaders:e,responseHeaders:o,responseCookies:a,error:i,type:`xhr`}))}}function QPe(e){if(e){let t=e[`Content-Length`]||e[`content-length`];if(t)return parseInt(t,10)}}function II(e){let t={};return e.forEach((e,n)=>{t[n]=e}),t}function $Pe(e){let t=e.getAllResponseHeaders();return t?t.split(`\r
|
|
997
|
+
`).reduce((e,t)=>{let[n,r]=t.split(`: `);return n&&r&&(e[n]=r),e},{}):{}}function eFe(e,t){return e.some(e=>typeof e==`string`?t.includes(e):e.test(t))}function tFe(e,t){return e.some(e=>typeof e==`number`?e===t:t>=e[0]&&t<=e[1])}function nFe(e,t){rM()&&aM(n=>{if(J()!==e)return;let{response:r,args:i,error:a,virtualError:o}=n,[s,c]=i;r&&XPe(t,s,r,c,a||o)},!1)}function rFe(e,t){`XMLHttpRequest`in G&&dI(n=>{if(J()!==e)return;let{error:r,virtualError:i}=n,a=n.xhr,o=a[uI];if(!o)return;let{method:s,request_headers:c}=o;try{ZPe(t,a,s,c,r||i)}catch(e){X&&K.warn(`Error while extracting response event form XHR response`,e)}})}function LI(e,t,n){return tFe(e.failedRequestStatusCodes,t)&&eFe(e.failedRequestTargets,n)&&!Sk(n,J())}function RI(e){let t=J(),n=t&&e.error&&e.error instanceof Error?e.error.stack:void 0,r=n&&t?t.getOptions().stackParser(n,0,1):void 0,i=`HTTP Client Error with status code: ${e.status}`,a={message:i,exception:{values:[{type:`Error`,value:i,stacktrace:r?{frames:r}:void 0}]},request:{url:e.url,method:e.method,headers:e.requestHeaders,cookies:e.requestCookies},contexts:{response:{status_code:e.status,headers:e.responseHeaders,cookies:e.responseCookies,body_size:QPe(e.responseHeaders)}}};return pT(a,{type:`auto.http.client.${e.type}`,handled:!1}),a}function iFe(e,t){return!t&&e instanceof Request||e instanceof Request&&e.bodyUsed?e:new Request(e,t)}function zI(){let e=J();if(!e)return{cookies:!1,requestHeaders:!1,responseHeaders:!1};let t=e.getOptions();if(t.dataCollection==null){let e=!!t.sendDefaultPii;return{cookies:e,requestHeaders:e,responseHeaders:e}}let{cookies:n,httpHeaders:r}=e.getDataCollectionOptions();return{cookies:n,requestHeaders:r.request,responseHeaders:r.response}}var BI=G,aFe=7,oFe=`ContextLines`,sFe=EO(((e={})=>({name:oFe,processEvent(t,n,r){return cFe(t,e.frameContextLines??r?.getDataCollectionOptions().frameContextLines??aFe)}})));function cFe(e,t){let n=BI.document,r=BI.location&&bk(BI.location.href);if(!n||!r)return e;let i=e.exception?.values;if(!i?.length)return e;let a=n.documentElement.innerHTML;if(!a)return e;let o=[`<!DOCTYPE html>`,`<html>`,...a.split(`
|
|
998
|
+
`),`</html>`];return i.forEach(e=>{let n=e.stacktrace;n?.frames&&(n.frames=n.frames.map(e=>lFe(e,o,r,t)))}),e}function lFe(e,t,n,r){return e.filename!==n||!e.lineno||!t.length||dwe(t,e,r),e}var uFe=`GraphQLClient`,dFe=(e=>({name:uFe,setup(t){fFe(t,e),pFe(t,e)}}));function fFe(e,t){e.on(`beforeOutgoingRequestSpan`,(n,r)=>{let i=DE(n).data||{};if(i[`sentry.op`]!==`http.client`)return;let a=i[`url.full`]||i[`http.url`]||i.url,o=i[`http.request.method`]||i[`http.method`];if(!jw(a)||!jw(o))return;let{endpoints:s}=t,c=sT(a,s),l=HI(r);if(c&&l){let t=GI(l);if(t){let r=VI(t);n.updateName(`${o} ${a} (${r})`),UI(t)&&e.getDataCollectionOptions().graphQL.document===!0&&n.setAttribute(hl,t.query),WI(t)&&(n.setAttribute(`graphql.persisted_query.hash.sha256`,t.extensions.persistedQuery.sha256Hash),n.setAttribute(`graphql.persisted_query.version`,t.extensions.persistedQuery.version))}}})}function pFe(e,t){e.on(`beforeOutgoingRequestBreadcrumb`,(n,r)=>{let{category:i,type:a,data:o}=n;if(a===`http`&&(i===`fetch`||i===`xhr`)){let n=o?.url,{endpoints:i}=t,a=sT(n,i),s=HI(r);if(a&&o&&s){let t=GI(s);!o.graphql&&t&&(o[`graphql.operation`]=VI(t),UI(t)&&e.getDataCollectionOptions().graphQL.document===!0&&(o[hl]=t.query),WI(t)&&(o[`graphql.persisted_query.hash.sha256`]=t.extensions.persistedQuery.sha256Hash,o[`graphql.persisted_query.version`]=t.extensions.persistedQuery.version))}}})}function VI(e){if(WI(e))return`persisted ${e.operationName}`;if(UI(e)){let{query:t,operationName:n}=e,{operationName:r=n,operationType:i}=mFe(t);return r?`${i} ${r}`:`${i}`}return`unknown`}function HI(e){let t=`xhr`in e,n;if(t){let t=e.xhr[uI];n=t&&pI(t.body)[0]}else n=pI(mI(e.input))[0];return n}function mFe(e){let t=/^(?:\s*)(query|mutation|subscription)(?:\s*)(\w+)(?:\s*)[{(]/,n=/^(?:\s*)(query|mutation|subscription)(?:\s*)[{(]/,r=e.match(t);if(r)return{operationType:r[1],operationName:r[2]};let i=e.match(n);return i?{operationType:i[1],operationName:void 0}:{operationType:void 0,operationName:void 0}}function UI(e){return Fw(e)&&typeof e.query==`string`}function WI(e){return Fw(e)&&typeof e.operationName==`string`&&Fw(e.extensions)&&Fw(e.extensions.persistedQuery)&&typeof e.extensions.persistedQuery.sha256Hash==`string`&&typeof e.extensions.persistedQuery.version==`number`}function GI(e){try{let t=JSON.parse(e);return UI(t)||WI(t)?t:void 0}catch{return}}var hFe=EO(dFe),gFe=EO((e={})=>{let t=[`script`];function n(r,i,a=0){if(!r)return;let o=`shadowRoot`in r&&r.shadowRoot?r.shadowRoot.children:r.children;for(let r of o){if(!(r instanceof HTMLElement))continue;let o=xM(r,1)||void 0,s=r.tagName.toLowerCase();if(t.includes(s))continue;let c=e.onElement?.({element:r,componentName:o,tagName:s,depth:a})||{};if(c===`skip`)continue;if(c===`children`){n(r,i,a+1);continue}let{x:l,y:u,width:d,height:f}=r.getBoundingClientRect(),p={identifier:r.id||void 0,type:o||s,visible:!0,alpha:1,height:f,width:d,x:l,y:u,...c};p.children=[],n(r,p.children,a+1),i.push(p)}}return{name:`ViewHierarchy`,processEvent:(t,r)=>{if(t.type!==void 0||e.shouldAttach?.(t,r)===!1)return t;let i={rendering_system:`DOM`,positioning:`absolute`,windows:[]};n(e.rootElement?.()||Y.document.body,i.windows);let a={filename:`view-hierarchy.json`,attachmentType:`event.view_hierarchy`,contentType:`application/json`,data:JSON.stringify(i)};return r.attachments=r.attachments||[],r.attachments.push(a),t}}}),KI=G,qI=`sentryReplaySession`,_Fe=`replay_event`,JI=`Unable to send Replay`,vFe=3e5,yFe=9e5,bFe=5e3,xFe=5500,SFe=6e4,CFe=5e3,wFe=3,YI=15e4,XI=5e3,TFe=3e3,EFe=300,ZI=2e7,DFe=4999,OFe=5e4,QI=36e5,kFe=Object.defineProperty,AFe=(e,t,n)=>t in e?kFe(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,$I=(e,t,n)=>AFe(e,typeof t==`symbol`?t:t+``,n),eL=(e=>(e[e.Document=0]=`Document`,e[e.DocumentType=1]=`DocumentType`,e[e.Element=2]=`Element`,e[e.Text=3]=`Text`,e[e.CDATA=4]=`CDATA`,e[e.Comment=5]=`Comment`,e))(eL||{});function jFe(e){return e.nodeType===e.ELEMENT_NODE}function tL(e){return e?.host?.shadowRoot===e}function nL(e){return Object.prototype.toString.call(e)===`[object ShadowRoot]`}function MFe(e){return e.includes(` background-clip: text;`)&&!e.includes(` -webkit-background-clip: text;`)&&(e=e.replace(/\sbackground-clip:\s*text;/g,` -webkit-background-clip: text; background-clip: text;`)),e}function NFe(e){let{cssText:t}=e;if(t.split(`"`).length<3)return t;let n=[`@import`,`url(${JSON.stringify(e.href)})`];return e.layerName===``?n.push(`layer`):e.layerName&&n.push(`layer(${e.layerName})`),e.supportsText&&n.push(`supports(${e.supportsText})`),e.media.length&&n.push(e.media.mediaText),n.join(` `)+`;`}function rL(e){try{let t=e.rules||e.cssRules;return t?MFe(Array.from(t,iL).join(``)):null}catch{return null}}function PFe(e){let t=``;for(let n=0;n<e.style.length;n++){let r=e.style,i=r[n],a=r.getPropertyPriority(i);t+=`${i}:${r.getPropertyValue(i)}${a?` !important`:``};`}return`${e.selectorText} { ${t} }`}function iL(e){let t;if(IFe(e))try{t=rL(e.styleSheet)||NFe(e)}catch{}else if(LFe(e)){let t=e.cssText,n=e.selectorText.includes(`:`),r=typeof e.style.all==`string`&&e.style.all;if(r&&(t=PFe(e)),n&&(t=FFe(t)),n||r)return t}return t||e.cssText}function FFe(e){return e.replace(/(\[(?:[\w-]+)[^\\])(:(?:[\w-]+)\])/gm,`$1\\$2`)}function IFe(e){return`styleSheet`in e}function LFe(e){return`selectorText`in e}var aL=class{constructor(){$I(this,`idNodeMap`,new Map),$I(this,`nodeMetaMap`,new WeakMap)}getId(e){return e?this.getMeta(e)?.id??-1:-1}getNode(e){return this.idNodeMap.get(e)||null}getIds(){return Array.from(this.idNodeMap.keys())}getMeta(e){return this.nodeMetaMap.get(e)||null}removeNodeFromMap(e){let t=this.getId(e);this.idNodeMap.delete(t),e.childNodes&&e.childNodes.forEach(e=>this.removeNodeFromMap(e))}has(e){return this.idNodeMap.has(e)}hasNode(e){return this.nodeMetaMap.has(e)}add(e,t){let n=t.id;this.idNodeMap.set(n,e),this.nodeMetaMap.set(e,t)}replace(e,t){let n=this.getNode(e);if(n){let e=this.nodeMetaMap.get(n);e&&this.nodeMetaMap.set(t,e)}this.idNodeMap.set(e,t)}reset(){this.idNodeMap=new Map,this.nodeMetaMap=new WeakMap}};function RFe(){return new aL}function oL({maskInputOptions:e,tagName:t,type:n}){return t===`OPTION`&&(t=`SELECT`),!!(e[t.toLowerCase()]||n&&e[n]||n===`password`||t===`INPUT`&&!n&&e.text)}function sL({isMasked:e,element:t,value:n,maskInputFn:r}){let i=n||``;return e?(r&&(i=r(i,t)),`*`.repeat(i.length)):i}function cL(e){return e.toLowerCase()}function lL(e){return e.toUpperCase()}var uL=`__rrweb_original__`;function zFe(e){let t=e.getContext(`2d`);if(!t)return!0;for(let n=0;n<e.width;n+=50)for(let r=0;r<e.height;r+=50){let i=t.getImageData,a=uL in i?i[uL]:i;if(new Uint32Array(a.call(t,n,r,Math.min(50,e.width-n),Math.min(50,e.height-r)).data.buffer).some(e=>e!==0))return!1}return!0}function dL(e){let t=e.type;return e.hasAttribute(`data-rr-is-password`)?`password`:t?cL(t):null}function fL(e,t,n){return t===`INPUT`&&(n===`radio`||n===`checkbox`)?e.getAttribute(`value`)||``:e.value}function pL(e,t){let n;try{n=new URL(e,t??window.location.href)}catch{return null}return n.pathname.match(/\.([0-9a-z]+)(?:$)/i)?.[1]??null}var mL={};function hL(e){let t=mL[e];if(t)return t;let n=window.document,r=window[e];if(n&&typeof n.createElement==`function`)try{let t=n.createElement(`iframe`);t.hidden=!0,n.head.appendChild(t);let i=t.contentWindow;i&&i[e]&&(r=i[e]),n.head.removeChild(t)}catch{}return mL[e]=r.bind(window)}function gL(...e){return hL(`setTimeout`)(...e)}function _L(...e){return hL(`clearTimeout`)(...e)}function vL(e){try{return e.contentDocument}catch{}}function BFe(e){try{return e.contentWindow}catch{}}var VFe=1,HFe=RegExp(`[^a-z0-9-_:]`),yL=-2;function bL(){return VFe++}function UFe(e){if(e instanceof HTMLFormElement)return`form`;let t=cL(e.tagName);return HFe.test(t)?`div`:t}function WFe(e){let t=``;return t=e.indexOf(`//`)>-1?e.split(`/`).slice(0,3).join(`/`):e.split(`/`)[0],t=t.split(`?`)[0],t}var xL,SL,GFe=/url\((?:(')([^']*)'|(")(.*?)"|([^)]*))\)/gm,KFe=/^(?:[a-z+]+:)?\/\//i,qFe=/^www\..*/i,JFe=/^(data:)([^,]*),(.*)/i;function YFe(e,t){if(!e||t.size===0)return e;try{let n=e.split(`;`),r=[];for(let e of n){if(e=e.trim(),!e)continue;let n=e.indexOf(`:`);if(n===-1){r.push(e);continue}let i=e.slice(0,n).trim();t.has(i)||r.push(e)}return r.join(`; `)+(r.length>0&&e.endsWith(`;`)?`;`:``)}catch(t){return console.warn(`Error filtering CSS properties:`,t),e}}function CL(e,t){return(e||``).replace(GFe,(e,n,r,i,a,o)=>{let s=r||a||o,c=n||i||``;if(!s)return e;if(KFe.test(s)||qFe.test(s)||JFe.test(s))return`url(${c}${s}${c})`;if(s[0]===`/`)return`url(${c}${WFe(t)+s}${c})`;let l=t.split(`/`),u=s.split(`/`);l.pop();for(let e of u)if(e===`.`)continue;else e===`..`?l.pop():l.push(e);return`url(${c}${l.join(`/`)}${c})`})}var XFe=/^[^ \t\n\r\u000c]+/,ZFe=/^[, \t\n\r\u000c]+/;function QFe(e,t){if(t.trim()===``)return t;let n=0;function r(e){let r,i=e.exec(t.substring(n));return i?(r=i[0],n+=r.length,r):``}let i=[];for(;r(ZFe),!(n>=t.length);){let a=r(XFe);if(a.slice(-1)===`,`)a=TL(e,a.substring(0,a.length-1)),i.push(a);else{let r=``;a=TL(e,a);let o=!1;for(;;){let e=t.charAt(n);if(e===``){i.push((a+r).trim());break}if(o)e===`)`&&(o=!1);else{if(e===`,`){n+=1,i.push((a+r).trim());break}e===`(`&&(o=!0)}r+=e,n+=1}}}return i.join(`, `)}var wL=new WeakMap;function TL(e,t){return!t||t.trim()===``?t:EL(e,t)}function $Fe(e){return!!(e.tagName===`svg`||e.ownerSVGElement)}function EL(e,t){let n=wL.get(e);if(n||(n=e.createElement(`a`),wL.set(e,n)),!t)t=``;else if(t.startsWith(`blob:`)||t.startsWith(`data:`))return t;return n.setAttribute(`href`,t),n.href}function DL(e,t,n,r,i,a,o){if(!r)return r;if(n===`src`||n===`href`&&(t!==`use`||r[0]!==`#`)||n===`xlink:href`&&r[0]!==`#`||n===`background`&&(t===`table`||t===`td`||t===`th`))return TL(e,r);if(n===`srcset`)return QFe(e,r);if(n===`style`){let t=CL(r,EL(e));return o&&o.size>0&&(t=YFe(t,o)),t}return t===`object`&&n===`data`?TL(e,r):typeof a==`function`?a(n,r,i):r}function OL(e,t,n){return(e===`video`||e===`audio`)&&t===`autoplay`}function eIe(e,t,n,r){try{if(r&&e.matches(r))return!1;if(typeof t==`string`){if(e.classList.contains(t))return!0}else for(let n=e.classList.length;n--;){let r=e.classList[n];if(t.test(r))return!0}if(n)return e.matches(n)}catch{}return!1}function tIe(e,t){for(let n=e.classList.length;n--;){let r=e.classList[n];if(t.test(r))return!0}return!1}function kL(e,t,n=1/0,r=0){return!e||e.nodeType!==e.ELEMENT_NODE||r>n?-1:t(e)?r:kL(e.parentNode,t,n,r+1)}function AL(e,t){return n=>{let r=n;if(r===null)return!1;try{if(e){if(typeof e==`string`){if(r.matches(`.${e}`))return!0}else if(tIe(r,e))return!0}return!!(t&&r.matches(t))}catch{return!1}}}function jL(e,t,n,r,i,a){try{let o=e.nodeType===e.ELEMENT_NODE?e:e.parentElement;if(o===null)return!1;if(o.tagName===`INPUT`){let e=o.getAttribute(`autocomplete`);if([`current-password`,`new-password`,`cc-number`,`cc-exp`,`cc-exp-month`,`cc-exp-year`,`cc-csc`].includes(e))return!0}let s=-1,c=-1;if(a){if(c=kL(o,AL(r,i)),c<0)return!0;s=kL(o,AL(t,n),c>=0?c:1/0)}else{if(s=kL(o,AL(t,n)),s<0)return!1;c=kL(o,AL(r,i),s>=0?s:1/0)}return s>=0?c>=0?s<=c:!0:c>=0?!1:!!a}catch{}return!!a}function nIe(e,t,n){let r=BFe(e);if(!r)return;let i=!1,a;try{a=r.document.readyState}catch{return}if(a!==`complete`){let r=gL(()=>{i||=(t(),!0)},n);e.addEventListener(`load`,()=>{_L(r),i=!0,t()});return}let o=`about:blank`;if(r.location.href!==o||e.src===o||e.src===``)return gL(t,0),e.addEventListener(`load`,t);e.addEventListener(`load`,t)}function rIe(e,t,n){let r=!1,i;try{i=e.sheet}catch{i=null}if(i)return;let a=gL(()=>{r||=(t(),!0)},n);e.addEventListener(`load`,()=>{_L(a),r=!0,t()})}function iIe(e,t){let{doc:n,mirror:r,blockClass:i,blockSelector:a,unblockSelector:o,maskAllText:s,maskAttributeFn:c,maskTextClass:l,unmaskTextClass:u,maskTextSelector:d,unmaskTextSelector:f,inlineStylesheet:p,maskInputOptions:m={},maskTextFn:h,maskInputFn:g,dataURLOptions:_={},inlineImages:v,recordCanvas:y,keepIframeSrcFn:b,newlyAddedElement:x=!1,ignoreCSSAttributes:S}=t,C=aIe(n,r);switch(e.nodeType){case e.DOCUMENT_NODE:return e.compatMode===`CSS1Compat`?{type:eL.Document,childNodes:[]}:{type:eL.Document,childNodes:[],compatMode:e.compatMode};case e.DOCUMENT_TYPE_NODE:return{type:eL.DocumentType,name:e.name,publicId:e.publicId,systemId:e.systemId,rootId:C};case e.ELEMENT_NODE:return sIe(e,{doc:n,blockClass:i,blockSelector:a,unblockSelector:o,inlineStylesheet:p,maskAttributeFn:c,maskInputOptions:m,maskInputFn:g,dataURLOptions:_,inlineImages:v,recordCanvas:y,keepIframeSrcFn:b,newlyAddedElement:x,rootId:C,maskTextClass:l,unmaskTextClass:u,maskTextSelector:d,unmaskTextSelector:f,ignoreCSSAttributes:S});case e.TEXT_NODE:return oIe(e,{doc:n,maskAllText:s,maskTextClass:l,unmaskTextClass:u,maskTextSelector:d,unmaskTextSelector:f,maskTextFn:h,maskInputOptions:m,maskInputFn:g,rootId:C});case e.CDATA_SECTION_NODE:return{type:eL.CDATA,textContent:``,rootId:C};case e.COMMENT_NODE:return{type:eL.Comment,textContent:e.textContent||``,rootId:C};default:return!1}}function aIe(e,t){if(!t.hasNode(e))return;let n=t.getId(e);return n===1?void 0:n}function oIe(e,t){let{maskAllText:n,maskTextClass:r,unmaskTextClass:i,maskTextSelector:a,unmaskTextSelector:o,maskTextFn:s,maskInputOptions:c,maskInputFn:l,rootId:u}=t,d=e.parentNode&&e.parentNode.tagName,f=e.textContent,p=d===`STYLE`||void 0,m=d===`SCRIPT`||void 0,h=d===`TEXTAREA`||void 0;if(p&&f){try{e.nextSibling||e.previousSibling||e.parentNode.sheet?.cssRules&&(f=rL(e.parentNode.sheet))}catch(t){console.warn(`Cannot get CSS styles from text's parentNode. Error: ${t}`,e)}f=CL(f,EL(t.doc))}m&&(f=`SCRIPT_PLACEHOLDER`);let g=jL(e,r,a,i,o,n);return!p&&!m&&!h&&f&&g&&(f=s?s(f,e.parentElement):f.replace(/[\S]/g,`*`)),h&&f&&(c.textarea||g)&&(f=l?l(f,e.parentNode):f.replace(/[\S]/g,`*`)),d===`OPTION`&&f&&(f=sL({isMasked:jL(e,r,a,i,o,oL({type:null,tagName:d,maskInputOptions:c})),element:e,value:f,maskInputFn:l})),{type:eL.Text,textContent:f||``,isStyle:p,rootId:u}}function sIe(e,t){let{doc:n,blockClass:r,blockSelector:i,unblockSelector:a,inlineStylesheet:o,maskInputOptions:s={},maskAttributeFn:c,maskInputFn:l,dataURLOptions:u={},inlineImages:d,recordCanvas:f,keepIframeSrcFn:p,newlyAddedElement:m=!1,rootId:h,maskTextClass:g,unmaskTextClass:_,maskTextSelector:v,unmaskTextSelector:y,ignoreCSSAttributes:b}=t,x=eIe(e,r,i,a),S=UFe(e),C={},w=e.attributes.length;for(let t=0;t<w;t++){let r=e.attributes[t];r.name&&!OL(S,r.name,r.value)&&(C[r.name]=DL(n,S,cL(r.name),r.value,e,c,b))}if(S===`link`&&o){let t=Array.from(n.styleSheets).find(t=>t.href===e.href),r=null;t&&(r=rL(t)),r&&(C.rel=null,C.href=null,C.crossorigin=null,C._cssText=CL(r,t.href))}if(S===`style`&&e.sheet&&!(e.innerText||e.textContent||``).trim().length){let t=rL(e.sheet);t&&(C._cssText=CL(t,EL(n)))}if(S===`input`||S===`textarea`||S===`select`||S===`option`){let t=e,n=dL(t),r=fL(t,lL(S),n),i=t.checked;if(n!==`submit`&&n!==`button`&&r){let e=jL(t,g,v,_,y,oL({type:n,tagName:lL(S),maskInputOptions:s}));C.value=sL({isMasked:e,element:t,value:r,maskInputFn:l})}i&&(C.checked=i)}if(S===`option`&&(e.selected&&!s.select?C.selected=!0:delete C.selected),S===`canvas`&&f){if(e.__context===`2d`)zFe(e)||(C.rr_dataURL=e.toDataURL(u.type,u.quality));else if(!(`__context`in e)){let t=e.toDataURL(u.type,u.quality),r=n.createElement(`canvas`);r.width=e.width,r.height=e.height,t!==r.toDataURL(u.type,u.quality)&&(C.rr_dataURL=t)}}if(S===`img`&&d){xL||(xL=n.createElement(`canvas`),SL=xL.getContext(`2d`));let t=e,r=t.currentSrc||t.getAttribute(`src`)||`<unknown-src>`,i=t.crossOrigin,a=()=>{t.removeEventListener(`load`,a);try{xL.width=t.naturalWidth,xL.height=t.naturalHeight,SL.drawImage(t,0,0),C.rr_dataURL=xL.toDataURL(u.type,u.quality)}catch(e){if(t.crossOrigin!==`anonymous`){t.crossOrigin=`anonymous`,t.complete&&t.naturalWidth!==0?a():t.addEventListener(`load`,a);return}console.warn(`Cannot inline img src=${r}! Error: ${e}`)}t.crossOrigin===`anonymous`&&(i?C.crossOrigin=i:t.removeAttribute(`crossorigin`))};t.complete&&t.naturalWidth!==0?a():t.addEventListener(`load`,a)}if((S===`audio`||S===`video`)&&(C.rr_mediaState=e.paused?`paused`:`played`,C.rr_mediaCurrentTime=e.currentTime),m||(e.scrollLeft&&(C.rr_scrollLeft=e.scrollLeft),e.scrollTop&&(C.rr_scrollTop=e.scrollTop)),x){let{width:t,height:n}=e.getBoundingClientRect();C={class:C.class,rr_width:`${t}px`,rr_height:`${n}px`}}S===`iframe`&&!p(C.src)&&(!x&&!vL(e)&&(C.rr_src=C.src),delete C.src);let T;try{customElements.get(S)&&(T=!0)}catch{}return{type:eL.Element,tagName:S,attributes:C,childNodes:[],isSVG:$Fe(e)||void 0,needBlock:x,rootId:h,isCustom:T}}function ML(e){return e==null?``:e.toLowerCase()}function cIe(e,t){return!!(t.comment&&e.type===eL.Comment||e.type===eL.Element&&(t.script&&(e.tagName===`script`||e.tagName===`link`&&(e.attributes.rel===`preload`||e.attributes.rel===`modulepreload`)||e.tagName===`link`&&e.attributes.rel===`prefetch`&&typeof e.attributes.href==`string`&&pL(e.attributes.href)===`js`)||t.headFavicon&&(e.tagName===`link`&&e.attributes.rel===`shortcut icon`||e.tagName===`meta`&&(ML(e.attributes.name).match(/^msapplication-tile(image|color)$/)||ML(e.attributes.name)===`application-name`||ML(e.attributes.rel)===`icon`||ML(e.attributes.rel)===`apple-touch-icon`||ML(e.attributes.rel)===`shortcut icon`))||e.tagName===`meta`&&(t.headMetaDescKeywords&&ML(e.attributes.name).match(/^description|keywords$/)||t.headMetaSocial&&(ML(e.attributes.property).match(/^(og|twitter|fb):/)||ML(e.attributes.name).match(/^(og|twitter):/)||ML(e.attributes.name)===`pinterest`)||t.headMetaRobots&&(ML(e.attributes.name)===`robots`||ML(e.attributes.name)===`googlebot`||ML(e.attributes.name)===`bingbot`)||t.headMetaHttpEquiv&&e.attributes[`http-equiv`]!==void 0||t.headMetaAuthorship&&(ML(e.attributes.name)===`author`||ML(e.attributes.name)===`generator`||ML(e.attributes.name)===`framework`||ML(e.attributes.name)===`publisher`||ML(e.attributes.name)===`progid`||ML(e.attributes.property).match(/^article:/)||ML(e.attributes.property).match(/^product:/))||t.headMetaVerification&&(ML(e.attributes.name)===`google-site-verification`||ML(e.attributes.name)===`yandex-verification`||ML(e.attributes.name)===`csrf-token`||ML(e.attributes.name)===`p:domain_verify`||ML(e.attributes.name)===`verify-v1`||ML(e.attributes.name)===`verification`||ML(e.attributes.name)===`shopify-checkout-api-token`))))}function NL(e,t){let{doc:n,mirror:r,blockClass:i,blockSelector:a,unblockSelector:o,maskAllText:s,maskTextClass:c,unmaskTextClass:l,maskTextSelector:u,unmaskTextSelector:d,skipChild:f=!1,inlineStylesheet:p=!0,maskInputOptions:m={},maskAttributeFn:h,maskTextFn:g,maskInputFn:_,slimDOMOptions:v,dataURLOptions:y={},inlineImages:b=!1,recordCanvas:x=!1,onSerialize:S,onIframeLoad:C,iframeLoadTimeout:w=5e3,onBlockedImageLoad:T,onStylesheetLoad:E,stylesheetLoadTimeout:ee=5e3,keepIframeSrcFn:te=()=>!1,newlyAddedElement:ne=!1,ignoreCSSAttributes:re}=t,{preserveWhiteSpace:ie=!0}=t,ae=iIe(e,{doc:n,mirror:r,blockClass:i,blockSelector:a,maskAllText:s,unblockSelector:o,maskTextClass:c,unmaskTextClass:l,maskTextSelector:u,unmaskTextSelector:d,inlineStylesheet:p,maskInputOptions:m,maskAttributeFn:h,maskTextFn:g,maskInputFn:_,dataURLOptions:y,inlineImages:b,recordCanvas:x,keepIframeSrcFn:te,newlyAddedElement:ne,ignoreCSSAttributes:re});if(!ae)return console.warn(e,`not serialized`),null;let oe;oe=r.hasNode(e)?r.getId(e):cIe(ae,v)||!ie&&ae.type===eL.Text&&!ae.isStyle&&!ae.textContent.trim().length?yL:bL();let D=Object.assign(ae,{id:oe});if(r.add(e,D),oe===yL)return null;S&&S(e);let se=!f;if(D.type===eL.Element){se&&=!D.needBlock;let t=e.shadowRoot;t&&nL(t)&&(D.isShadowHost=!0)}if((D.type===eL.Document||D.type===eL.Element)&&se){v.headWhitespace&&D.type===eL.Element&&D.tagName===`head`&&(ie=!1);let t={doc:n,mirror:r,blockClass:i,blockSelector:a,maskAllText:s,unblockSelector:o,maskTextClass:c,unmaskTextClass:l,maskTextSelector:u,unmaskTextSelector:d,skipChild:f,inlineStylesheet:p,maskInputOptions:m,maskAttributeFn:h,maskTextFn:g,maskInputFn:_,slimDOMOptions:v,dataURLOptions:y,inlineImages:b,recordCanvas:x,preserveWhiteSpace:ie,onSerialize:S,onIframeLoad:C,iframeLoadTimeout:w,onBlockedImageLoad:T,onStylesheetLoad:E,stylesheetLoadTimeout:ee,keepIframeSrcFn:te,ignoreCSSAttributes:re},ne=e.childNodes?Array.from(e.childNodes):[];for(let e of ne){let n=NL(e,t);n&&D.childNodes.push(n)}if(jFe(e)&&e.shadowRoot)for(let n of Array.from(e.shadowRoot.childNodes)){let r=NL(n,t);r&&(nL(e.shadowRoot)&&(r.isShadow=!0),D.childNodes.push(r))}}if(e.parentNode&&tL(e.parentNode)&&nL(e.parentNode)&&(D.isShadow=!0),D.type===eL.Element&&D.tagName===`iframe`&&!D.needBlock&&nIe(e,()=>{let t=vL(e);if(t&&C){let n=NL(t,{doc:t,mirror:r,blockClass:i,blockSelector:a,unblockSelector:o,maskAllText:s,maskTextClass:c,unmaskTextClass:l,maskTextSelector:u,unmaskTextSelector:d,skipChild:!1,inlineStylesheet:p,maskInputOptions:m,maskAttributeFn:h,maskTextFn:g,maskInputFn:_,slimDOMOptions:v,dataURLOptions:y,inlineImages:b,recordCanvas:x,preserveWhiteSpace:ie,onSerialize:S,onIframeLoad:C,iframeLoadTimeout:w,onStylesheetLoad:E,stylesheetLoadTimeout:ee,keepIframeSrcFn:te,ignoreCSSAttributes:re});n&&C(e,n)}},w),D.type===eL.Element&&D.tagName===`img`&&!e.complete&&D.needBlock){let t=e,n=()=>{if(t.isConnected&&!t.complete&&T)try{let e=t.getBoundingClientRect();e.width>0&&e.height>0&&T(t,D,e)}catch{}t.removeEventListener(`load`,n)};t.isConnected&&t.addEventListener(`load`,n)}return D.type===eL.Element&&D.tagName===`link`&&typeof D.attributes.rel==`string`&&(D.attributes.rel===`stylesheet`||D.attributes.rel===`preload`&&typeof D.attributes.href==`string`&&pL(D.attributes.href)===`css`)&&rIe(e,()=>{if(E){let t=NL(e,{doc:n,mirror:r,blockClass:i,blockSelector:a,unblockSelector:o,maskAllText:s,maskTextClass:c,unmaskTextClass:l,maskTextSelector:u,unmaskTextSelector:d,skipChild:!1,inlineStylesheet:p,maskInputOptions:m,maskAttributeFn:h,maskTextFn:g,maskInputFn:_,slimDOMOptions:v,dataURLOptions:y,inlineImages:b,recordCanvas:x,preserveWhiteSpace:ie,onSerialize:S,onIframeLoad:C,iframeLoadTimeout:w,onStylesheetLoad:E,stylesheetLoadTimeout:ee,keepIframeSrcFn:te,ignoreCSSAttributes:re});t&&E(e,t)}},ee),D.type===eL.Element&&delete D.needBlock,D}function lIe(e,t){let{mirror:n=new aL,blockClass:r=`rr-block`,blockSelector:i=null,unblockSelector:a=null,maskAllText:o=!1,maskTextClass:s=`rr-mask`,unmaskTextClass:c=null,maskTextSelector:l=null,unmaskTextSelector:u=null,inlineStylesheet:d=!0,inlineImages:f=!1,recordCanvas:p=!1,maskAllInputs:m=!1,maskAttributeFn:h,maskTextFn:g,maskInputFn:_,slimDOM:v=!1,dataURLOptions:y,preserveWhiteSpace:b,onSerialize:x,onIframeLoad:S,iframeLoadTimeout:C,onBlockedImageLoad:w,onStylesheetLoad:T,stylesheetLoadTimeout:E,keepIframeSrcFn:ee=()=>!1,ignoreCSSAttributes:te=new Set([])}=t||{};return NL(e,{doc:e,mirror:n,blockClass:r,blockSelector:i,unblockSelector:a,maskAllText:o,maskTextClass:s,unmaskTextClass:c,maskTextSelector:l,unmaskTextSelector:u,skipChild:!1,inlineStylesheet:d,maskInputOptions:m===!0?{color:!0,date:!0,"datetime-local":!0,email:!0,month:!0,number:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!0}:m===!1?{}:m,maskAttributeFn:h,maskTextFn:g,maskInputFn:_,slimDOMOptions:v===!0||v===`all`?{script:!0,comment:!0,headFavicon:!0,headWhitespace:!0,headMetaDescKeywords:v===`all`,headMetaSocial:!0,headMetaRobots:!0,headMetaHttpEquiv:!0,headMetaAuthorship:!0,headMetaVerification:!0}:v===!1?{}:v,dataURLOptions:y,inlineImages:f,recordCanvas:p,preserveWhiteSpace:b,onSerialize:x,onIframeLoad:S,iframeLoadTimeout:C,onBlockedImageLoad:w,onStylesheetLoad:T,stylesheetLoadTimeout:E,keepIframeSrcFn:ee,newlyAddedElement:!1,ignoreCSSAttributes:te})}function PL(e,t,n=document){let r={capture:!0,passive:!0};return n.addEventListener(e,t,r),()=>n.removeEventListener(e,t,r)}var FL=`Please stop import mirror directly. Instead of that,\r
|
|
999
999
|
now you can use replayer.getMirror() to access the mirror instance of a replayer,\r
|
|
1000
|
-
or you can use record.mirror to access the mirror instance during recording.`,LL={map:{},getId(){return console.error(IL),-1},getNode(){return console.error(IL),null},removeNodeFromMap(){console.error(IL)},has(){return console.error(IL),!1},reset(){console.error(IL)}};typeof window<`u`&&window.Proxy&&window.Reflect&&(LL=new Proxy(LL,{get(e,t,n){return t===`map`&&console.error(IL),Reflect.get(e,t,n)}}));function RL(e,t,n={}){let r=null,i=0;return function(...a){let o=Date.now();!i&&n.leading===!1&&(i=o);let s=t-(o-i),c=this;s<=0||s>t?(r&&=(hIe(r),null),i=o,e.apply(c,a)):!r&&n.trailing!==!1&&(r=rR(()=>{i=n.leading===!1?0:Date.now(),r=null,e.apply(c,a)},s))}}function zL(e,t,n,r,i=window){let a=i.Object.getOwnPropertyDescriptor(e,t);return i.Object.defineProperty(e,t,r?n:{set(e){rR(()=>{n.set.call(this,e)},0),a&&a.set&&a.set.call(this,e)}}),()=>zL(e,t,a||{},!0)}function BL(e,t,n){try{if(!(t in e))return()=>{};let r=e[t],i=n(r);return typeof i==`function`&&(i.prototype=i.prototype||{},Object.defineProperties(i,{__rrweb_original__:{enumerable:!1,value:r}})),e[t]=i,()=>{e[t]=r}}catch{return()=>{}}}var VL=Date.now;/[1-9][0-9]{12}/.test(Date.now().toString())||(VL=()=>new Date().getTime());function HL(e){let t=e.document;return{left:t.scrollingElement?t.scrollingElement.scrollLeft:e.pageXOffset===void 0?t?.documentElement.scrollLeft||t?.body?.parentElement?.scrollLeft||t?.body?.scrollLeft||0:e.pageXOffset,top:t.scrollingElement?t.scrollingElement.scrollTop:e.pageYOffset===void 0?t?.documentElement.scrollTop||t?.body?.parentElement?.scrollTop||t?.body?.scrollTop||0:e.pageYOffset}}function UL(){return window.innerHeight||document.documentElement&&document.documentElement.clientHeight||document.body&&document.body.clientHeight}function WL(){return window.innerWidth||document.documentElement&&document.documentElement.clientWidth||document.body&&document.body.clientWidth}function GL(e){if(!e)return null;try{return e.nodeType===e.ELEMENT_NODE?e:e.parentElement}catch{return null}}function KL(e,t,n,r,i){if(!e)return!1;let a=GL(e);if(!a)return!1;let o=jL(t,n);if(!i){let e=r&&a.matches(r);return o(a)&&!e}let s=AL(a,o),c=-1;return s<0?!1:(r&&(c=AL(a,jL(null,r))),s>-1&&c<0||s<c)}function lIe(e,t){return t.getId(e)!==-1}function qL(e,t){return t.getId(e)===bL}function JL(e,t){if(nL(e))return!1;let n=t.getId(e);return t.has(n)?e.parentNode&&e.parentNode.nodeType===e.DOCUMENT_NODE?!1:!e.parentNode||JL(e.parentNode,t):!0}function YL(e){return!!e.changedTouches}function uIe(e=window){`NodeList`in e&&!e.NodeList.prototype.forEach&&(e.NodeList.prototype.forEach=Array.prototype.forEach),`DOMTokenList`in e&&!e.DOMTokenList.prototype.forEach&&(e.DOMTokenList.prototype.forEach=Array.prototype.forEach),Node.prototype.contains||(Node.prototype.contains=(...e)=>{let t=e[0];if(!(0 in e))throw TypeError(`1 argument is required`);do if(this===t)return!0;while(t&&=t.parentNode);return!1})}function XL(e,t){return!!(e.nodeName===`IFRAME`&&t.getMeta(e))}function ZL(e,t){return!!(e.nodeName===`LINK`&&e.nodeType===e.ELEMENT_NODE&&e.getAttribute&&e.getAttribute(`rel`)===`stylesheet`&&t.getMeta(e))}function QL(e){return!!e?.shadowRoot}var dIe=class{constructor(){this.id=1,this.styleIDMap=new WeakMap,this.idStyleMap=new Map}getId(e){return this.styleIDMap.get(e)??-1}has(e){return this.styleIDMap.has(e)}add(e,t){if(this.has(e))return this.getId(e);let n;return n=t===void 0?this.id++:t,this.styleIDMap.set(e,n),this.idStyleMap.set(n,e),n}getStyle(e){return this.idStyleMap.get(e)||null}reset(){this.styleIDMap=new WeakMap,this.idStyleMap=new Map,this.id=1}generateId(){return this.id++}};function $L(e){let t=null;return e.getRootNode?.()?.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&e.getRootNode().host&&(t=e.getRootNode().host),t}function fIe(e){let t=e,n;for(;n=$L(t);)t=n;return t}function pIe(e){let t=e.ownerDocument;if(!t)return!1;let n=fIe(e);return t.contains(n)}function eR(e){let t=e.ownerDocument;return t?t.contains(e)||pIe(e):!1}var tR={};function nR(e){let t=tR[e];if(t)return t;let n=window.document,r=window[e];if(n&&typeof n.createElement==`function`)try{let t=n.createElement(`iframe`);t.hidden=!0,n.head.appendChild(t);let i=t.contentWindow;i&&i[e]&&(r=i[e]),n.head.removeChild(t)}catch{}return tR[e]=r.bind(window)}function mIe(...e){return nR(`requestAnimationFrame`)(...e)}function rR(...e){return nR(`setTimeout`)(...e)}function hIe(...e){return nR(`clearTimeout`)(...e)}var iR=(e=>(e[e.DomContentLoaded=0]=`DomContentLoaded`,e[e.Load=1]=`Load`,e[e.FullSnapshot=2]=`FullSnapshot`,e[e.IncrementalSnapshot=3]=`IncrementalSnapshot`,e[e.Meta=4]=`Meta`,e[e.Custom=5]=`Custom`,e[e.Plugin=6]=`Plugin`,e))(iR||{}),aR=(e=>(e[e.Mutation=0]=`Mutation`,e[e.MouseMove=1]=`MouseMove`,e[e.MouseInteraction=2]=`MouseInteraction`,e[e.Scroll=3]=`Scroll`,e[e.ViewportResize=4]=`ViewportResize`,e[e.Input=5]=`Input`,e[e.TouchMove=6]=`TouchMove`,e[e.MediaInteraction=7]=`MediaInteraction`,e[e.StyleSheetRule=8]=`StyleSheetRule`,e[e.CanvasMutation=9]=`CanvasMutation`,e[e.Font=10]=`Font`,e[e.Log=11]=`Log`,e[e.Drag=12]=`Drag`,e[e.StyleDeclaration=13]=`StyleDeclaration`,e[e.Selection=14]=`Selection`,e[e.AdoptedStyleSheet=15]=`AdoptedStyleSheet`,e[e.CustomElement=16]=`CustomElement`,e))(aR||{}),oR=(e=>(e[e.MouseUp=0]=`MouseUp`,e[e.MouseDown=1]=`MouseDown`,e[e.Click=2]=`Click`,e[e.ContextMenu=3]=`ContextMenu`,e[e.DblClick=4]=`DblClick`,e[e.Focus=5]=`Focus`,e[e.Blur=6]=`Blur`,e[e.TouchStart=7]=`TouchStart`,e[e.TouchMove_Departed=8]=`TouchMove_Departed`,e[e.TouchEnd=9]=`TouchEnd`,e[e.TouchCancel=10]=`TouchCancel`,e))(oR||{}),sR=(e=>(e[e.Mouse=0]=`Mouse`,e[e.Pen=1]=`Pen`,e[e.Touch=2]=`Touch`,e))(sR||{}),cR=(e=>(e[e.Play=0]=`Play`,e[e.Pause=1]=`Pause`,e[e.Seeked=2]=`Seeked`,e[e.VolumeChange=3]=`VolumeChange`,e[e.RateChange=4]=`RateChange`,e))(cR||{}),lR;function gIe(e){lR=e}function _Ie(){lR=void 0}for(var uR=e=>lR?((...t)=>{try{return e(...t)}catch(e){if(lR&&lR(e)===!0)return()=>{};throw e}}):e,dR=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,vIe=typeof Uint8Array>`u`?[]:new Uint8Array(256),fR=0;fR<dR.length;fR++)vIe[dR.charCodeAt(fR)]=fR;var pR=class{reset(){}freeze(){}unfreeze(){}lock(){}unlock(){}snapshot(){}addWindow(){}addShadowRoot(){}resetShadowRoots(){}};function mR(e){try{return e.contentDocument}catch{}}function hR(e){try{return e.contentWindow}catch{}}var yIe=class{constructor(e){this.doc=e,this.unattachedDoc=null}parse(e){return this.parseWithConstructableStylesheet(e)||this.parseWithDetachedElement(e)}parseWithConstructableStylesheet(e){if(typeof CSSStyleSheet>`u`||typeof CSSStyleSheet.prototype.replaceSync!=`function`)return null;try{let t=new CSSStyleSheet;t.replaceSync(`x { ${e} }`);let n=t.cssRules[0];return!n||n.type!==CSSRule.STYLE_RULE?null:n.style}catch{return null}}parseWithDetachedElement(e){let t=this.getUnattachedDoc().createElement(`span`);return t.setAttribute(`style`,e),t.style}getUnattachedDoc(){if(!this.unattachedDoc)try{this.unattachedDoc=document.implementation.createHTMLDocument()}catch{this.unattachedDoc=this.doc}return this.unattachedDoc}};function gR(e){return`__ln`in e}var bIe=class{constructor(){this.length=0,this.head=null,this.tail=null}get(e){if(e>=this.length)throw Error(`Position outside of list range`);let t=this.head;for(let n=0;n<e;n++)t=t?.next||null;return t}addNode(e){let t={value:e,previous:null,next:null};if(e.__ln=t,e.previousSibling&&gR(e.previousSibling)){let n=e.previousSibling.__ln.next;t.next=n,t.previous=e.previousSibling.__ln,e.previousSibling.__ln.next=t,n&&(n.previous=t)}else if(e.nextSibling&&gR(e.nextSibling)&&e.nextSibling.__ln.previous){let n=e.nextSibling.__ln.previous;t.previous=n,t.next=e.nextSibling.__ln,e.nextSibling.__ln.previous=t,n&&(n.next=t)}else this.head&&(this.head.previous=t),t.next=this.head,this.head=t;t.next===null&&(this.tail=t),this.length++}removeNode(e){let t=e.__ln;this.head&&(t.previous?(t.previous.next=t.next,t.next?t.next.previous=t.previous:this.tail=t.previous):(this.head=t.next,this.head?this.head.previous=null:this.tail=null),e.__ln&&delete e.__ln,this.length--)}},_R=(e,t)=>`${e}@${t}`,xIe=class{constructor(){this.frozen=!1,this.locked=!1,this.texts=[],this.attributes=[],this.attributeMap=new WeakMap,this.removes=[],this.mapRemoves=[],this.movedMap={},this.addedSet=new Set,this.movedSet=new Set,this.droppedSet=new Set,this.processMutations=e=>{e.forEach(this.processMutation),this.emit()},this.emit=()=>{if(this.frozen||this.locked)return;let e=[],t=new Set,n=new bIe,r=e=>{let t=e,n=bL;for(;n===bL;)t&&=t.nextSibling,n=t&&this.mirror.getId(t);return n},i=i=>{if(!i.parentNode||!eR(i))return;let a=nL(i.parentNode)?this.mirror.getId($L(i)):this.mirror.getId(i.parentNode),o=r(i);if(a===-1||o===-1)return n.addNode(i);let s=PL(i,{doc:this.doc,mirror:this.mirror,blockClass:this.blockClass,blockSelector:this.blockSelector,maskAllText:this.maskAllText,unblockSelector:this.unblockSelector,maskTextClass:this.maskTextClass,unmaskTextClass:this.unmaskTextClass,maskTextSelector:this.maskTextSelector,unmaskTextSelector:this.unmaskTextSelector,skipChild:!0,newlyAddedElement:!0,inlineStylesheet:this.inlineStylesheet,maskInputOptions:this.maskInputOptions,maskAttributeFn:this.maskAttributeFn,maskTextFn:this.maskTextFn,maskInputFn:this.maskInputFn,slimDOMOptions:this.slimDOMOptions,dataURLOptions:this.dataURLOptions,recordCanvas:this.recordCanvas,inlineImages:this.inlineImages,onSerialize:e=>{XL(e,this.mirror)&&!KL(e,this.blockClass,this.blockSelector,this.unblockSelector,!1)&&this.iframeManager.addIframe(e),ZL(e,this.mirror)&&this.stylesheetManager.trackLinkElement(e),QL(i)&&this.shadowDomManager.addShadowRoot(i.shadowRoot,this.doc)},onIframeLoad:(e,t)=>{if(KL(e,this.blockClass,this.blockSelector,this.unblockSelector,!1))return;this.iframeManager.attachIframe(e,t);let n=hR(e);n&&this.canvasManager.addWindow(n),this.shadowDomManager.observeAttachShadow(e)},onStylesheetLoad:(e,t)=>{this.stylesheetManager.attachLinkElement(e,t)},onBlockedImageLoad:(e,t,{width:n,height:r})=>{this.mutationCb({adds:[],removes:[],texts:[],attributes:[{id:t.id,attributes:{style:{width:`${n}px`,height:`${r}px`}}}]})},ignoreCSSAttributes:this.ignoreCSSAttributes});s&&(e.push({parentId:a,nextId:o,node:s}),t.add(s.id))};for(;this.mapRemoves.length;)this.mirror.removeNodeFromMap(this.mapRemoves.shift());for(let e of this.movedSet)yR(this.removes,e,this.mirror)&&!this.movedSet.has(e.parentNode)||i(e);for(let e of this.addedSet)!bR(this.droppedSet,e)&&!yR(this.removes,e,this.mirror)||bR(this.movedSet,e)?i(e):this.droppedSet.add(e);let a=null;for(;n.length;){let e=null;if(a){let t=this.mirror.getId(a.value.parentNode),n=r(a.value);t!==-1&&n!==-1&&(e=a)}if(!e){let t=n.tail;for(;t;){let n=t;if(t=t.previous,n){let t=this.mirror.getId(n.value.parentNode);if(r(n.value)===-1)continue;if(t!==-1){e=n;break}{let t=n.value;if(t.parentNode&&t.parentNode.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let r=t.parentNode.host;if(this.mirror.getId(r)!==-1){e=n;break}}}}}}if(!e){for(;n.head;)n.removeNode(n.head.value);break}a=e.previous,n.removeNode(e.value),i(e.value)}let o={texts:this.texts.map(e=>({id:this.mirror.getId(e.node),value:e.value})).filter(e=>!t.has(e.id)).filter(e=>this.mirror.has(e.id)),attributes:this.attributes.map(e=>{let{attributes:t}=e;if(typeof t.style==`string`){let n=JSON.stringify(e.styleDiff),r=JSON.stringify(e._unchangedStyles);n.length<t.style.length&&(n+r).split(`var(`).length===t.style.split(`var(`).length&&(t.style=e.styleDiff)}return{id:this.mirror.getId(e.node),attributes:t}}).filter(e=>!t.has(e.id)).filter(e=>this.mirror.has(e.id)),removes:this.removes,adds:e};!o.texts.length&&!o.attributes.length&&!o.removes.length&&!o.adds.length||(this.texts=[],this.attributes=[],this.attributeMap=new WeakMap,this.removes=[],this.addedSet=new Set,this.movedSet=new Set,this.droppedSet=new Set,this.movedMap={},this.mutationCb(o))},this.processMutation=e=>{if(!qL(e.target,this.mirror))switch(e.type){case`characterData`:{let t=e.target.textContent;!KL(e.target,this.blockClass,this.blockSelector,this.unblockSelector,!1)&&t!==e.oldValue&&this.texts.push({value:ML(e.target,this.maskTextClass,this.maskTextSelector,this.unmaskTextClass,this.unmaskTextSelector,this.maskAllText)&&t?this.maskTextFn?this.maskTextFn(t,GL(e.target)):t.replace(/[\S]/g,`*`):t,node:e.target});break}case`attributes`:{let t=e.target,n=e.attributeName,r=e.target.getAttribute(n);if(n===`value`){let n=fL(t),i=t.tagName;r=pL(t,i,n);let a=sL({maskInputOptions:this.maskInputOptions,tagName:i,type:n});r=cL({isMasked:ML(e.target,this.maskTextClass,this.maskTextSelector,this.unmaskTextClass,this.unmaskTextSelector,a),element:t,value:r,maskInputFn:this.maskInputFn})}if(KL(e.target,this.blockClass,this.blockSelector,this.unblockSelector,!1)||r===e.oldValue)return;let i=this.attributeMap.get(e.target);if(t.tagName===`IFRAME`&&n===`src`&&!this.keepIframeSrcFn(r))if(!mR(t))n=`rr_src`;else return;if(i||(i={node:e.target,attributes:{},styleDiff:{},_unchangedStyles:{}},this.attributes.push(i),this.attributeMap.set(e.target,i)),n===`type`&&t.tagName===`INPUT`&&(e.oldValue||``).toLowerCase()===`password`&&t.setAttribute(`data-rr-is-password`,`true`),!kL(t.tagName,n)&&(i.attributes[n]=OL(this.doc,lL(t.tagName),lL(n),r,t,this.maskAttributeFn),n===`style`)){let n=e.oldValue?this.styleDeclarationParser.parse(e.oldValue):null;for(let e of Array.from(t.style)){let r=t.style.getPropertyValue(e),a=t.style.getPropertyPriority(e);r!==(n?.getPropertyValue(e)||``)||a!==(n?.getPropertyPriority(e)||``)?a===``?i.styleDiff[e]=r:i.styleDiff[e]=[r,a]:i._unchangedStyles[e]=[r,a]}if(n)for(let e of Array.from(n))t.style.getPropertyValue(e)===``&&(i.styleDiff[e]=!1)}break}case`childList`:if(KL(e.target,this.blockClass,this.blockSelector,this.unblockSelector,!0))return;e.addedNodes.forEach(t=>this.genAdds(t,e.target)),e.removedNodes.forEach(t=>{let n=this.mirror.getId(t),r=nL(e.target)?this.mirror.getId(e.target.host):this.mirror.getId(e.target);KL(e.target,this.blockClass,this.blockSelector,this.unblockSelector,!1)||qL(t,this.mirror)||!lIe(t,this.mirror)||(this.addedSet.has(t)?(vR(this.addedSet,t),this.droppedSet.add(t)):this.addedSet.has(e.target)&&n===-1||JL(e.target,this.mirror)||(this.movedSet.has(t)&&this.movedMap[_R(n,r)]?vR(this.movedSet,t):this.removes.push({parentId:r,id:n,isShadow:nL(e.target)&&rL(e.target)?!0:void 0})),this.mapRemoves.push(t))})}},this.genAdds=(e,t)=>{if(!this.processedNodeManager.inOtherBuffer(e,this)&&!(this.addedSet.has(e)||this.movedSet.has(e))){if(this.mirror.hasNode(e)){if(qL(e,this.mirror))return;this.movedSet.add(e);let n=null;t&&this.mirror.hasNode(t)&&(n=this.mirror.getId(t)),n&&n!==-1&&(this.movedMap[_R(this.mirror.getId(e),n)]=!0)}else this.addedSet.add(e),this.droppedSet.delete(e);KL(e,this.blockClass,this.blockSelector,this.unblockSelector,!1)||(e.childNodes&&e.childNodes.forEach(e=>this.genAdds(e)),QL(e)&&e.shadowRoot.childNodes.forEach(t=>{this.processedNodeManager.add(t,this),this.genAdds(t,e)}))}}}init(e){`mutationCb.blockClass.blockSelector.unblockSelector.maskAllText.maskTextClass.unmaskTextClass.maskTextSelector.unmaskTextSelector.inlineStylesheet.maskInputOptions.maskAttributeFn.maskTextFn.maskInputFn.keepIframeSrcFn.recordCanvas.inlineImages.slimDOMOptions.dataURLOptions.doc.mirror.iframeManager.stylesheetManager.shadowDomManager.canvasManager.processedNodeManager.ignoreCSSAttributes`.split(`.`).forEach(t=>{this[t]=e[t]}),this.styleDeclarationParser=new yIe(this.doc)}freeze(){this.frozen=!0,this.canvasManager.freeze()}unfreeze(){this.frozen=!1,this.canvasManager.unfreeze(),this.emit()}isFrozen(){return this.frozen}lock(){this.locked=!0,this.canvasManager.lock()}unlock(){this.locked=!1,this.canvasManager.unlock(),this.emit()}reset(){this.shadowDomManager.reset(),this.canvasManager.reset()}};function vR(e,t){e.delete(t),t.childNodes?.forEach(t=>vR(e,t))}function yR(e,t,n){return e.length!==0&&SIe(e,t,n)}function SIe(e,t,n){let r=t.parentNode;for(;r;){let t=n.getId(r);if(e.some(e=>e.id===t))return!0;r=r.parentNode}return!1}function bR(e,t){return e.size!==0&&xR(e,t)}function xR(e,t){let{parentNode:n}=t;return n?e.has(n)?!0:xR(e,n):!1}var SR=[];function CR(e){try{if(`composedPath`in e){let t=e.composedPath();if(t.length)return t[0]}else if(`path`in e&&e.path.length)return e.path[0]}catch{}return e&&e.target}function wR(e,t){let n=new xIe;SR.push(n),n.init(e);let r=window.MutationObserver||window.__rrMutationObserver,i=window?.Zone?.__symbol__?.(`MutationObserver`);i&&window[i]&&(r=window[i]);let a=new r(uR(t=>{e.onMutation&&e.onMutation(t)===!1||n.processMutations.bind(n)(t)}));return a.observe(t,{attributes:!0,attributeOldValue:!0,characterData:!0,characterDataOldValue:!0,childList:!0,subtree:!0}),a}function CIe({mousemoveCb:e,sampling:t,doc:n,mirror:r}){if(t.mousemove===!1)return()=>{};let i=typeof t.mousemove==`number`?t.mousemove:50,a=typeof t.mousemoveCallback==`number`?t.mousemoveCallback:500,o=[],s,c=RL(uR(t=>{let n=Date.now()-s;e(o.map(e=>(e.timeOffset-=n,e)),t),o=[],s=null}),a),l=uR(RL(uR(e=>{let t=CR(e),{clientX:n,clientY:i}=YL(e)?e.changedTouches[0]:e;s||=VL(),o.push({x:n,y:i,id:r.getId(t),timeOffset:VL()-s}),c(typeof DragEvent<`u`&&e instanceof DragEvent?aR.Drag:e instanceof MouseEvent?aR.MouseMove:aR.TouchMove)}),i,{trailing:!1})),u=[FL(`mousemove`,l,n),FL(`touchmove`,l,n),FL(`drag`,l,n)];return uR(()=>{u.forEach(e=>e())})}function wIe({mouseInteractionCb:e,doc:t,mirror:n,blockClass:r,blockSelector:i,unblockSelector:a,sampling:o}){if(o.mouseInteraction===!1)return()=>{};let s=o.mouseInteraction===!0||o.mouseInteraction===void 0?{}:o.mouseInteraction,c=[],l=null,u=t=>o=>{let s=CR(o);if(KL(s,r,i,a,!0))return;let c=null,u=t;if(`pointerType`in o){switch(o.pointerType){case`mouse`:c=sR.Mouse;break;case`touch`:c=sR.Touch;break;case`pen`:c=sR.Pen}c===sR.Touch?oR[t]===oR.MouseDown?u=`TouchStart`:oR[t]===oR.MouseUp&&(u=`TouchEnd`):sR.Pen}else YL(o)&&(c=sR.Touch);c===null?oR[t]===oR.Click&&(c=l,l=null):(l=c,(u.startsWith(`Touch`)&&c===sR.Touch||u.startsWith(`Mouse`)&&c===sR.Mouse)&&(c=null));let d=YL(o)?o.changedTouches[0]:o;if(!d)return;let f=n.getId(s),{clientX:p,clientY:m}=d;uR(e)({type:oR[u],id:f,x:p,y:m,...c!==null&&{pointerType:c}})};return Object.keys(oR).filter(e=>Number.isNaN(Number(e))&&!e.endsWith(`_Departed`)&&s[e]!==!1).forEach(e=>{let n=lL(e),r=u(e);if(window.PointerEvent)switch(oR[e]){case oR.MouseDown:case oR.MouseUp:n=n.replace(`mouse`,`pointer`);break;case oR.TouchStart:case oR.TouchEnd:return}c.push(FL(n,r,t))}),uR(()=>{c.forEach(e=>e())})}function TR({scrollCb:e,doc:t,mirror:n,blockClass:r,blockSelector:i,unblockSelector:a,sampling:o}){return FL(`scroll`,uR(RL(uR(o=>{let s=CR(o);if(!s||KL(s,r,i,a,!0))return;let c=n.getId(s);if(s===t&&t.defaultView){let n=HL(t.defaultView);e({id:c,x:n.left,y:n.top})}else e({id:c,x:s.scrollLeft,y:s.scrollTop})}),o.scroll||100)),t)}function TIe({viewportResizeCb:e},{win:t}){let n=-1,r=-1;return FL(`resize`,uR(RL(uR(()=>{let t=UL(),i=WL();(n!==t||r!==i)&&(e({width:Number(i),height:Number(t)}),n=t,r=i)}),200)),t)}var EIe=[`INPUT`,`TEXTAREA`,`SELECT`],ER=new WeakMap;function DIe({inputCb:e,doc:t,mirror:n,blockClass:r,blockSelector:i,unblockSelector:a,ignoreClass:o,ignoreSelector:s,maskInputOptions:c,maskInputFn:l,sampling:u,userTriggeredOnInput:d,maskTextClass:f,unmaskTextClass:p,maskTextSelector:m,unmaskTextSelector:h}){function g(e){let n=CR(e),u=e.isTrusted,g=n&&uL(n.tagName);if(g===`OPTION`&&(n=n.parentElement),!n||!g||EIe.indexOf(g)<0||KL(n,r,i,a,!0))return;let v=n;if(v.classList.contains(o)||s&&v.matches(s))return;let y=fL(n),b=pL(v,g,y),x=!1,S=sL({maskInputOptions:c,tagName:g,type:y}),C=ML(n,f,m,p,h,S);(y===`radio`||y===`checkbox`)&&(x=n.checked),b=cL({isMasked:C,element:n,value:b,maskInputFn:l}),_(n,d?{text:b,isChecked:x,userTriggered:u}:{text:b,isChecked:x});let w=n.name;y===`radio`&&w&&x&&t.querySelectorAll(`input[type="radio"][name="${w}"]`).forEach(e=>{if(e!==n){let t=cL({isMasked:C,element:e,value:pL(e,g,y),maskInputFn:l});_(e,d?{text:t,isChecked:!x,userTriggered:!1}:{text:t,isChecked:!x})}})}function _(t,r){let i=ER.get(t);if(!i||i.text!==r.text||i.isChecked!==r.isChecked){ER.set(t,r);let i=n.getId(t);uR(e)({...r,id:i})}}let v=(u.input===`last`?[`change`]:[`input`,`change`]).map(e=>FL(e,uR(g),t)),y=t.defaultView;if(!y)return()=>{v.forEach(e=>e())};let b=y.Object.getOwnPropertyDescriptor(y.HTMLInputElement.prototype,`value`),x=[[y.HTMLInputElement.prototype,`value`],[y.HTMLInputElement.prototype,`checked`],[y.HTMLSelectElement.prototype,`value`],[y.HTMLTextAreaElement.prototype,`value`],[y.HTMLSelectElement.prototype,`selectedIndex`],[y.HTMLOptionElement.prototype,`selected`]];return b&&b.set&&v.push(...x.map(e=>zL(e[0],e[1],{set(){uR(g)({target:this,isTrusted:!1})}},!1,y))),uR(()=>{v.forEach(e=>e())})}function DR(e){let t=[];function n(e,t){if(AR(`CSSGroupingRule`)&&e.parentRule instanceof CSSGroupingRule||AR(`CSSMediaRule`)&&e.parentRule instanceof CSSMediaRule||AR(`CSSSupportsRule`)&&e.parentRule instanceof CSSSupportsRule||AR(`CSSConditionRule`)&&e.parentRule instanceof CSSConditionRule){let n=Array.from(e.parentRule.cssRules).indexOf(e);t.unshift(n)}else if(e.parentStyleSheet){let n=Array.from(e.parentStyleSheet.cssRules).indexOf(e);t.unshift(n)}return t}return n(e,t)}function OR(e,t,n){let r,i;return e?(e.ownerNode?r=t.getId(e.ownerNode):i=n.getId(e),{styleId:i,id:r}):{}}function OIe({styleSheetRuleCb:e,mirror:t,stylesheetManager:n},{win:r}){if(!r.CSSStyleSheet||!r.CSSStyleSheet.prototype)return()=>{};let i=r.CSSStyleSheet.prototype.insertRule;r.CSSStyleSheet.prototype.insertRule=new Proxy(i,{apply:uR((r,i,a)=>{let[o,s]=a,{id:c,styleId:l}=OR(i,t,n.styleMirror);return(c&&c!==-1||l&&l!==-1)&&e({id:c,styleId:l,adds:[{rule:o,index:s}]}),r.apply(i,a)})});let a=r.CSSStyleSheet.prototype.deleteRule;r.CSSStyleSheet.prototype.deleteRule=new Proxy(a,{apply:uR((r,i,a)=>{let[o]=a,{id:s,styleId:c}=OR(i,t,n.styleMirror);return(s&&s!==-1||c&&c!==-1)&&e({id:s,styleId:c,removes:[{index:o}]}),r.apply(i,a)})});let o;r.CSSStyleSheet.prototype.replace&&(o=r.CSSStyleSheet.prototype.replace,r.CSSStyleSheet.prototype.replace=new Proxy(o,{apply:uR((r,i,a)=>{let[o]=a,{id:s,styleId:c}=OR(i,t,n.styleMirror);return(s&&s!==-1||c&&c!==-1)&&e({id:s,styleId:c,replace:o}),r.apply(i,a)})}));let s;r.CSSStyleSheet.prototype.replaceSync&&(s=r.CSSStyleSheet.prototype.replaceSync,r.CSSStyleSheet.prototype.replaceSync=new Proxy(s,{apply:uR((r,i,a)=>{let[o]=a,{id:s,styleId:c}=OR(i,t,n.styleMirror);return(s&&s!==-1||c&&c!==-1)&&e({id:s,styleId:c,replaceSync:o}),r.apply(i,a)})}));let c={};jR(`CSSGroupingRule`)?c.CSSGroupingRule=r.CSSGroupingRule:(jR(`CSSMediaRule`)&&(c.CSSMediaRule=r.CSSMediaRule),jR(`CSSConditionRule`)&&(c.CSSConditionRule=r.CSSConditionRule),jR(`CSSSupportsRule`)&&(c.CSSSupportsRule=r.CSSSupportsRule));let l={};return Object.entries(c).forEach(([r,i])=>{l[r]={insertRule:i.prototype.insertRule,deleteRule:i.prototype.deleteRule},i.prototype.insertRule=new Proxy(l[r].insertRule,{apply:uR((r,i,a)=>{let[o,s]=a,{id:c,styleId:l}=OR(i.parentStyleSheet,t,n.styleMirror);return(c&&c!==-1||l&&l!==-1)&&e({id:c,styleId:l,adds:[{rule:o,index:[...DR(i),s||0]}]}),r.apply(i,a)})}),i.prototype.deleteRule=new Proxy(l[r].deleteRule,{apply:uR((r,i,a)=>{let[o]=a,{id:s,styleId:c}=OR(i.parentStyleSheet,t,n.styleMirror);return(s&&s!==-1||c&&c!==-1)&&e({id:s,styleId:c,removes:[{index:[...DR(i),o]}]}),r.apply(i,a)})})}),uR(()=>{r.CSSStyleSheet.prototype.insertRule=i,r.CSSStyleSheet.prototype.deleteRule=a,o&&(r.CSSStyleSheet.prototype.replace=o),s&&(r.CSSStyleSheet.prototype.replaceSync=s),Object.entries(c).forEach(([e,t])=>{t.prototype.insertRule=l[e].insertRule,t.prototype.deleteRule=l[e].deleteRule})})}function kR({mirror:e,stylesheetManager:t},n){let r=null;r=n.nodeName===`#document`?e.getId(n):e.getId(n.host);let i=n.nodeName===`#document`?n.defaultView?.Document:n.ownerDocument?.defaultView?.ShadowRoot,a=i?.prototype?Object.getOwnPropertyDescriptor(i?.prototype,`adoptedStyleSheets`):void 0;return r===null||r===-1||!i||!a?()=>{}:(Object.defineProperty(n,"adoptedStyleSheets",{configurable:a.configurable,enumerable:a.enumerable,get(){return a.get?.call(this)},set(e){let n=a.set?.call(this,e);if(r!==null&&r!==-1)try{t.adoptStyleSheets(e,r)}catch{}return n}}),uR(()=>{Object.defineProperty(n,"adoptedStyleSheets",{configurable:a.configurable,enumerable:a.enumerable,get:a.get,set:a.set})}))}function kIe({styleDeclarationCb:e,mirror:t,ignoreCSSAttributes:n,stylesheetManager:r},{win:i}){let a=i.CSSStyleDeclaration.prototype.setProperty;i.CSSStyleDeclaration.prototype.setProperty=new Proxy(a,{apply:uR((i,o,s)=>{let[c,l,u]=s;if(n.has(c))return a.apply(o,[c,l,u]);let{id:d,styleId:f}=OR(o.parentRule?.parentStyleSheet,t,r.styleMirror);return(d&&d!==-1||f&&f!==-1)&&e({id:d,styleId:f,set:{property:c,value:l,priority:u},index:DR(o.parentRule)}),i.apply(o,s)})});let o=i.CSSStyleDeclaration.prototype.removeProperty;return i.CSSStyleDeclaration.prototype.removeProperty=new Proxy(o,{apply:uR((i,a,s)=>{let[c]=s;if(n.has(c))return o.apply(a,[c]);let{id:l,styleId:u}=OR(a.parentRule?.parentStyleSheet,t,r.styleMirror);return(l&&l!==-1||u&&u!==-1)&&e({id:l,styleId:u,remove:{property:c},index:DR(a.parentRule)}),i.apply(a,s)})}),uR(()=>{i.CSSStyleDeclaration.prototype.setProperty=a,i.CSSStyleDeclaration.prototype.removeProperty=o})}function AIe({mediaInteractionCb:e,blockClass:t,blockSelector:n,unblockSelector:r,mirror:i,sampling:a,doc:o}){let s=uR(o=>RL(uR(a=>{let s=CR(a);if(!s||KL(s,t,n,r,!0))return;let{currentTime:c,volume:l,muted:u,playbackRate:d}=s;e({type:o,id:i.getId(s),currentTime:c,volume:l,muted:u,playbackRate:d})}),a.media||500)),c=[FL(`play`,s(cR.Play),o),FL(`pause`,s(cR.Pause),o),FL(`seeked`,s(cR.Seeked),o),FL(`volumechange`,s(cR.VolumeChange),o),FL(`ratechange`,s(cR.RateChange),o)];return uR(()=>{c.forEach(e=>e())})}function jIe({fontCb:e,doc:t}){let n=t.defaultView;if(!n)return()=>{};let r=[],i=new WeakMap,a=n.FontFace;n.FontFace=function(e,t,n){let r=new a(e,t,n);return i.set(r,{family:e,buffer:typeof t!=`string`,descriptors:n,fontSource:typeof t==`string`?t:JSON.stringify(Array.from(new Uint8Array(t)))}),r};let o=BL(t.fonts,`add`,function(t){return function(n){return rR(uR(()=>{let t=i.get(n);t&&(e(t),i.delete(n))}),0),t.apply(this,[n])}});return r.push(()=>{n.FontFace=a}),r.push(o),uR(()=>{r.forEach(e=>e())})}function MIe(e){let{doc:t,mirror:n,blockClass:r,blockSelector:i,unblockSelector:a,selectionCb:o}=e,s=!0,c=uR(()=>{let e=t.getSelection();if(!e||s&&e?.isCollapsed)return;s=e.isCollapsed||!1;let c=[],l=e.rangeCount||0;for(let t=0;t<l;t++){let{startContainer:o,startOffset:s,endContainer:l,endOffset:u}=e.getRangeAt(t);KL(o,r,i,a,!0)||KL(l,r,i,a,!0)||c.push({start:n.getId(o),startOffset:s,end:n.getId(l),endOffset:u})}o({ranges:c})});return c(),FL(`selectionchange`,c)}function NIe({doc:e,customElementCb:t}){let n=e.defaultView;return!n||!n.customElements?()=>{}:BL(n.customElements,`define`,function(e){return function(n,r,i){try{t({define:{name:n}})}catch{}return e.apply(this,[n,r,i])}})}function PIe(e,t={}){let n=e.doc.defaultView;if(!n)return()=>{};let r;e.recordDOM&&(r=wR(e,e.doc));let i=CIe(e),a=wIe(e),o=TR(e),s=TIe(e,{win:n}),c=DIe(e),l=AIe(e),u=()=>{},d=()=>{},f=()=>{},p=()=>{};e.recordDOM&&(u=OIe(e,{win:n}),d=kR(e,e.doc),f=kIe(e,{win:n}),e.collectFonts&&(p=jIe(e)));let m=MIe(e),h=NIe(e),g=[];for(let t of e.plugins)g.push(t.observer(t.callback,n,t.options));return uR(()=>{SR.forEach(e=>e.reset()),r?.disconnect(),i(),a(),o(),s(),c(),l(),u(),d(),f(),p(),m(),h(),g.forEach(e=>e())})}function AR(e){return window[e]!==void 0}function jR(e){return!!(window[e]!==void 0&&window[e].prototype&&`insertRule`in window[e].prototype&&`deleteRule`in window[e].prototype)}var MR=class{constructor(e){this.generateIdFn=e,this.iframeIdToRemoteIdMap=new WeakMap,this.iframeRemoteIdToIdMap=new WeakMap}getId(e,t,n,r){let i=n||this.getIdToRemoteIdMap(e),a=r||this.getRemoteIdToIdMap(e),o=i.get(t);return o||(o=this.generateIdFn(),i.set(t,o),a.set(o,t)),o}getIds(e,t){let n=this.getIdToRemoteIdMap(e),r=this.getRemoteIdToIdMap(e);return t.map(t=>this.getId(e,t,n,r))}getRemoteId(e,t,n){let r=n||this.getRemoteIdToIdMap(e);return typeof t==`number`?r.get(t)||-1:t}getRemoteIds(e,t){let n=this.getRemoteIdToIdMap(e);return t.map(t=>this.getRemoteId(e,t,n))}reset(e){if(!e){this.iframeIdToRemoteIdMap=new WeakMap,this.iframeRemoteIdToIdMap=new WeakMap;return}this.iframeIdToRemoteIdMap.delete(e),this.iframeRemoteIdToIdMap.delete(e)}getIdToRemoteIdMap(e){let t=this.iframeIdToRemoteIdMap.get(e);return t||(t=new Map,this.iframeIdToRemoteIdMap.set(e,t)),t}getRemoteIdToIdMap(e){let t=this.iframeRemoteIdToIdMap.get(e);return t||(t=new Map,this.iframeRemoteIdToIdMap.set(e,t)),t}},FIe=class{constructor(){this.crossOriginIframeMirror=new MR(xL),this.crossOriginIframeRootIdMap=new WeakMap}addIframe(){}addLoadListener(){}attachIframe(){}},IIe=class{constructor(e){this.iframes=new WeakMap,this.crossOriginIframeMap=new WeakMap,this.crossOriginIframeMirror=new MR(xL),this.crossOriginIframeRootIdMap=new WeakMap,this.mutationCb=e.mutationCb,this.wrappedEmit=e.wrappedEmit,this.stylesheetManager=e.stylesheetManager,this.recordCrossOriginIframes=e.recordCrossOriginIframes,this.crossOriginIframeStyleMirror=new MR(this.stylesheetManager.styleMirror.generateId.bind(this.stylesheetManager.styleMirror)),this.mirror=e.mirror,this.recordCrossOriginIframes&&window.addEventListener(`message`,this.handleMessage.bind(this))}addIframe(e){this.iframes.set(e,!0);let t=hR(e);t&&this.crossOriginIframeMap.set(t,e)}addLoadListener(e){this.loadListener=e}attachIframe(e,t){this.mutationCb({adds:[{parentId:this.mirror.getId(e),nextId:null,node:t}],removes:[],texts:[],attributes:[],isAttachIframe:!0}),this.recordCrossOriginIframes&&hR(e)?.addEventListener(`message`,this.handleMessage.bind(this)),this.loadListener?.(e);let n=mR(e);n&&n.adoptedStyleSheets&&n.adoptedStyleSheets.length>0&&this.stylesheetManager.adoptStyleSheets(n.adoptedStyleSheets,this.mirror.getId(n))}handleMessage(e){let t=e;if(t.data.type!==`rrweb`||t.origin!==t.data.origin||!e.source)return;let n=this.crossOriginIframeMap.get(e.source);if(!n)return;let r=this.transformCrossOriginEvent(n,t.data.event);r&&this.wrappedEmit(r,t.data.isCheckout)}transformCrossOriginEvent(e,t){switch(t.type){case iR.FullSnapshot:{this.crossOriginIframeMirror.reset(e),this.crossOriginIframeStyleMirror.reset(e),this.replaceIdOnNode(t.data.node,e);let n=t.data.node.id;return this.crossOriginIframeRootIdMap.set(e,n),this.patchRootIdOnNode(t.data.node,n),{timestamp:t.timestamp,type:iR.IncrementalSnapshot,data:{source:aR.Mutation,adds:[{parentId:this.mirror.getId(e),nextId:null,node:t.data.node}],removes:[],texts:[],attributes:[],isAttachIframe:!0}}}case iR.Meta:case iR.Load:case iR.DomContentLoaded:return!1;case iR.Plugin:return t;case iR.Custom:return this.replaceIds(t.data.payload,e,[`id`,`parentId`,`previousId`,`nextId`]),t;case iR.IncrementalSnapshot:switch(t.data.source){case aR.Mutation:return t.data.adds.forEach(t=>{this.replaceIds(t,e,[`parentId`,`nextId`,`previousId`]),this.replaceIdOnNode(t.node,e);let n=this.crossOriginIframeRootIdMap.get(e);n&&this.patchRootIdOnNode(t.node,n)}),t.data.removes.forEach(t=>{this.replaceIds(t,e,[`parentId`,`id`])}),t.data.attributes.forEach(t=>{this.replaceIds(t,e,[`id`])}),t.data.texts.forEach(t=>{this.replaceIds(t,e,[`id`])}),t;case aR.Drag:case aR.TouchMove:case aR.MouseMove:return t.data.positions.forEach(t=>{this.replaceIds(t,e,[`id`])}),t;case aR.ViewportResize:return!1;case aR.MediaInteraction:case aR.MouseInteraction:case aR.Scroll:case aR.CanvasMutation:case aR.Input:return this.replaceIds(t.data,e,[`id`]),t;case aR.StyleSheetRule:case aR.StyleDeclaration:return this.replaceIds(t.data,e,[`id`]),this.replaceStyleIds(t.data,e,[`styleId`]),t;case aR.Font:return t;case aR.Selection:return t.data.ranges.forEach(t=>{this.replaceIds(t,e,[`start`,`end`])}),t;case aR.AdoptedStyleSheet:return this.replaceIds(t.data,e,[`id`]),this.replaceStyleIds(t.data,e,[`styleIds`]),t.data.styles?.forEach(t=>{this.replaceStyleIds(t,e,[`styleId`])}),t}}return!1}replace(e,t,n,r){for(let i of r)!Array.isArray(t[i])&&typeof t[i]!=`number`||(t[i]=Array.isArray(t[i])?e.getIds(n,t[i]):e.getId(n,t[i]));return t}replaceIds(e,t,n){return this.replace(this.crossOriginIframeMirror,e,t,n)}replaceStyleIds(e,t,n){return this.replace(this.crossOriginIframeStyleMirror,e,t,n)}replaceIdOnNode(e,t){this.replaceIds(e,t,[`id`,`rootId`]),`childNodes`in e&&e.childNodes.forEach(e=>{this.replaceIdOnNode(e,t)})}patchRootIdOnNode(e,t){e.type!==tL.Document&&!e.rootId&&(e.rootId=t),`childNodes`in e&&e.childNodes.forEach(e=>{this.patchRootIdOnNode(e,t)})}},LIe=class{init(){}addShadowRoot(){}observeAttachShadow(){}reset(){}},RIe=class{constructor(e){this.shadowDoms=new WeakSet,this.restoreHandlers=[],this.mutationCb=e.mutationCb,this.scrollCb=e.scrollCb,this.bypassOptions=e.bypassOptions,this.mirror=e.mirror,this.init()}init(){this.reset(),this.patchAttachShadow(Element,document)}addShadowRoot(e,t){if(!rL(e)||this.shadowDoms.has(e))return;this.shadowDoms.add(e),this.bypassOptions.canvasManager.addShadowRoot(e);let n=wR({...this.bypassOptions,doc:t,mutationCb:this.mutationCb,mirror:this.mirror,shadowDomManager:this},e);this.restoreHandlers.push(()=>n.disconnect()),this.restoreHandlers.push(TR({...this.bypassOptions,scrollCb:this.scrollCb,doc:e,mirror:this.mirror})),rR(()=>{e.adoptedStyleSheets&&e.adoptedStyleSheets.length>0&&this.bypassOptions.stylesheetManager.adoptStyleSheets(e.adoptedStyleSheets,this.mirror.getId(e.host)),this.restoreHandlers.push(kR({mirror:this.mirror,stylesheetManager:this.bypassOptions.stylesheetManager},e))},0)}observeAttachShadow(e){let t=mR(e),n=hR(e);!t||!n||this.patchAttachShadow(n.Element,t)}patchAttachShadow(e,t){let n=this;this.restoreHandlers.push(BL(e.prototype,`attachShadow`,function(e){return function(r){let i=e.call(this,r);return this.shadowRoot&&eR(this)&&n.addShadowRoot(this.shadowRoot,t),i}}))}reset(){this.restoreHandlers.forEach(e=>{try{e()}catch{}}),this.restoreHandlers=[],this.shadowDoms=new WeakSet,this.bypassOptions.canvasManager.resetShadowRoots()}},zIe=class{constructor(e){this.trackedLinkElements=new WeakSet,this.styleMirror=new dIe,this.mutationCb=e.mutationCb,this.adoptedStyleSheetCb=e.adoptedStyleSheetCb}attachLinkElement(e,t){`_cssText`in t.attributes&&this.mutationCb({adds:[],removes:[],texts:[],attributes:[{id:t.id,attributes:t.attributes}]}),this.trackLinkElement(e)}trackLinkElement(e){this.trackedLinkElements.has(e)||(this.trackedLinkElements.add(e),this.trackStylesheetInLinkElement(e))}adoptStyleSheets(e,t){if(e.length===0)return;let n={id:t,styleIds:[]},r=[];for(let t of e){let e;this.styleMirror.has(t)?e=this.styleMirror.getId(t):(e=this.styleMirror.add(t),r.push({styleId:e,rules:Array.from(t.rules||CSSRule,(e,t)=>({rule:aL(e),index:t}))})),n.styleIds.push(e)}r.length>0&&(n.styles=r),this.adoptedStyleSheetCb(n)}reset(){this.styleMirror.reset(),this.trackedLinkElements=new WeakSet}trackStylesheetInLinkElement(e){}},BIe=class{constructor(){this.nodeMap=new WeakMap,this.active=!1}inOtherBuffer(e,t){let n=this.nodeMap.get(e);return n&&Array.from(n).some(e=>e!==t)}add(e,t){this.active||(this.active=!0,mIe(()=>{this.nodeMap=new WeakMap,this.active=!1})),this.nodeMap.set(e,(this.nodeMap.get(e)||new Set).add(t))}destroy(){}},NR,PR;try{if(Array.from([1],e=>e*2)[0]!==2){let e=document.createElement(`iframe`);document.body.appendChild(e),Array.from=e.contentWindow?.Array.from||Array.from,document.body.removeChild(e)}}catch(e){console.debug(`Unable to override Array.from`,e)}var FR=LFe();function IR(e={}){let{emit:t,checkoutEveryNms:n,checkoutEveryNth:r,blockClass:i=`rr-block`,blockSelector:a=null,unblockSelector:o=null,ignoreClass:s=`rr-ignore`,ignoreSelector:c=null,maskAllText:l=!1,maskTextClass:u=`rr-mask`,unmaskTextClass:d=null,maskTextSelector:f=null,unmaskTextSelector:p=null,inlineStylesheet:m=!0,maskAllInputs:h,maskInputOptions:g,slimDOMOptions:_,maskAttributeFn:v,maskInputFn:y,maskTextFn:b,maxCanvasSize:x=null,packFn:S,sampling:C={},dataURLOptions:w={},mousemoveWait:T,recordDOM:E=!0,recordCanvas:ee=!1,recordCrossOriginIframes:te=!1,recordAfter:ne=e.recordAfter===`DOMContentLoaded`?e.recordAfter:`load`,userTriggeredOnInput:re=!1,collectFonts:ie=!1,inlineImages:ae=!1,plugins:oe,keepIframeSrcFn:D=()=>!1,ignoreCSSAttributes:se=new Set([]),errorHandler:ce,onMutation:le,getCanvasManager:ue}=e;gIe(ce);let de=!te||window.parent===window,fe=!1;if(!de)try{window.parent.document&&(fe=!1)}catch{fe=!0}if(de&&!t)throw Error(`emit function is required`);if(!de&&!fe)return()=>{};T!==void 0&&C.mousemove===void 0&&(C.mousemove=T),FR.reset();let pe=h===!0?{color:!0,date:!0,"datetime-local":!0,email:!0,month:!0,number:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!0,radio:!0,checkbox:!0}:g===void 0?{}:g,me=_===!0||_===`all`?{script:!0,comment:!0,headFavicon:!0,headWhitespace:!0,headMetaSocial:!0,headMetaRobots:!0,headMetaHttpEquiv:!0,headMetaVerification:!0,headMetaAuthorship:_===`all`,headMetaDescKeywords:_===`all`}:_||{};uIe();let he,ge=0,_e=e=>{for(let t of oe||[])t.eventProcessor&&(e=t.eventProcessor(e));return S&&!fe&&(e=S(e)),e};NR=(e,i)=>{let a=e;if(a.timestamp=VL(),SR[0]?.isFrozen()&&a.type!==iR.FullSnapshot&&(a.type!==iR.IncrementalSnapshot||a.data.source!==aR.Mutation)&&SR.forEach(e=>e.unfreeze()),de)t?.(_e(a),i);else if(fe){let e={type:`rrweb`,event:_e(a),origin:window.location.origin,isCheckout:i};window.parent.postMessage(e,`*`)}if(a.type===iR.FullSnapshot)he=a,ge=0;else if(a.type===iR.IncrementalSnapshot){if(a.data.source===aR.Mutation&&a.data.isAttachIframe)return;ge++;let e=r&&ge>=r,t=n&&he&&a.timestamp-he.timestamp>n;(e||t)&&Ee(!0)}};let ve=e=>{NR({type:iR.IncrementalSnapshot,data:{source:aR.Mutation,...e}})},ye=e=>NR({type:iR.IncrementalSnapshot,data:{source:aR.Scroll,...e}}),be=e=>NR({type:iR.IncrementalSnapshot,data:{source:aR.CanvasMutation,...e}}),xe=new zIe({mutationCb:ve,adoptedStyleSheetCb:e=>NR({type:iR.IncrementalSnapshot,data:{source:aR.AdoptedStyleSheet,...e}})}),Se=typeof __RRWEB_EXCLUDE_IFRAME__==`boolean`&&__RRWEB_EXCLUDE_IFRAME__?new FIe:new IIe({mirror:FR,mutationCb:ve,stylesheetManager:xe,recordCrossOriginIframes:te,wrappedEmit:NR});for(let e of oe||[])e.getMirror&&e.getMirror({nodeMirror:FR,crossOriginIframeMirror:Se.crossOriginIframeMirror,crossOriginIframeStyleMirror:Se.crossOriginIframeStyleMirror});let Ce=new BIe,we=HIe(ue,{mirror:FR,win:window,mutationCb:e=>NR({type:iR.IncrementalSnapshot,data:{source:aR.CanvasMutation,...e}}),recordCanvas:ee,blockClass:i,blockSelector:a,unblockSelector:o,maxCanvasSize:x,sampling:C.canvas,dataURLOptions:w,errorHandler:ce}),Te=typeof __RRWEB_EXCLUDE_SHADOW_DOM__==`boolean`&&__RRWEB_EXCLUDE_SHADOW_DOM__?new LIe:new RIe({mutationCb:ve,scrollCb:ye,bypassOptions:{onMutation:le,blockClass:i,blockSelector:a,unblockSelector:o,maskAllText:l,maskTextClass:u,unmaskTextClass:d,maskTextSelector:f,unmaskTextSelector:p,inlineStylesheet:m,maskInputOptions:pe,dataURLOptions:w,maskAttributeFn:v,maskTextFn:b,maskInputFn:y,recordCanvas:ee,inlineImages:ae,sampling:C,slimDOMOptions:me,iframeManager:Se,stylesheetManager:xe,canvasManager:we,keepIframeSrcFn:D,processedNodeManager:Ce,ignoreCSSAttributes:se},mirror:FR}),Ee=(e=!1)=>{if(!E)return;NR({type:iR.Meta,data:{href:window.location.href,width:WL(),height:UL()}},e),xe.reset(),Te.init(),SR.forEach(e=>e.lock());let t=cIe(document,{mirror:FR,blockClass:i,blockSelector:a,unblockSelector:o,maskAllText:l,maskTextClass:u,unmaskTextClass:d,maskTextSelector:f,unmaskTextSelector:p,inlineStylesheet:m,maskAllInputs:pe,maskAttributeFn:v,maskInputFn:y,maskTextFn:b,slimDOM:me,dataURLOptions:w,recordCanvas:ee,inlineImages:ae,onSerialize:e=>{XL(e,FR)&&Se.addIframe(e),ZL(e,FR)&&xe.trackLinkElement(e),QL(e)&&Te.addShadowRoot(e.shadowRoot,document)},onIframeLoad:(e,t)=>{Se.attachIframe(e,t);let n=hR(e);n&&we.addWindow(n),Te.observeAttachShadow(e)},onStylesheetLoad:(e,t)=>{xe.attachLinkElement(e,t)},onBlockedImageLoad:(e,t,{width:n,height:r})=>{ve({adds:[],removes:[],texts:[],attributes:[{id:t.id,attributes:{style:{width:`${n}px`,height:`${r}px`}}}]})},keepIframeSrcFn:D,ignoreCSSAttributes:se});if(!t)return console.warn(`Failed to snapshot the document`);NR({type:iR.FullSnapshot,data:{node:t,initialOffset:HL(window)}}),SR.forEach(e=>e.unlock()),document.adoptedStyleSheets&&document.adoptedStyleSheets.length>0&&xe.adoptStyleSheets(document.adoptedStyleSheets,FR.getId(document))};PR=Ee;try{let e=[],t=e=>uR(PIe)({onMutation:le,mutationCb:ve,mousemoveCb:(e,t)=>NR({type:iR.IncrementalSnapshot,data:{source:t,positions:e}}),mouseInteractionCb:e=>NR({type:iR.IncrementalSnapshot,data:{source:aR.MouseInteraction,...e}}),scrollCb:ye,viewportResizeCb:e=>NR({type:iR.IncrementalSnapshot,data:{source:aR.ViewportResize,...e}}),inputCb:e=>NR({type:iR.IncrementalSnapshot,data:{source:aR.Input,...e}}),mediaInteractionCb:e=>NR({type:iR.IncrementalSnapshot,data:{source:aR.MediaInteraction,...e}}),styleSheetRuleCb:e=>NR({type:iR.IncrementalSnapshot,data:{source:aR.StyleSheetRule,...e}}),styleDeclarationCb:e=>NR({type:iR.IncrementalSnapshot,data:{source:aR.StyleDeclaration,...e}}),canvasMutationCb:be,fontCb:e=>NR({type:iR.IncrementalSnapshot,data:{source:aR.Font,...e}}),selectionCb:e=>{NR({type:iR.IncrementalSnapshot,data:{source:aR.Selection,...e}})},customElementCb:e=>{NR({type:iR.IncrementalSnapshot,data:{source:aR.CustomElement,...e}})},blockClass:i,ignoreClass:s,ignoreSelector:c,maskAllText:l,maskTextClass:u,unmaskTextClass:d,maskTextSelector:f,unmaskTextSelector:p,maskInputOptions:pe,inlineStylesheet:m,sampling:C,recordDOM:E,recordCanvas:ee,inlineImages:ae,userTriggeredOnInput:re,collectFonts:ie,doc:e,maskAttributeFn:v,maskInputFn:y,maskTextFn:b,keepIframeSrcFn:D,blockSelector:a,unblockSelector:o,slimDOMOptions:me,dataURLOptions:w,mirror:FR,iframeManager:Se,stylesheetManager:xe,shadowDomManager:Te,processedNodeManager:Ce,canvasManager:we,ignoreCSSAttributes:se,plugins:oe?.filter(e=>e.observer)?.map(e=>({observer:e.observer,options:e.options,callback:t=>NR({type:iR.Plugin,data:{plugin:e.name,payload:t}})}))||[]},{});Se.addLoadListener(n=>{try{e.push(t(n.contentDocument))}catch(e){console.warn(e)}});let n=()=>{Ee(),e.push(t(document))};return document.readyState===`interactive`||document.readyState===`complete`?n():(e.push(FL(`DOMContentLoaded`,()=>{NR({type:iR.DomContentLoaded,data:{}}),ne===`DOMContentLoaded`&&n()})),e.push(FL(`load`,()=>{NR({type:iR.Load,data:{}}),ne===`load`&&n()},window))),()=>{e.forEach(e=>e()),Ce.destroy(),PR=void 0,_Ie()}}catch(e){console.warn(e)}}function VIe(e){if(!PR)throw Error(`please take full snapshot after start recording`);PR(e)}IR.mirror=FR,IR.takeFullSnapshot=VIe;function HIe(e,t){try{return e?e(t):new pR}catch{return console.warn(`Unable to initialize CanvasManager`),new pR}}var UIe;(function(e){e[e.NotStarted=0]=`NotStarted`,e[e.Running=1]=`Running`,e[e.Stopped=2]=`Stopped`})(UIe||={});var WIe=3,GIe=5;function LR(e){return e>9999999999?e:e*1e3}function RR(e){return e>9999999999?e/1e3:e}function zR(e,t){t.category!==`sentry.transaction`&&([`ui.click`,`ui.input`].includes(t.category)?e.triggerUserActivity():e.checkAndHandleExpiredSession(),e.addUpdate(()=>(e.throttledAddEvent({type:iR.Custom,timestamp:(t.timestamp||0)*1e3,data:{tag:`breadcrumb`,payload:Qw(t,10,1e3)}}),t.category===`console`)))}var KIe=`button,a`;function BR(e){return e.closest(KIe)||e}function VR(e){let t=HR(e);return!t||!(t instanceof Element)?t:BR(t)}function HR(e){return qIe(e)?e.target:e}function qIe(e){return Fw(e)&&`target`in e}var UR;function JIe(e){return UR||(UR=[],YIe()),UR.push(e),()=>{let t=UR?UR.indexOf(e):-1;t>-1&&UR.splice(t,1)}}function YIe(){Bw(qI,`open`,function(e){return function(...t){if(UR)try{UR.forEach(e=>e())}catch{}return e.apply(qI,t)}})}var XIe=new Set([aR.Mutation,aR.StyleSheetRule,aR.StyleDeclaration,aR.AdoptedStyleSheet,aR.CanvasMutation,aR.Selection,aR.MediaInteraction]);function ZIe(e,t,n){e.handleClick(t,n)}var QIe=class{constructor(e,t,n=zR){this._lastMutation=0,this._lastScroll=0,this._clicks=[],this._timeout=t.timeout/1e3,this._threshold=t.threshold/1e3,this._scrollTimeout=t.scrollTimeout/1e3,this._replay=e,this._ignoreSelector=t.ignoreSelector,this._addBreadcrumbEvent=n}addListeners(){let e=JIe(()=>{this._lastMutation=WR()});this._teardown=()=>{e(),this._clicks=[],this._lastMutation=0,this._lastScroll=0}}removeListeners(){this._teardown&&this._teardown(),this._checkClickTimeout&&clearTimeout(this._checkClickTimeout)}handleClick(e,t){if(eLe(t,this._ignoreSelector)||!tLe(e))return;let n={timestamp:RR(e.timestamp),clickBreadcrumb:e,clickCount:0,node:t};this._clicks.some(e=>e.node===n.node&&Math.abs(e.timestamp-n.timestamp)<1)||(this._clicks.push(n),this._clicks.length===1&&this._scheduleCheckClicks())}registerMutation(e=Date.now()){this._lastMutation=RR(e)}registerScroll(e=Date.now()){this._lastScroll=RR(e)}registerClick(e){let t=BR(e);this._handleMultiClick(t)}_handleMultiClick(e){this._getClicks(e).forEach(e=>{e.clickCount++})}_getClicks(e){return this._clicks.filter(t=>t.node===e)}_checkClicks(){let e=[],t=WR();this._clicks.forEach(n=>{!n.mutationAfter&&this._lastMutation&&(n.mutationAfter=n.timestamp<=this._lastMutation?this._lastMutation-n.timestamp:void 0),!n.scrollAfter&&this._lastScroll&&(n.scrollAfter=n.timestamp<=this._lastScroll?this._lastScroll-n.timestamp:void 0),n.timestamp+this._timeout<=t&&e.push(n)});for(let t of e){let e=this._clicks.indexOf(t);e>-1&&(this._generateBreadcrumbs(t),this._clicks.splice(e,1))}this._clicks.length&&this._scheduleCheckClicks()}_generateBreadcrumbs(e){let t=this._replay,n=e.scrollAfter&&e.scrollAfter<=this._scrollTimeout,r=e.mutationAfter&&e.mutationAfter<=this._threshold,i=!n&&!r,{clickCount:a,clickBreadcrumb:o}=e;if(i){let n=Math.min(e.mutationAfter||this._timeout,this._timeout)*1e3,r=n<this._timeout*1e3?`mutation`:`timeout`,i={type:`default`,message:o.message,timestamp:o.timestamp,category:`ui.slowClickDetected`,data:{...o.data,url:qI.location.href,route:t.getCurrentRoute(),timeAfterClickMs:n,endReason:r,clickCount:a||1}};this._addBreadcrumbEvent(t,i);return}if(a>1){let e={type:`default`,message:o.message,timestamp:o.timestamp,category:`ui.multiClick`,data:{...o.data,url:qI.location.href,route:t.getCurrentRoute(),clickCount:a,metric:!0}};this._addBreadcrumbEvent(t,e)}}_scheduleCheckClicks(){this._checkClickTimeout&&clearTimeout(this._checkClickTimeout),this._checkClickTimeout=uI(()=>this._checkClicks(),1e3)}},$Ie=[`A`,`BUTTON`,`INPUT`];function eLe(e,t){return!!(!$Ie.includes(e.tagName)||e.tagName===`INPUT`&&![`submit`,`button`].includes(e.getAttribute(`type`)||``)||e.tagName===`A`&&(e.hasAttribute(`download`)||e.hasAttribute(`target`)&&e.getAttribute(`target`)!==`_self`)||t&&e.matches(t))}function tLe(e){return!!(e.data&&typeof e.data.nodeId==`number`&&e.timestamp)}function WR(){return Date.now()/1e3}function nLe(e,t){try{if(!rLe(t))return;let{source:n}=t.data;if(XIe.has(n)&&e.registerMutation(t.timestamp),n===aR.Scroll&&e.registerScroll(t.timestamp),iLe(t)){let{type:n,id:r}=t.data,i=IR.mirror.getNode(r);i instanceof HTMLElement&&n===oR.Click&&e.registerClick(i)}}catch{}}function rLe(e){return e.type===WIe}function iLe(e){return e.data.source===aR.MouseInteraction}function GR(e){return{timestamp:Date.now()/1e3,type:`default`,...e}}var KR=(e=>(e[e.Document=0]=`Document`,e[e.DocumentType=1]=`DocumentType`,e[e.Element=2]=`Element`,e[e.Text=3]=`Text`,e[e.CDATA=4]=`CDATA`,e[e.Comment=5]=`Comment`,e))(KR||{}),aLe=new Set([`id`,`class`,`aria-label`,`role`,`name`,`alt`,`title`,`data-test-id`,`data-testid`,`disabled`,`aria-disabled`,`data-sentry-component`]);function oLe(e){let t={};!e[`data-sentry-component`]&&e[`data-sentry-element`]&&(e[`data-sentry-component`]=e[`data-sentry-element`]);for(let n in e)if(aLe.has(n)){let r=n;(n===`data-testid`||n===`data-test-id`)&&(r=`testId`),t[r]=e[n]}return t}var sLe=e=>t=>{if(!e.isEnabled())return;let n=cLe(t);if(!n)return;let r=t.name===`click`,i=r?t.event:void 0;r&&e.clickDetector&&i?.target&&!i.altKey&&!i.metaKey&&!i.ctrlKey&&!i.shiftKey&&ZIe(e.clickDetector,n,VR(t.event)),zR(e,n)};function qR(e,t){let n=IR.mirror.getId(e),r=n&&IR.mirror.getNode(n),i=r&&IR.mirror.getMeta(r),a=i&&uLe(i)?i:null;return{message:t,data:a?{nodeId:n,node:{id:n,tagName:a.tagName,textContent:Array.from(a.childNodes).map(e=>e.type===KR.Text&&e.textContent).filter(Boolean).map(e=>e.trim()).join(``),attributes:oLe(a.attributes)}}:{}}}function cLe(e){let{target:t,message:n}=lLe(e);return GR({category:`ui.${e.name}`,...qR(t,n)})}function lLe(e){let t=e.name===`click`,n,r=null;try{r=t?VR(e.event):HR(e.event),n=NF(r,{maxStringLength:200})||`<unknown>`}catch{n=`<unknown>`}return{target:r,message:n}}function uLe(e){return e.type===KR.Element}function dLe(e,t){if(!e.isEnabled())return;e.updateUserActivity();let n=fLe(t);n&&zR(e,n)}function fLe(e){let{metaKey:t,shiftKey:n,ctrlKey:r,altKey:i,key:a,target:o}=e;if(!o||pLe(o)||!a)return null;let s=t||r||i,c=a.length===1;if(!s&&c)return null;let l=NF(o,{maxStringLength:200})||`<unknown>`;return GR({category:`ui.keyDown`,message:l,data:{...qR(o,l).data,metaKey:t,shiftKey:n,ctrlKey:r,altKey:i,key:a}})}function pLe(e){return e.tagName===`INPUT`||e.tagName===`TEXTAREA`||e.isContentEditable}var mLe={resource:yLe,paint:_Le,navigation:vLe};function JR(e,t){return({metric:n})=>void t.replayPerformanceEntries.push(e(n))}function hLe(e){return e.map(gLe).filter(Boolean)}function gLe(e){let t=mLe[e.entryType];return t?t(e):null}function YR(e){return((yT()||qI.performance.timeOrigin)+e)/1e3}function _Le(e){let{duration:t,entryType:n,name:r,startTime:i}=e,a=YR(i);return{type:n,name:r,start:a,end:a+t,data:void 0}}function vLe(e){let{entryType:t,name:n,decodedBodySize:r,duration:i,domComplete:a,encodedBodySize:o,domContentLoadedEventStart:s,domContentLoadedEventEnd:c,domInteractive:l,loadEventStart:u,loadEventEnd:d,redirectCount:f,startTime:p,transferSize:m,type:h}=e;return i===0?null:{type:`${t}.${h}`,start:YR(p),end:YR(a),name:n,data:{size:m,decodedBodySize:r,encodedBodySize:o,duration:i,domInteractive:l,domContentLoadedEventStart:s,domContentLoadedEventEnd:c,loadEventStart:u,loadEventEnd:d,domComplete:a,redirectCount:f}}}function yLe(e){let{entryType:t,initiatorType:n,name:r,responseEnd:i,startTime:a,decodedBodySize:o,encodedBodySize:s,responseStatus:c,transferSize:l}=e;return[`fetch`,`xmlhttprequest`].includes(n)?null:{type:`${t}.${n}`,start:YR(a),end:YR(i),name:r,data:{size:l,statusCode:c,decodedBodySize:o,encodedBodySize:s}}}function bLe(e){let t=e.entries[e.entries.length-1];return XR(e,`largest-contentful-paint`,t?.element?[t.element]:void 0)}function xLe(e){return e.sources!==void 0}function SLe(e){let t=[],n=[];for(let r of e.entries)if(xLe(r)){let e=[];for(let t of r.sources)if(t.node){n.push(t.node);let r=IR.mirror.getId(t.node);r&&e.push(r)}t.push({value:r.value,nodeIds:e.length?e:void 0})}return XR(e,`cumulative-layout-shift`,n,t)}function CLe(e){let t=e.entries[e.entries.length-1];return XR(e,`interaction-to-next-paint`,t?.target?[t.target]:void 0)}function XR(e,t,n,r){let i=e.value,a=e.rating,o=YR(i);return{type:`web-vital`,name:t,start:o,end:o,data:{value:i,size:i,rating:a,nodeIds:n?n.map(e=>IR.mirror.getId(e)):void 0,attributions:r}}}function wLe(e){function t(t){e.performanceEntries.includes(t)||e.performanceEntries.push(t)}function n({entries:e}){e.forEach(t)}let r=[];return[`navigation`,`paint`,`resource`].forEach(e=>{r.push(EF(e,n))}),r.push(wF(JR(bLe,e)),CF(JR(SLe,e)),TF(JR(CLe,e))),()=>{r.forEach(e=>e())}}var Z=typeof __SENTRY_DEBUG__>`u`||__SENTRY_DEBUG__,TLe=`var t=Uint8Array,n=Uint16Array,r=Int32Array,e=new t([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]),i=new t([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]),s=new t([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),a=function(t,e){for(var i=new n(31),s=0;s<31;++s)i[s]=e+=1<<t[s-1];var a=new r(i[30]);for(s=1;s<30;++s)for(var o=i[s];o<i[s+1];++o)a[o]=o-i[s]<<5|s;return{b:i,r:a}},o=a(e,2),h=o.b,f=o.r;h[28]=258,f[258]=28;for(var l=a(i,0).r,u=new n(32768),c=0;c<32768;++c){var v=(43690&c)>>1|(21845&c)<<1;v=(61680&(v=(52428&v)>>2|(13107&v)<<2))>>4|(3855&v)<<4,u[c]=((65280&v)>>8|(255&v)<<8)>>1}var d=function(t,r,e){for(var i=t.length,s=0,a=new n(r);s<i;++s)t[s]&&++a[t[s]-1];var o,h=new n(r);for(s=1;s<r;++s)h[s]=h[s-1]+a[s-1]<<1;if(e){o=new n(1<<r);var f=15-r;for(s=0;s<i;++s)if(t[s])for(var l=s<<4|t[s],c=r-t[s],v=h[t[s]-1]++<<c,d=v|(1<<c)-1;v<=d;++v)o[u[v]>>f]=l}else for(o=new n(i),s=0;s<i;++s)t[s]&&(o[s]=u[h[t[s]-1]++]>>15-t[s]);return o},p=new t(288);for(c=0;c<144;++c)p[c]=8;for(c=144;c<256;++c)p[c]=9;for(c=256;c<280;++c)p[c]=7;for(c=280;c<288;++c)p[c]=8;var g=new t(32);for(c=0;c<32;++c)g[c]=5;var w=d(p,9,0),y=d(g,5,0),m=function(t){return(t+7)/8|0},b=function(n,r,e){return(null==e||e>n.length)&&(e=n.length),new t(n.subarray(r,e))},M=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],E=function(t,n,r){var e=new Error(n||M[t]);if(e.code=t,Error.captureStackTrace&&Error.captureStackTrace(e,E),!r)throw e;return e},z=function(t,n,r){r<<=7&n;var e=n/8|0;t[e]|=r,t[e+1]|=r>>8},_=function(t,n,r){r<<=7&n;var e=n/8|0;t[e]|=r,t[e+1]|=r>>8,t[e+2]|=r>>16},x=function(r,e){for(var i=[],s=0;s<r.length;++s)r[s]&&i.push({s:s,f:r[s]});var a=i.length,o=i.slice();if(!a)return{t:F,l:0};if(1==a){var h=new t(i[0].s+1);return h[i[0].s]=1,{t:h,l:1}}i.sort(function(t,n){return t.f-n.f}),i.push({s:-1,f:25001});var f=i[0],l=i[1],u=0,c=1,v=2;for(i[0]={s:-1,f:f.f+l.f,l:f,r:l};c!=a-1;)f=i[i[u].f<i[v].f?u++:v++],l=i[u!=c&&i[u].f<i[v].f?u++:v++],i[c++]={s:-1,f:f.f+l.f,l:f,r:l};var d=o[0].s;for(s=1;s<a;++s)o[s].s>d&&(d=o[s].s);var p=new n(d+1),g=A(i[c-1],p,0);if(g>e){s=0;var w=0,y=g-e,m=1<<y;for(o.sort(function(t,n){return p[n.s]-p[t.s]||t.f-n.f});s<a;++s){var b=o[s].s;if(!(p[b]>e))break;w+=m-(1<<g-p[b]),p[b]=e}for(w>>=y;w>0;){var M=o[s].s;p[M]<e?w-=1<<e-p[M]++-1:++s}for(;s>=0&&w;--s){var E=o[s].s;p[E]==e&&(--p[E],++w)}g=e}return{t:new t(p),l:g}},A=function(t,n,r){return-1==t.s?Math.max(A(t.l,n,r+1),A(t.r,n,r+1)):n[t.s]=r},D=function(t){for(var r=t.length;r&&!t[--r];);for(var e=new n(++r),i=0,s=t[0],a=1,o=function(t){e[i++]=t},h=1;h<=r;++h)if(t[h]==s&&h!=r)++a;else{if(!s&&a>2){for(;a>138;a-=138)o(32754);a>2&&(o(a>10?a-11<<5|28690:a-3<<5|12305),a=0)}else if(a>3){for(o(s),--a;a>6;a-=6)o(8304);a>2&&(o(a-3<<5|8208),a=0)}for(;a--;)o(s);a=1,s=t[h]}return{c:e.subarray(0,i),n:r}},T=function(t,n){for(var r=0,e=0;e<n.length;++e)r+=t[e]*n[e];return r},k=function(t,n,r){var e=r.length,i=m(n+2);t[i]=255&e,t[i+1]=e>>8,t[i+2]=255^t[i],t[i+3]=255^t[i+1];for(var s=0;s<e;++s)t[i+s+4]=r[s];return 8*(i+4+e)},U=function(t,r,a,o,h,f,l,u,c,v,m){z(r,m++,a),++h[256];for(var b=x(h,15),M=b.t,E=b.l,A=x(f,15),U=A.t,C=A.l,F=D(M),I=F.c,S=F.n,L=D(U),O=L.c,j=L.n,q=new n(19),B=0;B<I.length;++B)++q[31&I[B]];for(B=0;B<O.length;++B)++q[31&O[B]];for(var G=x(q,7),H=G.t,J=G.l,K=19;K>4&&!H[s[K-1]];--K);var N,P,Q,R,V=v+5<<3,W=T(h,p)+T(f,g)+l,X=T(h,M)+T(f,U)+l+14+3*K+T(q,H)+2*q[16]+3*q[17]+7*q[18];if(c>=0&&V<=W&&V<=X)return k(r,m,t.subarray(c,c+v));if(z(r,m,1+(X<W)),m+=2,X<W){N=d(M,E,0),P=M,Q=d(U,C,0),R=U;var Y=d(H,J,0);z(r,m,S-257),z(r,m+5,j-1),z(r,m+10,K-4),m+=14;for(B=0;B<K;++B)z(r,m+3*B,H[s[B]]);m+=3*K;for(var Z=[I,O],$=0;$<2;++$){var tt=Z[$];for(B=0;B<tt.length;++B){var nt=31&tt[B];z(r,m,Y[nt]),m+=H[nt],nt>15&&(z(r,m,tt[B]>>5&127),m+=tt[B]>>12)}}}else N=w,P=p,Q=y,R=g;for(B=0;B<u;++B){var rt=o[B];if(rt>255){_(r,m,N[(nt=rt>>18&31)+257]),m+=P[nt+257],nt>7&&(z(r,m,rt>>23&31),m+=e[nt]);var et=31&rt;_(r,m,Q[et]),m+=R[et],et>3&&(_(r,m,rt>>5&8191),m+=i[et])}else _(r,m,N[rt]),m+=P[rt]}return _(r,m,N[256]),m+P[256]},C=new r([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),F=new t(0),I=function(){for(var t=new Int32Array(256),n=0;n<256;++n){for(var r=n,e=9;--e;)r=(1&r&&-306674912)^r>>>1;t[n]=r}return t}(),S=function(){var t=1,n=0;return{p:function(r){for(var e=t,i=n,s=0|r.length,a=0;a!=s;){for(var o=Math.min(a+2655,s);a<o;++a)i+=e+=r[a];e=(65535&e)+15*(e>>16),i=(65535&i)+15*(i>>16)}t=e,n=i},d:function(){return(255&(t%=65521))<<24|(65280&t)<<8|(255&(n%=65521))<<8|n>>8}}},L=function(s,a,o,h,u){if(!u&&(u={l:1},a.dictionary)){var c=a.dictionary.subarray(-32768),v=new t(c.length+s.length);v.set(c),v.set(s,c.length),s=v,u.w=c.length}return function(s,a,o,h,u,c){var v=c.z||s.length,d=new t(h+v+5*(1+Math.ceil(v/7e3))+u),p=d.subarray(h,d.length-u),g=c.l,w=7&(c.r||0);if(a){w&&(p[0]=c.r>>3);for(var y=C[a-1],M=y>>13,E=8191&y,z=(1<<o)-1,_=c.p||new n(32768),x=c.h||new n(z+1),A=Math.ceil(o/3),D=2*A,T=function(t){return(s[t]^s[t+1]<<A^s[t+2]<<D)&z},F=new r(25e3),I=new n(288),S=new n(32),L=0,O=0,j=c.i||0,q=0,B=c.w||0,G=0;j+2<v;++j){var H=T(j),J=32767&j,K=x[H];if(_[J]=K,x[H]=J,B<=j){var N=v-j;if((L>7e3||q>24576)&&(N>423||!g)){w=U(s,p,0,F,I,S,O,q,G,j-G,w),q=L=O=0,G=j;for(var P=0;P<286;++P)I[P]=0;for(P=0;P<30;++P)S[P]=0}var Q=2,R=0,V=E,W=J-K&32767;if(N>2&&H==T(j-W))for(var X=Math.min(M,N)-1,Y=Math.min(32767,j),Z=Math.min(258,N);W<=Y&&--V&&J!=K;){if(s[j+Q]==s[j+Q-W]){for(var $=0;$<Z&&s[j+$]==s[j+$-W];++$);if($>Q){if(Q=$,R=W,$>X)break;var tt=Math.min(W,$-2),nt=0;for(P=0;P<tt;++P){var rt=j-W+P&32767,et=rt-_[rt]&32767;et>nt&&(nt=et,K=rt)}}}W+=(J=K)-(K=_[J])&32767}if(R){F[q++]=268435456|f[Q]<<18|l[R];var it=31&f[Q],st=31&l[R];O+=e[it]+i[st],++I[257+it],++S[st],B=j+Q,++L}else F[q++]=s[j],++I[s[j]]}}for(j=Math.max(j,B);j<v;++j)F[q++]=s[j],++I[s[j]];w=U(s,p,g,F,I,S,O,q,G,j-G,w),g||(c.r=7&w|p[w/8|0]<<3,w-=7,c.h=x,c.p=_,c.i=j,c.w=B)}else{for(j=c.w||0;j<v+g;j+=65535){var at=j+65535;at>=v&&(p[w/8|0]=g,at=v),w=k(p,w+1,s.subarray(j,at))}c.i=v}return b(d,0,h+m(w)+u)}(s,null==a.level?6:a.level,null==a.mem?u.l?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(s.length)))):20:12+a.mem,o,h,u)},O=function(t,n,r){for(;r;++n)t[n]=r,r>>>=8},j=function(){function n(n,r){if("function"==typeof n&&(r=n,n={}),this.ondata=r,this.o=n||{},this.s={l:0,i:32768,w:32768,z:32768},this.b=new t(98304),this.o.dictionary){var e=this.o.dictionary.subarray(-32768);this.b.set(e,32768-e.length),this.s.i=32768-e.length}}return n.prototype.p=function(t,n){this.ondata(L(t,this.o,0,0,this.s),n)},n.prototype.push=function(n,r){this.ondata||E(5),this.s.l&&E(4);var e=n.length+this.s.z;if(e>this.b.length){if(e>2*this.b.length-32768){var i=new t(-32768&e);i.set(this.b.subarray(0,this.s.z)),this.b=i}var s=this.b.length-this.s.z;this.b.set(n.subarray(0,s),this.s.z),this.s.z=this.b.length,this.p(this.b,!1),this.b.set(this.b.subarray(-32768)),this.b.set(n.subarray(s),32768),this.s.z=n.length-s+32768,this.s.i=32766,this.s.w=32768}else this.b.set(n,this.s.z),this.s.z+=n.length;this.s.l=1&r,(this.s.z>this.s.w+8191||r)&&(this.p(this.b,r||!1),this.s.w=this.s.i,this.s.i-=2)},n.prototype.flush=function(){this.ondata||E(5),this.s.l&&E(4),this.p(this.b,!1),this.s.w=this.s.i,this.s.i-=2},n}();function q(t,n){n||(n={});var r=function(){var t=-1;return{p:function(n){for(var r=t,e=0;e<n.length;++e)r=I[255&r^n[e]]^r>>>8;t=r},d:function(){return~t}}}(),e=t.length;r.p(t);var i,s=L(t,n,10+((i=n).filename?i.filename.length+1:0),8),a=s.length;return function(t,n){var r=n.filename;if(t[0]=31,t[1]=139,t[2]=8,t[8]=n.level<2?4:9==n.level?2:0,t[9]=3,0!=n.mtime&&O(t,4,Math.floor(new Date(n.mtime||Date.now())/1e3)),r){t[3]=8;for(var e=0;e<=r.length;++e)t[e+10]=r.charCodeAt(e)}}(s,n),O(s,a-8,r.d()),O(s,a-4,e),s}var B=function(){function t(t,n){this.c=S(),this.v=1,j.call(this,t,n)}return t.prototype.push=function(t,n){this.c.p(t),j.prototype.push.call(this,t,n)},t.prototype.p=function(t,n){var r=L(t,this.o,this.v&&(this.o.dictionary?6:2),n&&4,this.s);this.v&&(function(t,n){var r=n.level,e=0==r?0:r<6?1:9==r?3:2;if(t[0]=120,t[1]=e<<6|(n.dictionary&&32),t[1]|=31-(t[0]<<8|t[1])%31,n.dictionary){var i=S();i.p(n.dictionary),O(t,2,i.d())}}(r,this.o),this.v=0),n&&O(r,r.length-4,this.c.d()),this.ondata(r,n)},t.prototype.flush=function(){j.prototype.flush.call(this)},t}(),G="undefined"!=typeof TextEncoder&&new TextEncoder,H="undefined"!=typeof TextDecoder&&new TextDecoder;try{H.decode(F,{stream:!0})}catch(t){}var J=function(){function t(t){this.ondata=t}return t.prototype.push=function(t,n){this.ondata||E(5),this.d&&E(4),this.ondata(K(t),this.d=n||!1)},t}();function K(n,r){if(G)return G.encode(n);for(var e=n.length,i=new t(n.length+(n.length>>1)),s=0,a=function(t){i[s++]=t},o=0;o<e;++o){if(s+5>i.length){var h=new t(s+8+(e-o<<1));h.set(i),i=h}var f=n.charCodeAt(o);f<128||r?a(f):f<2048?(a(192|f>>6),a(128|63&f)):f>55295&&f<57344?(a(240|(f=65536+(1047552&f)|1023&n.charCodeAt(++o))>>18),a(128|f>>12&63),a(128|f>>6&63),a(128|63&f)):(a(224|f>>12),a(128|f>>6&63),a(128|63&f))}return b(i,0,s)}const N=new class{constructor(){this._init()}clear(){this._init()}addEvent(t){if(!t)throw new Error("Adding invalid event");const n=this._hasEvents?",":"";this.stream.push(n+t),this._hasEvents=!0}finish(){this.stream.push("]",!0);const t=function(t){let n=0;for(const r of t)n+=r.length;const r=new Uint8Array(n);for(let n=0,e=0,i=t.length;n<i;n++){const i=t[n];r.set(i,e),e+=i.length}return r}(this._deflatedData);return this._init(),t}_init(){this._hasEvents=!1,this._deflatedData=[],this.deflate=new B,this.deflate.ondata=(t,n)=>{this._deflatedData.push(t)},this.stream=new J((t,n)=>{this.deflate.push(t,n)}),this.stream.push("[")}},P={clear:()=>{N.clear()},addEvent:t=>N.addEvent(t),finish:()=>N.finish(),compress:t=>function(t){return q(K(t))}(t)};addEventListener("message",function(t){const n=t.data.method,r=t.data.id,e=t.data.arg;if(n in P&&"function"==typeof P[n])try{const t=P[n](e);postMessage({id:r,method:n,success:!0,response:t})}catch(t){postMessage({id:r,method:n,success:!1,response:t.message}),console.error(t)}}),postMessage({id:void 0,method:"init",success:!0,response:void 0});`;function ELe(){let e=new Blob([TLe]);return URL.createObjectURL(e)}var ZR=[`log`,`warn`,`error`],QR=`[Replay] `;function $R(e,t=`info`){Ek({category:`console`,data:{logger:`replay`},level:t,message:`${QR}${e}`},{level:t})}function DLe(){let e=!1,t=!1,n={exception:()=>void 0,infoTick:()=>void 0,setConfig:n=>{e=!!n.captureExceptions,t=!!n.traceInternals}};return Z?(ZR.forEach(e=>{n[e]=(...n)=>{K[e](QR,...n),t&&$R(n.join(``),Gk(e))}}),n.exception=(r,...i)=>{i.length&&n.error&&n.error(...i),K.error(QR,r),e?cO(r,{mechanism:{handled:!0,type:`auto.function.replay.debug`}}):t&&$R(r,`error`)},n.infoTick=(...e)=>{K.log(QR,...e),t&&setTimeout(()=>$R(e[0]),0)}):ZR.forEach(e=>{n[e]=()=>void 0}),n}var ez=DLe(),tz=class extends Error{constructor(){super(`Event buffer exceeded maximum size of ${QI}.`)}},nz=class{constructor(){this.events=[],this._totalSize=0,this.hasCheckout=!1,this.waitForCheckout=!1}get hasEvents(){return this.events.length>0}get type(){return`sync`}destroy(){this.events=[]}async addEvent(e){let t=JSON.stringify(e).length;if(this._totalSize+=t,this._totalSize>QI)throw new tz;this.events.push(e)}finish(){return new Promise(e=>{let t=this.events;this.clear(),e(JSON.stringify(t))})}clear(){this.events=[],this._totalSize=0,this.hasCheckout=!1}getEarliestTimestamp(){let e=null;for(let{timestamp:t}of this.events)(e===null||t<e)&&(e=t);return e===null?e:LR(e)}},OLe=class{constructor(e){this._onMessage=({data:e})=>{let t=e;if(typeof t.id!=`number`)return;let n=this._pending.get(t.id);if(!(!n||n.method!==t.method)){if(this._pending.delete(t.id),!t.success){Z&&ez.error(`Error in compression worker: `,t.response),n.reject(Error(`Error in compression worker`));return}n.resolve(t.response)}},this._worker=e,this._id=0,this._pending=new Map,this._worker.addEventListener(`message`,this._onMessage)}ensureReady(){return this._ensureReadyPromise||=new Promise((e,t)=>{this._worker.addEventListener(`message`,({data:n})=>{n.success?e():(Z&&ez.warn(`Received worker message with unsuccessful status`,n),t(Error(`Received worker message with unsuccessful status`)))},{once:!0}),this._worker.addEventListener(`error`,e=>{Z&&ez.warn(`Failed to load Replay compression worker`,e),t(Error(`Failed to load Replay compression worker: ${e instanceof ErrorEvent&&e.message?e.message:`Unknown error. This can happen due to CSP policy restrictions, network issues, or the worker script failing to load.`}`))},{once:!0})}),this._ensureReadyPromise}destroy(){Z&&ez.log(`Destroying compression worker`),this._worker.removeEventListener(`message`,this._onMessage),this._pending.forEach(e=>e.reject(Error(`Worker destroyed`))),this._pending.clear(),this._worker.terminate()}postMessage(e,t){let n=this._getAndIncrementId();return new Promise((r,i)=>{this._pending.set(n,{method:e,resolve:r,reject:i});try{this._worker.postMessage({id:n,method:e,arg:t})}catch(e){this._pending.delete(n),i(e)}})}_getAndIncrementId(){return this._id++}},kLe=class{constructor(e){this._worker=new OLe(e),this._earliestTimestamp=null,this._totalSize=0,this.hasCheckout=!1,this.waitForCheckout=!1}get hasEvents(){return!!this._earliestTimestamp}get type(){return`worker`}ensureReady(){return this._worker.ensureReady()}destroy(){this._worker.destroy()}addEvent(e){let t=LR(e.timestamp);(!this._earliestTimestamp||t<this._earliestTimestamp)&&(this._earliestTimestamp=t);let n=JSON.stringify(e);return this._totalSize+=n.length,this._totalSize>QI?Promise.reject(new tz):this._sendEventToWorker(n)}finish(){return this._finishRequest()}clear(){this._earliestTimestamp=null,this._totalSize=0,this.hasCheckout=!1,this._worker.postMessage(`clear`).then(null,e=>{Z&&ez.exception(e,`Sending "clear" message to worker failed`,e)})}getEarliestTimestamp(){return this._earliestTimestamp}_sendEventToWorker(e){return this._worker.postMessage(`addEvent`,e)}async _finishRequest(){let e=await this._worker.postMessage(`finish`);return this._earliestTimestamp=null,this._totalSize=0,e}},ALe=class{constructor(e){this._fallback=new nz,this._compression=new kLe(e),this._used=this._fallback,this._ensureWorkerIsLoadedPromise=this._ensureWorkerIsLoaded()}get waitForCheckout(){return this._used.waitForCheckout}get type(){return this._used.type}get hasEvents(){return this._used.hasEvents}get hasCheckout(){return this._used.hasCheckout}set hasCheckout(e){this._used.hasCheckout=e}set waitForCheckout(e){this._used.waitForCheckout=e}destroy(){this._fallback.destroy(),this._compression.destroy()}clear(){return this._used.clear()}getEarliestTimestamp(){return this._used.getEarliestTimestamp()}addEvent(e){return this._used.addEvent(e)}async finish(){return await this.ensureWorkerIsLoaded(),this._used.finish()}ensureWorkerIsLoaded(){return this._ensureWorkerIsLoadedPromise}async _ensureWorkerIsLoaded(){try{await this._compression.ensureReady()}catch(e){Z&&ez.exception(e,`Failed to load the compression worker, falling back to simple buffer`);return}await this._switchToCompressionWorker()}async _switchToCompressionWorker(){let{events:e,hasCheckout:t,waitForCheckout:n}=this._fallback,r=[];for(let t of e)r.push(this._compression.addEvent(t));this._compression.hasCheckout=t,this._compression.waitForCheckout=n,this._used=this._compression;try{await Promise.all(r),this._fallback.clear()}catch(e){Z&&ez.exception(e,`Failed to add events when switching buffers.`)}}};function jLe({useCompression:e,workerUrl:t}){if(e&&window.Worker){let e=MLe(t);if(e)return e}return Z&&ez.log(`Using simple buffer`),new nz}function MLe(e){try{let t=e||NLe();return t?(Z&&ez.log(`Using compression worker${e?` from ${e}`:``}`),new ALe(new Worker(t))):void 0}catch(e){Z&&ez.exception(e,`Failed to create compression worker`)}}function NLe(){return typeof __SENTRY_EXCLUDE_REPLAY_WORKER__>`u`||!__SENTRY_EXCLUDE_REPLAY_WORKER__?ELe():``}function rz(){try{return`sessionStorage`in qI&&!!qI.sessionStorage}catch{return!1}}function PLe(e){FLe(),e.session=void 0}function FLe(){if(rz())try{qI.sessionStorage.removeItem(JI)}catch{}}function iz(e){return e!==void 0&&Math.random()<e}function az(e){if(rz())try{qI.sessionStorage.setItem(JI,JSON.stringify(e))}catch{}}function oz(e){let t=Date.now();return{id:e.id||lT(),started:e.started||t,lastActivity:e.lastActivity||t,segmentId:e.segmentId||0,sampled:e.sampled,previousSessionId:e.previousSessionId,dirty:e.dirty||!1}}function ILe(e,t){return iz(e)?`session`:t?`buffer`:!1}function sz({sessionSampleRate:e,allowBuffering:t,stickySession:n=!1},{previousSessionId:r}={}){let i=oz({sampled:ILe(e,t),previousSessionId:r});return n&&az(i),i}function LLe(){if(!rz())return null;try{let e=qI.sessionStorage.getItem(JI);if(!e)return null;let t=JSON.parse(e);return Z&&ez.infoTick(`Loading existing session`),oz(t)}catch{return null}}function cz(e,t,n=+new Date){return e===null||t===void 0||t<0||t!==0&&e+t<=n}function RLe(e,{maxReplayDuration:t,sessionIdleExpire:n,targetTime:r=Date.now()}){return cz(e.started,t,r)||cz(e.lastActivity,n,r)}function lz(e,{sessionIdleExpire:t,maxReplayDuration:n}){return!(!RLe(e,{sessionIdleExpire:t,maxReplayDuration:n})||e.sampled===`buffer`&&e.segmentId===0)}function uz({sessionIdleExpire:e,maxReplayDuration:t,previousSessionId:n},r){let i=r.stickySession&&LLe();return i?lz(i,{sessionIdleExpire:e,maxReplayDuration:t})?(Z&&ez.infoTick(`Session in sessionStorage is expired, creating new one...`),sz(r,{previousSessionId:i.id})):i:(Z&&ez.infoTick(`Creating new session`),sz(r,{previousSessionId:n}))}function zLe(e){return e.type===iR.Custom}function dz(e,t,n){return pz(e,t)?(fz(e,t,n),!0):!1}function BLe(e,t,n){return pz(e,t)?fz(e,t,n):Promise.resolve(null)}async function fz(e,t,n){let{eventBuffer:r}=e;if(!r||r.waitForCheckout&&!n)return null;let i=e.recordingMode===`buffer`;try{n&&i&&r.clear(),n&&(r.hasCheckout=!0,r.waitForCheckout=!1);let a=VLe(t,e.getOptions().beforeAddRecordingEvent);return a?await r.addEvent(a):void 0}catch(t){if(!e.isEnabled())return e.handleException(t),null;let n=t&&t instanceof tz,a=n?`eventBufferOverflow`:`eventBufferError`,o=J();if(o){let e=n?`buffer_overflow`:`internal_sdk_error`;o.recordDroppedEvent(e,`replay`)}if(n&&i)return r.clear(),r.waitForCheckout=!0,null;e.handleException(t),await e.stop({reason:a})}}function pz(e,t){if(!e.eventBuffer||e.isPaused()||!e.isEnabled())return!1;let n=LR(t.timestamp);return n+e.timeouts.sessionIdlePause<Date.now()?!1:n>e.getContext().initialTimestamp+e.getOptions().maxReplayDuration?(Z&&ez.infoTick(`Skipping event with timestamp ${n} because it is after maxReplayDuration`),!1):!0}function VLe(e,t){try{if(typeof t==`function`&&zLe(e))return t(e)}catch(e){return Z&&ez.exception(e,"An error occurred in the `beforeAddRecordingEvent` callback, skipping the event..."),null}return e}var mz=100;function hz(e,t,n){let r=e.getContext();t&&r.traceIds.size<mz&&r.traceIds.add(t),n&&r.segmentNames.size<mz&&r.segmentNames.add(n)}function HLe(e){return t=>{e.isEnabled()&&hz(e,t.trace_id,t.name||void 0)}}function gz(e){return!e.type}function _z(e){return e.type===`transaction`}function ULe(e){return e.type===`replay_event`}function vz(e){return e.type===`feedback`}function WLe(e){return(t,n)=>{if(!e.isEnabled()||!gz(t)&&!_z(t))return;let r=n.statusCode;if(!(!r||r<200||r>=300)){if(_z(t)){GLe(e,t);return}KLe(e,t)}}}function GLe(e,t){hz(e,t.contexts?.trace?.trace_id,t.transaction)}function KLe(e,t){let n=e.getContext();if(t.event_id&&n.errorIds.size<100&&n.errorIds.add(t.event_id),e.recordingMode!==`buffer`||!t.tags?.replayId)return;let{beforeErrorSampling:r}=e.getOptions();typeof r==`function`&&!r(t)||uI(async()=>{try{await e.sendBufferedReplayOrFlush()}catch(t){e.handleException(t)}})}function qLe(e){return t=>{!e.isEnabled()||!gz(t)||JLe(e,t)}}function JLe(e,t){let n=t.exception?.values?.[0]?.value;typeof n==`string`&&(n.match(/(reactjs\.org\/docs\/error-decoder\.html\?invariant=|react\.dev\/errors\/)(418|419|422|423|425)/)||n.match(/(does not match server-rendered HTML|Hydration failed because)/i))&&zR(e,GR({category:`replay.hydrate-error`,data:{url:xM()}}))}function YLe(e){let t=J();t&&t.on(`beforeAddBreadcrumb`,t=>XLe(e,t))}function XLe(e,t){if(!e.isEnabled()||!yz(t))return;let n=ZLe(t);n&&zR(e,n)}function ZLe(e){return!yz(e)||[`fetch`,`xhr`,`sentry.event`,`sentry.transaction`].includes(e.category)||e.category.startsWith(`ui.`)?null:e.category===`console`?QLe(e):GR(e)}function QLe(e){let t=e.data?.arguments;if(!Array.isArray(t)||t.length===0)return GR(e);let n=!1,r=t.map(e=>{if(!e)return e;if(typeof e==`string`)return e.length>ZI?(n=!0,`${e.slice(0,ZI)}\u2026`):e;if(typeof e==`object`)try{let t=Qw(e,7);return JSON.stringify(t).length>ZI?(n=!0,`${JSON.stringify(t,null,2).slice(0,ZI)}\u2026`):t}catch{}return e});return GR({...e,data:{...e.data,arguments:r,...n?{_meta:{warnings:[`CONSOLE_ARG_TRUNCATED`]}}:{}}})}function yz(e){return!!e.category}function $Le(e,t){return e.type||!e.exception?.values?.length?!1:!!t.originalException?.__rrweb__}function bz(){let e=q().getPropagationContext().dsc;e&&delete e.replay_id;let t=UE();if(t){let e=rD(t);delete e.replay_id}}function xz(e){let t=q().getPropagationContext().dsc;t&&(t.replay_id=e);let n=UE();if(n){let t=rD(n);t.replay_id=e}}function eRe(e,t){e.triggerUserActivity(),e.addUpdate(()=>!t.timestamp||(e.throttledAddEvent({type:iR.Custom,timestamp:t.timestamp*1e3,data:{tag:`breadcrumb`,payload:{timestamp:t.timestamp,type:`default`,category:`sentry.feedback`,data:{feedbackId:t.event_id}}}}),!1))}function tRe(e,t){return e.recordingMode!==`buffer`||t.message===YI||!t.exception||t.type?!1:iz(e.getOptions().errorSampleRate)}function nRe(e){return Object.assign((t,n)=>{if(e.session&&lz(e.session,{maxReplayDuration:e.getOptions().maxReplayDuration,sessionIdleExpire:e.timeouts.sessionIdleExpire})&&bz(),!e.isEnabled()||e.isPaused())return t;if(ULe(t))return delete t.breadcrumbs,t;if(!gz(t)&&!_z(t)&&!vz(t))return t;if(!e.checkAndHandleExpiredSession())return bz(),t;if(vz(t))return e.flush(),t.contexts.feedback.replay_id=e.getSessionId(),eRe(e,t),t;if($Le(t,n)&&!e.getOptions()._experiments.captureExceptions)return Z&&ez.log(`Ignoring error from rrweb internals`,t),null;let r=tRe(e,t);if((r||e.recordingMode===`session`)&&(t.tags={...t.tags,replayId:e.getSessionId()}),r&&e.recordingMode===`buffer`&&e.session?.sampled===`buffer`){let t=e.session;t.dirty=!0,e.getOptions().stickySession&&az(t)}return t},{id:`Replay`})}function Sz(e,t){return t.map(({type:t,start:n,end:r,name:i,data:a})=>{let o=e.throttledAddEvent({type:iR.Custom,timestamp:n,data:{tag:`performanceSpan`,payload:{op:t,description:i,startTimestamp:n,endTimestamp:r,data:a}}});return typeof o==`string`?Promise.resolve(null):o})}function rRe(e){let{from:t,to:n}=e,r=Date.now()/1e3;return{type:`navigation.push`,start:r,end:r,name:n,data:{previous:t}}}function iRe(e){return t=>{if(!e.isEnabled())return;let n=rRe(t);n!==null&&(e.getContext().urls.push(n.name),e.triggerUserActivity(),e.addUpdate(()=>(Sz(e,[n]),!1)))}}function aRe(e,t){return Z&&e.getOptions()._experiments.traceInternals?!1:Sk(t,J())}function Cz(e,t){e.isEnabled()&&t!==null&&(aRe(e,t.name)||e.addUpdate(()=>(Sz(e,[t]),!0)))}function wz(e){if(!e)return;let t=new TextEncoder;try{if(typeof e==`string`)return t.encode(e).length;if(e instanceof URLSearchParams)return t.encode(e.toString()).length;if(e instanceof FormData){let n=pI(e);return t.encode(n).length}if(e instanceof Blob)return e.size;if(e instanceof ArrayBuffer)return e.byteLength}catch{}}function Tz(e){if(!e)return;let t=parseInt(e,10);return isNaN(t)?void 0:t}function Ez(e,t){if(!e)return{headers:{},size:void 0,_meta:{warnings:[t]}};let n={...e._meta};return n.warnings=[...n.warnings||[],t],e._meta=n,e}function Dz(e,t){if(!t)return null;let{startTimestamp:n,endTimestamp:r,url:i,method:a,statusCode:o,request:s,response:c}=t;return{type:e,start:n/1e3,end:r/1e3,name:i,data:{method:a,statusCode:o,request:s,response:c}}}function Oz(e){return{headers:{},size:e,_meta:{warnings:[`URL_SKIPPED`]}}}function kz(e,t,n){if(!t&&Object.keys(e).length===0)return;if(!t)return{headers:e};if(!n)return{headers:e,size:t};let r={headers:e,size:t},{body:i,warnings:a}=oRe(n);return r.body=i,a?.length&&(r._meta={warnings:a}),r}function Az(e,t){return Object.entries(e).reduce((n,[r,i])=>{let a=r.toLowerCase();return t.includes(a)&&e[r]&&(n[a]=i),n},{})}function oRe(e){if(!e||typeof e!=`string`)return{body:e};let t=e.length>XI,n=sRe(e);if(t){let t=e.slice(0,XI);return n?{body:t,warnings:[`MAYBE_JSON_TRUNCATED`]}:{body:`${t}\u2026`,warnings:[`TEXT_TRUNCATED`]}}if(n)try{return{body:JSON.parse(e)}}catch{}return{body:e}}function sRe(e){let t=e[0],n=e[e.length-1];return t===`[`&&n===`]`||t===`{`&&n===`}`}function jz(e,t){return sT(cRe(e),t)}function cRe(e,t=qI.document.baseURI){if(e.startsWith(`http://`)||e.startsWith(`https://`)||e.startsWith(qI.location.origin))return e;let n=new URL(e,t);if(n.origin!==new URL(t).origin)return e;let r=n.href;return!e.endsWith(`/`)&&r.endsWith(`/`)?r.slice(0,-1):r}async function lRe(e,t,n){try{let r=Dz(`resource.fetch`,await dRe(e,t,n));Cz(n.replay,r)}catch(e){Z&&ez.exception(e,`Failed to capture fetch breadcrumb`)}}function uRe(e,t){let{input:n,response:r}=t,i=wz(n?hI(n):void 0),a=r?Tz(r.headers.get(`content-length`)):void 0;i!==void 0&&(e.data.request_body_size=i),a!==void 0&&(e.data.response_body_size=a)}async function dRe(e,t,n){let r=Date.now(),{startTimestamp:i=r,endTimestamp:a=r}=t,{url:o,method:s,status_code:c=0,request_body_size:l,response_body_size:u}=e.data,d=jz(o,n.networkDetailAllowUrls)&&!jz(o,n.networkDetailDenyUrls);return{startTimestamp:i,endTimestamp:a,url:o,method:s,statusCode:c,request:d?fRe(n,t.input,l):Oz(l),response:await pRe(d,n,t.response,u)}}function fRe({networkCaptureBodies:e,networkRequestHeaders:t},n,r){let i=n?gRe(n,t):{};if(!e)return kz(i,r,void 0);let[a,o]=mI(hI(n),ez),s=kz(i,r,a);return o?Ez(s,o):s}async function pRe(e,{networkCaptureBodies:t,networkResponseHeaders:n},r,i){if(!e&&i!==void 0)return Oz(i);let a=r?Mz(r.headers,n):{};if(!r||!t&&i!==void 0)return kz(a,i,void 0);let[o,s]=await hRe(r),c=mRe(o,{networkCaptureBodies:t,responseBodySize:i,captureDetails:e,headers:a});return s?Ez(c,s):c}function mRe(e,{networkCaptureBodies:t,responseBodySize:n,captureDetails:r,headers:i}){try{let a=e?.length&&n===void 0?wz(e):n;return r?t?kz(i,a,e):kz(i,a,void 0):Oz(a)}catch(e){return Z&&ez.exception(e,`Failed to serialize response body`),kz(i,n,void 0)}}async function hRe(e){let t=_Re(e);if(!t)return[void 0,`BODY_PARSE_ERROR`];try{return[await vRe(t)]}catch(e){return e instanceof Error&&e.message.indexOf(`Timeout`)>-1?(Z&&ez.warn(`Parsing text body from response timed out`),[void 0,`BODY_PARSE_TIMEOUT`]):(Z&&ez.exception(e,`Failed to get text body from response`),[void 0,`BODY_PARSE_ERROR`])}}function Mz(e,t){let n={};return t.forEach(t=>{e.get(t)&&(n[t]=e.get(t))}),n}function gRe(e,t){return e.length===1&&typeof e[0]!=`string`?Nz(e[0],t):e.length===2?Nz(e[1],t):{}}function Nz(e,t){if(!e)return{};let n=e.headers;return n?n instanceof Headers?Mz(n,t):Array.isArray(n)?{}:Az(n,t):{}}function _Re(e){try{return e.clone()}catch(e){Z&&ez.exception(e,`Failed to clone response body`)}}function vRe(e){return new Promise((t,n)=>{let r=uI(()=>n(Error(`Timeout while trying to read response body`)),500);yRe(e).then(e=>t(e),e=>n(e)).finally(()=>clearTimeout(r))})}async function yRe(e){return await e.text()}async function bRe(e,t,n){try{let r=Dz(`resource.xhr`,SRe(e,t,n));Cz(n.replay,r)}catch(e){Z&&ez.exception(e,`Failed to capture xhr breadcrumb`)}}function xRe(e,t){let{xhr:n,input:r}=t;if(!n)return;let i=wz(r),a=n.getResponseHeader(`content-length`)?Tz(n.getResponseHeader(`content-length`)):TRe(n.response,n.responseType);i!==void 0&&(e.data.request_body_size=i),a!==void 0&&(e.data.response_body_size=a)}function SRe(e,t,n){let r=Date.now(),{startTimestamp:i=r,endTimestamp:a=r,input:o,xhr:s}=t,{url:c,method:l,status_code:u=0,request_body_size:d,response_body_size:f}=e.data;if(!c)return null;if(!s||!jz(c,n.networkDetailAllowUrls)||jz(c,n.networkDetailDenyUrls))return{startTimestamp:i,endTimestamp:a,url:c,method:l,statusCode:u,request:Oz(d),response:Oz(f)};let p=s[dI],m=p?Az(p.request_headers,n.networkRequestHeaders):{},h=Az(gI(s),n.networkResponseHeaders),[g,_]=n.networkCaptureBodies?mI(o,ez):[void 0],[v,y]=n.networkCaptureBodies?CRe(s):[void 0],b=kz(m,d,g),x=kz(h,f,v);return{startTimestamp:i,endTimestamp:a,url:c,method:l,statusCode:u,request:_?Ez(b,_):b,response:y?Ez(x,y):x}}function CRe(e){let t=[];try{return[e.responseText]}catch(e){t.push(e)}try{return wRe(e.response,e.responseType)}catch(e){t.push(e)}return Z&&ez.warn(`Failed to get xhr response body`,...t),[void 0]}function wRe(e,t){try{if(typeof e==`string`)return[e];if(e instanceof Document)return[e.body.outerHTML];if(t===`json`&&Fw(e))return[JSON.stringify(e)];if(!e)return[void 0]}catch(t){return Z&&ez.exception(t,`Failed to serialize body`,e),[void 0,`BODY_PARSE_ERROR`]}return Z&&ez.log(`Skipping network body because of body type`,e),[void 0,`UNPARSEABLE_BODY_TYPE`]}function TRe(e,t){try{return wz(t===`json`&&Fw(e)?JSON.stringify(e):e)}catch{return}}function ERe(e){let t=J();try{let{networkDetailAllowUrls:n,networkDetailDenyUrls:r,networkCaptureBodies:i,networkRequestHeaders:a,networkResponseHeaders:o}=e.getOptions(),s={replay:e,networkDetailAllowUrls:n,networkDetailDenyUrls:r,networkCaptureBodies:i,networkRequestHeaders:a,networkResponseHeaders:o};t&&t.on(`beforeAddBreadcrumb`,(e,t)=>DRe(s,e,t))}catch{}}function DRe(e,t,n){if(t.data)try{ORe(t)&&ARe(n)&&(xRe(t,n),bRe(t,n,e)),kRe(t)&&jRe(n)&&(uRe(t,n),lRe(t,n,e))}catch(e){Z&&ez.exception(e,`Error when enriching network breadcrumb`)}}function ORe(e){return e.category===`xhr`}function kRe(e){return e.category===`fetch`}function ARe(e){return e?.xhr}function jRe(e){return e?.input!==void 0}function MRe(e){let t=J();iI(sLe(e)),sI(iRe(e)),YLe(e),ERe(e),hO(nRe(e)),t&&(t.on(`beforeSendEvent`,qLe(e)),t.on(`afterSendEvent`,WLe(e)),t.on(`createDsc`,t=>{let n=e.getSessionId();n&&e.isEnabled()&&e.recordingMode===`session`&&e.checkAndHandleExpiredSession()&&(t.replay_id=n)}),t.on(`processSegmentSpan`,HLe(e)),t.on(`spanStart`,t=>{e.lastActiveSpan=t}),t.on(`spanEnd`,t=>{e.lastActiveSpan=t}),t.on(`beforeSendFeedback`,async(t,n)=>{let r=e.getSessionId();n?.includeReplay&&e.isEnabled()&&r&&t.contexts?.feedback&&(t.contexts.feedback.source===`api`&&await e.sendBufferedReplayOrFlush(),t.contexts.feedback.replay_id=r)}),t.on(`openFeedbackWidget`,async()=>{await e.sendBufferedReplayOrFlush()}))}async function NRe(e){try{return Promise.all(Sz(e,[PRe(qI.performance.memory)]))}catch{return[]}}function PRe(e){let{jsHeapSizeLimit:t,totalJSHeapSize:n,usedJSHeapSize:r}=e,i=Date.now()/1e3;return{type:`memory`,name:`memory`,start:i,end:i,data:{memory:{jsHeapSizeLimit:t,totalJSHeapSize:n,usedJSHeapSize:r}}}}function FRe(e,t,n){return VTe(e,t,{...n,setTimeoutImpl:uI})}var Pz=G.navigator;function IRe(){return/iPhone|iPad|iPod/i.test(Pz?.userAgent??``)||/Macintosh/i.test(Pz?.userAgent??``)&&Pz?.maxTouchPoints&&Pz?.maxTouchPoints>1?{sampling:{mousemove:!1}}:{}}function LRe(e){let t=!1;return(n,r)=>{try{if(!e.checkAndHandleExpiredSession()){Z&&ez.warn(`Received replay event after session expired.`);return}let i=r||!t;t=!0,RRe(n),e.clickDetector&&nLe(e.clickDetector,n),e.addUpdate(()=>{if(e.recordingMode===`buffer`&&i&&e.setInitialState(),!dz(e,n,i))return!0;if(!i)return!1;let t=e.session;if(BRe(e,i),e.recordingMode===`buffer`&&t&&e.eventBuffer&&!t.dirty){let n=e.eventBuffer.getEarliestTimestamp();n&&(Z&&ez.log(`Updating session start time to earliest event in buffer to ${new Date(n)}`),t.started=n,e.getOptions().stickySession&&az(t))}return t?.previousSessionId||e.recordingMode===`session`&&e.flush(),!0})}catch(t){e.handleException(t)}}}function RRe(e){let t=e.data;if(!(e.type!==iR.IncrementalSnapshot||!t||typeof t!=`object`||!(`source`in t)||t.source!==aR.Mutation||!(`attributes`in t)||!Array.isArray(t.attributes)))for(let e of t.attributes){let t=IR.mirror.getNode(e.id),n=t&&IR.mirror.getMeta(t);if(n?.type===KR.Element)for(let[t,r]of Object.entries(e.attributes))r===null?delete n.attributes[t]:n.attributes[t]=r}}function zRe(e){let t=e.getOptions();return{type:iR.Custom,timestamp:Date.now(),data:{tag:`options`,payload:{shouldRecordCanvas:e.isRecordingCanvas(),sessionSampleRate:t.sessionSampleRate,errorSampleRate:t.errorSampleRate,useCompressionOption:t.useCompression,blockAllMedia:t.blockAllMedia,maskAllText:t.maskAllText,maskAllInputs:t.maskAllInputs,useCompression:e.eventBuffer?e.eventBuffer.type===`worker`:!1,networkDetailHasUrls:t.networkDetailAllowUrls.length>0,networkCaptureBodies:t.networkCaptureBodies,networkRequestHasHeaders:t.networkRequestHeaders.length>0,networkResponseHasHeaders:t.networkResponseHeaders.length>0}}}}function BRe(e,t){!t||e.session?.segmentId!==0||dz(e,zRe(e),!1)}function VRe(e){if(!e)return null;try{return e.nodeType===e.ELEMENT_NODE?e:e.parentElement}catch{return null}}function HRe(e,t,n,r){return aD(pD(e,fD(e),r,n),[[{type:`replay_event`},e],[{type:`replay_recording`,length:typeof t==`string`?new TextEncoder().encode(t).length:t.length},t]])}function URe({recordingData:e,headers:t}){let n,r=`${JSON.stringify(t)}
|
|
1001
|
-
`;if(typeof e==`string`)n=`${r}${e}`;else{let t=new TextEncoder().encode(r);n=new Uint8Array(t.length+e.length),n.set(t),n.set(e,t.length)}return n}async function WRe({client:e,scope:t,replayId:n,event:r}){let i={event_id:n,integrations:typeof e._integrations==`object`&&e._integrations!==null&&!Array.isArray(e._integrations)?Object.keys(e._integrations):void 0};e.emit(`preprocessEvent`,r,i);let a=await sO(e.getOptions(),r,i,t,e,BT());if(!a)return null;e.emit(`postprocessEvent`,a,i),a.platform=a.platform||`javascript`;let{name:o,version:s,settings:c}=e.getSdkMetadata()?.sdk||{};return a.sdk={...a.sdk,name:o||`sentry.javascript.unknown`,version:s||`0.0.0`,settings:c},a}async function GRe({recordingData:e,replayId:t,segmentId:n,eventContext:r,timestamp:i,session:a}){let o=URe({recordingData:e,headers:{segment_id:n}}),{urls:s,errorIds:c,traceIds:l,segmentNames:u,initialTimestamp:d}=r,f=J(),p=q(),m=f?.getTransport(),h=f?.getDsn();if(!f||!m||!h||!a.sampled)return Promise.resolve({});let g=await WRe({scope:p,client:f,replayId:t,event:{type:gFe,replay_start_timestamp:d/1e3,timestamp:i/1e3,error_ids:c,trace_ids:l,segment_names:u,urls:s,replay_id:t,segment_id:n,replay_type:a.sampled}});if(!g)return f.recordDroppedEvent(`event_processor`,`replay`),Z&&ez.log("An event processor returned `null`, will not send event."),Promise.resolve({});delete g.sdkProcessingMetadata;let _=HRe(g,o,h,f.getOptions().tunnel),v;try{v=await m.send(_)}catch(e){let t=Error(YI);try{t.cause=e}catch{}throw t}let y=KO({},v);if(GO(y,`replay`))throw new Iz(y);if(typeof v.statusCode==`number`&&(v.statusCode<200||v.statusCode>=300))throw new Fz(v.statusCode);return v}var Fz=class extends Error{constructor(e){super(`Transport returned status code ${e}`)}},Iz=class extends Error{constructor(e){super(`Rate limit hit`),this.rateLimits=e}},Lz=class extends Error{constructor(){super(`Session is too long, not sending replay`)}};async function Rz(e,t={count:0,interval:SFe}){let{recordingData:n,onError:r}=e;if(n.length)try{return await GRe(e),!0}catch(n){if(n instanceof Fz||n instanceof Iz)throw n;if(dO(`Replays`,{_retryCount:t.count}),r&&r(n),t.count>=CFe){let e=Error(`${YI} - max retries exceeded`);try{e.cause=n}catch{}throw e}return t.interval*=++t.count,new Promise((n,r)=>{uI(async()=>{try{await Rz(e,t),n(!0)}catch(e){r(e)}},t.interval)})}}var zz=`__THROTTLED`,KRe=`__SKIPPED`;function qRe(e,t,n){let r=new Map,i=e=>{let t=e-n;r.forEach((e,n)=>{n<t&&r.delete(n)})},a=()=>[...r.values()].reduce((e,t)=>e+t,0),o=!1;return(...n)=>{let s=Math.floor(Date.now()/1e3);if(i(s),a()>=t){let e=o;return o=!0,e?KRe:zz}o=!1;let c=r.get(s)||0;return r.set(s,c+1),e(...n)}}var JRe=class{constructor({options:e,recordingOptions:t}){this.eventBuffer=null,this.performanceEntries=[],this.replayPerformanceEntries=[],this.recordingMode=`session`,this.timeouts={sessionIdlePause:_Fe,sessionIdleExpire:vFe},this._lastActivity=Date.now(),this._isEnabled=!1,this._isPaused=!1,this._requiresManualStart=!1,this._hasInitializedCoreListeners=!1,this._context={errorIds:new Set,traceIds:new Set,segmentNames:new Set,urls:[],initialTimestamp:Date.now(),initialUrl:``},this._recordingOptions=t,this._options=e,this._debouncedFlush=FRe(()=>this._flush(),this._options.flushMinDelay,{maxWait:this._options.flushMaxDelay}),this._throttledAddEvent=qRe((e,t)=>BLe(this,e,t),300,5);let{slowClickTimeout:n,slowClickIgnoreSelectors:r}=this.getOptions(),i=n?{threshold:Math.min(wFe,n),timeout:n,scrollTimeout:TFe,ignoreSelector:r?r.join(`,`):``}:void 0;if(i&&(this.clickDetector=new QIe(this,i)),Z){let t=e._experiments;ez.setConfig({captureExceptions:!!t.captureExceptions,traceInternals:!!t.traceInternals})}this._handleVisibilityChange=()=>{qI.document.visibilityState===`visible`?this._doChangeToForegroundTasks():this._doChangeToBackgroundTasks()},this._handleWindowBlur=()=>{let e=GR({category:`ui.blur`});this._doChangeToBackgroundTasks(e)},this._handleWindowFocus=()=>{let e=GR({category:`ui.focus`});this._doChangeToForegroundTasks(e)},this._handleKeyboardEvent=e=>{dLe(this,e)}}getContext(){return this._context}isEnabled(){return this._isEnabled}isPaused(){return this._isPaused}isRecordingCanvas(){return!!this._canvas}getOptions(){return this._options}handleException(e){Z&&ez.exception(e),this._options.onError&&this._options.onError(e)}initializeSampling(e){let{errorSampleRate:t,sessionSampleRate:n}=this._options,r=t<=0&&n<=0;if(this._requiresManualStart=r,!r){if(this._initializeSessionForSampling(e),!this.session){Z&&ez.exception(Error(`Unable to initialize and create session`));return}this.session.sampled!==!1&&(this.recordingMode=this.session.sampled===`buffer`&&this.session.segmentId===0?`buffer`:`session`,Z&&ez.infoTick(`Starting replay in ${this.recordingMode} mode`),this._initializeRecording())}}start(){if(this._isEnabled&&this.recordingMode===`session`){Z&&ez.log(`Recording is already in progress`);return}if(this._isEnabled&&this.recordingMode===`buffer`){Z&&ez.log("Buffering is in progress, call `flush()` to save the replay");return}Z&&ez.infoTick(`Starting replay in session mode`),this._updateUserActivity();let e=uz({maxReplayDuration:this._options.maxReplayDuration,sessionIdleExpire:this.timeouts.sessionIdleExpire},{stickySession:this._options.stickySession,sessionSampleRate:1,allowBuffering:!1});this.session=e,this.recordingMode=`session`,this._initializeRecording()}startBuffering(){if(this._isEnabled){Z&&ez.log("Buffering is in progress, call `flush()` to save the replay");return}Z&&ez.infoTick(`Starting replay in buffer mode`);let e=uz({sessionIdleExpire:this.timeouts.sessionIdleExpire,maxReplayDuration:this._options.maxReplayDuration},{stickySession:this._options.stickySession,sessionSampleRate:0,allowBuffering:!0});this.session=e,this.recordingMode=`buffer`,this._initializeRecording()}startRecording(){try{let e=this._canvas;this._stopRecording=IR({...this._recordingOptions,...this.recordingMode===`buffer`?{checkoutEveryNms:xFe}:this._options._experiments.continuousCheckout&&{checkoutEveryNms:Math.max(36e4,this._options._experiments.continuousCheckout)},emit:LRe(this),...IRe(),onMutation:this._onMutationHandler.bind(this),...e?{recordCanvas:e.recordCanvas,getCanvasManager:e.getCanvasManager,sampling:e.sampling,dataURLOptions:e.dataURLOptions}:{}})}catch(e){this.handleException(e)}}stopRecording(){try{return this._stopRecording&&=(this._stopRecording(),void 0),!0}catch(e){return this.handleException(e),!1}}async stop({forceFlush:e=!1,reason:t}={}){if(!this._isEnabled)return;this._isEnabled=!1,this.recordingMode=`buffer`;let n=t??`manual`;J()?.emit(`replayEnd`,{sessionId:this.session?.id,reason:n});try{Z&&ez.log(`Stopping Replay triggered by ${n}`),bz(),this._removeListeners(),this.stopRecording(),this._debouncedFlush.cancel(),e&&await this._flush({force:!0}),this.eventBuffer?.destroy(),this.eventBuffer=null,PLe(this)}catch(e){this.handleException(e)}}pause(){this._isPaused||(this._isPaused=!0,this.stopRecording(),Z&&ez.log(`Pausing replay`))}resume(){!this._isPaused||!this._checkSession()||(this._isPaused=!1,this.startRecording(),Z&&ez.log(`Resuming replay`))}async sendBufferedReplayOrFlush({continueRecording:e=!0}={}){if(this.recordingMode===`session`)return this.flushImmediate();let t=Date.now();Z&&ez.log(`Converting buffer to session`),await this.flushImmediate();let n=this.stopRecording();!e||!n||this.recordingMode!==`session`&&(this.recordingMode=`session`,this.session&&(this.session.dirty=!1,this._updateUserActivity(t),this._updateSessionActivity(t),this._maybeSaveSession(),xz(this.session.id)),this.startRecording())}addUpdate(e){let t=e();this.recordingMode===`buffer`||!this._isEnabled||t!==!0&&this._debouncedFlush()}triggerUserActivity(){if(this._updateUserActivity(),!this._stopRecording){if(!this._checkSession())return;this.resume();return}this.checkAndHandleExpiredSession(),this._updateSessionActivity()}updateUserActivity(){this._updateUserActivity(),this._updateSessionActivity()}conditionalFlush(){return this.recordingMode===`buffer`?Promise.resolve():this.flushImmediate()}flush(){return this._debouncedFlush()}flushImmediate(){return this._debouncedFlush(),this._debouncedFlush.flush()}cancelFlush(){this._debouncedFlush.cancel()}getSessionId(e){if(!(e&&this.session?.sampled===!1))return this.session?.id}checkAndHandleExpiredSession(){if(this._lastActivity&&cz(this._lastActivity,this.timeouts.sessionIdlePause)&&this.session?.sampled===`session`){this.pause();return}return!!this._checkSession()}setInitialState(){let e=`${qI.location.pathname}${qI.location.hash}${qI.location.search}`,t=`${qI.location.origin}${e}`;this.performanceEntries=[],this.replayPerformanceEntries=[],this._clearContext(),this._context.initialUrl=t,this._context.initialTimestamp=Date.now(),this._context.urls.push(t)}throttledAddEvent(e,t){let n=this._throttledAddEvent(e,t);if(n===zz){let e=GR({category:`replay.throttled`});this.addUpdate(()=>!dz(this,{type:GIe,timestamp:e.timestamp||0,data:{tag:`breadcrumb`,payload:e,metric:!0}}))}return n}getCurrentRoute(){let e=this.lastActiveSpan||UE(),t=e&&VE(e),n=(t&&DE(t).data||{})[WT];if(!(!t||!n||![`route`,`custom`].includes(n)))return DE(t).description}_initializeRecording(){this.setInitialState(),this._updateSessionActivity(),this.eventBuffer=jLe({useCompression:this._options.useCompression,workerUrl:this._options.workerUrl}),this._removeListeners(),this._addListeners(),this._isEnabled=!0,this._isPaused=!1,this.session&&J()?.emit(`replayStart`,{sessionId:this.session.id,recordingMode:this.recordingMode}),this.startRecording(),this.recordingMode===`session`&&this.session&&xz(this.session.id)}_initializeSessionForSampling(e){let t=this._options.errorSampleRate>0,n=uz({sessionIdleExpire:this.timeouts.sessionIdleExpire,maxReplayDuration:this._options.maxReplayDuration,previousSessionId:e},{stickySession:this._options.stickySession,sessionSampleRate:this._options.sessionSampleRate,allowBuffering:t});this.session=n}_checkSession(){if(!this.session)return!1;let e=this.session;return!lz(e,{sessionIdleExpire:this.timeouts.sessionIdleExpire,maxReplayDuration:this._options.maxReplayDuration})||(this._refreshSession(e),!1)}async _refreshSession(e){this._isEnabled&&(await this.stop({reason:`sessionExpired`}),this.initializeSampling(e.id))}_addListeners(){try{qI.document.addEventListener(`visibilitychange`,this._handleVisibilityChange),qI.addEventListener(`blur`,this._handleWindowBlur),qI.addEventListener(`focus`,this._handleWindowFocus),qI.addEventListener(`keydown`,this._handleKeyboardEvent),this.clickDetector&&this.clickDetector.addListeners(),this._hasInitializedCoreListeners||=(MRe(this),!0)}catch(e){this.handleException(e)}this._performanceCleanupCallback=wLe(this)}_removeListeners(){try{qI.document.removeEventListener(`visibilitychange`,this._handleVisibilityChange),qI.removeEventListener(`blur`,this._handleWindowBlur),qI.removeEventListener(`focus`,this._handleWindowFocus),qI.removeEventListener(`keydown`,this._handleKeyboardEvent),this.clickDetector&&this.clickDetector.removeListeners(),this._performanceCleanupCallback&&this._performanceCleanupCallback()}catch(e){this.handleException(e)}}_doChangeToBackgroundTasks(e){if(this.session){if(lz(this.session,{maxReplayDuration:this._options.maxReplayDuration,sessionIdleExpire:this.timeouts.sessionIdleExpire})){bz();return}e&&this._createCustomBreadcrumb(e),this.conditionalFlush()}}_doChangeToForegroundTasks(e){if(this.session){if(!this.checkAndHandleExpiredSession()){Z&&ez.log(`Document has become active, but session has expired`);return}e&&this._createCustomBreadcrumb(e)}}_updateUserActivity(e=Date.now()){this._lastActivity=e}_updateSessionActivity(e=Date.now()){this.session&&(this.session.lastActivity=e,this._maybeSaveSession())}_createCustomBreadcrumb(e){this.addUpdate(()=>{this.throttledAddEvent({type:iR.Custom,timestamp:e.timestamp||0,data:{tag:`breadcrumb`,payload:e}})})}_addPerformanceEntries(){let e=hLe(this.performanceEntries).concat(this.replayPerformanceEntries);if(this.performanceEntries=[],this.replayPerformanceEntries=[],this._requiresManualStart){let t=this._context.initialTimestamp/1e3;e=e.filter(e=>e.start>=t)}return Promise.all(Sz(this,e))}_clearContext(){this._context.errorIds.clear(),this._context.traceIds.clear(),this._context.segmentNames.clear(),this._context.urls=[]}_updateInitialTimestampFromEventBuffer(){let{session:e,eventBuffer:t}=this;if(!e||!t||this._requiresManualStart||e.segmentId)return;let n=t.getEarliestTimestamp();n&&n<this._context.initialTimestamp&&(this._context.initialTimestamp=n)}_popEventContext(){let e={initialTimestamp:this._context.initialTimestamp,initialUrl:this._context.initialUrl,errorIds:Array.from(this._context.errorIds),traceIds:Array.from(this._context.traceIds),segmentNames:Array.from(this._context.segmentNames),urls:this._context.urls};return this._clearContext(),e}async _runFlush(){let e=this.getSessionId();if(!this.session||!this.eventBuffer||!e){Z&&ez.error(`No session or eventBuffer found to flush.`);return}if(await this._addPerformanceEntries(),this.eventBuffer?.hasEvents&&(await NRe(this),this.eventBuffer&&e===this.getSessionId()))try{this._updateInitialTimestampFromEventBuffer();let t=Date.now();if(t-this._context.initialTimestamp>this._options.maxReplayDuration+3e4)throw new Lz;let n=this._popEventContext(),r=this.session.segmentId++;this._maybeSaveSession(),await Rz({replayId:e,recordingData:await this.eventBuffer.finish(),segmentId:r,eventContext:n,session:this.session,timestamp:t,onError:e=>this.handleException(e)})}catch(e){this.handleException(e),this.stop({reason:`sendError`});let t=J();if(t){let n;n=e instanceof Iz?`ratelimit_backoff`:e instanceof Lz?`invalid`:`send_error`,t.recordDroppedEvent(n,`replay`)}}}async _flush({force:e=!1}={}){if(!this._isEnabled&&!e)return;if(!this.checkAndHandleExpiredSession()){Z&&ez.error(`Attempting to finish replay event after session expired.`);return}if(!this.session)return;let t=this.session.started,n=Date.now()-t;this._debouncedFlush.cancel();let r=n<this._options.minReplayDuration,i=n>this._options.maxReplayDuration+5e3;if(r||i){Z&&ez.log(`Session duration (${Math.floor(n/1e3)}s) is too ${r?`short`:`long`}, not sending replay.`),r&&this._debouncedFlush();return}let a=this.eventBuffer;a&&this.session.segmentId===0&&!a.hasCheckout&&Z&&ez.log(`Flushing initial segment without checkout.`);let o=!!this._flushLock;this._flushLock||=this._runFlush();try{await this._flushLock}catch(e){this.handleException(e)}finally{this._flushLock=void 0,o&&this._debouncedFlush()}}_maybeSaveSession(){this.session&&this._options.stickySession&&az(this.session)}_onMutationHandler(e){let{ignoreMutations:t}=this._options._experiments;if(t?.length&&e.some(e=>{let n=VRe(e.target),r=t.join(`,`);return n?.matches(r)}))return!1;let n=e.length,r=this._options.mutationLimit,i=this._options.mutationBreadcrumbLimit,a=r&&n>r;if(n>i||a){let e=GR({category:`replay.mutations`,data:{count:n,limit:a}});this._createCustomBreadcrumb(e)}return!a||(this.stop({reason:`mutationLimit`,forceFlush:this.recordingMode===`session`}),!1)}};function Bz(e,t){return[...e,...t].join(`,`)}function YRe({mask:e,unmask:t,block:n,unblock:r,ignore:i}){return{maskTextSelector:Bz(e,[`.sentry-mask`,`[data-sentry-mask]`]),unmaskTextSelector:Bz(t,[]),blockSelector:Bz(n,[`.sentry-block`,`[data-sentry-block]`,`base`,`iframe[srcdoc]:not([src])`]),unblockSelector:Bz(r,[]),ignoreSelector:Bz(i,[`.sentry-ignore`,`[data-sentry-ignore]`,`input[type="file"]`])}}function XRe({el:e,key:t,maskAttributes:n,maskAllText:r,privacyOptions:i,value:a}){if(i.unmaskTextSelector&&e.matches(i.unmaskTextSelector))return a;let o=n.includes(t),s=r&&t===`value`&&e.tagName===`INPUT`&&[`submit`,`button`].includes(e.getAttribute(`type`)||``);return o||s?a.replace(/[\S]/g,`*`):a}var Vz=`img,image,svg,video,object,picture,embed,map,audio,link[rel="icon"],link[rel="apple-touch-icon"]`,ZRe=[`content-length`,`content-type`,`accept`],QRe=Symbol.for(`sentry__originalRequestBody`),Hz=!1,Uz=!1;function $Re(){if(typeof Request>`u`||Uz)return;let e=Request;try{let t=function(t,n){let r=new e(t,n);return n?.body!=null&&(r[QRe]=n.body),r};t.prototype=e.prototype,G.Request=t,Uz=!0}catch{}}var Wz=(e=>new eze(e)),eze=class{constructor({flushMinDelay:e=yFe,flushMaxDelay:t=bFe,minReplayDuration:n=EFe,maxReplayDuration:r=$I,stickySession:i=!0,useCompression:a=!0,workerUrl:o,_experiments:s={},maskAllText:c=!0,maskAllInputs:l=!0,blockAllMedia:u=!0,mutationBreadcrumbLimit:d=750,mutationLimit:f=1e4,slowClickTimeout:p=7e3,slowClickIgnoreSelectors:m=[],networkDetailAllowUrls:h=[],networkDetailDenyUrls:g=[],networkCaptureBodies:_=!0,networkRequestHeaders:v=[],networkResponseHeaders:y=[],mask:b=[],maskAttributes:x=[`title`,`placeholder`,`aria-label`],unmask:S=[],block:C=[],unblock:w=[],ignore:T=[],maskFn:E,beforeAddRecordingEvent:ee,beforeErrorSampling:te,onError:ne,attachRawBodyFromRequest:re=!1}={}){this.name=`Replay`;let ie=YRe({mask:b,unmask:S,block:C,unblock:w,ignore:T});if(this._recordingOptions={maskAllInputs:l,maskAllText:c,maskInputOptions:{password:!0},maskTextFn:E,maskInputFn:E,maskAttributeFn:(e,t,n)=>XRe({maskAttributes:x,maskAllText:c,privacyOptions:ie,key:e,value:t,el:n}),...ie,slimDOMOptions:`all`,inlineStylesheet:!0,inlineImages:!1,collectFonts:!0,errorHandler:e=>{try{e.__rrweb__=!0}catch{}},recordCrossOriginIframes:!!s.recordCrossOriginIframes},this._initialOptions={flushMinDelay:e,flushMaxDelay:t,minReplayDuration:Math.min(n,DFe),maxReplayDuration:Math.min(r,$I),stickySession:i,useCompression:a,workerUrl:o,blockAllMedia:u,maskAllInputs:l,maskAllText:c,mutationBreadcrumbLimit:d,mutationLimit:f,slowClickTimeout:p,slowClickIgnoreSelectors:m,networkDetailAllowUrls:h,networkDetailDenyUrls:g,networkCaptureBodies:_,networkRequestHeaders:Gz(v),networkResponseHeaders:Gz(y),beforeAddRecordingEvent:ee,beforeErrorSampling:te,onError:ne,attachRawBodyFromRequest:re,_experiments:s},this._initialOptions.blockAllMedia&&(this._recordingOptions.blockSelector=this._recordingOptions.blockSelector?`${this._recordingOptions.blockSelector},${Vz}`:Vz,this._recordingOptions.ignoreCSSAttributes=new Set([`background-image`])),this._isInitialized&&jO())throw Error(`Multiple Sentry Session Replay instances are not supported`);this._isInitialized=!0}get _isInitialized(){return Hz}set _isInitialized(e){Hz=e}afterAllSetup(e){!jO()||this._replay||(this._initialOptions.attachRawBodyFromRequest&&$Re(),this._setup(e),this._initialize(e))}start(){this._replay&&this._replay.start()}startBuffering(){this._replay&&this._replay.startBuffering()}stop(e){return this._replay?this._replay.stop({forceFlush:e?.flush??this._replay.recordingMode===`session`,reason:`manual`}):Promise.resolve()}flush(e){return this._replay?this._replay.isEnabled()?this._replay.sendBufferedReplayOrFlush(e):(this._replay.start(),Promise.resolve()):Promise.resolve()}getReplayId(e){if(this._replay?.isEnabled())return this._replay.getSessionId(e)}getRecordingMode(){if(this._replay?.isEnabled())return this._replay.recordingMode}processSpan(e){let t=this.getReplayId(!0);t&&(JD(e,{"sentry.replay_id":t}),this.getRecordingMode()===`buffer`&&JD(e,{"sentry._internal.replay_is_buffering":!0}))}_initialize(e){this._replay&&(this._maybeLoadFromReplayCanvasIntegration(e),this._replay.initializeSampling())}_setup(e){let t=tze(this._initialOptions,e);this._replay=new JRe({options:t,recordingOptions:this._recordingOptions})}_maybeLoadFromReplayCanvasIntegration(e){try{let t=e.getIntegrationByName(`ReplayCanvas`);if(!t)return;this._replay._canvas=t.getOptions()}catch{}}};function tze(e,t){let n=t.getOptions(),r={sessionSampleRate:0,errorSampleRate:0,...e},i=gE(n.replaysSessionSampleRate),a=gE(n.replaysOnErrorSampleRate);return i==null&&a==null&&rw(()=>{console.warn("Replay is disabled because neither `replaysSessionSampleRate` nor `replaysOnErrorSampleRate` are set.")}),i!=null&&(r.sessionSampleRate=i),a!=null&&(r.errorSampleRate=a),r}function Gz(e){return[...ZRe,...e.map(e=>e.toLowerCase())]}function nze(){return J()?.getIntegrationByName(`Replay`)}var rze=Object.defineProperty,ize=(e,t,n)=>t in e?rze(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Kz=(e,t,n)=>ize(e,typeof t==`symbol`?t:t+``,n),aze=class{constructor(){Kz(this,`idNodeMap`,new Map),Kz(this,`nodeMetaMap`,new WeakMap)}getId(e){return e?this.getMeta(e)?.id??-1:-1}getNode(e){return this.idNodeMap.get(e)||null}getIds(){return Array.from(this.idNodeMap.keys())}getMeta(e){return this.nodeMetaMap.get(e)||null}removeNodeFromMap(e){let t=this.getId(e);this.idNodeMap.delete(t),e.childNodes&&e.childNodes.forEach(e=>this.removeNodeFromMap(e))}has(e){return this.idNodeMap.has(e)}hasNode(e){return this.nodeMetaMap.has(e)}add(e,t){let n=t.id;this.idNodeMap.set(n,e),this.nodeMetaMap.set(e,t)}replace(e,t){let n=this.getNode(e);if(n){let e=this.nodeMetaMap.get(n);e&&this.nodeMetaMap.set(t,e)}this.idNodeMap.set(e,t)}reset(){this.idNodeMap=new Map,this.nodeMetaMap=new WeakMap}};function oze(){return new aze}function sze(e,t){for(let n=e.classList.length;n--;){let r=e.classList[n];if(t.test(r))return!0}return!1}function qz(e,t,n=1/0,r=0){return!e||e.nodeType!==e.ELEMENT_NODE||r>n?-1:t(e)?r:qz(e.parentNode,t,n,r+1)}function Jz(e,t){return n=>{let r=n;if(r===null)return!1;try{if(e){if(typeof e==`string`){if(r.matches(`.${e}`))return!0}else if(sze(r,e))return!0}return!!(t&&r.matches(t))}catch{return!1}}}var Yz=`Please stop import mirror directly. Instead of that,\r
|
|
1000
|
+
or you can use record.mirror to access the mirror instance during recording.`,IL={map:{},getId(){return console.error(FL),-1},getNode(){return console.error(FL),null},removeNodeFromMap(){console.error(FL)},has(){return console.error(FL),!1},reset(){console.error(FL)}};typeof window<`u`&&window.Proxy&&window.Reflect&&(IL=new Proxy(IL,{get(e,t,n){return t===`map`&&console.error(FL),Reflect.get(e,t,n)}}));function LL(e,t,n={}){let r=null,i=0;return function(...a){let o=Date.now();!i&&n.leading===!1&&(i=o);let s=t-(o-i),c=this;s<=0||s>t?(r&&=(gIe(r),null),i=o,e.apply(c,a)):!r&&n.trailing!==!1&&(r=nR(()=>{i=n.leading===!1?0:Date.now(),r=null,e.apply(c,a)},s))}}function RL(e,t,n,r,i=window){let a=i.Object.getOwnPropertyDescriptor(e,t);return i.Object.defineProperty(e,t,r?n:{set(e){nR(()=>{n.set.call(this,e)},0),a&&a.set&&a.set.call(this,e)}}),()=>RL(e,t,a||{},!0)}function zL(e,t,n){try{if(!(t in e))return()=>{};let r=e[t],i=n(r);return typeof i==`function`&&(i.prototype=i.prototype||{},Object.defineProperties(i,{__rrweb_original__:{enumerable:!1,value:r}})),e[t]=i,()=>{e[t]=r}}catch{return()=>{}}}var BL=Date.now;/[1-9][0-9]{12}/.test(Date.now().toString())||(BL=()=>new Date().getTime());function VL(e){let t=e.document;return{left:t.scrollingElement?t.scrollingElement.scrollLeft:e.pageXOffset===void 0?t?.documentElement.scrollLeft||t?.body?.parentElement?.scrollLeft||t?.body?.scrollLeft||0:e.pageXOffset,top:t.scrollingElement?t.scrollingElement.scrollTop:e.pageYOffset===void 0?t?.documentElement.scrollTop||t?.body?.parentElement?.scrollTop||t?.body?.scrollTop||0:e.pageYOffset}}function HL(){return window.innerHeight||document.documentElement&&document.documentElement.clientHeight||document.body&&document.body.clientHeight}function UL(){return window.innerWidth||document.documentElement&&document.documentElement.clientWidth||document.body&&document.body.clientWidth}function WL(e){if(!e)return null;try{return e.nodeType===e.ELEMENT_NODE?e:e.parentElement}catch{return null}}function GL(e,t,n,r,i){if(!e)return!1;let a=WL(e);if(!a)return!1;let o=AL(t,n);if(!i){let e=r&&a.matches(r);return o(a)&&!e}let s=kL(a,o),c=-1;return s<0?!1:(r&&(c=kL(a,AL(null,r))),s>-1&&c<0||s<c)}function uIe(e,t){return t.getId(e)!==-1}function KL(e,t){return t.getId(e)===yL}function qL(e,t){if(tL(e))return!1;let n=t.getId(e);return t.has(n)?e.parentNode&&e.parentNode.nodeType===e.DOCUMENT_NODE?!1:!e.parentNode||qL(e.parentNode,t):!0}function JL(e){return!!e.changedTouches}function dIe(e=window){`NodeList`in e&&!e.NodeList.prototype.forEach&&(e.NodeList.prototype.forEach=Array.prototype.forEach),`DOMTokenList`in e&&!e.DOMTokenList.prototype.forEach&&(e.DOMTokenList.prototype.forEach=Array.prototype.forEach),Node.prototype.contains||(Node.prototype.contains=(...e)=>{let t=e[0];if(!(0 in e))throw TypeError(`1 argument is required`);do if(this===t)return!0;while(t&&=t.parentNode);return!1})}function YL(e,t){return!!(e.nodeName===`IFRAME`&&t.getMeta(e))}function XL(e,t){return!!(e.nodeName===`LINK`&&e.nodeType===e.ELEMENT_NODE&&e.getAttribute&&e.getAttribute(`rel`)===`stylesheet`&&t.getMeta(e))}function ZL(e){return!!e?.shadowRoot}var fIe=class{constructor(){this.id=1,this.styleIDMap=new WeakMap,this.idStyleMap=new Map}getId(e){return this.styleIDMap.get(e)??-1}has(e){return this.styleIDMap.has(e)}add(e,t){if(this.has(e))return this.getId(e);let n;return n=t===void 0?this.id++:t,this.styleIDMap.set(e,n),this.idStyleMap.set(n,e),n}getStyle(e){return this.idStyleMap.get(e)||null}reset(){this.styleIDMap=new WeakMap,this.idStyleMap=new Map,this.id=1}generateId(){return this.id++}};function QL(e){let t=null;return e.getRootNode?.()?.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&e.getRootNode().host&&(t=e.getRootNode().host),t}function pIe(e){let t=e,n;for(;n=QL(t);)t=n;return t}function mIe(e){let t=e.ownerDocument;if(!t)return!1;let n=pIe(e);return t.contains(n)}function $L(e){let t=e.ownerDocument;return t?t.contains(e)||mIe(e):!1}var eR={};function tR(e){let t=eR[e];if(t)return t;let n=window.document,r=window[e];if(n&&typeof n.createElement==`function`)try{let t=n.createElement(`iframe`);t.hidden=!0,n.head.appendChild(t);let i=t.contentWindow;i&&i[e]&&(r=i[e]),n.head.removeChild(t)}catch{}return eR[e]=r.bind(window)}function hIe(...e){return tR(`requestAnimationFrame`)(...e)}function nR(...e){return tR(`setTimeout`)(...e)}function gIe(...e){return tR(`clearTimeout`)(...e)}var rR=(e=>(e[e.DomContentLoaded=0]=`DomContentLoaded`,e[e.Load=1]=`Load`,e[e.FullSnapshot=2]=`FullSnapshot`,e[e.IncrementalSnapshot=3]=`IncrementalSnapshot`,e[e.Meta=4]=`Meta`,e[e.Custom=5]=`Custom`,e[e.Plugin=6]=`Plugin`,e))(rR||{}),iR=(e=>(e[e.Mutation=0]=`Mutation`,e[e.MouseMove=1]=`MouseMove`,e[e.MouseInteraction=2]=`MouseInteraction`,e[e.Scroll=3]=`Scroll`,e[e.ViewportResize=4]=`ViewportResize`,e[e.Input=5]=`Input`,e[e.TouchMove=6]=`TouchMove`,e[e.MediaInteraction=7]=`MediaInteraction`,e[e.StyleSheetRule=8]=`StyleSheetRule`,e[e.CanvasMutation=9]=`CanvasMutation`,e[e.Font=10]=`Font`,e[e.Log=11]=`Log`,e[e.Drag=12]=`Drag`,e[e.StyleDeclaration=13]=`StyleDeclaration`,e[e.Selection=14]=`Selection`,e[e.AdoptedStyleSheet=15]=`AdoptedStyleSheet`,e[e.CustomElement=16]=`CustomElement`,e))(iR||{}),aR=(e=>(e[e.MouseUp=0]=`MouseUp`,e[e.MouseDown=1]=`MouseDown`,e[e.Click=2]=`Click`,e[e.ContextMenu=3]=`ContextMenu`,e[e.DblClick=4]=`DblClick`,e[e.Focus=5]=`Focus`,e[e.Blur=6]=`Blur`,e[e.TouchStart=7]=`TouchStart`,e[e.TouchMove_Departed=8]=`TouchMove_Departed`,e[e.TouchEnd=9]=`TouchEnd`,e[e.TouchCancel=10]=`TouchCancel`,e))(aR||{}),oR=(e=>(e[e.Mouse=0]=`Mouse`,e[e.Pen=1]=`Pen`,e[e.Touch=2]=`Touch`,e))(oR||{}),sR=(e=>(e[e.Play=0]=`Play`,e[e.Pause=1]=`Pause`,e[e.Seeked=2]=`Seeked`,e[e.VolumeChange=3]=`VolumeChange`,e[e.RateChange=4]=`RateChange`,e))(sR||{}),cR;function _Ie(e){cR=e}function vIe(){cR=void 0}for(var lR=e=>cR?((...t)=>{try{return e(...t)}catch(e){if(cR&&cR(e)===!0)return()=>{};throw e}}):e,uR=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,yIe=typeof Uint8Array>`u`?[]:new Uint8Array(256),dR=0;dR<uR.length;dR++)yIe[uR.charCodeAt(dR)]=dR;var fR=class{reset(){}freeze(){}unfreeze(){}lock(){}unlock(){}snapshot(){}addWindow(){}addShadowRoot(){}resetShadowRoots(){}};function pR(e){try{return e.contentDocument}catch{}}function mR(e){try{return e.contentWindow}catch{}}var bIe=class{constructor(e){this.doc=e,this.unattachedDoc=null}parse(e){return this.parseWithConstructableStylesheet(e)||this.parseWithDetachedElement(e)}parseWithConstructableStylesheet(e){if(typeof CSSStyleSheet>`u`||typeof CSSStyleSheet.prototype.replaceSync!=`function`)return null;try{let t=new CSSStyleSheet;t.replaceSync(`x { ${e} }`);let n=t.cssRules[0];return!n||n.type!==CSSRule.STYLE_RULE?null:n.style}catch{return null}}parseWithDetachedElement(e){let t=this.getUnattachedDoc().createElement(`span`);return t.setAttribute(`style`,e),t.style}getUnattachedDoc(){if(!this.unattachedDoc)try{this.unattachedDoc=document.implementation.createHTMLDocument()}catch{this.unattachedDoc=this.doc}return this.unattachedDoc}};function hR(e){return`__ln`in e}var xIe=class{constructor(){this.length=0,this.head=null,this.tail=null}get(e){if(e>=this.length)throw Error(`Position outside of list range`);let t=this.head;for(let n=0;n<e;n++)t=t?.next||null;return t}addNode(e){let t={value:e,previous:null,next:null};if(e.__ln=t,e.previousSibling&&hR(e.previousSibling)){let n=e.previousSibling.__ln.next;t.next=n,t.previous=e.previousSibling.__ln,e.previousSibling.__ln.next=t,n&&(n.previous=t)}else if(e.nextSibling&&hR(e.nextSibling)&&e.nextSibling.__ln.previous){let n=e.nextSibling.__ln.previous;t.previous=n,t.next=e.nextSibling.__ln,e.nextSibling.__ln.previous=t,n&&(n.next=t)}else this.head&&(this.head.previous=t),t.next=this.head,this.head=t;t.next===null&&(this.tail=t),this.length++}removeNode(e){let t=e.__ln;this.head&&(t.previous?(t.previous.next=t.next,t.next?t.next.previous=t.previous:this.tail=t.previous):(this.head=t.next,this.head?this.head.previous=null:this.tail=null),e.__ln&&delete e.__ln,this.length--)}},gR=(e,t)=>`${e}@${t}`,SIe=class{constructor(){this.frozen=!1,this.locked=!1,this.texts=[],this.attributes=[],this.attributeMap=new WeakMap,this.removes=[],this.mapRemoves=[],this.movedMap={},this.addedSet=new Set,this.movedSet=new Set,this.droppedSet=new Set,this.processMutations=e=>{e.forEach(this.processMutation),this.emit()},this.emit=()=>{if(this.frozen||this.locked)return;let e=[],t=new Set,n=new xIe,r=e=>{let t=e,n=yL;for(;n===yL;)t&&=t.nextSibling,n=t&&this.mirror.getId(t);return n},i=i=>{if(!i.parentNode||!$L(i))return;let a=tL(i.parentNode)?this.mirror.getId(QL(i)):this.mirror.getId(i.parentNode),o=r(i);if(a===-1||o===-1)return n.addNode(i);let s=NL(i,{doc:this.doc,mirror:this.mirror,blockClass:this.blockClass,blockSelector:this.blockSelector,maskAllText:this.maskAllText,unblockSelector:this.unblockSelector,maskTextClass:this.maskTextClass,unmaskTextClass:this.unmaskTextClass,maskTextSelector:this.maskTextSelector,unmaskTextSelector:this.unmaskTextSelector,skipChild:!0,newlyAddedElement:!0,inlineStylesheet:this.inlineStylesheet,maskInputOptions:this.maskInputOptions,maskAttributeFn:this.maskAttributeFn,maskTextFn:this.maskTextFn,maskInputFn:this.maskInputFn,slimDOMOptions:this.slimDOMOptions,dataURLOptions:this.dataURLOptions,recordCanvas:this.recordCanvas,inlineImages:this.inlineImages,onSerialize:e=>{YL(e,this.mirror)&&!GL(e,this.blockClass,this.blockSelector,this.unblockSelector,!1)&&this.iframeManager.addIframe(e),XL(e,this.mirror)&&this.stylesheetManager.trackLinkElement(e),ZL(i)&&this.shadowDomManager.addShadowRoot(i.shadowRoot,this.doc)},onIframeLoad:(e,t)=>{if(GL(e,this.blockClass,this.blockSelector,this.unblockSelector,!1))return;this.iframeManager.attachIframe(e,t);let n=mR(e);n&&this.canvasManager.addWindow(n),this.shadowDomManager.observeAttachShadow(e)},onStylesheetLoad:(e,t)=>{this.stylesheetManager.attachLinkElement(e,t)},onBlockedImageLoad:(e,t,{width:n,height:r})=>{this.mutationCb({adds:[],removes:[],texts:[],attributes:[{id:t.id,attributes:{style:{width:`${n}px`,height:`${r}px`}}}]})},ignoreCSSAttributes:this.ignoreCSSAttributes});s&&(e.push({parentId:a,nextId:o,node:s}),t.add(s.id))};for(;this.mapRemoves.length;)this.mirror.removeNodeFromMap(this.mapRemoves.shift());for(let e of this.movedSet)vR(this.removes,e,this.mirror)&&!this.movedSet.has(e.parentNode)||i(e);for(let e of this.addedSet)!yR(this.droppedSet,e)&&!vR(this.removes,e,this.mirror)||yR(this.movedSet,e)?i(e):this.droppedSet.add(e);let a=null;for(;n.length;){let e=null;if(a){let t=this.mirror.getId(a.value.parentNode),n=r(a.value);t!==-1&&n!==-1&&(e=a)}if(!e){let t=n.tail;for(;t;){let n=t;if(t=t.previous,n){let t=this.mirror.getId(n.value.parentNode);if(r(n.value)===-1)continue;if(t!==-1){e=n;break}{let t=n.value;if(t.parentNode&&t.parentNode.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let r=t.parentNode.host;if(this.mirror.getId(r)!==-1){e=n;break}}}}}}if(!e){for(;n.head;)n.removeNode(n.head.value);break}a=e.previous,n.removeNode(e.value),i(e.value)}let o={texts:this.texts.map(e=>({id:this.mirror.getId(e.node),value:e.value})).filter(e=>!t.has(e.id)).filter(e=>this.mirror.has(e.id)),attributes:this.attributes.map(e=>{let{attributes:t}=e;if(typeof t.style==`string`){let n=JSON.stringify(e.styleDiff),r=JSON.stringify(e._unchangedStyles);n.length<t.style.length&&(n+r).split(`var(`).length===t.style.split(`var(`).length&&(t.style=e.styleDiff)}return{id:this.mirror.getId(e.node),attributes:t}}).filter(e=>!t.has(e.id)).filter(e=>this.mirror.has(e.id)),removes:this.removes,adds:e};!o.texts.length&&!o.attributes.length&&!o.removes.length&&!o.adds.length||(this.texts=[],this.attributes=[],this.attributeMap=new WeakMap,this.removes=[],this.addedSet=new Set,this.movedSet=new Set,this.droppedSet=new Set,this.movedMap={},this.mutationCb(o))},this.processMutation=e=>{if(!KL(e.target,this.mirror))switch(e.type){case`characterData`:{let t=e.target.textContent;!GL(e.target,this.blockClass,this.blockSelector,this.unblockSelector,!1)&&t!==e.oldValue&&this.texts.push({value:jL(e.target,this.maskTextClass,this.maskTextSelector,this.unmaskTextClass,this.unmaskTextSelector,this.maskAllText)&&t?this.maskTextFn?this.maskTextFn(t,WL(e.target)):t.replace(/[\S]/g,`*`):t,node:e.target});break}case`attributes`:{let t=e.target,n=e.attributeName,r=e.target.getAttribute(n);if(n===`value`){let n=dL(t),i=t.tagName;r=fL(t,i,n);let a=oL({maskInputOptions:this.maskInputOptions,tagName:i,type:n});r=sL({isMasked:jL(e.target,this.maskTextClass,this.maskTextSelector,this.unmaskTextClass,this.unmaskTextSelector,a),element:t,value:r,maskInputFn:this.maskInputFn})}if(GL(e.target,this.blockClass,this.blockSelector,this.unblockSelector,!1)||r===e.oldValue)return;let i=this.attributeMap.get(e.target);if(t.tagName===`IFRAME`&&n===`src`&&!this.keepIframeSrcFn(r))if(!pR(t))n=`rr_src`;else return;if(i||(i={node:e.target,attributes:{},styleDiff:{},_unchangedStyles:{}},this.attributes.push(i),this.attributeMap.set(e.target,i)),n===`type`&&t.tagName===`INPUT`&&(e.oldValue||``).toLowerCase()===`password`&&t.setAttribute(`data-rr-is-password`,`true`),!OL(t.tagName,n)&&(i.attributes[n]=DL(this.doc,cL(t.tagName),cL(n),r,t,this.maskAttributeFn),n===`style`)){let n=e.oldValue?this.styleDeclarationParser.parse(e.oldValue):null;for(let e of Array.from(t.style)){let r=t.style.getPropertyValue(e),a=t.style.getPropertyPriority(e);r!==(n?.getPropertyValue(e)||``)||a!==(n?.getPropertyPriority(e)||``)?a===``?i.styleDiff[e]=r:i.styleDiff[e]=[r,a]:i._unchangedStyles[e]=[r,a]}if(n)for(let e of Array.from(n))t.style.getPropertyValue(e)===``&&(i.styleDiff[e]=!1)}break}case`childList`:if(GL(e.target,this.blockClass,this.blockSelector,this.unblockSelector,!0))return;e.addedNodes.forEach(t=>this.genAdds(t,e.target)),e.removedNodes.forEach(t=>{let n=this.mirror.getId(t),r=tL(e.target)?this.mirror.getId(e.target.host):this.mirror.getId(e.target);GL(e.target,this.blockClass,this.blockSelector,this.unblockSelector,!1)||KL(t,this.mirror)||!uIe(t,this.mirror)||(this.addedSet.has(t)?(_R(this.addedSet,t),this.droppedSet.add(t)):this.addedSet.has(e.target)&&n===-1||qL(e.target,this.mirror)||(this.movedSet.has(t)&&this.movedMap[gR(n,r)]?_R(this.movedSet,t):this.removes.push({parentId:r,id:n,isShadow:tL(e.target)&&nL(e.target)?!0:void 0})),this.mapRemoves.push(t))})}},this.genAdds=(e,t)=>{if(!this.processedNodeManager.inOtherBuffer(e,this)&&!(this.addedSet.has(e)||this.movedSet.has(e))){if(this.mirror.hasNode(e)){if(KL(e,this.mirror))return;this.movedSet.add(e);let n=null;t&&this.mirror.hasNode(t)&&(n=this.mirror.getId(t)),n&&n!==-1&&(this.movedMap[gR(this.mirror.getId(e),n)]=!0)}else this.addedSet.add(e),this.droppedSet.delete(e);GL(e,this.blockClass,this.blockSelector,this.unblockSelector,!1)||(e.childNodes&&e.childNodes.forEach(e=>this.genAdds(e)),ZL(e)&&e.shadowRoot.childNodes.forEach(t=>{this.processedNodeManager.add(t,this),this.genAdds(t,e)}))}}}init(e){`mutationCb.blockClass.blockSelector.unblockSelector.maskAllText.maskTextClass.unmaskTextClass.maskTextSelector.unmaskTextSelector.inlineStylesheet.maskInputOptions.maskAttributeFn.maskTextFn.maskInputFn.keepIframeSrcFn.recordCanvas.inlineImages.slimDOMOptions.dataURLOptions.doc.mirror.iframeManager.stylesheetManager.shadowDomManager.canvasManager.processedNodeManager.ignoreCSSAttributes`.split(`.`).forEach(t=>{this[t]=e[t]}),this.styleDeclarationParser=new bIe(this.doc)}freeze(){this.frozen=!0,this.canvasManager.freeze()}unfreeze(){this.frozen=!1,this.canvasManager.unfreeze(),this.emit()}isFrozen(){return this.frozen}lock(){this.locked=!0,this.canvasManager.lock()}unlock(){this.locked=!1,this.canvasManager.unlock(),this.emit()}reset(){this.shadowDomManager.reset(),this.canvasManager.reset()}};function _R(e,t){e.delete(t),t.childNodes?.forEach(t=>_R(e,t))}function vR(e,t,n){return e.length!==0&&CIe(e,t,n)}function CIe(e,t,n){let r=t.parentNode;for(;r;){let t=n.getId(r);if(e.some(e=>e.id===t))return!0;r=r.parentNode}return!1}function yR(e,t){return e.size!==0&&bR(e,t)}function bR(e,t){let{parentNode:n}=t;return n?e.has(n)?!0:bR(e,n):!1}var xR=[];function SR(e){try{if(`composedPath`in e){let t=e.composedPath();if(t.length)return t[0]}else if(`path`in e&&e.path.length)return e.path[0]}catch{}return e&&e.target}function CR(e,t){let n=new SIe;xR.push(n),n.init(e);let r=window.MutationObserver||window.__rrMutationObserver,i=window?.Zone?.__symbol__?.(`MutationObserver`);i&&window[i]&&(r=window[i]);let a=new r(lR(t=>{e.onMutation&&e.onMutation(t)===!1||n.processMutations.bind(n)(t)}));return a.observe(t,{attributes:!0,attributeOldValue:!0,characterData:!0,characterDataOldValue:!0,childList:!0,subtree:!0}),a}function wIe({mousemoveCb:e,sampling:t,doc:n,mirror:r}){if(t.mousemove===!1)return()=>{};let i=typeof t.mousemove==`number`?t.mousemove:50,a=typeof t.mousemoveCallback==`number`?t.mousemoveCallback:500,o=[],s,c=LL(lR(t=>{let n=Date.now()-s;e(o.map(e=>(e.timeOffset-=n,e)),t),o=[],s=null}),a),l=lR(LL(lR(e=>{let t=SR(e),{clientX:n,clientY:i}=JL(e)?e.changedTouches[0]:e;s||=BL(),o.push({x:n,y:i,id:r.getId(t),timeOffset:BL()-s}),c(typeof DragEvent<`u`&&e instanceof DragEvent?iR.Drag:e instanceof MouseEvent?iR.MouseMove:iR.TouchMove)}),i,{trailing:!1})),u=[PL(`mousemove`,l,n),PL(`touchmove`,l,n),PL(`drag`,l,n)];return lR(()=>{u.forEach(e=>e())})}function TIe({mouseInteractionCb:e,doc:t,mirror:n,blockClass:r,blockSelector:i,unblockSelector:a,sampling:o}){if(o.mouseInteraction===!1)return()=>{};let s=o.mouseInteraction===!0||o.mouseInteraction===void 0?{}:o.mouseInteraction,c=[],l=null,u=t=>o=>{let s=SR(o);if(GL(s,r,i,a,!0))return;let c=null,u=t;if(`pointerType`in o){switch(o.pointerType){case`mouse`:c=oR.Mouse;break;case`touch`:c=oR.Touch;break;case`pen`:c=oR.Pen}c===oR.Touch?aR[t]===aR.MouseDown?u=`TouchStart`:aR[t]===aR.MouseUp&&(u=`TouchEnd`):oR.Pen}else JL(o)&&(c=oR.Touch);c===null?aR[t]===aR.Click&&(c=l,l=null):(l=c,(u.startsWith(`Touch`)&&c===oR.Touch||u.startsWith(`Mouse`)&&c===oR.Mouse)&&(c=null));let d=JL(o)?o.changedTouches[0]:o;if(!d)return;let f=n.getId(s),{clientX:p,clientY:m}=d;lR(e)({type:aR[u],id:f,x:p,y:m,...c!==null&&{pointerType:c}})};return Object.keys(aR).filter(e=>Number.isNaN(Number(e))&&!e.endsWith(`_Departed`)&&s[e]!==!1).forEach(e=>{let n=cL(e),r=u(e);if(window.PointerEvent)switch(aR[e]){case aR.MouseDown:case aR.MouseUp:n=n.replace(`mouse`,`pointer`);break;case aR.TouchStart:case aR.TouchEnd:return}c.push(PL(n,r,t))}),lR(()=>{c.forEach(e=>e())})}function wR({scrollCb:e,doc:t,mirror:n,blockClass:r,blockSelector:i,unblockSelector:a,sampling:o}){return PL(`scroll`,lR(LL(lR(o=>{let s=SR(o);if(!s||GL(s,r,i,a,!0))return;let c=n.getId(s);if(s===t&&t.defaultView){let n=VL(t.defaultView);e({id:c,x:n.left,y:n.top})}else e({id:c,x:s.scrollLeft,y:s.scrollTop})}),o.scroll||100)),t)}function EIe({viewportResizeCb:e},{win:t}){let n=-1,r=-1;return PL(`resize`,lR(LL(lR(()=>{let t=HL(),i=UL();(n!==t||r!==i)&&(e({width:Number(i),height:Number(t)}),n=t,r=i)}),200)),t)}var DIe=[`INPUT`,`TEXTAREA`,`SELECT`],TR=new WeakMap;function OIe({inputCb:e,doc:t,mirror:n,blockClass:r,blockSelector:i,unblockSelector:a,ignoreClass:o,ignoreSelector:s,maskInputOptions:c,maskInputFn:l,sampling:u,userTriggeredOnInput:d,maskTextClass:f,unmaskTextClass:p,maskTextSelector:m,unmaskTextSelector:h}){function g(e){let n=SR(e),u=e.isTrusted,g=n&&lL(n.tagName);if(g===`OPTION`&&(n=n.parentElement),!n||!g||DIe.indexOf(g)<0||GL(n,r,i,a,!0))return;let v=n;if(v.classList.contains(o)||s&&v.matches(s))return;let y=dL(n),b=fL(v,g,y),x=!1,S=oL({maskInputOptions:c,tagName:g,type:y}),C=jL(n,f,m,p,h,S);(y===`radio`||y===`checkbox`)&&(x=n.checked),b=sL({isMasked:C,element:n,value:b,maskInputFn:l}),_(n,d?{text:b,isChecked:x,userTriggered:u}:{text:b,isChecked:x});let w=n.name;y===`radio`&&w&&x&&t.querySelectorAll(`input[type="radio"][name="${w}"]`).forEach(e=>{if(e!==n){let t=sL({isMasked:C,element:e,value:fL(e,g,y),maskInputFn:l});_(e,d?{text:t,isChecked:!x,userTriggered:!1}:{text:t,isChecked:!x})}})}function _(t,r){let i=TR.get(t);if(!i||i.text!==r.text||i.isChecked!==r.isChecked){TR.set(t,r);let i=n.getId(t);lR(e)({...r,id:i})}}let v=(u.input===`last`?[`change`]:[`input`,`change`]).map(e=>PL(e,lR(g),t)),y=t.defaultView;if(!y)return()=>{v.forEach(e=>e())};let b=y.Object.getOwnPropertyDescriptor(y.HTMLInputElement.prototype,`value`),x=[[y.HTMLInputElement.prototype,`value`],[y.HTMLInputElement.prototype,`checked`],[y.HTMLSelectElement.prototype,`value`],[y.HTMLTextAreaElement.prototype,`value`],[y.HTMLSelectElement.prototype,`selectedIndex`],[y.HTMLOptionElement.prototype,`selected`]];return b&&b.set&&v.push(...x.map(e=>RL(e[0],e[1],{set(){lR(g)({target:this,isTrusted:!1})}},!1,y))),lR(()=>{v.forEach(e=>e())})}function ER(e){let t=[];function n(e,t){if(kR(`CSSGroupingRule`)&&e.parentRule instanceof CSSGroupingRule||kR(`CSSMediaRule`)&&e.parentRule instanceof CSSMediaRule||kR(`CSSSupportsRule`)&&e.parentRule instanceof CSSSupportsRule||kR(`CSSConditionRule`)&&e.parentRule instanceof CSSConditionRule){let n=Array.from(e.parentRule.cssRules).indexOf(e);t.unshift(n)}else if(e.parentStyleSheet){let n=Array.from(e.parentStyleSheet.cssRules).indexOf(e);t.unshift(n)}return t}return n(e,t)}function DR(e,t,n){let r,i;return e?(e.ownerNode?r=t.getId(e.ownerNode):i=n.getId(e),{styleId:i,id:r}):{}}function kIe({styleSheetRuleCb:e,mirror:t,stylesheetManager:n},{win:r}){if(!r.CSSStyleSheet||!r.CSSStyleSheet.prototype)return()=>{};let i=r.CSSStyleSheet.prototype.insertRule;r.CSSStyleSheet.prototype.insertRule=new Proxy(i,{apply:lR((r,i,a)=>{let[o,s]=a,{id:c,styleId:l}=DR(i,t,n.styleMirror);return(c&&c!==-1||l&&l!==-1)&&e({id:c,styleId:l,adds:[{rule:o,index:s}]}),r.apply(i,a)})});let a=r.CSSStyleSheet.prototype.deleteRule;r.CSSStyleSheet.prototype.deleteRule=new Proxy(a,{apply:lR((r,i,a)=>{let[o]=a,{id:s,styleId:c}=DR(i,t,n.styleMirror);return(s&&s!==-1||c&&c!==-1)&&e({id:s,styleId:c,removes:[{index:o}]}),r.apply(i,a)})});let o;r.CSSStyleSheet.prototype.replace&&(o=r.CSSStyleSheet.prototype.replace,r.CSSStyleSheet.prototype.replace=new Proxy(o,{apply:lR((r,i,a)=>{let[o]=a,{id:s,styleId:c}=DR(i,t,n.styleMirror);return(s&&s!==-1||c&&c!==-1)&&e({id:s,styleId:c,replace:o}),r.apply(i,a)})}));let s;r.CSSStyleSheet.prototype.replaceSync&&(s=r.CSSStyleSheet.prototype.replaceSync,r.CSSStyleSheet.prototype.replaceSync=new Proxy(s,{apply:lR((r,i,a)=>{let[o]=a,{id:s,styleId:c}=DR(i,t,n.styleMirror);return(s&&s!==-1||c&&c!==-1)&&e({id:s,styleId:c,replaceSync:o}),r.apply(i,a)})}));let c={};AR(`CSSGroupingRule`)?c.CSSGroupingRule=r.CSSGroupingRule:(AR(`CSSMediaRule`)&&(c.CSSMediaRule=r.CSSMediaRule),AR(`CSSConditionRule`)&&(c.CSSConditionRule=r.CSSConditionRule),AR(`CSSSupportsRule`)&&(c.CSSSupportsRule=r.CSSSupportsRule));let l={};return Object.entries(c).forEach(([r,i])=>{l[r]={insertRule:i.prototype.insertRule,deleteRule:i.prototype.deleteRule},i.prototype.insertRule=new Proxy(l[r].insertRule,{apply:lR((r,i,a)=>{let[o,s]=a,{id:c,styleId:l}=DR(i.parentStyleSheet,t,n.styleMirror);return(c&&c!==-1||l&&l!==-1)&&e({id:c,styleId:l,adds:[{rule:o,index:[...ER(i),s||0]}]}),r.apply(i,a)})}),i.prototype.deleteRule=new Proxy(l[r].deleteRule,{apply:lR((r,i,a)=>{let[o]=a,{id:s,styleId:c}=DR(i.parentStyleSheet,t,n.styleMirror);return(s&&s!==-1||c&&c!==-1)&&e({id:s,styleId:c,removes:[{index:[...ER(i),o]}]}),r.apply(i,a)})})}),lR(()=>{r.CSSStyleSheet.prototype.insertRule=i,r.CSSStyleSheet.prototype.deleteRule=a,o&&(r.CSSStyleSheet.prototype.replace=o),s&&(r.CSSStyleSheet.prototype.replaceSync=s),Object.entries(c).forEach(([e,t])=>{t.prototype.insertRule=l[e].insertRule,t.prototype.deleteRule=l[e].deleteRule})})}function OR({mirror:e,stylesheetManager:t},n){let r=null;r=n.nodeName===`#document`?e.getId(n):e.getId(n.host);let i=n.nodeName===`#document`?n.defaultView?.Document:n.ownerDocument?.defaultView?.ShadowRoot,a=i?.prototype?Object.getOwnPropertyDescriptor(i?.prototype,`adoptedStyleSheets`):void 0;return r===null||r===-1||!i||!a?()=>{}:(Object.defineProperty(n,"adoptedStyleSheets",{configurable:a.configurable,enumerable:a.enumerable,get(){return a.get?.call(this)},set(e){let n=a.set?.call(this,e);if(r!==null&&r!==-1)try{t.adoptStyleSheets(e,r)}catch{}return n}}),lR(()=>{Object.defineProperty(n,"adoptedStyleSheets",{configurable:a.configurable,enumerable:a.enumerable,get:a.get,set:a.set})}))}function AIe({styleDeclarationCb:e,mirror:t,ignoreCSSAttributes:n,stylesheetManager:r},{win:i}){let a=i.CSSStyleDeclaration.prototype.setProperty;i.CSSStyleDeclaration.prototype.setProperty=new Proxy(a,{apply:lR((i,o,s)=>{let[c,l,u]=s;if(n.has(c))return a.apply(o,[c,l,u]);let{id:d,styleId:f}=DR(o.parentRule?.parentStyleSheet,t,r.styleMirror);return(d&&d!==-1||f&&f!==-1)&&e({id:d,styleId:f,set:{property:c,value:l,priority:u},index:ER(o.parentRule)}),i.apply(o,s)})});let o=i.CSSStyleDeclaration.prototype.removeProperty;return i.CSSStyleDeclaration.prototype.removeProperty=new Proxy(o,{apply:lR((i,a,s)=>{let[c]=s;if(n.has(c))return o.apply(a,[c]);let{id:l,styleId:u}=DR(a.parentRule?.parentStyleSheet,t,r.styleMirror);return(l&&l!==-1||u&&u!==-1)&&e({id:l,styleId:u,remove:{property:c},index:ER(a.parentRule)}),i.apply(a,s)})}),lR(()=>{i.CSSStyleDeclaration.prototype.setProperty=a,i.CSSStyleDeclaration.prototype.removeProperty=o})}function jIe({mediaInteractionCb:e,blockClass:t,blockSelector:n,unblockSelector:r,mirror:i,sampling:a,doc:o}){let s=lR(o=>LL(lR(a=>{let s=SR(a);if(!s||GL(s,t,n,r,!0))return;let{currentTime:c,volume:l,muted:u,playbackRate:d}=s;e({type:o,id:i.getId(s),currentTime:c,volume:l,muted:u,playbackRate:d})}),a.media||500)),c=[PL(`play`,s(sR.Play),o),PL(`pause`,s(sR.Pause),o),PL(`seeked`,s(sR.Seeked),o),PL(`volumechange`,s(sR.VolumeChange),o),PL(`ratechange`,s(sR.RateChange),o)];return lR(()=>{c.forEach(e=>e())})}function MIe({fontCb:e,doc:t}){let n=t.defaultView;if(!n)return()=>{};let r=[],i=new WeakMap,a=n.FontFace;n.FontFace=function(e,t,n){let r=new a(e,t,n);return i.set(r,{family:e,buffer:typeof t!=`string`,descriptors:n,fontSource:typeof t==`string`?t:JSON.stringify(Array.from(new Uint8Array(t)))}),r};let o=zL(t.fonts,`add`,function(t){return function(n){return nR(lR(()=>{let t=i.get(n);t&&(e(t),i.delete(n))}),0),t.apply(this,[n])}});return r.push(()=>{n.FontFace=a}),r.push(o),lR(()=>{r.forEach(e=>e())})}function NIe(e){let{doc:t,mirror:n,blockClass:r,blockSelector:i,unblockSelector:a,selectionCb:o}=e,s=!0,c=lR(()=>{let e=t.getSelection();if(!e||s&&e?.isCollapsed)return;s=e.isCollapsed||!1;let c=[],l=e.rangeCount||0;for(let t=0;t<l;t++){let{startContainer:o,startOffset:s,endContainer:l,endOffset:u}=e.getRangeAt(t);GL(o,r,i,a,!0)||GL(l,r,i,a,!0)||c.push({start:n.getId(o),startOffset:s,end:n.getId(l),endOffset:u})}o({ranges:c})});return c(),PL(`selectionchange`,c)}function PIe({doc:e,customElementCb:t}){let n=e.defaultView;return!n||!n.customElements?()=>{}:zL(n.customElements,`define`,function(e){return function(n,r,i){try{t({define:{name:n}})}catch{}return e.apply(this,[n,r,i])}})}function FIe(e,t={}){let n=e.doc.defaultView;if(!n)return()=>{};let r;e.recordDOM&&(r=CR(e,e.doc));let i=wIe(e),a=TIe(e),o=wR(e),s=EIe(e,{win:n}),c=OIe(e),l=jIe(e),u=()=>{},d=()=>{},f=()=>{},p=()=>{};e.recordDOM&&(u=kIe(e,{win:n}),d=OR(e,e.doc),f=AIe(e,{win:n}),e.collectFonts&&(p=MIe(e)));let m=NIe(e),h=PIe(e),g=[];for(let t of e.plugins)g.push(t.observer(t.callback,n,t.options));return lR(()=>{xR.forEach(e=>e.reset()),r?.disconnect(),i(),a(),o(),s(),c(),l(),u(),d(),f(),p(),m(),h(),g.forEach(e=>e())})}function kR(e){return window[e]!==void 0}function AR(e){return!!(window[e]!==void 0&&window[e].prototype&&`insertRule`in window[e].prototype&&`deleteRule`in window[e].prototype)}var jR=class{constructor(e){this.generateIdFn=e,this.iframeIdToRemoteIdMap=new WeakMap,this.iframeRemoteIdToIdMap=new WeakMap}getId(e,t,n,r){let i=n||this.getIdToRemoteIdMap(e),a=r||this.getRemoteIdToIdMap(e),o=i.get(t);return o||(o=this.generateIdFn(),i.set(t,o),a.set(o,t)),o}getIds(e,t){let n=this.getIdToRemoteIdMap(e),r=this.getRemoteIdToIdMap(e);return t.map(t=>this.getId(e,t,n,r))}getRemoteId(e,t,n){let r=n||this.getRemoteIdToIdMap(e);return typeof t==`number`?r.get(t)||-1:t}getRemoteIds(e,t){let n=this.getRemoteIdToIdMap(e);return t.map(t=>this.getRemoteId(e,t,n))}reset(e){if(!e){this.iframeIdToRemoteIdMap=new WeakMap,this.iframeRemoteIdToIdMap=new WeakMap;return}this.iframeIdToRemoteIdMap.delete(e),this.iframeRemoteIdToIdMap.delete(e)}getIdToRemoteIdMap(e){let t=this.iframeIdToRemoteIdMap.get(e);return t||(t=new Map,this.iframeIdToRemoteIdMap.set(e,t)),t}getRemoteIdToIdMap(e){let t=this.iframeRemoteIdToIdMap.get(e);return t||(t=new Map,this.iframeRemoteIdToIdMap.set(e,t)),t}},IIe=class{constructor(){this.crossOriginIframeMirror=new jR(bL),this.crossOriginIframeRootIdMap=new WeakMap}addIframe(){}addLoadListener(){}attachIframe(){}},LIe=class{constructor(e){this.iframes=new WeakMap,this.crossOriginIframeMap=new WeakMap,this.crossOriginIframeMirror=new jR(bL),this.crossOriginIframeRootIdMap=new WeakMap,this.mutationCb=e.mutationCb,this.wrappedEmit=e.wrappedEmit,this.stylesheetManager=e.stylesheetManager,this.recordCrossOriginIframes=e.recordCrossOriginIframes,this.crossOriginIframeStyleMirror=new jR(this.stylesheetManager.styleMirror.generateId.bind(this.stylesheetManager.styleMirror)),this.mirror=e.mirror,this.recordCrossOriginIframes&&window.addEventListener(`message`,this.handleMessage.bind(this))}addIframe(e){this.iframes.set(e,!0);let t=mR(e);t&&this.crossOriginIframeMap.set(t,e)}addLoadListener(e){this.loadListener=e}attachIframe(e,t){this.mutationCb({adds:[{parentId:this.mirror.getId(e),nextId:null,node:t}],removes:[],texts:[],attributes:[],isAttachIframe:!0}),this.recordCrossOriginIframes&&mR(e)?.addEventListener(`message`,this.handleMessage.bind(this)),this.loadListener?.(e);let n=pR(e);n&&n.adoptedStyleSheets&&n.adoptedStyleSheets.length>0&&this.stylesheetManager.adoptStyleSheets(n.adoptedStyleSheets,this.mirror.getId(n))}handleMessage(e){let t=e;if(t.data.type!==`rrweb`||t.origin!==t.data.origin||!e.source)return;let n=this.crossOriginIframeMap.get(e.source);if(!n)return;let r=this.transformCrossOriginEvent(n,t.data.event);r&&this.wrappedEmit(r,t.data.isCheckout)}transformCrossOriginEvent(e,t){switch(t.type){case rR.FullSnapshot:{this.crossOriginIframeMirror.reset(e),this.crossOriginIframeStyleMirror.reset(e),this.replaceIdOnNode(t.data.node,e);let n=t.data.node.id;return this.crossOriginIframeRootIdMap.set(e,n),this.patchRootIdOnNode(t.data.node,n),{timestamp:t.timestamp,type:rR.IncrementalSnapshot,data:{source:iR.Mutation,adds:[{parentId:this.mirror.getId(e),nextId:null,node:t.data.node}],removes:[],texts:[],attributes:[],isAttachIframe:!0}}}case rR.Meta:case rR.Load:case rR.DomContentLoaded:return!1;case rR.Plugin:return t;case rR.Custom:return this.replaceIds(t.data.payload,e,[`id`,`parentId`,`previousId`,`nextId`]),t;case rR.IncrementalSnapshot:switch(t.data.source){case iR.Mutation:return t.data.adds.forEach(t=>{this.replaceIds(t,e,[`parentId`,`nextId`,`previousId`]),this.replaceIdOnNode(t.node,e);let n=this.crossOriginIframeRootIdMap.get(e);n&&this.patchRootIdOnNode(t.node,n)}),t.data.removes.forEach(t=>{this.replaceIds(t,e,[`parentId`,`id`])}),t.data.attributes.forEach(t=>{this.replaceIds(t,e,[`id`])}),t.data.texts.forEach(t=>{this.replaceIds(t,e,[`id`])}),t;case iR.Drag:case iR.TouchMove:case iR.MouseMove:return t.data.positions.forEach(t=>{this.replaceIds(t,e,[`id`])}),t;case iR.ViewportResize:return!1;case iR.MediaInteraction:case iR.MouseInteraction:case iR.Scroll:case iR.CanvasMutation:case iR.Input:return this.replaceIds(t.data,e,[`id`]),t;case iR.StyleSheetRule:case iR.StyleDeclaration:return this.replaceIds(t.data,e,[`id`]),this.replaceStyleIds(t.data,e,[`styleId`]),t;case iR.Font:return t;case iR.Selection:return t.data.ranges.forEach(t=>{this.replaceIds(t,e,[`start`,`end`])}),t;case iR.AdoptedStyleSheet:return this.replaceIds(t.data,e,[`id`]),this.replaceStyleIds(t.data,e,[`styleIds`]),t.data.styles?.forEach(t=>{this.replaceStyleIds(t,e,[`styleId`])}),t}}return!1}replace(e,t,n,r){for(let i of r)!Array.isArray(t[i])&&typeof t[i]!=`number`||(t[i]=Array.isArray(t[i])?e.getIds(n,t[i]):e.getId(n,t[i]));return t}replaceIds(e,t,n){return this.replace(this.crossOriginIframeMirror,e,t,n)}replaceStyleIds(e,t,n){return this.replace(this.crossOriginIframeStyleMirror,e,t,n)}replaceIdOnNode(e,t){this.replaceIds(e,t,[`id`,`rootId`]),`childNodes`in e&&e.childNodes.forEach(e=>{this.replaceIdOnNode(e,t)})}patchRootIdOnNode(e,t){e.type!==eL.Document&&!e.rootId&&(e.rootId=t),`childNodes`in e&&e.childNodes.forEach(e=>{this.patchRootIdOnNode(e,t)})}},RIe=class{init(){}addShadowRoot(){}observeAttachShadow(){}reset(){}},zIe=class{constructor(e){this.shadowDoms=new WeakSet,this.restoreHandlers=[],this.mutationCb=e.mutationCb,this.scrollCb=e.scrollCb,this.bypassOptions=e.bypassOptions,this.mirror=e.mirror,this.init()}init(){this.reset(),this.patchAttachShadow(Element,document)}addShadowRoot(e,t){if(!nL(e)||this.shadowDoms.has(e))return;this.shadowDoms.add(e),this.bypassOptions.canvasManager.addShadowRoot(e);let n=CR({...this.bypassOptions,doc:t,mutationCb:this.mutationCb,mirror:this.mirror,shadowDomManager:this},e);this.restoreHandlers.push(()=>n.disconnect()),this.restoreHandlers.push(wR({...this.bypassOptions,scrollCb:this.scrollCb,doc:e,mirror:this.mirror})),nR(()=>{e.adoptedStyleSheets&&e.adoptedStyleSheets.length>0&&this.bypassOptions.stylesheetManager.adoptStyleSheets(e.adoptedStyleSheets,this.mirror.getId(e.host)),this.restoreHandlers.push(OR({mirror:this.mirror,stylesheetManager:this.bypassOptions.stylesheetManager},e))},0)}observeAttachShadow(e){let t=pR(e),n=mR(e);!t||!n||this.patchAttachShadow(n.Element,t)}patchAttachShadow(e,t){let n=this;this.restoreHandlers.push(zL(e.prototype,`attachShadow`,function(e){return function(r){let i=e.call(this,r);return this.shadowRoot&&$L(this)&&n.addShadowRoot(this.shadowRoot,t),i}}))}reset(){this.restoreHandlers.forEach(e=>{try{e()}catch{}}),this.restoreHandlers=[],this.shadowDoms=new WeakSet,this.bypassOptions.canvasManager.resetShadowRoots()}},BIe=class{constructor(e){this.trackedLinkElements=new WeakSet,this.styleMirror=new fIe,this.mutationCb=e.mutationCb,this.adoptedStyleSheetCb=e.adoptedStyleSheetCb}attachLinkElement(e,t){`_cssText`in t.attributes&&this.mutationCb({adds:[],removes:[],texts:[],attributes:[{id:t.id,attributes:t.attributes}]}),this.trackLinkElement(e)}trackLinkElement(e){this.trackedLinkElements.has(e)||(this.trackedLinkElements.add(e),this.trackStylesheetInLinkElement(e))}adoptStyleSheets(e,t){if(e.length===0)return;let n={id:t,styleIds:[]},r=[];for(let t of e){let e;this.styleMirror.has(t)?e=this.styleMirror.getId(t):(e=this.styleMirror.add(t),r.push({styleId:e,rules:Array.from(t.rules||CSSRule,(e,t)=>({rule:iL(e),index:t}))})),n.styleIds.push(e)}r.length>0&&(n.styles=r),this.adoptedStyleSheetCb(n)}reset(){this.styleMirror.reset(),this.trackedLinkElements=new WeakSet}trackStylesheetInLinkElement(e){}},VIe=class{constructor(){this.nodeMap=new WeakMap,this.active=!1}inOtherBuffer(e,t){let n=this.nodeMap.get(e);return n&&Array.from(n).some(e=>e!==t)}add(e,t){this.active||(this.active=!0,hIe(()=>{this.nodeMap=new WeakMap,this.active=!1})),this.nodeMap.set(e,(this.nodeMap.get(e)||new Set).add(t))}destroy(){}},MR,NR;try{if(Array.from([1],e=>e*2)[0]!==2){let e=document.createElement(`iframe`);document.body.appendChild(e),Array.from=e.contentWindow?.Array.from||Array.from,document.body.removeChild(e)}}catch(e){console.debug(`Unable to override Array.from`,e)}var PR=RFe();function FR(e={}){let{emit:t,checkoutEveryNms:n,checkoutEveryNth:r,blockClass:i=`rr-block`,blockSelector:a=null,unblockSelector:o=null,ignoreClass:s=`rr-ignore`,ignoreSelector:c=null,maskAllText:l=!1,maskTextClass:u=`rr-mask`,unmaskTextClass:d=null,maskTextSelector:f=null,unmaskTextSelector:p=null,inlineStylesheet:m=!0,maskAllInputs:h,maskInputOptions:g,slimDOMOptions:_,maskAttributeFn:v,maskInputFn:y,maskTextFn:b,maxCanvasSize:x=null,packFn:S,sampling:C={},dataURLOptions:w={},mousemoveWait:T,recordDOM:E=!0,recordCanvas:ee=!1,recordCrossOriginIframes:te=!1,recordAfter:ne=e.recordAfter===`DOMContentLoaded`?e.recordAfter:`load`,userTriggeredOnInput:re=!1,collectFonts:ie=!1,inlineImages:ae=!1,plugins:oe,keepIframeSrcFn:D=()=>!1,ignoreCSSAttributes:se=new Set([]),errorHandler:ce,onMutation:le,getCanvasManager:ue}=e;_Ie(ce);let de=!te||window.parent===window,fe=!1;if(!de)try{window.parent.document&&(fe=!1)}catch{fe=!0}if(de&&!t)throw Error(`emit function is required`);if(!de&&!fe)return()=>{};T!==void 0&&C.mousemove===void 0&&(C.mousemove=T),PR.reset();let pe=h===!0?{color:!0,date:!0,"datetime-local":!0,email:!0,month:!0,number:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!0,radio:!0,checkbox:!0}:g===void 0?{}:g,me=_===!0||_===`all`?{script:!0,comment:!0,headFavicon:!0,headWhitespace:!0,headMetaSocial:!0,headMetaRobots:!0,headMetaHttpEquiv:!0,headMetaVerification:!0,headMetaAuthorship:_===`all`,headMetaDescKeywords:_===`all`}:_||{};dIe();let he,ge=0,_e=e=>{for(let t of oe||[])t.eventProcessor&&(e=t.eventProcessor(e));return S&&!fe&&(e=S(e)),e};MR=(e,i)=>{let a=e;if(a.timestamp=BL(),xR[0]?.isFrozen()&&a.type!==rR.FullSnapshot&&(a.type!==rR.IncrementalSnapshot||a.data.source!==iR.Mutation)&&xR.forEach(e=>e.unfreeze()),de)t?.(_e(a),i);else if(fe){let e={type:`rrweb`,event:_e(a),origin:window.location.origin,isCheckout:i};window.parent.postMessage(e,`*`)}if(a.type===rR.FullSnapshot)he=a,ge=0;else if(a.type===rR.IncrementalSnapshot){if(a.data.source===iR.Mutation&&a.data.isAttachIframe)return;ge++;let e=r&&ge>=r,t=n&&he&&a.timestamp-he.timestamp>n;(e||t)&&Ee(!0)}};let ve=e=>{MR({type:rR.IncrementalSnapshot,data:{source:iR.Mutation,...e}})},ye=e=>MR({type:rR.IncrementalSnapshot,data:{source:iR.Scroll,...e}}),be=e=>MR({type:rR.IncrementalSnapshot,data:{source:iR.CanvasMutation,...e}}),xe=new BIe({mutationCb:ve,adoptedStyleSheetCb:e=>MR({type:rR.IncrementalSnapshot,data:{source:iR.AdoptedStyleSheet,...e}})}),Se=typeof __RRWEB_EXCLUDE_IFRAME__==`boolean`&&__RRWEB_EXCLUDE_IFRAME__?new IIe:new LIe({mirror:PR,mutationCb:ve,stylesheetManager:xe,recordCrossOriginIframes:te,wrappedEmit:MR});for(let e of oe||[])e.getMirror&&e.getMirror({nodeMirror:PR,crossOriginIframeMirror:Se.crossOriginIframeMirror,crossOriginIframeStyleMirror:Se.crossOriginIframeStyleMirror});let Ce=new VIe,we=UIe(ue,{mirror:PR,win:window,mutationCb:e=>MR({type:rR.IncrementalSnapshot,data:{source:iR.CanvasMutation,...e}}),recordCanvas:ee,blockClass:i,blockSelector:a,unblockSelector:o,maxCanvasSize:x,sampling:C.canvas,dataURLOptions:w,errorHandler:ce}),Te=typeof __RRWEB_EXCLUDE_SHADOW_DOM__==`boolean`&&__RRWEB_EXCLUDE_SHADOW_DOM__?new RIe:new zIe({mutationCb:ve,scrollCb:ye,bypassOptions:{onMutation:le,blockClass:i,blockSelector:a,unblockSelector:o,maskAllText:l,maskTextClass:u,unmaskTextClass:d,maskTextSelector:f,unmaskTextSelector:p,inlineStylesheet:m,maskInputOptions:pe,dataURLOptions:w,maskAttributeFn:v,maskTextFn:b,maskInputFn:y,recordCanvas:ee,inlineImages:ae,sampling:C,slimDOMOptions:me,iframeManager:Se,stylesheetManager:xe,canvasManager:we,keepIframeSrcFn:D,processedNodeManager:Ce,ignoreCSSAttributes:se},mirror:PR}),Ee=(e=!1)=>{if(!E)return;MR({type:rR.Meta,data:{href:window.location.href,width:UL(),height:HL()}},e),xe.reset(),Te.init(),xR.forEach(e=>e.lock());let t=lIe(document,{mirror:PR,blockClass:i,blockSelector:a,unblockSelector:o,maskAllText:l,maskTextClass:u,unmaskTextClass:d,maskTextSelector:f,unmaskTextSelector:p,inlineStylesheet:m,maskAllInputs:pe,maskAttributeFn:v,maskInputFn:y,maskTextFn:b,slimDOM:me,dataURLOptions:w,recordCanvas:ee,inlineImages:ae,onSerialize:e=>{YL(e,PR)&&Se.addIframe(e),XL(e,PR)&&xe.trackLinkElement(e),ZL(e)&&Te.addShadowRoot(e.shadowRoot,document)},onIframeLoad:(e,t)=>{Se.attachIframe(e,t);let n=mR(e);n&&we.addWindow(n),Te.observeAttachShadow(e)},onStylesheetLoad:(e,t)=>{xe.attachLinkElement(e,t)},onBlockedImageLoad:(e,t,{width:n,height:r})=>{ve({adds:[],removes:[],texts:[],attributes:[{id:t.id,attributes:{style:{width:`${n}px`,height:`${r}px`}}}]})},keepIframeSrcFn:D,ignoreCSSAttributes:se});if(!t)return console.warn(`Failed to snapshot the document`);MR({type:rR.FullSnapshot,data:{node:t,initialOffset:VL(window)}}),xR.forEach(e=>e.unlock()),document.adoptedStyleSheets&&document.adoptedStyleSheets.length>0&&xe.adoptStyleSheets(document.adoptedStyleSheets,PR.getId(document))};NR=Ee;try{let e=[],t=e=>lR(FIe)({onMutation:le,mutationCb:ve,mousemoveCb:(e,t)=>MR({type:rR.IncrementalSnapshot,data:{source:t,positions:e}}),mouseInteractionCb:e=>MR({type:rR.IncrementalSnapshot,data:{source:iR.MouseInteraction,...e}}),scrollCb:ye,viewportResizeCb:e=>MR({type:rR.IncrementalSnapshot,data:{source:iR.ViewportResize,...e}}),inputCb:e=>MR({type:rR.IncrementalSnapshot,data:{source:iR.Input,...e}}),mediaInteractionCb:e=>MR({type:rR.IncrementalSnapshot,data:{source:iR.MediaInteraction,...e}}),styleSheetRuleCb:e=>MR({type:rR.IncrementalSnapshot,data:{source:iR.StyleSheetRule,...e}}),styleDeclarationCb:e=>MR({type:rR.IncrementalSnapshot,data:{source:iR.StyleDeclaration,...e}}),canvasMutationCb:be,fontCb:e=>MR({type:rR.IncrementalSnapshot,data:{source:iR.Font,...e}}),selectionCb:e=>{MR({type:rR.IncrementalSnapshot,data:{source:iR.Selection,...e}})},customElementCb:e=>{MR({type:rR.IncrementalSnapshot,data:{source:iR.CustomElement,...e}})},blockClass:i,ignoreClass:s,ignoreSelector:c,maskAllText:l,maskTextClass:u,unmaskTextClass:d,maskTextSelector:f,unmaskTextSelector:p,maskInputOptions:pe,inlineStylesheet:m,sampling:C,recordDOM:E,recordCanvas:ee,inlineImages:ae,userTriggeredOnInput:re,collectFonts:ie,doc:e,maskAttributeFn:v,maskInputFn:y,maskTextFn:b,keepIframeSrcFn:D,blockSelector:a,unblockSelector:o,slimDOMOptions:me,dataURLOptions:w,mirror:PR,iframeManager:Se,stylesheetManager:xe,shadowDomManager:Te,processedNodeManager:Ce,canvasManager:we,ignoreCSSAttributes:se,plugins:oe?.filter(e=>e.observer)?.map(e=>({observer:e.observer,options:e.options,callback:t=>MR({type:rR.Plugin,data:{plugin:e.name,payload:t}})}))||[]},{});Se.addLoadListener(n=>{try{e.push(t(n.contentDocument))}catch(e){console.warn(e)}});let n=()=>{Ee(),e.push(t(document))};return document.readyState===`interactive`||document.readyState===`complete`?n():(e.push(PL(`DOMContentLoaded`,()=>{MR({type:rR.DomContentLoaded,data:{}}),ne===`DOMContentLoaded`&&n()})),e.push(PL(`load`,()=>{MR({type:rR.Load,data:{}}),ne===`load`&&n()},window))),()=>{e.forEach(e=>e()),Ce.destroy(),NR=void 0,vIe()}}catch(e){console.warn(e)}}function HIe(e){if(!NR)throw Error(`please take full snapshot after start recording`);NR(e)}FR.mirror=PR,FR.takeFullSnapshot=HIe;function UIe(e,t){try{return e?e(t):new fR}catch{return console.warn(`Unable to initialize CanvasManager`),new fR}}var WIe;(function(e){e[e.NotStarted=0]=`NotStarted`,e[e.Running=1]=`Running`,e[e.Stopped=2]=`Stopped`})(WIe||={});var GIe=3,KIe=5;function IR(e){return e>9999999999?e:e*1e3}function LR(e){return e>9999999999?e/1e3:e}function RR(e,t){t.category!==`sentry.transaction`&&([`ui.click`,`ui.input`].includes(t.category)?e.triggerUserActivity():e.checkAndHandleExpiredSession(),e.addUpdate(()=>(e.throttledAddEvent({type:rR.Custom,timestamp:(t.timestamp||0)*1e3,data:{tag:`breadcrumb`,payload:Qw(t,10,1e3)}}),t.category===`console`)))}var qIe=`button,a`;function zR(e){return e.closest(qIe)||e}function BR(e){let t=VR(e);return!t||!(t instanceof Element)?t:zR(t)}function VR(e){return JIe(e)?e.target:e}function JIe(e){return Fw(e)&&`target`in e}var HR;function YIe(e){return HR||(HR=[],XIe()),HR.push(e),()=>{let t=HR?HR.indexOf(e):-1;t>-1&&HR.splice(t,1)}}function XIe(){Bw(KI,`open`,function(e){return function(...t){if(HR)try{HR.forEach(e=>e())}catch{}return e.apply(KI,t)}})}var ZIe=new Set([iR.Mutation,iR.StyleSheetRule,iR.StyleDeclaration,iR.AdoptedStyleSheet,iR.CanvasMutation,iR.Selection,iR.MediaInteraction]);function QIe(e,t,n){e.handleClick(t,n)}var $Ie=class{constructor(e,t,n=RR){this._lastMutation=0,this._lastScroll=0,this._clicks=[],this._timeout=t.timeout/1e3,this._threshold=t.threshold/1e3,this._scrollTimeout=t.scrollTimeout/1e3,this._replay=e,this._ignoreSelector=t.ignoreSelector,this._addBreadcrumbEvent=n}addListeners(){let e=YIe(()=>{this._lastMutation=UR()});this._teardown=()=>{e(),this._clicks=[],this._lastMutation=0,this._lastScroll=0}}removeListeners(){this._teardown&&this._teardown(),this._checkClickTimeout&&clearTimeout(this._checkClickTimeout)}handleClick(e,t){if(tLe(t,this._ignoreSelector)||!nLe(e))return;let n={timestamp:LR(e.timestamp),clickBreadcrumb:e,clickCount:0,node:t};this._clicks.some(e=>e.node===n.node&&Math.abs(e.timestamp-n.timestamp)<1)||(this._clicks.push(n),this._clicks.length===1&&this._scheduleCheckClicks())}registerMutation(e=Date.now()){this._lastMutation=LR(e)}registerScroll(e=Date.now()){this._lastScroll=LR(e)}registerClick(e){let t=zR(e);this._handleMultiClick(t)}_handleMultiClick(e){this._getClicks(e).forEach(e=>{e.clickCount++})}_getClicks(e){return this._clicks.filter(t=>t.node===e)}_checkClicks(){let e=[],t=UR();this._clicks.forEach(n=>{!n.mutationAfter&&this._lastMutation&&(n.mutationAfter=n.timestamp<=this._lastMutation?this._lastMutation-n.timestamp:void 0),!n.scrollAfter&&this._lastScroll&&(n.scrollAfter=n.timestamp<=this._lastScroll?this._lastScroll-n.timestamp:void 0),n.timestamp+this._timeout<=t&&e.push(n)});for(let t of e){let e=this._clicks.indexOf(t);e>-1&&(this._generateBreadcrumbs(t),this._clicks.splice(e,1))}this._clicks.length&&this._scheduleCheckClicks()}_generateBreadcrumbs(e){let t=this._replay,n=e.scrollAfter&&e.scrollAfter<=this._scrollTimeout,r=e.mutationAfter&&e.mutationAfter<=this._threshold,i=!n&&!r,{clickCount:a,clickBreadcrumb:o}=e;if(i){let n=Math.min(e.mutationAfter||this._timeout,this._timeout)*1e3,r=n<this._timeout*1e3?`mutation`:`timeout`,i={type:`default`,message:o.message,timestamp:o.timestamp,category:`ui.slowClickDetected`,data:{...o.data,url:KI.location.href,route:t.getCurrentRoute(),timeAfterClickMs:n,endReason:r,clickCount:a||1}};this._addBreadcrumbEvent(t,i);return}if(a>1){let e={type:`default`,message:o.message,timestamp:o.timestamp,category:`ui.multiClick`,data:{...o.data,url:KI.location.href,route:t.getCurrentRoute(),clickCount:a,metric:!0}};this._addBreadcrumbEvent(t,e)}}_scheduleCheckClicks(){this._checkClickTimeout&&clearTimeout(this._checkClickTimeout),this._checkClickTimeout=lI(()=>this._checkClicks(),1e3)}},eLe=[`A`,`BUTTON`,`INPUT`];function tLe(e,t){return!!(!eLe.includes(e.tagName)||e.tagName===`INPUT`&&![`submit`,`button`].includes(e.getAttribute(`type`)||``)||e.tagName===`A`&&(e.hasAttribute(`download`)||e.hasAttribute(`target`)&&e.getAttribute(`target`)!==`_self`)||t&&e.matches(t))}function nLe(e){return!!(e.data&&typeof e.data.nodeId==`number`&&e.timestamp)}function UR(){return Date.now()/1e3}function rLe(e,t){try{if(!iLe(t))return;let{source:n}=t.data;if(ZIe.has(n)&&e.registerMutation(t.timestamp),n===iR.Scroll&&e.registerScroll(t.timestamp),aLe(t)){let{type:n,id:r}=t.data,i=FR.mirror.getNode(r);i instanceof HTMLElement&&n===aR.Click&&e.registerClick(i)}}catch{}}function iLe(e){return e.type===GIe}function aLe(e){return e.data.source===iR.MouseInteraction}function WR(e){return{timestamp:Date.now()/1e3,type:`default`,...e}}var GR=(e=>(e[e.Document=0]=`Document`,e[e.DocumentType=1]=`DocumentType`,e[e.Element=2]=`Element`,e[e.Text=3]=`Text`,e[e.CDATA=4]=`CDATA`,e[e.Comment=5]=`Comment`,e))(GR||{}),oLe=new Set([`id`,`class`,`aria-label`,`role`,`name`,`alt`,`title`,`data-test-id`,`data-testid`,`disabled`,`aria-disabled`,`data-sentry-component`]);function sLe(e){let t={};!e[`data-sentry-component`]&&e[`data-sentry-element`]&&(e[`data-sentry-component`]=e[`data-sentry-element`]);for(let n in e)if(oLe.has(n)){let r=n;(n===`data-testid`||n===`data-test-id`)&&(r=`testId`),t[r]=e[n]}return t}var cLe=e=>t=>{if(!e.isEnabled())return;let n=lLe(t);if(!n)return;let r=t.name===`click`,i=r?t.event:void 0;r&&e.clickDetector&&i?.target&&!i.altKey&&!i.metaKey&&!i.ctrlKey&&!i.shiftKey&&QIe(e.clickDetector,n,BR(t.event)),RR(e,n)};function KR(e,t){let n=FR.mirror.getId(e),r=n&&FR.mirror.getNode(n),i=r&&FR.mirror.getMeta(r),a=i&&dLe(i)?i:null;return{message:t,data:a?{nodeId:n,node:{id:n,tagName:a.tagName,textContent:Array.from(a.childNodes).map(e=>e.type===GR.Text&&e.textContent).filter(Boolean).map(e=>e.trim()).join(``),attributes:sLe(a.attributes)}}:{}}}function lLe(e){let{target:t,message:n}=uLe(e);return WR({category:`ui.${e.name}`,...KR(t,n)})}function uLe(e){let t=e.name===`click`,n,r=null;try{r=t?BR(e.event):VR(e.event),n=MF(r,{maxStringLength:200})||`<unknown>`}catch{n=`<unknown>`}return{target:r,message:n}}function dLe(e){return e.type===GR.Element}function fLe(e,t){if(!e.isEnabled())return;e.updateUserActivity();let n=pLe(t);n&&RR(e,n)}function pLe(e){let{metaKey:t,shiftKey:n,ctrlKey:r,altKey:i,key:a,target:o}=e;if(!o||mLe(o)||!a)return null;let s=t||r||i,c=a.length===1;if(!s&&c)return null;let l=MF(o,{maxStringLength:200})||`<unknown>`;return WR({category:`ui.keyDown`,message:l,data:{...KR(o,l).data,metaKey:t,shiftKey:n,ctrlKey:r,altKey:i,key:a}})}function mLe(e){return e.tagName===`INPUT`||e.tagName===`TEXTAREA`||e.isContentEditable}var hLe={resource:bLe,paint:vLe,navigation:yLe};function qR(e,t){return({metric:n})=>void t.replayPerformanceEntries.push(e(n))}function gLe(e){return e.map(_Le).filter(Boolean)}function _Le(e){let t=hLe[e.entryType];return t?t(e):null}function JR(e){return((yT()||KI.performance.timeOrigin)+e)/1e3}function vLe(e){let{duration:t,entryType:n,name:r,startTime:i}=e,a=JR(i);return{type:n,name:r,start:a,end:a+t,data:void 0}}function yLe(e){let{entryType:t,name:n,decodedBodySize:r,duration:i,domComplete:a,encodedBodySize:o,domContentLoadedEventStart:s,domContentLoadedEventEnd:c,domInteractive:l,loadEventStart:u,loadEventEnd:d,redirectCount:f,startTime:p,transferSize:m,type:h}=e;return i===0?null:{type:`${t}.${h}`,start:JR(p),end:JR(a),name:n,data:{size:m,decodedBodySize:r,encodedBodySize:o,duration:i,domInteractive:l,domContentLoadedEventStart:s,domContentLoadedEventEnd:c,loadEventStart:u,loadEventEnd:d,domComplete:a,redirectCount:f}}}function bLe(e){let{entryType:t,initiatorType:n,name:r,responseEnd:i,startTime:a,decodedBodySize:o,encodedBodySize:s,responseStatus:c,transferSize:l}=e;return[`fetch`,`xmlhttprequest`].includes(n)?null:{type:`${t}.${n}`,start:JR(a),end:JR(i),name:r,data:{size:l,statusCode:c,decodedBodySize:o,encodedBodySize:s}}}function xLe(e){let t=e.entries[e.entries.length-1];return YR(e,`largest-contentful-paint`,t?.element?[t.element]:void 0)}function SLe(e){return e.sources!==void 0}function CLe(e){let t=[],n=[];for(let r of e.entries)if(SLe(r)){let e=[];for(let t of r.sources)if(t.node){n.push(t.node);let r=FR.mirror.getId(t.node);r&&e.push(r)}t.push({value:r.value,nodeIds:e.length?e:void 0})}return YR(e,`cumulative-layout-shift`,n,t)}function wLe(e){let t=e.entries[e.entries.length-1];return YR(e,`interaction-to-next-paint`,t?.target?[t.target]:void 0)}function YR(e,t,n,r){let i=e.value,a=e.rating,o=JR(i);return{type:`web-vital`,name:t,start:o,end:o,data:{value:i,size:i,rating:a,nodeIds:n?n.map(e=>FR.mirror.getId(e)):void 0,attributions:r}}}function TLe(e){function t(t){e.performanceEntries.includes(t)||e.performanceEntries.push(t)}function n({entries:e}){e.forEach(t)}let r=[];return[`navigation`,`paint`,`resource`].forEach(e=>{r.push(TF(e,n))}),r.push(CF(qR(xLe,e)),SF(qR(CLe,e)),wF(qR(wLe,e))),()=>{r.forEach(e=>e())}}var Z=typeof __SENTRY_DEBUG__>`u`||__SENTRY_DEBUG__,ELe=`var t=Uint8Array,n=Uint16Array,r=Int32Array,e=new t([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]),i=new t([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]),s=new t([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),a=function(t,e){for(var i=new n(31),s=0;s<31;++s)i[s]=e+=1<<t[s-1];var a=new r(i[30]);for(s=1;s<30;++s)for(var o=i[s];o<i[s+1];++o)a[o]=o-i[s]<<5|s;return{b:i,r:a}},o=a(e,2),h=o.b,f=o.r;h[28]=258,f[258]=28;for(var l=a(i,0).r,u=new n(32768),c=0;c<32768;++c){var v=(43690&c)>>1|(21845&c)<<1;v=(61680&(v=(52428&v)>>2|(13107&v)<<2))>>4|(3855&v)<<4,u[c]=((65280&v)>>8|(255&v)<<8)>>1}var d=function(t,r,e){for(var i=t.length,s=0,a=new n(r);s<i;++s)t[s]&&++a[t[s]-1];var o,h=new n(r);for(s=1;s<r;++s)h[s]=h[s-1]+a[s-1]<<1;if(e){o=new n(1<<r);var f=15-r;for(s=0;s<i;++s)if(t[s])for(var l=s<<4|t[s],c=r-t[s],v=h[t[s]-1]++<<c,d=v|(1<<c)-1;v<=d;++v)o[u[v]>>f]=l}else for(o=new n(i),s=0;s<i;++s)t[s]&&(o[s]=u[h[t[s]-1]++]>>15-t[s]);return o},p=new t(288);for(c=0;c<144;++c)p[c]=8;for(c=144;c<256;++c)p[c]=9;for(c=256;c<280;++c)p[c]=7;for(c=280;c<288;++c)p[c]=8;var g=new t(32);for(c=0;c<32;++c)g[c]=5;var w=d(p,9,0),y=d(g,5,0),m=function(t){return(t+7)/8|0},b=function(n,r,e){return(null==e||e>n.length)&&(e=n.length),new t(n.subarray(r,e))},M=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],E=function(t,n,r){var e=new Error(n||M[t]);if(e.code=t,Error.captureStackTrace&&Error.captureStackTrace(e,E),!r)throw e;return e},z=function(t,n,r){r<<=7&n;var e=n/8|0;t[e]|=r,t[e+1]|=r>>8},_=function(t,n,r){r<<=7&n;var e=n/8|0;t[e]|=r,t[e+1]|=r>>8,t[e+2]|=r>>16},x=function(r,e){for(var i=[],s=0;s<r.length;++s)r[s]&&i.push({s:s,f:r[s]});var a=i.length,o=i.slice();if(!a)return{t:F,l:0};if(1==a){var h=new t(i[0].s+1);return h[i[0].s]=1,{t:h,l:1}}i.sort(function(t,n){return t.f-n.f}),i.push({s:-1,f:25001});var f=i[0],l=i[1],u=0,c=1,v=2;for(i[0]={s:-1,f:f.f+l.f,l:f,r:l};c!=a-1;)f=i[i[u].f<i[v].f?u++:v++],l=i[u!=c&&i[u].f<i[v].f?u++:v++],i[c++]={s:-1,f:f.f+l.f,l:f,r:l};var d=o[0].s;for(s=1;s<a;++s)o[s].s>d&&(d=o[s].s);var p=new n(d+1),g=A(i[c-1],p,0);if(g>e){s=0;var w=0,y=g-e,m=1<<y;for(o.sort(function(t,n){return p[n.s]-p[t.s]||t.f-n.f});s<a;++s){var b=o[s].s;if(!(p[b]>e))break;w+=m-(1<<g-p[b]),p[b]=e}for(w>>=y;w>0;){var M=o[s].s;p[M]<e?w-=1<<e-p[M]++-1:++s}for(;s>=0&&w;--s){var E=o[s].s;p[E]==e&&(--p[E],++w)}g=e}return{t:new t(p),l:g}},A=function(t,n,r){return-1==t.s?Math.max(A(t.l,n,r+1),A(t.r,n,r+1)):n[t.s]=r},D=function(t){for(var r=t.length;r&&!t[--r];);for(var e=new n(++r),i=0,s=t[0],a=1,o=function(t){e[i++]=t},h=1;h<=r;++h)if(t[h]==s&&h!=r)++a;else{if(!s&&a>2){for(;a>138;a-=138)o(32754);a>2&&(o(a>10?a-11<<5|28690:a-3<<5|12305),a=0)}else if(a>3){for(o(s),--a;a>6;a-=6)o(8304);a>2&&(o(a-3<<5|8208),a=0)}for(;a--;)o(s);a=1,s=t[h]}return{c:e.subarray(0,i),n:r}},T=function(t,n){for(var r=0,e=0;e<n.length;++e)r+=t[e]*n[e];return r},k=function(t,n,r){var e=r.length,i=m(n+2);t[i]=255&e,t[i+1]=e>>8,t[i+2]=255^t[i],t[i+3]=255^t[i+1];for(var s=0;s<e;++s)t[i+s+4]=r[s];return 8*(i+4+e)},U=function(t,r,a,o,h,f,l,u,c,v,m){z(r,m++,a),++h[256];for(var b=x(h,15),M=b.t,E=b.l,A=x(f,15),U=A.t,C=A.l,F=D(M),I=F.c,S=F.n,L=D(U),O=L.c,j=L.n,q=new n(19),B=0;B<I.length;++B)++q[31&I[B]];for(B=0;B<O.length;++B)++q[31&O[B]];for(var G=x(q,7),H=G.t,J=G.l,K=19;K>4&&!H[s[K-1]];--K);var N,P,Q,R,V=v+5<<3,W=T(h,p)+T(f,g)+l,X=T(h,M)+T(f,U)+l+14+3*K+T(q,H)+2*q[16]+3*q[17]+7*q[18];if(c>=0&&V<=W&&V<=X)return k(r,m,t.subarray(c,c+v));if(z(r,m,1+(X<W)),m+=2,X<W){N=d(M,E,0),P=M,Q=d(U,C,0),R=U;var Y=d(H,J,0);z(r,m,S-257),z(r,m+5,j-1),z(r,m+10,K-4),m+=14;for(B=0;B<K;++B)z(r,m+3*B,H[s[B]]);m+=3*K;for(var Z=[I,O],$=0;$<2;++$){var tt=Z[$];for(B=0;B<tt.length;++B){var nt=31&tt[B];z(r,m,Y[nt]),m+=H[nt],nt>15&&(z(r,m,tt[B]>>5&127),m+=tt[B]>>12)}}}else N=w,P=p,Q=y,R=g;for(B=0;B<u;++B){var rt=o[B];if(rt>255){_(r,m,N[(nt=rt>>18&31)+257]),m+=P[nt+257],nt>7&&(z(r,m,rt>>23&31),m+=e[nt]);var et=31&rt;_(r,m,Q[et]),m+=R[et],et>3&&(_(r,m,rt>>5&8191),m+=i[et])}else _(r,m,N[rt]),m+=P[rt]}return _(r,m,N[256]),m+P[256]},C=new r([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),F=new t(0),I=function(){for(var t=new Int32Array(256),n=0;n<256;++n){for(var r=n,e=9;--e;)r=(1&r&&-306674912)^r>>>1;t[n]=r}return t}(),S=function(){var t=1,n=0;return{p:function(r){for(var e=t,i=n,s=0|r.length,a=0;a!=s;){for(var o=Math.min(a+2655,s);a<o;++a)i+=e+=r[a];e=(65535&e)+15*(e>>16),i=(65535&i)+15*(i>>16)}t=e,n=i},d:function(){return(255&(t%=65521))<<24|(65280&t)<<8|(255&(n%=65521))<<8|n>>8}}},L=function(s,a,o,h,u){if(!u&&(u={l:1},a.dictionary)){var c=a.dictionary.subarray(-32768),v=new t(c.length+s.length);v.set(c),v.set(s,c.length),s=v,u.w=c.length}return function(s,a,o,h,u,c){var v=c.z||s.length,d=new t(h+v+5*(1+Math.ceil(v/7e3))+u),p=d.subarray(h,d.length-u),g=c.l,w=7&(c.r||0);if(a){w&&(p[0]=c.r>>3);for(var y=C[a-1],M=y>>13,E=8191&y,z=(1<<o)-1,_=c.p||new n(32768),x=c.h||new n(z+1),A=Math.ceil(o/3),D=2*A,T=function(t){return(s[t]^s[t+1]<<A^s[t+2]<<D)&z},F=new r(25e3),I=new n(288),S=new n(32),L=0,O=0,j=c.i||0,q=0,B=c.w||0,G=0;j+2<v;++j){var H=T(j),J=32767&j,K=x[H];if(_[J]=K,x[H]=J,B<=j){var N=v-j;if((L>7e3||q>24576)&&(N>423||!g)){w=U(s,p,0,F,I,S,O,q,G,j-G,w),q=L=O=0,G=j;for(var P=0;P<286;++P)I[P]=0;for(P=0;P<30;++P)S[P]=0}var Q=2,R=0,V=E,W=J-K&32767;if(N>2&&H==T(j-W))for(var X=Math.min(M,N)-1,Y=Math.min(32767,j),Z=Math.min(258,N);W<=Y&&--V&&J!=K;){if(s[j+Q]==s[j+Q-W]){for(var $=0;$<Z&&s[j+$]==s[j+$-W];++$);if($>Q){if(Q=$,R=W,$>X)break;var tt=Math.min(W,$-2),nt=0;for(P=0;P<tt;++P){var rt=j-W+P&32767,et=rt-_[rt]&32767;et>nt&&(nt=et,K=rt)}}}W+=(J=K)-(K=_[J])&32767}if(R){F[q++]=268435456|f[Q]<<18|l[R];var it=31&f[Q],st=31&l[R];O+=e[it]+i[st],++I[257+it],++S[st],B=j+Q,++L}else F[q++]=s[j],++I[s[j]]}}for(j=Math.max(j,B);j<v;++j)F[q++]=s[j],++I[s[j]];w=U(s,p,g,F,I,S,O,q,G,j-G,w),g||(c.r=7&w|p[w/8|0]<<3,w-=7,c.h=x,c.p=_,c.i=j,c.w=B)}else{for(j=c.w||0;j<v+g;j+=65535){var at=j+65535;at>=v&&(p[w/8|0]=g,at=v),w=k(p,w+1,s.subarray(j,at))}c.i=v}return b(d,0,h+m(w)+u)}(s,null==a.level?6:a.level,null==a.mem?u.l?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(s.length)))):20:12+a.mem,o,h,u)},O=function(t,n,r){for(;r;++n)t[n]=r,r>>>=8},j=function(){function n(n,r){if("function"==typeof n&&(r=n,n={}),this.ondata=r,this.o=n||{},this.s={l:0,i:32768,w:32768,z:32768},this.b=new t(98304),this.o.dictionary){var e=this.o.dictionary.subarray(-32768);this.b.set(e,32768-e.length),this.s.i=32768-e.length}}return n.prototype.p=function(t,n){this.ondata(L(t,this.o,0,0,this.s),n)},n.prototype.push=function(n,r){this.ondata||E(5),this.s.l&&E(4);var e=n.length+this.s.z;if(e>this.b.length){if(e>2*this.b.length-32768){var i=new t(-32768&e);i.set(this.b.subarray(0,this.s.z)),this.b=i}var s=this.b.length-this.s.z;this.b.set(n.subarray(0,s),this.s.z),this.s.z=this.b.length,this.p(this.b,!1),this.b.set(this.b.subarray(-32768)),this.b.set(n.subarray(s),32768),this.s.z=n.length-s+32768,this.s.i=32766,this.s.w=32768}else this.b.set(n,this.s.z),this.s.z+=n.length;this.s.l=1&r,(this.s.z>this.s.w+8191||r)&&(this.p(this.b,r||!1),this.s.w=this.s.i,this.s.i-=2)},n.prototype.flush=function(){this.ondata||E(5),this.s.l&&E(4),this.p(this.b,!1),this.s.w=this.s.i,this.s.i-=2},n}();function q(t,n){n||(n={});var r=function(){var t=-1;return{p:function(n){for(var r=t,e=0;e<n.length;++e)r=I[255&r^n[e]]^r>>>8;t=r},d:function(){return~t}}}(),e=t.length;r.p(t);var i,s=L(t,n,10+((i=n).filename?i.filename.length+1:0),8),a=s.length;return function(t,n){var r=n.filename;if(t[0]=31,t[1]=139,t[2]=8,t[8]=n.level<2?4:9==n.level?2:0,t[9]=3,0!=n.mtime&&O(t,4,Math.floor(new Date(n.mtime||Date.now())/1e3)),r){t[3]=8;for(var e=0;e<=r.length;++e)t[e+10]=r.charCodeAt(e)}}(s,n),O(s,a-8,r.d()),O(s,a-4,e),s}var B=function(){function t(t,n){this.c=S(),this.v=1,j.call(this,t,n)}return t.prototype.push=function(t,n){this.c.p(t),j.prototype.push.call(this,t,n)},t.prototype.p=function(t,n){var r=L(t,this.o,this.v&&(this.o.dictionary?6:2),n&&4,this.s);this.v&&(function(t,n){var r=n.level,e=0==r?0:r<6?1:9==r?3:2;if(t[0]=120,t[1]=e<<6|(n.dictionary&&32),t[1]|=31-(t[0]<<8|t[1])%31,n.dictionary){var i=S();i.p(n.dictionary),O(t,2,i.d())}}(r,this.o),this.v=0),n&&O(r,r.length-4,this.c.d()),this.ondata(r,n)},t.prototype.flush=function(){j.prototype.flush.call(this)},t}(),G="undefined"!=typeof TextEncoder&&new TextEncoder,H="undefined"!=typeof TextDecoder&&new TextDecoder;try{H.decode(F,{stream:!0})}catch(t){}var J=function(){function t(t){this.ondata=t}return t.prototype.push=function(t,n){this.ondata||E(5),this.d&&E(4),this.ondata(K(t),this.d=n||!1)},t}();function K(n,r){if(G)return G.encode(n);for(var e=n.length,i=new t(n.length+(n.length>>1)),s=0,a=function(t){i[s++]=t},o=0;o<e;++o){if(s+5>i.length){var h=new t(s+8+(e-o<<1));h.set(i),i=h}var f=n.charCodeAt(o);f<128||r?a(f):f<2048?(a(192|f>>6),a(128|63&f)):f>55295&&f<57344?(a(240|(f=65536+(1047552&f)|1023&n.charCodeAt(++o))>>18),a(128|f>>12&63),a(128|f>>6&63),a(128|63&f)):(a(224|f>>12),a(128|f>>6&63),a(128|63&f))}return b(i,0,s)}const N=new class{constructor(){this._init()}clear(){this._init()}addEvent(t){if(!t)throw new Error("Adding invalid event");const n=this._hasEvents?",":"";this.stream.push(n+t),this._hasEvents=!0}finish(){this.stream.push("]",!0);const t=function(t){let n=0;for(const r of t)n+=r.length;const r=new Uint8Array(n);for(let n=0,e=0,i=t.length;n<i;n++){const i=t[n];r.set(i,e),e+=i.length}return r}(this._deflatedData);return this._init(),t}_init(){this._hasEvents=!1,this._deflatedData=[],this.deflate=new B,this.deflate.ondata=(t,n)=>{this._deflatedData.push(t)},this.stream=new J((t,n)=>{this.deflate.push(t,n)}),this.stream.push("[")}},P={clear:()=>{N.clear()},addEvent:t=>N.addEvent(t),finish:()=>N.finish(),compress:t=>function(t){return q(K(t))}(t)};addEventListener("message",function(t){const n=t.data.method,r=t.data.id,e=t.data.arg;if(n in P&&"function"==typeof P[n])try{const t=P[n](e);postMessage({id:r,method:n,success:!0,response:t})}catch(t){postMessage({id:r,method:n,success:!1,response:t.message}),console.error(t)}}),postMessage({id:void 0,method:"init",success:!0,response:void 0});`;function DLe(){let e=new Blob([ELe]);return URL.createObjectURL(e)}var XR=[`log`,`warn`,`error`],ZR=`[Replay] `;function QR(e,t=`info`){Ek({category:`console`,data:{logger:`replay`},level:t,message:`${ZR}${e}`},{level:t})}function OLe(){let e=!1,t=!1,n={exception:()=>void 0,infoTick:()=>void 0,setConfig:n=>{e=!!n.captureExceptions,t=!!n.traceInternals}};return Z?(XR.forEach(e=>{n[e]=(...n)=>{K[e](ZR,...n),t&&QR(n.join(``),Gk(e))}}),n.exception=(r,...i)=>{i.length&&n.error&&n.error(...i),K.error(ZR,r),e?cO(r,{mechanism:{handled:!0,type:`auto.function.replay.debug`}}):t&&QR(r,`error`)},n.infoTick=(...e)=>{K.log(ZR,...e),t&&setTimeout(()=>QR(e[0]),0)}):XR.forEach(e=>{n[e]=()=>void 0}),n}var $R=OLe(),ez=class extends Error{constructor(){super(`Event buffer exceeded maximum size of ${ZI}.`)}},tz=class{constructor(){this.events=[],this._totalSize=0,this.hasCheckout=!1,this.waitForCheckout=!1}get hasEvents(){return this.events.length>0}get type(){return`sync`}destroy(){this.events=[]}async addEvent(e){let t=JSON.stringify(e).length;if(this._totalSize+=t,this._totalSize>ZI)throw new ez;this.events.push(e)}finish(){return new Promise(e=>{let t=this.events;this.clear(),e(JSON.stringify(t))})}clear(){this.events=[],this._totalSize=0,this.hasCheckout=!1}getEarliestTimestamp(){let e=null;for(let{timestamp:t}of this.events)(e===null||t<e)&&(e=t);return e===null?e:IR(e)}},kLe=class{constructor(e){this._onMessage=({data:e})=>{let t=e;if(typeof t.id!=`number`)return;let n=this._pending.get(t.id);if(!(!n||n.method!==t.method)){if(this._pending.delete(t.id),!t.success){Z&&$R.error(`Error in compression worker: `,t.response),n.reject(Error(`Error in compression worker`));return}n.resolve(t.response)}},this._worker=e,this._id=0,this._pending=new Map,this._worker.addEventListener(`message`,this._onMessage)}ensureReady(){return this._ensureReadyPromise||=new Promise((e,t)=>{this._worker.addEventListener(`message`,({data:n})=>{n.success?e():(Z&&$R.warn(`Received worker message with unsuccessful status`,n),t(Error(`Received worker message with unsuccessful status`)))},{once:!0}),this._worker.addEventListener(`error`,e=>{Z&&$R.warn(`Failed to load Replay compression worker`,e),t(Error(`Failed to load Replay compression worker: ${e instanceof ErrorEvent&&e.message?e.message:`Unknown error. This can happen due to CSP policy restrictions, network issues, or the worker script failing to load.`}`))},{once:!0})}),this._ensureReadyPromise}destroy(){Z&&$R.log(`Destroying compression worker`),this._worker.removeEventListener(`message`,this._onMessage),this._pending.forEach(e=>e.reject(Error(`Worker destroyed`))),this._pending.clear(),this._worker.terminate()}postMessage(e,t){let n=this._getAndIncrementId();return new Promise((r,i)=>{this._pending.set(n,{method:e,resolve:r,reject:i});try{this._worker.postMessage({id:n,method:e,arg:t})}catch(e){this._pending.delete(n),i(e)}})}_getAndIncrementId(){return this._id++}},ALe=class{constructor(e){this._worker=new kLe(e),this._earliestTimestamp=null,this._totalSize=0,this.hasCheckout=!1,this.waitForCheckout=!1}get hasEvents(){return!!this._earliestTimestamp}get type(){return`worker`}ensureReady(){return this._worker.ensureReady()}destroy(){this._worker.destroy()}addEvent(e){let t=IR(e.timestamp);(!this._earliestTimestamp||t<this._earliestTimestamp)&&(this._earliestTimestamp=t);let n=JSON.stringify(e);return this._totalSize+=n.length,this._totalSize>ZI?Promise.reject(new ez):this._sendEventToWorker(n)}finish(){return this._finishRequest()}clear(){this._earliestTimestamp=null,this._totalSize=0,this.hasCheckout=!1,this._worker.postMessage(`clear`).then(null,e=>{Z&&$R.exception(e,`Sending "clear" message to worker failed`,e)})}getEarliestTimestamp(){return this._earliestTimestamp}_sendEventToWorker(e){return this._worker.postMessage(`addEvent`,e)}async _finishRequest(){let e=await this._worker.postMessage(`finish`);return this._earliestTimestamp=null,this._totalSize=0,e}},jLe=class{constructor(e){this._fallback=new tz,this._compression=new ALe(e),this._used=this._fallback,this._ensureWorkerIsLoadedPromise=this._ensureWorkerIsLoaded()}get waitForCheckout(){return this._used.waitForCheckout}get type(){return this._used.type}get hasEvents(){return this._used.hasEvents}get hasCheckout(){return this._used.hasCheckout}set hasCheckout(e){this._used.hasCheckout=e}set waitForCheckout(e){this._used.waitForCheckout=e}destroy(){this._fallback.destroy(),this._compression.destroy()}clear(){return this._used.clear()}getEarliestTimestamp(){return this._used.getEarliestTimestamp()}addEvent(e){return this._used.addEvent(e)}async finish(){return await this.ensureWorkerIsLoaded(),this._used.finish()}ensureWorkerIsLoaded(){return this._ensureWorkerIsLoadedPromise}async _ensureWorkerIsLoaded(){try{await this._compression.ensureReady()}catch(e){Z&&$R.exception(e,`Failed to load the compression worker, falling back to simple buffer`);return}await this._switchToCompressionWorker()}async _switchToCompressionWorker(){let{events:e,hasCheckout:t,waitForCheckout:n}=this._fallback,r=[];for(let t of e)r.push(this._compression.addEvent(t));this._compression.hasCheckout=t,this._compression.waitForCheckout=n,this._used=this._compression;try{await Promise.all(r),this._fallback.clear()}catch(e){Z&&$R.exception(e,`Failed to add events when switching buffers.`)}}};function MLe({useCompression:e,workerUrl:t}){if(e&&window.Worker){let e=NLe(t);if(e)return e}return Z&&$R.log(`Using simple buffer`),new tz}function NLe(e){try{let t=e||PLe();return t?(Z&&$R.log(`Using compression worker${e?` from ${e}`:``}`),new jLe(new Worker(t))):void 0}catch(e){Z&&$R.exception(e,`Failed to create compression worker`)}}function PLe(){return typeof __SENTRY_EXCLUDE_REPLAY_WORKER__>`u`||!__SENTRY_EXCLUDE_REPLAY_WORKER__?DLe():``}function nz(){try{return`sessionStorage`in KI&&!!KI.sessionStorage}catch{return!1}}function FLe(e){ILe(),e.session=void 0}function ILe(){if(nz())try{KI.sessionStorage.removeItem(qI)}catch{}}function rz(e){return e!==void 0&&Math.random()<e}function iz(e){if(nz())try{KI.sessionStorage.setItem(qI,JSON.stringify(e))}catch{}}function az(e){let t=Date.now();return{id:e.id||lT(),started:e.started||t,lastActivity:e.lastActivity||t,segmentId:e.segmentId||0,sampled:e.sampled,previousSessionId:e.previousSessionId,dirty:e.dirty||!1}}function LLe(e,t){return rz(e)?`session`:t?`buffer`:!1}function oz({sessionSampleRate:e,allowBuffering:t,stickySession:n=!1},{previousSessionId:r}={}){let i=az({sampled:LLe(e,t),previousSessionId:r});return n&&iz(i),i}function RLe(){if(!nz())return null;try{let e=KI.sessionStorage.getItem(qI);if(!e)return null;let t=JSON.parse(e);return Z&&$R.infoTick(`Loading existing session`),az(t)}catch{return null}}function sz(e,t,n=+new Date){return e===null||t===void 0||t<0||t!==0&&e+t<=n}function zLe(e,{maxReplayDuration:t,sessionIdleExpire:n,targetTime:r=Date.now()}){return sz(e.started,t,r)||sz(e.lastActivity,n,r)}function cz(e,{sessionIdleExpire:t,maxReplayDuration:n}){return!(!zLe(e,{sessionIdleExpire:t,maxReplayDuration:n})||e.sampled===`buffer`&&e.segmentId===0)}function lz({sessionIdleExpire:e,maxReplayDuration:t,previousSessionId:n},r){let i=r.stickySession&&RLe();return i?cz(i,{sessionIdleExpire:e,maxReplayDuration:t})?(Z&&$R.infoTick(`Session in sessionStorage is expired, creating new one...`),oz(r,{previousSessionId:i.id})):i:(Z&&$R.infoTick(`Creating new session`),oz(r,{previousSessionId:n}))}function BLe(e){return e.type===rR.Custom}function uz(e,t,n){return fz(e,t)?(dz(e,t,n),!0):!1}function VLe(e,t,n){return fz(e,t)?dz(e,t,n):Promise.resolve(null)}async function dz(e,t,n){let{eventBuffer:r}=e;if(!r||r.waitForCheckout&&!n)return null;let i=e.recordingMode===`buffer`;try{n&&i&&r.clear(),n&&(r.hasCheckout=!0,r.waitForCheckout=!1);let a=HLe(t,e.getOptions().beforeAddRecordingEvent);return a?await r.addEvent(a):void 0}catch(t){if(!e.isEnabled())return e.handleException(t),null;let n=t&&t instanceof ez,a=n?`eventBufferOverflow`:`eventBufferError`,o=J();if(o){let e=n?`buffer_overflow`:`internal_sdk_error`;o.recordDroppedEvent(e,`replay`)}if(n&&i)return r.clear(),r.waitForCheckout=!0,null;e.handleException(t),await e.stop({reason:a})}}function fz(e,t){if(!e.eventBuffer||e.isPaused()||!e.isEnabled())return!1;let n=IR(t.timestamp);return n+e.timeouts.sessionIdlePause<Date.now()?!1:n>e.getContext().initialTimestamp+e.getOptions().maxReplayDuration?(Z&&$R.infoTick(`Skipping event with timestamp ${n} because it is after maxReplayDuration`),!1):!0}function HLe(e,t){try{if(typeof t==`function`&&BLe(e))return t(e)}catch(e){return Z&&$R.exception(e,"An error occurred in the `beforeAddRecordingEvent` callback, skipping the event..."),null}return e}var pz=100;function mz(e,t,n){let r=e.getContext();t&&r.traceIds.size<pz&&r.traceIds.add(t),n&&r.segmentNames.size<pz&&r.segmentNames.add(n)}function ULe(e){return t=>{e.isEnabled()&&mz(e,t.trace_id,t.name||void 0)}}function hz(e){return!e.type}function gz(e){return e.type===`transaction`}function WLe(e){return e.type===`replay_event`}function _z(e){return e.type===`feedback`}function GLe(e){return(t,n)=>{if(!e.isEnabled()||!hz(t)&&!gz(t))return;let r=n.statusCode;if(!(!r||r<200||r>=300)){if(gz(t)){KLe(e,t);return}qLe(e,t)}}}function KLe(e,t){mz(e,t.contexts?.trace?.trace_id,t.transaction)}function qLe(e,t){let n=e.getContext();if(t.event_id&&n.errorIds.size<100&&n.errorIds.add(t.event_id),e.recordingMode!==`buffer`||!t.tags?.replayId)return;let{beforeErrorSampling:r}=e.getOptions();typeof r==`function`&&!r(t)||lI(async()=>{try{await e.sendBufferedReplayOrFlush()}catch(t){e.handleException(t)}})}function JLe(e){return t=>{!e.isEnabled()||!hz(t)||YLe(e,t)}}function YLe(e,t){let n=t.exception?.values?.[0]?.value;typeof n==`string`&&(n.match(/(reactjs\.org\/docs\/error-decoder\.html\?invariant=|react\.dev\/errors\/)(418|419|422|423|425)/)||n.match(/(does not match server-rendered HTML|Hydration failed because)/i))&&RR(e,WR({category:`replay.hydrate-error`,data:{url:bM()}}))}function XLe(e){let t=J();t&&t.on(`beforeAddBreadcrumb`,t=>ZLe(e,t))}function ZLe(e,t){if(!e.isEnabled()||!vz(t))return;let n=QLe(t);n&&RR(e,n)}function QLe(e){return!vz(e)||[`fetch`,`xhr`,`sentry.event`,`sentry.transaction`].includes(e.category)||e.category.startsWith(`ui.`)?null:e.category===`console`?$Le(e):WR(e)}function $Le(e){let t=e.data?.arguments;if(!Array.isArray(t)||t.length===0)return WR(e);let n=!1,r=t.map(e=>{if(!e)return e;if(typeof e==`string`)return e.length>XI?(n=!0,`${e.slice(0,XI)}\u2026`):e;if(typeof e==`object`)try{let t=Qw(e,7);return JSON.stringify(t).length>XI?(n=!0,`${JSON.stringify(t,null,2).slice(0,XI)}\u2026`):t}catch{}return e});return WR({...e,data:{...e.data,arguments:r,...n?{_meta:{warnings:[`CONSOLE_ARG_TRUNCATED`]}}:{}}})}function vz(e){return!!e.category}function eRe(e,t){return e.type||!e.exception?.values?.length?!1:!!t.originalException?.__rrweb__}function yz(){let e=q().getPropagationContext().dsc;e&&delete e.replay_id;let t=UE();if(t){let e=rD(t);delete e.replay_id}}function bz(e){let t=q().getPropagationContext().dsc;t&&(t.replay_id=e);let n=UE();if(n){let t=rD(n);t.replay_id=e}}function tRe(e,t){e.triggerUserActivity(),e.addUpdate(()=>!t.timestamp||(e.throttledAddEvent({type:rR.Custom,timestamp:t.timestamp*1e3,data:{tag:`breadcrumb`,payload:{timestamp:t.timestamp,type:`default`,category:`sentry.feedback`,data:{feedbackId:t.event_id}}}}),!1))}function nRe(e,t){return e.recordingMode!==`buffer`||t.message===JI||!t.exception||t.type?!1:rz(e.getOptions().errorSampleRate)}function rRe(e){return Object.assign((t,n)=>{if(e.session&&cz(e.session,{maxReplayDuration:e.getOptions().maxReplayDuration,sessionIdleExpire:e.timeouts.sessionIdleExpire})&&yz(),!e.isEnabled()||e.isPaused())return t;if(WLe(t))return delete t.breadcrumbs,t;if(!hz(t)&&!gz(t)&&!_z(t))return t;if(!e.checkAndHandleExpiredSession())return yz(),t;if(_z(t))return e.flush(),t.contexts.feedback.replay_id=e.getSessionId(),tRe(e,t),t;if(eRe(t,n)&&!e.getOptions()._experiments.captureExceptions)return Z&&$R.log(`Ignoring error from rrweb internals`,t),null;let r=nRe(e,t);if((r||e.recordingMode===`session`)&&(t.tags={...t.tags,replayId:e.getSessionId()}),r&&e.recordingMode===`buffer`&&e.session?.sampled===`buffer`){let t=e.session;t.dirty=!0,e.getOptions().stickySession&&iz(t)}return t},{id:`Replay`})}function xz(e,t){return t.map(({type:t,start:n,end:r,name:i,data:a})=>{let o=e.throttledAddEvent({type:rR.Custom,timestamp:n,data:{tag:`performanceSpan`,payload:{op:t,description:i,startTimestamp:n,endTimestamp:r,data:a}}});return typeof o==`string`?Promise.resolve(null):o})}function iRe(e){let{from:t,to:n}=e,r=Date.now()/1e3;return{type:`navigation.push`,start:r,end:r,name:n,data:{previous:t}}}function aRe(e){return t=>{if(!e.isEnabled())return;let n=iRe(t);n!==null&&(e.getContext().urls.push(n.name),e.triggerUserActivity(),e.addUpdate(()=>(xz(e,[n]),!1)))}}function oRe(e,t){return Z&&e.getOptions()._experiments.traceInternals?!1:Sk(t,J())}function Sz(e,t){e.isEnabled()&&t!==null&&(oRe(e,t.name)||e.addUpdate(()=>(xz(e,[t]),!0)))}function Cz(e){if(!e)return;let t=new TextEncoder;try{if(typeof e==`string`)return t.encode(e).length;if(e instanceof URLSearchParams)return t.encode(e.toString()).length;if(e instanceof FormData){let n=fI(e);return t.encode(n).length}if(e instanceof Blob)return e.size;if(e instanceof ArrayBuffer)return e.byteLength}catch{}}function wz(e){if(!e)return;let t=parseInt(e,10);return isNaN(t)?void 0:t}function Tz(e,t){if(!e)return{headers:{},size:void 0,_meta:{warnings:[t]}};let n={...e._meta};return n.warnings=[...n.warnings||[],t],e._meta=n,e}function Ez(e,t){if(!t)return null;let{startTimestamp:n,endTimestamp:r,url:i,method:a,statusCode:o,request:s,response:c}=t;return{type:e,start:n/1e3,end:r/1e3,name:i,data:{method:a,statusCode:o,request:s,response:c}}}function Dz(e){return{headers:{},size:e,_meta:{warnings:[`URL_SKIPPED`]}}}function Oz(e,t,n){if(!t&&Object.keys(e).length===0)return;if(!t)return{headers:e};if(!n)return{headers:e,size:t};let r={headers:e,size:t},{body:i,warnings:a}=sRe(n);return r.body=i,a?.length&&(r._meta={warnings:a}),r}function kz(e,t){return Object.entries(e).reduce((n,[r,i])=>{let a=r.toLowerCase();return t.includes(a)&&e[r]&&(n[a]=i),n},{})}function sRe(e){if(!e||typeof e!=`string`)return{body:e};let t=e.length>YI,n=cRe(e);if(t){let t=e.slice(0,YI);return n?{body:t,warnings:[`MAYBE_JSON_TRUNCATED`]}:{body:`${t}\u2026`,warnings:[`TEXT_TRUNCATED`]}}if(n)try{return{body:JSON.parse(e)}}catch{}return{body:e}}function cRe(e){let t=e[0],n=e[e.length-1];return t===`[`&&n===`]`||t===`{`&&n===`}`}function Az(e,t){return sT(lRe(e),t)}function lRe(e,t=KI.document.baseURI){if(e.startsWith(`http://`)||e.startsWith(`https://`)||e.startsWith(KI.location.origin))return e;let n=new URL(e,t);if(n.origin!==new URL(t).origin)return e;let r=n.href;return!e.endsWith(`/`)&&r.endsWith(`/`)?r.slice(0,-1):r}async function uRe(e,t,n){try{let r=Ez(`resource.fetch`,await fRe(e,t,n));Sz(n.replay,r)}catch(e){Z&&$R.exception(e,`Failed to capture fetch breadcrumb`)}}function dRe(e,t){let{input:n,response:r}=t,i=Cz(n?mI(n):void 0),a=r?wz(r.headers.get(`content-length`)):void 0;i!==void 0&&(e.data.request_body_size=i),a!==void 0&&(e.data.response_body_size=a)}async function fRe(e,t,n){let r=Date.now(),{startTimestamp:i=r,endTimestamp:a=r}=t,{url:o,method:s,status_code:c=0,request_body_size:l,response_body_size:u}=e.data,d=Az(o,n.networkDetailAllowUrls)&&!Az(o,n.networkDetailDenyUrls);return{startTimestamp:i,endTimestamp:a,url:o,method:s,statusCode:c,request:d?pRe(n,t.input,l):Dz(l),response:await mRe(d,n,t.response,u)}}function pRe({networkCaptureBodies:e,networkRequestHeaders:t},n,r){let i=n?_Re(n,t):{};if(!e)return Oz(i,r,void 0);let[a,o]=pI(mI(n),$R),s=Oz(i,r,a);return o?Tz(s,o):s}async function mRe(e,{networkCaptureBodies:t,networkResponseHeaders:n},r,i){if(!e&&i!==void 0)return Dz(i);let a=r?jz(r.headers,n):{};if(!r||!t&&i!==void 0)return Oz(a,i,void 0);let[o,s]=await gRe(r),c=hRe(o,{networkCaptureBodies:t,responseBodySize:i,captureDetails:e,headers:a});return s?Tz(c,s):c}function hRe(e,{networkCaptureBodies:t,responseBodySize:n,captureDetails:r,headers:i}){try{let a=e?.length&&n===void 0?Cz(e):n;return r?t?Oz(i,a,e):Oz(i,a,void 0):Dz(a)}catch(e){return Z&&$R.exception(e,`Failed to serialize response body`),Oz(i,n,void 0)}}async function gRe(e){let t=vRe(e);if(!t)return[void 0,`BODY_PARSE_ERROR`];try{return[await yRe(t)]}catch(e){return e instanceof Error&&e.message.indexOf(`Timeout`)>-1?(Z&&$R.warn(`Parsing text body from response timed out`),[void 0,`BODY_PARSE_TIMEOUT`]):(Z&&$R.exception(e,`Failed to get text body from response`),[void 0,`BODY_PARSE_ERROR`])}}function jz(e,t){let n={};return t.forEach(t=>{e.get(t)&&(n[t]=e.get(t))}),n}function _Re(e,t){return e.length===1&&typeof e[0]!=`string`?Mz(e[0],t):e.length===2?Mz(e[1],t):{}}function Mz(e,t){if(!e)return{};let n=e.headers;return n?n instanceof Headers?jz(n,t):Array.isArray(n)?{}:kz(n,t):{}}function vRe(e){try{return e.clone()}catch(e){Z&&$R.exception(e,`Failed to clone response body`)}}function yRe(e){return new Promise((t,n)=>{let r=lI(()=>n(Error(`Timeout while trying to read response body`)),500);bRe(e).then(e=>t(e),e=>n(e)).finally(()=>clearTimeout(r))})}async function bRe(e){return await e.text()}async function xRe(e,t,n){try{let r=Ez(`resource.xhr`,CRe(e,t,n));Sz(n.replay,r)}catch(e){Z&&$R.exception(e,`Failed to capture xhr breadcrumb`)}}function SRe(e,t){let{xhr:n,input:r}=t;if(!n)return;let i=Cz(r),a=n.getResponseHeader(`content-length`)?wz(n.getResponseHeader(`content-length`)):ERe(n.response,n.responseType);i!==void 0&&(e.data.request_body_size=i),a!==void 0&&(e.data.response_body_size=a)}function CRe(e,t,n){let r=Date.now(),{startTimestamp:i=r,endTimestamp:a=r,input:o,xhr:s}=t,{url:c,method:l,status_code:u=0,request_body_size:d,response_body_size:f}=e.data;if(!c)return null;if(!s||!Az(c,n.networkDetailAllowUrls)||Az(c,n.networkDetailDenyUrls))return{startTimestamp:i,endTimestamp:a,url:c,method:l,statusCode:u,request:Dz(d),response:Dz(f)};let p=s[uI],m=p?kz(p.request_headers,n.networkRequestHeaders):{},h=kz(hI(s),n.networkResponseHeaders),[g,_]=n.networkCaptureBodies?pI(o,$R):[void 0],[v,y]=n.networkCaptureBodies?wRe(s):[void 0],b=Oz(m,d,g),x=Oz(h,f,v);return{startTimestamp:i,endTimestamp:a,url:c,method:l,statusCode:u,request:_?Tz(b,_):b,response:y?Tz(x,y):x}}function wRe(e){let t=[];try{return[e.responseText]}catch(e){t.push(e)}try{return TRe(e.response,e.responseType)}catch(e){t.push(e)}return Z&&$R.warn(`Failed to get xhr response body`,...t),[void 0]}function TRe(e,t){try{if(typeof e==`string`)return[e];if(e instanceof Document)return[e.body.outerHTML];if(t===`json`&&Fw(e))return[JSON.stringify(e)];if(!e)return[void 0]}catch(t){return Z&&$R.exception(t,`Failed to serialize body`,e),[void 0,`BODY_PARSE_ERROR`]}return Z&&$R.log(`Skipping network body because of body type`,e),[void 0,`UNPARSEABLE_BODY_TYPE`]}function ERe(e,t){try{return Cz(t===`json`&&Fw(e)?JSON.stringify(e):e)}catch{return}}function DRe(e){let t=J();try{let{networkDetailAllowUrls:n,networkDetailDenyUrls:r,networkCaptureBodies:i,networkRequestHeaders:a,networkResponseHeaders:o}=e.getOptions(),s={replay:e,networkDetailAllowUrls:n,networkDetailDenyUrls:r,networkCaptureBodies:i,networkRequestHeaders:a,networkResponseHeaders:o};t&&t.on(`beforeAddBreadcrumb`,(e,t)=>ORe(s,e,t))}catch{}}function ORe(e,t,n){if(t.data)try{kRe(t)&&jRe(n)&&(SRe(t,n),xRe(t,n,e)),ARe(t)&&MRe(n)&&(dRe(t,n),uRe(t,n,e))}catch(e){Z&&$R.exception(e,`Error when enriching network breadcrumb`)}}function kRe(e){return e.category===`xhr`}function ARe(e){return e.category===`fetch`}function jRe(e){return e?.xhr}function MRe(e){return e?.input!==void 0}function NRe(e){let t=J();rI(cLe(e)),oI(aRe(e)),XLe(e),DRe(e),hO(rRe(e)),t&&(t.on(`beforeSendEvent`,JLe(e)),t.on(`afterSendEvent`,GLe(e)),t.on(`createDsc`,t=>{let n=e.getSessionId();n&&e.isEnabled()&&e.recordingMode===`session`&&e.checkAndHandleExpiredSession()&&(t.replay_id=n)}),t.on(`processSegmentSpan`,ULe(e)),t.on(`spanStart`,t=>{e.lastActiveSpan=t}),t.on(`spanEnd`,t=>{e.lastActiveSpan=t}),t.on(`beforeSendFeedback`,async(t,n)=>{let r=e.getSessionId();n?.includeReplay&&e.isEnabled()&&r&&t.contexts?.feedback&&(t.contexts.feedback.source===`api`&&await e.sendBufferedReplayOrFlush(),t.contexts.feedback.replay_id=r)}),t.on(`openFeedbackWidget`,async()=>{await e.sendBufferedReplayOrFlush()}))}async function PRe(e){try{return Promise.all(xz(e,[FRe(KI.performance.memory)]))}catch{return[]}}function FRe(e){let{jsHeapSizeLimit:t,totalJSHeapSize:n,usedJSHeapSize:r}=e,i=Date.now()/1e3;return{type:`memory`,name:`memory`,start:i,end:i,data:{memory:{jsHeapSizeLimit:t,totalJSHeapSize:n,usedJSHeapSize:r}}}}function IRe(e,t,n){return VTe(e,t,{...n,setTimeoutImpl:lI})}var Nz=G.navigator;function LRe(){return/iPhone|iPad|iPod/i.test(Nz?.userAgent??``)||/Macintosh/i.test(Nz?.userAgent??``)&&Nz?.maxTouchPoints&&Nz?.maxTouchPoints>1?{sampling:{mousemove:!1}}:{}}function RRe(e){let t=!1;return(n,r)=>{try{if(!e.checkAndHandleExpiredSession()){Z&&$R.warn(`Received replay event after session expired.`);return}let i=r||!t;t=!0,zRe(n),e.clickDetector&&rLe(e.clickDetector,n),e.addUpdate(()=>{if(e.recordingMode===`buffer`&&i&&e.setInitialState(),!uz(e,n,i))return!0;if(!i)return!1;let t=e.session;if(VRe(e,i),e.recordingMode===`buffer`&&t&&e.eventBuffer&&!t.dirty){let n=e.eventBuffer.getEarliestTimestamp();n&&(Z&&$R.log(`Updating session start time to earliest event in buffer to ${new Date(n)}`),t.started=n,e.getOptions().stickySession&&iz(t))}return t?.previousSessionId||e.recordingMode===`session`&&e.flush(),!0})}catch(t){e.handleException(t)}}}function zRe(e){let t=e.data;if(!(e.type!==rR.IncrementalSnapshot||!t||typeof t!=`object`||!(`source`in t)||t.source!==iR.Mutation||!(`attributes`in t)||!Array.isArray(t.attributes)))for(let e of t.attributes){let t=FR.mirror.getNode(e.id),n=t&&FR.mirror.getMeta(t);if(n?.type===GR.Element)for(let[t,r]of Object.entries(e.attributes))r===null?delete n.attributes[t]:n.attributes[t]=r}}function BRe(e){let t=e.getOptions();return{type:rR.Custom,timestamp:Date.now(),data:{tag:`options`,payload:{shouldRecordCanvas:e.isRecordingCanvas(),sessionSampleRate:t.sessionSampleRate,errorSampleRate:t.errorSampleRate,useCompressionOption:t.useCompression,blockAllMedia:t.blockAllMedia,maskAllText:t.maskAllText,maskAllInputs:t.maskAllInputs,useCompression:e.eventBuffer?e.eventBuffer.type===`worker`:!1,networkDetailHasUrls:t.networkDetailAllowUrls.length>0,networkCaptureBodies:t.networkCaptureBodies,networkRequestHasHeaders:t.networkRequestHeaders.length>0,networkResponseHasHeaders:t.networkResponseHeaders.length>0}}}}function VRe(e,t){!t||e.session?.segmentId!==0||uz(e,BRe(e),!1)}function HRe(e){if(!e)return null;try{return e.nodeType===e.ELEMENT_NODE?e:e.parentElement}catch{return null}}function URe(e,t,n,r){return aD(pD(e,fD(e),r,n),[[{type:`replay_event`},e],[{type:`replay_recording`,length:typeof t==`string`?new TextEncoder().encode(t).length:t.length},t]])}function WRe({recordingData:e,headers:t}){let n,r=`${JSON.stringify(t)}
|
|
1001
|
+
`;if(typeof e==`string`)n=`${r}${e}`;else{let t=new TextEncoder().encode(r);n=new Uint8Array(t.length+e.length),n.set(t),n.set(e,t.length)}return n}async function GRe({client:e,scope:t,replayId:n,event:r}){let i={event_id:n,integrations:typeof e._integrations==`object`&&e._integrations!==null&&!Array.isArray(e._integrations)?Object.keys(e._integrations):void 0};e.emit(`preprocessEvent`,r,i);let a=await sO(e.getOptions(),r,i,t,e,BT());if(!a)return null;e.emit(`postprocessEvent`,a,i),a.platform=a.platform||`javascript`;let{name:o,version:s,settings:c}=e.getSdkMetadata()?.sdk||{};return a.sdk={...a.sdk,name:o||`sentry.javascript.unknown`,version:s||`0.0.0`,settings:c},a}async function KRe({recordingData:e,replayId:t,segmentId:n,eventContext:r,timestamp:i,session:a}){let o=WRe({recordingData:e,headers:{segment_id:n}}),{urls:s,errorIds:c,traceIds:l,segmentNames:u,initialTimestamp:d}=r,f=J(),p=q(),m=f?.getTransport(),h=f?.getDsn();if(!f||!m||!h||!a.sampled)return Promise.resolve({});let g=await GRe({scope:p,client:f,replayId:t,event:{type:_Fe,replay_start_timestamp:d/1e3,timestamp:i/1e3,error_ids:c,trace_ids:l,segment_names:u,urls:s,replay_id:t,segment_id:n,replay_type:a.sampled}});if(!g)return f.recordDroppedEvent(`event_processor`,`replay`),Z&&$R.log("An event processor returned `null`, will not send event."),Promise.resolve({});delete g.sdkProcessingMetadata;let _=URe(g,o,h,f.getOptions().tunnel),v;try{v=await m.send(_)}catch(e){let t=Error(JI);try{t.cause=e}catch{}throw t}let y=KO({},v);if(GO(y,`replay`))throw new Fz(y);if(typeof v.statusCode==`number`&&(v.statusCode<200||v.statusCode>=300))throw new Pz(v.statusCode);return v}var Pz=class extends Error{constructor(e){super(`Transport returned status code ${e}`)}},Fz=class extends Error{constructor(e){super(`Rate limit hit`),this.rateLimits=e}},Iz=class extends Error{constructor(){super(`Session is too long, not sending replay`)}};async function Lz(e,t={count:0,interval:CFe}){let{recordingData:n,onError:r}=e;if(n.length)try{return await KRe(e),!0}catch(n){if(n instanceof Pz||n instanceof Fz)throw n;if(dO(`Replays`,{_retryCount:t.count}),r&&r(n),t.count>=wFe){let e=Error(`${JI} - max retries exceeded`);try{e.cause=n}catch{}throw e}return t.interval*=++t.count,new Promise((n,r)=>{lI(async()=>{try{await Lz(e,t),n(!0)}catch(e){r(e)}},t.interval)})}}var Rz=`__THROTTLED`,qRe=`__SKIPPED`;function JRe(e,t,n){let r=new Map,i=e=>{let t=e-n;r.forEach((e,n)=>{n<t&&r.delete(n)})},a=()=>[...r.values()].reduce((e,t)=>e+t,0),o=!1;return(...n)=>{let s=Math.floor(Date.now()/1e3);if(i(s),a()>=t){let e=o;return o=!0,e?qRe:Rz}o=!1;let c=r.get(s)||0;return r.set(s,c+1),e(...n)}}var YRe=class{constructor({options:e,recordingOptions:t}){this.eventBuffer=null,this.performanceEntries=[],this.replayPerformanceEntries=[],this.recordingMode=`session`,this.timeouts={sessionIdlePause:vFe,sessionIdleExpire:yFe},this._lastActivity=Date.now(),this._isEnabled=!1,this._isPaused=!1,this._requiresManualStart=!1,this._hasInitializedCoreListeners=!1,this._context={errorIds:new Set,traceIds:new Set,segmentNames:new Set,urls:[],initialTimestamp:Date.now(),initialUrl:``},this._recordingOptions=t,this._options=e,this._debouncedFlush=IRe(()=>this._flush(),this._options.flushMinDelay,{maxWait:this._options.flushMaxDelay}),this._throttledAddEvent=JRe((e,t)=>VLe(this,e,t),300,5);let{slowClickTimeout:n,slowClickIgnoreSelectors:r}=this.getOptions(),i=n?{threshold:Math.min(TFe,n),timeout:n,scrollTimeout:EFe,ignoreSelector:r?r.join(`,`):``}:void 0;if(i&&(this.clickDetector=new $Ie(this,i)),Z){let t=e._experiments;$R.setConfig({captureExceptions:!!t.captureExceptions,traceInternals:!!t.traceInternals})}this._handleVisibilityChange=()=>{KI.document.visibilityState===`visible`?this._doChangeToForegroundTasks():this._doChangeToBackgroundTasks()},this._handleWindowBlur=()=>{let e=WR({category:`ui.blur`});this._doChangeToBackgroundTasks(e)},this._handleWindowFocus=()=>{let e=WR({category:`ui.focus`});this._doChangeToForegroundTasks(e)},this._handleKeyboardEvent=e=>{fLe(this,e)}}getContext(){return this._context}isEnabled(){return this._isEnabled}isPaused(){return this._isPaused}isRecordingCanvas(){return!!this._canvas}getOptions(){return this._options}handleException(e){Z&&$R.exception(e),this._options.onError&&this._options.onError(e)}initializeSampling(e){let{errorSampleRate:t,sessionSampleRate:n}=this._options,r=t<=0&&n<=0;if(this._requiresManualStart=r,!r){if(this._initializeSessionForSampling(e),!this.session){Z&&$R.exception(Error(`Unable to initialize and create session`));return}this.session.sampled!==!1&&(this.recordingMode=this.session.sampled===`buffer`&&this.session.segmentId===0?`buffer`:`session`,Z&&$R.infoTick(`Starting replay in ${this.recordingMode} mode`),this._initializeRecording())}}start(){if(this._isEnabled&&this.recordingMode===`session`){Z&&$R.log(`Recording is already in progress`);return}if(this._isEnabled&&this.recordingMode===`buffer`){Z&&$R.log("Buffering is in progress, call `flush()` to save the replay");return}Z&&$R.infoTick(`Starting replay in session mode`),this._updateUserActivity();let e=lz({maxReplayDuration:this._options.maxReplayDuration,sessionIdleExpire:this.timeouts.sessionIdleExpire},{stickySession:this._options.stickySession,sessionSampleRate:1,allowBuffering:!1});this.session=e,this.recordingMode=`session`,this._initializeRecording()}startBuffering(){if(this._isEnabled){Z&&$R.log("Buffering is in progress, call `flush()` to save the replay");return}Z&&$R.infoTick(`Starting replay in buffer mode`);let e=lz({sessionIdleExpire:this.timeouts.sessionIdleExpire,maxReplayDuration:this._options.maxReplayDuration},{stickySession:this._options.stickySession,sessionSampleRate:0,allowBuffering:!0});this.session=e,this.recordingMode=`buffer`,this._initializeRecording()}startRecording(){try{let e=this._canvas;this._stopRecording=FR({...this._recordingOptions,...this.recordingMode===`buffer`?{checkoutEveryNms:SFe}:this._options._experiments.continuousCheckout&&{checkoutEveryNms:Math.max(36e4,this._options._experiments.continuousCheckout)},emit:RRe(this),...LRe(),onMutation:this._onMutationHandler.bind(this),...e?{recordCanvas:e.recordCanvas,getCanvasManager:e.getCanvasManager,sampling:e.sampling,dataURLOptions:e.dataURLOptions}:{}})}catch(e){this.handleException(e)}}stopRecording(){try{return this._stopRecording&&=(this._stopRecording(),void 0),!0}catch(e){return this.handleException(e),!1}}async stop({forceFlush:e=!1,reason:t}={}){if(!this._isEnabled)return;this._isEnabled=!1,this.recordingMode=`buffer`;let n=t??`manual`;J()?.emit(`replayEnd`,{sessionId:this.session?.id,reason:n});try{Z&&$R.log(`Stopping Replay triggered by ${n}`),yz(),this._removeListeners(),this.stopRecording(),this._debouncedFlush.cancel(),e&&await this._flush({force:!0}),this.eventBuffer?.destroy(),this.eventBuffer=null,FLe(this)}catch(e){this.handleException(e)}}pause(){this._isPaused||(this._isPaused=!0,this.stopRecording(),Z&&$R.log(`Pausing replay`))}resume(){!this._isPaused||!this._checkSession()||(this._isPaused=!1,this.startRecording(),Z&&$R.log(`Resuming replay`))}async sendBufferedReplayOrFlush({continueRecording:e=!0}={}){if(this.recordingMode===`session`)return this.flushImmediate();let t=Date.now();Z&&$R.log(`Converting buffer to session`),await this.flushImmediate();let n=this.stopRecording();!e||!n||this.recordingMode!==`session`&&(this.recordingMode=`session`,this.session&&(this.session.dirty=!1,this._updateUserActivity(t),this._updateSessionActivity(t),this._maybeSaveSession(),bz(this.session.id)),this.startRecording())}addUpdate(e){let t=e();this.recordingMode===`buffer`||!this._isEnabled||t!==!0&&this._debouncedFlush()}triggerUserActivity(){if(this._updateUserActivity(),!this._stopRecording){if(!this._checkSession())return;this.resume();return}this.checkAndHandleExpiredSession(),this._updateSessionActivity()}updateUserActivity(){this._updateUserActivity(),this._updateSessionActivity()}conditionalFlush(){return this.recordingMode===`buffer`?Promise.resolve():this.flushImmediate()}flush(){return this._debouncedFlush()}flushImmediate(){return this._debouncedFlush(),this._debouncedFlush.flush()}cancelFlush(){this._debouncedFlush.cancel()}getSessionId(e){if(!(e&&this.session?.sampled===!1))return this.session?.id}checkAndHandleExpiredSession(){if(this._lastActivity&&sz(this._lastActivity,this.timeouts.sessionIdlePause)&&this.session?.sampled===`session`){this.pause();return}return!!this._checkSession()}setInitialState(){let e=`${KI.location.pathname}${KI.location.hash}${KI.location.search}`,t=`${KI.location.origin}${e}`;this.performanceEntries=[],this.replayPerformanceEntries=[],this._clearContext(),this._context.initialUrl=t,this._context.initialTimestamp=Date.now(),this._context.urls.push(t)}throttledAddEvent(e,t){let n=this._throttledAddEvent(e,t);if(n===Rz){let e=WR({category:`replay.throttled`});this.addUpdate(()=>!uz(this,{type:KIe,timestamp:e.timestamp||0,data:{tag:`breadcrumb`,payload:e,metric:!0}}))}return n}getCurrentRoute(){let e=this.lastActiveSpan||UE(),t=e&&VE(e),n=(t&&DE(t).data||{})[WT];if(!(!t||!n||![`route`,`custom`].includes(n)))return DE(t).description}_initializeRecording(){this.setInitialState(),this._updateSessionActivity(),this.eventBuffer=MLe({useCompression:this._options.useCompression,workerUrl:this._options.workerUrl}),this._removeListeners(),this._addListeners(),this._isEnabled=!0,this._isPaused=!1,this.session&&J()?.emit(`replayStart`,{sessionId:this.session.id,recordingMode:this.recordingMode}),this.startRecording(),this.recordingMode===`session`&&this.session&&bz(this.session.id)}_initializeSessionForSampling(e){let t=this._options.errorSampleRate>0,n=lz({sessionIdleExpire:this.timeouts.sessionIdleExpire,maxReplayDuration:this._options.maxReplayDuration,previousSessionId:e},{stickySession:this._options.stickySession,sessionSampleRate:this._options.sessionSampleRate,allowBuffering:t});this.session=n}_checkSession(){if(!this.session)return!1;let e=this.session;return!cz(e,{sessionIdleExpire:this.timeouts.sessionIdleExpire,maxReplayDuration:this._options.maxReplayDuration})||(this._refreshSession(e),!1)}async _refreshSession(e){this._isEnabled&&(await this.stop({reason:`sessionExpired`}),this.initializeSampling(e.id))}_addListeners(){try{KI.document.addEventListener(`visibilitychange`,this._handleVisibilityChange),KI.addEventListener(`blur`,this._handleWindowBlur),KI.addEventListener(`focus`,this._handleWindowFocus),KI.addEventListener(`keydown`,this._handleKeyboardEvent),this.clickDetector&&this.clickDetector.addListeners(),this._hasInitializedCoreListeners||=(NRe(this),!0)}catch(e){this.handleException(e)}this._performanceCleanupCallback=TLe(this)}_removeListeners(){try{KI.document.removeEventListener(`visibilitychange`,this._handleVisibilityChange),KI.removeEventListener(`blur`,this._handleWindowBlur),KI.removeEventListener(`focus`,this._handleWindowFocus),KI.removeEventListener(`keydown`,this._handleKeyboardEvent),this.clickDetector&&this.clickDetector.removeListeners(),this._performanceCleanupCallback&&this._performanceCleanupCallback()}catch(e){this.handleException(e)}}_doChangeToBackgroundTasks(e){if(this.session){if(cz(this.session,{maxReplayDuration:this._options.maxReplayDuration,sessionIdleExpire:this.timeouts.sessionIdleExpire})){yz();return}e&&this._createCustomBreadcrumb(e),this.conditionalFlush()}}_doChangeToForegroundTasks(e){if(this.session){if(!this.checkAndHandleExpiredSession()){Z&&$R.log(`Document has become active, but session has expired`);return}e&&this._createCustomBreadcrumb(e)}}_updateUserActivity(e=Date.now()){this._lastActivity=e}_updateSessionActivity(e=Date.now()){this.session&&(this.session.lastActivity=e,this._maybeSaveSession())}_createCustomBreadcrumb(e){this.addUpdate(()=>{this.throttledAddEvent({type:rR.Custom,timestamp:e.timestamp||0,data:{tag:`breadcrumb`,payload:e}})})}_addPerformanceEntries(){let e=gLe(this.performanceEntries).concat(this.replayPerformanceEntries);if(this.performanceEntries=[],this.replayPerformanceEntries=[],this._requiresManualStart){let t=this._context.initialTimestamp/1e3;e=e.filter(e=>e.start>=t)}return Promise.all(xz(this,e))}_clearContext(){this._context.errorIds.clear(),this._context.traceIds.clear(),this._context.segmentNames.clear(),this._context.urls=[]}_updateInitialTimestampFromEventBuffer(){let{session:e,eventBuffer:t}=this;if(!e||!t||this._requiresManualStart||e.segmentId)return;let n=t.getEarliestTimestamp();n&&n<this._context.initialTimestamp&&(this._context.initialTimestamp=n)}_popEventContext(){let e={initialTimestamp:this._context.initialTimestamp,initialUrl:this._context.initialUrl,errorIds:Array.from(this._context.errorIds),traceIds:Array.from(this._context.traceIds),segmentNames:Array.from(this._context.segmentNames),urls:this._context.urls};return this._clearContext(),e}async _runFlush(){let e=this.getSessionId();if(!this.session||!this.eventBuffer||!e){Z&&$R.error(`No session or eventBuffer found to flush.`);return}if(await this._addPerformanceEntries(),this.eventBuffer?.hasEvents&&(await PRe(this),this.eventBuffer&&e===this.getSessionId()))try{this._updateInitialTimestampFromEventBuffer();let t=Date.now();if(t-this._context.initialTimestamp>this._options.maxReplayDuration+3e4)throw new Iz;let n=this._popEventContext(),r=this.session.segmentId++;this._maybeSaveSession(),await Lz({replayId:e,recordingData:await this.eventBuffer.finish(),segmentId:r,eventContext:n,session:this.session,timestamp:t,onError:e=>this.handleException(e)})}catch(e){this.handleException(e),this.stop({reason:`sendError`});let t=J();if(t){let n;n=e instanceof Fz?`ratelimit_backoff`:e instanceof Iz?`invalid`:`send_error`,t.recordDroppedEvent(n,`replay`)}}}async _flush({force:e=!1}={}){if(!this._isEnabled&&!e)return;if(!this.checkAndHandleExpiredSession()){Z&&$R.error(`Attempting to finish replay event after session expired.`);return}if(!this.session)return;let t=this.session.started,n=Date.now()-t;this._debouncedFlush.cancel();let r=n<this._options.minReplayDuration,i=n>this._options.maxReplayDuration+5e3;if(r||i){Z&&$R.log(`Session duration (${Math.floor(n/1e3)}s) is too ${r?`short`:`long`}, not sending replay.`),r&&this._debouncedFlush();return}let a=this.eventBuffer;a&&this.session.segmentId===0&&!a.hasCheckout&&Z&&$R.log(`Flushing initial segment without checkout.`);let o=!!this._flushLock;this._flushLock||=this._runFlush();try{await this._flushLock}catch(e){this.handleException(e)}finally{this._flushLock=void 0,o&&this._debouncedFlush()}}_maybeSaveSession(){this.session&&this._options.stickySession&&iz(this.session)}_onMutationHandler(e){let{ignoreMutations:t}=this._options._experiments;if(t?.length&&e.some(e=>{let n=HRe(e.target),r=t.join(`,`);return n?.matches(r)}))return!1;let n=e.length,r=this._options.mutationLimit,i=this._options.mutationBreadcrumbLimit,a=r&&n>r;if(n>i||a){let e=WR({category:`replay.mutations`,data:{count:n,limit:a}});this._createCustomBreadcrumb(e)}return!a||(this.stop({reason:`mutationLimit`,forceFlush:this.recordingMode===`session`}),!1)}};function zz(e,t){return[...e,...t].join(`,`)}function XRe({mask:e,unmask:t,block:n,unblock:r,ignore:i}){return{maskTextSelector:zz(e,[`.sentry-mask`,`[data-sentry-mask]`]),unmaskTextSelector:zz(t,[]),blockSelector:zz(n,[`.sentry-block`,`[data-sentry-block]`,`base`,`iframe[srcdoc]:not([src])`]),unblockSelector:zz(r,[]),ignoreSelector:zz(i,[`.sentry-ignore`,`[data-sentry-ignore]`,`input[type="file"]`])}}function ZRe({el:e,key:t,maskAttributes:n,maskAllText:r,privacyOptions:i,value:a}){if(i.unmaskTextSelector&&e.matches(i.unmaskTextSelector))return a;let o=n.includes(t),s=r&&t===`value`&&e.tagName===`INPUT`&&[`submit`,`button`].includes(e.getAttribute(`type`)||``);return o||s?a.replace(/[\S]/g,`*`):a}var Bz=`img,image,svg,video,object,picture,embed,map,audio,link[rel="icon"],link[rel="apple-touch-icon"]`,QRe=[`content-length`,`content-type`,`accept`],$Re=Symbol.for(`sentry__originalRequestBody`),Vz=!1,Hz=!1;function eze(){if(typeof Request>`u`||Hz)return;let e=Request;try{let t=function(t,n){let r=new e(t,n);return n?.body!=null&&(r[$Re]=n.body),r};t.prototype=e.prototype,G.Request=t,Hz=!0}catch{}}var Uz=(e=>new tze(e)),tze=class{constructor({flushMinDelay:e=bFe,flushMaxDelay:t=xFe,minReplayDuration:n=DFe,maxReplayDuration:r=QI,stickySession:i=!0,useCompression:a=!0,workerUrl:o,_experiments:s={},maskAllText:c=!0,maskAllInputs:l=!0,blockAllMedia:u=!0,mutationBreadcrumbLimit:d=750,mutationLimit:f=1e4,slowClickTimeout:p=7e3,slowClickIgnoreSelectors:m=[],networkDetailAllowUrls:h=[],networkDetailDenyUrls:g=[],networkCaptureBodies:_=!0,networkRequestHeaders:v=[],networkResponseHeaders:y=[],mask:b=[],maskAttributes:x=[`title`,`placeholder`,`aria-label`],unmask:S=[],block:C=[],unblock:w=[],ignore:T=[],maskFn:E,beforeAddRecordingEvent:ee,beforeErrorSampling:te,onError:ne,attachRawBodyFromRequest:re=!1}={}){this.name=`Replay`;let ie=XRe({mask:b,unmask:S,block:C,unblock:w,ignore:T});if(this._recordingOptions={maskAllInputs:l,maskAllText:c,maskInputOptions:{password:!0},maskTextFn:E,maskInputFn:E,maskAttributeFn:(e,t,n)=>ZRe({maskAttributes:x,maskAllText:c,privacyOptions:ie,key:e,value:t,el:n}),...ie,slimDOMOptions:`all`,inlineStylesheet:!0,inlineImages:!1,collectFonts:!0,errorHandler:e=>{try{e.__rrweb__=!0}catch{}},recordCrossOriginIframes:!!s.recordCrossOriginIframes},this._initialOptions={flushMinDelay:e,flushMaxDelay:t,minReplayDuration:Math.min(n,OFe),maxReplayDuration:Math.min(r,QI),stickySession:i,useCompression:a,workerUrl:o,blockAllMedia:u,maskAllInputs:l,maskAllText:c,mutationBreadcrumbLimit:d,mutationLimit:f,slowClickTimeout:p,slowClickIgnoreSelectors:m,networkDetailAllowUrls:h,networkDetailDenyUrls:g,networkCaptureBodies:_,networkRequestHeaders:Wz(v),networkResponseHeaders:Wz(y),beforeAddRecordingEvent:ee,beforeErrorSampling:te,onError:ne,attachRawBodyFromRequest:re,_experiments:s},this._initialOptions.blockAllMedia&&(this._recordingOptions.blockSelector=this._recordingOptions.blockSelector?`${this._recordingOptions.blockSelector},${Bz}`:Bz,this._recordingOptions.ignoreCSSAttributes=new Set([`background-image`])),this._isInitialized&&jO())throw Error(`Multiple Sentry Session Replay instances are not supported`);this._isInitialized=!0}get _isInitialized(){return Vz}set _isInitialized(e){Vz=e}afterAllSetup(e){!jO()||this._replay||(this._initialOptions.attachRawBodyFromRequest&&eze(),this._setup(e),this._initialize(e))}start(){this._replay&&this._replay.start()}startBuffering(){this._replay&&this._replay.startBuffering()}stop(e){return this._replay?this._replay.stop({forceFlush:e?.flush??this._replay.recordingMode===`session`,reason:`manual`}):Promise.resolve()}flush(e){return this._replay?this._replay.isEnabled()?this._replay.sendBufferedReplayOrFlush(e):(this._replay.start(),Promise.resolve()):Promise.resolve()}getReplayId(e){if(this._replay?.isEnabled())return this._replay.getSessionId(e)}getRecordingMode(){if(this._replay?.isEnabled())return this._replay.recordingMode}processSpan(e){let t=this.getReplayId(!0);t&&(JD(e,{"sentry.replay_id":t}),this.getRecordingMode()===`buffer`&&JD(e,{"sentry._internal.replay_is_buffering":!0}))}_initialize(e){this._replay&&(this._maybeLoadFromReplayCanvasIntegration(e),this._replay.initializeSampling())}_setup(e){let t=nze(this._initialOptions,e);this._replay=new YRe({options:t,recordingOptions:this._recordingOptions})}_maybeLoadFromReplayCanvasIntegration(e){try{let t=e.getIntegrationByName(`ReplayCanvas`);if(!t)return;this._replay._canvas=t.getOptions()}catch{}}};function nze(e,t){let n=t.getOptions(),r={sessionSampleRate:0,errorSampleRate:0,...e},i=gE(n.replaysSessionSampleRate),a=gE(n.replaysOnErrorSampleRate);return i==null&&a==null&&rw(()=>{console.warn("Replay is disabled because neither `replaysSessionSampleRate` nor `replaysOnErrorSampleRate` are set.")}),i!=null&&(r.sessionSampleRate=i),a!=null&&(r.errorSampleRate=a),r}function Wz(e){return[...QRe,...e.map(e=>e.toLowerCase())]}function rze(){return J()?.getIntegrationByName(`Replay`)}var ize=Object.defineProperty,aze=(e,t,n)=>t in e?ize(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Gz=(e,t,n)=>aze(e,typeof t==`symbol`?t:t+``,n),oze=class{constructor(){Gz(this,`idNodeMap`,new Map),Gz(this,`nodeMetaMap`,new WeakMap)}getId(e){return e?this.getMeta(e)?.id??-1:-1}getNode(e){return this.idNodeMap.get(e)||null}getIds(){return Array.from(this.idNodeMap.keys())}getMeta(e){return this.nodeMetaMap.get(e)||null}removeNodeFromMap(e){let t=this.getId(e);this.idNodeMap.delete(t),e.childNodes&&e.childNodes.forEach(e=>this.removeNodeFromMap(e))}has(e){return this.idNodeMap.has(e)}hasNode(e){return this.nodeMetaMap.has(e)}add(e,t){let n=t.id;this.idNodeMap.set(n,e),this.nodeMetaMap.set(e,t)}replace(e,t){let n=this.getNode(e);if(n){let e=this.nodeMetaMap.get(n);e&&this.nodeMetaMap.set(t,e)}this.idNodeMap.set(e,t)}reset(){this.idNodeMap=new Map,this.nodeMetaMap=new WeakMap}};function sze(){return new oze}function cze(e,t){for(let n=e.classList.length;n--;){let r=e.classList[n];if(t.test(r))return!0}return!1}function Kz(e,t,n=1/0,r=0){return!e||e.nodeType!==e.ELEMENT_NODE||r>n?-1:t(e)?r:Kz(e.parentNode,t,n,r+1)}function qz(e,t){return n=>{let r=n;if(r===null)return!1;try{if(e){if(typeof e==`string`){if(r.matches(`.${e}`))return!0}else if(cze(r,e))return!0}return!!(t&&r.matches(t))}catch{return!1}}}var Jz=`Please stop import mirror directly. Instead of that,\r
|
|
1002
1002
|
now you can use replayer.getMirror() to access the mirror instance of a replayer,\r
|
|
1003
|
-
or you can use record.mirror to access the mirror instance during recording.`,Xz={map:{},getId(){return console.error(Yz),-1},getNode(){return console.error(Yz),null},removeNodeFromMap(){console.error(Yz)},has(){return console.error(Yz),!1},reset(){console.error(Yz)}};typeof window<`u`&&window.Proxy&&window.Reflect&&(Xz=new Proxy(Xz,{get(e,t,n){return t===`map`&&console.error(Yz),Reflect.get(e,t,n)}}));function Zz(e,t,n,r,i=window){let a=i.Object.getOwnPropertyDescriptor(e,t);return i.Object.defineProperty(e,t,r?n:{set(e){rB(()=>{n.set.call(this,e)},0),a&&a.set&&a.set.call(this,e)}}),()=>Zz(e,t,a||{},!0)}function Qz(e,t,n){try{if(!(t in e))return()=>{};let r=e[t],i=n(r);return typeof i==`function`&&(i.prototype=i.prototype||{},Object.defineProperties(i,{__rrweb_original__:{enumerable:!1,value:r}})),e[t]=i,()=>{e[t]=r}}catch{return()=>{}}}Date.now().toString();function cze(e){if(!e)return null;try{return e.nodeType===e.ELEMENT_NODE?e:e.parentElement}catch{return null}}function $z(e,t,n,r,i){if(!e)return!1;let a=cze(e);if(!a)return!1;let o=Jz(t,n);if(!i){let e=r&&a.matches(r);return o(a)&&!e}let s=qz(a,o),c=-1;return s<0?!1:(r&&(c=qz(a,Jz(null,r))),s>-1&&c<0||s<c)}var eB={};function tB(e){let t=eB[e];if(t)return t;let n=window.document,r=window[e];if(n&&typeof n.createElement==`function`)try{let t=n.createElement(`iframe`);t.hidden=!0,n.head.appendChild(t);let i=t.contentWindow;i&&i[e]&&(r=i[e]),n.head.removeChild(t)}catch{}return eB[e]=r.bind(window)}function nB(...e){return tB(`requestAnimationFrame`)(...e)}function rB(...e){return tB(`setTimeout`)(...e)}var iB=(e=>(e[e[`2D`]=0]=`2D`,e[e.WebGL=1]=`WebGL`,e[e.WebGL2=2]=`WebGL2`,e))(iB||{}),aB;function lze(e){aB=e}for(var oB=e=>aB?((...t)=>{try{return e(...t)}catch(e){if(aB&&aB(e)===!0)return()=>{};throw e}}):e,sB=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,uze=typeof Uint8Array>`u`?[]:new Uint8Array(256),cB=0;cB<sB.length;cB++)uze[sB.charCodeAt(cB)]=cB;var dze=function(e){var t=new Uint8Array(e),n,r=t.length,i=``;for(n=0;n<r;n+=3)i+=sB[t[n]>>2],i+=sB[(t[n]&3)<<4|t[n+1]>>4],i+=sB[(t[n+1]&15)<<2|t[n+2]>>6],i+=sB[t[n+2]&63];return r%3==2?i=i.substring(0,i.length-1)+`=`:r%3==1&&(i=i.substring(0,i.length-2)+`==`),i},lB=new Map;function fze(e,t){let n=lB.get(e);return n||(n=new Map,lB.set(e,n)),n.has(t)||n.set(t,[]),n.get(t)}var uB=(e,t,n)=>{if(!e||!(pB(e,t)||typeof e==`object`))return;let r=e.constructor.name,i=fze(n,r),a=i.indexOf(e);return a===-1&&(a=i.length,i.push(e)),a};function dB(e,t,n){if(e instanceof Array)return e.map(e=>dB(e,t,n));if(e===null)return e;if(e instanceof Float32Array||e instanceof Float64Array||e instanceof Int32Array||e instanceof Uint32Array||e instanceof Uint8Array||e instanceof Uint16Array||e instanceof Int16Array||e instanceof Int8Array||e instanceof Uint8ClampedArray)return{rr_type:e.constructor.name,args:[Object.values(e)]};if(e instanceof ArrayBuffer)return{rr_type:e.constructor.name,base64:dze(e)};if(e instanceof DataView)return{rr_type:e.constructor.name,args:[dB(e.buffer,t,n),e.byteOffset,e.byteLength]};if(e instanceof HTMLImageElement){let t=e.constructor.name,{src:n}=e;return{rr_type:t,src:n}}return e instanceof HTMLCanvasElement?{rr_type:`HTMLImageElement`,src:e.toDataURL()}:e instanceof ImageData?{rr_type:e.constructor.name,args:[dB(e.data,t,n),e.width,e.height]}:pB(e,t)||typeof e==`object`?{rr_type:e.constructor.name,index:uB(e,t,n)}:e}var fB=(e,t,n)=>e.map(e=>dB(e,t,n)),pB=(e,t)=>!![`WebGLActiveInfo`,`WebGLBuffer`,`WebGLFramebuffer`,`WebGLProgram`,`WebGLRenderbuffer`,`WebGLShader`,`WebGLShaderPrecisionFormat`,`WebGLTexture`,`WebGLUniformLocation`,`WebGLVertexArrayObject`,`WebGLVertexArrayObjectOES`].filter(e=>typeof t[e]==`function`).find(n=>e instanceof t[n]);function pze(e,t,n,r,i){let a=[],o=Object.getOwnPropertyNames(t.CanvasRenderingContext2D.prototype);for(let s of o)try{if(typeof t.CanvasRenderingContext2D.prototype[s]!=`function`)continue;let o=Qz(t.CanvasRenderingContext2D.prototype,s,function(a){return function(...o){return $z(this.canvas,n,r,i,!0)||rB(()=>{let n=fB(o,t,this);e(this.canvas,{type:iB[`2D`],property:s,args:n})},0),a.apply(this,o)}});a.push(o)}catch{let n=Zz(t.CanvasRenderingContext2D.prototype,s,{set(t){e(this.canvas,{type:iB[`2D`],property:s,args:[t],setter:!0})}});a.push(n)}return()=>{a.forEach(e=>e())}}function mze(e){return e===`experimental-webgl`?`webgl`:e}function mB(e,t,n,r,i){let a=[];try{let o=Qz(e.HTMLCanvasElement.prototype,`getContext`,function(e){return function(a,...o){if(!$z(this,t,n,r,!0)){let e=mze(a);if(`__context`in this||(this.__context=e),i&&[`webgl`,`webgl2`].includes(e))if(o[0]&&typeof o[0]==`object`){let e=o[0];e.preserveDrawingBuffer||=!0}else o.splice(0,1,{preserveDrawingBuffer:!0})}return e.apply(this,[a,...o])}});a.push(o)}catch{console.error(`failed to patch HTMLCanvasElement.prototype.getContext`)}return()=>{a.forEach(e=>e())}}function hB(e,t,n,r,i,a,o,s){let c=[],l=Object.getOwnPropertyNames(e);for(let o of l)if(![`isContextLost`,`canvas`,`drawingBufferWidth`,`drawingBufferHeight`].includes(o))try{if(typeof e[o]!=`function`)continue;let l=Qz(e,o,function(e){return function(...c){let l=e.apply(this,c);if(uB(l,s,this),`tagName`in this.canvas&&!$z(this.canvas,r,i,a,!0)){let e=fB(c,s,this),r={type:t,property:o,args:e};n(this.canvas,r)}return l}});c.push(l)}catch{let r=Zz(e,o,{set(e){n(this.canvas,{type:t,property:o,args:[e],setter:!0})}});c.push(r)}return c}function hze(e,t,n,r,i,a){let o=[];return o.push(...hB(t.WebGLRenderingContext.prototype,iB.WebGL,e,n,r,i,a,t)),t.WebGL2RenderingContext!==void 0&&o.push(...hB(t.WebGL2RenderingContext.prototype,iB.WebGL2,e,n,r,i,a,t)),()=>{o.forEach(e=>e())}}var gze=`for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t="undefined"==typeof Uint8Array?[]:new Uint8Array(256),a=0;a<64;a++)t[e.charCodeAt(a)]=a;var n=function(t){var a,n=new Uint8Array(t),r=n.length,s="";for(a=0;a<r;a+=3)s+=e[n[a]>>2],s+=e[(3&n[a])<<4|n[a+1]>>4],s+=e[(15&n[a+1])<<2|n[a+2]>>6],s+=e[63&n[a+2]];return r%3==2?s=s.substring(0,s.length-1)+"=":r%3==1&&(s=s.substring(0,s.length-2)+"=="),s};const r=new Map,s=new Map;const i=self;i.onmessage=async function(e){if(!("OffscreenCanvas"in globalThis))return i.postMessage({id:e.data.id});{const{id:t,bitmap:a,width:o,height:f,maxCanvasSize:c,dataURLOptions:g}=e.data,u=async function(e,t,a){const r=e+"-"+t;if("OffscreenCanvas"in globalThis){if(s.has(r))return s.get(r);const i=new OffscreenCanvas(e,t);i.getContext("2d");const o=await i.convertToBlob(a),f=await o.arrayBuffer(),c=n(f);return s.set(r,c),c}return""}(o,f,g),[h,d]=function(e,t,a){if(!a)return[e,t];const[n,r]=a;if(e<=n&&t<=r)return[e,t];let s=e,i=t;return s>n&&(i=Math.floor(n*t/e),s=n),i>r&&(s=Math.floor(r*e/t),i=r),[s,i]}(o,f,c),l=new OffscreenCanvas(h,d),w=l.getContext("bitmaprenderer"),p=h===o&&d===f?a:await createImageBitmap(a,{resizeWidth:h,resizeHeight:d,resizeQuality:"low"});w?.transferFromImageBitmap(p),a.close();const y=await l.convertToBlob(g),v=y.type,b=await y.arrayBuffer(),m=n(b);if(p.close(),!r.has(t)&&await u===m)return r.set(t,m),i.postMessage({id:t});if(r.get(t)===m)return i.postMessage({id:t});i.postMessage({id:t,type:v,base64:m,width:o,height:f}),r.set(t,m)}};`;function _ze(){let e=new Blob([gze]);return URL.createObjectURL(e)}var vze=class{constructor(e){this.pendingCanvasMutations=new Map,this.rafStamps={latestId:0,invokeId:null},this.shadowDoms=new Set,this.windowsSet=new WeakSet,this.windows=[],this.restoreHandlers=[],this.frozen=!1,this.locked=!1,this.snapshotInProgressMap=new Map,this.worker=null,this.lastSnapshotTime=0,this.processMutation=(e,t)=>{(this.rafStamps.invokeId&&this.rafStamps.latestId!==this.rafStamps.invokeId||!this.rafStamps.invokeId)&&(this.rafStamps.invokeId=this.rafStamps.latestId),this.pendingCanvasMutations.has(e)||this.pendingCanvasMutations.set(e,[]),this.pendingCanvasMutations.get(e).push(t)};let{enableManualSnapshot:t,sampling:n=`all`,win:r,recordCanvas:i,errorHandler:a}=e;e.sampling=n,this.mutationCb=e.mutationCb,this.mirror=e.mirror,this.options=e,a&&lze(a),(i&&typeof n==`number`||t)&&(this.worker=this.initFPSWorker()),this.addWindow(r),!t&&oB(()=>{i&&n===`all`&&(this.startRAFTimestamping(),this.startPendingCanvasMutationFlusher()),i&&typeof n==`number`&&this.initCanvasFPSObserver()})()}reset(){this.pendingCanvasMutations.clear(),this.restoreHandlers.forEach(e=>{try{e()}catch{}}),this.restoreHandlers=[],this.windowsSet=new WeakSet,this.windows=[],this.shadowDoms=new Set,this.worker?.terminate(),this.worker=null,this.snapshotInProgressMap=new Map}freeze(){this.frozen=!0}unfreeze(){this.frozen=!1}lock(){this.locked=!0}unlock(){this.locked=!1}addWindow(e){let{sampling:t=`all`,blockClass:n,blockSelector:r,unblockSelector:i,recordCanvas:a,enableManualSnapshot:o}=this.options;if(!this.windowsSet.has(e)){if(o){this.windowsSet.add(e),this.windows.push(new WeakRef(e));return}oB(()=>{if(a&&t===`all`&&this.initCanvasMutationObserver(e,n,r,i),a&&typeof t==`number`){let t=mB(e,n,r,i,!0);this.restoreHandlers.push(()=>{t()})}})(),this.windowsSet.add(e),this.windows.push(new WeakRef(e))}}addShadowRoot(e){this.shadowDoms.add(new WeakRef(e))}resetShadowRoots(){this.shadowDoms=new Set}snapshot(e,t){if(t?.skipRequestAnimationFrame){this.takeSnapshot(performance.now(),!0,e);return}nB(t=>this.takeSnapshot(t,!0,e))}initFPSWorker(){let e=new Worker(_ze());return e.onmessage=e=>{let t=e.data,{id:n}=t;if(this.snapshotInProgressMap.set(n,!1),!(`base64`in t))return;let{base64:r,type:i,width:a,height:o}=t;this.mutationCb({id:n,type:iB[`2D`],commands:[{property:`clearRect`,args:[0,0,a,o]},{property:`drawImage`,args:[{rr_type:`ImageBitmap`,args:[{rr_type:`Blob`,data:[{rr_type:`ArrayBuffer`,base64:r}],type:i}]},0,0,a,o]}]})},e}initCanvasFPSObserver(){let e;if(!this.windows.length&&!this.shadowDoms.size)return;let t=n=>{this.takeSnapshot(n,!1),e=nB(t)};e=nB(t),this.restoreHandlers.push(()=>{e&&cancelAnimationFrame(e)})}initCanvasMutationObserver(e,t,n,r){let i=mB(e,t,n,r,!1),a=pze(this.processMutation.bind(this),e,t,n,r),o=hze(this.processMutation.bind(this),e,t,n,r,this.mirror);this.restoreHandlers.push(()=>{i(),a(),o()})}getCanvasElements(e,t,n){let r=[],i=i=>{i.querySelectorAll(`canvas`).forEach(i=>{$z(i,e,t,n,!0)||r.push(i)})};for(let e of this.windows){let t=e.deref(),n;try{n=t&&t.document}catch{}n&&i(n)}for(let e of this.shadowDoms){let t=e.deref();t&&i(t)}return r}takeSnapshot(e,t,n){let{sampling:r,blockClass:i,blockSelector:a,unblockSelector:o,dataURLOptions:s,maxCanvasSize:c}=this.options,l=1e3/(r===`all`?2:r||2);return this.lastSnapshotTime&&e-this.lastSnapshotTime<l?!1:(this.lastSnapshotTime=e,(n?[n]:this.getCanvasElements(i,a,o)).forEach(e=>{let n=this.mirror.getId(e);if(!(!this.mirror.hasNode(e)||!e.width||!e.height||this.snapshotInProgressMap.get(n))){if(this.snapshotInProgressMap.set(n,!0),!t&&[`webgl`,`webgl2`].includes(e.__context)){let t=e.getContext(e.__context);t?.getContextAttributes()?.preserveDrawingBuffer===!1&&t.clear(t.COLOR_BUFFER_BIT)}createImageBitmap(e).then(t=>{this.worker?.postMessage({id:n,bitmap:t,width:e.width,height:e.height,dataURLOptions:s,maxCanvasSize:c},[t])}).catch(e=>{oB(()=>{throw this.snapshotInProgressMap.delete(n),e})()})}}),!0)}startPendingCanvasMutationFlusher(){nB(()=>this.flushPendingCanvasMutations())}startRAFTimestamping(){let e=t=>{this.rafStamps.latestId=t,nB(e)};nB(e)}flushPendingCanvasMutations(){this.pendingCanvasMutations.forEach((e,t)=>{let n=this.mirror.getId(t);this.flushPendingCanvasMutationFor(t,n)}),nB(()=>this.flushPendingCanvasMutations())}flushPendingCanvasMutationFor(e,t){if(this.frozen||this.locked)return;let n=this.pendingCanvasMutations.get(e);if(!n||t===-1)return;let r=n.map(e=>{let{type:t,...n}=e;return n}),{type:i}=n[0];this.mutationCb({id:t,type:i,commands:r}),this.pendingCanvasMutations.delete(e)}};try{if(Array.from([1],e=>e*2)[0]!==2){let e=document.createElement(`iframe`);document.body.appendChild(e),Array.from=e.contentWindow?.Array.from||Array.from,document.body.removeChild(e)}}catch(e){console.debug(`Unable to override Array.from`,e)}oze();var yze;(function(e){e[e.NotStarted=0]=`NotStarted`,e[e.Running=1]=`Running`,e[e.Stopped=2]=`Stopped`})(yze||={});var gB={low:{sampling:{canvas:1},dataURLOptions:{type:`image/webp`,quality:.25}},medium:{sampling:{canvas:2},dataURLOptions:{type:`image/webp`,quality:.4}},high:{sampling:{canvas:4},dataURLOptions:{type:`image/webp`,quality:.5}}},bze=`ReplayCanvas`,_B=1280,xze=EO(((e={})=>{let[t,n]=e.maxCanvasSize||[],r={quality:e.quality||`medium`,enableManualSnapshot:e.enableManualSnapshot,maxCanvasSize:[t?Math.min(t,_B):_B,n?Math.min(n,_B):_B]},i,a,o=new Promise(e=>a=e);return{name:bze,getOptions(){let{quality:e,enableManualSnapshot:t,maxCanvasSize:n}=r;return{enableManualSnapshot:t,recordCanvas:!0,getCanvasManager:e=>{let r=new vze({...e,enableManualSnapshot:t,maxCanvasSize:n,errorHandler:e=>{try{typeof e==`object`&&(e.__rrweb__=!0)}catch{}}});return i=r,a(r),r},...gB[e]||gB.medium}},async snapshot(e,t){(i||await o).snapshot(e,t)}}}));function Sze(e){return e.split(`,`).some(e=>e.trim().startsWith(`sentry-`))}function vB(e){try{return new URL(e,Y.location.origin).href}catch{return}}function Cze(e){return e.entryType===`resource`&&`initiatorType`in e&&typeof e.nextHopProtocol==`string`&&(e.initiatorType===`fetch`||e.initiatorType===`xmlhttprequest`)}function yB(e){try{return new Headers(e)}catch{return}}var bB={traceFetch:!0,traceXHR:!0,enableHTTPTimings:!0,trackFetchStreamPerformance:!1};function xB(e,t){let{traceFetch:n,traceXHR:r,shouldCreateSpanForRequest:i,enableHTTPTimings:a,tracePropagationTargets:o,onRequestSpanStart:s,onRequestSpanEnd:c}={...bB,...t},l=typeof i==`function`?i:e=>!0,u=e=>Tze(e,o),d={},f=e.getOptions().propagateTraceparent;n&&oM(t=>{let n=VOe(t,l,u,d,{propagateTraceparent:f,onRequestSpanEnd:c});if(n){let r=vB(t.fetchData.url),i=r?yk(r).host:void 0,o=r?xk(r):void 0;n.setAttributes({"http.url":o,"url.full":o,"server.address":i}),a&&SB(n,e),s?.(n,{headers:t.headers})}}),r&&fI(t=>{let n=Eze(t,l,u,d,f,c);n&&(a&&SB(n,e),s?.(n,{headers:yB(t.xhr.__sentry_xhr_v3__?.request_headers)}))})}var wze=300;function SB(e,t){let{url:n}=DE(e).data;if(!n||typeof n!=`string`)return;let r=()=>void setTimeout(i);if(_D(t)){let t=e.end.bind(e);e.end=e=>{let n=e??_T(),a=!1,o=()=>{a||(a=!0,setTimeout(i),t(n),clearTimeout(s))};r=o;let s=setTimeout(o,wze)}}let i=EF(`resource`,({entries:t})=>{t.forEach(t=>{Cze(t)&&t.name.endsWith(n)&&(e.setAttributes(UF(t)),r())})})}function Tze(e,t){let n=xM();if(n){let r,i;try{r=new URL(e,n),i=new URL(n).origin}catch{return!1}let a=r.origin===i;return t?sT(r.toString(),t)||a&&sT(r.pathname,t):a}{let n=!!e.match(/^\/(?!\/)/);return t?sT(e,t):n}}function Eze(e,t,n,r,i,a){let o=e.xhr,s=o?.[dI];if(!o||o.__sentry_own_request__||!s)return;let{url:c,method:l}=s,u=qE()&&t(c);if(e.endTimestamp){let t=o.__sentry_xhr_span_id__;if(!t)return;let n=r[t];n&&(u&&s.status_code!==void 0&&(tE(n,s.status_code),n.end(),a?.(n,{headers:yB(gI(o)),error:e.error})),delete r[t]);return}let d=vB(c),f=yk(d||c),p=d?xk(d):void 0,m=xk(bk(c)),h=J(),g=!!UE(),_=g||!!h&&_D(h),v=u&&_?ED({name:`${l} ${m}`,attributes:{url:xk(c),type:`xhr`,"http.method":l,"http.url":p,"url.full":p,"server.address":f?.host,[qT]:`auto.http.browser`,[KT]:`http.client`,...f?.search&&{"http.query":f?.search},...f?.hash&&{"http.fragment":f?.hash}}}):new ZE,y=LD(v)&&g?void 0:v;return u&&!_&&h?.recordDroppedEvent(`no_parent_span`,`span`),o.__sentry_xhr_span_id__=v.spanContext().spanId,r[o.__sentry_xhr_span_id__]=v,n(c)&&Dze(o,qE()&&_?y:void 0,i),h&&h.emit(`beforeOutgoingRequestSpan`,v,e),v}function Dze(e,t,n){let{"sentry-trace":r,baggage:i,traceparent:a}=Tk({span:t,propagateTraceparent:n});r&&Oze(e,r,i,a)}function Oze(e,t,n,r){let i=e.__sentry_xhr_v3__?.request_headers;if(!(i?.[`sentry-trace`]||!e.setRequestHeader))try{if(e.setRequestHeader(`sentry-trace`,t),r&&!i?.traceparent&&e.setRequestHeader(`traceparent`,r),n){let t=i?.baggage;(!t||!Sze(t))&&e.setRequestHeader(`baggage`,n)}}catch{}}var CB=new WeakMap,wB=new WeakMap,kze=9e4,Aze=[`text/event-stream`,`application/x-ndjson`,`application/stream+json`],TB=EO(()=>({name:`FetchStreamPerformance`,setup(){sM(e=>{if(e.response){let t=CB.get(e.response);if(t&&e.endTimestamp){t.end(e.endTimestamp);let n=wB.get(e.response);n&&clearTimeout(n)}}}),oM(e=>{if(e.endTimestamp&&e.response){let t=e.response.headers?.get(`content-type`)||``;if(e.response.headers?.get(`content-length`)||!Aze.some(e=>t.startsWith(e)))return;let n=e.fetchData?.url||``,r=e.fetchData?.method||`GET`,i=_k(n),a=ED({name:`${r} ${n.startsWith(`data:`)?xk(n):i?vk(i):n}`,startTime:e.endTimestamp,attributes:{url:xk(n),"http.method":r,type:`fetch`,[KT]:`http.client.stream`,[qT]:`auto.http.browser.stream`}});CB.set(e.response,a);let o=setTimeout(()=>{a.isRecording()&&a.end()},kze);wB.set(e.response,o)}})}})),jze=`WebVitals`,EB=EO((e={})=>{let t=new Set(e.ignore??[]);return{name:jze,setup(n){let r=_D(n),{enableStandaloneClsSpans:i,enableStandaloneLcpSpans:a}=e._experiments??{},o=r||t.has(`cls`)?void 0:i||!1,s=r||t.has(`lcp`)?void 0:a||!1,c=rNe({recordClsStandaloneSpans:o,recordLcpStandaloneSpans:s,client:n}),l=new WeakSet;n.on(`afterStartPageLoadSpan`,e=>{l.add(e)}),n.on(`spanEnd`,e=>{l.delete(e)&&(c(),fNe(e,{recordClsOnPageloadSpan:o===!1,recordLcpOnPageloadSpan:s===!1,spanStreamingEnabled:r}))}),r?(t.has(`lcp`)||jNe(n),t.has(`cls`)||NNe(n),t.has(`inp`)||FNe()):t.has(`inp`)||ENe()},afterAllSetup(){t.has(`inp`)||ANe()}}});function Mze(){Y.document?Y.document.addEventListener(`visibilitychange`,()=>{let e=UE();if(!e)return;let t=VE(e);if(Y.document.hidden&&t){let e=`cancelled`,{op:n,status:r}=DE(t);X&&K.log(`[Tracing] Transaction: ${e} -> since tab moved to the background, op: ${n}`),r||t.setStatus({code:2,message:e}),t.setAttribute(`sentry.cancellation_reason`,`document.hidden`),t.end()}}):X&&K.warn(`[Tracing] Could not set up background tab detection due to lack of global document`)}var DB=`sentry_previous_trace`,Nze=`sentry.previous_trace`;function Pze(e,{linkPreviousTrace:t,consistentTraceSampling:n}){let r=t===`session-storage`,i=r?Lze():void 0;e.on(`spanStart`,e=>{if(VE(e)!==e)return;let t=q().getPropagationContext();i=Fze(i,e,t),r&&Ize(i)});let a=!0;n&&e.on(`beforeSampling`,e=>{if(!i)return;let t=q(),n=t.getPropagationContext();if(a&&n.parentSpanId){a=!1;return}t.setPropagationContext({...n,dsc:{...n.dsc,sample_rate:String(i.sampleRate),sampled:String(OB(i.spanContext))},sampleRand:i.sampleRand}),e.parentSampled=OB(i.spanContext),e.parentSampleRate=i.sampleRate,e.spanAttributes={...e.spanAttributes,[Nwe]:i.sampleRate}})}function Fze(e,t,n){let r=DE(t);function i(){try{let e=Number(r.data?.[`sentry.sample_rate`]??n.dsc?.sample_rate);return Number.isNaN(e)?0:e}catch{return 0}}let a={spanContext:t.spanContext(),startTimestamp:r.start_timestamp,sampleRate:i(),sampleRand:n.sampleRand};if(!e)return a;let o=e.spanContext;return o.traceId===r.trace_id?e:(Date.now()/1e3-e.startTimestamp<=3600&&(X&&K.log(`Adding previous_trace \`${JSON.stringify(o)}\` link to span \`${JSON.stringify({op:r.op,...t.spanContext()})}\``),t.addLink({context:o,attributes:{[Hwe]:`previous_trace`}}),t.setAttribute(Nze,`${o.traceId}-${o.spanId}-${+!!OB(o)}`)),a)}function Ize(e){try{Y.sessionStorage.setItem(DB,JSON.stringify(e))}catch(e){X&&K.warn(`Could not store previous trace in sessionStorage`,e)}}function Lze(){try{let e=Y.sessionStorage?.getItem(DB);return JSON.parse(e)}catch{return}}function OB(e){return e.traceFlags===1}var Rze=`BrowserTracing`,zze=/Googlebot|Google-InspectionTool|Storebot-Google|Bingbot|Slurp|DuckDuckBot|Baiduspider|YandexBot|Facebot|facebookexternalhit|LinkedInBot|Twitterbot|Applebot/i;function kB(){let e=Y.navigator;return e?.userAgent?zze.test(e.userAgent):!1}var Bze={...RD,instrumentNavigation:!0,instrumentPageLoad:!0,markBackgroundSpan:!0,enableLongTask:!0,enableLongAnimationFrame:!0,enableInp:!0,ignoreResourceSpans:[],ignorePerformanceApiSpans:[],detectRedirects:!0,linkPreviousTrace:`in-memory`,consistentTraceSampling:!1,enableReportPageLoaded:!1,_experiments:{},...bB},AB=((e={})=>{`enableElementTiming`in e&&rw(()=>{console.warn("[Sentry] `enableElementTiming` is deprecated and no longer has any effect. Use the standalone `elementTimingIntegration` instead.")});let t={name:void 0,source:void 0},n=Y.document,{enableInp:r,enableLongTask:i,enableLongAnimationFrame:a,_experiments:{enableInteractions:o,enableStandaloneClsSpans:s,enableStandaloneLcpSpans:c},beforeStartSpan:l,idleTimeout:u,finalTimeout:d,childSpanTimeout:f,markBackgroundSpan:p,traceFetch:m,traceXHR:h,trackFetchStreamPerformance:g,shouldCreateSpanForRequest:_,enableHTTPTimings:v,ignoreResourceSpans:y,ignorePerformanceApiSpans:b,instrumentPageLoad:x,instrumentNavigation:S,detectRedirects:C,linkPreviousTrace:w,consistentTraceSampling:T,enableReportPageLoaded:E,onRequestSpanStart:ee,onRequestSpanEnd:te}={...Bze,...e},ne=kB(),re,ie;function ae(e,r,i=!0,a){let o=r.op===`pageload`,s=r.name,c=l?l(r):r,p=_k(a||xM()),m={...p?.pathname&&{"url.path":p.pathname},...p&&!gk(p)&&{"url.full":p.href},...c.attributes};if(s!==c.name&&(m[WT]=`custom`),c.attributes=m,!i){let e=gT();ED({...c,startTime:e}).end(e);return}t.name=c.name,t.source=m[WT];let h=zD(c,{idleTimeout:u,finalTimeout:d,childSpanTimeout:f,disableAutoFinish:o,beforeSpanEnd:t=>{dNe(t,{ignoreResourceSpans:y,ignorePerformanceApiSpans:b,spanStreamingEnabled:_D(e)}),LB(e,void 0);let n=q(),r=n.getPropagationContext();n.setPropagationContext({...r,traceId:h.spanContext().traceId,sampled:NE(h),dsc:rD(t)}),o&&(ie=void 0)},trimIdleSpanEndTimestamp:!E});o&&E&&(ie=h),LB(e,h);function g(){n&&[`interactive`,`complete`].includes(n.readyState)&&(e.emit(`idleSpanEnableAutoFinish`,h),n.removeEventListener(`readystatechange`,g))}o&&!E&&n&&(n.addEventListener(`readystatechange`,g),g())}return{name:Rze,setup(e){if(ne){X&&K.log(`[Tracing] Skipping browserTracingIntegration setup for bot user agent.`);return}if(KE(),a&&G.PerformanceObserver&&PerformanceObserver.supportedEntryTypes?.includes(`long-animation-frame`)?aNe():i&&iNe(),o&&oNe(),C&&n){let e=()=>{re=_T()};addEventListener(`click`,e,{capture:!0}),addEventListener(`keydown`,e,{capture:!0,passive:!0})}function t(){let t=IB(e);t&&!DE(t).timestamp&&(X&&K.log(`[Tracing] Finishing current active span with op: ${DE(t).op}`),t.setAttribute(JT,`cancelled`),t.end())}e.on(`startNavigationSpan`,(n,r)=>{if(J()!==e)return;if(r?.isRedirect){X&&K.warn(`[Tracing] Detected redirect, navigation span will not be the root span, but a child span.`),ae(e,{op:`navigation.redirect`,...n},!1,r.url);return}re=void 0,t(),BT().setPropagationContext({traceId:ST(),sampleRand:Math.random(),propagationSpanId:qE()?void 0:CT()});let i=q();i.setPropagationContext({traceId:ST(),sampleRand:Math.random(),propagationSpanId:qE()?void 0:CT()}),i.setSDKProcessingMetadata({normalizedRequest:void 0}),ae(e,{op:`navigation`,...n,parentSpan:null,forceTransaction:!0},!0,r?.url)}),e.on(`startPageLoadSpan`,(n,r={})=>{if(J()!==e)return;t();let i=vE(r.sentryTrace||NB(`sentry-trace`)||PB(`sentry-trace`),r.baggage||NB(`baggage`)||PB(`baggage`)),a=q();a.setPropagationContext(i),qE()||(a.getPropagationContext().propagationSpanId=CT()),a.setSDKProcessingMetadata({normalizedRequest:NP()}),ae(e,{op:`pageload`,...n})}),e.on(`endPageloadSpan`,()=>{E&&ie&&(ie.setAttribute(JT,`reportPageLoaded`),ie.end())})},afterAllSetup(e){if(ne)return;e.addIntegration&&!e.getIntegrationByName?.(`WebVitals`)&&e.addIntegration(EB({ignore:r?[]:[`inp`],_experiments:{enableStandaloneClsSpans:s,enableStandaloneLcpSpans:c}}));let n=xM();if(w!==`off`&&Pze(e,{linkPreviousTrace:w,consistentTraceSampling:T}),Y.location){if(x){let t=yT();jB(e,{name:Y.location.pathname,startTime:t?t/1e3:void 0,attributes:{[WT]:`url`,[qT]:`auto.pageload.browser`}})}S&&sI(({to:t,from:r})=>{if(r===void 0&&n?.indexOf(t)!==-1){n=void 0;return}n=void 0;let i=_k(t),a=IB(e),o=a&&C&&Hze(a,re);MB(e,{name:i?.pathname||Y.location.pathname,attributes:{[WT]:`url`,[qT]:`auto.navigation.browser`}},{url:t,isRedirect:o})})}p&&Mze(),o&&Vze(e,u,d,f,t),xB(e,{traceFetch:m,traceXHR:h,tracePropagationTargets:e.getOptions().tracePropagationTargets,shouldCreateSpanForRequest:_,enableHTTPTimings:v,onRequestSpanStart:ee,onRequestSpanEnd:te}),g&&e.addIntegration(TB())}}});function jB(e,t,n){e.emit(`startPageLoadSpan`,t,n),q().setTransactionName(t.name);let r=IB(e);return r&&e.emit(`afterStartPageLoadSpan`,r),r}function MB(e,t,n){let{url:r,isRedirect:i}=n||{};e.emit(`beforeStartNavigationSpan`,t,{isRedirect:i,url:r}),e.emit(`startNavigationSpan`,t,{isRedirect:i,url:r});let a=q();return a.setTransactionName(t.name),r&&!i&&a.setSDKProcessingMetadata({normalizedRequest:{...NP(),url:r}}),IB(e)}function NB(e){return(Y.document?.querySelector(`meta[name=${e}]`))?.getAttribute(`content`)||void 0}function PB(e){return(Y.performance?.getEntriesByType?.(`navigation`)[0])?.serverTiming?.find(t=>t.name===e)?.description}function Vze(e,t,n,r,i){let a=Y.document,o;a&&addEventListener(`click`,()=>{let a=`ui.action.click`,s=IB(e);if(s){let e=DE(s).op;if([`navigation`,`pageload`].includes(e)){X&&K.warn(`[Tracing] Did not create ${a} span because a pageload or navigation span is in progress.`);return}}if(o&&=(o.setAttribute(JT,`interactionInterrupted`),o.end(),void 0),!i.name){X&&K.warn(`[Tracing] Did not create ${a} transaction because _latestRouteName is missing.`);return}o=zD({name:i.name,op:a,attributes:{[WT]:i.source||`url`}},{idleTimeout:t,finalTimeout:n,childSpanTimeout:r})},{capture:!0})}var FB=`_sentry_idleSpan`;function IB(e){return e[FB]}function LB(e,t){Vw(e,FB,t)}var RB=1.5;function Hze(e,t){let n=DE(e),r=gT();return!(r-n.start_timestamp>RB||t&&r-t<=RB)}function Uze(e=J()){e?.emit(`endPageloadSpan`)}function Wze(e){let t=UE();if(t===e)return;let n=q();e.end=new Proxy(e.end,{apply(e,r,i){return DT(n,t),Reflect.apply(e,r,i)}}),DT(n,e)}var Gze=EO(()=>({name:`SpanStreaming`,beforeSetup(e){let t=e.getOptions();t.traceLifecycle||=(X&&K.log('[SpanStreaming] setting `traceLifecycle` to "stream"'),`stream`)},setup(e){let t=`SpanStreaming integration requires`,n=`Falling back to static trace lifecycle.`,r=e.getOptions();if(!_D(e)){r.traceLifecycle=`static`,X&&K.warn(`${t} \`traceLifecycle\` to be set to "stream"! ${n}`);return}let i=r.beforeSendSpan;if(i&&!iD(i)){r.traceLifecycle=`static`,X&&K.warn(`${t} a beforeSendSpan callback using \`withStreamedSpan\`! ${n}`);return}let a=new Qj(e);e.on(`afterSpanEnd`,t=>{NE(t)&&a.add(rEe(t,e))}),e.on(`afterSegmentSpanEnd`,e=>{let t=e.spanContext().traceId;setTimeout(()=>{a.flush(t)},500)})}})),zB=1e6,Kze=`window`in G&&G.window===G&&typeof importScripts>`u`,BB=`0`,VB=Kze?`main`:`worker`,HB=Y.navigator,UB=``,WB=``,GB=``,KB=HB?.userAgent||``,qB=``,qze=HB?.language||HB?.languages?.[0]||``;function Jze(e){return typeof e==`object`&&!!e&&`getHighEntropyValues`in e}var JB=HB?.userAgentData;Jze(JB)&&JB.getHighEntropyValues([`architecture`,`model`,`platform`,`platformVersion`,`fullVersionList`]).then(e=>{if(UB=e.platform||``,GB=e.architecture||``,qB=e.model||``,WB=e.platformVersion||``,e.fullVersionList?.length){let t=e.fullVersionList[e.fullVersionList.length-1];KB=`${t.brand} ${t.version}`}}).catch(e=>void 0);function Yze(e){return!(`thread_metadata`in e)}function Xze(e){return Yze(e)?nBe(e):e}function Zze(e){let t=e.contexts?.trace?.trace_id;return typeof t==`string`&&t.length!==32&&X&&K.log(`[Profiling] Invalid traceId: ${t} on profiled event`),typeof t==`string`?t:``}function Qze(e,t,n,r){if(r.type!==`transaction`)throw TypeError(`Profiling events may only be attached to transactions, this should never occur.`);if(n==null)throw TypeError(`Cannot construct profiling event envelope without a valid profile. Got ${n} instead.`);let i=Zze(r),a=Xze(n),o=t||(typeof r.start_timestamp==`number`?r.start_timestamp*1e3:_T()*1e3),s=typeof r.timestamp==`number`?r.timestamp*1e3:_T()*1e3;return{event_id:e,timestamp:new Date(o).toISOString(),platform:`javascript`,version:`1`,release:r.release||``,environment:r.environment||`production`,runtime:{name:`javascript`,version:Y.navigator.userAgent},os:{name:UB,version:WB,build_number:KB},device:{locale:qze,model:qB,manufacturer:KB,architecture:GB,is_emulator:!1},debug_meta:{images:XB(n.resources)},profile:a,transactions:[{name:r.transaction||``,id:r.event_id||lT(),trace_id:i,active_thread_id:BB,relative_start_ns:`0`,relative_end_ns:((s-o)*1e6).toFixed(0)}]}}function $ze(e,t,n){if(e==null)throw TypeError(`Cannot construct profiling event envelope without a valid profile. Got ${e} instead.`);let r=tBe(e),i=t.getOptions(),a=t.getSdkMetadata?.()?.sdk;return{chunk_id:lT(),client_sdk:{name:a?.name??`sentry.javascript.browser`,version:a?.version??`0.0.0`},profiler_id:n||lT(),platform:`javascript`,version:`2`,release:i.release??``,environment:i.environment??`production`,debug_meta:{images:XB(e.resources)},profile:r}}function eBe(e){try{if(!e||typeof e!=`object`)return{reason:`chunk is not an object`};let t=e=>typeof e==`string`&&/^[a-f0-9]{32}$/.test(e);if(!t(e.profiler_id))return{reason:`missing or invalid profiler_id`};if(!t(e.chunk_id))return{reason:`missing or invalid chunk_id`};if(!e.client_sdk)return{reason:`missing client_sdk metadata`};let n=e.profile;return n?!Array.isArray(n.frames)||!n.frames.length?{reason:`profile has no frames`}:!Array.isArray(n.stacks)||!n.stacks.length?{reason:`profile has no stacks`}:!Array.isArray(n.samples)||!n.samples.length?{reason:`profile has no samples`}:{valid:!0}:{reason:`missing profile data`}}catch(e){return{reason:`unknown validation error: ${e}`}}}function tBe(e){let t=[];for(let n=0;n<e.frames.length;n++){let r=e.frames[n];r&&(t[n]={function:r.name,abs_path:typeof r.resourceId==`number`?e.resources[r.resourceId]:void 0,lineno:r.line,colno:r.column})}let n=[];for(let t=0;t<e.stacks.length;t++){let r=e.stacks[t];if(!r)continue;let i=[],a=r;for(;a;)i.push(a.frameId),a=a.parentId===void 0?void 0:e.stacks[a.parentId];n[t]=i}let r=yT(),i=typeof performance.timeOrigin==`number`?performance.timeOrigin:r||0,a=i-(r||i),o=[];for(let t=0;t<e.samples.length;t++){let n=e.samples[t];if(!n)continue;let r=(i+(n.timestamp-a))/1e3;o[t]={stack_id:n.stackId??0,thread_id:BB,timestamp:r}}return{frames:t,stacks:n,samples:o,thread_metadata:{[BB]:{name:VB}}}}function YB(e){return DE(e).op===`pageload`}function nBe(e){let t,n=0,r={samples:[],stacks:[],frames:[],thread_metadata:{[BB]:{name:VB}}},i=e.samples[0];if(!i)return r;let a=i.timestamp,o=yT(),s=typeof performance.timeOrigin==`number`?performance.timeOrigin:o||0,c=s-(o||s);return e.samples.forEach((i,o)=>{if(i.stackId===void 0){t===void 0&&(t=n,r.stacks[t]=[],n++),r.samples[o]={elapsed_since_start_ns:((i.timestamp+c-a)*zB).toFixed(0),stack_id:t,thread_id:BB};return}let s=e.stacks[i.stackId],l=[];for(;s;){l.push(s.frameId);let t=e.frames[s.frameId];t&&r.frames[s.frameId]===void 0&&(r.frames[s.frameId]={function:t.name,abs_path:typeof t.resourceId==`number`?e.resources[t.resourceId]:void 0,lineno:t.line,colno:t.column}),s=s.parentId===void 0?void 0:e.stacks[s.parentId]}let u={elapsed_since_start_ns:((i.timestamp+c-a)*zB).toFixed(0),stack_id:n,thread_id:BB};r.stacks[n]=l,r.samples[o]=u,n++}),r}function rBe(e,t){if(!t.length)return e;for(let n of t)e[1].push([{type:`profile`},n]);return e}function iBe(e){let t=[];return sD(e,(e,n)=>{if(n===`transaction`)for(let n=1;n<e.length;n++)e[n]?.contexts?.profile?.profile_id&&t.push(e[n])}),t}function XB(e){let t=J()?.getOptions()?.stackParser;return t?lEe(t,e):[]}function ZB(e){return typeof e!=`number`&&typeof e!=`boolean`||typeof e==`number`&&isNaN(e)?(X&&K.warn(`[Profiling] Invalid sample rate. Sample rate must be a boolean or a number between 0 and 1. Got ${JSON.stringify(e)} of type ${JSON.stringify(typeof e)}.`),!1):e===!0||e===!1?!0:e<0||e>1?(X&&K.warn(`[Profiling] Invalid sample rate. Sample rate must be between 0 and 1. Got ${e}.`),!1):!0}function aBe(e){return e.samples.length<2?(X&&K.log(`[Profiling] Discarding profile because it contains less than 2 samples`),!1):e.frames.length?!0:(X&&K.log(`[Profiling] Discarding profile because it contains no frames`),!1)}var QB=!1,$B=3e4;function oBe(e){return typeof e==`function`}function eV(){let e=Y.Profiler;if(!oBe(e)){X&&K.log(`[Profiling] Profiling is not supported by this browser, Profiler interface missing on window object.`);return}let t=Math.floor($B/10);try{return new e({sampleInterval:10,maxBufferSize:t})}catch{X&&(K.log(`[Profiling] Failed to initialize the Profiling constructor, this is likely due to a missing 'Document-Policy': 'js-profiling' header.`),K.log(`[Profiling] Disabling profiling for current user session.`)),QB=!0}}function tV(e){if(QB)return X&&K.log(`[Profiling] Profiling has been disabled for the duration of the current user session.`),!1;if(!e.isRecording())return X&&K.log(`[Profiling] Discarding profile because root span was not sampled.`),!1;let t=J()?.getOptions();if(!t)return X&&K.log(`[Profiling] Profiling disabled, no options found.`),!1;let n=t.profilesSampleRate;return ZB(n)?n?n===!0||Math.random()<n||(X&&K.log(`[Profiling] Discarding profile because it's not included in the random sample (sampling rate = ${Number(n)})`),!1):(X&&K.log(`[Profiling] Discarding profile because a negative sampling decision was inherited or profileSampleRate is set to 0`),!1):(X&&K.warn(`[Profiling] Discarding profile because of invalid sample rate.`),!1)}function sBe(e){if(QB)return X&&K.log(`[Profiling] Profiling has been disabled for the duration of the current user session as the JS Profiler could not be started.`),!1;if(e.profileLifecycle!==`trace`&&e.profileLifecycle!==`manual`)return X&&K.warn("[Profiling] Session not sampled. Invalid `profileLifecycle` option."),!1;let t=e.profileSessionSampleRate;return ZB(t)?t?Math.random()<=t:(X&&K.log(`[Profiling] Discarding profile because profileSessionSampleRate is not defined or set to 0`),!1):(X&&K.warn(`[Profiling] Discarding profile because of invalid profileSessionSampleRate.`),!1)}function nV(e){return e.profilesSampleRate!==void 0}function cBe(e,t,n,r){return aBe(n)?Qze(e,t,n,r):null}var rV=new Map;function lBe(){return rV.size}function uBe(e){let t=rV.get(e);return t&&rV.delete(e),t}function dBe(e,t){if(rV.set(e,t),rV.size>30){let e=rV.keys().next().value;e!==void 0&&rV.delete(e)}}var iV=new WeakSet;function aV(e){e.setAttribute(`thread.id`,BB),e.setAttribute(`thread.name`,VB)}function oV(e){let t;YB(e)&&(t=_T()*1e3);let n=eV();if(!n)return;X&&K.log(`[Profiling] started profiling span: ${DE(e).description}`);let r=lT(),i=null;q().setContext(`profile`,{profile_id:r,start_timestamp:t}),iV.add(e),aV(e);async function a(){if(e&&n){if(i){X&&K.log(`[Profiling] profile for:`,DE(e).description,`already exists, returning early`);return}return n.stop().then(t=>{if(o&&=(Y.clearTimeout(o),void 0),X&&K.log(`[Profiling] stopped profiling of span: ${DE(e).description}`),!t){X&&K.log(`[Profiling] profiler returned null profile for: ${DE(e).description}`,`this may indicate an overlapping span or a call to stopProfiling with a profile title that was never started`);return}i=t,dBe(r,t)}).catch(e=>{X&&K.log(`[Profiling] error while stopping profiler:`,e)})}}let o=Y.setTimeout(()=>{X&&K.log(`[Profiling] max profile duration elapsed, stopping profiling for:`,DE(e).description),a()},$B),s=e.end.bind(e);function c(){return e?(a().then(()=>{s()},()=>{s()}),e):s()}e.end=c}var fBe=6e4,pBe=3e5,mBe=class{constructor(){this._client=void 0,this._profiler=void 0,this._chunkTimer=void 0,this._profilerId=void 0,this._isRunning=!1,this._sessionSampled=!1,this._lifecycleMode=void 0,this._activeRootSpanIds=new Set,this._rootSpanTimeouts=new Map}initialize(e){let t=e.getOptions().profileLifecycle,n=sBe(e.getOptions());X&&K.log(`[Profiling] Initializing profiler (lifecycle='${t}').`),n||X&&K.log(`[Profiling] Session not sampled. Skipping lifecycle profiler initialization.`),this._profilerId=lT(),this._client=e,this._sessionSampled=n,this._lifecycleMode=t,t===`trace`&&this._setupTraceLifecycleListeners(e),e.on(`spanStart`,e=>{this._isRunning&&aV(e)})}start(){if(this._lifecycleMode===`trace`){X&&K.warn('[Profiling] `profileLifecycle` is set to "trace". Calls to `uiProfiler.start()` are ignored in trace mode.');return}if(this._isRunning){X&&K.warn("[Profiling] Profile session is already running, `uiProfiler.start()` is a no-op.");return}if(!this._sessionSampled){X&&K.warn("[Profiling] Session is not sampled, `uiProfiler.start()` is a no-op.");return}this._beginProfiling()}stop(){if(this._lifecycleMode===`trace`){X&&K.warn('[Profiling] `profileLifecycle` is set to "trace". Calls to `uiProfiler.stop()` are ignored in trace mode.');return}if(!this._isRunning){X&&K.warn("[Profiling] Profiler is not running, `uiProfiler.stop()` is a no-op.");return}this._endProfiling()}notifyRootSpanActive(e){if(this._lifecycleMode!==`trace`||!this._sessionSampled)return;let t=e.spanContext().spanId;if(!t||this._activeRootSpanIds.has(t))return;this._registerTraceRootSpan(t);let n=this._activeRootSpanIds.size;n===1&&(X&&K.log(`[Profiling] Detected already active root span during setup. Active root spans now:`,n),this._beginProfiling()),this._isRunning&&aV(e)}_beginProfiling(){if(!this._isRunning){if(this._isRunning=!0,X&&K.log(`[Profiling] Started profiling with profiler ID:`,this._profilerId),VT().setContext(`profile`,{profiler_id:this._profilerId}),this._startProfilerInstance(),!this._profiler){X&&K.log(`[Profiling] Failed to start JS Profiler; stopping.`),this._resetProfilerInfo();return}this._startPeriodicChunking()}}_endProfiling(){this._isRunning&&(this._isRunning=!1,this._chunkTimer&&=(clearTimeout(this._chunkTimer),void 0),this._clearAllRootSpanTimeouts(),this._collectCurrentChunk().catch(e=>{X&&K.error("[Profiling] Failed to collect current profile chunk on `stop()`:",e)}),this._lifecycleMode===`manual`&&VT().setContext(`profile`,{}))}_setupTraceLifecycleListeners(e){e.on(`spanStart`,e=>{if(!this._sessionSampled){X&&K.log(`[Profiling] Span not profiled because of negative sampling decision for user session.`);return}if(e!==VE(e))return;if(!e.isRecording()){X&&K.log(`[Profiling] Discarding profile because root span was not sampled.`);return}let t=e.spanContext().spanId;if(!t||this._activeRootSpanIds.has(t))return;this._registerTraceRootSpan(t);let n=this._activeRootSpanIds.size;n===1&&(X&&K.log(`[Profiling] Root span ${t} started. Profiling active while there are active root spans (count=${n}).`),this._beginProfiling())}),e.on(`spanEnd`,e=>{if(!this._sessionSampled)return;let t=e.spanContext().spanId;if(!t||!this._activeRootSpanIds.has(t))return;this._activeRootSpanIds.delete(t);let n=this._activeRootSpanIds.size;X&&K.log(`[Profiling] Root span with ID ${t} ended. Will continue profiling for as long as there are active root spans (currently: ${n}).`),n===0&&(this._collectCurrentChunk().catch(e=>{X&&K.error("[Profiling] Failed to collect current profile chunk on last `spanEnd`:",e)}),this._endProfiling())})}_resetProfilerInfo(){this._isRunning=!1,VT().setContext(`profile`,{})}_clearAllRootSpanTimeouts(){this._rootSpanTimeouts.forEach(e=>clearTimeout(e)),this._rootSpanTimeouts.clear()}_registerTraceRootSpan(e){this._activeRootSpanIds.add(e);let t=setTimeout(()=>this._onRootSpanTimeout(e),pBe);this._rootSpanTimeouts.set(e,t)}_startProfilerInstance(){if(this._profiler?.stopped===!1)return;let e=eV();if(!e){X&&K.log(`[Profiling] Failed to start JS Profiler.`);return}this._profiler=e}_startPeriodicChunking(){this._isRunning&&(this._chunkTimer=setTimeout(()=>{if(this._collectCurrentChunk().catch(e=>{X&&K.error(`[Profiling] Failed to collect current profile chunk during periodic chunking:`,e)}),this._isRunning){if(this._startProfilerInstance(),!this._profiler){this._resetProfilerInfo();return}this._startPeriodicChunking()}},fBe))}_onRootSpanTimeout(e){this._rootSpanTimeouts.has(e)&&(this._rootSpanTimeouts.delete(e),this._activeRootSpanIds.has(e)&&(X&&K.log(`[Profiling] Reached 5-minute timeout for root span ${e}. You likely started a manual root span that never called \`.end()\`.`),this._activeRootSpanIds.delete(e),this._activeRootSpanIds.size===0&&this._endProfiling()))}async _collectCurrentChunk(){let e=this._profiler;if(this._profiler=void 0,e)try{let t=$ze(await e.stop(),this._client,this._profilerId),n=eBe(t);if(`reason`in n){X&&K.log(`[Profiling] Discarding invalid profile chunk (this is probably a bug in the SDK):`,n.reason);return}this._sendProfileChunk(t),X&&K.log(`[Profiling] Collected browser profile chunk.`)}catch(e){X&&K.log(`[Profiling] Error while stopping JS Profiler for chunk:`,e)}}_sendProfileChunk(e){let t=this._client,n=fD(t.getSdkMetadata?.()),r=t.getDsn(),i=t.getOptions().tunnel,a=aD({event_id:lT(),sent_at:new Date().toISOString(),...n&&{sdk:n},...!!i&&r&&{dsn:fE(r)}},[[{type:`profile_chunk`,platform:`javascript`},e]]);t.sendEnvelope(a).then(null,e=>{X&&K.error(`Error while sending profile chunk envelope:`,e)})}},hBe=`BrowserProfiling`,gBe=EO((()=>({name:hBe,setup(e){let t=e.getOptions(),n=new mBe;if(!nV(t)&&!t.profileLifecycle&&(t.profileLifecycle=`manual`),nV(t)&&!t.profilesSampleRate){X&&K.log(`[Profiling] Profiling disabled, no profiling options found.`);return}let r=UE(),i=r&&VE(r);if(nV(t)&&t.profileSessionSampleRate!==void 0&&X&&K.warn("[Profiling] Both legacy profiling (`profilesSampleRate`) and UI profiling settings are defined. `profileSessionSampleRate` has no effect when legacy profiling is enabled."),nV(t))i&&YB(i)&&tV(i)&&oV(i),e.on(`spanStart`,e=>{let t=VE(e);e===t?tV(e)&&oV(e):iV.has(t)&&aV(e)}),e.on(`beforeEnvelope`,e=>{if(!lBe())return;let t=iBe(e);if(!t.length)return;let n=[];for(let e of t){let t=e?.contexts,r=t?.profile?.profile_id,i=t?.profile?.start_timestamp;if(typeof r!=`string`){X&&K.log(`[Profiling] cannot find profile for a span without a profile context`);continue}if(!r){X&&K.log(`[Profiling] cannot find profile for a span without a profile context`);continue}t?.profile&&delete t.profile;let a=uBe(r);if(!a){X&&K.log(`[Profiling] Could not retrieve profile for span: ${r}`);continue}let o=cBe(r,i,a,e);o&&n.push(o)}rBe(e,n)});else{let r=t.profileLifecycle;if(e.on(`startUIProfiler`,()=>n.start()),e.on(`stopUIProfiler`,()=>n.stop()),r===`manual`)n.initialize(e);else if(r===`trace`){if(!qE(t)){X&&K.warn("[Profiling] `profileLifecycle` is 'trace' but tracing is disabled. Set a `tracesSampleRate` or `tracesSampler` to enable span tracing.");return}n.initialize(e),i&&n.notifyRootSpanActive(i),Y.setTimeout(()=>{let e=UE(),t=e&&VE(e);t&&n.notifyRootSpanActive(t)},0)}}}}))),_Be=`SpotlightBrowser`,vBe=[{op:`ui.interaction.click`,name:`#sentry-spotlight`}],yBe=((e={})=>{let t=e.sidecarUrl||`http://localhost:8969/stream`;return{name:_Be,setup:()=>{X&&K.log(`Using Sidecar URL`,t)},beforeSetup(e){let t=e.getOptions();t.ignoreSpans=[...t.ignoreSpans||[],...vBe]},afterAllSetup:e=>{bBe(e,t)}}});function bBe(e,t){let n=lI(`fetch`),r=0;e.on(`beforeEnvelope`,e=>{if(r>3){K.warn(`[Spotlight] Disabled Sentry -> Spotlight integration due to too many failed requests:`,r);return}n(t,{method:`POST`,body:lD(e),headers:{"Content-Type":`application/x-sentry-envelope`},mode:`cors`}).then(e=>{e.status>=200&&e.status<400&&(r=0)},e=>{r++,K.error(`Sentry SDK can't connect to Sidecar is it running? See: https://spotlightjs.com/sidecar/npx/`,e)})})}var xBe=EO(yBe),SBe=EO(()=>({name:`LaunchDarkly`,processEvent(e,t,n){return sA(e)}}));function CBe(){return{name:`sentry-flag-auditor`,type:`flag-used`,synchronous:!0,method:(e,t,n)=>{cA(e,t.value),lA(e,t.value)}}}var wBe=EO(()=>({name:`OpenFeature`,processEvent(e,t,n){return sA(e)}})),TBe=class{after(e,t){cA(t.flagKey,t.value),lA(t.flagKey,t.value)}error(e,t,n){cA(e.flagKey,e.defaultValue),lA(e.flagKey,e.defaultValue)}},EBe=EO(({featureFlagClientClass:e})=>({name:`Unleash`,setupOnce(){let t=e.prototype;Bw(t,`isEnabled`,DBe)},processEvent(e,t,n){return sA(e)}}));function DBe(e){return function(...t){let n=t[0],r=e.apply(this,t);return typeof n==`string`&&typeof r==`boolean`?(cA(n,r),lA(n,r)):X&&K.error(`[Feature Flags] UnleashClient.isEnabled does not match expected signature. arg0: ${n} (${typeof n}), result: ${r} (${typeof r})`),r}}var OBe=(({growthbookClass:e})=>ROe({growthbookClass:e})),kBe=EO(({featureFlagClient:e})=>({name:`Statsig`,setup(t){e.on(`gate_evaluation`,e=>{cA(e.gate.name,e.gate.value),lA(e.gate.name,e.gate.value)})},processEvent(e,t,n){return sA(e)}})),ABe=`WebWorker`,jBe=EO(({worker:e})=>({name:ABe,setupOnce:()=>{(Array.isArray(e)?e:[e]).forEach(e=>sV(e))},addWorker:e=>sV(e)}));function sV(e){e.addEventListener(`message`,e=>{if(PBe(e.data)){if(e.stopImmediatePropagation(),e.data._sentryDebugIds&&(X&&K.log(`Sentry debugId web worker message received`,e.data),Y._sentryDebugIds={...e.data._sentryDebugIds,...Y._sentryDebugIds}),e.data._sentryModuleMetadata&&(X&&K.log(`Sentry module metadata web worker message received`,e.data),Y._sentryModuleMetadata={...e.data._sentryModuleMetadata,...Y._sentryModuleMetadata}),e.data._sentryWasmImages){X&&K.log(`Sentry WASM images web worker message received`,e.data);let t=Y._sentryWasmImages||[],n=e.data._sentryWasmImages.filter(e=>Pw(e)&&typeof e.code_file==`string`&&!t.some(t=>t.code_file===e.code_file));Y._sentryWasmImages=[...t,...n]}e.data._sentryWorkerError&&(X&&K.log(`Sentry worker rejection message received`,e.data._sentryWorkerError),MBe(e.data._sentryWorkerError))}})}function MBe(e){let t=J();if(!t)return;let n=t.getOptions().stackParser,r=t.getOptions().attachStacktrace,i=e.reason,a=Nw(i)?OI(i):HP(n,i,void 0,r,!0);a.level=`error`,e.filename&&(a.contexts={...a.contexts,worker:{filename:e.filename}}),uO(a,{originalException:i,mechanism:{handled:!1,type:`auto.browser.web_worker.onunhandledrejection`}}),X&&K.log(`Captured worker unhandled rejection`,i)}function NBe({self:e}){e.postMessage({_sentryMessage:!0,_sentryDebugIds:e._sentryDebugIds??void 0,_sentryModuleMetadata:e._sentryModuleMetadata??void 0}),e.addEventListener(`unhandledrejection`,t=>{let n={reason:DI(t),filename:e.location?.href};e.postMessage({_sentryMessage:!0,_sentryWorkerError:n}),X&&K.log(`[Sentry Worker] Forwarding unhandled rejection to parent`,n)}),X&&K.log(`[Sentry Worker] Registered worker with unhandled rejection handling`)}function PBe(e){if(!Pw(e)||e._sentryMessage!==!0)return!1;let t=`_sentryDebugIds`in e,n=`_sentryModuleMetadata`in e,r=`_sentryWorkerError`in e,i=`_sentryWasmImages`in e;return!(!t&&!n&&!r&&!i||t&&!(Pw(e._sentryDebugIds)||e._sentryDebugIds===void 0)||n&&!(Pw(e._sentryModuleMetadata)||e._sentryModuleMetadata===void 0)||r&&!Pw(e._sentryWorkerError)||i&&(!Array.isArray(e._sentryWasmImages)||!e._sentryWasmImages.every(e=>Pw(e)&&typeof e.code_file==`string`)))}var FBe=50,[,IBe]=vI,[,LBe]=_M(),cV=(e,t=0)=>{let n=[];for(let r of e.split(`
|
|
1004
|
-
`).slice(t)){let e=
|
|
1005
|
-
If init has been called in the preload and contextIsolation is disabled, is not required to call init in the renderer`);return}window.__SENTRY__RENDERER_INIT__=!0,e.sendClientReports=!1,e.defaultIntegrations===void 0&&(e.defaultIntegrations=fV(e)),e.stackParser===void 0&&(e.stackParser=cV),e.ipcNamespace===void 0&&(e.ipcNamespace=`sentry-ipc`),e.dsn===void 0&&(e.dsn=`https://12345@dummy.dsn/12345`),e.transport===void 0&&(e.transport=dV),delete e.initialScope,t(e)}var mV=e({BrowserClient:()=>WP,MULTIPLEXED_TRANSPORT_EXTRA_KEY:()=>_De,OpenFeatureIntegrationHook:()=>TBe,SEMANTIC_ATTRIBUTE_SENTRY_OP:()=>KT,SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN:()=>qT,SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE:()=>GT,SEMANTIC_ATTRIBUTE_SENTRY_SOURCE:()=>WT,Scope:()=>kT,addBreadcrumb:()=>Ek,addEventProcessor:()=>hO,addIntegration:()=>TO,bindScopeToEmitter:()=>GTe,breadcrumbsIntegration:()=>xI,browserApiErrorsIntegration:()=>SI,browserProfilingIntegration:()=>gBe,browserSessionIntegration:()=>wI,browserTracingIntegration:()=>AB,buildLaunchDarklyFlagUsedHandler:()=>CBe,captureConsoleIntegration:()=>KDe,captureEvent:()=>uO,captureException:()=>cO,captureFeedback:()=>pA,captureMessage:()=>lO,captureSession:()=>yO,chromeStackLineParser:()=>vI,consoleLoggingIntegration:()=>XOe,contextLinesIntegration:()=>oFe,continueTrace:()=>MTe,createConsolaReporter:()=>$Oe,createLangChainCallbackHandler:()=>Vj,createTransport:()=>qO,createUserFeedbackEnvelope:()=>uPe,dedupeIntegration:()=>Kk,defaultRequestInstrumentationOptions:()=>bB,defaultStackParser:()=>cV,elementTimingIntegration:()=>TNe,endSession:()=>_O,eventFiltersIntegration:()=>kk,eventFromException:()=>BP,eventFromMessage:()=>VP,eventLoopBlockIntegration:()=>RBe,exceptionFromError:()=>IP,extraErrorDataIntegration:()=>$De,featureFlagsIntegration:()=>LOe,feedbackAsyncIntegration:()=>cMe,feedbackIntegration:()=>FP,feedbackSyncIntegration:()=>FP,fetchStreamPerformanceIntegration:()=>TB,forceLoad:()=>HPe,functionToStringIntegration:()=>Ok,getAbsoluteUrl:()=>YNe,getActiveSpan:()=>UE,getClient:()=>J,getCurrentScope:()=>q,getDefaultIntegrations:()=>fV,getFeedback:()=>hje,getGlobalScope:()=>VT,getIsolationScope:()=>BT,getReplay:()=>nze,getRootSpan:()=>VE,getSpanDescendants:()=>BE,getSpanStatusFromHttpCode:()=>eE,getTraceData:()=>Tk,globalHandlersIntegration:()=>EI,graphqlClientIntegration:()=>mFe,growthbookIntegration:()=>OBe,httpClientIntegration:()=>JPe,httpContextIntegration:()=>jI,inboundFiltersIntegration:()=>Ak,init:()=>pV,instrumentAnthropicAiClient:()=>hAe,instrumentCreateReactAgent:()=>$Ae,instrumentGoogleGenAIClient:()=>DAe,instrumentLangChainEmbeddings:()=>HAe,instrumentLangGraph:()=>eje,instrumentOpenAiClient:()=>Xke,instrumentOutgoingRequests:()=>xB,instrumentSupabaseClient:()=>iA,isBotUserAgent:()=>kB,isEnabled:()=>mO,isInitialized:()=>DEe,lastEventId:()=>pO,launchDarklyIntegration:()=>SBe,linkedErrorsIntegration:()=>MI,logger:()=>kM,makeRendererTransport:()=>dV,metrics:()=>LM,moduleMetadataIntegration:()=>UDe,normalizeStringifyValue:()=>NI,onLoad:()=>UPe,openFeatureIntegration:()=>wBe,parameterize:()=>wk,registerSpanErrorInstrumentation:()=>KE,registerWebWorker:()=>NBe,replayCanvasIntegration:()=>xze,replayIntegration:()=>Wz,reportPageLoaded:()=>Uze,reportingObserverIntegration:()=>KPe,rewriteFramesIntegration:()=>sOe,scopeToMainIntegration:()=>uV,sendFeedback:()=>fN,setActiveSpanInBrowser:()=>Wze,setAttribute:()=>TEe,setAttributes:()=>wEe,setContext:()=>dO,setConversationId:()=>EEe,setCurrentClient:()=>fk,setExtra:()=>xEe,setExtras:()=>bEe,setHttpStatus:()=>tE,setMeasurement:()=>mD,setTag:()=>CEe,setTags:()=>SEe,setUser:()=>fO,showReportDialog:()=>FI,spanStreamingIntegration:()=>Gze,spanToBaggageHeader:()=>mTe,spanToJSON:()=>DE,spanToTraceHeader:()=>SE,spotlightBrowserIntegration:()=>xBe,startBrowserTracingNavigationSpan:()=>MB,startBrowserTracingPageLoadSpan:()=>jB,startInactiveSpan:()=>ED,startNewTrace:()=>kD,startSession:()=>gO,startSpan:()=>wD,startSpanManual:()=>TD,statsigIntegration:()=>kBe,supabaseIntegration:()=>xOe,suppressTracing:()=>NTe,thirdPartyErrorFilterIntegration:()=>AOe,uiProfiler:()=>ePe,unleashIntegration:()=>EBe,updateSpanName:()=>lTe,viewHierarchyIntegration:()=>hFe,webVitalsIntegration:()=>EB,webWorkerIntegration:()=>jBe,withActiveSpan:()=>DD,withIsolationScope:()=>Mwe,withScope:()=>HT,withStreamedSpan:()=>hTe,zodErrorsIntegration:()=>kOe}),BBe=100,VBe=5,HBe=[`ResizeObserver loop completed with undelivered notifications.`,`ResizeObserver loop limit exceeded`,`AbortError`,`The user aborted a request.`,`Network request failed`,`NetworkError when attempting to fetch resource.`,`Failed to fetch`,`ChunkLoadError`,`Loading chunk`,`Loading CSS chunk`,`Non-Error promise rejection captured with value: Object Not Found Matching Id`];function hV(e){if(e)for(let t of Object.keys(e))/token|secret|password|api[_-]?key/i.test(t)&&(e[t]=`[redacted]`)}function UBe(e){e.request?.url&&(e.request.url=e.request.url.replace(/([?&](?:code|token|access_token|state)=)[^&]+/gi,`$1[redacted]`)),hV(e.extra),hV(e.tags)}function WBe(e){let t=_V(e.version)??`0.0.0`,n=_V(e.commitHash);return n?`${e.appName}@${t}+${n}`:`${e.appName}@${t}`}function gV(e,t){for(let n of t){let t=_V(e[n]);if(t)return t}}function GBe(e){return vV(e.enabled)??e.defaultEnabled??!1}function KBe(e){let t=_V(e.dsn);return!t||GBe(e)===!1?null:{dsn:t,environment:_V(e.environment)??_V(e.defaultEnvironment)??`production`,release:_V(e.release)??_V(e.defaultRelease)??void 0,debug:vV(e.debug)??e.defaultDebug??!1,tracesSampleRate:bV(e.tracesSampleRate,e.defaultTracesSampleRate??.1),profilesSampleRate:yV(e.profilesSampleRate,e.defaultProfilesSampleRate),replaysSessionSampleRate:yV(e.replaysSessionSampleRate,e.defaultReplaysSessionSampleRate),replaysOnErrorSampleRate:yV(e.replaysOnErrorSampleRate,e.defaultReplaysOnErrorSampleRate),attachStacktrace:!0,maxBreadcrumbs:BBe,normalizeDepth:VBe,tags:qBe(e)}}function qBe(e){let t={app:e.appName,runtime:e.runtime};for(let[n,r]of Object.entries(e.tags??{})){let e=_V(r);e&&(t[n]=e)}return t}function _V(e){if(e==null)return null;let t=e.trim();return t.length>0?t:null}function vV(e){if(typeof e==`boolean`)return e;let t=_V(e);if(t){if(t===`1`||t.toLowerCase()===`true`)return!0;if(t===`0`||t.toLowerCase()===`false`)return!1}}function yV(e,t){if(t!==void 0||e!==void 0)return bV(e,t??0)}function bV(e,t){let n=JBe(e);return n===null||n<0||n>1?t:n}function JBe(e){if(typeof e==`number`)return Number.isFinite(e)?e:null;let t=_V(e);if(!t)return null;let n=Number.parseFloat(t);return Number.isFinite(n)?n:null}function YBe(e){let t=(0,vi.c)(11),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=ft(ki,`bg-background text-foreground`),t[0]=n):n=t[0];let r;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(r=ft(Di,`pl-1 md:pl-2.5`),t[1]=r):r=t[1];let i;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,N.jsx)(ji,{}),t[2]=i):i=t[2];let a;t[3]===e.onGoToNewChat?a=t[4]:(a=(0,N.jsx)(`div`,{className:r,children:(0,N.jsx)(`button`,{type:`button`,"aria-label":`Go to new chat`,onClick:e.onGoToNewChat,className:`${Oi} hover:bg-accent/70`,children:i})}),t[3]=e.onGoToNewChat,t[4]=a);let o;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,N.jsx)(`div`,{}),t[5]=o):o=t[5];let s;t[6]===a?s=t[7]:(s=(0,N.jsxs)(`header`,{className:Ei,children:[a,o]}),t[6]=a,t[7]=s);let c;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,N.jsx)(`div`,{className:`flex min-h-0 flex-1 items-center justify-center px-4`,children:(0,N.jsxs)(`div`,{className:`max-w-md rounded-xl border border-border bg-card p-6 text-center shadow-lg`,children:[(0,N.jsx)(`h1`,{className:`text-xl font-semibold tracking-tight`,children:`Something went wrong.`}),(0,N.jsx)(`p`,{className:`mt-2 text-sm text-muted-foreground`,children:`Forge hit an unexpected error and reported it.`}),(0,N.jsx)(`button`,{className:`mt-4 inline-flex rounded-md border border-border px-3 py-2 text-sm font-medium hover:bg-accent`,onClick:XBe,type:`button`,children:`Reload app`})]})}),t[8]=c):c=t[8];let l;return t[9]===s?l=t[10]:(l=(0,N.jsxs)(`div`,{className:n,children:[s,c]}),t[9]=s,t[10]=l),l}function XBe(){return window.location.reload()}var ZBe=[/\bDeepSeek\b/i,/\bKimi\b/i,/\bMoonshot\b/i,/\bdeepseek[-._a-z0-9]*\b/i,/\bkimi[-._a-z0-9]*\b/i,/\bmoonshot[-._a-z0-9]*\b/i,/\bAPEX_API_KEY\b/,/\bDEEPSEEK_API_KEY\b/,/\bKIMI_API_KEY\b/,/\bOPENAI_API_KEY\b/,/\bANTHROPIC_API_KEY\b/,/\bCURSOR_API_KEY\b/,/\bOPENCODE_API_KEY\b/,/\bforge_proxy_[A-Za-z0-9._-]+\b/,/\bProviderValidationError\b/,/\/forge-server\/node_modules\//,/https?:\/\/[^\s'"<>)]*\/api\/provider-egress\/[^\s'"<>)]*/i,/https?:\/\/[^\s'"<>)]*(?:apex|deepseek|moonshot|kimi)[^\s'"<>)]*/i],QBe=`CMMD is temporarily unavailable. Check the workspace AI connection and retry.`;function xV(e){if(!e)return!1;let t=e.toLowerCase();return/\b(rate[\s-]?limit|too\s+many\s+requests|usage[ _-]limit|usage_limit_reached|quota|insufficient_quota)\b/.test(t)||/\b429\b/.test(t)}function $Be(e){return/\bbound to provider account\b/.test(e)&&/\bcannot use provider account\b/.test(e)?`Forge could not switch this conversation to the selected AI account. Retry the account switch.`:/\bforge_runtime_repairing\b/.test(e)||/\bthis turn was interrupted because the environment is being repaired\b/.test(e)?`This turn was interrupted because the environment is being repaired. Retry after the repair finishes.`:/\bforge_runtime_stopped\b/.test(e)||/\bthis turn was interrupted because the environment was stopped\b/.test(e)?`This turn was interrupted because the environment was stopped. Start the environment and retry.`:null}function eVe(e){if(!e)return null;let t=e.toLowerCase(),n=$Be(t);return n===null?/\bforge_provider_model_not_allowed\b/.test(t)||/\bnot\s+scoped\s+to\s+the\s+requested\s+model\b/.test(t)?`The workspace AI credential does not cover the model this turn asked for. Retry, or pick that model for the thread.`:/\bmodel\b[\s\S]*\b(not\s+(found|available|supported)|does\s+not\s+exist|unsupported|invalid|unknown)\b/.test(t)||/\b(unsupported|unknown|invalid)\b[\s\S]*\bmodel\b/.test(t)||/\b(model_not_found|invalid_model|model_not_supported)\b/.test(t)?`The selected model isn't available right now. Pick a different model and retry.`:xV(t)?`The AI service is rate-limited or out of quota. Wait a moment and retry.`:/_credential_reconnect_required\b/.test(t)?`The workspace AI credential needs to be reconnected. Reconnect it in Settings > Providers, then retry.`:/\b(unauthorized|forbidden|authentication\s+(failed|error|required)|invalid\s+api\s+key|expired\s+(token|credential))\b/.test(t)||/\b40[13]\b/.test(t)?`Workspace AI authentication failed. Reconnect the workspace and retry.`:/\b(timed?\s*out|timeout|overloaded|service\s+unavailable)\b/.test(t)||/\b50[234]\b/.test(t)?`The AI service is temporarily overloaded. Retry in a moment.`:null:n}function tVe(e){return e?ZBe.some(t=>t.test(e)):!1}function SV(e,t={}){if(e==null)return null;let n=e.trim();return n.length===0?null:tVe(n)?eVe(n)??t.fallback??`CMMD is temporarily unavailable. Check the workspace AI connection and retry.`:n}var nVe=[/\bSocketCloseError\b/i,/\bSocketOpenError\b/i,/\bSocketReadError\b/i,/\bRpcClientDefect:\s*Unknown socket error\b/i,/Unable to connect to the Forge server WebSocket\./i,/\bping timeout\b/i];function CV(e){if(typeof e!=`string`)return!1;let t=e.trim();return t.length!==0&&nVe.some(e=>e.test(t))}function wV(e){return CV(e)?null:SV(e,{fallback:QBe})}var rVe=[/^Transport disposed$/,/WebSocket RPC request timed out after \d+ms\./],iVe=`Lost the connection to this Environment. Your message was not sent.`;function aVe(e){return e instanceof Error?CV(e.message)||rVe.some(t=>t.test(e.message.trim()))?iVe:e.message:`Failed to send message.`}var TV=`forge-web`,EV=[`VITE_SENTRY_ENVIRONMENT`,`MODE`],DV=[`VITE_SENTRY_RELEASE`],oVe=[`VITE_SENTRY_DSN`],sVe=[`VITE_SENTRY_DEBUG`],cVe=[`VITE_SENTRY_ENABLED`],lVe=[`VITE_SENTRY_TRACES_SAMPLE_RATE`],uVe=[`VITE_SENTRY_PROFILES_SAMPLE_RATE`],dVe=[`VITE_SENTRY_REPLAYS_SESSION_SAMPLE_RATE`],fVe=[`VITE_SENTRY_REPLAYS_ON_ERROR_SAMPLE_RATE`],pVe=[`VITE_SENTRY_COMMIT_SHA`,`VITE_COMMIT_SHA`],OV=!1,kV={autoInject:!1,colorScheme:`system`,formTitle:`Report a Bug`,themeLight:{accentBackground:`oklch(0.52 0.19 48)`,accentForeground:`#ffffff`,background:`#ffffff`,boxShadow:`0 24px 80px rgba(0, 0, 0, 0.18)`,foreground:`#262626`,outline:`1px solid oklch(0.52 0.19 48)`},themeDark:{accentBackground:`oklch(0.62 0.2 47)`,accentForeground:`#ffffff`,background:`#171717`,boxShadow:`0 24px 80px rgba(0, 0, 0, 0.45)`,foreground:`#f5f5f5`,outline:`1px solid oklch(0.62 0.2 47)`}};function mVe(e){let t=e.exception&&typeof e.exception==`object`&&`values`in e.exception&&Array.isArray(e.exception.values)?e.exception.values:[];return[typeof e.title==`string`?e.title:void 0,...t.flatMap(e=>{if(typeof e!=`object`||!e)return[];let t=e;return[typeof t.type==`string`?t.type:void 0,typeof t.value==`string`?t.value:void 0]})]}function hVe(e){return(e.exception&&typeof e.exception==`object`&&`values`in e.exception&&Array.isArray(e.exception.values)?e.exception.values:[]).some(e=>{if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.value!=`string`||!/All fibers interrupted without error/i.test(t.value)?!1:t.stacktrace?.frames?.some(e=>{let t=typeof e.filename==`string`?e.filename:``,n=typeof e.function==`string`?e.function:``;return t.includes(`src/rpc/wsTransport.ts`)&&n===`WsTransport.request`})})}function gVe(e){return mVe(e).some(CV)||hVe(e)}function _Ve(){let e=new URL(window.location.href);Vn?e.hash=`/new`:(e.pathname=`/new`,e.search=``,e.hash=``),window.location.assign(e.toString())}function vVe(){let e=Vn?`electron-renderer`:`browser`,t={APP_VERSION:`0.13.4`,BASE_URL:`/`,DEV:!1,MODE:`production`,PROD:!0,SSR:!1,TSS_INLINE_CSS_ENABLED:`false`,VITE_COMMIT_SHA:``,VITE_HOSTED_APP_CHANNEL:``,VITE_HTTP_URL:``,VITE_SENTRY_COMMIT_SHA:`518017fb843f3cf854b0f27708fe397d6f2eb026`,VITE_SENTRY_DEBUG:``,VITE_SENTRY_DSN:``,VITE_SENTRY_ENABLED:``,VITE_SENTRY_ENVIRONMENT:`production`,VITE_SENTRY_PROFILES_SAMPLE_RATE:``,VITE_SENTRY_RELEASE:`forge-web@0.13.4+518017fb843f3cf854b0f27708fe397d6f2eb026`,VITE_SENTRY_REPLAYS_ON_ERROR_SAMPLE_RATE:``,VITE_SENTRY_REPLAYS_SESSION_SAMPLE_RATE:``,VITE_SENTRY_TRACES_SAMPLE_RATE:``,VITE_WS_URL:``},n=gV(t,[...DV])??WBe({appName:TV,version:`0.13.4`,commitHash:gV(t,[...pVe])});return KBe({appName:TV,runtime:e,defaultEnvironment:gV(t,[...EV])??`development`,defaultRelease:n,defaultEnabled:!0,defaultTracesSampleRate:0,defaultReplaysSessionSampleRate:0,defaultReplaysOnErrorSampleRate:0,enabled:gV(t,[...cVe]),dsn:gV(t,[...oVe]),environment:gV(t,[...EV]),release:gV(t,[...DV]),debug:gV(t,[...sVe]),tracesSampleRate:gV(t,[...lVe]),profilesSampleRate:gV(t,[...uVe]),replaysSessionSampleRate:gV(t,[...dVe]),replaysOnErrorSampleRate:gV(t,[...fVe]),tags:{platform:Vn?`desktop`:`web`}})}function AV(e){return UBe(e),gVe(e)?null:e}function yVe(e){return{...e.replaysOnErrorSampleRate===void 0?{}:{replaysOnErrorSampleRate:e.replaysOnErrorSampleRate},...e.replaysSessionSampleRate===void 0?{}:{replaysSessionSampleRate:e.replaysSessionSampleRate}}}function jV(e){return{attachStacktrace:e.attachStacktrace,debug:e.debug,dsn:e.dsn,environment:e.environment,ignoreErrors:[...HBe],initialScope:{tags:e.tags},maxBreadcrumbs:e.maxBreadcrumbs,normalizeDepth:e.normalizeDepth,sendDefaultPii:!1,tracesSampleRate:e.tracesSampleRate,...e.release===void 0?{}:{release:e.release},...yVe(e)}}function bVe(e){let t=[];e.tracesSampleRate>0&&t.push(AB()),((e.replaysSessionSampleRate??0)>0||(e.replaysOnErrorSampleRate??0)>0)&&t.push(Wz());let n=FP(kV);t.push(n);try{pV({...jV(e),beforeSend:e=>AV(e),integrations:t})}catch{return null}return OV=!0,mV}function xVe(e){let t=[];e.tracesSampleRate>0&&t.push(Bx()),((e.replaysSessionSampleRate??0)>0||(e.replaysOnErrorSampleRate??0)>0)&&t.push($b());let n=Ih(kV);t.push(n);try{SS({...jV(e),beforeSend:e=>AV(e),integrations:t})}catch{return null}return OV=!0,XC}function MV(){if(OV)return Vn?mV:XC;let e=vVe();return e?Vn?bVe(e):xVe(e):null}function NV(e){if(MV()){if(Vn){fO(e);return}ql(e)}}function PV(e,t,n){if(!MV())return;let r=SVe(e);if(Vn){HT(e=>{t&&e.setTags(t);let i=cO(r);n?.showReportDialog&&FI({eventId:i})});return}ss(e=>{t&&e.setTags(t);let i=zl(r);n?.showReportDialog&&H_({eventId:i})})}function SVe(e){if(e instanceof Error)return e;if(typeof e==`string`&&e.trim().length>0)return Error(e);try{return Error(JSON.stringify(e))}catch{return Error(`Unknown non-Error exception`)}}var CVe=class extends M.Component{constructor(e){super(e),this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(e){PV(e,{origin:`react-boundary`},{showReportDialog:!0})}render(){return this.state.hasError?(0,N.jsx)(YBe,{onGoToNewChat:_Ve}):this.props.children}},FV=!1,IV=!1,LV=null,RV=null,zV=null,BV=!1,VV=new Set;function wVe(e){if(FV||IV)return;if(!e.publicKey||!e.host){IV=!0;return}if(LV)return;if(typeof window>`u`||typeof location>`u`){IV=!0;return}let t=e.publicKey,n=e.host;LV=A(async()=>{let{default:e}=await import(`./module-CPO4cjSm.js`);return{default:e}},[]).then(({default:e})=>{RV=e,e.init(t,{api_host:n,person_profiles:`identified_only`,capture_pageview:!1,capture_pageleave:!1,autocapture:!1,disable_session_recording:!0,loaded:()=>{FV=!0,zV&&HV(zV),UV(),VV.forEach(e=>e())}})}).catch(()=>{IV=!0,RV=null})}function HV(e){if(zV=e,!FV||!RV)return;let t={};e.email!==void 0&&(t.email=e.email),e.displayName!==void 0&&(t.name=e.displayName),RV.identify(e.cmmdUserId,t)}function TVe(e){return!FV||!RV?!1:RV.isFeatureEnabled(e)===!0}function UV(){!RV||BV||(BV=!0,RV.onFeatureFlags(()=>{VV.forEach(e=>e())}))}function EVe(e){return VV.add(e),FV&&RV&&(UV(),e()),()=>{VV.delete(e)}}var WV=`/api/cmmd/auth-runtime`;function DVe(e){return j({method:`POST`,path:WV},e)}function OVe(e){return j({method:`GET`,path:WV},e)}function kVe(e){return j({method:`DELETE`,path:WV},e)}function AVe(e){return j({method:`POST`,path:`${WV}/connect`},e)}function jVe(e,t){return j({method:`GET`,path:`/api/cmmd/billing`,...t?.organizationId===void 0?{}:{query:{orgId:t.organizationId}}},e)}function MVe(e,t){return j({method:`GET`,path:`/api/cmmd/billing/series`,query:{timeZone:t.timeZone}},e)}var GV=`/api/cmmd/providers/codex/credential`,KV=`/api/cmmd/providers/claude/credential`;function NVe(e){return j({method:`GET`,path:GV},e)}function PVe(e){return j({method:`DELETE`,path:GV},e)}function FVe(e){return j({method:`GET`,path:KV},e)}function IVe(e){return j({method:`DELETE`,path:KV},e)}function LVe(e,t){return j({method:`DELETE`,path:`/api/cmmd/providers/accounts/${encodeURIComponent(String(t))}`},e)}function RVe(e,t,n){return`/api/cmmd/threads/${encodeURIComponent(e)}/${encodeURIComponent(t)}/${encodeURIComponent(n)}/disposition`}function zVe(e,t,n,r,i){return j({method:`PUT`,path:RVe(t,n,r),body:i},e)}function BVe(e){return(t,n,r,i)=>zVe(e,t,n,r,i)}function qV(e,t=``){return`/api/cmmd/thread-attachments/${encodeURIComponent(e)}${t}`}function VVe(e){return{async listThreadAttachments(t){return j({method:`GET`,path:qV(t)},e)},async uploadThreadAttachment(t,n,r,i){let a=new FormData;return a.append(`file`,n),r!==void 0&&a.append(`attachmentId`,r),j({method:`POST`,path:qV(t),form:a,...i===void 0?{}:{signal:i}},e)},async getThreadAttachmentDownloadUrl(t,n){return j({method:`GET`,path:qV(t,`/${encodeURIComponent(n)}/download`)},e)},async deleteThreadAttachment(t,n){await j({method:`DELETE`,path:qV(t,`/${encodeURIComponent(n)}`)},e)}}}var HVe=class extends Error{constructor(e){super(e),this.name=`CmmdApiAuthError`}},UVe=class extends Error{status;constructor(e,t){super(e),this.name=`CmmdApiServerError`,this.status=t}};async function JV(e){try{return await e}catch(e){throw e instanceof wn?e.kind===`auth`?new HVe(e.message):new UVe(e.message,e.status??502):e}}function WVe(e,t,n){return`/api/cmmd/threads/${encodeURIComponent(e)}/${encodeURIComponent(t)}/${encodeURIComponent(n)}/archive`}function GVe(e,t,n,r,i){return j({method:`POST`,path:WVe(t,n,r),body:i},e)}function KVe(e){return(t,n,r,i)=>GVe(e,t,n,r,i)}function qVe(e){return typeof e==`object`&&!!e&&`status`in e&&e.status===409}async function JVe(e){let t={action:e.action,...e.operationId===void 0?{}:{operationId:e.operationId},expectedRevision:e.expectedRevision,force:e.force};try{return await e.submit(t)}catch(n){if(!qVe(n))throw n;let r=await e.refresh();return e.submit({...t,expectedRevision:r.revision})}}function YVe(e){return{getForgeAccountPreferences:()=>j({method:`GET`,path:`/api/cmmd/account/preferences`},e),updateForgeAccountPreferences:t=>j({method:`PATCH`,path:`/api/cmmd/account/preferences`,body:t},e),getUserSettings:t=>j({method:`GET`,path:`/api/cmmd/user/settings/${t}`},e),putUserSettings:(t,n)=>j({method:`PUT`,path:`/api/cmmd/user/settings/${t}`,body:n},e)}}function XVe(e,t,n){return j({method:`POST`,path:`/api/cmmd/forge-runtimes/${encodeURIComponent(t)}/rename`,body:{displayName:n}},e)}function ZVe(e,t,n){return j({method:`POST`,path:`/api/cmmd/devices/${encodeURIComponent(String(t))}/rename`,body:{displayName:n}},e)}function QVe(e,t){return j({method:`POST`,path:`/api/cmmd/devices/${encodeURIComponent(String(t))}/revoke`},e)}function $Ve(e){return{...e?.projectId===void 0?{}:{projectId:String(e.projectId)},...e?.allWorkspaces===!0?{allWorkspaces:`true`}:{},...e?.organizationId===void 0?{}:{orgId:String(e.organizationId)}}}var YV=`rt-demo`,XV=`th-demo`,ZV=`example-project`,eHe=`example-conversation`,QV=`2026-09-26T20:00:00.000Z`;function tHe(e,t){return e===YV&&t===XV}function nHe(){return{runtime:{id:YV,source:`forge-cloud`,runtimeKind:`cloud-vm`,displayName:`Example Forge Server`,status:`online`,endpointUrl:null,hostId:null,deviceId:null,workspaceRoot:null,githubRepoFullName:null,lastSeenAt:QV,reachability:{status:`online`,lastReachableAt:QV,source:`cloud-runtime`},metadata:null},inventoryStatus:`synced`,inventoryPublishedAt:QV,projectCount:1,threadCount:1,projects:[{projectId:ZV,title:`Example project`,workspaceRoot:null,githubRepoFullName:null,branch:null,status:`active`,threadCount:1,lastActivityAt:QV,metadata:null,publishedAt:QV,updatedAt:QV,threads:[{threadId:XV,title:`Example thread (viewer check)`,status:`active`,model:null,provider:null,providerAccountId:null,branch:null,lastMessagePreview:null,lastActivityAt:QV,kind:`master`,parentThreadId:null,workerRole:null,anchorKind:`scratch`,anchorCmmdId:null,archive:null,disposition:{manualDisposition:null,automaticDisposition:null,effectiveDisposition:null,revision:null,source:null},metadata:null,publishedAt:QV,updatedAt:QV}]}]}}function rHe(){return{conversationId:eHe,runtime:{id:YV,source:`forge-cloud`,runtimeKind:`cloud-vm`,displayName:`Example Forge Server`,status:`online`,endpointUrl:null,deviceId:null,workspaceRoot:null,githubRepoFullName:null,lastSeenAt:QV,metadata:null},project:{projectId:ZV,title:`Example project`,githubRepoFullName:null,branch:null},thread:{threadId:XV,title:`Example thread (viewer check)`,status:`active`,model:null,provider:null,providerAccountId:null,branch:null,lastActivityAt:QV,metadata:null},reachability:`online`,execution:{available:!0,reason:null},replication:null,events:[{sequence:1,eventId:`example-user-1`,kind:`user_message`,turnId:null,text:`This is an example chat thread for verifying the Forge embed viewer. It is not a live Work Session.`,status:null,occurredAt:`2026-09-26T19:58:00.000Z`},{sequence:2,eventId:`example-assistant-1`,kind:`assistant_message`,turnId:null,text:`Understood. You should see this reply in the iframe under CMMD /forge, with the composer still available below.`,status:null,occurredAt:`2026-09-26T19:59:00.000Z`},{sequence:3,eventId:`example-user-2`,kind:`user_message`,turnId:null,text:`Thanks. If these three turns render, the thread wire is working.`,status:null,occurredAt:QV}]}}function iHe(e){return e.runtimes.some(e=>e.runtime.id===YV)?{...e,runtimes:[...e.runtimes]}:{...e,runtimes:[...e.runtimes,nHe()]}}function $V(e,t){if(!e||typeof e!=`object`)return null;let n=e[t];return typeof n==`string`&&n.trim().length>0?n.trim():null}function aHe(e,t){if(!e||typeof e!=`object`)return null;let n=e[t];return typeof n==`boolean`?n:null}function eH(e,t){if(!e||typeof e!=`object`)return null;let n=e[t];return typeof n==`string`&&n.trim().length>0?n.trim():typeof n==`number`&&Number.isFinite(n)?String(n):null}function tH(e){return{...e.limit===void 0?{}:{limit:e.limit},...e.cursor?{cursor:e.cursor}:{}}}var nH=class extends Error{constructor(e){super(`CmmdApiClient.${e} is not implemented yet`),this.name=`CmmdApiNotImplementedError`}};function rH(e,t){if(Array.isArray(e))return e;if(e&&typeof e==`object`){let n=e[t];if(Array.isArray(n))return n}return[]}function iH(e,t){if(Array.isArray(e))return e;if(e&&typeof e==`object`){let n=e[t];if(Array.isArray(n))return n}return[]}function aH(e,t){let n={};return e?.organizationId&&(n.orgId=e.organizationId),t!==void 0&&(n.taskId=String(t)),Object.keys(n).length>0?n:void 0}function oH(e){let t=`${$V(e,`firstName`)??``} ${$V(e,`lastName`)??``}`.trim()||$V(e,`username`)||$V(e,`email`)||`Unknown`;return{id:eH(e,`userId`)??eH(e,`id`)??t,name:t,email:$V(e,`email`),role:$V(e,`role`),avatarUrl:$V(e,`profileImage`)??$V(e,`avatar`)}}function oHe(e){let t=cH(e,`user`)??e;return oH({...typeof t==`object`&&t?t:{},userId:eH(e,`userId`)??eH(t,`id`),role:$V(e,`role`)})}function sH(e){let t=$V(e,`authorFirstName`)??``,n=$V(e,`authorLastName`)??``,r=$V(e,`status`),i=r===`at_risk`||r===`off_track`||r===`complete`?r:`on_track`;return{id:eH(e,`id`)??``,status:i,body:$V(e,`body`)??``,authorName:`${t} ${n}`.trim()||null,authorAvatarUrl:$V(e,`authorProfileImage`)??null,createdAt:$V(e,`createdAt`)??``,updatedAt:$V(e,`updatedAt`)??$V(e,`createdAt`)??``,canEdit:aHe(e,`canEdit`)??!1}}function sHe(e,t,n){let r=Array.isArray(e.data)?e.data.map(sH):[];return{updates:r,pagination:e.pagination??{page:t,limit:n,total:r.length,hasMore:!1}}}function cH(e,t){if(!e||typeof e!=`object`)return null;let n=e[t];return n&&typeof n==`object`?n:null}var cHe=[`avatarUrl`,`avatar_url`,`profileImage`,`profile_image`,`profileImageUrl`,`profile_image_url`,`image`,`imageUrl`,`image_url`,`picture`];function lH(e,t){let n=cH(e,t);if(!n)return null;for(let e of cHe){let t=$V(n,e);if(t)return t}return null}function uH(e,t){let n=cH(e,t);return n?eH(n,`id`):null}function dH(e,t){return!!(e&&typeof e==`object`&&Object.hasOwn(e,t))}function lHe(e){let t={...e,id:eH(e,`id`)??e.id,title:e.title??$V(e,`name`)??``},n=eH(e,`workspaceId`)??eH(e,`workspace_id`)??uH(e,`workspace`)??e.workspaceId??null;return n!==null||dH(e,`workspaceId`)?{...t,workspaceId:n,startDate:e.startDate??$V(e,`start_date`)??null,endDate:e.endDate??$V(e,`end_date`)??null}:t}function fH(e){let t=e.ownerAvatarUrl??$V(e,`owner_avatar_url`)??$V(e,`ownerProfileImage`)??$V(e,`owner_profile_image`)??$V(e,`ownerImage`)??$V(e,`owner_image`)??$V(e,`ownerImageUrl`)??$V(e,`owner_image_url`)??$V(e,`createdByAvatarUrl`)??$V(e,`created_by_avatar_url`)??$V(e,`createdByProfileImage`)??$V(e,`created_by_profile_image`)??lH(e,`owner`)??lH(e,`createdBy`)??lH(e,`created_by`)??null,n={...e,id:eH(e,`id`)??e.id},r=eH(e,`campaignId`)??eH(e,`campaign_id`)??uH(e,`campaign`)??e.campaignId??null;(r!==null||dH(e,`campaignId`))&&(n.campaignId=r);let i=e.campaignTitle??$V(e,`campaignTitle`)??$V(e,`campaign_title`)??$V(cH(e,`campaign`),`title`)??$V(cH(e,`campaign`),`name`)??null;(i!==null||dH(e,`campaignTitle`))&&(n.campaignTitle=i);let a=eH(e,`workspaceId`)??eH(e,`workspace_id`)??uH(e,`workspace`)??e.workspaceId??null;(a!==null||dH(e,`workspaceId`))&&(n.workspaceId=a);let o=e.workspaceName??$V(e,`workspace_name`)??$V(cH(e,`workspace`),`name`)??null;(o!==null||dH(e,`workspaceName`))&&(n.workspaceName=o);let s=$V(e,`workspaceIconUrl`)??$V(e,`workspace_icon_url`)??$V(cH(e,`workspace`),`iconUrl`)??null;(s!==null||dH(e,`workspaceIconUrl`))&&(n.workspaceIconUrl=s);let c=eH(e,`ownerId`)??eH(e,`owner_id`)??uH(e,`owner`)??e.ownerId??null;(c!==null||dH(e,`ownerId`))&&(n.ownerId=c);let l=e.ownerName??$V(e,`owner_name`)??$V(cH(e,`owner`),`name`)??null;(l!==null||dH(e,`ownerName`))&&(n.ownerName=l),(t!==null||dH(e,`ownerAvatarUrl`))&&(n.ownerAvatarUrl=t);let u=eH(e,`teamId`)??eH(e,`team_id`)??uH(e,`team`)??e.teamId??null;(u!==null||dH(e,`teamId`))&&(n.teamId=u);let d=e.teamName??$V(e,`team_name`)??$V(cH(e,`team`),`name`)??null;(d!==null||dH(e,`teamName`))&&(n.teamName=d);let f=e.startDate??$V(e,`start_date`)??null;(f!==null||dH(e,`startDate`))&&(n.startDate=f);let p=e.targetEndDate??$V(e,`target_end_date`)??null;return(p!==null||dH(e,`targetEndDate`))&&(n.targetEndDate=p),n}function pH(e){if(Array.isArray(e))return e;if(e&&typeof e==`object`){let t=e;if(Array.isArray(t.items))return t.items;if(Array.isArray(t.results))return t.results}return[]}function uHe(e){return pH(e).flatMap(e=>{let t=e,n=typeof t.id==`number`?t.id:null,r=typeof t.name==`string`?t.name:null;if(n===null||r===null)return[];let i=e=>typeof t[e]==`string`?t[e]:null;return[{id:n,name:r,startDate:i(`startDate`),endDate:i(`endDate`),status:i(`status`)}]})}function dHe(e){if(e&&typeof e==`object`){let t=e;if(t.project&&typeof t.project==`object`)return t.project}return e}function mH(e){if(e===null||e.trim()===``)return null;let t=Number(e);return Number.isSafeInteger(t)?t:e}var hH=class e{cfg;putThreadDisposition;listThreadAttachments;uploadThreadAttachment;getThreadAttachmentDownloadUrl;deleteThreadAttachment;postThreadArchive;getForgeAccountPreferences;updateForgeAccountPreferences;getUserSettings;putUserSettings;commentEditIdempotencyKeys=new Map;commentDeleteIdempotencyKeys=new Map;constructor(e={}){let t=e.forgeOrigin===void 0,n=e.forgeOrigin??`http://localhost:13773`;this.cfg={resolveUrl:t?hn:e=>`${n}${e}`,maxRetries:e.maxRetries??3,onAuthExpired:e.onAuthExpired??Cn,...t?{resolveBearerToken:()=>bn()?.bearerToken??null}:{}},this.putThreadDisposition=BVe(this.cfg);let r=VVe(this.cfg);this.listThreadAttachments=r.listThreadAttachments,this.uploadThreadAttachment=r.uploadThreadAttachment,this.getThreadAttachmentDownloadUrl=r.getThreadAttachmentDownloadUrl,this.deleteThreadAttachment=r.deleteThreadAttachment,this.postThreadArchive=KVe(this.cfg);let i=YVe(this.cfg);this.getForgeAccountPreferences=i.getForgeAccountPreferences,this.updateForgeAccountPreferences=i.updateForgeAccountPreferences,this.getUserSettings=i.getUserSettings,this.putUserSettings=i.putUserSettings}async getTask(e){return JV(j({method:`GET`,path:`/api/cmmd/tasks/${e}`},this.cfg))}async getForgeTaskDetail(e){return j({method:`GET`,path:`/api/cmmd/tasks/${e}`},this.cfg)}async searchTasks(e){let t={q:e.q};return e.status&&(t.status=e.status),e.limit!==void 0&&(t.limit=e.limit),e.projectId&&(t.projectId=e.projectId),(await JV(j({method:`GET`,path:`/api/cmmd/tasks/search`,query:t},this.cfg))).tasks??[]}async getTaskComments(e){return(await JV(j({method:`GET`,path:`/api/cmmd/tasks/${e}/comments`},this.cfg))).comments??[]}async listProjectTaskComments(e){return(await JV(j({method:`GET`,path:`/api/cmmd/tasks/${e}/comments`},this.cfg))).comments??[]}async createProjectTaskComment(e,t){return(await JV(j({method:`POST`,path:`/api/cmmd/tasks/comment`,body:{taskId:e,content:t.content}},this.cfg))).details}async updateProjectTaskComment(e,t,n){return(await JV(j({method:`PATCH`,path:`/api/cmmd/tasks/${e}/comments/${encodeURIComponent(t)}`,body:n},this.cfg))).comment}async deleteProjectTaskComment(e,t,n){return JV(j({method:`DELETE`,path:`/api/cmmd/tasks/${e}/comments/${encodeURIComponent(t)}`,body:n},this.cfg))}async getTaskAttachments(e){return JV(j({method:`GET`,path:`/api/cmmd/tasks/${e}/attachments`},this.cfg))}async getProjectRepository(e){return JV(j({method:`GET`,path:`/api/cmmd/projects/${e}/repository`},this.cfg))}async listProjectRepositories(e){return(await JV(j({method:`GET`,path:`/api/cmmd/projects/${e}/repositories`},this.cfg))).repositories}async getWorkspaceMembers(e){return JV(j({method:`GET`,path:`/api/cmmd/organizations/${e}/members`},this.cfg))}async getWebSocketToken(e){return j({method:`GET`,path:`/api/cmmd/ws-token`,...e?.signal===void 0?{}:{signal:e.signal}},this.cfg)}async getProjectComments(e,t){let n={};return t?.organizationId&&(n.organizationId=t.organizationId),(await j({method:`GET`,path:`/api/cmmd/projects/${e}/comments`,query:n},this.cfg))?.comments??[]}async getProjectLink(e){return j({method:`GET`,path:`/.well-known/forge/project-link`,query:{environmentId:e.environmentId,projectId:e.projectId,cwd:e.cwd}},this.cfg)}async listProjectLinks(){return j({method:`GET`,path:`/.well-known/forge/project-links`,suppressBearerToken:!0},this.cfg)}async listProjectContextLinks(e){let t={};e.environmentId&&(t.forgeEnvironmentId=e.environmentId),e.projectId&&(t.forgeProjectId=e.projectId),e.githubRepoFullName&&(t.githubRepoFullName=e.githubRepoFullName),e.cmmdOrganizationId&&(t.cmmdOrganizationId=e.cmmdOrganizationId);let n=await j({method:`GET`,path:`/.well-known/forge/cmmd/project-links`,query:t},this.cfg),r=vte(hte)(n);return r._tag===`Some`?r.value.links:[]}async listCmmdWorkspaces(){return pH(await j({method:`GET`,path:`/.well-known/forge/cmmd/workspaces`},this.cfg))}async listCmmdCampaigns(e){return uHe(await j({method:`GET`,path:`/.well-known/forge/cmmd/campaigns`,query:{workspaceId:e.workspaceId}},this.cfg))}async listCmmdProjects(e){return pH(await j({method:`GET`,path:`/.well-known/forge/cmmd/projects`,query:{campaignId:e.campaignId}},this.cfg))}async updateTask(e,t){let n={taskId:e};return t.title!==void 0&&(n.title=t.title),t.description!==void 0&&(n.description=t.description),t.status!==void 0&&(n.status=t.status),t.priority!==void 0&&(n.priority=t.priority),t.dueDate!==void 0&&(n.dueDate=t.dueDate),t.assigneeId!==void 0&&(n.assigneeId=t.assigneeId),t.labels!==void 0&&(n.labels=t.labels),JV(j({method:`POST`,path:`/api/cmmd/tasks/update`,body:n},this.cfg))}async createComment(e){return JV(j({method:`POST`,path:`/api/cmmd/tasks/comment`,body:{taskId:e.entityId,content:e.content}},this.cfg))}async updateComment(e,t,n){let r=`${e}:${t}:${n}`,i=this.commentEditIdempotencyKeys.get(r)??crypto.randomUUID();this.commentEditIdempotencyKeys.set(r,i);let a=await JV(j({method:`PATCH`,path:`/api/cmmd/tasks/${e}/comments/${t}`,body:{content:n,idempotencyKey:i}},this.cfg));return this.commentEditIdempotencyKeys.delete(r),a}async deleteComment(e,t){let n=`${e}:${t}`,r=this.commentDeleteIdempotencyKeys.get(n)??crypto.randomUUID();this.commentDeleteIdempotencyKeys.set(n,r),await JV(j({method:`DELETE`,path:`/api/cmmd/tasks/${e}/comments/${t}`,body:{idempotencyKey:r}},this.cfg)),this.commentDeleteIdempotencyKeys.delete(n)}async createProjectComment(e,t){let n=(await j({method:`POST`,path:`/api/cmmd/projects/${e}/comments`,body:{content:t.content,organizationId:t.organizationId??null}},this.cfg))?.comment;if(!n)throw new wn({kind:`server`,message:`CMMD did not return the created project comment.`});return n}async updateProject(e,t){let n={};for(let e of Mte){let r=t[e];r!==void 0&&(n[e]=Lte[e]===`nullableId`?mH(r):r)}await j({method:`PATCH`,path:`/api/cmmd/projects/${e}`,body:n},this.cfg)}async setProjectLink(e){await j({method:`POST`,path:`/.well-known/forge/project-link`,body:e},this.cfg)}async deleteProjectLink(e){await j({method:`DELETE`,path:`/.well-known/forge/project-link`,query:{environmentId:e.environmentId,projectId:e.projectId,cwd:e.cwd,...e.cmmdProjectId?{cmmdProjectId:e.cmmdProjectId}:{}}},this.cfg)}async createCmmdProject(e){return j({method:`POST`,path:`/.well-known/forge/cmmd/projects`,body:e},this.cfg)}async ensureGitHubProjectContext(e){return j({method:`POST`,path:`/.well-known/forge/cmmd/github-project-contexts/ensure`,body:e},this.cfg)}async createBrainDoc(e){return j({method:`POST`,path:`/api/cmmd/brain-docs`,body:e},this.cfg)}async uploadTaskAttachment(e,t){let n=new FormData;return n.append(`file`,t),JV(j({method:`POST`,path:`/api/cmmd/tasks/${e}/attachments`,form:n},this.cfg))}async archiveTask(e){await j({method:`POST`,path:`/api/cmmd/tasks/${e}/archive`},this.cfg)}async unarchiveTask(e){await j({method:`POST`,path:`/api/cmmd/tasks/${e}/unarchive`},this.cfg)}async getProfile(){return j({method:`GET`,path:`/api/cmmd/profile`},this.cfg)}async getUsageSummary(e){return j({method:`GET`,path:`/api/cmmd/usage/summary`,query:{sinceDay:e.sinceDay,untilDay:e.untilDay,timeZone:e.timeZone,...e.resolution===`hour`?{resolution:e.resolution,sinceTime:e.sinceTime,untilTime:e.untilTime}:{}}},this.cfg)}getBilling(e){return jVe(this.cfg,e)}getBillingSeries(e){return MVe(this.cfg,e)}async getBootstrap(){return j({method:`GET`,path:`/api/cmmd/bootstrap`},this.cfg)}async getOrgProviderPolicy(){return j({method:`GET`,path:`/api/cmmd/org/provider-policy`},this.cfg)}async listSavedDataViews(e){return j({method:`GET`,path:`/api/cmmd/saved-views`,query:{surface:e.surface,projectId:e.projectId}},this.cfg)}async createSavedDataView(e){return j({method:`POST`,path:`/api/cmmd/saved-views`,body:e},this.cfg)}async importSavedDataView(e){return j({method:`POST`,path:`/api/cmmd/saved-views/import`,body:e},this.cfg)}async updateSavedDataView(e,t){return j({method:`PATCH`,path:`/api/cmmd/saved-views/${encodeURIComponent(e)}`,body:t},this.cfg)}async deleteSavedDataView(e,t){return j({method:`DELETE`,path:`/api/cmmd/saved-views/${encodeURIComponent(e)}`,query:t},this.cfg)}async getDeviceRegistry(e){return j({method:`GET`,path:`/api/cmmd/devices`,...e?.projectId===void 0?{}:{query:{projectId:String(e.projectId)}},...e?.signal===void 0?{}:{signal:e.signal}},this.cfg)}async registerDevice(e){return j({method:`POST`,path:`/api/cmmd/devices/register`,body:e},this.cfg)}async grantRuntimeAccess(e,t){return j({method:`POST`,path:`/api/cmmd/devices/runtimes/${encodeURIComponent(e)}/access-grants`,body:t},this.cfg)}async revokeRuntimeAccess(e,t){return j({method:`POST`,path:`/api/cmmd/devices/runtimes/${encodeURIComponent(e)}/access-grants/${encodeURIComponent(String(t))}/revoke`},this.cfg)}async issueRelayControlRoute(e,t){return j({method:`POST`,path:`/api/cmmd/devices/runtimes/${encodeURIComponent(e)}/relay-routes`,body:t},this.cfg)}async issueRelayActionGrant(e,t){return j({method:`POST`,path:`/api/cmmd/devices/runtimes/${encodeURIComponent(e)}/relay-action-grants`,body:t},this.cfg)}async getRuntimeInventory(e){let t=$Ve(e);return iHe(await j({method:`GET`,path:`/api/cmmd/runtime-inventory`,...Object.keys(t).length>0?{query:t}:{}},this.cfg))}async getRuntimeDiagnostics(e){return j({method:`GET`,path:`/api/cmmd/runtime-diagnostics/v2/runtimes/${encodeURIComponent(e)}`},this.cfg)}async getCloudProjectLifecyclePreflight(e){return(await j({method:`GET`,path:`/api/cmmd/forge-cloud-projects/${encodeURIComponent(String(e))}/lifecycle-preflight`},this.cfg)).preflight}async replaceRuntimeInventory(e,t){return j({method:`PUT`,path:`/api/cmmd/devices/runtimes/${encodeURIComponent(e)}/inventory`,body:t},this.cfg)}static PROVIDER_ACCOUNTS_PATH=`/api/cmmd/providers/accounts`;static PROVIDER_USAGE_PATH=`/api/cmmd/providers/usage`;static PROVIDER_USAGE_REFRESH_PATH=`/api/cmmd/providers/usage/refresh`;provisionAuthRuntime(){return DVe(this.cfg)}getAuthRuntimeState(){return OVe(this.cfg)}destroyAuthRuntime(){return kVe(this.cfg)}connectAuthRuntime(){return AVe(this.cfg)}getUserCodexCredential(){return NVe(this.cfg)}disconnectUserCodexCredential(){return PVe(this.cfg)}getUserClaudeCredential(){return FVe(this.cfg)}async getProviderAccounts(){return j({method:`GET`,path:e.PROVIDER_ACCOUNTS_PATH},this.cfg)}async removeLinkedProviderAccount(e){return LVe(this.cfg,e)}async setProviderAccountDefault(t){return j({method:`PUT`,path:`${e.PROVIDER_ACCOUNTS_PATH}/default`,body:{provider:t.provider,provider_account_id:t.providerAccountId}},this.cfg)}async getProviderUsage(){return j({method:`GET`,path:e.PROVIDER_USAGE_PATH},this.cfg)}async refreshProviderUsage(t,n){return j({method:`POST`,path:e.PROVIDER_USAGE_REFRESH_PATH,body:{provider:t,providerAccountId:n}},this.cfg)}disconnectUserClaudeCredential(){return IVe(this.cfg)}async getClaudeRuntimeReadiness(e){return j({method:`GET`,path:`/api/cmmd/providers/claude/runtime-readiness/${encodeURIComponent(e)}`},this.cfg)}async appendRuntimeThreadEvents(e,t,n){return j({method:`POST`,path:`/api/cmmd/devices/runtimes/${encodeURIComponent(e)}/threads/${encodeURIComponent(t)}/events`,body:n},this.cfg)}async getRuntimeThreadReplica(e,t){return tHe(e,t)?rHe():j({method:`GET`,path:`/api/cmmd/threads/${encodeURIComponent(e)}/${encodeURIComponent(t)}`},this.cfg)}renameCloudEnvironment(e,t){return XVe(this.cfg,e,t)}renameDevice(e,t){return ZVe(this.cfg,e,t)}revokeDevice(e){return QVe(this.cfg,e)}static SIM_PATH=`/api/cmmd/sim-host`;static simScope(e){return e?.orgId===void 0?``:`?orgId=${encodeURIComponent(String(e.orgId))}`}async listSimHosts(t){return j({method:`GET`,path:`${e.SIM_PATH}/hosts${e.simScope(t)}`},this.cfg)}async getSimLease(t){let n=new URLSearchParams({forgeEnvironmentId:t.forgeEnvironmentId,threadId:t.threadId,...t.orgId===void 0?{}:{orgId:String(t.orgId)}});return j({method:`GET`,path:`${e.SIM_PATH}/leases?${n.toString()}`},this.cfg)}async claimSimLease(t){return j({method:`POST`,path:`${e.SIM_PATH}/leases${e.simScope(t)}`,body:{hostId:t.hostId,forgeEnvironmentId:t.forgeEnvironmentId,threadId:t.threadId,ttlMs:t.ttlMs}},this.cfg)}async renewSimLease(t){return j({method:`POST`,path:`${e.SIM_PATH}/leases/${encodeURIComponent(String(t.leaseId))}/renew${e.simScope(t)}`,body:{generation:t.generation,rowVersion:t.rowVersion,ttlMs:t.ttlMs}},this.cfg)}async releaseSimLease(t){await j({method:`POST`,path:`${e.SIM_PATH}/leases/${encodeURIComponent(String(t.leaseId))}/release${e.simScope(t)}`,body:{generation:t.generation,rowVersion:t.rowVersion}},this.cfg)}async listCampaigns(e){let t={};return e?.orgId&&(t.orgId=e.orgId),e?.allWorkspaces&&(t.allWorkspaces=`true`),rH(await j({method:`GET`,path:`/api/cmmd/campaigns`,query:t,...e?.signal?{signal:e.signal}:{}},this.cfg),`campaigns`).map(lHe)}async getCampaign(e){return j({method:`GET`,path:`/api/cmmd/campaigns/${e}`},this.cfg)}async createCampaign(e){return j({method:`POST`,path:`/api/cmmd/campaigns`,body:e},this.cfg)}async updateCampaign(e,t){return j({method:`PUT`,path:`/api/cmmd/campaigns/${e}`,body:t},this.cfg)}async deleteCampaign(e){await j({method:`DELETE`,path:`/api/cmmd/campaigns/${e}`},this.cfg)}async listProjects(e){let t={};return e?.campaignId&&(t.campaignId=e.campaignId),e?.orgId&&(t.orgId=e.orgId),e?.allWorkspaces&&(t.allWorkspaces=`true`),rH(await j({method:`GET`,path:`/api/cmmd/projects`,query:t,...e?.signal?{signal:e.signal}:{}},this.cfg),`projects`).map(fH)}async listTasks(e){let t={};return e?.projectId&&(t.projectId=e.projectId),e?.status&&(t.status=e.status),j({method:`GET`,path:`/api/cmmd/tasks`,query:t},this.cfg)}async getProject(e){return fH(await j({method:`GET`,path:`/api/cmmd/projects/${e}`},this.cfg))}async getProjectMembers(e){let t=await j({method:`GET`,path:`/api/cmmd/projects/${e}/members`},this.cfg);return Array.isArray(t)?t.map(oH):[]}async listWorkspaceMembers(){let e=await j({method:`GET`,path:`/api/cmmd/members`},this.cfg);return Array.isArray(e)?e.map(oHe):[]}async addProjectMember(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/members`,body:t},this.cfg)}async listProjectAgentMembers(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/agent-members`},this.cfg)}async createProjectAgentMember(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/agent-members`,body:t},this.cfg)}async renameProjectAgentMember(e,t,n){return j({method:`PATCH`,path:`/api/cmmd/projects/${e}/agent-members/${t}`,body:n},this.cfg)}async retireProjectAgentMember(e,t,n){return j({method:`POST`,path:`/api/cmmd/projects/${e}/agent-members/${t}/retire`,body:n},this.cfg)}async updateProjectAgentMemberAvatar(e,t,n){return j({method:`PUT`,path:`/api/cmmd/projects/${e}/agent-members/${t}/avatar`,body:n},this.cfg)}async listProjectAgentMemberInstances(e,t){return j({method:`GET`,path:`/api/cmmd/projects/${e}/agent-members/${t}/instances`},this.cfg)}async previewProjectAgentMemberConsolidation(e){return j({method:`POST`,path:`/api/cmmd/projects/${e}/agent-members/consolidation/preview`},this.cfg)}async applyProjectAgentMemberConsolidation(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/agent-members/consolidation/apply`,body:t},this.cfg)}async setProjectTaskAssignment(e,t,n){return j({method:`PUT`,path:`/api/cmmd/projects/${e}/tasks/${t}/assignment`,body:n},this.cfg)}async getProjectUpdates(e,t){let n=t?.page??1,r=t?.limit??10;return sHe(await j({method:`GET`,path:`/api/cmmd/projects/${e}/updates`,query:{page:n,limit:r},unwrapEnvelope:!1},this.cfg),n,r)}async createProjectUpdate(e,t){return sH(await j({method:`POST`,path:`/api/cmmd/projects/${e}/updates`,body:t},this.cfg))}async updateProjectUpdate(e,t,n){return sH(await j({method:`PATCH`,path:`/api/cmmd/projects/${e}/updates/${t}`,body:n},this.cfg))}async deleteProjectUpdate(e,t){await j({method:`DELETE`,path:`/api/cmmd/projects/${e}/updates/${t}`},this.cfg)}async listProjectMilestones(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/milestones`},this.cfg)}async createProjectMilestone(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/milestones`,body:t},this.cfg)}async updateProjectMilestone(e,t,n){return j({method:`PATCH`,path:`/api/cmmd/projects/${e}/milestones/${t}`,body:n},this.cfg)}async deleteProjectMilestone(e,t){await j({method:`DELETE`,path:`/api/cmmd/projects/${e}/milestones/${t}`},this.cfg)}async improveProjectContent(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/content/readability`,body:t},this.cfg)}async listProjectBoard(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/board`},this.cfg)}async createProjectTaskDraft(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/task-drafts`,body:t},this.cfg)}async getProjectTaskDraft(e,t){return j({method:`GET`,path:`/api/cmmd/projects/${e}/task-drafts/${t}`},this.cfg)}async updateProjectTaskDraft(e,t,n){return j({method:`PATCH`,path:`/api/cmmd/projects/${e}/task-drafts/${t}`,body:n},this.cfg)}async previewProjectTaskDraft(e,t,n){return j({method:`POST`,path:`/api/cmmd/projects/${e}/task-drafts/${t}/preview`,body:n},this.cfg)}async commitProjectTaskDraft(e,t,n){return j({method:`POST`,path:`/api/cmmd/projects/${e}/task-drafts/${t}/commit`,body:n},this.cfg)}async discardProjectTaskDraft(e,t,n){return j({method:`POST`,path:`/api/cmmd/projects/${e}/task-drafts/${t}/discard`,body:n},this.cfg)}async getProjectTaskWorkflow(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/task-workflow`},this.cfg)}async updateProjectTaskWorkflow(e,t){return j({method:`PUT`,path:`/api/cmmd/projects/${e}/task-workflow`,body:t},this.cfg)}async getProjectLeadPlan(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/project-lead/plan`},this.cfg)}async activateProjectLeadAutomaticStaffing(e){return j({method:`POST`,path:`/api/cmmd/projects/${e}/project-lead/authority/activate`,body:{}},this.cfg)}async getProjectLeadReadiness(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/project-lead/readiness`},this.cfg)}async getProjectLeadCapabilities(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/project-lead/capabilities`},this.cfg)}async getProjectLeadSummary(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/project-lead/summary`},this.cfg)}async getProjectLeadDetail(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/project-lead/detail`},this.cfg)}async getProjectLeadBriefing(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/project-lead/briefing`},this.cfg)}async decideProjectLeadApproval(e,t,n){return j({method:`POST`,path:`/api/cmmd/projects/${e}/project-lead/approvals/${t}/decision`,body:n},this.cfg)}async listProjectLeadEvents(e,t){return j({method:`GET`,path:`/api/cmmd/projects/${e}/project-lead/events`,...t?{query:{...t.afterEventId===void 0?{}:{afterEventId:String(t.afterEventId)},...t.latest===void 0?{}:{latest:String(t.latest)},...t.limit===void 0?{}:{limit:String(t.limit)}}}:{}},this.cfg)}async explainProjectLead(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/project-lead/explain`},this.cfg)}async pauseProjectLead(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/project-lead/pause`,body:t},this.cfg)}async resumeProjectLead(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/project-lead/resume`,body:t},this.cfg)}async reserveProjectLeadTask(e,t,n){return j({method:`POST`,path:`/api/cmmd/projects/${e}/project-lead/tasks/${t}/reservations`,body:n},this.cfg)}async releaseProjectLeadReservation(e,t,n){return j({method:`POST`,path:`/api/cmmd/projects/${e}/project-lead/reservations/${t}/release`,body:n},this.cfg)}async reconcileProjectLead(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/project-lead/reconcile`,body:t},this.cfg)}async resolveProjectLeadAttention(e,t,n){return j({method:`POST`,path:`/api/cmmd/projects/${e}/project-lead/attention/${t}/resolve`,body:n},this.cfg)}async listCenterBoard(e){let t={};return e?.status&&(t.status=e.status),e?.workspaceId&&(t.workspaceId=String(e.workspaceId)),e?.campaignId&&(t.campaignId=String(e.campaignId)),e?.ownerId&&(t.ownerId=String(e.ownerId)),e?.includeArchived!==void 0&&(t.includeArchived=e.includeArchived),e?.q&&(t.q=e.q),j({method:`GET`,path:`/api/cmmd/work-items/board`,query:t},this.cfg)}async listForgeAutomationPresets(){return iH(await j({method:`GET`,path:`/api/cmmd/automations/presets`},this.cfg),`presets`)}async listUserForgeAutomationRules(){return iH(await j({method:`GET`,path:`/api/cmmd/automations/user/rules`},this.cfg),`rules`)}async createUserForgeAutomationRule(e){return j({method:`POST`,path:`/api/cmmd/automations/user/rules`,body:e},this.cfg)}async updateUserForgeAutomationRule(e,t){return j({method:`PATCH`,path:`/api/cmmd/automations/user/rules/${e}`,body:t},this.cfg)}async listUserForgeAutomationRuns(e){return iH(await j({method:`GET`,path:`/api/cmmd/automations/user/rules/${e}/runs`},this.cfg),`runs`)}async startUserForgeAutomationRun(e,t){return j({method:`POST`,path:`/api/cmmd/automations/user/rules/${e}/runs`,body:t},this.cfg)}async listForgeAutomationRules(e,t){let n=aH(t);return iH(await j({method:`GET`,path:`/api/cmmd/automations/projects/${e}/rules`,...n?{query:n}:{}},this.cfg),`rules`)}async createForgeAutomationRule(e,t,n){let r=aH(n);return j({method:`POST`,path:`/api/cmmd/automations/projects/${e}/rules`,body:t,...r?{query:r}:{}},this.cfg)}async updateForgeAutomationRule(e,t,n,r){let i=aH(r);return j({method:`PATCH`,path:`/api/cmmd/automations/projects/${e}/rules/${t}`,body:n,...i?{query:i}:{}},this.cfg)}async listForgeAutomationRuns(e,t){let n=aH(t,t?.taskId);return iH(await j({method:`GET`,path:`/api/cmmd/automations/projects/${e}/runs`,...n?{query:n}:{}},this.cfg),`runs`)}async getForgeAutomationRun(e,t){let n=aH(t);return j({method:`GET`,path:`/api/cmmd/automations/runs/${e}`,...n?{query:n}:{}},this.cfg)}async startForgeAutomationRun(e,t,n,r){let i=aH(r);return j({method:`POST`,path:`/api/cmmd/automations/projects/${e}/tasks/${t}/runs`,body:n,...i?{query:i}:{}},this.cfg)}async retryForgeAutomationRun(e,t,n){let r=aH(n);return j({method:`POST`,path:`/api/cmmd/automations/runs/${e}/retry`,body:t,...r?{query:r}:{}},this.cfg)}async cancelForgeAutomationRun(e,t,n){let r=aH(n);return j({method:`POST`,path:`/api/cmmd/automations/runs/${e}/cancel`,body:t,...r?{query:r}:{}},this.cfg)}async approveForgeAutomationEscalation(e,t,n){let r=aH(n);return j({method:`POST`,path:`/api/cmmd/automations/runs/${e}/escalations/approve`,body:t,...r?{query:r}:{}},this.cfg)}async rejectForgeAutomationEscalation(e,t,n){let r=aH(n);return j({method:`POST`,path:`/api/cmmd/automations/runs/${e}/escalations/reject`,body:t,...r?{query:r}:{}},this.cfg)}async createProjectBoardTask(e,t){let n={title:t.title};return t.description!==void 0&&(n.description=t.description),t.priority!==void 0&&(n.priority=t.priority),t.status!==void 0&&(n.status=t.status),t.workflowStageId!==void 0&&(n.workflowStageId=t.workflowStageId),t.assignee!==void 0&&(n.assignee=t.assignee),t.dueDate!==void 0&&(n.dueDate=t.dueDate),t.workItemType!==void 0&&(n.workItemType=t.workItemType),t.parentTaskId!==void 0&&(n.parentTaskId=t.parentTaskId),t.milestoneId!==void 0&&(n.milestoneId=t.milestoneId),t.dependsOn!==void 0&&(n.dependsOn=t.dependsOn),j({method:`POST`,path:`/api/cmmd/projects/${e}/board`,body:n},this.cfg)}async createCenterBoardTask(e){let t={title:e.title,projectId:e.projectId};return e.description!==void 0&&(t.description=e.description),e.priority!==void 0&&(t.priority=e.priority),e.status!==void 0&&(t.status=e.status),e.assignee!==void 0&&(t.assignee=e.assignee),e.dueDate!==void 0&&(t.dueDate=e.dueDate),e.workItemType!==void 0&&(t.workItemType=e.workItemType),e.parentTaskId!==void 0&&(t.parentTaskId=e.parentTaskId),e.milestoneId!==void 0&&(t.milestoneId=e.milestoneId),e.dependsOn!==void 0&&(t.dependsOn=e.dependsOn),j({method:`POST`,path:`/api/cmmd/work-items/board`,body:t},this.cfg)}async submitFeedback(e){let t={type:e.type,title:e.title,source:e.source};return e.description!==void 0&&(t.description=e.description),e.priority!==void 0&&(t.priority=e.priority),e.senderName!==void 0&&(t.senderName=e.senderName),j({method:`POST`,path:`/api/cmmd/feedback`,body:t},this.cfg)}async updateProjectBoardTask(e,t,n){return j({method:`PATCH`,path:`/api/cmmd/projects/${e}/board/${t}`,body:n},this.cfg)}async updateCenterBoardTask(e,t){return j({method:`PATCH`,path:`/api/cmmd/work-items/board/${e}`,body:t},this.cfg)}async moveCenterBoardTask(e,t){let n={toStatus:t.toStatus};return t.beforeTaskId!==void 0&&(n.beforeTaskId=t.beforeTaskId),t.afterTaskId!==void 0&&(n.afterTaskId=t.afterTaskId),j({method:`PATCH`,path:`/api/cmmd/work-items/board/${e}/move`,body:n},this.cfg)}async moveProjectBoardTask(e,t,n){let r={toStatus:n.toStatus};return n.toStageId!==void 0&&(r.toStageId=n.toStageId),n.beforeTaskId!==void 0&&(r.beforeTaskId=n.beforeTaskId),n.afterTaskId!==void 0&&(r.afterTaskId=n.afterTaskId),j({method:`PATCH`,path:`/api/cmmd/projects/${e}/board/${t}/move`,body:r},this.cfg)}async archiveProjectBoardTask(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/board/${t}/archive`},this.cfg)}async unarchiveProjectBoardTask(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/board/${t}/unarchive`},this.cfg)}async updateProjectBoardTaskStatus(e,t,n,r){return j({method:`PATCH`,path:`/api/cmmd/projects/${e}/board/${t}/status`,body:{status:n,...r?{workflowStageId:r}:{}}},this.cfg)}async listTaskExecutionOptions(e,t){return j({method:`GET`,path:`/api/cmmd/projects/${e}/board/${t}/execution-options`},this.cfg)}async createTaskWorkSession(e,t,n){return j({method:`POST`,path:`/api/cmmd/projects/${e}/board/${t}/work-sessions`,body:n},this.cfg)}async listProjectWorkSessions(e,t={}){return j({method:`GET`,path:`/api/cmmd/projects/${e}/work-sessions`,query:t},this.cfg)}async getWorkSession(e){return j({method:`GET`,path:`/api/cmmd/work-sessions/${e}`},this.cfg)}async updateWorkSessionStatus(e,t){return j({method:`PATCH`,path:`/api/cmmd/work-sessions/${e}`,body:{status:t}},this.cfg)}async attachWorkSessionThread(e,t){return j({method:`POST`,path:`/api/cmmd/work-sessions/${e}/threads`,body:t},this.cfg)}async listTaskConversations(e,t={}){return j({method:`GET`,path:`/api/cmmd/tasks/${e}/conversations`,query:tH(t)},this.cfg)}async linkTaskConversation(e,t){return j({method:`POST`,path:`/api/cmmd/tasks/${e}/conversations`,body:t},this.cfg)}async getTaskHistory(e){return j({method:`GET`,path:`/api/cmmd/tasks/${e}/history`},this.cfg)}async upsertTaskPullRequest(e,t){return j({method:`PUT`,path:`/api/cmmd/tasks/${e}/pull-requests`,body:t},this.cfg)}postPullRequest(e,t){return j({method:`POST`,path:`/api/cmmd/pull-requests/${e}`,body:t},this.cfg)}async listPullRequests(e){return this.postPullRequest(`list`,e)}async getPullRequestListStats(e){return this.postPullRequest(`list-stats`,e)}async getPullRequestDetail(e){return this.postPullRequest(`detail`,e)}async getPullRequestActivity(e){return this.postPullRequest(`activity`,e)}async getPullRequestDiff(e){return this.postPullRequest(`diff`,e)}async getPullRequestDiffFileContents(e){return this.postPullRequest(`diff-file-contents`,e)}async getPullRequestThreadComments(e){return this.postPullRequest(`thread/comments`,e)}async getPullRequestReviewerCandidates(e){return this.postPullRequest(`reviewer-candidates`,e)}async runPullRequestAction(e){return this.postPullRequest(`action`,e)}async createPullRequestComment(e){return this.postPullRequest(`comment`,e)}async updatePullRequest(e){return this.postPullRequest(`update`,e)}async updatePullRequestComment(e){return this.postPullRequest(`comment/update`,e)}async submitPullRequestReview(e){return this.postPullRequest(`review`,e)}async replyToPullRequestThread(e){return this.postPullRequest(`thread/reply`,e)}async setPullRequestThreadResolution(e){return this.postPullRequest(`thread/resolution`,e)}async requestPullRequestReviewers(e){return this.postPullRequest(`reviewers`,e)}async setPullRequestReaction(e){return this.postPullRequest(`reaction`,e)}async getTaskConversation(e,t,n={}){return j({method:`GET`,path:`/api/cmmd/tasks/${e}/conversations/${encodeURIComponent(t)}`,query:tH(n)},this.cfg)}async createTask(e){return j({method:`POST`,path:`/api/cmmd/tasks`,body:e},this.cfg)}async createSubtask(e){throw new nH(`createSubtask`)}async createBoardTask(e){throw new nH(`createBoardTask`)}async createProject(e){let t={};for(let[n,r]of Object.entries(e))r!=null&&(t[n]=r);return e.campaignId!==void 0&&e.campaignId!==null&&(t.campaignId=mH(e.campaignId)),e.organizationId!==void 0&&e.organizationId!==null&&(t.organizationId=mH(e.organizationId)),dHe(await j({method:`POST`,path:`/api/cmmd/projects`,body:t},this.cfg))}async moveProject(e,t){let n={targetOrgId:mH(t.targetOrgId)};return t.campaignStrategy!==void 0&&(n.campaignStrategy=t.campaignStrategy),t.targetCampaignId!==void 0&&(n.targetCampaignId=mH(t.targetCampaignId)),t.dryRun!==void 0&&(n.dryRun=t.dryRun),j({method:`POST`,path:`/api/cmmd/projects/${e}/move`,body:n},this.cfg)}async uploadBrainDoc(e,t){throw new nH(`uploadBrainDoc`)}};function gH(e){return new hH(e)}var _H=new hH({onAuthExpired:Cn}),vH=class extends Gt(`BootstrapHttpError`){},yH=e=>pe(e,`BootstrapHttpError`);function bH(e){return typeof e!=`object`||!e?!1:!!(yH(e)&&e.status===401||e instanceof Error&&e.name===`RemoteEnvironmentAuthHttpError`&&`status`in e&&e.status===401||e instanceof wn&&e.kind===`auth`)}function fHe(e){let t=e.replace(/\s+/g,` `).trim();return t.length===0?`<empty response>`:t.slice(0,120)}async function xH(e,t){let n=await e.text();try{return JSON.parse(n)}catch{throw new vH({message:`${t} returned a non-JSON response (${fHe(n)}). Ensure the Forge server is running and this route is proxied correctly.`,status:e.status})}}function pHe(e){if(!e.authenticated||!e.role)throw Error(`Authenticated session is required.`);let t=mHe(e.cmmdIdentity??null);return t?{displayName:t,email:e.cmmdIdentity?.email??null,avatarUrl:e.cmmdIdentity?.avatarUrl??null,role:e.role,verified:!0,source:`cmmd-identity`}:{displayName:`CMMD identity unavailable`,email:null,avatarUrl:null,role:e.role,verified:!1,source:`fallback`}}function mHe(e){return e&&([e.firstName,e.lastName].map(e=>e?.trim()??``).filter(e=>e.length>0).join(` `)||e.username.trim()||e.email.trim())||null}var SH=null;function hHe(){if(SH)return SH;let e=new URL(`/api/auth/session`,window.location.origin).toString(),t=fetch(e,{credentials:`include`}).then(async t=>{if(!t.ok)throw new vH({message:`Failed to load current app auth session state (${t.status}).`,status:t.status});return xH(t,e)}).then(pHe).finally(()=>{SH===t&&(SH=null)});return SH=t,t}function CH(e={resolveUrl:hn}){let t=bn()?.bearerToken;return t?{...e,bearerToken:t}:e}var wH=null,TH=null,EH=null,DH=null,OH=new Set,kH=`cmmd-forge.loggedOutLocalBootstrapCredentials.v1`;function gHe(e){let t=`${e.firstName??``} ${e.lastName??``}`.trim();NV({id:e.id,email:e.email,...t.length>0?{username:t}:{}}),HV({cmmdUserId:e.id,...e.email?{email:e.email}:{},...t.length>0?{displayName:t}:{}})}function AH(){if(typeof window>`u`||EH)return;let e=window.desktopBridge?.desktopAuth?.onStateChange;e&&(EH=e(e=>{wH=null,TH=null,DH=null,e.sessionLifecycle.status!==`ready`&&NV(null),(e.sessionLifecycle.status===`expired`||e.sessionLifecycle.status===`signed-out`&&e.sessionLifecycle.reason===`refresh-revoked`)&&pne().catch(e=>{PV(e,{route:`desktop-auth-session-expired`})})}))}function _He(){return aa(new URL(window.location.href))}function jH(){let e=new URL(window.location.href),t=Aie(e);t.toString()!==e.toString()&&window.history.replaceState({},document.title,t.toString())}async function vHe(){return BH(async()=>{let e=hn(`/api/auth/session`),t=async()=>{let t=await fetch(e,yn({credentials:`include`}));if(!t.ok)throw new vH({message:`Failed to load server auth session state (${t.status}).`,status:t.status});return xH(t,e)},n=await t();return!n.authenticated&&n.auth.sessionMethods.length===1&&n.auth.sessionMethods[0]===`proxy-asserted`&&typeof window<`u`&&!window.desktopBridge&&e.startsWith(`https://`)&&await gne()?t():n})}var MH=new Set([`CMMD_AUTH_REQUIRED`,`CMMD_AUTH_EXPIRED`]);async function yHe(e){return BH(async()=>{let t={credential:e},n=hn(`/api/auth/bootstrap`),r=await fetch(n,yn({body:JSON.stringify(t),credentials:`include`,headers:{"content-type":`application/json`},method:`POST`}));if(!r.ok)throw new vH({message:await r.text()||`Failed to bootstrap auth session (${r.status}).`,status:r.status});return xH(r,n)})}function NH(e){return new URL(e,window.location.origin).toString()}function PH(e){let t=(e?.primaryMode===`cloud`?null:e)?.bootstrapToken?.trim();return t&&t.length>0?t:null}function FH(){return typeof window>`u`?null:PH(window.desktopBridge?.getLocalEnvironmentBootstrap?.()??null)}function bHe(){return typeof window>`u`?!1:bne()===`session-expired`}function IH(){if(typeof window>`u`)return new Set;try{let e=window.sessionStorage.getItem(kH),t=e?JSON.parse(e):[];return Array.isArray(t)?new Set(t.filter(e=>typeof e==`string`)):new Set}catch{return new Set}}function LH(e){if(!(typeof window>`u`))try{if(e.size===0){window.sessionStorage.removeItem(kH);return}window.sessionStorage.setItem(kH,JSON.stringify([...e]))}catch{}}function xHe(){let e=FH();if(!e)return;let t=new Set(IH());t.add(e),LH(t)}function SHe(e){return IH().has(e)}function RH(){let e=FH();if(!e){LH(new Set);return}let t=new Set(IH());t.delete(e),LH(t)}async function zH(){let e=NH(`/api/auth/session`),t=await fetch(e,{credentials:`include`});return t.ok?xH(t,e):null}async function CHe(e){if(typeof window>`u`)return;let t=PH(e);if(!t||bHe()||OH.has(t)||SHe(t))return;if((await zH().catch(()=>null))?.authenticated){OH.add(t);return}let n=NH(`/api/auth/bootstrap`),r=await fetch(n,{body:JSON.stringify({credential:t}),credentials:`include`,headers:{"content-type":`application/json`},method:`POST`});if(!r.ok){if(r.status===401)return;throw new vH({message:await r.text()||`Failed to bootstrap local web owner session (${r.status}).`,status:r.status})}await xH(r,n),OH.add(t)}async function wHe(){let e=await vHe();if(e.authenticated)return e;let t=bn();if(t?.source!==`desktop-managed`||!t.bearerToken)return e;let n=await zH().catch(()=>null);return n?.authenticated?n:e}var THe=new Set([404,502,503,504]),EHe=15e3,DHe=500;function OHe(e){bn()?.source===`paired-bearer`&&bH(e)&&mn(`http`)}async function BH(e){let t=Date.now();for(;;)try{return await e()}catch(e){if(OHe(e),!AHe(e))throw e;if(Date.now()-t>=EHe)throw PV(e,{route:`bootstrap-retry-exhausted`}),e;await kHe(DHe)}}function kHe(e){return new Promise(t=>{setTimeout(t,e)})}function AHe(e){return yH(e)?THe.has(e.status):e instanceof TypeError||e instanceof DOMException&&e.name===`AbortError`}function jHe(e,t){return e.sessionLifecycle.status===`ready`?e.sessionLifecycle.principalId!==t.id||e.cmmd.identity?.id!==t.id?`desktop-principal-mismatch`:null:`desktop-session-required`}async function MHe(e){if(typeof window>`u`||!window.desktopBridge)return null;let t=window.desktopBridge.desktopAuth?.getState;if(!t)return`desktop-state-unavailable`;try{return jHe(await t(),e)}catch(e){return PV(e,{route:`desktop-auth-gate-state`}),`desktop-state-unavailable`}}async function NHe(e,t){return NV(null),mne(t),await vn().catch(e=>{PV(e,{route:`desktop-auth-gate-logout`})}),{status:`requires-auth`,auth:e.auth,errorMessage:Sne(t)??`Forge Desktop requires CMMD authentication.`}}async function PHe(){let e=await wHe();if(e.authenticated){if(e.cmmdIdentity){let t=await MHe(e.cmmdIdentity);return t?(xn(),NHe(e,t)):(xn(),gHe(e.cmmdIdentity),{status:`authenticated`})}return{status:`requires-auth`,auth:e.auth}}return{status:`requires-auth`,auth:e.auth}}async function FHe(e){let t=e.trim();if(!t)throw Error(`Enter a pairing token to continue.`);TH=null,RH(),await yHe(t),wH=null,jH()}function VH(){RH(),TH=null,wH=null}async function HH(e,t,n){let r=e.trim();if(!r)throw Error(`CMMD (Command) OAuth did not return an access token.`);let i=n?.refreshToken?.trim(),a=n?.mcpToken?.trim(),o=hn(`/api/auth/bootstrap/command`),s=await fetch(o,yn({body:JSON.stringify({accessToken:r,...i?{refreshToken:i}:{},...a?{mcpToken:a}:{},...t===void 0?{}:{user:t}}),credentials:`include`,headers:{"content-type":`application/json`},method:`POST`}));if(!s.ok)throw new vH({message:await s.text()||`Failed to bootstrap with CMMD OAuth token (${s.status}).`,status:s.status});await xH(s,o),VH()}async function IHe(){let e=hn(`/api/auth/ws-token`),t=await fetch(e,yn({credentials:`include`,method:`POST`}));if(!t.ok)throw new vH({message:await t.text()||`Failed to issue websocket token (${t.status}).`,status:t.status});return xH(t,e)}async function LHe(e){let t=await IHe(),n=new URL(e,window.location.origin);return n.searchParams.set(`wsToken`,t.token),n.toString()}async function RHe(e){let t=`/api/cmmd/work-intake`,n;try{n=await j({method:`GET`,path:t,allowRetry:!1,...e?{query:{fresh:1}}:{}},CH())}catch(e){throw e instanceof wn&&e.kind!==`auth`&&e.code!==null&&MH.has(e.code)?new wn({kind:`auth`,message:e.message,status:e.status??401,code:e.code}):e}if(!n)throw Error(`Invalid response from ${t}`);return n}async function zHe(e={}){return RHe(e.forceFresh===!0)}async function UH(e,t){try{return await j({method:`POST`,path:e,body:t,allowRetry:!1},CH())}catch(e){throw e instanceof wn&&e.kind!==`auth`&&e.code!==null&&MH.has(e.code)?new wn({kind:`auth`,message:e.message,status:e.status??401,code:e.code}):e}}async function BHe(e){try{return await UH(`/api/cmmd/tasks/update`,e)}catch(t){if(t instanceof wn&&(t.kind===`auth`||t.kind===`permission`))throw t;if(t instanceof wn||t instanceof Error)return UH(`/api/command/tasks/update`,e);throw t}}async function VHe(){typeof window>`u`||await window.desktopBridge?.desktopAuth?.logoutCloud?.()}async function HHe(){let e=await Promise.allSettled([vn(),VHe()]);NV(null),xHe(),wH=null,TH=null;let t=e.find(e=>e.status===`rejected`);if(t)throw t.reason}async function UHe(){if(AH(),TH?.status===`authenticated`)return xn(),TH;if(wH)return wH;let e=WH();return wH=e,e.then(e=>(e.status===`authenticated`&&(TH=e),e)).finally(()=>{wH===e&&(wH=null)})}async function WH(){return _n().then(e=>CHe(e)).then(()=>PHe())}function GH(){if(AH(),DH)return DH;wH=null,TH=null;let e=WH().then(t=>DH===e?(t.status===`authenticated`&&(TH=t,xn()),t):GH()).finally(()=>{DH===e&&(DH=null)});return DH=e,e}function WHe(e){let t=``;for(let n of e)t+=String.fromCharCode(n);return btoa(t).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=+$/u,``)}function GHe(e){let t=WHe(e).replace(/-/g,`+`).replace(/_/g,`/`);return`-----BEGIN PUBLIC KEY-----\n${((t+`=`.repeat((4-t.length%4)%4)).match(/.{1,64}/gu)??[]).join(`
|
|
1006
|
-
`)}\n-----END PUBLIC KEY-----\n`}function KH(e){return{publicKeyPem:GHe(e.publicKeySpkiDer),async sign(t){let n=await crypto.subtle.sign(`Ed25519`,e.privateKey,new TextEncoder().encode(t));return new Uint8Array(n)}}}var KHe=`cmmd-session-pop`,qH=`keys`,JH=`device-key`;function qHe(){return!1}var YH=class extends Error{constructor(e){super(`CMMD session key storage is unavailable (${e}). Session binding is enabled, so login cannot continue without a bound key: allow site data and IndexedDB for this origin, then retry.`),this.name=`CmmdSessionPopKeyStorageError`}};function JHe(e){return e===void 0?typeof indexedDB>`u`?null:indexedDB:e}function XH(e){return new Promise((t,n)=>{e.addEventListener(`success`,()=>t(e.result),{once:!0}),e.addEventListener(`error`,()=>n(e.error),{once:!0})})}function YHe(e){return new Promise((t,n)=>{e.addEventListener(`complete`,()=>t(),{once:!0}),e.addEventListener(`abort`,()=>n(e.error??new DOMException(`The transaction aborted.`,`AbortError`)),{once:!0}),e.addEventListener(`error`,()=>n(e.error??new DOMException(`The transaction failed.`,`UnknownError`)),{once:!0})})}function XHe(e){return new Promise((t,n)=>{let r=e.open(KHe,1);r.addEventListener(`upgradeneeded`,()=>{r.result.objectStoreNames.contains(qH)||r.result.createObjectStore(qH)}),r.addEventListener(`success`,()=>t(r.result),{once:!0}),r.addEventListener(`error`,()=>n(r.error),{once:!0})})}function ZH(e){if(!e||typeof e!=`object`)return!1;let t=e;return t.privateKey instanceof CryptoKey&&t.publicKeySpkiDer instanceof Uint8Array}async function ZHe(e){let t=await XH(e.transaction(qH,`readonly`).objectStore(qH).get(JH));return ZH(t)?{privateKey:t.privateKey,publicKeySpkiDer:t.publicKeySpkiDer}:null}async function QHe(e,t){let n=e.transaction(qH,`readwrite`),r=n.objectStore(qH),i=YHe(n);i.catch(()=>void 0);let a=await XH(r.get(JH));return ZH(a)?{privateKey:a.privateKey,publicKeySpkiDer:a.publicKeySpkiDer}:(await XH(r.add(t,JH)),await i,t)}var QH=null;async function $He(e={}){return qHe()?(QH??=eUe(e).finally(()=>{QH=null}),QH):null}async function eUe(e){let t=JHe(e.indexedDB),n=e.subtle??crypto.subtle;if(!t)throw new YH(`IndexedDB is not available in this context`);let r;try{r=await XHe(t)}catch{throw new YH(`the key database could not be opened`)}try{let e=await ZHe(r);if(e)return KH({privateKey:e.privateKey,publicKeySpkiDer:e.publicKeySpkiDer});let t=await n.generateKey({name:`Ed25519`},!1,[`sign`]),i={privateKey:t.privateKey,publicKeySpkiDer:new Uint8Array(await n.exportKey(`spki`,t.publicKey))};return KH(await QHe(r,i))}catch(e){throw e instanceof YH?e:new YH(`the session key could not be generated or persisted`)}}function $H(e={}){return $He(e).then(e=>e?.publicKeyPem??null)}async function tUe(e,t={}){let n=e.email.trim();if(!n||!e.password)throw Error(`Enter your CMMD email and password.`);let r=await(t.resolvePopPublicKey??$H)(),i=hn(`/api/auth/cmmd-password/token`),a=await fetch(i,yn({body:JSON.stringify({email:n,password:e.password,...r?{pop_public_key:r}:{}}),credentials:`include`,headers:{"content-type":`application/json`},method:`POST`}));if(!a.ok)throw new vH({message:await a.text()||`CMMD login failed (${a.status}).`,status:a.status});let o=await xH(a,i);if(o.authenticated===!0)return VH(),{serverEstablishedSession:!0};if(typeof o.access_token!=`string`||o.access_token.trim().length===0)throw Error(`CMMD login did not return an access token.`);return await HH(o.access_token,o.user,{refreshToken:typeof o.refresh_token==`string`?o.refresh_token:void 0,mcpToken:typeof o.mcp_token==`string`?o.mcp_token:void 0}),{serverEstablishedSession:!1}}async function eU(e,t){return await e.text()||t}async function nUe(e,t){let n=e?.trim(),r={...n?{label:n}:{},...t?{role:t}:{}},i=hn(`/api/auth/pairing-token`),a=await fetch(i,yn({body:JSON.stringify(r),credentials:`include`,headers:{"content-type":`application/json`},method:`POST`}));if(!a.ok)throw Error(await eU(a,`Failed to create pairing credential (${a.status}).`));return xH(a,i)}async function rUe(){let e=hn(`/api/auth/clients`),t=await fetch(e,yn({credentials:`include`}));if(!t.ok)throw Error(await eU(t,`Failed to load paired clients (${t.status}).`));return xH(t,e)}async function iUe(e){let t=hn(`/api/auth/pairing-links/revoke`),n=await fetch(t,yn({body:JSON.stringify({id:e}),credentials:`include`,headers:{"content-type":`application/json`},method:`POST`}));if(!n.ok)throw Error(await eU(n,`Failed to revoke the pairing link (${n.status}).`));return(await xH(n,t)).revoked}var aUe=`/.well-known/forge/environment`,tU=dt()(e=>({descriptor:null,setDescriptor:t=>e({descriptor:t}),reset:()=>e({descriptor:null})})),nU=null;function oUe(e){let t=rU();return t?zre(ni({id:t.environmentId,label:t.label,source:e.source,target:e.target}),t):null}async function sUe(){return BH(async()=>{await _n();let e=bn()?.bearerToken,t=hn(aUe),n=e?await fetch(t,{headers:{Authorization:`Bearer ${e}`}}):await fetch(t);if(!n.ok)throw new vH({message:`Failed to load server environment descriptor (${n.status}).`,status:n.status});let r=await xH(n,t);return iU(r),r})}function rU(){return tU.getState().descriptor}function cUe(){return tU(lUe)}function lUe(e){return e.descriptor?.environmentId??null}function uUe(){return tU(dUe)}function dUe(e){return e.descriptor}function fUe(){return tU(pUe)}function pUe(e){return e.descriptor?.deviceRuntimeId??null}function mUe(){return rU()?.deviceRuntimeId??null}function hUe(){return tU(gUe)}function gUe(e){return Gre(e.descriptor)}function _Ue(){return tU(vUe)}function vUe(e){return Kre(e.descriptor)}function iU(e){tU.getState().setDescriptor(e)}function yUe(e,t){return t?.primaryMode!==`cloud`||e.environmentId===t.environmentId}function aU(){let e=bn();return e?oUe({source:e.source,target:e.target}):null}function bUe(){return xUe()}async function xUe(){let e=await _n(),t=rU();if(t&&yUe(t,e))return Promise.resolve(t);if(t&&iU(null),nU)return nU;let n=sUe();return nU=n,n.finally(()=>{nU===n&&(nU=null)})}var oU=class e{#e;constructor(e){this.#e=e}static namedByCatalog(t){return new e(t.projectId)}get registrationProjectId(){return this.#e}asConfirmationIdentity(){return{registrationProjectId:this.#e}}};function sU(e){return{match:t=>t.present({target:e})}}function cU(){return{match:e=>e.provablyAbsent()}}function SUe(e){return{match:t=>t.unprovable(e)}}var CUe=class e{#e;#t;capacity;constructor(e,t,n){this.#e=e,this.#t=t,this.capacity=n}static fromValidatedBody(t,n,r){return new e(t,n,r)}listRowsForDisplay(){return this.#e}listEnvironmentsForDisplay(){return this.#t}locate(e){if(e.registrationProjectId!==void 0){let t=this.#e.find(t=>t.projectId===e.registrationProjectId);return t===void 0?cU():sU(oU.namedByCatalog(t))}if(e.runtimeId!==void 0||e.cmmdEnvironmentId!==void 0){let t=this.#e.find(t=>t.runtime!=null&&(e.runtimeId!==void 0&&t.runtime.runtimeId===e.runtimeId||e.cmmdEnvironmentId!==void 0&&t.runtime.environmentId===e.cmmdEnvironmentId));if(t)return sU(oU.namedByCatalog(t))}if(this.#e.length===0)return cU();let t=e.runtimeId??e.cmmdEnvironmentId;return SUe(t===void 0?`no identity this catalog can be matched on`:`the catalog holds ${String(this.#e.length)} row(s) that ${t} cannot be ruled out against`)}};function lU(e){let t=e,n=t&&typeof t==`object`&&`data`in t&&t.data?t.data:t,r=n?.projects;if(!Array.isArray(r))throw Error("Forge Cloud returned a project catalog this version cannot read (no `projects` list).");let i=n?.environments;if(!Array.isArray(i))throw Error("Forge Cloud returned an Environment catalog this version cannot read (invalid `environments` list).");if(!r.every(wUe))throw Error(`Forge Cloud returned a project catalog this version cannot read (invalid project entry).`);if(!i.every(TUe))throw Error(`Forge Cloud returned an Environment catalog this version cannot read (invalid Environment entry).`);return CUe.fromValidatedBody(r,i,n?.capacity??null)}function wUe(e){return!dU(e)||typeof e.organizationId!=`number`||typeof e.projectId!=`number`?!1:e.runtime===void 0||e.runtime===null||uU(e.runtime)}function TUe(e){return dU(e)&&typeof e.organizationId==`number`&&typeof e.userId==`number`&&uU(e.runtime)}function uU(e){return dU(e)&&typeof e.runtimeId==`string`&&typeof e.status==`string`}function dU(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function EUe(e,t){let n=new URL(e);return n.pathname=t,n.search=``,n.hash=``,n.toString()}function fU(e){return e.accessToken??e.resolveAccessToken?.()}function pU(e,t,n=t=>EUe(e.cmmdHttpBaseUrl,t)){return j({method:t.method,path:t.path,...t.body===void 0?{}:{body:t.body},...t.signal===void 0?{}:{signal:t.signal}},{resolveUrl:n,resolveBearerToken:()=>fU(e)})}function DUe(e,t){return pU(e,{method:`GET`,path:`/api/forge/context/cloud-projects/${encodeURIComponent(String(t.projectId))}/removal-preview`,...t.signal===void 0?{}:{signal:t.signal}},e.cloudProjectRemovalPreviewUrl?()=>e.cloudProjectRemovalPreviewUrl(t.projectId):void 0).then(e=>e.preview)}function OUe(e,t){return pU(e,{method:`POST`,path:`/api/forge/context/cloud-projects/${encodeURIComponent(String(t.projectId))}/removal`,body:{idempotencyKey:t.idempotencyKey,deletePlanningProject:t.deletePlanningProject,...t.deleteCheckoutFiles===void 0?{}:{deleteCheckoutFiles:t.deleteCheckoutFiles},...t.previewToken===void 0?{}:{previewToken:t.previewToken},...t.forceDirty===void 0?{}:{forceDirty:t.forceDirty}},...t.signal===void 0?{}:{signal:t.signal}},e.cloudProjectRemovalUrl?()=>e.cloudProjectRemovalUrl(t.projectId):void 0).then(e=>e.operation)}function mU(e,t=``){return`/api/forge/context/runtimes/${encodeURIComponent(e)}${t}`}async function kUe(e){if(e.ok)return;let{CmmdApiError:t}=await A(async()=>{let{CmmdApiError:e}=await import(`./transport-CgH8pQK3.js`).then(e=>e.r);return{CmmdApiError:e}},__vite__mapDeps([0,1]));if(e.status===401||e.status===403){let n=null;try{let t=await e.json();n=typeof t?.code==`string`?t.code:null}catch{}throw new t({kind:`auth`,message:`CMMD authentication required. Sign in again to continue.`,status:e.status,code:n})}throw new t({kind:e.status>=500?`server`:`client`,message:`forge-cloud-projects proxy error (${e.status})`,status:e.status})}var hU=class{config;constructor(e){this.config=e}async ensureRuntime(e){return(await pU(this.config,{method:`POST`,path:`/api/forge/context/runtimes/ensure`,body:{...e.projectId===void 0?{}:{projectId:e.projectId},...e.organizationId===void 0?{}:{organizationId:e.organizationId},...e.githubRepoFullName===void 0?{}:{githubRepoFullName:e.githubRepoFullName},...e.workspaceRoot===void 0?{}:{workspaceRoot:e.workspaceRoot}},...e.signal===void 0?{}:{signal:e.signal}},this.config.ensureUrl?()=>this.config.ensureUrl:void 0)).runtime}async connectRuntime(e){return pU(this.config,{method:`POST`,path:mU(e.runtimeId,`/connect`),...e.organizationId===void 0?{}:{body:{organizationId:e.organizationId}},...e.signal===void 0?{}:{signal:e.signal}})}async getRuntime(e){return(await pU(this.config,{method:`GET`,path:mU(e.runtimeId),...e.signal===void 0?{}:{signal:e.signal}})).runtime}async destroyRuntime(e){return(await pU(this.config,{method:`POST`,path:mU(e.runtimeId,`/destroy`),body:{purgeVolume:e.purgeVolume??!1,...e.force===!0?{force:!0}:{},...e.reason===void 0?{}:{reason:e.reason},...e.organizationId===void 0?{}:{organizationId:e.organizationId}},...e.signal===void 0?{}:{signal:e.signal}},this.config.destroyUrl?()=>this.config.destroyUrl(e.runtimeId):void 0)).runtime}async runRuntimeLifecycleAction(e){return(await pU(this.config,{method:`POST`,path:mU(e.runtimeId,`/${e.action}`),body:e.organizationId===void 0?{}:{organizationId:e.organizationId},...e.signal===void 0?{}:{signal:e.signal}},this.config.lifecycleUrl?()=>this.config.lifecycleUrl(e.runtimeId,e.action):void 0)).runtime}async updateRuntimeCommit(e){return(await pU(this.config,{method:`POST`,path:mU(e.runtimeId,`/update-commit`),body:e.organizationId===void 0?{}:{organizationId:e.organizationId},...e.signal===void 0?{}:{signal:e.signal}},this.config.updateCommitUrl?()=>this.config.updateCommitUrl(e.runtimeId):void 0)).operation}async getRuntimeCommitUpdateOperation(e){return(await pU(this.config,{method:`GET`,path:mU(e.runtimeId,`/update-commit/${encodeURIComponent(String(e.operationId))}`),...e.signal===void 0?{}:{signal:e.signal}},this.config.updateCommitOperationUrl?()=>this.config.updateCommitOperationUrl(e.runtimeId,e.operationId):void 0)).operation}async listCloudProjects(e){if(this.config.listUrl){let t=fU(this.config),n=await fetch(this.config.listUrl,{method:`GET`,headers:{Accept:`application/json`,...t?{Authorization:`Bearer ${t}`}:{}},credentials:t?`omit`:`include`,cache:`no-store`,...e?.signal===void 0?{}:{signal:e.signal}});return await kUe(n),lU(await n.json())}return lU(await pU(this.config,{method:`GET`,path:`/api/forge/context/cloud-projects`,...e?.signal===void 0?{}:{signal:e.signal}}))}async previewCloudProjectRemoval(e){return DUe(this.config,e)}async requestCloudProjectRemoval(e){return OUe(this.config,e)}async getCloudProjectRemoval(e){return(await pU(this.config,{method:`GET`,path:`/api/forge/context/cloud-projects/removals/${encodeURIComponent(e.operationId)}`,...e.signal===void 0?{}:{signal:e.signal}},this.config.cloudProjectRemovalReceiptUrl?()=>this.config.cloudProjectRemovalReceiptUrl(e.operationId):void 0)).operation}},gU=`/api/attachments/upload/`;function AUe(e){if(!e.relativeUrl.startsWith(gU))throw Error(`Attachment upload URL did not use the expected upload route.`);let t=e.relativeUrl.slice(24);if(!/^[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+$/.test(t))throw Error(`Attachment upload URL did not contain a valid signed token.`);if(e.relativeUrl.includes(`?`)||e.relativeUrl.includes(`#`))throw Error(`Attachment upload URL must not include a query or fragment.`);let n=new URL(e.httpBaseUrl),r=n.pathname.endsWith(`/`)?n.pathname.slice(0,-1):n.pathname,i=`${r}${gU}`,a=new URL(`${r}${e.relativeUrl}`,n);if(a.origin!==n.origin||!a.pathname.startsWith(i))throw Error(`Attachment upload URL resolved outside the selected environment.`);return a.toString()}var _U=!1,vU=null;function yU(e){return Object.values(e)}function bU(e){return e.map(e=>wt(e))}function xU(e){try{$i(bU(yU(e))).catch(e=>{console.error(`[SAVED_ENVIRONMENTS] persist failed`,e)})}catch(e){console.error(`[SAVED_ENVIRONMENTS] persist failed`,e)}}function jUe(e){let t=SU.getState().byId,n=Object.fromEntries(e.map(e=>[e.environmentId,e]));SU.setState({byId:{...n,...t}})}async function MUe(){if(_U)return;if(vU)return vU;let e=(async()=>{try{jUe(await Qi())}catch(e){console.error(`[SAVED_ENVIRONMENTS] hydrate failed`,e)}finally{_U=!0,SU.setState({hydrated:!0})}})().finally(()=>{vU===e&&(vU=null)});return vU=e,vU}var SU=dt()(e=>({byId:{},hydrated:_U,upsert:t=>e(e=>{let n={...e.byId,[t.environmentId]:t};return xU(n),{byId:n}}),remove:t=>e(e=>{let{[t]:n,...r}=e.byId;return xU(r),{byId:r}}),markConnected:(t,n)=>e(e=>{let r=e.byId[t];if(!r)return e;let i={...e.byId,[t]:{...r,lastConnectedAt:n}};return xU(i),{byId:i}}),reset:()=>{xU({}),e({byId:{}})}}));function CU(){return _U}function wU(){return CU()?Promise.resolve():MUe()}function TU(){return Object.values(SU.getState().byId).toSorted((e,t)=>e.label.localeCompare(t.label))}function NUe(){return TU().filter(e=>e.lastAuthenticatedPullRequestCapability===!0)}function EU(e){return SU.getState().byId[e]??null}function DU(e){let t=aU();return t?.environmentId===e?Rre(t):EU(e)?.httpBaseUrl??null}function OU(e){let t=DU(e.environmentId)??(typeof window<`u`?window.location.origin:null);if(!t)throw Error(`Unable to resolve HTTP base URL for environment ${e.environmentId}.`);let n=new URL(t);return n.pathname=`${n.pathname.endsWith(`/`)?n.pathname.slice(0,-1):n.pathname}${e.pathname.startsWith(`/`)?e.pathname:`/${e.pathname}`}`,e.searchParams&&(n.search=new URLSearchParams(e.searchParams).toString()),n.toString()}function kU(e){if(!DU(e))throw Error(`Unable to resolve HTTP base URL for environment ${e}.`)}function PUe(e){return kU(e.environmentId),AUe({httpBaseUrl:DU(e.environmentId),relativeUrl:e.relativeUrl})}async function AU(e){await $i(bU(yU({...SU.getState().byId,[e.environmentId]:e})))}async function FUe(e,t){let{[e]:n,...r}=SU.getState().byId,i={...r,[t.environmentId]:t};await $i(bU(yU(i))),SU.setState({byId:i})}async function jU(e){return ea(e)}async function IUe(e,t){return ta(e,t)}async function MU(e){await na(e)}function LUe(e){return new Promise(t=>globalThis.setTimeout(t,e))}function NU(){let e=Error(`The environment connection attempt was cancelled.`);return e.name=`AbortError`,e}function PU(e){if(e?.aborted)throw NU()}function FU(e,t){return t?t.aborted?Promise.reject(NU()):new Promise((n,r)=>{let i=()=>r(NU());t.addEventListener(`abort`,i,{once:!0}),e.then(n,r).finally(()=>{t.removeEventListener(`abort`,i)})}):e}function IU(e,t){return t?t.aborted?Promise.reject(NU()):new Promise((n,r)=>{let i=globalThis.setTimeout(()=>{t.removeEventListener(`abort`,a),n()},e),a=()=>{globalThis.clearTimeout(i),r(NU())};t.addEventListener(`abort`,a,{once:!0})}):LUe(e)}var RUe=Object.freeze({connectionState:`disconnected`,authState:`unknown`,lastError:null,lastErrorAt:null,role:null,descriptor:null,serverConfig:null,connectedAt:null,disconnectedAt:null,providerAuthority:null}),LU=()=>({...RUe}),RU=dt()(e=>({byId:{},ensure:t=>e(e=>e.byId[t]?e:{byId:{...e.byId,[t]:LU()}}),patch:(t,n)=>e(e=>({byId:{...e.byId,[t]:{...e.byId[t]??LU(),...n}}})),clear:t=>e(e=>{let{[t]:n,...r}=e.byId;return{byId:r}}),reset:()=>e({byId:{}})}));function zU(e){let t=EU(e.environmentId);if(t?.lastAuthenticatedPullRequestCapability!==void 0)return{...e,lastAuthenticatedPullRequestCapability:t.lastAuthenticatedPullRequestCapability};let n=RU.getState().byId?.[e.environmentId];return n?.authState===`authenticated`&&n.descriptor?{...e,lastAuthenticatedPullRequestCapability:n.descriptor.capabilities.pullRequests===!0}:e}function BU(e){return!!e.runtimeId?.trim()||Vi(e.environmentId).isCloud}function VU(e,t){return e.environmentId===t.environmentId&&e.httpBaseUrl===t.httpBaseUrl&&e.wsBaseUrl===t.wsBaseUrl&&e.runtimeId===t.runtimeId&&e.cmmdOrganizationId===t.cmmdOrganizationId}function zUe(e){return e.replacedRecord===null&&e.existing!==null&&VU(e.existing,e.record)}function BUe(e){let t=e.replacesEnvironmentId?Nt.make(e.replacesEnvironmentId):null,n=t&&t!==e.environmentId?EU(t):null;return{existing:EU(e.environmentId)??n,replacedRecord:n}}async function VUe(e){return{records:TU(),bearerToken:e?await jU(e.environmentId):null}}async function HU(e){let t=e.replacedRecord?.environmentId??e.record.environmentId;await $i(e.rollback.records),await MU(e.record.environmentId).catch(()=>void 0),e.rollback.bearerToken&&await IUe(t,e.rollback.bearerToken)}async function HUe(e){try{e.replacedRecord?await FUe(e.replacedRecord.environmentId,e.record):await AU(e.record),PU(e.signal),await MU(e.record.environmentId),e.replacedRecord&&await MU(e.replacedRecord.environmentId),PU(e.signal)}catch(t){try{await HU(e)}catch(e){let n=AggregateError([t,e],`Cloud Environment rollback failed.`);throw n.cause=t,n}throw t}}function UUe(e){return{lastError:e instanceof Error?e.message:String(e),lastErrorAt:new Date().toISOString()}}var UU=new Map;function WU(e,t){return e.acquire(t?{signal:t}:{})}function WUe(e,t){UU.set(e,t)}function GUe(e){return UU.has(e)}function GU(e,t){let n=UU.get(e);if(t&&n!==t){t.dispose();return}n?.dispose(),UU.delete(e)}async function KUe(e){let t=UU.get(e);if(t)return(await t.acquire()).bearerToken;let n=EU(e);return n&&BU(n)?null:jU(e)}function KU(){return{executionCount:0,isPending:!1,lastArgs:void 0,lastExecutionTime:0,nextExecutionTime:0,status:`idle`,maybeExecuteCount:0}}var qUe={enabled:!0,leading:!0,trailing:!0,wait:0},JUe=class{#e;constructor(e,t){this.fn=e,this.store=new ste(KU()),this.setOptions=e=>{this.options={...this.options,...e},this.#n()||this.cancel()},this.#t=e=>{this.store.setState(t=>{let n={...t,...e},{isPending:r}=n;return{...n,status:this.#n()?r?`pending`:`idle`:`disabled`}}),nte(`Throttler`,this)},this.#n=()=>!!ut(this.options.enabled,this),this.#r=()=>ut(this.options.wait,this),this.maybeExecute=(...e)=>{this.#t({maybeExecuteCount:this.store.state.maybeExecuteCount+1});let t=Date.now(),n=t-this.store.state.lastExecutionTime,r=this.#r();if(this.options.leading&&n>=r)this.#i(...e);else if(this.#t({lastArgs:e}),!this.#e&&this.options.trailing){let e=r-(this.store.state.lastExecutionTime?t-this.store.state.lastExecutionTime:0);this.#t({isPending:!0}),this.#e=setTimeout(()=>{let{lastArgs:e}=this.store.state;e!==void 0&&this.#i(...e)},e)}},this.#i=(...e)=>{if(!this.#n())return;this.fn(...e);let t=Date.now(),n=t+this.#r();this.#a(),this.#t({executionCount:this.store.state.executionCount+1,lastExecutionTime:t,nextExecutionTime:n,isPending:!1,lastArgs:void 0}),this.options.onExecute?.(e,this),setTimeout(()=>{this.store.state.isPending||this.#t({nextExecutionTime:void 0})},this.#r())},this.flush=()=>{this.store.state.isPending&&this.store.state.lastArgs&&this.#i(...this.store.state.lastArgs)},this.#a=()=>{this.#e&&=(clearTimeout(this.#e),void 0)},this.cancel=()=>{this.#a(),this.#t({lastArgs:void 0,isPending:!1})},this.reset=()=>{this.#t(KU())},this.key=t.key,this.options={...qUe,...t},this.#t(this.options.initialState??{}),this.key&&ate.on(`d-Throttler`,e=>{e.payload.key===this.key&&(this.#t(e.payload.store.state),this.setOptions(e.payload.options))})}#t;#n;#r;#i;#a},qU={all:[`projects`],searchContents:(e,t,n,r,i,a,o)=>[`projects`,`search-contents`,e??null,t,n,r,i,a,o],searchEntries:(e,t,n,r)=>[`projects`,`search-entries`,e??null,t,n,r]},JU={all:[`providers`],checkpointDiff:e=>[`providers`,`checkpointDiff`,e.environmentId??null,e.threadId,e.fromTurnCount,e.toTurnCount,e.cacheScope??null]};function YUe(e){let t=null,n=!1;function r(){return t}function i(){n=!0,t?.queryInvalidationThrottler.maybeExecute()}function a(){t?.stop(),t=null}function o(r){if(t?.queryClient===r)return t.refCount+=1,()=>{!t||t.queryClient!==r||(--t.refCount,t.refCount===0&&a())};a(),n=!1;let i=new JUe(()=>{n&&(n=!1,r.invalidateQueries({queryKey:JU.all}),r.invalidateQueries({queryKey:qU.all}))},{wait:100,leading:!1,trailing:!0});e.createPrimaryEnvironmentConnection(),_n().catch(()=>void 0);let o=SU.subscribe(()=>{CU()&&e.syncSavedEnvironmentConnections(TU())});return wU().then(()=>e.syncSavedEnvironmentConnections(TU())).catch(()=>void 0),t={queryClient:r,queryInvalidationThrottler:i,refCount:1,stop:()=>{o(),i.cancel()}},()=>{!t||t.queryClient!==r||(--t.refCount,t.refCount===0&&a())}}return{readActiveService:r,notifyProviderInvalidation:i,stopActiveService:a,start:o}}var XUe=class extends Error{status;constructor(e,t){super(e),this.name=`RemoteEnvironmentAuthHttpError`,this.status=t}};function ZUe(e,t){let n=new URL(e);return n.pathname=`${n.pathname.endsWith(`/`)?n.pathname.slice(0,-1):n.pathname}${t.startsWith(`/`)?t:`/${t}`}`,n.search=``,n.hash=``,n.toString()}async function QUe(e,t){let n=await e.text();if(!n)return t;try{let e=JSON.parse(n);if(typeof e.error==`string`&&e.error.length>0)return e.error}catch{}return n}async function YU(e){let t=ZUe(e.httpBaseUrl,e.pathname),n;try{n=await fetch(t,{method:e.method??`GET`,headers:{...e.body===void 0?{}:{"content-type":`application/json`},...e.bearerToken?{authorization:`Bearer ${e.bearerToken}`}:{}},...e.body===void 0?{}:{body:JSON.stringify(e.body)},...e.signal?{signal:e.signal}:{}})}catch(e){throw Error(`Failed to fetch remote auth endpoint ${t} (${e.message}).`,{cause:e})}if(!n.ok)throw new XUe(await QUe(n,`Remote auth request failed (${n.status}).`),n.status);return await n.json()}async function XU(e){return YU({httpBaseUrl:e.httpBaseUrl,pathname:`/api/auth/session`,bearerToken:e.bearerToken,...e.signal?{signal:e.signal}:{}})}async function $Ue(e){return YU({httpBaseUrl:e.httpBaseUrl,pathname:`/.well-known/forge/environment`,...e.bearerToken?{bearerToken:e.bearerToken}:{}})}async function eWe(e){return YU({httpBaseUrl:e.httpBaseUrl,pathname:`/api/auth/ws-token`,method:`POST`,bearerToken:e.bearerToken})}async function ZU(e){let t=new URL(e.wsBaseUrl,window.location.origin);if(e.runtimeTicket)return t.searchParams.set(`runtimeTicket`,e.runtimeTicket),t.searchParams.delete(`wsToken`),t.toString();let n=await eWe({httpBaseUrl:e.httpBaseUrl,bearerToken:e.bearerToken});return t.searchParams.set(`wsToken`,n.token),t.toString()}function tWe(e,t){if(t){wne(t,e);return}Tne(e)}function nWe(e){let t=null,n=[];for(let r of e.split(/\r?\n/)){if(r.startsWith(`event:`)){t=r.slice(6).trim();continue}r.startsWith(`data:`)&&n.push(r.slice(5).trimStart())}return{eventName:t,data:n.join(`
|
|
1003
|
+
or you can use record.mirror to access the mirror instance during recording.`,Yz={map:{},getId(){return console.error(Jz),-1},getNode(){return console.error(Jz),null},removeNodeFromMap(){console.error(Jz)},has(){return console.error(Jz),!1},reset(){console.error(Jz)}};typeof window<`u`&&window.Proxy&&window.Reflect&&(Yz=new Proxy(Yz,{get(e,t,n){return t===`map`&&console.error(Jz),Reflect.get(e,t,n)}}));function Xz(e,t,n,r,i=window){let a=i.Object.getOwnPropertyDescriptor(e,t);return i.Object.defineProperty(e,t,r?n:{set(e){nB(()=>{n.set.call(this,e)},0),a&&a.set&&a.set.call(this,e)}}),()=>Xz(e,t,a||{},!0)}function Zz(e,t,n){try{if(!(t in e))return()=>{};let r=e[t],i=n(r);return typeof i==`function`&&(i.prototype=i.prototype||{},Object.defineProperties(i,{__rrweb_original__:{enumerable:!1,value:r}})),e[t]=i,()=>{e[t]=r}}catch{return()=>{}}}Date.now().toString();function lze(e){if(!e)return null;try{return e.nodeType===e.ELEMENT_NODE?e:e.parentElement}catch{return null}}function Qz(e,t,n,r,i){if(!e)return!1;let a=lze(e);if(!a)return!1;let o=qz(t,n);if(!i){let e=r&&a.matches(r);return o(a)&&!e}let s=Kz(a,o),c=-1;return s<0?!1:(r&&(c=Kz(a,qz(null,r))),s>-1&&c<0||s<c)}var $z={};function eB(e){let t=$z[e];if(t)return t;let n=window.document,r=window[e];if(n&&typeof n.createElement==`function`)try{let t=n.createElement(`iframe`);t.hidden=!0,n.head.appendChild(t);let i=t.contentWindow;i&&i[e]&&(r=i[e]),n.head.removeChild(t)}catch{}return $z[e]=r.bind(window)}function tB(...e){return eB(`requestAnimationFrame`)(...e)}function nB(...e){return eB(`setTimeout`)(...e)}var rB=(e=>(e[e[`2D`]=0]=`2D`,e[e.WebGL=1]=`WebGL`,e[e.WebGL2=2]=`WebGL2`,e))(rB||{}),iB;function uze(e){iB=e}for(var aB=e=>iB?((...t)=>{try{return e(...t)}catch(e){if(iB&&iB(e)===!0)return()=>{};throw e}}):e,oB=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,dze=typeof Uint8Array>`u`?[]:new Uint8Array(256),sB=0;sB<oB.length;sB++)dze[oB.charCodeAt(sB)]=sB;var fze=function(e){var t=new Uint8Array(e),n,r=t.length,i=``;for(n=0;n<r;n+=3)i+=oB[t[n]>>2],i+=oB[(t[n]&3)<<4|t[n+1]>>4],i+=oB[(t[n+1]&15)<<2|t[n+2]>>6],i+=oB[t[n+2]&63];return r%3==2?i=i.substring(0,i.length-1)+`=`:r%3==1&&(i=i.substring(0,i.length-2)+`==`),i},cB=new Map;function pze(e,t){let n=cB.get(e);return n||(n=new Map,cB.set(e,n)),n.has(t)||n.set(t,[]),n.get(t)}var lB=(e,t,n)=>{if(!e||!(fB(e,t)||typeof e==`object`))return;let r=e.constructor.name,i=pze(n,r),a=i.indexOf(e);return a===-1&&(a=i.length,i.push(e)),a};function uB(e,t,n){if(e instanceof Array)return e.map(e=>uB(e,t,n));if(e===null)return e;if(e instanceof Float32Array||e instanceof Float64Array||e instanceof Int32Array||e instanceof Uint32Array||e instanceof Uint8Array||e instanceof Uint16Array||e instanceof Int16Array||e instanceof Int8Array||e instanceof Uint8ClampedArray)return{rr_type:e.constructor.name,args:[Object.values(e)]};if(e instanceof ArrayBuffer)return{rr_type:e.constructor.name,base64:fze(e)};if(e instanceof DataView)return{rr_type:e.constructor.name,args:[uB(e.buffer,t,n),e.byteOffset,e.byteLength]};if(e instanceof HTMLImageElement){let t=e.constructor.name,{src:n}=e;return{rr_type:t,src:n}}return e instanceof HTMLCanvasElement?{rr_type:`HTMLImageElement`,src:e.toDataURL()}:e instanceof ImageData?{rr_type:e.constructor.name,args:[uB(e.data,t,n),e.width,e.height]}:fB(e,t)||typeof e==`object`?{rr_type:e.constructor.name,index:lB(e,t,n)}:e}var dB=(e,t,n)=>e.map(e=>uB(e,t,n)),fB=(e,t)=>!![`WebGLActiveInfo`,`WebGLBuffer`,`WebGLFramebuffer`,`WebGLProgram`,`WebGLRenderbuffer`,`WebGLShader`,`WebGLShaderPrecisionFormat`,`WebGLTexture`,`WebGLUniformLocation`,`WebGLVertexArrayObject`,`WebGLVertexArrayObjectOES`].filter(e=>typeof t[e]==`function`).find(n=>e instanceof t[n]);function mze(e,t,n,r,i){let a=[],o=Object.getOwnPropertyNames(t.CanvasRenderingContext2D.prototype);for(let s of o)try{if(typeof t.CanvasRenderingContext2D.prototype[s]!=`function`)continue;let o=Zz(t.CanvasRenderingContext2D.prototype,s,function(a){return function(...o){return Qz(this.canvas,n,r,i,!0)||nB(()=>{let n=dB(o,t,this);e(this.canvas,{type:rB[`2D`],property:s,args:n})},0),a.apply(this,o)}});a.push(o)}catch{let n=Xz(t.CanvasRenderingContext2D.prototype,s,{set(t){e(this.canvas,{type:rB[`2D`],property:s,args:[t],setter:!0})}});a.push(n)}return()=>{a.forEach(e=>e())}}function hze(e){return e===`experimental-webgl`?`webgl`:e}function pB(e,t,n,r,i){let a=[];try{let o=Zz(e.HTMLCanvasElement.prototype,`getContext`,function(e){return function(a,...o){if(!Qz(this,t,n,r,!0)){let e=hze(a);if(`__context`in this||(this.__context=e),i&&[`webgl`,`webgl2`].includes(e))if(o[0]&&typeof o[0]==`object`){let e=o[0];e.preserveDrawingBuffer||=!0}else o.splice(0,1,{preserveDrawingBuffer:!0})}return e.apply(this,[a,...o])}});a.push(o)}catch{console.error(`failed to patch HTMLCanvasElement.prototype.getContext`)}return()=>{a.forEach(e=>e())}}function mB(e,t,n,r,i,a,o,s){let c=[],l=Object.getOwnPropertyNames(e);for(let o of l)if(![`isContextLost`,`canvas`,`drawingBufferWidth`,`drawingBufferHeight`].includes(o))try{if(typeof e[o]!=`function`)continue;let l=Zz(e,o,function(e){return function(...c){let l=e.apply(this,c);if(lB(l,s,this),`tagName`in this.canvas&&!Qz(this.canvas,r,i,a,!0)){let e=dB(c,s,this),r={type:t,property:o,args:e};n(this.canvas,r)}return l}});c.push(l)}catch{let r=Xz(e,o,{set(e){n(this.canvas,{type:t,property:o,args:[e],setter:!0})}});c.push(r)}return c}function gze(e,t,n,r,i,a){let o=[];return o.push(...mB(t.WebGLRenderingContext.prototype,rB.WebGL,e,n,r,i,a,t)),t.WebGL2RenderingContext!==void 0&&o.push(...mB(t.WebGL2RenderingContext.prototype,rB.WebGL2,e,n,r,i,a,t)),()=>{o.forEach(e=>e())}}var _ze=`for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t="undefined"==typeof Uint8Array?[]:new Uint8Array(256),a=0;a<64;a++)t[e.charCodeAt(a)]=a;var n=function(t){var a,n=new Uint8Array(t),r=n.length,s="";for(a=0;a<r;a+=3)s+=e[n[a]>>2],s+=e[(3&n[a])<<4|n[a+1]>>4],s+=e[(15&n[a+1])<<2|n[a+2]>>6],s+=e[63&n[a+2]];return r%3==2?s=s.substring(0,s.length-1)+"=":r%3==1&&(s=s.substring(0,s.length-2)+"=="),s};const r=new Map,s=new Map;const i=self;i.onmessage=async function(e){if(!("OffscreenCanvas"in globalThis))return i.postMessage({id:e.data.id});{const{id:t,bitmap:a,width:o,height:f,maxCanvasSize:c,dataURLOptions:g}=e.data,u=async function(e,t,a){const r=e+"-"+t;if("OffscreenCanvas"in globalThis){if(s.has(r))return s.get(r);const i=new OffscreenCanvas(e,t);i.getContext("2d");const o=await i.convertToBlob(a),f=await o.arrayBuffer(),c=n(f);return s.set(r,c),c}return""}(o,f,g),[h,d]=function(e,t,a){if(!a)return[e,t];const[n,r]=a;if(e<=n&&t<=r)return[e,t];let s=e,i=t;return s>n&&(i=Math.floor(n*t/e),s=n),i>r&&(s=Math.floor(r*e/t),i=r),[s,i]}(o,f,c),l=new OffscreenCanvas(h,d),w=l.getContext("bitmaprenderer"),p=h===o&&d===f?a:await createImageBitmap(a,{resizeWidth:h,resizeHeight:d,resizeQuality:"low"});w?.transferFromImageBitmap(p),a.close();const y=await l.convertToBlob(g),v=y.type,b=await y.arrayBuffer(),m=n(b);if(p.close(),!r.has(t)&&await u===m)return r.set(t,m),i.postMessage({id:t});if(r.get(t)===m)return i.postMessage({id:t});i.postMessage({id:t,type:v,base64:m,width:o,height:f}),r.set(t,m)}};`;function vze(){let e=new Blob([_ze]);return URL.createObjectURL(e)}var yze=class{constructor(e){this.pendingCanvasMutations=new Map,this.rafStamps={latestId:0,invokeId:null},this.shadowDoms=new Set,this.windowsSet=new WeakSet,this.windows=[],this.restoreHandlers=[],this.frozen=!1,this.locked=!1,this.snapshotInProgressMap=new Map,this.worker=null,this.lastSnapshotTime=0,this.processMutation=(e,t)=>{(this.rafStamps.invokeId&&this.rafStamps.latestId!==this.rafStamps.invokeId||!this.rafStamps.invokeId)&&(this.rafStamps.invokeId=this.rafStamps.latestId),this.pendingCanvasMutations.has(e)||this.pendingCanvasMutations.set(e,[]),this.pendingCanvasMutations.get(e).push(t)};let{enableManualSnapshot:t,sampling:n=`all`,win:r,recordCanvas:i,errorHandler:a}=e;e.sampling=n,this.mutationCb=e.mutationCb,this.mirror=e.mirror,this.options=e,a&&uze(a),(i&&typeof n==`number`||t)&&(this.worker=this.initFPSWorker()),this.addWindow(r),!t&&aB(()=>{i&&n===`all`&&(this.startRAFTimestamping(),this.startPendingCanvasMutationFlusher()),i&&typeof n==`number`&&this.initCanvasFPSObserver()})()}reset(){this.pendingCanvasMutations.clear(),this.restoreHandlers.forEach(e=>{try{e()}catch{}}),this.restoreHandlers=[],this.windowsSet=new WeakSet,this.windows=[],this.shadowDoms=new Set,this.worker?.terminate(),this.worker=null,this.snapshotInProgressMap=new Map}freeze(){this.frozen=!0}unfreeze(){this.frozen=!1}lock(){this.locked=!0}unlock(){this.locked=!1}addWindow(e){let{sampling:t=`all`,blockClass:n,blockSelector:r,unblockSelector:i,recordCanvas:a,enableManualSnapshot:o}=this.options;if(!this.windowsSet.has(e)){if(o){this.windowsSet.add(e),this.windows.push(new WeakRef(e));return}aB(()=>{if(a&&t===`all`&&this.initCanvasMutationObserver(e,n,r,i),a&&typeof t==`number`){let t=pB(e,n,r,i,!0);this.restoreHandlers.push(()=>{t()})}})(),this.windowsSet.add(e),this.windows.push(new WeakRef(e))}}addShadowRoot(e){this.shadowDoms.add(new WeakRef(e))}resetShadowRoots(){this.shadowDoms=new Set}snapshot(e,t){if(t?.skipRequestAnimationFrame){this.takeSnapshot(performance.now(),!0,e);return}tB(t=>this.takeSnapshot(t,!0,e))}initFPSWorker(){let e=new Worker(vze());return e.onmessage=e=>{let t=e.data,{id:n}=t;if(this.snapshotInProgressMap.set(n,!1),!(`base64`in t))return;let{base64:r,type:i,width:a,height:o}=t;this.mutationCb({id:n,type:rB[`2D`],commands:[{property:`clearRect`,args:[0,0,a,o]},{property:`drawImage`,args:[{rr_type:`ImageBitmap`,args:[{rr_type:`Blob`,data:[{rr_type:`ArrayBuffer`,base64:r}],type:i}]},0,0,a,o]}]})},e}initCanvasFPSObserver(){let e;if(!this.windows.length&&!this.shadowDoms.size)return;let t=n=>{this.takeSnapshot(n,!1),e=tB(t)};e=tB(t),this.restoreHandlers.push(()=>{e&&cancelAnimationFrame(e)})}initCanvasMutationObserver(e,t,n,r){let i=pB(e,t,n,r,!1),a=mze(this.processMutation.bind(this),e,t,n,r),o=gze(this.processMutation.bind(this),e,t,n,r,this.mirror);this.restoreHandlers.push(()=>{i(),a(),o()})}getCanvasElements(e,t,n){let r=[],i=i=>{i.querySelectorAll(`canvas`).forEach(i=>{Qz(i,e,t,n,!0)||r.push(i)})};for(let e of this.windows){let t=e.deref(),n;try{n=t&&t.document}catch{}n&&i(n)}for(let e of this.shadowDoms){let t=e.deref();t&&i(t)}return r}takeSnapshot(e,t,n){let{sampling:r,blockClass:i,blockSelector:a,unblockSelector:o,dataURLOptions:s,maxCanvasSize:c}=this.options,l=1e3/(r===`all`?2:r||2);return this.lastSnapshotTime&&e-this.lastSnapshotTime<l?!1:(this.lastSnapshotTime=e,(n?[n]:this.getCanvasElements(i,a,o)).forEach(e=>{let n=this.mirror.getId(e);if(!(!this.mirror.hasNode(e)||!e.width||!e.height||this.snapshotInProgressMap.get(n))){if(this.snapshotInProgressMap.set(n,!0),!t&&[`webgl`,`webgl2`].includes(e.__context)){let t=e.getContext(e.__context);t?.getContextAttributes()?.preserveDrawingBuffer===!1&&t.clear(t.COLOR_BUFFER_BIT)}createImageBitmap(e).then(t=>{this.worker?.postMessage({id:n,bitmap:t,width:e.width,height:e.height,dataURLOptions:s,maxCanvasSize:c},[t])}).catch(e=>{aB(()=>{throw this.snapshotInProgressMap.delete(n),e})()})}}),!0)}startPendingCanvasMutationFlusher(){tB(()=>this.flushPendingCanvasMutations())}startRAFTimestamping(){let e=t=>{this.rafStamps.latestId=t,tB(e)};tB(e)}flushPendingCanvasMutations(){this.pendingCanvasMutations.forEach((e,t)=>{let n=this.mirror.getId(t);this.flushPendingCanvasMutationFor(t,n)}),tB(()=>this.flushPendingCanvasMutations())}flushPendingCanvasMutationFor(e,t){if(this.frozen||this.locked)return;let n=this.pendingCanvasMutations.get(e);if(!n||t===-1)return;let r=n.map(e=>{let{type:t,...n}=e;return n}),{type:i}=n[0];this.mutationCb({id:t,type:i,commands:r}),this.pendingCanvasMutations.delete(e)}};try{if(Array.from([1],e=>e*2)[0]!==2){let e=document.createElement(`iframe`);document.body.appendChild(e),Array.from=e.contentWindow?.Array.from||Array.from,document.body.removeChild(e)}}catch(e){console.debug(`Unable to override Array.from`,e)}sze();var bze;(function(e){e[e.NotStarted=0]=`NotStarted`,e[e.Running=1]=`Running`,e[e.Stopped=2]=`Stopped`})(bze||={});var hB={low:{sampling:{canvas:1},dataURLOptions:{type:`image/webp`,quality:.25}},medium:{sampling:{canvas:2},dataURLOptions:{type:`image/webp`,quality:.4}},high:{sampling:{canvas:4},dataURLOptions:{type:`image/webp`,quality:.5}}},xze=`ReplayCanvas`,gB=1280,Sze=EO(((e={})=>{let[t,n]=e.maxCanvasSize||[],r={quality:e.quality||`medium`,enableManualSnapshot:e.enableManualSnapshot,maxCanvasSize:[t?Math.min(t,gB):gB,n?Math.min(n,gB):gB]},i,a,o=new Promise(e=>a=e);return{name:xze,getOptions(){let{quality:e,enableManualSnapshot:t,maxCanvasSize:n}=r;return{enableManualSnapshot:t,recordCanvas:!0,getCanvasManager:e=>{let r=new yze({...e,enableManualSnapshot:t,maxCanvasSize:n,errorHandler:e=>{try{typeof e==`object`&&(e.__rrweb__=!0)}catch{}}});return i=r,a(r),r},...hB[e]||hB.medium}},async snapshot(e,t){(i||await o).snapshot(e,t)}}}));function Cze(e){return e.split(`,`).some(e=>e.trim().startsWith(`sentry-`))}function _B(e){try{return new URL(e,Y.location.origin).href}catch{return}}function wze(e){return e.entryType===`resource`&&`initiatorType`in e&&typeof e.nextHopProtocol==`string`&&(e.initiatorType===`fetch`||e.initiatorType===`xmlhttprequest`)}function vB(e){try{return new Headers(e)}catch{return}}var yB={traceFetch:!0,traceXHR:!0,enableHTTPTimings:!0,trackFetchStreamPerformance:!1};function bB(e,t){let{traceFetch:n,traceXHR:r,shouldCreateSpanForRequest:i,enableHTTPTimings:a,tracePropagationTargets:o,onRequestSpanStart:s,onRequestSpanEnd:c}={...yB,...t},l=typeof i==`function`?i:e=>!0,u=e=>Eze(e,o),d={},f=e.getOptions().propagateTraceparent;n&&aM(t=>{let n=VOe(t,l,u,d,{propagateTraceparent:f,onRequestSpanEnd:c});if(n){let r=_B(t.fetchData.url),i=r?yk(r).host:void 0,o=r?xk(r):void 0;n.setAttributes({"http.url":o,"url.full":o,"server.address":i}),a&&xB(n,e),s?.(n,{headers:t.headers})}}),r&&dI(t=>{let n=Dze(t,l,u,d,f,c);n&&(a&&xB(n,e),s?.(n,{headers:vB(t.xhr.__sentry_xhr_v3__?.request_headers)}))})}var Tze=300;function xB(e,t){let{url:n}=DE(e).data;if(!n||typeof n!=`string`)return;let r=()=>void setTimeout(i);if(_D(t)){let t=e.end.bind(e);e.end=e=>{let n=e??_T(),a=!1,o=()=>{a||(a=!0,setTimeout(i),t(n),clearTimeout(s))};r=o;let s=setTimeout(o,Tze)}}let i=TF(`resource`,({entries:t})=>{t.forEach(t=>{wze(t)&&t.name.endsWith(n)&&(e.setAttributes(HF(t)),r())})})}function Eze(e,t){let n=bM();if(n){let r,i;try{r=new URL(e,n),i=new URL(n).origin}catch{return!1}let a=r.origin===i;return t?sT(r.toString(),t)||a&&sT(r.pathname,t):a}{let n=!!e.match(/^\/(?!\/)/);return t?sT(e,t):n}}function Dze(e,t,n,r,i,a){let o=e.xhr,s=o?.[uI];if(!o||o.__sentry_own_request__||!s)return;let{url:c,method:l}=s,u=qE()&&t(c);if(e.endTimestamp){let t=o.__sentry_xhr_span_id__;if(!t)return;let n=r[t];n&&(u&&s.status_code!==void 0&&(tE(n,s.status_code),n.end(),a?.(n,{headers:vB(hI(o)),error:e.error})),delete r[t]);return}let d=_B(c),f=yk(d||c),p=d?xk(d):void 0,m=xk(bk(c)),h=J(),g=!!UE(),_=g||!!h&&_D(h),v=u&&_?ED({name:`${l} ${m}`,attributes:{url:xk(c),type:`xhr`,"http.method":l,"http.url":p,"url.full":p,"server.address":f?.host,[qT]:`auto.http.browser`,[KT]:`http.client`,...f?.search&&{"http.query":f?.search},...f?.hash&&{"http.fragment":f?.hash}}}):new ZE,y=LD(v)&&g?void 0:v;return u&&!_&&h?.recordDroppedEvent(`no_parent_span`,`span`),o.__sentry_xhr_span_id__=v.spanContext().spanId,r[o.__sentry_xhr_span_id__]=v,n(c)&&Oze(o,qE()&&_?y:void 0,i),h&&h.emit(`beforeOutgoingRequestSpan`,v,e),v}function Oze(e,t,n){let{"sentry-trace":r,baggage:i,traceparent:a}=Tk({span:t,propagateTraceparent:n});r&&kze(e,r,i,a)}function kze(e,t,n,r){let i=e.__sentry_xhr_v3__?.request_headers;if(!(i?.[`sentry-trace`]||!e.setRequestHeader))try{if(e.setRequestHeader(`sentry-trace`,t),r&&!i?.traceparent&&e.setRequestHeader(`traceparent`,r),n){let t=i?.baggage;(!t||!Cze(t))&&e.setRequestHeader(`baggage`,n)}}catch{}}var SB=new WeakMap,CB=new WeakMap,Aze=9e4,jze=[`text/event-stream`,`application/x-ndjson`,`application/stream+json`],wB=EO(()=>({name:`FetchStreamPerformance`,setup(){oM(e=>{if(e.response){let t=SB.get(e.response);if(t&&e.endTimestamp){t.end(e.endTimestamp);let n=CB.get(e.response);n&&clearTimeout(n)}}}),aM(e=>{if(e.endTimestamp&&e.response){let t=e.response.headers?.get(`content-type`)||``;if(e.response.headers?.get(`content-length`)||!jze.some(e=>t.startsWith(e)))return;let n=e.fetchData?.url||``,r=e.fetchData?.method||`GET`,i=_k(n),a=ED({name:`${r} ${n.startsWith(`data:`)?xk(n):i?vk(i):n}`,startTime:e.endTimestamp,attributes:{url:xk(n),"http.method":r,type:`fetch`,[KT]:`http.client.stream`,[qT]:`auto.http.browser.stream`}});SB.set(e.response,a);let o=setTimeout(()=>{a.isRecording()&&a.end()},Aze);CB.set(e.response,o)}})}})),Mze=`WebVitals`,TB=EO((e={})=>{let t=new Set(e.ignore??[]);return{name:Mze,setup(n){let r=_D(n),{enableStandaloneClsSpans:i,enableStandaloneLcpSpans:a}=e._experiments??{},o=r||t.has(`cls`)?void 0:i||!1,s=r||t.has(`lcp`)?void 0:a||!1,c=iNe({recordClsStandaloneSpans:o,recordLcpStandaloneSpans:s,client:n}),l=new WeakSet;n.on(`afterStartPageLoadSpan`,e=>{l.add(e)}),n.on(`spanEnd`,e=>{l.delete(e)&&(c(),pNe(e,{recordClsOnPageloadSpan:o===!1,recordLcpOnPageloadSpan:s===!1,spanStreamingEnabled:r}))}),r?(t.has(`lcp`)||MNe(n),t.has(`cls`)||PNe(n),t.has(`inp`)||INe()):t.has(`inp`)||DNe()},afterAllSetup(){t.has(`inp`)||jNe()}}});function Nze(){Y.document?Y.document.addEventListener(`visibilitychange`,()=>{let e=UE();if(!e)return;let t=VE(e);if(Y.document.hidden&&t){let e=`cancelled`,{op:n,status:r}=DE(t);X&&K.log(`[Tracing] Transaction: ${e} -> since tab moved to the background, op: ${n}`),r||t.setStatus({code:2,message:e}),t.setAttribute(`sentry.cancellation_reason`,`document.hidden`),t.end()}}):X&&K.warn(`[Tracing] Could not set up background tab detection due to lack of global document`)}var EB=`sentry_previous_trace`,Pze=`sentry.previous_trace`;function Fze(e,{linkPreviousTrace:t,consistentTraceSampling:n}){let r=t===`session-storage`,i=r?Rze():void 0;e.on(`spanStart`,e=>{if(VE(e)!==e)return;let t=q().getPropagationContext();i=Ize(i,e,t),r&&Lze(i)});let a=!0;n&&e.on(`beforeSampling`,e=>{if(!i)return;let t=q(),n=t.getPropagationContext();if(a&&n.parentSpanId){a=!1;return}t.setPropagationContext({...n,dsc:{...n.dsc,sample_rate:String(i.sampleRate),sampled:String(DB(i.spanContext))},sampleRand:i.sampleRand}),e.parentSampled=DB(i.spanContext),e.parentSampleRate=i.sampleRate,e.spanAttributes={...e.spanAttributes,[Nwe]:i.sampleRate}})}function Ize(e,t,n){let r=DE(t);function i(){try{let e=Number(r.data?.[`sentry.sample_rate`]??n.dsc?.sample_rate);return Number.isNaN(e)?0:e}catch{return 0}}let a={spanContext:t.spanContext(),startTimestamp:r.start_timestamp,sampleRate:i(),sampleRand:n.sampleRand};if(!e)return a;let o=e.spanContext;return o.traceId===r.trace_id?e:(Date.now()/1e3-e.startTimestamp<=3600&&(X&&K.log(`Adding previous_trace \`${JSON.stringify(o)}\` link to span \`${JSON.stringify({op:r.op,...t.spanContext()})}\``),t.addLink({context:o,attributes:{[Hwe]:`previous_trace`}}),t.setAttribute(Pze,`${o.traceId}-${o.spanId}-${+!!DB(o)}`)),a)}function Lze(e){try{Y.sessionStorage.setItem(EB,JSON.stringify(e))}catch(e){X&&K.warn(`Could not store previous trace in sessionStorage`,e)}}function Rze(){try{let e=Y.sessionStorage?.getItem(EB);return JSON.parse(e)}catch{return}}function DB(e){return e.traceFlags===1}var zze=`BrowserTracing`,Bze=/Googlebot|Google-InspectionTool|Storebot-Google|Bingbot|Slurp|DuckDuckBot|Baiduspider|YandexBot|Facebot|facebookexternalhit|LinkedInBot|Twitterbot|Applebot/i;function OB(){let e=Y.navigator;return e?.userAgent?Bze.test(e.userAgent):!1}var Vze={...RD,instrumentNavigation:!0,instrumentPageLoad:!0,markBackgroundSpan:!0,enableLongTask:!0,enableLongAnimationFrame:!0,enableInp:!0,ignoreResourceSpans:[],ignorePerformanceApiSpans:[],detectRedirects:!0,linkPreviousTrace:`in-memory`,consistentTraceSampling:!1,enableReportPageLoaded:!1,_experiments:{},...yB},kB=((e={})=>{`enableElementTiming`in e&&rw(()=>{console.warn("[Sentry] `enableElementTiming` is deprecated and no longer has any effect. Use the standalone `elementTimingIntegration` instead.")});let t={name:void 0,source:void 0},n=Y.document,{enableInp:r,enableLongTask:i,enableLongAnimationFrame:a,_experiments:{enableInteractions:o,enableStandaloneClsSpans:s,enableStandaloneLcpSpans:c},beforeStartSpan:l,idleTimeout:u,finalTimeout:d,childSpanTimeout:f,markBackgroundSpan:p,traceFetch:m,traceXHR:h,trackFetchStreamPerformance:g,shouldCreateSpanForRequest:_,enableHTTPTimings:v,ignoreResourceSpans:y,ignorePerformanceApiSpans:b,instrumentPageLoad:x,instrumentNavigation:S,detectRedirects:C,linkPreviousTrace:w,consistentTraceSampling:T,enableReportPageLoaded:E,onRequestSpanStart:ee,onRequestSpanEnd:te}={...Vze,...e},ne=OB(),re,ie;function ae(e,r,i=!0,a){let o=r.op===`pageload`,s=r.name,c=l?l(r):r,p=_k(a||bM()),m={...p?.pathname&&{"url.path":p.pathname},...p&&!gk(p)&&{"url.full":p.href},...c.attributes};if(s!==c.name&&(m[WT]=`custom`),c.attributes=m,!i){let e=gT();ED({...c,startTime:e}).end(e);return}t.name=c.name,t.source=m[WT];let h=zD(c,{idleTimeout:u,finalTimeout:d,childSpanTimeout:f,disableAutoFinish:o,beforeSpanEnd:t=>{fNe(t,{ignoreResourceSpans:y,ignorePerformanceApiSpans:b,spanStreamingEnabled:_D(e)}),IB(e,void 0);let n=q(),r=n.getPropagationContext();n.setPropagationContext({...r,traceId:h.spanContext().traceId,sampled:NE(h),dsc:rD(t)}),o&&(ie=void 0)},trimIdleSpanEndTimestamp:!E});o&&E&&(ie=h),IB(e,h);function g(){n&&[`interactive`,`complete`].includes(n.readyState)&&(e.emit(`idleSpanEnableAutoFinish`,h),n.removeEventListener(`readystatechange`,g))}o&&!E&&n&&(n.addEventListener(`readystatechange`,g),g())}return{name:zze,setup(e){if(ne){X&&K.log(`[Tracing] Skipping browserTracingIntegration setup for bot user agent.`);return}if(KE(),a&&G.PerformanceObserver&&PerformanceObserver.supportedEntryTypes?.includes(`long-animation-frame`)?oNe():i&&aNe(),o&&sNe(),C&&n){let e=()=>{re=_T()};addEventListener(`click`,e,{capture:!0}),addEventListener(`keydown`,e,{capture:!0,passive:!0})}function t(){let t=FB(e);t&&!DE(t).timestamp&&(X&&K.log(`[Tracing] Finishing current active span with op: ${DE(t).op}`),t.setAttribute(JT,`cancelled`),t.end())}e.on(`startNavigationSpan`,(n,r)=>{if(J()!==e)return;if(r?.isRedirect){X&&K.warn(`[Tracing] Detected redirect, navigation span will not be the root span, but a child span.`),ae(e,{op:`navigation.redirect`,...n},!1,r.url);return}re=void 0,t(),BT().setPropagationContext({traceId:ST(),sampleRand:Math.random(),propagationSpanId:qE()?void 0:CT()});let i=q();i.setPropagationContext({traceId:ST(),sampleRand:Math.random(),propagationSpanId:qE()?void 0:CT()}),i.setSDKProcessingMetadata({normalizedRequest:void 0}),ae(e,{op:`navigation`,...n,parentSpan:null,forceTransaction:!0},!0,r?.url)}),e.on(`startPageLoadSpan`,(n,r={})=>{if(J()!==e)return;t();let i=vE(r.sentryTrace||MB(`sentry-trace`)||NB(`sentry-trace`),r.baggage||MB(`baggage`)||NB(`baggage`)),a=q();a.setPropagationContext(i),qE()||(a.getPropagationContext().propagationSpanId=CT()),a.setSDKProcessingMetadata({normalizedRequest:MP()}),ae(e,{op:`pageload`,...n})}),e.on(`endPageloadSpan`,()=>{E&&ie&&(ie.setAttribute(JT,`reportPageLoaded`),ie.end())})},afterAllSetup(e){if(ne)return;e.addIntegration&&!e.getIntegrationByName?.(`WebVitals`)&&e.addIntegration(TB({ignore:r?[]:[`inp`],_experiments:{enableStandaloneClsSpans:s,enableStandaloneLcpSpans:c}}));let n=bM();if(w!==`off`&&Fze(e,{linkPreviousTrace:w,consistentTraceSampling:T}),Y.location){if(x){let t=yT();AB(e,{name:Y.location.pathname,startTime:t?t/1e3:void 0,attributes:{[WT]:`url`,[qT]:`auto.pageload.browser`}})}S&&oI(({to:t,from:r})=>{if(r===void 0&&n?.indexOf(t)!==-1){n=void 0;return}n=void 0;let i=_k(t),a=FB(e),o=a&&C&&Uze(a,re);jB(e,{name:i?.pathname||Y.location.pathname,attributes:{[WT]:`url`,[qT]:`auto.navigation.browser`}},{url:t,isRedirect:o})})}p&&Nze(),o&&Hze(e,u,d,f,t),bB(e,{traceFetch:m,traceXHR:h,tracePropagationTargets:e.getOptions().tracePropagationTargets,shouldCreateSpanForRequest:_,enableHTTPTimings:v,onRequestSpanStart:ee,onRequestSpanEnd:te}),g&&e.addIntegration(wB())}}});function AB(e,t,n){e.emit(`startPageLoadSpan`,t,n),q().setTransactionName(t.name);let r=FB(e);return r&&e.emit(`afterStartPageLoadSpan`,r),r}function jB(e,t,n){let{url:r,isRedirect:i}=n||{};e.emit(`beforeStartNavigationSpan`,t,{isRedirect:i,url:r}),e.emit(`startNavigationSpan`,t,{isRedirect:i,url:r});let a=q();return a.setTransactionName(t.name),r&&!i&&a.setSDKProcessingMetadata({normalizedRequest:{...MP(),url:r}}),FB(e)}function MB(e){return(Y.document?.querySelector(`meta[name=${e}]`))?.getAttribute(`content`)||void 0}function NB(e){return(Y.performance?.getEntriesByType?.(`navigation`)[0])?.serverTiming?.find(t=>t.name===e)?.description}function Hze(e,t,n,r,i){let a=Y.document,o;a&&addEventListener(`click`,()=>{let a=`ui.action.click`,s=FB(e);if(s){let e=DE(s).op;if([`navigation`,`pageload`].includes(e)){X&&K.warn(`[Tracing] Did not create ${a} span because a pageload or navigation span is in progress.`);return}}if(o&&=(o.setAttribute(JT,`interactionInterrupted`),o.end(),void 0),!i.name){X&&K.warn(`[Tracing] Did not create ${a} transaction because _latestRouteName is missing.`);return}o=zD({name:i.name,op:a,attributes:{[WT]:i.source||`url`}},{idleTimeout:t,finalTimeout:n,childSpanTimeout:r})},{capture:!0})}var PB=`_sentry_idleSpan`;function FB(e){return e[PB]}function IB(e,t){Vw(e,PB,t)}var LB=1.5;function Uze(e,t){let n=DE(e),r=gT();return!(r-n.start_timestamp>LB||t&&r-t<=LB)}function Wze(e=J()){e?.emit(`endPageloadSpan`)}function Gze(e){let t=UE();if(t===e)return;let n=q();e.end=new Proxy(e.end,{apply(e,r,i){return DT(n,t),Reflect.apply(e,r,i)}}),DT(n,e)}var Kze=EO(()=>({name:`SpanStreaming`,beforeSetup(e){let t=e.getOptions();t.traceLifecycle||=(X&&K.log('[SpanStreaming] setting `traceLifecycle` to "stream"'),`stream`)},setup(e){let t=`SpanStreaming integration requires`,n=`Falling back to static trace lifecycle.`,r=e.getOptions();if(!_D(e)){r.traceLifecycle=`static`,X&&K.warn(`${t} \`traceLifecycle\` to be set to "stream"! ${n}`);return}let i=r.beforeSendSpan;if(i&&!iD(i)){r.traceLifecycle=`static`,X&&K.warn(`${t} a beforeSendSpan callback using \`withStreamedSpan\`! ${n}`);return}let a=new Zj(e);e.on(`afterSpanEnd`,t=>{NE(t)&&a.add(rEe(t,e))}),e.on(`afterSegmentSpanEnd`,e=>{let t=e.spanContext().traceId;setTimeout(()=>{a.flush(t)},500)})}})),RB=1e6,qze=`window`in G&&G.window===G&&typeof importScripts>`u`,zB=`0`,BB=qze?`main`:`worker`,VB=Y.navigator,HB=``,UB=``,WB=``,GB=VB?.userAgent||``,KB=``,Jze=VB?.language||VB?.languages?.[0]||``;function Yze(e){return typeof e==`object`&&!!e&&`getHighEntropyValues`in e}var qB=VB?.userAgentData;Yze(qB)&&qB.getHighEntropyValues([`architecture`,`model`,`platform`,`platformVersion`,`fullVersionList`]).then(e=>{if(HB=e.platform||``,WB=e.architecture||``,KB=e.model||``,UB=e.platformVersion||``,e.fullVersionList?.length){let t=e.fullVersionList[e.fullVersionList.length-1];GB=`${t.brand} ${t.version}`}}).catch(e=>void 0);function Xze(e){return!(`thread_metadata`in e)}function Zze(e){return Xze(e)?rBe(e):e}function Qze(e){let t=e.contexts?.trace?.trace_id;return typeof t==`string`&&t.length!==32&&X&&K.log(`[Profiling] Invalid traceId: ${t} on profiled event`),typeof t==`string`?t:``}function $ze(e,t,n,r){if(r.type!==`transaction`)throw TypeError(`Profiling events may only be attached to transactions, this should never occur.`);if(n==null)throw TypeError(`Cannot construct profiling event envelope without a valid profile. Got ${n} instead.`);let i=Qze(r),a=Zze(n),o=t||(typeof r.start_timestamp==`number`?r.start_timestamp*1e3:_T()*1e3),s=typeof r.timestamp==`number`?r.timestamp*1e3:_T()*1e3;return{event_id:e,timestamp:new Date(o).toISOString(),platform:`javascript`,version:`1`,release:r.release||``,environment:r.environment||`production`,runtime:{name:`javascript`,version:Y.navigator.userAgent},os:{name:HB,version:UB,build_number:GB},device:{locale:Jze,model:KB,manufacturer:GB,architecture:WB,is_emulator:!1},debug_meta:{images:YB(n.resources)},profile:a,transactions:[{name:r.transaction||``,id:r.event_id||lT(),trace_id:i,active_thread_id:zB,relative_start_ns:`0`,relative_end_ns:((s-o)*1e6).toFixed(0)}]}}function eBe(e,t,n){if(e==null)throw TypeError(`Cannot construct profiling event envelope without a valid profile. Got ${e} instead.`);let r=nBe(e),i=t.getOptions(),a=t.getSdkMetadata?.()?.sdk;return{chunk_id:lT(),client_sdk:{name:a?.name??`sentry.javascript.browser`,version:a?.version??`0.0.0`},profiler_id:n||lT(),platform:`javascript`,version:`2`,release:i.release??``,environment:i.environment??`production`,debug_meta:{images:YB(e.resources)},profile:r}}function tBe(e){try{if(!e||typeof e!=`object`)return{reason:`chunk is not an object`};let t=e=>typeof e==`string`&&/^[a-f0-9]{32}$/.test(e);if(!t(e.profiler_id))return{reason:`missing or invalid profiler_id`};if(!t(e.chunk_id))return{reason:`missing or invalid chunk_id`};if(!e.client_sdk)return{reason:`missing client_sdk metadata`};let n=e.profile;return n?!Array.isArray(n.frames)||!n.frames.length?{reason:`profile has no frames`}:!Array.isArray(n.stacks)||!n.stacks.length?{reason:`profile has no stacks`}:!Array.isArray(n.samples)||!n.samples.length?{reason:`profile has no samples`}:{valid:!0}:{reason:`missing profile data`}}catch(e){return{reason:`unknown validation error: ${e}`}}}function nBe(e){let t=[];for(let n=0;n<e.frames.length;n++){let r=e.frames[n];r&&(t[n]={function:r.name,abs_path:typeof r.resourceId==`number`?e.resources[r.resourceId]:void 0,lineno:r.line,colno:r.column})}let n=[];for(let t=0;t<e.stacks.length;t++){let r=e.stacks[t];if(!r)continue;let i=[],a=r;for(;a;)i.push(a.frameId),a=a.parentId===void 0?void 0:e.stacks[a.parentId];n[t]=i}let r=yT(),i=typeof performance.timeOrigin==`number`?performance.timeOrigin:r||0,a=i-(r||i),o=[];for(let t=0;t<e.samples.length;t++){let n=e.samples[t];if(!n)continue;let r=(i+(n.timestamp-a))/1e3;o[t]={stack_id:n.stackId??0,thread_id:zB,timestamp:r}}return{frames:t,stacks:n,samples:o,thread_metadata:{[zB]:{name:BB}}}}function JB(e){return DE(e).op===`pageload`}function rBe(e){let t,n=0,r={samples:[],stacks:[],frames:[],thread_metadata:{[zB]:{name:BB}}},i=e.samples[0];if(!i)return r;let a=i.timestamp,o=yT(),s=typeof performance.timeOrigin==`number`?performance.timeOrigin:o||0,c=s-(o||s);return e.samples.forEach((i,o)=>{if(i.stackId===void 0){t===void 0&&(t=n,r.stacks[t]=[],n++),r.samples[o]={elapsed_since_start_ns:((i.timestamp+c-a)*RB).toFixed(0),stack_id:t,thread_id:zB};return}let s=e.stacks[i.stackId],l=[];for(;s;){l.push(s.frameId);let t=e.frames[s.frameId];t&&r.frames[s.frameId]===void 0&&(r.frames[s.frameId]={function:t.name,abs_path:typeof t.resourceId==`number`?e.resources[t.resourceId]:void 0,lineno:t.line,colno:t.column}),s=s.parentId===void 0?void 0:e.stacks[s.parentId]}let u={elapsed_since_start_ns:((i.timestamp+c-a)*RB).toFixed(0),stack_id:n,thread_id:zB};r.stacks[n]=l,r.samples[o]=u,n++}),r}function iBe(e,t){if(!t.length)return e;for(let n of t)e[1].push([{type:`profile`},n]);return e}function aBe(e){let t=[];return sD(e,(e,n)=>{if(n===`transaction`)for(let n=1;n<e.length;n++)e[n]?.contexts?.profile?.profile_id&&t.push(e[n])}),t}function YB(e){let t=J()?.getOptions()?.stackParser;return t?lEe(t,e):[]}function XB(e){return typeof e!=`number`&&typeof e!=`boolean`||typeof e==`number`&&isNaN(e)?(X&&K.warn(`[Profiling] Invalid sample rate. Sample rate must be a boolean or a number between 0 and 1. Got ${JSON.stringify(e)} of type ${JSON.stringify(typeof e)}.`),!1):e===!0||e===!1?!0:e<0||e>1?(X&&K.warn(`[Profiling] Invalid sample rate. Sample rate must be between 0 and 1. Got ${e}.`),!1):!0}function oBe(e){return e.samples.length<2?(X&&K.log(`[Profiling] Discarding profile because it contains less than 2 samples`),!1):e.frames.length?!0:(X&&K.log(`[Profiling] Discarding profile because it contains no frames`),!1)}var ZB=!1,QB=3e4;function sBe(e){return typeof e==`function`}function $B(){let e=Y.Profiler;if(!sBe(e)){X&&K.log(`[Profiling] Profiling is not supported by this browser, Profiler interface missing on window object.`);return}let t=Math.floor(QB/10);try{return new e({sampleInterval:10,maxBufferSize:t})}catch{X&&(K.log(`[Profiling] Failed to initialize the Profiling constructor, this is likely due to a missing 'Document-Policy': 'js-profiling' header.`),K.log(`[Profiling] Disabling profiling for current user session.`)),ZB=!0}}function eV(e){if(ZB)return X&&K.log(`[Profiling] Profiling has been disabled for the duration of the current user session.`),!1;if(!e.isRecording())return X&&K.log(`[Profiling] Discarding profile because root span was not sampled.`),!1;let t=J()?.getOptions();if(!t)return X&&K.log(`[Profiling] Profiling disabled, no options found.`),!1;let n=t.profilesSampleRate;return XB(n)?n?n===!0||Math.random()<n||(X&&K.log(`[Profiling] Discarding profile because it's not included in the random sample (sampling rate = ${Number(n)})`),!1):(X&&K.log(`[Profiling] Discarding profile because a negative sampling decision was inherited or profileSampleRate is set to 0`),!1):(X&&K.warn(`[Profiling] Discarding profile because of invalid sample rate.`),!1)}function cBe(e){if(ZB)return X&&K.log(`[Profiling] Profiling has been disabled for the duration of the current user session as the JS Profiler could not be started.`),!1;if(e.profileLifecycle!==`trace`&&e.profileLifecycle!==`manual`)return X&&K.warn("[Profiling] Session not sampled. Invalid `profileLifecycle` option."),!1;let t=e.profileSessionSampleRate;return XB(t)?t?Math.random()<=t:(X&&K.log(`[Profiling] Discarding profile because profileSessionSampleRate is not defined or set to 0`),!1):(X&&K.warn(`[Profiling] Discarding profile because of invalid profileSessionSampleRate.`),!1)}function tV(e){return e.profilesSampleRate!==void 0}function lBe(e,t,n,r){return oBe(n)?$ze(e,t,n,r):null}var nV=new Map;function uBe(){return nV.size}function dBe(e){let t=nV.get(e);return t&&nV.delete(e),t}function fBe(e,t){if(nV.set(e,t),nV.size>30){let e=nV.keys().next().value;e!==void 0&&nV.delete(e)}}var rV=new WeakSet;function iV(e){e.setAttribute(`thread.id`,zB),e.setAttribute(`thread.name`,BB)}function aV(e){let t;JB(e)&&(t=_T()*1e3);let n=$B();if(!n)return;X&&K.log(`[Profiling] started profiling span: ${DE(e).description}`);let r=lT(),i=null;q().setContext(`profile`,{profile_id:r,start_timestamp:t}),rV.add(e),iV(e);async function a(){if(e&&n){if(i){X&&K.log(`[Profiling] profile for:`,DE(e).description,`already exists, returning early`);return}return n.stop().then(t=>{if(o&&=(Y.clearTimeout(o),void 0),X&&K.log(`[Profiling] stopped profiling of span: ${DE(e).description}`),!t){X&&K.log(`[Profiling] profiler returned null profile for: ${DE(e).description}`,`this may indicate an overlapping span or a call to stopProfiling with a profile title that was never started`);return}i=t,fBe(r,t)}).catch(e=>{X&&K.log(`[Profiling] error while stopping profiler:`,e)})}}let o=Y.setTimeout(()=>{X&&K.log(`[Profiling] max profile duration elapsed, stopping profiling for:`,DE(e).description),a()},QB),s=e.end.bind(e);function c(){return e?(a().then(()=>{s()},()=>{s()}),e):s()}e.end=c}var pBe=6e4,mBe=3e5,hBe=class{constructor(){this._client=void 0,this._profiler=void 0,this._chunkTimer=void 0,this._profilerId=void 0,this._isRunning=!1,this._sessionSampled=!1,this._lifecycleMode=void 0,this._activeRootSpanIds=new Set,this._rootSpanTimeouts=new Map}initialize(e){let t=e.getOptions().profileLifecycle,n=cBe(e.getOptions());X&&K.log(`[Profiling] Initializing profiler (lifecycle='${t}').`),n||X&&K.log(`[Profiling] Session not sampled. Skipping lifecycle profiler initialization.`),this._profilerId=lT(),this._client=e,this._sessionSampled=n,this._lifecycleMode=t,t===`trace`&&this._setupTraceLifecycleListeners(e),e.on(`spanStart`,e=>{this._isRunning&&iV(e)})}start(){if(this._lifecycleMode===`trace`){X&&K.warn('[Profiling] `profileLifecycle` is set to "trace". Calls to `uiProfiler.start()` are ignored in trace mode.');return}if(this._isRunning){X&&K.warn("[Profiling] Profile session is already running, `uiProfiler.start()` is a no-op.");return}if(!this._sessionSampled){X&&K.warn("[Profiling] Session is not sampled, `uiProfiler.start()` is a no-op.");return}this._beginProfiling()}stop(){if(this._lifecycleMode===`trace`){X&&K.warn('[Profiling] `profileLifecycle` is set to "trace". Calls to `uiProfiler.stop()` are ignored in trace mode.');return}if(!this._isRunning){X&&K.warn("[Profiling] Profiler is not running, `uiProfiler.stop()` is a no-op.");return}this._endProfiling()}notifyRootSpanActive(e){if(this._lifecycleMode!==`trace`||!this._sessionSampled)return;let t=e.spanContext().spanId;if(!t||this._activeRootSpanIds.has(t))return;this._registerTraceRootSpan(t);let n=this._activeRootSpanIds.size;n===1&&(X&&K.log(`[Profiling] Detected already active root span during setup. Active root spans now:`,n),this._beginProfiling()),this._isRunning&&iV(e)}_beginProfiling(){if(!this._isRunning){if(this._isRunning=!0,X&&K.log(`[Profiling] Started profiling with profiler ID:`,this._profilerId),VT().setContext(`profile`,{profiler_id:this._profilerId}),this._startProfilerInstance(),!this._profiler){X&&K.log(`[Profiling] Failed to start JS Profiler; stopping.`),this._resetProfilerInfo();return}this._startPeriodicChunking()}}_endProfiling(){this._isRunning&&(this._isRunning=!1,this._chunkTimer&&=(clearTimeout(this._chunkTimer),void 0),this._clearAllRootSpanTimeouts(),this._collectCurrentChunk().catch(e=>{X&&K.error("[Profiling] Failed to collect current profile chunk on `stop()`:",e)}),this._lifecycleMode===`manual`&&VT().setContext(`profile`,{}))}_setupTraceLifecycleListeners(e){e.on(`spanStart`,e=>{if(!this._sessionSampled){X&&K.log(`[Profiling] Span not profiled because of negative sampling decision for user session.`);return}if(e!==VE(e))return;if(!e.isRecording()){X&&K.log(`[Profiling] Discarding profile because root span was not sampled.`);return}let t=e.spanContext().spanId;if(!t||this._activeRootSpanIds.has(t))return;this._registerTraceRootSpan(t);let n=this._activeRootSpanIds.size;n===1&&(X&&K.log(`[Profiling] Root span ${t} started. Profiling active while there are active root spans (count=${n}).`),this._beginProfiling())}),e.on(`spanEnd`,e=>{if(!this._sessionSampled)return;let t=e.spanContext().spanId;if(!t||!this._activeRootSpanIds.has(t))return;this._activeRootSpanIds.delete(t);let n=this._activeRootSpanIds.size;X&&K.log(`[Profiling] Root span with ID ${t} ended. Will continue profiling for as long as there are active root spans (currently: ${n}).`),n===0&&(this._collectCurrentChunk().catch(e=>{X&&K.error("[Profiling] Failed to collect current profile chunk on last `spanEnd`:",e)}),this._endProfiling())})}_resetProfilerInfo(){this._isRunning=!1,VT().setContext(`profile`,{})}_clearAllRootSpanTimeouts(){this._rootSpanTimeouts.forEach(e=>clearTimeout(e)),this._rootSpanTimeouts.clear()}_registerTraceRootSpan(e){this._activeRootSpanIds.add(e);let t=setTimeout(()=>this._onRootSpanTimeout(e),mBe);this._rootSpanTimeouts.set(e,t)}_startProfilerInstance(){if(this._profiler?.stopped===!1)return;let e=$B();if(!e){X&&K.log(`[Profiling] Failed to start JS Profiler.`);return}this._profiler=e}_startPeriodicChunking(){this._isRunning&&(this._chunkTimer=setTimeout(()=>{if(this._collectCurrentChunk().catch(e=>{X&&K.error(`[Profiling] Failed to collect current profile chunk during periodic chunking:`,e)}),this._isRunning){if(this._startProfilerInstance(),!this._profiler){this._resetProfilerInfo();return}this._startPeriodicChunking()}},pBe))}_onRootSpanTimeout(e){this._rootSpanTimeouts.has(e)&&(this._rootSpanTimeouts.delete(e),this._activeRootSpanIds.has(e)&&(X&&K.log(`[Profiling] Reached 5-minute timeout for root span ${e}. You likely started a manual root span that never called \`.end()\`.`),this._activeRootSpanIds.delete(e),this._activeRootSpanIds.size===0&&this._endProfiling()))}async _collectCurrentChunk(){let e=this._profiler;if(this._profiler=void 0,e)try{let t=eBe(await e.stop(),this._client,this._profilerId),n=tBe(t);if(`reason`in n){X&&K.log(`[Profiling] Discarding invalid profile chunk (this is probably a bug in the SDK):`,n.reason);return}this._sendProfileChunk(t),X&&K.log(`[Profiling] Collected browser profile chunk.`)}catch(e){X&&K.log(`[Profiling] Error while stopping JS Profiler for chunk:`,e)}}_sendProfileChunk(e){let t=this._client,n=fD(t.getSdkMetadata?.()),r=t.getDsn(),i=t.getOptions().tunnel,a=aD({event_id:lT(),sent_at:new Date().toISOString(),...n&&{sdk:n},...!!i&&r&&{dsn:fE(r)}},[[{type:`profile_chunk`,platform:`javascript`},e]]);t.sendEnvelope(a).then(null,e=>{X&&K.error(`Error while sending profile chunk envelope:`,e)})}},gBe=`BrowserProfiling`,_Be=EO((()=>({name:gBe,setup(e){let t=e.getOptions(),n=new hBe;if(!tV(t)&&!t.profileLifecycle&&(t.profileLifecycle=`manual`),tV(t)&&!t.profilesSampleRate){X&&K.log(`[Profiling] Profiling disabled, no profiling options found.`);return}let r=UE(),i=r&&VE(r);if(tV(t)&&t.profileSessionSampleRate!==void 0&&X&&K.warn("[Profiling] Both legacy profiling (`profilesSampleRate`) and UI profiling settings are defined. `profileSessionSampleRate` has no effect when legacy profiling is enabled."),tV(t))i&&JB(i)&&eV(i)&&aV(i),e.on(`spanStart`,e=>{let t=VE(e);e===t?eV(e)&&aV(e):rV.has(t)&&iV(e)}),e.on(`beforeEnvelope`,e=>{if(!uBe())return;let t=aBe(e);if(!t.length)return;let n=[];for(let e of t){let t=e?.contexts,r=t?.profile?.profile_id,i=t?.profile?.start_timestamp;if(typeof r!=`string`){X&&K.log(`[Profiling] cannot find profile for a span without a profile context`);continue}if(!r){X&&K.log(`[Profiling] cannot find profile for a span without a profile context`);continue}t?.profile&&delete t.profile;let a=dBe(r);if(!a){X&&K.log(`[Profiling] Could not retrieve profile for span: ${r}`);continue}let o=lBe(r,i,a,e);o&&n.push(o)}iBe(e,n)});else{let r=t.profileLifecycle;if(e.on(`startUIProfiler`,()=>n.start()),e.on(`stopUIProfiler`,()=>n.stop()),r===`manual`)n.initialize(e);else if(r===`trace`){if(!qE(t)){X&&K.warn("[Profiling] `profileLifecycle` is 'trace' but tracing is disabled. Set a `tracesSampleRate` or `tracesSampler` to enable span tracing.");return}n.initialize(e),i&&n.notifyRootSpanActive(i),Y.setTimeout(()=>{let e=UE(),t=e&&VE(e);t&&n.notifyRootSpanActive(t)},0)}}}}))),vBe=`SpotlightBrowser`,yBe=[{op:`ui.interaction.click`,name:`#sentry-spotlight`}],bBe=((e={})=>{let t=e.sidecarUrl||`http://localhost:8969/stream`;return{name:vBe,setup:()=>{X&&K.log(`Using Sidecar URL`,t)},beforeSetup(e){let t=e.getOptions();t.ignoreSpans=[...t.ignoreSpans||[],...yBe]},afterAllSetup:e=>{xBe(e,t)}}});function xBe(e,t){let n=cI(`fetch`),r=0;e.on(`beforeEnvelope`,e=>{if(r>3){K.warn(`[Spotlight] Disabled Sentry -> Spotlight integration due to too many failed requests:`,r);return}n(t,{method:`POST`,body:lD(e),headers:{"Content-Type":`application/x-sentry-envelope`},mode:`cors`}).then(e=>{e.status>=200&&e.status<400&&(r=0)},e=>{r++,K.error(`Sentry SDK can't connect to Sidecar is it running? See: https://spotlightjs.com/sidecar/npx/`,e)})})}var SBe=EO(bBe),CBe=EO(()=>({name:`LaunchDarkly`,processEvent(e,t,n){return sA(e)}}));function wBe(){return{name:`sentry-flag-auditor`,type:`flag-used`,synchronous:!0,method:(e,t,n)=>{cA(e,t.value),lA(e,t.value)}}}var TBe=EO(()=>({name:`OpenFeature`,processEvent(e,t,n){return sA(e)}})),EBe=class{after(e,t){cA(t.flagKey,t.value),lA(t.flagKey,t.value)}error(e,t,n){cA(e.flagKey,e.defaultValue),lA(e.flagKey,e.defaultValue)}},DBe=EO(({featureFlagClientClass:e})=>({name:`Unleash`,setupOnce(){let t=e.prototype;Bw(t,`isEnabled`,OBe)},processEvent(e,t,n){return sA(e)}}));function OBe(e){return function(...t){let n=t[0],r=e.apply(this,t);return typeof n==`string`&&typeof r==`boolean`?(cA(n,r),lA(n,r)):X&&K.error(`[Feature Flags] UnleashClient.isEnabled does not match expected signature. arg0: ${n} (${typeof n}), result: ${r} (${typeof r})`),r}}var kBe=(({growthbookClass:e})=>ROe({growthbookClass:e})),ABe=EO(({featureFlagClient:e})=>({name:`Statsig`,setup(t){e.on(`gate_evaluation`,e=>{cA(e.gate.name,e.gate.value),lA(e.gate.name,e.gate.value)})},processEvent(e,t,n){return sA(e)}})),jBe=`WebWorker`,MBe=EO(({worker:e})=>({name:jBe,setupOnce:()=>{(Array.isArray(e)?e:[e]).forEach(e=>oV(e))},addWorker:e=>oV(e)}));function oV(e){e.addEventListener(`message`,e=>{if(FBe(e.data)){if(e.stopImmediatePropagation(),e.data._sentryDebugIds&&(X&&K.log(`Sentry debugId web worker message received`,e.data),Y._sentryDebugIds={...e.data._sentryDebugIds,...Y._sentryDebugIds}),e.data._sentryModuleMetadata&&(X&&K.log(`Sentry module metadata web worker message received`,e.data),Y._sentryModuleMetadata={...e.data._sentryModuleMetadata,...Y._sentryModuleMetadata}),e.data._sentryWasmImages){X&&K.log(`Sentry WASM images web worker message received`,e.data);let t=Y._sentryWasmImages||[],n=e.data._sentryWasmImages.filter(e=>Pw(e)&&typeof e.code_file==`string`&&!t.some(t=>t.code_file===e.code_file));Y._sentryWasmImages=[...t,...n]}e.data._sentryWorkerError&&(X&&K.log(`Sentry worker rejection message received`,e.data._sentryWorkerError),NBe(e.data._sentryWorkerError))}})}function NBe(e){let t=J();if(!t)return;let n=t.getOptions().stackParser,r=t.getOptions().attachStacktrace,i=e.reason,a=Nw(i)?DI(i):VP(n,i,void 0,r,!0);a.level=`error`,e.filename&&(a.contexts={...a.contexts,worker:{filename:e.filename}}),uO(a,{originalException:i,mechanism:{handled:!1,type:`auto.browser.web_worker.onunhandledrejection`}}),X&&K.log(`Captured worker unhandled rejection`,i)}function PBe({self:e}){e.postMessage({_sentryMessage:!0,_sentryDebugIds:e._sentryDebugIds??void 0,_sentryModuleMetadata:e._sentryModuleMetadata??void 0}),e.addEventListener(`unhandledrejection`,t=>{let n={reason:EI(t),filename:e.location?.href};e.postMessage({_sentryMessage:!0,_sentryWorkerError:n}),X&&K.log(`[Sentry Worker] Forwarding unhandled rejection to parent`,n)}),X&&K.log(`[Sentry Worker] Registered worker with unhandled rejection handling`)}function FBe(e){if(!Pw(e)||e._sentryMessage!==!0)return!1;let t=`_sentryDebugIds`in e,n=`_sentryModuleMetadata`in e,r=`_sentryWorkerError`in e,i=`_sentryWasmImages`in e;return!(!t&&!n&&!r&&!i||t&&!(Pw(e._sentryDebugIds)||e._sentryDebugIds===void 0)||n&&!(Pw(e._sentryModuleMetadata)||e._sentryModuleMetadata===void 0)||r&&!Pw(e._sentryWorkerError)||i&&(!Array.isArray(e._sentryWasmImages)||!e._sentryWasmImages.every(e=>Pw(e)&&typeof e.code_file==`string`)))}var IBe=50,[,LBe]=_I,[,RBe]=gM(),sV=(e,t=0)=>{let n=[];for(let r of e.split(`
|
|
1004
|
+
`).slice(t)){let e=LBe(r),t=RBe(r);if(e&&t?.in_app!==!1?n.push(e):t&&(t.module===void 0&&delete t.module,n.push(t)),n.length>=IBe)break}return dw(n)},zBe=EO(e=>{let t=e?.threshold??1e3,n=e?.pollInterval||t/2;return{name:`EventLoopBlockRenderer`,setup(r){let i={pollInterval:n,anrThreshold:t,captureStackTrace:!0,...e},a=DM(r);a.sendStatus({status:document.visibilityState,config:i}),setInterval(()=>{a.sendStatus({status:`alive`,config:i})},i.pollInterval)}}});function cV(){let e=VT().getScopeData(),t=BT().getScopeData(),n=q().getScopeData();return GD(e,t),GD(e,n),e.eventProcessors=[],e}function BBe(e){BT().addScopeListener(t=>{e(cV(),t)}),q().addScopeListener(t=>{e(cV(),t)}),VT().addScopeListener(t=>{e(cV(),t)})}var lV=EO(()=>({name:`ScopeToMain`,setup(e){let t=DM(e);BBe((e,n)=>{t.sendScope(JSON.stringify(Qw(e,20,2e3))),n.clearBreadcrumbs(),n.clearAttachments()})}}));function uV(e){let t;return qO(e,async e=>(t||=DM(),t.sendEnvelope(e.body),{statusCode:200}))}function dV(e){return[...NI(e).filter(e=>e.name!==`BrowserSession`&&e.name!==`CultureContext`),lV()]}function fV(e={},t=HPe){if(window?.__SENTRY__RENDERER_INIT__){K.warn(`The browser SDK has already been initialized.
|
|
1005
|
+
If init has been called in the preload and contextIsolation is disabled, is not required to call init in the renderer`);return}window.__SENTRY__RENDERER_INIT__=!0,e.sendClientReports=!1,e.defaultIntegrations===void 0&&(e.defaultIntegrations=dV(e)),e.stackParser===void 0&&(e.stackParser=sV),e.ipcNamespace===void 0&&(e.ipcNamespace=`sentry-ipc`),e.dsn===void 0&&(e.dsn=`https://12345@dummy.dsn/12345`),e.transport===void 0&&(e.transport=uV),delete e.initialScope,t(e)}var pV=e({BrowserClient:()=>UP,MULTIPLEXED_TRANSPORT_EXTRA_KEY:()=>_De,OpenFeatureIntegrationHook:()=>EBe,SEMANTIC_ATTRIBUTE_SENTRY_OP:()=>KT,SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN:()=>qT,SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE:()=>GT,SEMANTIC_ATTRIBUTE_SENTRY_SOURCE:()=>WT,Scope:()=>kT,addBreadcrumb:()=>Ek,addEventProcessor:()=>hO,addIntegration:()=>TO,bindScopeToEmitter:()=>GTe,breadcrumbsIntegration:()=>bI,browserApiErrorsIntegration:()=>xI,browserProfilingIntegration:()=>_Be,browserSessionIntegration:()=>CI,browserTracingIntegration:()=>kB,buildLaunchDarklyFlagUsedHandler:()=>wBe,captureConsoleIntegration:()=>KDe,captureEvent:()=>uO,captureException:()=>cO,captureFeedback:()=>pA,captureMessage:()=>lO,captureSession:()=>yO,chromeStackLineParser:()=>_I,consoleLoggingIntegration:()=>XOe,contextLinesIntegration:()=>sFe,continueTrace:()=>MTe,createConsolaReporter:()=>$Oe,createLangChainCallbackHandler:()=>Vj,createTransport:()=>qO,createUserFeedbackEnvelope:()=>dPe,dedupeIntegration:()=>Kk,defaultRequestInstrumentationOptions:()=>yB,defaultStackParser:()=>sV,elementTimingIntegration:()=>ENe,endSession:()=>_O,eventFiltersIntegration:()=>kk,eventFromException:()=>zP,eventFromMessage:()=>BP,eventLoopBlockIntegration:()=>zBe,exceptionFromError:()=>FP,extraErrorDataIntegration:()=>$De,featureFlagsIntegration:()=>LOe,feedbackAsyncIntegration:()=>lMe,feedbackIntegration:()=>PP,feedbackSyncIntegration:()=>PP,fetchStreamPerformanceIntegration:()=>wB,forceLoad:()=>UPe,functionToStringIntegration:()=>Ok,getAbsoluteUrl:()=>XNe,getActiveSpan:()=>UE,getClient:()=>J,getCurrentScope:()=>q,getDefaultIntegrations:()=>dV,getFeedback:()=>gje,getGlobalScope:()=>VT,getIsolationScope:()=>BT,getReplay:()=>rze,getRootSpan:()=>VE,getSpanDescendants:()=>BE,getSpanStatusFromHttpCode:()=>eE,getTraceData:()=>Tk,globalHandlersIntegration:()=>TI,graphqlClientIntegration:()=>hFe,growthbookIntegration:()=>kBe,httpClientIntegration:()=>YPe,httpContextIntegration:()=>AI,inboundFiltersIntegration:()=>Ak,init:()=>fV,instrumentAnthropicAiClient:()=>hAe,instrumentCreateReactAgent:()=>$Ae,instrumentGoogleGenAIClient:()=>DAe,instrumentLangChainEmbeddings:()=>HAe,instrumentLangGraph:()=>eje,instrumentOpenAiClient:()=>Xke,instrumentOutgoingRequests:()=>bB,instrumentSupabaseClient:()=>iA,isBotUserAgent:()=>OB,isEnabled:()=>mO,isInitialized:()=>DEe,lastEventId:()=>pO,launchDarklyIntegration:()=>CBe,linkedErrorsIntegration:()=>jI,logger:()=>OM,makeRendererTransport:()=>uV,metrics:()=>IM,moduleMetadataIntegration:()=>UDe,normalizeStringifyValue:()=>MI,onLoad:()=>WPe,openFeatureIntegration:()=>TBe,parameterize:()=>wk,registerSpanErrorInstrumentation:()=>KE,registerWebWorker:()=>PBe,replayCanvasIntegration:()=>Sze,replayIntegration:()=>Uz,reportPageLoaded:()=>Wze,reportingObserverIntegration:()=>qPe,rewriteFramesIntegration:()=>sOe,scopeToMainIntegration:()=>lV,sendFeedback:()=>dN,setActiveSpanInBrowser:()=>Gze,setAttribute:()=>TEe,setAttributes:()=>wEe,setContext:()=>dO,setConversationId:()=>EEe,setCurrentClient:()=>fk,setExtra:()=>xEe,setExtras:()=>bEe,setHttpStatus:()=>tE,setMeasurement:()=>mD,setTag:()=>CEe,setTags:()=>SEe,setUser:()=>fO,showReportDialog:()=>PI,spanStreamingIntegration:()=>Kze,spanToBaggageHeader:()=>mTe,spanToJSON:()=>DE,spanToTraceHeader:()=>SE,spotlightBrowserIntegration:()=>SBe,startBrowserTracingNavigationSpan:()=>jB,startBrowserTracingPageLoadSpan:()=>AB,startInactiveSpan:()=>ED,startNewTrace:()=>kD,startSession:()=>gO,startSpan:()=>wD,startSpanManual:()=>TD,statsigIntegration:()=>ABe,supabaseIntegration:()=>xOe,suppressTracing:()=>NTe,thirdPartyErrorFilterIntegration:()=>AOe,uiProfiler:()=>tPe,unleashIntegration:()=>DBe,updateSpanName:()=>lTe,viewHierarchyIntegration:()=>gFe,webVitalsIntegration:()=>TB,webWorkerIntegration:()=>MBe,withActiveSpan:()=>DD,withIsolationScope:()=>Mwe,withScope:()=>HT,withStreamedSpan:()=>hTe,zodErrorsIntegration:()=>kOe}),VBe=100,HBe=5,UBe=[`ResizeObserver loop completed with undelivered notifications.`,`ResizeObserver loop limit exceeded`,`AbortError`,`The user aborted a request.`,`Network request failed`,`NetworkError when attempting to fetch resource.`,`Failed to fetch`,`ChunkLoadError`,`Loading chunk`,`Loading CSS chunk`,`Non-Error promise rejection captured with value: Object Not Found Matching Id`];function mV(e){if(e)for(let t of Object.keys(e))/token|secret|password|api[_-]?key/i.test(t)&&(e[t]=`[redacted]`)}function WBe(e){e.request?.url&&(e.request.url=e.request.url.replace(/([?&](?:code|token|access_token|state)=)[^&]+/gi,`$1[redacted]`)),mV(e.extra),mV(e.tags)}function GBe(e){let t=gV(e.version)??`0.0.0`,n=gV(e.commitHash);return n?`${e.appName}@${t}+${n}`:`${e.appName}@${t}`}function hV(e,t){for(let n of t){let t=gV(e[n]);if(t)return t}}function KBe(e){return _V(e.enabled)??e.defaultEnabled??!1}function qBe(e){let t=gV(e.dsn);return!t||KBe(e)===!1?null:{dsn:t,environment:gV(e.environment)??gV(e.defaultEnvironment)??`production`,release:gV(e.release)??gV(e.defaultRelease)??void 0,debug:_V(e.debug)??e.defaultDebug??!1,tracesSampleRate:yV(e.tracesSampleRate,e.defaultTracesSampleRate??.1),profilesSampleRate:vV(e.profilesSampleRate,e.defaultProfilesSampleRate),replaysSessionSampleRate:vV(e.replaysSessionSampleRate,e.defaultReplaysSessionSampleRate),replaysOnErrorSampleRate:vV(e.replaysOnErrorSampleRate,e.defaultReplaysOnErrorSampleRate),attachStacktrace:!0,maxBreadcrumbs:VBe,normalizeDepth:HBe,tags:JBe(e)}}function JBe(e){let t={app:e.appName,runtime:e.runtime};for(let[n,r]of Object.entries(e.tags??{})){let e=gV(r);e&&(t[n]=e)}return t}function gV(e){if(e==null)return null;let t=e.trim();return t.length>0?t:null}function _V(e){if(typeof e==`boolean`)return e;let t=gV(e);if(t){if(t===`1`||t.toLowerCase()===`true`)return!0;if(t===`0`||t.toLowerCase()===`false`)return!1}}function vV(e,t){if(t!==void 0||e!==void 0)return yV(e,t??0)}function yV(e,t){let n=YBe(e);return n===null||n<0||n>1?t:n}function YBe(e){if(typeof e==`number`)return Number.isFinite(e)?e:null;let t=gV(e);if(!t)return null;let n=Number.parseFloat(t);return Number.isFinite(n)?n:null}function XBe(e){let t=(0,vi.c)(11),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=ft(ki,`bg-background text-foreground`),t[0]=n):n=t[0];let r;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(r=ft(Di,`pl-1 md:pl-2.5`),t[1]=r):r=t[1];let i;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,N.jsx)(ji,{}),t[2]=i):i=t[2];let a;t[3]===e.onGoToNewChat?a=t[4]:(a=(0,N.jsx)(`div`,{className:r,children:(0,N.jsx)(`button`,{type:`button`,"aria-label":`Go to new chat`,onClick:e.onGoToNewChat,className:`${Oi} hover:bg-accent/70`,children:i})}),t[3]=e.onGoToNewChat,t[4]=a);let o;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,N.jsx)(`div`,{}),t[5]=o):o=t[5];let s;t[6]===a?s=t[7]:(s=(0,N.jsxs)(`header`,{className:Ei,children:[a,o]}),t[6]=a,t[7]=s);let c;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,N.jsx)(`div`,{className:`flex min-h-0 flex-1 items-center justify-center px-4`,children:(0,N.jsxs)(`div`,{className:`max-w-md rounded-xl border border-border bg-card p-6 text-center shadow-lg`,children:[(0,N.jsx)(`h1`,{className:`text-xl font-semibold tracking-tight`,children:`Something went wrong.`}),(0,N.jsx)(`p`,{className:`mt-2 text-sm text-muted-foreground`,children:`Forge hit an unexpected error and reported it.`}),(0,N.jsx)(`button`,{className:`mt-4 inline-flex rounded-md border border-border px-3 py-2 text-sm font-medium hover:bg-accent`,onClick:ZBe,type:`button`,children:`Reload app`})]})}),t[8]=c):c=t[8];let l;return t[9]===s?l=t[10]:(l=(0,N.jsxs)(`div`,{className:n,children:[s,c]}),t[9]=s,t[10]=l),l}function ZBe(){return window.location.reload()}var QBe=[/\bDeepSeek\b/i,/\bKimi\b/i,/\bMoonshot\b/i,/\bdeepseek[-._a-z0-9]*\b/i,/\bkimi[-._a-z0-9]*\b/i,/\bmoonshot[-._a-z0-9]*\b/i,/\bAPEX_API_KEY\b/,/\bDEEPSEEK_API_KEY\b/,/\bKIMI_API_KEY\b/,/\bOPENAI_API_KEY\b/,/\bANTHROPIC_API_KEY\b/,/\bCURSOR_API_KEY\b/,/\bOPENCODE_API_KEY\b/,/\bforge_proxy_[A-Za-z0-9._-]+\b/,/\bProviderValidationError\b/,/\/forge-server\/node_modules\//,/https?:\/\/[^\s'"<>)]*\/api\/provider-egress\/[^\s'"<>)]*/i,/https?:\/\/[^\s'"<>)]*(?:apex|deepseek|moonshot|kimi)[^\s'"<>)]*/i],$Be=`CMMD is temporarily unavailable. Check the workspace AI connection and retry.`;function bV(e){if(!e)return!1;let t=e.toLowerCase();return/\b(rate[\s-]?limit|too\s+many\s+requests|usage[ _-]limit|usage_limit_reached|quota|insufficient_quota)\b/.test(t)||/\b429\b/.test(t)}function eVe(e){return/\bbound to provider account\b/.test(e)&&/\bcannot use provider account\b/.test(e)?`Forge could not switch this conversation to the selected AI account. Retry the account switch.`:/\bforge_runtime_repairing\b/.test(e)||/\bthis turn was interrupted because the environment is being repaired\b/.test(e)?`This turn was interrupted because the environment is being repaired. Retry after the repair finishes.`:/\bforge_runtime_stopped\b/.test(e)||/\bthis turn was interrupted because the environment was stopped\b/.test(e)?`This turn was interrupted because the environment was stopped. Start the environment and retry.`:null}function tVe(e){if(!e)return null;let t=e.toLowerCase(),n=eVe(t);return n===null?/\bforge_provider_model_not_allowed\b/.test(t)||/\bnot\s+scoped\s+to\s+the\s+requested\s+model\b/.test(t)?`The workspace AI credential does not cover the model this turn asked for. Retry, or pick that model for the thread.`:/\bmodel\b[\s\S]*\b(not\s+(found|available|supported)|does\s+not\s+exist|unsupported|invalid|unknown)\b/.test(t)||/\b(unsupported|unknown|invalid)\b[\s\S]*\bmodel\b/.test(t)||/\b(model_not_found|invalid_model|model_not_supported)\b/.test(t)?`The selected model isn't available right now. Pick a different model and retry.`:bV(t)?`The AI service is rate-limited or out of quota. Wait a moment and retry.`:/_credential_reconnect_required\b/.test(t)?`The workspace AI credential needs to be reconnected. Reconnect it in Settings > Providers, then retry.`:/\b(unauthorized|forbidden|authentication\s+(failed|error|required)|invalid\s+api\s+key|expired\s+(token|credential))\b/.test(t)||/\b40[13]\b/.test(t)?`Workspace AI authentication failed. Reconnect the workspace and retry.`:/\b(timed?\s*out|timeout|overloaded|service\s+unavailable)\b/.test(t)||/\b50[234]\b/.test(t)?`The AI service is temporarily overloaded. Retry in a moment.`:null:n}function nVe(e){return e?QBe.some(t=>t.test(e)):!1}function xV(e,t={}){if(e==null)return null;let n=e.trim();return n.length===0?null:nVe(n)?tVe(n)??t.fallback??`CMMD is temporarily unavailable. Check the workspace AI connection and retry.`:n}var rVe=[/\bSocketCloseError\b/i,/\bSocketOpenError\b/i,/\bSocketReadError\b/i,/\bRpcClientDefect:\s*Unknown socket error\b/i,/Unable to connect to the Forge server WebSocket\./i,/\bping timeout\b/i];function SV(e){if(typeof e!=`string`)return!1;let t=e.trim();return t.length!==0&&rVe.some(e=>e.test(t))}function CV(e){return SV(e)?null:xV(e,{fallback:$Be})}var iVe=[/^Transport disposed$/,/WebSocket RPC request timed out after \d+ms\./],aVe=`Lost the connection to this Environment. Your message was not sent.`;function oVe(e){return e instanceof Error?SV(e.message)||iVe.some(t=>t.test(e.message.trim()))?aVe:e.message:`Failed to send message.`}var wV=`forge-web`,TV=[`VITE_SENTRY_ENVIRONMENT`,`MODE`],EV=[`VITE_SENTRY_RELEASE`],sVe=[`VITE_SENTRY_DSN`],cVe=[`VITE_SENTRY_DEBUG`],lVe=[`VITE_SENTRY_ENABLED`],uVe=[`VITE_SENTRY_TRACES_SAMPLE_RATE`],dVe=[`VITE_SENTRY_PROFILES_SAMPLE_RATE`],fVe=[`VITE_SENTRY_REPLAYS_SESSION_SAMPLE_RATE`],pVe=[`VITE_SENTRY_REPLAYS_ON_ERROR_SAMPLE_RATE`],mVe=[`VITE_SENTRY_COMMIT_SHA`,`VITE_COMMIT_SHA`],DV=!1,OV={autoInject:!1,colorScheme:`system`,formTitle:`Report a Bug`,themeLight:{accentBackground:`oklch(0.52 0.19 48)`,accentForeground:`#ffffff`,background:`#ffffff`,boxShadow:`0 24px 80px rgba(0, 0, 0, 0.18)`,foreground:`#262626`,outline:`1px solid oklch(0.52 0.19 48)`},themeDark:{accentBackground:`oklch(0.62 0.2 47)`,accentForeground:`#ffffff`,background:`#171717`,boxShadow:`0 24px 80px rgba(0, 0, 0, 0.45)`,foreground:`#f5f5f5`,outline:`1px solid oklch(0.62 0.2 47)`}};function hVe(e){let t=e.exception&&typeof e.exception==`object`&&`values`in e.exception&&Array.isArray(e.exception.values)?e.exception.values:[];return[typeof e.title==`string`?e.title:void 0,...t.flatMap(e=>{if(typeof e!=`object`||!e)return[];let t=e;return[typeof t.type==`string`?t.type:void 0,typeof t.value==`string`?t.value:void 0]})]}function gVe(e){return(e.exception&&typeof e.exception==`object`&&`values`in e.exception&&Array.isArray(e.exception.values)?e.exception.values:[]).some(e=>{if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.value!=`string`||!/All fibers interrupted without error/i.test(t.value)?!1:t.stacktrace?.frames?.some(e=>{let t=typeof e.filename==`string`?e.filename:``,n=typeof e.function==`string`?e.function:``;return t.includes(`src/rpc/wsTransport.ts`)&&n===`WsTransport.request`})})}function _Ve(e){return hVe(e).some(SV)||gVe(e)}function vVe(){let e=new URL(window.location.href);Vn?e.hash=`/new`:(e.pathname=`/new`,e.search=``,e.hash=``),window.location.assign(e.toString())}function yVe(){let e=Vn?`electron-renderer`:`browser`,t={APP_VERSION:`0.13.4`,BASE_URL:`/`,DEV:!1,MODE:`production`,PROD:!0,SSR:!1,TSS_INLINE_CSS_ENABLED:`false`,VITE_COMMIT_SHA:``,VITE_HOSTED_APP_CHANNEL:``,VITE_HTTP_URL:``,VITE_SENTRY_COMMIT_SHA:`cde08c954e416e4076c8b79afc695b6f4bf19ba9`,VITE_SENTRY_DEBUG:``,VITE_SENTRY_DSN:``,VITE_SENTRY_ENABLED:``,VITE_SENTRY_ENVIRONMENT:`production`,VITE_SENTRY_PROFILES_SAMPLE_RATE:``,VITE_SENTRY_RELEASE:`forge-web@0.13.4+cde08c954e416e4076c8b79afc695b6f4bf19ba9`,VITE_SENTRY_REPLAYS_ON_ERROR_SAMPLE_RATE:``,VITE_SENTRY_REPLAYS_SESSION_SAMPLE_RATE:``,VITE_SENTRY_TRACES_SAMPLE_RATE:``,VITE_WS_URL:``},n=hV(t,[...EV])??GBe({appName:wV,version:`0.13.4`,commitHash:hV(t,[...mVe])});return qBe({appName:wV,runtime:e,defaultEnvironment:hV(t,[...TV])??`development`,defaultRelease:n,defaultEnabled:!0,defaultTracesSampleRate:0,defaultReplaysSessionSampleRate:0,defaultReplaysOnErrorSampleRate:0,enabled:hV(t,[...lVe]),dsn:hV(t,[...sVe]),environment:hV(t,[...TV]),release:hV(t,[...EV]),debug:hV(t,[...cVe]),tracesSampleRate:hV(t,[...uVe]),profilesSampleRate:hV(t,[...dVe]),replaysSessionSampleRate:hV(t,[...fVe]),replaysOnErrorSampleRate:hV(t,[...pVe]),tags:{platform:Vn?`desktop`:`web`}})}function kV(e){return WBe(e),_Ve(e)?null:e}function bVe(e){return{...e.replaysOnErrorSampleRate===void 0?{}:{replaysOnErrorSampleRate:e.replaysOnErrorSampleRate},...e.replaysSessionSampleRate===void 0?{}:{replaysSessionSampleRate:e.replaysSessionSampleRate}}}function AV(e){return{attachStacktrace:e.attachStacktrace,debug:e.debug,dsn:e.dsn,environment:e.environment,ignoreErrors:[...UBe],initialScope:{tags:e.tags},maxBreadcrumbs:e.maxBreadcrumbs,normalizeDepth:e.normalizeDepth,sendDefaultPii:!1,tracesSampleRate:e.tracesSampleRate,...e.release===void 0?{}:{release:e.release},...bVe(e)}}function xVe(e){let t=[];e.tracesSampleRate>0&&t.push(kB()),((e.replaysSessionSampleRate??0)>0||(e.replaysOnErrorSampleRate??0)>0)&&t.push(Uz());let n=PP(OV);t.push(n);try{fV({...AV(e),beforeSend:e=>kV(e),integrations:t})}catch{return null}return DV=!0,pV}function SVe(e){let t=[];e.tracesSampleRate>0&&t.push(Bx()),((e.replaysSessionSampleRate??0)>0||(e.replaysOnErrorSampleRate??0)>0)&&t.push($b());let n=Ih(OV);t.push(n);try{SS({...AV(e),beforeSend:e=>kV(e),integrations:t})}catch{return null}return DV=!0,XC}function jV(){if(DV)return Vn?pV:XC;let e=yVe();return e?Vn?xVe(e):SVe(e):null}function MV(e){if(jV()){if(Vn){fO(e);return}ql(e)}}function NV(e,t,n){if(!jV())return;let r=CVe(e);if(Vn){HT(e=>{t&&e.setTags(t);let i=cO(r);n?.showReportDialog&&PI({eventId:i})});return}ss(e=>{t&&e.setTags(t);let i=zl(r);n?.showReportDialog&&H_({eventId:i})})}function CVe(e){if(e instanceof Error)return e;if(typeof e==`string`&&e.trim().length>0)return Error(e);try{return Error(JSON.stringify(e))}catch{return Error(`Unknown non-Error exception`)}}var wVe=class extends M.Component{constructor(e){super(e),this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(e){NV(e,{origin:`react-boundary`},{showReportDialog:!0})}render(){return this.state.hasError?(0,N.jsx)(XBe,{onGoToNewChat:vVe}):this.props.children}},PV=!1,FV=!1,IV=null,LV=null,RV=null,zV=!1,BV=new Set;function TVe(e){if(PV||FV)return;if(!e.publicKey||!e.host){FV=!0;return}if(IV)return;if(typeof window>`u`||typeof location>`u`){FV=!0;return}let t=e.publicKey,n=e.host;IV=A(async()=>{let{default:e}=await import(`./module-CPO4cjSm.js`);return{default:e}},[]).then(({default:e})=>{LV=e,e.init(t,{api_host:n,person_profiles:`identified_only`,capture_pageview:!1,capture_pageleave:!1,autocapture:!1,disable_session_recording:!0,loaded:()=>{PV=!0,RV&&VV(RV),HV(),BV.forEach(e=>e())}})}).catch(()=>{FV=!0,LV=null})}function VV(e){if(RV=e,!PV||!LV)return;let t={};e.email!==void 0&&(t.email=e.email),e.displayName!==void 0&&(t.name=e.displayName),LV.identify(e.cmmdUserId,t)}function EVe(e){return!PV||!LV?!1:LV.isFeatureEnabled(e)===!0}function HV(){!LV||zV||(zV=!0,LV.onFeatureFlags(()=>{BV.forEach(e=>e())}))}function DVe(e){return BV.add(e),PV&&LV&&(HV(),e()),()=>{BV.delete(e)}}var UV=`/api/cmmd/auth-runtime`;function OVe(e){return j({method:`POST`,path:UV},e)}function kVe(e){return j({method:`GET`,path:UV},e)}function AVe(e){return j({method:`DELETE`,path:UV},e)}function jVe(e){return j({method:`POST`,path:`${UV}/connect`},e)}function MVe(e,t){return j({method:`GET`,path:`/api/cmmd/billing`,...t?.organizationId===void 0?{}:{query:{orgId:t.organizationId}}},e)}function NVe(e,t){return j({method:`GET`,path:`/api/cmmd/billing/series`,query:{timeZone:t.timeZone}},e)}var WV=`/api/cmmd/providers/codex/credential`,GV=`/api/cmmd/providers/claude/credential`;function PVe(e){return j({method:`GET`,path:WV},e)}function FVe(e){return j({method:`DELETE`,path:WV},e)}function IVe(e){return j({method:`GET`,path:GV},e)}function LVe(e){return j({method:`DELETE`,path:GV},e)}function RVe(e,t){return j({method:`DELETE`,path:`/api/cmmd/providers/accounts/${encodeURIComponent(String(t))}`},e)}function zVe(e,t,n){return`/api/cmmd/threads/${encodeURIComponent(e)}/${encodeURIComponent(t)}/${encodeURIComponent(n)}/disposition`}function BVe(e,t,n,r,i){return j({method:`PUT`,path:zVe(t,n,r),body:i},e)}function VVe(e){return(t,n,r,i)=>BVe(e,t,n,r,i)}function KV(e,t=``){return`/api/cmmd/thread-attachments/${encodeURIComponent(e)}${t}`}function HVe(e){return{async listThreadAttachments(t){return j({method:`GET`,path:KV(t)},e)},async uploadThreadAttachment(t,n,r,i){let a=new FormData;return a.append(`file`,n),r!==void 0&&a.append(`attachmentId`,r),j({method:`POST`,path:KV(t),form:a,...i===void 0?{}:{signal:i}},e)},async getThreadAttachmentDownloadUrl(t,n){return j({method:`GET`,path:KV(t,`/${encodeURIComponent(n)}/download`)},e)},async deleteThreadAttachment(t,n){await j({method:`DELETE`,path:KV(t,`/${encodeURIComponent(n)}`)},e)}}}var UVe=class extends Error{constructor(e){super(e),this.name=`CmmdApiAuthError`}},WVe=class extends Error{status;constructor(e,t){super(e),this.name=`CmmdApiServerError`,this.status=t}};async function qV(e){try{return await e}catch(e){throw e instanceof wn?e.kind===`auth`?new UVe(e.message):new WVe(e.message,e.status??502):e}}function GVe(e,t,n){return`/api/cmmd/threads/${encodeURIComponent(e)}/${encodeURIComponent(t)}/${encodeURIComponent(n)}/archive`}function KVe(e,t,n,r,i){return j({method:`POST`,path:GVe(t,n,r),body:i},e)}function qVe(e){return(t,n,r,i)=>KVe(e,t,n,r,i)}function JVe(e){return typeof e==`object`&&!!e&&`status`in e&&e.status===409}async function YVe(e){let t={action:e.action,...e.operationId===void 0?{}:{operationId:e.operationId},expectedRevision:e.expectedRevision,force:e.force};try{return await e.submit(t)}catch(n){if(!JVe(n))throw n;let r=await e.refresh();return e.submit({...t,expectedRevision:r.revision})}}function XVe(e){return{getForgeAccountPreferences:()=>j({method:`GET`,path:`/api/cmmd/account/preferences`},e),updateForgeAccountPreferences:t=>j({method:`PATCH`,path:`/api/cmmd/account/preferences`,body:t},e),getUserSettings:t=>j({method:`GET`,path:`/api/cmmd/user/settings/${t}`},e),putUserSettings:(t,n)=>j({method:`PUT`,path:`/api/cmmd/user/settings/${t}`,body:n},e)}}function ZVe(e,t,n){return j({method:`POST`,path:`/api/cmmd/forge-runtimes/${encodeURIComponent(t)}/rename`,body:{displayName:n}},e)}function QVe(e,t,n){return j({method:`POST`,path:`/api/cmmd/devices/${encodeURIComponent(String(t))}/rename`,body:{displayName:n}},e)}function $Ve(e,t){return j({method:`POST`,path:`/api/cmmd/devices/${encodeURIComponent(String(t))}/revoke`},e)}function eHe(e){return{...e?.projectId===void 0?{}:{projectId:String(e.projectId)},...e?.allWorkspaces===!0?{allWorkspaces:`true`}:{},...e?.organizationId===void 0?{}:{orgId:String(e.organizationId)}}}var JV=`rt-demo`,YV=`th-demo`,XV=`example-project`,tHe=`example-conversation`,ZV=`2026-09-26T20:00:00.000Z`;function nHe(e,t){return e===JV&&t===YV}function rHe(){return{runtime:{id:JV,source:`forge-cloud`,runtimeKind:`cloud-vm`,displayName:`Example Forge Server`,status:`online`,endpointUrl:null,hostId:null,deviceId:null,workspaceRoot:null,githubRepoFullName:null,lastSeenAt:ZV,reachability:{status:`online`,lastReachableAt:ZV,source:`cloud-runtime`},metadata:null},inventoryStatus:`synced`,inventoryPublishedAt:ZV,projectCount:1,threadCount:1,projects:[{projectId:XV,title:`Example project`,workspaceRoot:null,githubRepoFullName:null,branch:null,status:`active`,threadCount:1,lastActivityAt:ZV,metadata:null,publishedAt:ZV,updatedAt:ZV,threads:[{threadId:YV,title:`Example thread (viewer check)`,status:`active`,model:null,provider:null,providerAccountId:null,branch:null,lastMessagePreview:null,lastActivityAt:ZV,kind:`master`,parentThreadId:null,workerRole:null,anchorKind:`scratch`,anchorCmmdId:null,archive:null,disposition:{manualDisposition:null,automaticDisposition:null,effectiveDisposition:null,revision:null,source:null},metadata:null,publishedAt:ZV,updatedAt:ZV}]}]}}function iHe(){return{conversationId:tHe,runtime:{id:JV,source:`forge-cloud`,runtimeKind:`cloud-vm`,displayName:`Example Forge Server`,status:`online`,endpointUrl:null,deviceId:null,workspaceRoot:null,githubRepoFullName:null,lastSeenAt:ZV,metadata:null},project:{projectId:XV,title:`Example project`,githubRepoFullName:null,branch:null},thread:{threadId:YV,title:`Example thread (viewer check)`,status:`active`,model:null,provider:null,providerAccountId:null,branch:null,lastActivityAt:ZV,metadata:null},reachability:`online`,execution:{available:!0,reason:null},replication:null,events:[{sequence:1,eventId:`example-user-1`,kind:`user_message`,turnId:null,text:`This is an example chat thread for verifying the Forge embed viewer. It is not a live Work Session.`,status:null,occurredAt:`2026-09-26T19:58:00.000Z`},{sequence:2,eventId:`example-assistant-1`,kind:`assistant_message`,turnId:null,text:`Understood. You should see this reply in the iframe under CMMD /forge, with the composer still available below.`,status:null,occurredAt:`2026-09-26T19:59:00.000Z`},{sequence:3,eventId:`example-user-2`,kind:`user_message`,turnId:null,text:`Thanks. If these three turns render, the thread wire is working.`,status:null,occurredAt:ZV}]}}function aHe(e){return e.runtimes.some(e=>e.runtime.id===JV)?{...e,runtimes:[...e.runtimes]}:{...e,runtimes:[...e.runtimes,rHe()]}}function QV(e,t){if(!e||typeof e!=`object`)return null;let n=e[t];return typeof n==`string`&&n.trim().length>0?n.trim():null}function oHe(e,t){if(!e||typeof e!=`object`)return null;let n=e[t];return typeof n==`boolean`?n:null}function $V(e,t){if(!e||typeof e!=`object`)return null;let n=e[t];return typeof n==`string`&&n.trim().length>0?n.trim():typeof n==`number`&&Number.isFinite(n)?String(n):null}function eH(e){return{...e.limit===void 0?{}:{limit:e.limit},...e.cursor?{cursor:e.cursor}:{}}}var tH=class extends Error{constructor(e){super(`CmmdApiClient.${e} is not implemented yet`),this.name=`CmmdApiNotImplementedError`}};function nH(e,t){if(Array.isArray(e))return e;if(e&&typeof e==`object`){let n=e[t];if(Array.isArray(n))return n}return[]}function rH(e,t){if(Array.isArray(e))return e;if(e&&typeof e==`object`){let n=e[t];if(Array.isArray(n))return n}return[]}function iH(e,t){let n={};return e?.organizationId&&(n.orgId=e.organizationId),t!==void 0&&(n.taskId=String(t)),Object.keys(n).length>0?n:void 0}function aH(e){let t=`${QV(e,`firstName`)??``} ${QV(e,`lastName`)??``}`.trim()||QV(e,`username`)||QV(e,`email`)||`Unknown`;return{id:$V(e,`userId`)??$V(e,`id`)??t,name:t,email:QV(e,`email`),role:QV(e,`role`),avatarUrl:QV(e,`profileImage`)??QV(e,`avatar`)}}function sHe(e){let t=sH(e,`user`)??e;return aH({...typeof t==`object`&&t?t:{},userId:$V(e,`userId`)??$V(t,`id`),role:QV(e,`role`)})}function oH(e){let t=QV(e,`authorFirstName`)??``,n=QV(e,`authorLastName`)??``,r=QV(e,`status`),i=r===`at_risk`||r===`off_track`||r===`complete`?r:`on_track`;return{id:$V(e,`id`)??``,status:i,body:QV(e,`body`)??``,authorName:`${t} ${n}`.trim()||null,authorAvatarUrl:QV(e,`authorProfileImage`)??null,createdAt:QV(e,`createdAt`)??``,updatedAt:QV(e,`updatedAt`)??QV(e,`createdAt`)??``,canEdit:oHe(e,`canEdit`)??!1}}function cHe(e,t,n){let r=Array.isArray(e.data)?e.data.map(oH):[];return{updates:r,pagination:e.pagination??{page:t,limit:n,total:r.length,hasMore:!1}}}function sH(e,t){if(!e||typeof e!=`object`)return null;let n=e[t];return n&&typeof n==`object`?n:null}var lHe=[`avatarUrl`,`avatar_url`,`profileImage`,`profile_image`,`profileImageUrl`,`profile_image_url`,`image`,`imageUrl`,`image_url`,`picture`];function cH(e,t){let n=sH(e,t);if(!n)return null;for(let e of lHe){let t=QV(n,e);if(t)return t}return null}function lH(e,t){let n=sH(e,t);return n?$V(n,`id`):null}function uH(e,t){return!!(e&&typeof e==`object`&&Object.hasOwn(e,t))}function uHe(e){let t={...e,id:$V(e,`id`)??e.id,title:e.title??QV(e,`name`)??``},n=$V(e,`workspaceId`)??$V(e,`workspace_id`)??lH(e,`workspace`)??e.workspaceId??null;return n!==null||uH(e,`workspaceId`)?{...t,workspaceId:n,startDate:e.startDate??QV(e,`start_date`)??null,endDate:e.endDate??QV(e,`end_date`)??null}:t}function dH(e){let t=e.ownerAvatarUrl??QV(e,`owner_avatar_url`)??QV(e,`ownerProfileImage`)??QV(e,`owner_profile_image`)??QV(e,`ownerImage`)??QV(e,`owner_image`)??QV(e,`ownerImageUrl`)??QV(e,`owner_image_url`)??QV(e,`createdByAvatarUrl`)??QV(e,`created_by_avatar_url`)??QV(e,`createdByProfileImage`)??QV(e,`created_by_profile_image`)??cH(e,`owner`)??cH(e,`createdBy`)??cH(e,`created_by`)??null,n={...e,id:$V(e,`id`)??e.id},r=$V(e,`campaignId`)??$V(e,`campaign_id`)??lH(e,`campaign`)??e.campaignId??null;(r!==null||uH(e,`campaignId`))&&(n.campaignId=r);let i=e.campaignTitle??QV(e,`campaignTitle`)??QV(e,`campaign_title`)??QV(sH(e,`campaign`),`title`)??QV(sH(e,`campaign`),`name`)??null;(i!==null||uH(e,`campaignTitle`))&&(n.campaignTitle=i);let a=$V(e,`workspaceId`)??$V(e,`workspace_id`)??lH(e,`workspace`)??e.workspaceId??null;(a!==null||uH(e,`workspaceId`))&&(n.workspaceId=a);let o=e.workspaceName??QV(e,`workspace_name`)??QV(sH(e,`workspace`),`name`)??null;(o!==null||uH(e,`workspaceName`))&&(n.workspaceName=o);let s=QV(e,`workspaceIconUrl`)??QV(e,`workspace_icon_url`)??QV(sH(e,`workspace`),`iconUrl`)??null;(s!==null||uH(e,`workspaceIconUrl`))&&(n.workspaceIconUrl=s);let c=$V(e,`ownerId`)??$V(e,`owner_id`)??lH(e,`owner`)??e.ownerId??null;(c!==null||uH(e,`ownerId`))&&(n.ownerId=c);let l=e.ownerName??QV(e,`owner_name`)??QV(sH(e,`owner`),`name`)??null;(l!==null||uH(e,`ownerName`))&&(n.ownerName=l),(t!==null||uH(e,`ownerAvatarUrl`))&&(n.ownerAvatarUrl=t);let u=$V(e,`teamId`)??$V(e,`team_id`)??lH(e,`team`)??e.teamId??null;(u!==null||uH(e,`teamId`))&&(n.teamId=u);let d=e.teamName??QV(e,`team_name`)??QV(sH(e,`team`),`name`)??null;(d!==null||uH(e,`teamName`))&&(n.teamName=d);let f=e.startDate??QV(e,`start_date`)??null;(f!==null||uH(e,`startDate`))&&(n.startDate=f);let p=e.targetEndDate??QV(e,`target_end_date`)??null;return(p!==null||uH(e,`targetEndDate`))&&(n.targetEndDate=p),n}function fH(e){if(Array.isArray(e))return e;if(e&&typeof e==`object`){let t=e;if(Array.isArray(t.items))return t.items;if(Array.isArray(t.results))return t.results}return[]}function dHe(e){return fH(e).flatMap(e=>{let t=e,n=typeof t.id==`number`?t.id:null,r=typeof t.name==`string`?t.name:null;if(n===null||r===null)return[];let i=e=>typeof t[e]==`string`?t[e]:null;return[{id:n,name:r,startDate:i(`startDate`),endDate:i(`endDate`),status:i(`status`)}]})}function fHe(e){if(e&&typeof e==`object`){let t=e;if(t.project&&typeof t.project==`object`)return t.project}return e}function pH(e){if(e===null||e.trim()===``)return null;let t=Number(e);return Number.isSafeInteger(t)?t:e}var mH=class e{cfg;putThreadDisposition;listThreadAttachments;uploadThreadAttachment;getThreadAttachmentDownloadUrl;deleteThreadAttachment;postThreadArchive;getForgeAccountPreferences;updateForgeAccountPreferences;getUserSettings;putUserSettings;commentEditIdempotencyKeys=new Map;commentDeleteIdempotencyKeys=new Map;constructor(e={}){let t=e.forgeOrigin===void 0,n=e.forgeOrigin??`http://localhost:13773`;this.cfg={resolveUrl:t?hn:e=>`${n}${e}`,maxRetries:e.maxRetries??3,onAuthExpired:e.onAuthExpired??Cn,...t?{resolveBearerToken:()=>bn()?.bearerToken??null}:{}},this.putThreadDisposition=VVe(this.cfg);let r=HVe(this.cfg);this.listThreadAttachments=r.listThreadAttachments,this.uploadThreadAttachment=r.uploadThreadAttachment,this.getThreadAttachmentDownloadUrl=r.getThreadAttachmentDownloadUrl,this.deleteThreadAttachment=r.deleteThreadAttachment,this.postThreadArchive=qVe(this.cfg);let i=XVe(this.cfg);this.getForgeAccountPreferences=i.getForgeAccountPreferences,this.updateForgeAccountPreferences=i.updateForgeAccountPreferences,this.getUserSettings=i.getUserSettings,this.putUserSettings=i.putUserSettings}async getTask(e){return qV(j({method:`GET`,path:`/api/cmmd/tasks/${e}`},this.cfg))}async getForgeTaskDetail(e){return j({method:`GET`,path:`/api/cmmd/tasks/${e}`},this.cfg)}async searchTasks(e){let t={q:e.q};return e.status&&(t.status=e.status),e.limit!==void 0&&(t.limit=e.limit),e.projectId&&(t.projectId=e.projectId),(await qV(j({method:`GET`,path:`/api/cmmd/tasks/search`,query:t},this.cfg))).tasks??[]}async getTaskComments(e){return(await qV(j({method:`GET`,path:`/api/cmmd/tasks/${e}/comments`},this.cfg))).comments??[]}async listProjectTaskComments(e){return(await qV(j({method:`GET`,path:`/api/cmmd/tasks/${e}/comments`},this.cfg))).comments??[]}async createProjectTaskComment(e,t){return(await qV(j({method:`POST`,path:`/api/cmmd/tasks/comment`,body:{taskId:e,content:t.content}},this.cfg))).details}async updateProjectTaskComment(e,t,n){return(await qV(j({method:`PATCH`,path:`/api/cmmd/tasks/${e}/comments/${encodeURIComponent(t)}`,body:n},this.cfg))).comment}async deleteProjectTaskComment(e,t,n){return qV(j({method:`DELETE`,path:`/api/cmmd/tasks/${e}/comments/${encodeURIComponent(t)}`,body:n},this.cfg))}async getTaskAttachments(e){return qV(j({method:`GET`,path:`/api/cmmd/tasks/${e}/attachments`},this.cfg))}async getProjectRepository(e){return qV(j({method:`GET`,path:`/api/cmmd/projects/${e}/repository`},this.cfg))}async listProjectRepositories(e){return(await qV(j({method:`GET`,path:`/api/cmmd/projects/${e}/repositories`},this.cfg))).repositories}async getWorkspaceMembers(e){return qV(j({method:`GET`,path:`/api/cmmd/organizations/${e}/members`},this.cfg))}async getWebSocketToken(e){return j({method:`GET`,path:`/api/cmmd/ws-token`,...e?.signal===void 0?{}:{signal:e.signal}},this.cfg)}async getProjectComments(e,t){let n={};return t?.organizationId&&(n.organizationId=t.organizationId),(await j({method:`GET`,path:`/api/cmmd/projects/${e}/comments`,query:n},this.cfg))?.comments??[]}async getProjectLink(e){return j({method:`GET`,path:`/.well-known/forge/project-link`,query:{environmentId:e.environmentId,projectId:e.projectId,cwd:e.cwd}},this.cfg)}async listProjectLinks(){return j({method:`GET`,path:`/.well-known/forge/project-links`,suppressBearerToken:!0},this.cfg)}async listProjectContextLinks(e){let t={};e.environmentId&&(t.forgeEnvironmentId=e.environmentId),e.projectId&&(t.forgeProjectId=e.projectId),e.githubRepoFullName&&(t.githubRepoFullName=e.githubRepoFullName),e.cmmdOrganizationId&&(t.cmmdOrganizationId=e.cmmdOrganizationId);let n=await j({method:`GET`,path:`/.well-known/forge/cmmd/project-links`,query:t},this.cfg),r=vte(hte)(n);return r._tag===`Some`?r.value.links:[]}async listCmmdWorkspaces(){return fH(await j({method:`GET`,path:`/.well-known/forge/cmmd/workspaces`},this.cfg))}async listCmmdCampaigns(e){return dHe(await j({method:`GET`,path:`/.well-known/forge/cmmd/campaigns`,query:{workspaceId:e.workspaceId}},this.cfg))}async listCmmdProjects(e){return fH(await j({method:`GET`,path:`/.well-known/forge/cmmd/projects`,query:{campaignId:e.campaignId}},this.cfg))}async updateTask(e,t){let n={taskId:e};return t.title!==void 0&&(n.title=t.title),t.description!==void 0&&(n.description=t.description),t.status!==void 0&&(n.status=t.status),t.priority!==void 0&&(n.priority=t.priority),t.dueDate!==void 0&&(n.dueDate=t.dueDate),t.assigneeId!==void 0&&(n.assigneeId=t.assigneeId),t.labels!==void 0&&(n.labels=t.labels),qV(j({method:`POST`,path:`/api/cmmd/tasks/update`,body:n},this.cfg))}async createComment(e){return qV(j({method:`POST`,path:`/api/cmmd/tasks/comment`,body:{taskId:e.entityId,content:e.content}},this.cfg))}async updateComment(e,t,n){let r=`${e}:${t}:${n}`,i=this.commentEditIdempotencyKeys.get(r)??crypto.randomUUID();this.commentEditIdempotencyKeys.set(r,i);let a=await qV(j({method:`PATCH`,path:`/api/cmmd/tasks/${e}/comments/${t}`,body:{content:n,idempotencyKey:i}},this.cfg));return this.commentEditIdempotencyKeys.delete(r),a}async deleteComment(e,t){let n=`${e}:${t}`,r=this.commentDeleteIdempotencyKeys.get(n)??crypto.randomUUID();this.commentDeleteIdempotencyKeys.set(n,r),await qV(j({method:`DELETE`,path:`/api/cmmd/tasks/${e}/comments/${t}`,body:{idempotencyKey:r}},this.cfg)),this.commentDeleteIdempotencyKeys.delete(n)}async createProjectComment(e,t){let n=(await j({method:`POST`,path:`/api/cmmd/projects/${e}/comments`,body:{content:t.content,organizationId:t.organizationId??null}},this.cfg))?.comment;if(!n)throw new wn({kind:`server`,message:`CMMD did not return the created project comment.`});return n}async updateProject(e,t){let n={};for(let e of Mte){let r=t[e];r!==void 0&&(n[e]=Lte[e]===`nullableId`?pH(r):r)}await j({method:`PATCH`,path:`/api/cmmd/projects/${e}`,body:n},this.cfg)}async setProjectLink(e){await j({method:`POST`,path:`/.well-known/forge/project-link`,body:e},this.cfg)}async deleteProjectLink(e){await j({method:`DELETE`,path:`/.well-known/forge/project-link`,query:{environmentId:e.environmentId,projectId:e.projectId,cwd:e.cwd,...e.cmmdProjectId?{cmmdProjectId:e.cmmdProjectId}:{}}},this.cfg)}async createCmmdProject(e){return j({method:`POST`,path:`/.well-known/forge/cmmd/projects`,body:e},this.cfg)}async ensureGitHubProjectContext(e){return j({method:`POST`,path:`/.well-known/forge/cmmd/github-project-contexts/ensure`,body:e},this.cfg)}async createBrainDoc(e){return j({method:`POST`,path:`/api/cmmd/brain-docs`,body:e},this.cfg)}async uploadTaskAttachment(e,t){let n=new FormData;return n.append(`file`,t),qV(j({method:`POST`,path:`/api/cmmd/tasks/${e}/attachments`,form:n},this.cfg))}async archiveTask(e){await j({method:`POST`,path:`/api/cmmd/tasks/${e}/archive`},this.cfg)}async unarchiveTask(e){await j({method:`POST`,path:`/api/cmmd/tasks/${e}/unarchive`},this.cfg)}async getProfile(){return j({method:`GET`,path:`/api/cmmd/profile`},this.cfg)}async getUsageSummary(e){return j({method:`GET`,path:`/api/cmmd/usage/summary`,query:{sinceDay:e.sinceDay,untilDay:e.untilDay,timeZone:e.timeZone,...e.resolution===`hour`?{resolution:e.resolution,sinceTime:e.sinceTime,untilTime:e.untilTime}:{}}},this.cfg)}getBilling(e){return MVe(this.cfg,e)}getBillingSeries(e){return NVe(this.cfg,e)}async getBootstrap(){return j({method:`GET`,path:`/api/cmmd/bootstrap`},this.cfg)}async getOrgProviderPolicy(){return j({method:`GET`,path:`/api/cmmd/org/provider-policy`},this.cfg)}async listSavedDataViews(e){return j({method:`GET`,path:`/api/cmmd/saved-views`,query:{surface:e.surface,projectId:e.projectId}},this.cfg)}async createSavedDataView(e){return j({method:`POST`,path:`/api/cmmd/saved-views`,body:e},this.cfg)}async importSavedDataView(e){return j({method:`POST`,path:`/api/cmmd/saved-views/import`,body:e},this.cfg)}async updateSavedDataView(e,t){return j({method:`PATCH`,path:`/api/cmmd/saved-views/${encodeURIComponent(e)}`,body:t},this.cfg)}async deleteSavedDataView(e,t){return j({method:`DELETE`,path:`/api/cmmd/saved-views/${encodeURIComponent(e)}`,query:t},this.cfg)}async getDeviceRegistry(e){return j({method:`GET`,path:`/api/cmmd/devices`,...e?.projectId===void 0?{}:{query:{projectId:String(e.projectId)}},...e?.signal===void 0?{}:{signal:e.signal}},this.cfg)}async registerDevice(e){return j({method:`POST`,path:`/api/cmmd/devices/register`,body:e},this.cfg)}async grantRuntimeAccess(e,t){return j({method:`POST`,path:`/api/cmmd/devices/runtimes/${encodeURIComponent(e)}/access-grants`,body:t},this.cfg)}async revokeRuntimeAccess(e,t){return j({method:`POST`,path:`/api/cmmd/devices/runtimes/${encodeURIComponent(e)}/access-grants/${encodeURIComponent(String(t))}/revoke`},this.cfg)}async issueRelayControlRoute(e,t){return j({method:`POST`,path:`/api/cmmd/devices/runtimes/${encodeURIComponent(e)}/relay-routes`,body:t},this.cfg)}async issueRelayActionGrant(e,t){return j({method:`POST`,path:`/api/cmmd/devices/runtimes/${encodeURIComponent(e)}/relay-action-grants`,body:t},this.cfg)}async getRuntimeInventory(e){let t=eHe(e);return aHe(await j({method:`GET`,path:`/api/cmmd/runtime-inventory`,...Object.keys(t).length>0?{query:t}:{}},this.cfg))}async getRuntimeDiagnostics(e){return j({method:`GET`,path:`/api/cmmd/runtime-diagnostics/v2/runtimes/${encodeURIComponent(e)}`},this.cfg)}async getCloudProjectLifecyclePreflight(e){return(await j({method:`GET`,path:`/api/cmmd/forge-cloud-projects/${encodeURIComponent(String(e))}/lifecycle-preflight`},this.cfg)).preflight}async replaceRuntimeInventory(e,t){return j({method:`PUT`,path:`/api/cmmd/devices/runtimes/${encodeURIComponent(e)}/inventory`,body:t},this.cfg)}static PROVIDER_ACCOUNTS_PATH=`/api/cmmd/providers/accounts`;static PROVIDER_USAGE_PATH=`/api/cmmd/providers/usage`;static PROVIDER_USAGE_REFRESH_PATH=`/api/cmmd/providers/usage/refresh`;provisionAuthRuntime(){return OVe(this.cfg)}getAuthRuntimeState(){return kVe(this.cfg)}destroyAuthRuntime(){return AVe(this.cfg)}connectAuthRuntime(){return jVe(this.cfg)}getUserCodexCredential(){return PVe(this.cfg)}disconnectUserCodexCredential(){return FVe(this.cfg)}getUserClaudeCredential(){return IVe(this.cfg)}async getProviderAccounts(){return j({method:`GET`,path:e.PROVIDER_ACCOUNTS_PATH},this.cfg)}async removeLinkedProviderAccount(e){return RVe(this.cfg,e)}async setProviderAccountDefault(t){return j({method:`PUT`,path:`${e.PROVIDER_ACCOUNTS_PATH}/default`,body:{provider:t.provider,provider_account_id:t.providerAccountId}},this.cfg)}async getProviderUsage(){return j({method:`GET`,path:e.PROVIDER_USAGE_PATH},this.cfg)}async refreshProviderUsage(t,n){return j({method:`POST`,path:e.PROVIDER_USAGE_REFRESH_PATH,body:{provider:t,providerAccountId:n}},this.cfg)}disconnectUserClaudeCredential(){return LVe(this.cfg)}async getClaudeRuntimeReadiness(e){return j({method:`GET`,path:`/api/cmmd/providers/claude/runtime-readiness/${encodeURIComponent(e)}`},this.cfg)}async appendRuntimeThreadEvents(e,t,n){return j({method:`POST`,path:`/api/cmmd/devices/runtimes/${encodeURIComponent(e)}/threads/${encodeURIComponent(t)}/events`,body:n},this.cfg)}async getRuntimeThreadReplica(e,t){return nHe(e,t)?iHe():j({method:`GET`,path:`/api/cmmd/threads/${encodeURIComponent(e)}/${encodeURIComponent(t)}`},this.cfg)}renameCloudEnvironment(e,t){return ZVe(this.cfg,e,t)}renameDevice(e,t){return QVe(this.cfg,e,t)}revokeDevice(e){return $Ve(this.cfg,e)}static SIM_PATH=`/api/cmmd/sim-host`;static simScope(e){return e?.orgId===void 0?``:`?orgId=${encodeURIComponent(String(e.orgId))}`}async listSimHosts(t){return j({method:`GET`,path:`${e.SIM_PATH}/hosts${e.simScope(t)}`},this.cfg)}async getSimLease(t){let n=new URLSearchParams({forgeEnvironmentId:t.forgeEnvironmentId,threadId:t.threadId,...t.orgId===void 0?{}:{orgId:String(t.orgId)}});return j({method:`GET`,path:`${e.SIM_PATH}/leases?${n.toString()}`},this.cfg)}async claimSimLease(t){return j({method:`POST`,path:`${e.SIM_PATH}/leases${e.simScope(t)}`,body:{hostId:t.hostId,forgeEnvironmentId:t.forgeEnvironmentId,threadId:t.threadId,ttlMs:t.ttlMs}},this.cfg)}async renewSimLease(t){return j({method:`POST`,path:`${e.SIM_PATH}/leases/${encodeURIComponent(String(t.leaseId))}/renew${e.simScope(t)}`,body:{generation:t.generation,rowVersion:t.rowVersion,ttlMs:t.ttlMs}},this.cfg)}async releaseSimLease(t){await j({method:`POST`,path:`${e.SIM_PATH}/leases/${encodeURIComponent(String(t.leaseId))}/release${e.simScope(t)}`,body:{generation:t.generation,rowVersion:t.rowVersion}},this.cfg)}async listCampaigns(e){let t={};return e?.orgId&&(t.orgId=e.orgId),e?.allWorkspaces&&(t.allWorkspaces=`true`),nH(await j({method:`GET`,path:`/api/cmmd/campaigns`,query:t,...e?.signal?{signal:e.signal}:{}},this.cfg),`campaigns`).map(uHe)}async getCampaign(e){return j({method:`GET`,path:`/api/cmmd/campaigns/${e}`},this.cfg)}async createCampaign(e){return j({method:`POST`,path:`/api/cmmd/campaigns`,body:e},this.cfg)}async updateCampaign(e,t){return j({method:`PUT`,path:`/api/cmmd/campaigns/${e}`,body:t},this.cfg)}async deleteCampaign(e){await j({method:`DELETE`,path:`/api/cmmd/campaigns/${e}`},this.cfg)}async listProjects(e){let t={};return e?.campaignId&&(t.campaignId=e.campaignId),e?.orgId&&(t.orgId=e.orgId),e?.allWorkspaces&&(t.allWorkspaces=`true`),nH(await j({method:`GET`,path:`/api/cmmd/projects`,query:t,...e?.signal?{signal:e.signal}:{}},this.cfg),`projects`).map(dH)}async listTasks(e){let t={};return e?.projectId&&(t.projectId=e.projectId),e?.status&&(t.status=e.status),j({method:`GET`,path:`/api/cmmd/tasks`,query:t},this.cfg)}async getProject(e){return dH(await j({method:`GET`,path:`/api/cmmd/projects/${e}`},this.cfg))}async getProjectMembers(e){let t=await j({method:`GET`,path:`/api/cmmd/projects/${e}/members`},this.cfg);return Array.isArray(t)?t.map(aH):[]}async listWorkspaceMembers(){let e=await j({method:`GET`,path:`/api/cmmd/members`},this.cfg);return Array.isArray(e)?e.map(sHe):[]}async addProjectMember(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/members`,body:t},this.cfg)}async listProjectAgentMembers(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/agent-members`},this.cfg)}async createProjectAgentMember(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/agent-members`,body:t},this.cfg)}async renameProjectAgentMember(e,t,n){return j({method:`PATCH`,path:`/api/cmmd/projects/${e}/agent-members/${t}`,body:n},this.cfg)}async retireProjectAgentMember(e,t,n){return j({method:`POST`,path:`/api/cmmd/projects/${e}/agent-members/${t}/retire`,body:n},this.cfg)}async updateProjectAgentMemberAvatar(e,t,n){return j({method:`PUT`,path:`/api/cmmd/projects/${e}/agent-members/${t}/avatar`,body:n},this.cfg)}async listProjectAgentMemberInstances(e,t){return j({method:`GET`,path:`/api/cmmd/projects/${e}/agent-members/${t}/instances`},this.cfg)}async previewProjectAgentMemberConsolidation(e){return j({method:`POST`,path:`/api/cmmd/projects/${e}/agent-members/consolidation/preview`},this.cfg)}async applyProjectAgentMemberConsolidation(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/agent-members/consolidation/apply`,body:t},this.cfg)}async setProjectTaskAssignment(e,t,n){return j({method:`PUT`,path:`/api/cmmd/projects/${e}/tasks/${t}/assignment`,body:n},this.cfg)}async getProjectUpdates(e,t){let n=t?.page??1,r=t?.limit??10;return cHe(await j({method:`GET`,path:`/api/cmmd/projects/${e}/updates`,query:{page:n,limit:r},unwrapEnvelope:!1},this.cfg),n,r)}async createProjectUpdate(e,t){return oH(await j({method:`POST`,path:`/api/cmmd/projects/${e}/updates`,body:t},this.cfg))}async updateProjectUpdate(e,t,n){return oH(await j({method:`PATCH`,path:`/api/cmmd/projects/${e}/updates/${t}`,body:n},this.cfg))}async deleteProjectUpdate(e,t){await j({method:`DELETE`,path:`/api/cmmd/projects/${e}/updates/${t}`},this.cfg)}async listProjectMilestones(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/milestones`},this.cfg)}async createProjectMilestone(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/milestones`,body:t},this.cfg)}async updateProjectMilestone(e,t,n){return j({method:`PATCH`,path:`/api/cmmd/projects/${e}/milestones/${t}`,body:n},this.cfg)}async deleteProjectMilestone(e,t){await j({method:`DELETE`,path:`/api/cmmd/projects/${e}/milestones/${t}`},this.cfg)}async improveProjectContent(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/content/readability`,body:t},this.cfg)}async listProjectBoard(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/board`},this.cfg)}async createProjectTaskDraft(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/task-drafts`,body:t},this.cfg)}async getProjectTaskDraft(e,t){return j({method:`GET`,path:`/api/cmmd/projects/${e}/task-drafts/${t}`},this.cfg)}async updateProjectTaskDraft(e,t,n){return j({method:`PATCH`,path:`/api/cmmd/projects/${e}/task-drafts/${t}`,body:n},this.cfg)}async previewProjectTaskDraft(e,t,n){return j({method:`POST`,path:`/api/cmmd/projects/${e}/task-drafts/${t}/preview`,body:n},this.cfg)}async commitProjectTaskDraft(e,t,n){return j({method:`POST`,path:`/api/cmmd/projects/${e}/task-drafts/${t}/commit`,body:n},this.cfg)}async discardProjectTaskDraft(e,t,n){return j({method:`POST`,path:`/api/cmmd/projects/${e}/task-drafts/${t}/discard`,body:n},this.cfg)}async getProjectTaskWorkflow(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/task-workflow`},this.cfg)}async updateProjectTaskWorkflow(e,t){return j({method:`PUT`,path:`/api/cmmd/projects/${e}/task-workflow`,body:t},this.cfg)}async getProjectLeadPlan(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/project-lead/plan`},this.cfg)}async activateProjectLeadAutomaticStaffing(e){return j({method:`POST`,path:`/api/cmmd/projects/${e}/project-lead/authority/activate`,body:{}},this.cfg)}async getProjectLeadReadiness(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/project-lead/readiness`},this.cfg)}async getProjectLeadCapabilities(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/project-lead/capabilities`},this.cfg)}async getProjectLeadSummary(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/project-lead/summary`},this.cfg)}async getProjectLeadDetail(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/project-lead/detail`},this.cfg)}async getProjectLeadBriefing(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/project-lead/briefing`},this.cfg)}async decideProjectLeadApproval(e,t,n){return j({method:`POST`,path:`/api/cmmd/projects/${e}/project-lead/approvals/${t}/decision`,body:n},this.cfg)}async listProjectLeadEvents(e,t){return j({method:`GET`,path:`/api/cmmd/projects/${e}/project-lead/events`,...t?{query:{...t.afterEventId===void 0?{}:{afterEventId:String(t.afterEventId)},...t.latest===void 0?{}:{latest:String(t.latest)},...t.limit===void 0?{}:{limit:String(t.limit)}}}:{}},this.cfg)}async explainProjectLead(e){return j({method:`GET`,path:`/api/cmmd/projects/${e}/project-lead/explain`},this.cfg)}async pauseProjectLead(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/project-lead/pause`,body:t},this.cfg)}async resumeProjectLead(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/project-lead/resume`,body:t},this.cfg)}async reserveProjectLeadTask(e,t,n){return j({method:`POST`,path:`/api/cmmd/projects/${e}/project-lead/tasks/${t}/reservations`,body:n},this.cfg)}async releaseProjectLeadReservation(e,t,n){return j({method:`POST`,path:`/api/cmmd/projects/${e}/project-lead/reservations/${t}/release`,body:n},this.cfg)}async reconcileProjectLead(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/project-lead/reconcile`,body:t},this.cfg)}async resolveProjectLeadAttention(e,t,n){return j({method:`POST`,path:`/api/cmmd/projects/${e}/project-lead/attention/${t}/resolve`,body:n},this.cfg)}async listCenterBoard(e){let t={};return e?.status&&(t.status=e.status),e?.workspaceId&&(t.workspaceId=String(e.workspaceId)),e?.campaignId&&(t.campaignId=String(e.campaignId)),e?.ownerId&&(t.ownerId=String(e.ownerId)),e?.includeArchived!==void 0&&(t.includeArchived=e.includeArchived),e?.q&&(t.q=e.q),j({method:`GET`,path:`/api/cmmd/work-items/board`,query:t},this.cfg)}async listForgeAutomationPresets(){return rH(await j({method:`GET`,path:`/api/cmmd/automations/presets`},this.cfg),`presets`)}async listUserForgeAutomationRules(){return rH(await j({method:`GET`,path:`/api/cmmd/automations/user/rules`},this.cfg),`rules`)}async createUserForgeAutomationRule(e){return j({method:`POST`,path:`/api/cmmd/automations/user/rules`,body:e},this.cfg)}async updateUserForgeAutomationRule(e,t){return j({method:`PATCH`,path:`/api/cmmd/automations/user/rules/${e}`,body:t},this.cfg)}async listUserForgeAutomationRuns(e){return rH(await j({method:`GET`,path:`/api/cmmd/automations/user/rules/${e}/runs`},this.cfg),`runs`)}async startUserForgeAutomationRun(e,t){return j({method:`POST`,path:`/api/cmmd/automations/user/rules/${e}/runs`,body:t},this.cfg)}async listForgeAutomationRules(e,t){let n=iH(t);return rH(await j({method:`GET`,path:`/api/cmmd/automations/projects/${e}/rules`,...n?{query:n}:{}},this.cfg),`rules`)}async createForgeAutomationRule(e,t,n){let r=iH(n);return j({method:`POST`,path:`/api/cmmd/automations/projects/${e}/rules`,body:t,...r?{query:r}:{}},this.cfg)}async updateForgeAutomationRule(e,t,n,r){let i=iH(r);return j({method:`PATCH`,path:`/api/cmmd/automations/projects/${e}/rules/${t}`,body:n,...i?{query:i}:{}},this.cfg)}async listForgeAutomationRuns(e,t){let n=iH(t,t?.taskId);return rH(await j({method:`GET`,path:`/api/cmmd/automations/projects/${e}/runs`,...n?{query:n}:{}},this.cfg),`runs`)}async getForgeAutomationRun(e,t){let n=iH(t);return j({method:`GET`,path:`/api/cmmd/automations/runs/${e}`,...n?{query:n}:{}},this.cfg)}async startForgeAutomationRun(e,t,n,r){let i=iH(r);return j({method:`POST`,path:`/api/cmmd/automations/projects/${e}/tasks/${t}/runs`,body:n,...i?{query:i}:{}},this.cfg)}async retryForgeAutomationRun(e,t,n){let r=iH(n);return j({method:`POST`,path:`/api/cmmd/automations/runs/${e}/retry`,body:t,...r?{query:r}:{}},this.cfg)}async cancelForgeAutomationRun(e,t,n){let r=iH(n);return j({method:`POST`,path:`/api/cmmd/automations/runs/${e}/cancel`,body:t,...r?{query:r}:{}},this.cfg)}async approveForgeAutomationEscalation(e,t,n){let r=iH(n);return j({method:`POST`,path:`/api/cmmd/automations/runs/${e}/escalations/approve`,body:t,...r?{query:r}:{}},this.cfg)}async rejectForgeAutomationEscalation(e,t,n){let r=iH(n);return j({method:`POST`,path:`/api/cmmd/automations/runs/${e}/escalations/reject`,body:t,...r?{query:r}:{}},this.cfg)}async createProjectBoardTask(e,t){let n={title:t.title};return t.description!==void 0&&(n.description=t.description),t.priority!==void 0&&(n.priority=t.priority),t.status!==void 0&&(n.status=t.status),t.workflowStageId!==void 0&&(n.workflowStageId=t.workflowStageId),t.assignee!==void 0&&(n.assignee=t.assignee),t.dueDate!==void 0&&(n.dueDate=t.dueDate),t.workItemType!==void 0&&(n.workItemType=t.workItemType),t.parentTaskId!==void 0&&(n.parentTaskId=t.parentTaskId),t.milestoneId!==void 0&&(n.milestoneId=t.milestoneId),t.dependsOn!==void 0&&(n.dependsOn=t.dependsOn),j({method:`POST`,path:`/api/cmmd/projects/${e}/board`,body:n},this.cfg)}async createCenterBoardTask(e){let t={title:e.title,projectId:e.projectId};return e.description!==void 0&&(t.description=e.description),e.priority!==void 0&&(t.priority=e.priority),e.status!==void 0&&(t.status=e.status),e.assignee!==void 0&&(t.assignee=e.assignee),e.dueDate!==void 0&&(t.dueDate=e.dueDate),e.workItemType!==void 0&&(t.workItemType=e.workItemType),e.parentTaskId!==void 0&&(t.parentTaskId=e.parentTaskId),e.milestoneId!==void 0&&(t.milestoneId=e.milestoneId),e.dependsOn!==void 0&&(t.dependsOn=e.dependsOn),j({method:`POST`,path:`/api/cmmd/work-items/board`,body:t},this.cfg)}async submitFeedback(e){let t={type:e.type,title:e.title,source:e.source};return e.description!==void 0&&(t.description=e.description),e.priority!==void 0&&(t.priority=e.priority),e.senderName!==void 0&&(t.senderName=e.senderName),j({method:`POST`,path:`/api/cmmd/feedback`,body:t},this.cfg)}async updateProjectBoardTask(e,t,n){return j({method:`PATCH`,path:`/api/cmmd/projects/${e}/board/${t}`,body:n},this.cfg)}async updateCenterBoardTask(e,t){return j({method:`PATCH`,path:`/api/cmmd/work-items/board/${e}`,body:t},this.cfg)}async moveCenterBoardTask(e,t){let n={toStatus:t.toStatus};return t.beforeTaskId!==void 0&&(n.beforeTaskId=t.beforeTaskId),t.afterTaskId!==void 0&&(n.afterTaskId=t.afterTaskId),j({method:`PATCH`,path:`/api/cmmd/work-items/board/${e}/move`,body:n},this.cfg)}async moveProjectBoardTask(e,t,n){let r={toStatus:n.toStatus};return n.toStageId!==void 0&&(r.toStageId=n.toStageId),n.beforeTaskId!==void 0&&(r.beforeTaskId=n.beforeTaskId),n.afterTaskId!==void 0&&(r.afterTaskId=n.afterTaskId),j({method:`PATCH`,path:`/api/cmmd/projects/${e}/board/${t}/move`,body:r},this.cfg)}async archiveProjectBoardTask(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/board/${t}/archive`},this.cfg)}async unarchiveProjectBoardTask(e,t){return j({method:`POST`,path:`/api/cmmd/projects/${e}/board/${t}/unarchive`},this.cfg)}async updateProjectBoardTaskStatus(e,t,n,r){return j({method:`PATCH`,path:`/api/cmmd/projects/${e}/board/${t}/status`,body:{status:n,...r?{workflowStageId:r}:{}}},this.cfg)}async listTaskExecutionOptions(e,t){return j({method:`GET`,path:`/api/cmmd/projects/${e}/board/${t}/execution-options`},this.cfg)}async createTaskWorkSession(e,t,n){return j({method:`POST`,path:`/api/cmmd/projects/${e}/board/${t}/work-sessions`,body:n},this.cfg)}async listProjectWorkSessions(e,t={}){return j({method:`GET`,path:`/api/cmmd/projects/${e}/work-sessions`,query:t},this.cfg)}async getWorkSession(e){return j({method:`GET`,path:`/api/cmmd/work-sessions/${e}`},this.cfg)}async updateWorkSessionStatus(e,t){return j({method:`PATCH`,path:`/api/cmmd/work-sessions/${e}`,body:{status:t}},this.cfg)}async attachWorkSessionThread(e,t){return j({method:`POST`,path:`/api/cmmd/work-sessions/${e}/threads`,body:t},this.cfg)}async listTaskConversations(e,t={}){return j({method:`GET`,path:`/api/cmmd/tasks/${e}/conversations`,query:eH(t)},this.cfg)}async linkTaskConversation(e,t){return j({method:`POST`,path:`/api/cmmd/tasks/${e}/conversations`,body:t},this.cfg)}async getTaskHistory(e){return j({method:`GET`,path:`/api/cmmd/tasks/${e}/history`},this.cfg)}async upsertTaskPullRequest(e,t){return j({method:`PUT`,path:`/api/cmmd/tasks/${e}/pull-requests`,body:t},this.cfg)}postPullRequest(e,t){return j({method:`POST`,path:`/api/cmmd/pull-requests/${e}`,body:t},this.cfg)}async listPullRequests(e){return this.postPullRequest(`list`,e)}async getPullRequestListStats(e){return this.postPullRequest(`list-stats`,e)}async getPullRequestDetail(e){return this.postPullRequest(`detail`,e)}async getPullRequestActivity(e){return this.postPullRequest(`activity`,e)}async getPullRequestDiff(e){return this.postPullRequest(`diff`,e)}async getPullRequestDiffFileContents(e){return this.postPullRequest(`diff-file-contents`,e)}async getPullRequestThreadComments(e){return this.postPullRequest(`thread/comments`,e)}async getPullRequestReviewerCandidates(e){return this.postPullRequest(`reviewer-candidates`,e)}async runPullRequestAction(e){return this.postPullRequest(`action`,e)}async createPullRequestComment(e){return this.postPullRequest(`comment`,e)}async updatePullRequest(e){return this.postPullRequest(`update`,e)}async updatePullRequestComment(e){return this.postPullRequest(`comment/update`,e)}async submitPullRequestReview(e){return this.postPullRequest(`review`,e)}async replyToPullRequestThread(e){return this.postPullRequest(`thread/reply`,e)}async setPullRequestThreadResolution(e){return this.postPullRequest(`thread/resolution`,e)}async requestPullRequestReviewers(e){return this.postPullRequest(`reviewers`,e)}async setPullRequestReaction(e){return this.postPullRequest(`reaction`,e)}async getTaskConversation(e,t,n={}){return j({method:`GET`,path:`/api/cmmd/tasks/${e}/conversations/${encodeURIComponent(t)}`,query:eH(n)},this.cfg)}async createTask(e){return j({method:`POST`,path:`/api/cmmd/tasks`,body:e},this.cfg)}async createSubtask(e){throw new tH(`createSubtask`)}async createBoardTask(e){throw new tH(`createBoardTask`)}async createProject(e){let t={};for(let[n,r]of Object.entries(e))r!=null&&(t[n]=r);return e.campaignId!==void 0&&e.campaignId!==null&&(t.campaignId=pH(e.campaignId)),e.organizationId!==void 0&&e.organizationId!==null&&(t.organizationId=pH(e.organizationId)),fHe(await j({method:`POST`,path:`/api/cmmd/projects`,body:t},this.cfg))}async moveProject(e,t){let n={targetOrgId:pH(t.targetOrgId)};return t.campaignStrategy!==void 0&&(n.campaignStrategy=t.campaignStrategy),t.targetCampaignId!==void 0&&(n.targetCampaignId=pH(t.targetCampaignId)),t.dryRun!==void 0&&(n.dryRun=t.dryRun),j({method:`POST`,path:`/api/cmmd/projects/${e}/move`,body:n},this.cfg)}async uploadBrainDoc(e,t){throw new tH(`uploadBrainDoc`)}};function hH(e){return new mH(e)}var gH=new mH({onAuthExpired:Cn}),_H=class extends Gt(`BootstrapHttpError`){},vH=e=>pe(e,`BootstrapHttpError`);function yH(e){return typeof e!=`object`||!e?!1:!!(vH(e)&&e.status===401||e instanceof Error&&e.name===`RemoteEnvironmentAuthHttpError`&&`status`in e&&e.status===401||e instanceof wn&&e.kind===`auth`)}function pHe(e){let t=e.replace(/\s+/g,` `).trim();return t.length===0?`<empty response>`:t.slice(0,120)}async function bH(e,t){let n=await e.text();try{return JSON.parse(n)}catch{throw new _H({message:`${t} returned a non-JSON response (${pHe(n)}). Ensure the Forge server is running and this route is proxied correctly.`,status:e.status})}}function mHe(e){if(!e.authenticated||!e.role)throw Error(`Authenticated session is required.`);let t=hHe(e.cmmdIdentity??null);return t?{displayName:t,email:e.cmmdIdentity?.email??null,avatarUrl:e.cmmdIdentity?.avatarUrl??null,role:e.role,verified:!0,source:`cmmd-identity`}:{displayName:`CMMD identity unavailable`,email:null,avatarUrl:null,role:e.role,verified:!1,source:`fallback`}}function hHe(e){return e&&([e.firstName,e.lastName].map(e=>e?.trim()??``).filter(e=>e.length>0).join(` `)||e.username.trim()||e.email.trim())||null}var xH=null;function gHe(){if(xH)return xH;let e=new URL(`/api/auth/session`,window.location.origin).toString(),t=fetch(e,{credentials:`include`}).then(async t=>{if(!t.ok)throw new _H({message:`Failed to load current app auth session state (${t.status}).`,status:t.status});return bH(t,e)}).then(mHe).finally(()=>{xH===t&&(xH=null)});return xH=t,t}function SH(e={resolveUrl:hn}){let t=bn()?.bearerToken;return t?{...e,bearerToken:t}:e}var CH=null,wH=null,TH=null,EH=null,DH=new Set,OH=`cmmd-forge.loggedOutLocalBootstrapCredentials.v1`;function _He(e){let t=`${e.firstName??``} ${e.lastName??``}`.trim();MV({id:e.id,email:e.email,...t.length>0?{username:t}:{}}),VV({cmmdUserId:e.id,...e.email?{email:e.email}:{},...t.length>0?{displayName:t}:{}})}function kH(){if(typeof window>`u`||TH)return;let e=window.desktopBridge?.desktopAuth?.onStateChange;e&&(TH=e(e=>{CH=null,wH=null,EH=null,e.sessionLifecycle.status!==`ready`&&MV(null),(e.sessionLifecycle.status===`expired`||e.sessionLifecycle.status===`signed-out`&&e.sessionLifecycle.reason===`refresh-revoked`)&&pne().catch(e=>{NV(e,{route:`desktop-auth-session-expired`})})}))}function vHe(){return aa(new URL(window.location.href))}function AH(){let e=new URL(window.location.href),t=Aie(e);t.toString()!==e.toString()&&window.history.replaceState({},document.title,t.toString())}async function yHe(){return zH(async()=>{let e=hn(`/api/auth/session`),t=async()=>{let t=await fetch(e,yn({credentials:`include`}));if(!t.ok)throw new _H({message:`Failed to load server auth session state (${t.status}).`,status:t.status});return bH(t,e)},n=await t();return!n.authenticated&&n.auth.sessionMethods.length===1&&n.auth.sessionMethods[0]===`proxy-asserted`&&typeof window<`u`&&!window.desktopBridge&&e.startsWith(`https://`)&&await gne()?t():n})}var jH=new Set([`CMMD_AUTH_REQUIRED`,`CMMD_AUTH_EXPIRED`]);async function bHe(e){return zH(async()=>{let t={credential:e},n=hn(`/api/auth/bootstrap`),r=await fetch(n,yn({body:JSON.stringify(t),credentials:`include`,headers:{"content-type":`application/json`},method:`POST`}));if(!r.ok)throw new _H({message:await r.text()||`Failed to bootstrap auth session (${r.status}).`,status:r.status});return bH(r,n)})}function MH(e){return new URL(e,window.location.origin).toString()}function NH(e){let t=(e?.primaryMode===`cloud`?null:e)?.bootstrapToken?.trim();return t&&t.length>0?t:null}function PH(){return typeof window>`u`?null:NH(window.desktopBridge?.getLocalEnvironmentBootstrap?.()??null)}function xHe(){return typeof window>`u`?!1:bne()===`session-expired`}function FH(){if(typeof window>`u`)return new Set;try{let e=window.sessionStorage.getItem(OH),t=e?JSON.parse(e):[];return Array.isArray(t)?new Set(t.filter(e=>typeof e==`string`)):new Set}catch{return new Set}}function IH(e){if(!(typeof window>`u`))try{if(e.size===0){window.sessionStorage.removeItem(OH);return}window.sessionStorage.setItem(OH,JSON.stringify([...e]))}catch{}}function SHe(){let e=PH();if(!e)return;let t=new Set(FH());t.add(e),IH(t)}function CHe(e){return FH().has(e)}function LH(){let e=PH();if(!e){IH(new Set);return}let t=new Set(FH());t.delete(e),IH(t)}async function RH(){let e=MH(`/api/auth/session`),t=await fetch(e,{credentials:`include`});return t.ok?bH(t,e):null}async function wHe(e){if(typeof window>`u`)return;let t=NH(e);if(!t||xHe()||DH.has(t)||CHe(t))return;if((await RH().catch(()=>null))?.authenticated){DH.add(t);return}let n=MH(`/api/auth/bootstrap`),r=await fetch(n,{body:JSON.stringify({credential:t}),credentials:`include`,headers:{"content-type":`application/json`},method:`POST`});if(!r.ok){if(r.status===401)return;throw new _H({message:await r.text()||`Failed to bootstrap local web owner session (${r.status}).`,status:r.status})}await bH(r,n),DH.add(t)}async function THe(){let e=await yHe();if(e.authenticated)return e;let t=bn();if(t?.source!==`desktop-managed`||!t.bearerToken)return e;let n=await RH().catch(()=>null);return n?.authenticated?n:e}var EHe=new Set([404,502,503,504]),DHe=15e3,OHe=500;function kHe(e){bn()?.source===`paired-bearer`&&yH(e)&&mn(`http`)}async function zH(e){let t=Date.now();for(;;)try{return await e()}catch(e){if(kHe(e),!jHe(e))throw e;if(Date.now()-t>=DHe)throw NV(e,{route:`bootstrap-retry-exhausted`}),e;await AHe(OHe)}}function AHe(e){return new Promise(t=>{setTimeout(t,e)})}function jHe(e){return vH(e)?EHe.has(e.status):e instanceof TypeError||e instanceof DOMException&&e.name===`AbortError`}function MHe(e,t){return e.sessionLifecycle.status===`ready`?e.sessionLifecycle.principalId!==t.id||e.cmmd.identity?.id!==t.id?`desktop-principal-mismatch`:null:`desktop-session-required`}async function NHe(e){if(typeof window>`u`||!window.desktopBridge)return null;let t=window.desktopBridge.desktopAuth?.getState;if(!t)return`desktop-state-unavailable`;try{return MHe(await t(),e)}catch(e){return NV(e,{route:`desktop-auth-gate-state`}),`desktop-state-unavailable`}}async function PHe(e,t){return MV(null),mne(t),await vn().catch(e=>{NV(e,{route:`desktop-auth-gate-logout`})}),{status:`requires-auth`,auth:e.auth,errorMessage:Sne(t)??`Forge Desktop requires CMMD authentication.`}}async function FHe(){let e=await THe();if(e.authenticated){if(e.cmmdIdentity){let t=await NHe(e.cmmdIdentity);return t?(xn(),PHe(e,t)):(xn(),_He(e.cmmdIdentity),{status:`authenticated`})}return{status:`requires-auth`,auth:e.auth}}return{status:`requires-auth`,auth:e.auth}}async function IHe(e){let t=e.trim();if(!t)throw Error(`Enter a pairing token to continue.`);wH=null,LH(),await bHe(t),CH=null,AH()}function BH(){LH(),wH=null,CH=null}async function VH(e,t,n){let r=e.trim();if(!r)throw Error(`CMMD (Command) OAuth did not return an access token.`);let i=n?.refreshToken?.trim(),a=n?.mcpToken?.trim(),o=hn(`/api/auth/bootstrap/command`),s=await fetch(o,yn({body:JSON.stringify({accessToken:r,...i?{refreshToken:i}:{},...a?{mcpToken:a}:{},...t===void 0?{}:{user:t}}),credentials:`include`,headers:{"content-type":`application/json`},method:`POST`}));if(!s.ok)throw new _H({message:await s.text()||`Failed to bootstrap with CMMD OAuth token (${s.status}).`,status:s.status});await bH(s,o),BH()}async function LHe(){let e=hn(`/api/auth/ws-token`),t=await fetch(e,yn({credentials:`include`,method:`POST`}));if(!t.ok)throw new _H({message:await t.text()||`Failed to issue websocket token (${t.status}).`,status:t.status});return bH(t,e)}async function RHe(e){let t=await LHe(),n=new URL(e,window.location.origin);return n.searchParams.set(`wsToken`,t.token),n.toString()}async function zHe(e){let t=`/api/cmmd/work-intake`,n;try{n=await j({method:`GET`,path:t,allowRetry:!1,...e?{query:{fresh:1}}:{}},SH())}catch(e){throw e instanceof wn&&e.kind!==`auth`&&e.code!==null&&jH.has(e.code)?new wn({kind:`auth`,message:e.message,status:e.status??401,code:e.code}):e}if(!n)throw Error(`Invalid response from ${t}`);return n}async function BHe(e={}){return zHe(e.forceFresh===!0)}async function HH(e,t){try{return await j({method:`POST`,path:e,body:t,allowRetry:!1},SH())}catch(e){throw e instanceof wn&&e.kind!==`auth`&&e.code!==null&&jH.has(e.code)?new wn({kind:`auth`,message:e.message,status:e.status??401,code:e.code}):e}}async function VHe(e){try{return await HH(`/api/cmmd/tasks/update`,e)}catch(t){if(t instanceof wn&&(t.kind===`auth`||t.kind===`permission`))throw t;if(t instanceof wn||t instanceof Error)return HH(`/api/command/tasks/update`,e);throw t}}async function HHe(){typeof window>`u`||await window.desktopBridge?.desktopAuth?.logoutCloud?.()}async function UHe(){let e=await Promise.allSettled([vn(),HHe()]);MV(null),SHe(),CH=null,wH=null;let t=e.find(e=>e.status===`rejected`);if(t)throw t.reason}async function UH(){if(kH(),wH?.status===`authenticated`)return xn(),wH;if(CH)return CH;let e=WH().then(t=>CH===e?(t.status===`authenticated`&&(wH=t),t):UH()).finally(()=>{CH===e&&(CH=null)});return CH=e,e}async function WH(){return _n().then(e=>wHe(e)).then(()=>FHe())}function GH(){if(kH(),EH)return EH;CH=null,wH=null;let e=WH().then(t=>EH===e?(t.status===`authenticated`&&(wH=t,xn()),t):GH()).finally(()=>{EH===e&&(EH=null)});return EH=e,e}function WHe(e){let t=``;for(let n of e)t+=String.fromCharCode(n);return btoa(t).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=+$/u,``)}function GHe(e){let t=WHe(e).replace(/-/g,`+`).replace(/_/g,`/`);return`-----BEGIN PUBLIC KEY-----\n${((t+`=`.repeat((4-t.length%4)%4)).match(/.{1,64}/gu)??[]).join(`
|
|
1006
|
+
`)}\n-----END PUBLIC KEY-----\n`}function KH(e){return{publicKeyPem:GHe(e.publicKeySpkiDer),async sign(t){let n=await crypto.subtle.sign(`Ed25519`,e.privateKey,new TextEncoder().encode(t));return new Uint8Array(n)}}}var KHe=`cmmd-session-pop`,qH=`keys`,JH=`device-key`;function qHe(){return!1}var YH=class extends Error{constructor(e){super(`CMMD session key storage is unavailable (${e}). Session binding is enabled, so login cannot continue without a bound key: allow site data and IndexedDB for this origin, then retry.`),this.name=`CmmdSessionPopKeyStorageError`}};function JHe(e){return e===void 0?typeof indexedDB>`u`?null:indexedDB:e}function XH(e){return new Promise((t,n)=>{e.addEventListener(`success`,()=>t(e.result),{once:!0}),e.addEventListener(`error`,()=>n(e.error),{once:!0})})}function YHe(e){return new Promise((t,n)=>{e.addEventListener(`complete`,()=>t(),{once:!0}),e.addEventListener(`abort`,()=>n(e.error??new DOMException(`The transaction aborted.`,`AbortError`)),{once:!0}),e.addEventListener(`error`,()=>n(e.error??new DOMException(`The transaction failed.`,`UnknownError`)),{once:!0})})}function XHe(e){return new Promise((t,n)=>{let r=e.open(KHe,1);r.addEventListener(`upgradeneeded`,()=>{r.result.objectStoreNames.contains(qH)||r.result.createObjectStore(qH)}),r.addEventListener(`success`,()=>t(r.result),{once:!0}),r.addEventListener(`error`,()=>n(r.error),{once:!0})})}function ZH(e){if(!e||typeof e!=`object`)return!1;let t=e;return t.privateKey instanceof CryptoKey&&t.publicKeySpkiDer instanceof Uint8Array}async function ZHe(e){let t=await XH(e.transaction(qH,`readonly`).objectStore(qH).get(JH));return ZH(t)?{privateKey:t.privateKey,publicKeySpkiDer:t.publicKeySpkiDer}:null}async function QHe(e,t){let n=e.transaction(qH,`readwrite`),r=n.objectStore(qH),i=YHe(n);i.catch(()=>void 0);let a=await XH(r.get(JH));return ZH(a)?{privateKey:a.privateKey,publicKeySpkiDer:a.publicKeySpkiDer}:(await XH(r.add(t,JH)),await i,t)}var QH=null;async function $He(e={}){return qHe()?(QH??=eUe(e).finally(()=>{QH=null}),QH):null}async function eUe(e){let t=JHe(e.indexedDB),n=e.subtle??crypto.subtle;if(!t)throw new YH(`IndexedDB is not available in this context`);let r;try{r=await XHe(t)}catch{throw new YH(`the key database could not be opened`)}try{let e=await ZHe(r);if(e)return KH({privateKey:e.privateKey,publicKeySpkiDer:e.publicKeySpkiDer});let t=await n.generateKey({name:`Ed25519`},!1,[`sign`]),i={privateKey:t.privateKey,publicKeySpkiDer:new Uint8Array(await n.exportKey(`spki`,t.publicKey))};return KH(await QHe(r,i))}catch(e){throw e instanceof YH?e:new YH(`the session key could not be generated or persisted`)}}function $H(e={}){return $He(e).then(e=>e?.publicKeyPem??null)}async function tUe(e,t={}){let n=e.email.trim();if(!n||!e.password)throw Error(`Enter your CMMD email and password.`);let r=await(t.resolvePopPublicKey??$H)(),i=hn(`/api/auth/cmmd-password/token`),a=await fetch(i,yn({body:JSON.stringify({email:n,password:e.password,...r?{pop_public_key:r}:{}}),credentials:`include`,headers:{"content-type":`application/json`},method:`POST`}));if(!a.ok)throw new _H({message:await a.text()||`CMMD login failed (${a.status}).`,status:a.status});let o=await bH(a,i);if(o.authenticated===!0)return BH(),{serverEstablishedSession:!0};if(typeof o.access_token!=`string`||o.access_token.trim().length===0)throw Error(`CMMD login did not return an access token.`);return await VH(o.access_token,o.user,{refreshToken:typeof o.refresh_token==`string`?o.refresh_token:void 0,mcpToken:typeof o.mcp_token==`string`?o.mcp_token:void 0}),{serverEstablishedSession:!1}}async function eU(e,t){return await e.text()||t}async function nUe(e,t){let n=e?.trim(),r={...n?{label:n}:{},...t?{role:t}:{}},i=hn(`/api/auth/pairing-token`),a=await fetch(i,yn({body:JSON.stringify(r),credentials:`include`,headers:{"content-type":`application/json`},method:`POST`}));if(!a.ok)throw Error(await eU(a,`Failed to create pairing credential (${a.status}).`));return bH(a,i)}async function rUe(){let e=hn(`/api/auth/clients`),t=await fetch(e,yn({credentials:`include`}));if(!t.ok)throw Error(await eU(t,`Failed to load paired clients (${t.status}).`));return bH(t,e)}async function iUe(e){let t=hn(`/api/auth/pairing-links/revoke`),n=await fetch(t,yn({body:JSON.stringify({id:e}),credentials:`include`,headers:{"content-type":`application/json`},method:`POST`}));if(!n.ok)throw Error(await eU(n,`Failed to revoke the pairing link (${n.status}).`));return(await bH(n,t)).revoked}var aUe=`/.well-known/forge/environment`,tU=dt()(e=>({descriptor:null,setDescriptor:t=>e({descriptor:t}),reset:()=>e({descriptor:null})})),nU=null;function oUe(e){let t=rU();return t?zre(ni({id:t.environmentId,label:t.label,source:e.source,target:e.target}),t):null}async function sUe(){return zH(async()=>{await _n();let e=bn()?.bearerToken,t=hn(aUe),n=e?await fetch(t,{headers:{Authorization:`Bearer ${e}`}}):await fetch(t);if(!n.ok)throw new _H({message:`Failed to load server environment descriptor (${n.status}).`,status:n.status});let r=await bH(n,t);return iU(r),r})}function rU(){return tU.getState().descriptor}function cUe(){return tU(lUe)}function lUe(e){return e.descriptor?.environmentId??null}function uUe(){return tU(dUe)}function dUe(e){return e.descriptor}function fUe(){return tU(pUe)}function pUe(e){return e.descriptor?.deviceRuntimeId??null}function mUe(){return rU()?.deviceRuntimeId??null}function hUe(){return tU(gUe)}function gUe(e){return Gre(e.descriptor)}function _Ue(){return tU(vUe)}function vUe(e){return Kre(e.descriptor)}function iU(e){tU.getState().setDescriptor(e)}function yUe(e,t){return t?.primaryMode!==`cloud`||e.environmentId===t.environmentId}function aU(){let e=bn();return e?oUe({source:e.source,target:e.target}):null}function bUe(){return xUe()}async function xUe(){let e=await _n(),t=rU();if(t&&yUe(t,e))return Promise.resolve(t);if(t&&iU(null),nU)return nU;let n=sUe();return nU=n,n.finally(()=>{nU===n&&(nU=null)})}var oU=class e{#e;constructor(e){this.#e=e}static namedByCatalog(t){return new e(t.projectId)}get registrationProjectId(){return this.#e}asConfirmationIdentity(){return{registrationProjectId:this.#e}}};function sU(e){return{match:t=>t.present({target:e})}}function cU(){return{match:e=>e.provablyAbsent()}}function SUe(e){return{match:t=>t.unprovable(e)}}var CUe=class e{#e;#t;capacity;constructor(e,t,n){this.#e=e,this.#t=t,this.capacity=n}static fromValidatedBody(t,n,r){return new e(t,n,r)}listRowsForDisplay(){return this.#e}listEnvironmentsForDisplay(){return this.#t}locate(e){if(e.registrationProjectId!==void 0){let t=this.#e.find(t=>t.projectId===e.registrationProjectId);return t===void 0?cU():sU(oU.namedByCatalog(t))}if(e.runtimeId!==void 0||e.cmmdEnvironmentId!==void 0){let t=this.#e.find(t=>t.runtime!=null&&(e.runtimeId!==void 0&&t.runtime.runtimeId===e.runtimeId||e.cmmdEnvironmentId!==void 0&&t.runtime.environmentId===e.cmmdEnvironmentId));if(t)return sU(oU.namedByCatalog(t))}if(this.#e.length===0)return cU();let t=e.runtimeId??e.cmmdEnvironmentId;return SUe(t===void 0?`no identity this catalog can be matched on`:`the catalog holds ${String(this.#e.length)} row(s) that ${t} cannot be ruled out against`)}};function lU(e){let t=e,n=t&&typeof t==`object`&&`data`in t&&t.data?t.data:t,r=n?.projects;if(!Array.isArray(r))throw Error("Forge Cloud returned a project catalog this version cannot read (no `projects` list).");let i=n?.environments;if(!Array.isArray(i))throw Error("Forge Cloud returned an Environment catalog this version cannot read (invalid `environments` list).");if(!r.every(wUe))throw Error(`Forge Cloud returned a project catalog this version cannot read (invalid project entry).`);if(!i.every(TUe))throw Error(`Forge Cloud returned an Environment catalog this version cannot read (invalid Environment entry).`);return CUe.fromValidatedBody(r,i,n?.capacity??null)}function wUe(e){return!dU(e)||typeof e.organizationId!=`number`||typeof e.projectId!=`number`?!1:e.runtime===void 0||e.runtime===null||uU(e.runtime)}function TUe(e){return dU(e)&&typeof e.organizationId==`number`&&typeof e.userId==`number`&&uU(e.runtime)}function uU(e){return dU(e)&&typeof e.runtimeId==`string`&&typeof e.status==`string`}function dU(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function EUe(e,t){let n=new URL(e);return n.pathname=t,n.search=``,n.hash=``,n.toString()}function fU(e){return e.accessToken??e.resolveAccessToken?.()}function pU(e,t,n=t=>EUe(e.cmmdHttpBaseUrl,t)){return j({method:t.method,path:t.path,...t.body===void 0?{}:{body:t.body},...t.signal===void 0?{}:{signal:t.signal}},{resolveUrl:n,resolveBearerToken:()=>fU(e)})}function DUe(e,t){return pU(e,{method:`GET`,path:`/api/forge/context/cloud-projects/${encodeURIComponent(String(t.projectId))}/removal-preview`,...t.signal===void 0?{}:{signal:t.signal}},e.cloudProjectRemovalPreviewUrl?()=>e.cloudProjectRemovalPreviewUrl(t.projectId):void 0).then(e=>e.preview)}function OUe(e,t){return pU(e,{method:`POST`,path:`/api/forge/context/cloud-projects/${encodeURIComponent(String(t.projectId))}/removal`,body:{idempotencyKey:t.idempotencyKey,deletePlanningProject:t.deletePlanningProject,...t.deleteCheckoutFiles===void 0?{}:{deleteCheckoutFiles:t.deleteCheckoutFiles},...t.previewToken===void 0?{}:{previewToken:t.previewToken},...t.forceDirty===void 0?{}:{forceDirty:t.forceDirty}},...t.signal===void 0?{}:{signal:t.signal}},e.cloudProjectRemovalUrl?()=>e.cloudProjectRemovalUrl(t.projectId):void 0).then(e=>e.operation)}function mU(e,t=``){return`/api/forge/context/runtimes/${encodeURIComponent(e)}${t}`}async function kUe(e){if(e.ok)return;let{CmmdApiError:t}=await A(async()=>{let{CmmdApiError:e}=await import(`./transport-CgH8pQK3.js`).then(e=>e.r);return{CmmdApiError:e}},__vite__mapDeps([0,1]));if(e.status===401||e.status===403){let n=null;try{let t=await e.json();n=typeof t?.code==`string`?t.code:null}catch{}throw new t({kind:`auth`,message:`CMMD authentication required. Sign in again to continue.`,status:e.status,code:n})}throw new t({kind:e.status>=500?`server`:`client`,message:`forge-cloud-projects proxy error (${e.status})`,status:e.status})}var hU=class{config;constructor(e){this.config=e}async ensureRuntime(e){return(await pU(this.config,{method:`POST`,path:`/api/forge/context/runtimes/ensure`,body:{...e.projectId===void 0?{}:{projectId:e.projectId},...e.organizationId===void 0?{}:{organizationId:e.organizationId},...e.githubRepoFullName===void 0?{}:{githubRepoFullName:e.githubRepoFullName},...e.workspaceRoot===void 0?{}:{workspaceRoot:e.workspaceRoot}},...e.signal===void 0?{}:{signal:e.signal}},this.config.ensureUrl?()=>this.config.ensureUrl:void 0)).runtime}async connectRuntime(e){return pU(this.config,{method:`POST`,path:mU(e.runtimeId,`/connect`),...e.organizationId===void 0?{}:{body:{organizationId:e.organizationId}},...e.signal===void 0?{}:{signal:e.signal}})}async getRuntime(e){return(await pU(this.config,{method:`GET`,path:mU(e.runtimeId),...e.signal===void 0?{}:{signal:e.signal}})).runtime}async destroyRuntime(e){return(await pU(this.config,{method:`POST`,path:mU(e.runtimeId,`/destroy`),body:{purgeVolume:e.purgeVolume??!1,...e.force===!0?{force:!0}:{},...e.reason===void 0?{}:{reason:e.reason},...e.organizationId===void 0?{}:{organizationId:e.organizationId}},...e.signal===void 0?{}:{signal:e.signal}},this.config.destroyUrl?()=>this.config.destroyUrl(e.runtimeId):void 0)).runtime}async runRuntimeLifecycleAction(e){return(await pU(this.config,{method:`POST`,path:mU(e.runtimeId,`/${e.action}`),body:e.organizationId===void 0?{}:{organizationId:e.organizationId},...e.signal===void 0?{}:{signal:e.signal}},this.config.lifecycleUrl?()=>this.config.lifecycleUrl(e.runtimeId,e.action):void 0)).runtime}async updateRuntimeCommit(e){return(await pU(this.config,{method:`POST`,path:mU(e.runtimeId,`/update-commit`),body:e.organizationId===void 0?{}:{organizationId:e.organizationId},...e.signal===void 0?{}:{signal:e.signal}},this.config.updateCommitUrl?()=>this.config.updateCommitUrl(e.runtimeId):void 0)).operation}async getRuntimeCommitUpdateOperation(e){return(await pU(this.config,{method:`GET`,path:mU(e.runtimeId,`/update-commit/${encodeURIComponent(String(e.operationId))}`),...e.signal===void 0?{}:{signal:e.signal}},this.config.updateCommitOperationUrl?()=>this.config.updateCommitOperationUrl(e.runtimeId,e.operationId):void 0)).operation}async listCloudProjects(e){if(this.config.listUrl){let t=fU(this.config),n=await fetch(this.config.listUrl,{method:`GET`,headers:{Accept:`application/json`,...t?{Authorization:`Bearer ${t}`}:{}},credentials:t?`omit`:`include`,cache:`no-store`,...e?.signal===void 0?{}:{signal:e.signal}});return await kUe(n),lU(await n.json())}return lU(await pU(this.config,{method:`GET`,path:`/api/forge/context/cloud-projects`,...e?.signal===void 0?{}:{signal:e.signal}}))}async previewCloudProjectRemoval(e){return DUe(this.config,e)}async requestCloudProjectRemoval(e){return OUe(this.config,e)}async getCloudProjectRemoval(e){return(await pU(this.config,{method:`GET`,path:`/api/forge/context/cloud-projects/removals/${encodeURIComponent(e.operationId)}`,...e.signal===void 0?{}:{signal:e.signal}},this.config.cloudProjectRemovalReceiptUrl?()=>this.config.cloudProjectRemovalReceiptUrl(e.operationId):void 0)).operation}},gU=`/api/attachments/upload/`;function AUe(e){if(!e.relativeUrl.startsWith(gU))throw Error(`Attachment upload URL did not use the expected upload route.`);let t=e.relativeUrl.slice(24);if(!/^[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+$/.test(t))throw Error(`Attachment upload URL did not contain a valid signed token.`);if(e.relativeUrl.includes(`?`)||e.relativeUrl.includes(`#`))throw Error(`Attachment upload URL must not include a query or fragment.`);let n=new URL(e.httpBaseUrl),r=n.pathname.endsWith(`/`)?n.pathname.slice(0,-1):n.pathname,i=`${r}${gU}`,a=new URL(`${r}${e.relativeUrl}`,n);if(a.origin!==n.origin||!a.pathname.startsWith(i))throw Error(`Attachment upload URL resolved outside the selected environment.`);return a.toString()}var _U=!1,vU=null;function yU(e){return Object.values(e)}function bU(e){return e.map(e=>wt(e))}function xU(e){try{$i(bU(yU(e))).catch(e=>{console.error(`[SAVED_ENVIRONMENTS] persist failed`,e)})}catch(e){console.error(`[SAVED_ENVIRONMENTS] persist failed`,e)}}function jUe(e){let t=SU.getState().byId,n=Object.fromEntries(e.map(e=>[e.environmentId,e]));SU.setState({byId:{...n,...t}})}async function MUe(){if(_U)return;if(vU)return vU;let e=(async()=>{try{jUe(await Qi())}catch(e){console.error(`[SAVED_ENVIRONMENTS] hydrate failed`,e)}finally{_U=!0,SU.setState({hydrated:!0})}})().finally(()=>{vU===e&&(vU=null)});return vU=e,vU}var SU=dt()(e=>({byId:{},hydrated:_U,upsert:t=>e(e=>{let n={...e.byId,[t.environmentId]:t};return xU(n),{byId:n}}),remove:t=>e(e=>{let{[t]:n,...r}=e.byId;return xU(r),{byId:r}}),markConnected:(t,n)=>e(e=>{let r=e.byId[t];if(!r)return e;let i={...e.byId,[t]:{...r,lastConnectedAt:n}};return xU(i),{byId:i}}),reset:()=>{xU({}),e({byId:{}})}}));function CU(){return _U}function wU(){return CU()?Promise.resolve():MUe()}function TU(){return Object.values(SU.getState().byId).toSorted((e,t)=>e.label.localeCompare(t.label))}function NUe(){return TU().filter(e=>e.lastAuthenticatedPullRequestCapability===!0)}function EU(e){return SU.getState().byId[e]??null}function DU(e){let t=aU();return t?.environmentId===e?Rre(t):EU(e)?.httpBaseUrl??null}function OU(e){let t=DU(e.environmentId)??(typeof window<`u`?window.location.origin:null);if(!t)throw Error(`Unable to resolve HTTP base URL for environment ${e.environmentId}.`);let n=new URL(t);return n.pathname=`${n.pathname.endsWith(`/`)?n.pathname.slice(0,-1):n.pathname}${e.pathname.startsWith(`/`)?e.pathname:`/${e.pathname}`}`,e.searchParams&&(n.search=new URLSearchParams(e.searchParams).toString()),n.toString()}function kU(e){if(!DU(e))throw Error(`Unable to resolve HTTP base URL for environment ${e}.`)}function PUe(e){return kU(e.environmentId),AUe({httpBaseUrl:DU(e.environmentId),relativeUrl:e.relativeUrl})}async function AU(e){await $i(bU(yU({...SU.getState().byId,[e.environmentId]:e})))}async function FUe(e,t){let{[e]:n,...r}=SU.getState().byId,i={...r,[t.environmentId]:t};await $i(bU(yU(i))),SU.setState({byId:i})}async function jU(e){return ea(e)}async function IUe(e,t){return ta(e,t)}async function MU(e){await na(e)}function LUe(e){return new Promise(t=>globalThis.setTimeout(t,e))}function NU(){let e=Error(`The environment connection attempt was cancelled.`);return e.name=`AbortError`,e}function PU(e){if(e?.aborted)throw NU()}function FU(e,t){return t?t.aborted?Promise.reject(NU()):new Promise((n,r)=>{let i=()=>r(NU());t.addEventListener(`abort`,i,{once:!0}),e.then(n,r).finally(()=>{t.removeEventListener(`abort`,i)})}):e}function IU(e,t){return t?t.aborted?Promise.reject(NU()):new Promise((n,r)=>{let i=globalThis.setTimeout(()=>{t.removeEventListener(`abort`,a),n()},e),a=()=>{globalThis.clearTimeout(i),r(NU())};t.addEventListener(`abort`,a,{once:!0})}):LUe(e)}var RUe=Object.freeze({connectionState:`disconnected`,authState:`unknown`,lastError:null,lastErrorAt:null,role:null,descriptor:null,serverConfig:null,connectedAt:null,disconnectedAt:null,providerAuthority:null}),LU=()=>({...RUe}),RU=dt()(e=>({byId:{},ensure:t=>e(e=>e.byId[t]?e:{byId:{...e.byId,[t]:LU()}}),patch:(t,n)=>e(e=>({byId:{...e.byId,[t]:{...e.byId[t]??LU(),...n}}})),clear:t=>e(e=>{let{[t]:n,...r}=e.byId;return{byId:r}}),reset:()=>e({byId:{}})}));function zU(e){let t=EU(e.environmentId);if(t?.lastAuthenticatedPullRequestCapability!==void 0)return{...e,lastAuthenticatedPullRequestCapability:t.lastAuthenticatedPullRequestCapability};let n=RU.getState().byId?.[e.environmentId];return n?.authState===`authenticated`&&n.descriptor?{...e,lastAuthenticatedPullRequestCapability:n.descriptor.capabilities.pullRequests===!0}:e}function BU(e){return!!e.runtimeId?.trim()||Vi(e.environmentId).isCloud}function VU(e,t){return e.environmentId===t.environmentId&&e.httpBaseUrl===t.httpBaseUrl&&e.wsBaseUrl===t.wsBaseUrl&&e.runtimeId===t.runtimeId&&e.cmmdOrganizationId===t.cmmdOrganizationId}function zUe(e){return e.replacedRecord===null&&e.existing!==null&&VU(e.existing,e.record)}function BUe(e){let t=e.replacesEnvironmentId?Nt.make(e.replacesEnvironmentId):null,n=t&&t!==e.environmentId?EU(t):null;return{existing:EU(e.environmentId)??n,replacedRecord:n}}async function VUe(e){return{records:TU(),bearerToken:e?await jU(e.environmentId):null}}async function HU(e){let t=e.replacedRecord?.environmentId??e.record.environmentId;await $i(e.rollback.records),await MU(e.record.environmentId).catch(()=>void 0),e.rollback.bearerToken&&await IUe(t,e.rollback.bearerToken)}async function HUe(e){try{e.replacedRecord?await FUe(e.replacedRecord.environmentId,e.record):await AU(e.record),PU(e.signal),await MU(e.record.environmentId),e.replacedRecord&&await MU(e.replacedRecord.environmentId),PU(e.signal)}catch(t){try{await HU(e)}catch(e){let n=AggregateError([t,e],`Cloud Environment rollback failed.`);throw n.cause=t,n}throw t}}function UUe(e){return{lastError:e instanceof Error?e.message:String(e),lastErrorAt:new Date().toISOString()}}var UU=new Map;function WU(e,t){return e.acquire(t?{signal:t}:{})}function WUe(e,t){UU.set(e,t)}function GUe(e){return UU.has(e)}function GU(e,t){let n=UU.get(e);if(t&&n!==t){t.dispose();return}n?.dispose(),UU.delete(e)}async function KUe(e){let t=UU.get(e);if(t)return(await t.acquire()).bearerToken;let n=EU(e);return n&&BU(n)?null:jU(e)}function KU(){return{executionCount:0,isPending:!1,lastArgs:void 0,lastExecutionTime:0,nextExecutionTime:0,status:`idle`,maybeExecuteCount:0}}var qUe={enabled:!0,leading:!0,trailing:!0,wait:0},JUe=class{#e;constructor(e,t){this.fn=e,this.store=new ste(KU()),this.setOptions=e=>{this.options={...this.options,...e},this.#n()||this.cancel()},this.#t=e=>{this.store.setState(t=>{let n={...t,...e},{isPending:r}=n;return{...n,status:this.#n()?r?`pending`:`idle`:`disabled`}}),nte(`Throttler`,this)},this.#n=()=>!!ut(this.options.enabled,this),this.#r=()=>ut(this.options.wait,this),this.maybeExecute=(...e)=>{this.#t({maybeExecuteCount:this.store.state.maybeExecuteCount+1});let t=Date.now(),n=t-this.store.state.lastExecutionTime,r=this.#r();if(this.options.leading&&n>=r)this.#i(...e);else if(this.#t({lastArgs:e}),!this.#e&&this.options.trailing){let e=r-(this.store.state.lastExecutionTime?t-this.store.state.lastExecutionTime:0);this.#t({isPending:!0}),this.#e=setTimeout(()=>{let{lastArgs:e}=this.store.state;e!==void 0&&this.#i(...e)},e)}},this.#i=(...e)=>{if(!this.#n())return;this.fn(...e);let t=Date.now(),n=t+this.#r();this.#a(),this.#t({executionCount:this.store.state.executionCount+1,lastExecutionTime:t,nextExecutionTime:n,isPending:!1,lastArgs:void 0}),this.options.onExecute?.(e,this),setTimeout(()=>{this.store.state.isPending||this.#t({nextExecutionTime:void 0})},this.#r())},this.flush=()=>{this.store.state.isPending&&this.store.state.lastArgs&&this.#i(...this.store.state.lastArgs)},this.#a=()=>{this.#e&&=(clearTimeout(this.#e),void 0)},this.cancel=()=>{this.#a(),this.#t({lastArgs:void 0,isPending:!1})},this.reset=()=>{this.#t(KU())},this.key=t.key,this.options={...qUe,...t},this.#t(this.options.initialState??{}),this.key&&ate.on(`d-Throttler`,e=>{e.payload.key===this.key&&(this.#t(e.payload.store.state),this.setOptions(e.payload.options))})}#t;#n;#r;#i;#a},qU={all:[`projects`],searchContents:(e,t,n,r,i,a,o)=>[`projects`,`search-contents`,e??null,t,n,r,i,a,o],searchEntries:(e,t,n,r)=>[`projects`,`search-entries`,e??null,t,n,r]},JU={all:[`providers`],checkpointDiff:e=>[`providers`,`checkpointDiff`,e.environmentId??null,e.threadId,e.fromTurnCount,e.toTurnCount,e.cacheScope??null]};function YUe(e){let t=null,n=!1;function r(){return t}function i(){n=!0,t?.queryInvalidationThrottler.maybeExecute()}function a(){t?.stop(),t=null}function o(r){if(t?.queryClient===r)return t.refCount+=1,()=>{!t||t.queryClient!==r||(--t.refCount,t.refCount===0&&a())};a(),n=!1;let i=new JUe(()=>{n&&(n=!1,r.invalidateQueries({queryKey:JU.all}),r.invalidateQueries({queryKey:qU.all}))},{wait:100,leading:!1,trailing:!0});e.createPrimaryEnvironmentConnection(),_n().catch(()=>void 0);let o=SU.subscribe(()=>{CU()&&e.syncSavedEnvironmentConnections(TU())});return wU().then(()=>e.syncSavedEnvironmentConnections(TU())).catch(()=>void 0),t={queryClient:r,queryInvalidationThrottler:i,refCount:1,stop:()=>{o(),i.cancel()}},()=>{!t||t.queryClient!==r||(--t.refCount,t.refCount===0&&a())}}return{readActiveService:r,notifyProviderInvalidation:i,stopActiveService:a,start:o}}var XUe=class extends Error{status;constructor(e,t){super(e),this.name=`RemoteEnvironmentAuthHttpError`,this.status=t}};function ZUe(e,t){let n=new URL(e);return n.pathname=`${n.pathname.endsWith(`/`)?n.pathname.slice(0,-1):n.pathname}${t.startsWith(`/`)?t:`/${t}`}`,n.search=``,n.hash=``,n.toString()}async function QUe(e,t){let n=await e.text();if(!n)return t;try{let e=JSON.parse(n);if(typeof e.error==`string`&&e.error.length>0)return e.error}catch{}return n}async function YU(e){let t=ZUe(e.httpBaseUrl,e.pathname),n;try{n=await fetch(t,{method:e.method??`GET`,headers:{...e.body===void 0?{}:{"content-type":`application/json`},...e.bearerToken?{authorization:`Bearer ${e.bearerToken}`}:{}},...e.body===void 0?{}:{body:JSON.stringify(e.body)},...e.signal?{signal:e.signal}:{}})}catch(e){throw Error(`Failed to fetch remote auth endpoint ${t} (${e.message}).`,{cause:e})}if(!n.ok)throw new XUe(await QUe(n,`Remote auth request failed (${n.status}).`),n.status);return await n.json()}async function XU(e){return YU({httpBaseUrl:e.httpBaseUrl,pathname:`/api/auth/session`,bearerToken:e.bearerToken,...e.signal?{signal:e.signal}:{}})}async function $Ue(e){return YU({httpBaseUrl:e.httpBaseUrl,pathname:`/.well-known/forge/environment`,...e.bearerToken?{bearerToken:e.bearerToken}:{}})}async function eWe(e){return YU({httpBaseUrl:e.httpBaseUrl,pathname:`/api/auth/ws-token`,method:`POST`,bearerToken:e.bearerToken})}async function ZU(e){let t=new URL(e.wsBaseUrl,window.location.origin);if(e.runtimeTicket)return t.searchParams.set(`runtimeTicket`,e.runtimeTicket),t.searchParams.delete(`wsToken`),t.toString();let n=await eWe({httpBaseUrl:e.httpBaseUrl,bearerToken:e.bearerToken});return t.searchParams.set(`wsToken`,n.token),t.toString()}function tWe(e,t){if(t){wne(t,e);return}Tne(e)}function nWe(e){let t=null,n=[];for(let r of e.split(/\r?\n/)){if(r.startsWith(`event:`)){t=r.slice(6).trim();continue}r.startsWith(`data:`)&&n.push(r.slice(5).trimStart())}return{eventName:t,data:n.join(`
|
|
1007
1007
|
`)}}function rWe(e,t){let n=nWe(e);if(n.eventName!==`phase`||!n.data)return!1;try{let e=JSON.parse(n.data);return tWe(e,t),e.phase===`app-ready`||e.phase===`error`}catch{return!1}}async function iWe(e,t,n){if(!e.body)return;let r=e.body.getReader(),i=new TextDecoder,a=``;for(;!n.aborted;){let{done:e,value:n}=await r.read();if(e)break;a+=i.decode(n,{stream:!0});let o=a.indexOf(`
|
|
1008
1008
|
|
|
1009
1009
|
`);for(;o!==-1;){let e=a.slice(0,o);if(a=a.slice(o+2),rWe(e,t))return;o=a.indexOf(`
|
|
1010
1010
|
|
|
1011
|
-
`)}}}var aWe=(e=`/api/workspace/readiness`)=>{if(typeof fetch>`u`)return{close:()=>{}};let t=typeof e==`string`?{url:e}:e,n=!1,r=new AbortController;return fetch(t.url,{credentials:t.bearerToken?`omit`:`include`,signal:r.signal,...t.bearerToken?{headers:{Authorization:`Bearer ${t.bearerToken}`}}:{}}).then(e=>{if(e.ok)return iWe(e,t.environmentId,r.signal)}).catch(()=>{}),{close:()=>{n||(n=!0,r.abort())}}},oWe=6e4;function sWe(e){let t=new URL(e.target.httpBaseUrl);return t.pathname=`${t.pathname.endsWith(`/`)?t.pathname.slice(0,-1):t.pathname}/api/workspace/readiness`,t.search=``,t.hash=``,t.toString()}function cWe(e){let t=new Set,n=null,r=!1,i=!1;return{hasWaiters:()=>t.size>0,wait:()=>{if(r)return Promise.reject(n);if(i)return Promise.resolve();let a=null,o=null,s=new Promise((e,n)=>{o={resolve:e,reject:n},t.add(o)}),c=new Promise((t,n)=>{a=globalThis.setTimeout(()=>{n(Error(`Timed out while waiting for ${e.label} (${e.environmentId}) to stream its shell snapshot.`))},e.timeoutMs)});return Promise.race([s,c]).finally(()=>{a!==null&&globalThis.clearTimeout(a),o!==null&&t.delete(o)})},resolve:()=>{r=!1,n=null,i=!0;let e=[...t];t.clear();for(let t of e)t.resolve()},reject:e=>{r=!0,n=e,i=!1;let a=[...t];t.clear();for(let t of a)t.reject(e)},reset:()=>{r=!1,n=null,i=!1}}}function QU(e){let t=e.knownEnvironment.environmentId;if(!t)throw Error(`Known environment ${e.knownEnvironment.label} is missing its environmentId.`);let n=!1,r=!1,i=null,a=null,o=cWe({environmentId:t,label:e.knownEnvironment.label,timeoutMs:e.bootstrapTimeoutMs??oWe}),s=e.readiness?(e.readiness.openStream??aWe)({url:sWe(e.knownEnvironment),environmentId:t,...e.readiness.bearerToken?{bearerToken:e.readiness.bearerToken}:{}}):null,c=t=>{if(!r){r=!0;let n=Error(t);_(),e.client.dispose(),e.onIdentityMismatch?.(n)}return!1},l=(n,r)=>{if(e.tolerateReportedEnvironmentIdentity)return a===null?(a=n,!0):a===n||c(`Environment connection ${t} reported a changed runtime identity (${a} -> ${n}) via ${r}.`);let i=e.resolveEnvironmentId?.()??t;return i===n||c(`Environment connection ${i} changed identity to ${n} via ${r}.`)},u=()=>e.resolveEnvironmentId?.()??t,d=e.client.server.subscribeLifecycle(t=>{t.type===`welcome`&&l(t.payload.environment.environmentId,`server lifecycle welcome`)&&e.onWelcome?.(t.payload,u())}),f=e.client.server.subscribeConfig(t=>{if(t.type===`snapshot`){if(!l(t.config.environment.environmentId,`server config snapshot`))return;i=t.config,e.onConfigSnapshot?.(t.config);return}if(t.type!==`providerStatuses`||!i)return;let n={...i,providers:t.payload.providers};i=n,e.onConfigSnapshot?.(n)}),p=e.client.orchestration.subscribeShell(t=>{if(t.kind===`snapshot`){e.syncShellSnapshot(t.snapshot,u()),o.resolve();return}e.applyShellEvent(t,u())},{onResubscribe:()=>{n||o.reset()},onError:t=>{if(!n){if(o.hasWaiters()){o.reject(t);return}e.onShellSubscriptionError?.(t,u())}}}),m=e.client.terminal.onEvent(t=>{e.applyTerminalEvent(t,u())}),h=e.client.browser?.onEvent({},t=>{e.applyBrowserEvent(t,u())}),g=e.client.server.subscribeWorkspaceReadiness(e=>{n||A(async()=>{let{setWorkspaceReadinessPhaseForEnvironment:e}=await import(`./workspaceReadinessAtom-D6bgTvKb.js`).then(e=>e.r);return{setWorkspaceReadinessPhaseForEnvironment:e}},__vite__mapDeps([2,1,3,4])).then(({setWorkspaceReadinessPhaseForEnvironment:t})=>{n||t(u(),e)})}),_=()=>{n||(n=!0,e.onDispose?.(),s?.close(),p(),m(),h?.(),d(),f(),g())};return{kind:e.kind,environmentId:t,knownEnvironment:e.knownEnvironment,client:e.client,ensureBootstrapped:()=>o.wait(),reconnect:async()=>{o.reset();try{await e.client.reconnect(),await e.refreshMetadata?.(),await o.wait()}catch(e){throw o.reject(e),e}},...e.ensureProviderAuthority?{ensureProviderAuthority:e.ensureProviderAuthority}:{},dispose:async()=>{_(),await e.client.dispose()}}}var lWe=Le(`effect/http/FetchHttpClient/Fetch`,{defaultValue:()=>globalThis.fetch}),uWe=class extends Ke()(`effect/http/FetchHttpClient/RequestInit`){},dWe=Pre(ze(jre((e,t,n,r)=>{let i=r.getRef(lWe),a=r.context.mapUnsafe.get(uWe.key)??{},o=a.headers?Ct(Lt(a.headers),e.headers):e.headers,s=r=>Fe(_ee({try:()=>i(t,{...a,method:e.method,headers:o,body:r,duplex:e.body._tag===`Stream`?`half`:void 0,signal:n}),catch:t=>new en({reason:new Nte({request:e,cause:t})})}),t=>qte(e,t));switch(e.body._tag){case`Raw`:case`Uint8Array`:return s(e.body.body);case`FormData`:return s(e.body.formData);case`Stream`:return Je(Kee(e.body.stream),s)}return s(void 0)}))),fWe=Wee.pipe(h,tt(e=>{if(nn(e)&&e.reason._tag===`StatusCodeError`&&e.reason.response.status===429){let t=xe(e.reason.response.headers[`retry-after`]).pipe(qee(gre),f(()=>5));return ze(w(t))}return ze(w(1))})),pWe=Pe(function*(e){let t=yield*Fee(),n=Ve(t,hre),r=Ve(t,ve),a=Me(t),o=u(ye(e.exportInterval),aee),s,c=kre(Ve(t,qr)).pipe(Jr(ge(Zr,!1)),Mre({schedule:fWe,times:3})),d=zt({"user-agent":`effect-opentelemetry-${e.label}/0.0.0`});e.headers&&(d=Ct(Lt(e.headers),d));let f=bre(e.url,{headers:d}),p=[],m=Ze(()=>{if(s!==void 0&&n.currentTimeMillisUnsafe()<s)return He;s!==void 0&&(s=void 0);let t=p;if(e.maxBatchSize!==`disabled`){if(p.length===0)return He;p=[]}return c.execute(Gr(f,e.body(t))).pipe(tee,mee(!1))}).pipe(nee(e=>s===void 0?(s=n.currentTimeMillisUnsafe()+6e4,p=[],fee(`Disabling exporter for 60 seconds`,e)):He),l({package:`@effect/opentelemetry`,module:e.label}));return yield*Xee(r,m.pipe(Pee,xee,Oee(e.shutdownTimeout))),yield*i(o).pipe(Yee(m),gee,Hee(r)),{push(t){s===void 0&&(p.push(t),e.maxBatchSize!==`disabled`&&p.length>=e.maxBatchSize&&ie(a(m),r))}}}),mWe=e=>{let t=e.attributes?$U(Object.entries(e.attributes)):[];return t.push({key:`service.name`,value:{stringValue:e.serviceName}}),e.serviceVersion&&t.push({key:`service.version`,value:{stringValue:e.serviceVersion}}),{attributes:t,droppedAttributesCount:0}},hWe=Pe(function*(e){let t={...yield*fa(fn(qie(k,k)),`OTEL_RESOURCE_ATTRIBUTES`),...e?.attributes},n=e?.serviceName??t[`service.name`]??(yield*fa(k,`OTEL_SERVICE_NAME`));delete t[`service.name`];let r=e?.serviceVersion??t[`service.version`]??(yield*fa(fn(k),`OTEL_SERVICE_VERSION`));return delete t[`service.version`],mWe({serviceName:n,serviceVersion:r,attributes:t})},c),gWe=e=>{let t=e.attributes.find(e=>e.key===`service.name`);if(!t||!t.value.stringValue)throw Error(`Resource does not contain a service name`);return t.value.stringValue},$U=e=>{let t=[];for(let[n,r]of e)t.push({key:n,value:eW(r)});return t},eW=e=>{if(Array.isArray(e))return{arrayValue:{values:e.map(eW)}};switch(typeof e){case`string`:return{stringValue:e};case`bigint`:return{intValue:Number(e)};case`number`:return Number.isInteger(e)?{intValue:e}:{doubleValue:e};case`boolean`:return{boolValue:e};default:return{stringValue:jee(e)}}},tW=class extends Ke()(`effect/observability/OtlpSerialization`){},_We=oe(tW,{traces:e=>Bt(e),metrics:e=>Bt(e),logs:e=>Bt(e)}),vWe=Pe(function*(e){let t=yield*hWe(e.resource),n=yield*tW,r={name:gWe(t)},i=yield*pWe({label:`OtlpTracer`,url:e.url,headers:e.headers,exportInterval:e.exportInterval??w(5),maxBatchSize:e.maxBatchSize??1e3,body(e){let i={resourceSpans:[{resource:t,scopeSpans:[{scope:r,spans:e}]}]};return n.traces(i)},shutdownTimeout:e.shutdownTimeout??w(3)});function a(e){e.sampled&&i.push(xWe(e))}return le({span(e){return bWe({...e,status:{_tag:`Started`,startTime:e.startTime},attributes:new Map,export:a})},context:e.context?function(t,n){return n.currentSpan===void 0?t[`~effect/Effect/evaluate`](n):e.context(t,n.currentSpan)}:void 0})}),yWe={_tag:`Span`,end(e,t){this.status={_tag:`Ended`,startTime:this.status.startTime,endTime:e,exit:t},this.export(this)},attribute(e,t){this.attributes.set(e,t)},event(e,t,n){this.events.push([e,t,n])},addLinks(e){this.links.push(...e)}},bWe=e=>{let t=Object.assign(Object.create(yWe),e);return t.traceId=Tee(t.parent)?t.parent.value.traceId:nW(32),t.spanId=nW(16),t.events=[],t},nW=e=>{let t=``;for(let n=0;n<e;n++)t+=`0123456789abcdef`[Math.floor(Math.random()*16)];return t},xWe=e=>{let t=e.status,n=$U(e.attributes.entries()),r=e.events.map(([e,t,n])=>({name:e,timeUnixNano:String(t),attributes:n?$U(Object.entries(n)):[],droppedAttributesCount:0})),i;if(t.exit._tag===`Success`)i=CWe;else if(bee(t.exit.cause))i={code:rW.Ok,message:`Interrupted`},n.push({key:`span.label`,value:{stringValue:`⚠︎ Interrupted`}},{key:`status.interrupted`,value:{boolValue:!0}});else{let e=$e(t.exit.cause);if(i={code:rW.Error},e.length>0){i.message=e[0].message;for(let n of e)r.push({name:`exception`,timeUnixNano:String(t.endTime),droppedAttributesCount:0,attributes:[{key:`exception.type`,value:{stringValue:n.name}},{key:`exception.message`,value:{stringValue:n.message}},{key:`exception.stacktrace`,value:{stringValue:n.stack??`No stack trace available`}}]})}}return{traceId:e.traceId,spanId:e.spanId,parentSpanId:ue(e.parent,{onNone:()=>void 0,onSome:e=>e.spanId}),name:e.name,kind:SWe[e.kind],startTimeUnixNano:String(t.startTime),endTimeUnixNano:String(t.endTime),attributes:n,droppedAttributesCount:0,events:r,droppedEventsCount:0,status:i,links:e.links.map(e=>({traceId:e.span.traceId,spanId:e.span.spanId,attributes:$U(Object.entries(e.attributes)),droppedAttributesCount:0})),droppedLinksCount:0}},rW={Unset:0,Ok:1,Error:2},SWe={unspecified:0,internal:1,server:2,client:3,producer:4,consumer:5},CWe={code:rW.Ok},wWe=1e4,TWe={serviceName:`forge-web`,attributes:{"service.runtime":`forge-web`,"service.mode":Vn?`electron`:`browser`,"service.version":Ti}},EWe=he(dWe,_We,oe(Xr,()=>!0)),iW=null,aW=null,oW=null,sW=null,cW=0,lW=Promise.resolve(),DWe=oe(wee,le({span(e){return iW?.span(e)??new s(e)}}));function OWe(e={}){return e.exportIntervalMs===void 0&&sW!==null||(lW=lW.finally(()=>kWe(e))),lW}async function kWe(e){let t=hn(`/api/observability/v1/traces`),n=bn()?.bearerToken,r=Math.max(10,e.exportIntervalMs??wWe),i=`${t}|${r}|${n?`bearer`:`cookie`}`;if(sW===i&&iW!==null)return;sW=i;let a=++cW,o=aW,s=oW;iW=null,aW=null,oW=null,await uW(o,s);let c=mi(EWe),l=c.runSync(De());try{let e=await c.runPromise(b(l)(vWe({url:t,...n?{headers:{Authorization:`Bearer ${n}`}}:{},exportInterval:`${r} millis`,resource:TWe})));if(a!==cW){await uW(c,l);return}iW=e,aW=c,oW=l}catch(e){await uW(c,l),a===cW&&console.warn(`Failed to configure client tracing exporter`,{error:AWe(e),otlpTracesUrl:t})}}async function uW(e,t){e!==null&&t!==null&&await e.runPromise(Ae(t,Ye)).catch(()=>void 0).finally(()=>{e.dispose()})}function AWe(e){return e instanceof Error&&e.message.trim().length>0?e.message:String(e)}var dW=15e3,fW=new Map,pW=at([]).pipe(it,nt(`slow-rpc-ack-requests`));function mW(e){rt.set(pW,[...e])}function hW(){return rt.get(pW)}var gW=`global`;function jWe(e){return!(e.split(`.`).at(-1)??e).startsWith(`subscribe`)}function MWe(e,t,n=gW){if(!jWe(t))return;yW(e,n),IWe();let r=Date.now(),i={clientId:n,requestId:e,startedAt:new Date(r).toISOString(),startedAtMs:r,tag:t,thresholdMs:dW},a=vW(n,e),o=setTimeout(()=>{fW.delete(a),FWe(i)},dW);fW.set(a,{request:i,timeoutId:o})}function NWe(e,t=gW){yW(e,t);let n=hW();n.some(n=>n.clientId===t&&n.requestId===e)&&mW(n.filter(n=>n.clientId!==t||n.requestId!==e))}function _W(e){for(let[t,n]of fW)n.request.clientId===e&&(clearTimeout(n.timeoutId),fW.delete(t));mW(hW().filter(t=>t.clientId!==e))}function PWe(){for(let e of fW.values())clearTimeout(e.timeoutId);fW.clear(),mW([])}function vW(e,t){return`${e}:${t}`}function yW(e,t){let n=vW(t,e),r=fW.get(n);r&&(clearTimeout(r.timeoutId),fW.delete(n))}function FWe(e){let t=[...hW(),e];if(t.length<=256){mW(t);return}mW(t.slice(-256))}function IWe(){for(;fW.size>=256;){let e=fW.keys().next().value;if(e===void 0)return;let t=fW.get(e);if(!t)return;yW(t.request.requestId,t.request.clientId)}}function LWe(){return Sn(pW)}var RWe=ine(Fte),bW=1;function zWe(e){return e instanceof Error&&e.message.trim().length>0?e.message:String(e)}function xW(e){let t=new URL(e);if(t.protocol!==`ws:`&&t.protocol!==`wss:`)throw Error(`Unsupported websocket transport URL protocol: ${t.protocol}`);return t.pathname=`/ws`,t.toString()}function BWe(){return{onAttempt:Cne,onOpen:Zte,onError:e=>{Qte(e)},onClose:e=>{one(e)},trackGlobalConnection:!0}}function VWe(e){let t=BWe(),n=e?.trackGlobalConnection??!0;return{onAttempt:r=>{n&&t.onAttempt(r),e?.onAttempt?.(r)},onOpen:()=>{n&&t.onOpen(),e?.onOpen?.()},onError:r=>{n&&t.onError(r),e?.onError?.(r)},onClose:r=>{n&&t.onClose(r),e?.onClose?.(r)},trackGlobalConnection:n}}function HWe(e,t){let n=bW;bW+=1;let r=VWe(t),i=typeof e==`function`?Ge(()=>e()).pipe(Fe(e=>xW(e)),Bee(e=>Ue(()=>{r.onError(zWe(e))})),c):xW(e),a=oe(xne,(e,t)=>{r.onAttempt(e);let n=new globalThis.WebSocket(e,t);return n.addEventListener(`open`,()=>{r.onOpen()},{once:!0}),n.addEventListener(`error`,()=>{r.onError(`Unable to connect to the Forge server WebSocket.`)},{once:!0}),n.addEventListener(`close`,e=>{r.onClose({code:e.code,reason:e.reason})},{once:!0}),n}),o=_ne(i).pipe(y(a)),s=tt(p(fne),e=>ze(je(Xte(e)??0)));return We(dne,Fe(Jte({retryPolicy:s,retryTransientErrors:!0}),e=>({...e,run:(t,r)=>{let i=`${n}:${String(t)}`;return e.run(t,e=>(e._tag===`Chunk`||e._tag===`Exit`?NWe(e.requestId,i):(e._tag===`ClientProtocolError`||e._tag===`Defect`)&&_W(i),r(e))).pipe(lee(Ue(()=>{_W(i)})))},send:(t,r,i)=>{let a=`${n}:${String(t)}`;return r._tag===`Request`&&MWe(r.id,r.tag,a),e.send(t,r,i)}}))).pipe(y(he(o,hne)))}var UWe=/^all fibers interrupted without error$/i;function WWe(e){return CV(e)||UWe.test(e.trim())}var GWe=je(250),SW=()=>void 0,CW=class extends Error{name=`WsRequestTimeoutError`;timeoutMs;constructor(e){let t=Oe(ye(e));super(`WebSocket RPC request timed out after ${t}ms.`),this.timeoutMs=t}},KWe=new Set([`OrchestrationGetSnapshotError`]);function qWe(e){if(typeof e!=`object`||!e)return!1;let t=e._tag;return typeof t==`string`&&KWe.has(t)}function JWe(e){let t=e instanceof Error?e.message.trim():``;return t.length>0?t:typeof e==`object`&&e?YWe(e):String(e)}function YWe(e){try{return JSON.stringify(e)}catch{let t=e;return[typeof t._tag==`string`?t._tag:void 0,typeof t.message==`string`?t.message:void 0].filter(Boolean).join(`: `)||Object.prototype.toString.call(e)}}var XWe=4e3,ZWe=1e4,QWe=500,wW=class{url;lifecycleHandlers;disposed=!1;hasReportedTransportDisconnect=!1;reconnectChain=Promise.resolve();session;heartbeatTimer=null;heartbeatInFlight=!1;protocol;timing;constructor(e,t,n,r){this.url=e,this.lifecycleHandlers=t,this.protocol=n??null,this.timing={heartbeatIntervalMs:r?.heartbeatIntervalMs??XWe,heartbeatTimeoutMs:r?.heartbeatTimeoutMs??ZWe,sessionCloseGraceMs:r?.sessionCloseGraceMs??QWe},this.session=this.createSession(),this.startHeartbeat()}startHeartbeat(){this.heartbeatTimer===null&&(this.heartbeatTimer=setInterval(()=>{if(this.disposed||this.heartbeatInFlight)return;this.heartbeatInFlight=!0;let e=this.session;this.request(e=>e[O.serverHeartbeat]({}),{timeout:this.timing.heartbeatTimeoutMs}).catch(async()=>{this.disposed||e!==this.session||await this.reconnect()}).finally(()=>{this.heartbeatInFlight=!1})},this.timing.heartbeatIntervalMs))}async request(e,t){if(this.disposed)throw Error(`Transport disposed`);let n=this.session,i=await n.clientPromise,a=Ze(()=>e(i)),o=t?.timeout,s=o===void 0?a:a.pipe(Vee({duration:o,orElse:()=>r(new CW(o))}));return await n.runtime.runPromise(s,{signal:t?.signal})}async requestStream(e,t,n){if(this.disposed)throw Error(`Transport disposed`);let r=this.session,i=this.runStreamOnSession(r,e,t,()=>!0,()=>void 0),a=()=>i.cancel();n?.signal?.aborted&&a(),n?.signal?.addEventListener(`abort`,a,{once:!0});try{await i.completed}catch(e){if(n?.signal?.aborted){let e=Error(`RPC stream request was cancelled.`);throw e.name=`AbortError`,e}throw e}finally{n?.signal?.removeEventListener(`abort`,a)}}subscribe(e,t,n){if(this.disposed)return()=>void 0;let r={active:!0,hasReceivedValue:!1,cancelCurrentStream:SW},i=Oe(ye(n?.retryDelay??GWe));return this.runSubscriptionLoop(e,t,n,r,i),()=>{r.active=!1,r.cancelCurrentStream()}}async runSubscriptionLoop(e,t,n,r,i){for(;r.active&&!this.disposed;){let a=this.session;try{this.notifyResubscribe(r,n);let i=this.startSubscriptionStream(a,e,t,r);r.cancelCurrentStream=i.cancel,await i.completed,r.cancelCurrentStream=SW}catch(e){if(r.cancelCurrentStream=SW,!await this.handleSubscriptionFailure(e,a,r,n,i))return}}}notifyResubscribe(e,t){if(e.hasReceivedValue)try{t?.onResubscribe?.()}catch{}}startSubscriptionStream(e,t,n,r){return this.runStreamOnSession(e,t,n,()=>r.active,()=>{this.hasReportedTransportDisconnect=!1,r.hasReceivedValue=!0})}async handleSubscriptionFailure(e,t,n,r,i){if(!n.active||this.disposed)return!1;if(t!==this.session)return!0;let a=JWe(e);return WWe(a)?(this.hasReportedTransportDisconnect||console.warn(`WebSocket RPC subscription disconnected`,{error:a}),this.hasReportedTransportDisconnect=!0,await $We(i),!0):(this.reportNonTransportSubscriptionError(e,r),!1)}reportNonTransportSubscriptionError(e,t){qWe(e)||PV(e,{route:`ws-subscribe`,reason:`non-transport-error`}),t?.onError?.(e)}async reconnect(){if(this.disposed)throw Error(`Transport disposed`);let e=this.reconnectChain.then(async()=>{if(this.disposed)throw Error(`Transport disposed`);let e=this.session;this.session=this.createSession(),await this.closeSession(e)});this.reconnectChain=e.catch(e=>{PV(e,{route:`ws-reconnect`})}),await e}async dispose(){this.disposed||(this.disposed=!0,this.heartbeatTimer!==null&&this.heartbeatTimer!==void 0&&(clearInterval(this.heartbeatTimer),this.heartbeatTimer=null),await this.closeSession(this.session))}async closeSession(e){let t=e.runtime.runPromise(Ae(e.clientScope,Ye)),n=!1,r=null,i=new Promise(e=>{r=setTimeout(()=>{n=!0,e()},this.timing.sessionCloseGraceMs)});try{await Promise.race([t,i])}finally{r!==null&&clearTimeout(r),n&&(console.warn(`WebSocket session close exceeded its grace period; forcing disposal`,{graceMs:this.timing.sessionCloseGraceMs}),t.catch(()=>void 0)),await e.runtime.dispose()}}createSession(){let e=this.protocol??{layer:HWe(this.url,this.lifecycleHandlers),makeClient:RWe},t=mi(he(e.layer,DWe)),n=t.runSync(De());return{runtime:t,clientScope:n,clientPromise:t.runPromise(b(n)(e.makeClient))}}runStreamOnSession(e,t,n,r,i){let a,o,s=new Promise((e,t)=>{a=e,o=t});return{cancel:e.runtime.runCallback(Ge(()=>e.clientPromise).pipe(Je(e=>kee(t(e),e=>Ue(()=>{if(r()){i();try{n(e)}catch{}}})))),{onExit:e=>{if(Ree(e)){a();return}o(we(e.cause))}}),completed:s}}};function $We(e){return new Promise(t=>{setTimeout(t,e)})}var TW=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,eGe=/^[A-Za-z0-9_-]+$/;function tGe(e){let t=``;for(let n=0;n<e.byteLength;n+=3){let r=e[n]??0,i=e[n+1]??0,a=e[n+2]??0,o=r<<16|i<<8|a;t+=TW[o>>>18&63],t+=TW[o>>>12&63],n+1<e.byteLength&&(t+=TW[o>>>6&63]),n+2<e.byteLength&&(t+=TW[o&63])}return t.replaceAll(`+`,`-`).replaceAll(`/`,`_`)}function nGe(e){if(e.length===0||!eGe.test(e))throw Error(`Bulk transfer chunk is not valid base64url data.`);let t=e.replaceAll(`-`,`+`).replaceAll(`_`,`/`),n=Math.floor(t.length*6/8),r=new Uint8Array(n),i=0,a=0,o=0;for(let e of t){let t=TW.indexOf(e);if(t<0)throw Error(`Bulk transfer chunk is not valid base64url data.`);i=i<<6|t,a+=6,a>=8&&(a-=8,r[o]=i>>>a&255,o+=1)}return r}async function EW(e){let t=new Uint8Array(e.byteLength);t.set(e);let n=await crypto.subtle.digest(`SHA-256`,t.buffer);return Array.from(new Uint8Array(n),e=>e.toString(16).padStart(2,`0`)).join(``)}async function rGe(e,t){let n=t?.chunkBytes??262144;if(!Number.isSafeInteger(n)||n<1||n>262144)throw Error(`Bulk transfer chunk size must be between 1 and ${Ete}.`);let r=t?.transferId??crypto.randomUUID().replaceAll(`-`,`_`),i=[];for(let t=0;t<e.byteLength;t+=n){let a=e.slice(t,Math.min(t+n,e.byteLength));i.push({kind:`chunk`,transferId:r,offset:t,bytes:a.byteLength,data:tGe(a),sha256:await EW(a)})}return{totalBytes:e.byteLength,sha256:await EW(e),chunks:i}}async function iGe(e){let t=nGe(e.data);if(t.byteLength!==e.bytes)throw Error(`Bulk transfer chunk byte count mismatch at offset ${e.offset}: expected ${e.bytes}, received ${t.byteLength}.`);if(await EW(t)!==e.sha256)throw Error(`Bulk transfer chunk integrity mismatch at offset ${e.offset}.`);return t}async function aGe(e){let t=new Map,n=[],r=0;for(let i of e.chunks){let e=t.get(i.offset);if(e!==void 0){if(e.bytes!==i.bytes||e.sha256!==i.sha256||e.data!==i.data)throw Error(`Bulk transfer has a conflicting duplicate chunk at offset ${i.offset}.`);continue}if(i.offset!==r)throw Error(`Bulk transfer chunk offset mismatch: expected ${r}, received ${i.offset}.`);let a=await iGe(i);t.set(i.offset,i),n.push({chunk:i,bytes:a}),r+=a.byteLength}if(r!==e.totalBytes)throw Error(`Bulk transfer total byte count mismatch: expected ${e.totalBytes}, received ${r}.`);let i=new Uint8Array(e.totalBytes);for(let e of n)i.set(e.bytes,e.chunk.offset);if(await EW(i)!==e.sha256)throw Error(`Bulk transfer payload integrity mismatch.`);return i}var DW=`forge`,oGe=RegExp(`^(?:${DW}|t3code)\\/(?:[0-9a-f]{8}|[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12})$`);function sGe(){return`${DW}/${re($ee).replace(/-/g,``).slice(0,8).toLowerCase()}`}function cGe(e){return oGe.test(e.trim().toLowerCase())}function lGe(e){let t=e.trim().replace(/\/+$/g,``).replace(/\.git$/i,``).toLowerCase();if(/^(?:ssh|https?|git):\/\//i.test(t))try{let e=new URL(t),n=e.pathname.split(`/`).filter(e=>e.length>0).join(`/`);if(e.hostname&&n.includes(`/`))return`${e.hostname}/${n}`}catch{return t}let n=/^git@([^:/\s]+)[:/]([^/\s]+(?:\/[^/\s]+)+)$/i.exec(t);return n?.[1]&&n[2]?`${n[1]}/${n[2]}`:t}function uGe(e){let t=e?.trim()??``;if(t.length===0)return null;let n=/^(?:git@github\.com:|ssh:\/\/git@github\.com\/|https:\/\/github\.com\/|git:\/\/github\.com\/)([^/\s]+\/[^/\s]+?)(?:\.git)?\/?$/i.exec(t)?.[1]?.trim()??``;return n.length>0?n:null}function dGe(e){let t=e.trim();if(t.length===0)return null;if(t.startsWith(`git@`)){let e=t.slice(4),n=e.search(/[:/]/);return n<=0?null:e.slice(0,n).toLowerCase()}try{return new URL(t).hostname.toLowerCase()}catch{return null}}function OW(e){return`https://${e}`}function fGe(e){return e===`github.com`||e.includes(`github`)}function pGe(e){return e===`gitlab.com`||e.includes(`gitlab`)}function mGe(e){return e===`bitbucket.org`}function hGe(e){return e===`dev.azure.com`||e===`ssh.dev.azure.com`||e===`vs-ssh.visualstudio.com`||e.endsWith(`.visualstudio.com`)}function gGe(e){let t=dGe(e);if(!t)return null;let n=lGe(e),r=`${t}/`;if(!n.startsWith(r))return null;let i=n.slice(r.length);return i.includes(`/`)?fGe(t)?{kind:`github`,name:t===`github.com`?`GitHub`:`GitHub Self-Hosted`,host:t,repositoryPath:i,baseUrl:OW(t)}:pGe(t)?{kind:`gitlab`,name:t===`gitlab.com`?`GitLab`:`GitLab Self-Hosted`,host:t,repositoryPath:i,baseUrl:OW(t)}:mGe(t)?{kind:`bitbucket`,name:`Bitbucket Cloud`,host:t,repositoryPath:i,baseUrl:OW(t)}:hGe(t)?{kind:`azure-devops`,name:`Azure DevOps`,host:t,repositoryPath:i,baseUrl:OW(t)}:{kind:`unknown`,name:t,host:t,repositoryPath:i,baseUrl:OW(t)}:null}var _Ge={hasUpstream:!1,aheadCount:0,behindCount:0,pr:null,defaultBranch:null,diffVsBase:null};function kW(e,t){return{...e,...t??_Ge}}function vGe(e){return{hasUpstream:e.hasUpstream,aheadCount:e.aheadCount,behindCount:e.behindCount,pr:e.pr,defaultBranch:e.defaultBranch,diffVsBase:e.diffVsBase}}function yGe(e){return{isRepo:e.isRepo,...e.hostingProvider?{hostingProvider:e.hostingProvider}:{},hasOriginRemote:e.hasOriginRemote,isDefaultBranch:e.isDefaultBranch,branch:e.branch,hasWorkingTreeChanges:e.hasWorkingTreeChanges,workingTree:e.workingTree}}function bGe(e,t){switch(t._tag){case`snapshot`:return kW(t.local,t.remote);case`localUpdated`:return kW(t.local,e?vGe(e):null);case`remoteUpdated`:return kW(e===null?{isRepo:!0,hasOriginRemote:!1,isDefaultBranch:!1,branch:null,hasWorkingTreeChanges:!1,workingTree:{files:[],insertions:0,deletions:0}}:yGe(e),t.remote)}}var xGe=262144,SGe=250;function CGe(e){if(e instanceof Error)return e.message;try{return JSON.stringify(e)}catch{return String(e)}}function wGe(e){return new Promise(t=>setTimeout(t,e))}function TGe(e){let t=crypto.randomUUID(),n=ene({controllerId:t,maxPendingWriteBytes:xGe}),r=!1,i=e=>{if(!e.sessionEpoch)throw Error(`Connected Forge runtime does not support epoch-fenced terminal controls.`);n.register({threadId:e.threadId,terminalId:e.terminalId,sessionEpoch:e.sessionEpoch})},a=async e=>{for(;!r;)try{return await e()}catch(e){if(!CV(CGe(e)))throw e;await wGe(SGe)}throw Error(`Terminal control client was disposed before acknowledgement.`)};return{terminal:{open:async t=>{let n=await e.request(e=>e[O.terminalOpen]({...t,terminalId:t.terminalId??`default`}));return i(n),n},write:async t=>{let r=t.terminalId??`default`;await n.enqueue({threadId:t.threadId,terminalId:r,writeBytes:new TextEncoder().encode(t.data).byteLength,execute:n=>a(()=>e.request(e=>e[O.terminalWrite]({...t,terminalId:r,...n})))})},resize:async t=>{let r=t.terminalId??`default`;await n.enqueue({threadId:t.threadId,terminalId:r,execute:n=>a(()=>e.request(e=>e[O.terminalResize]({...t,terminalId:r,...n})))})},signal:async t=>{let r=t.terminalId??`default`;await n.enqueue({threadId:t.threadId,terminalId:r,execute:n=>a(()=>e.request(e=>e[O.terminalSignal]({...t,terminalId:r,...n})))})},clear:async t=>{let r=t.terminalId??`default`;await n.enqueue({threadId:t.threadId,terminalId:r,execute:n=>a(()=>e.request(e=>e[O.terminalClear]({...t,terminalId:r,...n})))})},restart:async t=>{let r=t.terminalId??`default`,o=null;if(await n.enqueue({threadId:t.threadId,terminalId:r,execute:async n=>{o=(await a(()=>e.request(e=>e[O.terminalRestart]({...t,terminalId:r,...n})))).snapshot}}),o===null)throw Error(`Terminal restart completed without a snapshot.`);return i(o),o},close:async t=>{let r=t.terminalId?[t.terminalId]:n.terminalIds(t.threadId);for(let i of r)await n.enqueue({threadId:t.threadId,terminalId:i,execute:n=>a(()=>e.request(e=>e[O.terminalClose]({...t,terminalId:i,...n})))}),n.remove(t.threadId,i)},onEvent:t=>e.subscribe(e=>e[O.subscribeTerminalEvents]({}),e=>{(e.type===`started`||e.type===`restarted`)&&i(e.snapshot),t(e)})},dispose:()=>{r=!0,n.dispose()}}}function EGe(e){return{createUploadUrl:t=>e.request(e=>e[O.attachmentsCreateUploadUrl](t)),delete:t=>e.request(e=>e[O.attachmentsDelete](t))}}async function DGe(e,t){await e.request(e=>e[O.workspaceCancelWriteFile]({transferId:t})).catch(()=>void 0)}var OGe=2e4,kGe=12e4,AGe=3e5;function jGe(e){return e instanceof CW||CV(e instanceof Error?e.message:String(e))}async function MGe(e,t){let n=t.type===`thread.turn.start`&&t.bootstrap!==void 0?AGe:OGe,r=()=>e.request(e=>e[on.dispatchCommand](t),{timeout:n});try{return await r()}catch(t){if(!jGe(t))throw t;return await e.reconnect(),await r()}}function AW(e){if(!e?.aborted)return;let t=Error(`Bulk transfer was cancelled.`);throw t.name=`AbortError`,t}async function jW(e,t,n){let r={started:null,completed:null,chunks:[],protocolError:null,receivedBytes:0};if(await e.requestStream(t,e=>NGe(r,e,n),n),r.protocolError!==null)throw r.protocolError;let i=r.started,a=r.completed;if(i===null||a===null)throw Error(`Bulk transfer stream completed without start and completion metadata.`);if(a.transferId!==i.transferId||a.totalBytes!==i.totalBytes||a.sha256!==i.sha256)throw Error(`Bulk transfer completion metadata mismatch.`);return await aGe({totalBytes:i.totalBytes,sha256:i.sha256,chunks:r.chunks})}function NGe(e,t,n){if(e.protocolError===null){if(t.kind===`started`){PGe(e,t,n);return}if(e.started===null||t.transferId!==e.started.transferId){e.protocolError=Error(`Bulk transfer event identity mismatch.`);return}if(t.kind===`chunk`){FGe(e,t,n);return}e.completed=t,n?.onProgress?.({completedBytes:t.totalBytes,totalBytes:t.totalBytes})}}function PGe(e,t,n){if(e.started!==null||t.totalBytes>16777216){e.protocolError=Error(`Bulk transfer started with invalid or oversized metadata.`);return}e.started=t,n?.onProgress?.({completedBytes:0,totalBytes:t.totalBytes})}function FGe(e,t,n){let r=e.started;if(r!==null){if(e.receivedBytes+=t.bytes,e.receivedBytes>r.totalBytes){e.protocolError=Error(`Bulk transfer exceeded its declared byte count.`);return}e.chunks.push(t),n?.onProgress?.({completedBytes:e.receivedBytes,totalBytes:r.totalBytes})}}async function IGe(e,t,n){let r=new TextEncoder().encode(t.contents);if(r.byteLength>16777216)throw Error(`Project file exceeds the ${dte}-byte write limit.`);let i=await rGe(r),a=i.chunks[0]?.transferId??crypto.randomUUID().replaceAll(`-`,`_`),o=!1;try{AW(n?.signal);let r=await LGe(e,t,a,i);return o=!0,n?.onProgress?.({completedBytes:r.nextOffset,totalBytes:i.totalBytes}),await RGe(e,a,i,r,n),{relativePath:t.relativePath}}catch(t){throw o&&await DGe(e,a),t}}function LGe(e,t,n,r){return e.request(e=>e[O.workspaceBeginWriteFile]({transferId:n,cwd:t.cwd,relativePath:t.relativePath,totalBytes:r.totalBytes,sha256:r.sha256}))}async function RGe(e,t,n,r,i){if(r.state!==`completed`){for(let t of n.chunks){if(t.offset<r.nextOffset)continue;AW(i?.signal);let{kind:a,...o}=t,s=await e.request(e=>e[O.workspaceWriteFileChunk](o));i?.onProgress?.({completedBytes:s.nextOffset,totalBytes:n.totalBytes})}AW(i?.signal),await e.request(e=>e[O.workspaceCommitWriteFile]({transferId:t}))}}function MW(e){let t=TGe(e);return{dispose:()=>(t.dispose(),e.dispose()),reconnect:async()=>{rne(),await e.reconnect()},terminal:t.terminal,browser:{openSession:t=>e.request(e=>e[O.browserOpenSession](t)),listSessions:t=>e.request(e=>e[O.browserListSessions](t)),closeSession:t=>e.request(e=>e[O.browserCloseSession](t)),getSession:t=>e.request(e=>e[O.browserGetSession](t)),command:t=>e.request(e=>e[O.browserCommand](t)),clearBrowsingData:t=>e.request(e=>e[O.browserClearBrowsingData](t)),attachDisplay:t=>e.request(e=>e[O.browserAttachDisplay](t)),addDisplayIceCandidate:t=>e.request(e=>e[O.browserAddDisplayIceCandidate](t)),onEvent:(t,n,r)=>e.subscribe(e=>e[O.subscribeBrowserEvents](t),n,r)},computer:{input:t=>e.request(e=>e[O.computerInput](t))},threadDevRuntime:{get:t=>e.request(e=>e[O.threadDevRuntimeGet](t)),allocatePort:t=>e.request(e=>e[O.threadDevRuntimeAllocatePort](t)),release:t=>e.request(e=>e[O.threadDevRuntimeRelease](t))},devTunnel:{register:t=>e.request(e=>e[O.devTunnelRegister](t)),unregister:t=>e.request(e=>e[O.devTunnelUnregister](t)),list:t=>e.request(e=>e[O.devTunnelList](t))},attachments:EGe(e),projects:{searchContents:(t,n)=>e.request(e=>e[O.projectsSearchContents](t),n),searchEntries:t=>e.request(e=>e[O.projectsSearchEntries](t)),readFile:(t,n)=>jW(e,e=>e[O.workspaceReadFile](t),n),writeFile:(t,n)=>IGe(e,t,n)},projectCheckoutDeletion:{preview:t=>e.request(e=>e[O.projectCheckoutDeletionPreview](t)),execute:t=>e.request(e=>e[O.projectCheckoutDeletionExecute](t))},workspace:{environmentPreflight:t=>e.request(e=>e[O.workspaceEnvironmentPreflight](t)),ensureScratch:t=>e.request(e=>e[O.workspaceEnsureScratch](t))},shell:{openInEditor:t=>e.request(e=>e[O.shellOpenInEditor](t))},git:{pull:t=>e.request(e=>e[O.gitPull](t)),refreshStatus:t=>e.request(e=>e[O.gitRefreshStatus](t)),onStatus:(t,n,r)=>{let i=null;return e.subscribe(e=>e[O.subscribeGitStatus](t),e=>{i=bGe(i,e),n(i)},r)},runStackedAction:async(t,n)=>{let r=null;if(await e.requestStream(e=>e[O.gitRunStackedAction](t),e=>{n?.onProgress?.(e),e.kind===`action_finished`&&(r=e.result)}),r)return r;throw Error(`Git action stream completed without a final result.`)},listBranches:t=>e.request(e=>e[O.gitListBranches](t)),createWorktree:t=>e.request(e=>e[O.gitCreateWorktree](t)),removeWorktree:t=>e.request(e=>e[O.gitRemoveWorktree](t)),createBranch:t=>e.request(e=>e[O.gitCreateBranch](t)),checkout:t=>e.request(e=>e[O.gitCheckout](t)),init:t=>e.request(e=>e[O.gitInit](t)),resolvePullRequest:t=>e.request(e=>e[O.gitResolvePullRequest](t)),preparePullRequestThread:t=>e.request(e=>e[O.gitPreparePullRequestThread](t))},pullRequests:{list:t=>e.request(e=>e[O.pullRequestsList](t)),listStats:t=>e.request(e=>e[O.pullRequestsListStats](t)),detail:t=>e.request(e=>e[O.pullRequestsDetail](t)),activity:t=>e.request(e=>e[O.pullRequestsActivity](t)),threadComments:t=>e.request(e=>e[O.pullRequestsThreadComments](t)),diffFileContents:t=>e.request(e=>e[O.pullRequestsDiffFileContents](t)),runAction:t=>e.request(e=>e[O.pullRequestsRunAction](t)),update:t=>e.request(e=>e[O.pullRequestsUpdate](t)),comment:t=>e.request(e=>e[O.pullRequestsComment](t)),updateComment:t=>e.request(e=>e[O.pullRequestsUpdateComment](t)),submitReview:t=>e.request(e=>e[O.pullRequestsSubmitReview](t)),replyToThread:t=>e.request(e=>e[O.pullRequestsReplyToThread](t)),setThreadResolution:t=>e.request(e=>e[O.pullRequestsSetThreadResolution](t)),setReaction:t=>e.request(e=>e[O.pullRequestsSetReaction](t)),invalidate:t=>e.request(e=>e[O.pullRequestsInvalidate](t)),reviewerCandidates:t=>e.request(e=>e[O.pullRequestsReviewerCandidates](t)),requestReviewers:t=>e.request(e=>e[O.pullRequestsRequestReviewers](t))},server:{getConfig:()=>e.request(e=>e[O.serverGetConfig]({})),refreshProviders:()=>e.request(e=>e[O.serverRefreshProviders]({})),startProviderAuth:t=>e.request(e=>e[O.serverStartProviderAuth](t)),repairProviderAuthRuntime:t=>e.request(e=>e[O.serverRepairProviderAuthRuntime](t)),disconnectProviderAuth:t=>e.request(e=>e[O.serverDisconnectProviderAuth](t)),getProviderAuthSession:t=>e.request(e=>e[O.serverGetProviderAuthSession](t)),cancelProviderAuth:t=>e.request(e=>e[O.serverCancelProviderAuth](t)),submitProviderAuthCode:t=>e.request(e=>e[O.serverSubmitProviderAuthCode](t)),syncPersonalCodexToCloud:t=>e.request(e=>e[O.serverSyncPersonalCodexToCloud](t)),syncPersonalClaudeToCloud:t=>e.request(e=>e[O.serverSyncPersonalClaudeToCloud](t)),upsertKeybinding:t=>e.request(e=>e[O.serverUpsertKeybinding](t)),removeKeybinding:t=>e.request(e=>e[O.serverRemoveKeybinding](t)),getSettings:()=>e.request(e=>e[O.serverGetSettings]({})),updateSettings:t=>e.request(e=>e[O.serverUpdateSettings]({patch:t})),updateEnvironmentDisplayName:t=>e.request(e=>e[O.serverUpdateEnvironmentDisplayName](t)),getTraceDiagnostics:t=>e.request(e=>e[O.serverGetTraceDiagnostics](t)),subscribeConfig:(t,n)=>e.subscribe(e=>e[O.subscribeServerConfig]({}),t,n),subscribeLifecycle:(t,n)=>e.subscribe(e=>e[O.subscribeServerLifecycle]({}),t,n),subscribeAuthAccess:(t,n)=>e.subscribe(e=>e[O.subscribeAuthAccess]({}),t,n),subscribeWorkspaceReadiness:(t,n)=>e.subscribe(e=>e[O.subscribeWorkspaceReadiness]({}),t,n)},usage:{getSummary:t=>e.request(e=>e[O.usageGetSummary](t),{timeout:kGe})},orchestration:{dispatchCommand:t=>MGe(e,t),getTurnDiff:(t,n)=>jW(e,e=>e[on.streamTurnDiff](t),n).then(e=>({...t,diff:new TextDecoder().decode(e)})),getFullThreadDiff:(t,n)=>jW(e,e=>e[on.streamFullThreadDiff](t),n).then(e=>({...t,fromTurnCount:0,diff:new TextDecoder().decode(e)})),subscribeShell:(t,n)=>e.subscribe(e=>e[on.subscribeShell]({}),t,n),subscribeThread:(t,n,r)=>e.subscribe(e=>e[on.subscribeThread](t),n,r)}}}function NW(){if(typeof window>`u`)return;let e=gn();if(!(e?.primaryMode!==`cloud`||!e.bearerToken))return{bearerToken:e.bearerToken,httpBaseUrl:e.httpBaseUrl,wsBaseUrl:e.wsBaseUrl}}function zGe(){if(typeof window>`u`)return;let e=gn(),t=e?.primaryMode===`cloud`?e.desktopLocal:e;if(!(!t?.httpBaseUrl||!t.wsBaseUrl||!t.bearerToken))return{bearerToken:t.bearerToken,httpBaseUrl:t.httpBaseUrl,wsBaseUrl:t.wsBaseUrl,label:t.label}}function BGe(e){let t=Lre(e);if(!t)throw Error(`Unable to resolve websocket URL for ${e?.label??`primary environment`}.`);return MW(new wW(async()=>{await _n().catch(()=>null);let e=NW();if(e)try{return await ZU(e)}catch(e){throw bH(e)&&mn(`ws-token`),e}return LHe(t)}))}function VGe(e){return MW(new wW(()=>ZU(e),{trackGlobalConnection:!1,onAttempt:()=>e.onConnecting(e.environmentId),onOpen:()=>e.onConnected(e.environmentId),onError:t=>e.onError(e.environmentId,t),onClose:t=>e.onDisconnected(e.environmentId,t.reason)}))}function HGe(e){return typeof e==`string`?e:typeof e==`object`&&e&&`detail`in e&&typeof e.detail==`string`?e.detail:e instanceof Error?e.message:String(e)}function UGe(e){return e.match(/blocked by policy for\s+([^.\s]+(?:\.[^.\s]+)*)\.?/i)?.[1]||(e.match(/navigation to\s+([^.\s]+(?:\.[^.\s]+)*)\s+is restricted/i)?.[1]??null)}function PW(e){let t=HGe(e).trim()||`Unknown browser error.`,n=UGe(t);return/blocked by policy|restricted to allowed domains/i.test(t)?{title:`Browser navigation blocked`,cause:`${n??`This URL`} is not allowed by the current browser policy.`,nextAction:`Use an allowed URL or update the browser allowed-domain setting.`,technicalDetail:t}:/does not match thread|session .*not found|no active browser tab|tab .*not found/i.test(t)?{title:`Browser session is stale`,cause:`Forge no longer has a matching live browser session for this thread.`,nextAction:`Restart the browser session from the Browser options menu.`,technicalDetail:t}:/screenshot|capture|Page\.capture/i.test(t)?{title:`Browser screenshot failed`,cause:`The browser could not capture the current page frame.`,nextAction:`Reload the page, then try the screenshot again.`,technicalDetail:t}:/timed out|timeout/i.test(t)?{title:`Browser action timed out`,cause:`Forge did not receive a response from the browser runtime in time.`,nextAction:`Retry the action. If it keeps failing, restart the browser session.`,technicalDetail:t}:/runtime is not available|browser.*unavailable|not supported|disabled/i.test(t)?{title:`Browser session unavailable`,cause:`This environment does not currently expose the in-app browser runtime.`,nextAction:`Use a workspace with browser support or restart Forge after browser support is enabled.`,technicalDetail:t}:/navigate|navigation|net::|ERR_/i.test(t)?{title:`Browser navigation failed`,cause:`The browser could not load the requested page.`,nextAction:`Check the URL and network access, then try again.`,technicalDetail:t}:{title:`Browser action failed`,cause:`Forge could not complete the browser action.`,nextAction:`Retry the action. If it keeps failing, restart the browser session from the Browser options menu.`,technicalDetail:t}}function WGe(e){let t=PW(e);return`${t.cause} ${t.nextAction}`}function GGe(e){let t=PW(e);return`${t.title}: ${t.cause} ${t.nextAction}`}var FW={session:null,selectedBrowserId:null,sessionsByBrowserId:{},lastActivityByTabId:{},lastSnapshotContentByTabId:{},lastScreenshotDataUrlByTabId:{},lastScreenshotMetaByTabId:{},lastConsoleLogsByTabId:{},lastConsoleLogsMetaByTabId:{},lastFrameByTabId:{},lastFrameSequenceByTabId:{},lastObservedFrameSequenceByTabId:{},lastFrameStreamIdByTabId:{},lastFrameStreamGenerationByTabId:{},frameGapCountByTabId:{},lastFrameMetaByTabId:{},displayIceCandidatesByClientId:{},lastError:null};function IW(e){return li(e)}function KGe(e){let t=e.status===`reconnecting`&&e.reason===`network_unreachable`;return e.transport===`remote-webrtc`&&(e.status===`connected`||e.status===`connecting`||e.status===`reconnecting`)&&(e.reason!==`network_unreachable`||t)&&e.reason!==`unsupported_host`}function qGe(e){return e.transport!==`remote-webrtc`||e.status===`failed`||e.status===`unsupported`?!1:e.reason!==`network_unreachable`&&e.reason!==`unsupported_host`}function LW(e){let{currentSession:t,nextSession:n}=e;return!t||t.browserId!==n.browserId||t.sessionId!==n.sessionId||!KGe(t.display)||!qGe(n.display)?n:{...n,display:{...t.display,viewport:n.display.viewport??n.viewport??t.display.viewport,devicePixelRatio:n.display.devicePixelRatio??t.display.devicePixelRatio,iceServers:n.display.iceServers??t.display.iceServers,reconnect:t.display.reconnect??n.display.reconnect}}}function JGe(e){let{storedSession:t,nextSession:n}=e;if(!t||t.browserId!==n.browserId||t.sessionId!==n.sessionId)return!1;let r=n.tabs.some(e=>e.navigationStatus===`pending`),i=t.tabs.some(e=>e.navigationStatus===`complete`||e.navigationStatus===`failed`);if(!r||!i)return!1;let a=Date.parse(t.updatedAt),o=Date.parse(n.updatedAt);return Number.isNaN(a)||Number.isNaN(o)?!1:o<a}function RW(e,t,n){return e[t]===n?e:{...e,[t]:n}}function YGe(e){switch(e.type){case`tab.updated`:return e.payload.tab.tabId;case`tab.closed`:case`snapshot.ready`:case`screenshot.ready`:case`frame.ready`:case`console.logs.ready`:case`display.iceCandidate`:case`display.metrics`:return e.payload.tabId;case`action.failed`:return e.payload.tabId??null;case`display.updated`:case`session.started`:case`session.updated`:case`session.closed`:return null}}function XGe(e,t){let n=YGe(t);return n?{...e,lastActivityByTabId:{...e.lastActivityByTabId,[n]:{actor:t.agentId?`agent`:`human`,agentId:t.agentId,browserId:t.browserId,eventType:t.type,...t.type===`action.failed`?{commandType:t.payload.commandType}:{},...t.type===`action.failed`?{message:t.payload.message}:{},createdAt:t.createdAt}}}:e}function ZGe(e){switch(e.type){case`session.started`:case`session.updated`:case`tab.updated`:case`snapshot.ready`:case`screenshot.ready`:case`frame.ready`:case`display.updated`:return!0;case`session.closed`:case`tab.closed`:case`console.logs.ready`:case`action.failed`:case`display.iceCandidate`:case`display.metrics`:return!1}}function zW(e){return e===null?`end-of-candidates`:JSON.stringify([e.candidate,e.sdpMid??null,e.sdpMLineIndex??null,e.usernameFragment??null])}function BW(e,t){let n=zW(t);return e.some(e=>zW(e)===n)?e:[...e,t]}function QGe(e){if(e.type!==`session.closed`)return null;switch(e.payload.reason){case`idle_timeout`:return`The browser was closed after being idle. Reopen the preview to restore this thread's browser.`;case`runtime_shutdown`:return`The browser runtime shut down. Reopen the preview to restore this thread's browser.`;case`thread_archived`:case`clear_browsing_data`:case`user_closed`:case void 0:return null}}function $Ge(e){let t=e.event.payload.display;return t.status===`failed`||t.status===`unsupported`?t.detail??`Browser display is unavailable.`:e.currentLastError&&/browser display/i.test(e.currentLastError)?null:e.currentLastError}function eKe(e,t){let n=e.sessionsByBrowserId[t.browserId]??(e.session?.browserId===t.browserId?e.session:null);if(!n)return!0;let r=n.sessionId===t.payload.sessionId,i=!t.sessionEpoch||!n.sessionEpoch||t.sessionEpoch===n.sessionEpoch;return r&&i}function tKe(e,t){let n=e.lastFrameSequenceByTabId[t]??0;return{acceptedSequence:n,observedSequence:e.lastObservedFrameSequenceByTabId[t]??n,...e.lastFrameStreamIdByTabId[t]?{streamId:e.lastFrameStreamIdByTabId[t]}:{},...e.lastFrameStreamGenerationByTabId[t]===void 0?{}:{streamGeneration:e.lastFrameStreamGenerationByTabId[t]},...e.lastFrameMetaByTabId[t]?.capturedAt?{acceptedCapturedAt:e.lastFrameMetaByTabId[t].capturedAt}:{},gapCount:e.frameGapCountByTabId[t]??0}}function nKe(e,t){let n=t.payload.tabId,r=$re(tKe(e,n),{sequence:t.payload.sequence,capturedAt:t.payload.capturedAt,...t.payload.streamId?{streamId:t.payload.streamId}:{},...t.payload.streamGeneration===void 0?{}:{streamGeneration:t.payload.streamGeneration},...t.payload.keyframe===void 0?{}:{keyframe:t.payload.keyframe}});return{decision:r,observedSequence:r.state.observedSequence,frameGapCount:r.state.gapCount}}function rKe(e,t,n){let r=t.payload.tabId;return{...e,lastObservedFrameSequenceByTabId:{...e.lastObservedFrameSequenceByTabId,[r]:n.observedSequence},frameGapCountByTabId:{...e.frameGapCountByTabId,[r]:n.frameGapCount}}}function iKe(e,t){let n=t.payload.tabId;return{...e,lastFrameByTabId:{...e.lastFrameByTabId,[n]:t.payload.imageDataUrl},lastFrameSequenceByTabId:{...e.lastFrameSequenceByTabId,[n]:t.payload.sequence},lastFrameStreamIdByTabId:t.payload.streamId?{...e.lastFrameStreamIdByTabId,[n]:t.payload.streamId}:e.lastFrameStreamIdByTabId,lastFrameStreamGenerationByTabId:t.payload.streamGeneration===void 0?e.lastFrameStreamGenerationByTabId:{...e.lastFrameStreamGenerationByTabId,[n]:t.payload.streamGeneration},lastFrameMetaByTabId:{...e.lastFrameMetaByTabId,[n]:{capturedAt:t.payload.capturedAt,url:t.payload.url,viewport:t.payload.viewport}},lastError:null}}function aKe(e){let{current:t,event:n,pendingAutoRevealKeys:r,state:i,threadKey:a}=e;if(!eKe(t,n))return i;let o=nKe(t,n);if(!o.decision.observe)return i;let s=rKe(t,n,o),c=o.decision.accept?iKe(s,n):s;return{browserStateByThreadKey:RW(i.browserStateByThreadKey,a,c),pendingAutoRevealKeys:r}}var VW=dt(e=>({browserStateByThreadKey:{},pendingAutoRevealKeys:new Set,setSessionSnapshot:(t,n)=>e(e=>{let r=IW(t),i=e.browserStateByThreadKey[r]??FW,a=n?LW({currentSession:i.sessionsByBrowserId[n.browserId]??i.session,nextSession:n}):null;return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...i,session:a,selectedBrowserId:a?.browserId??i.selectedBrowserId,sessionsByBrowserId:a?{...i.sessionsByBrowserId,[a.browserId]:a}:i.sessionsByBrowserId,lastError:a?null:i.lastError})}}),selectBrowserSession:(t,n)=>e(e=>{let r=IW(t),i=e.browserStateByThreadKey[r]??FW,a=i.sessionsByBrowserId[n]??i.session;return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...i,selectedBrowserId:n,session:a})}}),applyBrowserEvent:(t,n)=>e(e=>{let r=IW(t),i=ZGe(n)?new Set(e.pendingAutoRevealKeys).add(r):e.pendingAutoRevealKeys,a=XGe(e.browserStateByThreadKey[r]??FW,n);switch(n.type){case`session.started`:{if(JGe({storedSession:a.sessionsByBrowserId[n.payload.snapshot.browserId]??a.session,nextSession:n.payload.snapshot}))return e;let t=LW({currentSession:a.sessionsByBrowserId[n.payload.snapshot.browserId]??a.session,nextSession:n.payload.snapshot});return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,session:t,selectedBrowserId:a.selectedBrowserId??t.browserId,sessionsByBrowserId:{...a.sessionsByBrowserId,[t.browserId]:t},lastError:null}),pendingAutoRevealKeys:i}}case`session.updated`:{let t=LW({currentSession:a.sessionsByBrowserId[n.payload.snapshot.browserId]??a.session,nextSession:n.payload.snapshot});return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,session:a.selectedBrowserId&&a.selectedBrowserId!==n.payload.snapshot.browserId?a.session:t,selectedBrowserId:a.selectedBrowserId??n.payload.snapshot.browserId,sessionsByBrowserId:{...a.sessionsByBrowserId,[t.browserId]:t},lastError:null}),pendingAutoRevealKeys:i}}case`session.closed`:let t=a.selectedBrowserId===n.browserId||a.session?.browserId===n.browserId;return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,session:t?null:a.session,selectedBrowserId:t?null:a.selectedBrowserId,sessionsByBrowserId:Object.fromEntries(Object.entries(a.sessionsByBrowserId).filter(([e])=>e!==n.browserId)),lastError:QGe(n)})};case`display.updated`:{let t=a.session;if(!t||t.sessionId!==n.payload.sessionId)return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,a),pendingAutoRevealKeys:i};let o={...t,display:n.payload.display,updatedAt:n.createdAt};return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,session:o,sessionsByBrowserId:{...a.sessionsByBrowserId,[o.browserId]:o},lastError:$Ge({currentLastError:a.lastError,event:n})}),pendingAutoRevealKeys:i}}case`tab.updated`:{let t=a.session;if(!t||t.sessionId!==n.payload.sessionId)return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,a),pendingAutoRevealKeys:i};let o=t.tabs.map(e=>e.tabId===n.payload.tab.tabId?{...n.payload.tab,isActive:e.tabId===t.activeTabId}:{...e,isActive:e.tabId===t.activeTabId}).concat(t.tabs.some(e=>e.tabId===n.payload.tab.tabId)?[]:[{...n.payload.tab,isActive:n.payload.tab.tabId===t.activeTabId}]);return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,session:{...t,tabs:o},lastError:null}),pendingAutoRevealKeys:i}}case`tab.closed`:{let t=a.session;if(!t||t.sessionId!==n.payload.sessionId)return e;let i=t.tabs.filter(e=>e.tabId!==n.payload.tabId);return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,session:{...t,tabs:i,activeTabId:t.activeTabId===n.payload.tabId?i[0]?.tabId??null:t.activeTabId}})}}case`snapshot.ready`:return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,lastSnapshotContentByTabId:{...a.lastSnapshotContentByTabId,[n.payload.tabId]:n.payload.content},lastError:null}),pendingAutoRevealKeys:i};case`screenshot.ready`:return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,lastScreenshotDataUrlByTabId:{...a.lastScreenshotDataUrlByTabId,[n.payload.tabId]:n.payload.imageDataUrl},lastScreenshotMetaByTabId:{...a.lastScreenshotMetaByTabId,[n.payload.tabId]:{captureId:n.payload.captureId,capturedAt:n.payload.capturedAt,url:n.payload.url,viewport:n.payload.viewport}},lastError:null}),pendingAutoRevealKeys:i};case`frame.ready`:return aKe({state:e,current:a,event:n,threadKey:r,pendingAutoRevealKeys:i});case`console.logs.ready`:return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,lastConsoleLogsByTabId:{...a.lastConsoleLogsByTabId,[n.payload.tabId]:n.payload.logs},lastConsoleLogsMetaByTabId:{...a.lastConsoleLogsMetaByTabId,[n.payload.tabId]:{capturedAt:n.createdAt,tabId:n.payload.tabId,count:n.payload.logs.length}},lastError:null})};case`display.iceCandidate`:{let t=a.displayIceCandidatesByClientId[n.payload.clientId]??[];return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,displayIceCandidatesByClientId:{...a.displayIceCandidatesByClientId,[n.payload.clientId]:BW(t,n.payload.candidate)}}),pendingAutoRevealKeys:i}}case`display.metrics`:return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,a),pendingAutoRevealKeys:i};case`action.failed`:return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,lastError:GGe(n.payload.message)})};default:return e}}),clearBrowserState:t=>e(e=>{let n=IW(t);if(!(n in e.browserStateByThreadKey))return e;let{[n]:r,...i}=e.browserStateByThreadKey;return{browserStateByThreadKey:i}}),consumeAutoReveal:t=>e(e=>{if(!e.pendingAutoRevealKeys.has(t))return e;let n=new Set(e.pendingAutoRevealKeys);return n.delete(t),{pendingAutoRevealKeys:n}})}));function oKe(e,t){return t?e[IW(t)]??null:null}function sKe(e){if(e!==void 0)return Object.fromEntries(Object.entries(e).toSorted(([e],[t])=>e.localeCompare(t)))}function cKe(e){return{...e,...e.projectIds===void 0?{}:{projectIds:[...e.projectIds].toSorted((e,t)=>e.localeCompare(t))},...e.cursors===void 0?{}:{cursors:sKe(e.cursors)}}}var HW={all:e=>[`pullRequests`,e],list:(e,t)=>[`pullRequests`,e,`list`,cKe(t)],stats:(e,t)=>[`pullRequests`,e,`stats`,[...t].toSorted((e,t)=>`${e.projectId}:${e.repository}#${e.number}`.localeCompare(`${t.projectId}:${t.repository}#${t.number}`))],detail:(e,t)=>[`pullRequests`,e,`detail`,t],activity:(e,t)=>[`pullRequests`,e,`activity`,t],diff:(e,t)=>[`pullRequests`,e,`diff`,t],threadComments:(e,t)=>[`pullRequests`,e,`thread-comments`,t],diffFileContents:(e,t)=>[`pullRequests`,e,`diff-file-contents`,t],reviewerCandidates:(e,t)=>[`pullRequests`,e,`reviewer-candidates`,t]},UW=Nt.make(`command-authority`);function lKe(e){return e[0]===`pullRequests`&&e[1]===UW&&e[2]===`detail`}function uKe(e){return e[0]===`pullRequests`&&e[1]===UW&&e[2]===`list`}function dKe(e,t){return e.reasoningEffortLevels.some(e=>e.value===t)}function WW(e){return e.reasoningEffortLevels.find(e=>e.isDefault)?.value??null}function GW(e,t){let n=WW(e),r=typeof t==`string`?t.trim():null;return r&&!e.promptInjectedEffortLevels.includes(r)&&dKe(e,r)?r:n??void 0}function KW(e,t){return e.contextWindowOptions.some(e=>e.value===t)}function qW(e){return e.contextWindowOptions.find(e=>e.isDefault)?.value??null}function fKe(e,t){let n=qW(e);return t&&KW(e,t)?t:n??void 0}function pKe(e,t){let n=GW(e,t?.reasoningEffort),r=e.supportsFastMode?t?.fastMode:void 0,i={...n?{reasoningEffort:n}:{},...r===void 0?{}:{fastMode:r}};return Object.keys(i).length>0?i:void 0}function mKe(e,t){let n=GW(e,t?.effort),r=e.supportsThinkingToggle?t?.thinking:void 0,i=e.supportsFastMode?t?.fastMode:void 0,a=fKe(e,t?.contextWindow),o={...r===void 0?{}:{thinking:r},...n?{effort:n}:{},...i===void 0?{}:{fastMode:i},...a===void 0?{}:{contextWindow:a}};return Object.keys(o).length>0?o:void 0}function JW(e){return typeof e==`string`&&/\bultrathink\b/i.test(e)}function YW(e,t=`codex`){if(typeof e!=`string`)return null;let n=e.trim();if(!n)return null;let r=Pte[t],i=Object.prototype.hasOwnProperty.call(r,n)?r[n]:void 0;return typeof i==`string`?i:n}function XW(e,t,n){if(typeof t!=`string`)return null;let r=t.trim();if(!r)return null;let i=n.find(e=>e.slug===r);if(i)return i.slug;let a=n.find(e=>e.name.toLowerCase()===r.toLowerCase());if(a)return a.slug;let o=YW(r,e),s=n.find(e=>e.slug===o);return s?s.slug:null}var hKe=[`codex`,`claudeAgent`];function ZW(e,t){return hKe.filter(e=>e!==t).some(t=>Wte(t,e)!==void 0)}function gKe(e,t){let n=YW(e,t);return!n||ZW(n,t)?dn[t]:n}function QW(e,t){return gKe(t,e)}function _Ke(e){return typeof e==`string`&&e.trim()||null}function vKe(e,t){let n=e.trim();return!n||t!==`ultrathink`||n.startsWith(`Ultrathink:`)?n:`Ultrathink:\n${n}`}function $W(e,t){return{id:e.id,environmentId:t,name:e.title,cwd:e.workspaceRoot,repositoryIdentity:e.repositoryIdentity??null,availability:e.availability,defaultThreadEnvMode:e.defaultThreadEnvMode??null,cmmdRegistration:e.cmmdRegistration??null,defaultModelSelection:e.defaultModelSelection?eG(e.defaultModelSelection):null,createdAt:e.createdAt,updatedAt:e.updatedAt,scripts:tG(e.scripts)}}function eG(e){return{...e,model:QW(e.provider,e.model)}}function tG(e){return e.map(e=>({...e}))}function yKe(e,t){return{...e,...t.title===void 0?{}:{name:t.title},...t.workspaceRoot===void 0?{}:{cwd:t.workspaceRoot},...t.repositoryIdentity===void 0?{}:{repositoryIdentity:t.repositoryIdentity??null},...t.defaultThreadEnvMode===void 0?{}:{defaultThreadEnvMode:t.defaultThreadEnvMode},...t.cmmdRegistration===void 0?{}:{cmmdRegistration:t.cmmdRegistration},...t.defaultModelSelection===void 0?{}:{defaultModelSelection:t.defaultModelSelection?eG(t.defaultModelSelection):null},...t.scripts===void 0?{}:{scripts:tG(t.scripts)},updatedAt:t.updatedAt}}function nG(e){let t=wV(e.lastError);return{provider:xKe(e.providerName),status:bKe(e.status),orchestrationStatus:e.status,activeTurnId:e.activeTurnId??void 0,createdAt:e.updatedAt,updatedAt:e.updatedAt,...t?{lastError:t}:{}}}function rG(e,t){let n=t.attachments?.map(t=>{let n=OU({environmentId:e,pathname:SKe(t.id)});return t.type===`image`?{...t,previewUrl:n}:{...t,downloadUrl:n}});return{id:t.id,role:t.role,text:t.text,turnId:t.turnId,createdAt:t.createdAt,streaming:t.streaming,...t.streaming?{}:{completedAt:t.updatedAt},...n&&n.length>0?{attachments:n}:{}}}function iG(e){return{id:e.id,turnId:e.turnId,planMarkdown:e.planMarkdown,implementedAt:e.implementedAt,implementationThreadId:e.implementationThreadId,createdAt:e.createdAt,updatedAt:e.updatedAt}}function aG(e){return{turnId:e.turnId,completedAt:e.completedAt,status:e.status,assistantMessageId:e.assistantMessageId??void 0,checkpointTurnCount:e.checkpointTurnCount,checkpointRef:e.checkpointRef,files:e.files.map(e=>({...e}))}}function bKe(e){switch(e){case`starting`:return`connecting`;case`running`:return`running`;case`error`:return`error`;case`ready`:case`interrupted`:return`ready`;case`idle`:case`stopped`:return`closed`}}function xKe(e){return e===`codex`||e===`claudeAgent`||e===`ollama`||e===`cmmd`||e===`apex`?e:`codex`}function SKe(e){return`/attachments/${encodeURIComponent(e)}`}var CKe=[],wKe=[],TKe=[],EKe=[],DKe={},OKe={},kKe={},AKe={},jKe=[],oG=new WeakMap,sG=new WeakMap;function cG(e,t,n){if(!e||e.length===0||!t)return n;let r=oG.get(e),i=r?.get(t);if(i)return i;let a=e.flatMap(e=>{let n=t[e];return n?[n]:[]}),o=r??new WeakMap;return o.set(t,a),r||oG.set(e,o),a}function MKe(e,t){return cG(e.messageIdsByThreadId[t],e.messageByThreadId[t]??DKe,CKe)}function NKe(e,t){return cG(e.activityIdsByThreadId[t],e.activityByThreadId[t]??OKe,wKe)}function PKe(e,t){return cG(e.proposedPlanIdsByThreadId[t],e.proposedPlanByThreadId[t]??kKe,TKe)}function FKe(e,t){return cG(e.turnDiffIdsByThreadId[t],e.turnDiffSummaryByThreadId[t]??AKe,EKe)}function lG(e,t){let n=e.threadShellById[t];if(!n)return;let r=e.threadSessionById[t]??null,i=e.threadTurnStateById[t],a=e.threadRateLimitStatusById[t]??jKe,o=MKe(e,t),s=NKe(e,t),c=PKe(e,t),l=FKe(e,t),u=sG.get(n);if(u&&u.session===r&&u.turnState===i&&u.rateLimitStatus===a&&u.messages===o&&u.activities===s&&u.proposedPlans===c&&u.turnDiffSummaries===l)return u.thread;let d={...n,session:r,latestTurn:i?.latestTurn??null,pendingSourceProposedPlan:i?.pendingSourceProposedPlan,rateLimitStatus:a,messages:o,activities:s,proposedPlans:c,turnDiffSummaries:l};return sG.set(n,{session:r,turnState:i,rateLimitStatus:a,messages:o,activities:s,proposedPlans:c,turnDiffSummaries:l,thread:d}),d}function IKe(e,t){let n=t.providerAccountId??null,r=e=>e.provider===t.provider&&(e.providerAccountId??null)===n,i=e.find(r),a={status:t.status,usedPercent:t.usedPercent,resetsAt:t.resetsAt},o={provider:t.provider,providerAccountId:n,fiveHour:t.window===`five_hour`?a:i?.fiveHour??null,sevenDay:t.window===`seven_day`?a:i?.sevenDay??null};return[...e.filter(e=>!r(e)),o]}function uG(e){return{settledAt:e.settledAt??null,settledOverride:e.settledOverride??null}}var dG={projectIds:[],projectById:{},threadIds:[],threadIdsByProjectId:{},threadShellById:{},threadSessionById:{},threadTurnStateById:{},threadRateLimitStatusById:{},messageIdsByThreadId:{},messageByThreadId:{},activityIdsByThreadId:{},activityByThreadId:{},proposedPlanIdsByThreadId:{},proposedPlanByThreadId:{},turnDiffIdsByThreadId:{},turnDiffSummaryByThreadId:{},sidebarThreadSummaryById:{},threadSubscriptionErrorById:{},bootstrapComplete:!1},LKe={activeEnvironmentId:null,environmentStateById:{}},fG=[],pG=[];function mG(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}function hG(e,t){return{id:e.id,environmentId:t,codexThreadId:null,projectId:e.projectId,title:e.title,modelSelection:eG(e.modelSelection),runtimeMode:e.runtimeMode,interactionMode:e.interactionMode,session:e.session?nG(e.session):null,messages:e.messages.map(e=>rG(t,e)),proposedPlans:e.proposedPlans.map(iG),error:wV(e.session?.lastError),createdAt:e.createdAt,archivedAt:e.archivedAt,...uG(e),updatedAt:e.updatedAt,latestTurn:e.latestTurn,pendingSourceProposedPlan:e.latestTurn?.sourceProposedPlan,branch:e.branch,worktreePath:e.worktreePath,turnDiffSummaries:e.checkpoints.map(aG),activities:e.activities.map(e=>({...e})),anchorKind:e.anchorKind,anchorCmmdId:e.anchorCmmdId,linkedPullRequest:e.linkedPullRequest??null,goal:e.goal??null,titleRegeneration:e.titleRegeneration??null,kind:e.kind,parentThreadId:e.parentThreadId,status:e.status,workerRole:e.workerRole??null,pendingAutoCreatePrompt:e.pendingAutoCreatePrompt??null,rateLimitStatus:e.rateLimitStatus??[]}}function gG(e,t){let n={id:e.id,environmentId:t,codexThreadId:null,projectId:e.projectId,title:e.title,modelSelection:eG(e.modelSelection),runtimeMode:e.runtimeMode,interactionMode:e.interactionMode,error:wV(e.session?.lastError),createdAt:e.createdAt,archivedAt:e.archivedAt,...uG(e),updatedAt:e.updatedAt,branch:e.branch,worktreePath:e.worktreePath,anchorKind:e.anchorKind,anchorCmmdId:e.anchorCmmdId,linkedPullRequest:e.linkedPullRequest??null,goal:e.goal??null,titleRegeneration:e.titleRegeneration??null,kind:e.kind,parentThreadId:e.parentThreadId,status:e.status,workerRole:e.workerRole??null},r=e.session?nG(e.session):null;return{shell:n,session:r,turnState:{latestTurn:e.latestTurn,pendingSourceProposedPlan:e.latestTurn?.sourceProposedPlan},summary:{id:e.id,modelSelection:n.modelSelection,environmentId:t,projectId:e.projectId,title:e.title,interactionMode:e.interactionMode,session:r,createdAt:e.createdAt,archivedAt:e.archivedAt,...uG(e),updatedAt:e.updatedAt,latestTurn:e.latestTurn,branch:e.branch,worktreePath:e.worktreePath,latestUserMessageAt:e.latestUserMessageAt,hasPendingApprovals:e.hasPendingApprovals,hasPendingUserInput:e.hasPendingUserInput,hasActionableProposedPlan:e.hasActionableProposedPlan,anchorKind:e.anchorKind,anchorCmmdId:e.anchorCmmdId,linkedPullRequest:e.linkedPullRequest??null,goal:e.goal??null,titleRegeneration:e.titleRegeneration??null,kind:e.kind,parentThreadId:e.parentThreadId,status:e.status,workerRole:e.workerRole??null}}}function RKe(e){return{id:e.id,environmentId:e.environmentId,codexThreadId:e.codexThreadId,projectId:e.projectId,title:e.title,modelSelection:e.modelSelection,runtimeMode:e.runtimeMode,interactionMode:e.interactionMode,error:e.error,createdAt:e.createdAt,archivedAt:e.archivedAt,settledAt:e.settledAt,settledOverride:e.settledOverride,updatedAt:e.updatedAt,branch:e.branch,worktreePath:e.worktreePath,anchorKind:e.anchorKind,anchorCmmdId:e.anchorCmmdId,linkedPullRequest:e.linkedPullRequest??null,kind:e.kind,parentThreadId:e.parentThreadId,status:e.status,workerRole:e.workerRole??null,goal:e.goal??null,titleRegeneration:e.titleRegeneration??null}}function zKe(e){return{latestTurn:e.latestTurn,...e.pendingSourceProposedPlan?{pendingSourceProposedPlan:e.pendingSourceProposedPlan}:{}}}function _G(e,t){return e===t?!0:e===void 0||t===void 0?!1:e.threadId===t.threadId&&e.planId===t.planId}function vG(e,t){return e===t?!0:e==null||t==null?!1:e.turnId===t.turnId&&e.state===t.state&&e.requestedAt===t.requestedAt&&e.startedAt===t.startedAt&&e.completedAt===t.completedAt&&e.assistantMessageId===t.assistantMessageId&&_G(e.sourceProposedPlan,t.sourceProposedPlan)}function yG(e,t){return e===t?!0:e==null||t==null?!1:e.provider===t.provider&&e.status===t.status&&e.orchestrationStatus===t.orchestrationStatus&&e.activeTurnId===t.activeTurnId&&e.createdAt===t.createdAt&&e.updatedAt===t.updatedAt&&e.lastError===t.lastError}function bG(e,t){return e===t?!0:e==null||t==null?!1:e.projectId===t.projectId&&e.projectRepositoryId===t.projectRepositoryId&&e.provider===t.provider&&e.host===t.host&&e.repository===t.repository&&e.number===t.number&&e.url===t.url}function xG(e,t){return e!==void 0&&e.id===t.id&&e.environmentId===t.environmentId&&e.projectId===t.projectId&&e.title===t.title&&SG(e.titleRegeneration,t.titleRegeneration)&&e.interactionMode===t.interactionMode&&yG(e.session,t.session)&&e.createdAt===t.createdAt&&e.archivedAt===t.archivedAt&&e.settledAt===t.settledAt&&e.settledOverride===t.settledOverride&&e.updatedAt===t.updatedAt&&vG(e.latestTurn,t.latestTurn)&&e.branch===t.branch&&e.worktreePath===t.worktreePath&&e.latestUserMessageAt===t.latestUserMessageAt&&e.hasPendingApprovals===t.hasPendingApprovals&&e.hasPendingUserInput===t.hasPendingUserInput&&e.hasActionableProposedPlan===t.hasActionableProposedPlan&&e.anchorKind===t.anchorKind&&e.anchorCmmdId===t.anchorCmmdId&&bG(e.linkedPullRequest,t.linkedPullRequest)&&e.kind===t.kind&&e.parentThreadId===t.parentThreadId&&e.status===t.status}function SG(e,t){return e===t?!0:e==null||t==null?!1:e.requestId===t.requestId&&e.startedAt===t.startedAt}function CG(e,t){return e!==void 0&&e.id===t.id&&e.environmentId===t.environmentId&&e.codexThreadId===t.codexThreadId&&e.projectId===t.projectId&&e.title===t.title&&e.modelSelection===t.modelSelection&&e.runtimeMode===t.runtimeMode&&e.interactionMode===t.interactionMode&&e.error===t.error&&e.createdAt===t.createdAt&&e.archivedAt===t.archivedAt&&e.settledAt===t.settledAt&&e.settledOverride===t.settledOverride&&e.updatedAt===t.updatedAt&&e.branch===t.branch&&e.worktreePath===t.worktreePath&&e.anchorKind===t.anchorKind&&e.anchorCmmdId===t.anchorCmmdId&&bG(e.linkedPullRequest,t.linkedPullRequest)&&e.kind===t.kind&&e.parentThreadId===t.parentThreadId&&e.status===t.status&&e.goal===t.goal&&SG(e.titleRegeneration,t.titleRegeneration)}function wG(e,t){return e!==void 0&&vG(e.latestTurn,t.latestTurn)&&_G(e.pendingSourceProposedPlan,t.pendingSourceProposedPlan)}function BKe(e,t){return e.includes(t)?[...e]:[...e,t]}function TG(e,t){return e.filter(e=>e!==t)}function VKe(e){return{ids:e.messages.map(e=>e.id),byId:Object.fromEntries(e.messages.map(e=>[e.id,e]))}}function HKe(e){return{ids:e.activities.map(e=>e.id),byId:Object.fromEntries(e.activities.map(e=>[e.id,e]))}}function UKe(e){return{ids:e.proposedPlans.map(e=>e.id),byId:Object.fromEntries(e.proposedPlans.map(e=>[e.id,e]))}}function WKe(e){return{ids:e.turnDiffSummaries.map(e=>e.turnId),byId:Object.fromEntries(e.turnDiffSummaries.map(e=>[e.turnId,e]))}}function GKe(e){return e.projectIds.flatMap(t=>{let n=e.projectById[t];return n?[n]:[]})}function EG(e){return e.threadIds.flatMap(t=>{let n=lG(e,t);return n?[n]:[]})}function DG(e,t,n,r){let i=e;if(e.threadIds.includes(t)||(i={...i,threadIds:[...i.threadIds,t]}),r!==n){let e=i.threadIdsByProjectId;if(r){let n=e[r]??fG,i=TG(n,t);if(i.length===0){let{[r]:t,...n}=e;e=n}else mG(n,i)||(e={...e,[r]:i})}let a=e[n]??fG,o=BKe(a,t);mG(a,o)||(e={...e,[n]:o}),e!==i.threadIdsByProjectId&&(i={...i,threadIdsByProjectId:e})}return i}function OG(e,t,n){let r=RKe(t),i=zKe(t),a=e.threadShellById[t.id],o=e.threadTurnStateById[t.id],s=DG(e,t.id,t.projectId,n?.projectId);CG(a,r)||(s={...s,threadShellById:{...s.threadShellById,[t.id]:r}});let c=e.sidebarThreadSummaryById[t.id];if(c!==void 0){let e={...c,title:t.title,modelSelection:t.modelSelection,interactionMode:t.interactionMode,session:t.session,createdAt:t.createdAt,archivedAt:t.archivedAt,settledAt:t.settledAt,settledOverride:t.settledOverride,updatedAt:t.updatedAt,latestTurn:t.latestTurn,branch:t.branch,worktreePath:t.worktreePath,anchorKind:t.anchorKind,anchorCmmdId:t.anchorCmmdId,linkedPullRequest:t.linkedPullRequest??null,goal:t.goal,titleRegeneration:t.titleRegeneration??null,kind:t.kind,parentThreadId:t.parentThreadId,status:t.status,workerRole:t.workerRole};xG(c,e)||(s={...s,sidebarThreadSummaryById:{...s.sidebarThreadSummaryById,[t.id]:e}})}if(yG(n?.session??null,t.session)||(s={...s,threadSessionById:{...s.threadSessionById,[t.id]:t.session}}),(n?.rateLimitStatus??pG)!==(t.rateLimitStatus??pG)&&(s={...s,threadRateLimitStatusById:{...s.threadRateLimitStatusById,[t.id]:t.rateLimitStatus??pG}}),wG(o,i)||(s={...s,threadTurnStateById:{...s.threadTurnStateById,[t.id]:i}}),n?.messages!==t.messages){let e=VKe(t);s={...s,messageIdsByThreadId:{...s.messageIdsByThreadId,[t.id]:e.ids},messageByThreadId:{...s.messageByThreadId,[t.id]:e.byId}}}if(n?.activities!==t.activities){let e=HKe(t);s={...s,activityIdsByThreadId:{...s.activityIdsByThreadId,[t.id]:e.ids},activityByThreadId:{...s.activityByThreadId,[t.id]:e.byId}}}if(n?.proposedPlans!==t.proposedPlans){let e=UKe(t);s={...s,proposedPlanIdsByThreadId:{...s.proposedPlanIdsByThreadId,[t.id]:e.ids},proposedPlanByThreadId:{...s.proposedPlanByThreadId,[t.id]:e.byId}}}if(n?.turnDiffSummaries!==t.turnDiffSummaries){let e=WKe(t);s={...s,turnDiffIdsByThreadId:{...s.turnDiffIdsByThreadId,[t.id]:e.ids},turnDiffSummaryByThreadId:{...s.turnDiffSummaryByThreadId,[t.id]:e.byId}}}return s}function kG(e,t){let n=e.threadShellById[t.shell.id],r=DG(e,t.shell.id,t.shell.projectId,n?.projectId);return CG(n,t.shell)||(r={...r,threadShellById:{...r.threadShellById,[t.shell.id]:t.shell}}),yG(e.threadSessionById[t.shell.id]??null,t.session)||(r={...r,threadSessionById:{...r.threadSessionById,[t.shell.id]:t.session}}),wG(e.threadTurnStateById[t.shell.id],t.turnState)||(r={...r,threadTurnStateById:{...r.threadTurnStateById,[t.shell.id]:t.turnState}}),xG(e.sidebarThreadSummaryById[t.shell.id],t.summary)||(r={...r,sidebarThreadSummaryById:{...r.sidebarThreadSummaryById,[t.shell.id]:t.summary}}),r}function AG(e,t){return Object.fromEntries(Object.entries(e).flatMap(([e,n])=>t.has(e)?[[e,n]]:[]))}function jG(e,t){let n=e.threadShellById[t],r=e.sidebarThreadSummaryById[t],i=n?.projectId??r?.projectId;if(!i)return e;let a=TG(e.threadIds,t),o=TG(e.threadIdsByProjectId[i]??fG,t),s=o.length===0?(()=>{let{[i]:t,...n}=e.threadIdsByProjectId;return n})():{...e.threadIdsByProjectId,[i]:o},{[t]:c,...l}=e.threadShellById,{[t]:u,...d}=e.threadSessionById,{[t]:f,...p}=e.threadTurnStateById,{[t]:m,...h}=e.messageIdsByThreadId,{[t]:g,..._}=e.messageByThreadId,{[t]:v,...y}=e.activityIdsByThreadId,{[t]:b,...x}=e.activityByThreadId,{[t]:S,...C}=e.proposedPlanIdsByThreadId,{[t]:w,...T}=e.proposedPlanByThreadId,{[t]:E,...ee}=e.turnDiffIdsByThreadId,{[t]:te,...ne}=e.turnDiffSummaryByThreadId,{[t]:re,...ie}=e.sidebarThreadSummaryById;return{...e,threadIds:a,threadIdsByProjectId:s,threadShellById:l,threadSessionById:d,threadTurnStateById:p,messageIdsByThreadId:h,messageByThreadId:_,activityIdsByThreadId:y,activityByThreadId:x,proposedPlanIdsByThreadId:C,proposedPlanByThreadId:T,turnDiffIdsByThreadId:ee,turnDiffSummaryByThreadId:ne,sidebarThreadSummaryById:ie}}function KKe(e,t){let n=new Set(e.threadIdsByProjectId[t]??fG);for(let[r,i]of Object.entries(e.threadShellById))i.projectId===t&&n.add(r);for(let[r,i]of Object.entries(e.sidebarThreadSummaryById))i.projectId===t&&n.add(r);return[...n]}function MG(e,t){let n=KKe(e,t);if(!e.projectById[t]&&n.length===0&&!e.projectIds.includes(t))return e;let r=e;for(let e of n)r=jG(r,e);let{[t]:i,...a}=r.projectById;return{...r,projectById:a,projectIds:TG(r.projectIds,t)}}function NG(e){return e===`error`?`error`:e===`missing`?`interrupted`:`completed`}function qKe(e,t){if(e.sequence!==void 0&&t.sequence!==void 0){if(e.sequence!==t.sequence)return e.sequence-t.sequence}else if(e.sequence!==void 0)return 1;else if(t.sequence!==void 0)return-1;return e.createdAt.localeCompare(t.createdAt)||e.id.localeCompare(t.id)}function PG(e){let t=e.previous?.turnId===e.turnId?e.previous.sourceProposedPlan:e.sourceProposedPlan;return{turnId:e.turnId,state:e.state,requestedAt:e.requestedAt,startedAt:e.startedAt,completedAt:e.completedAt,assistantMessageId:e.assistantMessageId,...t?{sourceProposedPlan:t}:{}}}function JKe(e,t,n){let r=!1,i=e.map(e=>e.turnId!==t||e.assistantMessageId===n?e:(r=!0,{...e,assistantMessageId:n??void 0}));return r?i:[...e]}function YKe(e,t,n){let r=new Set;for(let n of e){if(n.role===`system`){r.add(n.id);continue}n.turnId!==void 0&&n.turnId!==null&&t.has(n.turnId)&&r.add(n.id)}let i=e.filter(e=>e.role===`user`&&r.has(e.id)).length,a=Math.max(0,n-i);if(a>0){let n=e.filter(e=>e.role===`user`&&!r.has(e.id)&&(e.turnId===void 0||e.turnId===null||t.has(e.turnId))).toSorted((e,t)=>e.createdAt.localeCompare(t.createdAt)||e.id.localeCompare(t.id)).slice(0,a);for(let e of n)r.add(e.id)}let o=e.filter(e=>e.role===`assistant`&&r.has(e.id)).length,s=Math.max(0,n-o);if(s>0){let n=e.filter(e=>e.role===`assistant`&&!r.has(e.id)&&(e.turnId===void 0||e.turnId===null||t.has(e.turnId))).toSorted((e,t)=>e.createdAt.localeCompare(t.createdAt)||e.id.localeCompare(t.id)).slice(0,s);for(let e of n)r.add(e.id)}return e.filter(e=>r.has(e.id))}function XKe(e,t){return e.filter(e=>e.turnId===null||t.has(e.turnId))}function ZKe(e,t){return e.filter(e=>e.turnId===null||t.has(e.turnId))}function FG(e,t,n){let r=lG(e,t);if(!r)return e;let i=n(r);return i===r?e:OG(e,i,r)}function IG(e,t,n,r){let i=FG(e,t,e=>({...e,...r,updatedAt:n})),a=i.sidebarThreadSummaryById[t];return!a||Object.keys(r).every(e=>a[e]===r[e])?i:{...i,sidebarThreadSummaryById:{...i.sidebarThreadSummaryById,[t]:{...a,...r}}}}function QKe(e){return{projectIds:e.map(e=>e.id),projectById:Object.fromEntries(e.map(e=>[e.id,e]))}}function LG(e,t){return e.environmentStateById[t]??dG}function RG(e,t,n){let r=e.environmentStateById[t]===n?e.environmentStateById:{...e.environmentStateById,[t]:n};return r===e.environmentStateById?e:{...e,environmentStateById:r}}function $Ke(e,t,n){let r=t.projects.map(e=>$W(e,n)),i=new Set(t.threads.map(e=>e.id)),a={...e,...QKe(r),threadIds:[],threadIdsByProjectId:{},threadShellById:{},threadSessionById:{},threadTurnStateById:{},threadRateLimitStatusById:AG(e.threadRateLimitStatusById,i),sidebarThreadSummaryById:{},messageIdsByThreadId:AG(e.messageIdsByThreadId,i),messageByThreadId:AG(e.messageByThreadId,i),activityIdsByThreadId:AG(e.activityIdsByThreadId,i),activityByThreadId:AG(e.activityByThreadId,i),proposedPlanIdsByThreadId:AG(e.proposedPlanIdsByThreadId,i),proposedPlanByThreadId:AG(e.proposedPlanByThreadId,i),turnDiffIdsByThreadId:AG(e.turnDiffIdsByThreadId,i),turnDiffSummaryByThreadId:AG(e.turnDiffSummaryByThreadId,i),bootstrapComplete:!0};for(let e of t.threads)a=kG(a,gG(e,n));return a}function eqe(e,t,n){return RG(e,n,$Ke(LG(e,n),t,n))}function tqe(e,t,n){let r=LG(e,n),i=lG(r,t.id);return RG(e,n,OG(r,hG(t,n),i))}function nqe(e,t,n,r){let i=LG(e,t);return RG(e,t,{...i,threadSubscriptionErrorById:{...i.threadSubscriptionErrorById,[n]:r}})}function rqe(e,t,n){let r=LG(e,t);if(!(n in r.threadSubscriptionErrorById))return e;let{[n]:i,...a}=r.threadSubscriptionErrorById;return RG(e,t,{...r,threadSubscriptionErrorById:a})}function zG(e,t,n){switch(t.type){case`project.created`:{let r=$W({id:t.payload.projectId,title:t.payload.title,workspaceRoot:t.payload.workspaceRoot,repositoryIdentity:t.payload.repositoryIdentity??null,defaultModelSelection:t.payload.defaultModelSelection,defaultThreadEnvMode:t.payload.defaultThreadEnvMode??null,cmmdRegistration:t.payload.cmmdRegistration??null,scripts:t.payload.scripts,createdAt:t.payload.createdAt,updatedAt:t.payload.updatedAt,deletedAt:null},n),i=e.projectIds.find(n=>n===t.payload.projectId||e.projectById[n]?.cwd===t.payload.workspaceRoot)??null,a=e.projectById,o=e.projectIds;if(i!==null&&i!==r.id){let{[i]:t,...n}=e.projectById;a={...n,[r.id]:r},o=e.projectIds.map(e=>e===i?r.id:e)}else a={...e.projectById,[r.id]:r},o=i===null&&!e.projectIds.includes(r.id)?[...e.projectIds,r.id]:e.projectIds;return{...e,projectById:a,projectIds:o}}case`project.meta-updated`:{let n=e.projectById[t.payload.projectId];if(!n)return e;let r=yKe(n,t.payload);return{...e,projectById:{...e.projectById,[t.payload.projectId]:r}}}case`project.deleted`:return MG(e,t.payload.projectId);case`thread.created`:{let r=lG(e,t.payload.threadId);return OG(e,hG({id:t.payload.threadId,projectId:t.payload.projectId,title:t.payload.title,modelSelection:t.payload.modelSelection,runtimeMode:t.payload.runtimeMode,interactionMode:t.payload.interactionMode,branch:t.payload.branch,worktreePath:t.payload.worktreePath,latestTurn:null,createdAt:t.payload.createdAt,updatedAt:t.payload.updatedAt,archivedAt:null,deletedAt:null,messages:[],proposedPlans:[],activities:[],checkpoints:[],session:null,anchorKind:t.payload.anchorKind,anchorCmmdId:t.payload.anchorCmmdId,kind:t.payload.kind,parentThreadId:t.payload.parentThreadId,status:t.payload.status,workerRole:t.payload.workerRole,goal:t.payload.goal??null,titleRegeneration:null,pendingAutoCreatePrompt:null},n),r)}case`thread.deleted`:return jG(e,t.payload.threadId);case`thread.archived`:return IG(e,t.payload.threadId,t.payload.updatedAt,{archivedAt:t.payload.archivedAt});case`thread.unarchived`:return IG(e,t.payload.threadId,t.payload.updatedAt,{archivedAt:null});case`thread.settled`:return IG(e,t.payload.threadId,t.payload.updatedAt,{settledAt:t.payload.settledAt,settledOverride:t.payload.settledOverride});case`thread.unsettled`:return IG(e,t.payload.threadId,t.payload.updatedAt,{settledAt:null,settledOverride:`active`});case`thread.meta-updated`:return FG(e,t.payload.threadId,e=>({...e,...t.payload.title===void 0?{}:{title:t.payload.title},...t.payload.modelSelection===void 0?{}:{modelSelection:eG(t.payload.modelSelection)},...t.payload.branch===void 0?{}:{branch:t.payload.branch},...t.payload.worktreePath===void 0?{}:{worktreePath:t.payload.worktreePath},...t.payload.anchorKind===void 0?{}:{anchorKind:t.payload.anchorKind},...t.payload.anchorCmmdId===void 0?{}:{anchorCmmdId:t.payload.anchorCmmdId},...t.payload.status===void 0?{}:{status:t.payload.status},...t.payload.parentThreadId===void 0?{}:{parentThreadId:t.payload.parentThreadId},...t.payload.goal===void 0?{}:{goal:t.payload.goal},...t.payload.linkedPullRequest===void 0?{}:{linkedPullRequest:t.payload.linkedPullRequest},...t.payload.titleRegeneration===void 0?{}:{titleRegeneration:t.payload.titleRegeneration},updatedAt:t.payload.updatedAt}));case`thread.runtime-mode-set`:return FG(e,t.payload.threadId,e=>({...e,runtimeMode:t.payload.runtimeMode,updatedAt:t.payload.updatedAt}));case`thread.interaction-mode-set`:return FG(e,t.payload.threadId,e=>({...e,interactionMode:t.payload.interactionMode,updatedAt:t.payload.updatedAt}));case`thread.turn-start-requested`:return FG(e,t.payload.threadId,e=>({...e,...t.payload.modelSelection===void 0?{}:{modelSelection:eG(t.payload.modelSelection)},runtimeMode:t.payload.runtimeMode,interactionMode:t.payload.interactionMode,pendingSourceProposedPlan:t.payload.sourceProposedPlan,latestTurn:PG({previous:e.latestTurn,turnId:jt.make(t.payload.messageId),state:`running`,requestedAt:t.payload.createdAt,startedAt:t.payload.createdAt,completedAt:null,assistantMessageId:null,sourceProposedPlan:t.payload.sourceProposedPlan}),updatedAt:t.occurredAt}));case`thread.turn-interrupt-requested`:return t.payload.turnId===void 0?e:FG(e,t.payload.threadId,e=>{let n=e.latestTurn;return n===null||n.turnId!==t.payload.turnId?e:{...e,latestTurn:PG({previous:n,turnId:t.payload.turnId,state:`interrupted`,requestedAt:n.requestedAt,startedAt:n.startedAt??t.payload.createdAt,completedAt:n.completedAt??t.payload.createdAt,assistantMessageId:n.assistantMessageId}),updatedAt:t.occurredAt}});case`thread.message-sent`:return FG(e,t.payload.threadId,e=>{let n=rG(e.environmentId,{id:t.payload.messageId,role:t.payload.role,text:t.payload.text,...t.payload.attachments===void 0?{}:{attachments:t.payload.attachments},turnId:t.payload.turnId,streaming:t.payload.streaming,createdAt:t.payload.createdAt,updatedAt:t.payload.updatedAt}),r=(e.messages.find(e=>e.id===n.id)?e.messages.map(e=>e.id===n.id?{...e,text:n.streaming?`${e.text}${n.text}`:n.text.length>0?n.text:e.text,streaming:n.streaming,...n.turnId===void 0?{}:{turnId:n.turnId},...n.streaming?e.completedAt===void 0?{}:{completedAt:e.completedAt}:n.completedAt===void 0?{}:{completedAt:n.completedAt},...n.attachments===void 0?{}:{attachments:n.attachments}}:e):[...e.messages,n]).slice(-2e3),i=t.payload.role===`assistant`&&t.payload.turnId!==null?JKe(e.turnDiffSummaries,t.payload.turnId,t.payload.messageId):e.turnDiffSummaries,a=t.payload.role===`assistant`&&t.payload.turnId!==null&&(e.latestTurn===null||e.latestTurn.turnId===t.payload.turnId)?PG({previous:e.latestTurn,turnId:t.payload.turnId,state:t.payload.streaming?`running`:e.latestTurn?.state===`interrupted`?`interrupted`:e.latestTurn?.state===`error`?`error`:`completed`,requestedAt:e.latestTurn?.turnId===t.payload.turnId?e.latestTurn.requestedAt:t.payload.createdAt,startedAt:e.latestTurn?.turnId===t.payload.turnId?e.latestTurn.startedAt??t.payload.createdAt:t.payload.createdAt,sourceProposedPlan:e.pendingSourceProposedPlan,completedAt:t.payload.streaming?e.latestTurn?.turnId===t.payload.turnId?e.latestTurn.completedAt??null:null:t.payload.updatedAt,assistantMessageId:t.payload.messageId}):e.latestTurn;return{...e,messages:r,turnDiffSummaries:i,latestTurn:a,updatedAt:t.occurredAt}});case`thread.session-set`:return FG(e,t.payload.threadId,e=>({...e,session:nG(t.payload.session),error:wV(t.payload.session.lastError),latestTurn:t.payload.session.status===`running`&&t.payload.session.activeTurnId!==null?PG({previous:e.latestTurn,turnId:t.payload.session.activeTurnId,state:`running`,requestedAt:e.latestTurn?.turnId===t.payload.session.activeTurnId?e.latestTurn.requestedAt:t.payload.session.updatedAt,startedAt:e.latestTurn?.turnId===t.payload.session.activeTurnId?e.latestTurn.startedAt??t.payload.session.updatedAt:t.payload.session.updatedAt,completedAt:null,assistantMessageId:e.latestTurn?.turnId===t.payload.session.activeTurnId?e.latestTurn.assistantMessageId:null,sourceProposedPlan:e.pendingSourceProposedPlan}):e.latestTurn,updatedAt:t.occurredAt}));case`thread.session-stop-requested`:return FG(e,t.payload.threadId,e=>e.session===null?e:{...e,session:{...e.session,status:`closed`,orchestrationStatus:`stopped`,activeTurnId:void 0,updatedAt:t.payload.createdAt},updatedAt:t.occurredAt});case`thread.proposed-plan-upserted`:return FG(e,t.payload.threadId,e=>{let n=iG(t.payload.proposedPlan),r=[...e.proposedPlans.filter(e=>e.id!==n.id),n].toSorted((e,t)=>e.createdAt.localeCompare(t.createdAt)||e.id.localeCompare(t.id)).slice(-200);return{...e,proposedPlans:r,updatedAt:t.occurredAt}});case`thread.turn-diff-completed`:return FG(e,t.payload.threadId,e=>{let n=aG({turnId:t.payload.turnId,checkpointTurnCount:t.payload.checkpointTurnCount,checkpointRef:t.payload.checkpointRef,status:t.payload.status,files:t.payload.files,assistantMessageId:t.payload.assistantMessageId,completedAt:t.payload.completedAt}),r=e.turnDiffSummaries.find(e=>e.turnId===n.turnId);if(r&&r.status!==`missing`&&n.status===`missing`)return e;let i=[...e.turnDiffSummaries.filter(e=>e.turnId!==n.turnId),n].toSorted((e,t)=>(e.checkpointTurnCount??2**53-1)-(t.checkpointTurnCount??2**53-1)).slice(-500),a=e.latestTurn===null||e.latestTurn.turnId===t.payload.turnId?PG({previous:e.latestTurn,turnId:t.payload.turnId,state:NG(t.payload.status),requestedAt:e.latestTurn?.requestedAt??t.payload.completedAt,startedAt:e.latestTurn?.startedAt??t.payload.completedAt,completedAt:t.payload.completedAt,assistantMessageId:t.payload.assistantMessageId,sourceProposedPlan:e.pendingSourceProposedPlan}):e.latestTurn;return{...e,turnDiffSummaries:i,latestTurn:a,updatedAt:t.occurredAt}});case`thread.reverted`:return FG(e,t.payload.threadId,e=>{let n=e.turnDiffSummaries.filter(e=>e.checkpointTurnCount!==void 0&&e.checkpointTurnCount<=t.payload.turnCount).toSorted((e,t)=>(e.checkpointTurnCount??2**53-1)-(t.checkpointTurnCount??2**53-1)).slice(-500),r=new Set(n.map(e=>e.turnId)),i=YKe(e.messages,r,t.payload.turnCount).slice(-2e3),a=ZKe(e.proposedPlans,r).slice(-200),o=XKe(e.activities,r),s=n.at(-1)??null;return{...e,turnDiffSummaries:n,messages:i,proposedPlans:a,activities:o,pendingSourceProposedPlan:void 0,latestTurn:s===null?null:{turnId:s.turnId,state:NG(s.status??`ready`),requestedAt:s.completedAt,startedAt:s.completedAt,completedAt:s.completedAt,assistantMessageId:s.assistantMessageId??null},updatedAt:t.occurredAt}});case`thread.activity-appended`:return FG(e,t.payload.threadId,e=>{let n=[...e.activities.filter(e=>e.id!==t.payload.activity.id),{...t.payload.activity}].toSorted(qKe).slice(-500);return{...e,activities:n,updatedAt:t.occurredAt}});case`thread.rate-limit-set`:return FG(e,t.payload.threadId,e=>({...e,rateLimitStatus:IKe(e.rateLimitStatus??[],t.payload),updatedAt:t.occurredAt}));case`thread.worker-spawned`:return FG(e,t.payload.workerThreadId,e=>({...e,kind:`worker`,parentThreadId:t.payload.masterThreadId,branch:t.payload.branch,worktreePath:t.payload.worktreePath,workerRole:t.payload.workerRole??e.workerRole??null,updatedAt:t.occurredAt}));case`thread.approval-response-requested`:case`thread.user-input-response-requested`:return e}return e}function iqe(e,t,n){switch(t.kind){case`project-upserted`:{let r=$W(t.project,n),i=e.projectIds.find(n=>n===t.project.id||e.projectById[n]?.cwd===t.project.workspaceRoot)??null,a=e.projectById,o=e.projectIds;if(i!==null&&i!==r.id){let{[i]:t,...n}=e.projectById;a={...n,[r.id]:r},o=e.projectIds.map(e=>e===i?r.id:e)}else a={...e.projectById,[r.id]:r},o=i===null&&!e.projectIds.includes(r.id)?[...e.projectIds,r.id]:e.projectIds;return{...e,projectById:a,projectIds:o}}case`project-removed`:return MG(e,t.projectId);case`thread-upserted`:return kG(e,gG(t.thread,n));case`thread-removed`:return jG(e,t.threadId)}}function aqe(e,t,n){if(t.length===0)return e;let r=LG(e,n);return RG(e,n,t.reduce((e,t)=>zG(e,t,n),r))}function BG(e){return Object.entries(e.environmentStateById)}function VG(e,t){return t?LG(e,t):dG}function oqe(e,t){return EG(VG(e,t))}function HG(e){return BG(e).flatMap(([,e])=>GKe(e))}function UG(e){return BG(e).flatMap(([,e])=>EG(e))}function sqe(e){return BG(e).flatMap(([,e])=>WG(e).flatMap(t=>{let n=e.threadShellById[t];return n?[n]:[]}))}function WG(e){let t=[],n=new Set,r=e=>{n.has(e)||(n.add(e),t.push(e))};for(let t of e.threadIds)r(t);for(let t of Object.keys(e.threadShellById))r(t);for(let t of Object.keys(e.sidebarThreadSummaryById))r(t);return t}function GG(e,t,n){let r=t.sidebarThreadSummaryById[n];if(r)return r.environmentId===e?r:{...r,environmentId:e};let i=t.threadShellById[n];return i?{id:i.id,environmentId:e,projectId:i.projectId,title:i.title,modelSelection:i.modelSelection,interactionMode:i.interactionMode,session:t.threadSessionById[n]??null,createdAt:i.createdAt,archivedAt:i.archivedAt,settledAt:i.settledAt,settledOverride:i.settledOverride,updatedAt:i.updatedAt,latestTurn:t.threadTurnStateById[n]?.latestTurn??null,branch:i.branch,worktreePath:i.worktreePath,latestUserMessageAt:null,hasPendingApprovals:!1,hasPendingUserInput:!1,hasActionableProposedPlan:!1,anchorKind:i.anchorKind,anchorCmmdId:i.anchorCmmdId,goal:i.goal,titleRegeneration:i.titleRegeneration,kind:i.kind,parentThreadId:i.parentThreadId,workerRole:i.workerRole,status:i.status}:null}function cqe(e){return BG(e).flatMap(([e,t])=>WG(t).flatMap(n=>{let r=GG(e,t,n);return r?[r]:[]}))}function KG(e,t){if(!t)return[];let n=VG(e,t.environmentId),r=n.threadIdsByProjectId[t.projectId]??fG;return(r.length>0?r:WG(n)).flatMap(e=>{let r=GG(t.environmentId,n,e);return!r||r.projectId!==t.projectId?[]:[r]})}function lqe(e,t){return t.length===0?[]:t.length===1?KG(e,t[0]):t.flatMap(t=>KG(e,t))}function uqe(e){return e.activeEnvironmentId===null?Object.values(e.environmentStateById).some(e=>e.bootstrapComplete):VG(e,e.activeEnvironmentId).bootstrapComplete}function dqe(e,t){return t?VG(e,t.environmentId).projectById[t.projectId]:void 0}function qG(e,t){return t?lG(VG(e,t.environmentId),t.threadId):void 0}function fqe(e,t){return t?VG(e,t.environmentId).threadShellById[t.threadId]!==void 0:!1}function JG(e,t){return t?GG(t.environmentId,VG(e,t.environmentId),t.threadId)??void 0:void 0}function pqe(e,t,n){if(e.activeEnvironmentId===null)return e;let r=FG(LG(e,e.activeEnvironmentId),t,e=>e.error===n?e:{...e,error:n});return RG(e,e.activeEnvironmentId,r)}function mqe(e,t,n){return RG(e,n,zG(LG(e,n),t,n))}function hqe(e,t,n){return RG(e,n,iqe(LG(e,n),t,n))}function gqe(e,t){return e.activeEnvironmentId===t?e:{...e,activeEnvironmentId:t}}function _qe(e,t,n,r){let i=FG(LG(e,t.environmentId),t.threadId,e=>{if(e.branch===n&&e.worktreePath===r)return e;let t=e.worktreePath!==r;return{...e,branch:n,worktreePath:r,...t?{session:null}:{}}});return RG(e,t.environmentId,i)}var YG=dt(e=>({...LKe,setActiveEnvironmentId:t=>e(e=>gqe(e,t)),syncServerShellSnapshot:(t,n)=>e(e=>eqe(e,t,n)),syncServerThreadDetail:(t,n)=>e(e=>tqe(e,t,n)),setThreadSubscriptionError:(t,n,r)=>e(e=>nqe(e,t,n,r)),clearThreadSubscriptionError:(t,n)=>e(e=>rqe(e,t,n)),applyOrchestrationEvent:(t,n)=>e(e=>mqe(e,t,n)),applyOrchestrationEvents:(t,n)=>e(e=>aqe(e,t,n)),applyShellEvent:(t,n)=>e(e=>hqe(e,t,n)),setError:(t,n)=>e(e=>pqe(e,t,n)),setThreadBranch:(t,n,r)=>e(e=>_qe(e,t,n,r))}));function XG(e,t){let n;try{n=e()}catch{return}return{getItem:e=>{let r=e=>e===null?null:JSON.parse(e,t?.reviver),i=n.getItem(e)??null;return i instanceof Promise?i.then(r):r(i)},setItem:(e,r)=>n.setItem(e,JSON.stringify(r,t?.replacer)),removeItem:e=>n.removeItem(e)}}var ZG=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return ZG(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return ZG(t)(e)}}}},QG=(e,t)=>(n,r,i)=>{let a={storage:XG(()=>window.localStorage),partialize:e=>e,version:0,merge:(e,t)=>({...t,...e}),...t},o=!1,s=0,c=new Set,l=new Set,u=a.storage;if(!u)return e((...e)=>{console.warn(`[zustand persist middleware] Unable to update item '${a.name}', the given storage is currently unavailable.`),n(...e)},r,i);let d=()=>{let e=a.partialize({...r()});return u.setItem(a.name,{state:e,version:a.version})},f=i.setState;i.setState=(e,t)=>(f(e,t),d());let p=e((...e)=>(n(...e),d()),r,i);i.getInitialState=()=>p;let m,h=()=>{if(!u)return;let e=++s;o=!1,c.forEach(e=>e(r()??p));let t=a.onRehydrateStorage?.call(a,r()??p)||void 0;return ZG(u.getItem.bind(u))(a.name).then(e=>{if(e)if(typeof e.version==`number`&&e.version!==a.version){if(a.migrate){let t=a.migrate(e.state,e.version);return t instanceof Promise?t.then(e=>[!0,e]):[!0,t]}console.error(`State loaded from storage couldn't be migrated since no migrate function was provided`)}else return[!1,e.state];return[!1,void 0]}).then(t=>{if(e!==s)return;let[i,o]=t;if(m=a.merge(o,r()??p),n(m,!0),i)return d()}).then(()=>{e===s&&(t?.(r(),void 0),m=r(),o=!0,l.forEach(e=>e(m)))}).catch(n=>{e===s&&t?.(void 0,n)})};return i.persist={setOptions:e=>{a={...a,...e},e.storage&&(u=e.storage)},clearStorage:()=>{++s,u?.removeItem(a.name)},getOptions:()=>a,rehydrate:()=>h(),hasHydrated:()=>o,onHydrate:e=>(c.add(e),()=>{c.delete(e)}),onFinishHydration:e=>(l.add(e),()=>{l.delete(e)})},a.skipHydration||h(),m||p},vqe=/^(localhost|[a-z0-9.-]+\.localhost|127(?:\.\d{1,3}){3}|\[[0:]+1\]|::1)(?::\d+)?(?:[/?#]|$)/i,$G=/https?:\/\/[^\s"'`<>]+/gu,yqe=new RegExp(String.raw`\u001B(?:\][\s\S]*?(?:\u0007|\u001B\\)|[@-_][0-?]*[ -/]*[@-~])`,`gu`),bqe=/(https?:\/\/(?:localhost|[a-z0-9.-]+\.localhost|127(?:\.\d{1,3}){3}|\[[0:]+1\]|::1|10(?:\.\d{1,3}){3}|172\.(?:1[6-9]|2\d|3[01])(?:\.\d{1,3}){2}|192\.168(?:\.\d{1,3}){2}):)\s+(\d{1,5})(?=[/?#\s]|$)/giu;function eK(e){let t=e.trim();if(!t||/^[a-z][a-z0-9+.-]*:\/\//i.test(t)&&!/^https?:\/\//i.test(t))return null;let n=t.split(/[/:?#]/,1)[0]??``,r=vqe.test(t)||nK(n)?`http`:`https`,i=/^https?:\/\//i.test(t)?t:`${r}://${t}`;try{let e=new URL(i);return e.protocol!==`http:`&&e.protocol!==`https:`?null:e.toString()}catch{return null}}function xqe(e){try{let t=new URL(e);return t.protocol===`http:`||t.protocol===`https:`}catch{return!1}}function tK(e){try{let t=new URL(e);return ane(t.hostname)}catch{return!1}}function nK(e){return Yte(e)}function rK(e){try{let t=new URL(e);if(t.protocol!==`http:`||!tK(t.toString())&&!nK(t.hostname)||!t.port)return null;let n=Number(t.port);return Number.isInteger(n)&&n>0&&n<=65535?n:null}catch{return null}}function Sqe(e){let t=e.replace(/[.,;!?]+$/u,``);for(;t.endsWith(`)`)||t.endsWith(`]`)||t.endsWith(`}`);){let e=t.at(-1);if(!e)break;let n=e===`)`?`(`:e===`]`?`[`:`{`;if(t.split(n).length-1>=t.split(e).length-1)break;t=t.slice(0,-1)}return t}function Cqe(e){return e.replace(yqe,``).replaceAll(/./gsu,e=>wqe(e)?``:e).replace(bqe,`$1$2`)}function wqe(e){let t=e.charCodeAt(0);return t>=0&&t<=8||t===11||t===12||t>=14&&t<=31||t===127}function iK(e){let t=null,n=null,r=Cqe(e);$G.lastIndex=0;for(let e of r.matchAll($G)){let r=eK(Sqe(e[0]));!r||!rK(r)||(t=r,tK(r)&&(n=r))}return n??t}function Tqe(e){let t=null;for(let n of e){let e=n.event,r=iK(e.type===`output`?e.data:e.type===`started`||e.type===`restarted`?e.snapshot.history:``);r&&(t=r)}return t}function aK(){let e=new Map;return{getItem:t=>e.get(t)??null,setItem:(t,n)=>{e.set(t,n)},removeItem:t=>{e.delete(t)}}}function Eqe(e){return e!=null&&typeof e.getItem==`function`&&typeof e.setItem==`function`&&typeof e.removeItem==`function`}function oK(e){return Eqe(e)?e:aK()}var sK=aK();function cK(){return globalThis.localStorage||globalThis.window?.localStorage}var lK={getItem:e=>{try{let t=cK()?.getItem(e);if(t!==void 0)return t}catch{}return sK.getItem(e)},setItem:(e,t)=>{try{let n=cK();if(n){n.setItem(e,t);return}}catch{}sK.setItem(e,t)},removeItem:e=>{try{let t=cK();if(t){t.removeItem(e);return}}catch{}sK.removeItem(e)}};function uK(e){let t=lK.getItem(e);return typeof t==`string`?t:null}function dK(e,t){lK.setItem(e,t)}function Dqe(e){lK.removeItem(e)}function Oqe(e,t=300){let n=oK(e),r=new pt((e,t)=>{n.setItem(e,t)},{wait:t});return{getItem:e=>n.getItem(e),setItem:(e,t)=>{r.maybeExecute(e,t)},removeItem:e=>{r.cancel(),n.removeItem(e)},flush:()=>{r.flush()}}}function kqe(e){switch(e.type){case`activity`:return e.hasRunningSubprocess;case`started`:case`restarted`:case`exited`:return!1;default:return null}}var fK=`full-access`,pK=`default`,mK=`default`,Aqe=`forge:terminal-state:v1`,hK=[],jqe=200,gK=8;function Mqe(e,t){if(t<=3&&e&&typeof e==`object`){let t=e;return{terminalStateByThreadKey:EK(t.terminalStateByThreadKey??{}),terminalPreviewUrlByThreadKey:Object.fromEntries(Object.entries(t.terminalPreviewUrlByThreadKey??{}).filter(([e,t])=>!!fi(e)&&typeof t?.url==`string`&&!!rK(t.url)&&typeof t?.observedAt==`string`))}}return{terminalStateByThreadKey:{},terminalPreviewUrlByThreadKey:{}}}function Nqe(){return oK(typeof window<`u`?window.localStorage:void 0)}function Pqe(e){let t=[...new Set(e.map(e=>e.trim()).filter(e=>e.length>0))];return t.length>0?t:[mK]}function Fqe(e,t){if(e.length===0)return[];let n=new Set(t);return[...new Set(e)].map(e=>e.trim()).filter(e=>e.length>0&&n.has(e))}function _K(e){return`group-${e}`}function vK(e,t){let n=e,r=2;for(;t.has(n);)n=`${e}-${r}`,r+=1;return t.add(n),n}function yK(e,t){return e.findIndex(e=>e.terminalIds.includes(t))}function Iqe(e){return[...new Set(e.map(e=>e.trim()).filter(e=>e.length>0))]}function Lqe(e,t){let n=new Set(t),r=new Set,i=[],a=new Set;for(let t of e){let e=Iqe(t.terminalIds).filter(e=>!(!n.has(e)||r.has(e)));if(e.length===0)continue;for(let t of e)r.add(t);let o=t.id.trim().length>0?t.id.trim():_K(e[0]??`default`);i.push({id:vK(o,a),terminalIds:e})}for(let e of t)r.has(e)||i.push({id:vK(_K(e),a),terminalIds:[e]});return i.length===0?[{id:_K(mK),terminalIds:[mK]}]:i}function bK(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1)if(e[n]!==t[n])return!1;return!0}function Rqe(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1){let r=e[n],i=t[n];if(!r||!i||r.id!==i.id||!bK(r.terminalIds,i.terminalIds))return!1}return!0}function xK(e,t){return e.terminalOpen===t.terminalOpen&&e.terminalHeight===t.terminalHeight&&e.activeTerminalId===t.activeTerminalId&&e.activeTerminalGroupId===t.activeTerminalGroupId&&bK(e.terminalIds,t.terminalIds)&&bK(e.runningTerminalIds,t.runningTerminalIds)&&Rqe(e.terminalGroups,t.terminalGroups)}var SK=Object.freeze({terminalOpen:!1,terminalHeight:280,terminalIds:[mK],runningTerminalIds:[],activeTerminalId:mK,terminalGroups:[{id:_K(mK),terminalIds:[mK]}],activeTerminalGroupId:_K(mK)});function CK(){return{...SK,terminalIds:[...SK.terminalIds],runningTerminalIds:[...SK.runningTerminalIds],terminalGroups:PK(SK.terminalGroups)}}function wK(){return SK}function TK(e){let t=Pqe(e.terminalIds),n=t.length>0?t:[mK],r=Fqe(e.runningTerminalIds,n),i=n.includes(e.activeTerminalId)?e.activeTerminalId:n[0]??`default`,a=Lqe(e.terminalGroups,n),o=a.some(t=>t.id===e.activeTerminalGroupId)?e.activeTerminalGroupId:null,s=a.find(e=>e.terminalIds.includes(i))?.id??null,c={terminalOpen:e.terminalOpen,terminalHeight:Number.isFinite(e.terminalHeight)&&e.terminalHeight>0?e.terminalHeight:280,terminalIds:n,runningTerminalIds:r,activeTerminalId:i,terminalGroups:a,activeTerminalGroupId:o??s??a[0]?.id??_K(`default`)};return xK(e,c)?e:c}function zqe(e){let t=TK(e);if(t.terminalIds.length<=gK)return t;let n=new Set,r=e=>{!e||n.size>=gK||t.terminalIds.includes(e)&&n.add(e)};r(mK),r(t.activeTerminalId);for(let e of t.runningTerminalIds)r(e);for(let e of t.terminalIds.toReversed())r(e);let i=t.terminalIds.filter(e=>n.has(e)),a=i[i.length-1]??i[0]??`default`,o=i.includes(t.activeTerminalId)?t.activeTerminalId:a;return TK({...t,terminalIds:i.length>0?i:[mK],runningTerminalIds:t.runningTerminalIds.filter(e=>n.has(e)),activeTerminalId:o,terminalGroups:t.terminalGroups.map(e=>({id:e.id,terminalIds:e.terminalIds.filter(e=>n.has(e))})).filter(e=>e.terminalIds.length>0)})}function EK(e){return Object.fromEntries(Object.entries(e).flatMap(([e,t])=>fi(e)?[[e,zqe(t)]]:[]))}function Bqe(e){return xK(TK(e),SK)}function Vqe(e){return e.trim().length>0}function DK(e){return li(e)}function OK(e,t){return`${DK(e)}\u0000${t}`}function kK(e,t){return OK(e,t)}function AK(e){let t=Date.parse(e);return Number.isFinite(t)?t:0}function jK(e,t){let n=iK(e);return n?{url:n,observedAt:t}:null}function Hqe(e){return jK(e.history,e.updatedAt)}function MK(e){return e.type===`output`?jK(e.data,e.createdAt):e.type===`started`||e.type===`restarted`?jK(e.snapshot.history,e.snapshot.updatedAt):null}function NK(e,t,n){if(!n)return e;let r=DK(t),i=e[r];return i&&AK(i.observedAt)>AK(n.observedAt)||i?.url===n.url&&i.observedAt===n.observedAt?e:{...e,[r]:n}}function PK(e){return e.map(e=>({id:e.id,terminalIds:[...e.terminalIds]}))}function FK(e,t,n,r){let i=OK(n,r.terminalId),a=e[i]??hK,o={id:t,event:r},s=a.length>=jqe?[...a.slice(1),o]:[...a,o];return{terminalEventEntriesByKey:{...e,[i]:s},nextTerminalEventId:t+1}}function IK(e,t,n,r){let i=OK(n,r.terminalId);return{terminalEventEntriesByKey:{...e,[i]:[{id:t,event:r}]},nextTerminalEventId:t+1}}function LK(e){return e.sessionEpoch&&e.sequence!==void 0?{sessionEpoch:e.sessionEpoch,sequence:e.sequence}:null}function RK(e,t,n){return!t||!e?!1:t.sessionEpoch===e.sessionEpoch?n?t.sequence<e.sequence:t.sequence<=e.sequence:!n}function zK(e,t){let n={...e},r=!1;for(let e of Object.keys(n))e.startsWith(`${t}\u0000`)&&(delete n[e],r=!0);return r?n:e}function Uqe(e){return{terminalId:e.terminalId,cwd:e.snapshot.cwd,worktreePath:e.snapshot.worktreePath}}function Wqe(e,t){let n=Uqe(t);return e?.runtimeEnv&&e.cwd===n.cwd&&e.worktreePath===n.worktreePath&&(e.terminalId===void 0||e.terminalId===t.terminalId)?{...n,runtimeEnv:e.runtimeEnv}:n}function BK(e,t,n){let r=TK(e);if(!Vqe(t))return r;let i=!r.terminalIds.includes(t),a=i?[...r.terminalIds,t]:r.terminalIds,o=PK(r.terminalGroups),s=yK(o,t);if(s>=0&&(o[s].terminalIds=o[s].terminalIds.filter(e=>e!==t),o[s].terminalIds.length===0&&o.splice(s,1)),n===`new`){let e=new Set(o.map(e=>e.id)),n=vK(_K(t),e);return o.push({id:n,terminalIds:[t]}),TK({...r,terminalOpen:!0,terminalIds:a,activeTerminalId:t,terminalGroups:o,activeTerminalGroupId:n})}let c=o.findIndex(e=>e.id===r.activeTerminalGroupId);if(c<0&&(c=yK(o,r.activeTerminalId)),c<0){let e=new Set(o.map(e=>e.id)),t=vK(_K(r.activeTerminalId),e);o.push({id:t,terminalIds:[r.activeTerminalId]}),c=o.length-1}let l=o[c];if(!l||i&&!l.terminalIds.includes(t)&&l.terminalIds.length>=4)return r;if(!l.terminalIds.includes(t)){let e=l.terminalIds.indexOf(r.activeTerminalId);e>=0?l.terminalIds.splice(e+1,0,t):l.terminalIds.push(t)}return TK({...r,terminalOpen:!0,terminalIds:a,activeTerminalId:t,terminalGroups:o,activeTerminalGroupId:l.id})}function VK(e,t){let n=TK(e);return n.terminalOpen===t?n:{...n,terminalOpen:t}}function Gqe(e,t){let n=TK(e);return!Number.isFinite(t)||t<=0||n.terminalHeight===t?n:{...n,terminalHeight:t}}function Kqe(e,t){return BK(e,t,`split`)}function HK(e,t,n){let r=BK(e,t,`new`);return n?.openDrawer===!1?{...r,terminalOpen:e.terminalOpen}:r}function UK(e,t){let n=TK(e);if(!n.terminalIds.includes(t))return n;let r=n.terminalGroups.find(e=>e.terminalIds.includes(t))?.id??n.activeTerminalGroupId;return n.activeTerminalId===t&&n.activeTerminalGroupId===r?n:{...n,activeTerminalId:t,activeTerminalGroupId:r}}function qqe(e,t){let n=TK(e);if(!n.terminalIds.includes(t))return n;let r=n.terminalIds.filter(e=>e!==t);if(r.length===0)return CK();let i=n.terminalIds.indexOf(t),a=n.activeTerminalId===t?r[Math.min(i,r.length-1)]??r[0]??`default`:n.activeTerminalId,o=n.terminalGroups.map(e=>({...e,terminalIds:e.terminalIds.filter(e=>e!==t)})).filter(e=>e.terminalIds.length>0),s=o.find(e=>e.terminalIds.includes(a))?.id??o[0]?.id??_K(a);return TK({terminalOpen:n.terminalOpen,terminalHeight:n.terminalHeight,terminalIds:r,runningTerminalIds:n.runningTerminalIds.filter(e=>e!==t),activeTerminalId:a,terminalGroups:o,activeTerminalGroupId:s})}function WK(e,t,n){let r=TK(e);if(!r.terminalIds.includes(t)||n===r.runningTerminalIds.includes(t))return r;let i=new Set(r.runningTerminalIds);return n?i.add(t):i.delete(t),{...r,runningTerminalIds:[...i]}}function GK(e,t){return!t||t.threadId.length===0?wK():e[DK(t)]??wK()}function KK(e,t,n){if(t.threadId.length===0)return e;let r=DK(t),i=GK(e,t),a=n(i);if(a===i)return e;if(Bqe(a)){if(e[r]===void 0)return e;let{[r]:t,...n}=e;return n}return{...e,[r]:a}}function Jqe(e,t,n){return!t||t.threadId.length===0||n.trim().length===0?hK:e[OK(t,n)]??hK}function Yqe(e,t,n){return!t||t.threadId.length===0||n.trim().length===0?null:e[kK(t,n)]??null}function Xqe(e,t){if(!t||t.threadId.length===0)return[];let n=`${DK(t)}\u0000`;return Object.entries(e).filter(([e])=>e.startsWith(n)).map(([,e])=>e)}function Zqe(e,t){return!t||t.threadId.length===0?null:e[DK(t)]??null}var qK=dt()(QG(e=>{let t=(t,n)=>{e(e=>{let r=KK(e.terminalStateByThreadKey,t,n);return r===e.terminalStateByThreadKey?e:{terminalStateByThreadKey:r}})};return{terminalStateByThreadKey:{},terminalLaunchContextByThreadKey:{},terminalEventEntriesByKey:{},terminalSessionSnapshotByKey:{},terminalStreamCursorByKey:{},terminalPreviewUrlByThreadKey:{},nextTerminalEventId:1,setTerminalOpen:(e,n)=>t(e,e=>VK(e,n)),setTerminalHeight:(e,n)=>t(e,e=>Gqe(e,n)),splitTerminal:(e,n)=>t(e,e=>Kqe(e,n)),newTerminal:(e,n,r)=>t(e,e=>HK(e,n,r)),ensureTerminal:(e,n,r)=>t(e,e=>{let t=e;return e.terminalIds.includes(n)||(t=HK(t,n)),r?.active===!1&&(t={...t,activeTerminalId:e.activeTerminalId,activeTerminalGroupId:e.activeTerminalGroupId}),(r?.active??!0)&&(t=UK(t,n)),r?.open&&(t=VK(t,!0)),TK(t)}),setActiveTerminal:(e,n)=>t(e,e=>UK(e,n)),closeTerminal:(e,n)=>t(e,e=>qqe(e,n)),setTerminalLaunchContext:(t,n)=>e(e=>({terminalLaunchContextByThreadKey:{...e.terminalLaunchContextByThreadKey,[DK(t)]:n}})),clearTerminalLaunchContext:t=>e(e=>{let n=DK(t);if(!e.terminalLaunchContextByThreadKey[n])return e;let{[n]:r,...i}=e.terminalLaunchContextByThreadKey;return{terminalLaunchContextByThreadKey:i}}),setTerminalActivity:(e,n,r)=>t(e,e=>WK(e,n,r)),recordTerminalEvent:(t,n)=>e(e=>{let r=kK(t,n.terminalId),i=LK(n),a=n.type===`started`||n.type===`restarted`;if(RK(e.terminalStreamCursorByKey[r],i,a))return e;let o=a&&i?IK(e.terminalEventEntriesByKey,e.nextTerminalEventId,t,n):FK(e.terminalEventEntriesByKey,e.nextTerminalEventId,t,n),s=i?{...e.terminalStreamCursorByKey,[r]:i}:e.terminalStreamCursorByKey,c=NK(e.terminalPreviewUrlByThreadKey,t,MK(n));return n.type!==`started`&&n.type!==`restarted`?{...o,terminalStreamCursorByKey:s,terminalPreviewUrlByThreadKey:c}:{...o,terminalStreamCursorByKey:s,terminalPreviewUrlByThreadKey:c,terminalSessionSnapshotByKey:{...e.terminalSessionSnapshotByKey,[kK(t,n.terminalId)]:n.snapshot}}}),applyTerminalEvent:(t,n)=>e(e=>{let r=DK(t),i=kK(t,n.terminalId),a=LK(n),o=n.type===`started`||n.type===`restarted`;if(RK(e.terminalStreamCursorByKey[i],a,o))return e;let s=e.terminalStateByThreadKey,c=e.terminalLaunchContextByThreadKey,l=e.terminalSessionSnapshotByKey,u=NK(e.terminalPreviewUrlByThreadKey,t,MK(n));(n.type===`started`||n.type===`restarted`)&&(l={...l,[kK(t,n.terminalId)]:n.snapshot},s=KK(s,t,e=>{let t=e.activeTerminalId===n.terminalId,r=e;return e.terminalIds.includes(n.terminalId)||(r=HK(r,n.terminalId)),t?(r=UK(r,n.terminalId),r=VK(r,!0)):(r=UK(r,e.activeTerminalId),r=VK(r,e.terminalOpen)),TK(r)}),c={...c,[r]:Wqe(c[r],n)});let d=kqe(n);d!==null&&(s=KK(s,t,e=>WK(e,n.terminalId,d)));let f=o&&a?IK(e.terminalEventEntriesByKey,e.nextTerminalEventId,t,n):FK(e.terminalEventEntriesByKey,e.nextTerminalEventId,t,n),p=a?{...e.terminalStreamCursorByKey,[i]:a}:e.terminalStreamCursorByKey;return{terminalStateByThreadKey:s,terminalLaunchContextByThreadKey:c,terminalSessionSnapshotByKey:l,terminalStreamCursorByKey:p,terminalPreviewUrlByThreadKey:u,...f}}),setTerminalSessionSnapshot:(t,n)=>e(e=>({terminalSessionSnapshotByKey:{...e.terminalSessionSnapshotByKey,[kK(t,n.terminalId)]:n},terminalPreviewUrlByThreadKey:NK(e.terminalPreviewUrlByThreadKey,t,Hqe(n))})),clearTerminalState:t=>e(e=>{let n=DK(t),r=KK(e.terminalStateByThreadKey,t,()=>CK()),i=e.terminalLaunchContextByThreadKey[n]!==void 0,a=e.terminalPreviewUrlByThreadKey[n]!==void 0,{[n]:o,...s}=e.terminalLaunchContextByThreadKey,{[n]:c,...l}=e.terminalPreviewUrlByThreadKey,u={...e.terminalEventEntriesByKey},d=!1;for(let e of Object.keys(u))e.startsWith(`${n}\u0000`)&&(delete u[e],d=!0);let f={...e.terminalSessionSnapshotByKey},p=!1;for(let e of Object.keys(f))e.startsWith(`${n}\u0000`)&&(delete f[e],p=!0);let m=zK(e.terminalStreamCursorByKey,n);return r===e.terminalStateByThreadKey&&!i&&!a&&!d&&!p&&m===e.terminalStreamCursorByKey?e:{terminalStateByThreadKey:r,terminalLaunchContextByThreadKey:s,terminalPreviewUrlByThreadKey:l,terminalEventEntriesByKey:u,terminalSessionSnapshotByKey:f,terminalStreamCursorByKey:m}}),removeTerminalState:t=>e(e=>{let n=DK(t),r=e.terminalStateByThreadKey[n]!==void 0,i=e.terminalLaunchContextByThreadKey[n]!==void 0,a=e.terminalPreviewUrlByThreadKey[n]!==void 0,o={...e.terminalEventEntriesByKey},s=!1;for(let e of Object.keys(o))e.startsWith(`${n}\u0000`)&&(delete o[e],s=!0);let c={...e.terminalSessionSnapshotByKey},l=!1;for(let e of Object.keys(c))e.startsWith(`${n}\u0000`)&&(delete c[e],l=!0);let u=zK(e.terminalStreamCursorByKey,n);if(!r&&!i&&!a&&!s&&!l&&u===e.terminalStreamCursorByKey)return e;let d={...e.terminalStateByThreadKey};delete d[n];let f={...e.terminalLaunchContextByThreadKey};delete f[n];let p={...e.terminalPreviewUrlByThreadKey};return delete p[n],{terminalStateByThreadKey:d,terminalLaunchContextByThreadKey:f,terminalPreviewUrlByThreadKey:p,terminalEventEntriesByKey:o,terminalSessionSnapshotByKey:c,terminalStreamCursorByKey:u}}),removeOrphanedTerminalStates:t=>e(e=>{let n=Object.keys(e.terminalStateByThreadKey).filter(e=>!t.has(e)),r=Object.keys(e.terminalLaunchContextByThreadKey).filter(e=>!t.has(e)),i=Object.keys(e.terminalPreviewUrlByThreadKey).filter(e=>!t.has(e)),a={...e.terminalEventEntriesByKey},o=!1;for(let e of Object.keys(a)){let[n]=e.split(`\0`);n&&!t.has(n)&&(delete a[e],o=!0)}let s={...e.terminalSessionSnapshotByKey},c=!1;for(let e of Object.keys(s)){let[n]=e.split(`\0`);n&&!t.has(n)&&(delete s[e],c=!0)}let l={...e.terminalStreamCursorByKey},u=!1;for(let e of Object.keys(l)){let[n]=e.split(`\0`);n&&!t.has(n)&&(delete l[e],u=!0)}if(n.length===0&&r.length===0&&i.length===0&&!o&&!c&&!u)return e;let d={...e.terminalStateByThreadKey};for(let e of n)delete d[e];let f={...e.terminalLaunchContextByThreadKey};for(let e of r)delete f[e];let p={...e.terminalPreviewUrlByThreadKey};for(let e of i)delete p[e];return{terminalStateByThreadKey:d,terminalLaunchContextByThreadKey:f,terminalPreviewUrlByThreadKey:p,terminalEventEntriesByKey:a,terminalSessionSnapshotByKey:s,terminalStreamCursorByKey:l}})}},{name:Aqe,version:4,storage:XG(Nqe),migrate:Mqe,partialize:e=>({terminalStateByThreadKey:EK(e.terminalStateByThreadKey),terminalPreviewUrlByThreadKey:e.terminalPreviewUrlByThreadKey})}));function Qqe(e){return!!(e.prompt.trim()||e.images.length||e.terminalContexts.length||e.persistedAttachments.length||e.stagedSubmission)}function $qe(e,t,n){let r=li(t),i=li(n);if(r===i)return e;let a=e[r];if(!a)return e;let o=e[i];if(o&&Qqe(o)&&!eJe(a,o))return null;let s={...e,[i]:{...a,...cJe(a,o)}};return delete s[r],s}function eJe(e,t){let n=e.stagedSubmission;return!n||!tJe(n)||!nJe(e,n)||!rJe(n,t.stagedSubmission)?!1:iJe(e,t)}function tJe(e){return!!e.commandId&&!!e.messageId}function nJe(e,t){return[e.prompt===t.prompt,YK(e.persistedAttachments,t.attachments),YK(e.terminalContexts,t.terminalContexts)].every(Boolean)}function rJe(e,t){return!t||aJe(e,t)}function iJe(e,t){return[e.prompt===t.prompt,e.lastGeneratedPullRequestPrompt===t.lastGeneratedPullRequestPrompt,ZK(e.images,t.images),XK(e.nonPersistedImageIds,t.nonPersistedImageIds),e.nonPersistedImageIds.length===0,ZK(e.persistedAttachments,t.persistedAttachments),ZK(e.terminalContexts,t.terminalContexts),sJe(e.modelSelectionByProvider,t.modelSelectionByProvider),e.activeProvider===t.activeProvider,e.runtimeMode===t.runtimeMode,e.interactionMode===t.interactionMode].every(Boolean)}function aJe(e,t){return[e.commandId===t.commandId&&e.messageId===t.messageId,e.prompt===t.prompt,YK(e.attachments,t.attachments),YK(e.terminalContexts,t.terminalContexts),JK(e.modelSelection,t.modelSelection),JK(e.runtimeMode,t.runtimeMode),JK(e.interactionMode,t.interactionMode),oJe(e.executionIntent,t.executionIntent)].every(Boolean)}function JK(e,t){return e===void 0||t===void 0||JSON.stringify(e)===JSON.stringify(t)}function oJe(e,t){return!e||!t||e.runtimeId===t.runtimeId}function YK(e,t){return e.length===t.length&&e.every((e,n)=>e.id===t[n]?.id)}function XK(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}function ZK(e,t){return e.length===t.length&&e.every((e,n)=>JSON.stringify(e)===JSON.stringify(t[n]))}function sJe(e,t){let n=Object.keys(e).toSorted();return XK(n,Object.keys(t).toSorted())?n.every(n=>JSON.stringify(e[n])===JSON.stringify(t[n])):!1}function cJe(e,t){let n=t??e,r=e.stagedSubmission?e:n,i=e.stagedSubmission?n:e;return{modelSelectionByProvider:{...i.modelSelectionByProvider,...r.modelSelectionByProvider},activeProvider:r.activeProvider??i.activeProvider,runtimeMode:r.runtimeMode??i.runtimeMode,interactionMode:r.interactionMode??i.interactionMode}}var lJe=/\n*<terminal_context>\n([\s\S]*?)\n<\/terminal_context>\s*$/,uJe=/^\s*<cmmd_context>\n?([\s\S]*?)\n?<\/cmmd_context>\s*/;function QK(e){return e.replace(/\r\n/g,`
|
|
1011
|
+
`)}}}var aWe=(e=`/api/workspace/readiness`)=>{if(typeof fetch>`u`)return{close:()=>{}};let t=typeof e==`string`?{url:e}:e,n=!1,r=new AbortController;return fetch(t.url,{credentials:t.bearerToken?`omit`:`include`,signal:r.signal,...t.bearerToken?{headers:{Authorization:`Bearer ${t.bearerToken}`}}:{}}).then(e=>{if(e.ok)return iWe(e,t.environmentId,r.signal)}).catch(()=>{}),{close:()=>{n||(n=!0,r.abort())}}},oWe=6e4;function sWe(e){let t=new URL(e.target.httpBaseUrl);return t.pathname=`${t.pathname.endsWith(`/`)?t.pathname.slice(0,-1):t.pathname}/api/workspace/readiness`,t.search=``,t.hash=``,t.toString()}function cWe(e){let t=new Set,n=null,r=!1,i=!1;return{hasWaiters:()=>t.size>0,wait:()=>{if(r)return Promise.reject(n);if(i)return Promise.resolve();let a=null,o=null,s=new Promise((e,n)=>{o={resolve:e,reject:n},t.add(o)}),c=new Promise((t,n)=>{a=globalThis.setTimeout(()=>{n(Error(`Timed out while waiting for ${e.label} (${e.environmentId}) to stream its shell snapshot.`))},e.timeoutMs)});return Promise.race([s,c]).finally(()=>{a!==null&&globalThis.clearTimeout(a),o!==null&&t.delete(o)})},resolve:()=>{r=!1,n=null,i=!0;let e=[...t];t.clear();for(let t of e)t.resolve()},reject:e=>{r=!0,n=e,i=!1;let a=[...t];t.clear();for(let t of a)t.reject(e)},reset:()=>{r=!1,n=null,i=!1}}}function QU(e){let t=e.knownEnvironment.environmentId;if(!t)throw Error(`Known environment ${e.knownEnvironment.label} is missing its environmentId.`);let n=!1,r=!1,i=null,a=null,o=cWe({environmentId:t,label:e.knownEnvironment.label,timeoutMs:e.bootstrapTimeoutMs??oWe}),s=e.readiness?(e.readiness.openStream??aWe)({url:sWe(e.knownEnvironment),environmentId:t,...e.readiness.bearerToken?{bearerToken:e.readiness.bearerToken}:{}}):null,c=t=>{if(!r){r=!0;let n=Error(t);_(),e.client.dispose(),e.onIdentityMismatch?.(n)}return!1},l=(n,r)=>{if(e.tolerateReportedEnvironmentIdentity)return a===null?(a=n,!0):a===n||c(`Environment connection ${t} reported a changed runtime identity (${a} -> ${n}) via ${r}.`);let i=e.resolveEnvironmentId?.()??t;return i===n||c(`Environment connection ${i} changed identity to ${n} via ${r}.`)},u=()=>e.resolveEnvironmentId?.()??t,d=e.client.server.subscribeLifecycle(t=>{t.type===`welcome`&&l(t.payload.environment.environmentId,`server lifecycle welcome`)&&e.onWelcome?.(t.payload,u())}),f=e.client.server.subscribeConfig(t=>{if(t.type===`snapshot`){if(!l(t.config.environment.environmentId,`server config snapshot`))return;i=t.config,e.onConfigSnapshot?.(t.config);return}if(t.type!==`providerStatuses`||!i)return;let n={...i,providers:t.payload.providers};i=n,e.onConfigSnapshot?.(n)}),p=e.client.orchestration.subscribeShell(t=>{if(t.kind===`snapshot`){e.syncShellSnapshot(t.snapshot,u()),o.resolve();return}e.applyShellEvent(t,u())},{onResubscribe:()=>{n||o.reset()},onError:t=>{if(!n){if(o.hasWaiters()){o.reject(t);return}e.onShellSubscriptionError?.(t,u())}}}),m=e.client.terminal.onEvent(t=>{e.applyTerminalEvent(t,u())}),h=e.client.browser?.onEvent({},t=>{e.applyBrowserEvent(t,u())}),g=e.client.server.subscribeWorkspaceReadiness(e=>{n||A(async()=>{let{setWorkspaceReadinessPhaseForEnvironment:e}=await import(`./workspaceReadinessAtom-D6bgTvKb.js`).then(e=>e.r);return{setWorkspaceReadinessPhaseForEnvironment:e}},__vite__mapDeps([2,1,3,4])).then(({setWorkspaceReadinessPhaseForEnvironment:t})=>{n||t(u(),e)})}),_=()=>{n||(n=!0,e.onDispose?.(),s?.close(),p(),m(),h?.(),d(),f(),g())};return{kind:e.kind,environmentId:t,knownEnvironment:e.knownEnvironment,client:e.client,ensureBootstrapped:()=>o.wait(),reconnect:async()=>{o.reset();try{await e.client.reconnect(),await e.refreshMetadata?.(),await o.wait()}catch(e){throw o.reject(e),e}},...e.ensureProviderAuthority?{ensureProviderAuthority:e.ensureProviderAuthority}:{},dispose:async()=>{_(),await e.client.dispose()}}}var lWe=Le(`effect/http/FetchHttpClient/Fetch`,{defaultValue:()=>globalThis.fetch}),uWe=class extends Ke()(`effect/http/FetchHttpClient/RequestInit`){},dWe=Pre(ze(jre((e,t,n,r)=>{let i=r.getRef(lWe),a=r.context.mapUnsafe.get(uWe.key)??{},o=a.headers?Ct(Lt(a.headers),e.headers):e.headers,s=r=>Fe(_ee({try:()=>i(t,{...a,method:e.method,headers:o,body:r,duplex:e.body._tag===`Stream`?`half`:void 0,signal:n}),catch:t=>new en({reason:new Nte({request:e,cause:t})})}),t=>qte(e,t));switch(e.body._tag){case`Raw`:case`Uint8Array`:return s(e.body.body);case`FormData`:return s(e.body.formData);case`Stream`:return Je(Kee(e.body.stream),s)}return s(void 0)}))),fWe=Wee.pipe(h,tt(e=>{if(nn(e)&&e.reason._tag===`StatusCodeError`&&e.reason.response.status===429){let t=xe(e.reason.response.headers[`retry-after`]).pipe(qee(gre),f(()=>5));return ze(w(t))}return ze(w(1))})),pWe=Pe(function*(e){let t=yield*Fee(),n=Ve(t,hre),r=Ve(t,ve),a=Me(t),o=u(ye(e.exportInterval),aee),s,c=kre(Ve(t,qr)).pipe(Jr(ge(Zr,!1)),Mre({schedule:fWe,times:3})),d=zt({"user-agent":`effect-opentelemetry-${e.label}/0.0.0`});e.headers&&(d=Ct(Lt(e.headers),d));let f=bre(e.url,{headers:d}),p=[],m=Ze(()=>{if(s!==void 0&&n.currentTimeMillisUnsafe()<s)return He;s!==void 0&&(s=void 0);let t=p;if(e.maxBatchSize!==`disabled`){if(p.length===0)return He;p=[]}return c.execute(Gr(f,e.body(t))).pipe(tee,mee(!1))}).pipe(nee(e=>s===void 0?(s=n.currentTimeMillisUnsafe()+6e4,p=[],fee(`Disabling exporter for 60 seconds`,e)):He),l({package:`@effect/opentelemetry`,module:e.label}));return yield*Xee(r,m.pipe(Pee,xee,Oee(e.shutdownTimeout))),yield*i(o).pipe(Yee(m),gee,Hee(r)),{push(t){s===void 0&&(p.push(t),e.maxBatchSize!==`disabled`&&p.length>=e.maxBatchSize&&ie(a(m),r))}}}),mWe=e=>{let t=e.attributes?$U(Object.entries(e.attributes)):[];return t.push({key:`service.name`,value:{stringValue:e.serviceName}}),e.serviceVersion&&t.push({key:`service.version`,value:{stringValue:e.serviceVersion}}),{attributes:t,droppedAttributesCount:0}},hWe=Pe(function*(e){let t={...yield*fa(fn(qie(k,k)),`OTEL_RESOURCE_ATTRIBUTES`),...e?.attributes},n=e?.serviceName??t[`service.name`]??(yield*fa(k,`OTEL_SERVICE_NAME`));delete t[`service.name`];let r=e?.serviceVersion??t[`service.version`]??(yield*fa(fn(k),`OTEL_SERVICE_VERSION`));return delete t[`service.version`],mWe({serviceName:n,serviceVersion:r,attributes:t})},c),gWe=e=>{let t=e.attributes.find(e=>e.key===`service.name`);if(!t||!t.value.stringValue)throw Error(`Resource does not contain a service name`);return t.value.stringValue},$U=e=>{let t=[];for(let[n,r]of e)t.push({key:n,value:eW(r)});return t},eW=e=>{if(Array.isArray(e))return{arrayValue:{values:e.map(eW)}};switch(typeof e){case`string`:return{stringValue:e};case`bigint`:return{intValue:Number(e)};case`number`:return Number.isInteger(e)?{intValue:e}:{doubleValue:e};case`boolean`:return{boolValue:e};default:return{stringValue:jee(e)}}},tW=class extends Ke()(`effect/observability/OtlpSerialization`){},_We=oe(tW,{traces:e=>Bt(e),metrics:e=>Bt(e),logs:e=>Bt(e)}),vWe=Pe(function*(e){let t=yield*hWe(e.resource),n=yield*tW,r={name:gWe(t)},i=yield*pWe({label:`OtlpTracer`,url:e.url,headers:e.headers,exportInterval:e.exportInterval??w(5),maxBatchSize:e.maxBatchSize??1e3,body(e){let i={resourceSpans:[{resource:t,scopeSpans:[{scope:r,spans:e}]}]};return n.traces(i)},shutdownTimeout:e.shutdownTimeout??w(3)});function a(e){e.sampled&&i.push(xWe(e))}return le({span(e){return bWe({...e,status:{_tag:`Started`,startTime:e.startTime},attributes:new Map,export:a})},context:e.context?function(t,n){return n.currentSpan===void 0?t[`~effect/Effect/evaluate`](n):e.context(t,n.currentSpan)}:void 0})}),yWe={_tag:`Span`,end(e,t){this.status={_tag:`Ended`,startTime:this.status.startTime,endTime:e,exit:t},this.export(this)},attribute(e,t){this.attributes.set(e,t)},event(e,t,n){this.events.push([e,t,n])},addLinks(e){this.links.push(...e)}},bWe=e=>{let t=Object.assign(Object.create(yWe),e);return t.traceId=Tee(t.parent)?t.parent.value.traceId:nW(32),t.spanId=nW(16),t.events=[],t},nW=e=>{let t=``;for(let n=0;n<e;n++)t+=`0123456789abcdef`[Math.floor(Math.random()*16)];return t},xWe=e=>{let t=e.status,n=$U(e.attributes.entries()),r=e.events.map(([e,t,n])=>({name:e,timeUnixNano:String(t),attributes:n?$U(Object.entries(n)):[],droppedAttributesCount:0})),i;if(t.exit._tag===`Success`)i=CWe;else if(bee(t.exit.cause))i={code:rW.Ok,message:`Interrupted`},n.push({key:`span.label`,value:{stringValue:`⚠︎ Interrupted`}},{key:`status.interrupted`,value:{boolValue:!0}});else{let e=$e(t.exit.cause);if(i={code:rW.Error},e.length>0){i.message=e[0].message;for(let n of e)r.push({name:`exception`,timeUnixNano:String(t.endTime),droppedAttributesCount:0,attributes:[{key:`exception.type`,value:{stringValue:n.name}},{key:`exception.message`,value:{stringValue:n.message}},{key:`exception.stacktrace`,value:{stringValue:n.stack??`No stack trace available`}}]})}}return{traceId:e.traceId,spanId:e.spanId,parentSpanId:ue(e.parent,{onNone:()=>void 0,onSome:e=>e.spanId}),name:e.name,kind:SWe[e.kind],startTimeUnixNano:String(t.startTime),endTimeUnixNano:String(t.endTime),attributes:n,droppedAttributesCount:0,events:r,droppedEventsCount:0,status:i,links:e.links.map(e=>({traceId:e.span.traceId,spanId:e.span.spanId,attributes:$U(Object.entries(e.attributes)),droppedAttributesCount:0})),droppedLinksCount:0}},rW={Unset:0,Ok:1,Error:2},SWe={unspecified:0,internal:1,server:2,client:3,producer:4,consumer:5},CWe={code:rW.Ok},wWe=1e4,TWe={serviceName:`forge-web`,attributes:{"service.runtime":`forge-web`,"service.mode":Vn?`electron`:`browser`,"service.version":Ti}},EWe=he(dWe,_We,oe(Xr,()=>!0)),iW=null,aW=null,oW=null,sW=null,cW=0,lW=Promise.resolve(),DWe=oe(wee,le({span(e){return iW?.span(e)??new s(e)}}));function OWe(e={}){return e.exportIntervalMs===void 0&&sW!==null||(lW=lW.finally(()=>kWe(e))),lW}async function kWe(e){let t=hn(`/api/observability/v1/traces`),n=bn()?.bearerToken,r=Math.max(10,e.exportIntervalMs??wWe),i=`${t}|${r}|${n?`bearer`:`cookie`}`;if(sW===i&&iW!==null)return;sW=i;let a=++cW,o=aW,s=oW;iW=null,aW=null,oW=null,await uW(o,s);let c=mi(EWe),l=c.runSync(De());try{let e=await c.runPromise(b(l)(vWe({url:t,...n?{headers:{Authorization:`Bearer ${n}`}}:{},exportInterval:`${r} millis`,resource:TWe})));if(a!==cW){await uW(c,l);return}iW=e,aW=c,oW=l}catch(e){await uW(c,l),a===cW&&console.warn(`Failed to configure client tracing exporter`,{error:AWe(e),otlpTracesUrl:t})}}async function uW(e,t){e!==null&&t!==null&&await e.runPromise(Ae(t,Ye)).catch(()=>void 0).finally(()=>{e.dispose()})}function AWe(e){return e instanceof Error&&e.message.trim().length>0?e.message:String(e)}var dW=15e3,fW=new Map,pW=at([]).pipe(it,nt(`slow-rpc-ack-requests`));function mW(e){rt.set(pW,[...e])}function hW(){return rt.get(pW)}var gW=`global`;function jWe(e){return!(e.split(`.`).at(-1)??e).startsWith(`subscribe`)}function MWe(e,t,n=gW){if(!jWe(t))return;yW(e,n),IWe();let r=Date.now(),i={clientId:n,requestId:e,startedAt:new Date(r).toISOString(),startedAtMs:r,tag:t,thresholdMs:dW},a=vW(n,e),o=setTimeout(()=>{fW.delete(a),FWe(i)},dW);fW.set(a,{request:i,timeoutId:o})}function NWe(e,t=gW){yW(e,t);let n=hW();n.some(n=>n.clientId===t&&n.requestId===e)&&mW(n.filter(n=>n.clientId!==t||n.requestId!==e))}function _W(e){for(let[t,n]of fW)n.request.clientId===e&&(clearTimeout(n.timeoutId),fW.delete(t));mW(hW().filter(t=>t.clientId!==e))}function PWe(){for(let e of fW.values())clearTimeout(e.timeoutId);fW.clear(),mW([])}function vW(e,t){return`${e}:${t}`}function yW(e,t){let n=vW(t,e),r=fW.get(n);r&&(clearTimeout(r.timeoutId),fW.delete(n))}function FWe(e){let t=[...hW(),e];if(t.length<=256){mW(t);return}mW(t.slice(-256))}function IWe(){for(;fW.size>=256;){let e=fW.keys().next().value;if(e===void 0)return;let t=fW.get(e);if(!t)return;yW(t.request.requestId,t.request.clientId)}}function LWe(){return Sn(pW)}var RWe=ine(Fte),bW=1;function zWe(e){return e instanceof Error&&e.message.trim().length>0?e.message:String(e)}function xW(e){let t=new URL(e);if(t.protocol!==`ws:`&&t.protocol!==`wss:`)throw Error(`Unsupported websocket transport URL protocol: ${t.protocol}`);return t.pathname=`/ws`,t.toString()}function BWe(){return{onAttempt:Cne,onOpen:Zte,onError:e=>{Qte(e)},onClose:e=>{one(e)},trackGlobalConnection:!0}}function VWe(e){let t=BWe(),n=e?.trackGlobalConnection??!0;return{onAttempt:r=>{n&&t.onAttempt(r),e?.onAttempt?.(r)},onOpen:()=>{n&&t.onOpen(),e?.onOpen?.()},onError:r=>{n&&t.onError(r),e?.onError?.(r)},onClose:r=>{n&&t.onClose(r),e?.onClose?.(r)},trackGlobalConnection:n}}function HWe(e,t){let n=bW;bW+=1;let r=VWe(t),i=typeof e==`function`?Ge(()=>e()).pipe(Fe(e=>xW(e)),Bee(e=>Ue(()=>{r.onError(zWe(e))})),c):xW(e),a=oe(xne,(e,t)=>{r.onAttempt(e);let n=new globalThis.WebSocket(e,t);return n.addEventListener(`open`,()=>{r.onOpen()},{once:!0}),n.addEventListener(`error`,()=>{r.onError(`Unable to connect to the Forge server WebSocket.`)},{once:!0}),n.addEventListener(`close`,e=>{r.onClose({code:e.code,reason:e.reason})},{once:!0}),n}),o=_ne(i).pipe(y(a)),s=tt(p(fne),e=>ze(je(Xte(e)??0)));return We(dne,Fe(Jte({retryPolicy:s,retryTransientErrors:!0}),e=>({...e,run:(t,r)=>{let i=`${n}:${String(t)}`;return e.run(t,e=>(e._tag===`Chunk`||e._tag===`Exit`?NWe(e.requestId,i):(e._tag===`ClientProtocolError`||e._tag===`Defect`)&&_W(i),r(e))).pipe(lee(Ue(()=>{_W(i)})))},send:(t,r,i)=>{let a=`${n}:${String(t)}`;return r._tag===`Request`&&MWe(r.id,r.tag,a),e.send(t,r,i)}}))).pipe(y(he(o,hne)))}var UWe=/^all fibers interrupted without error$/i;function WWe(e){return SV(e)||UWe.test(e.trim())}var GWe=je(250),SW=()=>void 0,CW=class extends Error{name=`WsRequestTimeoutError`;timeoutMs;constructor(e){let t=Oe(ye(e));super(`WebSocket RPC request timed out after ${t}ms.`),this.timeoutMs=t}},KWe=new Set([`OrchestrationGetSnapshotError`]);function qWe(e){if(typeof e!=`object`||!e)return!1;let t=e._tag;return typeof t==`string`&&KWe.has(t)}function JWe(e){let t=e instanceof Error?e.message.trim():``;return t.length>0?t:typeof e==`object`&&e?YWe(e):String(e)}function YWe(e){try{return JSON.stringify(e)}catch{let t=e;return[typeof t._tag==`string`?t._tag:void 0,typeof t.message==`string`?t.message:void 0].filter(Boolean).join(`: `)||Object.prototype.toString.call(e)}}var XWe=4e3,ZWe=1e4,QWe=500,wW=class{url;lifecycleHandlers;disposed=!1;hasReportedTransportDisconnect=!1;reconnectChain=Promise.resolve();session;heartbeatTimer=null;heartbeatInFlight=!1;protocol;timing;constructor(e,t,n,r){this.url=e,this.lifecycleHandlers=t,this.protocol=n??null,this.timing={heartbeatIntervalMs:r?.heartbeatIntervalMs??XWe,heartbeatTimeoutMs:r?.heartbeatTimeoutMs??ZWe,sessionCloseGraceMs:r?.sessionCloseGraceMs??QWe},this.session=this.createSession(),this.startHeartbeat()}startHeartbeat(){this.heartbeatTimer===null&&(this.heartbeatTimer=setInterval(()=>{if(this.disposed||this.heartbeatInFlight)return;this.heartbeatInFlight=!0;let e=this.session;this.request(e=>e[O.serverHeartbeat]({}),{timeout:this.timing.heartbeatTimeoutMs}).catch(async()=>{this.disposed||e!==this.session||await this.reconnect()}).finally(()=>{this.heartbeatInFlight=!1})},this.timing.heartbeatIntervalMs))}async request(e,t){if(this.disposed)throw Error(`Transport disposed`);let n=this.session,i=await n.clientPromise,a=Ze(()=>e(i)),o=t?.timeout,s=o===void 0?a:a.pipe(Vee({duration:o,orElse:()=>r(new CW(o))}));return await n.runtime.runPromise(s,{signal:t?.signal})}async requestStream(e,t,n){if(this.disposed)throw Error(`Transport disposed`);let r=this.session,i=this.runStreamOnSession(r,e,t,()=>!0,()=>void 0),a=()=>i.cancel();n?.signal?.aborted&&a(),n?.signal?.addEventListener(`abort`,a,{once:!0});try{await i.completed}catch(e){if(n?.signal?.aborted){let e=Error(`RPC stream request was cancelled.`);throw e.name=`AbortError`,e}throw e}finally{n?.signal?.removeEventListener(`abort`,a)}}subscribe(e,t,n){if(this.disposed)return()=>void 0;let r={active:!0,hasReceivedValue:!1,cancelCurrentStream:SW},i=Oe(ye(n?.retryDelay??GWe));return this.runSubscriptionLoop(e,t,n,r,i),()=>{r.active=!1,r.cancelCurrentStream()}}async runSubscriptionLoop(e,t,n,r,i){for(;r.active&&!this.disposed;){let a=this.session;try{this.notifyResubscribe(r,n);let i=this.startSubscriptionStream(a,e,t,r);r.cancelCurrentStream=i.cancel,await i.completed,r.cancelCurrentStream=SW}catch(e){if(r.cancelCurrentStream=SW,!await this.handleSubscriptionFailure(e,a,r,n,i))return}}}notifyResubscribe(e,t){if(e.hasReceivedValue)try{t?.onResubscribe?.()}catch{}}startSubscriptionStream(e,t,n,r){return this.runStreamOnSession(e,t,n,()=>r.active,()=>{this.hasReportedTransportDisconnect=!1,r.hasReceivedValue=!0})}async handleSubscriptionFailure(e,t,n,r,i){if(!n.active||this.disposed)return!1;if(t!==this.session)return!0;let a=JWe(e);return WWe(a)?(this.hasReportedTransportDisconnect||console.warn(`WebSocket RPC subscription disconnected`,{error:a}),this.hasReportedTransportDisconnect=!0,await $We(i),!0):(this.reportNonTransportSubscriptionError(e,r),!1)}reportNonTransportSubscriptionError(e,t){qWe(e)||NV(e,{route:`ws-subscribe`,reason:`non-transport-error`}),t?.onError?.(e)}async reconnect(){if(this.disposed)throw Error(`Transport disposed`);let e=this.reconnectChain.then(async()=>{if(this.disposed)throw Error(`Transport disposed`);let e=this.session;this.session=this.createSession(),await this.closeSession(e)});this.reconnectChain=e.catch(e=>{NV(e,{route:`ws-reconnect`})}),await e}async dispose(){this.disposed||(this.disposed=!0,this.heartbeatTimer!==null&&this.heartbeatTimer!==void 0&&(clearInterval(this.heartbeatTimer),this.heartbeatTimer=null),await this.closeSession(this.session))}async closeSession(e){let t=e.runtime.runPromise(Ae(e.clientScope,Ye)),n=!1,r=null,i=new Promise(e=>{r=setTimeout(()=>{n=!0,e()},this.timing.sessionCloseGraceMs)});try{await Promise.race([t,i])}finally{r!==null&&clearTimeout(r),n&&(console.warn(`WebSocket session close exceeded its grace period; forcing disposal`,{graceMs:this.timing.sessionCloseGraceMs}),t.catch(()=>void 0)),await e.runtime.dispose()}}createSession(){let e=this.protocol??{layer:HWe(this.url,this.lifecycleHandlers),makeClient:RWe},t=mi(he(e.layer,DWe)),n=t.runSync(De());return{runtime:t,clientScope:n,clientPromise:t.runPromise(b(n)(e.makeClient))}}runStreamOnSession(e,t,n,r,i){let a,o,s=new Promise((e,t)=>{a=e,o=t});return{cancel:e.runtime.runCallback(Ge(()=>e.clientPromise).pipe(Je(e=>kee(t(e),e=>Ue(()=>{if(r()){i();try{n(e)}catch{}}})))),{onExit:e=>{if(Ree(e)){a();return}o(we(e.cause))}}),completed:s}}};function $We(e){return new Promise(t=>{setTimeout(t,e)})}var TW=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,eGe=/^[A-Za-z0-9_-]+$/;function tGe(e){let t=``;for(let n=0;n<e.byteLength;n+=3){let r=e[n]??0,i=e[n+1]??0,a=e[n+2]??0,o=r<<16|i<<8|a;t+=TW[o>>>18&63],t+=TW[o>>>12&63],n+1<e.byteLength&&(t+=TW[o>>>6&63]),n+2<e.byteLength&&(t+=TW[o&63])}return t.replaceAll(`+`,`-`).replaceAll(`/`,`_`)}function nGe(e){if(e.length===0||!eGe.test(e))throw Error(`Bulk transfer chunk is not valid base64url data.`);let t=e.replaceAll(`-`,`+`).replaceAll(`_`,`/`),n=Math.floor(t.length*6/8),r=new Uint8Array(n),i=0,a=0,o=0;for(let e of t){let t=TW.indexOf(e);if(t<0)throw Error(`Bulk transfer chunk is not valid base64url data.`);i=i<<6|t,a+=6,a>=8&&(a-=8,r[o]=i>>>a&255,o+=1)}return r}async function EW(e){let t=new Uint8Array(e.byteLength);t.set(e);let n=await crypto.subtle.digest(`SHA-256`,t.buffer);return Array.from(new Uint8Array(n),e=>e.toString(16).padStart(2,`0`)).join(``)}async function rGe(e,t){let n=t?.chunkBytes??262144;if(!Number.isSafeInteger(n)||n<1||n>262144)throw Error(`Bulk transfer chunk size must be between 1 and ${Ete}.`);let r=t?.transferId??crypto.randomUUID().replaceAll(`-`,`_`),i=[];for(let t=0;t<e.byteLength;t+=n){let a=e.slice(t,Math.min(t+n,e.byteLength));i.push({kind:`chunk`,transferId:r,offset:t,bytes:a.byteLength,data:tGe(a),sha256:await EW(a)})}return{totalBytes:e.byteLength,sha256:await EW(e),chunks:i}}async function iGe(e){let t=nGe(e.data);if(t.byteLength!==e.bytes)throw Error(`Bulk transfer chunk byte count mismatch at offset ${e.offset}: expected ${e.bytes}, received ${t.byteLength}.`);if(await EW(t)!==e.sha256)throw Error(`Bulk transfer chunk integrity mismatch at offset ${e.offset}.`);return t}async function aGe(e){let t=new Map,n=[],r=0;for(let i of e.chunks){let e=t.get(i.offset);if(e!==void 0){if(e.bytes!==i.bytes||e.sha256!==i.sha256||e.data!==i.data)throw Error(`Bulk transfer has a conflicting duplicate chunk at offset ${i.offset}.`);continue}if(i.offset!==r)throw Error(`Bulk transfer chunk offset mismatch: expected ${r}, received ${i.offset}.`);let a=await iGe(i);t.set(i.offset,i),n.push({chunk:i,bytes:a}),r+=a.byteLength}if(r!==e.totalBytes)throw Error(`Bulk transfer total byte count mismatch: expected ${e.totalBytes}, received ${r}.`);let i=new Uint8Array(e.totalBytes);for(let e of n)i.set(e.bytes,e.chunk.offset);if(await EW(i)!==e.sha256)throw Error(`Bulk transfer payload integrity mismatch.`);return i}var DW=`forge`,oGe=RegExp(`^(?:${DW}|t3code)\\/(?:[0-9a-f]{8}|[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12})$`);function sGe(){return`${DW}/${re($ee).replace(/-/g,``).slice(0,8).toLowerCase()}`}function cGe(e){return oGe.test(e.trim().toLowerCase())}function lGe(e){let t=e.trim().replace(/\/+$/g,``).replace(/\.git$/i,``).toLowerCase();if(/^(?:ssh|https?|git):\/\//i.test(t))try{let e=new URL(t),n=e.pathname.split(`/`).filter(e=>e.length>0).join(`/`);if(e.hostname&&n.includes(`/`))return`${e.hostname}/${n}`}catch{return t}let n=/^git@([^:/\s]+)[:/]([^/\s]+(?:\/[^/\s]+)+)$/i.exec(t);return n?.[1]&&n[2]?`${n[1]}/${n[2]}`:t}function uGe(e){let t=e?.trim()??``;if(t.length===0)return null;let n=/^(?:git@github\.com:|ssh:\/\/git@github\.com\/|https:\/\/github\.com\/|git:\/\/github\.com\/)([^/\s]+\/[^/\s]+?)(?:\.git)?\/?$/i.exec(t)?.[1]?.trim()??``;return n.length>0?n:null}function dGe(e){let t=e.trim();if(t.length===0)return null;if(t.startsWith(`git@`)){let e=t.slice(4),n=e.search(/[:/]/);return n<=0?null:e.slice(0,n).toLowerCase()}try{return new URL(t).hostname.toLowerCase()}catch{return null}}function OW(e){return`https://${e}`}function fGe(e){return e===`github.com`||e.includes(`github`)}function pGe(e){return e===`gitlab.com`||e.includes(`gitlab`)}function mGe(e){return e===`bitbucket.org`}function hGe(e){return e===`dev.azure.com`||e===`ssh.dev.azure.com`||e===`vs-ssh.visualstudio.com`||e.endsWith(`.visualstudio.com`)}function gGe(e){let t=dGe(e);if(!t)return null;let n=lGe(e),r=`${t}/`;if(!n.startsWith(r))return null;let i=n.slice(r.length);return i.includes(`/`)?fGe(t)?{kind:`github`,name:t===`github.com`?`GitHub`:`GitHub Self-Hosted`,host:t,repositoryPath:i,baseUrl:OW(t)}:pGe(t)?{kind:`gitlab`,name:t===`gitlab.com`?`GitLab`:`GitLab Self-Hosted`,host:t,repositoryPath:i,baseUrl:OW(t)}:mGe(t)?{kind:`bitbucket`,name:`Bitbucket Cloud`,host:t,repositoryPath:i,baseUrl:OW(t)}:hGe(t)?{kind:`azure-devops`,name:`Azure DevOps`,host:t,repositoryPath:i,baseUrl:OW(t)}:{kind:`unknown`,name:t,host:t,repositoryPath:i,baseUrl:OW(t)}:null}var _Ge={hasUpstream:!1,aheadCount:0,behindCount:0,pr:null,defaultBranch:null,diffVsBase:null};function kW(e,t){return{...e,...t??_Ge}}function vGe(e){return{hasUpstream:e.hasUpstream,aheadCount:e.aheadCount,behindCount:e.behindCount,pr:e.pr,defaultBranch:e.defaultBranch,diffVsBase:e.diffVsBase}}function yGe(e){return{isRepo:e.isRepo,...e.hostingProvider?{hostingProvider:e.hostingProvider}:{},hasOriginRemote:e.hasOriginRemote,isDefaultBranch:e.isDefaultBranch,branch:e.branch,hasWorkingTreeChanges:e.hasWorkingTreeChanges,workingTree:e.workingTree}}function bGe(e,t){switch(t._tag){case`snapshot`:return kW(t.local,t.remote);case`localUpdated`:return kW(t.local,e?vGe(e):null);case`remoteUpdated`:return kW(e===null?{isRepo:!0,hasOriginRemote:!1,isDefaultBranch:!1,branch:null,hasWorkingTreeChanges:!1,workingTree:{files:[],insertions:0,deletions:0}}:yGe(e),t.remote)}}var xGe=262144,SGe=250;function CGe(e){if(e instanceof Error)return e.message;try{return JSON.stringify(e)}catch{return String(e)}}function wGe(e){return new Promise(t=>setTimeout(t,e))}function TGe(e){let t=crypto.randomUUID(),n=ene({controllerId:t,maxPendingWriteBytes:xGe}),r=!1,i=e=>{if(!e.sessionEpoch)throw Error(`Connected Forge runtime does not support epoch-fenced terminal controls.`);n.register({threadId:e.threadId,terminalId:e.terminalId,sessionEpoch:e.sessionEpoch})},a=async e=>{for(;!r;)try{return await e()}catch(e){if(!SV(CGe(e)))throw e;await wGe(SGe)}throw Error(`Terminal control client was disposed before acknowledgement.`)};return{terminal:{open:async t=>{let n=await e.request(e=>e[O.terminalOpen]({...t,terminalId:t.terminalId??`default`}));return i(n),n},write:async t=>{let r=t.terminalId??`default`;await n.enqueue({threadId:t.threadId,terminalId:r,writeBytes:new TextEncoder().encode(t.data).byteLength,execute:n=>a(()=>e.request(e=>e[O.terminalWrite]({...t,terminalId:r,...n})))})},resize:async t=>{let r=t.terminalId??`default`;await n.enqueue({threadId:t.threadId,terminalId:r,execute:n=>a(()=>e.request(e=>e[O.terminalResize]({...t,terminalId:r,...n})))})},signal:async t=>{let r=t.terminalId??`default`;await n.enqueue({threadId:t.threadId,terminalId:r,execute:n=>a(()=>e.request(e=>e[O.terminalSignal]({...t,terminalId:r,...n})))})},clear:async t=>{let r=t.terminalId??`default`;await n.enqueue({threadId:t.threadId,terminalId:r,execute:n=>a(()=>e.request(e=>e[O.terminalClear]({...t,terminalId:r,...n})))})},restart:async t=>{let r=t.terminalId??`default`,o=null;if(await n.enqueue({threadId:t.threadId,terminalId:r,execute:async n=>{o=(await a(()=>e.request(e=>e[O.terminalRestart]({...t,terminalId:r,...n})))).snapshot}}),o===null)throw Error(`Terminal restart completed without a snapshot.`);return i(o),o},close:async t=>{let r=t.terminalId?[t.terminalId]:n.terminalIds(t.threadId);for(let i of r)await n.enqueue({threadId:t.threadId,terminalId:i,execute:n=>a(()=>e.request(e=>e[O.terminalClose]({...t,terminalId:i,...n})))}),n.remove(t.threadId,i)},onEvent:t=>e.subscribe(e=>e[O.subscribeTerminalEvents]({}),e=>{(e.type===`started`||e.type===`restarted`)&&i(e.snapshot),t(e)})},dispose:()=>{r=!0,n.dispose()}}}function EGe(e){return{createUploadUrl:t=>e.request(e=>e[O.attachmentsCreateUploadUrl](t)),delete:t=>e.request(e=>e[O.attachmentsDelete](t))}}async function DGe(e,t){await e.request(e=>e[O.workspaceCancelWriteFile]({transferId:t})).catch(()=>void 0)}var OGe=2e4,kGe=12e4,AGe=3e5;function jGe(e){return e instanceof CW||SV(e instanceof Error?e.message:String(e))}async function MGe(e,t){let n=t.type===`thread.turn.start`&&t.bootstrap!==void 0?AGe:OGe,r=()=>e.request(e=>e[on.dispatchCommand](t),{timeout:n});try{return await r()}catch(t){if(!jGe(t))throw t;return await e.reconnect(),await r()}}function AW(e){if(!e?.aborted)return;let t=Error(`Bulk transfer was cancelled.`);throw t.name=`AbortError`,t}async function jW(e,t,n){let r={started:null,completed:null,chunks:[],protocolError:null,receivedBytes:0};if(await e.requestStream(t,e=>NGe(r,e,n),n),r.protocolError!==null)throw r.protocolError;let i=r.started,a=r.completed;if(i===null||a===null)throw Error(`Bulk transfer stream completed without start and completion metadata.`);if(a.transferId!==i.transferId||a.totalBytes!==i.totalBytes||a.sha256!==i.sha256)throw Error(`Bulk transfer completion metadata mismatch.`);return await aGe({totalBytes:i.totalBytes,sha256:i.sha256,chunks:r.chunks})}function NGe(e,t,n){if(e.protocolError===null){if(t.kind===`started`){PGe(e,t,n);return}if(e.started===null||t.transferId!==e.started.transferId){e.protocolError=Error(`Bulk transfer event identity mismatch.`);return}if(t.kind===`chunk`){FGe(e,t,n);return}e.completed=t,n?.onProgress?.({completedBytes:t.totalBytes,totalBytes:t.totalBytes})}}function PGe(e,t,n){if(e.started!==null||t.totalBytes>16777216){e.protocolError=Error(`Bulk transfer started with invalid or oversized metadata.`);return}e.started=t,n?.onProgress?.({completedBytes:0,totalBytes:t.totalBytes})}function FGe(e,t,n){let r=e.started;if(r!==null){if(e.receivedBytes+=t.bytes,e.receivedBytes>r.totalBytes){e.protocolError=Error(`Bulk transfer exceeded its declared byte count.`);return}e.chunks.push(t),n?.onProgress?.({completedBytes:e.receivedBytes,totalBytes:r.totalBytes})}}async function IGe(e,t,n){let r=new TextEncoder().encode(t.contents);if(r.byteLength>16777216)throw Error(`Project file exceeds the ${dte}-byte write limit.`);let i=await rGe(r),a=i.chunks[0]?.transferId??crypto.randomUUID().replaceAll(`-`,`_`),o=!1;try{AW(n?.signal);let r=await LGe(e,t,a,i);return o=!0,n?.onProgress?.({completedBytes:r.nextOffset,totalBytes:i.totalBytes}),await RGe(e,a,i,r,n),{relativePath:t.relativePath}}catch(t){throw o&&await DGe(e,a),t}}function LGe(e,t,n,r){return e.request(e=>e[O.workspaceBeginWriteFile]({transferId:n,cwd:t.cwd,relativePath:t.relativePath,totalBytes:r.totalBytes,sha256:r.sha256}))}async function RGe(e,t,n,r,i){if(r.state!==`completed`){for(let t of n.chunks){if(t.offset<r.nextOffset)continue;AW(i?.signal);let{kind:a,...o}=t,s=await e.request(e=>e[O.workspaceWriteFileChunk](o));i?.onProgress?.({completedBytes:s.nextOffset,totalBytes:n.totalBytes})}AW(i?.signal),await e.request(e=>e[O.workspaceCommitWriteFile]({transferId:t}))}}function MW(e){let t=TGe(e);return{dispose:()=>(t.dispose(),e.dispose()),reconnect:async()=>{rne(),await e.reconnect()},terminal:t.terminal,browser:{openSession:t=>e.request(e=>e[O.browserOpenSession](t)),listSessions:t=>e.request(e=>e[O.browserListSessions](t)),closeSession:t=>e.request(e=>e[O.browserCloseSession](t)),getSession:t=>e.request(e=>e[O.browserGetSession](t)),command:t=>e.request(e=>e[O.browserCommand](t)),clearBrowsingData:t=>e.request(e=>e[O.browserClearBrowsingData](t)),attachDisplay:t=>e.request(e=>e[O.browserAttachDisplay](t)),addDisplayIceCandidate:t=>e.request(e=>e[O.browserAddDisplayIceCandidate](t)),onEvent:(t,n,r)=>e.subscribe(e=>e[O.subscribeBrowserEvents](t),n,r)},computer:{input:t=>e.request(e=>e[O.computerInput](t))},threadDevRuntime:{get:t=>e.request(e=>e[O.threadDevRuntimeGet](t)),allocatePort:t=>e.request(e=>e[O.threadDevRuntimeAllocatePort](t)),release:t=>e.request(e=>e[O.threadDevRuntimeRelease](t))},devTunnel:{register:t=>e.request(e=>e[O.devTunnelRegister](t)),unregister:t=>e.request(e=>e[O.devTunnelUnregister](t)),list:t=>e.request(e=>e[O.devTunnelList](t))},attachments:EGe(e),projects:{searchContents:(t,n)=>e.request(e=>e[O.projectsSearchContents](t),n),searchEntries:t=>e.request(e=>e[O.projectsSearchEntries](t)),readFile:(t,n)=>jW(e,e=>e[O.workspaceReadFile](t),n),writeFile:(t,n)=>IGe(e,t,n)},projectCheckoutDeletion:{preview:t=>e.request(e=>e[O.projectCheckoutDeletionPreview](t)),execute:t=>e.request(e=>e[O.projectCheckoutDeletionExecute](t))},workspace:{environmentPreflight:t=>e.request(e=>e[O.workspaceEnvironmentPreflight](t)),ensureScratch:t=>e.request(e=>e[O.workspaceEnsureScratch](t))},shell:{openInEditor:t=>e.request(e=>e[O.shellOpenInEditor](t))},git:{pull:t=>e.request(e=>e[O.gitPull](t)),refreshStatus:t=>e.request(e=>e[O.gitRefreshStatus](t)),onStatus:(t,n,r)=>{let i=null;return e.subscribe(e=>e[O.subscribeGitStatus](t),e=>{i=bGe(i,e),n(i)},r)},runStackedAction:async(t,n)=>{let r=null;if(await e.requestStream(e=>e[O.gitRunStackedAction](t),e=>{n?.onProgress?.(e),e.kind===`action_finished`&&(r=e.result)}),r)return r;throw Error(`Git action stream completed without a final result.`)},listBranches:t=>e.request(e=>e[O.gitListBranches](t)),createWorktree:t=>e.request(e=>e[O.gitCreateWorktree](t)),removeWorktree:t=>e.request(e=>e[O.gitRemoveWorktree](t)),createBranch:t=>e.request(e=>e[O.gitCreateBranch](t)),checkout:t=>e.request(e=>e[O.gitCheckout](t)),init:t=>e.request(e=>e[O.gitInit](t)),resolvePullRequest:t=>e.request(e=>e[O.gitResolvePullRequest](t)),preparePullRequestThread:t=>e.request(e=>e[O.gitPreparePullRequestThread](t))},pullRequests:{list:t=>e.request(e=>e[O.pullRequestsList](t)),listStats:t=>e.request(e=>e[O.pullRequestsListStats](t)),detail:t=>e.request(e=>e[O.pullRequestsDetail](t)),activity:t=>e.request(e=>e[O.pullRequestsActivity](t)),threadComments:t=>e.request(e=>e[O.pullRequestsThreadComments](t)),diffFileContents:t=>e.request(e=>e[O.pullRequestsDiffFileContents](t)),runAction:t=>e.request(e=>e[O.pullRequestsRunAction](t)),update:t=>e.request(e=>e[O.pullRequestsUpdate](t)),comment:t=>e.request(e=>e[O.pullRequestsComment](t)),updateComment:t=>e.request(e=>e[O.pullRequestsUpdateComment](t)),submitReview:t=>e.request(e=>e[O.pullRequestsSubmitReview](t)),replyToThread:t=>e.request(e=>e[O.pullRequestsReplyToThread](t)),setThreadResolution:t=>e.request(e=>e[O.pullRequestsSetThreadResolution](t)),setReaction:t=>e.request(e=>e[O.pullRequestsSetReaction](t)),invalidate:t=>e.request(e=>e[O.pullRequestsInvalidate](t)),reviewerCandidates:t=>e.request(e=>e[O.pullRequestsReviewerCandidates](t)),requestReviewers:t=>e.request(e=>e[O.pullRequestsRequestReviewers](t))},server:{getConfig:()=>e.request(e=>e[O.serverGetConfig]({})),refreshProviders:()=>e.request(e=>e[O.serverRefreshProviders]({})),startProviderAuth:t=>e.request(e=>e[O.serverStartProviderAuth](t)),repairProviderAuthRuntime:t=>e.request(e=>e[O.serverRepairProviderAuthRuntime](t)),disconnectProviderAuth:t=>e.request(e=>e[O.serverDisconnectProviderAuth](t)),getProviderAuthSession:t=>e.request(e=>e[O.serverGetProviderAuthSession](t)),cancelProviderAuth:t=>e.request(e=>e[O.serverCancelProviderAuth](t)),submitProviderAuthCode:t=>e.request(e=>e[O.serverSubmitProviderAuthCode](t)),syncPersonalCodexToCloud:t=>e.request(e=>e[O.serverSyncPersonalCodexToCloud](t)),syncPersonalClaudeToCloud:t=>e.request(e=>e[O.serverSyncPersonalClaudeToCloud](t)),upsertKeybinding:t=>e.request(e=>e[O.serverUpsertKeybinding](t)),removeKeybinding:t=>e.request(e=>e[O.serverRemoveKeybinding](t)),getSettings:()=>e.request(e=>e[O.serverGetSettings]({})),updateSettings:t=>e.request(e=>e[O.serverUpdateSettings]({patch:t})),updateEnvironmentDisplayName:t=>e.request(e=>e[O.serverUpdateEnvironmentDisplayName](t)),getTraceDiagnostics:t=>e.request(e=>e[O.serverGetTraceDiagnostics](t)),subscribeConfig:(t,n)=>e.subscribe(e=>e[O.subscribeServerConfig]({}),t,n),subscribeLifecycle:(t,n)=>e.subscribe(e=>e[O.subscribeServerLifecycle]({}),t,n),subscribeAuthAccess:(t,n)=>e.subscribe(e=>e[O.subscribeAuthAccess]({}),t,n),subscribeWorkspaceReadiness:(t,n)=>e.subscribe(e=>e[O.subscribeWorkspaceReadiness]({}),t,n)},usage:{getSummary:t=>e.request(e=>e[O.usageGetSummary](t),{timeout:kGe})},orchestration:{dispatchCommand:t=>MGe(e,t),getTurnDiff:(t,n)=>jW(e,e=>e[on.streamTurnDiff](t),n).then(e=>({...t,diff:new TextDecoder().decode(e)})),getFullThreadDiff:(t,n)=>jW(e,e=>e[on.streamFullThreadDiff](t),n).then(e=>({...t,fromTurnCount:0,diff:new TextDecoder().decode(e)})),subscribeShell:(t,n)=>e.subscribe(e=>e[on.subscribeShell]({}),t,n),subscribeThread:(t,n,r)=>e.subscribe(e=>e[on.subscribeThread](t),n,r)}}}function NW(){if(typeof window>`u`)return;let e=gn();if(!(e?.primaryMode!==`cloud`||!e.bearerToken))return{bearerToken:e.bearerToken,httpBaseUrl:e.httpBaseUrl,wsBaseUrl:e.wsBaseUrl}}function zGe(){if(typeof window>`u`)return;let e=gn(),t=e?.primaryMode===`cloud`?e.desktopLocal:e;if(!(!t?.httpBaseUrl||!t.wsBaseUrl||!t.bearerToken))return{bearerToken:t.bearerToken,httpBaseUrl:t.httpBaseUrl,wsBaseUrl:t.wsBaseUrl,label:t.label}}function BGe(e){let t=Lre(e);if(!t)throw Error(`Unable to resolve websocket URL for ${e?.label??`primary environment`}.`);return MW(new wW(async()=>{await _n().catch(()=>null);let e=NW();if(e)try{return await ZU(e)}catch(e){throw yH(e)&&mn(`ws-token`),e}return RHe(t)}))}function VGe(e){return MW(new wW(()=>ZU(e),{trackGlobalConnection:!1,onAttempt:()=>e.onConnecting(e.environmentId),onOpen:()=>e.onConnected(e.environmentId),onError:t=>e.onError(e.environmentId,t),onClose:t=>e.onDisconnected(e.environmentId,t.reason)}))}function HGe(e){return typeof e==`string`?e:typeof e==`object`&&e&&`detail`in e&&typeof e.detail==`string`?e.detail:e instanceof Error?e.message:String(e)}function UGe(e){return e.match(/blocked by policy for\s+([^.\s]+(?:\.[^.\s]+)*)\.?/i)?.[1]||(e.match(/navigation to\s+([^.\s]+(?:\.[^.\s]+)*)\s+is restricted/i)?.[1]??null)}function PW(e){let t=HGe(e).trim()||`Unknown browser error.`,n=UGe(t);return/blocked by policy|restricted to allowed domains/i.test(t)?{title:`Browser navigation blocked`,cause:`${n??`This URL`} is not allowed by the current browser policy.`,nextAction:`Use an allowed URL or update the browser allowed-domain setting.`,technicalDetail:t}:/does not match thread|session .*not found|no active browser tab|tab .*not found/i.test(t)?{title:`Browser session is stale`,cause:`Forge no longer has a matching live browser session for this thread.`,nextAction:`Restart the browser session from the Browser options menu.`,technicalDetail:t}:/screenshot|capture|Page\.capture/i.test(t)?{title:`Browser screenshot failed`,cause:`The browser could not capture the current page frame.`,nextAction:`Reload the page, then try the screenshot again.`,technicalDetail:t}:/timed out|timeout/i.test(t)?{title:`Browser action timed out`,cause:`Forge did not receive a response from the browser runtime in time.`,nextAction:`Retry the action. If it keeps failing, restart the browser session.`,technicalDetail:t}:/runtime is not available|browser.*unavailable|not supported|disabled/i.test(t)?{title:`Browser session unavailable`,cause:`This environment does not currently expose the in-app browser runtime.`,nextAction:`Use a workspace with browser support or restart Forge after browser support is enabled.`,technicalDetail:t}:/navigate|navigation|net::|ERR_/i.test(t)?{title:`Browser navigation failed`,cause:`The browser could not load the requested page.`,nextAction:`Check the URL and network access, then try again.`,technicalDetail:t}:{title:`Browser action failed`,cause:`Forge could not complete the browser action.`,nextAction:`Retry the action. If it keeps failing, restart the browser session from the Browser options menu.`,technicalDetail:t}}function WGe(e){let t=PW(e);return`${t.cause} ${t.nextAction}`}function GGe(e){let t=PW(e);return`${t.title}: ${t.cause} ${t.nextAction}`}var FW={session:null,selectedBrowserId:null,sessionsByBrowserId:{},lastActivityByTabId:{},lastSnapshotContentByTabId:{},lastScreenshotDataUrlByTabId:{},lastScreenshotMetaByTabId:{},lastConsoleLogsByTabId:{},lastConsoleLogsMetaByTabId:{},lastFrameByTabId:{},lastFrameSequenceByTabId:{},lastObservedFrameSequenceByTabId:{},lastFrameStreamIdByTabId:{},lastFrameStreamGenerationByTabId:{},frameGapCountByTabId:{},lastFrameMetaByTabId:{},displayIceCandidatesByClientId:{},lastError:null};function IW(e){return li(e)}function KGe(e){let t=e.status===`reconnecting`&&e.reason===`network_unreachable`;return e.transport===`remote-webrtc`&&(e.status===`connected`||e.status===`connecting`||e.status===`reconnecting`)&&(e.reason!==`network_unreachable`||t)&&e.reason!==`unsupported_host`}function qGe(e){return e.transport!==`remote-webrtc`||e.status===`failed`||e.status===`unsupported`?!1:e.reason!==`network_unreachable`&&e.reason!==`unsupported_host`}function LW(e){let{currentSession:t,nextSession:n}=e;return!t||t.browserId!==n.browserId||t.sessionId!==n.sessionId||!KGe(t.display)||!qGe(n.display)?n:{...n,display:{...t.display,viewport:n.display.viewport??n.viewport??t.display.viewport,devicePixelRatio:n.display.devicePixelRatio??t.display.devicePixelRatio,iceServers:n.display.iceServers??t.display.iceServers,reconnect:t.display.reconnect??n.display.reconnect}}}function JGe(e){let{storedSession:t,nextSession:n}=e;if(!t||t.browserId!==n.browserId||t.sessionId!==n.sessionId)return!1;let r=n.tabs.some(e=>e.navigationStatus===`pending`),i=t.tabs.some(e=>e.navigationStatus===`complete`||e.navigationStatus===`failed`);if(!r||!i)return!1;let a=Date.parse(t.updatedAt),o=Date.parse(n.updatedAt);return Number.isNaN(a)||Number.isNaN(o)?!1:o<a}function RW(e,t,n){return e[t]===n?e:{...e,[t]:n}}function YGe(e){switch(e.type){case`tab.updated`:return e.payload.tab.tabId;case`tab.closed`:case`snapshot.ready`:case`screenshot.ready`:case`frame.ready`:case`console.logs.ready`:case`display.iceCandidate`:case`display.metrics`:return e.payload.tabId;case`action.failed`:return e.payload.tabId??null;case`display.updated`:case`session.started`:case`session.updated`:case`session.closed`:return null}}function XGe(e,t){let n=YGe(t);return n?{...e,lastActivityByTabId:{...e.lastActivityByTabId,[n]:{actor:t.agentId?`agent`:`human`,agentId:t.agentId,browserId:t.browserId,eventType:t.type,...t.type===`action.failed`?{commandType:t.payload.commandType}:{},...t.type===`action.failed`?{message:t.payload.message}:{},createdAt:t.createdAt}}}:e}function ZGe(e){switch(e.type){case`session.started`:case`session.updated`:case`tab.updated`:case`snapshot.ready`:case`screenshot.ready`:case`frame.ready`:case`display.updated`:return!0;case`session.closed`:case`tab.closed`:case`console.logs.ready`:case`action.failed`:case`display.iceCandidate`:case`display.metrics`:return!1}}function zW(e){return e===null?`end-of-candidates`:JSON.stringify([e.candidate,e.sdpMid??null,e.sdpMLineIndex??null,e.usernameFragment??null])}function BW(e,t){let n=zW(t);return e.some(e=>zW(e)===n)?e:[...e,t]}function QGe(e){if(e.type!==`session.closed`)return null;switch(e.payload.reason){case`idle_timeout`:return`The browser was closed after being idle. Reopen the preview to restore this thread's browser.`;case`runtime_shutdown`:return`The browser runtime shut down. Reopen the preview to restore this thread's browser.`;case`thread_archived`:case`clear_browsing_data`:case`user_closed`:case void 0:return null}}function $Ge(e){let t=e.event.payload.display;return t.status===`failed`||t.status===`unsupported`?t.detail??`Browser display is unavailable.`:e.currentLastError&&/browser display/i.test(e.currentLastError)?null:e.currentLastError}function eKe(e,t){let n=e.sessionsByBrowserId[t.browserId]??(e.session?.browserId===t.browserId?e.session:null);if(!n)return!0;let r=n.sessionId===t.payload.sessionId,i=!t.sessionEpoch||!n.sessionEpoch||t.sessionEpoch===n.sessionEpoch;return r&&i}function tKe(e,t){let n=e.lastFrameSequenceByTabId[t]??0;return{acceptedSequence:n,observedSequence:e.lastObservedFrameSequenceByTabId[t]??n,...e.lastFrameStreamIdByTabId[t]?{streamId:e.lastFrameStreamIdByTabId[t]}:{},...e.lastFrameStreamGenerationByTabId[t]===void 0?{}:{streamGeneration:e.lastFrameStreamGenerationByTabId[t]},...e.lastFrameMetaByTabId[t]?.capturedAt?{acceptedCapturedAt:e.lastFrameMetaByTabId[t].capturedAt}:{},gapCount:e.frameGapCountByTabId[t]??0}}function nKe(e,t){let n=t.payload.tabId,r=$re(tKe(e,n),{sequence:t.payload.sequence,capturedAt:t.payload.capturedAt,...t.payload.streamId?{streamId:t.payload.streamId}:{},...t.payload.streamGeneration===void 0?{}:{streamGeneration:t.payload.streamGeneration},...t.payload.keyframe===void 0?{}:{keyframe:t.payload.keyframe}});return{decision:r,observedSequence:r.state.observedSequence,frameGapCount:r.state.gapCount}}function rKe(e,t,n){let r=t.payload.tabId;return{...e,lastObservedFrameSequenceByTabId:{...e.lastObservedFrameSequenceByTabId,[r]:n.observedSequence},frameGapCountByTabId:{...e.frameGapCountByTabId,[r]:n.frameGapCount}}}function iKe(e,t){let n=t.payload.tabId;return{...e,lastFrameByTabId:{...e.lastFrameByTabId,[n]:t.payload.imageDataUrl},lastFrameSequenceByTabId:{...e.lastFrameSequenceByTabId,[n]:t.payload.sequence},lastFrameStreamIdByTabId:t.payload.streamId?{...e.lastFrameStreamIdByTabId,[n]:t.payload.streamId}:e.lastFrameStreamIdByTabId,lastFrameStreamGenerationByTabId:t.payload.streamGeneration===void 0?e.lastFrameStreamGenerationByTabId:{...e.lastFrameStreamGenerationByTabId,[n]:t.payload.streamGeneration},lastFrameMetaByTabId:{...e.lastFrameMetaByTabId,[n]:{capturedAt:t.payload.capturedAt,url:t.payload.url,viewport:t.payload.viewport}},lastError:null}}function aKe(e){let{current:t,event:n,pendingAutoRevealKeys:r,state:i,threadKey:a}=e;if(!eKe(t,n))return i;let o=nKe(t,n);if(!o.decision.observe)return i;let s=rKe(t,n,o),c=o.decision.accept?iKe(s,n):s;return{browserStateByThreadKey:RW(i.browserStateByThreadKey,a,c),pendingAutoRevealKeys:r}}var VW=dt(e=>({browserStateByThreadKey:{},pendingAutoRevealKeys:new Set,setSessionSnapshot:(t,n)=>e(e=>{let r=IW(t),i=e.browserStateByThreadKey[r]??FW,a=n?LW({currentSession:i.sessionsByBrowserId[n.browserId]??i.session,nextSession:n}):null;return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...i,session:a,selectedBrowserId:a?.browserId??i.selectedBrowserId,sessionsByBrowserId:a?{...i.sessionsByBrowserId,[a.browserId]:a}:i.sessionsByBrowserId,lastError:a?null:i.lastError})}}),selectBrowserSession:(t,n)=>e(e=>{let r=IW(t),i=e.browserStateByThreadKey[r]??FW,a=i.sessionsByBrowserId[n]??i.session;return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...i,selectedBrowserId:n,session:a})}}),applyBrowserEvent:(t,n)=>e(e=>{let r=IW(t),i=ZGe(n)?new Set(e.pendingAutoRevealKeys).add(r):e.pendingAutoRevealKeys,a=XGe(e.browserStateByThreadKey[r]??FW,n);switch(n.type){case`session.started`:{if(JGe({storedSession:a.sessionsByBrowserId[n.payload.snapshot.browserId]??a.session,nextSession:n.payload.snapshot}))return e;let t=LW({currentSession:a.sessionsByBrowserId[n.payload.snapshot.browserId]??a.session,nextSession:n.payload.snapshot});return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,session:t,selectedBrowserId:a.selectedBrowserId??t.browserId,sessionsByBrowserId:{...a.sessionsByBrowserId,[t.browserId]:t},lastError:null}),pendingAutoRevealKeys:i}}case`session.updated`:{let t=LW({currentSession:a.sessionsByBrowserId[n.payload.snapshot.browserId]??a.session,nextSession:n.payload.snapshot});return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,session:a.selectedBrowserId&&a.selectedBrowserId!==n.payload.snapshot.browserId?a.session:t,selectedBrowserId:a.selectedBrowserId??n.payload.snapshot.browserId,sessionsByBrowserId:{...a.sessionsByBrowserId,[t.browserId]:t},lastError:null}),pendingAutoRevealKeys:i}}case`session.closed`:let t=a.selectedBrowserId===n.browserId||a.session?.browserId===n.browserId;return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,session:t?null:a.session,selectedBrowserId:t?null:a.selectedBrowserId,sessionsByBrowserId:Object.fromEntries(Object.entries(a.sessionsByBrowserId).filter(([e])=>e!==n.browserId)),lastError:QGe(n)})};case`display.updated`:{let t=a.session;if(!t||t.sessionId!==n.payload.sessionId)return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,a),pendingAutoRevealKeys:i};let o={...t,display:n.payload.display,updatedAt:n.createdAt};return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,session:o,sessionsByBrowserId:{...a.sessionsByBrowserId,[o.browserId]:o},lastError:$Ge({currentLastError:a.lastError,event:n})}),pendingAutoRevealKeys:i}}case`tab.updated`:{let t=a.session;if(!t||t.sessionId!==n.payload.sessionId)return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,a),pendingAutoRevealKeys:i};let o=t.tabs.map(e=>e.tabId===n.payload.tab.tabId?{...n.payload.tab,isActive:e.tabId===t.activeTabId}:{...e,isActive:e.tabId===t.activeTabId}).concat(t.tabs.some(e=>e.tabId===n.payload.tab.tabId)?[]:[{...n.payload.tab,isActive:n.payload.tab.tabId===t.activeTabId}]);return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,session:{...t,tabs:o},lastError:null}),pendingAutoRevealKeys:i}}case`tab.closed`:{let t=a.session;if(!t||t.sessionId!==n.payload.sessionId)return e;let i=t.tabs.filter(e=>e.tabId!==n.payload.tabId);return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,session:{...t,tabs:i,activeTabId:t.activeTabId===n.payload.tabId?i[0]?.tabId??null:t.activeTabId}})}}case`snapshot.ready`:return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,lastSnapshotContentByTabId:{...a.lastSnapshotContentByTabId,[n.payload.tabId]:n.payload.content},lastError:null}),pendingAutoRevealKeys:i};case`screenshot.ready`:return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,lastScreenshotDataUrlByTabId:{...a.lastScreenshotDataUrlByTabId,[n.payload.tabId]:n.payload.imageDataUrl},lastScreenshotMetaByTabId:{...a.lastScreenshotMetaByTabId,[n.payload.tabId]:{captureId:n.payload.captureId,capturedAt:n.payload.capturedAt,url:n.payload.url,viewport:n.payload.viewport}},lastError:null}),pendingAutoRevealKeys:i};case`frame.ready`:return aKe({state:e,current:a,event:n,threadKey:r,pendingAutoRevealKeys:i});case`console.logs.ready`:return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,lastConsoleLogsByTabId:{...a.lastConsoleLogsByTabId,[n.payload.tabId]:n.payload.logs},lastConsoleLogsMetaByTabId:{...a.lastConsoleLogsMetaByTabId,[n.payload.tabId]:{capturedAt:n.createdAt,tabId:n.payload.tabId,count:n.payload.logs.length}},lastError:null})};case`display.iceCandidate`:{let t=a.displayIceCandidatesByClientId[n.payload.clientId]??[];return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,displayIceCandidatesByClientId:{...a.displayIceCandidatesByClientId,[n.payload.clientId]:BW(t,n.payload.candidate)}}),pendingAutoRevealKeys:i}}case`display.metrics`:return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,a),pendingAutoRevealKeys:i};case`action.failed`:return{browserStateByThreadKey:RW(e.browserStateByThreadKey,r,{...a,lastError:GGe(n.payload.message)})};default:return e}}),clearBrowserState:t=>e(e=>{let n=IW(t);if(!(n in e.browserStateByThreadKey))return e;let{[n]:r,...i}=e.browserStateByThreadKey;return{browserStateByThreadKey:i}}),consumeAutoReveal:t=>e(e=>{if(!e.pendingAutoRevealKeys.has(t))return e;let n=new Set(e.pendingAutoRevealKeys);return n.delete(t),{pendingAutoRevealKeys:n}})}));function oKe(e,t){return t?e[IW(t)]??null:null}function sKe(e){if(e!==void 0)return Object.fromEntries(Object.entries(e).toSorted(([e],[t])=>e.localeCompare(t)))}function cKe(e){return{...e,...e.projectIds===void 0?{}:{projectIds:[...e.projectIds].toSorted((e,t)=>e.localeCompare(t))},...e.cursors===void 0?{}:{cursors:sKe(e.cursors)}}}var HW={all:e=>[`pullRequests`,e],list:(e,t)=>[`pullRequests`,e,`list`,cKe(t)],stats:(e,t)=>[`pullRequests`,e,`stats`,[...t].toSorted((e,t)=>`${e.projectId}:${e.repository}#${e.number}`.localeCompare(`${t.projectId}:${t.repository}#${t.number}`))],detail:(e,t)=>[`pullRequests`,e,`detail`,t],activity:(e,t)=>[`pullRequests`,e,`activity`,t],diff:(e,t)=>[`pullRequests`,e,`diff`,t],threadComments:(e,t)=>[`pullRequests`,e,`thread-comments`,t],diffFileContents:(e,t)=>[`pullRequests`,e,`diff-file-contents`,t],reviewerCandidates:(e,t)=>[`pullRequests`,e,`reviewer-candidates`,t]},UW=Nt.make(`command-authority`);function lKe(e){return e[0]===`pullRequests`&&e[1]===UW&&e[2]===`detail`}function uKe(e){return e[0]===`pullRequests`&&e[1]===UW&&e[2]===`list`}function dKe(e,t){return e.reasoningEffortLevels.some(e=>e.value===t)}function WW(e){return e.reasoningEffortLevels.find(e=>e.isDefault)?.value??null}function GW(e,t){let n=WW(e),r=typeof t==`string`?t.trim():null;return r&&!e.promptInjectedEffortLevels.includes(r)&&dKe(e,r)?r:n??void 0}function KW(e,t){return e.contextWindowOptions.some(e=>e.value===t)}function qW(e){return e.contextWindowOptions.find(e=>e.isDefault)?.value??null}function fKe(e,t){let n=qW(e);return t&&KW(e,t)?t:n??void 0}function pKe(e,t){let n=GW(e,t?.reasoningEffort),r=e.supportsFastMode?t?.fastMode:void 0,i={...n?{reasoningEffort:n}:{},...r===void 0?{}:{fastMode:r}};return Object.keys(i).length>0?i:void 0}function mKe(e,t){let n=GW(e,t?.effort),r=e.supportsThinkingToggle?t?.thinking:void 0,i=e.supportsFastMode?t?.fastMode:void 0,a=fKe(e,t?.contextWindow),o={...r===void 0?{}:{thinking:r},...n?{effort:n}:{},...i===void 0?{}:{fastMode:i},...a===void 0?{}:{contextWindow:a}};return Object.keys(o).length>0?o:void 0}function JW(e){return typeof e==`string`&&/\bultrathink\b/i.test(e)}function YW(e,t=`codex`){if(typeof e!=`string`)return null;let n=e.trim();if(!n)return null;let r=Pte[t],i=Object.prototype.hasOwnProperty.call(r,n)?r[n]:void 0;return typeof i==`string`?i:n}function XW(e,t,n){if(typeof t!=`string`)return null;let r=t.trim();if(!r)return null;let i=n.find(e=>e.slug===r);if(i)return i.slug;let a=n.find(e=>e.name.toLowerCase()===r.toLowerCase());if(a)return a.slug;let o=YW(r,e),s=n.find(e=>e.slug===o);return s?s.slug:null}var hKe=[`codex`,`claudeAgent`];function ZW(e,t){return hKe.filter(e=>e!==t).some(t=>Wte(t,e)!==void 0)}function gKe(e,t){let n=YW(e,t);return!n||ZW(n,t)?dn[t]:n}function QW(e,t){return gKe(t,e)}function _Ke(e){return typeof e==`string`&&e.trim()||null}function vKe(e,t){let n=e.trim();return!n||t!==`ultrathink`||n.startsWith(`Ultrathink:`)?n:`Ultrathink:\n${n}`}function $W(e,t){return{id:e.id,environmentId:t,name:e.title,cwd:e.workspaceRoot,repositoryIdentity:e.repositoryIdentity??null,availability:e.availability,defaultThreadEnvMode:e.defaultThreadEnvMode??null,cmmdRegistration:e.cmmdRegistration??null,defaultModelSelection:e.defaultModelSelection?eG(e.defaultModelSelection):null,createdAt:e.createdAt,updatedAt:e.updatedAt,scripts:tG(e.scripts)}}function eG(e){return{...e,model:QW(e.provider,e.model)}}function tG(e){return e.map(e=>({...e}))}function yKe(e,t){return{...e,...t.title===void 0?{}:{name:t.title},...t.workspaceRoot===void 0?{}:{cwd:t.workspaceRoot},...t.repositoryIdentity===void 0?{}:{repositoryIdentity:t.repositoryIdentity??null},...t.defaultThreadEnvMode===void 0?{}:{defaultThreadEnvMode:t.defaultThreadEnvMode},...t.cmmdRegistration===void 0?{}:{cmmdRegistration:t.cmmdRegistration},...t.defaultModelSelection===void 0?{}:{defaultModelSelection:t.defaultModelSelection?eG(t.defaultModelSelection):null},...t.scripts===void 0?{}:{scripts:tG(t.scripts)},updatedAt:t.updatedAt}}function nG(e){let t=CV(e.lastError);return{provider:xKe(e.providerName),status:bKe(e.status),orchestrationStatus:e.status,activeTurnId:e.activeTurnId??void 0,createdAt:e.updatedAt,updatedAt:e.updatedAt,...t?{lastError:t}:{}}}function rG(e,t){let n=t.attachments?.map(t=>{let n=OU({environmentId:e,pathname:SKe(t.id)});return t.type===`image`?{...t,previewUrl:n}:{...t,downloadUrl:n}});return{id:t.id,role:t.role,text:t.text,turnId:t.turnId,createdAt:t.createdAt,streaming:t.streaming,...t.streaming?{}:{completedAt:t.updatedAt},...n&&n.length>0?{attachments:n}:{}}}function iG(e){return{id:e.id,turnId:e.turnId,planMarkdown:e.planMarkdown,implementedAt:e.implementedAt,implementationThreadId:e.implementationThreadId,createdAt:e.createdAt,updatedAt:e.updatedAt}}function aG(e){return{turnId:e.turnId,completedAt:e.completedAt,status:e.status,assistantMessageId:e.assistantMessageId??void 0,checkpointTurnCount:e.checkpointTurnCount,checkpointRef:e.checkpointRef,files:e.files.map(e=>({...e}))}}function bKe(e){switch(e){case`starting`:return`connecting`;case`running`:return`running`;case`error`:return`error`;case`ready`:case`interrupted`:return`ready`;case`idle`:case`stopped`:return`closed`}}function xKe(e){return e===`codex`||e===`claudeAgent`||e===`ollama`||e===`cmmd`||e===`apex`?e:`codex`}function SKe(e){return`/attachments/${encodeURIComponent(e)}`}var CKe=[],wKe=[],TKe=[],EKe=[],DKe={},OKe={},kKe={},AKe={},jKe=[],oG=new WeakMap,sG=new WeakMap;function cG(e,t,n){if(!e||e.length===0||!t)return n;let r=oG.get(e),i=r?.get(t);if(i)return i;let a=e.flatMap(e=>{let n=t[e];return n?[n]:[]}),o=r??new WeakMap;return o.set(t,a),r||oG.set(e,o),a}function MKe(e,t){return cG(e.messageIdsByThreadId[t],e.messageByThreadId[t]??DKe,CKe)}function NKe(e,t){return cG(e.activityIdsByThreadId[t],e.activityByThreadId[t]??OKe,wKe)}function PKe(e,t){return cG(e.proposedPlanIdsByThreadId[t],e.proposedPlanByThreadId[t]??kKe,TKe)}function FKe(e,t){return cG(e.turnDiffIdsByThreadId[t],e.turnDiffSummaryByThreadId[t]??AKe,EKe)}function lG(e,t){let n=e.threadShellById[t];if(!n)return;let r=e.threadSessionById[t]??null,i=e.threadTurnStateById[t],a=e.threadRateLimitStatusById[t]??jKe,o=MKe(e,t),s=NKe(e,t),c=PKe(e,t),l=FKe(e,t),u=sG.get(n);if(u&&u.session===r&&u.turnState===i&&u.rateLimitStatus===a&&u.messages===o&&u.activities===s&&u.proposedPlans===c&&u.turnDiffSummaries===l)return u.thread;let d={...n,session:r,latestTurn:i?.latestTurn??null,pendingSourceProposedPlan:i?.pendingSourceProposedPlan,rateLimitStatus:a,messages:o,activities:s,proposedPlans:c,turnDiffSummaries:l};return sG.set(n,{session:r,turnState:i,rateLimitStatus:a,messages:o,activities:s,proposedPlans:c,turnDiffSummaries:l,thread:d}),d}function IKe(e,t){let n=t.providerAccountId??null,r=e=>e.provider===t.provider&&(e.providerAccountId??null)===n,i=e.find(r),a={status:t.status,usedPercent:t.usedPercent,resetsAt:t.resetsAt},o={provider:t.provider,providerAccountId:n,fiveHour:t.window===`five_hour`?a:i?.fiveHour??null,sevenDay:t.window===`seven_day`?a:i?.sevenDay??null};return[...e.filter(e=>!r(e)),o]}function uG(e){return{settledAt:e.settledAt??null,settledOverride:e.settledOverride??null}}var dG={projectIds:[],projectById:{},threadIds:[],threadIdsByProjectId:{},threadShellById:{},threadSessionById:{},threadTurnStateById:{},threadRateLimitStatusById:{},messageIdsByThreadId:{},messageByThreadId:{},activityIdsByThreadId:{},activityByThreadId:{},proposedPlanIdsByThreadId:{},proposedPlanByThreadId:{},turnDiffIdsByThreadId:{},turnDiffSummaryByThreadId:{},sidebarThreadSummaryById:{},threadSubscriptionErrorById:{},bootstrapComplete:!1},LKe={activeEnvironmentId:null,environmentStateById:{}},fG=[],pG=[];function mG(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}function hG(e,t){return{id:e.id,environmentId:t,codexThreadId:null,projectId:e.projectId,title:e.title,modelSelection:eG(e.modelSelection),runtimeMode:e.runtimeMode,interactionMode:e.interactionMode,session:e.session?nG(e.session):null,messages:e.messages.map(e=>rG(t,e)),proposedPlans:e.proposedPlans.map(iG),error:CV(e.session?.lastError),createdAt:e.createdAt,archivedAt:e.archivedAt,...uG(e),updatedAt:e.updatedAt,latestTurn:e.latestTurn,pendingSourceProposedPlan:e.latestTurn?.sourceProposedPlan,branch:e.branch,worktreePath:e.worktreePath,turnDiffSummaries:e.checkpoints.map(aG),activities:e.activities.map(e=>({...e})),anchorKind:e.anchorKind,anchorCmmdId:e.anchorCmmdId,linkedPullRequest:e.linkedPullRequest??null,goal:e.goal??null,titleRegeneration:e.titleRegeneration??null,kind:e.kind,parentThreadId:e.parentThreadId,status:e.status,workerRole:e.workerRole??null,pendingAutoCreatePrompt:e.pendingAutoCreatePrompt??null,rateLimitStatus:e.rateLimitStatus??[]}}function gG(e,t){let n={id:e.id,environmentId:t,codexThreadId:null,projectId:e.projectId,title:e.title,modelSelection:eG(e.modelSelection),runtimeMode:e.runtimeMode,interactionMode:e.interactionMode,error:CV(e.session?.lastError),createdAt:e.createdAt,archivedAt:e.archivedAt,...uG(e),updatedAt:e.updatedAt,branch:e.branch,worktreePath:e.worktreePath,anchorKind:e.anchorKind,anchorCmmdId:e.anchorCmmdId,linkedPullRequest:e.linkedPullRequest??null,goal:e.goal??null,titleRegeneration:e.titleRegeneration??null,kind:e.kind,parentThreadId:e.parentThreadId,status:e.status,workerRole:e.workerRole??null},r=e.session?nG(e.session):null;return{shell:n,session:r,turnState:{latestTurn:e.latestTurn,pendingSourceProposedPlan:e.latestTurn?.sourceProposedPlan},summary:{id:e.id,modelSelection:n.modelSelection,environmentId:t,projectId:e.projectId,title:e.title,interactionMode:e.interactionMode,session:r,createdAt:e.createdAt,archivedAt:e.archivedAt,...uG(e),updatedAt:e.updatedAt,latestTurn:e.latestTurn,branch:e.branch,worktreePath:e.worktreePath,latestUserMessageAt:e.latestUserMessageAt,hasPendingApprovals:e.hasPendingApprovals,hasPendingUserInput:e.hasPendingUserInput,hasActionableProposedPlan:e.hasActionableProposedPlan,anchorKind:e.anchorKind,anchorCmmdId:e.anchorCmmdId,linkedPullRequest:e.linkedPullRequest??null,goal:e.goal??null,titleRegeneration:e.titleRegeneration??null,kind:e.kind,parentThreadId:e.parentThreadId,status:e.status,workerRole:e.workerRole??null}}}function RKe(e){return{id:e.id,environmentId:e.environmentId,codexThreadId:e.codexThreadId,projectId:e.projectId,title:e.title,modelSelection:e.modelSelection,runtimeMode:e.runtimeMode,interactionMode:e.interactionMode,error:e.error,createdAt:e.createdAt,archivedAt:e.archivedAt,settledAt:e.settledAt,settledOverride:e.settledOverride,updatedAt:e.updatedAt,branch:e.branch,worktreePath:e.worktreePath,anchorKind:e.anchorKind,anchorCmmdId:e.anchorCmmdId,linkedPullRequest:e.linkedPullRequest??null,kind:e.kind,parentThreadId:e.parentThreadId,status:e.status,workerRole:e.workerRole??null,goal:e.goal??null,titleRegeneration:e.titleRegeneration??null}}function zKe(e){return{latestTurn:e.latestTurn,...e.pendingSourceProposedPlan?{pendingSourceProposedPlan:e.pendingSourceProposedPlan}:{}}}function _G(e,t){return e===t?!0:e===void 0||t===void 0?!1:e.threadId===t.threadId&&e.planId===t.planId}function vG(e,t){return e===t?!0:e==null||t==null?!1:e.turnId===t.turnId&&e.state===t.state&&e.requestedAt===t.requestedAt&&e.startedAt===t.startedAt&&e.completedAt===t.completedAt&&e.assistantMessageId===t.assistantMessageId&&_G(e.sourceProposedPlan,t.sourceProposedPlan)}function yG(e,t){return e===t?!0:e==null||t==null?!1:e.provider===t.provider&&e.status===t.status&&e.orchestrationStatus===t.orchestrationStatus&&e.activeTurnId===t.activeTurnId&&e.createdAt===t.createdAt&&e.updatedAt===t.updatedAt&&e.lastError===t.lastError}function bG(e,t){return e===t?!0:e==null||t==null?!1:e.projectId===t.projectId&&e.projectRepositoryId===t.projectRepositoryId&&e.provider===t.provider&&e.host===t.host&&e.repository===t.repository&&e.number===t.number&&e.url===t.url}function xG(e,t){return e!==void 0&&e.id===t.id&&e.environmentId===t.environmentId&&e.projectId===t.projectId&&e.title===t.title&&SG(e.titleRegeneration,t.titleRegeneration)&&e.interactionMode===t.interactionMode&&yG(e.session,t.session)&&e.createdAt===t.createdAt&&e.archivedAt===t.archivedAt&&e.settledAt===t.settledAt&&e.settledOverride===t.settledOverride&&e.updatedAt===t.updatedAt&&vG(e.latestTurn,t.latestTurn)&&e.branch===t.branch&&e.worktreePath===t.worktreePath&&e.latestUserMessageAt===t.latestUserMessageAt&&e.hasPendingApprovals===t.hasPendingApprovals&&e.hasPendingUserInput===t.hasPendingUserInput&&e.hasActionableProposedPlan===t.hasActionableProposedPlan&&e.anchorKind===t.anchorKind&&e.anchorCmmdId===t.anchorCmmdId&&bG(e.linkedPullRequest,t.linkedPullRequest)&&e.kind===t.kind&&e.parentThreadId===t.parentThreadId&&e.status===t.status}function SG(e,t){return e===t?!0:e==null||t==null?!1:e.requestId===t.requestId&&e.startedAt===t.startedAt}function CG(e,t){return e!==void 0&&e.id===t.id&&e.environmentId===t.environmentId&&e.codexThreadId===t.codexThreadId&&e.projectId===t.projectId&&e.title===t.title&&e.modelSelection===t.modelSelection&&e.runtimeMode===t.runtimeMode&&e.interactionMode===t.interactionMode&&e.error===t.error&&e.createdAt===t.createdAt&&e.archivedAt===t.archivedAt&&e.settledAt===t.settledAt&&e.settledOverride===t.settledOverride&&e.updatedAt===t.updatedAt&&e.branch===t.branch&&e.worktreePath===t.worktreePath&&e.anchorKind===t.anchorKind&&e.anchorCmmdId===t.anchorCmmdId&&bG(e.linkedPullRequest,t.linkedPullRequest)&&e.kind===t.kind&&e.parentThreadId===t.parentThreadId&&e.status===t.status&&e.goal===t.goal&&SG(e.titleRegeneration,t.titleRegeneration)}function wG(e,t){return e!==void 0&&vG(e.latestTurn,t.latestTurn)&&_G(e.pendingSourceProposedPlan,t.pendingSourceProposedPlan)}function BKe(e,t){return e.includes(t)?[...e]:[...e,t]}function TG(e,t){return e.filter(e=>e!==t)}function VKe(e){return{ids:e.messages.map(e=>e.id),byId:Object.fromEntries(e.messages.map(e=>[e.id,e]))}}function HKe(e){return{ids:e.activities.map(e=>e.id),byId:Object.fromEntries(e.activities.map(e=>[e.id,e]))}}function UKe(e){return{ids:e.proposedPlans.map(e=>e.id),byId:Object.fromEntries(e.proposedPlans.map(e=>[e.id,e]))}}function WKe(e){return{ids:e.turnDiffSummaries.map(e=>e.turnId),byId:Object.fromEntries(e.turnDiffSummaries.map(e=>[e.turnId,e]))}}function GKe(e){return e.projectIds.flatMap(t=>{let n=e.projectById[t];return n?[n]:[]})}function EG(e){return e.threadIds.flatMap(t=>{let n=lG(e,t);return n?[n]:[]})}function DG(e,t,n,r){let i=e;if(e.threadIds.includes(t)||(i={...i,threadIds:[...i.threadIds,t]}),r!==n){let e=i.threadIdsByProjectId;if(r){let n=e[r]??fG,i=TG(n,t);if(i.length===0){let{[r]:t,...n}=e;e=n}else mG(n,i)||(e={...e,[r]:i})}let a=e[n]??fG,o=BKe(a,t);mG(a,o)||(e={...e,[n]:o}),e!==i.threadIdsByProjectId&&(i={...i,threadIdsByProjectId:e})}return i}function OG(e,t,n){let r=RKe(t),i=zKe(t),a=e.threadShellById[t.id],o=e.threadTurnStateById[t.id],s=DG(e,t.id,t.projectId,n?.projectId);CG(a,r)||(s={...s,threadShellById:{...s.threadShellById,[t.id]:r}});let c=e.sidebarThreadSummaryById[t.id];if(c!==void 0){let e={...c,title:t.title,modelSelection:t.modelSelection,interactionMode:t.interactionMode,session:t.session,createdAt:t.createdAt,archivedAt:t.archivedAt,settledAt:t.settledAt,settledOverride:t.settledOverride,updatedAt:t.updatedAt,latestTurn:t.latestTurn,branch:t.branch,worktreePath:t.worktreePath,anchorKind:t.anchorKind,anchorCmmdId:t.anchorCmmdId,linkedPullRequest:t.linkedPullRequest??null,goal:t.goal,titleRegeneration:t.titleRegeneration??null,kind:t.kind,parentThreadId:t.parentThreadId,status:t.status,workerRole:t.workerRole};xG(c,e)||(s={...s,sidebarThreadSummaryById:{...s.sidebarThreadSummaryById,[t.id]:e}})}if(yG(n?.session??null,t.session)||(s={...s,threadSessionById:{...s.threadSessionById,[t.id]:t.session}}),(n?.rateLimitStatus??pG)!==(t.rateLimitStatus??pG)&&(s={...s,threadRateLimitStatusById:{...s.threadRateLimitStatusById,[t.id]:t.rateLimitStatus??pG}}),wG(o,i)||(s={...s,threadTurnStateById:{...s.threadTurnStateById,[t.id]:i}}),n?.messages!==t.messages){let e=VKe(t);s={...s,messageIdsByThreadId:{...s.messageIdsByThreadId,[t.id]:e.ids},messageByThreadId:{...s.messageByThreadId,[t.id]:e.byId}}}if(n?.activities!==t.activities){let e=HKe(t);s={...s,activityIdsByThreadId:{...s.activityIdsByThreadId,[t.id]:e.ids},activityByThreadId:{...s.activityByThreadId,[t.id]:e.byId}}}if(n?.proposedPlans!==t.proposedPlans){let e=UKe(t);s={...s,proposedPlanIdsByThreadId:{...s.proposedPlanIdsByThreadId,[t.id]:e.ids},proposedPlanByThreadId:{...s.proposedPlanByThreadId,[t.id]:e.byId}}}if(n?.turnDiffSummaries!==t.turnDiffSummaries){let e=WKe(t);s={...s,turnDiffIdsByThreadId:{...s.turnDiffIdsByThreadId,[t.id]:e.ids},turnDiffSummaryByThreadId:{...s.turnDiffSummaryByThreadId,[t.id]:e.byId}}}return s}function kG(e,t){let n=e.threadShellById[t.shell.id],r=DG(e,t.shell.id,t.shell.projectId,n?.projectId);return CG(n,t.shell)||(r={...r,threadShellById:{...r.threadShellById,[t.shell.id]:t.shell}}),yG(e.threadSessionById[t.shell.id]??null,t.session)||(r={...r,threadSessionById:{...r.threadSessionById,[t.shell.id]:t.session}}),wG(e.threadTurnStateById[t.shell.id],t.turnState)||(r={...r,threadTurnStateById:{...r.threadTurnStateById,[t.shell.id]:t.turnState}}),xG(e.sidebarThreadSummaryById[t.shell.id],t.summary)||(r={...r,sidebarThreadSummaryById:{...r.sidebarThreadSummaryById,[t.shell.id]:t.summary}}),r}function AG(e,t){return Object.fromEntries(Object.entries(e).flatMap(([e,n])=>t.has(e)?[[e,n]]:[]))}function jG(e,t){let n=e.threadShellById[t],r=e.sidebarThreadSummaryById[t],i=n?.projectId??r?.projectId;if(!i)return e;let a=TG(e.threadIds,t),o=TG(e.threadIdsByProjectId[i]??fG,t),s=o.length===0?(()=>{let{[i]:t,...n}=e.threadIdsByProjectId;return n})():{...e.threadIdsByProjectId,[i]:o},{[t]:c,...l}=e.threadShellById,{[t]:u,...d}=e.threadSessionById,{[t]:f,...p}=e.threadTurnStateById,{[t]:m,...h}=e.messageIdsByThreadId,{[t]:g,..._}=e.messageByThreadId,{[t]:v,...y}=e.activityIdsByThreadId,{[t]:b,...x}=e.activityByThreadId,{[t]:S,...C}=e.proposedPlanIdsByThreadId,{[t]:w,...T}=e.proposedPlanByThreadId,{[t]:E,...ee}=e.turnDiffIdsByThreadId,{[t]:te,...ne}=e.turnDiffSummaryByThreadId,{[t]:re,...ie}=e.sidebarThreadSummaryById;return{...e,threadIds:a,threadIdsByProjectId:s,threadShellById:l,threadSessionById:d,threadTurnStateById:p,messageIdsByThreadId:h,messageByThreadId:_,activityIdsByThreadId:y,activityByThreadId:x,proposedPlanIdsByThreadId:C,proposedPlanByThreadId:T,turnDiffIdsByThreadId:ee,turnDiffSummaryByThreadId:ne,sidebarThreadSummaryById:ie}}function KKe(e,t){let n=new Set(e.threadIdsByProjectId[t]??fG);for(let[r,i]of Object.entries(e.threadShellById))i.projectId===t&&n.add(r);for(let[r,i]of Object.entries(e.sidebarThreadSummaryById))i.projectId===t&&n.add(r);return[...n]}function MG(e,t){let n=KKe(e,t);if(!e.projectById[t]&&n.length===0&&!e.projectIds.includes(t))return e;let r=e;for(let e of n)r=jG(r,e);let{[t]:i,...a}=r.projectById;return{...r,projectById:a,projectIds:TG(r.projectIds,t)}}function NG(e){return e===`error`?`error`:e===`missing`?`interrupted`:`completed`}function qKe(e,t){if(e.sequence!==void 0&&t.sequence!==void 0){if(e.sequence!==t.sequence)return e.sequence-t.sequence}else if(e.sequence!==void 0)return 1;else if(t.sequence!==void 0)return-1;return e.createdAt.localeCompare(t.createdAt)||e.id.localeCompare(t.id)}function PG(e){let t=e.previous?.turnId===e.turnId?e.previous.sourceProposedPlan:e.sourceProposedPlan;return{turnId:e.turnId,state:e.state,requestedAt:e.requestedAt,startedAt:e.startedAt,completedAt:e.completedAt,assistantMessageId:e.assistantMessageId,...t?{sourceProposedPlan:t}:{}}}function JKe(e,t,n){let r=!1,i=e.map(e=>e.turnId!==t||e.assistantMessageId===n?e:(r=!0,{...e,assistantMessageId:n??void 0}));return r?i:[...e]}function YKe(e,t,n){let r=new Set;for(let n of e){if(n.role===`system`){r.add(n.id);continue}n.turnId!==void 0&&n.turnId!==null&&t.has(n.turnId)&&r.add(n.id)}let i=e.filter(e=>e.role===`user`&&r.has(e.id)).length,a=Math.max(0,n-i);if(a>0){let n=e.filter(e=>e.role===`user`&&!r.has(e.id)&&(e.turnId===void 0||e.turnId===null||t.has(e.turnId))).toSorted((e,t)=>e.createdAt.localeCompare(t.createdAt)||e.id.localeCompare(t.id)).slice(0,a);for(let e of n)r.add(e.id)}let o=e.filter(e=>e.role===`assistant`&&r.has(e.id)).length,s=Math.max(0,n-o);if(s>0){let n=e.filter(e=>e.role===`assistant`&&!r.has(e.id)&&(e.turnId===void 0||e.turnId===null||t.has(e.turnId))).toSorted((e,t)=>e.createdAt.localeCompare(t.createdAt)||e.id.localeCompare(t.id)).slice(0,s);for(let e of n)r.add(e.id)}return e.filter(e=>r.has(e.id))}function XKe(e,t){return e.filter(e=>e.turnId===null||t.has(e.turnId))}function ZKe(e,t){return e.filter(e=>e.turnId===null||t.has(e.turnId))}function FG(e,t,n){let r=lG(e,t);if(!r)return e;let i=n(r);return i===r?e:OG(e,i,r)}function IG(e,t,n,r){let i=FG(e,t,e=>({...e,...r,updatedAt:n})),a=i.sidebarThreadSummaryById[t];return!a||Object.keys(r).every(e=>a[e]===r[e])?i:{...i,sidebarThreadSummaryById:{...i.sidebarThreadSummaryById,[t]:{...a,...r}}}}function QKe(e){return{projectIds:e.map(e=>e.id),projectById:Object.fromEntries(e.map(e=>[e.id,e]))}}function LG(e,t){return e.environmentStateById[t]??dG}function RG(e,t,n){let r=e.environmentStateById[t]===n?e.environmentStateById:{...e.environmentStateById,[t]:n};return r===e.environmentStateById?e:{...e,environmentStateById:r}}function $Ke(e,t,n){let r=t.projects.map(e=>$W(e,n)),i=new Set(t.threads.map(e=>e.id)),a={...e,...QKe(r),threadIds:[],threadIdsByProjectId:{},threadShellById:{},threadSessionById:{},threadTurnStateById:{},threadRateLimitStatusById:AG(e.threadRateLimitStatusById,i),sidebarThreadSummaryById:{},messageIdsByThreadId:AG(e.messageIdsByThreadId,i),messageByThreadId:AG(e.messageByThreadId,i),activityIdsByThreadId:AG(e.activityIdsByThreadId,i),activityByThreadId:AG(e.activityByThreadId,i),proposedPlanIdsByThreadId:AG(e.proposedPlanIdsByThreadId,i),proposedPlanByThreadId:AG(e.proposedPlanByThreadId,i),turnDiffIdsByThreadId:AG(e.turnDiffIdsByThreadId,i),turnDiffSummaryByThreadId:AG(e.turnDiffSummaryByThreadId,i),bootstrapComplete:!0};for(let e of t.threads)a=kG(a,gG(e,n));return a}function eqe(e,t,n){return RG(e,n,$Ke(LG(e,n),t,n))}function tqe(e,t,n){let r=LG(e,n),i=lG(r,t.id);return RG(e,n,OG(r,hG(t,n),i))}function nqe(e,t,n,r){let i=LG(e,t);return RG(e,t,{...i,threadSubscriptionErrorById:{...i.threadSubscriptionErrorById,[n]:r}})}function rqe(e,t,n){let r=LG(e,t);if(!(n in r.threadSubscriptionErrorById))return e;let{[n]:i,...a}=r.threadSubscriptionErrorById;return RG(e,t,{...r,threadSubscriptionErrorById:a})}function zG(e,t,n){switch(t.type){case`project.created`:{let r=$W({id:t.payload.projectId,title:t.payload.title,workspaceRoot:t.payload.workspaceRoot,repositoryIdentity:t.payload.repositoryIdentity??null,defaultModelSelection:t.payload.defaultModelSelection,defaultThreadEnvMode:t.payload.defaultThreadEnvMode??null,cmmdRegistration:t.payload.cmmdRegistration??null,scripts:t.payload.scripts,createdAt:t.payload.createdAt,updatedAt:t.payload.updatedAt,deletedAt:null},n),i=e.projectIds.find(n=>n===t.payload.projectId||e.projectById[n]?.cwd===t.payload.workspaceRoot)??null,a=e.projectById,o=e.projectIds;if(i!==null&&i!==r.id){let{[i]:t,...n}=e.projectById;a={...n,[r.id]:r},o=e.projectIds.map(e=>e===i?r.id:e)}else a={...e.projectById,[r.id]:r},o=i===null&&!e.projectIds.includes(r.id)?[...e.projectIds,r.id]:e.projectIds;return{...e,projectById:a,projectIds:o}}case`project.meta-updated`:{let n=e.projectById[t.payload.projectId];if(!n)return e;let r=yKe(n,t.payload);return{...e,projectById:{...e.projectById,[t.payload.projectId]:r}}}case`project.deleted`:return MG(e,t.payload.projectId);case`thread.created`:{let r=lG(e,t.payload.threadId);return OG(e,hG({id:t.payload.threadId,projectId:t.payload.projectId,title:t.payload.title,modelSelection:t.payload.modelSelection,runtimeMode:t.payload.runtimeMode,interactionMode:t.payload.interactionMode,branch:t.payload.branch,worktreePath:t.payload.worktreePath,latestTurn:null,createdAt:t.payload.createdAt,updatedAt:t.payload.updatedAt,archivedAt:null,deletedAt:null,messages:[],proposedPlans:[],activities:[],checkpoints:[],session:null,anchorKind:t.payload.anchorKind,anchorCmmdId:t.payload.anchorCmmdId,kind:t.payload.kind,parentThreadId:t.payload.parentThreadId,status:t.payload.status,workerRole:t.payload.workerRole,goal:t.payload.goal??null,titleRegeneration:null,pendingAutoCreatePrompt:null},n),r)}case`thread.deleted`:return jG(e,t.payload.threadId);case`thread.archived`:return IG(e,t.payload.threadId,t.payload.updatedAt,{archivedAt:t.payload.archivedAt});case`thread.unarchived`:return IG(e,t.payload.threadId,t.payload.updatedAt,{archivedAt:null});case`thread.settled`:return IG(e,t.payload.threadId,t.payload.updatedAt,{settledAt:t.payload.settledAt,settledOverride:t.payload.settledOverride});case`thread.unsettled`:return IG(e,t.payload.threadId,t.payload.updatedAt,{settledAt:null,settledOverride:`active`});case`thread.meta-updated`:return FG(e,t.payload.threadId,e=>({...e,...t.payload.title===void 0?{}:{title:t.payload.title},...t.payload.modelSelection===void 0?{}:{modelSelection:eG(t.payload.modelSelection)},...t.payload.branch===void 0?{}:{branch:t.payload.branch},...t.payload.worktreePath===void 0?{}:{worktreePath:t.payload.worktreePath},...t.payload.anchorKind===void 0?{}:{anchorKind:t.payload.anchorKind},...t.payload.anchorCmmdId===void 0?{}:{anchorCmmdId:t.payload.anchorCmmdId},...t.payload.status===void 0?{}:{status:t.payload.status},...t.payload.parentThreadId===void 0?{}:{parentThreadId:t.payload.parentThreadId},...t.payload.goal===void 0?{}:{goal:t.payload.goal},...t.payload.linkedPullRequest===void 0?{}:{linkedPullRequest:t.payload.linkedPullRequest},...t.payload.titleRegeneration===void 0?{}:{titleRegeneration:t.payload.titleRegeneration},updatedAt:t.payload.updatedAt}));case`thread.runtime-mode-set`:return FG(e,t.payload.threadId,e=>({...e,runtimeMode:t.payload.runtimeMode,updatedAt:t.payload.updatedAt}));case`thread.interaction-mode-set`:return FG(e,t.payload.threadId,e=>({...e,interactionMode:t.payload.interactionMode,updatedAt:t.payload.updatedAt}));case`thread.turn-start-requested`:return FG(e,t.payload.threadId,e=>({...e,...t.payload.modelSelection===void 0?{}:{modelSelection:eG(t.payload.modelSelection)},runtimeMode:t.payload.runtimeMode,interactionMode:t.payload.interactionMode,pendingSourceProposedPlan:t.payload.sourceProposedPlan,latestTurn:PG({previous:e.latestTurn,turnId:jt.make(t.payload.messageId),state:`running`,requestedAt:t.payload.createdAt,startedAt:t.payload.createdAt,completedAt:null,assistantMessageId:null,sourceProposedPlan:t.payload.sourceProposedPlan}),updatedAt:t.occurredAt}));case`thread.turn-interrupt-requested`:return t.payload.turnId===void 0?e:FG(e,t.payload.threadId,e=>{let n=e.latestTurn;return n===null||n.turnId!==t.payload.turnId?e:{...e,latestTurn:PG({previous:n,turnId:t.payload.turnId,state:`interrupted`,requestedAt:n.requestedAt,startedAt:n.startedAt??t.payload.createdAt,completedAt:n.completedAt??t.payload.createdAt,assistantMessageId:n.assistantMessageId}),updatedAt:t.occurredAt}});case`thread.message-sent`:return FG(e,t.payload.threadId,e=>{let n=rG(e.environmentId,{id:t.payload.messageId,role:t.payload.role,text:t.payload.text,...t.payload.attachments===void 0?{}:{attachments:t.payload.attachments},turnId:t.payload.turnId,streaming:t.payload.streaming,createdAt:t.payload.createdAt,updatedAt:t.payload.updatedAt}),r=(e.messages.find(e=>e.id===n.id)?e.messages.map(e=>e.id===n.id?{...e,text:n.streaming?`${e.text}${n.text}`:n.text.length>0?n.text:e.text,streaming:n.streaming,...n.turnId===void 0?{}:{turnId:n.turnId},...n.streaming?e.completedAt===void 0?{}:{completedAt:e.completedAt}:n.completedAt===void 0?{}:{completedAt:n.completedAt},...n.attachments===void 0?{}:{attachments:n.attachments}}:e):[...e.messages,n]).slice(-2e3),i=t.payload.role===`assistant`&&t.payload.turnId!==null?JKe(e.turnDiffSummaries,t.payload.turnId,t.payload.messageId):e.turnDiffSummaries,a=t.payload.role===`assistant`&&t.payload.turnId!==null&&(e.latestTurn===null||e.latestTurn.turnId===t.payload.turnId)?PG({previous:e.latestTurn,turnId:t.payload.turnId,state:t.payload.streaming?`running`:e.latestTurn?.state===`interrupted`?`interrupted`:e.latestTurn?.state===`error`?`error`:`completed`,requestedAt:e.latestTurn?.turnId===t.payload.turnId?e.latestTurn.requestedAt:t.payload.createdAt,startedAt:e.latestTurn?.turnId===t.payload.turnId?e.latestTurn.startedAt??t.payload.createdAt:t.payload.createdAt,sourceProposedPlan:e.pendingSourceProposedPlan,completedAt:t.payload.streaming?e.latestTurn?.turnId===t.payload.turnId?e.latestTurn.completedAt??null:null:t.payload.updatedAt,assistantMessageId:t.payload.messageId}):e.latestTurn;return{...e,messages:r,turnDiffSummaries:i,latestTurn:a,updatedAt:t.occurredAt}});case`thread.session-set`:return FG(e,t.payload.threadId,e=>({...e,session:nG(t.payload.session),error:CV(t.payload.session.lastError),latestTurn:t.payload.session.status===`running`&&t.payload.session.activeTurnId!==null?PG({previous:e.latestTurn,turnId:t.payload.session.activeTurnId,state:`running`,requestedAt:e.latestTurn?.turnId===t.payload.session.activeTurnId?e.latestTurn.requestedAt:t.payload.session.updatedAt,startedAt:e.latestTurn?.turnId===t.payload.session.activeTurnId?e.latestTurn.startedAt??t.payload.session.updatedAt:t.payload.session.updatedAt,completedAt:null,assistantMessageId:e.latestTurn?.turnId===t.payload.session.activeTurnId?e.latestTurn.assistantMessageId:null,sourceProposedPlan:e.pendingSourceProposedPlan}):e.latestTurn,updatedAt:t.occurredAt}));case`thread.session-stop-requested`:return FG(e,t.payload.threadId,e=>e.session===null?e:{...e,session:{...e.session,status:`closed`,orchestrationStatus:`stopped`,activeTurnId:void 0,updatedAt:t.payload.createdAt},updatedAt:t.occurredAt});case`thread.proposed-plan-upserted`:return FG(e,t.payload.threadId,e=>{let n=iG(t.payload.proposedPlan),r=[...e.proposedPlans.filter(e=>e.id!==n.id),n].toSorted((e,t)=>e.createdAt.localeCompare(t.createdAt)||e.id.localeCompare(t.id)).slice(-200);return{...e,proposedPlans:r,updatedAt:t.occurredAt}});case`thread.turn-diff-completed`:return FG(e,t.payload.threadId,e=>{let n=aG({turnId:t.payload.turnId,checkpointTurnCount:t.payload.checkpointTurnCount,checkpointRef:t.payload.checkpointRef,status:t.payload.status,files:t.payload.files,assistantMessageId:t.payload.assistantMessageId,completedAt:t.payload.completedAt}),r=e.turnDiffSummaries.find(e=>e.turnId===n.turnId);if(r&&r.status!==`missing`&&n.status===`missing`)return e;let i=[...e.turnDiffSummaries.filter(e=>e.turnId!==n.turnId),n].toSorted((e,t)=>(e.checkpointTurnCount??2**53-1)-(t.checkpointTurnCount??2**53-1)).slice(-500),a=e.latestTurn===null||e.latestTurn.turnId===t.payload.turnId?PG({previous:e.latestTurn,turnId:t.payload.turnId,state:NG(t.payload.status),requestedAt:e.latestTurn?.requestedAt??t.payload.completedAt,startedAt:e.latestTurn?.startedAt??t.payload.completedAt,completedAt:t.payload.completedAt,assistantMessageId:t.payload.assistantMessageId,sourceProposedPlan:e.pendingSourceProposedPlan}):e.latestTurn;return{...e,turnDiffSummaries:i,latestTurn:a,updatedAt:t.occurredAt}});case`thread.reverted`:return FG(e,t.payload.threadId,e=>{let n=e.turnDiffSummaries.filter(e=>e.checkpointTurnCount!==void 0&&e.checkpointTurnCount<=t.payload.turnCount).toSorted((e,t)=>(e.checkpointTurnCount??2**53-1)-(t.checkpointTurnCount??2**53-1)).slice(-500),r=new Set(n.map(e=>e.turnId)),i=YKe(e.messages,r,t.payload.turnCount).slice(-2e3),a=ZKe(e.proposedPlans,r).slice(-200),o=XKe(e.activities,r),s=n.at(-1)??null;return{...e,turnDiffSummaries:n,messages:i,proposedPlans:a,activities:o,pendingSourceProposedPlan:void 0,latestTurn:s===null?null:{turnId:s.turnId,state:NG(s.status??`ready`),requestedAt:s.completedAt,startedAt:s.completedAt,completedAt:s.completedAt,assistantMessageId:s.assistantMessageId??null},updatedAt:t.occurredAt}});case`thread.activity-appended`:return FG(e,t.payload.threadId,e=>{let n=[...e.activities.filter(e=>e.id!==t.payload.activity.id),{...t.payload.activity}].toSorted(qKe).slice(-500);return{...e,activities:n,updatedAt:t.occurredAt}});case`thread.rate-limit-set`:return FG(e,t.payload.threadId,e=>({...e,rateLimitStatus:IKe(e.rateLimitStatus??[],t.payload),updatedAt:t.occurredAt}));case`thread.worker-spawned`:return FG(e,t.payload.workerThreadId,e=>({...e,kind:`worker`,parentThreadId:t.payload.masterThreadId,branch:t.payload.branch,worktreePath:t.payload.worktreePath,workerRole:t.payload.workerRole??e.workerRole??null,updatedAt:t.occurredAt}));case`thread.approval-response-requested`:case`thread.user-input-response-requested`:return e}return e}function iqe(e,t,n){switch(t.kind){case`project-upserted`:{let r=$W(t.project,n),i=e.projectIds.find(n=>n===t.project.id||e.projectById[n]?.cwd===t.project.workspaceRoot)??null,a=e.projectById,o=e.projectIds;if(i!==null&&i!==r.id){let{[i]:t,...n}=e.projectById;a={...n,[r.id]:r},o=e.projectIds.map(e=>e===i?r.id:e)}else a={...e.projectById,[r.id]:r},o=i===null&&!e.projectIds.includes(r.id)?[...e.projectIds,r.id]:e.projectIds;return{...e,projectById:a,projectIds:o}}case`project-removed`:return MG(e,t.projectId);case`thread-upserted`:return kG(e,gG(t.thread,n));case`thread-removed`:return jG(e,t.threadId)}}function aqe(e,t,n){if(t.length===0)return e;let r=LG(e,n);return RG(e,n,t.reduce((e,t)=>zG(e,t,n),r))}function BG(e){return Object.entries(e.environmentStateById)}function VG(e,t){return t?LG(e,t):dG}function oqe(e,t){return EG(VG(e,t))}function HG(e){return BG(e).flatMap(([,e])=>GKe(e))}function UG(e){return BG(e).flatMap(([,e])=>EG(e))}function sqe(e){return BG(e).flatMap(([,e])=>WG(e).flatMap(t=>{let n=e.threadShellById[t];return n?[n]:[]}))}function WG(e){let t=[],n=new Set,r=e=>{n.has(e)||(n.add(e),t.push(e))};for(let t of e.threadIds)r(t);for(let t of Object.keys(e.threadShellById))r(t);for(let t of Object.keys(e.sidebarThreadSummaryById))r(t);return t}function GG(e,t,n){let r=t.sidebarThreadSummaryById[n];if(r)return r.environmentId===e?r:{...r,environmentId:e};let i=t.threadShellById[n];return i?{id:i.id,environmentId:e,projectId:i.projectId,title:i.title,modelSelection:i.modelSelection,interactionMode:i.interactionMode,session:t.threadSessionById[n]??null,createdAt:i.createdAt,archivedAt:i.archivedAt,settledAt:i.settledAt,settledOverride:i.settledOverride,updatedAt:i.updatedAt,latestTurn:t.threadTurnStateById[n]?.latestTurn??null,branch:i.branch,worktreePath:i.worktreePath,latestUserMessageAt:null,hasPendingApprovals:!1,hasPendingUserInput:!1,hasActionableProposedPlan:!1,anchorKind:i.anchorKind,anchorCmmdId:i.anchorCmmdId,goal:i.goal,titleRegeneration:i.titleRegeneration,kind:i.kind,parentThreadId:i.parentThreadId,workerRole:i.workerRole,status:i.status}:null}function cqe(e){return BG(e).flatMap(([e,t])=>WG(t).flatMap(n=>{let r=GG(e,t,n);return r?[r]:[]}))}function KG(e,t){if(!t)return[];let n=VG(e,t.environmentId),r=n.threadIdsByProjectId[t.projectId]??fG;return(r.length>0?r:WG(n)).flatMap(e=>{let r=GG(t.environmentId,n,e);return!r||r.projectId!==t.projectId?[]:[r]})}function lqe(e,t){return t.length===0?[]:t.length===1?KG(e,t[0]):t.flatMap(t=>KG(e,t))}function uqe(e){return e.activeEnvironmentId===null?Object.values(e.environmentStateById).some(e=>e.bootstrapComplete):VG(e,e.activeEnvironmentId).bootstrapComplete}function dqe(e,t){return t?VG(e,t.environmentId).projectById[t.projectId]:void 0}function qG(e,t){return t?lG(VG(e,t.environmentId),t.threadId):void 0}function fqe(e,t){return t?VG(e,t.environmentId).threadShellById[t.threadId]!==void 0:!1}function JG(e,t){return t?GG(t.environmentId,VG(e,t.environmentId),t.threadId)??void 0:void 0}function pqe(e,t,n){if(e.activeEnvironmentId===null)return e;let r=FG(LG(e,e.activeEnvironmentId),t,e=>e.error===n?e:{...e,error:n});return RG(e,e.activeEnvironmentId,r)}function mqe(e,t,n){return RG(e,n,zG(LG(e,n),t,n))}function hqe(e,t,n){return RG(e,n,iqe(LG(e,n),t,n))}function gqe(e,t){return e.activeEnvironmentId===t?e:{...e,activeEnvironmentId:t}}function _qe(e,t,n,r){let i=FG(LG(e,t.environmentId),t.threadId,e=>{if(e.branch===n&&e.worktreePath===r)return e;let t=e.worktreePath!==r;return{...e,branch:n,worktreePath:r,...t?{session:null}:{}}});return RG(e,t.environmentId,i)}var YG=dt(e=>({...LKe,setActiveEnvironmentId:t=>e(e=>gqe(e,t)),syncServerShellSnapshot:(t,n)=>e(e=>eqe(e,t,n)),syncServerThreadDetail:(t,n)=>e(e=>tqe(e,t,n)),setThreadSubscriptionError:(t,n,r)=>e(e=>nqe(e,t,n,r)),clearThreadSubscriptionError:(t,n)=>e(e=>rqe(e,t,n)),applyOrchestrationEvent:(t,n)=>e(e=>mqe(e,t,n)),applyOrchestrationEvents:(t,n)=>e(e=>aqe(e,t,n)),applyShellEvent:(t,n)=>e(e=>hqe(e,t,n)),setError:(t,n)=>e(e=>pqe(e,t,n)),setThreadBranch:(t,n,r)=>e(e=>_qe(e,t,n,r))}));function XG(e,t){let n;try{n=e()}catch{return}return{getItem:e=>{let r=e=>e===null?null:JSON.parse(e,t?.reviver),i=n.getItem(e)??null;return i instanceof Promise?i.then(r):r(i)},setItem:(e,r)=>n.setItem(e,JSON.stringify(r,t?.replacer)),removeItem:e=>n.removeItem(e)}}var ZG=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return ZG(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return ZG(t)(e)}}}},QG=(e,t)=>(n,r,i)=>{let a={storage:XG(()=>window.localStorage),partialize:e=>e,version:0,merge:(e,t)=>({...t,...e}),...t},o=!1,s=0,c=new Set,l=new Set,u=a.storage;if(!u)return e((...e)=>{console.warn(`[zustand persist middleware] Unable to update item '${a.name}', the given storage is currently unavailable.`),n(...e)},r,i);let d=()=>{let e=a.partialize({...r()});return u.setItem(a.name,{state:e,version:a.version})},f=i.setState;i.setState=(e,t)=>(f(e,t),d());let p=e((...e)=>(n(...e),d()),r,i);i.getInitialState=()=>p;let m,h=()=>{if(!u)return;let e=++s;o=!1,c.forEach(e=>e(r()??p));let t=a.onRehydrateStorage?.call(a,r()??p)||void 0;return ZG(u.getItem.bind(u))(a.name).then(e=>{if(e)if(typeof e.version==`number`&&e.version!==a.version){if(a.migrate){let t=a.migrate(e.state,e.version);return t instanceof Promise?t.then(e=>[!0,e]):[!0,t]}console.error(`State loaded from storage couldn't be migrated since no migrate function was provided`)}else return[!1,e.state];return[!1,void 0]}).then(t=>{if(e!==s)return;let[i,o]=t;if(m=a.merge(o,r()??p),n(m,!0),i)return d()}).then(()=>{e===s&&(t?.(r(),void 0),m=r(),o=!0,l.forEach(e=>e(m)))}).catch(n=>{e===s&&t?.(void 0,n)})};return i.persist={setOptions:e=>{a={...a,...e},e.storage&&(u=e.storage)},clearStorage:()=>{++s,u?.removeItem(a.name)},getOptions:()=>a,rehydrate:()=>h(),hasHydrated:()=>o,onHydrate:e=>(c.add(e),()=>{c.delete(e)}),onFinishHydration:e=>(l.add(e),()=>{l.delete(e)})},a.skipHydration||h(),m||p},vqe=/^(localhost|[a-z0-9.-]+\.localhost|127(?:\.\d{1,3}){3}|\[[0:]+1\]|::1)(?::\d+)?(?:[/?#]|$)/i,$G=/https?:\/\/[^\s"'`<>]+/gu,yqe=new RegExp(String.raw`\u001B(?:\][\s\S]*?(?:\u0007|\u001B\\)|[@-_][0-?]*[ -/]*[@-~])`,`gu`),bqe=/(https?:\/\/(?:localhost|[a-z0-9.-]+\.localhost|127(?:\.\d{1,3}){3}|\[[0:]+1\]|::1|10(?:\.\d{1,3}){3}|172\.(?:1[6-9]|2\d|3[01])(?:\.\d{1,3}){2}|192\.168(?:\.\d{1,3}){2}):)\s+(\d{1,5})(?=[/?#\s]|$)/giu;function eK(e){let t=e.trim();if(!t||/^[a-z][a-z0-9+.-]*:\/\//i.test(t)&&!/^https?:\/\//i.test(t))return null;let n=t.split(/[/:?#]/,1)[0]??``,r=vqe.test(t)||nK(n)?`http`:`https`,i=/^https?:\/\//i.test(t)?t:`${r}://${t}`;try{let e=new URL(i);return e.protocol!==`http:`&&e.protocol!==`https:`?null:e.toString()}catch{return null}}function xqe(e){try{let t=new URL(e);return t.protocol===`http:`||t.protocol===`https:`}catch{return!1}}function tK(e){try{let t=new URL(e);return ane(t.hostname)}catch{return!1}}function nK(e){return Yte(e)}function rK(e){try{let t=new URL(e);if(t.protocol!==`http:`||!tK(t.toString())&&!nK(t.hostname)||!t.port)return null;let n=Number(t.port);return Number.isInteger(n)&&n>0&&n<=65535?n:null}catch{return null}}function Sqe(e){let t=e.replace(/[.,;!?]+$/u,``);for(;t.endsWith(`)`)||t.endsWith(`]`)||t.endsWith(`}`);){let e=t.at(-1);if(!e)break;let n=e===`)`?`(`:e===`]`?`[`:`{`;if(t.split(n).length-1>=t.split(e).length-1)break;t=t.slice(0,-1)}return t}function Cqe(e){return e.replace(yqe,``).replaceAll(/./gsu,e=>wqe(e)?``:e).replace(bqe,`$1$2`)}function wqe(e){let t=e.charCodeAt(0);return t>=0&&t<=8||t===11||t===12||t>=14&&t<=31||t===127}function iK(e){let t=null,n=null,r=Cqe(e);$G.lastIndex=0;for(let e of r.matchAll($G)){let r=eK(Sqe(e[0]));!r||!rK(r)||(t=r,tK(r)&&(n=r))}return n??t}function Tqe(e){let t=null;for(let n of e){let e=n.event,r=iK(e.type===`output`?e.data:e.type===`started`||e.type===`restarted`?e.snapshot.history:``);r&&(t=r)}return t}function aK(){let e=new Map;return{getItem:t=>e.get(t)??null,setItem:(t,n)=>{e.set(t,n)},removeItem:t=>{e.delete(t)}}}function Eqe(e){return e!=null&&typeof e.getItem==`function`&&typeof e.setItem==`function`&&typeof e.removeItem==`function`}function oK(e){return Eqe(e)?e:aK()}var sK=aK();function cK(){return globalThis.localStorage||globalThis.window?.localStorage}var lK={getItem:e=>{try{let t=cK()?.getItem(e);if(t!==void 0)return t}catch{}return sK.getItem(e)},setItem:(e,t)=>{try{let n=cK();if(n){n.setItem(e,t);return}}catch{}sK.setItem(e,t)},removeItem:e=>{try{let t=cK();if(t){t.removeItem(e);return}}catch{}sK.removeItem(e)}};function uK(e){let t=lK.getItem(e);return typeof t==`string`?t:null}function dK(e,t){lK.setItem(e,t)}function Dqe(e){lK.removeItem(e)}function Oqe(e,t=300){let n=oK(e),r=new pt((e,t)=>{n.setItem(e,t)},{wait:t});return{getItem:e=>n.getItem(e),setItem:(e,t)=>{r.maybeExecute(e,t)},removeItem:e=>{r.cancel(),n.removeItem(e)},flush:()=>{r.flush()}}}function kqe(e){switch(e.type){case`activity`:return e.hasRunningSubprocess;case`started`:case`restarted`:case`exited`:return!1;default:return null}}var fK=`full-access`,pK=`default`,mK=`default`,Aqe=`forge:terminal-state:v1`,hK=[],jqe=200,gK=8;function Mqe(e,t){if(t<=3&&e&&typeof e==`object`){let t=e;return{terminalStateByThreadKey:EK(t.terminalStateByThreadKey??{}),terminalPreviewUrlByThreadKey:Object.fromEntries(Object.entries(t.terminalPreviewUrlByThreadKey??{}).filter(([e,t])=>!!fi(e)&&typeof t?.url==`string`&&!!rK(t.url)&&typeof t?.observedAt==`string`))}}return{terminalStateByThreadKey:{},terminalPreviewUrlByThreadKey:{}}}function Nqe(){return oK(typeof window<`u`?window.localStorage:void 0)}function Pqe(e){let t=[...new Set(e.map(e=>e.trim()).filter(e=>e.length>0))];return t.length>0?t:[mK]}function Fqe(e,t){if(e.length===0)return[];let n=new Set(t);return[...new Set(e)].map(e=>e.trim()).filter(e=>e.length>0&&n.has(e))}function _K(e){return`group-${e}`}function vK(e,t){let n=e,r=2;for(;t.has(n);)n=`${e}-${r}`,r+=1;return t.add(n),n}function yK(e,t){return e.findIndex(e=>e.terminalIds.includes(t))}function Iqe(e){return[...new Set(e.map(e=>e.trim()).filter(e=>e.length>0))]}function Lqe(e,t){let n=new Set(t),r=new Set,i=[],a=new Set;for(let t of e){let e=Iqe(t.terminalIds).filter(e=>!(!n.has(e)||r.has(e)));if(e.length===0)continue;for(let t of e)r.add(t);let o=t.id.trim().length>0?t.id.trim():_K(e[0]??`default`);i.push({id:vK(o,a),terminalIds:e})}for(let e of t)r.has(e)||i.push({id:vK(_K(e),a),terminalIds:[e]});return i.length===0?[{id:_K(mK),terminalIds:[mK]}]:i}function bK(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1)if(e[n]!==t[n])return!1;return!0}function Rqe(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1){let r=e[n],i=t[n];if(!r||!i||r.id!==i.id||!bK(r.terminalIds,i.terminalIds))return!1}return!0}function xK(e,t){return e.terminalOpen===t.terminalOpen&&e.terminalHeight===t.terminalHeight&&e.activeTerminalId===t.activeTerminalId&&e.activeTerminalGroupId===t.activeTerminalGroupId&&bK(e.terminalIds,t.terminalIds)&&bK(e.runningTerminalIds,t.runningTerminalIds)&&Rqe(e.terminalGroups,t.terminalGroups)}var SK=Object.freeze({terminalOpen:!1,terminalHeight:280,terminalIds:[mK],runningTerminalIds:[],activeTerminalId:mK,terminalGroups:[{id:_K(mK),terminalIds:[mK]}],activeTerminalGroupId:_K(mK)});function CK(){return{...SK,terminalIds:[...SK.terminalIds],runningTerminalIds:[...SK.runningTerminalIds],terminalGroups:PK(SK.terminalGroups)}}function wK(){return SK}function TK(e){let t=Pqe(e.terminalIds),n=t.length>0?t:[mK],r=Fqe(e.runningTerminalIds,n),i=n.includes(e.activeTerminalId)?e.activeTerminalId:n[0]??`default`,a=Lqe(e.terminalGroups,n),o=a.some(t=>t.id===e.activeTerminalGroupId)?e.activeTerminalGroupId:null,s=a.find(e=>e.terminalIds.includes(i))?.id??null,c={terminalOpen:e.terminalOpen,terminalHeight:Number.isFinite(e.terminalHeight)&&e.terminalHeight>0?e.terminalHeight:280,terminalIds:n,runningTerminalIds:r,activeTerminalId:i,terminalGroups:a,activeTerminalGroupId:o??s??a[0]?.id??_K(`default`)};return xK(e,c)?e:c}function zqe(e){let t=TK(e);if(t.terminalIds.length<=gK)return t;let n=new Set,r=e=>{!e||n.size>=gK||t.terminalIds.includes(e)&&n.add(e)};r(mK),r(t.activeTerminalId);for(let e of t.runningTerminalIds)r(e);for(let e of t.terminalIds.toReversed())r(e);let i=t.terminalIds.filter(e=>n.has(e)),a=i[i.length-1]??i[0]??`default`,o=i.includes(t.activeTerminalId)?t.activeTerminalId:a;return TK({...t,terminalIds:i.length>0?i:[mK],runningTerminalIds:t.runningTerminalIds.filter(e=>n.has(e)),activeTerminalId:o,terminalGroups:t.terminalGroups.map(e=>({id:e.id,terminalIds:e.terminalIds.filter(e=>n.has(e))})).filter(e=>e.terminalIds.length>0)})}function EK(e){return Object.fromEntries(Object.entries(e).flatMap(([e,t])=>fi(e)?[[e,zqe(t)]]:[]))}function Bqe(e){return xK(TK(e),SK)}function Vqe(e){return e.trim().length>0}function DK(e){return li(e)}function OK(e,t){return`${DK(e)}\u0000${t}`}function kK(e,t){return OK(e,t)}function AK(e){let t=Date.parse(e);return Number.isFinite(t)?t:0}function jK(e,t){let n=iK(e);return n?{url:n,observedAt:t}:null}function Hqe(e){return jK(e.history,e.updatedAt)}function MK(e){return e.type===`output`?jK(e.data,e.createdAt):e.type===`started`||e.type===`restarted`?jK(e.snapshot.history,e.snapshot.updatedAt):null}function NK(e,t,n){if(!n)return e;let r=DK(t),i=e[r];return i&&AK(i.observedAt)>AK(n.observedAt)||i?.url===n.url&&i.observedAt===n.observedAt?e:{...e,[r]:n}}function PK(e){return e.map(e=>({id:e.id,terminalIds:[...e.terminalIds]}))}function FK(e,t,n,r){let i=OK(n,r.terminalId),a=e[i]??hK,o={id:t,event:r},s=a.length>=jqe?[...a.slice(1),o]:[...a,o];return{terminalEventEntriesByKey:{...e,[i]:s},nextTerminalEventId:t+1}}function IK(e,t,n,r){let i=OK(n,r.terminalId);return{terminalEventEntriesByKey:{...e,[i]:[{id:t,event:r}]},nextTerminalEventId:t+1}}function LK(e){return e.sessionEpoch&&e.sequence!==void 0?{sessionEpoch:e.sessionEpoch,sequence:e.sequence}:null}function RK(e,t,n){return!t||!e?!1:t.sessionEpoch===e.sessionEpoch?n?t.sequence<e.sequence:t.sequence<=e.sequence:!n}function zK(e,t){let n={...e},r=!1;for(let e of Object.keys(n))e.startsWith(`${t}\u0000`)&&(delete n[e],r=!0);return r?n:e}function Uqe(e){return{terminalId:e.terminalId,cwd:e.snapshot.cwd,worktreePath:e.snapshot.worktreePath}}function Wqe(e,t){let n=Uqe(t);return e?.runtimeEnv&&e.cwd===n.cwd&&e.worktreePath===n.worktreePath&&(e.terminalId===void 0||e.terminalId===t.terminalId)?{...n,runtimeEnv:e.runtimeEnv}:n}function BK(e,t,n){let r=TK(e);if(!Vqe(t))return r;let i=!r.terminalIds.includes(t),a=i?[...r.terminalIds,t]:r.terminalIds,o=PK(r.terminalGroups),s=yK(o,t);if(s>=0&&(o[s].terminalIds=o[s].terminalIds.filter(e=>e!==t),o[s].terminalIds.length===0&&o.splice(s,1)),n===`new`){let e=new Set(o.map(e=>e.id)),n=vK(_K(t),e);return o.push({id:n,terminalIds:[t]}),TK({...r,terminalOpen:!0,terminalIds:a,activeTerminalId:t,terminalGroups:o,activeTerminalGroupId:n})}let c=o.findIndex(e=>e.id===r.activeTerminalGroupId);if(c<0&&(c=yK(o,r.activeTerminalId)),c<0){let e=new Set(o.map(e=>e.id)),t=vK(_K(r.activeTerminalId),e);o.push({id:t,terminalIds:[r.activeTerminalId]}),c=o.length-1}let l=o[c];if(!l||i&&!l.terminalIds.includes(t)&&l.terminalIds.length>=4)return r;if(!l.terminalIds.includes(t)){let e=l.terminalIds.indexOf(r.activeTerminalId);e>=0?l.terminalIds.splice(e+1,0,t):l.terminalIds.push(t)}return TK({...r,terminalOpen:!0,terminalIds:a,activeTerminalId:t,terminalGroups:o,activeTerminalGroupId:l.id})}function VK(e,t){let n=TK(e);return n.terminalOpen===t?n:{...n,terminalOpen:t}}function Gqe(e,t){let n=TK(e);return!Number.isFinite(t)||t<=0||n.terminalHeight===t?n:{...n,terminalHeight:t}}function Kqe(e,t){return BK(e,t,`split`)}function HK(e,t,n){let r=BK(e,t,`new`);return n?.openDrawer===!1?{...r,terminalOpen:e.terminalOpen}:r}function UK(e,t){let n=TK(e);if(!n.terminalIds.includes(t))return n;let r=n.terminalGroups.find(e=>e.terminalIds.includes(t))?.id??n.activeTerminalGroupId;return n.activeTerminalId===t&&n.activeTerminalGroupId===r?n:{...n,activeTerminalId:t,activeTerminalGroupId:r}}function qqe(e,t){let n=TK(e);if(!n.terminalIds.includes(t))return n;let r=n.terminalIds.filter(e=>e!==t);if(r.length===0)return CK();let i=n.terminalIds.indexOf(t),a=n.activeTerminalId===t?r[Math.min(i,r.length-1)]??r[0]??`default`:n.activeTerminalId,o=n.terminalGroups.map(e=>({...e,terminalIds:e.terminalIds.filter(e=>e!==t)})).filter(e=>e.terminalIds.length>0),s=o.find(e=>e.terminalIds.includes(a))?.id??o[0]?.id??_K(a);return TK({terminalOpen:n.terminalOpen,terminalHeight:n.terminalHeight,terminalIds:r,runningTerminalIds:n.runningTerminalIds.filter(e=>e!==t),activeTerminalId:a,terminalGroups:o,activeTerminalGroupId:s})}function WK(e,t,n){let r=TK(e);if(!r.terminalIds.includes(t)||n===r.runningTerminalIds.includes(t))return r;let i=new Set(r.runningTerminalIds);return n?i.add(t):i.delete(t),{...r,runningTerminalIds:[...i]}}function GK(e,t){return!t||t.threadId.length===0?wK():e[DK(t)]??wK()}function KK(e,t,n){if(t.threadId.length===0)return e;let r=DK(t),i=GK(e,t),a=n(i);if(a===i)return e;if(Bqe(a)){if(e[r]===void 0)return e;let{[r]:t,...n}=e;return n}return{...e,[r]:a}}function Jqe(e,t,n){return!t||t.threadId.length===0||n.trim().length===0?hK:e[OK(t,n)]??hK}function Yqe(e,t,n){return!t||t.threadId.length===0||n.trim().length===0?null:e[kK(t,n)]??null}function Xqe(e,t){if(!t||t.threadId.length===0)return[];let n=`${DK(t)}\u0000`;return Object.entries(e).filter(([e])=>e.startsWith(n)).map(([,e])=>e)}function Zqe(e,t){return!t||t.threadId.length===0?null:e[DK(t)]??null}var qK=dt()(QG(e=>{let t=(t,n)=>{e(e=>{let r=KK(e.terminalStateByThreadKey,t,n);return r===e.terminalStateByThreadKey?e:{terminalStateByThreadKey:r}})};return{terminalStateByThreadKey:{},terminalLaunchContextByThreadKey:{},terminalEventEntriesByKey:{},terminalSessionSnapshotByKey:{},terminalStreamCursorByKey:{},terminalPreviewUrlByThreadKey:{},nextTerminalEventId:1,setTerminalOpen:(e,n)=>t(e,e=>VK(e,n)),setTerminalHeight:(e,n)=>t(e,e=>Gqe(e,n)),splitTerminal:(e,n)=>t(e,e=>Kqe(e,n)),newTerminal:(e,n,r)=>t(e,e=>HK(e,n,r)),ensureTerminal:(e,n,r)=>t(e,e=>{let t=e;return e.terminalIds.includes(n)||(t=HK(t,n)),r?.active===!1&&(t={...t,activeTerminalId:e.activeTerminalId,activeTerminalGroupId:e.activeTerminalGroupId}),(r?.active??!0)&&(t=UK(t,n)),r?.open&&(t=VK(t,!0)),TK(t)}),setActiveTerminal:(e,n)=>t(e,e=>UK(e,n)),closeTerminal:(e,n)=>t(e,e=>qqe(e,n)),setTerminalLaunchContext:(t,n)=>e(e=>({terminalLaunchContextByThreadKey:{...e.terminalLaunchContextByThreadKey,[DK(t)]:n}})),clearTerminalLaunchContext:t=>e(e=>{let n=DK(t);if(!e.terminalLaunchContextByThreadKey[n])return e;let{[n]:r,...i}=e.terminalLaunchContextByThreadKey;return{terminalLaunchContextByThreadKey:i}}),setTerminalActivity:(e,n,r)=>t(e,e=>WK(e,n,r)),recordTerminalEvent:(t,n)=>e(e=>{let r=kK(t,n.terminalId),i=LK(n),a=n.type===`started`||n.type===`restarted`;if(RK(e.terminalStreamCursorByKey[r],i,a))return e;let o=a&&i?IK(e.terminalEventEntriesByKey,e.nextTerminalEventId,t,n):FK(e.terminalEventEntriesByKey,e.nextTerminalEventId,t,n),s=i?{...e.terminalStreamCursorByKey,[r]:i}:e.terminalStreamCursorByKey,c=NK(e.terminalPreviewUrlByThreadKey,t,MK(n));return n.type!==`started`&&n.type!==`restarted`?{...o,terminalStreamCursorByKey:s,terminalPreviewUrlByThreadKey:c}:{...o,terminalStreamCursorByKey:s,terminalPreviewUrlByThreadKey:c,terminalSessionSnapshotByKey:{...e.terminalSessionSnapshotByKey,[kK(t,n.terminalId)]:n.snapshot}}}),applyTerminalEvent:(t,n)=>e(e=>{let r=DK(t),i=kK(t,n.terminalId),a=LK(n),o=n.type===`started`||n.type===`restarted`;if(RK(e.terminalStreamCursorByKey[i],a,o))return e;let s=e.terminalStateByThreadKey,c=e.terminalLaunchContextByThreadKey,l=e.terminalSessionSnapshotByKey,u=NK(e.terminalPreviewUrlByThreadKey,t,MK(n));(n.type===`started`||n.type===`restarted`)&&(l={...l,[kK(t,n.terminalId)]:n.snapshot},s=KK(s,t,e=>{let t=e.activeTerminalId===n.terminalId,r=e;return e.terminalIds.includes(n.terminalId)||(r=HK(r,n.terminalId)),t?(r=UK(r,n.terminalId),r=VK(r,!0)):(r=UK(r,e.activeTerminalId),r=VK(r,e.terminalOpen)),TK(r)}),c={...c,[r]:Wqe(c[r],n)});let d=kqe(n);d!==null&&(s=KK(s,t,e=>WK(e,n.terminalId,d)));let f=o&&a?IK(e.terminalEventEntriesByKey,e.nextTerminalEventId,t,n):FK(e.terminalEventEntriesByKey,e.nextTerminalEventId,t,n),p=a?{...e.terminalStreamCursorByKey,[i]:a}:e.terminalStreamCursorByKey;return{terminalStateByThreadKey:s,terminalLaunchContextByThreadKey:c,terminalSessionSnapshotByKey:l,terminalStreamCursorByKey:p,terminalPreviewUrlByThreadKey:u,...f}}),setTerminalSessionSnapshot:(t,n)=>e(e=>({terminalSessionSnapshotByKey:{...e.terminalSessionSnapshotByKey,[kK(t,n.terminalId)]:n},terminalPreviewUrlByThreadKey:NK(e.terminalPreviewUrlByThreadKey,t,Hqe(n))})),clearTerminalState:t=>e(e=>{let n=DK(t),r=KK(e.terminalStateByThreadKey,t,()=>CK()),i=e.terminalLaunchContextByThreadKey[n]!==void 0,a=e.terminalPreviewUrlByThreadKey[n]!==void 0,{[n]:o,...s}=e.terminalLaunchContextByThreadKey,{[n]:c,...l}=e.terminalPreviewUrlByThreadKey,u={...e.terminalEventEntriesByKey},d=!1;for(let e of Object.keys(u))e.startsWith(`${n}\u0000`)&&(delete u[e],d=!0);let f={...e.terminalSessionSnapshotByKey},p=!1;for(let e of Object.keys(f))e.startsWith(`${n}\u0000`)&&(delete f[e],p=!0);let m=zK(e.terminalStreamCursorByKey,n);return r===e.terminalStateByThreadKey&&!i&&!a&&!d&&!p&&m===e.terminalStreamCursorByKey?e:{terminalStateByThreadKey:r,terminalLaunchContextByThreadKey:s,terminalPreviewUrlByThreadKey:l,terminalEventEntriesByKey:u,terminalSessionSnapshotByKey:f,terminalStreamCursorByKey:m}}),removeTerminalState:t=>e(e=>{let n=DK(t),r=e.terminalStateByThreadKey[n]!==void 0,i=e.terminalLaunchContextByThreadKey[n]!==void 0,a=e.terminalPreviewUrlByThreadKey[n]!==void 0,o={...e.terminalEventEntriesByKey},s=!1;for(let e of Object.keys(o))e.startsWith(`${n}\u0000`)&&(delete o[e],s=!0);let c={...e.terminalSessionSnapshotByKey},l=!1;for(let e of Object.keys(c))e.startsWith(`${n}\u0000`)&&(delete c[e],l=!0);let u=zK(e.terminalStreamCursorByKey,n);if(!r&&!i&&!a&&!s&&!l&&u===e.terminalStreamCursorByKey)return e;let d={...e.terminalStateByThreadKey};delete d[n];let f={...e.terminalLaunchContextByThreadKey};delete f[n];let p={...e.terminalPreviewUrlByThreadKey};return delete p[n],{terminalStateByThreadKey:d,terminalLaunchContextByThreadKey:f,terminalPreviewUrlByThreadKey:p,terminalEventEntriesByKey:o,terminalSessionSnapshotByKey:c,terminalStreamCursorByKey:u}}),removeOrphanedTerminalStates:t=>e(e=>{let n=Object.keys(e.terminalStateByThreadKey).filter(e=>!t.has(e)),r=Object.keys(e.terminalLaunchContextByThreadKey).filter(e=>!t.has(e)),i=Object.keys(e.terminalPreviewUrlByThreadKey).filter(e=>!t.has(e)),a={...e.terminalEventEntriesByKey},o=!1;for(let e of Object.keys(a)){let[n]=e.split(`\0`);n&&!t.has(n)&&(delete a[e],o=!0)}let s={...e.terminalSessionSnapshotByKey},c=!1;for(let e of Object.keys(s)){let[n]=e.split(`\0`);n&&!t.has(n)&&(delete s[e],c=!0)}let l={...e.terminalStreamCursorByKey},u=!1;for(let e of Object.keys(l)){let[n]=e.split(`\0`);n&&!t.has(n)&&(delete l[e],u=!0)}if(n.length===0&&r.length===0&&i.length===0&&!o&&!c&&!u)return e;let d={...e.terminalStateByThreadKey};for(let e of n)delete d[e];let f={...e.terminalLaunchContextByThreadKey};for(let e of r)delete f[e];let p={...e.terminalPreviewUrlByThreadKey};for(let e of i)delete p[e];return{terminalStateByThreadKey:d,terminalLaunchContextByThreadKey:f,terminalPreviewUrlByThreadKey:p,terminalEventEntriesByKey:a,terminalSessionSnapshotByKey:s,terminalStreamCursorByKey:l}})}},{name:Aqe,version:4,storage:XG(Nqe),migrate:Mqe,partialize:e=>({terminalStateByThreadKey:EK(e.terminalStateByThreadKey),terminalPreviewUrlByThreadKey:e.terminalPreviewUrlByThreadKey})}));function Qqe(e){return!!(e.prompt.trim()||e.images.length||e.terminalContexts.length||e.persistedAttachments.length||e.stagedSubmission)}function $qe(e,t,n){let r=li(t),i=li(n);if(r===i)return e;let a=e[r];if(!a)return e;let o=e[i];if(o&&Qqe(o)&&!eJe(a,o))return null;let s={...e,[i]:{...a,...cJe(a,o)}};return delete s[r],s}function eJe(e,t){let n=e.stagedSubmission;return!n||!tJe(n)||!nJe(e,n)||!rJe(n,t.stagedSubmission)?!1:iJe(e,t)}function tJe(e){return!!e.commandId&&!!e.messageId}function nJe(e,t){return[e.prompt===t.prompt,YK(e.persistedAttachments,t.attachments),YK(e.terminalContexts,t.terminalContexts)].every(Boolean)}function rJe(e,t){return!t||aJe(e,t)}function iJe(e,t){return[e.prompt===t.prompt,e.lastGeneratedPullRequestPrompt===t.lastGeneratedPullRequestPrompt,ZK(e.images,t.images),XK(e.nonPersistedImageIds,t.nonPersistedImageIds),e.nonPersistedImageIds.length===0,ZK(e.persistedAttachments,t.persistedAttachments),ZK(e.terminalContexts,t.terminalContexts),sJe(e.modelSelectionByProvider,t.modelSelectionByProvider),e.activeProvider===t.activeProvider,e.runtimeMode===t.runtimeMode,e.interactionMode===t.interactionMode].every(Boolean)}function aJe(e,t){return[e.commandId===t.commandId&&e.messageId===t.messageId,e.prompt===t.prompt,YK(e.attachments,t.attachments),YK(e.terminalContexts,t.terminalContexts),JK(e.modelSelection,t.modelSelection),JK(e.runtimeMode,t.runtimeMode),JK(e.interactionMode,t.interactionMode),oJe(e.executionIntent,t.executionIntent)].every(Boolean)}function JK(e,t){return e===void 0||t===void 0||JSON.stringify(e)===JSON.stringify(t)}function oJe(e,t){return!e||!t||e.runtimeId===t.runtimeId}function YK(e,t){return e.length===t.length&&e.every((e,n)=>e.id===t[n]?.id)}function XK(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}function ZK(e,t){return e.length===t.length&&e.every((e,n)=>JSON.stringify(e)===JSON.stringify(t[n]))}function sJe(e,t){let n=Object.keys(e).toSorted();return XK(n,Object.keys(t).toSorted())?n.every(n=>JSON.stringify(e[n])===JSON.stringify(t[n])):!1}function cJe(e,t){let n=t??e,r=e.stagedSubmission?e:n,i=e.stagedSubmission?n:e;return{modelSelectionByProvider:{...i.modelSelectionByProvider,...r.modelSelectionByProvider},activeProvider:r.activeProvider??i.activeProvider,runtimeMode:r.runtimeMode??i.runtimeMode,interactionMode:r.interactionMode??i.interactionMode}}var lJe=/\n*<terminal_context>\n([\s\S]*?)\n<\/terminal_context>\s*$/,uJe=/^\s*<cmmd_context>\n?([\s\S]*?)\n?<\/cmmd_context>\s*/;function QK(e){return e.replace(/\r\n/g,`
|
|
1012
1012
|
`).replace(/^\n+|\n+$/g,``)}function $K(e){return QK(e.text).length>0}function dJe(e){return!$K(e)}function fJe(e){return e.filter(e=>$K(e))}function pJe(e){let t=QK(e.text),n=e.terminalId.trim(),r=e.terminalLabel.trim();if(t.length===0||n.length===0||r.length===0)return null;let i=Math.max(1,Math.floor(e.lineStart));return{terminalId:n,terminalLabel:r,lineStart:i,lineEnd:Math.max(i,Math.floor(e.lineEnd)),text:t}}function mJe(e){return e.lineStart===e.lineEnd?`line ${e.lineStart}`:`lines ${e.lineStart}-${e.lineEnd}`}function eq(e){return`${e.terminalLabel} ${mJe(e)}`}function tq(e){return`@${e.terminalLabel.trim().toLowerCase().replace(/\s+/g,`-`)}:${e.lineStart===e.lineEnd?`${e.lineStart}`:`${e.lineStart}-${e.lineEnd}`}`}function hJe(e){return QK(e.text).split(`
|
|
1013
1013
|
`).map((t,n)=>` ${e.lineStart+n} | ${t}`)}function gJe(e){let t=e.map(e=>pJe(e)).filter(e=>e!==null);if(t.length===0)return``;let n=[];for(let e=0;e<t.length;e+=1){let r=t[e];n.push(`- ${eq(r)}:`),n.push(...hJe(r)),e<t.length-1&&n.push(``)}return[`<terminal_context>`,...n,`</terminal_context>`].join(`
|
|
1014
1014
|
`)}function _Je(e,t){let n=0,r=``;for(let i of e){if(i!==``){r+=i;continue}let e=t[n]??null;n+=1,e&&(r+=tq(e))}return r}function vJe(e,t){let n=_Je(e,t).trim(),r=gJe(t);return r.length===0?n:n.length>0?`${n}\n\n${r}`:r}function yJe(e){let t=lJe.exec(e);if(!t)return{promptText:e,contextCount:0,previewTitle:null,contexts:[]};let n=e.slice(0,t.index).replace(/\n+$/,``),r=SJe(t[1]??``);return{promptText:n,contextCount:r.length,previewTitle:r.length>0?r.map(({header:e,body:t})=>t.length>0?`${e}\n${t}`:e).join(`
|
|
@@ -1016,9 +1016,9 @@ If init has been called in the preload and contextIsolation is disabled, is not
|
|
|
1016
1016
|
`):null,contexts:r}}function bJe(e){let t=uJe.exec(e);if(!t)return{promptText:e,cmmdContext:null};let n=(t[1]??``).trim();return{promptText:e.slice(t[0].length).replace(/^\n+/,``),cmmdContext:n.length>0?{body:n}:null}}function xJe(e){let t=bJe(e),n=yJe(t.promptText);return{visibleText:n.promptText,copyText:e,contextCount:n.contextCount,previewTitle:n.previewTitle,contexts:n.contexts,cmmdContext:t.cmmdContext}}function SJe(e){let t=[],n=null,r=()=>{n&&=(t.push({header:n.header,body:n.bodyLines.join(`
|
|
1017
1017
|
`).trimEnd()}),null)};for(let t of e.split(`
|
|
1018
1018
|
`)){let e=/^- (.+):$/.exec(t);if(e){r(),n={header:e[1],bodyLines:[]};continue}if(n){if(t.startsWith(` `)){n.bodyLines.push(t.slice(2));continue}t.length===0&&n.bodyLines.push(``)}}return r(),t}function nq(e){let t=0;for(let n of e)n===``&&(t+=1);return t}function rq(e,t){let n=t-nq(e);return n<=0?e:`${``.repeat(n)}${e}`}function CJe(e){return e===void 0||e===` `||e===`
|
|
1019
|
-
`||e===` `||e===`\r`}function wJe(e,t){let n=Math.max(0,Math.min(e.length,Math.floor(t))),r=`${CJe(e[n-1])?``:` `} `,i=e[n]===` `?n+1:n;return{prompt:`${e.slice(0,n)}${r}${e.slice(i)}`,cursor:n+r.length,contextIndex:nq(e.slice(0,n))}}function TJe(e){return e.replaceAll(``,``)}function EJe(e,t){if(t<0)return{prompt:e,cursor:e.length};let n=0;for(let r=0;r<e.length;r+=1)if(e[r]===``){if(n===t)return{prompt:e.slice(0,r)+e.slice(r+1),cursor:r};n+=1}return{prompt:e,cursor:e.length}}var iq=e=>Symbol.iterator in e,aq=e=>`entries`in e,oq=(e,t)=>{let n=e instanceof Map?e:new Map(e.entries()),r=t instanceof Map?t:new Map(t.entries());if(n.size!==r.size)return!1;for(let[e,t]of n)if(!r.has(e)||!Object.is(t,r.get(e)))return!1;return!0},DJe=(e,t)=>{let n=e[Symbol.iterator](),r=t[Symbol.iterator](),i=n.next(),a=r.next();for(;!i.done&&!a.done;){if(!Object.is(i.value,a.value))return!1;i=n.next(),a=r.next()}return!!i.done&&!!a.done};function sq(e,t){return Object.is(e,t)?!0:typeof e!=`object`||!e||typeof t!=`object`||!t||Object.getPrototypeOf(e)!==Object.getPrototypeOf(t)?!1:iq(e)&&iq(t)?aq(e)&&aq(t)?oq(e,t):DJe(e,t):oq({entries:()=>Object.entries(e)},{entries:()=>Object.entries(t)})}function cq(e){let t=M.useRef(void 0);return n=>{let r=e(n);return sq(t.current,r)?t.current:t.current=r}}var lq=[`draftsByThreadKey`,`draftThreadsByThreadKey`,`logicalProjectDraftThreadKeyByLogicalProjectKey`],OJe=[`stickyModelSelectionByProvider`,`stickyActiveProvider`];function kJe(e){let t=uq(e.nextLocal,e.version,!1);if(!t)return e.currentStored??e.nextLocal;if(e.currentStored!==null&&e.canMigrate!==void 0&&!e.canMigrate(e.currentStored,e.version))return e.currentStored;if(e.previousLocal===e.currentStored&&(e.canMigrate??AJe)(e.currentStored,e.version))return e.nextLocal;let n=uq(e.previousLocal,e.version,!0),r=uq(e.currentStored,e.version,!0);if(!r||!n)return e.currentStored??e.nextLocal;let i={...r.state};for(let e of lq)i[e]=PJe(n.state[e],r.state[e],t.state[e]);for(let e of OJe)dq(n.state[e],t.state[e])||(i[e]=t.state[e]);return JSON.stringify({...r,version:e.version,state:i})}function AJe(e,t){if(e===null)return!0;try{let n=JSON.parse(e);return!fq(n)||!fq(n.state)||typeof n.version!=`number`||!Number.isInteger(n.version)?!1:n.version>=1&&n.version<t}catch{return!1}}function uq(e,t,n){if(e===null)return n?{version:t,state:NJe()}:null;let r=jJe(e);return r&&MJe(r,t)?{version:t,state:r.state}:null}function jJe(e){try{let t=JSON.parse(e);return fq(t)?t:null}catch{return null}}function MJe(e,t){let n=e.state;return e.version!==t||!fq(n)?!1:lq.every(e=>fq(n[e]))}function NJe(){return Object.fromEntries(lq.map(e=>[e,{}]))}function PJe(e,t,n){let r={...t};for(let t of new Set([...Object.keys(e),...Object.keys(n)]))dq(e[t],n[t])||(t in n?r[t]=n[t]:delete r[t]);return r}function dq(e,t){return JSON.stringify(e)===JSON.stringify(t)}function fq(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function FJe(e){let t;return{getItem:n=>{let r=e.storage.getItem(n);return t===void 0&&(t=r),r},setItem:(n,r)=>{let i=e.storage.getItem(n),a=kJe({previousLocal:t??null,currentStored:i,nextLocal:r,version:e.version,...e.canMigrate===void 0?{}:{canMigrate:e.canMigrate}});(a!==i||i===r)&&(e.storage.setItem(n,a),t=r)},removeItem:n=>{e.storage.removeItem(n),t=null}}}function pq(e){let t=e.auth.status!==`unauthenticated`||e.auth.provenance?.credentialScope===`proxied`;return e.enabled&&e.installed&&e.status===`ready`&&t&&e.models.length>0}var mq={providers:{codex:!0,claude:!1,cmmd:!0},meteredEgressApproved:{codex:!1,claude:!1,cmmd:!1},allowedWallets:[`personal`],updatedAt:`1970-01-01T00:00:00.000Z`};function hq(e){if(e==null)return mq;let t=e.providers,n=e.meteredEgressApproved,r=e.allowedWallets;return{providers:{...mq.providers,...t},meteredEgressApproved:{...mq.meteredEgressApproved,...n},allowedWallets:Array.isArray(r)&&r.length>0?r:mq.allowedWallets,updatedAt:typeof e.updatedAt==`string`?e.updatedAt:mq.updatedAt}}function IJe(e){switch(e){case`codex`:return`codex`;case`claudeAgent`:return`claude`;case`cmmd`:case`apex`:return`cmmd`;default:return null}}var LJe=[`codex`,`claudeAgent`,`cmmd`];function RJe(e,t){if(t==null)return null;let n=t.providers;if(typeof n!=`object`||!n)return null;let r=n[e];return typeof r==`boolean`?r:null}function gq(e,t){let n=IJe(e);if(n===null)return{offered:!1,reason:`unknown-provider`};let r=RJe(n,t);return r===!0?{offered:!0}:r===!1?{offered:!1,reason:`org-disabled`}:hq(t).providers[n]===!0?{offered:!0}:{offered:!1,reason:`policy-unavailable`}}function _q(e,t){return gq(e,t).offered}function zJe(e,t){return vq(e,t).offered}function vq(e,t){return t===null?{offered:!0}:gq(e,t)}function yq(e,t){return hq(t).allowedWallets.includes(e)}function bq(e){return yq(`personal`,e)}function BJe(e){return e===`claudeAgent`||e===`codex`}function VJe(e,t){return e!==`claudeAgent`||bq(t)||_q(`claudeAgent`,t)}function HJe(e){return e.isDebugDisclosureEnabled||BJe(e.provider)&&bq(e.policy)?!1:!_q(e.provider===`apex`?`apex`:e.provider,e.policy)}function UJe(e){if(!Cq(e)||!Array.isArray(e.accounts))throw Error(`CMMD returned invalid provider accounts.`);return{accounts:e.accounts.filter(WJe)}}function WJe(e){return Cq(e)?KJe(e.provider)&&xq(e.providerAccountId)&&GJe(e)&&Sq(e.accountEmail)&&Sq(e.accountDisplayName)&&Sq(e.planType)&&typeof e.isDefault==`boolean`&&typeof e.needsReconnect==`boolean`:!1}function GJe(e){return(e.credentialTarget===`primary`||e.credentialTarget===`linked`)&&Array.isArray(e.legacyProviderAccountIds)&&e.legacyProviderAccountIds.every(xq)}function KJe(e){return e===`codex`||e===`claudeAgent`}function xq(e){return typeof e==`string`&&e.trim().length>0}function Sq(e){return typeof e==`string`||e===null}function Cq(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function qJe(e){let t=Vi(e);return t.legacyRuntimeId===null?t.shape===`durable-environment`&&typeof e==`string`?e:null:t.legacyRuntimeId}var wq=class extends Error{constructor(e){super(e===`auth`?`Your CMMD session expired. Sign in again to verify Claude runtime readiness.`:`CMMD denied access to verify Claude runtime readiness. Check your organization permissions.`),this.name=`ForgeProviderAccessAuthorityError`}};async function JJe(e){if(!e.enabled||e.readinessTargetId===null)return null;try{return ZJe(await e.load(e.readinessTargetId),e.readinessTargetId)}catch(e){if(e instanceof wn&&(e.kind===`auth`||e.kind===`permission`))throw new wq(e.kind);return null}}var YJe=new Set([`not_connected`,`pending`,`claimed`,`activating`,`applied`,`failed`,`stale`]),XJe=[`generationId`,`nativeVerifiedAt`,`reason`,`lastErrorCode`,`lastErrorMessage`];function ZJe(e,t){if(!Tq(e)||!rYe(e)||!QJe(e,t))throw Error(`CMMD returned invalid Claude runtime readiness.`);return e}function QJe(e,t){if(e.deliveryReceipt===null)return e.nativeExecutable!==!0;if(!Tq(e.deliveryReceipt))return!1;let n=e.deliveryReceipt,r=Tq(n.identity)?n.identity:null;return r!==null&&$Je(n,t)&&nYe(r,e.generationId)}function $Je(e,t){return eYe(e,t)&&tYe(e)}function eYe(e,t){return typeof e.receiptId==`string`&&e.receiptId.trim().length>0&&e.runtimeId===t&&typeof e.machineId==`string`&&e.machineId.trim().length>0&&typeof e.credentialEpoch==`number`&&Number.isSafeInteger(e.credentialEpoch)&&e.credentialEpoch>=0}function tYe(e){return typeof e.issuedAt==`string`&&Number.isFinite(Date.parse(e.issuedAt))&&e.expiresAt===null}function nYe(e,t){return e.kind===`credential_generation`&&e.provider===`claude`&&typeof e.credentialGenerationId==`string`&&e.credentialGenerationId===t}function rYe(e){return typeof e.connected==`boolean`&&YJe.has(String(e.deliveryStatus))&&typeof e.nativeExecutable==`boolean`&&XJe.every(t=>iYe(e[t]))}function iYe(e){return e===null||typeof e==`string`}function Tq(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var Eq={credential_expired_refreshing:`CREDENTIAL_EXPIRED_REFRESHING`,credential_reconnect_required:`CREDENTIAL_RECONNECT_REQUIRED`,credential_not_connected:`CREDENTIAL_RECONNECT_REQUIRED`,credential_generation_not_applied:`CREDENTIAL_GENERATION_NOT_APPLIED`,runtime_unavailable:`RUNTIME_UNAVAILABLE`};function aYe(e){return typeof e!=`string`||!Object.hasOwn(Eq,e)?null:Eq[e]??null}var oYe=new Set([`pending`,`claimed`,`activating`]),sYe=2e3;function Dq(e){return{readinessTargetId:e,dataUpdatedAt:0,consecutiveUnavailableResponses:0,consecutiveFailedResponses:0}}function cYe(e){let t=e.current.readinessTargetId===e.readinessTargetId?e.current:Dq(e.readinessTargetId);return e.dataUpdatedAt===0||e.dataUpdatedAt===t.dataUpdatedAt?t:{readinessTargetId:e.readinessTargetId,dataUpdatedAt:e.dataUpdatedAt,consecutiveUnavailableResponses:e.readinessUnavailable?t.consecutiveUnavailableResponses+1:0,consecutiveFailedResponses:e.deliveryStatus===`failed`?t.consecutiveFailedResponses+1:0}}function lYe(e,t){if(!e.claudeOffered||!e.claudeConnected)return!1;let n=aYe(e.reason);return n===`CREDENTIAL_EXPIRED_REFRESHING`?!0:e.deliveryStatus===`failed`?n!==`CREDENTIAL_RECONNECT_REQUIRED`&&t.consecutiveFailedResponses<16:e.deliveryStatus===null?t.consecutiveUnavailableResponses>0&&t.consecutiveUnavailableResponses<3:oYe.has(e.deliveryStatus)}function Oq(e){return e.credentialMode===`runtime`?e.provider&&pq(e.provider)?{eligible:!0}:{eligible:!1,reason:`runtime-unavailable`}:e.access.status===`loading`?{eligible:!1,reason:`access-loading`}:e.access.status===`error`?{eligible:!1,reason:`access-error`}:uYe({provider:e.provider,providerKind:e.providerKind,policy:e.access.policy,personalConnections:e.access.personalConnections,personalReconnectRequired:e.access.personalReconnectRequired,claudeRuntimeReadiness:e.access.claudeRuntimeReadiness})}function uYe(e){return!e.provider||!pq(e.provider)?{eligible:!1,reason:`runtime-unavailable`}:e.policy===null?{eligible:!1,reason:`access-error`}:_q(e.providerKind,e.policy)?Aq({providerKind:e.providerKind,policy:e.policy,personalConnections:e.personalConnections,personalReconnectRequired:e.personalReconnectRequired,claudeRuntimeReadiness:e.claudeRuntimeReadiness,stage:`live-runtime`}):{eligible:!1,reason:`not-offered`}}function kq(e){return e.access.status===`loading`?{eligible:!1,reason:`access-loading`}:e.access.status===`error`||e.access.policy===null?{eligible:!1,reason:`access-error`}:_q(e.providerKind,e.access.policy)?Aq({providerKind:e.providerKind,policy:e.access.policy,personalConnections:e.access.personalConnections,personalReconnectRequired:e.access.personalReconnectRequired,claudeRuntimeReadiness:e.access.claudeRuntimeReadiness,stage:`provisioning`}):{eligible:!1,reason:`not-offered`}}function Aq(e){return e.providerKind===`cmmd`||e.providerKind===`apex`?{eligible:!0}:e.providerKind!==`codex`&&e.providerKind!==`claudeAgent`?{eligible:!1,reason:`not-offered`}:dYe({providerKind:e.providerKind,personalConnections:e.personalConnections,personalReconnectRequired:e.personalReconnectRequired,claudeRuntimeReadiness:e.claudeRuntimeReadiness,workspaceWalletAllowed:yq(`workspace`,e.policy),stage:e.stage})}function dYe(e){return fYe(e.workspaceWalletAllowed)?{eligible:!0}:pYe(e.providerKind,e.personalReconnectRequired)?{eligible:!1,reason:`personal-credential-reconnect-required`}:mYe(e.providerKind,e.personalConnections)?_Ye(e)?{eligible:!1,reason:`environment-not-running`}:hYe(e)?{eligible:!0}:{eligible:!1,reason:`native-runtime-not-ready`}:{eligible:!1,reason:`personal-credential-required`}}function fYe(e){return e&&!1}function pYe(e,t){return e===`codex`&&t?.codex===!0}function mYe(e,t){return t?.[e]===!0}function hYe(e){return e.providerKind!==`claudeAgent`||e.stage===`provisioning`||vYe(e.claudeRuntimeReadiness)}var gYe=`runtime_unavailable`;function _Ye(e){return e.providerKind!==`claudeAgent`||e.stage===`provisioning`?!1:e.claudeRuntimeReadiness?.reason===gYe}function vYe(e){if(!yYe(e))return!1;let t=e.deliveryReceipt?.identity;return t?.kind===`credential_generation`&&t.provider===`claude`&&t.credentialGenerationId===e.generationId}function yYe(e){return e?.connected===!0&&e.nativeExecutable===!0&&typeof e.generationId==`string`&&e.generationId.trim().length>0}function bYe(e){if(e.status!==`ready`)return!1;if(e.policy===null)return!0;let t=e.policy.providers,n=yq(`workspace`,e.policy);return t.cmmd?!0:yq(`personal`,e.policy)||n?t.codex&&e.personalConnections?.codex===!0||t.claude&&e.personalConnections?.claudeAgent===!0:!1}var xYe={providers:{codex:!1,claude:!1,cmmd:!1},meteredEgressApproved:{codex:!1,claude:!1,cmmd:!1},allowedWallets:[`personal`],updatedAt:`1970-01-01T00:00:00.000Z`},jq=[`cmmd`,`forge-provider-access`],SYe=sYe;function CYe(e,t){return!(t instanceof wq)&&e<3}function wYe(e,t=null){return[...jq,e,t]}async function TYe(e){e.queryClient.setQueriesData({queryKey:jq},t=>EYe(t,e.provider,e.connected)),await e.queryClient.invalidateQueries({queryKey:jq,refetchType:`all`})}function EYe(e,t,n){return e?.status!==`ready`||e.personalConnections===null?e:{...e,personalConnections:{...e.personalConnections,[t]:n},...t===`codex`?{personalReconnectRequired:{codex:!1}}:{},...t===`claudeAgent`?{claudeRuntimeReadiness:null}:{}}}async function Mq(e,t=null){if(e===`runtime`)return{status:`ready`,policy:null,personalConnections:null,providerAccounts:[],claudeRuntimeReadiness:null};let n=gH(),r=MYe(await n.getOrgProviderPolicy());yq(`workspace`,r);let[i,a,o,s]=await Promise.all([kYe(()=>n.getProviderAccounts()),Nq({enabled:r.providers.codex,load:()=>n.getUserCodexCredential(),provider:`codex`}),Nq({enabled:r.providers.claude,load:()=>n.getUserClaudeCredential(),provider:`claudeAgent`}),JJe({enabled:r.providers.claude,readinessTargetId:t,load:e=>n.getClaudeRuntimeReadiness(e)})]),c=i.accounts.filter(e=>e.provider===`codex`?r.providers.codex:r.providers.claude),l=DYe(c),u=l.codex||a.connected,d=l.claudeAgent||o.connected,f=c.some(e=>e.provider===`codex`&&e.needsReconnect)||a.reconnectRequired;return{status:`ready`,policy:r,personalConnections:{codex:u,claudeAgent:d},providerAccounts:c,...f?{personalReconnectRequired:{codex:!0}}:{},claudeRuntimeReadiness:s}}function DYe(e){return{codex:e.some(e=>e.provider===`codex`&&!e.needsReconnect),claudeAgent:e.some(e=>e.provider===`claudeAgent`&&!e.needsReconnect)}}function OYe(e,t){if(e.status!==`ready`)return;let n=e.providerAccounts??[];return(n.find(e=>e.provider===t&&e.isDefault&&!e.needsReconnect)??n.find(e=>e.provider===t&&!e.needsReconnect))?.providerAccountId}async function kYe(e){try{return UJe(await e())}catch{return{accounts:[]}}}async function Nq(e){if(!e.enabled)return{connected:!1,reconnectRequired:!1};try{return FYe(await e.load(),e.provider)}catch{return{connected:!1,reconnectRequired:!1}}}function AYe(e){let t=e?.policy?.providers.claude===!0,n=e?.personalConnections?.claudeAgent===!0;return{claudeOffered:t,claudeConnected:n,deliveryStatus:e?.claudeRuntimeReadiness?.deliveryStatus??null,reason:e?.claudeRuntimeReadiness?.reason??null,readinessUnavailable:t&&n&&e?.claudeRuntimeReadiness===null}}function jYe(e){let t=(0,vi.c)(21),n;t[0]!==e.environmentId||t[1]!==e.runtimeId?(n=e.environmentId==null?e.runtimeId??null:qJe(e.environmentId),t[0]=e.environmentId,t[1]=e.runtimeId,t[2]=n):n=t[2];let r=n,i;t[3]===r?i=t[4]:(i=Dq(r),t[3]=r,t[4]=i);let a=(0,M.useRef)(i),o;t[5]!==e.credentialMode||t[6]!==r?(o=wYe(e.credentialMode,r),t[5]=e.credentialMode,t[6]=r,t[7]=o):o=t[7];let s;t[8]===r?s=t[9]:(s=()=>Mq(`cmmd-cloud`,r),t[8]=r,t[9]=s);let c=e.enabled&&e.credentialMode===`cmmd-cloud`,l;t[10]===r?l=t[11]:(l=e=>{if(e.state.error instanceof wq)return!1;let t=AYe(e.state.data);return a.current=cYe({current:a.current,readinessTargetId:r,dataUpdatedAt:e.state.dataUpdatedAt,readinessUnavailable:r!==null&&t.readinessUnavailable,deliveryStatus:t.deliveryStatus}),r!==null&&lYe(t,a.current)?SYe:!1},t[10]=r,t[11]=l);let u;t[12]!==o||t[13]!==s||t[14]!==c||t[15]!==l?(u={queryKey:o,queryFn:s,enabled:c,retry:CYe,staleTime:3e4,refetchInterval:l},t[12]=o,t[13]=s,t[14]=c,t[15]=l,t[16]=u):u=t[16];let d=Rr(u);if(!e.enabled){let e;return t[17]===Symbol.for(`react.memo_cache_sentinel`)?(e={status:`loading`},t[17]=e):e=t[17],e}if(e.credentialMode===`runtime`){let e;return t[18]===Symbol.for(`react.memo_cache_sentinel`)?(e={status:`ready`,policy:null,personalConnections:null,providerAccounts:[],claudeRuntimeReadiness:null},t[18]=e):e=t[18],e}if(d.isPending){let e;return t[19]===Symbol.for(`react.memo_cache_sentinel`)?(e={status:`loading`},t[19]=e):e=t[19],e}if(d.isError||!d.data){let e;return t[20]===Symbol.for(`react.memo_cache_sentinel`)?(e={status:`error`},t[20]=e):e=t[20],e}return d.data}function MYe(e){if(!Fq(e)||!Fq(e.providers))throw Error(`CMMD returned an invalid organization provider policy.`);let{providers:t,meteredEgressApproved:n,allowedWallets:r,updatedAt:i}=e,a=PYe(r,i);if(!Pq(t)||a===null)throw Error(`CMMD returned an invalid organization provider policy.`);return{providers:{codex:t.codex,claude:t.claude,cmmd:t.cmmd},meteredEgressApproved:NYe(n),allowedWallets:[...new Set(a.allowedWallets)],updatedAt:a.updatedAt}}function NYe(e){return Fq(e)&&Pq(e)?{codex:e.codex,claude:e.claude,cmmd:e.cmmd}:{codex:!1,claude:!1,cmmd:!1}}function Pq(e){return typeof e.codex==`boolean`&&typeof e.claude==`boolean`&&typeof e.cmmd==`boolean`}function PYe(e,t){return Array.isArray(e)&&e.length>0&&e.every(IYe)&&typeof t==`string`&&t.trim().length>0?{allowedWallets:e,updatedAt:t}:null}function FYe(e,t){if(!Fq(e)||typeof e.connected!=`boolean`)throw Error(`CMMD returned an invalid ${t} connection state.`);if(!e.connected)return{connected:!1,reconnectRequired:!1};if(t===`codex`){if(typeof e.needsReconnect!=`boolean`)throw Error(`CMMD returned an invalid Codex connection state.`);return{connected:!e.needsReconnect,reconnectRequired:e.needsReconnect}}if(typeof e.generationId!=`string`||e.generationId.trim().length===0)throw Error(`CMMD returned an invalid Claude connection state.`);return{connected:!0,reconnectRequired:!1}}function IYe(e){return e===`personal`||e===`workspace`}function Fq(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function LYe(e){return e.status===`ready`?e.policy:xYe}var Iq=[`cursor`,`opencode`,`gemini`],Lq={state:`usable`},Rq={state:`withheld`,reason:`unbuilt`},zq={state:`withheld`,reason:`not-on-this-environment`};function Bq(e){return Iq.includes(e)}function Vq(e){return e===`gemini`?null:e}function Hq(e,t){if(e===void 0)return t?zq:Lq;if(e.availability===`unavailable`){let t=e.unavailableReason??`not-on-this-environment`,n=t===`not-on-this-environment`&&e.availabilityCheck===`could-not-check`?`could-not-check`:e.unavailableDetail;return n===void 0?{state:`withheld`,reason:t}:{state:`withheld`,reason:t,detail:n}}return e.availability===`available`||pq(e)||RYe(e)?Lq:zq}function RYe(e){return e.installed&&e.auth.status===`unauthenticated`&&e.auth.provenance?.credentialScope!==`proxied`}function zYe(e,t){let n=kq({providerKind:e,access:t});return n.eligible?null:BYe(n.reason)}function BYe(e){switch(e){case`access-loading`:return{state:`unresolved`,cause:`loading`};case`access-error`:return{state:`unresolved`,cause:`error`};case`not-offered`:return{state:`withheld`,reason:`not-offered`};case`personal-credential-required`:return{state:`withheld`,reason:`not-usable`,detail:`no-connection`};case`personal-credential-reconnect-required`:return{state:`withheld`,reason:`not-usable`,detail:`reconnect-required`};case`native-runtime-not-ready`:return{state:`withheld`,reason:`not-usable`,detail:`delivery-pending`};case`environment-not-running`:return{state:`withheld`,reason:`not-usable`,detail:`environment-not-running`};case`runtime-unavailable`:return null}}function VYe(e){if(Bq(e.provider))return{pick:Rq,run:Rq};let t=Vq(e.provider);return t===null?{pick:Rq,run:Rq}:Uq({...e,providerKind:t})}function Uq(e){return{pick:Gq(e,`pick`),run:Gq(e,`run`)}}function HYe(e){return Gq(e,`pick`)}function Wq(e){return e.providers.filter(t=>Gq({providerKind:t.provider,snapshot:t,access:e.access,credentialMode:e.credentialMode,hasLiveInventory:e.hasLiveInventory},`run`).state===`usable`)}function Gq(e,t){let{providerKind:n}=e;if(e.snapshot?.unavailableReason===`unbuilt`)return Rq;if(e.credentialMode===`runtime`)return Kq({...e,providerKind:n},t);if(e.access.status!==`ready`)return{state:`unresolved`,cause:e.access.status};if(!vq(n,e.access.policy).offered)return{state:`withheld`,reason:`not-offered`};let r=zYe(n,e.access);return r===null?Kq({...e,providerKind:n},t):r}function Kq(e,t){let n=Oq({provider:e.snapshot,providerKind:e.providerKind,access:e.access,credentialMode:e.credentialMode});if(!n.eligible&&n.reason===`environment-not-running`)return{state:`withheld`,reason:`not-usable`,detail:`environment-not-running`};if(!n.eligible&&n.reason===`native-runtime-not-ready`)return{state:`withheld`,reason:`not-usable`,detail:`delivery-pending`};let r=Hq(e.snapshot,e.hasLiveInventory);return!n.eligible&&n.reason===`runtime-unavailable`&&t===`run`?UYe(r,e.hasLiveInventory)?Lq:zq:r}function UYe(e,t){return e.state===`withheld`&&e.reason===`not-on-this-environment`&&(e.detail===`could-not-check`||!t)}var WYe={reasoningEffortLevels:[],supportsFastMode:!1,supportsThinkingToggle:!1,contextWindowOptions:[],promptInjectedEffortLevels:[]},qq=[`codex`,`claudeAgent`,`apex`];function Jq(e){for(let t of qq){let n=e.find(e=>e.provider===t);if(n&&Xq(n))return t}return e.find(Xq)?.provider??null}function Yq(e,t){return e.find(e=>e.provider===t)?.models??[]}function Xq(e){return pq(e)}function Zq(e,t){let n=t??Jq(e)??`codex`,r=e.find(e=>e.provider===n);if(r&&Xq(r)||n===`codex`)return n;for(let t of qq){let n=e.find(e=>e.provider===t);if(n&&Xq(n))return t}return`codex`}function Qq(e){return e.providers.filter(t=>HYe({providerKind:t.provider,snapshot:t,access:e.access,credentialMode:e.credentialMode,hasLiveInventory:!0}).state===`usable`)}function $q(e,t,n,r){let i=Qq({providers:e,access:n,credentialMode:r});return t&&i.some(e=>e.provider===t)?t:Jq(i)}function GYe(e,t,n,r){return t==null?$q(e,null,n,r):Wq({providers:e,access:n,credentialMode:r,hasLiveInventory:!0}).some(e=>e.provider===t)?t:null}function eJ(e,t,n){let r=YW(t,n);return e.find(e=>e.slug===r)?.capabilities??WYe}function tJ(e,t,n){let r=Yq(e,t).filter(e=>!e.isLegacy);return r.find(e=>e.slug===n)?.slug??r.find(e=>e.isDefault)?.slug??r.find(e=>e.slug===dn[t])?.slug??r.find(e=>!e.isCustom)?.slug??r[0]?.slug??dn[t]}function nJ(e){let{provider:t,model:n,models:r,prompt:i,modelOptions:a}=e,o=eJ(r,n,t),s=a?.[t],c=GW(o,s?`effort`in s?s.effort:`reasoningEffort`in s?s.reasoningEffort:null:null)??null,l=t===`codex`?pKe(o,s):mKe(o,s),u=o.promptInjectedEffortLevels.length>0&&JW(i);return{provider:t,promptEffort:c,modelOptionsForDispatch:l,...u?{composerFrameClassName:`ultrathink-frame`}:{},...u?{composerSurfaceClassName:`shadow-[0_0_0_1px_rgba(255,255,255,0.04)_inset]`}:{},...u?{modelPickerIconClassName:`ultrathink-chroma`}:{}}}function rJ(e,t,n,r){return Yq(t,n).map(({slug:e,name:t,isCustom:n,isDefault:r,isLegacy:i})=>({slug:e,name:t,isCustom:n,isDefault:r,isLegacy:i}))}function iJ(e,t,n,r,i){let a=XW(e,r,rJ(t,n,e,r));if(a&&!ZW(a,e))return a;let o=aJ(n,e,i),s=XW(o,r,rJ(t,n,o,r))??tJ(n,o);return e&&ZW(s,e)?tJ(n,e):s}function aJ(e,t,n){return!t||!_q(t,n)?Zq(e,`codex`):Zq(e,t)}function KYe(e,t,n,r){return{codex:rJ(e,t,`codex`,n===`codex`?r:void 0),claudeAgent:rJ(e,t,`claudeAgent`,n===`claudeAgent`?r:void 0),ollama:rJ(e,t,`ollama`,n===`ollama`?r:void 0),cmmd:rJ(e,t,`cmmd`,n===`cmmd`?r:void 0),apex:rJ(e,t,`apex`,n===`apex`?r:void 0),cursor:rJ(e,t,`cursor`,n===`cursor`?r:void 0),opencode:rJ(e,t,`opencode`,n===`opencode`?r:void 0)}}function qYe(e,t,n){let r=e.textGenerationModelSelection??{provider:`codex`,model:jte.codex},i=aJ(t,r.provider,n),a=iJ(i,e,t,i===r.provider?r.model:null,n),{modelOptionsForDispatch:o}=nJ({provider:i,model:a,models:Yq(t,i),prompt:``,modelOptions:{[i]:i===r.provider?r.options:void 0}});return{provider:i,model:a,...o?{options:o}:{}}}function oJ(e){return e?.options?{[e.provider]:e.options}:null}function JYe(e){if(!e)return null;let t={};for(let[n,r]of Object.entries(e))r?.options&&(t[n]=r.options);return Object.keys(t).length>0?t:null}function YYe(e){if(e.activeSelection&&`providerAccountId`in e.activeSelection)return e.activeSelection.providerAccountId;for(let t of e.candidates)if(t?.provider===e.selectedProvider&&`providerAccountId`in t)return t.providerAccountId}function XYe(e){let t=t=>t!==void 0&&ZW(t,e.selectedProvider)?void 0:t,n=t(e.threadModelSelection?.provider===e.selectedProvider?e.threadModelSelection.model:void 0),r=t(e.projectModelSelection?.provider===e.selectedProvider?e.projectModelSelection.model:void 0),i=YW(n??r,e.selectedProvider)??tJ(e.providers,e.selectedProvider),a=e.draft?.modelSelectionByProvider?.[e.selectedProvider],o=YYe({activeSelection:a,selectedProvider:e.selectedProvider,candidates:[e.threadModelSelection,e.projectModelSelection]}),s=t(a?.model),c=s?iJ(e.selectedProvider,e.settings,e.providers,s):i,l=JYe(e.draft?.modelSelectionByProvider)??oJ(e.threadModelSelection)??oJ(e.projectModelSelection)??null;return{selectedModel:c,...o?{selectedProviderAccountId:o}:{},modelOptions:l}}var sJ=pn({id:k,name:k,mimeType:k,sizeBytes:qt,dataUrl:k}),cJ=pn({id:k,name:k,mimeType:k,sizeBytes:qt}),lJ=pn({id:k,threadId:At,createdAt:k,terminalId:k,terminalLabel:k,lineStart:qt,lineEnd:qt}),ZYe=pn({prompt:k,attachments:sn(sJ),files:Tt(sn(cJ)),terminalContexts:sn(lJ),startedAt:k,commandId:Tt(yt),messageId:Tt(ht),modelSelection:Tt(tn),runtimeMode:Tt(Kt),interactionMode:Tt(ln),executionIntent:Tt(pn({runtimeId:k,intentId:Tt(k)}))});function uJ(e,t){return Array.isArray(e)?e.flatMap(e=>t(e)??[]):[]}function QYe(e){if(!(!e||typeof e.runtimeId!=`string`))return{runtimeId:e.runtimeId,...typeof e.intentId==`string`?{intentId:e.intentId}:{}}}function $Ye(e){return{...typeof e.commandId==`string`?{commandId:yt.make(e.commandId)}:{},...typeof e.messageId==`string`?{messageId:ht.make(e.messageId)}:{}}}function eXe(e,t){let n=t.modelSelection(e.modelSelection);return{...n?{modelSelection:n}:{},...t.runtimeMode(e.runtimeMode)?{runtimeMode:e.runtimeMode}:{},...e.interactionMode==="default"||e.interactionMode===`plan`?{interactionMode:e.interactionMode}:{}}}function tXe(e,t){if(!e||typeof e!=`object`)return null;let n=e;if(typeof n.prompt!=`string`||typeof n.startedAt!=`string`)return null;let r=QYe(n.executionIntent);return{prompt:n.prompt,attachments:uJ(n.attachments,t.attachment),files:uJ(n.files,t.file),terminalContexts:uJ(n.terminalContexts,t.terminalContext),startedAt:n.startedAt,...$Ye(n),...eXe(n,t),...r?{executionIntent:r}:{}}}function nXe(e){return{id:e.id,threadId:e.threadId,createdAt:e.createdAt,terminalId:e.terminalId,terminalLabel:e.terminalLabel,lineStart:e.lineStart,lineEnd:e.lineEnd}}function rXe(e){return{prompt:e.prompt,attachments:[...e.attachments],files:[...e.files],terminalContexts:e.terminalContexts.map(nXe),startedAt:e.startedAt,...e.commandId?{commandId:e.commandId}:{},...e.messageId?{messageId:e.messageId}:{},...e.modelSelection?{modelSelection:e.modelSelection}:{},...e.runtimeMode?{runtimeMode:e.runtimeMode}:{},...e.interactionMode?{interactionMode:e.interactionMode}:{},...e.executionIntent?{executionIntent:e.executionIntent}:{}}}function iXe(e){return e?{...e,attachments:[...e.attachments],files:[...e.files??[]],terminalContexts:e.terminalContexts.map(e=>({...e,text:``}))}:null}function aXe(e,t,n,r){let i=e[t];if(i?.stagedSubmission)return null;let a=sXe(i??oXe(),r,n);return a?{previousDraft:i,restoredDraft:a,drafts:{...e,[t]:a}}:null}function oXe(){return{prompt:``,images:[],files:[],nonPersistedImageIds:[],persistedAttachments:[],terminalContexts:[],modelSelectionByProvider:{},activeProvider:null,runtimeMode:null,interactionMode:null,stagedSubmission:null}}function dJ(e){return`${e.mimeType}\u0000${e.sizeBytes}\u0000${e.name}`}function fJ(e){return`${e.terminalId}\u0000${e.lineStart}\u0000${e.lineEnd}`}function pJ(e,t){let n=t.terminalId.trim(),r=t.terminalLabel.trim(),i=QK(t.text);if(!n||!r)return null;let a=Math.max(1,Math.floor(t.lineStart));return{...t,threadId:e,terminalId:n,terminalLabel:r,lineStart:a,lineEnd:Math.max(a,Math.floor(t.lineEnd)),text:i}}function mJ(e,t){let n=new Set,r=new Set,i=[];for(let a of t){let t=pJ(e,a);if(!t)continue;let o=fJ(t);n.has(t.id)||r.has(o)||(i.push(t),n.add(t.id),r.add(o))}return i}function sXe(e,t,n){let r=lXe(e,t);if(!r)return null;let i=cXe(e.files??[],t.files);if(r.images.length+i.length>8)return null;let a=uXe(e,t,n),o=[e.prompt,t.prompt].filter(e=>e.length>0).join(`
|
|
1020
|
-
`);return{...e,prompt:rq(o,a.contexts.length),images:r.images,files:i,persistedAttachments:r.attachments,terminalContexts:a.contexts,stashTerminalContexts:[...e.stashTerminalContexts??[],...a.restoredSnapshots]}}function cXe(e,t){let n=new Set(e.map(e=>e.id));return[...e,...t.filter(e=>!n.has(e.id))]}function lXe(e,t){let n=new Map(t.attachments.map(e=>[e.id,e])),r=[...e.images],i=e.persistedAttachments.filter(t=>e.images.some(e=>e.id===t.id)),a=new Set(r.map(e=>e.id)),o=new Set(r.map(dJ));for(let e of t.images){let t=n.get(e.id);if(!t)return null;let s=dJ(e);a.has(e.id)||o.has(s)||(r.push(e),i.push(t),a.add(e.id),o.add(s))}return r.length>8?null:{images:r,attachments:i}}function uXe(e,t,n){let r=[...e.terminalContexts],i=new Set(r.map(e=>e.id)),a=new Set(r.map(fJ)),o=[];for(let e of t.terminalContexts){let t=pJ(n,e);!t||i.has(t.id)||a.has(fJ(t))||(r.push(t),o.push(t),i.add(t.id),a.add(fJ(t)))}return{contexts:r,restoredSnapshots:o}}function dXe(e,t){return e.prompt===t.prompt&&JSON.stringify(e.attachments)===JSON.stringify(t.persistedAttachments)&&JSON.stringify(e.files??[])===JSON.stringify((t.files??[]).map(({file:e,type:t,...n})=>n))&&JSON.stringify(e.terminalContexts??[])===JSON.stringify(t.terminalContexts.map(({text:e,...t})=>t))&&JSON.stringify(e.stashTerminalContexts??[])===JSON.stringify(t.stashTerminalContexts??[])}function hJ(e){typeof URL<`u`&&e.startsWith(`blob:`)&&URL.revokeObjectURL(e)}function gJ(e){if(!e||typeof e!=`object`)return null;let{id:t,name:n,mimeType:r,sizeBytes:i,dataUrl:a}=e;return typeof t!=`string`||typeof n!=`string`||typeof r!=`string`||typeof i!=`number`||!Number.isFinite(i)||typeof a!=`string`||t.length===0||a.length===0?null:{id:t,name:n,mimeType:r,sizeBytes:i,dataUrl:a}}function _J(e){if(!e||typeof e!=`object`)return null;let{id:t,name:n,mimeType:r,sizeBytes:i}=e;return typeof t!=`string`||t.length===0||typeof n!=`string`||typeof r!=`string`||typeof i!=`number`||!Number.isSafeInteger(i)||i<0?null:{id:t,name:n,mimeType:r,sizeBytes:i}}async function fXe(e,t){let n=await Promise.all(e.map(async e=>{let n=await t.read(e);return{...e,type:`file`,file:n}}));return n.length===e.length?n:null}function pXe(e){let t=mXe(e.dataUrl,e.mimeType);return t?new File([t.content],e.name,{type:t.mimeType}):null}function mXe(e,t){let n=e.indexOf(`,`),r=n===-1?e:e.slice(0,n),i=n===-1?``:e.slice(n+1);if(i.length===0)return null;try{return r.includes(`;base64`)?{content:_Xe(i),mimeType:t}:{content:gXe(i),mimeType:hXe(r,t)}}catch{return null}}function hXe(e,t){return!e.startsWith(`data:`)||!e.includes(`;`)?t:e.slice(5,e.indexOf(`;`))||t}function gXe(e){return decodeURIComponent(e)}function _Xe(e){let t=atob(e),n=new Uint8Array(new ArrayBuffer(t.length));for(let e=0;e<t.length;e+=1)n[e]=t.charCodeAt(e);return n}function vJ(e){return e.flatMap(e=>{let t=pXe(e);return t?[{type:`image`,id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,previewUrl:e.dataUrl,file:t}]:[]})}function vXe(e){return{prompt:e.prompt,images:[...e.images],files:[...e.files??[]],persistedAttachments:[...e.persistedAttachments],terminalContexts:[...e.terminalContexts]}}function yJ({file:e,previewUrl:t,...n}){return n}function yXe(e,t){return e.prompt===t.prompt&&JSON.stringify(e.images.map(yJ))===JSON.stringify(t.images.map(yJ))&&JSON.stringify((e.files??[]).map(({file:e,...t})=>t))===JSON.stringify(t.files.map(({file:e,...t})=>t))&&JSON.stringify(e.persistedAttachments)===JSON.stringify(t.persistedAttachments)&&JSON.stringify(e.terminalContexts)===JSON.stringify(t.terminalContexts)}function bJ(e){let{lastGeneratedPullRequestPrompt:t,...n}=e;return{...n,prompt:``,images:[],files:[],nonPersistedImageIds:[],persistedAttachments:[],terminalContexts:[],stashTerminalContexts:[]}}function xJ(e){return e.prompt.length===0&&e.lastGeneratedPullRequestPrompt===void 0&&e.images.length===0&&(e.files?.length??0)===0&&e.persistedAttachments.length===0&&e.terminalContexts.length===0&&Object.keys(e.modelSelectionByProvider).length===0&&e.activeProvider===null&&e.runtimeMode===null&&e.interactionMode===null&&e.stagedSubmission==null}function SJ(e){switch(e){case`codex`:case`claudeAgent`:case`ollama`:case`cmmd`:case`apex`:case`cursor`:case`opencode`:return e;default:return null}}function CJ(e){return Jt.some(t=>t===e)}function bXe(e){return Vte.some(t=>t===e)}function wJ(e,t,n){let r=e&&typeof e==`object`?e:null,i=r?.codex&&typeof r.codex==`object`?r.codex:null,a=r?.claudeAgent&&typeof r.claudeAgent==`object`?r.claudeAgent:null,o=CJ(i?.reasoningEffort)?i.reasoningEffort:t===`codex`&&CJ(n?.effort)?n.effort:void 0,s=i?.fastMode===!0?!0:i?.fastMode===!1?!1:t===`codex`&&n?.codexFastMode===!0||typeof n?.serviceTier==`string`&&n.serviceTier===`fast`||void 0,c=o!==void 0||s!==void 0?{...o===void 0?{}:{reasoningEffort:o},...s===void 0?{}:{fastMode:s}}:void 0,l=a?.thinking===!0||a?.thinking!==!1&&void 0,u=bXe(a?.effort)?a.effort:void 0,d=a?.fastMode===!0||a?.fastMode!==!1&&void 0,f=typeof a?.contextWindow==`string`&&a.contextWindow.length>0?a.contextWindow:void 0,p=l!==void 0||u!==void 0||d!==void 0||f!==void 0?{...l===void 0?{}:{thinking:l},...u===void 0?{}:{effort:u},...d===void 0?{}:{fastMode:d},...f===void 0?{}:{contextWindow:f}}:void 0;return!c&&!p?null:{...c?{codex:c}:{},...p?{claudeAgent:p}:{}}}function TJ(e,t){let n=e&&typeof e==`object`?e:null,r=SJ(n?.provider??t?.provider);if(r===null)return null;let i=n?.model??t?.model;if(typeof i!=`string`)return null;let a=YW(i,r);if(!a)return null;let o=wJ(n?.options?{[r]:n.options}:t?.modelOptions,r,r===`codex`?t?.legacyCodex:void 0),s=r===`codex`?o?.codex:o?.claudeAgent,c=n?.providerAccountId,l=typeof c==`string`&&c.trim().length>0?c.trim():void 0;return{provider:r,model:a,...l?{providerAccountId:l}:{},...s?{options:s}:{}}}function EJ(e,t){if(e===null)return null;let n=t?.[e.provider];return{provider:e.provider,model:e.model,...`providerAccountId`in e&&e.providerAccountId?{providerAccountId:e.providerAccountId}:{},...n?{options:n}:{}}}function DJ(e,t){return e?.options===void 0?wJ(t):xXe(wJ(t),e.provider,e.options)}function xXe(e,t,n){let{[t]:r,...i}=e??{},a=wJ({[t]:n},t);return wJ({...i,...a||{}})}function OJ(e,t){let n={};if(t)for(let r of[`codex`,`claudeAgent`]){let i=t[r];i&&Object.keys(i).length>0&&(n[r]={provider:r,model:e?.provider===r?e.model:dn[r],options:i})}return e&&(n[e.provider]=e),n}var kJ=`forge:composer-drafts:v1`,AJ=5,SXe=rn([`local`,`worktree`]),jJ=_te(Kt),MJ=Oqe(FJe({storage:typeof localStorage<`u`?localStorage:aK(),version:AJ,canMigrate:EXe}),300);typeof window<`u`&&typeof window.addEventListener==`function`&&window.addEventListener(`beforeunload`,()=>{MJ.flush()});var CXe=pn({prompt:k,lastGeneratedPullRequestPrompt:Tt(k),attachments:sn(sJ),files:Tt(sn(cJ)),terminalContexts:Tt(sn(lJ)),stashTerminalContexts:Tt(sn(pn({...lJ.fields,text:k}))),modelSelectionByProvider:Tt(Vt(Wt,Tt(tn))),activeProvider:Tt(Yt(Wt)),runtimeMode:Tt(Kt),interactionMode:Tt(ln),stagedSubmission:Tt(ZYe)});pn({effort:Tt(rn(Jt)),codexFastMode:Tt(Ut),serviceTier:Tt(k)}),pn({provider:Tt(Wt),model:Tt(k),modelOptions:Tt(Yt(_t))}),pn({stickyProvider:Tt(Wt),stickyModel:Tt(k),stickyModelOptions:Tt(Yt(_t))});var wXe=pn({threadId:At,environmentId:k,projectId:Zt,logicalProjectKey:Tt(k),createdAt:k,runtimeMode:Kt,interactionMode:ln,branch:Yt(k),worktreePath:Yt(k),envMode:SXe,promotedTo:Tt(Yt(pn({environmentId:k,threadId:k}))),anchorKind:Tt(yte),anchorCmmdId:Tt(Yt(k)),linkedPullRequest:Tt(Yt(Hte))}),TXe=pn({draftsByThreadKey:Vt(k,CXe),draftThreadsByThreadKey:Vt(k,wXe),logicalProjectDraftThreadKeyByLogicalProjectKey:Vt(k,k),stickyModelSelectionByProvider:Tt(Vt(Wt,Tt(tn))),stickyActiveProvider:Tt(Yt(Wt))}),NJ=pn({version:qt,state:TXe}),PJ=Qt(NJ);function EXe(e,t){if(e===null)return!0;try{let n=JSON.parse(e);if(!n||typeof n!=`object`)return!1;let r=n;return r.version===t?(PJ(n),!0):typeof r.version==`number`&&Number.isInteger(r.version)&&r.version>=1&&r.version<t&&r.state!==null&&typeof r.state==`object`}catch{return!1}}function DXe(e){if(e===null)return new Set;try{let t=PJ(JSON.parse(e));if(t.version!==AJ)return null;let n=new Set;for(let e of Object.values(t.state.draftsByThreadKey)){for(let t of e.files??[])n.add(t.id);for(let t of e.stagedSubmission?.files??[])n.add(t.id)}return n}catch{return null}}function OXe(){MJ.flush()}var FJ=Object.freeze({draftsByThreadKey:{},draftThreadsByThreadKey:{},logicalProjectDraftThreadKeyByLogicalProjectKey:{},stickyModelSelectionByProvider:{},stickyActiveProvider:null}),IJ=[],kXe=[],LJ=[],RJ=[],AXe=[];Object.freeze(IJ),Object.freeze(LJ),Object.freeze(RJ);var zJ=Object.freeze({}),jXe=Object.freeze({activeProvider:null,modelSelectionByProvider:zJ}),MXe=Object.freeze({prompt:``,images:IJ,files:kXe,nonPersistedImageIds:LJ,persistedAttachments:RJ,terminalContexts:AXe,modelSelectionByProvider:zJ,activeProvider:null,runtimeMode:null,interactionMode:null,stagedSubmission:null});function BJ(){return{prompt:``,images:[],files:[],nonPersistedImageIds:[],persistedAttachments:[],terminalContexts:[],modelSelectionByProvider:{},activeProvider:null,runtimeMode:null,interactionMode:null,stagedSubmission:null}}function VJ(e){if(!e||typeof e!=`object`)return null;let t=e,n=t.id,r=t.threadId,i=t.createdAt,a=t.lineStart,o=t.lineEnd;if(typeof n!=`string`||n.length===0||typeof r!=`string`||r.length===0||typeof i!=`string`||i.length===0||typeof a!=`number`||!Number.isFinite(a)||typeof o!=`number`||!Number.isFinite(o))return null;let s=typeof t.terminalId==`string`?t.terminalId.trim():``,c=typeof t.terminalLabel==`string`?t.terminalLabel.trim():``;if(s.length===0||c.length===0)return null;let l=Math.max(1,Math.floor(a));return{id:n,threadId:r,createdAt:i,terminalId:s,terminalLabel:c,lineStart:l,lineEnd:Math.max(l,Math.floor(o))}}function NXe(e,t){return e===`local`||e===`worktree`?e:t?`worktree`:`local`}function HJ(e){return ci(e)}function UJ(e){return e.trim()}function WJ(e){return typeof e==`string`?e.trim():li(e)}function GJ(e,t){let n=fi(e);return n?WJ(n):t?.environmentId?WJ(ai(t.environmentId,e)):e}function PXe(e){return fi(e)}function KJ(e,t){if(typeof t==`string`){let e=t.trim();return e.length>0?ct.make(e):null}return t}function qJ(e,t){let n=KJ(e,t);if(!n)return null;if(typeof n!=`string`){let t=WJ(n);if(e.draftsByThreadKey[t])return t;for(let[t,r]of Object.entries(e.draftThreadsByThreadKey))if(r.environmentId===n.environmentId&&r.threadId===n.threadId)return t;return t}let r=WJ(n);return r.length>0?r:null}function JJ(e,t){let n=KJ(e,t);return n?typeof n==`string`?e.draftThreadsByThreadKey[n]?.threadId??At.make(n):n.threadId:null}function YJ(e,t){let n=qJ(e,t);return n?e.draftsByThreadKey[n]??null:null}function FXe(e,t){return Object.values(e).includes(t)}function XJ(e,t){return{draftId:e,...t}}function IXe(e,t,n,r,i){let a=r!==void 0&&(r.environmentId!==e.environmentId||r.projectId!==e.projectId),o=i?.worktreePath===void 0?a?null:r?.worktreePath??null:i.worktreePath??null,s=i?.branch===void 0?a?null:r?.branch??null:i.branch??null,c=i?.anchorKind===void 0?r?.anchorKind:i.anchorKind??void 0;return{threadId:t,environmentId:e.environmentId,projectId:e.projectId,logicalProjectKey:n,createdAt:i?.createdAt??r?.createdAt??new Date().toISOString(),runtimeMode:i?.runtimeMode??r?.runtimeMode??`full-access`,interactionMode:i?.interactionMode??r?.interactionMode??`default`,branch:s,worktreePath:o,envMode:i?.envMode??(o?`worktree`:a?`local`:r?.envMode??`local`),promotedTo:null,cmmdTaskId:i?.cmmdTaskId===void 0?r?.cmmdTaskId??null:i.cmmdTaskId,anchorCmmdId:i?.anchorCmmdId===void 0?r?.anchorCmmdId??null:i.anchorCmmdId,linkedPullRequest:i?.linkedPullRequest===void 0?r?.linkedPullRequest??null:i.linkedPullRequest,...c===void 0?{}:{anchorKind:c}}}function ZJ(e,t){return!e||!t?e===t:e.environmentId===t.environmentId&&e.threadId===t.threadId}function QJ(e){return e?.promotedTo!==null&&e?.promotedTo!==void 0}function LXe(e,t){return!!e&&e.threadId===t.threadId&&e.environmentId===t.environmentId&&e.projectId===t.projectId&&e.logicalProjectKey===t.logicalProjectKey&&e.createdAt===t.createdAt&&e.runtimeMode===t.runtimeMode&&e.interactionMode===t.interactionMode&&e.branch===t.branch&&e.worktreePath===t.worktreePath&&e.envMode===t.envMode&&(e.anchorKind??void 0)===(t.anchorKind??void 0)&&(e.anchorCmmdId??null)===(t.anchorCmmdId??null)&&$J(e.linkedPullRequest,t.linkedPullRequest)&&ZJ(e.promotedTo,t.promotedTo)}function $J(e,t){return(e?.projectId??null)===(t?.projectId??null)&&(e?.projectRepositoryId??null)===(t?.projectRepositoryId??null)&&(e?.provider??null)===(t?.provider??null)&&(e?.host??null)===(t?.host??null)&&(e?.repository??null)===(t?.repository??null)&&(e?.number??null)===(t?.number??null)&&(e?.url??null)===(t?.url??null)}function eY(e,t){let n=Object.fromEntries(Object.entries(e.logicalProjectDraftThreadKeyByLogicalProjectKey).filter(([,e])=>e!==t)),{[t]:r,...i}=e.draftThreadsByThreadKey,{[t]:a,...o}=e.draftsByThreadKey;return{draftsByThreadKey:o,draftThreadsByThreadKey:i,logicalProjectDraftThreadKeyByLogicalProjectKey:n}}function tY(e,t){let n={},r=new Map;if(t&&typeof t==`object`)for(let[e,n]of Object.entries(t)){if(typeof n!=`string`||n.length===0)continue;let t=di(e);if(!t)continue;let i=fi(n);if(i){r.set(i.threadId,i.environmentId);continue}r.set(n,t.environmentId)}if(e&&typeof e==`object`)for(let[t,i]of Object.entries(e)){if(typeof t!=`string`||t.length===0||!i||typeof i!=`object`)continue;let e=i,a=fi(t),o=GJ(t),s=a?.threadId??(typeof e.threadId==`string`&&e.threadId.length>0?e.threadId:t),c=a?.environmentId??(typeof e.environmentId==`string`&&e.environmentId.length>0?e.environmentId:r.get(t)),l=e.projectId,u=e.createdAt,d=e.branch,f=e.worktreePath,p=typeof f==`string`?f:null,m=e.promotedTo,h=m&&typeof m==`object`?m:null,g=h&&typeof h.environmentId==`string`&&h.environmentId.length>0&&typeof h.threadId==`string`&&h.threadId.length>0?ai(h.environmentId,h.threadId):null;if(typeof l!=`string`||l.length===0||c===void 0)continue;let _=c;n[o]={threadId:s,environmentId:_,projectId:l,logicalProjectKey:typeof e.logicalProjectKey==`string`&&e.logicalProjectKey.length>0?e.logicalProjectKey:a?HJ(ii(_,l)):t,createdAt:typeof u==`string`&&u.length>0?u:new Date().toISOString(),runtimeMode:jJ(e.runtimeMode)?e.runtimeMode:fK,interactionMode:e.interactionMode===`plan`||e.interactionMode==="default"?e.interactionMode:pK,branch:typeof d==`string`?d:null,worktreePath:p,envMode:NXe(e.envMode,p),promotedTo:g}}let i={};if(t&&typeof t==`object`)for(let[e,a]of Object.entries(t)){if(typeof a!=`string`||a.length===0)continue;let t=di(e),o=fi(a),s=GJ(a);if(i[e]=s,o&&r.set(o.threadId,o.environmentId),!t){let t=n[s];t&&!t.logicalProjectKey&&(n[s]={...t,logicalProjectKey:e});continue}n[s]?(n[s]?.projectId!==t.projectId||n[s]?.environmentId!==t.environmentId)&&(n[s]={...n[s],threadId:n[s].threadId,environmentId:t.environmentId,projectId:t.projectId,logicalProjectKey:e}):n[s]={threadId:o?.threadId??s,environmentId:t.environmentId,projectId:t.projectId,logicalProjectKey:e,createdAt:new Date().toISOString(),runtimeMode:fK,interactionMode:pK,branch:null,worktreePath:null,envMode:`local`,promotedTo:null}}return{draftThreadsByThreadKey:n,logicalProjectDraftThreadKeyByLogicalProjectKey:i}}function nY(e,t){if(!e||typeof e!=`object`)return{};let n=new Map;for(let[e,r]of Object.entries(t)){let t=PXe(e);t&&n.set(t.threadId,r.environmentId)}let r={};for(let[i,a]of Object.entries(e)){if(typeof i!=`string`||i.length===0||!a||typeof a!=`object`)continue;let e=a,o=typeof e.prompt==`string`?e.prompt:``,s=typeof e.lastGeneratedPullRequestPrompt==`string`?e.lastGeneratedPullRequestPrompt:void 0,c=Array.isArray(e.attachments)?e.attachments.flatMap(e=>{let t=gJ(e);return t?[t]:[]}):[],l=Array.isArray(e.files)?e.files.flatMap(e=>{let t=_J(e);return t?[t]:[]}):[],u=Array.isArray(e.terminalContexts)?e.terminalContexts.flatMap(e=>{let t=VJ(e);return t?[t]:[]}):[],d=Array.isArray(e.stashTerminalContexts)?e.stashTerminalContexts.flatMap(e=>{let t=VJ(e),n=typeof e.text==`string`?e.text:``;return t&&n.length>0?[{...t,text:n}]:[]}):[],f=jJ(e.runtimeMode)?e.runtimeMode:null,p=e.interactionMode===`plan`||e.interactionMode==="default"?e.interactionMode:null,m=tXe(e.stagedSubmission,{attachment:gJ,file:_J,terminalContext:VJ,modelSelection:e=>TJ(e)??null,runtimeMode:jJ}),h=rq(o,u.length),g=a,_={},v=null;if(e.modelSelectionByProvider&&typeof e.modelSelectionByProvider==`object`)_=e.modelSelectionByProvider,v=SJ(e.activeProvider);else{let e=wJ(g.modelOptions,void 0,g)??null,t=TJ(g.modelSelection,{provider:g.provider,model:g.model,modelOptions:e??g.modelOptions,legacyCodex:g}),n=DJ(t,e),r=EJ(t,n);_=OJ(r,n),v=r?.provider??null}let y=Object.keys(_).length>0||v!==null;if(o.length===0&&c.length===0&&l.length===0&&u.length===0&&d.length===0&&!y&&!f&&!p&&!m)continue;let b=fi(i)===null?t[i]===void 0?(()=>{let e=n.get(i);return e?GJ(i,{environmentId:e}):i})():i:GJ(i);r[b]={prompt:h,...s===void 0?{}:{lastGeneratedPullRequestPrompt:s},attachments:c,...l.length>0?{files:l}:{},...u.length>0?{terminalContexts:u}:{},...d.length>0?{stashTerminalContexts:d}:{},...y?{modelSelectionByProvider:_,activeProvider:v}:{},...f?{runtimeMode:f}:{},...p?{interactionMode:p}:{},...m?{stagedSubmission:m}:{}}}return r}function RXe(e){if(!e||typeof e!=`object`)return FJ;let t=e,n=t.draftsByThreadKey??t.draftsByThreadId,r=t.draftThreadsByThreadKey??t.draftThreadsByThreadId,i=t.logicalProjectDraftThreadKeyByLogicalProjectKey??t.projectDraftThreadKeyByProjectKey??t.projectDraftThreadIdByProjectKey??t.projectDraftThreadIdByProjectId,a=wJ(t.stickyModelOptions)??{},o=TJ(t.stickyModelSelection,{provider:t.stickyProvider??`codex`,model:t.stickyModel,modelOptions:a}),s=DJ(o,a),c=OJ(EJ(o,s),s),l=SJ(t.stickyProvider)??null,{draftThreadsByThreadKey:u,logicalProjectDraftThreadKeyByLogicalProjectKey:d}=tY(r,i);return{draftsByThreadKey:nY(n,u),draftThreadsByThreadKey:u,logicalProjectDraftThreadKeyByLogicalProjectKey:d,stickyModelSelectionByProvider:c,stickyActiveProvider:l}}function zXe(e){let t={};for(let[n,r]of Object.entries(e.draftsByThreadKey)){if(typeof n!=`string`||n.length===0)continue;let e=Object.keys(r.modelSelectionByProvider).length>0||r.activeProvider!==null;r.prompt.length===0&&r.lastGeneratedPullRequestPrompt===void 0&&r.persistedAttachments.length===0&&(r.files?.length??0)===0&&r.terminalContexts.length===0&&!e&&r.runtimeMode===null&&r.interactionMode===null&&r.stagedSubmission==null||(t[n]={prompt:r.prompt,...r.lastGeneratedPullRequestPrompt===void 0?{}:{lastGeneratedPullRequestPrompt:r.lastGeneratedPullRequestPrompt},attachments:r.persistedAttachments,...(r.files?.length??0)>0?{files:r.files.map(({file:e,type:t,...n})=>n)}:{},...r.terminalContexts.length>0?{terminalContexts:r.terminalContexts.map(e=>({id:e.id,threadId:e.threadId,createdAt:e.createdAt,terminalId:e.terminalId,terminalLabel:e.terminalLabel,lineStart:e.lineStart,lineEnd:e.lineEnd}))}:{},...r.stashTerminalContexts&&r.stashTerminalContexts.length>0?{stashTerminalContexts:r.stashTerminalContexts.map(e=>({id:e.id,threadId:e.threadId,createdAt:e.createdAt,terminalId:e.terminalId,terminalLabel:e.terminalLabel,lineStart:e.lineStart,lineEnd:e.lineEnd,text:e.text}))}:{},...e?{modelSelectionByProvider:r.modelSelectionByProvider,activeProvider:r.activeProvider}:{},...r.runtimeMode?{runtimeMode:r.runtimeMode}:{},...r.interactionMode?{interactionMode:r.interactionMode}:{},...r.stagedSubmission?{stagedSubmission:rXe(r.stagedSubmission)}:{}})}return{draftsByThreadKey:t,draftThreadsByThreadKey:e.draftThreadsByThreadKey,logicalProjectDraftThreadKeyByLogicalProjectKey:e.logicalProjectDraftThreadKeyByLogicalProjectKey,stickyModelSelectionByProvider:e.stickyModelSelectionByProvider,stickyActiveProvider:e.stickyActiveProvider}}function BXe(e){if(!e||typeof e!=`object`)return FJ;let t=e,{draftThreadsByThreadKey:n,logicalProjectDraftThreadKeyByLogicalProjectKey:r}=tY(t.draftThreadsByThreadKey??t.draftThreadsByThreadId,t.logicalProjectDraftThreadKeyByLogicalProjectKey??t.projectDraftThreadKeyByProjectKey??t.projectDraftThreadIdByProjectKey??t.projectDraftThreadIdByProjectId),i={},a=null;if(t.stickyModelSelectionByProvider&&typeof t.stickyModelSelectionByProvider==`object`)i=t.stickyModelSelectionByProvider,a=SJ(t.stickyActiveProvider);else{let e=wJ(t.stickyModelOptions)??{},n=TJ(t.stickyModelSelection,{provider:t.stickyProvider,model:t.stickyModel,modelOptions:e}),r=DJ(n,e);i=OJ(EJ(n,r),r),a=SJ(t.stickyProvider)}return{draftsByThreadKey:nY(t.draftsByThreadKey??t.draftsByThreadId,n),draftThreadsByThreadKey:n,logicalProjectDraftThreadKeyByLogicalProjectKey:r,stickyModelSelectionByProvider:i,stickyActiveProvider:a}}function VXe(e){if(e.length===0)return[];try{let t=Ni(kJ,NJ);return!t||t.version!==AJ?[]:(t.state.draftsByThreadKey[e]?.attachments??[]).map(e=>e.id)}catch{return[]}}function HXe(e){if(e.length===0)return null;try{let t=MJ.getItem(kJ);if(typeof t!=`string`)return null;let n=PJ(JSON.parse(t));return!n||n.version!==AJ?null:n.state.draftsByThreadKey[e]??null}catch{return null}}function UXe(e,t,n){let r=new Set;try{MJ.flush(),r=new Set(VXe(e))}catch{r=new Set}n(n=>{let i=n.draftsByThreadKey[e];if(!i)return n;let a=new Set(i.images.map(e=>e.id)),o=t.filter(e=>a.has(e.id)&&r.has(e.id)),s=i.images.map(e=>e.id).filter(e=>!r.has(e)),c={...i,persistedAttachments:o,nonPersistedImageIds:s},l={...n.draftsByThreadKey};return xJ(c)?delete l[e]:l[e]=c,{draftsByThreadKey:l}})}function WXe(e,t){return e.length>0?e:t?.prompt??``}function rY(e,t){return e?.length?e:t??[]}function GXe(e){let t=e.stagedSubmission;return{prompt:WXe(e.prompt,t),attachments:rY(e.attachments,t?.attachments),files:rY(e.files,t?.files),terminalContexts:rY(e.terminalContexts,t?.terminalContexts)}}function KXe(e){let t=e.modelSelectionByProvider??{},n=SJ(e.activeProvider)??null,r=GXe(e);return{prompt:r.prompt,...e.lastGeneratedPullRequestPrompt===void 0?{}:{lastGeneratedPullRequestPrompt:e.lastGeneratedPullRequestPrompt},images:vJ(r.attachments),files:r.files.map(e=>({...e,type:`file`,file:null})),nonPersistedImageIds:[],persistedAttachments:[...r.attachments],terminalContexts:r.terminalContexts.map(t=>{let n=e.stashTerminalContexts?.find(e=>e.id===t.id);return Object.assign({},t,{text:n?.text??``})}),...e.stashTerminalContexts&&e.stashTerminalContexts.length>0?{stashTerminalContexts:e.stashTerminalContexts.map(e=>({...e}))}:{},modelSelectionByProvider:t,activeProvider:n,runtimeMode:e.runtimeMode??null,interactionMode:e.interactionMode??null,stagedSubmission:iXe(e.stagedSubmission)}}function qXe(e){return{threadId:e.threadId,environmentId:e.environmentId,projectId:e.projectId,logicalProjectKey:e.logicalProjectKey??HJ(ii(e.environmentId,e.projectId)),createdAt:e.createdAt,runtimeMode:e.runtimeMode,interactionMode:e.interactionMode,branch:e.branch,worktreePath:e.worktreePath,envMode:e.envMode,promotedTo:e.promotedTo?ai(e.promotedTo.environmentId,e.promotedTo.threadId):null,linkedPullRequest:e.linkedPullRequest??null}}var iY=dt()(QG((e,t)=>{let n=e;return{draftsByThreadKey:{},draftThreadsByThreadKey:{},logicalProjectDraftThreadKeyByLogicalProjectKey:{},stickyModelSelectionByProvider:{},stickyActiveProvider:null,getComposerDraft:e=>YJ(t(),e),getDraftThreadByLogicalProjectKey:e=>t().getDraftSessionByLogicalProjectKey(e),getDraftSessionByLogicalProjectKey:e=>{let n=UJ(e);if(n.length===0)return null;let r=t().logicalProjectDraftThreadKeyByLogicalProjectKey[n];if(!r)return null;let i=t().draftThreadsByThreadKey[r];return!i||QJ(i)?null:XJ(ct.make(r),i)},getDraftThreadByProjectRef:e=>t().getDraftSessionByProjectRef(e),getDraftSessionByProjectRef:e=>{for(let[n,r]of Object.entries(t().draftThreadsByThreadKey))if(!QJ(r)&&r.projectId===e.projectId&&r.environmentId===e.environmentId)return XJ(ct.make(n),r);return null},getDraftSession:e=>t().draftThreadsByThreadKey[e]??null,getDraftSessionByRef:e=>{for(let n of Object.values(t().draftThreadsByThreadKey))if(n.environmentId===e.environmentId&&n.threadId===e.threadId)return n;return null},getDraftThread:e=>typeof e==`string`?t().getDraftSession(ct.make(e)):t().getDraftSessionByRef(e),getDraftThreadByRef:e=>t().getDraftSessionByRef(e),listDraftThreadKeys:()=>Object.values(t().draftThreadsByThreadKey).map(e=>li(ai(e.environmentId,e.threadId))),hasDraftThreadsInEnvironment:e=>Object.values(t().draftThreadsByThreadKey).some(t=>t.environmentId===e),setLogicalProjectDraftThreadId:(e,t,r,i)=>{let a=UJ(e);a.length!==0&&r.length!==0&&n(e=>{let n=e.draftThreadsByThreadKey[r],o=e.logicalProjectDraftThreadKeyByLogicalProjectKey[a],s=IXe(t,i?.threadId??n?.threadId??At.make(r),a,n,i);if(o===r&&LXe(n,s))return e;let c={...e.logicalProjectDraftThreadKeyByLogicalProjectKey,[a]:r},l={...e.draftThreadsByThreadKey,[r]:s},u=e.draftsByThreadKey,d=o===void 0?void 0:l[o];return o&&o!==r&&!FXe(c,o)&&!QJ(d)&&(delete l[o],e.draftsByThreadKey[o]!==void 0&&(u={...e.draftsByThreadKey},delete u[o])),{draftsByThreadKey:u,draftThreadsByThreadKey:l,logicalProjectDraftThreadKeyByLogicalProjectKey:c}})},setProjectDraftThreadId:(e,n,r)=>{t().setLogicalProjectDraftThreadId(HJ(e),e,n,r)},setDraftThreadContext:(e,r)=>{let i=qJ(t(),e)??``;i.length!==0&&n(e=>{let t=e.draftThreadsByThreadKey[i];if(!t)return e;let n=r.projectRef??{environmentId:t.environmentId,projectId:t.projectId};if(n.projectId.length===0||n.environmentId.length===0)return e;let a=n.environmentId!==t.environmentId||n.projectId!==t.projectId,o=r.worktreePath===void 0?a?null:t.worktreePath:r.worktreePath??null,s=r.branch===void 0?a?null:t.branch:r.branch??null,c=r.anchorKind===void 0?t.anchorKind:r.anchorKind??void 0,l={threadId:t.threadId,environmentId:n.environmentId,projectId:n.projectId,logicalProjectKey:t.logicalProjectKey,createdAt:r.createdAt===void 0?t.createdAt:r.createdAt||t.createdAt,runtimeMode:r.runtimeMode??t.runtimeMode,interactionMode:r.interactionMode??t.interactionMode,branch:s,worktreePath:o,envMode:r.envMode??(o?`worktree`:a?`local`:t.envMode??`local`),promotedTo:t.promotedTo??null,cmmdTaskId:r.cmmdTaskId===void 0?t.cmmdTaskId??null:r.cmmdTaskId,anchorCmmdId:r.anchorCmmdId===void 0?t.anchorCmmdId??null:r.anchorCmmdId,linkedPullRequest:r.linkedPullRequest===void 0?t.linkedPullRequest??null:r.linkedPullRequest,...c===void 0?{}:{anchorKind:c}};return l.environmentId===t.environmentId&&l.projectId===t.projectId&&l.logicalProjectKey===t.logicalProjectKey&&l.createdAt===t.createdAt&&l.runtimeMode===t.runtimeMode&&l.interactionMode===t.interactionMode&&l.branch===t.branch&&l.worktreePath===t.worktreePath&&l.envMode===t.envMode&&(l.anchorKind??void 0)===(t.anchorKind??void 0)&&(l.anchorCmmdId??null)===(t.anchorCmmdId??null)&&$J(l.linkedPullRequest,t.linkedPullRequest)&&ZJ(l.promotedTo,t.promotedTo)?e:{draftThreadsByThreadKey:{...e.draftThreadsByThreadKey,[i]:l}}})},clearProjectDraftThreadId:e=>{n(t=>{let n=Object.entries(t.draftThreadsByThreadKey).find(([,t])=>t.projectId===e.projectId&&t.environmentId===e.environmentId);return n?eY(t,n[0]):t})},clearProjectDraftThreadById:(e,r)=>{let i=qJ(t(),r)??``;i.length!==0&&n(t=>{let n=t.draftThreadsByThreadKey[i];return!n||n.projectId!==e.projectId||n.environmentId!==e.environmentId?t:eY(t,i)})},markDraftThreadPromoting:(e,r)=>{let i=qJ(t(),e);i&&n(e=>{let t=e.draftThreadsByThreadKey[i];if(!t)return e;let n=r??ai(t.environmentId,t.threadId);return ZJ(t.promotedTo,n)?e:{draftThreadsByThreadKey:{...e.draftThreadsByThreadKey,[i]:{...t,promotedTo:n}}}})},finalizePromotedDraftThread:e=>{let r=qJ(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftThreadsByThreadKey[r];if(!QJ(t))return e;let n=WJ(t.promotedTo),i=e.draftsByThreadKey[n],a=e.draftsByThreadKey[r];return eY(a?{...e,draftsByThreadKey:{...e.draftsByThreadKey,[n]:i?{...i,modelSelectionByProvider:{...i.modelSelectionByProvider,...a.modelSelectionByProvider},activeProvider:a.activeProvider,runtimeMode:a.runtimeMode,interactionMode:a.interactionMode}:a}}:e,r)})},clearDraftThread:e=>{let r=qJ(t(),e)??``;if(r.length===0)return;let i=t().draftsByThreadKey[r];if(i)for(let e of i.images)hJ(e.previewUrl);n(e=>{let t=e.draftThreadsByThreadKey[r]!==void 0,n=Object.values(e.logicalProjectDraftThreadKeyByLogicalProjectKey).includes(r),i=e.draftsByThreadKey[r]!==void 0;return!t&&!n&&!i?e:eY(e,r)})},setStickyModelSelection:e=>{let t=TJ(e);n(e=>{if(!t)return e;let n={...e.stickyModelSelectionByProvider,[t.provider]:t};return Ie(e.stickyModelSelectionByProvider,n)?e.stickyActiveProvider===t.provider?e:{stickyActiveProvider:t.provider}:{stickyModelSelectionByProvider:n,stickyActiveProvider:t.provider}})},applyStickyState:e=>{let r=qJ(t(),e)??``;r.length!==0&&n(e=>{let t=e.stickyModelSelectionByProvider,n=e.stickyActiveProvider;if(Object.keys(t).length===0&&n===null)return e;let i=e.draftsByThreadKey[r]??BJ(),a={...i.modelSelectionByProvider};for(let[e,n]of Object.entries(t))if(n){let t=a[e];a[e]={...n,model:t?.model??n.model}}if(Ie(i.modelSelectionByProvider,a)&&i.activeProvider===n)return e;let o={...i,modelSelectionByProvider:a,activeProvider:n},s={...e.draftsByThreadKey};return xJ(o)?delete s[r]:s[r]=o,{draftsByThreadKey:s}})},setPrompt:(e,r)=>{let i=qJ(t(),e)??``;i.length!==0&&n(e=>{let t=e.draftsByThreadKey[i]??BJ();if(t.prompt===r)return e;let n={...t,prompt:r},a={...e.draftsByThreadKey};return xJ(n)?delete a[i]:a[i]=n,{draftsByThreadKey:a}})},setGeneratedPullRequestPrompt:(e,r)=>{let i=qJ(t(),e)??``;i.length!==0&&n(e=>{let t=e.draftsByThreadKey[i]??BJ();return{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,lastGeneratedPullRequestPrompt:r}}}})},setPendingAutoSubmit:(e,r)=>{let i=qJ(t(),e)??``;i.length!==0&&n(e=>{let t=e.draftsByThreadKey[i]??BJ();if((t.pendingAutoSubmit??!1)===r)return e;let n=r?{...t,pendingAutoSubmit:!0}:(()=>{let{pendingAutoSubmit:e,...n}=t;return n})(),a={...e.draftsByThreadKey};return xJ(n)?delete a[i]:a[i]=n,{draftsByThreadKey:a}})},stageComposerSubmission:(e,r,i,a,o,s,c)=>{let l=qJ(t(),e)??``;l.length!==0&&(n(e=>{let t=e.draftsByThreadKey[l];if(!t)return e;let n={prompt:t.prompt,attachments:[...c??t.persistedAttachments],files:(t.files??[]).map(({file:e,type:t,...n})=>n),terminalContexts:[...t.terminalContexts],startedAt:r,commandId:i,messageId:a,...o?{executionIntent:o}:{},...s},u={...e.draftsByThreadKey};return u[l]={...t,stagedSubmission:n},{draftsByThreadKey:u}}),MJ.flush())},setStagedComposerExecutionIntent:(e,r)=>{let i=qJ(t(),e)??``;i.length!==0&&(n(e=>{let t=e.draftsByThreadKey[i];return t?.stagedSubmission?{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,stagedSubmission:{...t.stagedSubmission,executionIntent:r}}}}:e}),MJ.flush())},clearStagedComposerSubmission:e=>{let r=qJ(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftsByThreadKey[r];if(!t?.stagedSubmission)return e;let n={...t,stagedSubmission:null},i={...e.draftsByThreadKey};return xJ(n)?delete i[r]:i[r]=n,{draftsByThreadKey:i}})},setTerminalContexts:(e,r,i)=>{let a=qJ(t(),e),o=JJ(t(),e);if(!a||!o)return;let s=mJ(o,r);n(e=>{let t=e.draftsByThreadKey[a]??BJ(),n={...t,prompt:rq(t.prompt,s.length),terminalContexts:s,...i?.preserveTextForReload?{stashTerminalContexts:s}:{stashTerminalContexts:[]}},r={...e.draftsByThreadKey};return xJ(n)?delete r[a]:r[a]=n,{draftsByThreadKey:r}})},setModelSelection:(e,r)=>{let i=qJ(t(),e)??``;if(i.length===0)return;let a=TJ(r);n(e=>{let t=e.draftsByThreadKey[i];if(!t&&a===null)return e;let n=t??BJ(),r={...n.modelSelectionByProvider};if(a){let e=r[a.provider];a.options===void 0?r[a.provider]={provider:a.provider,model:a.model,...`providerAccountId`in a&&a.providerAccountId?{providerAccountId:a.providerAccountId}:e&&`providerAccountId`in e&&e.providerAccountId?{providerAccountId:e.providerAccountId}:{},...e?.options?{options:e.options}:{}}:r[a.provider]=a}let o=a?.provider??n.activeProvider;if(Ie(n.modelSelectionByProvider,r)&&n.activeProvider===o)return e;let s={...n,modelSelectionByProvider:r,activeProvider:o},c={...e.draftsByThreadKey};return xJ(s)?delete c[i]:c[i]=s,{draftsByThreadKey:c}})},setModelOptions:(e,r)=>{let i=qJ(t(),e)??``;if(i.length===0)return;let a=wJ(r);n(e=>{let t=e.draftsByThreadKey[i];if(!t&&a===null)return e;let n=t??BJ(),r={...n.modelSelectionByProvider};for(let e of[`codex`,`claudeAgent`]){if(!a||!(e in a))continue;let t=a[e],n=r[e];if(t)r[e]={provider:e,model:n?.model??dn[e],...n&&`providerAccountId`in n&&n.providerAccountId?{providerAccountId:n.providerAccountId}:{},options:t};else if(n?.options){let{options:t,...i}=n;r[e]=i}}if(Ie(n.modelSelectionByProvider,r))return e;let o={...n,modelSelectionByProvider:r},s={...e.draftsByThreadKey};return xJ(o)?delete s[i]:s[i]=o,{draftsByThreadKey:s}})},setProviderModelOptions:(e,r,i,a)=>{let o=qJ(t(),e)??``;if(o.length===0)return;let s=SJ(r);if(s===null)return;let c=wJ({[s]:i},s)?.[s];n(e=>{let t=e.draftsByThreadKey[o]??BJ(),n={...t.modelSelectionByProvider},r=n[s];if(c)n[s]={provider:s,model:r?.model??dn[s],...r&&`providerAccountId`in r&&r.providerAccountId?{providerAccountId:r.providerAccountId}:{},options:c};else if(r?.options){let{options:e,...t}=r;n[s]=t}let i=e.stickyModelSelectionByProvider,l=e.stickyActiveProvider;if(a?.persistSticky===!0){i={...e.stickyModelSelectionByProvider};let n=i[s]??t.modelSelectionByProvider[s]??{provider:s,model:dn[s]};if(c)i[s]={...n,provider:s,options:c};else if(n.options){let{options:e,...t}=n;i[s]=t}l=t.activeProvider??s}if(Ie(t.modelSelectionByProvider,n)&&Ie(e.stickyModelSelectionByProvider,i)&&e.stickyActiveProvider===l)return e;let u={...t,modelSelectionByProvider:n},d={...e.draftsByThreadKey};return xJ(u)?delete d[o]:d[o]=u,{draftsByThreadKey:d,...a?.persistSticky===!0?{stickyModelSelectionByProvider:i,stickyActiveProvider:l}:{}}})},setRuntimeMode:(e,r)=>{let i=qJ(t(),e)??``;if(i.length===0)return;let a=jJ(r)?r:null;n(e=>{let t=e.draftsByThreadKey[i];if(!t&&a===null)return e;let n=t??BJ();if(n.runtimeMode===a)return e;let r={...n,runtimeMode:a},o={...e.draftsByThreadKey};return xJ(r)?delete o[i]:o[i]=r,{draftsByThreadKey:o}})},setInteractionMode:(e,r)=>{let i=qJ(t(),e)??``;if(i.length===0)return;let a=r===`plan`||r==="default"?r:null;n(e=>{let t=e.draftsByThreadKey[i];if(!t&&a===null)return e;let n=t??BJ();if(n.interactionMode===a)return e;let r={...n,interactionMode:a},o={...e.draftsByThreadKey};return xJ(r)?delete o[i]:o[i]=r,{draftsByThreadKey:o}})},addImage:(e,n)=>{let r=qJ(t(),e),i=JJ(t(),e);!r||!i||t().addImages(typeof e==`string`?ct.make(r):e,[n])},addImages:(e,r)=>{let i=qJ(t(),e)??``;i.length!==0&&r.length!==0&&n(e=>{let t=e.draftsByThreadKey[i]??BJ(),n=new Set(t.images.map(e=>e.id)),a=new Set(t.images.map(e=>dJ(e))),o=new Set(t.images.map(e=>e.previewUrl)),s=[];for(let e of r){let t=dJ(e);if(n.has(e.id)||a.has(t)){o.has(e.previewUrl)||hJ(e.previewUrl);continue}s.push(e),n.add(e.id),a.add(t),o.add(e.previewUrl)}return s.length===0?e:{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,images:[...t.images,...s]}}}})},addFiles:(e,r)=>{let i=qJ(t(),e)??``;i.length!==0&&r.length!==0&&n(e=>{let t=e.draftsByThreadKey[i]??BJ(),n=new Set((t.files??[]).map(e=>e.id)),a=Math.max(0,8-t.images.length-(t.files?.length??0)),o=r.filter(e=>!n.has(e.id)).slice(0,a);return o.length===0?e:{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,files:[...t.files??[],...o]}}}})},setFiles:(e,r)=>{let i=qJ(t(),e)??``;i.length!==0&&n(e=>{let t=e.draftsByThreadKey[i]??BJ();return{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,files:[...r]}}}})},removeImage:(e,r)=>{let i=qJ(t(),e)??``;if(i.length===0)return;let a=t().draftsByThreadKey[i];if(!a)return;let o=a.images.find(e=>e.id===r);o&&hJ(o.previewUrl),n(e=>{let t=e.draftsByThreadKey[i];if(!t)return e;let n={...t,images:t.images.filter(e=>e.id!==r),nonPersistedImageIds:t.nonPersistedImageIds.filter(e=>e!==r),persistedAttachments:t.persistedAttachments.filter(e=>e.id!==r)},a={...e.draftsByThreadKey};return xJ(n)?delete a[i]:a[i]=n,{draftsByThreadKey:a}})},insertTerminalContext:(e,r,i,a)=>{let o=qJ(t(),e),s=JJ(t(),e);if(!o||!s)return!1;let c=!1;return n(e=>{let t=e.draftsByThreadKey[o]??BJ(),n=pJ(s,i);if(!n)return e;let l=fJ(n);if(t.terminalContexts.some(e=>e.id===n.id)||t.terminalContexts.some(e=>fJ(e)===l))return e;c=!0;let u=Math.max(0,Math.min(t.terminalContexts.length,a)),d={...t,prompt:r,terminalContexts:[...t.terminalContexts.slice(0,u),n,...t.terminalContexts.slice(u)]};return{draftsByThreadKey:{...e.draftsByThreadKey,[o]:d}}}),c},addTerminalContext:(e,n)=>{let r=qJ(t(),e),i=JJ(t(),e);!r||!i||t().addTerminalContexts(typeof e==`string`?ct.make(r):e,[n])},addTerminalContexts:(e,r)=>{let i=qJ(t(),e),a=JJ(t(),e);!i||!a||r.length===0||n(e=>{let t=e.draftsByThreadKey[i]??BJ(),n=mJ(a,[...t.terminalContexts,...r]).slice(t.terminalContexts.length);return n.length===0?e:{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,prompt:rq(t.prompt,t.terminalContexts.length+n.length),terminalContexts:[...t.terminalContexts,...n]}}}})},removeTerminalContext:(e,r)=>{let i=qJ(t(),e)??``;i.length!==0&&r.length!==0&&n(e=>{let t=e.draftsByThreadKey[i];if(!t)return e;let n={...t,terminalContexts:t.terminalContexts.filter(e=>e.id!==r)},a={...e.draftsByThreadKey};return xJ(n)?delete a[i]:a[i]=n,{draftsByThreadKey:a}})},clearTerminalContexts:e=>{let r=qJ(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftsByThreadKey[r];if(!t||t.terminalContexts.length===0)return e;let n={...t,terminalContexts:[]},i={...e.draftsByThreadKey};return xJ(n)?delete i[r]:i[r]=n,{draftsByThreadKey:i}})},clearPersistedAttachments:e=>{let r=qJ(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftsByThreadKey[r];if(!t)return e;let n={...t,persistedAttachments:[],nonPersistedImageIds:[]},i={...e.draftsByThreadKey};return xJ(n)?delete i[r]:i[r]=n,{draftsByThreadKey:i}})},syncPersistedAttachments:(e,r)=>{let i=qJ(t(),e);if(!i)return;let a=new Set(r.map(e=>e.id));n(e=>{let t=e.draftsByThreadKey[i];if(!t)return e;let n={...t,persistedAttachments:r,nonPersistedImageIds:t.nonPersistedImageIds.filter(e=>!a.has(e))},o={...e.draftsByThreadKey};return xJ(n)?delete o[i]:o[i]=n,{draftsByThreadKey:o}}),Promise.resolve().then(()=>{UXe(i,r,n)})},moveComposerDraft:(e,r)=>{let i=$qe(t().draftsByThreadKey,e,r);return i!==null&&(n({draftsByThreadKey:i}),MJ.flush(),!0)},clearComposerContent:e=>{let r=qJ(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftsByThreadKey[r];if(!t)return e;let n=bJ(t),i={...e.draftsByThreadKey};return xJ(n)?delete i[r]:i[r]=n,{draftsByThreadKey:i}})},clearComposerContentIfUnchanged:(e,r)=>{let i=qJ(t(),e)??``;if(i.length===0)return!1;let a=!1;return n(e=>{let t=e.draftsByThreadKey[i];if(!t||!yXe(t,r))return e;let n=bJ(t),o={...e.draftsByThreadKey};return xJ(n)?delete o[i]:o[i]=n,a=!0,{draftsByThreadKey:o}}),a},restoreComposerStash:(e,r)=>{let i=qJ(t(),e)??``,a=JJ(t(),e);if(i.length===0||!a)return!1;let o,s;if(n(e=>{let t=aXe(e.draftsByThreadKey,i,a,r);return t?(o=t.previousDraft,s=t.restoredDraft,{draftsByThreadKey:t.drafts}):e}),!s)return!1;let c=!1;try{MJ.flush();let e=HXe(i),n=t().draftsByThreadKey[i];e!==null&&n===s&&dXe(e,n)&&(c=!0)}catch{}if(c&&(r.onPersisted?.()??!0))return!0;n(e=>{if(e.draftsByThreadKey[i]!==s)return e;let t={...e.draftsByThreadKey};return o?t[i]=o:delete t[i],{draftsByThreadKey:t}});try{MJ.flush()}catch{}return!1}}},{name:kJ,version:AJ,storage:XG(()=>MJ),migrate:RXe,partialize:zXe,merge:(e,t)=>{let n=BXe(e),r=Object.fromEntries(Object.entries(n.draftsByThreadKey).map(([e,t])=>[e,KXe(t)])),i=Object.fromEntries(Object.entries(n.draftThreadsByThreadKey).map(([e,t])=>[e,qXe(t)]));return{...t,draftsByThreadKey:r,draftThreadsByThreadKey:i,logicalProjectDraftThreadKeyByLogicalProjectKey:n.logicalProjectDraftThreadKeyByLogicalProjectKey,stickyModelSelectionByProvider:n.stickyModelSelectionByProvider??{},stickyActiveProvider:n.stickyActiveProvider??null}}}));function JXe(e){let t=(0,vi.c)(2),n;return t[0]===e?n=t[1]:(n=t=>YJ(t,e)??MXe,t[0]=e,t[1]=n),iY(n)}function YXe(e){let t=(0,vi.c)(2),n;return t[0]===e?n=t[1]:(n=t=>{let n=YJ(t,e);return n?{activeProvider:n.activeProvider,modelSelectionByProvider:n.modelSelectionByProvider}:jXe},t[0]=e,t[1]=n),iY(cq(n))}function aY(e){let t=iY.getState();for(let[n,r]of Object.entries(t.draftThreadsByThreadKey))r.environmentId===e.environmentId&&r.threadId===e.threadId&&t.markDraftThreadPromoting(ct.make(n),e)}function XXe(e){for(let t of e)aY(t)}function ZXe(e){let t=iY.getState();for(let[n,r]of Object.entries(t.draftThreadsByThreadKey))r.promotedTo&&r.promotedTo.environmentId===e.environmentId&&r.promotedTo.threadId===e.threadId&&t.finalizePromotedDraftThread(ct.make(n))}var oY=null;function QXe(e){oY=e}function sY(){if(oY===null)throw Error(`Environment event handling was used before the service was configured.`);return oY}function $Xe(e){let t=new Set,n=new Map(e.snapshotThreads.map(e=>[e.key,e]));for(let n of e.snapshotThreads)n.deletedAt===null&&n.archivedAt===null&&t.add(n.key);for(let r of e.draftThreadKeys){let e=n.get(r);e&&(e.deletedAt!==null||e.archivedAt!==null)||t.add(r)}return t}function eZe(e){let t=new Map,n=!1;for(let r of e)switch(r.type){case`thread.turn-diff-completed`:case`thread.reverted`:n=!0;break;case`thread.created`:t.set(r.payload.threadId,{clearPromotedDraft:!0,clearDeletedThread:!1,removeTerminalState:!1});break;case`thread.deleted`:t.set(r.payload.threadId,{clearPromotedDraft:!1,clearDeletedThread:!0,removeTerminalState:!0});break;case`thread.archived`:t.set(r.payload.threadId,{clearPromotedDraft:!1,clearDeletedThread:!1,removeTerminalState:!0});break;case`thread.unarchived`:t.set(r.payload.threadId,{clearPromotedDraft:!1,clearDeletedThread:!1,removeTerminalState:!1})}let r=[],i=[],a=[];for(let[e,n]of t)n.clearPromotedDraft&&r.push(e),n.clearDeletedThread&&i.push(e),n.removeTerminalState&&a.push(e);return{promoteDraftThreadIds:r,clearDeletedThreadIds:i,removeTerminalStateThreadIds:a,needsProviderInvalidation:n}}var tZe={threadRef:null,open:!1,minimized:!1,dock:`floating`,position:null};function nZe(e){return{x:Math.max(12,Math.min(e.position.x,e.viewportWidth-e.width-12)),y:Math.max(12,Math.min(e.position.y,e.viewportHeight-e.height-12))}}function rZe(e,t){return{...e,threadRef:t,open:!0,minimized:!1}}function iZe(e){let t=e.companion.threadRef;return!e.companion.open||t===null?!1:e.routeThreadRef?.environmentId!==t.environmentId||e.routeThreadRef.threadId!==t.threadId}var cY=`forge:ui-state:v1`,lY=[`t3code:ui-state:v1`,`t3code:renderer-state:v8`,`t3code:renderer-state:v7`,`t3code:renderer-state:v6`,`t3code:renderer-state:v5`,`t3code:renderer-state:v4`,`t3code:renderer-state:v3`,`codething:renderer-state:v4`,`codething:renderer-state:v3`,`codething:renderer-state:v2`,`codething:renderer-state:v1`],uY=`months`,aZe=new Set([`weeks`,`months`,`quarters`]);function oZe(e){return typeof e==`string`&&aZe.has(e)?e:uY}function dY(e){return Number.isFinite(e)?Math.round(Math.min(560,Math.max(200,e))):360}var fY={projectExpandedById:{},projectOrder:[],projectGroupOrder:[],lastActiveProject:null,threadLastVisitedAtById:{},threadChangedFilesExpandedById:{},pinnedThreadById:{},threadLinkedPrById:{},workspaceDensityById:{},timelineWorkColumnWidth:360,timelineScale:uY,projectLeadCompanion:tZe},pY=new Set,mY=[],hY=new Map,gY=!1;function sZe(){if(typeof window>`u`)return fY;try{let e=window.localStorage.getItem(cY);if(!e){for(let e of lY){let t=window.localStorage.getItem(e);if(t)return _Y(JSON.parse(t)),fY}return fY}let t=JSON.parse(e);return _Y(t),{...fY,projectGroupOrder:cZe(t.projectGroupOrderKeys),threadChangedFilesExpandedById:dZe(t.threadChangedFilesExpandedById),pinnedThreadById:lZe(t.pinnedThreadKeys),threadLinkedPrById:uZe(t.threadLinkedPrById),timelineWorkColumnWidth:dY(t.timelineWorkColumnWidth??360),timelineScale:oZe(t.timelineScale)}}catch{return fY}}function cZe(e){return Array.isArray(e)?[...new Set(e.filter(e=>typeof e==`string`&&e.length>0))]:[]}function lZe(e){if(!Array.isArray(e))return{};let t={};for(let n of e)typeof n==`string`&&n.length>0&&(t[n]=!0);return t}function uZe(e){if(!e||typeof e!=`object`)return{};let t={};for(let[n,r]of Object.entries(e))typeof n==`string`&&n.length!==0&&typeof r==`string`&&r.trim().length!==0&&(t[n]=r);return t}function dZe(e){if(!e||typeof e!=`object`)return{};let t={};for(let[n,r]of Object.entries(e)){if(!n||!r||typeof r!=`object`)continue;let e={};for(let[t,n]of Object.entries(r))t&&typeof n==`boolean`&&n===!1&&(e[t]=!1);Object.keys(e).length>0&&(t[n]=e)}return t}function _Y(e){pY.clear(),mY.length=0;for(let t of e.expandedProjectCwds??[])typeof t==`string`&&t.length>0&&pY.add(t);for(let t of e.projectOrderCwds??[])typeof t==`string`&&t.length>0&&!mY.includes(t)&&mY.push(t)}function fZe(e){if(!(typeof window>`u`))try{let t=Object.entries(e.projectExpandedById).filter(([,e])=>e).flatMap(([e])=>{let t=hY.get(e);return t?[t]:[]}),n=e.projectOrder.flatMap(e=>{let t=hY.get(e);return t?[t]:[]}),r=Object.fromEntries(Object.entries(e.threadChangedFilesExpandedById).flatMap(([e,t])=>{let n=Object.fromEntries(Object.entries(t).filter(([,e])=>e===!1));return Object.keys(n).length>0?[[e,n]]:[]}));if(window.localStorage.setItem(cY,JSON.stringify({expandedProjectCwds:t,projectOrderCwds:n,projectGroupOrderKeys:e.projectGroupOrder,threadChangedFilesExpandedById:r,pinnedThreadKeys:Object.keys(e.pinnedThreadById).filter(t=>e.pinnedThreadById[t]),threadLinkedPrById:e.threadLinkedPrById,timelineWorkColumnWidth:e.timelineWorkColumnWidth,timelineScale:e.timelineScale})),!gY){gY=!0;for(let e of lY)window.localStorage.removeItem(e)}}catch{}}var vY=new pt(fZe,{wait:500});function yY(e,t){let n=Object.entries(e),r=Object.entries(t);if(n.length!==r.length)return!1;for(let[e,r]of n)if(t[e]!==r)return!1;return!0}function bY(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}function pZe(e,t){let n=Object.entries(e),r=Object.entries(t);if(n.length!==r.length)return!1;for(let[e,r]of n)if(!(e in t)||!yY(r,t[e]))return!1;return!0}function mZe(e,t){let n=new Map(hY),r=new Map([...n.entries()].map(([e,t])=>[t,e]));hY.clear();for(let e of t)hY.set(e.key,e.cwd);let i=n.size!==hY.size||t.some(e=>n.get(e.key)!==e.cwd),a={},o=e.projectExpandedById,s=new Map(mY.map((e,t)=>[e,t])),c=t.map((e,t)=>{let n=r.get(e.cwd),i=o[e.key]??(n?o[n]:void 0)??(pY.size>0?pY.has(e.cwd):!0);return a[e.key]=i,{id:e.key,cwd:e.cwd,incomingIndex:t}}),l=e.projectOrder.length>0?(()=>{let t=new Map(c.map(e=>[e.cwd,e.id])),r=new Set,i=[];for(let o of e.projectOrder){let e=(o in a?o:void 0)??(()=>{let e=n.get(o);return e?t.get(e):void 0})();!e||r.has(e)||(r.add(e),i.push(e))}for(let e of c)r.has(e.id)||i.push(e.id);return i})():c.map(e=>({id:e.id,incomingIndex:e.incomingIndex,orderIndex:s.get(e.cwd)??mY.length+e.incomingIndex})).toSorted((e,t)=>{let n=e.orderIndex-t.orderIndex;return n===0?e.incomingIndex-t.incomingIndex:n}).map(e=>e.id);return yY(e.projectExpandedById,a)&&bY(e.projectOrder,l)&&!i?e:{...e,projectExpandedById:a,projectOrder:l}}function hZe(e,t){let n=new Set(t.map(e=>e.key)),r=Object.fromEntries(Object.entries(e.threadLastVisitedAtById).filter(([e])=>n.has(e)));for(let e of t)r[e.key]===void 0&&e.seedVisitedAt!==void 0&&e.seedVisitedAt.length>0&&(r[e.key]=e.seedVisitedAt);let i=Object.fromEntries(Object.entries(e.threadChangedFilesExpandedById).filter(([e])=>n.has(e))),a=Object.fromEntries(Object.entries(e.pinnedThreadById).filter(([e,t])=>n.has(e)&&t)),o=Object.fromEntries(Object.entries(e.threadLinkedPrById).filter(([e])=>n.has(e)));return yY(e.threadLastVisitedAtById,r)&&pZe(e.threadChangedFilesExpandedById,i)&&yY(e.pinnedThreadById,a)&&yY(e.threadLinkedPrById,o)?e:{...e,threadLastVisitedAtById:r,threadChangedFilesExpandedById:i,pinnedThreadById:a,threadLinkedPrById:o}}function gZe(e,t,n){let r=n??new Date().toISOString(),i=Date.parse(r),a=e.threadLastVisitedAtById[t],o=a?Date.parse(a):NaN;return Number.isFinite(o)&&Number.isFinite(i)&&o>=i?e:{...e,threadLastVisitedAtById:{...e.threadLastVisitedAtById,[t]:r}}}function _Ze(e,t,n){if(!n)return e;let r=Date.parse(n);if(Number.isNaN(r))return e;let i=new Date(r-1).toISOString();return e.threadLastVisitedAtById[t]===i?e:{...e,threadLastVisitedAtById:{...e.threadLastVisitedAtById,[t]:i}}}function vZe(e,t){let n=t in e.threadLastVisitedAtById,r=t in e.threadChangedFilesExpandedById,i=t in e.pinnedThreadById,a=t in e.threadLinkedPrById;if(!n&&!r&&!i&&!a)return e;let o={...e.threadLastVisitedAtById},s={...e.threadChangedFilesExpandedById},c={...e.pinnedThreadById},l={...e.threadLinkedPrById};return delete o[t],delete s[t],delete c[t],delete l[t],{...e,threadLastVisitedAtById:o,threadChangedFilesExpandedById:s,pinnedThreadById:c,threadLinkedPrById:l}}function xY(e,t,n){if(e.pinnedThreadById[t]===!0===n)return e;if(n)return{...e,pinnedThreadById:{...e.pinnedThreadById,[t]:!0}};let r={...e.pinnedThreadById};return delete r[t],{...e,pinnedThreadById:r}}function yZe(e,t){return xY(e,t,e.pinnedThreadById[t]!==!0)}function bZe(e,t,n){return e.threadLinkedPrById[t]===n?e:{...e,threadLinkedPrById:{...e.threadLinkedPrById,[t]:n}}}function xZe(e,t){if(!(t in e.threadLinkedPrById))return e;let n={...e.threadLinkedPrById};return delete n[t],{...e,threadLinkedPrById:n}}function SZe(e,t,n,r){let i=e.threadChangedFilesExpandedById[t]??{};return i[n]===r?e:{...e,threadChangedFilesExpandedById:{...e.threadChangedFilesExpandedById,[t]:{...i,[n]:r}}}}function CZe(e,t){return e.lastActiveProject?.environmentId===t?.environmentId&&e.lastActiveProject?.projectId===t?.projectId?e:{...e,lastActiveProject:t}}function wZe(e,t,n){return e.workspaceDensityById[t]===n?e:{...e,workspaceDensityById:{...e.workspaceDensityById,[t]:n}}}function TZe(e,t){let n=e.projectExpandedById[t]??!0;return{...e,projectExpandedById:{...e.projectExpandedById,[t]:!n}}}function EZe(e,t,n){return(e.projectExpandedById[t]??!0)===n?e:{...e,projectExpandedById:{...e.projectExpandedById,[t]:n}}}function DZe(e,t,n){if(t.length===0)return e;let r=new Set(t),i=new Set(n);if(t.every(e=>i.has(e)))return e;let a=e.projectOrder.findIndex(e=>i.has(e));if(a<0)return e;let o=[...e.projectOrder],s=[],c=0;for(let e=o.length-1;e>=0;e--)r.has(o[e])&&(s.unshift(o.splice(e,1)[0]),e<a&&c++);if(s.length===0)return e;let l=a-Math.max(0,c-1);return o.splice(l,0,...s),{...e,projectOrder:o}}function OZe(e,t){let n=[...new Set(t)],r=new Set(n),i=e.projectGroupOrder.filter(e=>r.has(e)),a=new Set(i);for(let e of n)a.has(e)||i.push(e);return bY(e.projectGroupOrder,i)?e:{...e,projectGroupOrder:i}}function kZe(e,t,n){if(t===n)return e;let r=e.projectGroupOrder.indexOf(t),i=e.projectGroupOrder.indexOf(n);if(r<0||i<0)return e;let a=[...e.projectGroupOrder],[o]=a.splice(r,1);return o===void 0?e:(a.splice(i,0,o),{...e,projectGroupOrder:a})}var SY=dt(e=>({...sZe(),syncProjects:t=>e(e=>mZe(e,t)),syncProjectGroups:t=>e(e=>OZe(e,t)),syncThreads:t=>e(e=>hZe(e,t)),markThreadVisited:(t,n)=>e(e=>gZe(e,t,n)),markThreadUnread:(t,n)=>e(e=>_Ze(e,t,n)),clearThreadUi:t=>e(e=>vZe(e,t)),setThreadPinned:(t,n)=>e(e=>xY(e,t,n)),toggleThreadPinned:t=>e(e=>yZe(e,t)),setThreadLinkedPr:(t,n)=>e(e=>bZe(e,t,n)),clearThreadLinkedPr:t=>e(e=>xZe(e,t)),setThreadChangedFilesExpanded:(t,n,r)=>e(e=>SZe(e,t,n,r)),setWorkspaceDensity:(t,n)=>e(e=>wZe(e,t,n)),toggleProject:t=>e(e=>TZe(e,t)),setProjectExpanded:(t,n)=>e(e=>EZe(e,t,n)),reorderProjects:(t,n)=>e(e=>DZe(e,t,n)),reorderProjectGroups:(t,n)=>e(e=>kZe(e,t,n)),setLastActiveProject:t=>e(e=>CZe(e,t)),setTimelineWorkColumnWidth:t=>e(e=>({...e,timelineWorkColumnWidth:dY(t)})),setTimelineScale:t=>e(e=>({...e,timelineScale:t})),openProjectLeadCompanion:t=>e(e=>({...e,projectLeadCompanion:rZe(e.projectLeadCompanion,t)})),closeProjectLeadCompanion:()=>e(e=>({...e,projectLeadCompanion:{...e.projectLeadCompanion,open:!1}})),setProjectLeadCompanionMinimized:t=>e(e=>({...e,projectLeadCompanion:{...e.projectLeadCompanion,minimized:t}})),setProjectLeadCompanionDock:t=>e(e=>({...e,projectLeadCompanion:{...e.projectLeadCompanion,dock:t}})),setProjectLeadCompanionPosition:t=>e(e=>({...e,projectLeadCompanion:{...e.projectLeadCompanion,position:t}}))}));function AZe(e){SY.getState().openProjectLeadCompanion(e)}SY.subscribe(e=>vY.maybeExecute(e)),typeof window<`u`&&typeof window.addEventListener==`function`&&window.addEventListener(`beforeunload`,()=>{vY.flush()});var CY=new Map;function jZe(e){return!e.isWorking||e.msSinceLastEvent<e.stallThresholdMs?`none`:e.recoveryAttempts<e.maxResubscribeAttempts?`resubscribe`:e.recoveryAttempts<e.maxTotalAttempts?`reconnect`:`none`}var MZe=3e4,NZe=1e4,PZe=[/(?:^|\s)\/(?:Users|var|private|tmp|project|repo|home)\/[^\s'"<>)]*/i,/(?:^|\s)[A-Za-z]:\\[^\s'"<>)]*/];function wY(e){let t=e?.trim();return t&&t.length>0?t:null}function FZe(e){return wY(e)??`Project`}function IZe(e,t=`safe`){let n=wY(e);return n?t===`full`?n:n.replaceAll(`\\`,`/`).split(`/`).filter(Boolean).at(-1)??`Local checkout`:`Local checkout`}function TY(e,t=`Something went wrong. Try again.`){let n=SV(e instanceof Error?e.message:typeof e==`string`?e:String(e),{fallback:t});return!n||PZe.some(e=>e.test(n))?t:n}var EY=`Thread not found or you no longer have access.`;function LZe(e){if(e==null)return EY;let t=TY(Uee(e)?we(e):e,EY);return/\bnot found\b/i.test(t)?EY:t}function RZe(e,t,n){YG.getState().setThreadSubscriptionError(e,t,LZe(n))}var DY=null;function zZe(e){DY=e}function OY(){if(DY===null)throw Error(`Thread detail subscriptions were used before the service was configured.`);return DY}var BZe=9e5,kY=()=>void 0;function AY(e,t){return li(ai(e,t))}function jY(e){return e.evictionTimeoutId!==null&&(clearTimeout(e.evictionTimeoutId),e.evictionTimeoutId=null),e}function VZe(e){let t=ai(e.environmentId,e.threadId),n=YG.getState(),r=JG(n,t);if(r&&HZe(r))return!0;let i=qG(n,t);return i?MY(i.session?.orchestrationStatus)||i.latestTurn?.state===`running`||i.pendingSourceProposedPlan!==void 0:!1}function MY(e){return!!(e&&e!==`idle`&&e!==`stopped`)}function HZe(e){return e.hasPendingApprovals||e.hasPendingUserInput||e.hasActionableProposedPlan||MY(e.session?.orchestrationStatus)||e.latestTurn?.state===`running`}function NY(e){return e.refCount===0&&!VZe(e)}function PY(e){let t=OY().readConnection(e.environmentId);return e.unsubscribe===kY&&!t?!1:(e.unsubscribeConnectionListener!==null&&(e.unsubscribeConnectionListener(),e.unsubscribeConnectionListener=null),e.unsubscribe!==kY||!t||(e.unsubscribe=t.client.orchestration.subscribeThread({threadId:e.threadId},t=>{e.lastEventAt=Date.now(),e.recoveryAttempts=0,t.kind===`event`?OY().applyEvent(t.event,e.environmentId):t.kind===`snapshot`&&(YG.getState().syncServerThreadDetail(t.snapshot.thread,e.environmentId),YG.getState().clearThreadSubscriptionError(e.environmentId,e.threadId))},{onError:t=>RZe(e.environmentId,e.threadId,t)})),!0)}function FY(e){e.unsubscribeConnectionListener===null&&(e.unsubscribeConnectionListener=OY().subscribeConnections(()=>{PY(e)&&(e.lastAccessedAt=Date.now())}),PY(e))}var IY=null;function UZe(e){let t=ai(e.environmentId,e.threadId),n=YG.getState(),r=JG(n,t);if(r?.latestTurn?.state===`running`||r?.session?.orchestrationStatus===`running`)return!0;let i=qG(n,t);return i?.latestTurn?.state===`running`||i?.session?.orchestrationStatus===`running`}function WZe(e){e.unsubscribe!==kY&&(e.unsubscribe(),e.unsubscribe=kY),PY(e)||FY(e)}function GZe(e,t,n){if(e.recoveryAttempts+=1,e.lastEventAt=Date.now(),console.warn(`[forge] thread-detail liveness watchdog recovering`,{action:t,threadId:String(e.threadId),environmentId:String(e.environmentId),msSinceLastEvent:Math.round(n),recoveryAttempts:e.recoveryAttempts}),t===`resubscribe`){WZe(e);return}OY().readConnection(e.environmentId)?.reconnect().catch(t=>{PV(t,{route:`thread-detail-liveness-watchdog-reconnect-failed`,threadId:String(e.threadId),environmentId:String(e.environmentId),msSinceLastEvent:String(Math.round(n)),recoveryAttempts:String(e.recoveryAttempts)})})}function KZe(){let e=Date.now();for(let t of CY.values()){let n=jZe({isWorking:UZe(t),msSinceLastEvent:e-t.lastEventAt,stallThresholdMs:MZe,recoveryAttempts:t.recoveryAttempts,maxResubscribeAttempts:2,maxTotalAttempts:4});n!==`none`&&GZe(t,n,e-t.lastEventAt)}}function qZe(){IY===null&&(IY=setInterval(KZe,NZe))}function JZe(){CY.size>0||IY!==null&&(clearInterval(IY),IY=null)}function LY(e){let t=CY.get(e);return t?(jY(t),t.unsubscribeConnectionListener?.(),t.unsubscribeConnectionListener=null,CY.delete(e),t.unsubscribe(),t.unsubscribe=kY,JZe(),!0):!1}function YZe(e){RY(e,!0),RU.getState().clear(e)}function RY(e,t=!1){for(let[n,r]of CY)if(r.environmentId===e){if(r.refCount===0||t){LY(n);continue}r.unsubscribe(),r.unsubscribe=kY,FY(r)}}function XZe(e){for(let t=e.messages.length-1;t>=0;--t){let n=e.messages[t];if(n?.role===`user`)return n.createdAt}return null}function ZZe(e){return e.session?{threadId:e.id,updatedAt:e.session.updatedAt,providerName:e.session.provider,runtimeMode:e.runtimeMode,activeTurnId:e.session.activeTurnId??null,lastError:e.session.lastError??null,status:e.session.orchestrationStatus}:null}function QZe(e,t){return{updatedAt:e.updatedAt??e.createdAt,latestUserMessageAt:t?.latestUserMessageAt??XZe(e),titleRegeneration:e.titleRegeneration??null}}function $Ze(e){return{hasPendingApprovals:e?.hasPendingApprovals??!1,hasPendingUserInput:e?.hasPendingUserInput??!1,hasActionableProposedPlan:e?.hasActionableProposedPlan??!1}}function eQe(e){let t=ai(e.environmentId,e.threadId),n=YG.getState(),r=qG(n,t);if(!r)return null;let i=JG(n,t);return{id:r.id,projectId:r.projectId,title:r.title,modelSelection:r.modelSelection,runtimeMode:r.runtimeMode,interactionMode:r.interactionMode,branch:r.branch,worktreePath:r.worktreePath,latestTurn:r.latestTurn,createdAt:r.createdAt,...QZe(r,i),...$Ze(i),archivedAt:r.archivedAt,session:ZZe(r),anchorKind:r.anchorKind,anchorCmmdId:r.anchorCmmdId,kind:r.kind,parentThreadId:r.parentThreadId,status:r.status,workerRole:r.workerRole,goal:r.goal}}function tQe(e,t){if(CY.size===0)return e;let n=new Set(e.threads.map(e=>e.id)),r=[];for(let e of CY.values()){if(e.environmentId!==t||e.refCount<=0||n.has(e.threadId))continue;let i=eQe(e);i&&(n.add(i.id),r.push(i))}return r.length===0?e:{...e,threads:[...e.threads,...r]}}function nQe(e,t){let n=new Set(t);for(let[t,r]of CY)r.environmentId===e&&!n.has(r.threadId)&&NY(r)&&LY(t)}function rQe(e){jY(e),NY(e)&&(e.evictionTimeoutId=setTimeout(()=>{let t=CY.get(AY(e.environmentId,e.threadId));t&&(t.evictionTimeoutId=null,NY(t)&&LY(AY(e.environmentId,e.threadId)))},BZe))}function zY(){if(CY.size<=32)return;let e=[...CY.entries()].filter(([,e])=>NY(e)).toSorted(([,e],[,t])=>e.lastAccessedAt-t.lastAccessedAt);for(let[t]of e){if(CY.size<=32)return;LY(t)}}function BY(e){jY(e),NY(e)&&rQe(e)}function iQe(e,t){let n=CY.get(AY(e,t));n&&BY(n)}function VY(e){for(let t of CY.values())t.environmentId===e&&BY(t);zY()}function HY(e){let t=!1;return()=>{t||(t=!0,e.refCount=Math.max(0,e.refCount-1),e.lastAccessedAt=Date.now(),e.refCount===0&&(BY(e),zY()))}}function aQe(e,t){let n=AY(e,t),r=CY.get(n);if(r)return jY(r),r.refCount+=1,r.lastAccessedAt=Date.now(),PY(r)||FY(r),HY(r);let i={environmentId:e,threadId:t,unsubscribe:kY,unsubscribeConnectionListener:null,refCount:1,lastAccessedAt:Date.now(),evictionTimeoutId:null,lastEventAt:Date.now(),recoveryAttempts:0};return CY.set(n,i),PY(i)||FY(i),qZe(),zY(),HY(i)}function oQe(e,t){return e.type!==`thread.message-sent`||t.type!==`thread.message-sent`||e.payload.threadId!==t.payload.threadId||e.payload.messageId!==t.payload.messageId?null:{...t,payload:{...t.payload,attachments:t.payload.attachments??e.payload.attachments,createdAt:e.payload.createdAt,text:!t.payload.streaming&&t.payload.text.length>0?t.payload.text:e.payload.text+t.payload.text}}}function sQe(e){if(e.length<2)return[...e];let t=[];for(let n of e){let e=t.at(-1),r=e?oQe(e,n):null;if(r){t[t.length-1]=r;continue}t.push(n)}return t}function UY(){let e=HG(YG.getState());SY.getState().syncProjects(e.map(e=>({key:ci(ii(e.environmentId,e.id)),cwd:e.cwd})))}function WY(){let e=UG(YG.getState());SY.getState().syncThreads(e.map(e=>({key:li(ai(e.environmentId,e.id)),seedVisitedAt:e.updatedAt??e.createdAt}))),XXe(e.map(e=>ai(e.environmentId,e.id)))}function cQe(){UY(),WY();let e=$Xe({snapshotThreads:UG(YG.getState()).map(e=>({key:li(ai(e.environmentId,e.id)),deletedAt:null,archivedAt:e.archivedAt})),draftThreadKeys:iY.getState().listDraftThreadKeys()});qK.getState().removeOrphanedTerminalStates(e)}function GY(e){return e.serverThreadArchivedAt===void 0?e.hasDraftThread:e.serverThreadArchivedAt===null}function lQe(e,t){if(e.length===0)return;let n=eZe(e),r=sQe(e),i=e.some(e=>e.type===`project.created`||e.type===`project.meta-updated`||e.type===`project.deleted`);if(n.needsProviderInvalidation&&sY().notifyProviderInvalidation(),YG.getState().applyOrchestrationEvents(r,t),i){let e=HG(YG.getState());SY.getState().syncProjects(e.map(e=>({key:ci(ii(e.environmentId,e.id)),cwd:e.cwd})))}if(e.some(e=>e.type===`thread.created`||e.type===`thread.deleted`)){let e=UG(YG.getState());SY.getState().syncThreads(e.map(e=>({key:li(ai(e.environmentId,e.id)),seedVisitedAt:e.updatedAt??e.createdAt})))}let a=iY.getState();for(let e of n.promoteDraftThreadIds)aY(ai(t,e));for(let e of n.clearDeletedThreadIds)a.clearDraftThread(ai(t,e)),SY.getState().clearThreadUi(li(ai(t,e)));for(let e of n.removeTerminalStateThreadIds){let n=ai(t,e);qK.getState().removeTerminalState(n),VW.getState().clearBrowserState(n)}VY(t)}function uQe(e,t){lQe([e],t)}function dQe(e,t){let n=e.kind===`thread-upserted`?e.thread.id:e.kind===`thread-removed`?e.threadId:null,r=n?ai(t,n):null,i=r?qG(YG.getState(),r):void 0;switch(YG.getState().applyShellEvent(e,t),e.kind){case`project-upserted`:case`project-removed`:UY();return;case`thread-upserted`:WY(),!i&&r&&aY(r),i?.archivedAt===null&&e.thread.archivedAt!==null&&r&&(qK.getState().removeTerminalState(r),VW.getState().clearBrowserState(r)),iQe(t,e.thread.id),zY();return;case`thread-removed`:r&&(LY(li(r)),iY.getState().clearDraftThread(r),SY.getState().clearThreadUi(li(r)),qK.getState().removeTerminalState(r),VW.getState().clearBrowserState(r)),WY();return}}function fQe(e,t){return e.invalidateQueries({queryKey:HW.all(t)})}function KY(e){return{onWelcome:(t,n)=>{e?.(t);let r=sY().readQueryClient();r&&fQe(r,n)},applyShellEvent:dQe,syncShellSnapshot:(e,t)=>{let n=tQe(e,t);YG.getState().syncServerShellSnapshot(n,t),nQe(t,n.threads.map(e=>e.id)),VY(t),cQe()},applyTerminalEvent:(e,t)=>{let n=ai(t,At.make(e.threadId)),r=qG(YG.getState(),n),i=iY.getState().getDraftThreadByRef(n)!==null;GY({serverThreadArchivedAt:r?.archivedAt,hasDraftThread:i})&&qK.getState().applyTerminalEvent(n,e)},applyBrowserEvent:(e,t)=>{let n=ai(t,At.make(e.threadId)),r=qG(YG.getState(),n),i=iY.getState().getDraftThreadByRef(n)!==null;GY({serverThreadArchivedAt:r?.archivedAt,hasDraftThread:i})&&VW.getState().applyBrowserEvent(n,e)},onShellSubscriptionError:(e,t)=>{sY().setRuntimeError(t,e)}}}function qY(){return new Date().toISOString()}function JY(e){RU.getState().patch(e,{connectionState:`connecting`,lastError:null,lastErrorAt:null})}function YY(e){let t=qY();RU.getState().patch(e,{connectionState:`connected`,authState:`authenticated`,connectedAt:t,disconnectedAt:null,lastError:null,lastErrorAt:null}),SU.getState().markConnected(e,t)}function XY(e,t){RU.getState().patch(e,{descriptor:t.environment,serverConfig:t})}function ZY(e,t){RU.getState().patch(e,{connectionState:`disconnected`,disconnectedAt:qY(),...t&&t.trim().length>0?{lastError:t,lastErrorAt:qY()}:{}})}function QY(e,t){RU.getState().patch(e,{connectionState:`error`,...UUe(t)})}function pQe(){return new Date().toISOString()}function mQe(e){let t=aU();if(!t?.environmentId)throw Error(`Unable to resolve the primary environment.`);let n=e.readConnection(t.environmentId);if(n)return n;let r=NW(),i=t.source===`paired-bearer`||!0;return e.registerConnection(QU({kind:`primary`,knownEnvironment:t,client:BGe(t),resolveEnvironmentId:()=>aU()?.environmentId??t.environmentId,...i?{readiness:r?{bearerToken:r.bearerToken}:{}}:{},...KY()}))}async function hQe(e){let t=zGe();if(!t)throw Error(`Desktop Local runtime is not authenticated. Sign in with CMMD again before importing local projects.`);let n=await $Ue({httpBaseUrl:t.httpBaseUrl,bearerToken:t.bearerToken}),r=e.readConnection(n.environmentId);if(r)return r;let i=ni({id:n.environmentId,label:t.label,source:`desktop-managed`,target:{httpBaseUrl:t.httpBaseUrl,wsBaseUrl:t.wsBaseUrl}});return e.registerConnection(QU({kind:`desktop-local`,knownEnvironment:{...i,environmentId:n.environmentId,label:n.label},client:VGe({environmentId:n.environmentId,httpBaseUrl:t.httpBaseUrl,wsBaseUrl:t.wsBaseUrl,bearerToken:t.bearerToken,onConnecting:JY,onConnected:YY,onError:(e,t)=>{RU.getState().patch(e,{connectionState:`error`,lastError:t,lastErrorAt:pQe()})},onDisconnected:ZY}),...KY()}))}var $Y=new Map;function eX(e){for(let t of e){let e=$Y.get(t);e===void 0||e<=1?$Y.delete(t):$Y.set(t,e-1)}}async function gQe(e,t){let n=e.environmentId;$Y.set(n,($Y.get(n)??0)+1);try{return t.readConnection(n)||await t.ensureCmmdRuntimeSavedEnvironmentConnection(e),!0}catch{return eX([n]),!1}}async function _Qe(e){await wU();let t=(await Promise.all(NUe().map(async t=>await gQe(t,e)?t.environmentId:null))).flatMap(e=>e===null?[]:[e]),n=!1;return()=>{n||(n=!0,eX(t))}}function tX(){return new Date().toISOString()}async function nX(e,t){t.readConnection(e)?.kind===`saved`&&(RU.getState().clear(e),await t.removeConnection(e).catch(()=>!1))}async function vQe(e,t){let n=EU(e);if(!n)throw Error(`Saved environment not found.`);let r=t.readConnection(e);if(!r){try{await t.ensureCmmdRuntimeSavedEnvironmentConnection(n)}catch(t){throw QY(e,t),t}return}JY(e);try{await r.reconnect()}catch(t){throw QY(e,t),t}}async function yQe(e,t){t.invalidate(e),SU.getState().remove(e),await MU(e),await nX(e,t)}async function bQe(e,t){let{existing:n,replacedRecord:r}=BUe({environmentId:Nt.make(e.environment.environmentId),replacesEnvironmentId:e.environment.replacesEnvironmentId}),i=xQe(e.environment,n);PU(e.signal);let a=await VUe(n),o=t.readConnection(i.environmentId)!==null&&zUe({existing:n,replacedRecord:r,record:i});return o||(t.invalidate(i.environmentId),await t.removeConnection(i.environmentId).catch(()=>!1)),r&&(t.invalidate(r.environmentId),await t.removeConnection(r.environmentId).catch(()=>!1)),await t.ensureCmmdRuntimeSavedEnvironmentConnection(i,{bearerToken:e.bearerToken,registryExpectation:n&&!r?{kind:`existing-record`,record:n}:{kind:`initial-add`},...e.signal?{signal:e.signal}:{},...e.onBootstrapRetry?{onBootstrapRetry:e.onBootstrapRetry}:{}}),SQe({record:i,replacedRecord:r,persistenceRollback:a,keepsLiveConnection:o,signal:e.signal,dependencies:t})}function xQe(e,t){let n=Nt.make(e.environmentId),{kind:r,cmmdOrganizationId:i,cmmdProjectId:a,runtimeId:o,runtimeTicketExpiresAt:s}=e;return{environmentId:n,label:e.label,wsBaseUrl:Ft(e.wsBaseUrl),httpBaseUrl:e.httpBaseUrl,createdAt:t?.createdAt??tX(),lastConnectedAt:tX(),...r===void 0?{}:{kind:r},...i===void 0?{}:{cmmdOrganizationId:i},...a===void 0?{}:{cmmdProjectId:a},...o===void 0?{}:{runtimeId:o},...s===void 0?{}:{runtimeTicketExpiresAt:s}}}async function SQe(e){let{record:t,replacedRecord:n,persistenceRollback:r,keepsLiveConnection:i,signal:a,dependencies:o}=e,s=!1;try{return PU(a),await HUe({record:t,replacedRecord:n,rollback:r,...a?{signal:a}:{}}),s=!0,PU(a),SU.getState().upsert(zU(t)),n&&o.retireEnvironmentId(n.environmentId),t}catch(e){throw i||await o.removeConnection(t.environmentId).catch(()=>!1),s&&await HU({record:t,replacedRecord:n,rollback:r}),PU(a),e}}var rX=`forge.deviceRegistry.deviceKey`,iX=`forge.deviceRegistry.runtimeId`;function CQe(e){let t=sX(rX,e.desktopIdentity?.deviceKey,`device`),n=sX(iX,e.desktopIdentity?.runtimeId,`runtime`),r=oX(e.desktopIdentity?.hostKey),i=DQe(),a=e.desktopAvailable?`desktop`:OQe(),o=e.desktopAvailable?EQe(e.desktopIdentity)??kQe(i):AQe(i);return{device:{...r?{hostKey:r}:{},deviceKey:t,displayName:o,platform:i,deviceType:a,metadata:{clientKind:e.desktopAvailable?`forge-desktop`:`forge-web`,userAgent:window.navigator.userAgent,origin:window.location.origin,...e.desktopIdentity?{desktopIdentity:{hostName:e.desktopIdentity.hostName,computerName:e.desktopIdentity.computerName,platform:e.desktopIdentity.platform}}:{}}},...e.desktopAvailable&&e.includeExecutableRuntime!==!1?{runtime:{runtimeId:n,runtimeKind:`desktop-local`,displayName:`Local Forge Desktop`,endpointUrl:e.desktopEndpointUrl??null,status:`online`,metadata:{origin:window.location.origin}}}:{}}}async function aX(){let e=await window.desktopBridge?.getDeviceIdentity?.()??null;return CQe({desktopAvailable:!!window.desktopBridge,desktopIdentity:e,includeExecutableRuntime:!1})}function oX(e){let t=e?.trim()??``;return t.length>0?t:null}function sX(e,t,n){let r=oX(t);return r?(dK(e,r),r):TQe(e,n)}function wQe(){return uK(iX)}function cX(){return uK(rX)}function TQe(e,t){let n=uK(e);if(n)return n;let r=`${t}_${crypto.randomUUID()}`;return dK(e,r),r}function EQe(e){let t=e?.displayName?.trim()??``;return t.length>0?t:null}function DQe(){let e=window.navigator.userAgent.toLowerCase();return e.includes(`iphone`)||e.includes(`ipad`)?`ios`:e.includes(`android`)?`android`:e.includes(`mac`)?`macos`:e.includes(`win`)?`windows`:e.includes(`linux`)?`linux`:`unknown`}function OQe(){let e=window.navigator.userAgent.toLowerCase();return e.includes(`ipad`)||e.includes(`tablet`)?`tablet`:e.includes(`mobi`)||e.includes(`iphone`)||e.includes(`android`)?`mobile`:`browser`}function kQe(e){return e===`macos`?`Mac`:e===`windows`?`Windows PC`:e===`linux`?`Linux Desktop`:`Desktop`}function AQe(e){return e===`web`?`Browser`:e===`macos`?`Mac Browser`:e===`windows`?`Windows Browser`:e===`linux`?`Linux Browser`:`Browser`}var lX=`forge.relayControlJournal.v1`;function uX(){if(globalThis.localStorage===void 0)throw Error(`Forge relay control recovery requires durable browser storage.`);return globalThis.localStorage}var jQe={read:()=>uX().getItem(lX),write:e=>uX().setItem(lX,e)},dX=null,fX=dt()(e=>({byRuntimeId:{},replace:t=>e({byRuntimeId:t})}));function MQe(e){e.subscribe(e=>{let t=new Set(e.records.map(e=>e.runtimeId));fX.getState().replace(Object.fromEntries([...t].map(t=>[t,lne(e.records,t)])))})}function pX(){return dX===null&&(dX=une({storage:jQe}),MQe(dX)),dX}function NQe(){let e=(0,vi.c)(1),t=fX(FQe),n;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=[],e[0]=n):n=e[0],(0,M.useEffect)(PQe,n),t}function PQe(){pX()}function FQe(e){return e.byRuntimeId}function IQe(e){let t=pX();for(let n of t.records())n.runtimeId===e&&(n.status===`failed`||n.status===`outcome-unknown`)&&t.acknowledge(n.runtimeId,n.actorSessionId,n.transportRequestId)}var mX=class extends Error{code;constructor(e,t){super(t),this.name=`RelayControlRouteError`,this.code=e}};function hX(e){let t=e&&typeof e==`object`?e.code:null;throw t===`PROTOCOL_INCOMPATIBLE`?new mX(`FORGE_RUNTIME_UPDATE_REQUIRED`,`Update Forge on the target runtime before connecting remotely.`):t===`PROTOCOL_ROLLOUT_DENIED`?new mX(`FORGE_REMOTE_CONTROL_NOT_ENABLED`,`Remote control is not enabled for this CMMD account. Synced runtime inventory remains available.`):e}async function LQe(e){let t=e.getStoredDeviceKey(),n=t?await e.apiClient.getDeviceRegistry():await e.apiClient.registerDevice(await e.buildDeviceRegistration());return t&&!n.devices.some(e=>e.deviceKey===t)&&(n=await e.apiClient.registerDevice(await e.buildDeviceRegistration())),t??=e.getStoredDeviceKey(),{deviceKey:t,registry:n}}function RQe(e){if(!e.deviceKey)throw new mX(`FORGE_CONTROL_DEVICE_UNAUTHORIZED`,`This Forge control surface could not establish CMMD identity.`);let t=e.registry.devices.find(t=>t.deviceKey===e.deviceKey);if(t?.trustState===`revoked`||t?.authorization?.revoked===!0)throw new mX(`FORGE_CONTROL_DEVICE_REVOKED`,`This Forge control surface was revoked by CMMD.`);if(!t||t.trustState!==`trusted`)throw new mX(`FORGE_CONTROL_DEVICE_UNAUTHORIZED`,`This Forge control surface is not trusted by CMMD.`);return t}function zQe(e,t){let n=async()=>RQe(await LQe(t));return{acquireRoute:async()=>{let r=await n(),i=await cne();try{let n=await t.apiClient.issueRelayControlRoute(e,{controlDeviceId:r.id,controlSessionId:t.controlSessionId,scopes:[...$t],protocolMinVersion:4,protocolMaxVersion:4,...$te(i)});return nne({route:n,runtimeId:e,endpoint:i})}catch(e){if(e instanceof sne)throw new mX(`FORGE_RUNTIME_UPDATE_REQUIRED`,e.message);return hX(e)}},acquireActionGrant:async r=>{let i=await n();try{return(await t.apiClient.issueRelayActionGrant(e,{controlDeviceId:i.id,controlSessionId:t.controlSessionId,...r})).token}catch(e){return hX(e)}}}}var gX=new Map;async function BQe(e,t){let n=Nt.make(e.runtimeId),r=t.readConnection(n);if(r)return r;JY(n);let i=pX(),a=zQe(e.runtimeId,{apiClient:_H,getStoredDeviceKey:cX,buildDeviceRegistration:aX,controlSessionId:i.controlSessionId}),o;try{o=await a.acquireRoute()}catch(e){throw QY(n,e),e}let s=o,c=vne({acquireRoute:async()=>{let e=s;return s=null,e??a.acquireRoute()},acquireActionGrant:a.acquireActionGrant,journal:i,lifecycle:{onConnecting:()=>JY(n),onAuthenticated:()=>YY(n),onDisconnected:e=>ZY(n,e.reason),onError:e=>QY(n,Object.assign(Error(e.message),e))}}),l=MW(new wW(o.relayWebSocketUrl,{trackGlobalConnection:!1},{layer:c,makeClient:tne($t)})),u=QU({kind:`saved`,knownEnvironment:{...ni({id:n,label:e.label,source:`manual`,target:{httpBaseUrl:bn()?.target.httpBaseUrl??o.relayWebSocketUrl,wsBaseUrl:o.relayWebSocketUrl}}),environmentId:n},client:l,tolerateReportedEnvironmentIdentity:!0,onConfigSnapshot:e=>XY(n,e),...KY(e=>{RU.getState().patch(n,{descriptor:e.environment})})});try{let[,e]=await Promise.all([u.ensureBootstrapped(),l.server.getConfig()]);return XY(n,e),YY(n),t.registerConnection(u)}catch(e){throw QY(n,e),await u.dispose().catch(()=>void 0),e}}function VQe(e,t){let n=Nt.make(e.runtimeId),r=t.readConnection(n);if(r)return Promise.resolve(r);let i=gX.get(n);if(i)return i;let a=BQe(e,t).finally(()=>{gX.delete(n)});return gX.set(n,a),a}var HQe=new Set([`CMMD_AUTH_REQUIRED`,`CMMD_AUTH_EXPIRED`,`INVALID_OR_NON_USER_TOKEN`,`NON_USER_BEARER`,`CMMD_REST_AUTH_ERROR`]);function _X(e){if(!e||typeof e!=`object`)return null;let t=e.code;return typeof t!=`string`||!HQe.has(t)?null:t}function vX(e,t){return e===401||e===403||_X(t)!==null}function UQe(e){if(!e||typeof e!=`object`)return!1;let t=e.status,n=e.code;return vX(typeof t==`number`?t:void 0,typeof n==`string`?{code:n}:void 0)}var yX=[1e3,2e3,4e3,8e3,12e3,16e3,2e4],WQe=9e4,GQe=[`all fibers interrupted without error`,`timed out while waiting for forge cloud runtime metadata`,`timed out while waiting for`,`to stream its shell snapshot`,`forge runtime route not found`,`fly-replay`,`could not find a good candidate`,`instance refused connection`],KQe=[`Unknown socket error`,`Failed to fetch remote auth endpoint`,`Forge runtime replay target is unavailable`,`Remote auth request failed (502)`,`Remote auth request failed (503)`,`Remote auth request failed (504)`,`Unable to connect to the Forge server WebSocket`];function qQe(e){if(typeof e!=`object`||!e)return null;let t=e.status;return typeof t==`number`&&Number.isInteger(t)?t:null}function JQe(e){if(UQe(e))return!1;let t=qQe(e);if(t===502||t===503||t===504||e._tag===`OrchestrationGetSnapshotError`)return!0;let n=e instanceof Error?e.message:String(e),r=n.toLowerCase();return GQe.some(e=>r.includes(e))||KQe.some(e=>n.includes(e))}function YQe(e){return yX[e]??yX[yX.length-1]}function XQe(){return WQe}function ZQe(e,t){if(!BU(e))return t;let n=null,r=new Promise((t,r)=>{n=globalThis.setTimeout(()=>{r(Error(`Timed out while waiting for Forge Cloud runtime metadata for ${e.environmentId}. The VM may still be starting.`))},XQe())});return Promise.race([t,r]).finally(()=>{n!==null&&globalThis.clearTimeout(n)})}function bX(e){let t=e.toLowerCase();return t.includes(`authentication`)||t.includes(`unauthorized`)||t.includes(`forbidden`)||t.includes(`credential`)||t.includes(`runtime ticket`)||t.includes(`status 401`)||t.includes(`status 403`)}function QQe(e){switch(e){case`running`:return`green`;case`provisioning`:case`starting`:return`amber-pulse`;case`registered`:return`idle`;case`stopped`:case`suspended`:case`draining`:return`grey`;case`destroyed`:return`idle`;case`error`:return`red-pulse`;default:return`grey`}}function xX(e){let t=e.githubRepoFullName;return t?t.split(`/`)[1]??t:$Qe(e.projectName)}function $Qe(e){let t=e.trim().toLowerCase().replaceAll(`'`,``).replaceAll(`"`,``).replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``);return t.length>0?t:`project`}function SX(e){if(!e)return null;let t=e.trim().replace(/\/+$/,``);return t.length>0?t:null}function CX(e){let t=SX(e??void 0);return t&&wX(t).length>1?t:null}function wX(e){return e.split(`/`).flatMap(e=>e.split(`\\`)).filter(e=>e.length>0)}function TX(e){return e?wX(e).at(-1)??null:null}function e$e(e){let t=e.rows.length>0;return(e.isLoading||e.startupPhase===`auth-refreshing`)&&!t?{kind:`loading`}:e.error&&!t?{kind:`error-no-rows`,message:e.error}:e.error&&t?{kind:`stale-rows`,message:e.error}:t?{kind:`rows`}:{kind:`empty`}}function t$e(e,t){if(!t)return!1;let n=e.repositoryIdentity?.canonicalKey;return n!==void 0&&!n.toLowerCase().endsWith(`/${t.toLowerCase()}`)}function n$e(e,t){return e?e.cmmdOrganizationId===t.cmmdOrganizationId&&e.cmmdProjectId===t.cmmdProjectId:!1}function r$e(e,t){let n=e.filter(e=>!e.cmmdRegistration),r=CX(t.workspaceRoot),i=r?n.filter(e=>SX(e.cwd)===r):[];if(i.length>0)return i;let a=xX(t).toLowerCase();return n.filter(e=>TX(e.cwd)?.toLowerCase()===a)}function EX(e,t,n){let r=e[t];if(!r)return null;let i=r.projectIds.flatMap(e=>{let t=r.projectById[e];return!t||t$e(t,n.githubRepoFullName)?[]:[t]}),a=i.filter(e=>n$e(e.cmmdRegistration,n)),o=a.length>0?a:r$e(i,n),s=o.length===1?o[0]:void 0;return s?{environmentId:t,projectId:s.id}:null}function i$e(e){return{cmmdOrganizationId:e.cmmdOrganizationId,cmmdProjectId:e.cmmdProjectId,githubRepoFullName:e.githubRepoFullName,projectName:e.projectName,workspaceRoot:e.workspaceRoot}}function a$e(e,t){let n=e.cmmdEnvironmentId??e.environmentId;if(e.runtimeId===null||n===null)return null;let r=EX(t,Nt.make(n),i$e(e));return r?ii(r.environmentId,r.projectId):null}function o$e(e,t){return e===t?!0:e===null||t===null?!1:e.environmentId===t.environmentId&&e.projectId===t.projectId}function s$e(e,t){let n=!1,r=e.map(e=>{let r=a$e(e,t);return o$e(r,e.resolvedRef)?e:(n=!0,{...e,resolvedRef:r})});return n?r:e}var DX=`registered`,c$e={destroyed:`destroyed`,superseded:`destroyed`,error:`error`,failed:`error`,draining:`draining`,recycling:`draining`,stopped:`stopped`,suspended:`suspended`,provisioning:`provisioning`,created:`provisioning`,starting:`starting`,restarting:`starting`};function OX(e,t){let n=c$e[e];if(n!==void 0)return n;if(e!==`running`)return`stopped`;if(t)switch(t){case`app_ready`:case`server_ready`:case`ready`:case`supervisor_up`:return`running`;case`starting`:case`image_pulling`:case`waiting_state`:return`starting`;case`error`:return`error`;default:return`running`}return`running`}function l$e(e){return e===`destroyed`}function u$e(e){switch(e){case`running`:case`starting`:case`provisioning`:return!0;case`suspended`:return!0;case`registered`:case`stopped`:case`draining`:case`error`:case`destroyed`:return!1;default:return!1}}function d$e(e){let t=e.shortName?.trim();if(t)return t;if(e.projectName)return e.projectName;if(e.githubRepoFullName){let t=e.githubRepoFullName.split(`/`),n=t[t.length-1];if(n)return n}return`project ${e.cmmdProjectId}`}var kX={state:`unknown`,label:`Unknown`,detail:`Current Environment availability has not been observed.`,tone:`muted`,automaticWakeAllowed:!1,shellConnected:!1,shellMayEstablishReady:!1};function AX(e,t,n,r,i,a,o=!1){return{state:e,label:t,detail:n,tone:r,automaticWakeAllowed:i,shellConnected:a,shellMayEstablishReady:o}}function f$e(e,t){return e.ownerIntent===`paused`?AX(`paused`,`Paused`,`Resume before live work can wake this Environment.`,`warning`,!1,t):e.ownerIntent===`deleting`?AX(`deleting`,`Deleting`,`This Environment is being removed.`,`muted`,!1,t):null}function p$e(e,t){return e.executionAdmission.state===`allowed`?null:AX(`unavailable`,`Unavailable`,`This Environment is not accepting live work while it drains.`,`warning`,!1,t)}function jX(e,t=!1){if(e==null)return kX;let n=f$e(e,t);if(n!==null)return n;if(e.ownerIntent!==`active`)return kX;let r=p$e(e,t);if(r!==null)return r;let{provider:i,guestReadiness:a,activeWork:o}=e;return i.observedAt===null||i.failure!==null||i.state===`absent`||i.state===`unknown`?AX(`unknown`,`Unknown`,`Current provider availability has not been observed.`,`muted`,e.automaticWakeAllowed,t):i.state===`sleeping`?AX(`sleeping`,`Sleeping`,`Live work wakes this Environment automatically.`,`muted`,e.automaticWakeAllowed,t):a.observedAt===null||a.failure!==null||a.state===`unknown`?AX(`unknown`,`Unknown`,`Current guest readiness has not been observed.`,`muted`,e.automaticWakeAllowed,t):a.state===`starting`?AX(`starting`,`Starting`,`Preparing live execution.`,`warning`,e.automaticWakeAllowed,t):a.state===`degraded`?AX(`degraded`,`Degraded`,`A required service needs attention.`,`warning`,e.automaticWakeAllowed,t):a.state===`failed`?AX(`needs-attention`,`Needs attention`,`The readiness check failed.`,`destructive`,e.automaticWakeAllowed,t):t?AX(`ready`,`Ready`,null,`success`,e.automaticWakeAllowed,!0):o.state===`active`?AX(`ready`,`Ready`,null,`success`,e.automaticWakeAllowed,t):AX(`unknown`,`Unknown`,`No current execution proof is available.`,`muted`,e.automaticWakeAllowed,t,!0)}function m$e(e,t){return!t||!e.shellMayEstablishReady?e:AX(`ready`,`Ready`,null,`success`,e.automaticWakeAllowed,!0)}function MX(e){return e?OX(e.status,e.readinessPhase??void 0):DX}function h$e(e){return e.runtime?.githubRepoFullName??e.githubRepoFullName??null}function g$e(e,t){return{cmmdOrganizationId:e.organizationId,cmmdProjectId:e.projectId,projectName:d$e({shortName:e.shortName??null,projectName:e.projectName??null,githubRepoFullName:t,cmmdProjectId:e.projectId}),githubRepoFullName:t,iconUrl:e.iconUrl??null,icon:e.icon??null}}function _$e(e){return e?{runtimeId:e.runtimeId,workspaceRoot:e.workspaceRoot??null,status:MX(e),desiredState:NX(e.desiredState),environmentId:zi(e.runtimeId),cmmdEnvironmentId:e.environmentId??null,...e.maintenance===void 0?{}:{maintenance:e.maintenance}}:{runtimeId:null,workspaceRoot:null,status:DX,desiredState:null,environmentId:null,cmmdEnvironmentId:null}}function NX(e){return e===`running`||e===`stopped`||e===`destroyed`?e:null}function v$e(e){return{...g$e(e,h$e(e)),registeredAt:e.registeredAt??null,..._$e(e.runtime),removal:e.removal??null,resolvedRef:null}}function y$e(e){return e.map(v$e)}function b$e(e){return e.map(e=>({runtimeId:e.runtime.runtimeId,cmmdOrganizationId:e.organizationId,cmmdUserId:e.userId,displayName:e.displayName??null,userFirstName:e.userFirstName??null,environmentId:zi(e.runtime.runtimeId),cmmdEnvironmentId:e.runtime.environmentId??null,status:MX(e.runtime),desiredState:NX(e.runtime.desiredState),...e.runtime.maintenance===void 0?{}:{maintenance:e.runtime.maintenance},lifecycle:jX(e.lifecycle)}))}var PX=`forge:cmmd-cloud-project-catalog:v5`,x$e=pn({runtimeId:Yt(k),cmmdOrganizationId:qt,cmmdProjectId:qt,cmmdEnvironmentId:Yt(k),registeredAt:St(Yt(k)),projectName:k,githubRepoFullName:Yt(k),workspaceRoot:Yt(k),iconUrl:St(Yt(k)),icon:St(Yt(k)),status:k,desiredState:St(Yt(k)),environmentId:Yt(k),removal:St(Yt(pn({operationId:k,deletePlanningProject:Ut,status:rn([`pending`,`running`,`retryable`]),phase:rn([`destroy_runtime`,`purge_execution_state`,`delete_planning_project`,`unregister`,`complete`]),lastErrorCode:Yt(k),lastErrorMessage:Yt(k),updatedAt:k})))}),FX=pn({rows:sn(x$e),environments:sn(pn({runtimeId:k,cmmdOrganizationId:qt,cmmdUserId:qt,displayName:St(Yt(k)),userFirstName:St(Yt(k)),environmentId:k,cmmdEnvironmentId:Yt(k),status:k,desiredState:Yt(k)})),fetchedAt:k});function S$e(){Fi(PX)}function C$e(){try{let e=Ni(PX,FX);return e?{rows:e.rows.map(e=>({runtimeId:e.runtimeId,cmmdOrganizationId:e.cmmdOrganizationId,cmmdProjectId:e.cmmdProjectId,registeredAt:e.registeredAt??null,projectName:e.projectName,githubRepoFullName:e.githubRepoFullName,workspaceRoot:e.workspaceRoot,iconUrl:e.iconUrl??null,icon:e.icon??null,status:e.runtimeId===null?DX:OX(e.status),desiredState:NX(e.desiredState),environmentId:e.runtimeId===null?null:zi(e.runtimeId),cmmdEnvironmentId:e.cmmdEnvironmentId,resolvedRef:null,removal:e.removal??null})),environments:e.environments.map(e=>({runtimeId:e.runtimeId,cmmdOrganizationId:e.cmmdOrganizationId,cmmdUserId:e.cmmdUserId,displayName:e.displayName??null,userFirstName:e.userFirstName??null,cmmdEnvironmentId:e.cmmdEnvironmentId,status:OX(e.status),desiredState:NX(e.desiredState),environmentId:zi(e.runtimeId)})),fetchedAt:e.fetchedAt}:null}catch{return null}}function w$e(e,t,n){try{Pi(PX,{rows:e.map(e=>({runtimeId:e.runtimeId,cmmdOrganizationId:e.cmmdOrganizationId,cmmdProjectId:e.cmmdProjectId,cmmdEnvironmentId:e.cmmdEnvironmentId,registeredAt:e.registeredAt,projectName:e.projectName,githubRepoFullName:e.githubRepoFullName,workspaceRoot:e.workspaceRoot,iconUrl:e.iconUrl,icon:e.icon,status:e.status,environmentId:e.environmentId,removal:e.removal})),environments:t,fetchedAt:n},FX)}catch{}}var IX=1e3;function T$e(e){return e.reconnectPhase===`idle`?`hidden`:e.reconnectPhase===`exhausted`?`actionable`:!e.hasConnected||!e.stableConnectionSeen?`startup-pending`:`actionable`}function LX(e){let t=e.maxAttempts??2,n=e.retryDelayMs??1e3;return e.failedAttempt<t?{kind:`retry`,delayMs:n,nextAttempt:e.failedAttempt+1}:{kind:`terminal`,attempt:e.failedAttempt}}var E$e=`auth-required`,D$e=`cloud-projects`;async function O$e(e,t,n){let r=null,i=new hU(e).listCloudProjects({signal:t.signal}).then(e=>({kind:`catalog`,catalog:e})).catch(e=>({kind:`failed`,error:e})),a=new Promise(e=>{r=setTimeout(()=>{t.abort(),e({kind:`timed-out`})},n)});try{return await Promise.race([i,a])}finally{r!==null&&clearTimeout(r)}}function k$e(e){let t=e.accessToken??e.resolveAccessToken?.(),n={Accept:`text/event-stream`};return t&&(n.Authorization=`Bearer ${t}`),n}function A$e(e,t){let n=new URL(e);return n.pathname=t,n.search=``,n.hash=``,n.toString()}async function RX(e){return(e.status===401||e.status===403)&&(await P$e(e)||e.status===401)?`auth-required`:e.status===404||e.status===405||!e.ok||!e.body?`fallback`:e.body.getReader()}async function j$e({reader:e,signal:t,onAuthRequired:n,onCatalog:r}){let i=new TextDecoder,a=``;try{for(;!t.aborted;){let{done:o,value:s}=await e.read();if(t.aborted||o)return;let c=M$e(a,i.decode(s,{stream:!0}));if(a=c.buffer,c.messages.some(e=>N$e(e,n,r)))return}}finally{e.releaseLock()}}function M$e(e,t){let n=`${e}${t}`.split(/\n\n/);return{buffer:n.pop()??``,messages:n}}function N$e(e,t,n){let r=I$e(e);if(r.name===E$e)return t(),!0;let i=r.name===D$e?F$e(r.data):null;return i&&n(i),!1}async function P$e(e){try{let t=await e.clone().json();return typeof t?.code==`string`&&t.code===`CMMD_AUTH_REQUIRED`}catch{return!1}}function F$e(e){try{return lU(JSON.parse(e))}catch{return null}}function I$e(e){let t=``,n=``;for(let r of e.split(`
|
|
1021
|
-
`))r.startsWith(`event: `)&&(t=r.slice(7).trim()),r.startsWith(`data: `)&&(n=r.slice(6).trim());return{name:t,data:n}}var L$e=`/api/cmmd/forge-cloud-projects`,R$e=`/api/cmmd/forge-cloud-projects/events`,z$e=15e3,B$e=3e4,V$e=2e3,H$e=3e4,U$e=200;function zX(e){return e!==null&&clearTimeout(e),null}function W$e({config:e,onEvent:t}){let n=!1,r=!1,i=!1,a=!1,o=!1,s=0,c=null,l=0,u=null,d=null,f=0,p=null,m=null,h=null,g=null;function _(){p=zX(p),g=zX(g)}function v(){f+=1,d?.controller.abort(),d=null}function y(e,t){return d?.controller===e&&d.generation===t&&f===t}function b(e){return u===e}function x(){v(),u?.abort(),u=null,_(),h=zX(h)}function S(){return!r&&!a}function C(e){t({kind:`catalog`,catalog:e,fetchedAt:new Date().toISOString()})}function w(e){a||r||(a=!0,c=null,x(),t({kind:`auth-required`,message:e}))}function T(e,n){if(r||a)return;s+=1,c=n;let i=LX({failedAttempt:s,retryDelayMs:IX});if(i.kind===`terminal`){w(e);return}u?.abort(),u=null,g=zX(g),t({kind:`auth-refreshing`}),o=!0,h=zX(h),h=setTimeout(()=>{h=null,o=!1,he()},i.delayMs)}async function E(){if(!S())return!1;let n=new AbortController,r=++f;d={controller:n,generation:r},t({kind:`loading`});try{return ee(await O$e(e,n,z$e),n,r)}finally{y(n,r)&&(d=null)}}function ee(e,t,n){return!S()||!y(t,n)?!1:e.kind===`catalog`?te(e.catalog):e.kind===`timed-out`?ne():re(e.error)}function te(e){return c!==`sse`&&(s=0,c=null),o=!1,C(e),!0}function ne(){return t({kind:`failed`,message:`Cloud connection refresh timed out. Showing last known connections.`}),!a}function re(e){let n=e instanceof Error?e.message:`Failed to load cloud projects`;return bH(e)||G$e(e)||/authentication required/i.test(n)?T(n,`list`):t({kind:`failed`,message:n}),!a}function ie(){S()&&(p=zX(p),p=setTimeout(async()=>{await E(),S()&&ie()},B$e))}function ae(){!S()||o||(i?ie():se(l))}function oe(e){l=e+1;let t=Math.min(V$e*2**e,H$e);g=zX(g),g=setTimeout(()=>{g=null,se(l)},t)}function D(e){s=0,c=null,l=0,C(e)}async function se(t){if(!S()||u!==null)return;u=new AbortController;let n=u,r=e.eventsUrl??A$e(e.cmmdHttpBaseUrl,`/api/forge/context/runtimes/events`),i=e.eventsUrl?{Accept:`text/event-stream`}:k$e(e);try{await ce(await fetch(r,{headers:i,signal:n.signal,credentials:`include`}),n,t)}catch{pe(n)}}async function ce(e,t,n){if(!le(t))return;let r=await RX(e);if(le(t)){if(typeof r==`string`){fe(r);return}await j$e({reader:r,signal:t.signal,onAuthRequired:()=>ue(t),onCatalog:e=>de(t,e)}),me(t,n)}}function le(e){return S()&&b(e)}function ue(e){le(e)&&T(`CMMD authentication required. Sign in again to continue.`,`sse`)}function de(e,t){le(e)&&D(t)}function fe(e){if(u=null,e===`auth-required`){T(`CMMD authentication required. Sign in again to continue.`,`sse`);return}i=!0,ie()}function pe(e){e.signal.aborted||!le(e)||(u=null,i=!0,ie())}function me(e,t){e.signal.aborted||!le(e)||(u=null,oe(t))}function he(){return E().then(e=>{e&&S()&&ae()})}return{initialize(){n||r||(n=!0,he())},refresh(){r||(v(),m=zX(m),m=setTimeout(()=>{m=null,a=!1,o=!1,s=0,c=null,x(),he()},U$e))},teardown(){r=!0,m=zX(m),x()}}}function G$e(e){return typeof e==`object`&&!!e&&`kind`in e&&e.kind===`auth`}var BX={connected:!1,isLoading:!1,error:null,rows:[],environments:[],fetchedAt:null,stale:!1,startupPhase:`idle`,capacity:null};function K$e({config:e}){let t=C$e(),n=t?{...BX,isLoading:!0,rows:t.rows,environments:t.environments,fetchedAt:t.fetchedAt,stale:!0}:BX,r=new Set;function i(e){n=e;for(let e of r)e()}function a(e){switch(e.kind){case`loading`:i({...n,isLoading:!0,error:null});return;case`catalog`:{let t=y$e(e.catalog.listRowsForDisplay()),n=b$e(e.catalog.listEnvironmentsForDisplay());w$e(t,n,e.fetchedAt),i({connected:!0,isLoading:!1,error:null,rows:t,environments:n,fetchedAt:e.fetchedAt,stale:!1,startupPhase:`idle`,capacity:e.catalog.capacity});return}case`failed`:i({...n,connected:!1,isLoading:!1,error:e.message,stale:n.rows.length>0,startupPhase:`idle`});return;case`auth-refreshing`:i({...n,connected:!1,isLoading:!0,error:null,stale:n.rows.length>0,startupPhase:`auth-refreshing`});return;case`auth-required`:i({...n,connected:!1,isLoading:!1,error:e.message,stale:n.rows.length>0,startupPhase:`idle`}),mn(`cmmd-runtimes`);return}}let o=W$e({config:e,onEvent:a});return{subscribe(e){return r.add(e),()=>r.delete(e)},read(){return n},initialize(){o.initialize()},refresh(){o.refresh()},_teardown(){o.teardown()},_setState(e){i(e)}}}var VX=null;function HX(e){return typeof window<`u`&&window.location?.href?new URL(e,window.location.href).toString():new URL(e,`http://localhost`).toString()}function UX(){return{cmmdHttpBaseUrl:`https://cmmd.ai`,resolveAccessToken:()=>null,listUrl:L$e,eventsUrl:R$e,destroyUrl:e=>HX(`/api/cmmd/forge-runtimes/${encodeURIComponent(e)}/destroy`),lifecycleUrl:(e,t)=>HX(`/api/cmmd/forge-runtimes/${encodeURIComponent(e)}/${t}`),updateCommitUrl:e=>HX(`/api/cmmd/forge-runtimes/${encodeURIComponent(e)}/update-commit`),updateCommitOperationUrl:(e,t)=>HX(`/api/cmmd/forge-runtimes/${encodeURIComponent(e)}/update-commit/${encodeURIComponent(String(t))}`),ensureUrl:HX(`/api/cmmd/forge-runtimes/ensure`)}}function WX(){return VX===null&&(VX=K$e({config:UX()})),VX}function q$e(){WX().refresh()}function J$e(e){return WX().subscribe(e)}function GX(){return WX().read()}function Y$e(e){let t=(0,vi.c)(9),n=e?.enabled??!0,r,i;t[0]===n?(r=t[1],i=t[2]):(r=()=>{n&&WX().initialize()},i=[n],t[0]=n,t[1]=r,t[2]=i),(0,M.useEffect)(r,i);let a=(0,M.useSyncExternalStore)(J$e,GX,GX),o=YG(X$e),s,c;t[3]!==o||t[4]!==a.rows?(c=s$e(a.rows,o),t[3]=o,t[4]=a.rows,t[5]=c):c=t[5],s=c;let l=s,u;return t[6]!==l||t[7]!==a?(u=l===a.rows?a:{...a,rows:l},t[6]=l,t[7]=a,t[8]=u):u=t[8],u}function X$e(e){return e.environmentStateById}var Z$e=`forge:cloud-runtime-handoffs:v2`,Q$e=3e5,KX=new Map,$$e={clear:()=>KX.clear(),getItem:e=>KX.get(e)??null,key:e=>Array.from(KX.keys())[e]??null,get length(){return KX.size},removeItem:e=>KX.delete(e),setItem:(e,t)=>KX.set(e,t)};function e1e(){return typeof window<`u`?window.localStorage:globalThis.localStorage??$$e}var qX=dt()(QG(e=>({byRuntimeId:{},record:t=>e(e=>({byRuntimeId:{...e.byRuntimeId,[t.runtimeId]:t}})),clearRuntime:t=>e(e=>t in e.byRuntimeId?{byRuntimeId:Object.fromEntries(Object.entries(e.byRuntimeId).filter(([e])=>e!==t))}:e),reconcileCatalog:(t,n=Date.now())=>e(e=>{let r=Object.entries(e.byRuntimeId).filter(([,e])=>{if(n-e.recordedAt>Q$e)return!1;let r=t.find(t=>t.cmmdOrganizationId===e.cmmdOrganizationId&&t.cmmdProjectId===e.cmmdProjectId);return r?.runtimeId===e.previousCatalogRuntimeId&&r.registeredAt===e.catalogRegisteredAt});return r.length===Object.keys(e.byRuntimeId).length?e:{byRuntimeId:Object.fromEntries(r)}}),reset:()=>e({byRuntimeId:{}})}),{name:Z$e,storage:XG(e1e),partialize:e=>({byRuntimeId:e.byRuntimeId}),version:2}));function t1e(e){qX.getState().record({...e,recordedAt:Date.now()})}function n1e(e){qX.getState().clearRuntime(e)}var r1e=new Set([`filesystem`,`terminal`,`git`,`project-write`]);function i1e(e){return e===`desktop-local`}function a1e(e){return e===`cloud`||e===`cloud-vm`||e===`cmmd`||e===`github`}function JX(e){return e.actionKind===`cloud-api`?{available:!0,route:`cloud`,requiresPermissionGate:!1,title:`Cloud API route`,description:`Cloud and Command work routes through authenticated Forge Cloud APIs.`}:r1e.has(e.actionKind)?a1e(e.workSource)?e.workSource===`cloud-vm`&&e.executionRuntime===`cloud`?{available:!0,route:`cloud-vm`,requiresPermissionGate:!1,title:`Cloud VM route`,description:`Filesystem, terminal, git, and project writes run inside the user's Forge Cloud VM.`}:e.executionRuntime===`cloud`?{available:!0,route:`cloud`,requiresPermissionGate:!1,title:`Cloud work route`,description:`Cloud-scoped filesystem, terminal, git, and project writes run in the Forge Cloud runtime.`}:{available:!1,route:`blocked`,requiresPermissionGate:!1,title:`Open in Forge Cloud`,description:`Cloud projects must execute inside the Forge Cloud runtime. Local Desktop cannot run cloud project filesystem, terminal, git, or project-write actions.`}:i1e(e.workSource)?e.surface===`desktop-local`||e.executionRuntime===`desktop-local`?{available:!0,route:`desktop-local`,requiresPermissionGate:!1,title:`Desktop local route`,description:`Local filesystem, terminal, git, and project writes run through the Desktop local backend.`}:e.executionRuntime===`dev-local-web`?{available:!0,route:`dev-local-web`,requiresPermissionGate:!1,title:`Dev local route`,description:`Local Web is a development-only projection and routes local actions through the dev server.`}:{available:!1,route:`blocked`,requiresPermissionGate:!1,title:`Switch to Desktop Local`,description:`Local projects must execute in the Desktop Local runtime. Forge Cloud cannot run local filesystem, terminal, git, or project-write actions.`}:{available:!1,route:`blocked`,requiresPermissionGate:!1,title:`Unknown work source`,description:`Forge cannot safely route local actions for this work source yet.`}:{available:!1,route:`blocked`,requiresPermissionGate:!1,title:`Unsupported route`,description:`Forge does not have a runtime route for this action yet.`}}var o1e=`Ready to use. Your cloud project starts when you open the first thread.`;function s1e(e){let t=JX({actionKind:`project-write`,surface:`cloud-official`,workSource:`cloud-vm`,executionRuntime:`cloud`});return{actionAuthority:`runtime`,surface:`cloud-official`,hostKind:`user-cloud-vm`,workSource:`cloud-vm`,executionRuntime:`cloud`,modelRuntime:`cloud`,linkState:`cloud-only`,workspaceIdentity:null,hideLocalPath:!0,label:`Cloud project`,description:e?`This project runs in your Forge Cloud VM.`:o1e,actionRouteLabel:t.title,actionRouteDescription:t.description,actionRouteAvailable:t.available,requiresPermissionGate:t.requiresPermissionGate}}var c1e=3e5;function YX(e,t,n=Date.now()){let r=new Map,i=new Map;for(let t of e){let e={cmmdOrganizationId:t.cmmdOrganizationId,cmmdProjectId:t.cmmdProjectId};r.set(ZX(e),e),t.runtimeId!==null&&i.set(t.runtimeId,e)}for(let a of t){if(n-a.recordedAt>c1e)continue;let t=r.get(ZX({cmmdOrganizationId:a.cmmdOrganizationId,cmmdProjectId:a.cmmdProjectId})),o=e.find(e=>e.cmmdOrganizationId===a.cmmdOrganizationId&&e.cmmdProjectId===a.cmmdProjectId);t&&o?.runtimeId===a.previousCatalogRuntimeId&&o.registeredAt===a.catalogRegisteredAt&&!i.has(a.runtimeId)&&i.set(a.runtimeId,t)}return i}function XX(e){return e.environmentId??`cmmd-cloud-project:${e.cmmdOrganizationId}:${e.cmmdProjectId}`}function l1e(e){return{environmentId:XX(e),workspaceRoot:e.workspaceRoot,resolvedRef:e.resolvedRef}}function ZX(e){return`cloud:${e.cmmdOrganizationId}:${e.cmmdProjectId}`}function u1e(e){let t=/^cloud:(\d+):(\d+)$/.exec(e??``);return t?{cmmdOrganizationId:Number(t[1]),cmmdProjectId:Number(t[2])}:null}function d1e(e){return`cloud-runtime:${e}`}var f1e=`cloud-unconnected:`;function p1e(e,t,n=[]){let r=ZX(e);return QX({id:Zt.make(`${f1e}${r}`),environmentId:Nt.make(XX(e)),name:e.projectName,cwd:``,repositoryIdentity:null,availability:void 0,defaultModelSelection:null,createdAt:void 0,updatedAt:void 0,scripts:[],projectKey:r,environmentPresence:`remote-only`,source:s1e(e.runtimeId!==null),memberProjectRefs:t?[t]:[],remoteEnvironmentLabels:[],worktreeMembers:[],activeWorktreeKey:null,preConnectCloud:{runtimeId:e.runtimeId,cmmdOrganizationId:e.cmmdOrganizationId,cmmdProjectId:e.cmmdProjectId,cmmdEnvironmentId:e.cmmdEnvironmentId,registeredAt:e.registeredAt,projectName:e.projectName,githubRepoFullName:e.githubRepoFullName,workspaceRoot:e.workspaceRoot,iconUrl:e.iconUrl,icon:e.icon,status:e.status,removal:e.removal},cloudRemoval:e.removal},n)}function QX(e,t){if(t.length===0)return e;let n=[...e.memberProjectRefs],r=new Set(n.map(e=>`${e.environmentId}:${e.projectId}`));for(let e of t){let t=`${e.environmentId}:${e.projectId}`;r.has(t)||(r.add(t),n.push(e))}return n.length===e.memberProjectRefs.length?e:{...e,memberProjectRefs:n}}function $X(e,t,n,r){if(!e)return null;let i=t.find(t=>t.cmmdEnvironmentId===String(e));if(i)return{row:i,runtimeId:i.runtimeId,matchedByHandoff:!1};let a=Vi(e).legacyRuntimeId;if(a){let e=t.find(e=>e.runtimeId===a);if(e)return{row:e,runtimeId:a,matchedByHandoff:!1};let i=YX(t,n,r).get(a);if(!i)return null;let o=t.find(e=>e.cmmdOrganizationId===i.cmmdOrganizationId&&e.cmmdProjectId===i.cmmdProjectId);return o?{row:o,runtimeId:a,matchedByHandoff:!0}:null}let o=t.find(t=>t.runtimeId===null&&XX(t)===String(e));return o?{row:o,runtimeId:null,matchedByHandoff:!1}:null}function m1e(e,t=e.runtimeId){return{runtimeId:t,cmmdOrganizationId:e.cmmdOrganizationId,cmmdProjectId:e.cmmdProjectId,cmmdEnvironmentId:e.cmmdEnvironmentId,registeredAt:e.registeredAt,projectName:e.projectName,githubRepoFullName:e.githubRepoFullName,workspaceRoot:e.workspaceRoot,iconUrl:e.iconUrl,icon:e.icon,status:e.status,desiredState:e.desiredState}}function h1e(e){return e.desiredState===`stopped`}var g1e=15e3;function _1e(e){return e===401||e===403}function v1e(e){return typeof e!=`object`||!e?!1:e.retryable===!0}function eZ(e){return _1e(e.status)||e.attempt>=e.maxAttempts||e.status>=200&&e.status<300?!1:e.status>=500||e.status===409&&v1e(e.body)}function y1e(e,t){let n=e?.trim();if(!n)return null;if(/^-?\d+$/.test(n))return Number(n)*1e3;let r=Date.parse(n);return Number.isNaN(r)?null:r-t}function tZ(e){let t=e=>Math.min(g1e,Math.max(0,e)),n=y1e(e.retryAfter,e.nowMs??Date.now());return t(n===null?300*2**Math.max(0,e.attempt-1):n)}var b1e=6e4;function x1e(e,t){if(!e||typeof e!=`object`)return t;let n=e.error;return typeof n==`string`&&n.trim().length>0?n:t}var nZ=`CMMD returned an invalid Cloud runtime connection descriptor.`;function rZ(e,t){let n=e[t];if(typeof n!=`string`||n.length===0)throw Error(nZ);return n}function S1e(e){if(!e||typeof e!=`object`)throw Error(nZ);let t=e;return{httpBaseUrl:rZ(t,`httpBaseUrl`),wsBaseUrl:rZ(t,`wsBaseUrl`),bearerToken:rZ(t,`bearerToken`),expiresAt:rZ(t,`expiresAt`)}}async function C1e(e){let t=hn(`/api/cmmd/forge-runtimes/${encodeURIComponent(e.runtimeId)}/connect`),n=yn({method:`POST`,...e.signal?{signal:e.signal}:{},headers:{"Content-Type":`application/json`},body:JSON.stringify(e.organizationId===void 0?{}:{organizationId:e.organizationId})});for(let r=1;r<=8;r+=1){let i=await fetch(t,n),a=await i.json().catch(()=>null);if(i.ok)return S1e(a);if(!eZ({status:i.status,body:a,attempt:r,maxAttempts:8})){let e=vX(i.status,a)?`CMMD authentication expired while renewing the Cloud runtime connection. Sign in again.`:`CMMD could not renew the Cloud runtime connection (${i.status}).`;throw Object.assign(Error(x1e(a,e)),{status:i.status,..._X(a)?{code:_X(a)}:{}})}await IU(tZ({attempt:r,retryAfter:i.headers.get(`retry-after`)}),e.signal)}throw Error(`Cloud runtime connection retry budget was exhausted.`)}function w1e(e,t){if(!e?.expiresAt)return!0;let n=Date.parse(e.expiresAt);return!Number.isFinite(n)||n<=t+b1e}function iZ(e){let t=e.requestDescriptor??C1e,n=e.now??Date.now,r=e.initialDescriptor??null,i=null,a=!1,o=new AbortController,s=e=>FU(e,o.signal),c=()=>i||(i=s(t({runtimeId:e.runtimeId,...e.organizationId===void 0?{}:{organizationId:e.organizationId},signal:o.signal})).then(async t=>(await s(Promise.resolve(e.validateDescriptor?.(t))),await s(Promise.resolve(e.persistDescriptor?.(t))),await s(Promise.resolve()),r=t,a=!1,t)).then(e=>(i=null,e),e=>{throw i=null,e}),i);return{acquire:e=>{if(o.signal.aborted)return s(Promise.resolve(r));let t=e?.forceRefresh||a||w1e(r,n())?c():Promise.resolve(r);return FU(s(t),e?.signal)},invalidate:()=>{a=!0},dispose:()=>{o.abort()}}}function T1e(e){let t=e.runtimeId?.trim();if(t)return t;let n=Vi(e.environmentId).legacyRuntimeId;if(n)return n;let r=GX().rows,i=Object.values(qX.getState().byRuntimeId);return $X(e.environmentId,r,i)?.runtimeId??null}function E1e(e,t,n,r){let i=e,a=iZ({runtimeId:t,...e.cmmdOrganizationId===void 0?{}:{organizationId:e.cmmdOrganizationId},...n===void 0?{}:{initialDescriptor:{httpBaseUrl:e.httpBaseUrl,wsBaseUrl:e.wsBaseUrl,bearerToken:n,expiresAt:e.runtimeTicketExpiresAt??null}},validateDescriptor:async e=>{await XU({httpBaseUrl:e.httpBaseUrl,bearerToken:e.bearerToken})},persistDescriptor:async e=>{if(r&&!r())throw Error(`Saved environment changed while its connection was being acquired.`);let t={...zU(i),httpBaseUrl:e.httpBaseUrl,wsBaseUrl:Ft(e.wsBaseUrl),...e.expiresAt===null?{}:{runtimeTicketExpiresAt:e.expiresAt},lastConnectedAt:new Date().toISOString()};await AU(t),await MU(t.environmentId),SU.getState().upsert(t),i=t}});return WUe(e.environmentId,a),a}function D1e(e){let t={wsBaseUrl:e.record.wsBaseUrl,httpBaseUrl:e.record.httpBaseUrl,bearerToken:e.bearerToken,expiresAt:e.record.runtimeTicketExpiresAt??null};return{acquire:()=>Promise.resolve(t)}}var O1e=12e4,k1e=3e4,aZ=3e4;function oZ(e){let t=e.expiresAt?Date.parse(e.expiresAt):NaN;if(!Number.isFinite(t))throw Error(`Cloud runtime authority descriptor has no valid expiry.`);return t}function A1e(e){if(!e||typeof e!=`object`)return!1;let t=e.status;return t===401||t===403}function j1e(e){let t=e.now??Date.now,n=e.renewalSkewMs??O1e,r=!1,i=null,a=null,o=oZ(e.initialDescriptor),s=()=>{i!==null&&(globalThis.clearTimeout(i),i=null)},c=a=>{if(r)return;s();let c=oZ(a);o=c;let l=Math.max(t(),c-n);e.onState?.({kind:`scheduled`,expiresAt:new Date(c).toISOString(),renewAt:new Date(l).toISOString()}),i=globalThis.setTimeout(()=>{i=null,u().catch(()=>void 0)},Math.max(0,l-t()))},l=()=>{if(r)return null;let e=t()+aZ;return e>=o?null:(i=globalThis.setTimeout(()=>{i=null,u().catch(()=>void 0)},aZ),new Date(e).toISOString())},u=()=>{if(r)return Promise.resolve();if(a)return a;s(),e.onState?.({kind:`renewing`,expiresAt:new Date(o).toISOString()});let n=e.renew().then(async n=>{let i=oZ(n);if(i<=t())throw Error(`Cloud runtime authority descriptor is already expired.`);r||(e.onState?.({kind:`ready`,expiresAt:new Date(i).toISOString(),renewedAt:new Date(t()).toISOString()}),c(n))}).catch(t=>{if(r)return;let n=A1e(t);throw e.onState?.({kind:`error`,code:n?`authority_auth_rejected`:`authority_renewal_failed`,retryAt:n?null:l()}),t}).finally(()=>{a=null});return a=n,n};return c(e.initialDescriptor),{ensureLive:()=>o>t()+k1e?Promise.resolve():u(),renewNow:u,dispose:()=>{r=!0,s()}}}function sZ(){return new Date().toISOString()}function M1e(e,t,n,r,i){return n()&&RU.getState().ensure(e.environmentId),MW(new wW(async()=>{let e=e=>ZU({wsBaseUrl:e.wsBaseUrl,httpBaseUrl:e.httpBaseUrl,bearerToken:e.bearerToken,...r?{runtimeTicket:e.bearerToken}:{}}),n=await t.acquire();try{return await e(n)}catch(n){if(!r||!bH(n))throw n;return e(await t.acquire({forceRefresh:!0}))}},{trackGlobalConnection:!1,onAttempt:()=>{n()&&i.setConnecting(e.environmentId)},onOpen:()=>{n()&&i.setConnected(e.environmentId)},onError:i=>{r&&bX(i)&&t.invalidate?.(),n()&&RU.getState().patch(e.environmentId,{connectionState:`error`,lastError:i,lastErrorAt:sZ()})},onClose:a=>{r&&(a.code===1008||bX(a.reason))&&t.invalidate?.(),n()&&i.setDisconnected(e.environmentId,a.reason)}}))}async function cZ(e,t,n,r,i,a,o){let s=await WU(t,o),[c,l]=await Promise.all([a?Promise.resolve(a):n.server.getConfig(),XU({httpBaseUrl:s.httpBaseUrl,bearerToken:s.bearerToken,...o?{signal:o}:{}})]);return r()?(RU.getState().patch(e.environmentId,{authState:l.authenticated?`authenticated`:`requires-auth`,descriptor:c.environment,serverConfig:c,role:l.authenticated?l.role??i??null:null}),N1e(e,c,l.authenticated,r),!0):!1}function N1e(e,t,n,r){if(!n||!r())return;let i=EU(e.environmentId);i&&SU.getState().upsert({...i,lastAuthenticatedPullRequestCapability:t.environment.capabilities?.pullRequests===!0})}async function P1e(e,t,n,r){let i=n.findConnection(e.environmentId);if(i)return i;let a=r?.registryExpectation??{kind:`existing-record`,record:e},o=()=>n.canCommit({record:e,generation:t,registryExpectation:a}),{isCmmdRuntime:s,targetProvider:c,initialTarget:l}=await F1e(e,r,o);if(!o())throw lZ(e.environmentId,c,s),Error(`Saved environment changed while its connection was being acquired.`);let u=r?.client??M1e(e,c,o,s,n),d=L1e({record:e,initialTarget:l,targetProvider:c,isCmmdRuntime:s,client:u,canCommit:o,dependencies:n});try{if(!await n.withMetadataTimeout(e,cZ(e,c,u,o,r?.role??null,r?.serverConfig??null,r?.signal))||!o())throw Error(`Saved environment changed while its connection was being acquired.`);return n.registerConnection(d)}catch(t){throw s&&GU(e.environmentId,c),o()&&n.setError(e.environmentId,t),await d.dispose().catch(()=>void 0),t}}async function F1e(e,t,n){let r=BU(e)?T1e(e):null,i=r!==null,a=await I1e(e,t,i,n),o=i?E1e(e,r,a??void 0,n):D1e({record:e,bearerToken:a});try{return{isCmmdRuntime:i,targetProvider:o,initialTarget:await WU(o,t?.signal)}}catch(t){throw lZ(e.environmentId,o,i),t}}function lZ(e,t,n){n&&GU(e,t)}async function I1e(e,t,n,r){if(n)return t?.bearerToken;let i=t?.bearerToken??await jU(e.environmentId);if(i)return i;throw r()&&RU.getState().patch(e.environmentId,{authState:`requires-auth`,role:null,connectionState:`disconnected`,lastError:`Saved environment is missing its saved credential. Pair it again.`,lastErrorAt:sZ()}),Error(`Saved environment is missing its saved credential.`)}function L1e(e){let{record:t,initialTarget:n,targetProvider:r,isCmmdRuntime:i,client:a,canCommit:o,dependencies:s}=e,c=ni({id:t.environmentId,label:t.label,source:`manual`,target:{httpBaseUrl:n.httpBaseUrl,wsBaseUrl:n.wsBaseUrl}}),l=i&&n.expiresAt?j1e({initialDescriptor:{...n,expiresAt:n.expiresAt},renew:async()=>{let e=await r.acquire({forceRefresh:!0});return{...e,expiresAt:e.expiresAt??null}},onState:e=>{o()&&RU.getState().patch(t.environmentId,{providerAuthority:e})}}):null;return QU({kind:`saved`,knownEnvironment:{...c,environmentId:t.environmentId},client:a,readiness:{bearerToken:n.bearerToken},tolerateReportedEnvironmentIdentity:i,refreshMetadata:async()=>{await cZ(t,r,a,o)},...l?{ensureProviderAuthority:l.ensureLive,onDispose:l.dispose}:{},onConfigSnapshot:e=>{o()&&RU.getState().patch(t.environmentId,{descriptor:e.environment,serverConfig:e})},...s.createHandlers(e=>{o()&&RU.getState().patch(t.environmentId,{descriptor:e.environment})})})}var R1e=class{readRecord;hasSameTarget;generations=new Map;acquisitions=new Map;constructor(e,t){this.readRecord=e,this.hasSameTarget=t}invalidate(e){this.generations.set(e,this.readGeneration(e)+1)}generationFor(e){return this.readGeneration(e)}isCurrent(e){if(this.readGeneration(e.record.environmentId)!==e.generation)return!1;let t=this.readRecord(e.record.environmentId);return e.registryExpectation.kind===`initial-add`?t===null||this.hasSameTarget(t,e.record):t!==null&&this.hasSameTarget(t,e.registryExpectation.record)}ensure(e,t){let n=this.readGeneration(e.environmentId),r=this.acquisitions.get(e.environmentId);if(r&&r.generation===n&&this.hasSameTarget(r.record,e))return r.promise;let i=t(e,n).finally(()=>{this.acquisitions.get(e.environmentId)?.promise===i&&this.acquisitions.delete(e.environmentId)});return this.acquisitions.set(e.environmentId,{generation:n,record:e,promise:i}),i}async sync(e){await $i(e.records);let t=new Map(e.records.map(e=>[e.environmentId,e]));for(let[e,n]of this.acquisitions){let r=t.get(e);(!r||!this.hasSameTarget(r,n.record))&&this.invalidate(e)}let n=new Set(t.keys());await Promise.all(e.connectedSavedEnvironmentIds.filter(e=>!n.has(e)).map(async t=>{this.invalidate(t),await e.disconnect(t)}))}clear(){this.generations.clear(),this.acquisitions.clear()}readGeneration(e){return this.generations.get(e)??0}};async function z1e(e,t,n){if(!BU(e))return n.ensureSavedEnvironmentConnection(e,t);let r=n.getGeneration(e.environmentId),i=()=>n.registry.isCurrent({record:e,generation:r,registryExpectation:t?.registryExpectation??{kind:`existing-record`,record:e}}),a=null;for(let r=0;r<8;r+=1){PU(t?.signal);try{let r=await n.ensureSavedEnvironmentConnection(e,t);return await FU(r.ensureBootstrapped(),t?.signal),r}catch(o){a=o,await B1e({error:o,attemptIndex:r,record:e,options:t,dependencies:n,canCommit:i})}}let o=a instanceof Error?a:Error(String(a));throw i()&&n.setRuntimeError(e.environmentId,o),o}async function B1e(e){let{error:t,attemptIndex:n,record:r,options:i,dependencies:a,canCommit:o}=e;if(!o())throw t;if(await a.removeConnection(r.environmentId).catch(()=>!1),PU(i?.signal),n>=7||!JQe(t))throw o()&&a.setRuntimeError(r.environmentId,t),t;let s=YQe(n);i?.onBootstrapRetry?.({attempt:n+2,maxAttempts:8,retryDelayMs:s,error:t}),o()&&RU.getState().patch(r.environmentId,{connectionState:`connecting`,lastError:null,lastErrorAt:null}),await IU(s,i?.signal)}var uZ=new Map,dZ=new R1e(e=>EU(e),VU),fZ=new Set,pZ=YUe({createPrimaryEnvironmentConnection:_Z,syncSavedEnvironmentConnections:H1e});function V1e(){pZ.notifyProviderInvalidation()}function mZ(){for(let e of fZ)e()}function hZ(e){let t=uZ.get(e.environmentId);if(t&&t!==e)throw Error(`Environment ${e.environmentId} already has an active connection.`);return uZ.set(e.environmentId,e),mZ(),e}async function gZ(e){let t=uZ.get(e);return t?(uZ.delete(e),GU(e),RY(e),mZ(),await t.dispose(),!0):!1}function _Z(){return mQe({readConnection:bZ,registerConnection:hZ})}async function vZ(e,t){return uZ.get(e.environmentId)||dZ.ensure(e,(e,n)=>P1e(e,n,{findConnection:e=>uZ.get(e),registerConnection:hZ,canCommit:dZ.isCurrent.bind(dZ),createHandlers:KY,withMetadataTimeout:ZQe,setConnecting:JY,setConnected:YY,setDisconnected:ZY,setError:QY},t))}async function H1e(e){await dZ.sync({records:e,connectedSavedEnvironmentIds:[...uZ.values()].filter(e=>e.kind===`saved`).map(e=>e.environmentId),disconnect:K1e})}function yZ(e){return fZ.add(e),()=>{fZ.delete(e)}}function bZ(e){return uZ.get(e)??null}function U1e(e){return VQe(e,{readConnection:bZ,registerConnection:hZ})}function W1e(e){let t=bZ(e);if(!t)throw Error(`No websocket client registered for environment ${e}.`);return t}function xZ(){return _Z()}async function G1e(){return hQe({readConnection:bZ,registerConnection:hZ})}function SZ(){return{readConnection:bZ,removeConnection:gZ,ensureSavedEnvironmentConnection:vZ,ensureCmmdRuntimeSavedEnvironmentConnection:CZ,invalidate:e=>dZ.invalidate(e),retireEnvironmentId:YZe}}async function K1e(e){await nX(e,SZ())}async function q1e(e){await vQe(e,SZ())}async function J1e(){return _Qe({readConnection:bZ,ensureCmmdRuntimeSavedEnvironmentConnection:CZ})}async function Y1e(e){await yQe(e,SZ())}async function X1e(e){return bQe(e,SZ())}async function CZ(e,t){return z1e(e,t,{ensureSavedEnvironmentConnection:vZ,getGeneration:e=>dZ.generationFor(e),registry:dZ,removeConnection:gZ,setRuntimeError:QY})}async function Z1e(e){await uZ.get(e)?.ensureBootstrapped()}async function Q1e(e){let t=uZ.get(e);if(t?.ensureProviderAuthority){await t.ensureProviderAuthority();return}if(GUe(e))throw Error(`Cloud runtime provider authority is not available.`)}function $1e(e){return pZ.start(e)}zZe({applyEvent:uQe,readConnection:bZ,subscribeConnections:yZ}),QXe({notifyProviderInvalidation:V1e,readQueryClient:()=>pZ.readActiveService()?.queryClient??null,setRuntimeError:QY});var e0e=ote(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]);function t0e(e){return{environmentId:e.environmentId,threadId:e.threadId}}function n0e(e){return{draftId:e}}function r0e(e){return!e.environmentId||!e.threadId?null:ai(e.environmentId,e.threadId)}function i0e(e){return e.environmentId&&e.threadId?{kind:`server`,threadRef:ai(e.environmentId,e.threadId)}:e.draftId?{kind:`draft`,draftId:e.draftId}:null}var a0e=M.forwardRef(function(e,t){let{className:n,render:r,orientation:i=`horizontal`,style:a,...o}=e;return ete(`div`,e,{state:{orientation:i},ref:t,props:[{role:`separator`,"aria-orientation":i},o]})});function wZ(e){let t=(0,vi.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=ft(`relative overflow-hidden rounded-sm bg-muted [--skeleton-highlight:--alpha(var(--color-white)/64%)] after:absolute after:inset-0 after:animate-skeleton after:bg-[linear-gradient(120deg,transparent_40%,var(--skeleton-highlight),transparent_60%)] motion-reduce:after:content-none dark:[--skeleton-highlight:--alpha(var(--color-white)/4%)]`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,N.jsx)(`div`,{className:i,"data-slot":`skeleton`,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a}function TZ(e){let t=e.browser,n=t?{openSession:t.openSession,listSessions:t.listSessions,closeSession:t.closeSession,getSession:t.getSession,command:t.command,clearBrowsingData:t.clearBrowsingData,attachDisplay:t.attachDisplay,addDisplayIceCandidate:async e=>{await t.addDisplayIceCandidate(e)},onEvent:(e,n)=>t.onEvent(e,n)}:void 0;return{...n?{browser:n}:{},attachments:{createUploadUrl:t=>e.attachments.createUploadUrl(t),delete:t=>e.attachments.delete(t)},computer:{input:t=>e.computer.input(t)},threadDevRuntime:{get:t=>e.threadDevRuntime.get(t),allocatePort:t=>e.threadDevRuntime.allocatePort(t),release:t=>e.threadDevRuntime.release(t)},devTunnel:{register:t=>e.devTunnel.register(t),unregister:t=>e.devTunnel.unregister(t),list:t=>e.devTunnel.list(t)},terminal:{open:t=>e.terminal.open(t),write:t=>e.terminal.write(t),resize:t=>e.terminal.resize(t),signal:t=>e.terminal.signal(t),clear:t=>e.terminal.clear(t),restart:t=>e.terminal.restart(t),close:t=>e.terminal.close(t),onEvent:t=>e.terminal.onEvent(t)},projects:{searchContents:e.projects.searchContents,searchEntries:e.projects.searchEntries,readFile:e.projects.readFile,writeFile:e.projects.writeFile},workspace:{environmentPreflight:e.workspace.environmentPreflight,ensureScratch:e.workspace.ensureScratch},shell:{openInEditor:t=>e.shell.openInEditor(t)},git:{pull:e.git.pull,refreshStatus:e.git.refreshStatus,onStatus:(t,n,r)=>e.git.onStatus(t,n,r),listBranches:e.git.listBranches,createWorktree:e.git.createWorktree,removeWorktree:e.git.removeWorktree,createBranch:e.git.createBranch,checkout:e.git.checkout,init:e.git.init,resolvePullRequest:e.git.resolvePullRequest,preparePullRequestThread:e.git.preparePullRequestThread},pullRequests:{list:t=>e.pullRequests.list(t),listStats:t=>e.pullRequests.listStats(t),detail:t=>e.pullRequests.detail(t),activity:t=>e.pullRequests.activity(t),threadComments:t=>e.pullRequests.threadComments(t),diffFileContents:t=>e.pullRequests.diffFileContents(t),runAction:t=>e.pullRequests.runAction(t),update:t=>e.pullRequests.update(t),comment:t=>e.pullRequests.comment(t),updateComment:t=>e.pullRequests.updateComment(t),submitReview:t=>e.pullRequests.submitReview(t),replyToThread:t=>e.pullRequests.replyToThread(t),setThreadResolution:t=>e.pullRequests.setThreadResolution(t),setReaction:t=>e.pullRequests.setReaction(t),invalidate:t=>e.pullRequests.invalidate(t),reviewerCandidates:t=>e.pullRequests.reviewerCandidates(t),requestReviewers:t=>e.pullRequests.requestReviewers(t)},orchestration:{dispatchCommand:e.orchestration.dispatchCommand,getTurnDiff:e.orchestration.getTurnDiff,getFullThreadDiff:e.orchestration.getFullThreadDiff,subscribeShell:(t,n)=>e.orchestration.subscribeShell(t,n),subscribeThread:(t,n,r)=>e.orchestration.subscribeThread(t,n,r)}}}function EZ(e){if(typeof window>`u`||!e)return;let t=bZ(e);return t?TZ(t.client):void 0}function o0e(e){let t=(0,vi.c)(4),n;t[0]===e?n=t[1]:(n=()=>bZ(e),t[0]=e,t[1]=n);let r=(0,M.useSyncExternalStore)(yZ,n,s0e),i,a;return t[2]===r?a=t[3]:(a=r?TZ(r.client):void 0,t[2]=r,t[3]=a),i=a,i}function s0e(){return null}function c0e(e){let t=EZ(e);if(!t)throw Error(`Environment API not found for environment ${e}`);return t}function DZ(e){let t=e.payload&&typeof e.payload==`object`?e.payload:null,n=t?.plan;if(!Array.isArray(n))return null;let r=[];for(let e of n){if(!e||typeof e!=`object`)continue;let t=e;if(typeof t.step!=`string`)continue;let n=t.status===`completed`||t.status===`inProgress`?t.status:`pending`;r.push({step:t.step,status:n})}return r.length===0?null:{createdAt:e.createdAt,turnId:e.turnId,...t&&`explanation`in t?{explanation:t.explanation}:{},steps:r}}function OZ(e){let t=new Map;return e.map(e=>{let n=t.get(e.step)??0;return t.set(e.step,n+1),{key:`${e.step}:${n}`,step:e}})}function l0e(e,t){let n=new Map,r;for(let e of t){let t=DZ(e),i=Date.parse(e.createdAt);if(!(!t||Number.isNaN(i))){r??=i;for(let{key:e,step:r}of OZ(t.steps)){let t=n.get(e)??{};r.status===`inProgress`&&t.startedAt===void 0&&(t.startedAt=i),r.status===`completed`&&t.completedAt===void 0&&(t.completedAt=i),n.set(e,t)}}}let i=new Map,a=r;for(let[e,t]of[...n.entries()].toSorted((e,t)=>(e[1].completedAt??1/0)-(t[1].completedAt??1/0))){let n=t.completedAt,r=t.startedAt??a;n!==void 0&&(r!==void 0&&n>r&&i.set(e,n-r),a=n)}return{...e,steps:OZ(e.steps).map(({key:e,step:t})=>{if(t.status!==`completed`)return t;let n=i.get(e);return n===void 0?t:Object.assign({},t,{durationMs:n})})}}function kZ(e){let t=jZ(e?.data),n=jZ(t?.item),r=jZ(n?.result),i=jZ(n?.input),a=MZ(e?.itemType),o=MZ(e?.detail),s=[e?.command,n?.command,i?.command,r?.command,t?.command,a===`command_execution`&&o?AZ(o).output:null];for(let e of s){let t=_0e(e);if(t)return{command:t,rawCommand:v0e(e,t)}}return{command:null,rawCommand:null}}function AZ(e){let t=e.trim(),n=/^(?<output>[\s\S]*?)(?:\s*<exited with exit code (?<code>\d+)>)\s*$/i.exec(t);if(!n?.groups)return{output:t.length>0?t:null};let r=Number.parseInt(n.groups.code??``,10),i=n.groups.output?.trim()??``;return{output:i.length>0?i:null,...Number.isInteger(r)?{exitCode:r}:{}}}function jZ(e){return e&&typeof e==`object`?e:null}function MZ(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function NZ(e){let t=e.trim();if(t.startsWith(`'`)&&t.endsWith(`'`)||t.startsWith(`"`)&&t.endsWith(`"`)){let e=t.slice(1,-1).trim();return e.length>0?e:t}return t}function u0e(e){let t=NZ(e);if(t.length===0)return null;let n=t.replace(/\\/g,`/`).split(`/`).at(-1)?.trim()??``;return n.length>0?n.toLowerCase():null}function d0e(e){let t=e.trim();if(t.length===0)return null;if(t.startsWith(`"`)||t.startsWith(`'`)){let e=t.charAt(0),n=t.indexOf(e,1);return n<=0?null:{executable:t.slice(0,n+1),rest:t.slice(n+1).trim()}}let n=t.search(/\s/);return n<0?{executable:t,rest:``}:{executable:t.slice(0,n),rest:t.slice(n).trim()}}var f0e=[{executables:[`pwsh`,`pwsh.exe`,`powershell`,`powershell.exe`],wrapperFlagPattern:/(?:^|\s)-command\s+/i},{executables:[`cmd`,`cmd.exe`],wrapperFlagPattern:/(?:^|\s)\/c\s+/i},{executables:[`bash`,`sh`,`zsh`],wrapperFlagPattern:/(?:^|\s)-(?:l)?c\s+/i}];function p0e(e){return f0e.find(t=>t.executables.includes(e))}function m0e(e,t){let n=t.exec(e);if(!n)return null;let r=e.slice(n.index+n[0].length).trim();if(r.length===0)return null;let i=r[0];if((i===`'`||i===`"`)&&!r.endsWith(i))return null;let a=NZ(r);return a.length>0?a:null}function h0e(e){let t=d0e(e);if(!t||t.rest.length===0)return e;let n=u0e(t.executable);if(!n)return e;let r=p0e(n);return r?m0e(t.rest,r.wrapperFlagPattern)??e:e}function g0e(e){return/[\s"'`]/.test(e)?`"${e.replace(/"/g,`\\"`)}"`:e}function PZ(e){let t=MZ(e);if(t)return t;if(!Array.isArray(e))return null;let n=[];for(let t of e){let e=MZ(t);e!==null&&n.push(e)}return n.length===0?null:n.map(e=>g0e(e)).join(` `)}function _0e(e){let t=PZ(e);return t?h0e(t):null}function v0e(e,t){let n=PZ(e);return!n||t===null||n===t?null:n}function FZ(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:null}function IZ(e){return typeof e==`string`&&e.trim().length>0?e:null}function y0e(e){let t=IZ(e);if(t)return t;let n=Array.isArray(e)?e:null,r=FZ(e)?.content,i=IZ(r);if(i)return i;let a=n??(Array.isArray(r)?r:null);if(!a)return null;let o=a.flatMap(e=>{let t=IZ(e)??IZ(FZ(e)?.text);return t?[t]:[]});return o.length>0?o.join(`
|
|
1019
|
+
`||e===` `||e===`\r`}function wJe(e,t){let n=Math.max(0,Math.min(e.length,Math.floor(t))),r=`${CJe(e[n-1])?``:` `} `,i=e[n]===` `?n+1:n;return{prompt:`${e.slice(0,n)}${r}${e.slice(i)}`,cursor:n+r.length,contextIndex:nq(e.slice(0,n))}}function TJe(e){return e.replaceAll(``,``)}function EJe(e,t){if(t<0)return{prompt:e,cursor:e.length};let n=0;for(let r=0;r<e.length;r+=1)if(e[r]===``){if(n===t)return{prompt:e.slice(0,r)+e.slice(r+1),cursor:r};n+=1}return{prompt:e,cursor:e.length}}var iq=e=>Symbol.iterator in e,aq=e=>`entries`in e,oq=(e,t)=>{let n=e instanceof Map?e:new Map(e.entries()),r=t instanceof Map?t:new Map(t.entries());if(n.size!==r.size)return!1;for(let[e,t]of n)if(!r.has(e)||!Object.is(t,r.get(e)))return!1;return!0},DJe=(e,t)=>{let n=e[Symbol.iterator](),r=t[Symbol.iterator](),i=n.next(),a=r.next();for(;!i.done&&!a.done;){if(!Object.is(i.value,a.value))return!1;i=n.next(),a=r.next()}return!!i.done&&!!a.done};function sq(e,t){return Object.is(e,t)?!0:typeof e!=`object`||!e||typeof t!=`object`||!t||Object.getPrototypeOf(e)!==Object.getPrototypeOf(t)?!1:iq(e)&&iq(t)?aq(e)&&aq(t)?oq(e,t):DJe(e,t):oq({entries:()=>Object.entries(e)},{entries:()=>Object.entries(t)})}function cq(e){let t=M.useRef(void 0);return n=>{let r=e(n);return sq(t.current,r)?t.current:t.current=r}}var lq=[`draftsByThreadKey`,`draftThreadsByThreadKey`,`logicalProjectDraftThreadKeyByLogicalProjectKey`],OJe=[`stickyModelSelectionByProvider`,`stickyActiveProvider`];function kJe(e){let t=uq(e.nextLocal,e.version,!1);if(!t)return e.currentStored??e.nextLocal;if(e.currentStored!==null&&e.canMigrate!==void 0&&!e.canMigrate(e.currentStored,e.version))return e.currentStored;if(e.previousLocal===e.currentStored&&(e.canMigrate??AJe)(e.currentStored,e.version))return e.nextLocal;let n=uq(e.previousLocal,e.version,!0),r=uq(e.currentStored,e.version,!0);if(!r||!n)return e.currentStored??e.nextLocal;let i={...r.state};for(let e of lq)i[e]=PJe(n.state[e],r.state[e],t.state[e]);for(let e of OJe)dq(n.state[e],t.state[e])||(i[e]=t.state[e]);return JSON.stringify({...r,version:e.version,state:i})}function AJe(e,t){if(e===null)return!0;try{let n=JSON.parse(e);return!fq(n)||!fq(n.state)||typeof n.version!=`number`||!Number.isInteger(n.version)?!1:n.version>=1&&n.version<t}catch{return!1}}function uq(e,t,n){if(e===null)return n?{version:t,state:NJe()}:null;let r=jJe(e);return r&&MJe(r,t)?{version:t,state:r.state}:null}function jJe(e){try{let t=JSON.parse(e);return fq(t)?t:null}catch{return null}}function MJe(e,t){let n=e.state;return e.version!==t||!fq(n)?!1:lq.every(e=>fq(n[e]))}function NJe(){return Object.fromEntries(lq.map(e=>[e,{}]))}function PJe(e,t,n){let r={...t};for(let t of new Set([...Object.keys(e),...Object.keys(n)]))dq(e[t],n[t])||(t in n?r[t]=n[t]:delete r[t]);return r}function dq(e,t){return JSON.stringify(e)===JSON.stringify(t)}function fq(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function FJe(e){let t;return{getItem:n=>{let r=e.storage.getItem(n);return t===void 0&&(t=r),r},setItem:(n,r)=>{let i=e.storage.getItem(n),a=kJe({previousLocal:t??null,currentStored:i,nextLocal:r,version:e.version,...e.canMigrate===void 0?{}:{canMigrate:e.canMigrate}});(a!==i||i===r)&&(e.storage.setItem(n,a),t=r)},removeItem:n=>{e.storage.removeItem(n),t=null}}}function pq(e){let t=e.auth.status!==`unauthenticated`||e.auth.provenance?.credentialScope===`proxied`;return e.enabled&&e.installed&&e.status===`ready`&&t&&e.models.length>0}var mq={providers:{codex:!0,claude:!1,cmmd:!0},meteredEgressApproved:{codex:!1,claude:!1,cmmd:!1},allowedWallets:[`personal`],updatedAt:`1970-01-01T00:00:00.000Z`};function hq(e){if(e==null)return mq;let t=e.providers,n=e.meteredEgressApproved,r=e.allowedWallets;return{providers:{...mq.providers,...t},meteredEgressApproved:{...mq.meteredEgressApproved,...n},allowedWallets:Array.isArray(r)&&r.length>0?r:mq.allowedWallets,updatedAt:typeof e.updatedAt==`string`?e.updatedAt:mq.updatedAt}}function IJe(e){switch(e){case`codex`:return`codex`;case`claudeAgent`:return`claude`;case`cmmd`:case`apex`:return`cmmd`;default:return null}}var LJe=[`codex`,`claudeAgent`,`cmmd`];function RJe(e,t){if(t==null)return null;let n=t.providers;if(typeof n!=`object`||!n)return null;let r=n[e];return typeof r==`boolean`?r:null}function gq(e,t){let n=IJe(e);if(n===null)return{offered:!1,reason:`unknown-provider`};let r=RJe(n,t);return r===!0?{offered:!0}:r===!1?{offered:!1,reason:`org-disabled`}:hq(t).providers[n]===!0?{offered:!0}:{offered:!1,reason:`policy-unavailable`}}function _q(e,t){return gq(e,t).offered}function zJe(e,t){return vq(e,t).offered}function vq(e,t){return t===null?{offered:!0}:gq(e,t)}function yq(e,t){return hq(t).allowedWallets.includes(e)}function bq(e){return yq(`personal`,e)}function BJe(e){return e===`claudeAgent`||e===`codex`}function VJe(e,t){return e!==`claudeAgent`||bq(t)||_q(`claudeAgent`,t)}function HJe(e){return e.isDebugDisclosureEnabled||BJe(e.provider)&&bq(e.policy)?!1:!_q(e.provider===`apex`?`apex`:e.provider,e.policy)}function UJe(e){if(!Cq(e)||!Array.isArray(e.accounts))throw Error(`CMMD returned invalid provider accounts.`);return{accounts:e.accounts.filter(WJe)}}function WJe(e){return Cq(e)?KJe(e.provider)&&xq(e.providerAccountId)&&GJe(e)&&Sq(e.accountEmail)&&Sq(e.accountDisplayName)&&Sq(e.planType)&&typeof e.isDefault==`boolean`&&typeof e.needsReconnect==`boolean`:!1}function GJe(e){return(e.credentialTarget===`primary`||e.credentialTarget===`linked`)&&Array.isArray(e.legacyProviderAccountIds)&&e.legacyProviderAccountIds.every(xq)}function KJe(e){return e===`codex`||e===`claudeAgent`}function xq(e){return typeof e==`string`&&e.trim().length>0}function Sq(e){return typeof e==`string`||e===null}function Cq(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function qJe(e){let t=Vi(e);return t.legacyRuntimeId===null?t.shape===`durable-environment`&&typeof e==`string`?e:null:t.legacyRuntimeId}var wq=class extends Error{constructor(e){super(e===`auth`?`Your CMMD session expired. Sign in again to verify Claude runtime readiness.`:`CMMD denied access to verify Claude runtime readiness. Check your organization permissions.`),this.name=`ForgeProviderAccessAuthorityError`}};async function JJe(e){if(!e.enabled||e.readinessTargetId===null)return null;try{return ZJe(await e.load(e.readinessTargetId),e.readinessTargetId)}catch(e){if(e instanceof wn&&(e.kind===`auth`||e.kind===`permission`))throw new wq(e.kind);return null}}var YJe=new Set([`not_connected`,`pending`,`claimed`,`activating`,`applied`,`failed`,`stale`]),XJe=[`generationId`,`nativeVerifiedAt`,`reason`,`lastErrorCode`,`lastErrorMessage`];function ZJe(e,t){if(!Tq(e)||!rYe(e)||!QJe(e,t))throw Error(`CMMD returned invalid Claude runtime readiness.`);return e}function QJe(e,t){if(e.deliveryReceipt===null)return e.nativeExecutable!==!0;if(!Tq(e.deliveryReceipt))return!1;let n=e.deliveryReceipt,r=Tq(n.identity)?n.identity:null;return r!==null&&$Je(n,t)&&nYe(r,e.generationId)}function $Je(e,t){return eYe(e,t)&&tYe(e)}function eYe(e,t){return typeof e.receiptId==`string`&&e.receiptId.trim().length>0&&e.runtimeId===t&&typeof e.machineId==`string`&&e.machineId.trim().length>0&&typeof e.credentialEpoch==`number`&&Number.isSafeInteger(e.credentialEpoch)&&e.credentialEpoch>=0}function tYe(e){return typeof e.issuedAt==`string`&&Number.isFinite(Date.parse(e.issuedAt))&&e.expiresAt===null}function nYe(e,t){return e.kind===`credential_generation`&&e.provider===`claude`&&typeof e.credentialGenerationId==`string`&&e.credentialGenerationId===t}function rYe(e){return typeof e.connected==`boolean`&&YJe.has(String(e.deliveryStatus))&&typeof e.nativeExecutable==`boolean`&&XJe.every(t=>iYe(e[t]))}function iYe(e){return e===null||typeof e==`string`}function Tq(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var Eq={credential_expired_refreshing:`CREDENTIAL_EXPIRED_REFRESHING`,credential_reconnect_required:`CREDENTIAL_RECONNECT_REQUIRED`,credential_not_connected:`CREDENTIAL_RECONNECT_REQUIRED`,credential_generation_not_applied:`CREDENTIAL_GENERATION_NOT_APPLIED`,runtime_unavailable:`RUNTIME_UNAVAILABLE`};function aYe(e){return typeof e!=`string`||!Object.hasOwn(Eq,e)?null:Eq[e]??null}var oYe=new Set([`pending`,`claimed`,`activating`]),sYe=2e3;function Dq(e){return{readinessTargetId:e,dataUpdatedAt:0,consecutiveUnavailableResponses:0,consecutiveFailedResponses:0}}function cYe(e){let t=e.current.readinessTargetId===e.readinessTargetId?e.current:Dq(e.readinessTargetId);return e.dataUpdatedAt===0||e.dataUpdatedAt===t.dataUpdatedAt?t:{readinessTargetId:e.readinessTargetId,dataUpdatedAt:e.dataUpdatedAt,consecutiveUnavailableResponses:e.readinessUnavailable?t.consecutiveUnavailableResponses+1:0,consecutiveFailedResponses:e.deliveryStatus===`failed`?t.consecutiveFailedResponses+1:0}}function lYe(e,t){if(!e.claudeOffered||!e.claudeConnected)return!1;let n=aYe(e.reason);return n===`CREDENTIAL_EXPIRED_REFRESHING`?!0:e.deliveryStatus===`failed`?n!==`CREDENTIAL_RECONNECT_REQUIRED`&&t.consecutiveFailedResponses<16:e.deliveryStatus===null?t.consecutiveUnavailableResponses>0&&t.consecutiveUnavailableResponses<3:oYe.has(e.deliveryStatus)}function Oq(e){return e.credentialMode===`runtime`?e.provider&&pq(e.provider)?{eligible:!0}:{eligible:!1,reason:`runtime-unavailable`}:e.access.status===`loading`?{eligible:!1,reason:`access-loading`}:e.access.status===`error`?{eligible:!1,reason:`access-error`}:uYe({provider:e.provider,providerKind:e.providerKind,policy:e.access.policy,personalConnections:e.access.personalConnections,personalReconnectRequired:e.access.personalReconnectRequired,claudeRuntimeReadiness:e.access.claudeRuntimeReadiness})}function uYe(e){return!e.provider||!pq(e.provider)?{eligible:!1,reason:`runtime-unavailable`}:e.policy===null?{eligible:!1,reason:`access-error`}:_q(e.providerKind,e.policy)?Aq({providerKind:e.providerKind,policy:e.policy,personalConnections:e.personalConnections,personalReconnectRequired:e.personalReconnectRequired,claudeRuntimeReadiness:e.claudeRuntimeReadiness,stage:`live-runtime`}):{eligible:!1,reason:`not-offered`}}function kq(e){return e.access.status===`loading`?{eligible:!1,reason:`access-loading`}:e.access.status===`error`||e.access.policy===null?{eligible:!1,reason:`access-error`}:_q(e.providerKind,e.access.policy)?Aq({providerKind:e.providerKind,policy:e.access.policy,personalConnections:e.access.personalConnections,personalReconnectRequired:e.access.personalReconnectRequired,claudeRuntimeReadiness:e.access.claudeRuntimeReadiness,stage:`provisioning`}):{eligible:!1,reason:`not-offered`}}function Aq(e){return e.providerKind===`cmmd`||e.providerKind===`apex`?{eligible:!0}:e.providerKind!==`codex`&&e.providerKind!==`claudeAgent`?{eligible:!1,reason:`not-offered`}:dYe({providerKind:e.providerKind,personalConnections:e.personalConnections,personalReconnectRequired:e.personalReconnectRequired,claudeRuntimeReadiness:e.claudeRuntimeReadiness,workspaceWalletAllowed:yq(`workspace`,e.policy),stage:e.stage})}function dYe(e){return fYe(e.workspaceWalletAllowed)?{eligible:!0}:pYe(e.providerKind,e.personalReconnectRequired)?{eligible:!1,reason:`personal-credential-reconnect-required`}:mYe(e.providerKind,e.personalConnections)?_Ye(e)?{eligible:!1,reason:`environment-not-running`}:hYe(e)?{eligible:!0}:{eligible:!1,reason:`native-runtime-not-ready`}:{eligible:!1,reason:`personal-credential-required`}}function fYe(e){return e&&!1}function pYe(e,t){return e===`codex`&&t?.codex===!0}function mYe(e,t){return t?.[e]===!0}function hYe(e){return e.providerKind!==`claudeAgent`||e.stage===`provisioning`||vYe(e.claudeRuntimeReadiness)}var gYe=`runtime_unavailable`;function _Ye(e){return e.providerKind!==`claudeAgent`||e.stage===`provisioning`?!1:e.claudeRuntimeReadiness?.reason===gYe}function vYe(e){if(!yYe(e))return!1;let t=e.deliveryReceipt?.identity;return t?.kind===`credential_generation`&&t.provider===`claude`&&t.credentialGenerationId===e.generationId}function yYe(e){return e?.connected===!0&&e.nativeExecutable===!0&&typeof e.generationId==`string`&&e.generationId.trim().length>0}function bYe(e){if(e.status!==`ready`)return!1;if(e.policy===null)return!0;let t=e.policy.providers,n=yq(`workspace`,e.policy);return t.cmmd?!0:yq(`personal`,e.policy)||n?t.codex&&e.personalConnections?.codex===!0||t.claude&&e.personalConnections?.claudeAgent===!0:!1}var xYe={providers:{codex:!1,claude:!1,cmmd:!1},meteredEgressApproved:{codex:!1,claude:!1,cmmd:!1},allowedWallets:[`personal`],updatedAt:`1970-01-01T00:00:00.000Z`},jq=[`cmmd`,`forge-provider-access`],SYe=sYe;function CYe(e,t){return!(t instanceof wq)&&e<3}function wYe(e,t=null){return[...jq,e,t]}async function TYe(e){e.queryClient.setQueriesData({queryKey:jq},t=>EYe(t,e.provider,e.connected)),await e.queryClient.invalidateQueries({queryKey:jq,refetchType:`all`})}function EYe(e,t,n){return e?.status!==`ready`||e.personalConnections===null?e:{...e,personalConnections:{...e.personalConnections,[t]:n},...t===`codex`?{personalReconnectRequired:{codex:!1}}:{},...t===`claudeAgent`?{claudeRuntimeReadiness:null}:{}}}async function Mq(e,t=null){if(e===`runtime`)return{status:`ready`,policy:null,personalConnections:null,providerAccounts:[],claudeRuntimeReadiness:null};let n=hH(),r=MYe(await n.getOrgProviderPolicy());yq(`workspace`,r);let[i,a,o,s]=await Promise.all([kYe(()=>n.getProviderAccounts()),Nq({enabled:r.providers.codex,load:()=>n.getUserCodexCredential(),provider:`codex`}),Nq({enabled:r.providers.claude,load:()=>n.getUserClaudeCredential(),provider:`claudeAgent`}),JJe({enabled:r.providers.claude,readinessTargetId:t,load:e=>n.getClaudeRuntimeReadiness(e)})]),c=i.accounts.filter(e=>e.provider===`codex`?r.providers.codex:r.providers.claude),l=DYe(c),u=l.codex||a.connected,d=l.claudeAgent||o.connected,f=c.some(e=>e.provider===`codex`&&e.needsReconnect)||a.reconnectRequired;return{status:`ready`,policy:r,personalConnections:{codex:u,claudeAgent:d},providerAccounts:c,...f?{personalReconnectRequired:{codex:!0}}:{},claudeRuntimeReadiness:s}}function DYe(e){return{codex:e.some(e=>e.provider===`codex`&&!e.needsReconnect),claudeAgent:e.some(e=>e.provider===`claudeAgent`&&!e.needsReconnect)}}function OYe(e,t){if(e.status!==`ready`)return;let n=e.providerAccounts??[];return(n.find(e=>e.provider===t&&e.isDefault&&!e.needsReconnect)??n.find(e=>e.provider===t&&!e.needsReconnect))?.providerAccountId}async function kYe(e){try{return UJe(await e())}catch{return{accounts:[]}}}async function Nq(e){if(!e.enabled)return{connected:!1,reconnectRequired:!1};try{return FYe(await e.load(),e.provider)}catch{return{connected:!1,reconnectRequired:!1}}}function AYe(e){let t=e?.policy?.providers.claude===!0,n=e?.personalConnections?.claudeAgent===!0;return{claudeOffered:t,claudeConnected:n,deliveryStatus:e?.claudeRuntimeReadiness?.deliveryStatus??null,reason:e?.claudeRuntimeReadiness?.reason??null,readinessUnavailable:t&&n&&e?.claudeRuntimeReadiness===null}}function jYe(e){let t=(0,vi.c)(21),n;t[0]!==e.environmentId||t[1]!==e.runtimeId?(n=e.environmentId==null?e.runtimeId??null:qJe(e.environmentId),t[0]=e.environmentId,t[1]=e.runtimeId,t[2]=n):n=t[2];let r=n,i;t[3]===r?i=t[4]:(i=Dq(r),t[3]=r,t[4]=i);let a=(0,M.useRef)(i),o;t[5]!==e.credentialMode||t[6]!==r?(o=wYe(e.credentialMode,r),t[5]=e.credentialMode,t[6]=r,t[7]=o):o=t[7];let s;t[8]===r?s=t[9]:(s=()=>Mq(`cmmd-cloud`,r),t[8]=r,t[9]=s);let c=e.enabled&&e.credentialMode===`cmmd-cloud`,l;t[10]===r?l=t[11]:(l=e=>{if(e.state.error instanceof wq)return!1;let t=AYe(e.state.data);return a.current=cYe({current:a.current,readinessTargetId:r,dataUpdatedAt:e.state.dataUpdatedAt,readinessUnavailable:r!==null&&t.readinessUnavailable,deliveryStatus:t.deliveryStatus}),r!==null&&lYe(t,a.current)?SYe:!1},t[10]=r,t[11]=l);let u;t[12]!==o||t[13]!==s||t[14]!==c||t[15]!==l?(u={queryKey:o,queryFn:s,enabled:c,retry:CYe,staleTime:3e4,refetchInterval:l},t[12]=o,t[13]=s,t[14]=c,t[15]=l,t[16]=u):u=t[16];let d=Rr(u);if(!e.enabled){let e;return t[17]===Symbol.for(`react.memo_cache_sentinel`)?(e={status:`loading`},t[17]=e):e=t[17],e}if(e.credentialMode===`runtime`){let e;return t[18]===Symbol.for(`react.memo_cache_sentinel`)?(e={status:`ready`,policy:null,personalConnections:null,providerAccounts:[],claudeRuntimeReadiness:null},t[18]=e):e=t[18],e}if(d.isPending){let e;return t[19]===Symbol.for(`react.memo_cache_sentinel`)?(e={status:`loading`},t[19]=e):e=t[19],e}if(d.isError||!d.data){let e;return t[20]===Symbol.for(`react.memo_cache_sentinel`)?(e={status:`error`},t[20]=e):e=t[20],e}return d.data}function MYe(e){if(!Fq(e)||!Fq(e.providers))throw Error(`CMMD returned an invalid organization provider policy.`);let{providers:t,meteredEgressApproved:n,allowedWallets:r,updatedAt:i}=e,a=PYe(r,i);if(!Pq(t)||a===null)throw Error(`CMMD returned an invalid organization provider policy.`);return{providers:{codex:t.codex,claude:t.claude,cmmd:t.cmmd},meteredEgressApproved:NYe(n),allowedWallets:[...new Set(a.allowedWallets)],updatedAt:a.updatedAt}}function NYe(e){return Fq(e)&&Pq(e)?{codex:e.codex,claude:e.claude,cmmd:e.cmmd}:{codex:!1,claude:!1,cmmd:!1}}function Pq(e){return typeof e.codex==`boolean`&&typeof e.claude==`boolean`&&typeof e.cmmd==`boolean`}function PYe(e,t){return Array.isArray(e)&&e.length>0&&e.every(IYe)&&typeof t==`string`&&t.trim().length>0?{allowedWallets:e,updatedAt:t}:null}function FYe(e,t){if(!Fq(e)||typeof e.connected!=`boolean`)throw Error(`CMMD returned an invalid ${t} connection state.`);if(!e.connected)return{connected:!1,reconnectRequired:!1};if(t===`codex`){if(typeof e.needsReconnect!=`boolean`)throw Error(`CMMD returned an invalid Codex connection state.`);return{connected:!e.needsReconnect,reconnectRequired:e.needsReconnect}}if(typeof e.generationId!=`string`||e.generationId.trim().length===0)throw Error(`CMMD returned an invalid Claude connection state.`);return{connected:!0,reconnectRequired:!1}}function IYe(e){return e===`personal`||e===`workspace`}function Fq(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function LYe(e){return e.status===`ready`?e.policy:xYe}var Iq=[`cursor`,`opencode`,`gemini`],Lq={state:`usable`},Rq={state:`withheld`,reason:`unbuilt`},zq={state:`withheld`,reason:`not-on-this-environment`};function Bq(e){return Iq.includes(e)}function Vq(e){return e===`gemini`?null:e}function Hq(e,t){if(e===void 0)return t?zq:Lq;if(e.availability===`unavailable`){let t=e.unavailableReason??`not-on-this-environment`,n=t===`not-on-this-environment`&&e.availabilityCheck===`could-not-check`?`could-not-check`:e.unavailableDetail;return n===void 0?{state:`withheld`,reason:t}:{state:`withheld`,reason:t,detail:n}}return e.availability===`available`||pq(e)||RYe(e)?Lq:zq}function RYe(e){return e.installed&&e.auth.status===`unauthenticated`&&e.auth.provenance?.credentialScope!==`proxied`}function zYe(e,t){let n=kq({providerKind:e,access:t});return n.eligible?null:BYe(n.reason)}function BYe(e){switch(e){case`access-loading`:return{state:`unresolved`,cause:`loading`};case`access-error`:return{state:`unresolved`,cause:`error`};case`not-offered`:return{state:`withheld`,reason:`not-offered`};case`personal-credential-required`:return{state:`withheld`,reason:`not-usable`,detail:`no-connection`};case`personal-credential-reconnect-required`:return{state:`withheld`,reason:`not-usable`,detail:`reconnect-required`};case`native-runtime-not-ready`:return{state:`withheld`,reason:`not-usable`,detail:`delivery-pending`};case`environment-not-running`:return{state:`withheld`,reason:`not-usable`,detail:`environment-not-running`};case`runtime-unavailable`:return null}}function VYe(e){if(Bq(e.provider))return{pick:Rq,run:Rq};let t=Vq(e.provider);return t===null?{pick:Rq,run:Rq}:Uq({...e,providerKind:t})}function Uq(e){return{pick:Gq(e,`pick`),run:Gq(e,`run`)}}function HYe(e){return Gq(e,`pick`)}function Wq(e){return e.providers.filter(t=>Gq({providerKind:t.provider,snapshot:t,access:e.access,credentialMode:e.credentialMode,hasLiveInventory:e.hasLiveInventory},`run`).state===`usable`)}function Gq(e,t){let{providerKind:n}=e;if(e.snapshot?.unavailableReason===`unbuilt`)return Rq;if(e.credentialMode===`runtime`)return Kq({...e,providerKind:n},t);if(e.access.status!==`ready`)return{state:`unresolved`,cause:e.access.status};if(!vq(n,e.access.policy).offered)return{state:`withheld`,reason:`not-offered`};let r=zYe(n,e.access);return r===null?Kq({...e,providerKind:n},t):r}function Kq(e,t){let n=Oq({provider:e.snapshot,providerKind:e.providerKind,access:e.access,credentialMode:e.credentialMode});if(!n.eligible&&n.reason===`environment-not-running`)return{state:`withheld`,reason:`not-usable`,detail:`environment-not-running`};if(!n.eligible&&n.reason===`native-runtime-not-ready`)return{state:`withheld`,reason:`not-usable`,detail:`delivery-pending`};let r=Hq(e.snapshot,e.hasLiveInventory);return!n.eligible&&n.reason===`runtime-unavailable`&&t===`run`?UYe(r,e.hasLiveInventory)?Lq:zq:r}function UYe(e,t){return e.state===`withheld`&&e.reason===`not-on-this-environment`&&(e.detail===`could-not-check`||!t)}var WYe={reasoningEffortLevels:[],supportsFastMode:!1,supportsThinkingToggle:!1,contextWindowOptions:[],promptInjectedEffortLevels:[]},qq=[`codex`,`claudeAgent`,`apex`];function Jq(e){for(let t of qq){let n=e.find(e=>e.provider===t);if(n&&Xq(n))return t}return e.find(Xq)?.provider??null}function Yq(e,t){return e.find(e=>e.provider===t)?.models??[]}function Xq(e){return pq(e)}function Zq(e,t){let n=t??Jq(e)??`codex`,r=e.find(e=>e.provider===n);if(r&&Xq(r)||n===`codex`)return n;for(let t of qq){let n=e.find(e=>e.provider===t);if(n&&Xq(n))return t}return`codex`}function Qq(e){return e.providers.filter(t=>HYe({providerKind:t.provider,snapshot:t,access:e.access,credentialMode:e.credentialMode,hasLiveInventory:!0}).state===`usable`)}function $q(e,t,n,r){let i=Qq({providers:e,access:n,credentialMode:r});return t&&i.some(e=>e.provider===t)?t:Jq(i)}function GYe(e,t,n,r){return t==null?$q(e,null,n,r):Wq({providers:e,access:n,credentialMode:r,hasLiveInventory:!0}).some(e=>e.provider===t)?t:null}function eJ(e,t,n){let r=YW(t,n);return e.find(e=>e.slug===r)?.capabilities??WYe}function tJ(e,t,n){let r=Yq(e,t).filter(e=>!e.isLegacy);return r.find(e=>e.slug===n)?.slug??r.find(e=>e.isDefault)?.slug??r.find(e=>e.slug===dn[t])?.slug??r.find(e=>!e.isCustom)?.slug??r[0]?.slug??dn[t]}function nJ(e){let{provider:t,model:n,models:r,prompt:i,modelOptions:a}=e,o=eJ(r,n,t),s=a?.[t],c=GW(o,s?`effort`in s?s.effort:`reasoningEffort`in s?s.reasoningEffort:null:null)??null,l=t===`codex`?pKe(o,s):mKe(o,s),u=o.promptInjectedEffortLevels.length>0&&JW(i);return{provider:t,promptEffort:c,modelOptionsForDispatch:l,...u?{composerFrameClassName:`ultrathink-frame`}:{},...u?{composerSurfaceClassName:`shadow-[0_0_0_1px_rgba(255,255,255,0.04)_inset]`}:{},...u?{modelPickerIconClassName:`ultrathink-chroma`}:{}}}function rJ(e,t,n,r){return Yq(t,n).map(({slug:e,name:t,isCustom:n,isDefault:r,isLegacy:i})=>({slug:e,name:t,isCustom:n,isDefault:r,isLegacy:i}))}function iJ(e,t,n,r,i){let a=XW(e,r,rJ(t,n,e,r));if(a&&!ZW(a,e))return a;let o=aJ(n,e,i),s=XW(o,r,rJ(t,n,o,r))??tJ(n,o);return e&&ZW(s,e)?tJ(n,e):s}function aJ(e,t,n){return!t||!_q(t,n)?Zq(e,`codex`):Zq(e,t)}function KYe(e,t,n,r){return{codex:rJ(e,t,`codex`,n===`codex`?r:void 0),claudeAgent:rJ(e,t,`claudeAgent`,n===`claudeAgent`?r:void 0),ollama:rJ(e,t,`ollama`,n===`ollama`?r:void 0),cmmd:rJ(e,t,`cmmd`,n===`cmmd`?r:void 0),apex:rJ(e,t,`apex`,n===`apex`?r:void 0),cursor:rJ(e,t,`cursor`,n===`cursor`?r:void 0),opencode:rJ(e,t,`opencode`,n===`opencode`?r:void 0)}}function qYe(e,t,n){let r=e.textGenerationModelSelection??{provider:`codex`,model:jte.codex},i=aJ(t,r.provider,n),a=iJ(i,e,t,i===r.provider?r.model:null,n),{modelOptionsForDispatch:o}=nJ({provider:i,model:a,models:Yq(t,i),prompt:``,modelOptions:{[i]:i===r.provider?r.options:void 0}});return{provider:i,model:a,...o?{options:o}:{}}}function oJ(e){return e?.options?{[e.provider]:e.options}:null}function JYe(e){if(!e)return null;let t={};for(let[n,r]of Object.entries(e))r?.options&&(t[n]=r.options);return Object.keys(t).length>0?t:null}function YYe(e){if(e.activeSelection&&`providerAccountId`in e.activeSelection)return e.activeSelection.providerAccountId;for(let t of e.candidates)if(t?.provider===e.selectedProvider&&`providerAccountId`in t)return t.providerAccountId}function XYe(e){let t=t=>t!==void 0&&ZW(t,e.selectedProvider)?void 0:t,n=t(e.threadModelSelection?.provider===e.selectedProvider?e.threadModelSelection.model:void 0),r=t(e.projectModelSelection?.provider===e.selectedProvider?e.projectModelSelection.model:void 0),i=YW(n??r,e.selectedProvider)??tJ(e.providers,e.selectedProvider),a=e.draft?.modelSelectionByProvider?.[e.selectedProvider],o=YYe({activeSelection:a,selectedProvider:e.selectedProvider,candidates:[e.threadModelSelection,e.projectModelSelection]}),s=t(a?.model),c=s?iJ(e.selectedProvider,e.settings,e.providers,s):i,l=JYe(e.draft?.modelSelectionByProvider)??oJ(e.threadModelSelection)??oJ(e.projectModelSelection)??null;return{selectedModel:c,...o?{selectedProviderAccountId:o}:{},modelOptions:l}}var sJ=pn({id:k,name:k,mimeType:k,sizeBytes:qt,dataUrl:k}),cJ=pn({id:k,name:k,mimeType:k,sizeBytes:qt}),lJ=pn({id:k,threadId:At,createdAt:k,terminalId:k,terminalLabel:k,lineStart:qt,lineEnd:qt}),ZYe=pn({prompt:k,attachments:sn(sJ),files:Tt(sn(cJ)),terminalContexts:sn(lJ),startedAt:k,commandId:Tt(yt),messageId:Tt(ht),modelSelection:Tt(tn),runtimeMode:Tt(Kt),interactionMode:Tt(ln),executionIntent:Tt(pn({runtimeId:k,intentId:Tt(k)}))});function uJ(e,t){return Array.isArray(e)?e.flatMap(e=>t(e)??[]):[]}function QYe(e){if(!(!e||typeof e.runtimeId!=`string`))return{runtimeId:e.runtimeId,...typeof e.intentId==`string`?{intentId:e.intentId}:{}}}function $Ye(e){return{...typeof e.commandId==`string`?{commandId:yt.make(e.commandId)}:{},...typeof e.messageId==`string`?{messageId:ht.make(e.messageId)}:{}}}function eXe(e,t){let n=t.modelSelection(e.modelSelection);return{...n?{modelSelection:n}:{},...t.runtimeMode(e.runtimeMode)?{runtimeMode:e.runtimeMode}:{},...e.interactionMode==="default"||e.interactionMode===`plan`?{interactionMode:e.interactionMode}:{}}}function tXe(e,t){if(!e||typeof e!=`object`)return null;let n=e;if(typeof n.prompt!=`string`||typeof n.startedAt!=`string`)return null;let r=QYe(n.executionIntent);return{prompt:n.prompt,attachments:uJ(n.attachments,t.attachment),files:uJ(n.files,t.file),terminalContexts:uJ(n.terminalContexts,t.terminalContext),startedAt:n.startedAt,...$Ye(n),...eXe(n,t),...r?{executionIntent:r}:{}}}function nXe(e){return{id:e.id,threadId:e.threadId,createdAt:e.createdAt,terminalId:e.terminalId,terminalLabel:e.terminalLabel,lineStart:e.lineStart,lineEnd:e.lineEnd}}function rXe(e){return{prompt:e.prompt,attachments:[...e.attachments],files:[...e.files],terminalContexts:e.terminalContexts.map(nXe),startedAt:e.startedAt,...e.commandId?{commandId:e.commandId}:{},...e.messageId?{messageId:e.messageId}:{},...e.modelSelection?{modelSelection:e.modelSelection}:{},...e.runtimeMode?{runtimeMode:e.runtimeMode}:{},...e.interactionMode?{interactionMode:e.interactionMode}:{},...e.executionIntent?{executionIntent:e.executionIntent}:{}}}function iXe(e){return e?{...e,attachments:[...e.attachments],files:[...e.files??[]],terminalContexts:e.terminalContexts.map(e=>({...e,text:``}))}:null}function aXe(e,t,n,r){let i=e[t];if(i?.stagedSubmission)return null;let a=sXe(i??oXe(),r,n);return a?{previousDraft:i,restoredDraft:a,drafts:{...e,[t]:a}}:null}function oXe(){return{prompt:``,images:[],files:[],nonPersistedImageIds:[],persistedAttachments:[],terminalContexts:[],modelSelectionByProvider:{},activeProvider:null,runtimeMode:null,interactionMode:null,stagedSubmission:null}}function dJ(e){return`${e.mimeType}\u0000${e.sizeBytes}\u0000${e.name}`}function fJ(e){return`${e.terminalId}\u0000${e.lineStart}\u0000${e.lineEnd}`}function pJ(e,t){let n=t.terminalId.trim(),r=t.terminalLabel.trim(),i=QK(t.text);if(!n||!r)return null;let a=Math.max(1,Math.floor(t.lineStart));return{...t,threadId:e,terminalId:n,terminalLabel:r,lineStart:a,lineEnd:Math.max(a,Math.floor(t.lineEnd)),text:i}}function mJ(e,t){let n=new Set,r=new Set,i=[];for(let a of t){let t=pJ(e,a);if(!t)continue;let o=fJ(t);n.has(t.id)||r.has(o)||(i.push(t),n.add(t.id),r.add(o))}return i}function sXe(e,t,n){let r=lXe(e,t);if(!r)return null;let i=cXe(e.files??[],t.files);if(r.images.length+i.length>8)return null;let a=uXe(e,t,n),o=[e.prompt,t.prompt].filter(e=>e.length>0).join(`
|
|
1020
|
+
`);return{...e,prompt:rq(o,a.contexts.length),images:r.images,files:i,persistedAttachments:r.attachments,terminalContexts:a.contexts,stashTerminalContexts:[...e.stashTerminalContexts??[],...a.restoredSnapshots]}}function cXe(e,t){let n=new Set(e.map(e=>e.id));return[...e,...t.filter(e=>!n.has(e.id))]}function lXe(e,t){let n=new Map(t.attachments.map(e=>[e.id,e])),r=[...e.images],i=e.persistedAttachments.filter(t=>e.images.some(e=>e.id===t.id)),a=new Set(r.map(e=>e.id)),o=new Set(r.map(dJ));for(let e of t.images){let t=n.get(e.id);if(!t)return null;let s=dJ(e);a.has(e.id)||o.has(s)||(r.push(e),i.push(t),a.add(e.id),o.add(s))}return r.length>8?null:{images:r,attachments:i}}function uXe(e,t,n){let r=[...e.terminalContexts],i=new Set(r.map(e=>e.id)),a=new Set(r.map(fJ)),o=[];for(let e of t.terminalContexts){let t=pJ(n,e);!t||i.has(t.id)||a.has(fJ(t))||(r.push(t),o.push(t),i.add(t.id),a.add(fJ(t)))}return{contexts:r,restoredSnapshots:o}}function dXe(e,t){return e.prompt===t.prompt&&JSON.stringify(e.attachments)===JSON.stringify(t.persistedAttachments)&&JSON.stringify(e.files??[])===JSON.stringify((t.files??[]).map(({file:e,type:t,...n})=>n))&&JSON.stringify(e.terminalContexts??[])===JSON.stringify(t.terminalContexts.map(({text:e,...t})=>t))&&JSON.stringify(e.stashTerminalContexts??[])===JSON.stringify(t.stashTerminalContexts??[])}function hJ(e){typeof URL<`u`&&e.startsWith(`blob:`)&&URL.revokeObjectURL(e)}function gJ(e){if(!e||typeof e!=`object`)return null;let{id:t,name:n,mimeType:r,sizeBytes:i,dataUrl:a}=e;return typeof t!=`string`||typeof n!=`string`||typeof r!=`string`||typeof i!=`number`||!Number.isFinite(i)||typeof a!=`string`||t.length===0||a.length===0?null:{id:t,name:n,mimeType:r,sizeBytes:i,dataUrl:a}}function _J(e){if(!e||typeof e!=`object`)return null;let{id:t,name:n,mimeType:r,sizeBytes:i}=e;return typeof t!=`string`||t.length===0||typeof n!=`string`||typeof r!=`string`||typeof i!=`number`||!Number.isSafeInteger(i)||i<0?null:{id:t,name:n,mimeType:r,sizeBytes:i}}async function fXe(e,t){let n=await Promise.all(e.map(async e=>{let n=await t.read(e);return{...e,type:`file`,file:n}}));return n.length===e.length?n:null}function pXe(e){let t=mXe(e.dataUrl,e.mimeType);return t?new File([t.content],e.name,{type:t.mimeType}):null}function mXe(e,t){let n=e.indexOf(`,`),r=n===-1?e:e.slice(0,n),i=n===-1?``:e.slice(n+1);if(i.length===0)return null;try{return r.includes(`;base64`)?{content:_Xe(i),mimeType:t}:{content:gXe(i),mimeType:hXe(r,t)}}catch{return null}}function hXe(e,t){return!e.startsWith(`data:`)||!e.includes(`;`)?t:e.slice(5,e.indexOf(`;`))||t}function gXe(e){return decodeURIComponent(e)}function _Xe(e){let t=atob(e),n=new Uint8Array(new ArrayBuffer(t.length));for(let e=0;e<t.length;e+=1)n[e]=t.charCodeAt(e);return n}function vJ(e){return e.flatMap(e=>{let t=pXe(e);return t?[{type:`image`,id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,previewUrl:e.dataUrl,file:t}]:[]})}function vXe(e){return{prompt:e.prompt,images:[...e.images],files:[...e.files??[]],persistedAttachments:[...e.persistedAttachments],terminalContexts:[...e.terminalContexts]}}function yJ({file:e,previewUrl:t,...n}){return n}function yXe(e,t){return e.prompt===t.prompt&&JSON.stringify(e.images.map(yJ))===JSON.stringify(t.images.map(yJ))&&JSON.stringify((e.files??[]).map(({file:e,...t})=>t))===JSON.stringify(t.files.map(({file:e,...t})=>t))&&JSON.stringify(e.persistedAttachments)===JSON.stringify(t.persistedAttachments)&&JSON.stringify(e.terminalContexts)===JSON.stringify(t.terminalContexts)}function bJ(e){let{lastGeneratedPullRequestPrompt:t,...n}=e;return{...n,prompt:``,images:[],files:[],nonPersistedImageIds:[],persistedAttachments:[],terminalContexts:[],stashTerminalContexts:[]}}function xJ(e){return e.prompt.length===0&&e.lastGeneratedPullRequestPrompt===void 0&&e.images.length===0&&(e.files?.length??0)===0&&e.persistedAttachments.length===0&&e.terminalContexts.length===0&&Object.keys(e.modelSelectionByProvider).length===0&&e.activeProvider===null&&e.runtimeMode===null&&e.interactionMode===null&&e.stagedSubmission==null}function SJ(e){switch(e){case`codex`:case`claudeAgent`:case`ollama`:case`cmmd`:case`apex`:case`cursor`:case`opencode`:return e;default:return null}}function CJ(e){return Jt.some(t=>t===e)}function bXe(e){return Vte.some(t=>t===e)}function wJ(e,t,n){let r=e&&typeof e==`object`?e:null,i=r?.codex&&typeof r.codex==`object`?r.codex:null,a=r?.claudeAgent&&typeof r.claudeAgent==`object`?r.claudeAgent:null,o=CJ(i?.reasoningEffort)?i.reasoningEffort:t===`codex`&&CJ(n?.effort)?n.effort:void 0,s=i?.fastMode===!0?!0:i?.fastMode===!1?!1:t===`codex`&&n?.codexFastMode===!0||typeof n?.serviceTier==`string`&&n.serviceTier===`fast`||void 0,c=o!==void 0||s!==void 0?{...o===void 0?{}:{reasoningEffort:o},...s===void 0?{}:{fastMode:s}}:void 0,l=a?.thinking===!0||a?.thinking!==!1&&void 0,u=bXe(a?.effort)?a.effort:void 0,d=a?.fastMode===!0||a?.fastMode!==!1&&void 0,f=typeof a?.contextWindow==`string`&&a.contextWindow.length>0?a.contextWindow:void 0,p=l!==void 0||u!==void 0||d!==void 0||f!==void 0?{...l===void 0?{}:{thinking:l},...u===void 0?{}:{effort:u},...d===void 0?{}:{fastMode:d},...f===void 0?{}:{contextWindow:f}}:void 0;return!c&&!p?null:{...c?{codex:c}:{},...p?{claudeAgent:p}:{}}}function TJ(e,t){let n=e&&typeof e==`object`?e:null,r=SJ(n?.provider??t?.provider);if(r===null)return null;let i=n?.model??t?.model;if(typeof i!=`string`)return null;let a=YW(i,r);if(!a)return null;let o=wJ(n?.options?{[r]:n.options}:t?.modelOptions,r,r===`codex`?t?.legacyCodex:void 0),s=r===`codex`?o?.codex:o?.claudeAgent,c=n?.providerAccountId,l=typeof c==`string`&&c.trim().length>0?c.trim():void 0;return{provider:r,model:a,...l?{providerAccountId:l}:{},...s?{options:s}:{}}}function EJ(e,t){if(e===null)return null;let n=t?.[e.provider];return{provider:e.provider,model:e.model,...`providerAccountId`in e&&e.providerAccountId?{providerAccountId:e.providerAccountId}:{},...n?{options:n}:{}}}function DJ(e,t){return e?.options===void 0?wJ(t):xXe(wJ(t),e.provider,e.options)}function xXe(e,t,n){let{[t]:r,...i}=e??{},a=wJ({[t]:n},t);return wJ({...i,...a||{}})}function OJ(e,t){let n={};if(t)for(let r of[`codex`,`claudeAgent`]){let i=t[r];i&&Object.keys(i).length>0&&(n[r]={provider:r,model:e?.provider===r?e.model:dn[r],options:i})}return e&&(n[e.provider]=e),n}var kJ=`forge:composer-drafts:v1`,AJ=5,SXe=rn([`local`,`worktree`]),jJ=_te(Kt),MJ=Oqe(FJe({storage:typeof localStorage<`u`?localStorage:aK(),version:AJ,canMigrate:EXe}),300);typeof window<`u`&&typeof window.addEventListener==`function`&&window.addEventListener(`beforeunload`,()=>{MJ.flush()});var CXe=pn({prompt:k,lastGeneratedPullRequestPrompt:Tt(k),attachments:sn(sJ),files:Tt(sn(cJ)),terminalContexts:Tt(sn(lJ)),stashTerminalContexts:Tt(sn(pn({...lJ.fields,text:k}))),modelSelectionByProvider:Tt(Vt(Wt,Tt(tn))),activeProvider:Tt(Yt(Wt)),runtimeMode:Tt(Kt),interactionMode:Tt(ln),stagedSubmission:Tt(ZYe)});pn({effort:Tt(rn(Jt)),codexFastMode:Tt(Ut),serviceTier:Tt(k)}),pn({provider:Tt(Wt),model:Tt(k),modelOptions:Tt(Yt(_t))}),pn({stickyProvider:Tt(Wt),stickyModel:Tt(k),stickyModelOptions:Tt(Yt(_t))});var wXe=pn({threadId:At,environmentId:k,projectId:Zt,logicalProjectKey:Tt(k),createdAt:k,runtimeMode:Kt,interactionMode:ln,branch:Yt(k),worktreePath:Yt(k),envMode:SXe,promotedTo:Tt(Yt(pn({environmentId:k,threadId:k}))),anchorKind:Tt(yte),anchorCmmdId:Tt(Yt(k)),linkedPullRequest:Tt(Yt(Hte))}),TXe=pn({draftsByThreadKey:Vt(k,CXe),draftThreadsByThreadKey:Vt(k,wXe),logicalProjectDraftThreadKeyByLogicalProjectKey:Vt(k,k),stickyModelSelectionByProvider:Tt(Vt(Wt,Tt(tn))),stickyActiveProvider:Tt(Yt(Wt))}),NJ=pn({version:qt,state:TXe}),PJ=Qt(NJ);function EXe(e,t){if(e===null)return!0;try{let n=JSON.parse(e);if(!n||typeof n!=`object`)return!1;let r=n;return r.version===t?(PJ(n),!0):typeof r.version==`number`&&Number.isInteger(r.version)&&r.version>=1&&r.version<t&&r.state!==null&&typeof r.state==`object`}catch{return!1}}function DXe(e){if(e===null)return new Set;try{let t=PJ(JSON.parse(e));if(t.version!==AJ)return null;let n=new Set;for(let e of Object.values(t.state.draftsByThreadKey)){for(let t of e.files??[])n.add(t.id);for(let t of e.stagedSubmission?.files??[])n.add(t.id)}return n}catch{return null}}function OXe(){MJ.flush()}var FJ=Object.freeze({draftsByThreadKey:{},draftThreadsByThreadKey:{},logicalProjectDraftThreadKeyByLogicalProjectKey:{},stickyModelSelectionByProvider:{},stickyActiveProvider:null}),IJ=[],kXe=[],LJ=[],RJ=[],AXe=[];Object.freeze(IJ),Object.freeze(LJ),Object.freeze(RJ);var zJ=Object.freeze({}),jXe=Object.freeze({activeProvider:null,modelSelectionByProvider:zJ}),MXe=Object.freeze({prompt:``,images:IJ,files:kXe,nonPersistedImageIds:LJ,persistedAttachments:RJ,terminalContexts:AXe,modelSelectionByProvider:zJ,activeProvider:null,runtimeMode:null,interactionMode:null,stagedSubmission:null});function BJ(){return{prompt:``,images:[],files:[],nonPersistedImageIds:[],persistedAttachments:[],terminalContexts:[],modelSelectionByProvider:{},activeProvider:null,runtimeMode:null,interactionMode:null,stagedSubmission:null}}function VJ(e){if(!e||typeof e!=`object`)return null;let t=e,n=t.id,r=t.threadId,i=t.createdAt,a=t.lineStart,o=t.lineEnd;if(typeof n!=`string`||n.length===0||typeof r!=`string`||r.length===0||typeof i!=`string`||i.length===0||typeof a!=`number`||!Number.isFinite(a)||typeof o!=`number`||!Number.isFinite(o))return null;let s=typeof t.terminalId==`string`?t.terminalId.trim():``,c=typeof t.terminalLabel==`string`?t.terminalLabel.trim():``;if(s.length===0||c.length===0)return null;let l=Math.max(1,Math.floor(a));return{id:n,threadId:r,createdAt:i,terminalId:s,terminalLabel:c,lineStart:l,lineEnd:Math.max(l,Math.floor(o))}}function NXe(e,t){return e===`local`||e===`worktree`?e:t?`worktree`:`local`}function HJ(e){return ci(e)}function UJ(e){return e.trim()}function WJ(e){return typeof e==`string`?e.trim():li(e)}function GJ(e,t){let n=fi(e);return n?WJ(n):t?.environmentId?WJ(ai(t.environmentId,e)):e}function PXe(e){return fi(e)}function KJ(e,t){if(typeof t==`string`){let e=t.trim();return e.length>0?ct.make(e):null}return t}function qJ(e,t){let n=KJ(e,t);if(!n)return null;if(typeof n!=`string`){let t=WJ(n);if(e.draftsByThreadKey[t])return t;for(let[t,r]of Object.entries(e.draftThreadsByThreadKey))if(r.environmentId===n.environmentId&&r.threadId===n.threadId)return t;return t}let r=WJ(n);return r.length>0?r:null}function JJ(e,t){let n=KJ(e,t);return n?typeof n==`string`?e.draftThreadsByThreadKey[n]?.threadId??At.make(n):n.threadId:null}function YJ(e,t){let n=qJ(e,t);return n?e.draftsByThreadKey[n]??null:null}function FXe(e,t){return Object.values(e).includes(t)}function XJ(e,t){return{draftId:e,...t}}function IXe(e,t,n,r,i){let a=r!==void 0&&(r.environmentId!==e.environmentId||r.projectId!==e.projectId),o=i?.worktreePath===void 0?a?null:r?.worktreePath??null:i.worktreePath??null,s=i?.branch===void 0?a?null:r?.branch??null:i.branch??null,c=i?.anchorKind===void 0?r?.anchorKind:i.anchorKind??void 0;return{threadId:t,environmentId:e.environmentId,projectId:e.projectId,logicalProjectKey:n,createdAt:i?.createdAt??r?.createdAt??new Date().toISOString(),runtimeMode:i?.runtimeMode??r?.runtimeMode??`full-access`,interactionMode:i?.interactionMode??r?.interactionMode??`default`,branch:s,worktreePath:o,envMode:i?.envMode??(o?`worktree`:a?`local`:r?.envMode??`local`),promotedTo:null,cmmdTaskId:i?.cmmdTaskId===void 0?r?.cmmdTaskId??null:i.cmmdTaskId,anchorCmmdId:i?.anchorCmmdId===void 0?r?.anchorCmmdId??null:i.anchorCmmdId,linkedPullRequest:i?.linkedPullRequest===void 0?r?.linkedPullRequest??null:i.linkedPullRequest,...c===void 0?{}:{anchorKind:c}}}function ZJ(e,t){return!e||!t?e===t:e.environmentId===t.environmentId&&e.threadId===t.threadId}function QJ(e){return e?.promotedTo!==null&&e?.promotedTo!==void 0}function LXe(e,t){return!!e&&e.threadId===t.threadId&&e.environmentId===t.environmentId&&e.projectId===t.projectId&&e.logicalProjectKey===t.logicalProjectKey&&e.createdAt===t.createdAt&&e.runtimeMode===t.runtimeMode&&e.interactionMode===t.interactionMode&&e.branch===t.branch&&e.worktreePath===t.worktreePath&&e.envMode===t.envMode&&(e.anchorKind??void 0)===(t.anchorKind??void 0)&&(e.anchorCmmdId??null)===(t.anchorCmmdId??null)&&$J(e.linkedPullRequest,t.linkedPullRequest)&&ZJ(e.promotedTo,t.promotedTo)}function $J(e,t){return(e?.projectId??null)===(t?.projectId??null)&&(e?.projectRepositoryId??null)===(t?.projectRepositoryId??null)&&(e?.provider??null)===(t?.provider??null)&&(e?.host??null)===(t?.host??null)&&(e?.repository??null)===(t?.repository??null)&&(e?.number??null)===(t?.number??null)&&(e?.url??null)===(t?.url??null)}function eY(e,t){let n=Object.fromEntries(Object.entries(e.logicalProjectDraftThreadKeyByLogicalProjectKey).filter(([,e])=>e!==t)),{[t]:r,...i}=e.draftThreadsByThreadKey,{[t]:a,...o}=e.draftsByThreadKey;return{draftsByThreadKey:o,draftThreadsByThreadKey:i,logicalProjectDraftThreadKeyByLogicalProjectKey:n}}function tY(e,t){let n={},r=new Map;if(t&&typeof t==`object`)for(let[e,n]of Object.entries(t)){if(typeof n!=`string`||n.length===0)continue;let t=di(e);if(!t)continue;let i=fi(n);if(i){r.set(i.threadId,i.environmentId);continue}r.set(n,t.environmentId)}if(e&&typeof e==`object`)for(let[t,i]of Object.entries(e)){if(typeof t!=`string`||t.length===0||!i||typeof i!=`object`)continue;let e=i,a=fi(t),o=GJ(t),s=a?.threadId??(typeof e.threadId==`string`&&e.threadId.length>0?e.threadId:t),c=a?.environmentId??(typeof e.environmentId==`string`&&e.environmentId.length>0?e.environmentId:r.get(t)),l=e.projectId,u=e.createdAt,d=e.branch,f=e.worktreePath,p=typeof f==`string`?f:null,m=e.promotedTo,h=m&&typeof m==`object`?m:null,g=h&&typeof h.environmentId==`string`&&h.environmentId.length>0&&typeof h.threadId==`string`&&h.threadId.length>0?ai(h.environmentId,h.threadId):null;if(typeof l!=`string`||l.length===0||c===void 0)continue;let _=c;n[o]={threadId:s,environmentId:_,projectId:l,logicalProjectKey:typeof e.logicalProjectKey==`string`&&e.logicalProjectKey.length>0?e.logicalProjectKey:a?HJ(ii(_,l)):t,createdAt:typeof u==`string`&&u.length>0?u:new Date().toISOString(),runtimeMode:jJ(e.runtimeMode)?e.runtimeMode:fK,interactionMode:e.interactionMode===`plan`||e.interactionMode==="default"?e.interactionMode:pK,branch:typeof d==`string`?d:null,worktreePath:p,envMode:NXe(e.envMode,p),promotedTo:g}}let i={};if(t&&typeof t==`object`)for(let[e,a]of Object.entries(t)){if(typeof a!=`string`||a.length===0)continue;let t=di(e),o=fi(a),s=GJ(a);if(i[e]=s,o&&r.set(o.threadId,o.environmentId),!t){let t=n[s];t&&!t.logicalProjectKey&&(n[s]={...t,logicalProjectKey:e});continue}n[s]?(n[s]?.projectId!==t.projectId||n[s]?.environmentId!==t.environmentId)&&(n[s]={...n[s],threadId:n[s].threadId,environmentId:t.environmentId,projectId:t.projectId,logicalProjectKey:e}):n[s]={threadId:o?.threadId??s,environmentId:t.environmentId,projectId:t.projectId,logicalProjectKey:e,createdAt:new Date().toISOString(),runtimeMode:fK,interactionMode:pK,branch:null,worktreePath:null,envMode:`local`,promotedTo:null}}return{draftThreadsByThreadKey:n,logicalProjectDraftThreadKeyByLogicalProjectKey:i}}function nY(e,t){if(!e||typeof e!=`object`)return{};let n=new Map;for(let[e,r]of Object.entries(t)){let t=PXe(e);t&&n.set(t.threadId,r.environmentId)}let r={};for(let[i,a]of Object.entries(e)){if(typeof i!=`string`||i.length===0||!a||typeof a!=`object`)continue;let e=a,o=typeof e.prompt==`string`?e.prompt:``,s=typeof e.lastGeneratedPullRequestPrompt==`string`?e.lastGeneratedPullRequestPrompt:void 0,c=Array.isArray(e.attachments)?e.attachments.flatMap(e=>{let t=gJ(e);return t?[t]:[]}):[],l=Array.isArray(e.files)?e.files.flatMap(e=>{let t=_J(e);return t?[t]:[]}):[],u=Array.isArray(e.terminalContexts)?e.terminalContexts.flatMap(e=>{let t=VJ(e);return t?[t]:[]}):[],d=Array.isArray(e.stashTerminalContexts)?e.stashTerminalContexts.flatMap(e=>{let t=VJ(e),n=typeof e.text==`string`?e.text:``;return t&&n.length>0?[{...t,text:n}]:[]}):[],f=jJ(e.runtimeMode)?e.runtimeMode:null,p=e.interactionMode===`plan`||e.interactionMode==="default"?e.interactionMode:null,m=tXe(e.stagedSubmission,{attachment:gJ,file:_J,terminalContext:VJ,modelSelection:e=>TJ(e)??null,runtimeMode:jJ}),h=rq(o,u.length),g=a,_={},v=null;if(e.modelSelectionByProvider&&typeof e.modelSelectionByProvider==`object`)_=e.modelSelectionByProvider,v=SJ(e.activeProvider);else{let e=wJ(g.modelOptions,void 0,g)??null,t=TJ(g.modelSelection,{provider:g.provider,model:g.model,modelOptions:e??g.modelOptions,legacyCodex:g}),n=DJ(t,e),r=EJ(t,n);_=OJ(r,n),v=r?.provider??null}let y=Object.keys(_).length>0||v!==null;if(o.length===0&&c.length===0&&l.length===0&&u.length===0&&d.length===0&&!y&&!f&&!p&&!m)continue;let b=fi(i)===null?t[i]===void 0?(()=>{let e=n.get(i);return e?GJ(i,{environmentId:e}):i})():i:GJ(i);r[b]={prompt:h,...s===void 0?{}:{lastGeneratedPullRequestPrompt:s},attachments:c,...l.length>0?{files:l}:{},...u.length>0?{terminalContexts:u}:{},...d.length>0?{stashTerminalContexts:d}:{},...y?{modelSelectionByProvider:_,activeProvider:v}:{},...f?{runtimeMode:f}:{},...p?{interactionMode:p}:{},...m?{stagedSubmission:m}:{}}}return r}function RXe(e){if(!e||typeof e!=`object`)return FJ;let t=e,n=t.draftsByThreadKey??t.draftsByThreadId,r=t.draftThreadsByThreadKey??t.draftThreadsByThreadId,i=t.logicalProjectDraftThreadKeyByLogicalProjectKey??t.projectDraftThreadKeyByProjectKey??t.projectDraftThreadIdByProjectKey??t.projectDraftThreadIdByProjectId,a=wJ(t.stickyModelOptions)??{},o=TJ(t.stickyModelSelection,{provider:t.stickyProvider??`codex`,model:t.stickyModel,modelOptions:a}),s=DJ(o,a),c=OJ(EJ(o,s),s),l=SJ(t.stickyProvider)??null,{draftThreadsByThreadKey:u,logicalProjectDraftThreadKeyByLogicalProjectKey:d}=tY(r,i);return{draftsByThreadKey:nY(n,u),draftThreadsByThreadKey:u,logicalProjectDraftThreadKeyByLogicalProjectKey:d,stickyModelSelectionByProvider:c,stickyActiveProvider:l}}function zXe(e){let t={};for(let[n,r]of Object.entries(e.draftsByThreadKey)){if(typeof n!=`string`||n.length===0)continue;let e=Object.keys(r.modelSelectionByProvider).length>0||r.activeProvider!==null;r.prompt.length===0&&r.lastGeneratedPullRequestPrompt===void 0&&r.persistedAttachments.length===0&&(r.files?.length??0)===0&&r.terminalContexts.length===0&&!e&&r.runtimeMode===null&&r.interactionMode===null&&r.stagedSubmission==null||(t[n]={prompt:r.prompt,...r.lastGeneratedPullRequestPrompt===void 0?{}:{lastGeneratedPullRequestPrompt:r.lastGeneratedPullRequestPrompt},attachments:r.persistedAttachments,...(r.files?.length??0)>0?{files:r.files.map(({file:e,type:t,...n})=>n)}:{},...r.terminalContexts.length>0?{terminalContexts:r.terminalContexts.map(e=>({id:e.id,threadId:e.threadId,createdAt:e.createdAt,terminalId:e.terminalId,terminalLabel:e.terminalLabel,lineStart:e.lineStart,lineEnd:e.lineEnd}))}:{},...r.stashTerminalContexts&&r.stashTerminalContexts.length>0?{stashTerminalContexts:r.stashTerminalContexts.map(e=>({id:e.id,threadId:e.threadId,createdAt:e.createdAt,terminalId:e.terminalId,terminalLabel:e.terminalLabel,lineStart:e.lineStart,lineEnd:e.lineEnd,text:e.text}))}:{},...e?{modelSelectionByProvider:r.modelSelectionByProvider,activeProvider:r.activeProvider}:{},...r.runtimeMode?{runtimeMode:r.runtimeMode}:{},...r.interactionMode?{interactionMode:r.interactionMode}:{},...r.stagedSubmission?{stagedSubmission:rXe(r.stagedSubmission)}:{}})}return{draftsByThreadKey:t,draftThreadsByThreadKey:e.draftThreadsByThreadKey,logicalProjectDraftThreadKeyByLogicalProjectKey:e.logicalProjectDraftThreadKeyByLogicalProjectKey,stickyModelSelectionByProvider:e.stickyModelSelectionByProvider,stickyActiveProvider:e.stickyActiveProvider}}function BXe(e){if(!e||typeof e!=`object`)return FJ;let t=e,{draftThreadsByThreadKey:n,logicalProjectDraftThreadKeyByLogicalProjectKey:r}=tY(t.draftThreadsByThreadKey??t.draftThreadsByThreadId,t.logicalProjectDraftThreadKeyByLogicalProjectKey??t.projectDraftThreadKeyByProjectKey??t.projectDraftThreadIdByProjectKey??t.projectDraftThreadIdByProjectId),i={},a=null;if(t.stickyModelSelectionByProvider&&typeof t.stickyModelSelectionByProvider==`object`)i=t.stickyModelSelectionByProvider,a=SJ(t.stickyActiveProvider);else{let e=wJ(t.stickyModelOptions)??{},n=TJ(t.stickyModelSelection,{provider:t.stickyProvider,model:t.stickyModel,modelOptions:e}),r=DJ(n,e);i=OJ(EJ(n,r),r),a=SJ(t.stickyProvider)}return{draftsByThreadKey:nY(t.draftsByThreadKey??t.draftsByThreadId,n),draftThreadsByThreadKey:n,logicalProjectDraftThreadKeyByLogicalProjectKey:r,stickyModelSelectionByProvider:i,stickyActiveProvider:a}}function VXe(e){if(e.length===0)return[];try{let t=Ni(kJ,NJ);return!t||t.version!==AJ?[]:(t.state.draftsByThreadKey[e]?.attachments??[]).map(e=>e.id)}catch{return[]}}function HXe(e){if(e.length===0)return null;try{let t=MJ.getItem(kJ);if(typeof t!=`string`)return null;let n=PJ(JSON.parse(t));return!n||n.version!==AJ?null:n.state.draftsByThreadKey[e]??null}catch{return null}}function UXe(e,t,n){let r=new Set;try{MJ.flush(),r=new Set(VXe(e))}catch{r=new Set}n(n=>{let i=n.draftsByThreadKey[e];if(!i)return n;let a=new Set(i.images.map(e=>e.id)),o=t.filter(e=>a.has(e.id)&&r.has(e.id)),s=i.images.map(e=>e.id).filter(e=>!r.has(e)),c={...i,persistedAttachments:o,nonPersistedImageIds:s},l={...n.draftsByThreadKey};return xJ(c)?delete l[e]:l[e]=c,{draftsByThreadKey:l}})}function WXe(e,t){return e.length>0?e:t?.prompt??``}function rY(e,t){return e?.length?e:t??[]}function GXe(e){let t=e.stagedSubmission;return{prompt:WXe(e.prompt,t),attachments:rY(e.attachments,t?.attachments),files:rY(e.files,t?.files),terminalContexts:rY(e.terminalContexts,t?.terminalContexts)}}function KXe(e){let t=e.modelSelectionByProvider??{},n=SJ(e.activeProvider)??null,r=GXe(e);return{prompt:r.prompt,...e.lastGeneratedPullRequestPrompt===void 0?{}:{lastGeneratedPullRequestPrompt:e.lastGeneratedPullRequestPrompt},images:vJ(r.attachments),files:r.files.map(e=>({...e,type:`file`,file:null})),nonPersistedImageIds:[],persistedAttachments:[...r.attachments],terminalContexts:r.terminalContexts.map(t=>{let n=e.stashTerminalContexts?.find(e=>e.id===t.id);return Object.assign({},t,{text:n?.text??``})}),...e.stashTerminalContexts&&e.stashTerminalContexts.length>0?{stashTerminalContexts:e.stashTerminalContexts.map(e=>({...e}))}:{},modelSelectionByProvider:t,activeProvider:n,runtimeMode:e.runtimeMode??null,interactionMode:e.interactionMode??null,stagedSubmission:iXe(e.stagedSubmission)}}function qXe(e){return{threadId:e.threadId,environmentId:e.environmentId,projectId:e.projectId,logicalProjectKey:e.logicalProjectKey??HJ(ii(e.environmentId,e.projectId)),createdAt:e.createdAt,runtimeMode:e.runtimeMode,interactionMode:e.interactionMode,branch:e.branch,worktreePath:e.worktreePath,envMode:e.envMode,promotedTo:e.promotedTo?ai(e.promotedTo.environmentId,e.promotedTo.threadId):null,linkedPullRequest:e.linkedPullRequest??null}}var iY=dt()(QG((e,t)=>{let n=e;return{draftsByThreadKey:{},draftThreadsByThreadKey:{},logicalProjectDraftThreadKeyByLogicalProjectKey:{},stickyModelSelectionByProvider:{},stickyActiveProvider:null,getComposerDraft:e=>YJ(t(),e),getDraftThreadByLogicalProjectKey:e=>t().getDraftSessionByLogicalProjectKey(e),getDraftSessionByLogicalProjectKey:e=>{let n=UJ(e);if(n.length===0)return null;let r=t().logicalProjectDraftThreadKeyByLogicalProjectKey[n];if(!r)return null;let i=t().draftThreadsByThreadKey[r];return!i||QJ(i)?null:XJ(ct.make(r),i)},getDraftThreadByProjectRef:e=>t().getDraftSessionByProjectRef(e),getDraftSessionByProjectRef:e=>{for(let[n,r]of Object.entries(t().draftThreadsByThreadKey))if(!QJ(r)&&r.projectId===e.projectId&&r.environmentId===e.environmentId)return XJ(ct.make(n),r);return null},getDraftSession:e=>t().draftThreadsByThreadKey[e]??null,getDraftSessionByRef:e=>{for(let n of Object.values(t().draftThreadsByThreadKey))if(n.environmentId===e.environmentId&&n.threadId===e.threadId)return n;return null},getDraftThread:e=>typeof e==`string`?t().getDraftSession(ct.make(e)):t().getDraftSessionByRef(e),getDraftThreadByRef:e=>t().getDraftSessionByRef(e),listDraftThreadKeys:()=>Object.values(t().draftThreadsByThreadKey).map(e=>li(ai(e.environmentId,e.threadId))),hasDraftThreadsInEnvironment:e=>Object.values(t().draftThreadsByThreadKey).some(t=>t.environmentId===e),setLogicalProjectDraftThreadId:(e,t,r,i)=>{let a=UJ(e);a.length!==0&&r.length!==0&&n(e=>{let n=e.draftThreadsByThreadKey[r],o=e.logicalProjectDraftThreadKeyByLogicalProjectKey[a],s=IXe(t,i?.threadId??n?.threadId??At.make(r),a,n,i);if(o===r&&LXe(n,s))return e;let c={...e.logicalProjectDraftThreadKeyByLogicalProjectKey,[a]:r},l={...e.draftThreadsByThreadKey,[r]:s},u=e.draftsByThreadKey,d=o===void 0?void 0:l[o];return o&&o!==r&&!FXe(c,o)&&!QJ(d)&&(delete l[o],e.draftsByThreadKey[o]!==void 0&&(u={...e.draftsByThreadKey},delete u[o])),{draftsByThreadKey:u,draftThreadsByThreadKey:l,logicalProjectDraftThreadKeyByLogicalProjectKey:c}})},setProjectDraftThreadId:(e,n,r)=>{t().setLogicalProjectDraftThreadId(HJ(e),e,n,r)},setDraftThreadContext:(e,r)=>{let i=qJ(t(),e)??``;i.length!==0&&n(e=>{let t=e.draftThreadsByThreadKey[i];if(!t)return e;let n=r.projectRef??{environmentId:t.environmentId,projectId:t.projectId};if(n.projectId.length===0||n.environmentId.length===0)return e;let a=n.environmentId!==t.environmentId||n.projectId!==t.projectId,o=r.worktreePath===void 0?a?null:t.worktreePath:r.worktreePath??null,s=r.branch===void 0?a?null:t.branch:r.branch??null,c=r.anchorKind===void 0?t.anchorKind:r.anchorKind??void 0,l={threadId:t.threadId,environmentId:n.environmentId,projectId:n.projectId,logicalProjectKey:t.logicalProjectKey,createdAt:r.createdAt===void 0?t.createdAt:r.createdAt||t.createdAt,runtimeMode:r.runtimeMode??t.runtimeMode,interactionMode:r.interactionMode??t.interactionMode,branch:s,worktreePath:o,envMode:r.envMode??(o?`worktree`:a?`local`:t.envMode??`local`),promotedTo:t.promotedTo??null,cmmdTaskId:r.cmmdTaskId===void 0?t.cmmdTaskId??null:r.cmmdTaskId,anchorCmmdId:r.anchorCmmdId===void 0?t.anchorCmmdId??null:r.anchorCmmdId,linkedPullRequest:r.linkedPullRequest===void 0?t.linkedPullRequest??null:r.linkedPullRequest,...c===void 0?{}:{anchorKind:c}};return l.environmentId===t.environmentId&&l.projectId===t.projectId&&l.logicalProjectKey===t.logicalProjectKey&&l.createdAt===t.createdAt&&l.runtimeMode===t.runtimeMode&&l.interactionMode===t.interactionMode&&l.branch===t.branch&&l.worktreePath===t.worktreePath&&l.envMode===t.envMode&&(l.anchorKind??void 0)===(t.anchorKind??void 0)&&(l.anchorCmmdId??null)===(t.anchorCmmdId??null)&&$J(l.linkedPullRequest,t.linkedPullRequest)&&ZJ(l.promotedTo,t.promotedTo)?e:{draftThreadsByThreadKey:{...e.draftThreadsByThreadKey,[i]:l}}})},clearProjectDraftThreadId:e=>{n(t=>{let n=Object.entries(t.draftThreadsByThreadKey).find(([,t])=>t.projectId===e.projectId&&t.environmentId===e.environmentId);return n?eY(t,n[0]):t})},clearProjectDraftThreadById:(e,r)=>{let i=qJ(t(),r)??``;i.length!==0&&n(t=>{let n=t.draftThreadsByThreadKey[i];return!n||n.projectId!==e.projectId||n.environmentId!==e.environmentId?t:eY(t,i)})},markDraftThreadPromoting:(e,r)=>{let i=qJ(t(),e);i&&n(e=>{let t=e.draftThreadsByThreadKey[i];if(!t)return e;let n=r??ai(t.environmentId,t.threadId);return ZJ(t.promotedTo,n)?e:{draftThreadsByThreadKey:{...e.draftThreadsByThreadKey,[i]:{...t,promotedTo:n}}}})},finalizePromotedDraftThread:e=>{let r=qJ(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftThreadsByThreadKey[r];if(!QJ(t))return e;let n=WJ(t.promotedTo),i=e.draftsByThreadKey[n],a=e.draftsByThreadKey[r];return eY(a?{...e,draftsByThreadKey:{...e.draftsByThreadKey,[n]:i?{...i,modelSelectionByProvider:{...i.modelSelectionByProvider,...a.modelSelectionByProvider},activeProvider:a.activeProvider,runtimeMode:a.runtimeMode,interactionMode:a.interactionMode}:a}}:e,r)})},clearDraftThread:e=>{let r=qJ(t(),e)??``;if(r.length===0)return;let i=t().draftsByThreadKey[r];if(i)for(let e of i.images)hJ(e.previewUrl);n(e=>{let t=e.draftThreadsByThreadKey[r]!==void 0,n=Object.values(e.logicalProjectDraftThreadKeyByLogicalProjectKey).includes(r),i=e.draftsByThreadKey[r]!==void 0;return!t&&!n&&!i?e:eY(e,r)})},setStickyModelSelection:e=>{let t=TJ(e);n(e=>{if(!t)return e;let n={...e.stickyModelSelectionByProvider,[t.provider]:t};return Ie(e.stickyModelSelectionByProvider,n)?e.stickyActiveProvider===t.provider?e:{stickyActiveProvider:t.provider}:{stickyModelSelectionByProvider:n,stickyActiveProvider:t.provider}})},applyStickyState:e=>{let r=qJ(t(),e)??``;r.length!==0&&n(e=>{let t=e.stickyModelSelectionByProvider,n=e.stickyActiveProvider;if(Object.keys(t).length===0&&n===null)return e;let i=e.draftsByThreadKey[r]??BJ(),a={...i.modelSelectionByProvider};for(let[e,n]of Object.entries(t))if(n){let t=a[e];a[e]={...n,model:t?.model??n.model}}if(Ie(i.modelSelectionByProvider,a)&&i.activeProvider===n)return e;let o={...i,modelSelectionByProvider:a,activeProvider:n},s={...e.draftsByThreadKey};return xJ(o)?delete s[r]:s[r]=o,{draftsByThreadKey:s}})},setPrompt:(e,r)=>{let i=qJ(t(),e)??``;i.length!==0&&n(e=>{let t=e.draftsByThreadKey[i]??BJ();if(t.prompt===r)return e;let n={...t,prompt:r},a={...e.draftsByThreadKey};return xJ(n)?delete a[i]:a[i]=n,{draftsByThreadKey:a}})},setGeneratedPullRequestPrompt:(e,r)=>{let i=qJ(t(),e)??``;i.length!==0&&n(e=>{let t=e.draftsByThreadKey[i]??BJ();return{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,lastGeneratedPullRequestPrompt:r}}}})},setPendingAutoSubmit:(e,r)=>{let i=qJ(t(),e)??``;i.length!==0&&n(e=>{let t=e.draftsByThreadKey[i]??BJ();if((t.pendingAutoSubmit??!1)===r)return e;let n=r?{...t,pendingAutoSubmit:!0}:(()=>{let{pendingAutoSubmit:e,...n}=t;return n})(),a={...e.draftsByThreadKey};return xJ(n)?delete a[i]:a[i]=n,{draftsByThreadKey:a}})},stageComposerSubmission:(e,r,i,a,o,s,c)=>{let l=qJ(t(),e)??``;l.length!==0&&(n(e=>{let t=e.draftsByThreadKey[l];if(!t)return e;let n={prompt:t.prompt,attachments:[...c??t.persistedAttachments],files:(t.files??[]).map(({file:e,type:t,...n})=>n),terminalContexts:[...t.terminalContexts],startedAt:r,commandId:i,messageId:a,...o?{executionIntent:o}:{},...s},u={...e.draftsByThreadKey};return u[l]={...t,stagedSubmission:n},{draftsByThreadKey:u}}),MJ.flush())},setStagedComposerExecutionIntent:(e,r)=>{let i=qJ(t(),e)??``;i.length!==0&&(n(e=>{let t=e.draftsByThreadKey[i];return t?.stagedSubmission?{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,stagedSubmission:{...t.stagedSubmission,executionIntent:r}}}}:e}),MJ.flush())},clearStagedComposerSubmission:e=>{let r=qJ(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftsByThreadKey[r];if(!t?.stagedSubmission)return e;let n={...t,stagedSubmission:null},i={...e.draftsByThreadKey};return xJ(n)?delete i[r]:i[r]=n,{draftsByThreadKey:i}})},setTerminalContexts:(e,r,i)=>{let a=qJ(t(),e),o=JJ(t(),e);if(!a||!o)return;let s=mJ(o,r);n(e=>{let t=e.draftsByThreadKey[a]??BJ(),n={...t,prompt:rq(t.prompt,s.length),terminalContexts:s,...i?.preserveTextForReload?{stashTerminalContexts:s}:{stashTerminalContexts:[]}},r={...e.draftsByThreadKey};return xJ(n)?delete r[a]:r[a]=n,{draftsByThreadKey:r}})},setModelSelection:(e,r)=>{let i=qJ(t(),e)??``;if(i.length===0)return;let a=TJ(r);n(e=>{let t=e.draftsByThreadKey[i];if(!t&&a===null)return e;let n=t??BJ(),r={...n.modelSelectionByProvider};if(a){let e=r[a.provider];a.options===void 0?r[a.provider]={provider:a.provider,model:a.model,...`providerAccountId`in a&&a.providerAccountId?{providerAccountId:a.providerAccountId}:e&&`providerAccountId`in e&&e.providerAccountId?{providerAccountId:e.providerAccountId}:{},...e?.options?{options:e.options}:{}}:r[a.provider]=a}let o=a?.provider??n.activeProvider;if(Ie(n.modelSelectionByProvider,r)&&n.activeProvider===o)return e;let s={...n,modelSelectionByProvider:r,activeProvider:o},c={...e.draftsByThreadKey};return xJ(s)?delete c[i]:c[i]=s,{draftsByThreadKey:c}})},setModelOptions:(e,r)=>{let i=qJ(t(),e)??``;if(i.length===0)return;let a=wJ(r);n(e=>{let t=e.draftsByThreadKey[i];if(!t&&a===null)return e;let n=t??BJ(),r={...n.modelSelectionByProvider};for(let e of[`codex`,`claudeAgent`]){if(!a||!(e in a))continue;let t=a[e],n=r[e];if(t)r[e]={provider:e,model:n?.model??dn[e],...n&&`providerAccountId`in n&&n.providerAccountId?{providerAccountId:n.providerAccountId}:{},options:t};else if(n?.options){let{options:t,...i}=n;r[e]=i}}if(Ie(n.modelSelectionByProvider,r))return e;let o={...n,modelSelectionByProvider:r},s={...e.draftsByThreadKey};return xJ(o)?delete s[i]:s[i]=o,{draftsByThreadKey:s}})},setProviderModelOptions:(e,r,i,a)=>{let o=qJ(t(),e)??``;if(o.length===0)return;let s=SJ(r);if(s===null)return;let c=wJ({[s]:i},s)?.[s];n(e=>{let t=e.draftsByThreadKey[o]??BJ(),n={...t.modelSelectionByProvider},r=n[s];if(c)n[s]={provider:s,model:r?.model??dn[s],...r&&`providerAccountId`in r&&r.providerAccountId?{providerAccountId:r.providerAccountId}:{},options:c};else if(r?.options){let{options:e,...t}=r;n[s]=t}let i=e.stickyModelSelectionByProvider,l=e.stickyActiveProvider;if(a?.persistSticky===!0){i={...e.stickyModelSelectionByProvider};let n=i[s]??t.modelSelectionByProvider[s]??{provider:s,model:dn[s]};if(c)i[s]={...n,provider:s,options:c};else if(n.options){let{options:e,...t}=n;i[s]=t}l=t.activeProvider??s}if(Ie(t.modelSelectionByProvider,n)&&Ie(e.stickyModelSelectionByProvider,i)&&e.stickyActiveProvider===l)return e;let u={...t,modelSelectionByProvider:n},d={...e.draftsByThreadKey};return xJ(u)?delete d[o]:d[o]=u,{draftsByThreadKey:d,...a?.persistSticky===!0?{stickyModelSelectionByProvider:i,stickyActiveProvider:l}:{}}})},setRuntimeMode:(e,r)=>{let i=qJ(t(),e)??``;if(i.length===0)return;let a=jJ(r)?r:null;n(e=>{let t=e.draftsByThreadKey[i];if(!t&&a===null)return e;let n=t??BJ();if(n.runtimeMode===a)return e;let r={...n,runtimeMode:a},o={...e.draftsByThreadKey};return xJ(r)?delete o[i]:o[i]=r,{draftsByThreadKey:o}})},setInteractionMode:(e,r)=>{let i=qJ(t(),e)??``;if(i.length===0)return;let a=r===`plan`||r==="default"?r:null;n(e=>{let t=e.draftsByThreadKey[i];if(!t&&a===null)return e;let n=t??BJ();if(n.interactionMode===a)return e;let r={...n,interactionMode:a},o={...e.draftsByThreadKey};return xJ(r)?delete o[i]:o[i]=r,{draftsByThreadKey:o}})},addImage:(e,n)=>{let r=qJ(t(),e),i=JJ(t(),e);!r||!i||t().addImages(typeof e==`string`?ct.make(r):e,[n])},addImages:(e,r)=>{let i=qJ(t(),e)??``;i.length!==0&&r.length!==0&&n(e=>{let t=e.draftsByThreadKey[i]??BJ(),n=new Set(t.images.map(e=>e.id)),a=new Set(t.images.map(e=>dJ(e))),o=new Set(t.images.map(e=>e.previewUrl)),s=[];for(let e of r){let t=dJ(e);if(n.has(e.id)||a.has(t)){o.has(e.previewUrl)||hJ(e.previewUrl);continue}s.push(e),n.add(e.id),a.add(t),o.add(e.previewUrl)}return s.length===0?e:{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,images:[...t.images,...s]}}}})},addFiles:(e,r)=>{let i=qJ(t(),e)??``;i.length!==0&&r.length!==0&&n(e=>{let t=e.draftsByThreadKey[i]??BJ(),n=new Set((t.files??[]).map(e=>e.id)),a=Math.max(0,8-t.images.length-(t.files?.length??0)),o=r.filter(e=>!n.has(e.id)).slice(0,a);return o.length===0?e:{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,files:[...t.files??[],...o]}}}})},setFiles:(e,r)=>{let i=qJ(t(),e)??``;i.length!==0&&n(e=>{let t=e.draftsByThreadKey[i]??BJ();return{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,files:[...r]}}}})},removeImage:(e,r)=>{let i=qJ(t(),e)??``;if(i.length===0)return;let a=t().draftsByThreadKey[i];if(!a)return;let o=a.images.find(e=>e.id===r);o&&hJ(o.previewUrl),n(e=>{let t=e.draftsByThreadKey[i];if(!t)return e;let n={...t,images:t.images.filter(e=>e.id!==r),nonPersistedImageIds:t.nonPersistedImageIds.filter(e=>e!==r),persistedAttachments:t.persistedAttachments.filter(e=>e.id!==r)},a={...e.draftsByThreadKey};return xJ(n)?delete a[i]:a[i]=n,{draftsByThreadKey:a}})},insertTerminalContext:(e,r,i,a)=>{let o=qJ(t(),e),s=JJ(t(),e);if(!o||!s)return!1;let c=!1;return n(e=>{let t=e.draftsByThreadKey[o]??BJ(),n=pJ(s,i);if(!n)return e;let l=fJ(n);if(t.terminalContexts.some(e=>e.id===n.id)||t.terminalContexts.some(e=>fJ(e)===l))return e;c=!0;let u=Math.max(0,Math.min(t.terminalContexts.length,a)),d={...t,prompt:r,terminalContexts:[...t.terminalContexts.slice(0,u),n,...t.terminalContexts.slice(u)]};return{draftsByThreadKey:{...e.draftsByThreadKey,[o]:d}}}),c},addTerminalContext:(e,n)=>{let r=qJ(t(),e),i=JJ(t(),e);!r||!i||t().addTerminalContexts(typeof e==`string`?ct.make(r):e,[n])},addTerminalContexts:(e,r)=>{let i=qJ(t(),e),a=JJ(t(),e);!i||!a||r.length===0||n(e=>{let t=e.draftsByThreadKey[i]??BJ(),n=mJ(a,[...t.terminalContexts,...r]).slice(t.terminalContexts.length);return n.length===0?e:{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,prompt:rq(t.prompt,t.terminalContexts.length+n.length),terminalContexts:[...t.terminalContexts,...n]}}}})},removeTerminalContext:(e,r)=>{let i=qJ(t(),e)??``;i.length!==0&&r.length!==0&&n(e=>{let t=e.draftsByThreadKey[i];if(!t)return e;let n={...t,terminalContexts:t.terminalContexts.filter(e=>e.id!==r)},a={...e.draftsByThreadKey};return xJ(n)?delete a[i]:a[i]=n,{draftsByThreadKey:a}})},clearTerminalContexts:e=>{let r=qJ(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftsByThreadKey[r];if(!t||t.terminalContexts.length===0)return e;let n={...t,terminalContexts:[]},i={...e.draftsByThreadKey};return xJ(n)?delete i[r]:i[r]=n,{draftsByThreadKey:i}})},clearPersistedAttachments:e=>{let r=qJ(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftsByThreadKey[r];if(!t)return e;let n={...t,persistedAttachments:[],nonPersistedImageIds:[]},i={...e.draftsByThreadKey};return xJ(n)?delete i[r]:i[r]=n,{draftsByThreadKey:i}})},syncPersistedAttachments:(e,r)=>{let i=qJ(t(),e);if(!i)return;let a=new Set(r.map(e=>e.id));n(e=>{let t=e.draftsByThreadKey[i];if(!t)return e;let n={...t,persistedAttachments:r,nonPersistedImageIds:t.nonPersistedImageIds.filter(e=>!a.has(e))},o={...e.draftsByThreadKey};return xJ(n)?delete o[i]:o[i]=n,{draftsByThreadKey:o}}),Promise.resolve().then(()=>{UXe(i,r,n)})},moveComposerDraft:(e,r)=>{let i=$qe(t().draftsByThreadKey,e,r);return i!==null&&(n({draftsByThreadKey:i}),MJ.flush(),!0)},clearComposerContent:e=>{let r=qJ(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftsByThreadKey[r];if(!t)return e;let n=bJ(t),i={...e.draftsByThreadKey};return xJ(n)?delete i[r]:i[r]=n,{draftsByThreadKey:i}})},clearComposerContentIfUnchanged:(e,r)=>{let i=qJ(t(),e)??``;if(i.length===0)return!1;let a=!1;return n(e=>{let t=e.draftsByThreadKey[i];if(!t||!yXe(t,r))return e;let n=bJ(t),o={...e.draftsByThreadKey};return xJ(n)?delete o[i]:o[i]=n,a=!0,{draftsByThreadKey:o}}),a},restoreComposerStash:(e,r)=>{let i=qJ(t(),e)??``,a=JJ(t(),e);if(i.length===0||!a)return!1;let o,s;if(n(e=>{let t=aXe(e.draftsByThreadKey,i,a,r);return t?(o=t.previousDraft,s=t.restoredDraft,{draftsByThreadKey:t.drafts}):e}),!s)return!1;let c=!1;try{MJ.flush();let e=HXe(i),n=t().draftsByThreadKey[i];e!==null&&n===s&&dXe(e,n)&&(c=!0)}catch{}if(c&&(r.onPersisted?.()??!0))return!0;n(e=>{if(e.draftsByThreadKey[i]!==s)return e;let t={...e.draftsByThreadKey};return o?t[i]=o:delete t[i],{draftsByThreadKey:t}});try{MJ.flush()}catch{}return!1}}},{name:kJ,version:AJ,storage:XG(()=>MJ),migrate:RXe,partialize:zXe,merge:(e,t)=>{let n=BXe(e),r=Object.fromEntries(Object.entries(n.draftsByThreadKey).map(([e,t])=>[e,KXe(t)])),i=Object.fromEntries(Object.entries(n.draftThreadsByThreadKey).map(([e,t])=>[e,qXe(t)]));return{...t,draftsByThreadKey:r,draftThreadsByThreadKey:i,logicalProjectDraftThreadKeyByLogicalProjectKey:n.logicalProjectDraftThreadKeyByLogicalProjectKey,stickyModelSelectionByProvider:n.stickyModelSelectionByProvider??{},stickyActiveProvider:n.stickyActiveProvider??null}}}));function JXe(e){let t=(0,vi.c)(2),n;return t[0]===e?n=t[1]:(n=t=>YJ(t,e)??MXe,t[0]=e,t[1]=n),iY(n)}function YXe(e){let t=(0,vi.c)(2),n;return t[0]===e?n=t[1]:(n=t=>{let n=YJ(t,e);return n?{activeProvider:n.activeProvider,modelSelectionByProvider:n.modelSelectionByProvider}:jXe},t[0]=e,t[1]=n),iY(cq(n))}function aY(e){let t=iY.getState();for(let[n,r]of Object.entries(t.draftThreadsByThreadKey))r.environmentId===e.environmentId&&r.threadId===e.threadId&&t.markDraftThreadPromoting(ct.make(n),e)}function XXe(e){for(let t of e)aY(t)}function ZXe(e){let t=iY.getState();for(let[n,r]of Object.entries(t.draftThreadsByThreadKey))r.promotedTo&&r.promotedTo.environmentId===e.environmentId&&r.promotedTo.threadId===e.threadId&&t.finalizePromotedDraftThread(ct.make(n))}var oY=null;function QXe(e){oY=e}function sY(){if(oY===null)throw Error(`Environment event handling was used before the service was configured.`);return oY}function $Xe(e){let t=new Set,n=new Map(e.snapshotThreads.map(e=>[e.key,e]));for(let n of e.snapshotThreads)n.deletedAt===null&&n.archivedAt===null&&t.add(n.key);for(let r of e.draftThreadKeys){let e=n.get(r);e&&(e.deletedAt!==null||e.archivedAt!==null)||t.add(r)}return t}function eZe(e){let t=new Map,n=!1;for(let r of e)switch(r.type){case`thread.turn-diff-completed`:case`thread.reverted`:n=!0;break;case`thread.created`:t.set(r.payload.threadId,{clearPromotedDraft:!0,clearDeletedThread:!1,removeTerminalState:!1});break;case`thread.deleted`:t.set(r.payload.threadId,{clearPromotedDraft:!1,clearDeletedThread:!0,removeTerminalState:!0});break;case`thread.archived`:t.set(r.payload.threadId,{clearPromotedDraft:!1,clearDeletedThread:!1,removeTerminalState:!0});break;case`thread.unarchived`:t.set(r.payload.threadId,{clearPromotedDraft:!1,clearDeletedThread:!1,removeTerminalState:!1})}let r=[],i=[],a=[];for(let[e,n]of t)n.clearPromotedDraft&&r.push(e),n.clearDeletedThread&&i.push(e),n.removeTerminalState&&a.push(e);return{promoteDraftThreadIds:r,clearDeletedThreadIds:i,removeTerminalStateThreadIds:a,needsProviderInvalidation:n}}var tZe={threadRef:null,open:!1,minimized:!1,dock:`floating`,position:null};function nZe(e){return{x:Math.max(12,Math.min(e.position.x,e.viewportWidth-e.width-12)),y:Math.max(12,Math.min(e.position.y,e.viewportHeight-e.height-12))}}function rZe(e,t){return{...e,threadRef:t,open:!0,minimized:!1}}function iZe(e){let t=e.companion.threadRef;return!e.companion.open||t===null?!1:e.routeThreadRef?.environmentId!==t.environmentId||e.routeThreadRef.threadId!==t.threadId}var cY=`forge:ui-state:v1`,lY=[`t3code:ui-state:v1`,`t3code:renderer-state:v8`,`t3code:renderer-state:v7`,`t3code:renderer-state:v6`,`t3code:renderer-state:v5`,`t3code:renderer-state:v4`,`t3code:renderer-state:v3`,`codething:renderer-state:v4`,`codething:renderer-state:v3`,`codething:renderer-state:v2`,`codething:renderer-state:v1`],uY=`months`,aZe=new Set([`weeks`,`months`,`quarters`]);function oZe(e){return typeof e==`string`&&aZe.has(e)?e:uY}function dY(e){return Number.isFinite(e)?Math.round(Math.min(560,Math.max(200,e))):360}var fY={projectExpandedById:{},projectOrder:[],projectGroupOrder:[],lastActiveProject:null,threadLastVisitedAtById:{},threadChangedFilesExpandedById:{},pinnedThreadById:{},threadLinkedPrById:{},workspaceDensityById:{},timelineWorkColumnWidth:360,timelineScale:uY,projectLeadCompanion:tZe},pY=new Set,mY=[],hY=new Map,gY=!1;function sZe(){if(typeof window>`u`)return fY;try{let e=window.localStorage.getItem(cY);if(!e){for(let e of lY){let t=window.localStorage.getItem(e);if(t)return _Y(JSON.parse(t)),fY}return fY}let t=JSON.parse(e);return _Y(t),{...fY,projectGroupOrder:cZe(t.projectGroupOrderKeys),threadChangedFilesExpandedById:dZe(t.threadChangedFilesExpandedById),pinnedThreadById:lZe(t.pinnedThreadKeys),threadLinkedPrById:uZe(t.threadLinkedPrById),timelineWorkColumnWidth:dY(t.timelineWorkColumnWidth??360),timelineScale:oZe(t.timelineScale)}}catch{return fY}}function cZe(e){return Array.isArray(e)?[...new Set(e.filter(e=>typeof e==`string`&&e.length>0))]:[]}function lZe(e){if(!Array.isArray(e))return{};let t={};for(let n of e)typeof n==`string`&&n.length>0&&(t[n]=!0);return t}function uZe(e){if(!e||typeof e!=`object`)return{};let t={};for(let[n,r]of Object.entries(e))typeof n==`string`&&n.length!==0&&typeof r==`string`&&r.trim().length!==0&&(t[n]=r);return t}function dZe(e){if(!e||typeof e!=`object`)return{};let t={};for(let[n,r]of Object.entries(e)){if(!n||!r||typeof r!=`object`)continue;let e={};for(let[t,n]of Object.entries(r))t&&typeof n==`boolean`&&n===!1&&(e[t]=!1);Object.keys(e).length>0&&(t[n]=e)}return t}function _Y(e){pY.clear(),mY.length=0;for(let t of e.expandedProjectCwds??[])typeof t==`string`&&t.length>0&&pY.add(t);for(let t of e.projectOrderCwds??[])typeof t==`string`&&t.length>0&&!mY.includes(t)&&mY.push(t)}function fZe(e){if(!(typeof window>`u`))try{let t=Object.entries(e.projectExpandedById).filter(([,e])=>e).flatMap(([e])=>{let t=hY.get(e);return t?[t]:[]}),n=e.projectOrder.flatMap(e=>{let t=hY.get(e);return t?[t]:[]}),r=Object.fromEntries(Object.entries(e.threadChangedFilesExpandedById).flatMap(([e,t])=>{let n=Object.fromEntries(Object.entries(t).filter(([,e])=>e===!1));return Object.keys(n).length>0?[[e,n]]:[]}));if(window.localStorage.setItem(cY,JSON.stringify({expandedProjectCwds:t,projectOrderCwds:n,projectGroupOrderKeys:e.projectGroupOrder,threadChangedFilesExpandedById:r,pinnedThreadKeys:Object.keys(e.pinnedThreadById).filter(t=>e.pinnedThreadById[t]),threadLinkedPrById:e.threadLinkedPrById,timelineWorkColumnWidth:e.timelineWorkColumnWidth,timelineScale:e.timelineScale})),!gY){gY=!0;for(let e of lY)window.localStorage.removeItem(e)}}catch{}}var vY=new pt(fZe,{wait:500});function yY(e,t){let n=Object.entries(e),r=Object.entries(t);if(n.length!==r.length)return!1;for(let[e,r]of n)if(t[e]!==r)return!1;return!0}function bY(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}function pZe(e,t){let n=Object.entries(e),r=Object.entries(t);if(n.length!==r.length)return!1;for(let[e,r]of n)if(!(e in t)||!yY(r,t[e]))return!1;return!0}function mZe(e,t){let n=new Map(hY),r=new Map([...n.entries()].map(([e,t])=>[t,e]));hY.clear();for(let e of t)hY.set(e.key,e.cwd);let i=n.size!==hY.size||t.some(e=>n.get(e.key)!==e.cwd),a={},o=e.projectExpandedById,s=new Map(mY.map((e,t)=>[e,t])),c=t.map((e,t)=>{let n=r.get(e.cwd),i=o[e.key]??(n?o[n]:void 0)??(pY.size>0?pY.has(e.cwd):!0);return a[e.key]=i,{id:e.key,cwd:e.cwd,incomingIndex:t}}),l=e.projectOrder.length>0?(()=>{let t=new Map(c.map(e=>[e.cwd,e.id])),r=new Set,i=[];for(let o of e.projectOrder){let e=(o in a?o:void 0)??(()=>{let e=n.get(o);return e?t.get(e):void 0})();!e||r.has(e)||(r.add(e),i.push(e))}for(let e of c)r.has(e.id)||i.push(e.id);return i})():c.map(e=>({id:e.id,incomingIndex:e.incomingIndex,orderIndex:s.get(e.cwd)??mY.length+e.incomingIndex})).toSorted((e,t)=>{let n=e.orderIndex-t.orderIndex;return n===0?e.incomingIndex-t.incomingIndex:n}).map(e=>e.id);return yY(e.projectExpandedById,a)&&bY(e.projectOrder,l)&&!i?e:{...e,projectExpandedById:a,projectOrder:l}}function hZe(e,t){let n=new Set(t.map(e=>e.key)),r=Object.fromEntries(Object.entries(e.threadLastVisitedAtById).filter(([e])=>n.has(e)));for(let e of t)r[e.key]===void 0&&e.seedVisitedAt!==void 0&&e.seedVisitedAt.length>0&&(r[e.key]=e.seedVisitedAt);let i=Object.fromEntries(Object.entries(e.threadChangedFilesExpandedById).filter(([e])=>n.has(e))),a=Object.fromEntries(Object.entries(e.pinnedThreadById).filter(([e,t])=>n.has(e)&&t)),o=Object.fromEntries(Object.entries(e.threadLinkedPrById).filter(([e])=>n.has(e)));return yY(e.threadLastVisitedAtById,r)&&pZe(e.threadChangedFilesExpandedById,i)&&yY(e.pinnedThreadById,a)&&yY(e.threadLinkedPrById,o)?e:{...e,threadLastVisitedAtById:r,threadChangedFilesExpandedById:i,pinnedThreadById:a,threadLinkedPrById:o}}function gZe(e,t,n){let r=n??new Date().toISOString(),i=Date.parse(r),a=e.threadLastVisitedAtById[t],o=a?Date.parse(a):NaN;return Number.isFinite(o)&&Number.isFinite(i)&&o>=i?e:{...e,threadLastVisitedAtById:{...e.threadLastVisitedAtById,[t]:r}}}function _Ze(e,t,n){if(!n)return e;let r=Date.parse(n);if(Number.isNaN(r))return e;let i=new Date(r-1).toISOString();return e.threadLastVisitedAtById[t]===i?e:{...e,threadLastVisitedAtById:{...e.threadLastVisitedAtById,[t]:i}}}function vZe(e,t){let n=t in e.threadLastVisitedAtById,r=t in e.threadChangedFilesExpandedById,i=t in e.pinnedThreadById,a=t in e.threadLinkedPrById;if(!n&&!r&&!i&&!a)return e;let o={...e.threadLastVisitedAtById},s={...e.threadChangedFilesExpandedById},c={...e.pinnedThreadById},l={...e.threadLinkedPrById};return delete o[t],delete s[t],delete c[t],delete l[t],{...e,threadLastVisitedAtById:o,threadChangedFilesExpandedById:s,pinnedThreadById:c,threadLinkedPrById:l}}function xY(e,t,n){if(e.pinnedThreadById[t]===!0===n)return e;if(n)return{...e,pinnedThreadById:{...e.pinnedThreadById,[t]:!0}};let r={...e.pinnedThreadById};return delete r[t],{...e,pinnedThreadById:r}}function yZe(e,t){return xY(e,t,e.pinnedThreadById[t]!==!0)}function bZe(e,t,n){return e.threadLinkedPrById[t]===n?e:{...e,threadLinkedPrById:{...e.threadLinkedPrById,[t]:n}}}function xZe(e,t){if(!(t in e.threadLinkedPrById))return e;let n={...e.threadLinkedPrById};return delete n[t],{...e,threadLinkedPrById:n}}function SZe(e,t,n,r){let i=e.threadChangedFilesExpandedById[t]??{};return i[n]===r?e:{...e,threadChangedFilesExpandedById:{...e.threadChangedFilesExpandedById,[t]:{...i,[n]:r}}}}function CZe(e,t){return e.lastActiveProject?.environmentId===t?.environmentId&&e.lastActiveProject?.projectId===t?.projectId?e:{...e,lastActiveProject:t}}function wZe(e,t,n){return e.workspaceDensityById[t]===n?e:{...e,workspaceDensityById:{...e.workspaceDensityById,[t]:n}}}function TZe(e,t){let n=e.projectExpandedById[t]??!0;return{...e,projectExpandedById:{...e.projectExpandedById,[t]:!n}}}function EZe(e,t,n){return(e.projectExpandedById[t]??!0)===n?e:{...e,projectExpandedById:{...e.projectExpandedById,[t]:n}}}function DZe(e,t,n){if(t.length===0)return e;let r=new Set(t),i=new Set(n);if(t.every(e=>i.has(e)))return e;let a=e.projectOrder.findIndex(e=>i.has(e));if(a<0)return e;let o=[...e.projectOrder],s=[],c=0;for(let e=o.length-1;e>=0;e--)r.has(o[e])&&(s.unshift(o.splice(e,1)[0]),e<a&&c++);if(s.length===0)return e;let l=a-Math.max(0,c-1);return o.splice(l,0,...s),{...e,projectOrder:o}}function OZe(e,t){let n=[...new Set(t)],r=new Set(n),i=e.projectGroupOrder.filter(e=>r.has(e)),a=new Set(i);for(let e of n)a.has(e)||i.push(e);return bY(e.projectGroupOrder,i)?e:{...e,projectGroupOrder:i}}function kZe(e,t,n){if(t===n)return e;let r=e.projectGroupOrder.indexOf(t),i=e.projectGroupOrder.indexOf(n);if(r<0||i<0)return e;let a=[...e.projectGroupOrder],[o]=a.splice(r,1);return o===void 0?e:(a.splice(i,0,o),{...e,projectGroupOrder:a})}var SY=dt(e=>({...sZe(),syncProjects:t=>e(e=>mZe(e,t)),syncProjectGroups:t=>e(e=>OZe(e,t)),syncThreads:t=>e(e=>hZe(e,t)),markThreadVisited:(t,n)=>e(e=>gZe(e,t,n)),markThreadUnread:(t,n)=>e(e=>_Ze(e,t,n)),clearThreadUi:t=>e(e=>vZe(e,t)),setThreadPinned:(t,n)=>e(e=>xY(e,t,n)),toggleThreadPinned:t=>e(e=>yZe(e,t)),setThreadLinkedPr:(t,n)=>e(e=>bZe(e,t,n)),clearThreadLinkedPr:t=>e(e=>xZe(e,t)),setThreadChangedFilesExpanded:(t,n,r)=>e(e=>SZe(e,t,n,r)),setWorkspaceDensity:(t,n)=>e(e=>wZe(e,t,n)),toggleProject:t=>e(e=>TZe(e,t)),setProjectExpanded:(t,n)=>e(e=>EZe(e,t,n)),reorderProjects:(t,n)=>e(e=>DZe(e,t,n)),reorderProjectGroups:(t,n)=>e(e=>kZe(e,t,n)),setLastActiveProject:t=>e(e=>CZe(e,t)),setTimelineWorkColumnWidth:t=>e(e=>({...e,timelineWorkColumnWidth:dY(t)})),setTimelineScale:t=>e(e=>({...e,timelineScale:t})),openProjectLeadCompanion:t=>e(e=>({...e,projectLeadCompanion:rZe(e.projectLeadCompanion,t)})),closeProjectLeadCompanion:()=>e(e=>({...e,projectLeadCompanion:{...e.projectLeadCompanion,open:!1}})),setProjectLeadCompanionMinimized:t=>e(e=>({...e,projectLeadCompanion:{...e.projectLeadCompanion,minimized:t}})),setProjectLeadCompanionDock:t=>e(e=>({...e,projectLeadCompanion:{...e.projectLeadCompanion,dock:t}})),setProjectLeadCompanionPosition:t=>e(e=>({...e,projectLeadCompanion:{...e.projectLeadCompanion,position:t}}))}));function AZe(e){SY.getState().openProjectLeadCompanion(e)}SY.subscribe(e=>vY.maybeExecute(e)),typeof window<`u`&&typeof window.addEventListener==`function`&&window.addEventListener(`beforeunload`,()=>{vY.flush()});var CY=new Map;function jZe(e){return!e.isWorking||e.msSinceLastEvent<e.stallThresholdMs?`none`:e.recoveryAttempts<e.maxResubscribeAttempts?`resubscribe`:e.recoveryAttempts<e.maxTotalAttempts?`reconnect`:`none`}var MZe=3e4,NZe=1e4,PZe=[/(?:^|\s)\/(?:Users|var|private|tmp|project|repo|home)\/[^\s'"<>)]*/i,/(?:^|\s)[A-Za-z]:\\[^\s'"<>)]*/];function wY(e){let t=e?.trim();return t&&t.length>0?t:null}function FZe(e){return wY(e)??`Project`}function IZe(e,t=`safe`){let n=wY(e);return n?t===`full`?n:n.replaceAll(`\\`,`/`).split(`/`).filter(Boolean).at(-1)??`Local checkout`:`Local checkout`}function TY(e,t=`Something went wrong. Try again.`){let n=xV(e instanceof Error?e.message:typeof e==`string`?e:String(e),{fallback:t});return!n||PZe.some(e=>e.test(n))?t:n}var EY=`Thread not found or you no longer have access.`;function LZe(e){if(e==null)return EY;let t=TY(Uee(e)?we(e):e,EY);return/\bnot found\b/i.test(t)?EY:t}function RZe(e,t,n){YG.getState().setThreadSubscriptionError(e,t,LZe(n))}var DY=null;function zZe(e){DY=e}function OY(){if(DY===null)throw Error(`Thread detail subscriptions were used before the service was configured.`);return DY}var BZe=9e5,kY=()=>void 0;function AY(e,t){return li(ai(e,t))}function jY(e){return e.evictionTimeoutId!==null&&(clearTimeout(e.evictionTimeoutId),e.evictionTimeoutId=null),e}function VZe(e){let t=ai(e.environmentId,e.threadId),n=YG.getState(),r=JG(n,t);if(r&&HZe(r))return!0;let i=qG(n,t);return i?MY(i.session?.orchestrationStatus)||i.latestTurn?.state===`running`||i.pendingSourceProposedPlan!==void 0:!1}function MY(e){return!!(e&&e!==`idle`&&e!==`stopped`)}function HZe(e){return e.hasPendingApprovals||e.hasPendingUserInput||e.hasActionableProposedPlan||MY(e.session?.orchestrationStatus)||e.latestTurn?.state===`running`}function NY(e){return e.refCount===0&&!VZe(e)}function PY(e){let t=OY().readConnection(e.environmentId);return e.unsubscribe===kY&&!t?!1:(e.unsubscribeConnectionListener!==null&&(e.unsubscribeConnectionListener(),e.unsubscribeConnectionListener=null),e.unsubscribe!==kY||!t||(e.unsubscribe=t.client.orchestration.subscribeThread({threadId:e.threadId},t=>{e.lastEventAt=Date.now(),e.recoveryAttempts=0,t.kind===`event`?OY().applyEvent(t.event,e.environmentId):t.kind===`snapshot`&&(YG.getState().syncServerThreadDetail(t.snapshot.thread,e.environmentId),YG.getState().clearThreadSubscriptionError(e.environmentId,e.threadId))},{onError:t=>RZe(e.environmentId,e.threadId,t)})),!0)}function FY(e){e.unsubscribeConnectionListener===null&&(e.unsubscribeConnectionListener=OY().subscribeConnections(()=>{PY(e)&&(e.lastAccessedAt=Date.now())}),PY(e))}var IY=null;function UZe(e){let t=ai(e.environmentId,e.threadId),n=YG.getState(),r=JG(n,t);if(r?.latestTurn?.state===`running`||r?.session?.orchestrationStatus===`running`)return!0;let i=qG(n,t);return i?.latestTurn?.state===`running`||i?.session?.orchestrationStatus===`running`}function WZe(e){e.unsubscribe!==kY&&(e.unsubscribe(),e.unsubscribe=kY),PY(e)||FY(e)}function GZe(e,t,n){if(e.recoveryAttempts+=1,e.lastEventAt=Date.now(),console.warn(`[forge] thread-detail liveness watchdog recovering`,{action:t,threadId:String(e.threadId),environmentId:String(e.environmentId),msSinceLastEvent:Math.round(n),recoveryAttempts:e.recoveryAttempts}),t===`resubscribe`){WZe(e);return}OY().readConnection(e.environmentId)?.reconnect().catch(t=>{NV(t,{route:`thread-detail-liveness-watchdog-reconnect-failed`,threadId:String(e.threadId),environmentId:String(e.environmentId),msSinceLastEvent:String(Math.round(n)),recoveryAttempts:String(e.recoveryAttempts)})})}function KZe(){let e=Date.now();for(let t of CY.values()){let n=jZe({isWorking:UZe(t),msSinceLastEvent:e-t.lastEventAt,stallThresholdMs:MZe,recoveryAttempts:t.recoveryAttempts,maxResubscribeAttempts:2,maxTotalAttempts:4});n!==`none`&&GZe(t,n,e-t.lastEventAt)}}function qZe(){IY===null&&(IY=setInterval(KZe,NZe))}function JZe(){CY.size>0||IY!==null&&(clearInterval(IY),IY=null)}function LY(e){let t=CY.get(e);return t?(jY(t),t.unsubscribeConnectionListener?.(),t.unsubscribeConnectionListener=null,CY.delete(e),t.unsubscribe(),t.unsubscribe=kY,JZe(),!0):!1}function YZe(e){RY(e,!0),RU.getState().clear(e)}function RY(e,t=!1){for(let[n,r]of CY)if(r.environmentId===e){if(r.refCount===0||t){LY(n);continue}r.unsubscribe(),r.unsubscribe=kY,FY(r)}}function XZe(e){for(let t=e.messages.length-1;t>=0;--t){let n=e.messages[t];if(n?.role===`user`)return n.createdAt}return null}function ZZe(e){return e.session?{threadId:e.id,updatedAt:e.session.updatedAt,providerName:e.session.provider,runtimeMode:e.runtimeMode,activeTurnId:e.session.activeTurnId??null,lastError:e.session.lastError??null,status:e.session.orchestrationStatus}:null}function QZe(e,t){return{updatedAt:e.updatedAt??e.createdAt,latestUserMessageAt:t?.latestUserMessageAt??XZe(e),titleRegeneration:e.titleRegeneration??null}}function $Ze(e){return{hasPendingApprovals:e?.hasPendingApprovals??!1,hasPendingUserInput:e?.hasPendingUserInput??!1,hasActionableProposedPlan:e?.hasActionableProposedPlan??!1}}function eQe(e){let t=ai(e.environmentId,e.threadId),n=YG.getState(),r=qG(n,t);if(!r)return null;let i=JG(n,t);return{id:r.id,projectId:r.projectId,title:r.title,modelSelection:r.modelSelection,runtimeMode:r.runtimeMode,interactionMode:r.interactionMode,branch:r.branch,worktreePath:r.worktreePath,latestTurn:r.latestTurn,createdAt:r.createdAt,...QZe(r,i),...$Ze(i),archivedAt:r.archivedAt,session:ZZe(r),anchorKind:r.anchorKind,anchorCmmdId:r.anchorCmmdId,kind:r.kind,parentThreadId:r.parentThreadId,status:r.status,workerRole:r.workerRole,goal:r.goal}}function tQe(e,t){if(CY.size===0)return e;let n=new Set(e.threads.map(e=>e.id)),r=[];for(let e of CY.values()){if(e.environmentId!==t||e.refCount<=0||n.has(e.threadId))continue;let i=eQe(e);i&&(n.add(i.id),r.push(i))}return r.length===0?e:{...e,threads:[...e.threads,...r]}}function nQe(e,t){let n=new Set(t);for(let[t,r]of CY)r.environmentId===e&&!n.has(r.threadId)&&NY(r)&&LY(t)}function rQe(e){jY(e),NY(e)&&(e.evictionTimeoutId=setTimeout(()=>{let t=CY.get(AY(e.environmentId,e.threadId));t&&(t.evictionTimeoutId=null,NY(t)&&LY(AY(e.environmentId,e.threadId)))},BZe))}function zY(){if(CY.size<=32)return;let e=[...CY.entries()].filter(([,e])=>NY(e)).toSorted(([,e],[,t])=>e.lastAccessedAt-t.lastAccessedAt);for(let[t]of e){if(CY.size<=32)return;LY(t)}}function BY(e){jY(e),NY(e)&&rQe(e)}function iQe(e,t){let n=CY.get(AY(e,t));n&&BY(n)}function VY(e){for(let t of CY.values())t.environmentId===e&&BY(t);zY()}function HY(e){let t=!1;return()=>{t||(t=!0,e.refCount=Math.max(0,e.refCount-1),e.lastAccessedAt=Date.now(),e.refCount===0&&(BY(e),zY()))}}function aQe(e,t){let n=AY(e,t),r=CY.get(n);if(r)return jY(r),r.refCount+=1,r.lastAccessedAt=Date.now(),PY(r)||FY(r),HY(r);let i={environmentId:e,threadId:t,unsubscribe:kY,unsubscribeConnectionListener:null,refCount:1,lastAccessedAt:Date.now(),evictionTimeoutId:null,lastEventAt:Date.now(),recoveryAttempts:0};return CY.set(n,i),PY(i)||FY(i),qZe(),zY(),HY(i)}function oQe(e,t){return e.type!==`thread.message-sent`||t.type!==`thread.message-sent`||e.payload.threadId!==t.payload.threadId||e.payload.messageId!==t.payload.messageId?null:{...t,payload:{...t.payload,attachments:t.payload.attachments??e.payload.attachments,createdAt:e.payload.createdAt,text:!t.payload.streaming&&t.payload.text.length>0?t.payload.text:e.payload.text+t.payload.text}}}function sQe(e){if(e.length<2)return[...e];let t=[];for(let n of e){let e=t.at(-1),r=e?oQe(e,n):null;if(r){t[t.length-1]=r;continue}t.push(n)}return t}function UY(){let e=HG(YG.getState());SY.getState().syncProjects(e.map(e=>({key:ci(ii(e.environmentId,e.id)),cwd:e.cwd})))}function WY(){let e=UG(YG.getState());SY.getState().syncThreads(e.map(e=>({key:li(ai(e.environmentId,e.id)),seedVisitedAt:e.updatedAt??e.createdAt}))),XXe(e.map(e=>ai(e.environmentId,e.id)))}function cQe(){UY(),WY();let e=$Xe({snapshotThreads:UG(YG.getState()).map(e=>({key:li(ai(e.environmentId,e.id)),deletedAt:null,archivedAt:e.archivedAt})),draftThreadKeys:iY.getState().listDraftThreadKeys()});qK.getState().removeOrphanedTerminalStates(e)}function GY(e){return e.serverThreadArchivedAt===void 0?e.hasDraftThread:e.serverThreadArchivedAt===null}function lQe(e,t){if(e.length===0)return;let n=eZe(e),r=sQe(e),i=e.some(e=>e.type===`project.created`||e.type===`project.meta-updated`||e.type===`project.deleted`);if(n.needsProviderInvalidation&&sY().notifyProviderInvalidation(),YG.getState().applyOrchestrationEvents(r,t),i){let e=HG(YG.getState());SY.getState().syncProjects(e.map(e=>({key:ci(ii(e.environmentId,e.id)),cwd:e.cwd})))}if(e.some(e=>e.type===`thread.created`||e.type===`thread.deleted`)){let e=UG(YG.getState());SY.getState().syncThreads(e.map(e=>({key:li(ai(e.environmentId,e.id)),seedVisitedAt:e.updatedAt??e.createdAt})))}let a=iY.getState();for(let e of n.promoteDraftThreadIds)aY(ai(t,e));for(let e of n.clearDeletedThreadIds)a.clearDraftThread(ai(t,e)),SY.getState().clearThreadUi(li(ai(t,e)));for(let e of n.removeTerminalStateThreadIds){let n=ai(t,e);qK.getState().removeTerminalState(n),VW.getState().clearBrowserState(n)}VY(t)}function uQe(e,t){lQe([e],t)}function dQe(e,t){let n=e.kind===`thread-upserted`?e.thread.id:e.kind===`thread-removed`?e.threadId:null,r=n?ai(t,n):null,i=r?qG(YG.getState(),r):void 0;switch(YG.getState().applyShellEvent(e,t),e.kind){case`project-upserted`:case`project-removed`:UY();return;case`thread-upserted`:WY(),!i&&r&&aY(r),i?.archivedAt===null&&e.thread.archivedAt!==null&&r&&(qK.getState().removeTerminalState(r),VW.getState().clearBrowserState(r)),iQe(t,e.thread.id),zY();return;case`thread-removed`:r&&(LY(li(r)),iY.getState().clearDraftThread(r),SY.getState().clearThreadUi(li(r)),qK.getState().removeTerminalState(r),VW.getState().clearBrowserState(r)),WY();return}}function fQe(e,t){return e.invalidateQueries({queryKey:HW.all(t)})}function KY(e){return{onWelcome:(t,n)=>{e?.(t);let r=sY().readQueryClient();r&&fQe(r,n)},applyShellEvent:dQe,syncShellSnapshot:(e,t)=>{let n=tQe(e,t);YG.getState().syncServerShellSnapshot(n,t),nQe(t,n.threads.map(e=>e.id)),VY(t),cQe()},applyTerminalEvent:(e,t)=>{let n=ai(t,At.make(e.threadId)),r=qG(YG.getState(),n),i=iY.getState().getDraftThreadByRef(n)!==null;GY({serverThreadArchivedAt:r?.archivedAt,hasDraftThread:i})&&qK.getState().applyTerminalEvent(n,e)},applyBrowserEvent:(e,t)=>{let n=ai(t,At.make(e.threadId)),r=qG(YG.getState(),n),i=iY.getState().getDraftThreadByRef(n)!==null;GY({serverThreadArchivedAt:r?.archivedAt,hasDraftThread:i})&&VW.getState().applyBrowserEvent(n,e)},onShellSubscriptionError:(e,t)=>{sY().setRuntimeError(t,e)}}}function qY(){return new Date().toISOString()}function JY(e){RU.getState().patch(e,{connectionState:`connecting`,lastError:null,lastErrorAt:null})}function YY(e){let t=qY();RU.getState().patch(e,{connectionState:`connected`,authState:`authenticated`,connectedAt:t,disconnectedAt:null,lastError:null,lastErrorAt:null}),SU.getState().markConnected(e,t)}function XY(e,t){RU.getState().patch(e,{descriptor:t.environment,serverConfig:t})}function ZY(e,t){RU.getState().patch(e,{connectionState:`disconnected`,disconnectedAt:qY(),...t&&t.trim().length>0?{lastError:t,lastErrorAt:qY()}:{}})}function QY(e,t){RU.getState().patch(e,{connectionState:`error`,...UUe(t)})}function pQe(){return new Date().toISOString()}function mQe(e){let t=aU();if(!t?.environmentId)throw Error(`Unable to resolve the primary environment.`);let n=e.readConnection(t.environmentId);if(n)return n;let r=NW(),i=t.source===`paired-bearer`||!0;return e.registerConnection(QU({kind:`primary`,knownEnvironment:t,client:BGe(t),resolveEnvironmentId:()=>aU()?.environmentId??t.environmentId,...i?{readiness:r?{bearerToken:r.bearerToken}:{}}:{},...KY()}))}async function hQe(e){let t=zGe();if(!t)throw Error(`Desktop Local runtime is not authenticated. Sign in with CMMD again before importing local projects.`);let n=await $Ue({httpBaseUrl:t.httpBaseUrl,bearerToken:t.bearerToken}),r=e.readConnection(n.environmentId);if(r)return r;let i=ni({id:n.environmentId,label:t.label,source:`desktop-managed`,target:{httpBaseUrl:t.httpBaseUrl,wsBaseUrl:t.wsBaseUrl}});return e.registerConnection(QU({kind:`desktop-local`,knownEnvironment:{...i,environmentId:n.environmentId,label:n.label},client:VGe({environmentId:n.environmentId,httpBaseUrl:t.httpBaseUrl,wsBaseUrl:t.wsBaseUrl,bearerToken:t.bearerToken,onConnecting:JY,onConnected:YY,onError:(e,t)=>{RU.getState().patch(e,{connectionState:`error`,lastError:t,lastErrorAt:pQe()})},onDisconnected:ZY}),...KY()}))}var $Y=new Map;function eX(e){for(let t of e){let e=$Y.get(t);e===void 0||e<=1?$Y.delete(t):$Y.set(t,e-1)}}async function gQe(e,t){let n=e.environmentId;$Y.set(n,($Y.get(n)??0)+1);try{return t.readConnection(n)||await t.ensureCmmdRuntimeSavedEnvironmentConnection(e),!0}catch{return eX([n]),!1}}async function _Qe(e){await wU();let t=(await Promise.all(NUe().map(async t=>await gQe(t,e)?t.environmentId:null))).flatMap(e=>e===null?[]:[e]),n=!1;return()=>{n||(n=!0,eX(t))}}function tX(){return new Date().toISOString()}async function nX(e,t){t.readConnection(e)?.kind===`saved`&&(RU.getState().clear(e),await t.removeConnection(e).catch(()=>!1))}async function vQe(e,t){let n=EU(e);if(!n)throw Error(`Saved environment not found.`);let r=t.readConnection(e);if(!r){try{await t.ensureCmmdRuntimeSavedEnvironmentConnection(n)}catch(t){throw QY(e,t),t}return}JY(e);try{await r.reconnect()}catch(t){throw QY(e,t),t}}async function yQe(e,t){t.invalidate(e),SU.getState().remove(e),await MU(e),await nX(e,t)}async function bQe(e,t){let{existing:n,replacedRecord:r}=BUe({environmentId:Nt.make(e.environment.environmentId),replacesEnvironmentId:e.environment.replacesEnvironmentId}),i=xQe(e.environment,n);PU(e.signal);let a=await VUe(n),o=t.readConnection(i.environmentId)!==null&&zUe({existing:n,replacedRecord:r,record:i});return o||(t.invalidate(i.environmentId),await t.removeConnection(i.environmentId).catch(()=>!1)),r&&(t.invalidate(r.environmentId),await t.removeConnection(r.environmentId).catch(()=>!1)),await t.ensureCmmdRuntimeSavedEnvironmentConnection(i,{bearerToken:e.bearerToken,registryExpectation:n&&!r?{kind:`existing-record`,record:n}:{kind:`initial-add`},...e.signal?{signal:e.signal}:{},...e.onBootstrapRetry?{onBootstrapRetry:e.onBootstrapRetry}:{}}),SQe({record:i,replacedRecord:r,persistenceRollback:a,keepsLiveConnection:o,signal:e.signal,dependencies:t})}function xQe(e,t){let n=Nt.make(e.environmentId),{kind:r,cmmdOrganizationId:i,cmmdProjectId:a,runtimeId:o,runtimeTicketExpiresAt:s}=e;return{environmentId:n,label:e.label,wsBaseUrl:Ft(e.wsBaseUrl),httpBaseUrl:e.httpBaseUrl,createdAt:t?.createdAt??tX(),lastConnectedAt:tX(),...r===void 0?{}:{kind:r},...i===void 0?{}:{cmmdOrganizationId:i},...a===void 0?{}:{cmmdProjectId:a},...o===void 0?{}:{runtimeId:o},...s===void 0?{}:{runtimeTicketExpiresAt:s}}}async function SQe(e){let{record:t,replacedRecord:n,persistenceRollback:r,keepsLiveConnection:i,signal:a,dependencies:o}=e,s=!1;try{return PU(a),await HUe({record:t,replacedRecord:n,rollback:r,...a?{signal:a}:{}}),s=!0,PU(a),SU.getState().upsert(zU(t)),n&&o.retireEnvironmentId(n.environmentId),t}catch(e){throw i||await o.removeConnection(t.environmentId).catch(()=>!1),s&&await HU({record:t,replacedRecord:n,rollback:r}),PU(a),e}}var rX=`forge.deviceRegistry.deviceKey`,iX=`forge.deviceRegistry.runtimeId`;function CQe(e){let t=sX(rX,e.desktopIdentity?.deviceKey,`device`),n=sX(iX,e.desktopIdentity?.runtimeId,`runtime`),r=oX(e.desktopIdentity?.hostKey),i=DQe(),a=e.desktopAvailable?`desktop`:OQe(),o=e.desktopAvailable?EQe(e.desktopIdentity)??kQe(i):AQe(i);return{device:{...r?{hostKey:r}:{},deviceKey:t,displayName:o,platform:i,deviceType:a,metadata:{clientKind:e.desktopAvailable?`forge-desktop`:`forge-web`,userAgent:window.navigator.userAgent,origin:window.location.origin,...e.desktopIdentity?{desktopIdentity:{hostName:e.desktopIdentity.hostName,computerName:e.desktopIdentity.computerName,platform:e.desktopIdentity.platform}}:{}}},...e.desktopAvailable&&e.includeExecutableRuntime!==!1?{runtime:{runtimeId:n,runtimeKind:`desktop-local`,displayName:`Local Forge Desktop`,endpointUrl:e.desktopEndpointUrl??null,status:`online`,metadata:{origin:window.location.origin}}}:{}}}async function aX(){let e=await window.desktopBridge?.getDeviceIdentity?.()??null;return CQe({desktopAvailable:!!window.desktopBridge,desktopIdentity:e,includeExecutableRuntime:!1})}function oX(e){let t=e?.trim()??``;return t.length>0?t:null}function sX(e,t,n){let r=oX(t);return r?(dK(e,r),r):TQe(e,n)}function wQe(){return uK(iX)}function cX(){return uK(rX)}function TQe(e,t){let n=uK(e);if(n)return n;let r=`${t}_${crypto.randomUUID()}`;return dK(e,r),r}function EQe(e){let t=e?.displayName?.trim()??``;return t.length>0?t:null}function DQe(){let e=window.navigator.userAgent.toLowerCase();return e.includes(`iphone`)||e.includes(`ipad`)?`ios`:e.includes(`android`)?`android`:e.includes(`mac`)?`macos`:e.includes(`win`)?`windows`:e.includes(`linux`)?`linux`:`unknown`}function OQe(){let e=window.navigator.userAgent.toLowerCase();return e.includes(`ipad`)||e.includes(`tablet`)?`tablet`:e.includes(`mobi`)||e.includes(`iphone`)||e.includes(`android`)?`mobile`:`browser`}function kQe(e){return e===`macos`?`Mac`:e===`windows`?`Windows PC`:e===`linux`?`Linux Desktop`:`Desktop`}function AQe(e){return e===`web`?`Browser`:e===`macos`?`Mac Browser`:e===`windows`?`Windows Browser`:e===`linux`?`Linux Browser`:`Browser`}var lX=`forge.relayControlJournal.v1`;function uX(){if(globalThis.localStorage===void 0)throw Error(`Forge relay control recovery requires durable browser storage.`);return globalThis.localStorage}var jQe={read:()=>uX().getItem(lX),write:e=>uX().setItem(lX,e)},dX=null,fX=dt()(e=>({byRuntimeId:{},replace:t=>e({byRuntimeId:t})}));function MQe(e){e.subscribe(e=>{let t=new Set(e.records.map(e=>e.runtimeId));fX.getState().replace(Object.fromEntries([...t].map(t=>[t,lne(e.records,t)])))})}function pX(){return dX===null&&(dX=une({storage:jQe}),MQe(dX)),dX}function NQe(){let e=(0,vi.c)(1),t=fX(FQe),n;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=[],e[0]=n):n=e[0],(0,M.useEffect)(PQe,n),t}function PQe(){pX()}function FQe(e){return e.byRuntimeId}function IQe(e){let t=pX();for(let n of t.records())n.runtimeId===e&&(n.status===`failed`||n.status===`outcome-unknown`)&&t.acknowledge(n.runtimeId,n.actorSessionId,n.transportRequestId)}var mX=class extends Error{code;constructor(e,t){super(t),this.name=`RelayControlRouteError`,this.code=e}};function hX(e){let t=e&&typeof e==`object`?e.code:null;throw t===`PROTOCOL_INCOMPATIBLE`?new mX(`FORGE_RUNTIME_UPDATE_REQUIRED`,`Update Forge on the target runtime before connecting remotely.`):t===`PROTOCOL_ROLLOUT_DENIED`?new mX(`FORGE_REMOTE_CONTROL_NOT_ENABLED`,`Remote control is not enabled for this CMMD account. Synced runtime inventory remains available.`):e}async function LQe(e){let t=e.getStoredDeviceKey(),n=t?await e.apiClient.getDeviceRegistry():await e.apiClient.registerDevice(await e.buildDeviceRegistration());return t&&!n.devices.some(e=>e.deviceKey===t)&&(n=await e.apiClient.registerDevice(await e.buildDeviceRegistration())),t??=e.getStoredDeviceKey(),{deviceKey:t,registry:n}}function RQe(e){if(!e.deviceKey)throw new mX(`FORGE_CONTROL_DEVICE_UNAUTHORIZED`,`This Forge control surface could not establish CMMD identity.`);let t=e.registry.devices.find(t=>t.deviceKey===e.deviceKey);if(t?.trustState===`revoked`||t?.authorization?.revoked===!0)throw new mX(`FORGE_CONTROL_DEVICE_REVOKED`,`This Forge control surface was revoked by CMMD.`);if(!t||t.trustState!==`trusted`)throw new mX(`FORGE_CONTROL_DEVICE_UNAUTHORIZED`,`This Forge control surface is not trusted by CMMD.`);return t}function zQe(e,t){let n=async()=>RQe(await LQe(t));return{acquireRoute:async()=>{let r=await n(),i=await cne();try{let n=await t.apiClient.issueRelayControlRoute(e,{controlDeviceId:r.id,controlSessionId:t.controlSessionId,scopes:[...$t],protocolMinVersion:4,protocolMaxVersion:4,...$te(i)});return nne({route:n,runtimeId:e,endpoint:i})}catch(e){if(e instanceof sne)throw new mX(`FORGE_RUNTIME_UPDATE_REQUIRED`,e.message);return hX(e)}},acquireActionGrant:async r=>{let i=await n();try{return(await t.apiClient.issueRelayActionGrant(e,{controlDeviceId:i.id,controlSessionId:t.controlSessionId,...r})).token}catch(e){return hX(e)}}}}var gX=new Map;async function BQe(e,t){let n=Nt.make(e.runtimeId),r=t.readConnection(n);if(r)return r;JY(n);let i=pX(),a=zQe(e.runtimeId,{apiClient:gH,getStoredDeviceKey:cX,buildDeviceRegistration:aX,controlSessionId:i.controlSessionId}),o;try{o=await a.acquireRoute()}catch(e){throw QY(n,e),e}let s=o,c=vne({acquireRoute:async()=>{let e=s;return s=null,e??a.acquireRoute()},acquireActionGrant:a.acquireActionGrant,journal:i,lifecycle:{onConnecting:()=>JY(n),onAuthenticated:()=>YY(n),onDisconnected:e=>ZY(n,e.reason),onError:e=>QY(n,Object.assign(Error(e.message),e))}}),l=MW(new wW(o.relayWebSocketUrl,{trackGlobalConnection:!1},{layer:c,makeClient:tne($t)})),u=QU({kind:`saved`,knownEnvironment:{...ni({id:n,label:e.label,source:`manual`,target:{httpBaseUrl:bn()?.target.httpBaseUrl??o.relayWebSocketUrl,wsBaseUrl:o.relayWebSocketUrl}}),environmentId:n},client:l,tolerateReportedEnvironmentIdentity:!0,onConfigSnapshot:e=>XY(n,e),...KY(e=>{RU.getState().patch(n,{descriptor:e.environment})})});try{let[,e]=await Promise.all([u.ensureBootstrapped(),l.server.getConfig()]);return XY(n,e),YY(n),t.registerConnection(u)}catch(e){throw QY(n,e),await u.dispose().catch(()=>void 0),e}}function VQe(e,t){let n=Nt.make(e.runtimeId),r=t.readConnection(n);if(r)return Promise.resolve(r);let i=gX.get(n);if(i)return i;let a=BQe(e,t).finally(()=>{gX.delete(n)});return gX.set(n,a),a}var HQe=new Set([`CMMD_AUTH_REQUIRED`,`CMMD_AUTH_EXPIRED`,`INVALID_OR_NON_USER_TOKEN`,`NON_USER_BEARER`,`CMMD_REST_AUTH_ERROR`]);function _X(e){if(!e||typeof e!=`object`)return null;let t=e.code;return typeof t!=`string`||!HQe.has(t)?null:t}function vX(e,t){return e===401||e===403||_X(t)!==null}function UQe(e){if(!e||typeof e!=`object`)return!1;let t=e.status,n=e.code;return vX(typeof t==`number`?t:void 0,typeof n==`string`?{code:n}:void 0)}var yX=[1e3,2e3,4e3,8e3,12e3,16e3,2e4],WQe=9e4,GQe=[`all fibers interrupted without error`,`timed out while waiting for forge cloud runtime metadata`,`timed out while waiting for`,`to stream its shell snapshot`,`forge runtime route not found`,`fly-replay`,`could not find a good candidate`,`instance refused connection`],KQe=[`Unknown socket error`,`Failed to fetch remote auth endpoint`,`Forge runtime replay target is unavailable`,`Remote auth request failed (502)`,`Remote auth request failed (503)`,`Remote auth request failed (504)`,`Unable to connect to the Forge server WebSocket`];function qQe(e){if(typeof e!=`object`||!e)return null;let t=e.status;return typeof t==`number`&&Number.isInteger(t)?t:null}function JQe(e){if(UQe(e))return!1;let t=qQe(e);if(t===502||t===503||t===504||e._tag===`OrchestrationGetSnapshotError`)return!0;let n=e instanceof Error?e.message:String(e),r=n.toLowerCase();return GQe.some(e=>r.includes(e))||KQe.some(e=>n.includes(e))}function YQe(e){return yX[e]??yX[yX.length-1]}function XQe(){return WQe}function ZQe(e,t){if(!BU(e))return t;let n=null,r=new Promise((t,r)=>{n=globalThis.setTimeout(()=>{r(Error(`Timed out while waiting for Forge Cloud runtime metadata for ${e.environmentId}. The VM may still be starting.`))},XQe())});return Promise.race([t,r]).finally(()=>{n!==null&&globalThis.clearTimeout(n)})}function bX(e){let t=e.toLowerCase();return t.includes(`authentication`)||t.includes(`unauthorized`)||t.includes(`forbidden`)||t.includes(`credential`)||t.includes(`runtime ticket`)||t.includes(`status 401`)||t.includes(`status 403`)}function QQe(e){switch(e){case`running`:return`green`;case`provisioning`:case`starting`:return`amber-pulse`;case`registered`:return`idle`;case`stopped`:case`suspended`:case`draining`:return`grey`;case`destroyed`:return`idle`;case`error`:return`red-pulse`;default:return`grey`}}function xX(e){let t=e.githubRepoFullName;return t?t.split(`/`)[1]??t:$Qe(e.projectName)}function $Qe(e){let t=e.trim().toLowerCase().replaceAll(`'`,``).replaceAll(`"`,``).replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``);return t.length>0?t:`project`}function SX(e){if(!e)return null;let t=e.trim().replace(/\/+$/,``);return t.length>0?t:null}function CX(e){let t=SX(e??void 0);return t&&wX(t).length>1?t:null}function wX(e){return e.split(`/`).flatMap(e=>e.split(`\\`)).filter(e=>e.length>0)}function TX(e){return e?wX(e).at(-1)??null:null}function e$e(e){let t=e.rows.length>0;return(e.isLoading||e.startupPhase===`auth-refreshing`)&&!t?{kind:`loading`}:e.error&&!t?{kind:`error-no-rows`,message:e.error}:e.error&&t?{kind:`stale-rows`,message:e.error}:t?{kind:`rows`}:{kind:`empty`}}function t$e(e,t){if(!t)return!1;let n=e.repositoryIdentity?.canonicalKey;return n!==void 0&&!n.toLowerCase().endsWith(`/${t.toLowerCase()}`)}function n$e(e,t){return e?e.cmmdOrganizationId===t.cmmdOrganizationId&&e.cmmdProjectId===t.cmmdProjectId:!1}function r$e(e,t){let n=e.filter(e=>!e.cmmdRegistration),r=CX(t.workspaceRoot),i=r?n.filter(e=>SX(e.cwd)===r):[];if(i.length>0)return i;let a=xX(t).toLowerCase();return n.filter(e=>TX(e.cwd)?.toLowerCase()===a)}function EX(e,t,n){let r=e[t];if(!r)return null;let i=r.projectIds.flatMap(e=>{let t=r.projectById[e];return!t||t$e(t,n.githubRepoFullName)?[]:[t]}),a=i.filter(e=>n$e(e.cmmdRegistration,n)),o=a.length>0?a:r$e(i,n),s=o.length===1?o[0]:void 0;return s?{environmentId:t,projectId:s.id}:null}function i$e(e){return{cmmdOrganizationId:e.cmmdOrganizationId,cmmdProjectId:e.cmmdProjectId,githubRepoFullName:e.githubRepoFullName,projectName:e.projectName,workspaceRoot:e.workspaceRoot}}function a$e(e,t){let n=e.cmmdEnvironmentId??e.environmentId;if(e.runtimeId===null||n===null)return null;let r=EX(t,Nt.make(n),i$e(e));return r?ii(r.environmentId,r.projectId):null}function o$e(e,t){return e===t?!0:e===null||t===null?!1:e.environmentId===t.environmentId&&e.projectId===t.projectId}function s$e(e,t){let n=!1,r=e.map(e=>{let r=a$e(e,t);return o$e(r,e.resolvedRef)?e:(n=!0,{...e,resolvedRef:r})});return n?r:e}var DX=`registered`,c$e={destroyed:`destroyed`,superseded:`destroyed`,error:`error`,failed:`error`,draining:`draining`,recycling:`draining`,stopped:`stopped`,suspended:`suspended`,provisioning:`provisioning`,created:`provisioning`,starting:`starting`,restarting:`starting`};function OX(e,t){let n=c$e[e];if(n!==void 0)return n;if(e!==`running`)return`stopped`;if(t)switch(t){case`app_ready`:case`server_ready`:case`ready`:case`supervisor_up`:return`running`;case`starting`:case`image_pulling`:case`waiting_state`:return`starting`;case`error`:return`error`;default:return`running`}return`running`}function l$e(e){return e===`destroyed`}function u$e(e){switch(e){case`running`:case`starting`:case`provisioning`:return!0;case`suspended`:return!0;case`registered`:case`stopped`:case`draining`:case`error`:case`destroyed`:return!1;default:return!1}}function d$e(e){let t=e.shortName?.trim();if(t)return t;if(e.projectName)return e.projectName;if(e.githubRepoFullName){let t=e.githubRepoFullName.split(`/`),n=t[t.length-1];if(n)return n}return`project ${e.cmmdProjectId}`}var kX={state:`unknown`,label:`Unknown`,detail:`Current Environment availability has not been observed.`,tone:`muted`,automaticWakeAllowed:!1,shellConnected:!1,shellMayEstablishReady:!1};function AX(e,t,n,r,i,a,o=!1){return{state:e,label:t,detail:n,tone:r,automaticWakeAllowed:i,shellConnected:a,shellMayEstablishReady:o}}function f$e(e,t){return e.ownerIntent===`paused`?AX(`paused`,`Paused`,`Resume before live work can wake this Environment.`,`warning`,!1,t):e.ownerIntent===`deleting`?AX(`deleting`,`Deleting`,`This Environment is being removed.`,`muted`,!1,t):null}function p$e(e,t){return e.executionAdmission.state===`allowed`?null:AX(`unavailable`,`Unavailable`,`This Environment is not accepting live work while it drains.`,`warning`,!1,t)}function jX(e,t=!1){if(e==null)return kX;let n=f$e(e,t);if(n!==null)return n;if(e.ownerIntent!==`active`)return kX;let r=p$e(e,t);if(r!==null)return r;let{provider:i,guestReadiness:a,activeWork:o}=e;return i.observedAt===null||i.failure!==null||i.state===`absent`||i.state===`unknown`?AX(`unknown`,`Unknown`,`Current provider availability has not been observed.`,`muted`,e.automaticWakeAllowed,t):i.state===`sleeping`?AX(`sleeping`,`Sleeping`,`Live work wakes this Environment automatically.`,`muted`,e.automaticWakeAllowed,t):a.observedAt===null||a.failure!==null||a.state===`unknown`?AX(`unknown`,`Unknown`,`Current guest readiness has not been observed.`,`muted`,e.automaticWakeAllowed,t):a.state===`starting`?AX(`starting`,`Starting`,`Preparing live execution.`,`warning`,e.automaticWakeAllowed,t):a.state===`degraded`?AX(`degraded`,`Degraded`,`A required service needs attention.`,`warning`,e.automaticWakeAllowed,t):a.state===`failed`?AX(`needs-attention`,`Needs attention`,`The readiness check failed.`,`destructive`,e.automaticWakeAllowed,t):t?AX(`ready`,`Ready`,null,`success`,e.automaticWakeAllowed,!0):o.state===`active`?AX(`ready`,`Ready`,null,`success`,e.automaticWakeAllowed,t):AX(`unknown`,`Unknown`,`No current execution proof is available.`,`muted`,e.automaticWakeAllowed,t,!0)}function m$e(e,t){return!t||!e.shellMayEstablishReady?e:AX(`ready`,`Ready`,null,`success`,e.automaticWakeAllowed,!0)}function MX(e){return e?OX(e.status,e.readinessPhase??void 0):DX}function h$e(e){return e.runtime?.githubRepoFullName??e.githubRepoFullName??null}function g$e(e,t){return{cmmdOrganizationId:e.organizationId,cmmdProjectId:e.projectId,projectName:d$e({shortName:e.shortName??null,projectName:e.projectName??null,githubRepoFullName:t,cmmdProjectId:e.projectId}),githubRepoFullName:t,iconUrl:e.iconUrl??null,icon:e.icon??null}}function _$e(e){return e?{runtimeId:e.runtimeId,workspaceRoot:e.workspaceRoot??null,status:MX(e),desiredState:NX(e.desiredState),environmentId:zi(e.runtimeId),cmmdEnvironmentId:e.environmentId??null,...e.maintenance===void 0?{}:{maintenance:e.maintenance}}:{runtimeId:null,workspaceRoot:null,status:DX,desiredState:null,environmentId:null,cmmdEnvironmentId:null}}function NX(e){return e===`running`||e===`stopped`||e===`destroyed`?e:null}function v$e(e){return{...g$e(e,h$e(e)),registeredAt:e.registeredAt??null,..._$e(e.runtime),removal:e.removal??null,resolvedRef:null}}function y$e(e){return e.map(v$e)}function b$e(e){return e.map(e=>({runtimeId:e.runtime.runtimeId,cmmdOrganizationId:e.organizationId,cmmdUserId:e.userId,displayName:e.displayName??null,userFirstName:e.userFirstName??null,environmentId:zi(e.runtime.runtimeId),cmmdEnvironmentId:e.runtime.environmentId??null,status:MX(e.runtime),desiredState:NX(e.runtime.desiredState),...e.runtime.maintenance===void 0?{}:{maintenance:e.runtime.maintenance},lifecycle:jX(e.lifecycle)}))}var PX=`forge:cmmd-cloud-project-catalog:v5`,x$e=pn({runtimeId:Yt(k),cmmdOrganizationId:qt,cmmdProjectId:qt,cmmdEnvironmentId:Yt(k),registeredAt:St(Yt(k)),projectName:k,githubRepoFullName:Yt(k),workspaceRoot:Yt(k),iconUrl:St(Yt(k)),icon:St(Yt(k)),status:k,desiredState:St(Yt(k)),environmentId:Yt(k),removal:St(Yt(pn({operationId:k,deletePlanningProject:Ut,status:rn([`pending`,`running`,`retryable`]),phase:rn([`destroy_runtime`,`purge_execution_state`,`delete_planning_project`,`unregister`,`complete`]),lastErrorCode:Yt(k),lastErrorMessage:Yt(k),updatedAt:k})))}),FX=pn({rows:sn(x$e),environments:sn(pn({runtimeId:k,cmmdOrganizationId:qt,cmmdUserId:qt,displayName:St(Yt(k)),userFirstName:St(Yt(k)),environmentId:k,cmmdEnvironmentId:Yt(k),status:k,desiredState:Yt(k)})),fetchedAt:k});function S$e(){Fi(PX)}function C$e(){try{let e=Ni(PX,FX);return e?{rows:e.rows.map(e=>({runtimeId:e.runtimeId,cmmdOrganizationId:e.cmmdOrganizationId,cmmdProjectId:e.cmmdProjectId,registeredAt:e.registeredAt??null,projectName:e.projectName,githubRepoFullName:e.githubRepoFullName,workspaceRoot:e.workspaceRoot,iconUrl:e.iconUrl??null,icon:e.icon??null,status:e.runtimeId===null?DX:OX(e.status),desiredState:NX(e.desiredState),environmentId:e.runtimeId===null?null:zi(e.runtimeId),cmmdEnvironmentId:e.cmmdEnvironmentId,resolvedRef:null,removal:e.removal??null})),environments:e.environments.map(e=>({runtimeId:e.runtimeId,cmmdOrganizationId:e.cmmdOrganizationId,cmmdUserId:e.cmmdUserId,displayName:e.displayName??null,userFirstName:e.userFirstName??null,cmmdEnvironmentId:e.cmmdEnvironmentId,status:OX(e.status),desiredState:NX(e.desiredState),environmentId:zi(e.runtimeId)})),fetchedAt:e.fetchedAt}:null}catch{return null}}function w$e(e,t,n){try{Pi(PX,{rows:e.map(e=>({runtimeId:e.runtimeId,cmmdOrganizationId:e.cmmdOrganizationId,cmmdProjectId:e.cmmdProjectId,cmmdEnvironmentId:e.cmmdEnvironmentId,registeredAt:e.registeredAt,projectName:e.projectName,githubRepoFullName:e.githubRepoFullName,workspaceRoot:e.workspaceRoot,iconUrl:e.iconUrl,icon:e.icon,status:e.status,environmentId:e.environmentId,removal:e.removal})),environments:t,fetchedAt:n},FX)}catch{}}var IX=1e3;function T$e(e){return e.reconnectPhase===`idle`?`hidden`:e.reconnectPhase===`exhausted`?`actionable`:!e.hasConnected||!e.stableConnectionSeen?`startup-pending`:`actionable`}function LX(e){let t=e.maxAttempts??2,n=e.retryDelayMs??1e3;return e.failedAttempt<t?{kind:`retry`,delayMs:n,nextAttempt:e.failedAttempt+1}:{kind:`terminal`,attempt:e.failedAttempt}}var E$e=`auth-required`,D$e=`cloud-projects`;async function O$e(e,t,n){let r=null,i=new hU(e).listCloudProjects({signal:t.signal}).then(e=>({kind:`catalog`,catalog:e})).catch(e=>({kind:`failed`,error:e})),a=new Promise(e=>{r=setTimeout(()=>{t.abort(),e({kind:`timed-out`})},n)});try{return await Promise.race([i,a])}finally{r!==null&&clearTimeout(r)}}function k$e(e){let t=e.accessToken??e.resolveAccessToken?.(),n={Accept:`text/event-stream`};return t&&(n.Authorization=`Bearer ${t}`),n}function A$e(e,t){let n=new URL(e);return n.pathname=t,n.search=``,n.hash=``,n.toString()}async function RX(e){return(e.status===401||e.status===403)&&(await P$e(e)||e.status===401)?`auth-required`:e.status===404||e.status===405||!e.ok||!e.body?`fallback`:e.body.getReader()}async function j$e({reader:e,signal:t,onAuthRequired:n,onCatalog:r}){let i=new TextDecoder,a=``;try{for(;!t.aborted;){let{done:o,value:s}=await e.read();if(t.aborted||o)return;let c=M$e(a,i.decode(s,{stream:!0}));if(a=c.buffer,c.messages.some(e=>N$e(e,n,r)))return}}finally{e.releaseLock()}}function M$e(e,t){let n=`${e}${t}`.split(/\n\n/);return{buffer:n.pop()??``,messages:n}}function N$e(e,t,n){let r=I$e(e);if(r.name===E$e)return t(),!0;let i=r.name===D$e?F$e(r.data):null;return i&&n(i),!1}async function P$e(e){try{let t=await e.clone().json();return typeof t?.code==`string`&&t.code===`CMMD_AUTH_REQUIRED`}catch{return!1}}function F$e(e){try{return lU(JSON.parse(e))}catch{return null}}function I$e(e){let t=``,n=``;for(let r of e.split(`
|
|
1021
|
+
`))r.startsWith(`event: `)&&(t=r.slice(7).trim()),r.startsWith(`data: `)&&(n=r.slice(6).trim());return{name:t,data:n}}var L$e=`/api/cmmd/forge-cloud-projects`,R$e=`/api/cmmd/forge-cloud-projects/events`,z$e=15e3,B$e=3e4,V$e=2e3,H$e=3e4,U$e=200;function zX(e){return e!==null&&clearTimeout(e),null}function W$e({config:e,onEvent:t}){let n=!1,r=!1,i=!1,a=!1,o=!1,s=0,c=null,l=0,u=null,d=null,f=0,p=null,m=null,h=null,g=null;function _(){p=zX(p),g=zX(g)}function v(){f+=1,d?.controller.abort(),d=null}function y(e,t){return d?.controller===e&&d.generation===t&&f===t}function b(e){return u===e}function x(){v(),u?.abort(),u=null,_(),h=zX(h)}function S(){return!r&&!a}function C(e){t({kind:`catalog`,catalog:e,fetchedAt:new Date().toISOString()})}function w(e){a||r||(a=!0,c=null,x(),t({kind:`auth-required`,message:e}))}function T(e,n){if(r||a)return;s+=1,c=n;let i=LX({failedAttempt:s,retryDelayMs:IX});if(i.kind===`terminal`){w(e);return}u?.abort(),u=null,g=zX(g),t({kind:`auth-refreshing`}),o=!0,h=zX(h),h=setTimeout(()=>{h=null,o=!1,he()},i.delayMs)}async function E(){if(!S())return!1;let n=new AbortController,r=++f;d={controller:n,generation:r},t({kind:`loading`});try{return ee(await O$e(e,n,z$e),n,r)}finally{y(n,r)&&(d=null)}}function ee(e,t,n){return!S()||!y(t,n)?!1:e.kind===`catalog`?te(e.catalog):e.kind===`timed-out`?ne():re(e.error)}function te(e){return c!==`sse`&&(s=0,c=null),o=!1,C(e),!0}function ne(){return t({kind:`failed`,message:`Cloud connection refresh timed out. Showing last known connections.`}),!a}function re(e){let n=e instanceof Error?e.message:`Failed to load cloud projects`;return yH(e)||G$e(e)||/authentication required/i.test(n)?T(n,`list`):t({kind:`failed`,message:n}),!a}function ie(){S()&&(p=zX(p),p=setTimeout(async()=>{await E(),S()&&ie()},B$e))}function ae(){!S()||o||(i?ie():se(l))}function oe(e){l=e+1;let t=Math.min(V$e*2**e,H$e);g=zX(g),g=setTimeout(()=>{g=null,se(l)},t)}function D(e){s=0,c=null,l=0,C(e)}async function se(t){if(!S()||u!==null)return;u=new AbortController;let n=u,r=e.eventsUrl??A$e(e.cmmdHttpBaseUrl,`/api/forge/context/runtimes/events`),i=e.eventsUrl?{Accept:`text/event-stream`}:k$e(e);try{await ce(await fetch(r,{headers:i,signal:n.signal,credentials:`include`}),n,t)}catch{pe(n)}}async function ce(e,t,n){if(!le(t))return;let r=await RX(e);if(le(t)){if(typeof r==`string`){fe(r);return}await j$e({reader:r,signal:t.signal,onAuthRequired:()=>ue(t),onCatalog:e=>de(t,e)}),me(t,n)}}function le(e){return S()&&b(e)}function ue(e){le(e)&&T(`CMMD authentication required. Sign in again to continue.`,`sse`)}function de(e,t){le(e)&&D(t)}function fe(e){if(u=null,e===`auth-required`){T(`CMMD authentication required. Sign in again to continue.`,`sse`);return}i=!0,ie()}function pe(e){e.signal.aborted||!le(e)||(u=null,i=!0,ie())}function me(e,t){e.signal.aborted||!le(e)||(u=null,oe(t))}function he(){return E().then(e=>{e&&S()&&ae()})}return{initialize(){n||r||(n=!0,he())},refresh(){r||(v(),m=zX(m),m=setTimeout(()=>{m=null,a=!1,o=!1,s=0,c=null,x(),he()},U$e))},teardown(){r=!0,m=zX(m),x()}}}function G$e(e){return typeof e==`object`&&!!e&&`kind`in e&&e.kind===`auth`}var BX={connected:!1,isLoading:!1,error:null,rows:[],environments:[],fetchedAt:null,stale:!1,startupPhase:`idle`,capacity:null};function K$e({config:e}){let t=C$e(),n=t?{...BX,isLoading:!0,rows:t.rows,environments:t.environments,fetchedAt:t.fetchedAt,stale:!0}:BX,r=new Set;function i(e){n=e;for(let e of r)e()}function a(e){switch(e.kind){case`loading`:i({...n,isLoading:!0,error:null});return;case`catalog`:{let t=y$e(e.catalog.listRowsForDisplay()),n=b$e(e.catalog.listEnvironmentsForDisplay());w$e(t,n,e.fetchedAt),i({connected:!0,isLoading:!1,error:null,rows:t,environments:n,fetchedAt:e.fetchedAt,stale:!1,startupPhase:`idle`,capacity:e.catalog.capacity});return}case`failed`:i({...n,connected:!1,isLoading:!1,error:e.message,stale:n.rows.length>0,startupPhase:`idle`});return;case`auth-refreshing`:i({...n,connected:!1,isLoading:!0,error:null,stale:n.rows.length>0,startupPhase:`auth-refreshing`});return;case`auth-required`:i({...n,connected:!1,isLoading:!1,error:e.message,stale:n.rows.length>0,startupPhase:`idle`}),mn(`cmmd-runtimes`);return}}let o=W$e({config:e,onEvent:a});return{subscribe(e){return r.add(e),()=>r.delete(e)},read(){return n},initialize(){o.initialize()},refresh(){o.refresh()},_teardown(){o.teardown()},_setState(e){i(e)}}}var VX=null;function HX(e){return typeof window<`u`&&window.location?.href?new URL(e,window.location.href).toString():new URL(e,`http://localhost`).toString()}function UX(){return{cmmdHttpBaseUrl:`https://cmmd.ai`,resolveAccessToken:()=>null,listUrl:L$e,eventsUrl:R$e,destroyUrl:e=>HX(`/api/cmmd/forge-runtimes/${encodeURIComponent(e)}/destroy`),lifecycleUrl:(e,t)=>HX(`/api/cmmd/forge-runtimes/${encodeURIComponent(e)}/${t}`),updateCommitUrl:e=>HX(`/api/cmmd/forge-runtimes/${encodeURIComponent(e)}/update-commit`),updateCommitOperationUrl:(e,t)=>HX(`/api/cmmd/forge-runtimes/${encodeURIComponent(e)}/update-commit/${encodeURIComponent(String(t))}`),ensureUrl:HX(`/api/cmmd/forge-runtimes/ensure`)}}function WX(){return VX===null&&(VX=K$e({config:UX()})),VX}function q$e(){WX().refresh()}function J$e(e){return WX().subscribe(e)}function GX(){return WX().read()}function Y$e(e){let t=(0,vi.c)(9),n=e?.enabled??!0,r,i;t[0]===n?(r=t[1],i=t[2]):(r=()=>{n&&WX().initialize()},i=[n],t[0]=n,t[1]=r,t[2]=i),(0,M.useEffect)(r,i);let a=(0,M.useSyncExternalStore)(J$e,GX,GX),o=YG(X$e),s,c;t[3]!==o||t[4]!==a.rows?(c=s$e(a.rows,o),t[3]=o,t[4]=a.rows,t[5]=c):c=t[5],s=c;let l=s,u;return t[6]!==l||t[7]!==a?(u=l===a.rows?a:{...a,rows:l},t[6]=l,t[7]=a,t[8]=u):u=t[8],u}function X$e(e){return e.environmentStateById}var Z$e=`forge:cloud-runtime-handoffs:v2`,Q$e=3e5,KX=new Map,$$e={clear:()=>KX.clear(),getItem:e=>KX.get(e)??null,key:e=>Array.from(KX.keys())[e]??null,get length(){return KX.size},removeItem:e=>KX.delete(e),setItem:(e,t)=>KX.set(e,t)};function e1e(){return typeof window<`u`?window.localStorage:globalThis.localStorage??$$e}var qX=dt()(QG(e=>({byRuntimeId:{},record:t=>e(e=>({byRuntimeId:{...e.byRuntimeId,[t.runtimeId]:t}})),clearRuntime:t=>e(e=>t in e.byRuntimeId?{byRuntimeId:Object.fromEntries(Object.entries(e.byRuntimeId).filter(([e])=>e!==t))}:e),reconcileCatalog:(t,n=Date.now())=>e(e=>{let r=Object.entries(e.byRuntimeId).filter(([,e])=>{if(n-e.recordedAt>Q$e)return!1;let r=t.find(t=>t.cmmdOrganizationId===e.cmmdOrganizationId&&t.cmmdProjectId===e.cmmdProjectId);return r?.runtimeId===e.previousCatalogRuntimeId&&r.registeredAt===e.catalogRegisteredAt});return r.length===Object.keys(e.byRuntimeId).length?e:{byRuntimeId:Object.fromEntries(r)}}),reset:()=>e({byRuntimeId:{}})}),{name:Z$e,storage:XG(e1e),partialize:e=>({byRuntimeId:e.byRuntimeId}),version:2}));function t1e(e){qX.getState().record({...e,recordedAt:Date.now()})}function n1e(e){qX.getState().clearRuntime(e)}var r1e=new Set([`filesystem`,`terminal`,`git`,`project-write`]);function i1e(e){return e===`desktop-local`}function a1e(e){return e===`cloud`||e===`cloud-vm`||e===`cmmd`||e===`github`}function JX(e){return e.actionKind===`cloud-api`?{available:!0,route:`cloud`,requiresPermissionGate:!1,title:`Cloud API route`,description:`Cloud and Command work routes through authenticated Forge Cloud APIs.`}:r1e.has(e.actionKind)?a1e(e.workSource)?e.workSource===`cloud-vm`&&e.executionRuntime===`cloud`?{available:!0,route:`cloud-vm`,requiresPermissionGate:!1,title:`Cloud VM route`,description:`Filesystem, terminal, git, and project writes run inside the user's Forge Cloud VM.`}:e.executionRuntime===`cloud`?{available:!0,route:`cloud`,requiresPermissionGate:!1,title:`Cloud work route`,description:`Cloud-scoped filesystem, terminal, git, and project writes run in the Forge Cloud runtime.`}:{available:!1,route:`blocked`,requiresPermissionGate:!1,title:`Open in Forge Cloud`,description:`Cloud projects must execute inside the Forge Cloud runtime. Local Desktop cannot run cloud project filesystem, terminal, git, or project-write actions.`}:i1e(e.workSource)?e.surface===`desktop-local`||e.executionRuntime===`desktop-local`?{available:!0,route:`desktop-local`,requiresPermissionGate:!1,title:`Desktop local route`,description:`Local filesystem, terminal, git, and project writes run through the Desktop local backend.`}:e.executionRuntime===`dev-local-web`?{available:!0,route:`dev-local-web`,requiresPermissionGate:!1,title:`Dev local route`,description:`Local Web is a development-only projection and routes local actions through the dev server.`}:{available:!1,route:`blocked`,requiresPermissionGate:!1,title:`Switch to Desktop Local`,description:`Local projects must execute in the Desktop Local runtime. Forge Cloud cannot run local filesystem, terminal, git, or project-write actions.`}:{available:!1,route:`blocked`,requiresPermissionGate:!1,title:`Unknown work source`,description:`Forge cannot safely route local actions for this work source yet.`}:{available:!1,route:`blocked`,requiresPermissionGate:!1,title:`Unsupported route`,description:`Forge does not have a runtime route for this action yet.`}}var o1e=`Ready to use. Your cloud project starts when you open the first thread.`;function s1e(e){let t=JX({actionKind:`project-write`,surface:`cloud-official`,workSource:`cloud-vm`,executionRuntime:`cloud`});return{actionAuthority:`runtime`,surface:`cloud-official`,hostKind:`user-cloud-vm`,workSource:`cloud-vm`,executionRuntime:`cloud`,modelRuntime:`cloud`,linkState:`cloud-only`,workspaceIdentity:null,hideLocalPath:!0,label:`Cloud project`,description:e?`This project runs in your Forge Cloud VM.`:o1e,actionRouteLabel:t.title,actionRouteDescription:t.description,actionRouteAvailable:t.available,requiresPermissionGate:t.requiresPermissionGate}}var c1e=3e5;function YX(e,t,n=Date.now()){let r=new Map,i=new Map;for(let t of e){let e={cmmdOrganizationId:t.cmmdOrganizationId,cmmdProjectId:t.cmmdProjectId};r.set(ZX(e),e),t.runtimeId!==null&&i.set(t.runtimeId,e)}for(let a of t){if(n-a.recordedAt>c1e)continue;let t=r.get(ZX({cmmdOrganizationId:a.cmmdOrganizationId,cmmdProjectId:a.cmmdProjectId})),o=e.find(e=>e.cmmdOrganizationId===a.cmmdOrganizationId&&e.cmmdProjectId===a.cmmdProjectId);t&&o?.runtimeId===a.previousCatalogRuntimeId&&o.registeredAt===a.catalogRegisteredAt&&!i.has(a.runtimeId)&&i.set(a.runtimeId,t)}return i}function XX(e){return e.environmentId??`cmmd-cloud-project:${e.cmmdOrganizationId}:${e.cmmdProjectId}`}function l1e(e){return{environmentId:XX(e),workspaceRoot:e.workspaceRoot,resolvedRef:e.resolvedRef}}function ZX(e){return`cloud:${e.cmmdOrganizationId}:${e.cmmdProjectId}`}function u1e(e){let t=/^cloud:(\d+):(\d+)$/.exec(e??``);return t?{cmmdOrganizationId:Number(t[1]),cmmdProjectId:Number(t[2])}:null}function d1e(e){return`cloud-runtime:${e}`}var f1e=`cloud-unconnected:`;function p1e(e,t,n=[]){let r=ZX(e);return QX({id:Zt.make(`${f1e}${r}`),environmentId:Nt.make(XX(e)),name:e.projectName,cwd:``,repositoryIdentity:null,availability:void 0,defaultModelSelection:null,createdAt:void 0,updatedAt:void 0,scripts:[],projectKey:r,environmentPresence:`remote-only`,source:s1e(e.runtimeId!==null),memberProjectRefs:t?[t]:[],remoteEnvironmentLabels:[],worktreeMembers:[],activeWorktreeKey:null,preConnectCloud:{runtimeId:e.runtimeId,cmmdOrganizationId:e.cmmdOrganizationId,cmmdProjectId:e.cmmdProjectId,cmmdEnvironmentId:e.cmmdEnvironmentId,registeredAt:e.registeredAt,projectName:e.projectName,githubRepoFullName:e.githubRepoFullName,workspaceRoot:e.workspaceRoot,iconUrl:e.iconUrl,icon:e.icon,status:e.status,removal:e.removal},cloudRemoval:e.removal},n)}function QX(e,t){if(t.length===0)return e;let n=[...e.memberProjectRefs],r=new Set(n.map(e=>`${e.environmentId}:${e.projectId}`));for(let e of t){let t=`${e.environmentId}:${e.projectId}`;r.has(t)||(r.add(t),n.push(e))}return n.length===e.memberProjectRefs.length?e:{...e,memberProjectRefs:n}}function $X(e,t,n,r){if(!e)return null;let i=t.find(t=>t.cmmdEnvironmentId===String(e));if(i)return{row:i,runtimeId:i.runtimeId,matchedByHandoff:!1};let a=Vi(e).legacyRuntimeId;if(a){let e=t.find(e=>e.runtimeId===a);if(e)return{row:e,runtimeId:a,matchedByHandoff:!1};let i=YX(t,n,r).get(a);if(!i)return null;let o=t.find(e=>e.cmmdOrganizationId===i.cmmdOrganizationId&&e.cmmdProjectId===i.cmmdProjectId);return o?{row:o,runtimeId:a,matchedByHandoff:!0}:null}let o=t.find(t=>t.runtimeId===null&&XX(t)===String(e));return o?{row:o,runtimeId:null,matchedByHandoff:!1}:null}function m1e(e,t=e.runtimeId){return{runtimeId:t,cmmdOrganizationId:e.cmmdOrganizationId,cmmdProjectId:e.cmmdProjectId,cmmdEnvironmentId:e.cmmdEnvironmentId,registeredAt:e.registeredAt,projectName:e.projectName,githubRepoFullName:e.githubRepoFullName,workspaceRoot:e.workspaceRoot,iconUrl:e.iconUrl,icon:e.icon,status:e.status,desiredState:e.desiredState}}function h1e(e){return e.desiredState===`stopped`}var g1e=15e3;function _1e(e){return e===401||e===403}function v1e(e){return typeof e!=`object`||!e?!1:e.retryable===!0}function eZ(e){return _1e(e.status)||e.attempt>=e.maxAttempts||e.status>=200&&e.status<300?!1:e.status>=500||e.status===409&&v1e(e.body)}function y1e(e,t){let n=e?.trim();if(!n)return null;if(/^-?\d+$/.test(n))return Number(n)*1e3;let r=Date.parse(n);return Number.isNaN(r)?null:r-t}function tZ(e){let t=e=>Math.min(g1e,Math.max(0,e)),n=y1e(e.retryAfter,e.nowMs??Date.now());return t(n===null?300*2**Math.max(0,e.attempt-1):n)}var b1e=6e4;function x1e(e,t){if(!e||typeof e!=`object`)return t;let n=e.error;return typeof n==`string`&&n.trim().length>0?n:t}var nZ=`CMMD returned an invalid Cloud runtime connection descriptor.`;function rZ(e,t){let n=e[t];if(typeof n!=`string`||n.length===0)throw Error(nZ);return n}function S1e(e){if(!e||typeof e!=`object`)throw Error(nZ);let t=e;return{httpBaseUrl:rZ(t,`httpBaseUrl`),wsBaseUrl:rZ(t,`wsBaseUrl`),bearerToken:rZ(t,`bearerToken`),expiresAt:rZ(t,`expiresAt`)}}async function C1e(e){let t=hn(`/api/cmmd/forge-runtimes/${encodeURIComponent(e.runtimeId)}/connect`),n=yn({method:`POST`,...e.signal?{signal:e.signal}:{},headers:{"Content-Type":`application/json`},body:JSON.stringify(e.organizationId===void 0?{}:{organizationId:e.organizationId})});for(let r=1;r<=8;r+=1){let i=await fetch(t,n),a=await i.json().catch(()=>null);if(i.ok)return S1e(a);if(!eZ({status:i.status,body:a,attempt:r,maxAttempts:8})){let e=vX(i.status,a)?`CMMD authentication expired while renewing the Cloud runtime connection. Sign in again.`:`CMMD could not renew the Cloud runtime connection (${i.status}).`;throw Object.assign(Error(x1e(a,e)),{status:i.status,..._X(a)?{code:_X(a)}:{}})}await IU(tZ({attempt:r,retryAfter:i.headers.get(`retry-after`)}),e.signal)}throw Error(`Cloud runtime connection retry budget was exhausted.`)}function w1e(e,t){if(!e?.expiresAt)return!0;let n=Date.parse(e.expiresAt);return!Number.isFinite(n)||n<=t+b1e}function iZ(e){let t=e.requestDescriptor??C1e,n=e.now??Date.now,r=e.initialDescriptor??null,i=null,a=!1,o=new AbortController,s=e=>FU(e,o.signal),c=()=>i||(i=s(t({runtimeId:e.runtimeId,...e.organizationId===void 0?{}:{organizationId:e.organizationId},signal:o.signal})).then(async t=>(await s(Promise.resolve(e.validateDescriptor?.(t))),await s(Promise.resolve(e.persistDescriptor?.(t))),await s(Promise.resolve()),r=t,a=!1,t)).then(e=>(i=null,e),e=>{throw i=null,e}),i);return{acquire:e=>{if(o.signal.aborted)return s(Promise.resolve(r));let t=e?.forceRefresh||a||w1e(r,n())?c():Promise.resolve(r);return FU(s(t),e?.signal)},invalidate:()=>{a=!0},dispose:()=>{o.abort()}}}function T1e(e){let t=e.runtimeId?.trim();if(t)return t;let n=Vi(e.environmentId).legacyRuntimeId;if(n)return n;let r=GX().rows,i=Object.values(qX.getState().byRuntimeId);return $X(e.environmentId,r,i)?.runtimeId??null}function E1e(e,t,n,r){let i=e,a=iZ({runtimeId:t,...e.cmmdOrganizationId===void 0?{}:{organizationId:e.cmmdOrganizationId},...n===void 0?{}:{initialDescriptor:{httpBaseUrl:e.httpBaseUrl,wsBaseUrl:e.wsBaseUrl,bearerToken:n,expiresAt:e.runtimeTicketExpiresAt??null}},validateDescriptor:async e=>{await XU({httpBaseUrl:e.httpBaseUrl,bearerToken:e.bearerToken})},persistDescriptor:async e=>{if(r&&!r())throw Error(`Saved environment changed while its connection was being acquired.`);let t={...zU(i),httpBaseUrl:e.httpBaseUrl,wsBaseUrl:Ft(e.wsBaseUrl),...e.expiresAt===null?{}:{runtimeTicketExpiresAt:e.expiresAt},lastConnectedAt:new Date().toISOString()};await AU(t),await MU(t.environmentId),SU.getState().upsert(t),i=t}});return WUe(e.environmentId,a),a}function D1e(e){let t={wsBaseUrl:e.record.wsBaseUrl,httpBaseUrl:e.record.httpBaseUrl,bearerToken:e.bearerToken,expiresAt:e.record.runtimeTicketExpiresAt??null};return{acquire:()=>Promise.resolve(t)}}var O1e=12e4,k1e=3e4,aZ=3e4;function oZ(e){let t=e.expiresAt?Date.parse(e.expiresAt):NaN;if(!Number.isFinite(t))throw Error(`Cloud runtime authority descriptor has no valid expiry.`);return t}function A1e(e){if(!e||typeof e!=`object`)return!1;let t=e.status;return t===401||t===403}function j1e(e){let t=e.now??Date.now,n=e.renewalSkewMs??O1e,r=!1,i=null,a=null,o=oZ(e.initialDescriptor),s=()=>{i!==null&&(globalThis.clearTimeout(i),i=null)},c=a=>{if(r)return;s();let c=oZ(a);o=c;let l=Math.max(t(),c-n);e.onState?.({kind:`scheduled`,expiresAt:new Date(c).toISOString(),renewAt:new Date(l).toISOString()}),i=globalThis.setTimeout(()=>{i=null,u().catch(()=>void 0)},Math.max(0,l-t()))},l=()=>{if(r)return null;let e=t()+aZ;return e>=o?null:(i=globalThis.setTimeout(()=>{i=null,u().catch(()=>void 0)},aZ),new Date(e).toISOString())},u=()=>{if(r)return Promise.resolve();if(a)return a;s(),e.onState?.({kind:`renewing`,expiresAt:new Date(o).toISOString()});let n=e.renew().then(async n=>{let i=oZ(n);if(i<=t())throw Error(`Cloud runtime authority descriptor is already expired.`);r||(e.onState?.({kind:`ready`,expiresAt:new Date(i).toISOString(),renewedAt:new Date(t()).toISOString()}),c(n))}).catch(t=>{if(r)return;let n=A1e(t);throw e.onState?.({kind:`error`,code:n?`authority_auth_rejected`:`authority_renewal_failed`,retryAt:n?null:l()}),t}).finally(()=>{a=null});return a=n,n};return c(e.initialDescriptor),{ensureLive:()=>o>t()+k1e?Promise.resolve():u(),renewNow:u,dispose:()=>{r=!0,s()}}}function sZ(){return new Date().toISOString()}function M1e(e,t,n,r,i){return n()&&RU.getState().ensure(e.environmentId),MW(new wW(async()=>{let e=e=>ZU({wsBaseUrl:e.wsBaseUrl,httpBaseUrl:e.httpBaseUrl,bearerToken:e.bearerToken,...r?{runtimeTicket:e.bearerToken}:{}}),n=await t.acquire();try{return await e(n)}catch(n){if(!r||!yH(n))throw n;return e(await t.acquire({forceRefresh:!0}))}},{trackGlobalConnection:!1,onAttempt:()=>{n()&&i.setConnecting(e.environmentId)},onOpen:()=>{n()&&i.setConnected(e.environmentId)},onError:i=>{r&&bX(i)&&t.invalidate?.(),n()&&RU.getState().patch(e.environmentId,{connectionState:`error`,lastError:i,lastErrorAt:sZ()})},onClose:a=>{r&&(a.code===1008||bX(a.reason))&&t.invalidate?.(),n()&&i.setDisconnected(e.environmentId,a.reason)}}))}async function cZ(e,t,n,r,i,a,o){let s=await WU(t,o),[c,l]=await Promise.all([a?Promise.resolve(a):n.server.getConfig(),XU({httpBaseUrl:s.httpBaseUrl,bearerToken:s.bearerToken,...o?{signal:o}:{}})]);return r()?(RU.getState().patch(e.environmentId,{authState:l.authenticated?`authenticated`:`requires-auth`,descriptor:c.environment,serverConfig:c,role:l.authenticated?l.role??i??null:null}),N1e(e,c,l.authenticated,r),!0):!1}function N1e(e,t,n,r){if(!n||!r())return;let i=EU(e.environmentId);i&&SU.getState().upsert({...i,lastAuthenticatedPullRequestCapability:t.environment.capabilities?.pullRequests===!0})}async function P1e(e,t,n,r){let i=n.findConnection(e.environmentId);if(i)return i;let a=r?.registryExpectation??{kind:`existing-record`,record:e},o=()=>n.canCommit({record:e,generation:t,registryExpectation:a}),{isCmmdRuntime:s,targetProvider:c,initialTarget:l}=await F1e(e,r,o);if(!o())throw lZ(e.environmentId,c,s),Error(`Saved environment changed while its connection was being acquired.`);let u=r?.client??M1e(e,c,o,s,n),d=L1e({record:e,initialTarget:l,targetProvider:c,isCmmdRuntime:s,client:u,canCommit:o,dependencies:n});try{if(!await n.withMetadataTimeout(e,cZ(e,c,u,o,r?.role??null,r?.serverConfig??null,r?.signal))||!o())throw Error(`Saved environment changed while its connection was being acquired.`);return n.registerConnection(d)}catch(t){throw s&&GU(e.environmentId,c),o()&&n.setError(e.environmentId,t),await d.dispose().catch(()=>void 0),t}}async function F1e(e,t,n){let r=BU(e)?T1e(e):null,i=r!==null,a=await I1e(e,t,i,n),o=i?E1e(e,r,a??void 0,n):D1e({record:e,bearerToken:a});try{return{isCmmdRuntime:i,targetProvider:o,initialTarget:await WU(o,t?.signal)}}catch(t){throw lZ(e.environmentId,o,i),t}}function lZ(e,t,n){n&&GU(e,t)}async function I1e(e,t,n,r){if(n)return t?.bearerToken;let i=t?.bearerToken??await jU(e.environmentId);if(i)return i;throw r()&&RU.getState().patch(e.environmentId,{authState:`requires-auth`,role:null,connectionState:`disconnected`,lastError:`Saved environment is missing its saved credential. Pair it again.`,lastErrorAt:sZ()}),Error(`Saved environment is missing its saved credential.`)}function L1e(e){let{record:t,initialTarget:n,targetProvider:r,isCmmdRuntime:i,client:a,canCommit:o,dependencies:s}=e,c=ni({id:t.environmentId,label:t.label,source:`manual`,target:{httpBaseUrl:n.httpBaseUrl,wsBaseUrl:n.wsBaseUrl}}),l=i&&n.expiresAt?j1e({initialDescriptor:{...n,expiresAt:n.expiresAt},renew:async()=>{let e=await r.acquire({forceRefresh:!0});return{...e,expiresAt:e.expiresAt??null}},onState:e=>{o()&&RU.getState().patch(t.environmentId,{providerAuthority:e})}}):null;return QU({kind:`saved`,knownEnvironment:{...c,environmentId:t.environmentId},client:a,readiness:{bearerToken:n.bearerToken},tolerateReportedEnvironmentIdentity:i,refreshMetadata:async()=>{await cZ(t,r,a,o)},...l?{ensureProviderAuthority:l.ensureLive,onDispose:l.dispose}:{},onConfigSnapshot:e=>{o()&&RU.getState().patch(t.environmentId,{descriptor:e.environment,serverConfig:e})},...s.createHandlers(e=>{o()&&RU.getState().patch(t.environmentId,{descriptor:e.environment})})})}var R1e=class{readRecord;hasSameTarget;generations=new Map;acquisitions=new Map;constructor(e,t){this.readRecord=e,this.hasSameTarget=t}invalidate(e){this.generations.set(e,this.readGeneration(e)+1)}generationFor(e){return this.readGeneration(e)}isCurrent(e){if(this.readGeneration(e.record.environmentId)!==e.generation)return!1;let t=this.readRecord(e.record.environmentId);return e.registryExpectation.kind===`initial-add`?t===null||this.hasSameTarget(t,e.record):t!==null&&this.hasSameTarget(t,e.registryExpectation.record)}ensure(e,t){let n=this.readGeneration(e.environmentId),r=this.acquisitions.get(e.environmentId);if(r&&r.generation===n&&this.hasSameTarget(r.record,e))return r.promise;let i=t(e,n).finally(()=>{this.acquisitions.get(e.environmentId)?.promise===i&&this.acquisitions.delete(e.environmentId)});return this.acquisitions.set(e.environmentId,{generation:n,record:e,promise:i}),i}async sync(e){await $i(e.records);let t=new Map(e.records.map(e=>[e.environmentId,e]));for(let[e,n]of this.acquisitions){let r=t.get(e);(!r||!this.hasSameTarget(r,n.record))&&this.invalidate(e)}let n=new Set(t.keys());await Promise.all(e.connectedSavedEnvironmentIds.filter(e=>!n.has(e)).map(async t=>{this.invalidate(t),await e.disconnect(t)}))}clear(){this.generations.clear(),this.acquisitions.clear()}readGeneration(e){return this.generations.get(e)??0}};async function z1e(e,t,n){if(!BU(e))return n.ensureSavedEnvironmentConnection(e,t);let r=n.getGeneration(e.environmentId),i=()=>n.registry.isCurrent({record:e,generation:r,registryExpectation:t?.registryExpectation??{kind:`existing-record`,record:e}}),a=null;for(let r=0;r<8;r+=1){PU(t?.signal);try{let r=await n.ensureSavedEnvironmentConnection(e,t);return await FU(r.ensureBootstrapped(),t?.signal),r}catch(o){a=o,await B1e({error:o,attemptIndex:r,record:e,options:t,dependencies:n,canCommit:i})}}let o=a instanceof Error?a:Error(String(a));throw i()&&n.setRuntimeError(e.environmentId,o),o}async function B1e(e){let{error:t,attemptIndex:n,record:r,options:i,dependencies:a,canCommit:o}=e;if(!o())throw t;if(await a.removeConnection(r.environmentId).catch(()=>!1),PU(i?.signal),n>=7||!JQe(t))throw o()&&a.setRuntimeError(r.environmentId,t),t;let s=YQe(n);i?.onBootstrapRetry?.({attempt:n+2,maxAttempts:8,retryDelayMs:s,error:t}),o()&&RU.getState().patch(r.environmentId,{connectionState:`connecting`,lastError:null,lastErrorAt:null}),await IU(s,i?.signal)}var uZ=new Map,dZ=new R1e(e=>EU(e),VU),fZ=new Set,pZ=YUe({createPrimaryEnvironmentConnection:_Z,syncSavedEnvironmentConnections:H1e});function V1e(){pZ.notifyProviderInvalidation()}function mZ(){for(let e of fZ)e()}function hZ(e){let t=uZ.get(e.environmentId);if(t&&t!==e)throw Error(`Environment ${e.environmentId} already has an active connection.`);return uZ.set(e.environmentId,e),mZ(),e}async function gZ(e){let t=uZ.get(e);return t?(uZ.delete(e),GU(e),RY(e),mZ(),await t.dispose(),!0):!1}function _Z(){return mQe({readConnection:bZ,registerConnection:hZ})}async function vZ(e,t){return uZ.get(e.environmentId)||dZ.ensure(e,(e,n)=>P1e(e,n,{findConnection:e=>uZ.get(e),registerConnection:hZ,canCommit:dZ.isCurrent.bind(dZ),createHandlers:KY,withMetadataTimeout:ZQe,setConnecting:JY,setConnected:YY,setDisconnected:ZY,setError:QY},t))}async function H1e(e){await dZ.sync({records:e,connectedSavedEnvironmentIds:[...uZ.values()].filter(e=>e.kind===`saved`).map(e=>e.environmentId),disconnect:K1e})}function yZ(e){return fZ.add(e),()=>{fZ.delete(e)}}function bZ(e){return uZ.get(e)??null}function U1e(e){return VQe(e,{readConnection:bZ,registerConnection:hZ})}function W1e(e){let t=bZ(e);if(!t)throw Error(`No websocket client registered for environment ${e}.`);return t}function xZ(){return _Z()}async function G1e(){return hQe({readConnection:bZ,registerConnection:hZ})}function SZ(){return{readConnection:bZ,removeConnection:gZ,ensureSavedEnvironmentConnection:vZ,ensureCmmdRuntimeSavedEnvironmentConnection:CZ,invalidate:e=>dZ.invalidate(e),retireEnvironmentId:YZe}}async function K1e(e){await nX(e,SZ())}async function q1e(e){await vQe(e,SZ())}async function J1e(){return _Qe({readConnection:bZ,ensureCmmdRuntimeSavedEnvironmentConnection:CZ})}async function Y1e(e){await yQe(e,SZ())}async function X1e(e){return bQe(e,SZ())}async function CZ(e,t){return z1e(e,t,{ensureSavedEnvironmentConnection:vZ,getGeneration:e=>dZ.generationFor(e),registry:dZ,removeConnection:gZ,setRuntimeError:QY})}async function Z1e(e){await uZ.get(e)?.ensureBootstrapped()}async function Q1e(e){let t=uZ.get(e);if(t?.ensureProviderAuthority){await t.ensureProviderAuthority();return}if(GUe(e))throw Error(`Cloud runtime provider authority is not available.`)}function $1e(e){return pZ.start(e)}zZe({applyEvent:uQe,readConnection:bZ,subscribeConnections:yZ}),QXe({notifyProviderInvalidation:V1e,readQueryClient:()=>pZ.readActiveService()?.queryClient??null,setRuntimeError:QY});var e0e=ote(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]);function t0e(e){return{environmentId:e.environmentId,threadId:e.threadId}}function n0e(e){return{draftId:e}}function r0e(e){return!e.environmentId||!e.threadId?null:ai(e.environmentId,e.threadId)}function i0e(e){return e.environmentId&&e.threadId?{kind:`server`,threadRef:ai(e.environmentId,e.threadId)}:e.draftId?{kind:`draft`,draftId:e.draftId}:null}var a0e=M.forwardRef(function(e,t){let{className:n,render:r,orientation:i=`horizontal`,style:a,...o}=e;return ete(`div`,e,{state:{orientation:i},ref:t,props:[{role:`separator`,"aria-orientation":i},o]})});function wZ(e){let t=(0,vi.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=ft(`relative overflow-hidden rounded-sm bg-muted [--skeleton-highlight:--alpha(var(--color-white)/64%)] after:absolute after:inset-0 after:animate-skeleton after:bg-[linear-gradient(120deg,transparent_40%,var(--skeleton-highlight),transparent_60%)] motion-reduce:after:content-none dark:[--skeleton-highlight:--alpha(var(--color-white)/4%)]`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,N.jsx)(`div`,{className:i,"data-slot":`skeleton`,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a}function TZ(e){let t=e.browser,n=t?{openSession:t.openSession,listSessions:t.listSessions,closeSession:t.closeSession,getSession:t.getSession,command:t.command,clearBrowsingData:t.clearBrowsingData,attachDisplay:t.attachDisplay,addDisplayIceCandidate:async e=>{await t.addDisplayIceCandidate(e)},onEvent:(e,n)=>t.onEvent(e,n)}:void 0;return{...n?{browser:n}:{},attachments:{createUploadUrl:t=>e.attachments.createUploadUrl(t),delete:t=>e.attachments.delete(t)},computer:{input:t=>e.computer.input(t)},threadDevRuntime:{get:t=>e.threadDevRuntime.get(t),allocatePort:t=>e.threadDevRuntime.allocatePort(t),release:t=>e.threadDevRuntime.release(t)},devTunnel:{register:t=>e.devTunnel.register(t),unregister:t=>e.devTunnel.unregister(t),list:t=>e.devTunnel.list(t)},terminal:{open:t=>e.terminal.open(t),write:t=>e.terminal.write(t),resize:t=>e.terminal.resize(t),signal:t=>e.terminal.signal(t),clear:t=>e.terminal.clear(t),restart:t=>e.terminal.restart(t),close:t=>e.terminal.close(t),onEvent:t=>e.terminal.onEvent(t)},projects:{searchContents:e.projects.searchContents,searchEntries:e.projects.searchEntries,readFile:e.projects.readFile,writeFile:e.projects.writeFile},workspace:{environmentPreflight:e.workspace.environmentPreflight,ensureScratch:e.workspace.ensureScratch},shell:{openInEditor:t=>e.shell.openInEditor(t)},git:{pull:e.git.pull,refreshStatus:e.git.refreshStatus,onStatus:(t,n,r)=>e.git.onStatus(t,n,r),listBranches:e.git.listBranches,createWorktree:e.git.createWorktree,removeWorktree:e.git.removeWorktree,createBranch:e.git.createBranch,checkout:e.git.checkout,init:e.git.init,resolvePullRequest:e.git.resolvePullRequest,preparePullRequestThread:e.git.preparePullRequestThread},pullRequests:{list:t=>e.pullRequests.list(t),listStats:t=>e.pullRequests.listStats(t),detail:t=>e.pullRequests.detail(t),activity:t=>e.pullRequests.activity(t),threadComments:t=>e.pullRequests.threadComments(t),diffFileContents:t=>e.pullRequests.diffFileContents(t),runAction:t=>e.pullRequests.runAction(t),update:t=>e.pullRequests.update(t),comment:t=>e.pullRequests.comment(t),updateComment:t=>e.pullRequests.updateComment(t),submitReview:t=>e.pullRequests.submitReview(t),replyToThread:t=>e.pullRequests.replyToThread(t),setThreadResolution:t=>e.pullRequests.setThreadResolution(t),setReaction:t=>e.pullRequests.setReaction(t),invalidate:t=>e.pullRequests.invalidate(t),reviewerCandidates:t=>e.pullRequests.reviewerCandidates(t),requestReviewers:t=>e.pullRequests.requestReviewers(t)},orchestration:{dispatchCommand:e.orchestration.dispatchCommand,getTurnDiff:e.orchestration.getTurnDiff,getFullThreadDiff:e.orchestration.getFullThreadDiff,subscribeShell:(t,n)=>e.orchestration.subscribeShell(t,n),subscribeThread:(t,n,r)=>e.orchestration.subscribeThread(t,n,r)}}}function EZ(e){if(typeof window>`u`||!e)return;let t=bZ(e);return t?TZ(t.client):void 0}function o0e(e){let t=(0,vi.c)(4),n;t[0]===e?n=t[1]:(n=()=>bZ(e),t[0]=e,t[1]=n);let r=(0,M.useSyncExternalStore)(yZ,n,s0e),i,a;return t[2]===r?a=t[3]:(a=r?TZ(r.client):void 0,t[2]=r,t[3]=a),i=a,i}function s0e(){return null}function c0e(e){let t=EZ(e);if(!t)throw Error(`Environment API not found for environment ${e}`);return t}function DZ(e){let t=e.payload&&typeof e.payload==`object`?e.payload:null,n=t?.plan;if(!Array.isArray(n))return null;let r=[];for(let e of n){if(!e||typeof e!=`object`)continue;let t=e;if(typeof t.step!=`string`)continue;let n=t.status===`completed`||t.status===`inProgress`?t.status:`pending`;r.push({step:t.step,status:n})}return r.length===0?null:{createdAt:e.createdAt,turnId:e.turnId,...t&&`explanation`in t?{explanation:t.explanation}:{},steps:r}}function OZ(e){let t=new Map;return e.map(e=>{let n=t.get(e.step)??0;return t.set(e.step,n+1),{key:`${e.step}:${n}`,step:e}})}function l0e(e,t){let n=new Map,r;for(let e of t){let t=DZ(e),i=Date.parse(e.createdAt);if(!(!t||Number.isNaN(i))){r??=i;for(let{key:e,step:r}of OZ(t.steps)){let t=n.get(e)??{};r.status===`inProgress`&&t.startedAt===void 0&&(t.startedAt=i),r.status===`completed`&&t.completedAt===void 0&&(t.completedAt=i),n.set(e,t)}}}let i=new Map,a=r;for(let[e,t]of[...n.entries()].toSorted((e,t)=>(e[1].completedAt??1/0)-(t[1].completedAt??1/0))){let n=t.completedAt,r=t.startedAt??a;n!==void 0&&(r!==void 0&&n>r&&i.set(e,n-r),a=n)}return{...e,steps:OZ(e.steps).map(({key:e,step:t})=>{if(t.status!==`completed`)return t;let n=i.get(e);return n===void 0?t:Object.assign({},t,{durationMs:n})})}}function kZ(e){let t=jZ(e?.data),n=jZ(t?.item),r=jZ(n?.result),i=jZ(n?.input),a=MZ(e?.itemType),o=MZ(e?.detail),s=[e?.command,n?.command,i?.command,r?.command,t?.command,a===`command_execution`&&o?AZ(o).output:null];for(let e of s){let t=_0e(e);if(t)return{command:t,rawCommand:v0e(e,t)}}return{command:null,rawCommand:null}}function AZ(e){let t=e.trim(),n=/^(?<output>[\s\S]*?)(?:\s*<exited with exit code (?<code>\d+)>)\s*$/i.exec(t);if(!n?.groups)return{output:t.length>0?t:null};let r=Number.parseInt(n.groups.code??``,10),i=n.groups.output?.trim()??``;return{output:i.length>0?i:null,...Number.isInteger(r)?{exitCode:r}:{}}}function jZ(e){return e&&typeof e==`object`?e:null}function MZ(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function NZ(e){let t=e.trim();if(t.startsWith(`'`)&&t.endsWith(`'`)||t.startsWith(`"`)&&t.endsWith(`"`)){let e=t.slice(1,-1).trim();return e.length>0?e:t}return t}function u0e(e){let t=NZ(e);if(t.length===0)return null;let n=t.replace(/\\/g,`/`).split(`/`).at(-1)?.trim()??``;return n.length>0?n.toLowerCase():null}function d0e(e){let t=e.trim();if(t.length===0)return null;if(t.startsWith(`"`)||t.startsWith(`'`)){let e=t.charAt(0),n=t.indexOf(e,1);return n<=0?null:{executable:t.slice(0,n+1),rest:t.slice(n+1).trim()}}let n=t.search(/\s/);return n<0?{executable:t,rest:``}:{executable:t.slice(0,n),rest:t.slice(n).trim()}}var f0e=[{executables:[`pwsh`,`pwsh.exe`,`powershell`,`powershell.exe`],wrapperFlagPattern:/(?:^|\s)-command\s+/i},{executables:[`cmd`,`cmd.exe`],wrapperFlagPattern:/(?:^|\s)\/c\s+/i},{executables:[`bash`,`sh`,`zsh`],wrapperFlagPattern:/(?:^|\s)-(?:l)?c\s+/i}];function p0e(e){return f0e.find(t=>t.executables.includes(e))}function m0e(e,t){let n=t.exec(e);if(!n)return null;let r=e.slice(n.index+n[0].length).trim();if(r.length===0)return null;let i=r[0];if((i===`'`||i===`"`)&&!r.endsWith(i))return null;let a=NZ(r);return a.length>0?a:null}function h0e(e){let t=d0e(e);if(!t||t.rest.length===0)return e;let n=u0e(t.executable);if(!n)return e;let r=p0e(n);return r?m0e(t.rest,r.wrapperFlagPattern)??e:e}function g0e(e){return/[\s"'`]/.test(e)?`"${e.replace(/"/g,`\\"`)}"`:e}function PZ(e){let t=MZ(e);if(t)return t;if(!Array.isArray(e))return null;let n=[];for(let t of e){let e=MZ(t);e!==null&&n.push(e)}return n.length===0?null:n.map(e=>g0e(e)).join(` `)}function _0e(e){let t=PZ(e);return t?h0e(t):null}function v0e(e,t){let n=PZ(e);return!n||t===null||n===t?null:n}function FZ(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:null}function IZ(e){return typeof e==`string`&&e.trim().length>0?e:null}function y0e(e){let t=IZ(e);if(t)return t;let n=Array.isArray(e)?e:null,r=FZ(e)?.content,i=IZ(r);if(i)return i;let a=n??(Array.isArray(r)?r:null);if(!a)return null;let o=a.flatMap(e=>{let t=IZ(e)??IZ(FZ(e)?.text);return t?[t]:[]});return o.length>0?o.join(`
|
|
1022
1022
|
`):null}function b0e(e){let t=FZ(e),n=FZ(t?.item),r=FZ(n?.result),i=FZ(t?.rawOutput),a=[IZ(i?.stdout),IZ(i?.stderr)].filter(e=>e!==null),o=Array.isArray(t?.content)?t.content.flatMap(e=>{let t=FZ(e),n=FZ(t?.content),r=t?.type===`content`?IZ(n?.text):null;return r?[r]:[]}).join(`
|
|
1023
1023
|
`):null,s=[n?.aggregatedOutput,r?.content,t?.rawOutput,i?.content,a.length>0?a.join(`
|
|
1024
1024
|
`):null,i?.output,o,t?.result];for(let e of s){let t=y0e(e);if(t)return t}return null}function LZ(e,t){let n=e.endsWith(`...`)?e.slice(0,-3):e.endsWith(`…`)?e.slice(0,-1):null;return t.some(t=>{let r=t?.trim();return r?r===e||n!==null&&n.length>0&&r.length>n.length&&r.startsWith(n):!1})}function x0e(e){let t=IZ(e.toolName)?.trim(),n=e.detail.trim(),r=[e.command,e.rawCommand];if(t){let e=`${t}:`;if(n.toLowerCase().startsWith(e.toLowerCase())&&LZ(n.slice(e.length).trim(),r))return!0}if(!LZ(n,r))return!1;let i=FZ(e.data),a=FZ(i?.item),o=FZ(a?.input),s=FZ(a?.result);return![a?.command,o?.command,s?.command,i?.command].some(e=>Array.isArray(e)?e.some(e=>IZ(e)!==null):IZ(e)!==null)||a!==null||i?.toolCallId!==void 0||IZ(i?.kind)?.toLowerCase()===`execute`}function S0e(e){return e.kind===`runtime.warning`&&e.summary.endsWith(`(no displayable text content)`)}function C0e(e,t){let n=UZ(e?.message);return n&&BZ(n)!==BZ(t)?n:null}function RZ(e){if(typeof e?.itemType==`string`&&Pt(e.itemType))return e.itemType}function zZ(e){return e.replace(/\s+/g,` `).trim()}function w0e(e,t=84){return e.length<=t?e:`${e.slice(0,t-1).trimEnd()}…`}function BZ(e){let t=UZ(e);return t?A0e(zZ(t)).toLowerCase():null}function VZ(e){let t=[];for(let n of e.split(/\r?\n/u)){let e=zZ(n);e.length>0&&t.push(e)}let n=t.find(e=>e!=="```");return n?w0e(n):t.length>1?`${t.length.toLocaleString()} lines`:null}function T0e(e){return typeof e==`number`&&Number.isFinite(e)?e:null}function E0e(e){let t=HZ(HZ(e?.data)?.rawOutput);if(!t)return null;let n=T0e(t.totalFiles);if(n!==null){let e=t.truncated===!0?`+`:``;return`${n.toLocaleString()} file${n===1?``:`s`}${e}`}let r=UZ(t.content);if(r)return VZ(r);let i=UZ(t.stdout);return i?VZ(i):null}function D0e(e){let t=b0e(e?.data);return t?AZ(t).output:null}function O0e(e,t){let n=UZ(HZ(e?.data)?.kind)?.toLowerCase(),r=UZ(e?.title??t)?.toLowerCase();return RZ(e)===`command_execution`||n===`execute`||r===`terminal`||r===`ran command`}function k0e(e,t){let n=UZ(e?.detail),r=n?AZ(n).output:null,i=BZ(t),a=BZ(r),o=O0e(e,t),s=o?kZ(e):{command:null,rawCommand:null},c=s.command;if(o&&c){let t=D0e(e);if(t)return t}let l=HZ(e?.data),u=r!==null&&x0e({detail:r,command:c,rawCommand:s.rawCommand,toolName:l?.toolName,data:l});if(r&&i!==a&&(!o||!u))return r;if(o)return null;let d=E0e(e);return d&&BZ(d)!==i?d:null}function A0e(e){return e.replace(/\s+(?:complete|completed)\s*$/i,``).trim()}function HZ(e){return e&&typeof e==`object`?e:null}function UZ(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function WZ(e){return e&&typeof e==`object`?e:null}function GZ(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function j0e(e){return M0e(e)??GZ(e?.title)}function M0e(e){if(!e)return null;let t=WZ(e.data),n=WZ(t?.item),r=WZ(n?.input)??WZ(t?.input),i=GZ(e.title),a=GZ(e.itemType),o=GZ(n?.name)??GZ(n?.toolName)??GZ(t?.name)??GZ(e.toolName)??i,s=GZ(e.detail),c=[o,i,a,s].filter(Boolean).join(` `).toLowerCase();if(!c.includes(`browser`)&&!c.includes(`forge-browser`))return null;switch(N0e(o,r,s)){case`open-session`:return`Opened browser session`;case`name-session`:return`Named browser session`;case`new-tab`:return KZ(r)??`Opened browser tab`;case`navigate`:return KZ(r)??`Navigated browser`;case`reload`:return`Reloaded page`;case`back`:return`Went back`;case`forward`:return`Went forward`;case`screenshot`:return`Captured screenshot`;case`snapshot`:return`Read DOM snapshot`;case`logs`:return`Read console logs`;case`click`:return`Clicked page`;case`type`:return`Typed text`;case`scroll`:return`Scrolled page`;case`viewport`:return`Updated viewport`;case`visibility`:return`Updated browser visibility`;default:return null}}function N0e(e,t,n){let r=[GZ(t?.type)??GZ(t?.command),e,n].filter(Boolean).join(` `).toLowerCase();return/\b(open[-_.\s]?session|create[-_.\s]?session|session[-_.\s]?open)\b/.test(r)?`open-session`:/\b(name[-_.\s]?session|session[-_.\s]?name)\b/.test(r)?`name-session`:/\b(new[-_.\s]?tab|create[-_.\s]?tab|open[-_.\s]?tab)\b/.test(r)?`new-tab`:/\b(navigate|goto|go[-_.\s]?to)\b/.test(r)?`navigate`:/\breload\b/.test(r)?`reload`:/\b(go[-_.\s]?back|back)\b/.test(r)?`back`:/\b(go[-_.\s]?forward|forward)\b/.test(r)?`forward`:/\b(screenshot|capture)\b/.test(r)?`screenshot`:/\b(snapshot|dom[-_.\s]?snapshot|read[-_.\s]?dom)\b/.test(r)?`snapshot`:/\b(console[-_.\s]?logs?|logs?)\b/.test(r)?`logs`:/\bclick\b/.test(r)?`click`:/\btype|fill\b/.test(r)?`type`:/\bscroll\b/.test(r)?`scroll`:/\bviewport\b/.test(r)?`viewport`:/\bvisibility|visible|hidden\b/.test(r)?`visibility`:null}function KZ(e){let t=GZ(e?.url)??GZ(e?.initialUrl);if(!t)return null;try{let e=new URL(t);return e.hostname.length===0?null:`Navigated to ${e.hostname}`}catch{return null}}function qZ(e){return e&&typeof e==`object`?e:null}function JZ(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function P0e(e){for(let t of XZ(e)){if(t.userActionRequired!==`confirm_github_tool`)continue;let e=qZ(t.confirmation),n=qZ(e?.request),r=JZ(e?.confirmationId),i=JZ(e?.toolName),a=JZ(e?.operation);if(!(!r||!i||!a||!n))return{confirmationId:r,toolName:i,operation:a,request:n}}return null}function YZ(e){let t=XZ(e)[0];if(!t)return null;let n=JZ(t.userActionRequired);return!n||n===`confirm_github_tool`?null:{action:n,toolName:JZ(t.toolName),message:JZ(t.error)??JZ(t.message)}}function XZ(e){if(!e)return[];let t=[],n=new Set,r=(e,i)=>{if(i>8||e==null)return;if(typeof e==`string`){let n=JZ(e);if(!n)return;let r=F0e(n);r&&JZ(r.userActionRequired)&&t.push(r);return}if(typeof e!=`object`||n.has(e))return;if(n.add(e),Array.isArray(e)){for(let t of e)r(t,i+1);return}let a=e;if(JZ(a.userActionRequired)){t.push(a);return}for(let e of Object.values(a))r(e,i+1)};return r(e,0),t}function F0e(e){try{return qZ(JSON.parse(e))}catch{return null}}function ZZ(e){switch(e){case`create_repository`:return`Create GitHub repository`;case`link_project_repository`:return`Link project repository`;case`push_branch`:return`Push Git branch`;case`create_pull_request`:return`Create pull request`;case`rerun_workflow`:return`Rerun GitHub Actions workflow`;default:return e.split(`_`).filter(Boolean).map(e=>`${e.charAt(0).toUpperCase()}${e.slice(1)}`).join(` `)}}function QZ(e){return[JZ(e.request.repoFullName)??(JZ(e.request.owner)&&JZ(e.request.name)?`${JZ(e.request.owner)}/${JZ(e.request.name)}`:null),JZ(e.request.cwd),JZ(e.request.branch),JZ(e.request.title)].filter(Boolean).join(` - `)}function $Z(e){switch(e){case`connect_github`:return`Connect GitHub to continue`;case`connect_cmmd`:return`Forge couldn't authorize this action`;case`start_from_authenticated_forge_session`:return`Open this thread in Forge`;case`link_project_repository`:return`Link this project to GitHub`;case`create_branch`:return`Create a branch before pushing`;case`retry_in_user_vm`:return`Retry in the project VM`;default:return e.split(`_`).filter(Boolean).map(e=>`${e.charAt(0).toUpperCase()}${e.slice(1)}`).join(` `)}}function eQ(e){switch(e){case`connect_github`:return`Connect GitHub so agents can create repos, push branches, and open PRs.`;case`connect_cmmd`:return`Reconnect Forge, then retry. Your conversation is preserved.`;case`start_from_authenticated_forge_session`:return`Open it in Forge so this action uses your signed-in account.`;case`link_project_repository`:return`Link a GitHub repo to this project before pushing or opening PRs.`;case`create_branch`:return`Forge needs a branch before it can push to GitHub.`;case`retry_in_user_vm`:return`This has to run from the project's cloud VM.`;default:return`Finish the required setup, then retry.`}}function tQ(e){return e.action===`connect_cmmd`?eQ(e.action):e.message??eQ(e.action)}function I0e(e,t){return e.action===t.action&&e.toolName===t.toolName&&e.message===t.message}function L0e(e){switch(e){case`connect_cmmd`:return`Reconnect Forge`;case`connect_github`:return`Connect GitHub`;default:return`Open Git settings`}}function R0e(e){return[`The required Forge GitHub setup has been completed by the user.`,e.toolName?`Retry the previous GitHub tool request for \`${e.toolName}\`.`:`Retry the previous GitHub tool request.`,`Continue the previous GitHub lifecycle request using Forge brokered GitHub tools only.`,"Do not use shell `gh` or direct GitHub CLI commands."].join(`
|
|
@@ -2537,5 +2537,5 @@ XID_Start XIDS`.split(/\s/).map(e=>[b5(e),e])),Dnt=new Map([[`s`,U5(383)],[U5(38
|
|
|
2537
2537
|
${_9(n)}
|
|
2538
2538
|
${e}
|
|
2539
2539
|
}
|
|
2540
|
-
}`}function Eit(e,t){let n=_9(t);return e.replace(Cit,n)}function Dit(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function Oit({code:e,pre:t,columnType:n,rowSpan:r,containerSize:i=!1}={}){return e??(e=document.createElement(`code`),e.setAttribute(`data-code`,``),n!=null&&e.setAttribute(`data-${n}`,``),t?.appendChild(e)),r==null?e.style.removeProperty(`grid-row`):e.style.setProperty(`grid-row`,`span ${r}`),i?e.setAttribute(`data-container-size`,``):e.removeAttribute(`data-container-size`),e}function kit(e,t){if(t==null)return;let n=e.shadowRoot??e.attachShadow({mode:`open`});n.innerHTML===``&&(n.innerHTML=t)}function Ait(e,{type:t,diffIndicators:n,disableBackground:r,disableLineNumbers:i,overflow:a,split:o,totalLines:s,customProperties:c}){if(c!=null)for(let t in c){let n=c[t];n!=null&&e.setAttribute(t,`${n}`)}switch(t===`diff`?(e.setAttribute(`data-diff`,``),e.removeAttribute(`data-file`)):(e.setAttribute(`data-file`,``),e.removeAttribute(`data-diff`)),n){case`bars`:case`classic`:e.setAttribute(`data-indicators`,n);break;case`none`:e.removeAttribute(`data-indicators`)}return i?e.setAttribute(`data-disable-line-numbers`,``):e.removeAttribute(`data-disable-line-numbers`),r?e.removeAttribute(`data-background`):e.setAttribute(`data-background`,``),t===`diff`?e.setAttribute(`data-diff-type`,o?`split`:`single`):e.removeAttribute(`data-diff-type`),e.setAttribute(`data-overflow`,a),e.style.setProperty(`--diffs-min-number-column-width-default`,`${`${s}`.length}ch`),e}function jit(e){if(typeof HTMLStyleElement<`u`&&e instanceof HTMLStyleElement)return!0;let t=e.tagName??e.nodeName;return typeof t==`string`&&t.toLowerCase()===`style`}function Mit(e){return e?.useTokenTransformer===!0||e?.onTokenClick!=null||e?.onTokenEnter!=null||e?.onTokenLeave!=null}function Nit(e,t){let n=e?.offsetHeight??0;if(e==null||n===0){t();return}e.style.minHeight=`${n}px`;try{t(),e.offsetHeight}finally{e.style.minHeight=``}}function Pit({shadowRoot:e,currentNode:t,themeCSS:n}){if(n.trim()===``){t?.remove();return}return t??=Fit(),t.textContent=n,t.parentNode!==e&&e.appendChild(t),t}function Fit(){let e=document.createElement(`style`);return e.setAttribute(o5e,``),e}var Iit=void 0;function Lit(){return Iit??=`safari`in window&&`pushNotification`in window.safari||/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}if(typeof HTMLElement<`u`&&customElements.get(`diffs-container`)==null){let e;class t extends HTMLElement{constructor(){if(super(),this.shadowRoot!=null)return;let t=this.attachShadow({mode:`open`});e??(e=new CSSStyleSheet,e.replaceSync(Sit)),t.adoptedStyleSheets=[e]}connectedCallback(){g9(this.shadowRoot??this.attachShadow({mode:`open`}))}}customElements.define(F2,t)}function Rit(e){return{...H2,...e}}function zit(e,t){let n=Bit(e,t);return t?n:e.diffHeaderHeight+n}function Bit(e,t){return e.paddingTop??(t?e.spacing:0)}function Vit(e){return e.paddingBottom??e.spacing}function Hit(e){switch(e){case`simple`:return 4;case`metadata`:case`line-info`:case`line-info-basic`:case`custom`:return 32}}function y9(e,t){return e===t||e?.cacheKey!=null&&e.cacheKey===t?.cacheKey}function b9(e,t){return Y2(e.theme,t.theme)&&e.useTokenTransformer===t.useTokenTransformer&&e.tokenizeMaxLineLength===t.tokenizeMaxLineLength&&e.lineDiffType===t.lineDiffType&&e.maxLineDiffLength===t.maxLineDiffLength}function x9({line:e,spanStart:t,spanLength:n}){return{start:{line:e,character:t},end:{line:e,character:t+n},properties:{"data-diff-span":``},alwaysWrap:!0}}function S9({item:e,arr:t,enableJoin:n,isNeutral:r=!1,isLastItem:i=!1}){let a=t[t.length-1];if(a==null||i||!n){t.push([+!r,e.value]);return}let o=a[0]===0;if(r===o||r&&e.value.length===1&&!o){a[1]+=e.value;return}t.push([+!r,e.value])}function C9(e){return[$2(e.additionStart,e.additionCount)+1,e4(e.additionStart,e.additionCount)+1]}function w9({isPartial:e,rangeSize:t,expandedHunks:n,hunkIndex:r,collapsedContextThreshold:i}){let a=Math.max(t,0);if(a===0||e)return{fromStart:0,fromEnd:0,rangeSize:a,collapsedLines:a,renderAll:!1};if(n===!0||a<=i)return{fromStart:a,fromEnd:0,rangeSize:a,collapsedLines:0,renderAll:!0};let o=n?.get(r),s=Math.min(Math.max(o?.fromStart??0,0),a),c=Math.min(Math.max(o?.fromEnd??0,0),a),l=s+c,u=l>=a;return{fromStart:u?a:s,fromEnd:u?0:c,rangeSize:a,collapsedLines:Math.max(a-l,0),renderAll:u}}function Uit(e){let t=e.hunks[e.hunks.length-1];if(t==null||e.isPartial||e.additionLines.length===0||e.deletionLines.length===0)return!1;let n=e.additionLines.length-e4(t.additionStart,t.additionCount),r=e.deletionLines.length-e4(t.deletionStart,t.deletionCount);return n<=0&&r<=0?!1:n!==r}function T9({fileDiff:e,errorPrefix:t}){let n=e.hunks[e.hunks.length-1];if(n==null||e.isPartial||e.additionLines.length===0||e.deletionLines.length===0)return 0;let r=e.additionLines.length-e4(n.additionStart,n.additionCount),i=e.deletionLines.length-e4(n.deletionStart,n.deletionCount);if(r<=0&&i<=0)return 0;if(r!==i)throw Error(`${t}: trailing context mismatch (additions=${r}, deletions=${i}) for ${e.name}`);return Math.min(r,i)}function E9({fileDiff:e,hunkIndex:t,expandedHunks:n,collapsedContextThreshold:r,errorPrefix:i}){if(t!==e.hunks.length-1)return;let a=T9({fileDiff:e,errorPrefix:i});if(a<=0)return;if(n===!0||a<=r)return{fromStart:a,fromEnd:0,rangeSize:a,collapsedLines:0,renderAll:!0};let o=n?.get(e.hunks.length),s=Math.min(Math.max(o?.fromStart??0,0),a);return{fromStart:s,fromEnd:0,rangeSize:a,collapsedLines:a-s,renderAll:s>=a}}function Wit({fileDiff:e,lineNumber:t,expandedHunks:n,collapsedContextThreshold:r}){if(n===!0||e.isPartial)return!0;for(let[i,a]of e.hunks.entries()){let[o,s]=C9(a);if(t<o){let s=w9({isPartial:e.isPartial,rangeSize:a.collapsedBefore,expandedHunks:n,hunkIndex:i,collapsedContextThreshold:r}),c=o-s.rangeSize;return s.renderAll||t<c+s.fromStart||t>=o-s.fromEnd}if(t<s)return!0}let i=E9({fileDiff:e,hunkIndex:e.hunks.length-1,expandedHunks:n,collapsedContextThreshold:r,errorPrefix:`isAdditionLineRenderable`});if(i==null||i.renderAll)return!0;let a=e.hunks[e.hunks.length-1],[,o]=C9(a);return t<o+i.fromStart||t>=o+i.rangeSize}function Git({fileDiff:e,lineNumber:t,direction:n,expandedHunks:r,collapsedContextThreshold:i}){if(r===!0||e.isPartial)return t;let a=[],o=1;for(let[t,n]of e.hunks.entries()){let[s,c]=C9(n),l=w9({isPartial:e.isPartial,rangeSize:n.collapsedBefore,expandedHunks:r,hunkIndex:t,collapsedContextThreshold:i}),u=s-l.rangeSize;l.renderAll?a.push([u,s]):(l.fromStart>0&&a.push([u,u+l.fromStart]),l.fromEnd>0&&a.push([s-l.fromEnd,s])),a.push([s,c]),o=c}let s=E9({fileDiff:e,hunkIndex:e.hunks.length-1,expandedHunks:r,collapsedContextThreshold:i,errorPrefix:`getNearestRenderableAdditionLine`});if(s!=null){let e=o;o=e+s.rangeSize,s.renderAll?a.push([e,o]):s.fromStart>0&&a.push([e,e+s.fromStart])}if(t>=o)return t;if(n===`down`){for(let[e,n]of a)if(n>t)return Math.max(e,t);return}for(let e=a.length-1;e>=0;e--){let[n,r]=a[e];if(n<=t)return Math.min(r-1,t)}}function D9({type:e,metrics:t}){return t.hunkSeparatorHeight??Hit(e)}function O9({type:e,metrics:t}){return e===`simple`||e===`metadata`||e===`line-info-basic`?0:t.spacing}function Kit({type:e,hunkIndex:t,hunkSpecs:n}){switch(e){case`simple`:return t>0;case`metadata`:return n!=null;case`line-info`:case`line-info-basic`:case`custom`:return!0}}function qit(e){return e!==`simple`&&e!==`metadata`}function Jit({type:e,metrics:t,hunkIndex:n,hunkSpecs:r}){if(!Kit({type:e,hunkIndex:n,hunkSpecs:r}))return;let i=D9({type:e,metrics:t}),a=O9({type:e,metrics:t}),o=n>0?a:0,s=a;return{height:i,gapBefore:o,gapAfter:s,totalHeight:o+i+s}}function Yit({type:e,metrics:t}){if(!qit(e))return;let n=D9({type:e,metrics:t}),r=O9({type:e,metrics:t});return{height:n,gapBefore:r,gapAfter:0,totalHeight:r+n}}function k9({diff:e,diffStyle:t,startingLine:n=0,totalLines:r=1/0,expandedHunks:i,collapsedContextThreshold:a=1,callback:o}){let s=Xit({diff:e,diffStyle:t,startingLine:n,expandedHunks:i,collapsedContextThreshold:a}),c={viewportStart:n,viewportEnd:n+r,isWindowedHighlight:n>0||r<1/0,splitCount:s.splitCount,unifiedCount:s.unifiedCount,finalHunkIndex:e.hunks.length-1,shouldBreak(){if(!c.isWindowedHighlight)return!1;let e=c.unifiedCount>=n+r,i=c.splitCount>=n+r;return t===`unified`?e:(t===`split`||e)&&i},shouldSkip(e,r){if(!c.isWindowedHighlight)return!1;let i=e>0&&c.unifiedCount+e<=n,a=r>0&&c.splitCount+r<=n;return t===`unified`?i:(t===`split`||i)&&a},incrementCounts(e,n){(t===`unified`||t===`both`)&&(c.unifiedCount+=e),(t===`split`||t===`both`)&&(c.splitCount+=n)},isInWindow(e,n){if(!c.isWindowedHighlight)return!0;let r=c.isInUnifiedWindow(e),i=c.isInSplitWindow(n);return t===`unified`?r:t===`split`?i:r||i},isInUnifiedWindow(e){return!c.isWindowedHighlight||c.unifiedCount>=n-e&&c.unifiedCount<n+r},isInSplitWindow(e){return!c.isWindowedHighlight||c.splitCount>=n-e&&c.splitCount<n+r},emit(e,n=!1){return n||(t===`unified`?c.incrementCounts(1,0):t===`split`?c.incrementCounts(0,1):c.incrementCounts(1,1)),o(e)??!1}};hunkIterator:for(let n=s.hunkIndex;n<e.hunks.length;n++){let r=e.hunks[n];if(r==null)throw Error(`iterateOverDiff: invalid hunk index`);if(c.shouldBreak())break;let o=$2(r.deletionStart,r.deletionCount),s=$2(r.additionStart,r.additionCount),l=!e.isPartial&&r.deletionCount===0?o:r.deletionLineIndex,u=!e.isPartial&&r.additionCount===0?s:r.additionLineIndex,d=w9({isPartial:e.isPartial,rangeSize:r.collapsedBefore,expandedHunks:i,hunkIndex:n,collapsedContextThreshold:a}),f=n===c.finalHunkIndex?E9({fileDiff:e,hunkIndex:n,expandedHunks:i,collapsedContextThreshold:a,errorPrefix:`iterateOverDiff`}):void 0,p=d.fromStart+d.fromEnd;function m(e,n){return f==null||f.collapsedLines<=0||f.fromStart+f.fromEnd>0?0:t===`unified`?e===r.unifiedLineStart+r.unifiedLineCount-1?f.collapsedLines:0:n===r.splitLineStart+r.splitLineCount-1?f.collapsedLines:0}let h=d.collapsedLines===0;function g(){return h?0:(h=!0,d.collapsedLines)}if(c.shouldSkip(p,p))c.incrementCounts(p,p),g();else{let e=r.unifiedLineStart-d.rangeSize,i=r.splitLineStart-d.rangeSize,a=l-d.rangeSize,f=u-d.rangeSize,p=o+1-d.rangeSize,m=s+1-d.rangeSize;if(A9(c,d.fromStart,t,t=>c.emit({hunkIndex:n,hunk:r,collapsedBefore:0,collapsedAfter:0,type:`context-expanded`,deletionLine:{lineNumber:p+t,lineIndex:a+t,noEOFCR:!1,unifiedLineIndex:e+t,splitLineIndex:i+t},additionLine:{unifiedLineIndex:e+t,splitLineIndex:i+t,lineIndex:f+t,lineNumber:m+t,noEOFCR:!1}}))||(e=r.unifiedLineStart-d.fromEnd,i=r.splitLineStart-d.fromEnd,a=l-d.fromEnd,f=u-d.fromEnd,p=o+1-d.fromEnd,m=s+1-d.fromEnd,A9(c,d.fromEnd,t,t=>c.emit({hunkIndex:n,hunk:r,collapsedBefore:g(),collapsedAfter:0,type:`context-expanded`,deletionLine:{lineNumber:p+t,lineIndex:a+t,noEOFCR:!1,unifiedLineIndex:e+t,splitLineIndex:i+t},additionLine:{unifiedLineIndex:e+t,splitLineIndex:i+t,lineIndex:f+t,lineNumber:m+t,noEOFCR:!1}}),()=>{g()})))break hunkIterator}let _=r.unifiedLineStart,v=r.splitLineStart,y=l,b=u,x=o+1,S=s+1,C=r.hunkContent.at(-1);for(let e of r.hunkContent){if(c.shouldBreak())break hunkIterator;let i=e===C;if(e.type===`context`){if(c.shouldSkip(e.lines,e.lines))c.incrementCounts(e.lines,e.lines),g();else if(A9(c,e.lines,t,t=>{let a=i&&t===e.lines-1,o=_+t,s=v+t;return c.emit({hunkIndex:n,hunk:r,collapsedBefore:g(),collapsedAfter:m(o,s),type:`context`,deletionLine:{lineNumber:x+t,lineIndex:y+t,noEOFCR:a&&r.noEOFCRDeletions,unifiedLineIndex:o,splitLineIndex:s},additionLine:{unifiedLineIndex:o,splitLineIndex:s,lineIndex:b+t,lineNumber:S+t,noEOFCR:a&&r.noEOFCRAdditions}})},()=>{g()}))break hunkIterator;_+=e.lines,v+=e.lines,y+=e.lines,b+=e.lines,x+=e.lines,S+=e.lines}else{let a=Math.max(e.deletions,e.additions),o=e.deletions+e.additions;if(!c.shouldSkip(o,a)){let s=$it(c,e,t);(s[0]?.[0]??0)>0&&g();for(let[l,u]of s)for(let s=l;s<u;s++){let l=m(_+s,t===`unified`?v+(s<e.deletions?s:s-e.deletions):v+s);if(c.emit(eat({hunkIndex:n,hunk:r,collapsedBefore:g(),collapsedAfter:l,diffStyle:t,index:s,unifiedLineIndex:_,splitLineIndex:v,additionLineIndex:b,deletionLineIndex:y,additionLineNumber:S,deletionLineNumber:x,content:e,isLastContent:i,unifiedCount:o,splitCount:a}),!0))break hunkIterator}}g(),c.incrementCounts(o,a),_+=o,v+=a,y+=e.deletions,b+=e.additions,x+=e.deletions,S+=e.additions}}if(f!=null){let{collapsedLines:n,fromStart:r,fromEnd:i}=f,a=r+i;if(A9(c,a,t,t=>{let r=t===a-1;return c.emit({hunkIndex:e.hunks.length,hunk:void 0,collapsedBefore:0,collapsedAfter:r?n:0,type:`context-expanded`,deletionLine:{lineNumber:x+t,lineIndex:y+t,noEOFCR:!1,unifiedLineIndex:_+t,splitLineIndex:v+t},additionLine:{unifiedLineIndex:_+t,splitLineIndex:v+t,lineIndex:b+t,lineNumber:S+t,noEOFCR:!1}})},void 0,()=>c.shouldBreak()))break hunkIterator}}}function Xit({diff:e,diffStyle:t,startingLine:n,expandedHunks:r,collapsedContextThreshold:i}){if(n<=0||t===`both`)return{hunkIndex:0,splitCount:0,unifiedCount:0};let a=Zit({diff:e,expandedHunks:r,collapsedContextThreshold:i}),o=0,s=e.hunks.length-1,c=e.hunks.length;for(;o<=s;){let e=o+s>>1,r=a[e+1];if(r==null)throw Error(`iterateOverDiff: invalid hunk prefix index`);(t===`unified`?r.unifiedCount:r.splitCount)>n?(c=e,s=e-1):o=e+1}if(c>=e.hunks.length){let t=a[e.hunks.length];if(t==null)throw Error(`iterateOverDiff: invalid terminal hunk prefix index`);return{hunkIndex:e.hunks.length,splitCount:t.splitCount,unifiedCount:t.unifiedCount}}let l=a[c];if(l==null)throw Error(`iterateOverDiff: invalid selected hunk prefix index`);return{hunkIndex:c,splitCount:l.splitCount,unifiedCount:l.unifiedCount}}function Zit({diff:e,expandedHunks:t,collapsedContextThreshold:n}){let r=0,i=0,a=e.hunks.length-1,o=[{splitCount:0,unifiedCount:0}];for(let s=0;s<e.hunks.length;s++){let c=e.hunks[s];if(c==null)throw Error(`iterateOverDiff: invalid hunk summary index`);let l=w9({isPartial:e.isPartial,rangeSize:c.collapsedBefore,expandedHunks:t,hunkIndex:s,collapsedContextThreshold:n}),u=l.fromStart+l.fromEnd;r+=u+c.splitLineCount,i+=u+c.unifiedLineCount;let d=s===a?E9({fileDiff:e,hunkIndex:s,expandedHunks:t,collapsedContextThreshold:n,errorPrefix:`iterateOverDiff`}):void 0;if(d!=null){let e=d.fromStart+d.fromEnd;r+=e,i+=e}o.push({splitCount:r,unifiedCount:i})}return o}function Qit(e,t,n){if(!e.isWindowedHighlight||t<=0)return[0,t];let r=[];function i(n){let i=Math.max(0,e.viewportStart-n),a=Math.min(t,e.viewportEnd-n);a>i&&r.push([i,a])}if(n!==`split`&&i(e.unifiedCount),n!==`unified`&&i(e.splitCount),r.length===0)return[0,0];let a=r[0][0],o=r[0][1];for(let e=1;e<r.length;e++){let t=r[e];a=Math.min(a,t[0]),o=Math.max(o,t[1])}return[a,o]}function A9(e,t,n,r,i,a){let[o,s]=Qit(e,t,n);o>0&&(e.incrementCounts(o,o),i?.());let c=o;for(;c<t;){if(a?.()===!0)return!0;if(c>=s){e.incrementCounts(t-c,t-c);break}if(e.isInWindow(0,0)){if(r(c)===!0)return!0}else e.incrementCounts(1,1);c++}return!1}function $it(e,t,n){if(!e.isWindowedHighlight)return[[0,n===`unified`?t.deletions+t.additions:Math.max(t.deletions,t.additions)]];let r=n!==`split`,i=n!==`unified`,a=n===`unified`?`unified`:`split`,o=[];function s(t,n){if(t+n<=e.viewportStart||t>=e.viewportEnd)return;let r=Math.max(0,e.viewportStart-t),i=Math.min(n,e.viewportEnd-t);return i>r?[r,i]:void 0}function c(e,n){return a===`split`?e:n===`additions`?[e[0]+t.deletions,e[1]+t.deletions]:e}function l(e,t){if(e==null)return;let[n,r]=c(e,t);r>n&&o.push([n,r])}if(r&&(l(s(e.unifiedCount,t.deletions),`deletions`),l(s(e.unifiedCount+t.deletions,t.additions),`additions`)),i&&(l(s(e.splitCount,t.deletions),`deletions`),l(s(e.splitCount,t.additions),`additions`)),o.length===0)return o;o.sort((e,t)=>e[0]-t[0]);let u=[o[0]];for(let[e,t]of o.slice(1)){let n=u[u.length-1];e<=n[1]?n[1]=Math.max(n[1],t):u.push([e,t])}return u}function eat({hunkIndex:e,hunk:t,collapsedAfter:n,collapsedBefore:r,diffStyle:i,index:a,unifiedLineIndex:o,splitLineIndex:s,additionLineIndex:c,deletionLineIndex:l,additionLineNumber:u,deletionLineNumber:d,content:f,isLastContent:p,unifiedCount:m,splitCount:h}){let g=a<f.deletions?o+a:void 0,_=i===`unified`?a>=f.deletions?o+a:void 0:a<f.additions?o+f.deletions+a:void 0,v=i===`unified`?s+(a<f.deletions?a:a-f.deletions):s+a,y=a<f.deletions?l+a:void 0,b=a<f.deletions?d+a:void 0,x=i===`unified`?a>=f.deletions?c+(a-f.deletions):void 0:a<f.additions?c+a:void 0,S=i===`unified`?a>=f.deletions?u+(a-f.deletions):void 0:a<f.additions?u+a:void 0,C=i===`unified`?p&&a===f.deletions-1&&t.noEOFCRDeletions:p&&a===h-1&&t.noEOFCRDeletions,w=i===`unified`?p&&a===m-1&&t.noEOFCRAdditions:p&&a===h-1&&t.noEOFCRAdditions,T=y!=null&&b!=null&&g!=null?{lineNumber:b,lineIndex:y,noEOFCR:C,unifiedLineIndex:g,splitLineIndex:v}:void 0,E=x!=null&&S!=null&&_!=null?{unifiedLineIndex:_,splitLineIndex:v,lineIndex:x,lineNumber:S,noEOFCR:w}:void 0;if(T==null&&E!=null)return{type:`change`,hunkIndex:e,hunk:t,collapsedAfter:n,collapsedBefore:r,deletionLine:void 0,additionLine:E};if(T!=null&&E==null)return{type:`change`,hunkIndex:e,hunk:t,collapsedAfter:n,collapsedBefore:r,deletionLine:T,additionLine:void 0};if(T==null||E==null)throw Error(`iterateOverDiff: missing change line data`);return{type:`change`,hunkIndex:e,hunk:t,collapsedAfter:n,collapsedBefore:r,deletionLine:T,additionLine:E}}var tat={forcePlainText:!1};function j9(e,t,n,{forcePlainText:r,startingLine:i,totalLines:a,expandedHunks:o,collapsedContextThreshold:s=1}=tat){r?(i??=0,a??=1/0):(i=0,a=1/0);let c=i>0||a<1/0,l=typeof n.theme==`string`?t.getTheme(n.theme).type:void 0,u=o9({theme:n.theme,highlighter:t}),d=r&&!c&&(e.unifiedLineCount>1e3||e.splitLineCount>1e3)?`none`:n.lineDiffType,f={deletionLines:[],additionLines:[]},{maxLineDiffLength:p}=n,m=!r&&!e.isPartial,h=r?o:void 0,g=new Map;function _(e){let t=m?0:e,n=g.get(t)??rat();return g.set(t,n),n}function v(e,t,n,r){if(c){let e=n.at(-1);(e==null||e.targetIndex+e.count!==t)&&(e={targetIndex:t,originalOffset:r.length,count:0},n.push(e)),e.count++}r.push(e)}k9({diff:e,diffStyle:`both`,startingLine:i,totalLines:a,expandedHunks:!c||h,collapsedContextThreshold:s,callback:({hunkIndex:t,additionLine:n,deletionLine:r,type:i})=>{let a=_(t),o=n==null?r.splitLineIndex:n.splitLineIndex;i===`change`&&n!=null&&r!=null&&nat({additionLine:e.additionLines[n.lineIndex],deletionLine:e.deletionLines[r.lineIndex],deletionLineIndex:a.deletionContent.length,additionLineIndex:a.additionContent.length,deletionDecorations:a.deletionDecorations,additionDecorations:a.additionDecorations,lineDiffType:d,maxLineDiffLength:p}),r!=null&&(v(e.deletionLines[r.lineIndex],r.lineIndex,a.deletionSegments,a.deletionContent),a.deletionInfo.push({type:i===`change`?`change-deletion`:i,lineNumber:r.lineNumber,altLineNumber:i===`change`?void 0:n.lineNumber??void 0,lineIndex:`${r.unifiedLineIndex},${o}`})),n!=null&&(v(e.additionLines[n.lineIndex],n.lineIndex,a.additionSegments,a.additionContent),a.additionInfo.push({type:i===`change`?`change-addition`:i,lineNumber:n.lineNumber,altLineNumber:i===`change`?void 0:r.lineNumber??void 0,lineIndex:`${n.unifiedLineIndex},${o}`}))}});for(let i of g.values()){if(i.deletionContent.length===0&&i.additionContent.length===0)continue;let a={name:e.prevName??e.name,contents:i.deletionContent.value},o={name:e.name,contents:i.additionContent.value},{deletionLines:s,additionLines:c}=iat({deletionFile:a,deletionInfo:i.deletionInfo,deletionDecorations:i.deletionDecorations,additionFile:o,additionInfo:i.additionInfo,additionDecorations:i.additionDecorations,highlighter:t,options:n,languageOverride:r?`text`:e.lang});if(m){f.deletionLines=s,f.additionLines=c;continue}if(i.deletionSegments.length>0)for(let e of i.deletionSegments)for(let t=0;t<e.count;t++)f.deletionLines[e.targetIndex+t]=s[e.originalOffset+t];else f.deletionLines.push(...s);if(i.additionSegments.length>0)for(let e of i.additionSegments)for(let t=0;t<e.count;t++)f.additionLines[e.targetIndex+t]=c[e.originalOffset+t];else f.additionLines.push(...c)}return{code:f,themeStyles:u,baseThemeType:l}}function nat({deletionLine:e,additionLine:t,deletionLineIndex:n,additionLineIndex:r,deletionDecorations:i,additionDecorations:a,lineDiffType:o,maxLineDiffLength:s}){if(e==null||t==null||o===`none`||(e=Q2(e),t=Q2(t),e.length>s||t.length>s))return;let c=o===`char`?x5e(e,t):T5e(e,t),l=[],u=[],d=o===`word-alt`,f=c.at(-1);for(let e of c){let t=e===f;!e.added&&!e.removed?(S9({item:e,arr:l,enableJoin:d,isNeutral:!0,isLastItem:t}),S9({item:e,arr:u,enableJoin:d,isNeutral:!0,isLastItem:t})):e.removed?S9({item:e,arr:l,enableJoin:d,isLastItem:t}):S9({item:e,arr:u,enableJoin:d,isLastItem:t})}let p=0;for(let e of l)e[0]===1&&i.push(x9({line:n,spanStart:p,spanLength:e[1].length})),p+=e[1].length;p=0;for(let e of u)e[0]===1&&a.push(x9({line:r,spanStart:p,spanLength:e[1].length})),p+=e[1].length}function rat(){return{deletionContent:{push(e){this.value+=e,this.length++},value:``,length:0},additionContent:{push(e){this.value+=e,this.length++},value:``,length:0},deletionInfo:[],additionInfo:[],deletionDecorations:[],additionDecorations:[],deletionSegments:[],additionSegments:[]}}function iat({deletionFile:e,additionFile:t,deletionInfo:n,additionInfo:r,highlighter:i,deletionDecorations:a,additionDecorations:o,languageOverride:s,options:{theme:c=B2,...l}}){let u=s??W7(e.name),d=s??W7(t.name),{state:f,transformers:p}=Z7(l.useTokenTransformer),m=typeof c==`string`?{...l,lang:`text`,theme:c,transformers:p,decorations:void 0,defaultColor:!1,cssVariablePrefix:$7(`token`),tokenizeTimeLimit:0}:{...l,lang:`text`,themes:c,transformers:p,decorations:void 0,defaultColor:!1,cssVariablePrefix:$7(`token`),tokenizeTimeLimit:0};return{deletionLines:e.contents===``?[]:(m.lang=u,f.lineInfo=n,m.decorations=a,c9(i.codeToHast(Q2(e.contents),m))),additionLines:t.contents===``?[]:(m.lang=d,m.decorations=o,f.lineInfo=r,c9(i.codeToHast(Q2(t.contents),m)))}}function M9(e){let t=e.lang??W7(e.name),n=e.lang??(e.prevName==null?`text`:W7(e.prevName));return t===`text`&&n===`text`}function N9(e){let t=[];for(let n of e){let e=I3.get(n);if(e==null)throw Error(`getResolvedLanguages: ${n} is not resolved. Please resolve languages before calling getResolvedLanguages`);t.push(e)}return t}function P9(e){for(let t of Array.isArray(e)?e:[e])if(!I3.has(t))return!1;return!0}async function F9(e){let t=[],n=[];for(let r of e){if(r===`text`||r===`ansi`)continue;let e=w7(r)??C7(r);`then`in e?n.push(e):t.push(e)}return n.length>0&&await Promise.all(n).then(e=>{for(let n of e){if(n==null)throw Error(`resolvedLanguages: unable to resolve language`);t.push(n)}}),t}function I9(e){return k7.getResolvedThemes(e)}async function L9(e){for(let t of e)F7(t);let t=await k7.resolveThemes(e);for(let n=0;n<e.length;n++)I7(e[n],t[n]);return t}var R9={light:`pierre-light`,dark:`pierre-dark`};function aat(e){return e===`dark`?R9.dark:R9.light}var z9=2166136261,B9=16777619,oat=2654435769,sat=2246822507;function V9(e,t=z9,n=B9){let r=t>>>0;for(let t=0;t<e.length;t+=1)r^=e.charCodeAt(t),r=Math.imul(r,n)>>>0;return r>>>0}function cat(e,t=`diff-panel`){let n=e.trim(),r=V9(n,z9,B9).toString(36),i=V9(n,oat,sat).toString(36);return`${t}:${n.length}:${r}:${i}`}function H9(e){return ft(`flex items-center justify-between gap-2 px-4 wco:pr-[calc(100vw-env(titlebar-area-width)-env(titlebar-area-x)+1em)]`,Vn&&e!==`sheet`?`h-[52px] border-b border-border wco:h-[env(titlebar-area-height)]`:`h-12 wco:max-h-[env(titlebar-area-height)]`)}function lat(e){let t=(0,vi.c)(10),n=Vn&&e.mode!==`sheet`,r=e.mode===`inline`?`w-[42vw] min-w-[360px] max-w-[560px] shrink-0 border-l border-border`:`w-full`,i;t[0]===r?i=t[1]:(i=ft(`flex h-full min-w-0 flex-col bg-background`,r),t[0]=r,t[1]=i);let a;t[2]!==e.header||t[3]!==e.mode||t[4]!==n?(a=n?(0,N.jsx)(`div`,{className:H9(e.mode),children:e.header}):(0,N.jsx)(`div`,{className:`border-b border-border`,children:(0,N.jsx)(`div`,{className:H9(e.mode),children:e.header})}),t[2]=e.header,t[3]=e.mode,t[4]=n,t[5]=a):a=t[5];let o;return t[6]!==e.children||t[7]!==i||t[8]!==a?(o=(0,N.jsxs)(`div`,{className:i,children:[a,e.children]}),t[6]=e.children,t[7]=i,t[8]=a,t[9]=o):o=t[9],o}function uat(){let e=(0,vi.c)(4),t,n;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,N.jsx)(wZ,{className:`absolute left-0 top-1/2 size-6 -translate-y-1/2 rounded-md border border-border/50`}),n=(0,N.jsx)(wZ,{className:`absolute right-0 top-1/2 size-6 -translate-y-1/2 rounded-md border border-border/50`}),e[0]=t,e[1]=n):(t=e[0],n=e[1]);let r;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,N.jsxs)(`div`,{className:`relative min-w-0 flex-1`,children:[t,n,(0,N.jsxs)(`div`,{className:`flex gap-1 overflow-hidden px-8 py-0.5`,children:[(0,N.jsx)(wZ,{className:`h-6 w-16 shrink-0 rounded-md`}),(0,N.jsx)(wZ,{className:`h-6 w-24 shrink-0 rounded-md`}),(0,N.jsx)(wZ,{className:`h-6 w-24 shrink-0 rounded-md max-sm:hidden`})]})]}),e[2]=r):r=e[2];let i;return e[3]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,N.jsxs)(N.Fragment,{children:[r,(0,N.jsxs)(`div`,{className:`flex shrink-0 gap-1`,children:[(0,N.jsx)(wZ,{className:`size-7 rounded-md`}),(0,N.jsx)(wZ,{className:`size-7 rounded-md`})]})]}),e[3]=i):i=e[3],i}function dat(e){let t=(0,vi.c)(7),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,N.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border/50 px-3 py-2`,children:[(0,N.jsx)(wZ,{className:`h-4 w-32 rounded-full`}),(0,N.jsx)(wZ,{className:`ml-auto h-4 w-20 rounded-full`})]}),t[0]=n):n=t[0];let r;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,N.jsxs)(`div`,{className:`space-y-2`,children:[(0,N.jsx)(wZ,{className:`h-3 w-full rounded-full`}),(0,N.jsx)(wZ,{className:`h-3 w-full rounded-full`}),(0,N.jsx)(wZ,{className:`h-3 w-10/12 rounded-full`}),(0,N.jsx)(wZ,{className:`h-3 w-11/12 rounded-full`}),(0,N.jsx)(wZ,{className:`h-3 w-9/12 rounded-full`})]}),t[1]=r):r=t[1];let i;t[2]===e.label?i=t[3]:(i=(0,N.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4 px-3 py-4`,children:[r,(0,N.jsx)(`span`,{className:`sr-only`,children:e.label})]}),t[2]=e.label,t[3]=i);let a;return t[4]!==e.label||t[5]!==i?(a=(0,N.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col p-2`,children:(0,N.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden rounded-md border border-border/60 bg-card/25`,role:`status`,"aria-live":`polite`,"aria-label":e.label,children:[n,i]})}),t[4]=e.label,t[5]=i,t[6]=a):a=t[6],a}function fat(e){let t=(0,M.useRef)(e);return(0,M.useInsertionEffect)(()=>void(t.current=e)),(0,M.useCallback)((...e)=>t.current(...e),[])}var pat=(0,M.createContext)(void 0);function mat(){return(0,M.useContext)(pat)}var hat={position:`absolute`,top:0,bottom:0,textAlign:`center`,whiteSpace:`normal`,touchAction:`none`},gat={display:`contents`};function _at(){return null}var U9=t(n(((e,t)=>{(function(n,r){typeof e==`object`&&t!==void 0?r(e):typeof define==`function`&&define.amd?define([`exports`],r):r((n||=self).lru_map=n.lru_map||{})})(e,function(e){let t=Symbol(`newer`),n=Symbol(`older`);class r{constructor(e,t){typeof e!=`number`&&(t=e,e=0),this.size=0,this.limit=e,this.oldest=this.newest=void 0,this._keymap=new Map,t&&(this.assign(t),e<1&&(this.limit=this.size))}_markEntryAsUsed(e){e!==this.newest&&(e[t]&&(e===this.oldest&&(this.oldest=e[t]),e[t][n]=e[n]),e[n]&&(e[n][t]=e[t]),e[t]=void 0,e[n]=this.newest,this.newest&&(this.newest[t]=e),this.newest=e)}assign(e){let r,a=this.limit||Number.MAX_VALUE;this._keymap.clear();let o=e[Symbol.iterator]();for(let e=o.next();!e.done;e=o.next()){let o=new i(e.value[0],e.value[1]);if(this._keymap.set(o.key,o),r?(r[t]=o,o[n]=r):this.oldest=o,r=o,a--==0)throw Error(`overflow`)}this.newest=r,this.size=this._keymap.size}get(e){var t=this._keymap.get(e);return t?(this._markEntryAsUsed(t),t.value):void 0}set(e,r){var a=this._keymap.get(e);return a?(a.value=r,this._markEntryAsUsed(a),this):(this._keymap.set(e,a=new i(e,r)),this.newest?(this.newest[t]=a,a[n]=this.newest):this.oldest=a,this.newest=a,++this.size,this.size>this.limit&&this.shift(),this)}shift(){var e=this.oldest;if(e)return this.oldest[t]?(this.oldest=this.oldest[t],this.oldest[n]=void 0):(this.oldest=void 0,this.newest=void 0),e[t]=e[n]=void 0,this._keymap.delete(e.key),--this.size,[e.key,e.value]}find(e){let t=this._keymap.get(e);return t?t.value:void 0}has(e){return this._keymap.has(e)}delete(e){var r=this._keymap.get(e);return r?(this._keymap.delete(r.key),r[t]&&r[n]?(r[n][t]=r[t],r[t][n]=r[n]):r[t]?(r[t][n]=void 0,this.oldest=r[t]):r[n]?(r[n][t]=void 0,this.newest=r[n]):this.oldest=this.newest=void 0,this.size--,r.value):void 0}clear(){this.oldest=this.newest=void 0,this.size=0,this._keymap.clear()}keys(){return new o(this.oldest)}values(){return new s(this.oldest)}entries(){return this}[Symbol.iterator](){return new a(this.oldest)}forEach(e,n){typeof n!=`object`&&(n=this);let r=this.oldest;for(;r;)e.call(n,r.value,r.key,this),r=r[t]}toJSON(){for(var e=Array(this.size),n=0,r=this.oldest;r;)e[n++]={key:r.key,value:r.value},r=r[t];return e}toString(){for(var e=``,n=this.oldest;n;)e+=String(n.key)+`:`+n.value,n=n[t],n&&(e+=` < `);return e}}e.LRUMap=r;function i(e,r){this.key=e,this.value=r,this[t]=void 0,this[n]=void 0}function a(e){this.entry=e}a.prototype[Symbol.iterator]=function(){return this},a.prototype.next=function(){let e=this.entry;return e?(this.entry=e[t],{done:!1,value:[e.key,e.value]}):{done:!0,value:void 0}};function o(e){this.entry=e}o.prototype[Symbol.iterator]=function(){return this},o.prototype.next=function(){let e=this.entry;return e?(this.entry=e[t],{done:!1,value:e.key}):{done:!0,value:void 0}};function s(e){this.entry=e}s.prototype[Symbol.iterator]=function(){return this},s.prototype.next=function(){let e=this.entry;return e?(this.entry=e[t],{done:!1,value:e.value}):{done:!0,value:void 0}}})}))(),1),W9=Symbol(`IGNORE_RESPONSE`),G9=class extends Error{constructor(){super(`WorkerPoolManager: operation canceled because the pool terminated`)}},K9=class extends Error{constructor(){super(`WorkerPoolManager: operation canceled before the task completed`)}},vat=class{options;highlighter;preferredHighlighter;renderOptions;renderOptionsRequestVersion=0;renderOptionsVersion=0;initialized=!1;workers=[];queuedTasks=[];queuedTaskByInstance=new Map;taskByHighlightKey=new Map;activeTaskById=new Map;activeRequestByInstance=new Map;nextRequestId=0;themeSubscribers=new Set;workersFailed=!1;statSubscribers=new Set;fileCache;diffCache;_queuedBroadcast;lifecycleGeneration=0;constructor(e,{langs:t,theme:n=B2,useTokenTransformer:r=!1,lineDiffType:i=`word-alt`,maxLineDiffLength:a=1e3,tokenizeMaxLineLength:o=1e3,preferredHighlighter:s=`shiki-js`}){this.options=e,this.preferredHighlighter=s,this.renderOptions={theme:n,useTokenTransformer:r,lineDiffType:i,maxLineDiffLength:a,tokenizeMaxLineLength:o},this.fileCache=new U9.default.LRUMap(e.totalASTLRUCacheSize??100),this.diffCache=new U9.default.LRUMap(e.totalASTLRUCacheSize??100),this.queueInitialization(t)}isWorkingPool(){return!this.workersFailed}getFileResultCache(e){return e.cacheKey==null?void 0:this.fileCache.get(e.cacheKey)}getDiffResultCache(e){return e.cacheKey==null?void 0:this.diffCache.get(e.cacheKey)}inspectCaches(){let{fileCache:e,diffCache:t}=this;return{fileCache:e,diffCache:t}}evictFileFromCache(e){try{return this.fileCache.delete(e)!==void 0}finally{this.queueBroadcastStateChanges()}}evictDiffFromCache(e){try{return this.diffCache.delete(e)!==void 0}finally{this.queueBroadcastStateChanges()}}async setRenderOptions({theme:e=this.renderOptions.theme??B2,useTokenTransformer:t=this.renderOptions.useTokenTransformer??!1,lineDiffType:n=this.renderOptions.lineDiffType??`word-alt`,maxLineDiffLength:r=this.renderOptions.maxLineDiffLength??1e3,tokenizeMaxLineLength:i=this.renderOptions.tokenizeMaxLineLength??1e3}){let{lifecycleGeneration:a}=this,o=++this.renderOptionsRequestVersion,s=()=>this.isCurrentLifecycle(a)&&this.renderOptionsRequestVersion===o;try{let a={theme:e,useTokenTransformer:t,lineDiffType:n,maxLineDiffLength:r,tokenizeMaxLineLength:i};if(this.isInitialized()||await this.initialize(),!s()||b9(a,this.renderOptions))return;let o=z7(e),c=[];if(Y2(a.theme,this.renderOptions.theme)||(c=B7(o)?I9(o):await L9(o)),!s())return;if(this.highlighter!=null)A7(c,this.highlighter);else{let e=await R7({themes:o,langs:[`text`],preferredHighlighter:this.preferredHighlighter});if(!s())return;this.highlighter=e}let l=this.setRenderOptionsOnWorkers(a,c);this.renderOptions=a,this.renderOptionsVersion++,this.diffCache.clear(),this.fileCache.clear(),this.invalidateRenderTasks();for(let e of this.themeSubscribers)e.onThemeChange();await l}catch(e){if(e instanceof G9||!s())return;throw e}}getPreferredHighlighter(){return this.preferredHighlighter}getFileRenderOptions(){let{tokenizeMaxLineLength:e,theme:t,useTokenTransformer:n}=this.renderOptions;return{theme:t,useTokenTransformer:n,tokenizeMaxLineLength:e}}getDiffRenderOptions(){return{...this.renderOptions}}async setRenderOptionsOnWorkers(e,t){if(this.workersFailed)return;this.isInitialized()||await this.initialize();let n=[];for(let r of this.workers){if(!r.initialized)throw console.log({managedWorker:r}),Error(`setRenderOptionsOnWorkers: Somehow we have an uninitialized worker`);n.push(new Promise((n,i)=>{let a=this.generateRequestId(),o={type:`set-render-options`,id:a,request:{type:`set-render-options`,id:a,renderOptions:e,resolvedThemes:t},resolve:n,reject:i,requestStart:Date.now()};this.activeTaskById.set(a,o),r.pendingSetupRequestId=a,r.worker.postMessage(o.request)}))}await Promise.all(n)}subscribeToThemeChanges(e){return this.themeSubscribers.add(e),this.queueBroadcastStateChanges(),()=>{this.unsubscribeToThemeChanges(e),this.queueBroadcastStateChanges()}}unsubscribeToThemeChanges(e){this.themeSubscribers.delete(e),this.queueBroadcastStateChanges()}subscribeToStatChanges(e){return this.statSubscribers.add(e),e(this.getStats()),()=>{this.statSubscribers.delete(e)}}queueBroadcastStateChanges(){this._queuedBroadcast??=requestAnimationFrame(this._broadcastStateChanges)}_broadcastStateChanges=()=>{this._queuedBroadcast!=null&&(cancelAnimationFrame(this._queuedBroadcast),this._queuedBroadcast=void 0);let e=this.getStats();for(let t of this.statSubscribers)t(e)};cleanUpTasks(e){this.detachInstanceFromQueuedTasks(e);let t=this.activeRequestByInstance.get(e);if(t!=null){let n=this.activeTaskById.get(t);J9(n)?(this.detachInstanceFromRenderTask(n,e),!n.primeCache&&n.instances.size===0&&this.removeActiveTask(n)):this.activeTaskById.delete(t)}this.activeRequestByInstance.delete(e),this.queueBroadcastStateChanges()}isInitialized(){return this.initialized===!0}async initialize(e=[]){if(this.initialized!==!0)if(this.initialized===!1){let{lifecycleGeneration:t}=this;this.initialized=new Promise((n,r)=>{(async()=>{try{let r=z7(this.renderOptions.theme),i=[];if(i=B7(r)?I9(r):await L9(r),!this.isCurrentLifecycle(t)){n();return}let a=[];if(a=P9(e)?N9(e):await F9(e),!this.isCurrentLifecycle(t)){n();return}let[o]=await Promise.all([R7({themes:r,langs:[`text`,...e],preferredHighlighter:this.preferredHighlighter}),this.initializeWorkers(i,a)]);if(!this.isCurrentLifecycle(t)){this.terminateWorkers(),n();return}this.highlighter=o,this.initialized=!0,this.diffCache.clear(),this.fileCache.clear(),this.drainQueue(),this.queueBroadcastStateChanges(),n()}catch(e){if(e instanceof G9||!this.isCurrentLifecycle(t)){n();return}this.initialized=!1,this.workersFailed=!0;for(let t of this.queuedTasks)this.rejectRenderTaskCallbacks(t,X9(e));this.queueBroadcastStateChanges(),r(e)}})()}),this.queueBroadcastStateChanges()}else return this.initialized}async initializeWorkers(e,t){this.workersFailed=!1;let n=[],r=G7(),i=r>0?K7():void 0;this.workers.length>0&&this.terminateWorkers();for(let a=0;a<(this.options.poolSize??8);a++){let a=this.options.workerFactory(),o={worker:a,requestId:void 0,pendingSetupRequestId:void 0,initialized:!1,langs:new Set([`text`,...t.map(({name:e})=>e)]),customExtensionsVersion:0};a.addEventListener(`message`,e=>{this.handleWorkerMessage(o,e.data)}),a.addEventListener(`error`,e=>console.error(`Worker error:`,e,o)),this.workers.push(o),n.push(new Promise((n,a)=>{let s=this.generateRequestId(),c={type:`initialize`,id:s,request:{type:`initialize`,id:s,renderOptions:this.renderOptions,preferredHighlighter:this.preferredHighlighter,resolvedThemes:e,resolvedLanguages:t,customExtensionsVersion:i==null?void 0:r,customExtensionMap:i},resolve(){o.initialized=!0,n()},reject:a,requestStart:Date.now()};this.activeTaskById.set(s,c),this.executeTask(o,c)}))}await Promise.all(n)}drainQueue=()=>{if(this._queuedDrain=void 0,this.initialized===!0&&this.queuedTasks.length!==0){for(let e=0;e<this.queuedTasks.length;){let t=this.queuedTasks[e];if(this.hasActiveRequest(t)){e++;continue}let n=q9(t),r=this.getAvailableWorker(n);if(r==null)break;this.queuedTasks.splice(e,1),this.assignWorkerToTask(t,r),this.resolveLanguagesAndExecuteTask(r,t,n)}this.queueBroadcastStateChanges()}};highlightFileAST(e,t){let n=this.getFileResultCache(t);p9(t)||n!=null&&V7(n.options,this.getFileRenderOptions())||this.hasMatchingFileInstanceTask(e,t)||this.submitTask(e,{type:`file`,file:t})}primeFileHighlightCache(e){if(!this.isWorkingPool())return Promise.reject(Error(`WorkerPoolManager.primeFileHighlightCache: worker pool is not working`));let t=this.getOrCreateFileHighlightCacheTask(e);return t==null?Promise.resolve():this.createRenderTaskCallbacks(t)}getOrCreateFileHighlightCacheTask(e){if(e.cacheKey==null){console.warn(`WorkerPoolManager.primeFileHighlightCache: priming highlight cache requires file.cacheKey; skipping "${e.name}".`);return}let t=this.getFileResultCache(e),n=this.getFileHighlightKey(e);if(n==null||p9(e)||t!=null&&V7(t.options,this.getFileRenderOptions()))return;let r=this.getTaskByHighlightKey(n);if(r!=null)return r.primeCache=!0,r.type===`file`?r:void 0;{let t=this.submitCacheTask({type:`file`,file:e},n);return t.type===`file`?t:void 0}}getPlainFileAST(e,t,n,r){if(this.highlighter==null){this.queueInitialization();return}return f9(e,this.highlighter,this.renderOptions,{forcePlainText:!0,startingLine:t,totalLines:n,lines:r})}highlightDiffAST(e,t){let n=this.getDiffResultCache(t);M9(t)||n!=null&&b9(n.options,this.getDiffRenderOptions())||this.hasMatchingDiffInstanceTask(e,t)||this.submitTask(e,{type:`diff`,diff:t})}primeDiffHighlightCache(e){if(!this.isWorkingPool())return Promise.reject(Error(`WorkerPoolManager.primeDiffHighlightCache: worker pool is not working`));let t=this.getOrCreateDiffHighlightCacheTask(e);return t==null?Promise.resolve():this.createRenderTaskCallbacks(t)}getOrCreateDiffHighlightCacheTask(e){if(e.cacheKey==null){console.warn(`WorkerPoolManager.primeDiffHighlightCache: priming highlight cache requires diff.cacheKey; skipping "${e.prevName??e.name}" -> "${e.name}".`);return}let t=this.getDiffResultCache(e),n=this.getDiffHighlightKey(e);if(n==null||M9(e)||t!=null&&b9(t.options,this.getDiffRenderOptions()))return;let r=this.getTaskByHighlightKey(n);if(r!=null)return r.primeCache=!0,r.type===`diff`?r:void 0;{let t=this.submitCacheTask({type:`diff`,diff:e},n);return t.type===`diff`?t:void 0}}getPlainDiffAST(e,t,n,r,i){return this.highlighter==null?void 0:j9(e,this.highlighter,this.renderOptions,{forcePlainText:!0,startingLine:t,totalLines:n,expandedHunks:r,collapsedContextThreshold:i})}terminate(){this.lifecycleGeneration++,this.cancelActiveWorkerTasks(),this.terminateWorkers();let e=new G9;for(let t of this.queuedTasks)this.rejectRenderTaskCallbacks(t,e);this.fileCache.clear(),this.diffCache.clear(),this.activeRequestByInstance.clear(),this.queuedTasks.length=0,this.queuedTaskByInstance.clear(),this.taskByHighlightKey.clear(),this.activeTaskById.clear(),this.highlighter=void 0,this.initialized=!1,this.workersFailed=!1,this.queueBroadcastStateChanges()}isCurrentLifecycle(e){return this.lifecycleGeneration===e}queueInitialization(e){this.initialize(e).catch(e=>{console.error(e)})}cancelActiveWorkerTasks(){let e=new G9;for(let t of this.activeTaskById.values())`reject`in t?t.reject(e):J9(t)&&this.rejectRenderTaskCallbacks(t,e)}terminateWorkers(){for(let e of this.workers)e.worker.terminate();this.workers.length=0}getStats(){return{managerState:this.initialized===!1?`waiting`:this.initialized===!0?`initialized`:`initializing`,totalWorkers:this.workers.length,workersFailed:this.workersFailed,busyWorkers:this.workers.filter(e=>e.requestId!=null||e.pendingSetupRequestId!=null).length,queuedTasks:this.queuedTasks.length,activeTasks:this.activeTaskById.size,themeSubscribers:this.themeSubscribers.size,fileCacheSize:this.fileCache.size,diffCacheSize:this.diffCache.size}}submitTask(e,t){this.initialized===!1&&this.queueInitialization();let n=this.getHighlightKeyForRequest(t),r=n==null?void 0:this.getTaskByHighlightKey(n);if(r!=null){this.detachInstanceFromQueuedTasks(e,r),this.addInstanceToTask(r,e),this.queueBroadcastStateChanges();return}this.detachInstanceFromQueuedTasks(e);let i=this.generateRequestId(),a=Date.now(),{renderOptionsVersion:o}=this,s=(()=>{switch(t.type){case`file`:return{type:`file`,id:i,request:{...t,id:i},instances:new Set([e]),primeCache:!1,highlightKey:n,callbacks:new Set,renderOptionsVersion:o,requestStart:a};case`diff`:return{type:`diff`,id:i,request:{...t,id:i},instances:new Set([e]),primeCache:!1,highlightKey:n,callbacks:new Set,renderOptionsVersion:o,requestStart:a}}})();this.enqueueRenderTask(s,e)}submitCacheTask(e,t){this.initialized===!1&&this.queueInitialization();let n=this.generateRequestId(),r=Date.now(),{renderOptionsVersion:i}=this,a=(()=>{switch(e.type){case`file`:return{type:`file`,id:n,request:{...e,id:n},instances:new Set,primeCache:!0,highlightKey:t,callbacks:new Set,renderOptionsVersion:i,requestStart:r};case`diff`:return{type:`diff`,id:n,request:{...e,id:n},instances:new Set,primeCache:!0,highlightKey:t,callbacks:new Set,renderOptionsVersion:i,requestStart:r}}})();return this.enqueueRenderTask(a),a}enqueueRenderTask(e,t){this.queuedTasks.push(e),t!=null&&this.queuedTaskByInstance.set(t,e),e.highlightKey!=null&&this.taskByHighlightKey.set(e.highlightKey,e),this.queueDrain()}async resolveLanguagesAndExecuteTask(e,t,n){try{let r=n.filter(t=>!e.langs.has(t));if(r.length>0&&(P9(r)?t.request.resolvedLanguages=N9(r):t.request.resolvedLanguages=await F9(r)),!this.activeTaskById.has(t.id)){e.requestId===t.id&&(this.cleanWorkerAndTask(e,t),this.queueBroadcastStateChanges(),this.queuedTasks.length>0&&this.queueDrain());return}this.executeTask(e,t)}catch(n){this.rejectRenderTaskCallbacks(t,X9(n)),this.cleanWorkerAndTask(e,t),this.queueBroadcastStateChanges(),this.queuedTasks.length>0&&this.queueDrain()}}handleWorkerMessage(e,t){let n=this.activeTaskById.get(t.id);try{if(n==null)throw W9;if(t.type===`error`){let e=Error(t.error);if(t.stack&&(e.stack=t.stack),`reject`in n)n.reject(e);else if(J9(n))this.notifyHighlightError(n,e),this.rejectRenderTaskCallbacks(n,e);else throw Error(`handleWorkerMessage: unknown task type`);throw e}switch(t.requestType){case`initialize`:if(n.type!==`initialize`)throw Error(`handleWorkerMessage: task/response dont match`);this.syncCustomExtensionVersion(e,n.request),n.resolve();break;case`set-render-options`:if(n.type!==`set-render-options`)throw Error(`handleWorkerMessage: task/response dont match`);n.resolve();break;case`file`:{if(n.type!==`file`)throw Error(`handleWorkerMessage: task/response dont match`);let{result:r,options:i}=t;if(!this.isCurrentRenderTask(n)||!V7(i,this.getFileRenderOptions()))throw W9;let{request:a}=n;this.syncCustomExtensionVersion(e,a),n.cacheKeyAtDispatch!=null&&this.fileCache.set(n.cacheKeyAtDispatch,{result:r,options:i}),this.resolveRenderTaskCallbacks(n),this.notifyFileInstances(n,r,i);break}case`diff`:{if(n.type!==`diff`)throw Error(`handleWorkerMessage: task/response dont match`);let{result:r,options:i}=t;if(!this.isCurrentRenderTask(n)||!b9(i,this.getDiffRenderOptions()))throw W9;let{request:a}=n;this.syncCustomExtensionVersion(e,a),n.cacheKeyAtDispatch!=null&&this.diffCache.set(n.cacheKeyAtDispatch,{result:r,options:i}),this.resolveRenderTaskCallbacks(n),this.notifyDiffInstances(n,r,i);break}}}catch(e){e!==W9&&console.error(e,n,t)}this.cleanWorkerAndTask(e,n,t.id),this.queueBroadcastStateChanges(),this.queuedTasks.length>0&&this.queueDrain()}_queuedDrain;queueDrain(){this._queuedDrain??(this._queuedDrain=Promise.resolve().then(this.drainQueue),this.queueBroadcastStateChanges())}assignWorkerToTask(e,t){t.requestId=e.id,J9(e)&&(this.clearQueuedInstanceRequests(e),this.trackInstanceRequests(e)),this.activeTaskById.set(e.id,e)}cleanWorkerAndTask(e,t,n=t?.id){e.requestId===n&&(e.requestId=void 0),e.pendingSetupRequestId===n&&(e.pendingSetupRequestId=void 0),t!=null&&(J9(t)&&(this.rejectRenderTaskCallbacks(t,new K9),this.clearInstanceRequests(t),this.clearHighlightKey(t)),this.activeTaskById.delete(t.id))}executeTask(e,t){yat(t.request)&&this.maybeAttachCustomExtensions(e,t.request),this.activeTaskById.has(t.id)||this.assignWorkerToTask(t,e);for(let n of q9(t))e.langs.add(n);try{t.type===`file`?t.cacheKeyAtDispatch=t.request.file.cacheKey:t.type===`diff`&&(t.cacheKeyAtDispatch=t.request.diff.cacheKey),e.worker.postMessage(t.request)}catch(n){console.error(`Failed to post message to worker:`,n),J9(t)?(this.notifyHighlightError(t,n),this.rejectRenderTaskCallbacks(t,X9(n))):`reject`in t&&t.reject(n),this.cleanWorkerAndTask(e,t),this.queuedTasks.length>0&&this.queueDrain()}this.queueBroadcastStateChanges()}maybeAttachCustomExtensions(e,t){if(t.customExtensionsVersion!=null)return;let n=G7();e.customExtensionsVersion>=n||(t.customExtensionsVersion=n,t.customExtensionMap=K7())}syncCustomExtensionVersion(e,t){t.customExtensionsVersion!=null&&(e.customExtensionsVersion=t.customExtensionsVersion)}getAvailableWorker(e){let t;for(let n of this.workers){if(n.requestId!=null||n.pendingSetupRequestId!=null||!n.initialized)continue;if(t=n,e.length===0)break;let r=!0;for(let t of e)if(!n.langs.has(t)){r=!1;break}if(r)break}return t}getFileHighlightKey(e){if(e.cacheKey!=null)return`file:${e.cacheKey}:${this.renderOptionsVersion}`}getDiffHighlightKey(e){if(e.cacheKey!=null)return`diff:${e.cacheKey}:${this.renderOptionsVersion}`}getHighlightKeyForRequest(e){switch(e.type){case`file`:return this.getFileHighlightKey(e.file);case`diff`:return this.getDiffHighlightKey(e.diff)}}hasActiveRequest(e){for(let t of Y9(e))if(this.activeRequestByInstance.has(t))return!0;return!1}addInstanceToTask(e,t){e.type,e.instances.add(t),this.activeTaskById.has(e.id)?this.activeRequestByInstance.set(t,e.id):this.queuedTaskByInstance.set(t,e)}detachInstanceFromQueuedTasks(e,t){let n=this.queuedTaskByInstance.get(e);n!=null&&n!==t&&(this.queuedTaskByInstance.delete(e),this.detachInstanceFromRenderTask(n,e),!n.primeCache&&n.instances.size===0&&this.removeQueuedTask(n))}detachInstanceFromRenderTask(e,t){e.type,e.instances.delete(t)}removeQueuedTask(e){let t=this.queuedTasks.indexOf(e);t!==-1&&this.queuedTasks.splice(t,1),this.rejectRenderTaskCallbacks(e,new K9),this.clearQueuedInstanceRequests(e),this.clearHighlightKey(e)}removeActiveTask(e){this.rejectRenderTaskCallbacks(e,new K9),this.clearInstanceRequests(e),this.clearHighlightKey(e),this.activeTaskById.delete(e.id)}createRenderTaskCallbacks(e){return new Promise((t,n)=>{e.callbacks.add({resolve:t,reject:n})})}resolveRenderTaskCallbacks(e){for(let t of e.callbacks)t.resolve();e.callbacks.clear()}rejectRenderTaskCallbacks(e,t){for(let n of e.callbacks)n.reject(t);e.callbacks.clear()}invalidateRenderTasks(){for(let e=this.queuedTasks.length-1;e>=0;e--){let t=this.queuedTasks[e];t.renderOptionsVersion!==this.renderOptionsVersion&&this.removeQueuedTask(t)}for(let e of Array.from(this.activeTaskById.values()))J9(e)&&e.renderOptionsVersion!==this.renderOptionsVersion&&this.removeActiveTask(e)}clearQueuedInstanceRequests(e){for(let t of Y9(e))this.queuedTaskByInstance.get(t)===e&&this.queuedTaskByInstance.delete(t)}clearHighlightKey(e){e.highlightKey!=null&&this.taskByHighlightKey.get(e.highlightKey)===e&&this.taskByHighlightKey.delete(e.highlightKey)}trackInstanceRequests(e){for(let t of Y9(e))this.activeRequestByInstance.set(t,e.id)}clearInstanceRequests(e){for(let t of Y9(e))this.activeRequestByInstance.get(t)===e.id&&this.activeRequestByInstance.delete(t)}notifyFileInstances(e,t,n){for(let r of e.instances)this.activeRequestByInstance.get(r)===e.id&&r.onHighlightSuccess(e.request.file,t,n)}notifyDiffInstances(e,t,n){for(let r of e.instances)this.activeRequestByInstance.get(r)===e.id&&r.onHighlightSuccess(e.request.diff,t,n)}notifyHighlightError(e,t){for(let n of Y9(e))this.activeRequestByInstance.get(n)===e.id&&n.onHighlightError(t)}hasMatchingFileInstanceTask(e,t){for(let n of this.iterateRenderTasks())if(n.type===`file`&&this.isCurrentRenderTask(n)&&n.instances.has(e)&&S4(t,n.request.file))return!0;return!1}hasMatchingDiffInstanceTask(e,t){for(let n of this.iterateRenderTasks())if(n.type===`diff`&&this.isCurrentRenderTask(n)&&n.instances.has(e)&&y9(n.request.diff,t))return!0;return!1}getTaskByHighlightKey(e){let t=this.taskByHighlightKey.get(e);return t!=null&&this.isCurrentRenderTask(t)?t:void 0}isCurrentRenderTask(e){return e.renderOptionsVersion===this.renderOptionsVersion}*iterateRenderTasks(){for(let e of this.queuedTasks)yield e;for(let e of this.activeTaskById.values())J9(e)&&(yield e)}generateRequestId(){return`req_${++this.nextRequestId}`}};function yat(e){return e.type===`initialize`||e.type===`file`||e.type===`diff`}function q9(e){let t=new Set;if(e.type===`initialize`||e.type===`set-render-options`)return[];switch(e.type){case`file`:t.add(e.request.file.lang??W7(e.request.file.name));break;case`diff`:t.add(e.request.diff.lang??W7(e.request.diff.name)),t.add(e.request.diff.lang??W7(e.request.diff.prevName??`-`))}return t.delete(`text`),Array.from(t)}function J9(e){return e?.type===`file`||e?.type===`diff`}function Y9(e){return e.instances}function X9(e){return e instanceof Error?e:Error(String(e))}var Z9;function bat({poolOptions:e,highlighterOptions:t}){return Z9??=new vat(e,t),Z9}function xat(){Z9!=null&&(Z9.terminate(),Z9=void 0)}var Q9=(0,M.createContext)(void 0),$9=0;function Sat({children:e,poolOptions:t,highlighterOptions:n}){let[r]=(0,M.useState)(()=>{if(!(typeof window>`u`))return bat({poolOptions:t,highlighterOptions:n})});return(0,M.useInsertionEffect)(()=>{if(r!=null)return $9++,()=>{$9--}},[r]),(0,M.useEffect)(()=>()=>{$9===0&&xat()},[]),(0,N.jsx)(Q9.Provider,{value:r,children:e})}function Cat(){return(0,M.useContext)(Q9)}export{fit as $,tJ as $a,Ri as $c,q$e as $i,$n as $l,Z4e as $n,dK as $o,gQ as $r,BU as $s,u5e as $t,zit as A,AZe as Aa,jH as Ac,Y1e as Ai,jr as Al,w8e as An,cq as Ao,r$ as Ar,XW as As,$4 as At,Eit as B,JXe as Ba,TVe as Bc,YX as Bi,ore as Bl,w3e as Bn,TJe as Bo,XQ as Br,sGe as Bs,S4 as Bt,E9 as C,aX as Ca,$H as Cc,G1e as Ci,ri as Cl,K8e as Cn,zJe as Co,L4e as Cr,qW as Cs,f7e as Ct,Fne as Cu,b9 as D,FZe as Da,_He as Dc,xZ as Di,Pr as Dl,N2 as Dn,vq as Do,e$ as Dr,YW as Ds,c3 as Dt,Wit as E,aQe as Ea,HHe as Ec,U1e as Ei,Lr as El,J8e as En,yq as Eo,f4e as Er,JW as Es,l3 as Et,En as Eu,Mit as F,ZXe as Fa,bH as Fc,tZ as Fi,ure as Fl,Q6e as Fn,tq as Fo,w2e as Fr,oKe as Fs,N5e as Ft,bit as G,cJ as Ga,aVe as Gc,XX as Gi,Kne as Gl,f3e as Gn,GK as Go,M2e as Gr,wW as Gs,y5e as Gt,wit as H,fXe as Ha,CVe as Hc,d1e as Hi,mr as Hl,C3e as Hn,Yqe as Ho,qQ as Hr,cGe as Hs,e4 as Ht,jit as I,OXe as Ia,_H as Ic,eZ as Ii,Dr as Il,G6e as In,eq as Io,T2e as Ir,VW as Is,M5e as It,git as J,XYe as Ja,SV as Jc,JX as Ji,Zne as Jl,K$ as Jn,fK as Jo,KQ as Jr,OWe as Js,Y2 as Jt,yit as K,sJ as Ka,wV as Kc,p1e as Ki,Zn as Kl,p3e as Kn,qK as Ko,V2e as Kr,PWe as Ks,Z2 as Kt,Ait as L,DXe as La,gH as Lc,m1e as Li,xr as Ll,K6e as Ln,wJe as Lo,D2e as Lr,WGe as Ls,w4 as Lt,Lit as M,nZe as Ma,HH as Mc,$1e as Mi,Mr as Ml,h2 as Mn,vJe as Mo,O2e as Mr,lKe as Ms,A4 as Mt,Pit as N,iZe as Na,BHe as Nc,yZ as Ni,Ar as Nl,Z6e as Nn,xJe as No,U2e as Nr,uKe as Ns,D4 as Nt,y9 as O,IZe as Oa,GH as Oc,bZ as Oi,Ir as Ol,Y8e as On,hq as Oo,$Q as Or,GW as Os,t3 as Ot,Nit as P,kJ as Pa,hHe as Pc,iZ as Pi,kr as Pl,$6e as Pn,fJe as Po,k2e as Pr,HW as Ps,P5e as Pt,uit as Q,nJ as Qa,Vi as Qc,GX as Qi,Qn as Ql,K4e as Qn,Dqe as Qo,X0e as Qr,KUe as Qs,i5e as Qt,kit as R,YXe as Ra,JVe as Rc,$X as Ri,sre as Rl,T3e as Rn,dJe as Ro,H2e as Rr,PW as Rs,T4 as Rt,T9 as S,NQe as Sa,tUe as Sc,X1e as Si,li as Sl,q8e as Sn,LJe as So,T$ as Sr,ZW as Ss,d3 as St,Tn as Su,Uit as T,wQe as Ta,zHe as Tc,Q1e as Ti,Rr as Tl,Z8e as Tn,HJe as To,c4e as Tr,KW as Ts,d7e as Tt,jne as Tu,g9 as U,vJ as Ua,PV as Uc,QX as Ui,dr as Ul,b3e as Un,Zqe as Uo,C2e as Ur,uGe as Us,$2 as Ut,Tit as V,vXe as Va,EVe as Vc,ZX as Vi,hr as Vl,c1 as Vn,Jqe as Vo,A2e as Vr,gGe as Vs,k5e as Vt,xit as W,_J as Wa,MV as Wc,u1e as Wi,ur as Wl,l1 as Wn,Xqe as Wo,j2e as Wr,CW as Ws,Q2 as Wt,hit as X,iJ as Xa,jie as Xc,t1e as Xi,qne as Xl,e3e as Xn,aK as Xo,PQ as Xr,JU as Xs,K2 as Xt,p9 as Y,KYe as Ya,Mie as Yc,n1e as Yi,Jne as Yl,t3e as Yn,mK as Yo,_2e as Yr,ZU as Ys,J2 as Yt,mit as Z,qYe as Za,Pie as Zc,qX as Zi,Gn as Zl,$4e as Zn,uK as Zo,c2e as Zr,qU as Zs,G2 as Zt,k9 as _,e$e as _a,_Ue as _c,t0e as _i,xi as _l,L2 as _n,TYe as _o,R4e as _r,fqe as _s,d9e as _t,Ine as _u,gat as a,T$e as aa,jU as ac,W0e as ai,ji as al,h5e as an,Qq as ao,H4e as ar,eK as as,Grt as at,Hn as au,Jit as b,_X as ba,rUe as bc,e0e as bi,ai as bl,a5e as bn,Oq as bo,F4e as br,YG as bs,Y7e as bt,Dne as bu,fat as c,m$e as ca,SU as cc,$Z as ci,rie as cl,B2 as cn,VYe as co,H$ as cr,uqe as cs,zrt as ct,Bn as cu,lat as d,OX as da,mUe as dc,c0e as di,Ei as dl,Q8e as dn,Iq as do,g$ as dr,HG as ds,V7 as dt,In as du,UX as ea,RU as ec,Z0e as ei,zi as el,l5e as en,eJ as eo,q4e as er,iK as es,dit as et,Jn as eu,cat as f,EX as fa,bUe as fc,EZ as fi,Di as fl,F2 as fn,Bq as fo,C4e as fr,JG as fs,B7 as ft,Fn as fu,j9 as g,SX as ga,cUe as gc,n0e as gi,Ti as gl,e5e as gn,OYe as go,A4e as gr,qG as gs,R7 as gt,Rne as gu,M9 as h,CX as ha,fUe as hc,a0e as hi,wi as hl,r5e as hn,LYe as ho,N4e as hr,lqe as hs,Nrt as ht,Pne as hu,hat as i,LX as ia,TU as ic,U0e as ii,Li as il,p5e as in,$q as io,B$ as ir,rK as is,Krt as it,Un as iu,Vit as j,SY as ja,FHe as jc,W1e as ji,Nr as jl,b2 as jn,sq as jo,S2e as jr,_Ke as js,Z4 as jt,Rit as k,TY as ka,UHe as kc,q1e as ki,Fr as kl,k8e as kn,pq as ko,t$ as kr,QW as ks,Q4 as kt,uat as l,u$e as la,hU as lc,tQ as li,iie as ll,d5e as ln,Hq as lo,v$ as lr,VG as ls,Lrt as lt,zn as lu,aat as m,TX as ma,uUe as mc,wZ as mi,tie as ml,n5e as mn,Mq as mo,D4e as mr,KG as ms,z7 as mt,Nn as mu,Sat as n,RX as na,kU as nc,wQ as ni,Fi as nl,z2 as nn,Jq as no,Y4e as nr,tK as ns,f9 as nt,sr as nu,_at as o,S$e as oa,PUe as oc,L0e as oi,Ai as ol,g5e as on,Zq as oo,U4e as or,XG as os,W7 as ot,Vn as ou,V9 as p,xX as pa,hUe as pc,o0e as pi,Oi as pl,_5e as pn,Vq as po,E4e as pr,cqe as ps,Frt as pt,Pn as pu,_it as q,lJ as qa,xV as qc,l1e as qi,Xn as ql,n3e as qn,pK as qo,JQ as qr,LWe as qs,v5e as qt,Cat as r,IX as ra,EU as rc,xQ as ri,Pi as rl,f5e as rn,GYe as ro,V4e as rr,Tqe as rs,d9 as rt,ar as ru,mat as s,jX as sa,OU as sc,R0e as si,ki as sl,m5e as sn,Uq as so,V$ as sr,QG as ss,Hrt as st,Hne as su,Q9 as t,Y$e as ta,FU as tc,e2e as ti,Ni as tl,$8e as tn,Yq as to,J4e as tr,xqe as ts,pit as tt,er as tu,dat as u,l$e as ua,rU as uc,I0e as ui,nie as ul,H2 as un,Wq as uo,y$ as ur,dqe as us,Irt as ut,Ln as uu,w9 as v,QQe as va,iU as vc,r0e as vi,fi as vl,R2 as vn,jYe as vo,M4e as vr,sqe as vs,i9e as vt,jn as vu,Yit as w,cX as wa,RH as wc,Z1e as wi,mre as wl,X8e as wn,VJe as wo,I4e as wr,WW as ws,u3 as wt,Ene as wu,Git as x,IQe as xa,iUe as xc,J1e as xi,ci as xl,t5e as xn,kq as xo,j4e as xr,vKe as xs,C3 as xt,kne as xu,C9 as y,vX as ya,nUe as yc,i0e as yi,ii as yl,I2 as yn,bYe as yo,P4e as yr,oqe as ys,J7e as yt,Lne as yu,Oit as z,iY as za,wVe as zc,h1e as zi,are as zl,d1 as zn,EJe as zo,P2e as zr,MW as zs,C4 as zt};
|
|
2541
|
-
//# sourceMappingURL=WorkerPoolContext-
|
|
2540
|
+
}`}function Eit(e,t){let n=_9(t);return e.replace(Cit,n)}function Dit(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function Oit({code:e,pre:t,columnType:n,rowSpan:r,containerSize:i=!1}={}){return e??(e=document.createElement(`code`),e.setAttribute(`data-code`,``),n!=null&&e.setAttribute(`data-${n}`,``),t?.appendChild(e)),r==null?e.style.removeProperty(`grid-row`):e.style.setProperty(`grid-row`,`span ${r}`),i?e.setAttribute(`data-container-size`,``):e.removeAttribute(`data-container-size`),e}function kit(e,t){if(t==null)return;let n=e.shadowRoot??e.attachShadow({mode:`open`});n.innerHTML===``&&(n.innerHTML=t)}function Ait(e,{type:t,diffIndicators:n,disableBackground:r,disableLineNumbers:i,overflow:a,split:o,totalLines:s,customProperties:c}){if(c!=null)for(let t in c){let n=c[t];n!=null&&e.setAttribute(t,`${n}`)}switch(t===`diff`?(e.setAttribute(`data-diff`,``),e.removeAttribute(`data-file`)):(e.setAttribute(`data-file`,``),e.removeAttribute(`data-diff`)),n){case`bars`:case`classic`:e.setAttribute(`data-indicators`,n);break;case`none`:e.removeAttribute(`data-indicators`)}return i?e.setAttribute(`data-disable-line-numbers`,``):e.removeAttribute(`data-disable-line-numbers`),r?e.removeAttribute(`data-background`):e.setAttribute(`data-background`,``),t===`diff`?e.setAttribute(`data-diff-type`,o?`split`:`single`):e.removeAttribute(`data-diff-type`),e.setAttribute(`data-overflow`,a),e.style.setProperty(`--diffs-min-number-column-width-default`,`${`${s}`.length}ch`),e}function jit(e){if(typeof HTMLStyleElement<`u`&&e instanceof HTMLStyleElement)return!0;let t=e.tagName??e.nodeName;return typeof t==`string`&&t.toLowerCase()===`style`}function Mit(e){return e?.useTokenTransformer===!0||e?.onTokenClick!=null||e?.onTokenEnter!=null||e?.onTokenLeave!=null}function Nit(e,t){let n=e?.offsetHeight??0;if(e==null||n===0){t();return}e.style.minHeight=`${n}px`;try{t(),e.offsetHeight}finally{e.style.minHeight=``}}function Pit({shadowRoot:e,currentNode:t,themeCSS:n}){if(n.trim()===``){t?.remove();return}return t??=Fit(),t.textContent=n,t.parentNode!==e&&e.appendChild(t),t}function Fit(){let e=document.createElement(`style`);return e.setAttribute(o5e,``),e}var Iit=void 0;function Lit(){return Iit??=`safari`in window&&`pushNotification`in window.safari||/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}if(typeof HTMLElement<`u`&&customElements.get(`diffs-container`)==null){let e;class t extends HTMLElement{constructor(){if(super(),this.shadowRoot!=null)return;let t=this.attachShadow({mode:`open`});e??(e=new CSSStyleSheet,e.replaceSync(Sit)),t.adoptedStyleSheets=[e]}connectedCallback(){g9(this.shadowRoot??this.attachShadow({mode:`open`}))}}customElements.define(F2,t)}function Rit(e){return{...H2,...e}}function zit(e,t){let n=Bit(e,t);return t?n:e.diffHeaderHeight+n}function Bit(e,t){return e.paddingTop??(t?e.spacing:0)}function Vit(e){return e.paddingBottom??e.spacing}function Hit(e){switch(e){case`simple`:return 4;case`metadata`:case`line-info`:case`line-info-basic`:case`custom`:return 32}}function y9(e,t){return e===t||e?.cacheKey!=null&&e.cacheKey===t?.cacheKey}function b9(e,t){return Y2(e.theme,t.theme)&&e.useTokenTransformer===t.useTokenTransformer&&e.tokenizeMaxLineLength===t.tokenizeMaxLineLength&&e.lineDiffType===t.lineDiffType&&e.maxLineDiffLength===t.maxLineDiffLength}function x9({line:e,spanStart:t,spanLength:n}){return{start:{line:e,character:t},end:{line:e,character:t+n},properties:{"data-diff-span":``},alwaysWrap:!0}}function S9({item:e,arr:t,enableJoin:n,isNeutral:r=!1,isLastItem:i=!1}){let a=t[t.length-1];if(a==null||i||!n){t.push([+!r,e.value]);return}let o=a[0]===0;if(r===o||r&&e.value.length===1&&!o){a[1]+=e.value;return}t.push([+!r,e.value])}function C9(e){return[$2(e.additionStart,e.additionCount)+1,e4(e.additionStart,e.additionCount)+1]}function w9({isPartial:e,rangeSize:t,expandedHunks:n,hunkIndex:r,collapsedContextThreshold:i}){let a=Math.max(t,0);if(a===0||e)return{fromStart:0,fromEnd:0,rangeSize:a,collapsedLines:a,renderAll:!1};if(n===!0||a<=i)return{fromStart:a,fromEnd:0,rangeSize:a,collapsedLines:0,renderAll:!0};let o=n?.get(r),s=Math.min(Math.max(o?.fromStart??0,0),a),c=Math.min(Math.max(o?.fromEnd??0,0),a),l=s+c,u=l>=a;return{fromStart:u?a:s,fromEnd:u?0:c,rangeSize:a,collapsedLines:Math.max(a-l,0),renderAll:u}}function Uit(e){let t=e.hunks[e.hunks.length-1];if(t==null||e.isPartial||e.additionLines.length===0||e.deletionLines.length===0)return!1;let n=e.additionLines.length-e4(t.additionStart,t.additionCount),r=e.deletionLines.length-e4(t.deletionStart,t.deletionCount);return n<=0&&r<=0?!1:n!==r}function T9({fileDiff:e,errorPrefix:t}){let n=e.hunks[e.hunks.length-1];if(n==null||e.isPartial||e.additionLines.length===0||e.deletionLines.length===0)return 0;let r=e.additionLines.length-e4(n.additionStart,n.additionCount),i=e.deletionLines.length-e4(n.deletionStart,n.deletionCount);if(r<=0&&i<=0)return 0;if(r!==i)throw Error(`${t}: trailing context mismatch (additions=${r}, deletions=${i}) for ${e.name}`);return Math.min(r,i)}function E9({fileDiff:e,hunkIndex:t,expandedHunks:n,collapsedContextThreshold:r,errorPrefix:i}){if(t!==e.hunks.length-1)return;let a=T9({fileDiff:e,errorPrefix:i});if(a<=0)return;if(n===!0||a<=r)return{fromStart:a,fromEnd:0,rangeSize:a,collapsedLines:0,renderAll:!0};let o=n?.get(e.hunks.length),s=Math.min(Math.max(o?.fromStart??0,0),a);return{fromStart:s,fromEnd:0,rangeSize:a,collapsedLines:a-s,renderAll:s>=a}}function Wit({fileDiff:e,lineNumber:t,expandedHunks:n,collapsedContextThreshold:r}){if(n===!0||e.isPartial)return!0;for(let[i,a]of e.hunks.entries()){let[o,s]=C9(a);if(t<o){let s=w9({isPartial:e.isPartial,rangeSize:a.collapsedBefore,expandedHunks:n,hunkIndex:i,collapsedContextThreshold:r}),c=o-s.rangeSize;return s.renderAll||t<c+s.fromStart||t>=o-s.fromEnd}if(t<s)return!0}let i=E9({fileDiff:e,hunkIndex:e.hunks.length-1,expandedHunks:n,collapsedContextThreshold:r,errorPrefix:`isAdditionLineRenderable`});if(i==null||i.renderAll)return!0;let a=e.hunks[e.hunks.length-1],[,o]=C9(a);return t<o+i.fromStart||t>=o+i.rangeSize}function Git({fileDiff:e,lineNumber:t,direction:n,expandedHunks:r,collapsedContextThreshold:i}){if(r===!0||e.isPartial)return t;let a=[],o=1;for(let[t,n]of e.hunks.entries()){let[s,c]=C9(n),l=w9({isPartial:e.isPartial,rangeSize:n.collapsedBefore,expandedHunks:r,hunkIndex:t,collapsedContextThreshold:i}),u=s-l.rangeSize;l.renderAll?a.push([u,s]):(l.fromStart>0&&a.push([u,u+l.fromStart]),l.fromEnd>0&&a.push([s-l.fromEnd,s])),a.push([s,c]),o=c}let s=E9({fileDiff:e,hunkIndex:e.hunks.length-1,expandedHunks:r,collapsedContextThreshold:i,errorPrefix:`getNearestRenderableAdditionLine`});if(s!=null){let e=o;o=e+s.rangeSize,s.renderAll?a.push([e,o]):s.fromStart>0&&a.push([e,e+s.fromStart])}if(t>=o)return t;if(n===`down`){for(let[e,n]of a)if(n>t)return Math.max(e,t);return}for(let e=a.length-1;e>=0;e--){let[n,r]=a[e];if(n<=t)return Math.min(r-1,t)}}function D9({type:e,metrics:t}){return t.hunkSeparatorHeight??Hit(e)}function O9({type:e,metrics:t}){return e===`simple`||e===`metadata`||e===`line-info-basic`?0:t.spacing}function Kit({type:e,hunkIndex:t,hunkSpecs:n}){switch(e){case`simple`:return t>0;case`metadata`:return n!=null;case`line-info`:case`line-info-basic`:case`custom`:return!0}}function qit(e){return e!==`simple`&&e!==`metadata`}function Jit({type:e,metrics:t,hunkIndex:n,hunkSpecs:r}){if(!Kit({type:e,hunkIndex:n,hunkSpecs:r}))return;let i=D9({type:e,metrics:t}),a=O9({type:e,metrics:t}),o=n>0?a:0,s=a;return{height:i,gapBefore:o,gapAfter:s,totalHeight:o+i+s}}function Yit({type:e,metrics:t}){if(!qit(e))return;let n=D9({type:e,metrics:t}),r=O9({type:e,metrics:t});return{height:n,gapBefore:r,gapAfter:0,totalHeight:r+n}}function k9({diff:e,diffStyle:t,startingLine:n=0,totalLines:r=1/0,expandedHunks:i,collapsedContextThreshold:a=1,callback:o}){let s=Xit({diff:e,diffStyle:t,startingLine:n,expandedHunks:i,collapsedContextThreshold:a}),c={viewportStart:n,viewportEnd:n+r,isWindowedHighlight:n>0||r<1/0,splitCount:s.splitCount,unifiedCount:s.unifiedCount,finalHunkIndex:e.hunks.length-1,shouldBreak(){if(!c.isWindowedHighlight)return!1;let e=c.unifiedCount>=n+r,i=c.splitCount>=n+r;return t===`unified`?e:(t===`split`||e)&&i},shouldSkip(e,r){if(!c.isWindowedHighlight)return!1;let i=e>0&&c.unifiedCount+e<=n,a=r>0&&c.splitCount+r<=n;return t===`unified`?i:(t===`split`||i)&&a},incrementCounts(e,n){(t===`unified`||t===`both`)&&(c.unifiedCount+=e),(t===`split`||t===`both`)&&(c.splitCount+=n)},isInWindow(e,n){if(!c.isWindowedHighlight)return!0;let r=c.isInUnifiedWindow(e),i=c.isInSplitWindow(n);return t===`unified`?r:t===`split`?i:r||i},isInUnifiedWindow(e){return!c.isWindowedHighlight||c.unifiedCount>=n-e&&c.unifiedCount<n+r},isInSplitWindow(e){return!c.isWindowedHighlight||c.splitCount>=n-e&&c.splitCount<n+r},emit(e,n=!1){return n||(t===`unified`?c.incrementCounts(1,0):t===`split`?c.incrementCounts(0,1):c.incrementCounts(1,1)),o(e)??!1}};hunkIterator:for(let n=s.hunkIndex;n<e.hunks.length;n++){let r=e.hunks[n];if(r==null)throw Error(`iterateOverDiff: invalid hunk index`);if(c.shouldBreak())break;let o=$2(r.deletionStart,r.deletionCount),s=$2(r.additionStart,r.additionCount),l=!e.isPartial&&r.deletionCount===0?o:r.deletionLineIndex,u=!e.isPartial&&r.additionCount===0?s:r.additionLineIndex,d=w9({isPartial:e.isPartial,rangeSize:r.collapsedBefore,expandedHunks:i,hunkIndex:n,collapsedContextThreshold:a}),f=n===c.finalHunkIndex?E9({fileDiff:e,hunkIndex:n,expandedHunks:i,collapsedContextThreshold:a,errorPrefix:`iterateOverDiff`}):void 0,p=d.fromStart+d.fromEnd;function m(e,n){return f==null||f.collapsedLines<=0||f.fromStart+f.fromEnd>0?0:t===`unified`?e===r.unifiedLineStart+r.unifiedLineCount-1?f.collapsedLines:0:n===r.splitLineStart+r.splitLineCount-1?f.collapsedLines:0}let h=d.collapsedLines===0;function g(){return h?0:(h=!0,d.collapsedLines)}if(c.shouldSkip(p,p))c.incrementCounts(p,p),g();else{let e=r.unifiedLineStart-d.rangeSize,i=r.splitLineStart-d.rangeSize,a=l-d.rangeSize,f=u-d.rangeSize,p=o+1-d.rangeSize,m=s+1-d.rangeSize;if(A9(c,d.fromStart,t,t=>c.emit({hunkIndex:n,hunk:r,collapsedBefore:0,collapsedAfter:0,type:`context-expanded`,deletionLine:{lineNumber:p+t,lineIndex:a+t,noEOFCR:!1,unifiedLineIndex:e+t,splitLineIndex:i+t},additionLine:{unifiedLineIndex:e+t,splitLineIndex:i+t,lineIndex:f+t,lineNumber:m+t,noEOFCR:!1}}))||(e=r.unifiedLineStart-d.fromEnd,i=r.splitLineStart-d.fromEnd,a=l-d.fromEnd,f=u-d.fromEnd,p=o+1-d.fromEnd,m=s+1-d.fromEnd,A9(c,d.fromEnd,t,t=>c.emit({hunkIndex:n,hunk:r,collapsedBefore:g(),collapsedAfter:0,type:`context-expanded`,deletionLine:{lineNumber:p+t,lineIndex:a+t,noEOFCR:!1,unifiedLineIndex:e+t,splitLineIndex:i+t},additionLine:{unifiedLineIndex:e+t,splitLineIndex:i+t,lineIndex:f+t,lineNumber:m+t,noEOFCR:!1}}),()=>{g()})))break hunkIterator}let _=r.unifiedLineStart,v=r.splitLineStart,y=l,b=u,x=o+1,S=s+1,C=r.hunkContent.at(-1);for(let e of r.hunkContent){if(c.shouldBreak())break hunkIterator;let i=e===C;if(e.type===`context`){if(c.shouldSkip(e.lines,e.lines))c.incrementCounts(e.lines,e.lines),g();else if(A9(c,e.lines,t,t=>{let a=i&&t===e.lines-1,o=_+t,s=v+t;return c.emit({hunkIndex:n,hunk:r,collapsedBefore:g(),collapsedAfter:m(o,s),type:`context`,deletionLine:{lineNumber:x+t,lineIndex:y+t,noEOFCR:a&&r.noEOFCRDeletions,unifiedLineIndex:o,splitLineIndex:s},additionLine:{unifiedLineIndex:o,splitLineIndex:s,lineIndex:b+t,lineNumber:S+t,noEOFCR:a&&r.noEOFCRAdditions}})},()=>{g()}))break hunkIterator;_+=e.lines,v+=e.lines,y+=e.lines,b+=e.lines,x+=e.lines,S+=e.lines}else{let a=Math.max(e.deletions,e.additions),o=e.deletions+e.additions;if(!c.shouldSkip(o,a)){let s=$it(c,e,t);(s[0]?.[0]??0)>0&&g();for(let[l,u]of s)for(let s=l;s<u;s++){let l=m(_+s,t===`unified`?v+(s<e.deletions?s:s-e.deletions):v+s);if(c.emit(eat({hunkIndex:n,hunk:r,collapsedBefore:g(),collapsedAfter:l,diffStyle:t,index:s,unifiedLineIndex:_,splitLineIndex:v,additionLineIndex:b,deletionLineIndex:y,additionLineNumber:S,deletionLineNumber:x,content:e,isLastContent:i,unifiedCount:o,splitCount:a}),!0))break hunkIterator}}g(),c.incrementCounts(o,a),_+=o,v+=a,y+=e.deletions,b+=e.additions,x+=e.deletions,S+=e.additions}}if(f!=null){let{collapsedLines:n,fromStart:r,fromEnd:i}=f,a=r+i;if(A9(c,a,t,t=>{let r=t===a-1;return c.emit({hunkIndex:e.hunks.length,hunk:void 0,collapsedBefore:0,collapsedAfter:r?n:0,type:`context-expanded`,deletionLine:{lineNumber:x+t,lineIndex:y+t,noEOFCR:!1,unifiedLineIndex:_+t,splitLineIndex:v+t},additionLine:{unifiedLineIndex:_+t,splitLineIndex:v+t,lineIndex:b+t,lineNumber:S+t,noEOFCR:!1}})},void 0,()=>c.shouldBreak()))break hunkIterator}}}function Xit({diff:e,diffStyle:t,startingLine:n,expandedHunks:r,collapsedContextThreshold:i}){if(n<=0||t===`both`)return{hunkIndex:0,splitCount:0,unifiedCount:0};let a=Zit({diff:e,expandedHunks:r,collapsedContextThreshold:i}),o=0,s=e.hunks.length-1,c=e.hunks.length;for(;o<=s;){let e=o+s>>1,r=a[e+1];if(r==null)throw Error(`iterateOverDiff: invalid hunk prefix index`);(t===`unified`?r.unifiedCount:r.splitCount)>n?(c=e,s=e-1):o=e+1}if(c>=e.hunks.length){let t=a[e.hunks.length];if(t==null)throw Error(`iterateOverDiff: invalid terminal hunk prefix index`);return{hunkIndex:e.hunks.length,splitCount:t.splitCount,unifiedCount:t.unifiedCount}}let l=a[c];if(l==null)throw Error(`iterateOverDiff: invalid selected hunk prefix index`);return{hunkIndex:c,splitCount:l.splitCount,unifiedCount:l.unifiedCount}}function Zit({diff:e,expandedHunks:t,collapsedContextThreshold:n}){let r=0,i=0,a=e.hunks.length-1,o=[{splitCount:0,unifiedCount:0}];for(let s=0;s<e.hunks.length;s++){let c=e.hunks[s];if(c==null)throw Error(`iterateOverDiff: invalid hunk summary index`);let l=w9({isPartial:e.isPartial,rangeSize:c.collapsedBefore,expandedHunks:t,hunkIndex:s,collapsedContextThreshold:n}),u=l.fromStart+l.fromEnd;r+=u+c.splitLineCount,i+=u+c.unifiedLineCount;let d=s===a?E9({fileDiff:e,hunkIndex:s,expandedHunks:t,collapsedContextThreshold:n,errorPrefix:`iterateOverDiff`}):void 0;if(d!=null){let e=d.fromStart+d.fromEnd;r+=e,i+=e}o.push({splitCount:r,unifiedCount:i})}return o}function Qit(e,t,n){if(!e.isWindowedHighlight||t<=0)return[0,t];let r=[];function i(n){let i=Math.max(0,e.viewportStart-n),a=Math.min(t,e.viewportEnd-n);a>i&&r.push([i,a])}if(n!==`split`&&i(e.unifiedCount),n!==`unified`&&i(e.splitCount),r.length===0)return[0,0];let a=r[0][0],o=r[0][1];for(let e=1;e<r.length;e++){let t=r[e];a=Math.min(a,t[0]),o=Math.max(o,t[1])}return[a,o]}function A9(e,t,n,r,i,a){let[o,s]=Qit(e,t,n);o>0&&(e.incrementCounts(o,o),i?.());let c=o;for(;c<t;){if(a?.()===!0)return!0;if(c>=s){e.incrementCounts(t-c,t-c);break}if(e.isInWindow(0,0)){if(r(c)===!0)return!0}else e.incrementCounts(1,1);c++}return!1}function $it(e,t,n){if(!e.isWindowedHighlight)return[[0,n===`unified`?t.deletions+t.additions:Math.max(t.deletions,t.additions)]];let r=n!==`split`,i=n!==`unified`,a=n===`unified`?`unified`:`split`,o=[];function s(t,n){if(t+n<=e.viewportStart||t>=e.viewportEnd)return;let r=Math.max(0,e.viewportStart-t),i=Math.min(n,e.viewportEnd-t);return i>r?[r,i]:void 0}function c(e,n){return a===`split`?e:n===`additions`?[e[0]+t.deletions,e[1]+t.deletions]:e}function l(e,t){if(e==null)return;let[n,r]=c(e,t);r>n&&o.push([n,r])}if(r&&(l(s(e.unifiedCount,t.deletions),`deletions`),l(s(e.unifiedCount+t.deletions,t.additions),`additions`)),i&&(l(s(e.splitCount,t.deletions),`deletions`),l(s(e.splitCount,t.additions),`additions`)),o.length===0)return o;o.sort((e,t)=>e[0]-t[0]);let u=[o[0]];for(let[e,t]of o.slice(1)){let n=u[u.length-1];e<=n[1]?n[1]=Math.max(n[1],t):u.push([e,t])}return u}function eat({hunkIndex:e,hunk:t,collapsedAfter:n,collapsedBefore:r,diffStyle:i,index:a,unifiedLineIndex:o,splitLineIndex:s,additionLineIndex:c,deletionLineIndex:l,additionLineNumber:u,deletionLineNumber:d,content:f,isLastContent:p,unifiedCount:m,splitCount:h}){let g=a<f.deletions?o+a:void 0,_=i===`unified`?a>=f.deletions?o+a:void 0:a<f.additions?o+f.deletions+a:void 0,v=i===`unified`?s+(a<f.deletions?a:a-f.deletions):s+a,y=a<f.deletions?l+a:void 0,b=a<f.deletions?d+a:void 0,x=i===`unified`?a>=f.deletions?c+(a-f.deletions):void 0:a<f.additions?c+a:void 0,S=i===`unified`?a>=f.deletions?u+(a-f.deletions):void 0:a<f.additions?u+a:void 0,C=i===`unified`?p&&a===f.deletions-1&&t.noEOFCRDeletions:p&&a===h-1&&t.noEOFCRDeletions,w=i===`unified`?p&&a===m-1&&t.noEOFCRAdditions:p&&a===h-1&&t.noEOFCRAdditions,T=y!=null&&b!=null&&g!=null?{lineNumber:b,lineIndex:y,noEOFCR:C,unifiedLineIndex:g,splitLineIndex:v}:void 0,E=x!=null&&S!=null&&_!=null?{unifiedLineIndex:_,splitLineIndex:v,lineIndex:x,lineNumber:S,noEOFCR:w}:void 0;if(T==null&&E!=null)return{type:`change`,hunkIndex:e,hunk:t,collapsedAfter:n,collapsedBefore:r,deletionLine:void 0,additionLine:E};if(T!=null&&E==null)return{type:`change`,hunkIndex:e,hunk:t,collapsedAfter:n,collapsedBefore:r,deletionLine:T,additionLine:void 0};if(T==null||E==null)throw Error(`iterateOverDiff: missing change line data`);return{type:`change`,hunkIndex:e,hunk:t,collapsedAfter:n,collapsedBefore:r,deletionLine:T,additionLine:E}}var tat={forcePlainText:!1};function j9(e,t,n,{forcePlainText:r,startingLine:i,totalLines:a,expandedHunks:o,collapsedContextThreshold:s=1}=tat){r?(i??=0,a??=1/0):(i=0,a=1/0);let c=i>0||a<1/0,l=typeof n.theme==`string`?t.getTheme(n.theme).type:void 0,u=o9({theme:n.theme,highlighter:t}),d=r&&!c&&(e.unifiedLineCount>1e3||e.splitLineCount>1e3)?`none`:n.lineDiffType,f={deletionLines:[],additionLines:[]},{maxLineDiffLength:p}=n,m=!r&&!e.isPartial,h=r?o:void 0,g=new Map;function _(e){let t=m?0:e,n=g.get(t)??rat();return g.set(t,n),n}function v(e,t,n,r){if(c){let e=n.at(-1);(e==null||e.targetIndex+e.count!==t)&&(e={targetIndex:t,originalOffset:r.length,count:0},n.push(e)),e.count++}r.push(e)}k9({diff:e,diffStyle:`both`,startingLine:i,totalLines:a,expandedHunks:!c||h,collapsedContextThreshold:s,callback:({hunkIndex:t,additionLine:n,deletionLine:r,type:i})=>{let a=_(t),o=n==null?r.splitLineIndex:n.splitLineIndex;i===`change`&&n!=null&&r!=null&&nat({additionLine:e.additionLines[n.lineIndex],deletionLine:e.deletionLines[r.lineIndex],deletionLineIndex:a.deletionContent.length,additionLineIndex:a.additionContent.length,deletionDecorations:a.deletionDecorations,additionDecorations:a.additionDecorations,lineDiffType:d,maxLineDiffLength:p}),r!=null&&(v(e.deletionLines[r.lineIndex],r.lineIndex,a.deletionSegments,a.deletionContent),a.deletionInfo.push({type:i===`change`?`change-deletion`:i,lineNumber:r.lineNumber,altLineNumber:i===`change`?void 0:n.lineNumber??void 0,lineIndex:`${r.unifiedLineIndex},${o}`})),n!=null&&(v(e.additionLines[n.lineIndex],n.lineIndex,a.additionSegments,a.additionContent),a.additionInfo.push({type:i===`change`?`change-addition`:i,lineNumber:n.lineNumber,altLineNumber:i===`change`?void 0:r.lineNumber??void 0,lineIndex:`${n.unifiedLineIndex},${o}`}))}});for(let i of g.values()){if(i.deletionContent.length===0&&i.additionContent.length===0)continue;let a={name:e.prevName??e.name,contents:i.deletionContent.value},o={name:e.name,contents:i.additionContent.value},{deletionLines:s,additionLines:c}=iat({deletionFile:a,deletionInfo:i.deletionInfo,deletionDecorations:i.deletionDecorations,additionFile:o,additionInfo:i.additionInfo,additionDecorations:i.additionDecorations,highlighter:t,options:n,languageOverride:r?`text`:e.lang});if(m){f.deletionLines=s,f.additionLines=c;continue}if(i.deletionSegments.length>0)for(let e of i.deletionSegments)for(let t=0;t<e.count;t++)f.deletionLines[e.targetIndex+t]=s[e.originalOffset+t];else f.deletionLines.push(...s);if(i.additionSegments.length>0)for(let e of i.additionSegments)for(let t=0;t<e.count;t++)f.additionLines[e.targetIndex+t]=c[e.originalOffset+t];else f.additionLines.push(...c)}return{code:f,themeStyles:u,baseThemeType:l}}function nat({deletionLine:e,additionLine:t,deletionLineIndex:n,additionLineIndex:r,deletionDecorations:i,additionDecorations:a,lineDiffType:o,maxLineDiffLength:s}){if(e==null||t==null||o===`none`||(e=Q2(e),t=Q2(t),e.length>s||t.length>s))return;let c=o===`char`?x5e(e,t):T5e(e,t),l=[],u=[],d=o===`word-alt`,f=c.at(-1);for(let e of c){let t=e===f;!e.added&&!e.removed?(S9({item:e,arr:l,enableJoin:d,isNeutral:!0,isLastItem:t}),S9({item:e,arr:u,enableJoin:d,isNeutral:!0,isLastItem:t})):e.removed?S9({item:e,arr:l,enableJoin:d,isLastItem:t}):S9({item:e,arr:u,enableJoin:d,isLastItem:t})}let p=0;for(let e of l)e[0]===1&&i.push(x9({line:n,spanStart:p,spanLength:e[1].length})),p+=e[1].length;p=0;for(let e of u)e[0]===1&&a.push(x9({line:r,spanStart:p,spanLength:e[1].length})),p+=e[1].length}function rat(){return{deletionContent:{push(e){this.value+=e,this.length++},value:``,length:0},additionContent:{push(e){this.value+=e,this.length++},value:``,length:0},deletionInfo:[],additionInfo:[],deletionDecorations:[],additionDecorations:[],deletionSegments:[],additionSegments:[]}}function iat({deletionFile:e,additionFile:t,deletionInfo:n,additionInfo:r,highlighter:i,deletionDecorations:a,additionDecorations:o,languageOverride:s,options:{theme:c=B2,...l}}){let u=s??W7(e.name),d=s??W7(t.name),{state:f,transformers:p}=Z7(l.useTokenTransformer),m=typeof c==`string`?{...l,lang:`text`,theme:c,transformers:p,decorations:void 0,defaultColor:!1,cssVariablePrefix:$7(`token`),tokenizeTimeLimit:0}:{...l,lang:`text`,themes:c,transformers:p,decorations:void 0,defaultColor:!1,cssVariablePrefix:$7(`token`),tokenizeTimeLimit:0};return{deletionLines:e.contents===``?[]:(m.lang=u,f.lineInfo=n,m.decorations=a,c9(i.codeToHast(Q2(e.contents),m))),additionLines:t.contents===``?[]:(m.lang=d,m.decorations=o,f.lineInfo=r,c9(i.codeToHast(Q2(t.contents),m)))}}function M9(e){let t=e.lang??W7(e.name),n=e.lang??(e.prevName==null?`text`:W7(e.prevName));return t===`text`&&n===`text`}function N9(e){let t=[];for(let n of e){let e=I3.get(n);if(e==null)throw Error(`getResolvedLanguages: ${n} is not resolved. Please resolve languages before calling getResolvedLanguages`);t.push(e)}return t}function P9(e){for(let t of Array.isArray(e)?e:[e])if(!I3.has(t))return!1;return!0}async function F9(e){let t=[],n=[];for(let r of e){if(r===`text`||r===`ansi`)continue;let e=w7(r)??C7(r);`then`in e?n.push(e):t.push(e)}return n.length>0&&await Promise.all(n).then(e=>{for(let n of e){if(n==null)throw Error(`resolvedLanguages: unable to resolve language`);t.push(n)}}),t}function I9(e){return k7.getResolvedThemes(e)}async function L9(e){for(let t of e)F7(t);let t=await k7.resolveThemes(e);for(let n=0;n<e.length;n++)I7(e[n],t[n]);return t}var R9={light:`pierre-light`,dark:`pierre-dark`};function aat(e){return e===`dark`?R9.dark:R9.light}var z9=2166136261,B9=16777619,oat=2654435769,sat=2246822507;function V9(e,t=z9,n=B9){let r=t>>>0;for(let t=0;t<e.length;t+=1)r^=e.charCodeAt(t),r=Math.imul(r,n)>>>0;return r>>>0}function cat(e,t=`diff-panel`){let n=e.trim(),r=V9(n,z9,B9).toString(36),i=V9(n,oat,sat).toString(36);return`${t}:${n.length}:${r}:${i}`}function H9(e){return ft(`flex items-center justify-between gap-2 px-4 wco:pr-[calc(100vw-env(titlebar-area-width)-env(titlebar-area-x)+1em)]`,Vn&&e!==`sheet`?`h-[52px] border-b border-border wco:h-[env(titlebar-area-height)]`:`h-12 wco:max-h-[env(titlebar-area-height)]`)}function lat(e){let t=(0,vi.c)(10),n=Vn&&e.mode!==`sheet`,r=e.mode===`inline`?`w-[42vw] min-w-[360px] max-w-[560px] shrink-0 border-l border-border`:`w-full`,i;t[0]===r?i=t[1]:(i=ft(`flex h-full min-w-0 flex-col bg-background`,r),t[0]=r,t[1]=i);let a;t[2]!==e.header||t[3]!==e.mode||t[4]!==n?(a=n?(0,N.jsx)(`div`,{className:H9(e.mode),children:e.header}):(0,N.jsx)(`div`,{className:`border-b border-border`,children:(0,N.jsx)(`div`,{className:H9(e.mode),children:e.header})}),t[2]=e.header,t[3]=e.mode,t[4]=n,t[5]=a):a=t[5];let o;return t[6]!==e.children||t[7]!==i||t[8]!==a?(o=(0,N.jsxs)(`div`,{className:i,children:[a,e.children]}),t[6]=e.children,t[7]=i,t[8]=a,t[9]=o):o=t[9],o}function uat(){let e=(0,vi.c)(4),t,n;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,N.jsx)(wZ,{className:`absolute left-0 top-1/2 size-6 -translate-y-1/2 rounded-md border border-border/50`}),n=(0,N.jsx)(wZ,{className:`absolute right-0 top-1/2 size-6 -translate-y-1/2 rounded-md border border-border/50`}),e[0]=t,e[1]=n):(t=e[0],n=e[1]);let r;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,N.jsxs)(`div`,{className:`relative min-w-0 flex-1`,children:[t,n,(0,N.jsxs)(`div`,{className:`flex gap-1 overflow-hidden px-8 py-0.5`,children:[(0,N.jsx)(wZ,{className:`h-6 w-16 shrink-0 rounded-md`}),(0,N.jsx)(wZ,{className:`h-6 w-24 shrink-0 rounded-md`}),(0,N.jsx)(wZ,{className:`h-6 w-24 shrink-0 rounded-md max-sm:hidden`})]})]}),e[2]=r):r=e[2];let i;return e[3]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,N.jsxs)(N.Fragment,{children:[r,(0,N.jsxs)(`div`,{className:`flex shrink-0 gap-1`,children:[(0,N.jsx)(wZ,{className:`size-7 rounded-md`}),(0,N.jsx)(wZ,{className:`size-7 rounded-md`})]})]}),e[3]=i):i=e[3],i}function dat(e){let t=(0,vi.c)(7),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,N.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border/50 px-3 py-2`,children:[(0,N.jsx)(wZ,{className:`h-4 w-32 rounded-full`}),(0,N.jsx)(wZ,{className:`ml-auto h-4 w-20 rounded-full`})]}),t[0]=n):n=t[0];let r;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,N.jsxs)(`div`,{className:`space-y-2`,children:[(0,N.jsx)(wZ,{className:`h-3 w-full rounded-full`}),(0,N.jsx)(wZ,{className:`h-3 w-full rounded-full`}),(0,N.jsx)(wZ,{className:`h-3 w-10/12 rounded-full`}),(0,N.jsx)(wZ,{className:`h-3 w-11/12 rounded-full`}),(0,N.jsx)(wZ,{className:`h-3 w-9/12 rounded-full`})]}),t[1]=r):r=t[1];let i;t[2]===e.label?i=t[3]:(i=(0,N.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4 px-3 py-4`,children:[r,(0,N.jsx)(`span`,{className:`sr-only`,children:e.label})]}),t[2]=e.label,t[3]=i);let a;return t[4]!==e.label||t[5]!==i?(a=(0,N.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col p-2`,children:(0,N.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden rounded-md border border-border/60 bg-card/25`,role:`status`,"aria-live":`polite`,"aria-label":e.label,children:[n,i]})}),t[4]=e.label,t[5]=i,t[6]=a):a=t[6],a}function fat(e){let t=(0,M.useRef)(e);return(0,M.useInsertionEffect)(()=>void(t.current=e)),(0,M.useCallback)((...e)=>t.current(...e),[])}var pat=(0,M.createContext)(void 0);function mat(){return(0,M.useContext)(pat)}var hat={position:`absolute`,top:0,bottom:0,textAlign:`center`,whiteSpace:`normal`,touchAction:`none`},gat={display:`contents`};function _at(){return null}var U9=t(n(((e,t)=>{(function(n,r){typeof e==`object`&&t!==void 0?r(e):typeof define==`function`&&define.amd?define([`exports`],r):r((n||=self).lru_map=n.lru_map||{})})(e,function(e){let t=Symbol(`newer`),n=Symbol(`older`);class r{constructor(e,t){typeof e!=`number`&&(t=e,e=0),this.size=0,this.limit=e,this.oldest=this.newest=void 0,this._keymap=new Map,t&&(this.assign(t),e<1&&(this.limit=this.size))}_markEntryAsUsed(e){e!==this.newest&&(e[t]&&(e===this.oldest&&(this.oldest=e[t]),e[t][n]=e[n]),e[n]&&(e[n][t]=e[t]),e[t]=void 0,e[n]=this.newest,this.newest&&(this.newest[t]=e),this.newest=e)}assign(e){let r,a=this.limit||Number.MAX_VALUE;this._keymap.clear();let o=e[Symbol.iterator]();for(let e=o.next();!e.done;e=o.next()){let o=new i(e.value[0],e.value[1]);if(this._keymap.set(o.key,o),r?(r[t]=o,o[n]=r):this.oldest=o,r=o,a--==0)throw Error(`overflow`)}this.newest=r,this.size=this._keymap.size}get(e){var t=this._keymap.get(e);return t?(this._markEntryAsUsed(t),t.value):void 0}set(e,r){var a=this._keymap.get(e);return a?(a.value=r,this._markEntryAsUsed(a),this):(this._keymap.set(e,a=new i(e,r)),this.newest?(this.newest[t]=a,a[n]=this.newest):this.oldest=a,this.newest=a,++this.size,this.size>this.limit&&this.shift(),this)}shift(){var e=this.oldest;if(e)return this.oldest[t]?(this.oldest=this.oldest[t],this.oldest[n]=void 0):(this.oldest=void 0,this.newest=void 0),e[t]=e[n]=void 0,this._keymap.delete(e.key),--this.size,[e.key,e.value]}find(e){let t=this._keymap.get(e);return t?t.value:void 0}has(e){return this._keymap.has(e)}delete(e){var r=this._keymap.get(e);return r?(this._keymap.delete(r.key),r[t]&&r[n]?(r[n][t]=r[t],r[t][n]=r[n]):r[t]?(r[t][n]=void 0,this.oldest=r[t]):r[n]?(r[n][t]=void 0,this.newest=r[n]):this.oldest=this.newest=void 0,this.size--,r.value):void 0}clear(){this.oldest=this.newest=void 0,this.size=0,this._keymap.clear()}keys(){return new o(this.oldest)}values(){return new s(this.oldest)}entries(){return this}[Symbol.iterator](){return new a(this.oldest)}forEach(e,n){typeof n!=`object`&&(n=this);let r=this.oldest;for(;r;)e.call(n,r.value,r.key,this),r=r[t]}toJSON(){for(var e=Array(this.size),n=0,r=this.oldest;r;)e[n++]={key:r.key,value:r.value},r=r[t];return e}toString(){for(var e=``,n=this.oldest;n;)e+=String(n.key)+`:`+n.value,n=n[t],n&&(e+=` < `);return e}}e.LRUMap=r;function i(e,r){this.key=e,this.value=r,this[t]=void 0,this[n]=void 0}function a(e){this.entry=e}a.prototype[Symbol.iterator]=function(){return this},a.prototype.next=function(){let e=this.entry;return e?(this.entry=e[t],{done:!1,value:[e.key,e.value]}):{done:!0,value:void 0}};function o(e){this.entry=e}o.prototype[Symbol.iterator]=function(){return this},o.prototype.next=function(){let e=this.entry;return e?(this.entry=e[t],{done:!1,value:e.key}):{done:!0,value:void 0}};function s(e){this.entry=e}s.prototype[Symbol.iterator]=function(){return this},s.prototype.next=function(){let e=this.entry;return e?(this.entry=e[t],{done:!1,value:e.value}):{done:!0,value:void 0}}})}))(),1),W9=Symbol(`IGNORE_RESPONSE`),G9=class extends Error{constructor(){super(`WorkerPoolManager: operation canceled because the pool terminated`)}},K9=class extends Error{constructor(){super(`WorkerPoolManager: operation canceled before the task completed`)}},vat=class{options;highlighter;preferredHighlighter;renderOptions;renderOptionsRequestVersion=0;renderOptionsVersion=0;initialized=!1;workers=[];queuedTasks=[];queuedTaskByInstance=new Map;taskByHighlightKey=new Map;activeTaskById=new Map;activeRequestByInstance=new Map;nextRequestId=0;themeSubscribers=new Set;workersFailed=!1;statSubscribers=new Set;fileCache;diffCache;_queuedBroadcast;lifecycleGeneration=0;constructor(e,{langs:t,theme:n=B2,useTokenTransformer:r=!1,lineDiffType:i=`word-alt`,maxLineDiffLength:a=1e3,tokenizeMaxLineLength:o=1e3,preferredHighlighter:s=`shiki-js`}){this.options=e,this.preferredHighlighter=s,this.renderOptions={theme:n,useTokenTransformer:r,lineDiffType:i,maxLineDiffLength:a,tokenizeMaxLineLength:o},this.fileCache=new U9.default.LRUMap(e.totalASTLRUCacheSize??100),this.diffCache=new U9.default.LRUMap(e.totalASTLRUCacheSize??100),this.queueInitialization(t)}isWorkingPool(){return!this.workersFailed}getFileResultCache(e){return e.cacheKey==null?void 0:this.fileCache.get(e.cacheKey)}getDiffResultCache(e){return e.cacheKey==null?void 0:this.diffCache.get(e.cacheKey)}inspectCaches(){let{fileCache:e,diffCache:t}=this;return{fileCache:e,diffCache:t}}evictFileFromCache(e){try{return this.fileCache.delete(e)!==void 0}finally{this.queueBroadcastStateChanges()}}evictDiffFromCache(e){try{return this.diffCache.delete(e)!==void 0}finally{this.queueBroadcastStateChanges()}}async setRenderOptions({theme:e=this.renderOptions.theme??B2,useTokenTransformer:t=this.renderOptions.useTokenTransformer??!1,lineDiffType:n=this.renderOptions.lineDiffType??`word-alt`,maxLineDiffLength:r=this.renderOptions.maxLineDiffLength??1e3,tokenizeMaxLineLength:i=this.renderOptions.tokenizeMaxLineLength??1e3}){let{lifecycleGeneration:a}=this,o=++this.renderOptionsRequestVersion,s=()=>this.isCurrentLifecycle(a)&&this.renderOptionsRequestVersion===o;try{let a={theme:e,useTokenTransformer:t,lineDiffType:n,maxLineDiffLength:r,tokenizeMaxLineLength:i};if(this.isInitialized()||await this.initialize(),!s()||b9(a,this.renderOptions))return;let o=z7(e),c=[];if(Y2(a.theme,this.renderOptions.theme)||(c=B7(o)?I9(o):await L9(o)),!s())return;if(this.highlighter!=null)A7(c,this.highlighter);else{let e=await R7({themes:o,langs:[`text`],preferredHighlighter:this.preferredHighlighter});if(!s())return;this.highlighter=e}let l=this.setRenderOptionsOnWorkers(a,c);this.renderOptions=a,this.renderOptionsVersion++,this.diffCache.clear(),this.fileCache.clear(),this.invalidateRenderTasks();for(let e of this.themeSubscribers)e.onThemeChange();await l}catch(e){if(e instanceof G9||!s())return;throw e}}getPreferredHighlighter(){return this.preferredHighlighter}getFileRenderOptions(){let{tokenizeMaxLineLength:e,theme:t,useTokenTransformer:n}=this.renderOptions;return{theme:t,useTokenTransformer:n,tokenizeMaxLineLength:e}}getDiffRenderOptions(){return{...this.renderOptions}}async setRenderOptionsOnWorkers(e,t){if(this.workersFailed)return;this.isInitialized()||await this.initialize();let n=[];for(let r of this.workers){if(!r.initialized)throw console.log({managedWorker:r}),Error(`setRenderOptionsOnWorkers: Somehow we have an uninitialized worker`);n.push(new Promise((n,i)=>{let a=this.generateRequestId(),o={type:`set-render-options`,id:a,request:{type:`set-render-options`,id:a,renderOptions:e,resolvedThemes:t},resolve:n,reject:i,requestStart:Date.now()};this.activeTaskById.set(a,o),r.pendingSetupRequestId=a,r.worker.postMessage(o.request)}))}await Promise.all(n)}subscribeToThemeChanges(e){return this.themeSubscribers.add(e),this.queueBroadcastStateChanges(),()=>{this.unsubscribeToThemeChanges(e),this.queueBroadcastStateChanges()}}unsubscribeToThemeChanges(e){this.themeSubscribers.delete(e),this.queueBroadcastStateChanges()}subscribeToStatChanges(e){return this.statSubscribers.add(e),e(this.getStats()),()=>{this.statSubscribers.delete(e)}}queueBroadcastStateChanges(){this._queuedBroadcast??=requestAnimationFrame(this._broadcastStateChanges)}_broadcastStateChanges=()=>{this._queuedBroadcast!=null&&(cancelAnimationFrame(this._queuedBroadcast),this._queuedBroadcast=void 0);let e=this.getStats();for(let t of this.statSubscribers)t(e)};cleanUpTasks(e){this.detachInstanceFromQueuedTasks(e);let t=this.activeRequestByInstance.get(e);if(t!=null){let n=this.activeTaskById.get(t);J9(n)?(this.detachInstanceFromRenderTask(n,e),!n.primeCache&&n.instances.size===0&&this.removeActiveTask(n)):this.activeTaskById.delete(t)}this.activeRequestByInstance.delete(e),this.queueBroadcastStateChanges()}isInitialized(){return this.initialized===!0}async initialize(e=[]){if(this.initialized!==!0)if(this.initialized===!1){let{lifecycleGeneration:t}=this;this.initialized=new Promise((n,r)=>{(async()=>{try{let r=z7(this.renderOptions.theme),i=[];if(i=B7(r)?I9(r):await L9(r),!this.isCurrentLifecycle(t)){n();return}let a=[];if(a=P9(e)?N9(e):await F9(e),!this.isCurrentLifecycle(t)){n();return}let[o]=await Promise.all([R7({themes:r,langs:[`text`,...e],preferredHighlighter:this.preferredHighlighter}),this.initializeWorkers(i,a)]);if(!this.isCurrentLifecycle(t)){this.terminateWorkers(),n();return}this.highlighter=o,this.initialized=!0,this.diffCache.clear(),this.fileCache.clear(),this.drainQueue(),this.queueBroadcastStateChanges(),n()}catch(e){if(e instanceof G9||!this.isCurrentLifecycle(t)){n();return}this.initialized=!1,this.workersFailed=!0;for(let t of this.queuedTasks)this.rejectRenderTaskCallbacks(t,X9(e));this.queueBroadcastStateChanges(),r(e)}})()}),this.queueBroadcastStateChanges()}else return this.initialized}async initializeWorkers(e,t){this.workersFailed=!1;let n=[],r=G7(),i=r>0?K7():void 0;this.workers.length>0&&this.terminateWorkers();for(let a=0;a<(this.options.poolSize??8);a++){let a=this.options.workerFactory(),o={worker:a,requestId:void 0,pendingSetupRequestId:void 0,initialized:!1,langs:new Set([`text`,...t.map(({name:e})=>e)]),customExtensionsVersion:0};a.addEventListener(`message`,e=>{this.handleWorkerMessage(o,e.data)}),a.addEventListener(`error`,e=>console.error(`Worker error:`,e,o)),this.workers.push(o),n.push(new Promise((n,a)=>{let s=this.generateRequestId(),c={type:`initialize`,id:s,request:{type:`initialize`,id:s,renderOptions:this.renderOptions,preferredHighlighter:this.preferredHighlighter,resolvedThemes:e,resolvedLanguages:t,customExtensionsVersion:i==null?void 0:r,customExtensionMap:i},resolve(){o.initialized=!0,n()},reject:a,requestStart:Date.now()};this.activeTaskById.set(s,c),this.executeTask(o,c)}))}await Promise.all(n)}drainQueue=()=>{if(this._queuedDrain=void 0,this.initialized===!0&&this.queuedTasks.length!==0){for(let e=0;e<this.queuedTasks.length;){let t=this.queuedTasks[e];if(this.hasActiveRequest(t)){e++;continue}let n=q9(t),r=this.getAvailableWorker(n);if(r==null)break;this.queuedTasks.splice(e,1),this.assignWorkerToTask(t,r),this.resolveLanguagesAndExecuteTask(r,t,n)}this.queueBroadcastStateChanges()}};highlightFileAST(e,t){let n=this.getFileResultCache(t);p9(t)||n!=null&&V7(n.options,this.getFileRenderOptions())||this.hasMatchingFileInstanceTask(e,t)||this.submitTask(e,{type:`file`,file:t})}primeFileHighlightCache(e){if(!this.isWorkingPool())return Promise.reject(Error(`WorkerPoolManager.primeFileHighlightCache: worker pool is not working`));let t=this.getOrCreateFileHighlightCacheTask(e);return t==null?Promise.resolve():this.createRenderTaskCallbacks(t)}getOrCreateFileHighlightCacheTask(e){if(e.cacheKey==null){console.warn(`WorkerPoolManager.primeFileHighlightCache: priming highlight cache requires file.cacheKey; skipping "${e.name}".`);return}let t=this.getFileResultCache(e),n=this.getFileHighlightKey(e);if(n==null||p9(e)||t!=null&&V7(t.options,this.getFileRenderOptions()))return;let r=this.getTaskByHighlightKey(n);if(r!=null)return r.primeCache=!0,r.type===`file`?r:void 0;{let t=this.submitCacheTask({type:`file`,file:e},n);return t.type===`file`?t:void 0}}getPlainFileAST(e,t,n,r){if(this.highlighter==null){this.queueInitialization();return}return f9(e,this.highlighter,this.renderOptions,{forcePlainText:!0,startingLine:t,totalLines:n,lines:r})}highlightDiffAST(e,t){let n=this.getDiffResultCache(t);M9(t)||n!=null&&b9(n.options,this.getDiffRenderOptions())||this.hasMatchingDiffInstanceTask(e,t)||this.submitTask(e,{type:`diff`,diff:t})}primeDiffHighlightCache(e){if(!this.isWorkingPool())return Promise.reject(Error(`WorkerPoolManager.primeDiffHighlightCache: worker pool is not working`));let t=this.getOrCreateDiffHighlightCacheTask(e);return t==null?Promise.resolve():this.createRenderTaskCallbacks(t)}getOrCreateDiffHighlightCacheTask(e){if(e.cacheKey==null){console.warn(`WorkerPoolManager.primeDiffHighlightCache: priming highlight cache requires diff.cacheKey; skipping "${e.prevName??e.name}" -> "${e.name}".`);return}let t=this.getDiffResultCache(e),n=this.getDiffHighlightKey(e);if(n==null||M9(e)||t!=null&&b9(t.options,this.getDiffRenderOptions()))return;let r=this.getTaskByHighlightKey(n);if(r!=null)return r.primeCache=!0,r.type===`diff`?r:void 0;{let t=this.submitCacheTask({type:`diff`,diff:e},n);return t.type===`diff`?t:void 0}}getPlainDiffAST(e,t,n,r,i){return this.highlighter==null?void 0:j9(e,this.highlighter,this.renderOptions,{forcePlainText:!0,startingLine:t,totalLines:n,expandedHunks:r,collapsedContextThreshold:i})}terminate(){this.lifecycleGeneration++,this.cancelActiveWorkerTasks(),this.terminateWorkers();let e=new G9;for(let t of this.queuedTasks)this.rejectRenderTaskCallbacks(t,e);this.fileCache.clear(),this.diffCache.clear(),this.activeRequestByInstance.clear(),this.queuedTasks.length=0,this.queuedTaskByInstance.clear(),this.taskByHighlightKey.clear(),this.activeTaskById.clear(),this.highlighter=void 0,this.initialized=!1,this.workersFailed=!1,this.queueBroadcastStateChanges()}isCurrentLifecycle(e){return this.lifecycleGeneration===e}queueInitialization(e){this.initialize(e).catch(e=>{console.error(e)})}cancelActiveWorkerTasks(){let e=new G9;for(let t of this.activeTaskById.values())`reject`in t?t.reject(e):J9(t)&&this.rejectRenderTaskCallbacks(t,e)}terminateWorkers(){for(let e of this.workers)e.worker.terminate();this.workers.length=0}getStats(){return{managerState:this.initialized===!1?`waiting`:this.initialized===!0?`initialized`:`initializing`,totalWorkers:this.workers.length,workersFailed:this.workersFailed,busyWorkers:this.workers.filter(e=>e.requestId!=null||e.pendingSetupRequestId!=null).length,queuedTasks:this.queuedTasks.length,activeTasks:this.activeTaskById.size,themeSubscribers:this.themeSubscribers.size,fileCacheSize:this.fileCache.size,diffCacheSize:this.diffCache.size}}submitTask(e,t){this.initialized===!1&&this.queueInitialization();let n=this.getHighlightKeyForRequest(t),r=n==null?void 0:this.getTaskByHighlightKey(n);if(r!=null){this.detachInstanceFromQueuedTasks(e,r),this.addInstanceToTask(r,e),this.queueBroadcastStateChanges();return}this.detachInstanceFromQueuedTasks(e);let i=this.generateRequestId(),a=Date.now(),{renderOptionsVersion:o}=this,s=(()=>{switch(t.type){case`file`:return{type:`file`,id:i,request:{...t,id:i},instances:new Set([e]),primeCache:!1,highlightKey:n,callbacks:new Set,renderOptionsVersion:o,requestStart:a};case`diff`:return{type:`diff`,id:i,request:{...t,id:i},instances:new Set([e]),primeCache:!1,highlightKey:n,callbacks:new Set,renderOptionsVersion:o,requestStart:a}}})();this.enqueueRenderTask(s,e)}submitCacheTask(e,t){this.initialized===!1&&this.queueInitialization();let n=this.generateRequestId(),r=Date.now(),{renderOptionsVersion:i}=this,a=(()=>{switch(e.type){case`file`:return{type:`file`,id:n,request:{...e,id:n},instances:new Set,primeCache:!0,highlightKey:t,callbacks:new Set,renderOptionsVersion:i,requestStart:r};case`diff`:return{type:`diff`,id:n,request:{...e,id:n},instances:new Set,primeCache:!0,highlightKey:t,callbacks:new Set,renderOptionsVersion:i,requestStart:r}}})();return this.enqueueRenderTask(a),a}enqueueRenderTask(e,t){this.queuedTasks.push(e),t!=null&&this.queuedTaskByInstance.set(t,e),e.highlightKey!=null&&this.taskByHighlightKey.set(e.highlightKey,e),this.queueDrain()}async resolveLanguagesAndExecuteTask(e,t,n){try{let r=n.filter(t=>!e.langs.has(t));if(r.length>0&&(P9(r)?t.request.resolvedLanguages=N9(r):t.request.resolvedLanguages=await F9(r)),!this.activeTaskById.has(t.id)){e.requestId===t.id&&(this.cleanWorkerAndTask(e,t),this.queueBroadcastStateChanges(),this.queuedTasks.length>0&&this.queueDrain());return}this.executeTask(e,t)}catch(n){this.rejectRenderTaskCallbacks(t,X9(n)),this.cleanWorkerAndTask(e,t),this.queueBroadcastStateChanges(),this.queuedTasks.length>0&&this.queueDrain()}}handleWorkerMessage(e,t){let n=this.activeTaskById.get(t.id);try{if(n==null)throw W9;if(t.type===`error`){let e=Error(t.error);if(t.stack&&(e.stack=t.stack),`reject`in n)n.reject(e);else if(J9(n))this.notifyHighlightError(n,e),this.rejectRenderTaskCallbacks(n,e);else throw Error(`handleWorkerMessage: unknown task type`);throw e}switch(t.requestType){case`initialize`:if(n.type!==`initialize`)throw Error(`handleWorkerMessage: task/response dont match`);this.syncCustomExtensionVersion(e,n.request),n.resolve();break;case`set-render-options`:if(n.type!==`set-render-options`)throw Error(`handleWorkerMessage: task/response dont match`);n.resolve();break;case`file`:{if(n.type!==`file`)throw Error(`handleWorkerMessage: task/response dont match`);let{result:r,options:i}=t;if(!this.isCurrentRenderTask(n)||!V7(i,this.getFileRenderOptions()))throw W9;let{request:a}=n;this.syncCustomExtensionVersion(e,a),n.cacheKeyAtDispatch!=null&&this.fileCache.set(n.cacheKeyAtDispatch,{result:r,options:i}),this.resolveRenderTaskCallbacks(n),this.notifyFileInstances(n,r,i);break}case`diff`:{if(n.type!==`diff`)throw Error(`handleWorkerMessage: task/response dont match`);let{result:r,options:i}=t;if(!this.isCurrentRenderTask(n)||!b9(i,this.getDiffRenderOptions()))throw W9;let{request:a}=n;this.syncCustomExtensionVersion(e,a),n.cacheKeyAtDispatch!=null&&this.diffCache.set(n.cacheKeyAtDispatch,{result:r,options:i}),this.resolveRenderTaskCallbacks(n),this.notifyDiffInstances(n,r,i);break}}}catch(e){e!==W9&&console.error(e,n,t)}this.cleanWorkerAndTask(e,n,t.id),this.queueBroadcastStateChanges(),this.queuedTasks.length>0&&this.queueDrain()}_queuedDrain;queueDrain(){this._queuedDrain??(this._queuedDrain=Promise.resolve().then(this.drainQueue),this.queueBroadcastStateChanges())}assignWorkerToTask(e,t){t.requestId=e.id,J9(e)&&(this.clearQueuedInstanceRequests(e),this.trackInstanceRequests(e)),this.activeTaskById.set(e.id,e)}cleanWorkerAndTask(e,t,n=t?.id){e.requestId===n&&(e.requestId=void 0),e.pendingSetupRequestId===n&&(e.pendingSetupRequestId=void 0),t!=null&&(J9(t)&&(this.rejectRenderTaskCallbacks(t,new K9),this.clearInstanceRequests(t),this.clearHighlightKey(t)),this.activeTaskById.delete(t.id))}executeTask(e,t){yat(t.request)&&this.maybeAttachCustomExtensions(e,t.request),this.activeTaskById.has(t.id)||this.assignWorkerToTask(t,e);for(let n of q9(t))e.langs.add(n);try{t.type===`file`?t.cacheKeyAtDispatch=t.request.file.cacheKey:t.type===`diff`&&(t.cacheKeyAtDispatch=t.request.diff.cacheKey),e.worker.postMessage(t.request)}catch(n){console.error(`Failed to post message to worker:`,n),J9(t)?(this.notifyHighlightError(t,n),this.rejectRenderTaskCallbacks(t,X9(n))):`reject`in t&&t.reject(n),this.cleanWorkerAndTask(e,t),this.queuedTasks.length>0&&this.queueDrain()}this.queueBroadcastStateChanges()}maybeAttachCustomExtensions(e,t){if(t.customExtensionsVersion!=null)return;let n=G7();e.customExtensionsVersion>=n||(t.customExtensionsVersion=n,t.customExtensionMap=K7())}syncCustomExtensionVersion(e,t){t.customExtensionsVersion!=null&&(e.customExtensionsVersion=t.customExtensionsVersion)}getAvailableWorker(e){let t;for(let n of this.workers){if(n.requestId!=null||n.pendingSetupRequestId!=null||!n.initialized)continue;if(t=n,e.length===0)break;let r=!0;for(let t of e)if(!n.langs.has(t)){r=!1;break}if(r)break}return t}getFileHighlightKey(e){if(e.cacheKey!=null)return`file:${e.cacheKey}:${this.renderOptionsVersion}`}getDiffHighlightKey(e){if(e.cacheKey!=null)return`diff:${e.cacheKey}:${this.renderOptionsVersion}`}getHighlightKeyForRequest(e){switch(e.type){case`file`:return this.getFileHighlightKey(e.file);case`diff`:return this.getDiffHighlightKey(e.diff)}}hasActiveRequest(e){for(let t of Y9(e))if(this.activeRequestByInstance.has(t))return!0;return!1}addInstanceToTask(e,t){e.type,e.instances.add(t),this.activeTaskById.has(e.id)?this.activeRequestByInstance.set(t,e.id):this.queuedTaskByInstance.set(t,e)}detachInstanceFromQueuedTasks(e,t){let n=this.queuedTaskByInstance.get(e);n!=null&&n!==t&&(this.queuedTaskByInstance.delete(e),this.detachInstanceFromRenderTask(n,e),!n.primeCache&&n.instances.size===0&&this.removeQueuedTask(n))}detachInstanceFromRenderTask(e,t){e.type,e.instances.delete(t)}removeQueuedTask(e){let t=this.queuedTasks.indexOf(e);t!==-1&&this.queuedTasks.splice(t,1),this.rejectRenderTaskCallbacks(e,new K9),this.clearQueuedInstanceRequests(e),this.clearHighlightKey(e)}removeActiveTask(e){this.rejectRenderTaskCallbacks(e,new K9),this.clearInstanceRequests(e),this.clearHighlightKey(e),this.activeTaskById.delete(e.id)}createRenderTaskCallbacks(e){return new Promise((t,n)=>{e.callbacks.add({resolve:t,reject:n})})}resolveRenderTaskCallbacks(e){for(let t of e.callbacks)t.resolve();e.callbacks.clear()}rejectRenderTaskCallbacks(e,t){for(let n of e.callbacks)n.reject(t);e.callbacks.clear()}invalidateRenderTasks(){for(let e=this.queuedTasks.length-1;e>=0;e--){let t=this.queuedTasks[e];t.renderOptionsVersion!==this.renderOptionsVersion&&this.removeQueuedTask(t)}for(let e of Array.from(this.activeTaskById.values()))J9(e)&&e.renderOptionsVersion!==this.renderOptionsVersion&&this.removeActiveTask(e)}clearQueuedInstanceRequests(e){for(let t of Y9(e))this.queuedTaskByInstance.get(t)===e&&this.queuedTaskByInstance.delete(t)}clearHighlightKey(e){e.highlightKey!=null&&this.taskByHighlightKey.get(e.highlightKey)===e&&this.taskByHighlightKey.delete(e.highlightKey)}trackInstanceRequests(e){for(let t of Y9(e))this.activeRequestByInstance.set(t,e.id)}clearInstanceRequests(e){for(let t of Y9(e))this.activeRequestByInstance.get(t)===e.id&&this.activeRequestByInstance.delete(t)}notifyFileInstances(e,t,n){for(let r of e.instances)this.activeRequestByInstance.get(r)===e.id&&r.onHighlightSuccess(e.request.file,t,n)}notifyDiffInstances(e,t,n){for(let r of e.instances)this.activeRequestByInstance.get(r)===e.id&&r.onHighlightSuccess(e.request.diff,t,n)}notifyHighlightError(e,t){for(let n of Y9(e))this.activeRequestByInstance.get(n)===e.id&&n.onHighlightError(t)}hasMatchingFileInstanceTask(e,t){for(let n of this.iterateRenderTasks())if(n.type===`file`&&this.isCurrentRenderTask(n)&&n.instances.has(e)&&S4(t,n.request.file))return!0;return!1}hasMatchingDiffInstanceTask(e,t){for(let n of this.iterateRenderTasks())if(n.type===`diff`&&this.isCurrentRenderTask(n)&&n.instances.has(e)&&y9(n.request.diff,t))return!0;return!1}getTaskByHighlightKey(e){let t=this.taskByHighlightKey.get(e);return t!=null&&this.isCurrentRenderTask(t)?t:void 0}isCurrentRenderTask(e){return e.renderOptionsVersion===this.renderOptionsVersion}*iterateRenderTasks(){for(let e of this.queuedTasks)yield e;for(let e of this.activeTaskById.values())J9(e)&&(yield e)}generateRequestId(){return`req_${++this.nextRequestId}`}};function yat(e){return e.type===`initialize`||e.type===`file`||e.type===`diff`}function q9(e){let t=new Set;if(e.type===`initialize`||e.type===`set-render-options`)return[];switch(e.type){case`file`:t.add(e.request.file.lang??W7(e.request.file.name));break;case`diff`:t.add(e.request.diff.lang??W7(e.request.diff.name)),t.add(e.request.diff.lang??W7(e.request.diff.prevName??`-`))}return t.delete(`text`),Array.from(t)}function J9(e){return e?.type===`file`||e?.type===`diff`}function Y9(e){return e.instances}function X9(e){return e instanceof Error?e:Error(String(e))}var Z9;function bat({poolOptions:e,highlighterOptions:t}){return Z9??=new vat(e,t),Z9}function xat(){Z9!=null&&(Z9.terminate(),Z9=void 0)}var Q9=(0,M.createContext)(void 0),$9=0;function Sat({children:e,poolOptions:t,highlighterOptions:n}){let[r]=(0,M.useState)(()=>{if(!(typeof window>`u`))return bat({poolOptions:t,highlighterOptions:n})});return(0,M.useInsertionEffect)(()=>{if(r!=null)return $9++,()=>{$9--}},[r]),(0,M.useEffect)(()=>()=>{$9===0&&xat()},[]),(0,N.jsx)(Q9.Provider,{value:r,children:e})}function Cat(){return(0,M.useContext)(Q9)}export{fit as $,tJ as $a,Ri as $c,q$e as $i,$n as $l,Z4e as $n,dK as $o,gQ as $r,BU as $s,u5e as $t,zit as A,AZe as Aa,AH as Ac,Y1e as Ai,jr as Al,w8e as An,cq as Ao,r$ as Ar,XW as As,$4 as At,Eit as B,JXe as Ba,EVe as Bc,YX as Bi,ore as Bl,w3e as Bn,TJe as Bo,XQ as Br,sGe as Bs,S4 as Bt,E9 as C,aX as Ca,$H as Cc,G1e as Ci,ri as Cl,K8e as Cn,zJe as Co,L4e as Cr,qW as Cs,f7e as Ct,Fne as Cu,b9 as D,FZe as Da,vHe as Dc,xZ as Di,Pr as Dl,N2 as Dn,vq as Do,e$ as Dr,YW as Ds,c3 as Dt,Wit as E,aQe as Ea,UHe as Ec,U1e as Ei,Lr as El,J8e as En,yq as Eo,f4e as Er,JW as Es,l3 as Et,En as Eu,Mit as F,ZXe as Fa,yH as Fc,tZ as Fi,ure as Fl,Q6e as Fn,tq as Fo,w2e as Fr,oKe as Fs,N5e as Ft,bit as G,cJ as Ga,oVe as Gc,XX as Gi,Kne as Gl,f3e as Gn,GK as Go,M2e as Gr,wW as Gs,y5e as Gt,wit as H,fXe as Ha,wVe as Hc,d1e as Hi,mr as Hl,C3e as Hn,Yqe as Ho,qQ as Hr,cGe as Hs,e4 as Ht,jit as I,OXe as Ia,gH as Ic,eZ as Ii,Dr as Il,G6e as In,eq as Io,T2e as Ir,VW as Is,M5e as It,git as J,XYe as Ja,xV as Jc,JX as Ji,Zne as Jl,K$ as Jn,fK as Jo,KQ as Jr,OWe as Js,Y2 as Jt,yit as K,sJ as Ka,CV as Kc,p1e as Ki,Zn as Kl,p3e as Kn,qK as Ko,V2e as Kr,PWe as Ks,Z2 as Kt,Ait as L,DXe as La,hH as Lc,m1e as Li,xr as Ll,K6e as Ln,wJe as Lo,D2e as Lr,WGe as Ls,w4 as Lt,Lit as M,nZe as Ma,VH as Mc,$1e as Mi,Mr as Ml,h2 as Mn,vJe as Mo,O2e as Mr,lKe as Ms,A4 as Mt,Pit as N,iZe as Na,VHe as Nc,yZ as Ni,Ar as Nl,Z6e as Nn,xJe as No,U2e as Nr,uKe as Ns,D4 as Nt,y9 as O,IZe as Oa,GH as Oc,bZ as Oi,Ir as Ol,Y8e as On,hq as Oo,$Q as Or,GW as Os,t3 as Ot,Nit as P,kJ as Pa,gHe as Pc,iZ as Pi,kr as Pl,$6e as Pn,fJe as Po,k2e as Pr,HW as Ps,P5e as Pt,uit as Q,nJ as Qa,Vi as Qc,GX as Qi,Qn as Ql,K4e as Qn,Dqe as Qo,X0e as Qr,KUe as Qs,i5e as Qt,kit as R,YXe as Ra,YVe as Rc,$X as Ri,sre as Rl,T3e as Rn,dJe as Ro,H2e as Rr,PW as Rs,T4 as Rt,T9 as S,NQe as Sa,tUe as Sc,X1e as Si,li as Sl,q8e as Sn,LJe as So,T$ as Sr,ZW as Ss,d3 as St,Tn as Su,Uit as T,wQe as Ta,BHe as Tc,Q1e as Ti,Rr as Tl,Z8e as Tn,HJe as To,c4e as Tr,KW as Ts,d7e as Tt,jne as Tu,g9 as U,vJ as Ua,NV as Uc,QX as Ui,dr as Ul,b3e as Un,Zqe as Uo,C2e as Ur,uGe as Us,$2 as Ut,Tit as V,vXe as Va,DVe as Vc,ZX as Vi,hr as Vl,c1 as Vn,Jqe as Vo,A2e as Vr,gGe as Vs,k5e as Vt,xit as W,_J as Wa,jV as Wc,u1e as Wi,ur as Wl,l1 as Wn,Xqe as Wo,j2e as Wr,CW as Ws,Q2 as Wt,hit as X,iJ as Xa,jie as Xc,t1e as Xi,qne as Xl,e3e as Xn,aK as Xo,PQ as Xr,JU as Xs,K2 as Xt,p9 as Y,KYe as Ya,Mie as Yc,n1e as Yi,Jne as Yl,t3e as Yn,mK as Yo,_2e as Yr,ZU as Ys,J2 as Yt,mit as Z,qYe as Za,Pie as Zc,qX as Zi,Gn as Zl,$4e as Zn,uK as Zo,c2e as Zr,qU as Zs,G2 as Zt,k9 as _,e$e as _a,_Ue as _c,t0e as _i,xi as _l,L2 as _n,TYe as _o,R4e as _r,fqe as _s,d9e as _t,Ine as _u,gat as a,T$e as aa,jU as ac,W0e as ai,ji as al,h5e as an,Qq as ao,H4e as ar,eK as as,Grt as at,Hn as au,Jit as b,_X as ba,rUe as bc,e0e as bi,ai as bl,a5e as bn,Oq as bo,F4e as br,YG as bs,Y7e as bt,Dne as bu,fat as c,m$e as ca,SU as cc,$Z as ci,rie as cl,B2 as cn,VYe as co,H$ as cr,uqe as cs,zrt as ct,Bn as cu,lat as d,OX as da,mUe as dc,c0e as di,Ei as dl,Q8e as dn,Iq as do,g$ as dr,HG as ds,V7 as dt,In as du,UX as ea,RU as ec,Z0e as ei,zi as el,l5e as en,eJ as eo,q4e as er,iK as es,dit as et,Jn as eu,cat as f,EX as fa,bUe as fc,EZ as fi,Di as fl,F2 as fn,Bq as fo,C4e as fr,JG as fs,B7 as ft,Fn as fu,j9 as g,SX as ga,cUe as gc,n0e as gi,Ti as gl,e5e as gn,OYe as go,A4e as gr,qG as gs,R7 as gt,Rne as gu,M9 as h,CX as ha,fUe as hc,a0e as hi,wi as hl,r5e as hn,LYe as ho,N4e as hr,lqe as hs,Nrt as ht,Pne as hu,hat as i,LX as ia,TU as ic,U0e as ii,Li as il,p5e as in,$q as io,B$ as ir,rK as is,Krt as it,Un as iu,Vit as j,SY as ja,IHe as jc,W1e as ji,Nr as jl,b2 as jn,sq as jo,S2e as jr,_Ke as js,Z4 as jt,Rit as k,TY as ka,UH as kc,q1e as ki,Fr as kl,k8e as kn,pq as ko,t$ as kr,QW as ks,Q4 as kt,uat as l,u$e as la,hU as lc,tQ as li,iie as ll,d5e as ln,Hq as lo,v$ as lr,VG as ls,Lrt as lt,zn as lu,aat as m,TX as ma,uUe as mc,wZ as mi,tie as ml,n5e as mn,Mq as mo,D4e as mr,KG as ms,z7 as mt,Nn as mu,Sat as n,RX as na,kU as nc,wQ as ni,Fi as nl,z2 as nn,Jq as no,Y4e as nr,tK as ns,f9 as nt,sr as nu,_at as o,S$e as oa,PUe as oc,L0e as oi,Ai as ol,g5e as on,Zq as oo,U4e as or,XG as os,W7 as ot,Vn as ou,V9 as p,xX as pa,hUe as pc,o0e as pi,Oi as pl,_5e as pn,Vq as po,E4e as pr,cqe as ps,Frt as pt,Pn as pu,_it as q,lJ as qa,bV as qc,l1e as qi,Xn as ql,n3e as qn,pK as qo,JQ as qr,LWe as qs,v5e as qt,Cat as r,IX as ra,EU as rc,xQ as ri,Pi as rl,f5e as rn,GYe as ro,V4e as rr,Tqe as rs,d9 as rt,ar as ru,mat as s,jX as sa,OU as sc,R0e as si,ki as sl,m5e as sn,Uq as so,V$ as sr,QG as ss,Hrt as st,Hne as su,Q9 as t,Y$e as ta,FU as tc,e2e as ti,Ni as tl,$8e as tn,Yq as to,J4e as tr,xqe as ts,pit as tt,er as tu,dat as u,l$e as ua,rU as uc,I0e as ui,nie as ul,H2 as un,Wq as uo,y$ as ur,dqe as us,Irt as ut,Ln as uu,w9 as v,QQe as va,iU as vc,r0e as vi,fi as vl,R2 as vn,jYe as vo,M4e as vr,sqe as vs,i9e as vt,jn as vu,Yit as w,cX as wa,LH as wc,Z1e as wi,mre as wl,X8e as wn,VJe as wo,I4e as wr,WW as ws,u3 as wt,Ene as wu,Git as x,IQe as xa,iUe as xc,J1e as xi,ci as xl,t5e as xn,kq as xo,j4e as xr,vKe as xs,C3 as xt,kne as xu,C9 as y,vX as ya,nUe as yc,i0e as yi,ii as yl,I2 as yn,bYe as yo,P4e as yr,oqe as ys,J7e as yt,Lne as yu,Oit as z,iY as za,TVe as zc,h1e as zi,are as zl,d1 as zn,EJe as zo,P2e as zr,MW as zs,C4 as zt};
|
|
2541
|
+
//# sourceMappingURL=WorkerPoolContext-Cd6b1XeV.js.map
|