getborg 0.0.119 → 0.0.124

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.
Files changed (103) hide show
  1. package/dist/{FetchHttpClient-C-jciW95.mjs → FetchHttpClient-DkBX_tvM.mjs} +814 -814
  2. package/dist/{FileSystem-NX0EtGtm.mjs → FileSystem-B8SvsKCB.mjs} +87 -18
  3. package/dist/{Mime-C6O17O_3.mjs → Mime-mwjBDTG5.mjs} +945 -945
  4. package/dist/{NodeHttpIncomingMessage-CylGKvlB.mjs → NodeHttpIncomingMessage-Caou0eJc.mjs} +3 -3
  5. package/dist/{NodeHttpServer-EarHJJzn.mjs → NodeHttpServer-CiwRW4qX.mjs} +7 -7
  6. package/dist/{NodePtyAdapter-C6ioPYk6.mjs → NodePtyAdapter-DCy0YCxP.mjs} +2 -2
  7. package/dist/{NodeServices-C18DO3cx.mjs → NodeServices-KA4IGVlf.mjs} +4 -4
  8. package/dist/{NodeSqliteClient-CWkKfsSo.mjs → NodeSqliteClient-y7W-gFvl.mjs} +3 -3
  9. package/dist/{NodeStream-1N7oXzTp.mjs → NodeStream-Cwt3mZYs.mjs} +2 -2
  10. package/dist/{SqlClient-Cusaqpaw.mjs → SqlClient-D-oF89aw.mjs} +2 -2
  11. package/dist/bin.mjs +29698 -21001
  12. package/dist/{borgTelemetryNode-CHLcRFOW.mjs → borgTelemetryNode-BTLPaUwA.mjs} +5 -5
  13. package/dist/client/.vite/manifest.json +396 -320
  14. package/dist/client/assets/{ArrowRight-CgvCTAzu.js → ArrowRight-D8u8fAtz.js} +2 -2
  15. package/dist/client/assets/{ArrowSquareOut-C1CwJQ7R.js → ArrowSquareOut-B_f6YUhV.js} +2 -2
  16. package/dist/client/assets/{ArrowsClockwise-CBwAQTtQ.js → ArrowsClockwise-DQYZ1Xbo.js} +2 -2
  17. package/dist/client/assets/{CaretLeft-Bk0n02vc.js → CaretLeft-CfrkuxuJ.js} +2 -2
  18. package/dist/client/assets/ChatMarkdown-Ch9PipMk.js +249 -0
  19. package/dist/client/assets/CircleNotch-BcVOnWaH.js +2 -0
  20. package/dist/client/assets/DesignWorkspace-CrijZIpE.js +3 -0
  21. package/dist/client/assets/DiffPanel-Bbs-arXF.js +2 -0
  22. package/dist/client/assets/DiffWorkerPoolProvider-B-AH2sbL.js +10 -0
  23. package/dist/client/assets/{DocxPreview-B7-febv_.js → DocxPreview-HXde7oD1.js} +4 -4
  24. package/dist/client/assets/FilePreviewPanel-DkspqFyX.js +2237 -0
  25. package/dist/client/assets/HtmlPreview-pfh_hRgS.js +2 -0
  26. package/dist/client/assets/{PdfPreview-W5mTp32l.js → PdfPreview-VSGe6F9I.js} +3 -3
  27. package/dist/client/assets/PptxPreview-CZZ5e7rI.js +3 -0
  28. package/dist/client/assets/PreviewPanel-C_WqPJu_.js +2 -0
  29. package/dist/client/assets/PullRequestCodeTab-DLajHhi9.js +6 -0
  30. package/dist/client/assets/PullRequestReactions-BJ4eU_08.js +12 -0
  31. package/dist/client/assets/{RightPanelResizeHandle-DBci-Ee2.js → RightPanelResizeHandle-XlC9gY5e.js} +2 -2
  32. package/dist/client/assets/VirtualizedFile-qiRlyNDc.js +2 -0
  33. package/dist/client/assets/XlsxPreview-BPtt3tW-.js +3 -0
  34. package/dist/client/assets/accountData-BKyjOPQm.js +16 -0
  35. package/dist/client/assets/assetUrls-33nMWFnF.js +2 -0
  36. package/dist/client/assets/assets-1BW7ZJgz.js +2 -0
  37. package/dist/client/assets/{browserHistoryStore-DLbnuO9R.js → browserHistoryStore-CEVJXGfr.js} +3 -3
  38. package/dist/client/assets/browserRecording-BavNt16V.js +2 -0
  39. package/dist/client/assets/clientAnalytics-ChPHl8_D.js +1 -0
  40. package/dist/client/assets/clientPersistenceStorage-CeJLSpQl.js +2 -0
  41. package/dist/client/assets/combobox-CQHB5X6j.js +2 -0
  42. package/dist/client/assets/composerMentionDrag-CdTT1rUK.js +2 -0
  43. package/dist/client/assets/designCanvas.logic-DduGt5E7.js +8 -0
  44. package/dist/client/assets/{designOpenFileContext-CCL9VKvQ.js → designOpenFileContext-CMKir5dG.js} +2 -2
  45. package/dist/client/assets/{diffFileContents-CgDa-z2d.js → diffFileContents-CHRsIT6_.js} +3 -3
  46. package/dist/client/assets/{empty-CLS3rXBc.js → empty-DUUjhkFh.js} +2 -2
  47. package/dist/client/assets/entities-BtD3_L53.js +2 -0
  48. package/dist/client/assets/followUpQueuePersistence-C_pFQCnT.js +1 -0
  49. package/dist/client/assets/{index-DnoL7z0M.js → index-DrITfTBh.js} +3 -3
  50. package/dist/client/assets/{input-BbliVf4z.js → input-CyCAHFxI.js} +2 -2
  51. package/dist/client/assets/{lib-CySB76JU.js → lib-BRpsbmNP.js} +2 -2
  52. package/dist/client/assets/main-Bi6AoLeM.js +167 -0
  53. package/dist/client/assets/main-C0iNAqq8.css +2 -0
  54. package/dist/client/assets/{pdf-CdULDwXT.js → pdf-C3xMIdpt.js} +2 -2
  55. package/dist/client/assets/popover-BXSj56CI.js +2 -0
  56. package/dist/client/assets/pptxDocument-BnTLF4HV.js +3 -0
  57. package/dist/client/assets/projectFilesQueryState-Cs5skZOc.js +2 -0
  58. package/dist/client/assets/queries-BevoHPqY.js +2 -0
  59. package/dist/client/assets/{scroll-area-BW5o0Izf.js → scroll-area-DAaT-DGF.js} +36 -36
  60. package/dist/client/assets/session-Dmu9Hk5C.js +68 -0
  61. package/dist/client/assets/spinner-K3N_kbJr.js +2 -0
  62. package/dist/client/assets/textarea-BT0tVWKM.js +2 -0
  63. package/dist/client/assets/{toggle-DwBa6pBo.js → toggle-Sui8J_p3.js} +2 -2
  64. package/dist/client/assets/toggle-group-BDgfPfOF.js +2 -0
  65. package/dist/client/assets/useSettings-GEQSU1F5.js +5 -0
  66. package/dist/client/assets/{useWorkspaceMutationRefresh-DLI4brDf.js → useWorkspaceMutationRefresh-ApasU6PB.js} +2 -2
  67. package/dist/client/assets/utils-ClZ5OxbV.js +30 -0
  68. package/dist/client/assets/xlsxDocument-SRKfhPKH.js +2 -0
  69. package/dist/client/index.html +1 -1
  70. package/dist/service-launcher.mjs +1 -1
  71. package/package.json +2 -2
  72. package/dist/client/assets/ChatMarkdown-6kh9qKYW.js +0 -249
  73. package/dist/client/assets/DesignWorkspace-DPuyt5mw.js +0 -3
  74. package/dist/client/assets/DiffPanel-DzRhendL.js +0 -2
  75. package/dist/client/assets/DiffWorkerPoolProvider-BU7l1oGv.js +0 -10
  76. package/dist/client/assets/FilePreviewPanel-B3x43muL.js +0 -2231
  77. package/dist/client/assets/HtmlPreview-DY3PT2FT.js +0 -2
  78. package/dist/client/assets/PptxPreview-B02U0OAE.js +0 -3
  79. package/dist/client/assets/PreviewPanel-DhzZlEWJ.js +0 -2
  80. package/dist/client/assets/PullRequestCodeTab-CoB5ByAD.js +0 -6
  81. package/dist/client/assets/PullRequestReactions-DVg6Hz1F.js +0 -12
  82. package/dist/client/assets/VirtualizedFile-Bz5fGbNr.js +0 -2
  83. package/dist/client/assets/XlsxPreview-8ACeuCsx.js +0 -3
  84. package/dist/client/assets/accountData-C4ZvicpJ.js +0 -16
  85. package/dist/client/assets/assetUrls-CbeTQh3H.js +0 -2
  86. package/dist/client/assets/browserRecording-DpmNgRt_.js +0 -2
  87. package/dist/client/assets/clientPersistenceStorage-BlYjZvCd.js +0 -2
  88. package/dist/client/assets/combobox-CByZwSML.js +0 -2
  89. package/dist/client/assets/composerMentionDrag-1fGsNlV_.js +0 -2
  90. package/dist/client/assets/designCanvas.logic-BaQE_ItM.js +0 -8
  91. package/dist/client/assets/entities-DPi_gbtI.js +0 -2
  92. package/dist/client/assets/main-Ck7oK5At.js +0 -161
  93. package/dist/client/assets/main-YscGsfgO.css +0 -2
  94. package/dist/client/assets/popover-CFDsW-_z.js +0 -2
  95. package/dist/client/assets/pptxDocument-Dh-M0DL5.js +0 -3
  96. package/dist/client/assets/projectFilesQueryState-CmtzaSrb.js +0 -2
  97. package/dist/client/assets/queries-DRotn4pk.js +0 -2
  98. package/dist/client/assets/session-D3Szkrpk.js +0 -67
  99. package/dist/client/assets/spinner-DHhZaoFg.js +0 -2
  100. package/dist/client/assets/textarea-5SMJbr7K.js +0 -5
  101. package/dist/client/assets/toggle-group-BU7-0DcW.js +0 -2
  102. package/dist/client/assets/utils-DgzD4MA_.js +0 -30
  103. package/dist/client/assets/xlsxDocument-BMNJtufK.js +0 -2
@@ -1,67 +0,0 @@
1
- import{o as e,t}from"./rolldown-runtime-DAXXjFlN.js";import{$a as n,$c as r,$d as i,$l as a,$s as o,$t as s,$u as c,Ac as l,Ad as u,Ai as d,Al as f,As as p,B as m,Bc as h,Bd as g,Bi as _,Bl as ee,Br as v,C as te,Ca as ne,Cc as re,Cd as ie,Ci as ae,Cs as y,Cu as oe,Da as se,Dc as ce,Dd as le,Di as ue,Dl as de,Do as fe,Dr as pe,Ds as me,Du as he,Ea as ge,Ec as _e,Ed as ve,Ei as ye,Eu as be,Fa as xe,Fc as Se,Fi as Ce,Fl as we,Fs as Te,Fu as Ee,Ga as De,Gc as b,Gd as Oe,Gi as ke,Gn as Ae,Gr as je,Gs as Me,Gu as Ne,Ha as Pe,Hc as Fe,Hd as Ie,Hi as Le,Hn as Re,Hs as x,Ia as ze,Ic as Be,Id as Ve,Ii as He,Il as Ue,Iu as We,Jc as Ge,Ji as Ke,Jl as qe,Jn as Je,Js as Ye,Ka as Xe,Kc as Ze,Ki as Qe,Kl as $e,Kn as et,Ks as tt,Ku as nt,La as rt,Lc as it,Ld as at,Li as ot,Ll as st,Ls as S,Lu as ct,Ma as lt,Mc as ut,Md as dt,Ml as ft,Mn as pt,Mo as mt,Ms as ht,Nc as gt,Nd as C,Ni as _t,Nl as vt,No as yt,Ns as bt,Oc as xt,Od as St,Oi as Ct,Ol as wt,Os as Tt,Ou as Et,Pa as Dt,Pc as Ot,Pd as w,Pl as kt,Po as At,Ps as jt,Pu as Mt,Qd as Nt,Ql as Pt,Qs as Ft,Ra as It,Rc as Lt,Rl as Rt,Rr as zt,Rs as Bt,Ru as Vt,S as Ht,Sa as Ut,Sc as T,Sd as Wt,Si as Gt,Sl as Kt,So as qt,Ss as Jt,Su as Yt,Ta as Xt,Tc as Zt,Td as Qt,Ti as $t,Tl as en,To as tn,Tr as nn,Tu as rn,Uc as an,Ul as on,Un as sn,Us as cn,Uu as ln,V as un,Va as dn,Vc as fn,Vi as pn,Vl as mn,Vs as hn,Wa as gn,Wc as _n,Wd as vn,Wl as yn,Wn as bn,Ws as xn,Wt as Sn,Xa as Cn,Xc as wn,Xd as Tn,Xi as En,Xl as Dn,Xs as E,Ya as On,Yc as kn,Yd as An,Yi as jn,Yl as Mn,Yn as Nn,Yr as Pn,Ys as D,Za as Fn,Zc as In,Zd as Ln,Zi as Rn,Zl as zn,Zr as Bn,Zs as Vn,Zt as Hn,Zu as Un,_a as Wn,_c as Gn,_i as Kn,_o as qn,_r as Jn,_s as Yn,_u as Xn,a as Zn,aa as Qn,ac as O,ad as $n,af as er,al as tr,ao as nr,au as rr,b as k,bc as ir,bd as ar,bi as or,bl as sr,bs as cr,bu as lr,c as ur,ca as dr,cd as fr,cf as pr,ci as mr,cl as hr,cs as gr,cu as _r,d as vr,da as yr,dc as br,dd as xr,df as Sr,di as Cr,du as wr,ea as Tr,ec as Er,ed as Dr,ef as Or,el as kr,eu as Ar,f as jr,fa as Mr,fc as Nr,fd as Pr,ga as Fr,gc as Ir,gi as Lr,gl as Rr,gr as zr,gs as Br,gu as Vr,ha as Hr,hc as Ur,hd as Wr,hi as Gr,hs as Kr,ht as qr,hu as Jr,i as Yr,ia as Xr,ic as Zr,id as Qr,io as $r,jc as ei,jd as ti,jl as ni,jo as ri,js as ii,kc as ai,kd as oi,ki as si,ko as ci,ks as li,ku as ui,l as di,la as fi,lc as pi,ld as A,lf as mi,li as hi,ll as gi,ls as _i,lu as vi,ma as yi,mc as bi,md as xi,mi as Si,ms as Ci,mu as wi,na as Ti,nc as Ei,nd as Di,nl as Oi,nr as ki,nu as Ai,oa as ji,od as Mi,of as Ni,oi as Pi,ol as j,oo as Fi,or as Ii,ou as Li,p as Ri,pa as zi,pc as Bi,pd as Vi,pi as Hi,pl as Ui,ps as Wi,pu as Gi,qc as M,qi as Ki,ql as qi,qn as Ji,qs as Yi,qu as Xi,ra as Zi,rc as Qi,ro as $i,ru as ea,sa as ta,sc as N,sf as na,si as ra,sl as ia,su as aa,t as oa,ta as sa,tc as ca,tf as la,tl as ua,to as P,tu as da,ua as fa,uc as pa,ud as ma,uf as ha,ui as ga,ul as F,uo as _a,us as va,uu as ya,v as ba,va as xa,vc as Sa,vi as Ca,vr as wa,vs as Ta,vt as Ea,vu as Da,w as Oa,wa as ka,wc as Aa,wd as ja,wi as Ma,wl as Na,wr as Pa,ws as Fa,wu as Ia,x as La,xc as Ra,xi as za,xo as Ba,xr as Va,xu as Ha,y as Ua,ya as Wa,yc as Ga,yd as Ka,yl as qa,yo as Ja,ys as Ya,yu as Xa,zc as Za,zd as Qa,zi as $a,zs as I,zu as eo}from"./accountData-C4ZvicpJ.js";import{$o as to,Ao as no,Do as ro,Eo as io,Fo as ao,Go as oo,Io as so,Ko as co,Mo as lo,No as uo,Oo as fo,Po as po,Qo as mo,S as ho,To as go,Vo as _o,Xo as vo,Yo as yo,Zo as bo,es as xo,f as So,it as Co,jo as wo,ko as To,st as Eo}from"./utils-DgzD4MA_.js";var Do=`~effect/platform/Crypto`,Oo=A(`effect/Crypto`),ko=e=>{let t=e.randomBytes,n=e=>O(Ao(`randomBytes`,e),t),r=()=>{let e=t(7);return((e[0]&31)*2**48+e[1]*2**40+e[2]*2**32+e[3]*2**24+e[4]*2**16+e[5]*2**8+e[6])/2**53},i=()=>Math.floor(r()*(2**53-1- -(2**53-1)+1))+-(2**53-1);return Oo.of({[Do]:Do,randomBytes:n,nextDoubleUnsafe:r,nextIntUnsafe:i,digest:e.digest,random:M(()=>r()),randomBoolean:M(()=>r()>.5),randomInt:M(()=>i()),randomBetween:(e,t)=>M(()=>r()*(t-e)+e),randomIntBetween(e,t,n){let i=n?.halfOpen===!0?0:1;return M(()=>{let n=Math.ceil(e),a=Math.floor(t);return Math.floor(r()*(a-n+i))+n})},randomShuffle:e=>M(()=>{let t=Array.from(e);for(let e=t.length-1;e>=1;--e){let n=Math.min(e,Math.floor(r()*(e+1))),i=t[e];t[e]=t[n],t[n]=i}return t}),randomUUIDv4:M(()=>No(t(16))),randomUUIDv7:p(e=>b(Fo(e.currentTimeMillisUnsafe(),t(16))))})},Ao=(e,t)=>Number.isSafeInteger(t)&&t>=0?b(t):S(zt({module:`Crypto`,method:e,description:`size must be a non-negative safe integer`})),jo=e=>e.toString(16).padStart(2,`0`),Mo=e=>[e.subarray(0,4),e.subarray(4,6),e.subarray(6,8),e.subarray(8,10),e.subarray(10,16)].map(e=>Array.from(e,jo).join(``)).join(`-`),No=e=>(e[6]=e[6]&15|64,e[8]=e[8]&63|128,Mo(e)),Po=2**48-1,Fo=(e,t)=>{let n=Math.min(Math.max(0,Math.trunc(e)),Po);return t[0]=Math.floor(n/2**40),t[1]=Math.floor(n/2**32)&255,t[2]=Math.floor(n/2**24)&255,t[3]=Math.floor(n/2**16)&255,t[4]=Math.floor(n/2**8)&255,t[5]=n&255,t[6]=t[6]&15|112,t[8]=t[8]&63|128,Mo(t)},Io=`~effect/ManagedRuntime`,Lo=(e,t)=>{let n=t?.memoMap??Pt(),r=Gi(`parallel`),i=wr(r,`sequential`),a={onFiberStart:se(r)},o=e=>e?{...e,onFiberStart:e.onFiberStart?t=>{a.onFiberStart(t),e.onFiberStart(t)}:a.onFiberStart}:a,s,c=hr(t=>(s||=l(Ge(qe(e,n,i),e=>M(()=>{u.cachedContext=e})),{...a,scheduler:t.currentScheduler}),hn(ne(s)))),u={[Io]:Io,memoMap:n,scope:r,contextEffect:c,cachedContext:void 0,context(){return u.cachedContext===void 0?ut(u.contextEffect):Promise.resolve(u.cachedContext)},dispose(){return ut(u.disposeEffect)},[Symbol.asyncDispose](){return u.dispose()},disposeEffect:Ze(()=>(u.contextEffect=jt(`ManagedRuntime disposed`),u.cachedContext=void 0,vi(u.scope,ui))),runFork(e,t){return u.cachedContext===void 0?l(Ro(u,e),o(t)):ei(u.cachedContext)(e,o(t))},runCallback(e,t){return u.cachedContext===void 0?xt(Ro(u,e),o(t)):ai(u.cachedContext)(e,o(t))},runSyncExit(e){return u.cachedContext===void 0?it(Ro(u,e)):Lt(u.cachedContext)(e)},runSync(e){return u.cachedContext===void 0?Be(Ro(u,e)):Za(u.cachedContext)(e)},runPromiseExit(e,t){return u.cachedContext===void 0?gt(Ro(u,e),o(t)):Ot(u.cachedContext)(e,o(t))},runPromise(e,t){return u.cachedContext===void 0?ut(Ro(u,e),o(t)):Se(u.cachedContext)(e,o(t))}};return u};function Ro(e,t){return I(e.contextEffect,e=>Ra(t,e))}var zo=class extends A()(`effect/reactivity/Reactivity`){},Bo=M(()=>{let e=new Map,t=t=>{Ko(t,t=>{let n=e.get(t);n!==void 0&&n.forEach(e=>e())})},n=e=>ht(n=>{let r=n.mapUnsafe.get(Vo.key);return r?Ko(e,e=>{r.add(e)}):t(e),j}),r=(e,t)=>Ge(t,n(e)),i=(t,n)=>{let r=[];return Ko(t,t=>{r.push(t);let i=e.get(t);i===void 0&&(i=new Set,e.set(t,i)),i.add(n)}),()=>{for(let t=0;t<r.length;t++){let i=e.get(r[t]);i.delete(n),i.size===0&&e.delete(r[t])}}},a=(e,t)=>E(function*(){let n=yield*ii(),r=Pr(n,Li),a=yield*ta(),o=pr(ei(n),se(r)),s=!1,c=!1,l=e=>{e._tag===`Failure`?ji(a,e.cause):fa(a,e.value),c?(c=!1,o(t).addObserver(l)):s=!1};function u(){if(s){c=!0;return}s=!0,o(t).addObserver(l)}return yield*aa(r,M(i(e,u))),u(),a});return zo.of({mutation:r,query:a,stream:(e,t)=>a(e,t).pipe(O(ae),ke),invalidateUnsafe:t,invalidate:n,registerUnsafe:i,withBatch:t=>Ze(()=>{let n=new Set;return t.pipe(T(Vo,n),bi(t=>M(()=>{n.forEach(t=>{let n=e.get(t);n!==void 0&&n.forEach(e=>e())})})))})})}),Vo=class extends A()(`effect/reactivity/Reactivity/PendingInvalidation`){},Ho=na(2,(e,t)=>zo.use(n=>n.mutation(t,e))),Uo=e=>zo.use(t=>t.invalidate(e)),Wo=Mn(zo)(Bo);function Go(e){switch(typeof e){case`string`:case`number`:case`bigint`:case`boolean`:return String(e);default:return Nt(e)}}var Ko=(e,t)=>{if(Array.isArray(e)){for(let n=0;n<e.length;n++)t(Go(e[n]));return}for(let n in e){t(n);let r=e[n];for(let e=0;e<r.length;e++)t(`${n}:${Go(r[e])}`)}},qo=`~effect/SubscriptionRef`,Jo=e=>la(e,qo),Yo={...vn,[qo]:{_A:mi},toJSON(){return{_id:`SubscriptionRef`,value:this.value}}},Xo=e=>O(Wa({replay:1}),t=>{let n=Object.create(Yo);return n.semaphore=Ti(1),n.value=e,n.pubsub=t,Fr(n.pubsub,e),n}),Zo=e=>Gt(e.pubsub),L=e=>M(()=>e.value),Qo=(e,t)=>{e.value=t,Fr(e.pubsub,t)},$o=na(2,(e,t)=>e.semaphore.withPermit(M(()=>Qo(e,t)))),es=na(2,(e,t)=>e.semaphore.withPermit(M(()=>Qo(e,t(e.value))))),ts={"~effect/reactivity/AsyncResult":{E:mi,A:mi},pipe(){return Sr(this,arguments)},[Tn](e){if(this._tag!==e._tag||this.waiting!==e.waiting)return!1;switch(this._tag){case`Initial`:return!0;case`Success`:return An(this.value,e.value);case`Failure`:return An(this.cause,e.cause)}},[Or](){let e=i(`${this._tag}:${this.waiting}`);return this._tag===`Initial`?e:Ln(e)(this._tag===`Success`?Nt(this.value):Nt(this.cause))}},ns=e=>e._tag===`Success`?cs(e.value):us(e.cause),rs=(e,t)=>e._tag===`Success`?cs(e.value):ds(e.cause,{previous:t}),is=e=>e._tag===`None`?os(!0):ps(e.value),as=e=>e._tag!==`Initial`,os=(e=!1)=>{let t=Object.create(ts);return t._tag=`Initial`,t.waiting=e,t},ss=e=>e._tag===`Success`,cs=(e,t)=>{let n=Object.create(ts);return n._tag=`Success`,n.value=e,n.waiting=t?.waiting??!1,n.timestamp=t?.timestamp??Date.now(),n},ls=e=>e._tag===`Failure`,us=(e,t)=>{let n=Object.create(ts);return n._tag=`Failure`,n.cause=e,n.previousSuccess=t?.previousSuccess??C(),n.waiting=t?.waiting??!1,n},ds=(e,t)=>us(e,{previousSuccess:Ka(t.previous,e=>ss(e)?w(e):ls(e)?e.previousSuccess:C()),waiting:t.waiting}),fs=(e,t)=>ds(ni(e),t),ps=(e,t)=>{if(e.waiting)return t?.touch?ms(e):e;let n=Object.assign(Object.create(ts),e);return n.waiting=!0,t?.touch&&ss(n)&&(n.timestamp=Date.now()),n},ms=e=>ss(e)?cs(e.value,{waiting:e.waiting}):e,hs=(e,t)=>e._tag===`Failure`?ds(e.cause,{previous:t,waiting:e.waiting}):e,gs=e=>e._tag===`Success`?w(e.value):e._tag===`Failure`?ti(e.previousSuccess,e=>e.value):C(),_s=na(2,(e,t)=>ja(gs(e),t)),vs=e=>le(gs(e),()=>new wt(`AsyncResult.getOrThrow: no value found`)),ys=e=>{switch(e._tag){case`Success`:return Et(e.value);case`Failure`:return oe(e.cause);default:return Yt(new wt)}},bs=`~effect/reactivity/AtomRegistry`,xs=e=>la(e,bs),Ss=e=>new As(e?.initialValues,e?.scheduleTask,e?.timeoutResolution,e?.defaultIdleTTL),Cs=A(bs),ws=na(e=>xs(e[0]),(e,t,n)=>{let r=n?.suspendOnWaiting??!1;return y(n=>{let i=e.get(t);if(i._tag!==`Initial`&&!(r&&i.waiting))return n(ys(i));let a=e.subscribe(t,e=>{e._tag!==`Initial`&&!(r&&e.waiting)&&(n(ys(e)),a())});return M(a)})}),Ts=na(2,(e,t)=>Wi(M(()=>e.mount(t)),e=>M(e))),Es={immediate:!0},Ds=e=>{e()},Os=`~effect-atom/atom/Atom/Serializable`,ks=e=>Os in e?e[Os].key:e,As=class{[bs];timeoutResolution;defaultIdleTTL;scheduler;schedulerAsync;dispatcher;onNodeAdded;onNodeRemoved;constructor(e,t,n,r){if(this[bs]=bs,this.scheduler=new Mt(`sync`,t),this.schedulerAsync=new Mt(`async`,t),this.dispatcher=this.schedulerAsync.makeDispatcher(),this.defaultIdleTTL=r,n===void 0&&r!==void 0?this.timeoutResolution=Math.round(r/2):this.timeoutResolution=n??1e3,e!==void 0)for(let[t,n]of e){let e=t;for(;e.initialValueTarget;)e=e.initialValueTarget;this.ensureNode(e).setInitialValue(n)}}nodes=new Map;preloadedSerializable=new Map;timeoutBuckets=new Map;nodeTimeoutBucket=new Map;disposed=!1;getNodes(){return this.nodes}get(e){return this.ensureNode(e).value()}set(e,t){e.write(this.ensureNode(e).writeContext,t)}setSerializable(e,t){this.preloadedSerializable.set(e,t)}modify(e,t){let n=this.ensureNode(e),r=t(n.value());return e.write(n.writeContext,r[1]),r[0]}update(e,t){let n=this.ensureNode(e);e.write(n.writeContext,t(n.value()))}refresh=e=>{e.refresh===void 0?this.invalidateAtom(e):e.refresh(this.refresh)};subscribe(e,t,n){let r=this.ensureNode(e);n?.immediate&&t(r.value());let i=r.subscribe(function(){t(r._value)});return()=>{i(),r.canBeRemoved&&this.scheduleNodeRemoval(r)}}mount(e){return this.subscribe(e,Ni,Es)}atomHasTtl(e){return!e.keepAlive&&e.idleTTL!==0&&(e.idleTTL!==void 0||this.defaultIdleTTL!==void 0)}ensureNode(e){let t=ks(e),n=this.nodes.get(t);if(n===void 0?(n=this.createNode(e),this.nodes.set(t,n),this.onNodeAdded?.(n)):this.atomHasTtl(e)&&this.removeNodeTimeout(n),typeof t==`string`&&this.preloadedSerializable.has(t)){let r=this.preloadedSerializable.get(t);this.preloadedSerializable.delete(t);let i=e[Os].decode(r),a=e;for(;a.initialValueTarget;)a=a.initialValueTarget;a===e?n.setValue(i):this.ensureNode(a).setInitialValue(i)}return n}createNode(e){if(this.disposed)throw Error(`Cannot access Atom ${e}: registry is disposed`);return e.keepAlive||this.scheduleAtomRemoval(e),new Ns(this,e)}invalidateAtom=e=>{this.ensureNode(e).invalidate()};scheduleAtomRemoval(e){this.dispatcher.scheduleTask(()=>{let t=this.nodes.get(ks(e));t!==void 0&&t.canBeRemoved&&this.removeNode(t)},0)}scheduleNodeRemoval(e){this.dispatcher.scheduleTask(()=>{e.canBeRemoved&&this.removeNode(e)},0)}removeNode(e){this.atomHasTtl(e.atom)?this.setNodeTimeout(e):(this.nodes.delete(ks(e.atom)),e.remove(),this.onNodeRemoved?.(e))}setNodeTimeout(e){if(this.nodeTimeoutBucket.has(e))return;let t=e.atom.idleTTL??this.defaultIdleTTL;if(this.#e!==null&&(t-=this.#e,t<=0)){this.nodes.delete(ks(e.atom)),e.remove(),this.onNodeRemoved?.(e);return}let n=Math.ceil(t/this.timeoutResolution)*this.timeoutResolution,r=Date.now()+n,i=r-r%this.timeoutResolution+this.timeoutResolution,a=this.timeoutBuckets.get(i);a===void 0&&(a=[new Set,setTimeout(()=>this.sweepBucket(i),i-Date.now())],this.timeoutBuckets.set(i,a)),a[0].add(e),this.nodeTimeoutBucket.set(e,i)}removeNodeTimeout(e){let t=this.nodeTimeoutBucket.get(e);if(t===void 0)return;this.nodeTimeoutBucket.delete(e),this.scheduleNodeRemoval(e);let[n,r]=this.timeoutBuckets.get(t);n.delete(e),n.size===0&&(clearTimeout(r),this.timeoutBuckets.delete(t))}#e=null;sweepBucket(e){let t=this.timeoutBuckets.get(e)[0];this.timeoutBuckets.delete(e),t.forEach(e=>{this.nodeTimeoutBucket.delete(e),e.canBeRemoved&&(this.nodes.delete(ks(e.atom)),this.onNodeRemoved?.(e),this.#e=e.atom.idleTTL??this.defaultIdleTTL,e.remove(),this.#e=null)})}reset(){this.timeoutBuckets.forEach(([,e])=>clearTimeout(e)),this.timeoutBuckets.clear(),this.nodeTimeoutBucket.clear(),this.nodes.forEach(e=>{e.remove(),this.onNodeRemoved?.(e)}),this.nodes.clear()}dispose(){this.disposed=!0,this.reset()}},js={alive:1,initialized:2,waitingForValue:4},Ms={uninitialized:js.alive|js.waitingForValue,stale:js.alive|js.initialized|js.waitingForValue,valid:js.alive|js.initialized,removed:0},Ns=class{constructor(e,t){this.registry=e,this.atom=t,this.writeContext=new Ls(e,this)}registry;atom;state=Ms.uninitialized;lifetime;writeContext;preserveInitialValueOnBuild=!1;parents=new Set;previousParents;children=new Set;listeners=new Set;skipInvalidation=!1;building=!1;invalidatedDuringBuild=!1;currentState(){switch(this.state){case Ms.uninitialized:return`uninitialized`;case Ms.stale:return`stale`;case Ms.valid:return`valid`;default:return`removed`}}get canBeRemoved(){return!this.atom.keepAlive&&this.listeners.size===0&&this.children.size===0&&this.state!==0}_value=void 0;value(){if((this.state&js.waitingForValue)!==0){this.lifetime=Is(this),this.building=!0;let e=this.atom.read(this.lifetime);if(this.building=!1,(this.state&js.waitingForValue)!==0&&(this.preserveInitialValueOnBuild?(this.preserveInitialValueOnBuild=!1,this.state=Ms.valid):this.setValue(e)),this.previousParents){let e=this.previousParents;this.previousParents=void 0;for(let t of e)t.removeChild(this),t.canBeRemoved&&this.registry.scheduleNodeRemoval(t)}}return this._value}valueOption(){return(this.state&js.initialized)===0?C():w(this._value)}setInitialValue(e){if((this.state&js.initialized)===0){this.preserveInitialValueOnBuild=!0,this.state=Ms.stale,this._value=e,zs.phase===Rs.collect?zs.notify.add(this):this.notify();return}this.setValue(e)}setValue(e){if((this.state&js.initialized)===0){this.state=Ms.valid,this._value=e,zs.phase===Rs.collect?zs.notify.add(this):this.notify();return}this.state=Ms.valid,!this.atom.equals(this._value,e)&&(this._value=e,this.skipInvalidation?this.skipInvalidation=!1:this.invalidateChildren(),this.listeners.size>0&&(zs.phase===Rs.collect?zs.notify.add(this):this.notify()))}addParent(e){this.parents.add(e),this.previousParents!==void 0&&(this.previousParents.delete(e),this.previousParents.size===0&&(this.previousParents=void 0)),e.children.has(this)||(e.children.add(this),e.skipInvalidation&&=!1)}removeChild(e){this.children.delete(e)}invalidate(){this.building&&zs.phase===Rs.collect&&(this.invalidatedDuringBuild=!0),this.state===Ms.valid&&(this.state=Ms.stale,this.disposeLifetime()),zs.phase===Rs.collect?zs.stale.push(this):this.atom.lazy&&this.listeners.size===0&&!Ps(this.children)?(this.invalidateChildren(),this.skipInvalidation=!0):this.value()}invalidateChildren(){if(this.children.size===0)return;let e=this.children;this.children=new Set;for(let t of e)t.invalidate()}notify(){this.listeners.forEach(Ds),zs.phase===Rs.commit&&zs.notify.delete(this)}disposeLifetime(){this.lifetime!==void 0&&(this.lifetime.dispose(),this.lifetime=void 0),this.parents.size!==0&&(this.previousParents=this.parents,this.parents=new Set)}remove(){if(this.state=Ms.removed,this.listeners.clear(),this.lifetime===void 0||(this.disposeLifetime(),this.previousParents===void 0))return;let e=this.previousParents;this.previousParents=void 0;for(let t of e)t.removeChild(this),t.canBeRemoved&&this.registry.removeNode(t)}subscribe(e){return this.listeners.add(e),()=>this.listeners.delete(e)}};function Ps(e){if(e.size===0)return!1;let t=e,n,r=0;for(;t!==void 0;){for(let e of t)if(!e.atom.lazy||e.listeners.size>0)return!0;else e.children.size>0&&(n===void 0?n=[e.children]:n.push(e.children));t=n?.[r++]}return!1}var Fs={get registry(){return this.node.registry},addFinalizer(e){if(this.disposed)return e();this.finalizers??=[],this.finalizers.push(e)},get(e){if(this.disposed)return this.node.registry.get(e);let t=this.node.registry.ensureNode(e),n=t.value();return this.node.addParent(t),n},result(e,t){if(this.disposed||this.isFn)return this.resultOnce(e,t);let n=this.get(e);if(t?.suspendOnWaiting&&n.waiting)return Nr;switch(n._tag){case`Initial`:return Nr;case`Failure`:return oe(n.cause);case`Success`:return b(n.value)}},resultOnce(e,t){return y(n=>{let r=this.once(e);if(r._tag!==`Initial`&&!(t?.suspendOnWaiting&&r.waiting))return n(ys(r));let i=this.node.registry.subscribe(e,e=>{e._tag===`Initial`||t?.suspendOnWaiting&&e.waiting||(i(),n(ys(e)))},{immediate:!1});return M(i)})},setResult(e,t){return this.disposed?Nr:(this.node.registry.set(e,t),this.resultOnce(e,{suspendOnWaiting:!0}))},some(e){if(this.disposed||this.isFn)return this.someOnce(e);let t=this.get(e);return t._tag===`None`?Nr:b(t.value)},someOnce(e){return y(t=>{let n=this.once(e);if(u(n))return t(b(n.value));let r=this.node.registry.subscribe(e,e=>{oi(e)||(r(),t(b(e.value)))},{immediate:!1});return M(r)})},once(e){return this.node.registry.get(e)},self(){return this.disposed?C():this.node.valueOption()},refresh(e){this.disposed||this.node.registry.refresh(e)},refreshSelf(){this.disposed||this.node.invalidate()},mount(e){this.disposed||this.addFinalizer(this.node.registry.mount(e))},subscribe(e,t,n){this.disposed||this.addFinalizer(this.node.registry.subscribe(e,t,n))},setSelf(e){this.disposed||this.node.setValue(e)},set(e,t){this.disposed||this.node.registry.set(e,t)},stream(e,t){return this.disposed?Si:Pi(n=>M(()=>{this.subscribe(e,e=>fa(n,e),{immediate:!t?.withoutInitialValue})}))},streamResult(e,t){return this.stream(e,t).pipe(Ca(as),Ct(e=>e._tag===`Success`?b(e.value):Bt(e.cause)))},dispose(){if(this.disposed=!0,this.finalizers===void 0)return;let e=this.finalizers;this.finalizers=void 0;for(let t=e.length-1;t>=0;t--)e[t]()}},Is=e=>{function t(n){if(t.disposed||t.isFn)return e.registry.get(n);let r=e.registry.ensureNode(n),i=r.value();return e.addParent(r),i}return Object.setPrototypeOf(t,Fs),t.isFn=!1,t.disposed=!1,t.finalizers=void 0,t.node=e,t},Ls=class{constructor(e,t){this.registry=e,this.node=t}registry;node;get(e){return this.registry.get(e)}set(e,t){return this.registry.set(e,t)}setSelf(e){return this.node.setValue(e)}refreshSelf(){return this.node.invalidate()}},Rs={disabled:0,collect:1,commit:2},zs={phase:Rs.disabled,depth:0,stale:[],notify:new Set};function Bs(e){zs.phase=Rs.collect,zs.depth++;try{if(e(),zs.depth===1){for(let e=0;e<zs.stale.length;e++)Vs(zs.stale[e]);zs.phase=Rs.commit;for(let e of zs.notify)e.notify();zs.notify.clear()}}finally{zs.depth--,zs.depth===0&&(zs.phase=Rs.disabled,zs.stale=[])}}function Vs(e){if(e.state===Ms.valid){if(!e.invalidatedDuringBuild)return;e.invalidatedDuringBuild=!1,e.state=Ms.stale,e.disposeLifetime()}for(let t of e.parents)t.state!==Ms.valid&&Vs(t);e.state!==Ms.valid&&e.value()}var Hs=`~effect/reactivity/Atom`,Us=e=>la(e,Hs),Ws=`~effect/reactivity/Atom/Writable`,Gs=na(2,(e,t)=>{let n=c(t),r=Dr(n);return Object.assign(Object.create(Object.getPrototypeOf(e)),{...e,keepAlive:!r,idleTTL:r?Mi(n):void 0})}),Ks=Gs(0),qs={[Hs]:Hs,equals:Object.is,...vn,toJSON(){return{_id:`Atom`,keepAlive:this.keepAlive,lazy:this.lazy,label:this.label}}},Js={...qs,atom(e,t){let n=tc(e,t);return Qs(e=>{let t=e.self(),r=e(this);return r._tag===`Success`?n(e,r.value):hs(r,t)})},fn(e,t){return arguments.length===0?(e,t)=>Ys(this,e,t):Ys(this,e,t)},pull(e,t){let n=Ks(ic(0));return _c(n,Qs(r=>{let i=r.self(),a=r(this);return a._tag===`Success`?oc(r,gc(r,n,e,t),os(!0),a.value):hs(a,i)}))},subscriptionRef(e){return fc(Ks(Qs(t=>{let n=t.self(),r=t(this);if(r._tag!==`Success`)return hs(r,n);let i=typeof e==`function`?e(t):e;return Jo(i)?i:oc(t,i,os(!0),r.value)})),(e,t)=>dc(e,t,vs(e(this))))}},Ys=(e,t,n)=>{let[r,i,a]=hc(n?.reactivityKeys?(e,r)=>{let i=t(e,r);return Er(i)?Ho(i,n.reactivityKeys):Gr(i,Uo(n.reactivityKeys))}:t,n);return $s(t=>{t.get(a);let n=t.self(),i=t.get(e);return i._tag===`Success`?r(t,i.value):hs(i,n)},i)},Xs={...qs,[Ws]:Ws},Zs=e=>Ws in e,Qs=(e,t)=>{let n=Object.create(qs);return n.keepAlive=!1,n.lazy=!0,n.read=e,n.refresh=t,n},$s=(e,t,n)=>{let r=Object.create(Xs);return r.keepAlive=!1,r.lazy=!0,r.read=e,r.write=t,r.refresh=n,r};function ec(e,t){e.setSelf(t)}var R=(e,t)=>{let n=tc(e,t);return`~effect/reactivity/Atom`in n?n:Qs(n)},tc=(e,t)=>{if(typeof e==`function`&&!Er(e)&&!$t(e)){let n=e;return function(e,r){let i=n(e);switch(typeof i){case`function`:case`object`:return i===null?i:nc in i?ac(e,i,t,r):rc in i?lc(e,i,t,r):i;default:return i}}}else if(Er(e))return function(n,r){return ac(n,e,t,r)};else if($t(e))return function(n,r){return lc(n,e,t,r)};return ic(e)},nc=`~effect/Effect`,rc=`~effect/Stream`,ic=e=>$s(function(t){return e},ec),ac=(e,t,n,r)=>oc(e,t,n?.initialValue===void 0?os():cs(n.initialValue),r,n?.uninterruptible);function oc(e,t,n,r=xr(),i=!1){let a=e.self(),o=Gi();e.addFinalizer(()=>{ei(r)(vi(o,ui))});let s=new Map(r.mapUnsafe);s.set(Li.key,o),s.set(Cs.key,e.registry),s.set(Ee.key,e.registry.scheduler);let c,l=!1,u=sc(Wr(s),t,function(t){c=rs(t,a),l&&e.setSelf(c)},i);return l=!0,u!==void 0&&e.addFinalizer(u),c===void 0?a._tag===`Some`?is(a):ps(n):c}function sc(e,t,n,r=!1){if(rn(t)){n(t);return}let i=ei(e)(t);i.currentDispatcher?.flush();let a=i.pollUnsafe();if(a){n(a);return}let o=i.addObserver(n);function s(){o(),r||i.interruptUnsafe()}return s}var cc=(e=>{let t=Wo;function n(r){let i=Object.create(Js);i.keepAlive=!1,i.lazy=!0,i.refresh=void 0,i.factory=n;let a=vc(Qs(typeof r==`function`?e=>Ai(r(e),t):()=>Ai(r,t)));return i.layer=a,i.read=function(t){let n=t(a);return ac(t,I(h,t=>qe(n,e.memoMap,t)),{uninterruptible:!0})},i}n.memoMap=e.memoMap,n.addGlobalLayer=e=>{t=Ai(t,da(e,Wo))};let r=Ks(R(ht(t=>qe(Wo,e.memoMap,Pr(t,Li))).pipe(O(Pr(zo)))));return n.withReactivity=e=>t=>yc(t,n=>{let i=vs(n(r));return n.addFinalizer(i.registerUnsafe(e,()=>{n.refresh(t)})),n.subscribe(t,e=>n.setSelf(e)),n.once(t)},{initialValueTarget:t}),n})({memoMap:Pt()});cc.withReactivity;var lc=(e,t,n,r)=>uc(e,t,n?.initialValue===void 0?os():cs(n.initialValue),r);function uc(e,t,n,r=xr()){let i=e.self();r=ma(r,Cs,e.registry);let a=Fe(n=>I(Tr(t.channel,n),t=>ia({while:er,body:()=>t,step(t){e.setSelf(cs(Ne(t),{waiting:!0}))}}))).pipe(Fa(t=>(Kt(t)?ha(e.self(),Ka(gs),dt({onNone:()=>e.setSelf(fs(new wt,{previous:e.self()})),onSome:t=>e.setSelf(cs(t))})):e.setSelf(ds(t,{previous:e.self()})),j))),o=new Map(r.mapUnsafe);o.set(Cs.key,e.registry),o.set(Ee.key,e.registry.scheduler);let s=sc(Wr(o),a,Ni,!1);return s!==void 0&&e.addFinalizer(s),i._tag===`Some`?is(i):ps(n)}var dc=(e,t,n=xr())=>Jo(t)?(e.addFinalizer(Zo(t).pipe(He(t=>{for(let n=0;n<t.length;n++)e.setSelf(t[n]);return j}),ai(n))),Za(n)(L(t))):t._tag===`Success`?uc(e,Zo(t.value),os(!0),n):t,fc=(e,t)=>{function n(t,n){let r=t.get(e);Jo(r)?Be($o(r,n)):ss(r)&&Be($o(r.value,n))}return $s(n=>{let r=n(e);return Jo(r)||ss(r)?t(n,r):r},n)},pc=Symbol.for(`effect/reactivity/atom/Atom/Reset`),mc=Symbol.for(`effect/reactivity/atom/Atom/Interrupt`);function hc(e,t){let n=Ks(ic([0,void 0])),r=t?.initialValue===void 0?os():cs(t.initialValue),i=t?.concurrent?Ks(Qs(e=>{let t=new Set;return e.addFinalizer(()=>t.forEach(e=>e.interruptUnsafe())),t})):void 0;function a(t,a){let o=i?t(i):void 0;t.isFn=!0;let[s,c]=t.get(n);if(s===0)return r;if(c===mc)return ds(st(),{previous:t.self()});let l=e(c,t);return nc in l?(o&&(l=I(Yi(l,{startImmediately:!0}),e=>(o.add(e),e.addObserver(()=>o.delete(e)),O(ge(o),e=>e[0])))),oc(t,l,r,a,!1)):uc(t,l,r,a)}function o(e,t){Dc(()=>{t===pc?e.set(n,[0,void 0]):t===mc?e.set(n,[e.get(n)[0]+1,mc]):e.set(n,[e.get(n)[0]+1,t]),e.refreshSelf()})}return[a,o,n]}var gc=(e,t,n,r)=>I(Le(typeof n==`function`?n(e):n),n=>{let i=ka().context,a=Vt(),o=pa(n,{onFailure(e){return Kt(e)?ln(a)?b({done:!0,items:a}):S(new wt(`Atom.pull: no items`)):Bt(e)},onSuccess(e){let t;return r?.disableAccumulation?t=e:(t=ct(a,e),a=t),b({done:!1,items:t})}}),s=new Set;return e.addFinalizer(()=>{for(let e of s)e()}),e.once(t),e.subscribe(t,()=>{e.setSelf(is(e.self()));let t;t=sc(i,o,n=>{t&&s.delete(t);let r=rs(n,e.self()),i=s.size>0;e.setSelf(i?ps(r):r)}),t&&s.add(t)}),o}),_c=(e,t)=>$s(t.read,function(t,n){t.set(e,t.get(e)+1)}),z=typeof WeakRef>`u`||typeof FinalizationRegistry>`u`?e=>{let t=Ke();return function(n){let r=jn(t,n);if(r._tag===`Some`)return r.value;let i=e(n);return Rn(t,n,i),i}}:e=>{let t=Ke(),n=new FinalizationRegistry(e=>{En(t,e)});return function(r){let i=jn(t,r).pipe(ar(e=>e.deref()));if(i._tag===`Some`)return i.value;let a=e(r);return Rn(t,r,new WeakRef(a)),n.register(a,r),a}},vc=e=>Object.assign(Object.create(Object.getPrototypeOf(e)),{...e,keepAlive:!0}),B=na(2,(e,t)=>Object.assign(Object.create(Object.getPrototypeOf(e)),{...e,label:[t,Error().stack?.split(`
2
- `)[5]??``]})),yc=na(e=>Us(e[0]),(e,t,n)=>{let r=Ks(Zs(e)?$s(n=>t(n,e),function(t,n){t.set(e,n)},e.refresh??function(t){t(e)}):Qs(n=>t(n,e),e.refresh??function(t){t(e)}));return n?.initialValueTarget&&(r.initialValueTarget=bc(n.initialValueTarget)),r}),bc=e=>{let t=e;for(;t.initialValueTarget;)t=t.initialValueTarget;return t},xc=na(2,(e,t)=>yc(e,n=>t(n(e)))),Sc=na(2,(e,t)=>{let n=Mi(c(t));return yc(e,function(t){let r=setTimeout(()=>t.refresh(e),n);return t.addFinalizer(()=>clearTimeout(r)),t(e)},{initialValueTarget:e})}),Cc=na(2,(e,t)=>{let n=Mi(c(t.staleTime));return yc(e,r=>{let i=r.once(e);return r.subscribe(e,e=>{r.setSelf(e)}),t.revalidateOnFocus&&t.focusSignal&&(r.once(t.focusSignal),r.subscribe(t.focusSignal,t.revalidateOnFocus===`always`?()=>r.refresh(e):()=>{Ec(r.once(e),n)&&r.refresh(e)})),oi(r.self())&&t.revalidateOnMount===!1||Ec(i,n)&&r.refresh(e),i},{initialValueTarget:e})}),wc=e=>e._tag===`Success`?w(e.timestamp):e._tag===`Failure`?ti(e.previousSuccess,e=>e.timestamp):C(),Tc=(e,t,n)=>n-e<t,Ec=(e,t)=>{if(e.waiting)return!1;let n=St(wc(e));return n===void 0?e._tag!==`Initial`:!Tc(n,t,Date.now())},Dc=Bs,Oc=`~effect-atom/atom/Atom/ServerValue`,kc=na(2,(e,t)=>`~effect-atom/atom/Atom/ServerValue`in e?e[Oc](e=>t.get(e)):t.get(e)),Ac=t((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,ee=typeof clearTimeout==`function`?clearTimeout:null,v=typeof setImmediate<`u`?setImmediate:null;function te(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function ne(e){if(h=!1,te(e),!m)if(n(c)!==null)m=!0,re||(re=!0,ce());else{var t=n(l);t!==null&&de(ne,t.startTime-e)}}var re=!1,ie=-1,ae=5,y=-1;function oe(){return g?!0:!(e.unstable_now()-y<ae)}function se(){if(g=!1,re){var t=e.unstable_now();y=t;var i=!0;try{a:{m=!1,h&&(h=!1,ee(ie),ie=-1),p=!0;var a=f;try{b:{for(te(t),d=n(c);d!==null&&!(d.expirationTime>t&&oe());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,te(t),i=!0;break b}d===n(c)&&r(c),te(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&de(ne,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?ce():re=!1}}}var ce;if(typeof v==`function`)ce=function(){v(se)};else if(typeof MessageChannel<`u`){var le=new MessageChannel,ue=le.port2;le.port1.onmessage=se,ce=function(){ue.postMessage(null)}}else ce=function(){_(se,0)};function de(t,n){ie=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):ae=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(ee(ie),ie=-1):h=!0,de(ne,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,re||(re=!0,ce()))),r},e.unstable_shouldYield=oe,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),jc=t(((e,t)=>{t.exports=Ac()})),Mc=e(Ua(),1),Nc=e(jc(),1);function Pc(e){let t=Nc.unstable_scheduleCallback(4,e);return()=>Nc.unstable_cancelCallback(t)}var Fc=Mc.createContext(Ss({scheduleTask:Pc,defaultIdleTTL:400})),Ic=new WeakMap;function Lc(e,t){let n=Ic.get(e);n===void 0&&(n=new WeakMap,Ic.set(e,n));let r=n.get(t);if(r!==void 0)return r;let i={subscribe(n){return e.subscribe(t,n)},snapshot(){return e.get(t)},getServerSnapshot(){return kc(t,e)}};return n.set(t,i),i}function Rc(e,t){let n=Lc(e,t);return Mc.useSyncExternalStore(n.subscribe,n.snapshot,n.getServerSnapshot)}var zc=(e,t)=>{let n=Mc.useContext(Fc);return t?Rc(n,Mc.useMemo(()=>xc(e,t),[e,t])):Rc(n,e)};function Bc(e,t){Mc.useEffect(()=>e.mount(t),[t,e])}function Vc(e,t,n){return n?.mode===`promise`||n?.mode===`promiseExit`?Mc.useCallback(r=>{e.set(t,r);let i=gt(ws(e,t,{suspendOnWaiting:!0}));return n.mode===`promise`?i.then(Hc):i},[e,t,n.mode]):Mc.useCallback(n=>{e.set(t,typeof n==`function`?n(e.get(t)):n)},[e,t])}var Hc=e=>{if(he(e))return e.value;throw $e(e.cause)},Uc=(e,t)=>{let n=Mc.useContext(Fc);return Bc(n,e),Vc(n,e,t)},Wc=e=>{let t=Mc.useContext(Fc);return Bc(t,e),Mc.useCallback(()=>{t.refresh(e)},[t,e])},Gc=ba(),Kc=class extends A()(`effect/workers/Transferable/Collector`){},qc=()=>{let e=[],t=t=>{e.push(...t)},n=()=>e,r=()=>{let t=e;return e=[],t};return Kc.of({addAllUnsafe:t,addAll:e=>M(()=>t(e)),readUnsafe:n,read:M(n),clearUnsafe:r,clear:M(r)})},Jc=`~effect/workers/WorkerError`,Yc=_a([class extends Xe(`effect/workers/WorkerError/WorkerSpawnError`)({_tag:yt(`WorkerSpawnError`),message:P,cause:ri(De())}){},class extends Xe(`effect/workers/WorkerError/WorkerSendError`)({_tag:yt(`WorkerSendError`),message:P,cause:ri(De())}){},class extends Xe(`effect/workers/WorkerError/WorkerReceiveError`)({_tag:yt(`WorkerReceiveError`),message:P,cause:ri(De())}){},class extends Xe(`effect/workers/WorkerError/WorkerUnknownError`)({_tag:yt(`WorkerUnknownError`),message:P,cause:ri(De())}){}]);Xe(Jc)({_tag:yt(`WorkerError`),reason:Yc});var Xc=`~effect/rpc/RpcClientError`,Zc=class extends Xe(`effect/rpc/RpcClientError/RpcClientDefect`)({_tag:yt(`RpcClientDefect`),message:P,cause:De()}){},Qc=class extends Xe(Xc)({_tag:yt(`RpcClientError`),reason:_a([Yc,Ae,wa,Zc])}){[Xc]=Xc;get message(){return`${this.reason._tag}: ${this.reason.message}`}},$c=e=>e,el={_tag:`Ping`},tl;try{tl=new TextDecoder}catch{}var V,nl,H=0,rl=[],il=rl,al=0,U={},W,ol,sl=0,cl=0,ll,ul,dl=[],G,fl={useRecords:!1,mapsAsObjects:!0},pl=class{},ml=new pl;ml.name=`MessagePack 0xC1`;var hl=!1,gl=2,_l=class e{constructor(e){e&&(e.useRecords===!1&&e.mapsAsObjects===void 0&&(e.mapsAsObjects=!0),e.sequential&&e.trusted!==!1&&(e.trusted=!0,!e.structures&&e.useRecords!=0&&(e.structures=[],e.maxSharedStructures||=0)),e.structures?e.structures.sharedLength=e.structures.length:e.getStructures&&((e.structures=[]).uninitialized=!0,e.structures.sharedLength=0),e.int64AsNumber&&(e.int64AsType=`number`)),Object.assign(this,e)}unpack(t,n){if(V)return Kl(()=>(ql(),this?this.unpack(t,n):e.prototype.unpack.call(fl,t,n)));!t.buffer&&t.constructor===ArrayBuffer&&(t=typeof Buffer<`u`?Buffer.from(t):new Uint8Array(t)),typeof n==`object`?(nl=n.end||t.length,H=n.start||0):(H=0,nl=n>-1?n:t.length),al=0,cl=0,ol=null,il=rl,ll=null,V=t;try{G=t.dataView||=new DataView(t.buffer,t.byteOffset,t.byteLength)}catch(e){throw V=null,t instanceof Uint8Array?e:Error(`Source must be a Uint8Array or Buffer but was a `+(t&&typeof t==`object`?t.constructor.name:typeof t))}if(this instanceof e){if(U=this,this.structures)return W=this.structures,vl(n);(!W||W.length>0)&&(W=[])}else U=fl,(!W||W.length>0)&&(W=[]);return vl(n)}unpackMultiple(e,t){let n,r=0;try{hl=!0;let i=e.length,a=this?this.unpack(e,i):Yl.unpack(e,i);if(t){if(t(a,r,H)===!1)return;for(;H<i;)if(r=H,t(vl(),r,H)===!1)return}else{for(n=[a];H<i;)r=H,n.push(vl());return n}}catch(e){throw e.lastPosition=r,e.values=n,e}finally{hl=!1,ql()}}_mergeStructures(e,t){this._onLoadedStructures&&(e=this._onLoadedStructures(e)),e||=[],Object.isFrozen(e)&&(e=e.map(e=>e.slice(0)));for(let t=0,n=e.length;t<n;t++){let n=e[t];n&&(n.isShared=!0,t>=32&&(n.highByte=t-32>>5))}e.sharedLength=e.length;for(let n in t||[])if(n>=0){let r=e[n],i=t[n];i&&(r&&((e.restoreStructures||=[])[n]=r),e[n]=i)}return this.structures=e}decode(e,t){return this.unpack(e,t)}};function vl(e){try{if(!U.trusted&&!hl){let e=W.sharedLength||0;e<W.length&&(W.length=e)}let t;if(U._readStruct&&V[H]<64&&V[H]>=32?(t=U._readStruct(V,H,nl),V=null,!(e&&e.lazy)&&t&&(t=t.toJSON()),H=nl):t=bl(),ll&&=(H=ll.postBundlePosition,null),hl&&(W.restoreStructures=null),H==nl)W&&W.restoreStructures&&yl(),W=null,V=null,ul&&=null;else if(H>nl)throw Error(`Unexpected end of MessagePack data`);else if(!hl){let e;try{e=JSON.stringify(t,(e,t)=>typeof t==`bigint`?`${t}n`:t).slice(0,100)}catch(t){e=`(JSON view not available `+t+`)`}throw Error(`Data read, but end of buffer not reached `+e)}return t}catch(e){throw W&&W.restoreStructures&&yl(),ql(),(e instanceof RangeError||e.message.startsWith(`Unexpected end of buffer`)||H>nl)&&(e.incomplete=!0),e}}function yl(){for(let e in W.restoreStructures)W[e]=W.restoreStructures[e];W.restoreStructures=null}function bl(){let e=V[H++];if(e<160)if(e<128){if(e<64)return e;{let t=W[e&63]||U.getStructures&&wl()[e&63];return t?(t.read||=Sl(t,e&63),t.read()):e}}else if(e<144)if(e-=128,U.mapsAsObjects){let t={};for(let n=0;n<e;n++){let e=zl();e===`__proto__`&&(e=`__proto_`),t[e]=bl()}return t}else{let t=new Map;for(let n=0;n<e;n++)t.set(bl(),bl());return t}else{e-=144;let t=Array(e);for(let n=0;n<e;n++)t[n]=bl();return U.freezeData?Object.freeze(t):t}else if(e<192){let t=e-160;if(cl>=H)return ol.slice(H-sl,(H+=t)-sl);if(cl==0&&nl<140){let e=t<16?Pl(t):Nl(t);if(e!=null)return e}return Tl(t)}else{let t;switch(e){case 192:return null;case 193:return ll?(t=bl(),t>0?ll[1].slice(ll.position1,ll.position1+=t):ll[0].slice(ll.position0,ll.position0-=t)):ml;case 194:return!1;case 195:return!0;case 196:if(t=V[H++],t===void 0)throw Error(`Unexpected end of buffer`);return Il(t);case 197:return t=G.getUint16(H),H+=2,Il(t);case 198:return t=G.getUint32(H),H+=4,Il(t);case 199:return Ll(V[H++]);case 200:return t=G.getUint16(H),H+=2,Ll(t);case 201:return t=G.getUint32(H),H+=4,Ll(t);case 202:if(t=G.getFloat32(H),U.useFloat32>2){let e=Jl[(V[H]&127)<<1|V[H+1]>>7];return H+=4,(e*t+(t>0?.5:-.5)>>0)/e}return H+=4,t;case 203:return t=G.getFloat64(H),H+=8,t;case 204:return V[H++];case 205:return t=G.getUint16(H),H+=2,t;case 206:return t=G.getUint32(H),H+=4,t;case 207:return U.int64AsType===`number`?(t=G.getUint32(H)*4294967296,t+=G.getUint32(H+4)):U.int64AsType===`string`?t=G.getBigUint64(H).toString():U.int64AsType===`auto`?(t=G.getBigUint64(H),t<=BigInt(2)<<BigInt(52)&&(t=Number(t))):t=G.getBigUint64(H),H+=8,t;case 208:return G.getInt8(H++);case 209:return t=G.getInt16(H),H+=2,t;case 210:return t=G.getInt32(H),H+=4,t;case 211:return U.int64AsType===`number`?(t=G.getInt32(H)*4294967296,t+=G.getUint32(H+4)):U.int64AsType===`string`?t=G.getBigInt64(H).toString():U.int64AsType===`auto`?(t=G.getBigInt64(H),t>=BigInt(-2)<<BigInt(52)&&t<=BigInt(2)<<BigInt(52)&&(t=Number(t))):t=G.getBigInt64(H),H+=8,t;case 212:if(t=V[H++],t==114)return Vl(V[H++]&63);{let e=dl[t];if(e)return e.read?(H++,e.read(bl())):e.noBuffer?(H++,e()):e(V.subarray(H,++H));throw Error(`Unknown extension `+t)}case 213:return t=V[H],t==114?(H++,Vl(V[H++]&63,V[H++])):Ll(2);case 214:return Ll(4);case 215:return Ll(8);case 216:return Ll(16);case 217:return t=V[H++],cl>=H?ol.slice(H-sl,(H+=t)-sl):El(t);case 218:return t=G.getUint16(H),H+=2,cl>=H?ol.slice(H-sl,(H+=t)-sl):Dl(t);case 219:return t=G.getUint32(H),H+=4,cl>=H?ol.slice(H-sl,(H+=t)-sl):Ol(t);case 220:return t=G.getUint16(H),H+=2,Al(t);case 221:return t=G.getUint32(H),H+=4,Al(t);case 222:return t=G.getUint16(H),H+=2,jl(t);case 223:return t=G.getUint32(H),H+=4,jl(t);default:if(e>=224)return e-256;if(e===void 0){let e=Error(`Unexpected end of MessagePack data`);throw e.incomplete=!0,e}throw Error(`Unknown MessagePack token `+e)}}}var xl=/^[a-zA-Z_$][a-zA-Z\d_$]*$/;function Sl(e,t){function n(){if(n.count++>gl){let r;try{r=e.read=Function(`r`,`return function(){return `+(U.freezeData?`Object.freeze`:``)+`({`+e.map(e=>e===`__proto__`?`__proto_:r()`:xl.test(e)?e+`:r()`:`[`+JSON.stringify(e)+`]:r()`).join(`,`)+`})}`)(bl)}catch{return gl=1/0,n()}return e.read0=r,e.highByte===0&&(e.read=Cl(t,e.read)),r()}let r={};for(let t=0,n=e.length;t<n;t++){let n=e[t];n===`__proto__`&&(n=`__proto_`),r[n]=bl()}return U.freezeData?Object.freeze(r):r}return n.count=0,e.read0=n,e.highByte===0?Cl(t,n):n}var Cl=(e,t)=>function(){let n=V[H++];if(n===0)return t();let r=e<32?-(e+(n<<5)):e+(n<<5),i=W[r]||wl()[r];if(!i)throw Error(`Record id is not defined for `+r);return i.read||=Sl(i,e),i.read()};function wl(){let e=Kl(()=>(V=null,U.getStructures()));return W=U._mergeStructures(e,W)}var Tl=kl,El=kl,Dl=kl,Ol=kl;function kl(e){let t;if(e<16&&(t=Pl(e)))return t;if(e>64&&tl)return tl.decode(V.subarray(H,H+=e));let n=H+e,r=[];for(t=``;H<n;){let e=V[H++];if(!(e&128))r.push(e);else if((e&224)==192){let t=V[H++]&63,n=(e&31)<<6|t;n<128?r.push(65533):r.push(n)}else if((e&240)==224){let t=V[H++]&63,n=V[H++]&63,i=(e&31)<<12|t<<6|n;i<2048||i>=55296&&i<=57343?r.push(65533):r.push(i)}else if((e&248)==240){let t=V[H++]&63,n=V[H++]&63,i=V[H++]&63,a=(e&7)<<18|t<<12|n<<6|i;a<65536||a>1114111?r.push(65533):a>65535?(a-=65536,r.push(a>>>10&1023|55296),a=56320|a&1023,r.push(a)):r.push(a)}else r.push(65533);r.length>=4096&&(t+=Ml.apply(String,r),r.length=0)}return r.length>0&&(t+=Ml.apply(String,r)),t}function Al(e){let t=Array(e);for(let n=0;n<e;n++)t[n]=bl();return U.freezeData?Object.freeze(t):t}function jl(e){if(U.mapsAsObjects){let t={};for(let n=0;n<e;n++){let e=zl();e===`__proto__`&&(e=`__proto_`),t[e]=bl()}return t}else{let t=new Map;for(let n=0;n<e;n++)t.set(bl(),bl());return t}}var Ml=String.fromCharCode;function Nl(e){let t=H,n=Array(e);for(let r=0;r<e;r++){let e=V[H++];if((e&128)>0){H=t;return}n[r]=e}return Ml.apply(String,n)}function Pl(e){if(e<4)if(e<2){if(e===0)return``;{let e=V[H++];if((e&128)>1){--H;return}return Ml(e)}}else{let t=V[H++],n=V[H++];if((t&128)>0||(n&128)>0){H-=2;return}if(e<3)return Ml(t,n);let r=V[H++];if((r&128)>0){H-=3;return}return Ml(t,n,r)}else{let t=V[H++],n=V[H++],r=V[H++],i=V[H++];if((t&128)>0||(n&128)>0||(r&128)>0||(i&128)>0){H-=4;return}if(e<6){if(e===4)return Ml(t,n,r,i);{let e=V[H++];if((e&128)>0){H-=5;return}return Ml(t,n,r,i,e)}}else if(e<8){let a=V[H++],o=V[H++];if((a&128)>0||(o&128)>0){H-=6;return}if(e<7)return Ml(t,n,r,i,a,o);let s=V[H++];if((s&128)>0){H-=7;return}return Ml(t,n,r,i,a,o,s)}else{let a=V[H++],o=V[H++],s=V[H++],c=V[H++];if((a&128)>0||(o&128)>0||(s&128)>0||(c&128)>0){H-=8;return}if(e<10){if(e===8)return Ml(t,n,r,i,a,o,s,c);{let e=V[H++];if((e&128)>0){H-=9;return}return Ml(t,n,r,i,a,o,s,c,e)}}else if(e<12){let l=V[H++],u=V[H++];if((l&128)>0||(u&128)>0){H-=10;return}if(e<11)return Ml(t,n,r,i,a,o,s,c,l,u);let d=V[H++];if((d&128)>0){H-=11;return}return Ml(t,n,r,i,a,o,s,c,l,u,d)}else{let l=V[H++],u=V[H++],d=V[H++],f=V[H++];if((l&128)>0||(u&128)>0||(d&128)>0||(f&128)>0){H-=12;return}if(e<14){if(e===12)return Ml(t,n,r,i,a,o,s,c,l,u,d,f);{let e=V[H++];if((e&128)>0){H-=13;return}return Ml(t,n,r,i,a,o,s,c,l,u,d,f,e)}}else{let p=V[H++],m=V[H++];if((p&128)>0||(m&128)>0){H-=14;return}if(e<15)return Ml(t,n,r,i,a,o,s,c,l,u,d,f,p,m);let h=V[H++];if((h&128)>0){H-=15;return}return Ml(t,n,r,i,a,o,s,c,l,u,d,f,p,m,h)}}}}}function Fl(){let e=V[H++],t;if(e<192)t=e-160;else switch(e){case 217:t=V[H++];break;case 218:t=G.getUint16(H),H+=2;break;case 219:t=G.getUint32(H),H+=4;break;default:throw Error(`Expected string`)}return kl(t)}function Il(e){return U.copyBuffers?Uint8Array.prototype.slice.call(V,H,H+=e):V.subarray(H,H+=e)}function Ll(e){let t=V[H++];if(dl[t]){let n;return dl[t](V.subarray(H,n=H+=e),e=>{H=e;try{return bl()}finally{H=n}})}else throw Error(`Unknown extension type `+t)}var Rl=Array(4096);function zl(){let e=V[H++];if(e>=160&&e<192){if(e-=160,cl>=H)return ol.slice(H-sl,(H+=e)-sl);if(!(cl==0&&nl<180))return Tl(e)}else return H--,Bl(bl());let t=(e<<5^(e>1?G.getUint16(H):e>0?V[H]:0))&4095,n=Rl[t],r=H,i=H+e-3,a,o=0;if(n&&n.bytes==e){for(;r<i;){if(a=G.getUint32(r),a!=n[o++]){r=1879048192;break}r+=4}for(i+=3;r<i;)if(a=V[r++],a!=n[o++]){r=1879048192;break}if(r===i)return H=r,n.string;i-=3,r=H}for(n=[],Rl[t]=n,n.bytes=e;r<i;)a=G.getUint32(r),n.push(a),r+=4;for(i+=3;r<i;)a=V[r++],n.push(a);let s=e<16?Pl(e):Nl(e);return s==null?n.string=Tl(e):n.string=s}function Bl(e){if(typeof e==`string`)return e;if(typeof e==`number`||typeof e==`boolean`||typeof e==`bigint`)return e.toString();if(e==null)return e+``;if(U.allowArraysInMapKeys&&Array.isArray(e)&&e.flat().every(e=>[`string`,`number`,`boolean`,`bigint`].includes(typeof e)))return e.flat().toString();throw Error(`Invalid property type for record: ${typeof e}`)}var Vl=(e,t)=>{let n=bl().map(Bl),r=e;t!==void 0&&(e=e<32?-((t<<5)+e):(t<<5)+e,n.highByte=t);let i=W[e];return i&&(i.isShared||hl)&&((W.restoreStructures||=[])[e]=i),W[e]=n,n.read=Sl(n,r),(n.read0||n.read)()};dl[0]=()=>{},dl[0].noBuffer=!0,dl[66]=e=>{let t=e.byteLength%8||8,n=BigInt(e[0]&128?e[0]-256:e[0]);for(let r=1;r<t;r++)n<<=BigInt(8),n+=BigInt(e[r]);if(e.byteLength!==t){let r=new DataView(e.buffer,e.byteOffset,e.byteLength),i=(e,t)=>{let n=t-e;if(n<=40){let n=r.getBigUint64(e);for(let i=e+8;i<t;i+=8)n<<=BigInt(64),n|=r.getBigUint64(i);return n}let a=e+(n>>4<<3),o=i(e,a),s=i(a,t);return o<<BigInt((t-a)*8)|s};n=n<<BigInt((r.byteLength-t)*8)|i(t,r.byteLength)}return n};var Hl={Error,EvalError,RangeError,ReferenceError,SyntaxError,TypeError,URIError,AggregateError:typeof AggregateError==`function`?AggregateError:null};dl[101]=()=>{let e=bl();if(!Hl[e[0]]){let t=Error(e[1],{cause:e[2]});return t.name=e[0],t}return Hl[e[0]](e[1],{cause:e[2]})},dl[105]=e=>{if(U.structuredClone===!1)throw Error(`Structured clone extension is disabled`);let t=G.getUint32(H-4);ul||=new Map;let n=V[H],r;r=n>=144&&n<160||n==220||n==221?[]:n>=128&&n<144||n==222||n==223?new Map:(n>=199&&n<=201||n>=212&&n<=216)&&V[H+1]===115?new Set:{};let i={target:r};ul.set(t,i);let a=bl();if(i.used)Object.assign(r,a);else return i.target=a;if(r instanceof Map)for(let[e,t]of a.entries())r.set(e,t);if(r instanceof Set)for(let e of Array.from(a))r.add(e);return r},dl[112]=e=>{if(U.structuredClone===!1)throw Error(`Structured clone extension is disabled`);let t=G.getUint32(H-4),n=ul.get(t);return n.used=!0,n.target},dl[115]=()=>new Set(bl());var Ul=[`Int8`,`Uint8`,`Uint8Clamped`,`Int16`,`Uint16`,`Int32`,`Uint32`,`Float32`,`Float64`,`BigInt64`,`BigUint64`].map(e=>e+`Array`),Wl=typeof globalThis==`object`?globalThis:window;dl[116]=e=>{let t=e[0],n=Uint8Array.prototype.slice.call(e,1).buffer,r=Ul[t];if(!r){if(t===16)return n;if(t===17)return new DataView(n);throw Error(`Could not find typed array for code `+t)}return new Wl[r](n)},dl[120]=()=>{let e=bl();return new RegExp(e[0],e[1])};var Gl=[];dl[98]=e=>{let t=(e[0]<<24)+(e[1]<<16)+(e[2]<<8)+e[3],n=H;return H+=t-e.length,ll=Gl,ll=[Fl(),Fl()],ll.position0=0,ll.position1=0,ll.postBundlePosition=H,H=n,bl()},dl[255]=e=>e.length==4?new Date((e[0]*16777216+(e[1]<<16)+(e[2]<<8)+e[3])*1e3):e.length==8?new Date(((e[0]<<22)+(e[1]<<14)+(e[2]<<6)+(e[3]>>2))/1e6+((e[3]&3)*4294967296+e[4]*16777216+(e[5]<<16)+(e[6]<<8)+e[7])*1e3):e.length==12?new Date(((e[0]<<24)+(e[1]<<16)+(e[2]<<8)+e[3])/1e6+((e[4]&128?-281474976710656:0)+e[6]*1099511627776+e[7]*4294967296+e[8]*16777216+(e[9]<<16)+(e[10]<<8)+e[11])*1e3):new Date(`invalid`);function Kl(e){U&&U._onSaveState&&U._onSaveState();let t=nl,n=H,r=al,i=sl,a=cl,o=ol,s=il,c=ul,l=ll,u=new Uint8Array(V.slice(0,nl)),d=W,f=W.slice(0,W.length),p=U,m=hl,h=e();return nl=t,H=n,al=r,sl=i,cl=a,ol=o,il=s,ul=c,ll=l,V=u,hl=m,W=d,W.splice(0,W.length,...f),U=p,G=new DataView(V.buffer,V.byteOffset,V.byteLength),h}function ql(){V=null,ul=null,W=null}var Jl=Array(147);for(let e=0;e<256;e++)Jl[e]=+(`1e`+Math.floor(45.15-e*.30103));var Yl=new _l({useRecords:!1});Yl.unpack,Yl.unpackMultiple,Yl.unpack;var Xl={NEVER:0,ALWAYS:1,DECIMAL_ROUND:3,DECIMAL_FIT:4};new Uint8Array(new Float32Array(1).buffer,0,4),_l.SUPPORTS_STRUCT_HOOKS=!0;var Zl;try{Zl=new TextEncoder}catch{}var Ql,$l,eu=typeof Buffer<`u`,tu=eu?function(e){return Buffer.allocUnsafeSlow(e)}:Uint8Array,nu=eu?Buffer:Uint8Array,ru=eu?4294967296:2144337920,K,iu,q,J=0,au,ou=null,su=21760,cu=/[\u0080-\uFFFF]/,lu=Symbol(`record-id`),uu=class extends _l{constructor(e){super(e),this.offset=0;let t,n,r,i,a=nu.prototype.utf8Write?function(e,t){return K.utf8Write(e,t,K.byteLength-t)}:Zl&&Zl.encodeInto?function(e,t){return Zl.encodeInto(e,K.subarray(t)).written}:!1,o=this;e||={};let s=e&&e.sequential,c=e.structures||e.saveStructures,l=e.maxSharedStructures;if(l??=c?32:0,l>8160)throw Error(`Maximum maxSharedStructure is 8160`);e.structuredClone&&e.moreTypes==null&&(this.moreTypes=!0);let u=e.maxOwnStructures;u??=c?32:64,!this.structures&&e.useRecords!=0&&(this.structures=[]);let d=l>32||u+l>64,f=l+64,p=l+u+64;if(p>8256)throw Error(`Maximum maxSharedStructure + maxOwnStructure is 8192`);let m=[],h=0,g=0;this.pack=this.encode=function(e,a){if(K||(K=new tu(8192),q=K.dataView||=new DataView(K.buffer,0,8192),J=0),au=K.length-10,au-J<2048?(K=new tu(K.length),q=K.dataView||=new DataView(K.buffer,0,K.length),au=K.length-10,J=0):J=J+7&2147483640,t=J,a&2048&&(J+=a&255),i=o.structuredClone?new Map:null,o.bundleStrings&&typeof e!=`string`?(ou=[],ou.size=1/0):ou=null,r=o.structures,r){r.uninitialized&&(r=o._mergeStructures(o.getStructures()));let e=r.sharedLength||0;if(e>l)throw Error(`Shared structures is larger than maximum shared structures, try increasing maxSharedStructures to `+r.sharedLength);if(!r.transitions){r.transitions=Object.create(null);for(let t=0;t<e;t++){let e=r[t];if(!e)continue;let n,i=r.transitions;for(let t=0,r=e.length;t<r;t++){let r=e[t];n=i[r],n||=i[r]=Object.create(null),i=n}i[lu]=t+64}this.lastNamedStructuresLength=e}s||(r.nextId=e+64)}n&&=!1;let c;try{o._writeStruct&&e&&typeof e==`object`?e.constructor===Object?ae(e):e.constructor!==Map&&!Array.isArray(e)&&!$l.some(t=>e instanceof t)?ae(e.toJSON?e.toJSON():e):v(e):v(e);let n=ou;if(ou&&hu(t,v,0),i&&i.idsToInsert){let e=i.idsToInsert.sort((e,t)=>e.offset>t.offset?1:-1),r=e.length,a=-1;for(;n&&r>0;){let i=e[--r].offset+t;i<n.stringsPosition+t&&a===-1&&(a=0),i>n.position+t?a>=0&&(a+=6):(a>=0&&(q.setUint32(n.position+t,q.getUint32(n.position+t)+a),a=-1),n=n.previous,r++)}a>=0&&n&&q.setUint32(n.position+t,q.getUint32(n.position+t)+a),J+=e.length*6,J>au&&y(J),o.offset=J;let s=mu(K.subarray(t,J),e);return i=null,s}return o.offset=J,a&512?(K.start=t,K.end=J,K):K.subarray(t,J)}catch(e){throw c=e,e}finally{if(r&&(_(),n&&o.saveStructures)){let n=r.sharedLength||0,i=K.subarray(t,J),s=(o._prepareStructures||gu)(r,o);if(!c)return o.saveStructures(s,s.isCompatible)===!1?(r.uninitialized=!0,o.pack(e,a)):(o.lastNamedStructuresLength=n,K.length>1073741824&&(K=null),i)}K.length>1073741824&&(K=null),a&1024&&(J=t)}};let _=()=>{g<10&&g++;let e=r.sharedLength||0;if(r.length>e&&!s&&(r.length=e),h>1e4)r.transitions=null,g=0,h=0,m.length>0&&(m=[]);else if(m.length>0&&!s){for(let e=0,t=m.length;e<t;e++)m[e][lu]=0;m=[]}},ee=e=>{var t=e.length;t<16?K[J++]=144|t:t<65536?(K[J++]=220,K[J++]=t>>8,K[J++]=t&255):(K[J++]=221,q.setUint32(J,t),J+=4);for(let n=0;n<t;n++)v(e[n])},v=e=>{J>au&&(K=y(J));var n=typeof e,r;if(n===`string`){let n=e.length;if(ou&&n>=4&&n<4096){if((ou.size+=n)>su){let e,n=(ou[0]?ou[0].length*3+ou[1].length:0)+10;J+n>au&&(K=y(J+n));let r;ou.position?(r=ou,K[J]=200,J+=3,K[J++]=98,e=J-t,J+=4,hu(t,v,0),q.setUint16(e+t-3,J-t-e)):(K[J++]=214,K[J++]=98,e=J-t,J+=4),ou=[``,``],ou.previous=r,ou.size=0,ou.position=e}let r=cu.test(e);ou[+!r]+=e,K[J++]=193,v(r?-n:n);return}let i;i=n<32?1:n<256?2:n<65536?3:5;let o=n*3;if(J+o>au&&(K=y(J+o)),n<64||!a){let t,a,o,s=J+i;for(t=0;t<n;t++)a=e.charCodeAt(t),a<128?K[s++]=a:a<2048?(K[s++]=a>>6|192,K[s++]=a&63|128):(a&64512)==55296&&((o=e.charCodeAt(t+1))&64512)==56320?(a=65536+((a&1023)<<10)+(o&1023),t++,K[s++]=a>>18|240,K[s++]=a>>12&63|128,K[s++]=a>>6&63|128,K[s++]=a&63|128):(K[s++]=a>>12|224,K[s++]=a>>6&63|128,K[s++]=a&63|128);r=s-J-i}else r=a(e,J+i);r<32?K[J++]=160|r:r<256?(i<2&&K.copyWithin(J+2,J+1,J+1+r),K[J++]=217,K[J++]=r):r<65536?(i<3&&K.copyWithin(J+3,J+2,J+2+r),K[J++]=218,K[J++]=r>>8,K[J++]=r&255):(i<5&&K.copyWithin(J+5,J+3,J+3+r),K[J++]=219,q.setUint32(J,r),J+=4),J+=r}else if(n===`number`)if(e>>>0===e)e<32||e<128&&this.useRecords===!1||e<64&&!this._writeStruct?K[J++]=e:e<256?(K[J++]=204,K[J++]=e):e<65536?(K[J++]=205,K[J++]=e>>8,K[J++]=e&255):(K[J++]=206,q.setUint32(J,e),J+=4);else if(e>>0===e)e>=-32?K[J++]=256+e:e>=-128?(K[J++]=208,K[J++]=e+256):e>=-32768?(K[J++]=209,q.setInt16(J,e),J+=2):(K[J++]=210,q.setInt32(J,e),J+=4);else{let t;if((t=this.useFloat32)>0&&e<4294967296&&e>=-2147483648){K[J++]=202,q.setFloat32(J,e);let n;if(t<4||(n=e*Jl[(K[J]&127)<<1|K[J+1]>>7])>>0===n){J+=4;return}else J--}K[J++]=203,q.setFloat64(J,e),J+=8}else if(n===`object`||n===`function`)if(!e)K[J++]=192;else{if(i){let n=i.get(e);if(n){n.id||=(i.idsToInsert||=[]).push(n),K[J++]=214,K[J++]=112,q.setUint32(J,n.id),J+=4;return}else i.set(e,{offset:J-t})}let a=e.constructor;if(a===Object)ie(e);else if(a===Array)ee(e);else if(a===Map)if(this.mapAsEmptyObject)K[J++]=128;else{r=e.size,r<16?K[J++]=128|r:r<65536?(K[J++]=222,K[J++]=r>>8,K[J++]=r&255):(K[J++]=223,q.setUint32(J,r),J+=4);for(let[t,n]of e)v(t),v(n)}else{for(let t=0,n=Ql.length;t<n;t++){let n=$l[t];if(e instanceof n){let n=Ql[t];if(n.write){n.type&&(K[J++]=212,K[J++]=n.type,K[J++]=0);let t=n.write.call(this,e);t===e?Array.isArray(e)?ee(e):ie(e):v(t);return}let r=K,i=q,a=J;K=null;let o;try{o=n.pack.call(this,e,e=>(K=r,r=null,J+=e,J>au&&y(J),{target:K,targetView:q,position:J-e}),v)}finally{r&&(K=r,q=i,J=a,au=K.length-10)}o&&(o.length+J>au&&y(o.length+J),J=pu(o,K,J,n.type));return}}if(Array.isArray(e))ee(e);else{if(e.toJSON){let t=e.toJSON();if(t!==e)return v(t)}if(n===`function`)return v(this.writeFunction&&this.writeFunction(e));ie(e)}}}else if(n===`boolean`)K[J++]=e?195:194;else if(n===`bigint`){if(e<0x8000000000000000&&e>=-0x8000000000000000)K[J++]=211,q.setBigInt64(J,e);else if(e<0x10000000000000000&&e>0)K[J++]=207,q.setBigUint64(J,e);else if(this.largeBigIntToFloat)K[J++]=203,q.setFloat64(J,Number(e));else if(this.largeBigIntToString)return v(e.toString());else if(this.useBigIntExtension||this.moreTypes){let t=BigInt(e<0?-1:0),n;if(e>>BigInt(65536)===t){let r=BigInt(0x10000000000000000)-BigInt(1),i=[];for(;i.push(e&r),e>>BigInt(63)!==t;)e>>=BigInt(64);n=new Uint8Array(new BigUint64Array(i).buffer),n.reverse()}else{let t=e<0,r=(t?~e:e).toString(16);if(r.length%2?r=`0`+r:parseInt(r.charAt(0),16)>=8&&(r=`00`+r),eu)n=Buffer.from(r,`hex`);else{n=new Uint8Array(r.length/2);for(let e=0;e<n.length;e++)n[e]=parseInt(r.slice(e*2,e*2+2),16)}if(t)for(let e=0;e<n.length;e++)n[e]=~n[e]}n.length+J>au&&y(n.length+J),J=pu(n,K,J,66);return}else throw RangeError(e+` was too large to fit in MessagePack 64-bit integer format, use useBigIntExtension, or set largeBigIntToFloat to convert to float-64, or set largeBigIntToString to convert to string`);J+=8}else if(n===`undefined`)this.encodeUndefinedAsNil?K[J++]=192:(K[J++]=212,K[J++]=0,K[J++]=0);else throw Error(`Unknown type: `+n)},te=this.variableMapSize||this.coercibleKeyAsNumber||this.skipValues?e=>{let t;if(this.skipValues){t=[];for(let n in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(n))&&!this.skipValues.includes(e[n])&&t.push(n)}else t=Object.keys(e);let n=t.length;n<16?K[J++]=128|n:n<65536?(K[J++]=222,K[J++]=n>>8,K[J++]=n&255):(K[J++]=223,q.setUint32(J,n),J+=4);let r;if(this.coercibleKeyAsNumber)for(let i=0;i<n;i++){r=t[i];let n=Number(r);v(isNaN(n)?r:n),v(e[r])}else for(let i=0;i<n;i++)v(r=t[i]),v(e[r])}:e=>{K[J++]=222;let n=J-t;J+=2;let r=0;for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&(v(t),v(e[t]),r++);if(r>65535)throw Error(`Object is too large to serialize with fast 16-bit map size, use the "variableMapSize" option to serialize this object`);K[n+++t]=r>>8,K[n+t]=r&255},ne=this.useRecords===!1?te:e.progressiveRecords&&!d?e=>{let n,i=r.transitions||=Object.create(null),a=J++-t,o;for(let s in e)if(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(s)){if(n=i[s],n)i=n;else{let c=Object.keys(e),l=i;i=r.transitions;let u=0;for(let e=0,t=c.length;e<t;e++){let t=c[e];n=i[t],n||(n=i[t]=Object.create(null),u++),i=n}a+t+1==J?(J--,oe(i,c,u)):se(i,c,a,u),o=!0,i=l[s]}v(e[s])}if(!o){let n=i[lu];n?K[a+t]=n:se(i,Object.keys(e),a,0)}}:e=>{let t,n=r.transitions||=Object.create(null),i=0;for(let r in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(r))&&(t=n[r],t||(t=n[r]=Object.create(null),i++),n=t);let a=n[lu];a?a>=96&&d?(K[J++]=((a-=96)&31)+96,K[J++]=a>>5):K[J++]=a:oe(n,n.__keys__||Object.keys(e),i);for(let t in e)(typeof e.hasOwnProperty!=`function`||e.hasOwnProperty(t))&&v(e[t])},re=typeof this.useRecords==`function`&&this.useRecords,ie=re?e=>{re(e)?ne(e):te(e)}:ne,ae=e=>{let i=o._writeStruct(e,K,t,J,r,y,(e,t,r)=>{if(r)return n=!0;J=t;let i=K;return v(e),_(),i===K?J:{position:J,targetView:q,target:K}});if(i===0)return ie(e);J=i},y=e=>{let n;if(e>16777216){if(e-t>ru)throw Error(`Packed buffer would be larger than maximum buffer size`);n=Math.min(ru,Math.round(Math.max((e-t)*(e>67108864?1.25:2),4194304)/4096)*4096)}else n=(Math.max(e-t<<2,K.length-1)>>12)+1<<12;let r=new tu(n);return q=r.dataView||=new DataView(r.buffer,0,n),e=Math.min(e,K.length),K.copy?K.copy(r,0,t,e):r.set(K.slice(t,e)),J-=t,t=0,au=r.length-10,K=r},oe=(e,t,i)=>{let a=r.nextId;a||=64,a<f&&this.shouldShareStructure&&!this.shouldShareStructure(t)?(a=r.nextOwnId,a<p||(a=f),r.nextOwnId=a+1):(a>=p&&(a=f),r.nextId=a+1);let o=t.highByte=a>=96&&d?a-96>>5:-1;e[lu]=a,e.__keys__=t,r[a-64]=t,a<f?(t.isShared=!0,r.sharedLength=a-63,n=!0,o>=0?(K[J++]=(a&31)+96,K[J++]=o):K[J++]=a):(o>=0?(K[J++]=213,K[J++]=114,K[J++]=(a&31)+96,K[J++]=o):(K[J++]=212,K[J++]=114,K[J++]=a),i&&(h+=g*i),m.length>=u&&(m.shift()[lu]=0),m.push(e),v(t))},se=(e,n,r,i)=>{let a=K,o=J,s=au,c=t;K=iu,J=0,t=0,K||(iu=K=new tu(8192)),au=K.length-10,oe(e,n,i),iu=K;let l=J;if(K=a,J=o,au=s,t=c,l>1){let e=J+l-1;e>au&&y(e);let n=r+t;K.copyWithin(n+l,n+1,J),K.set(iu.slice(0,l),n),J=e}else K[r+t]=iu[0]}}useBuffer(e){K=e,K.dataView||=new DataView(K.buffer,K.byteOffset,K.byteLength),q=K.dataView,J=0}set position(e){J=e}get position(){return J}clearSharedData(){this.structures&&=[],this.typedStructs&&=[]}};$l=[Date,Set,Error,RegExp,ArrayBuffer,Object.getPrototypeOf(Uint8Array.prototype).constructor,DataView,pl],Ql=[{pack(e,t,n){let r=e.getTime()/1e3;if((this.useTimestamp32||e.getMilliseconds()===0)&&r>=0&&r<4294967296){let{target:e,targetView:n,position:i}=t(6);e[i++]=214,e[i++]=255,n.setUint32(i,r)}else if(r>0&&r<4294967296){let{target:n,targetView:i,position:a}=t(10);n[a++]=215,n[a++]=255,i.setUint32(a,e.getMilliseconds()*4e6+(r/1e3/4294967296>>0)),i.setUint32(a+4,r)}else if(isNaN(r)){if(this.onInvalidDate)return t(0),n(this.onInvalidDate());let{target:e,targetView:r,position:i}=t(3);e[i++]=212,e[i++]=255,e[i++]=255}else{let{target:n,targetView:i,position:a}=t(15);n[a++]=199,n[a++]=12,n[a++]=255,i.setUint32(a,e.getMilliseconds()*1e6),i.setBigInt64(a+4,BigInt(Math.floor(r)))}}},{pack(e,t,n){if(this.setAsEmptyObject)return t(0),n({});let r=Array.from(e),{target:i,position:a}=t(this.moreTypes?3:0);this.moreTypes&&(i[a++]=212,i[a++]=115,i[a++]=0),n(r)}},{pack(e,t,n){let{target:r,position:i}=t(this.moreTypes?3:0);this.moreTypes&&(r[i++]=212,r[i++]=101,r[i++]=0),n([e.name,e.message,e.cause])}},{pack(e,t,n){let{target:r,position:i}=t(this.moreTypes?3:0);this.moreTypes&&(r[i++]=212,r[i++]=120,r[i++]=0),n([e.source,e.flags])}},{pack(e,t){this.moreTypes?du(e,16,t):fu(eu?Buffer.from(e):new Uint8Array(e),t)}},{pack(e,t){let n=e.constructor;n!==nu&&this.moreTypes?du(e,Ul.indexOf(n.name),t):fu(e,t)}},{pack(e,t){this.moreTypes?du(e,17,t):fu(eu?Buffer.from(e):new Uint8Array(e),t)}},{pack(e,t){let{target:n,position:r}=t(1);n[r]=193}}];function du(e,t,n,r){let i=e.byteLength;if(i+1<256){var{target:a,position:o}=n(4+i);a[o++]=199,a[o++]=i+1}else if(i+1<65536){var{target:a,position:o}=n(5+i);a[o++]=200,a[o++]=i+1>>8,a[o++]=i+1&255}else{var{target:a,position:o,targetView:s}=n(7+i);a[o++]=201,s.setUint32(o,i+1),o+=4}a[o++]=116,a[o++]=t,e.buffer||(e=new Uint8Array(e)),a.set(new Uint8Array(e.buffer,e.byteOffset,e.byteLength),o)}function fu(e,t){let n=e.byteLength;var r,i;if(n<256){var{target:r,position:i}=t(n+2);r[i++]=196,r[i++]=n}else if(n<65536){var{target:r,position:i}=t(n+3);r[i++]=197,r[i++]=n>>8,r[i++]=n&255}else{var{target:r,position:i,targetView:a}=t(n+5);r[i++]=198,a.setUint32(i,n),i+=4}r.set(e,i)}function pu(e,t,n,r){let i=e.length;switch(i){case 1:t[n++]=212;break;case 2:t[n++]=213;break;case 4:t[n++]=214;break;case 8:t[n++]=215;break;case 16:t[n++]=216;break;default:i<256?(t[n++]=199,t[n++]=i):i<65536?(t[n++]=200,t[n++]=i>>8,t[n++]=i&255):(t[n++]=201,t[n++]=i>>24,t[n++]=i>>16&255,t[n++]=i>>8&255,t[n++]=i&255)}return t[n++]=r,t.set(e,n),n+=i,n}function mu(e,t){let n,r=t.length*6,i=e.length-r;for(;n=t.pop();){let t=n.offset,a=n.id;e.copyWithin(t+r,t,i),r-=6;let o=t+r;e[o++]=214,e[o++]=105,e[o++]=a>>24,e[o++]=a>>16&255,e[o++]=a>>8&255,e[o++]=a&255,i=t}return e}function hu(e,t,n){if(ou.length>0){q.setUint32(ou.position+e,J+n-ou.position-e),ou.stringsPosition=J-e;let r=ou;ou=null,t(r[0]),t(r[1])}}function gu(e,t){return e.isCompatible=e=>{let n=!e||(t.lastNamedStructuresLength||0)===e.length;return n||t._mergeStructures(e),n},e}uu.SUPPORTS_STRUCT_HOOKS=!0;var _u=new uu({useRecords:!1});_u.pack,_u.pack;var{NEVER:vu,ALWAYS:yu,DECIMAL_ROUND:bu,DECIMAL_FIT:xu}=Xl,Su=class extends A()(`effect/rpc/RpcSerialization`){};de(`MaxBufferSizeExceeded`);var Cu=Su.of({contentType:`application/json`,includesFraming:!1,makeUnsafe:()=>{let e=new TextDecoder;return{decode:t=>{let n=JSON.parse(typeof t==`string`?t:e.decode(t));return Array.isArray(n)?n:[n]},encode:e=>JSON.stringify(e)}}}),wu=ea(Su)(Cu),Tu=e=>Ze(()=>{let t=new Set,n=new Map,r=new Map,i=(e,t)=>ht(r=>{let i=n.get(e);return i||(i=[],n.set(e,i)),i.push([t,r]),j});return O(e((e,t)=>{let n=r.get(e);return n?n(t):i(e,t)},t),e=>({...e,run(e,i){return E(function*(){t.add(e),r.set(e,i);let a=n.get(e);if(a){n.delete(e);for(let[e,t]of a)yield*Ra(Ze(()=>i(e)),t)}return yield*bi(Nr,()=>(t.delete(e),r.delete(e),j))})}}))}),Eu=0,Du=cn(function*(e,t){let n=t?.spanPrefix??`RpcClient`,r=t?.supportsAck??!0,i=t?.disableTracing??!1,a=t?.generateRequestId??(()=>Eu++),s=yield*ii(),c=Pr(s,Li),l=new Map,d=yield*an(Lu),f=!1;yield*aa(c,hr(e=>(f=!0,p(Ia(e.id)))));let p=cn(function*(e){for(let[t,n]of l)l.delete(t),n._tag===`Queue`?yield*e._tag===`Success`?Xr(n.queue):Qn(n.queue,e.cause):n.resume(e)}),m=e=>{let r=Oa(e.successSchema),a=_(e);return(o,s)=>{let c=s?.headers?nn(s.headers):Pa,l=s?.context??xr();if(!r){let r=t=>h(e,a,t,e.payloadSchema.make(o),c,l,s?.discard??!1);return i?r(void 0):tr(`${n}.${e._tag}`,{attributes:t.spanAttributes},r)}let u=g(e,a,e.payloadSchema.make(o),c,s?.streamBufferSize??16,l);return s?.asQueue?u:ke(O(u,ae))}},h=(e,n,r,i,o,s,c)=>hr(p=>{if(f)return Ft;let m=a(),h=u(d)&&d.value.onRequestStart?d.value.onRequestStart({id:m,tag:e._tag,stream:!1}):j,g=n(e=>t.onFromClient({message:e,context:s,discard:c}),{_tag:`Request`,id:m,tag:e._tag,payload:i,...r?{traceId:r.traceId,spanId:r.spanId,sampled:r.sampled}:{},headers:pe(p.getRef(Mu),o)});if(c)return h.pipe(Yn(g));let _;return Ur(y(t=>{let n={_tag:`Effect`,rpc:e,context:s,resume(e){t(e),_&&!_.pollUnsafe()&&p.currentDispatcher.scheduleTask(()=>{_.interruptUnsafe(p.id)},0)}};l.set(m,n),_=h.pipe(Yn(g),r?gi(r,{captureStackTrace:!1}):mi,ei(p.context)),_.addObserver(e=>{if(e._tag===`Failure`)return t(e)})}),e=>{let t=l.get(m);return l.delete(m),Yn(Xt(_),ee(m,Array.from(e),s,t?.rpc._tag))})}),g=cn(function*(e,r,s,c,p,m){if(f)return yield*Ft;let h=i?void 0:yield*Zr(`${n}.${e._tag}`,{attributes:t.spanAttributes}),g=ka(),_=a(),v=u(d)&&d.value.onRequestStart?d.value.onRequestStart({id:_,tag:e._tag,stream:!0}):j,te=Vi(g.context,Li);yield*_r(te,e=>{let t=l.get(_);return t?(l.delete(_),ee(_,be(e)?Array.from(Rt(e.cause)):[],m,t.rpc._tag)):j});let ne=yield*Zi(p);return l.set(_,{_tag:`Queue`,rpc:e,queue:ne,scope:te,context:m,chunkCount:0}),yield*v.pipe(Yn(r(e=>t.onFromClient({message:e,context:m,discard:!1}),{_tag:`Request`,id:_,tag:e._tag,payload:s,...h?{traceId:h.traceId,spanId:h.spanId,sampled:h.sampled}:{},headers:pe(g.getRef(Mu),c)}))).pipe(h?gi(h,{captureStackTrace:!1}):mi,Fa(e=>Qn(ne,e)),o,Ye(te,{startImmediately:!0})),ne}),_=e=>{let t=[];for(let n of e.middlewares.values()){let e=s.mapUnsafe.get(`${n.key}/Client`);e&&t.push(e)}return t.length===0?(e,t)=>e(t):function n(r,i,a=t.length-1){return a===-1?r(i):t[a]({rpc:e,request:i,next(e){return n(r,e,a-1)}})}},ee=(e,n,r,i)=>(u(d)&&d.value.onRequestInterrupt?d.value.onRequestInterrupt({id:e,tag:i}):j).pipe(Yn(y(i=>{let a=ka();t.onFromClient({message:{_tag:`Interrupt`,requestId:e,interruptors:n},context:r,discard:!1}).pipe(In(1e3),ei(a.context)).addObserver(()=>{i(j)})}))),v=e=>{switch(e._tag){case`Chunk`:{let n=e.requestId,i=l.get(n);if(!i||i._tag!==`Queue`)return j;let a=i.chunkCount+=e.values.length,o=u(d)&&d.value.onRequestChunk?d.value.onRequestChunk({id:n,tag:i.rpc._tag,chunkCount:a}):j;return fi(i.queue,e.values).pipe(Yn(o),r?I(()=>t.onFromClient({message:{_tag:`Ack`,requestId:e.requestId},context:i.context,discard:!1})):mi,Fa(e=>Qn(i.queue,e)))}case`Exit`:{let t=e.requestId,n=l.get(t);if(!n)return j;l.delete(t);let r=u(d)&&d.value.onRequestExit?d.value.onRequestExit({id:t,tag:n.rpc._tag,stream:n._tag===`Queue`,exit:e.exit}):j;return n._tag===`Effect`?r.pipe(Yn(M(()=>{n.resume(e.exit)}))):r.pipe(Yn(e.exit._tag===`Success`?Xr(n.queue):Qn(n.queue,e.exit.cause)))}case`Defect`:return p(Ha(e.defect));case`ClientEnd`:return j}},te;if(t.flatten){let t=new Map;te=function(n,r,i){let a=t.get(n);return a||(a=m(e.requests.get(n)),t.set(n,a)),a(r,i)}}else te={},e.requests.forEach(e=>{Oe(te,e._tag,m(e))});return{client:te,write:v}}),Ou=0,ku=cn(function*(e,t){let n=Ou++,{run:r,send:i,supportsAck:a,supportsTransferables:s}=yield*Nu,c=new Map,{client:l,write:u}=yield*Du(e,{...t,supportsAck:a,onFromClient({message:t}){switch(t._tag){case`Request`:{let r=e.requests.get(t.tag),a=s?qc():void 0,o=ka(),l={rpc:r,context:a?ma(o.context,Kc,a):o.context,schemas:ju(r)};return c.set(t.id,l),l.schemas.encodePayload(t.payload).pipe(Ra(l.context),Gn,I(e=>i(n,{...t,id:t.id,payload:e,headers:Object.entries(t.headers)},a&&a.readUnsafe())))}case`Ack`:return c.get(t.requestId)?i(n,{_tag:`Ack`,requestId:t.requestId}):j;case`Interrupt`:return c.get(t.requestId)?(c.delete(t.requestId),i(n,{_tag:`Interrupt`,requestId:t.requestId})):j;case`Eof`:return j}}});return yield*r(n,e=>{switch(e._tag){case`Chunk`:{let t=$c(e.requestId),n=c.get(t);return!n||oi(n.schemas.decodeChunk)?j:n.schemas.decodeChunk.value(e.values).pipe(Ra(n.context),Gn,I(t=>u({_tag:`Chunk`,clientId:0,requestId:$c(e.requestId),values:t})),Bi(t=>u({_tag:`Exit`,clientId:0,requestId:$c(e.requestId),exit:oe(t)})))}case`Exit`:{let t=$c(e.requestId),n=c.get(t);return n?(c.delete(t),n.schemas.decodeExit(e.exit).pipe(Ra(n.context),Gn,pa({onSuccess:e=>u({_tag:`Exit`,clientId:0,requestId:t,exit:e}),onFailure:e=>u({_tag:`Exit`,clientId:0,requestId:t,exit:oe(e)})}))):j}case`Defect`:return u({_tag:`Defect`,clientId:0,defect:zu(e.defect)});case`ClientProtocolError`:{let t=Yt(e.error);return xn(c.keys(),e=>u({_tag:`Exit`,clientId:0,requestId:e,exit:t}))}default:return j}}).pipe(Fa(Ei),o,D),l}),Au=new WeakMap,ju=e=>{let t=Au.get(e);return t===void 0?(t={decodeChunk:ti(te(e.successSchema),e=>Ja(At(Fn(e.success)))),encodePayload:qt(At(e.payloadSchema)),decodeExit:Ja(At(Ht(e)))},Au.set(e,t),t):t},Mu=fr(`effect/rpc/RpcClient/CurrentHeaders`,{defaultValue:()=>Pa}),Nu=class extends A()(`effect/rpc/RpcClient/Protocol`){static make=Tu},Pu=e=>Nu.make(cn(function*(t,n){let r=yield*Re,i=yield*Su,a=yield*an(Ru),o=new Map,s=yield*r.writer,c=i.makeUnsafe(),l=yield*Iu(s(c.encode(el)),u(a)?a.value:void 0),d,f=Ze(()=>(d=void 0,u(a)?a.value.onConnect:j)),p=e=>xn(n,n=>t(n,e));return yield*Ze(()=>(c=i.makeUnsafe(),l.reset(),r.runRaw(e=>{try{let n=c.decode(e);if(n.length===0)return;let r=0;return ia({while:()=>r<n.length,body:()=>{let e=n[r++];if(e._tag===`Pong`)return l.onPong;if(Object.hasOwn(e,`requestId`)){let n=e.requestId,r=o.get(n);if(r!==void 0)return e._tag===`Exit`&&o.delete(n),t(r,e)}return p(e)},step:Ni})}catch(e){return p({_tag:`ClientProtocolError`,error:new Qc({reason:new Zc({message:`Error decoding message`,cause:e})})})}},{onOpen:f}).pipe(Aa(I(l.timeout,()=>(u(a)&&a.value.onPingTimeout?a.value.onPingTimeout:j).pipe(Yn(S(new bn({reason:new et({kind:`Timeout`,cause:Error(`ping timeout`)})}))))))))).pipe(I(()=>S(new bn({reason:new sn({code:1e3})}))),u(a)?Te(a.value.onDisconnect):mi,kn(t=>{let n=ft(t),r=Un(n);return e?.retryTransientErrors&&r&&n.success.reason._tag===`SocketOpenError`?j:(d=new Qc({reason:r?n.success.reason:new Zc({message:`Unknown socket error`,cause:$e(t)})}),p({_tag:`ClientProtocolError`,error:d}))}),ce(e?.retryPolicy??Fu),Ya({module:`RpcClient`,method:`makeProtocolSocket`}),D),{send(e,t){if(d)return S(d);t._tag===`Request`&&o.set(t.id,e);let n=c.encode(t);return n===void 0?j:Gn(s(n))},supportsAck:!0,supportsTransferables:!1}})),Fu=Rr([Ui(500,1.5),sr(5e3)]),Iu=cn(function*(e,t){let n=!0,r=0,i=Ut(),a=()=>{n=!0,r=0,i.closeUnsafe()},s=M(()=>{n=!0,r=0}).pipe(Yn(t?.onPong??j));return yield*Ze(()=>n?(n=!1,r=0,(t?.onPing??j).pipe(Yn(e))):(r+=1,r>=3?i.open:(t?.onPing??j).pipe(Yn(e)))).pipe(bt(`5 seconds`),Vn,Me,o,D),{timeout:i.await,reset:a,onPong:s}}),Lu=class extends A()(`effect/rpc/RpcClient/RequestHooks`){},Ru=class extends A()(`effect/rpc/RpcClient/ConnectionHooks`){},zu=qn(De()),Bu=class extends A()(`@borgtools/client-runtime/platform/capabilities/BorgDeviceIdentity`){},Vu=class extends A()(`@borgtools/client-runtime/platform/capabilities/ClientPresentation`){},Hu=class extends A()(`@borgtools/client-runtime/platform/capabilities/PrimaryEnvironmentAuth`){},Uu=class extends A()(`@borgtools/client-runtime/platform/capabilities/SshEnvironmentGateway`){},Wu=class extends A()(`@borgtools/client-runtime/platform/capabilities/BorgTunnelGateway`){},Gu={environmentId:xe,label:P},Ku=class extends $r()(`PrimaryConnectionTarget`,{...Gu,httpBaseUrl:P,wsBaseUrl:P}){},qu=class extends $r()(`BearerConnectionTarget`,{...Gu,connectionId:P}){},Ju=class extends $r()(`CloudConnectionTarget`,{...Gu,connectionId:P}){},Yu=class extends $r()(`SshConnectionTarget`,{...Gu,connectionId:P}){},Xu=class extends $r()(`BorgConnectionTarget`,{...Gu,connectionId:P,deviceId:P}){};_a([Ku,qu,Ju,Yu,Xu]);var Zu=_a([qu,Ju,Yu,Xu]),Qu=Cn([`network`,`timeout`,`transport`,`endpoint-unavailable`,`borg-unavailable`,`remote-unavailable`]),$u=Cn([`authentication`,`configuration`,`permission`,`unsupported`]),ed=class extends nr()(`ConnectionTransientError`,{reason:Qu,detail:P,traceId:mt(P)}){get message(){return this.detail}},Y=class extends nr()(`ConnectionBlockedError`,{reason:$u,detail:P,traceId:mt(P)}){get message(){return this.detail}};function td(e){switch(e.phase){case`connecting`:return`synchronizing`;case`connected`:return`ready`;case`available`:case`offline`:case`backoff`:case`blocked`:return`disconnected`}}var nd=Object.freeze({desired:!1,network:`unknown`,phase:`available`,stage:null,attempt:0,generation:0,lastFailure:null,retryAt:null}),rd={connectionId:P,environmentId:xe,label:P},id=class extends $r()(`BearerConnectionProfile`,{...rd,httpBaseUrl:P,wsBaseUrl:P}){},ad=class extends $r()(`CloudConnectionProfile`,{...rd,httpBaseUrl:P,wsBaseUrl:P}){},od=class extends $r()(`SshConnectionProfile`,{...rd,target:qr}){},sd=class extends $r()(`BorgConnectionProfile`,{...rd,borgApiUrl:P,deviceId:P}){},cd=_a([id,ad,od,sd]),ld=class extends $r()(`BearerConnectionCredential`,{token:P}){},ud=_a([ld]),dd=class extends $r()(`PrimaryConnectionRegistration`,{target:Ku}){},fd=class extends $r()(`BearerConnectionRegistration`,{target:qu,profile:id,credential:ld}){},pd=class extends $r()(`CloudConnectionRegistration`,{target:Ju,profile:ad,credential:ld}){},md=class extends $r()(`SshConnectionRegistration`,{target:Yu,profile:od}){},hd=class extends $r()(`BorgConnectionRegistration`,{target:Xu,profile:sd,credential:ld}){};_a([fd,pd,md,hd]),_a([dd,fd]);function gd(e){switch(e._tag){case`PrimaryConnectionRegistration`:return{target:e.target,profile:C()};case`BearerConnectionRegistration`:case`CloudConnectionRegistration`:case`SshConnectionRegistration`:case`BorgConnectionRegistration`:return{target:e.target,profile:w(e.profile)}}}var _d=class extends A()(`@borgtools/client-runtime/connection/credentialStore/ConnectionCredentialStore`){},vd=e=>_d.of(e),yd=class extends A()(`@borgtools/client-runtime/connection/profileStore/ConnectionProfileStore`){},bd=e=>yd.of(e),xd=class extends A()(`@borgtools/client-runtime/connection/connectivity`){},Sd=e=>xd.of(e),Cd=e=>ea(xd,Sd(e)),wd=class extends nr()(`ConnectionPersistenceError`,{operation:Cn([`list-targets`,`register-connection`,`remove-connection`,`load-shell`,`save-shell`,`load-thread`,`save-thread`,`remove-thread`,`load-server-config`,`save-server-config`,`load-vcs-refs`,`save-vcs-refs`,`remove-vcs-refs`,`clear-vcs-refs`,`clear-environment`]),message:P}){},Td=class extends A()(`@borgtools/client-runtime/platform/persistence/ConnectionTargetStore`){},Ed=class extends A()(`@borgtools/client-runtime/platform/persistence/ConnectionRegistrationStore`){},Dd=class extends A()(`@borgtools/client-runtime/platform/persistence/EnvironmentCacheStore`){},Od=class extends fr(`@borgtools/client-runtime/platform/persistence/EnvironmentOwnedDataCleanup`,{defaultValue:()=>({clear:()=>j})}){},kd=/^[\u0021\u0023-\u005b\u005d-\u007e]+$/u,Ad=class extends nr()(`OAuthScopeEncodingError`,{scopes:dn(P),invalidScopes:dn(P),duplicateScopes:dn(P)}){get message(){return`OAuth scopes must be non-empty, syntactically valid, and unique.`}};function jd(e){let t=e.filter(e=>!kd.test(e)),n=new Set,r=new Set;for(let t of e)n.has(t)&&r.add(t),n.add(t);if(e.length===0||t.length>0||r.size>0)throw new Ad({scopes:e,invalidScopes:t,duplicateScopes:[...r]});return e.join(` `)}var Md=1e4,Nd=e=>{let t=e?.os;return{...e?.label?{client_label:e.label}:{},...e?.deviceType?{client_device_type:e.deviceType}:{},...t&&t!==`unknown`&&t!==`other`?{client_os:t}:{}}},Pd=(e,t)=>{let n=e=>(e.split(`-`)[0]??e).split(`.`).map(e=>Number.parseInt(e,10)||0),r=n(e),i=n(t),a=Math.max(r.length,i.length);for(let e=0;e<a;e+=1){let t=(r[e]??0)-(i[e]??0);if(t!==0)return t<0}return!1},Fd=class extends Error{_tag=`RemoteClientUpdateRequiredError`;currentVersion;requiredVersion;constructor(e,t){super(`Borg ${e} is older than the minimum supported version ${t}. Update the app to continue.`),this.name=`RemoteClientUpdateRequiredError`,this.currentVersion=e,this.requiredVersion=t}},Id=(e,t)=>{let n=e.min_client_app_version?.trim(),r=t?.appVersion?.trim();return n===void 0||n===``||r===void 0||r===``?null:Pd(r,n)?new Fd(r,n):null},Ld=(e,t,n)=>{if(t?.surface&&e.searchParams.set(`clientSurface`,t.surface),t?.appVersion&&e.searchParams.set(`clientAppVersion`,t.appVersion),t?.deviceType){let n=t.deviceType===`mobile`?`phone`:t.deviceType===`desktop`||t.deviceType===`tablet`?t.deviceType:`unknown`;e.searchParams.set(`clientDeviceType`,n)}t?.os&&e.searchParams.set(`clientOs`,t.os),t?.surface===`web`&&(t.webDeployment&&e.searchParams.set(`clientWebDeployment`,t.webDeployment),t.browser&&e.searchParams.set(`clientBrowser`,t.browser)),t?.surface===`mobile`&&(t.osMajorVersion!==void 0&&e.searchParams.set(`clientOsMajorVersion`,String(t.osMajorVersion)),t.deviceModel&&e.searchParams.set(`clientDeviceModel`,t.deviceModel)),n&&e.searchParams.set(`connectionMethod`,n)},Rd=x(`clientRuntime.authorization.exchangeRemoteDpopAccessToken`)(function*(e){let t=yield*fo(e.httpBaseUrl),n=yield*ro(uo(e.httpBaseUrl,`/oauth/token`),e.timeoutMs??Md,t.auth.token({headers:{dpop:e.dpopProof},payload:{grant_type:Bn,subject_token:e.credential,subject_token_type:je,requested_token_type:v,...e.scopes?{scope:jd(e.scopes)}:{},...Nd(e.clientMetadata)}})),r=Id(n,e.clientMetadata);return r===null?n:yield*S(r)}),zd=x(`clientRuntime.authorization.bootstrapRemoteBearerSession`)(function*(e){let t=yield*fo(e.httpBaseUrl),n=yield*ro(uo(e.httpBaseUrl,`/oauth/token`),e.timeoutMs??Md,t.auth.token({headers:{},payload:{grant_type:Bn,subject_token:e.credential,subject_token_type:je,requested_token_type:v,...e.scopes?{scope:jd(e.scopes)}:{},...Nd(e.clientMetadata)}})),r=Id(n,e.clientMetadata);return r===null?n:yield*S(r)});x(`clientRuntime.authorization.fetchRemoteSessionState`)(function*(e){let t=yield*fo(e.httpBaseUrl);return yield*ro(uo(e.httpBaseUrl,`/api/auth/session`),e.timeoutMs??Md,t.auth.session({headers:{authorization:`Bearer ${e.bearerToken}`}}))}),x(`clientRuntime.authorization.fetchRemoteDpopSessionState`)(function*(e){let t=yield*fo(e.httpBaseUrl);return yield*ro(uo(e.httpBaseUrl,`/api/auth/session`),e.timeoutMs??Md,t.auth.session({headers:{authorization:`DPoP ${e.accessToken}`,dpop:e.dpopProof}}))});var Bd=x(`clientRuntime.authorization.issueRemoteWebSocketTicket`)(function*(e){let t=yield*fo(e.httpBaseUrl);return yield*ro(uo(e.httpBaseUrl,`/api/auth/websocket-ticket`),e.timeoutMs??Md,t.auth.webSocketTicket({headers:{authorization:`Bearer ${e.bearerToken}`}}))}),Vd=x(`clientRuntime.authorization.issueRemoteDpopWebSocketTicket`)(function*(e){let t=yield*fo(e.httpBaseUrl);return yield*ro(uo(e.httpBaseUrl,`/api/auth/websocket-ticket`),e.timeoutMs??Md,t.auth.webSocketTicket({headers:{authorization:`DPoP ${e.accessToken}`,dpop:e.dpopProof}}))}),Hd=x(`clientRuntime.authorization.resolveRemoteWebSocketConnectionUrl`)(function*(e){let t=yield*Bd({httpBaseUrl:e.httpBaseUrl,bearerToken:e.bearerToken,...e.timeoutMs?{timeoutMs:e.timeoutMs}:{}}),n=new URL(po(e.wsBaseUrl));return n.searchParams.set(`wsTicket`,t.ticket),Ld(n,e.clientMetadata,e.connectionMethod),n.toString()}),Ud=x(`clientRuntime.authorization.resolveRemoteDpopWebSocketConnectionUrl`)(function*(e){let t=yield*Vd({httpBaseUrl:e.httpBaseUrl,accessToken:e.accessToken,dpopProof:e.dpopProof,...e.timeoutMs?{timeoutMs:e.timeoutMs}:{}}),n=new URL(po(e.wsBaseUrl));return n.searchParams.set(`wsTicket`,t.ticket),Ld(n,e.clientMetadata,e.connectionMethod),n.toString()}),Wd=`Hint: Check that automatic date and time is enabled on both devices, then try again.`,Gd=`Hint: Try again. If it still fails, clock skew may be the cause; check that automatic date and time is enabled on both devices.`,Kd=`Hint: Try again. If the problem continues, copy the trace ID.`;function qd(e){return e===`time_window`?Wd:e===void 0?Gd:Kd}function Jd(e,t){return`${e} ${qd(t)}`}function Yd(e){return new Y({reason:`configuration`,detail:`Connection profile ${e} is unavailable.`})}function Xd(e){return new Y({reason:`authentication`,detail:`Connection credential ${e} is unavailable.`})}function Zd(e){return new Y({reason:`configuration`,detail:`Connected environment ${e.actual} does not match ${e.expected}.`})}function Qd(e){switch(e._tag){case`EnvironmentAuthInvalidError`:return new Y({reason:`authentication`,detail:`The environment credential is invalid.`,traceId:e.traceId});case`EnvironmentScopeRequiredError`:case`EnvironmentOperationForbiddenError`:return new Y({reason:`permission`,detail:`The environment credential does not grant the required access.`,traceId:e.traceId});case`EnvironmentRequestInvalidError`:return new Y({reason:`configuration`,detail:`The environment rejected the authentication request.`,traceId:e.traceId});case`EnvironmentResourceNotFoundError`:return new Y({reason:`configuration`,detail:`The environment endpoint could not be found.`,traceId:e.traceId});case`RemoteClientUpdateRequiredError`:return new Y({reason:`configuration`,detail:e.message});case`RemoteEnvironmentAuthTimeoutError`:return new ed({reason:`timeout`,detail:e.message});case`RemoteEnvironmentAuthFetchError`:return new ed({reason:`network`,detail:e.message});case`EnvironmentInternalError`:return new ed({reason:`remote-unavailable`,detail:`The environment could not authorize the connection.`,traceId:e.traceId});case`RemoteEnvironmentAuthInvalidJsonError`:case`RemoteEnvironmentAuthUndeclaredStatusError`:return new ed({reason:`remote-unavailable`,detail:e.message})}}function $d(e){return e._tag===`EnvironmentAuthInvalidError`&&e.reason===`invalid_credential`?new Y({reason:`authentication`,detail:Jd(`The environment credential is invalid.`,e.dpopFailureReason),traceId:e.traceId}):Qd(e)}_a([class extends nr()(`DpopKeyLoadError`,{keyStore:Cn([`expo-secure-store`,`indexed-db`]),cause:De()}){get message(){return`Could not load the DPoP proof key.`}},class extends nr()(`DpopProofCreationError`,{method:P,url:P,cause:De()}){get message(){return`Could not create the DPoP proof for ${this.method} ${this.url}.`}}]);var ef=class extends A()(`@borgtools/client-runtime/authorization/dpopSigner`){},tf=P.check(ci(1)),nf=$i({httpBaseUrl:tf,wsBaseUrl:tf,providerKind:P}),rf=class extends gn(`@borgtools/client-runtime/authorization/RemoteDpopAccessToken`)({environmentId:xe,label:P,endpoint:nf,accessToken:P,expiresAtEpochMs:n,dpopThumbprint:P}){},af=class extends A()(`@borgtools/client-runtime/authorization/tokenStore/RemoteDpopAccessTokenStore`){},of=e=>af.of(e),sf=class extends A()(`@borgtools/client-runtime/authorization/service/RemoteEnvironmentAuthorization`){},cf=6e4,lf=3e3,uf=1e4;function df(e){return e._tag===`ConnectionTransientError`||e._tag===`ConnectionBlockedError`?e:$d(e)}var ff=x(`clientRuntime.connection.remote.fetchDescriptor`)(function*(e){return yield*go({httpBaseUrl:e}).pipe(N(Qd))}),pf=Mn(sf,E(function*(){let e=yield*an(ef),t={thumbprint:u(e)?e.value.thumbprint:jt(Error(`No DPoP signer is registered for this client.`)),createProof:t=>u(e)?e.value.createProof(t):jt(Error(`No DPoP signer is registered for this client.`))},n=yield*Vu,r=yield*af,i=yield*_o,a=yield*bo(new Map),o=x(`clientRuntime.connection.remote.authorizeBearer`)(function*(e){let t=e.httpClient??i,r=yield*en,o=(yield*yo(a)).get(e.expectedEnvironmentId),s=o?.httpBaseUrl===e.httpBaseUrl&&o.validatedAtEpochMs+uf>r,c=s?o.descriptor:yield*ff(e.httpBaseUrl).pipe(T(_o,t));if(c.environmentId!==e.expectedEnvironmentId)return yield*Zd({expected:e.expectedEnvironmentId,actual:c.environmentId});s||(yield*xo(a,t=>{let n=new Map(t);return n.set(e.expectedEnvironmentId,{httpBaseUrl:e.httpBaseUrl,descriptor:c,validatedAtEpochMs:r}),n}));let l=yield*Hd({wsBaseUrl:e.wsBaseUrl,httpBaseUrl:e.httpBaseUrl,bearerToken:e.bearerToken,clientMetadata:n.metadata,connectionMethod:e.connectionMethod}).pipe(N(Qd),T(_o,t));return{environmentId:c.environmentId,label:c.label,httpBaseUrl:e.httpBaseUrl,socketUrl:l,httpAuthorization:{_tag:`Bearer`,token:e.bearerToken}}}),s=x(`clientRuntime.connection.remote.createDpopSocketUrl`)(function*(e,r){let a=yield*t.createProof({method:`POST`,url:uo(e.endpoint.httpBaseUrl,`/api/auth/websocket-ticket`),accessToken:e.accessToken}).pipe(N(()=>new Y({reason:`configuration`,detail:`Could not create the websocket authorization proof.`})));return yield*Ud({wsBaseUrl:e.endpoint.wsBaseUrl,httpBaseUrl:e.endpoint.httpBaseUrl,accessToken:e.accessToken,dpopProof:a,clientMetadata:n.metadata,connectionMethod:`borg`,...r===void 0?{}:{timeoutMs:r}}).pipe(T(_o,i))}),c=x(`clientRuntime.connection.remote.authorizeDpop`)(function*(e){let a=yield*t.thumbprint.pipe(N(()=>new Y({reason:`configuration`,detail:`Could not load the environment authorization key.`})),F(`environment.authorization.dpopKey.resolve`)),o=yield*en,c=yield*r.get(e.expectedEnvironmentId).pipe(F(`environment.authorization.accessToken.cache`));if(u(c)&&c.value.environmentId===e.expectedEnvironmentId&&c.value.dpopThumbprint===a&&c.value.expiresAtEpochMs>o+cf){yield*Ta({"connection.remote_token_cache":`hit`});let t=yield*s(c.value,lf).pipe(_e);if(Un(t))return{environmentId:c.value.environmentId,label:c.value.label,httpBaseUrl:c.value.endpoint.httpBaseUrl,socketUrl:t.success,httpAuthorization:{_tag:`Dpop`,accessToken:c.value.accessToken}};if(t.failure._tag===`ConnectionBlockedError`)return yield*df(t.failure);yield*r.remove(e.expectedEnvironmentId).pipe(F(`environment.authorization.accessToken.remove`))}yield*Ta({"connection.remote_token_cache":`miss`});let l=yield*e.obtainBootstrap,d=yield*ff(l.endpoint.httpBaseUrl).pipe(T(_o,i),F(`environment.authorization.descriptor`));if(d.environmentId!==e.expectedEnvironmentId)return yield*Zd({expected:e.expectedEnvironmentId,actual:d.environmentId});let f=yield*t.createProof({method:`POST`,url:uo(l.endpoint.httpBaseUrl,`/oauth/token`)}).pipe(N(()=>new Y({reason:`configuration`,detail:`Could not create the environment authorization proof.`}))),p=yield*Rd({httpBaseUrl:l.endpoint.httpBaseUrl,credential:l.credential,dpopProof:f,scopes:n.scopes,clientMetadata:n.metadata}).pipe(N($d),T(_o,i),F(`environment.authorization.accessToken.exchange`)),m=yield*en,h=new rf({environmentId:d.environmentId,label:d.label,endpoint:l.endpoint,accessToken:p.access_token,expiresAtEpochMs:m+p.expires_in*1e3,dpopThumbprint:a}),g=yield*s(h).pipe(N(df));return yield*r.put(h).pipe(F(`environment.authorization.accessToken.persist`)),{environmentId:d.environmentId,label:d.label,httpBaseUrl:l.endpoint.httpBaseUrl,socketUrl:g,httpAuthorization:{_tag:`Dpop`,accessToken:h.accessToken}}});return sf.of({authorizeBearer:o,authorizeDpop:e=>c(e).pipe(F(`environment.authorization`))})})),mf=new Map,hf={latest:e=>mf.get(e),set:(e,t)=>M(()=>void mf.set(e,t))},gf=class extends fr(`@borgtools/client-runtime/connection/cloudSessionTokens`,{defaultValue:()=>hf}){},_f=256*1024;function vf(e){if(e.length<=262144)return[e];let t=[];for(let n=0;n<e.length;n+=_f)t.push(e.subarray(n,n+_f));return t}function yf(e){let t=new Uint8Array(e.reduce((e,t)=>e+t.length,0)),n=0;for(let r of e)t.set(r,n),n+=r.length;return t}function bf(e){let t=e.borgApiUrl.endsWith(`/`)?e.borgApiUrl:`${e.borgApiUrl}/`,n=new URL(`/ws/v2/tunnel-client`,t);return n.protocol=n.protocol===`http:`?`ws:`:`wss:`,n.searchParams.set(`ticket`,e.ticket),n.toString()}function xf(e){let t=new URL(e,`http://tunnel.invalid`);return`${t.pathname}${t.search}`}function Sf(e){let t=``;for(let n of e)t+=String.fromCharCode(n);return btoa(t)}function Cf(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e+=1)n[e]=t.charCodeAt(e);return n}var wf=class extends EventTarget{static CONNECTING=0;static OPEN=1;static CLOSING=2;static CLOSED=3;CONNECTING=0;OPEN=1;CLOSING=2;CLOSED=3;readyState=0;binaryType=`arraybuffer`;url;onopen=null;onmessage=null;onclose=null;onerror=null;#e=null;#t=``;#n=0;#r=[];#i=[];constructor(e,t){super(),this.url=e,this.#a(e,t)}async#a(e,t){try{let n=await t.openTunnel();if(this.readyState===this.CLOSED)return;this.#t=n.tunnelId;let r=(t.webSocketConstructor??(e=>new WebSocket(e)))(bf({borgApiUrl:t.borgApiUrl,ticket:n.ticket}));r.binaryType=`arraybuffer`,this.#e=r,r.addEventListener(`open`,()=>{r.send(JSON.stringify({version:1,kind:`tunnel.open`,tunnelId:this.#t,deviceId:t.deviceId,streamKind:`ws`,path:xf(e),headers:{},hasBody:!1})),this.readyState=this.OPEN,this.#s();let n=new Event(`open`);this.onopen?.(n),this.dispatchEvent(n)}),r.addEventListener(`message`,e=>this.#o(e)),r.addEventListener(`close`,()=>this.#l(1006,`carrier closed`)),r.addEventListener(`error`,()=>{let e=new Event(`error`);this.onerror?.(e),this.dispatchEvent(e)})}catch{this.#l(1006,`tunnel unavailable`)}}#o(e){let t=typeof e.data==`string`?e.data:new TextDecoder().decode(e.data),n;try{n=JSON.parse(t)}catch{return}if(n.tunnelId===this.#t){if(n.kind===`tunnel.data`&&typeof n.bytesBase64==`string`){if(this.#i.push(Cf(n.bytesBase64)),n.continued===!0){this.#i.reduce((e,t)=>e+t.length,0)>16777216&&this.close(1009,`message too large`);return}let e=new MessageEvent(`message`,{data:yf(this.#i.splice(0)).buffer});this.onmessage?.(e),this.dispatchEvent(e);return}(n.kind===`tunnel.close`||n.kind===`tunnel.error`)&&this.#l(n.code??1e3,n.reason??`tunnel closed`)}}#s(){let e=this.#r;this.#r=[];for(let t of e)this.#c(t)}#c(e){let t=this.#e;if(t===null||t.readyState!==1){this.#r.push(e);return}if(e.length>16777216){this.close(1009,`message too large`);return}let n=vf(e);n.forEach((e,r)=>{t.send(JSON.stringify({version:1,kind:`tunnel.data`,tunnelId:this.#t,sequence:this.#n++,bytesBase64:Sf(e),final:!1,...r<n.length-1?{continued:!0}:{}}))})}send(e){let t=typeof e==`string`?new TextEncoder().encode(e):ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):new Uint8Array(e);this.#c(t)}close(e,t){let n=this.#e;n!==null&&n.readyState===1&&n.send(JSON.stringify({version:1,kind:`tunnel.close`,tunnelId:this.#t,...e===void 0?{}:{code:e},...t===void 0?{}:{reason:t}})),this.#l(e??1e3,t??`closed`)}#l(e,t){if(this.readyState===this.CLOSED)return;this.readyState=this.CLOSED,this.#e?.close(),this.#e=null;let n=new CloseEvent(`close`,{code:e,reason:t,wasClean:e===1e3});this.onclose?.(n),this.dispatchEvent(n)}};function Tf(e){return t=>new wf(t,e)}var Ef=3e4;function Df(e){let t=``;for(let n of e)t+=String.fromCharCode(n);return btoa(t)}function Of(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e+=1)n[e]=t.charCodeAt(e);return n}function kf(e){let t=e.reduce((e,t)=>e+t.length,0),n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}function Af(e,t){return new Promise((n,r)=>{let i=!1,a=null,o=[],s=0,c={},l=e=>{i||(i=!0,clearTimeout(u),a?.close(),`ok`in e?n(e.ok):r(e.error))},u=setTimeout(()=>l({error:Error(`Borg tunnel request timed out.`)}),Ef);(async()=>{try{let n=await e.openTunnel();if(i)return;let r=(e.webSocketConstructor??(e=>new WebSocket(e)))(bf({borgApiUrl:e.borgApiUrl,ticket:n.ticket}));a=r,r.binaryType=`arraybuffer`,r.addEventListener(`open`,()=>{if(r.send(JSON.stringify({version:1,kind:`tunnel.open`,tunnelId:n.tunnelId,deviceId:e.deviceId,streamKind:`http`,method:t.method,path:t.path,headers:t.headers,hasBody:t.body!==null})),t.body!==null){let e=vf(t.body);e.forEach((t,i)=>{r.send(JSON.stringify({version:1,kind:`tunnel.data`,tunnelId:n.tunnelId,sequence:i,bytesBase64:Df(t),final:i===e.length-1}))})}}),r.addEventListener(`message`,e=>{let t=typeof e.data==`string`?e.data:new TextDecoder().decode(e.data),r;try{r=JSON.parse(t)}catch{return}if(r.tunnelId===n.tunnelId){if(r.kind===`tunnel.headers`){s=r.status??0,c=r.headers??{};return}if(r.kind===`tunnel.data`&&typeof r.bytesBase64==`string`){o.push(Of(r.bytesBase64)),r.final===!0&&s!==0&&l({ok:{status:s,headers:c,body:kf(o)}});return}if(r.kind===`tunnel.close`){l(s===0?{error:Error(`Borg tunnel closed before a response arrived.`)}:{ok:{status:s,headers:c,body:kf(o)}});return}r.kind===`tunnel.error`&&l({error:Error(r.message??`Borg tunnel stream failed.`)})}}),r.addEventListener(`close`,()=>l({error:Error(`Borg tunnel closed before a response arrived.`)})),r.addEventListener(`error`,()=>l({error:Error(`Borg tunnel transport failed.`)}))}catch(e){l({error:e instanceof Error?e:Error(`Borg tunnel unavailable.`)})}})()})}function jf(e){return oo(t=>E(function*(){let n=new URL(t.url,`http://tunnel.invalid`),r=t.body._tag===`Uint8Array`?t.body.body:t.body._tag===`Empty`?null:yield*new Jn({reason:new zr({request:t,description:`Borg tunnel supports only in-memory request bodies.`})}),i=yield*kr({try:()=>Af(e,{method:t.method,path:`${n.pathname}${n.search}`,headers:{...t.headers},body:r}),catch:e=>new Jn({reason:new Va({request:t,cause:e})})});return ki(t,new Response(i.body.length===0?null:i.body,{status:i.status,headers:i.headers}))}))}var Mf=`http://127.0.0.1:3773`,Nf=`ws://127.0.0.1:3773`,Pf=class extends A()(`@borgtools/client-runtime/connection/resolver/ConnectionResolver`){},Ff=fe(id),If=fe(ad),Lf=fe(_a([id,ad])),Rf=fe(od),zf=fe(sd),Bf=fe(ld);function Vf(e,t){let n=new URL(po(e.wsBaseUrl));return Ld(n,t,`direct`),n.toString()}var Hf=x(`clientRuntime.connection.broker.makePrimary`)(function*(){let e=yield*Hu,t=yield*Vu,n=yield*sf;return x(`clientRuntime.connection.broker.primary`)(function*(r){let i=yield*e.bearerToken;return oi(i)?{environmentId:r.environmentId,label:r.label,httpBaseUrl:r.httpBaseUrl,socketUrl:Vf(r,t.metadata),httpAuthorization:null,target:r}:{...yield*n.authorizeBearer({expectedEnvironmentId:r.environmentId,httpBaseUrl:r.httpBaseUrl,wsBaseUrl:r.wsBaseUrl,bearerToken:i.value,connectionMethod:`direct`}),target:r}})}),Uf=x(`clientRuntime.connection.broker.makeBearer`)(function*(){let e=yield*_d,t=yield*sf,n=yield*gf;return x(`clientRuntime.connection.broker.bearer`)(function*(r){let i=r.target,a=yield*dt(r.profile,{onNone:()=>S(Yd(i.connectionId)),onSome:b});if(!(i._tag===`CloudConnectionTarget`?If(a):Ff(a))||!Lf(a))return yield*new Y({reason:`configuration`,detail:`Connection profile ${i.connectionId} does not match ${i._tag}.`});if(a.environmentId!==i.environmentId)return yield*Zd({expected:i.environmentId,actual:a.environmentId});let o=yield*e.get(i.connectionId).pipe(I(dt({onNone:()=>S(Xd(i.connectionId)),onSome:b})));if(!Bf(o))return yield*Xd(i.connectionId);let s=yield*t.authorizeBearer({expectedEnvironmentId:i.environmentId,httpBaseUrl:a.httpBaseUrl,wsBaseUrl:a.wsBaseUrl,bearerToken:o.token,connectionMethod:`direct`});i._tag===`CloudConnectionTarget`&&(yield*n.set(i.connectionId,o.token));let c=i.connectionId;return{environmentId:s.environmentId,label:s.label,httpBaseUrl:s.httpBaseUrl,socketUrl:s.socketUrl,httpAuthorization:i._tag===`CloudConnectionTarget`?{_tag:`Bearer`,get token(){return n.latest(c)??o.token}}:s.httpAuthorization,target:i}})}),Wf=x(`clientRuntime.connection.broker.makeSsh`)(function*(){let e=yield*yd,t=yield*Uu,n=yield*sf;return x(`clientRuntime.connection.broker.ssh`)(function*(r){let i=r.target,a=yield*dt(r.profile,{onNone:()=>S(Yd(i.connectionId)),onSome:b});if(!Rf(a))return yield*new Y({reason:`configuration`,detail:`Connection profile ${i.connectionId} is not an SSH connection.`});if(a.environmentId!==i.environmentId)return yield*Zd({expected:i.environmentId,actual:a.environmentId});let o=yield*t.prepare({connectionId:i.connectionId,expectedEnvironmentId:i.environmentId,target:a.target});yield*e.put(new od({connectionId:a.connectionId,environmentId:a.environmentId,label:a.label,target:o.bootstrap.target}));let s=yield*n.authorizeBearer({expectedEnvironmentId:i.environmentId,httpBaseUrl:o.bootstrap.httpBaseUrl,wsBaseUrl:o.bootstrap.wsBaseUrl,bearerToken:o.bearerToken,connectionMethod:`ssh`});return{environmentId:s.environmentId,label:s.label,httpBaseUrl:s.httpBaseUrl,socketUrl:s.socketUrl,httpAuthorization:s.httpAuthorization,target:i}})}),Gf=x(`clientRuntime.connection.broker.makeBorg`)(function*(){let e=yield*_d,t=yield*Wu,n=yield*sf;return x(`clientRuntime.connection.broker.borg`)(function*(r){let i=r.target,a=yield*dt(r.profile,{onNone:()=>S(Yd(i.connectionId)),onSome:b});if(!zf(a))return yield*new Y({reason:`configuration`,detail:`Connection profile ${i.connectionId} is not a Borg tunnel connection.`});if(a.environmentId!==i.environmentId)return yield*Zd({expected:i.environmentId,actual:a.environmentId});if(!(yield*t.isDeviceOnline(a.deviceId)))return yield*new ed({reason:`borg-unavailable`,detail:`${i.label} is not reachable through Borg right now.`});let o=yield*e.get(i.connectionId).pipe(I(dt({onNone:()=>S(Xd(i.connectionId)),onSome:b})));if(!Bf(o))return yield*Xd(i.connectionId);let s=Se(yield*ii()),c={borgApiUrl:a.borgApiUrl,deviceId:a.deviceId,openTunnel:()=>s(t.openTunnel())},l=Tf(c),u=yield*n.authorizeBearer({expectedEnvironmentId:i.environmentId,httpBaseUrl:Mf,wsBaseUrl:Nf,bearerToken:o.token,connectionMethod:`borg`,httpClient:jf(c)});return{environmentId:u.environmentId,label:u.label,httpBaseUrl:u.httpBaseUrl,socketUrl:u.socketUrl,httpAuthorization:u.httpAuthorization,target:i,socketConstructor:l}})}),Kf=Mn(Pf,E(function*(){let e=yield*Hf(),t=yield*Uf(),n=yield*Wf(),r=yield*Gf(),i=x(`clientRuntime.connection.broker.prepare`)(function*(i){let a=i.target;switch(yield*Ta({"connection.environment.id":a.environmentId,"connection.target.kind":a._tag}),a._tag){case`PrimaryConnectionTarget`:return yield*e(a);case`BearerConnectionTarget`:case`CloudConnectionTarget`:return yield*t({...i,target:a});case`SshConnectionTarget`:return yield*n({...i,target:a});case`BorgConnectionTarget`:return yield*r({...i,target:a})}});return Pf.of({prepare:i})})),qf=ku(La),Jf=class extends A()(`@borgtools/client-runtime/searchAtlas/credentialSource/SearchAtlasCredentialSource`){};function Yf(e){if(e.environmentThemes===void 0)return e;let{environmentThemes:t,...n}=e;return n}function Xf(e,t){switch(t.type){case`snapshot`:{let n=t.config.environment.capabilities.environmentThemes===!0&&u(e)?e.value.config.environmentThemes:void 0;return w({config:n===void 0?t.config:{...t.config,environmentThemes:n},latestEvent:t,source:`live`})}case`keybindingsUpdated`:return ti(e,e=>({config:{...e.config,keybindings:t.payload.keybindings,issues:t.payload.issues},latestEvent:t,source:`live`}));case`providerStatuses`:return ti(e,e=>({config:{...e.config,providers:t.payload.providers},latestEvent:t,source:`live`}));case`settingsUpdated`:return ti(e,e=>({config:{...e.config,settings:t.payload.settings},latestEvent:t,source:`live`}));case`environmentThemesUpdated`:return ti(e,e=>({config:{...e.config,environmentThemes:t.payload.themes.length>0?t.payload.themes:void 0},latestEvent:t,source:`live`}))}}var Zf=`15 seconds`,Qf=class extends A()(`@borgtools/client-runtime/rpc/session/RpcSessionFactory`){};function $f(e){let t={version:1,type:`snapshot`,config:Yf(e.projection.config)};return e.themesEvent===void 0?[t]:[t,e.themesEvent]}function ep(e){switch(e._tag){case`EnvironmentAuthorizationError`:return new Y({reason:`permission`,detail:e.message});case`KeybindingsConfigParseError`:case`ServerSettingsError`:return new ed({reason:`remote-unavailable`,detail:e.message});case`RpcClientError`:return new ed({reason:`transport`,detail:e.message})}}var tp=x(`RpcSessionFactory.make`)(function*(e={}){let t=yield*Ji,n=yield*an(Jf),r=e.environmentThemes===!0?{environmentThemes:!0}:{},i=cn(function*(e){yield*Ta({"connection.environment.id":e.environmentId});let i=yield*Xa(),a=yield*Xa(),o=Ru.of({onConnect:lr(i,void 0).pipe(Jt),onDisconnect:Da(i).pipe(I(t=>Vr(a,new ed({reason:`transport`,detail:t?`${e.label} disconnected.`:`${e.label} could not establish a WebSocket connection.`}))),Jt)}),s=Je(e.socketUrl,{openTimeout:Zf}).pipe(da(ea(Ji,e.socketConstructor??t))),c=yield*qi(Mn(Nu,Pu({retryTransientErrors:!1,retryPolicy:qa(0)})).pipe(da(Ar(s,wu,ea(Ru,o))))).pipe(F(`environment.websocket.connect`)),l=yield*qf.pipe(ir(c)),d=yield*Xa(),f=yield*Xa(),p=yield*Xa(),m=yield*bo(C()),h=yield*Wn(64),g=new ed({reason:`remote-unavailable`,detail:`${e.label} config subscription ended.`}),_=l[k.subscribeServerConfig](r).pipe(Ce(e=>E(function*(){let t=yield*mo(m,t=>{let n=Xf(ti(t,e=>e.projection),e);if(oi(n))return[C(),t];let r={projection:n.value,revision:dt(t,{onNone:()=>1,onSome:e=>e.revision+1}),themesEvent:e.type===`environmentThemesUpdated`?e:e.type===`snapshot`&&e.config.environment.capabilities.environmentThemes!==!0?void 0:St(t)?.themesEvent};return[w({event:e,replay:r,revision:r.revision}),w(r)]});u(t)&&(yield*Hr(h,t.value)),e.type===`snapshot`&&(yield*lr(d,e.config))})),bi(e=>he(e)?Br([lr(f,void 0),Vr(p,g)]).pipe(Jt):Ue(e.cause)?j:Br([Xn(f,e.cause),Xn(p,on(e.cause,ep))]).pipe(Jt))),ee=yield*Xa();yield*(e.target._tag!==`CloudConnectionTarget`||oi(n)?j:n.value.current.pipe(I(dt({onNone:()=>S(new ed({reason:`remote-unavailable`,detail:`${e.label} needs your Search Atlas sign-in before it can be used.`})),onSome:e=>l[k.searchAtlasSetCredential](e).pipe(N(e=>e._tag===`RpcClientError`?new ed({reason:`transport`,detail:e.message}):new Y({reason:`permission`,detail:e.message})))})),Jt,F(`environment.credentialPush`))).pipe(br({onFailure:e=>Br([Vr(ee,e),Vr(p,e)]).pipe(Jt),onSuccess:()=>lr(ee,void 0).pipe(Yn(_))}),D);let v=Aa(Aa(Jr(d),Jr(f).pipe(N(ep),I(()=>S(g)))),Jr(ee).pipe(Yn(Nr))).pipe(F(`environment.initialSync`)),te=ke(E(function*(){let e=yield*xa(h);yield*Aa(Jr(d).pipe(Jt),Jr(f));let t=yield*yo(m);if(oi(t))return Si;let n=Ma(e).pipe(Ca(e=>e.revision>t.value.revision),ue(()=>t.value.revision,(e,t)=>[t.revision,t.revision===e+1?[t.event]:$f(t.replay)])),r=or(Jr(f)).pipe(Hi);return ga(za($f(t.value)),si(n,r,{haltStrategy:`either`}))})).pipe(ra(t=>Ue(t)?Kn(t):Lr(new Qc({reason:new Zc({message:`${e.label} config subscription failed.`,cause:t})})))),ne=e=>An(e,r)?te:l[k.subscribeServerConfig](e),re=v.pipe(I(e=>(e.environment.capabilities.connectionProbe===!0?l[k.serverProbe]({}):l[k.serverGetConfig]({})).pipe(N(ep))),Jt,F(`clientRuntime.connection.rpcSession.probe`));return{client:l,initialConfig:v,subscribeServerConfig:ne,ready:Jr(i).pipe(Yn(v),Jt,Aa(Jr(a))),probe:re,closed:Aa(Jr(a),Jr(p))}});return Qf.of({connect:i})}),np=e=>Mn(Qf,tp(e));np({});var rp=class extends A()(`@borgtools/client-runtime/connection/driver/ConnectionDriver`){},ip=Mn(rp,E(function*(){let e=yield*Pf,t=yield*Qf,n=x(`ConnectionDriver.connect`)(function*(n,r){let i=n.target;yield*Ta({"connection.environment.id":i.environmentId,"connection.target.kind":i._tag}),yield*r({stage:`preparing`});let a=yield*e.prepare(n);yield*r({stage:`opening`,prepared:a});let o=yield*t.connect(a);return yield*r({stage:`synchronizing`,prepared:a}),yield*o.ready,{prepared:a,session:o}});return rp.of({connect:n})})),ap=/^(?:Error|EvalError|RangeError|ReferenceError|SyntaxError|TypeError|URIError|AggregateError|DOMException|[A-Za-z][A-Za-z0-9]*(?:Error|Failure))$/,op=/^[A-Za-z0-9._:-]{1,128}$/,sp=32;function cp(e){return typeof e==`string`&&ap.test(e)?e:void 0}function lp(e){try{let t=new URL(e);return t.username=``,t.password=``,t.search=``,t.hash=``,t.toString()}catch{return e}}function up(e){return e.replace(/(?:https?|file):\/\/[^\s)]+/g,lp)}function dp(e){try{let t=e.stack?.split(/\r?\n/).filter(e=>/^\s*at\s+/.test(e)||/^[^@\s]+@(?:https?|file):\/\//.test(e)).slice(0,sp).map(up);return t&&t.length>0?t.join(`
3
- `):void 0}catch{return}}function fp(e){try{return typeof e!=`object`||!e?void 0:cp(e._tag)}catch{return}}function pp(e){try{let t=new Set,n=e;for(;typeof n==`object`&&n&&!t.has(n);){t.add(n);let e=n;if(typeof e.traceId==`string`&&op.test(e.traceId))return e.traceId;n=e.cause}return}catch{return}}function mp(e){if(typeof e==`string`)return e;try{return JSON.stringify(e)??String(e)}catch{try{return String(e)}catch{return`<unstringifiable defect>`}}}function hp(e,t){let n=fp(e),r=pp(e),i=t?.includeRawDefect?mp(e):void 0;if(e instanceof Error){let t=cp(e.name),a=dp(e);return{errorType:`error`,...t===void 0?{}:{errorName:t},...n===void 0?{}:{errorTag:n},...r===void 0?{}:{traceId:r},...a===void 0?{}:{stack:a},...i===void 0?{}:{rawDefect:i}}}return{errorType:e===null?`null`:Array.isArray(e)?`array`:typeof e==`object`?`object`:`primitive`,...n===void 0?{}:{errorTag:n},...r===void 0?{}:{traceId:r},...i===void 0?{}:{rawDefect:i}}}var gp=new Set;function _p(e){return gp.add(e),()=>{gp.delete(e)}}function vp(){for(let e of[...gp])e()}function yp(e){return e===`application-active`||e===`application-active-probe`||e===`application-active-reconnect`}function bp(e){return e===`application-active`||e===`application-active-probe`}var xp=class extends A()(`@borgtools/client-runtime/connection/wakeups/ConnectionWakeups`){},Sp=e=>xp.of(e),Cp=e=>ea(xp,Sp(e)),wp=[3e3,4e3,8e3,16e3],Tp=`15 seconds`,Ep=`15 seconds`,Dp=`3 seconds`,Op=3e4;function kp(e){return pa(e,{onFailure:e=>we(e)?Ft:b(oe(e)),onSuccess:e=>b(Et(e))})}function Ap(e){return wp[Math.min(e,wp.length-1)]??16e3}function jp(e){return Ta({"environment.id":e.environmentId,"environment.label":e.label,"environment.target.kind":e._tag})}function Mp(e,t){return{desired:!1,network:e.network,phase:`available`,stage:null,attempt:0,generation:t,lastFailure:null,retryAt:null}}function Np(e,t,n,r){return{desired:!0,network:e.network,phase:`offline`,stage:null,attempt:n,generation:t,lastFailure:r,retryAt:null}}function Pp(e,t,n,r,i=`preparing`){return{desired:!0,network:e.network,phase:`connecting`,stage:i,attempt:n,generation:t,lastFailure:r,retryAt:null}}function Fp(e,t,n,r){if(he(t)||Ue(t.cause))return{_tag:`Interrupted`,established:n,stable:r,resetRetry:!1};let i=t.cause.reasons.find(mn);return i?{_tag:`Failure`,established:n,stable:r,failure:i.error}:{_tag:`Failure`,established:n,stable:r,failure:{error:new ed({reason:`transport`,detail:`${e.label} connection failed unexpectedly.`}),attemptSpan:C()}}}var Ip=class extends A()(`@borgtools/client-runtime/connection/supervisor/EnvironmentSupervisor`){},Lp=x(`EnvironmentSupervisor.make`)(function*(e,t){let n=e.target;yield*jp(n);let i=yield*xd,a=yield*rp,o=yield*xp,s={desired:t?.initiallyDesired??!1,network:yield*i.status},c=yield*bo(s),l=yield*yi(),u=yield*bo(!1),d=yield*bo(!1),f=yield*Xo(s.desired?s.network===`offline`?Np(s,0,0,null):Pp(s,0,1,null):Mp(s,0)),p=yield*Xo(C()),m=yield*Xo(C()),h=Br([$o(p,C()),$o(m,C())],{discard:!0}),g=x(`EnvironmentSupervisor.setState`)(function*(e){yield*$o(f,e)}),_=x(`EnvironmentSupervisor.signal`)(function*(e){yield*dr(l,e)}),v=x(`EnvironmentSupervisor.reportProgress`)(function*(e,t,n,r){`prepared`in r&&(yield*$o(m,w(r.prepared))),yield*g(Pp(yield*yo(c),t,e,n,r.stage))}),te=cn(function*(t,n,r){return yield*a.connect(e,e=>v(t,n,r,e))}),ie=cn(function*(e,t,n,r){return yield*te(e,t,n).pipe(O(e=>({attemptSpan:C(),lease:e})),N(e=>({error:e,attemptSpan:C()})))}),ae=cn(function*(){for(;;){let e=yield*zi(l);switch(e._tag){case`DisconnectRequested`:case`RetryRequested`:return!1;case`NetworkChanged`:if(e.network===`offline`)return!1;break;case`ConnectRequested`:break;case`Wakeup`:if(e.reason===`application-active-reconnect`)return!0;break}}}),y=cn(function*(e){for(;;){let t=yield*zi(l);switch(t._tag){case`DisconnectRequested`:case`RetryRequested`:return!1;case`NetworkChanged`:if(t.network===`offline`)return!1;break;case`Wakeup`:if(t.reason===`application-active-reconnect`)return!0;if(t.reason===`application-active`||t.reason===`application-active-probe`){let i=yield*e.session.probe.pipe(r({duration:t.reason===`application-active-probe`?Dp:Ep,orElse:()=>S(new ed({reason:`timeout`,detail:`${n.label} did not respond to a connection health check.`}))}),tt);for(;;){let e=yield*Aa(ne(i).pipe(O(e=>({_tag:`ProbeCompleted`,exit:e}))),zi(l).pipe(O(e=>({_tag:`Signal`,signal:e}))));if(e._tag===`ProbeCompleted`){be(e.exit)&&(yield*to(d,!0)),yield*e.exit;break}switch(e.signal._tag){case`DisconnectRequested`:case`RetryRequested`:return yield*Xt(i),!1;case`NetworkChanged`:if(e.signal.network===`offline`)return yield*Xt(i),!1;break;case`Wakeup`:if(e.signal.reason===`application-active-reconnect`)return yield*Xt(i),!0;break;case`ConnectRequested`:break}}}break;case`ConnectRequested`:break}}}),oe=cn(function*(e,t,r,i){yield*$o(m,C());let a=yield*re([kp(ie(e,t,r,i)).pipe(O(e=>({_tag:`Completed`,exit:e}))),ae().pipe(O(e=>({_tag:`Interrupted`,resetRetry:e}))),_n(Tp).pipe(cr({_tag:`TimedOut`}))]);if(a._tag===`Interrupted`)return{_tag:`Interrupted`,established:!1,stable:!1,resetRetry:a.resetRetry};if(a._tag===`TimedOut`)return{_tag:`Failure`,established:!1,stable:!1,failure:{error:new ed({reason:`timeout`,detail:`${n.label} did not respond during connection setup.`}),attemptSpan:C()}};if(be(a.exit)){let e=!Ue(a.exit.cause)&&!a.exit.cause.reasons.some(mn),t=Fp(n,a.exit,!1,!1);if(e){let e=a.exit.cause.reasons.find(ee)?.defect;yield*Ei(`Connection attempt failed with an unexpected defect.`).pipe(Ya({"environment.id":n.environmentId,"environment.label":n.label,"cause.reason_count":a.exit.cause.reasons.length,...hp(e)}))}return t}let o=a.exit.value,s=yield*yo(c);if(!s.desired||s.network===`offline`)return{_tag:`Interrupted`,established:!1,stable:!1,resetRetry:!1};let l=yield*en;yield*$o(m,w(o.lease.prepared)),yield*$o(p,w(o.lease.session)),yield*g({desired:!0,network:s.network,phase:`connected`,stage:null,attempt:e,generation:t,lastFailure:null,retryAt:null});let u=yield*Aa(o.lease.session.closed.pipe(N(e=>({error:e,attemptSpan:o.attemptSpan}))),y(o.lease).pipe(N(e=>({error:e,attemptSpan:o.attemptSpan})))).pipe(kp),d=(yield*en)-l;return he(u)?{_tag:`Interrupted`,established:!0,stable:d>=Op,resetRetry:u.value}:Fp(n,u,!0,d>=Op)},Te(h)),se=cn(function*(e){return yield*Aa(_n(e).pipe(cr(!1)),E(function*(){for(;;){let e=yield*zi(l);switch(e._tag){case`Wakeup`:return yp(e.reason);case`ConnectRequested`:case`DisconnectRequested`:case`RetryRequested`:case`NetworkChanged`:return!1}}}))}),ce=zi(l).pipe(O(e=>e._tag===`Wakeup`&&yp(e.reason))),le=cn(function*(){let e=0,t=0,n=null,r=C(),i=()=>{e=0,r=C()};for(;;){(yield*vo(u,!1))&&(e=0,n=null,r=C());let a=yield*yo(c);if(!a.desired){i(),n=null,yield*h,yield*g(Mp(a,t)),yield*ce;continue}if(a.network===`offline`){yield*h,yield*g(Np(a,t,e+1,n)),(yield*ce)&&i();continue}let o=e+1,s=t+1,l=yield*fn(oe(o,s,n,r)),f=yield*vo(d,!1);if(l.established&&(t=s,l.stable&&(i(),n=null)),l._tag===`Interrupted`){l.resetRetry&&i();continue}let p=l.failure.attemptSpan,m=l.failure.error;if(n=m,m._tag===`ConnectionBlockedError`){let e=yield*yo(c);yield*g({desired:e.desired,network:e.network,phase:`blocked`,stage:null,attempt:o,generation:t,lastFailure:m,retryAt:null}),(yield*ce)&&i();continue}if(f){i(),yield*g(Pp(yield*yo(c),t,1,m));continue}e+=1;let _=Ap(e-1);r=ti(p,t=>({previousAttempt:t,failureCount:e,delayMs:_,reason:m.reason}));let ee=yield*yo(c);yield*g({desired:ee.desired,network:ee.network,phase:`backoff`,stage:null,attempt:o,generation:t,lastFailure:m,retryAt:(yield*en)+_}),(yield*se(_))&&i()}});yield*i.changes.pipe(Ce(e=>mo(c,t=>t.network===e?[!1,t]:[!0,{...t,network:e}]).pipe(I(t=>t?_({_tag:`NetworkChanged`,network:e}):j))),D),yield*o.changes.pipe(Ce(e=>_({_tag:`Wakeup`,reason:e})),D),yield*le().pipe(D);let ue=xo(c,e=>({...e,desired:!0})).pipe(Yn(_({_tag:`ConnectRequested`})),F(`EnvironmentSupervisor.connect`)),de=xo(c,e=>({...e,desired:!1})).pipe(Yn(_({_tag:`DisconnectRequested`})),F(`EnvironmentSupervisor.disconnect`)),fe=to(u,!0).pipe(Yn(_({_tag:`RetryRequested`})),F(`EnvironmentSupervisor.retryNow`));return yield*Kr(()=>yr(l).pipe(Yn(h))),Ip.of({target:n,state:f,session:p,prepared:m,connect:ue,disconnect:de,retryNow:fe})}),Rp=fe(od),zp=class extends nr()(`EnvironmentNotRegisteredError`,{environmentId:xe}){get message(){return`Environment ${this.environmentId} is not registered.`}},Bp=class extends nr()(`PlatformEnvironmentRemovalError`,{environmentId:xe}){get message(){return`Platform-managed environment ${this.environmentId} cannot be removed.`}},Vp=class extends A()(`@borgtools/client-runtime/connection/registry/EnvironmentRegistry`){},Hp=Mn(Vp,E(function*(){let e=yield*Li,t=yield*Td,n=yield*Ed,r=yield*Dd,i=yield*Od,a=yield*yd,o=yield*_d,s=yield*xd,c=yield*rp,l=yield*xp,d=yield*Uu,f=yield*t.list,p=yield*Xo(new Map(yield*xn(f,x(`EnvironmentRegistry.loadCatalogEntry`)(function*(e){let t=e._tag===`PrimaryConnectionTarget`?C():yield*a.get(e.connectionId);return[e.environmentId,{target:e,profile:t}]}),{concurrency:`unbounded`}))),m=yield*Xo(yield*s.status),h=yield*Xo(new Map),g=yield*bo(new Set),ee=yield*bo(new Map(f.map(e=>[e.environmentId,e]))),v=yield*bo(new Map),te=yield*sa(1),ne=yield*bo(!1),re=(e,t)=>Ci(te.withPermits(1)(E(function*(){let t=yield*yo(v),n=t.get(e);if(n!==void 0)return yield*to(v,new Map(t).set(e,{semaphore:n.semaphore,users:n.users+1})),n.semaphore;let r=yield*sa(1);return yield*to(v,new Map(t).set(e,{semaphore:r,users:1})),r})),e=>e.withPermits(1)(t),t=>te.withPermits(1)(xo(v,n=>{let r=n.get(e);if(r===void 0||r.semaphore!==t)return n;let i=new Map(n);return r.users===1?i.delete(e):i.set(e,{semaphore:t,users:r.users-1}),i}))).pipe(F(`EnvironmentRegistry.withLeaseLock`)),ae=x(`EnvironmentRegistry.getEntry`)(function*(e){let t=(yield*L(p)).get(e);return t===void 0?yield*new zp({environmentId:e}):t}),y=x(`EnvironmentRegistry.closeServiceScope`)(function*(e){let t=yield*L(h),n=t.get(e);if(n===void 0)return;let r=new Map(t);r.delete(e),yield*$o(h,r),yield*vi(n.scope,ui)}),oe=x(`EnvironmentRegistry.createServiceScope`)((t,n=t.target._tag!==`CloudConnectionTarget`)=>Oi(E(function*(){let r=t.target.environmentId,i=yield*ya(e),a=yield*Lp(t,{initiallyDesired:!1}).pipe(T(xd,s),T(rp,c),T(xp,l),wi(i),Bi(()=>vi(i,ui)));return n&&(yield*a.connect),yield*es(h,e=>{let n=new Map(e);return n.set(r,{entry:t,supervisor:a,scope:i}),n}),a}))),se=x(`EnvironmentRegistry.acquireSupervisor`)(function*(e){return yield*re(e,E(function*(){let t=yield*ae(e),n=(yield*L(h)).get(e);if(n!==void 0){if(An(n.entry,t))return n.supervisor;yield*y(e)}return yield*oe(t)}))}),ce=x(`EnvironmentRegistry.run`)(function*(e,t){return yield*T(t,Ip,yield*se(e))}),le=(e,t)=>ke(se(e).pipe(O(e=>_t(t,Ip,e)))),ue=(e,t)=>ga(or(L(p)),Zo(p)).pipe(ye(t=>ie(t.get(e))),hi((e,t)=>St(e)===St(t)),_(dt({onNone:()=>Si,onSome:()=>ke(se(e).pipe(pi({onFailure:()=>Si,onSuccess:e=>_t(t,Ip,e)})))}))),de=E(function*(){(yield*vo(ne,!0))||(yield*xn(f,e=>se(e.environmentId).pipe(me(`EnvironmentNotRegisteredError`,()=>j)),{concurrency:`unbounded`,discard:!0}))}).pipe(F(`EnvironmentRegistry.start`)),fe=x(`EnvironmentRegistry.installEntryLocked`)(function*(e,t){let n=e.target,r=(yield*L(p)).get(n.environmentId),i=(yield*L(h)).get(n.environmentId);t?.retainEquivalentRuntime===!0&&r!==void 0&&An(r,e)&&i!==void 0&&An(i.entry,e)||(yield*y(n.environmentId),yield*es(p,t=>{let r=new Map(t);return r.set(n.environmentId,e),r}),yield*oe(e,!0))}),pe=x(`EnvironmentRegistry.register`)(function*(e){let t=gd(e),r=t.target.environmentId;yield*re(r,E(function*(){(yield*yo(g)).has(r)||(yield*n.register(e),yield*xo(ee,t=>{let n=new Map(t);return n.set(r,e.target),n}),yield*fe(t))}))}),he=x(`EnvironmentRegistry.installPlatformRegistration`)(function*(e){let t=gd(e),r=t.target;yield*re(r.environmentId,E(function*(){yield*xo(g,e=>{let t=new Set(e);return t.add(r.environmentId),t}),e._tag===`BearerConnectionRegistration`&&(yield*o.put(e.target.connectionId,e.credential).pipe(li(e=>Qi(`Could not store the platform bearer credential.`,{environmentId:r.environmentId,error:e}))));let i=(yield*yo(ee)).get(r.environmentId);i!==void 0&&(yield*n.remove(i).pipe(Ge(()=>xo(ee,e=>{let t=new Map(e);return t.delete(r.environmentId),t})),li(e=>Qi(`Could not remove a persisted registration shadowed by a platform environment.`,{environmentId:r.environmentId,error:e})))),yield*fe(t,{retainEquivalentRuntime:!0})}))}),ge=x(`EnvironmentRegistry.removePlatformEnvironment`)(function*(e){yield*re(e,E(function*(){let t=(yield*L(p)).get(e);yield*xo(g,t=>{let n=new Set(t);return n.delete(e),n}),yield*y(e),yield*es(p,t=>{let n=new Map(t);return n.delete(e),n}),t!==void 0&&t.target._tag===`BearerConnectionTarget`&&(yield*o.remove(t.target.connectionId).pipe(li(t=>Qi(`Could not clear the platform bearer credential.`,{environmentId:e,error:t})))),yield*Br([r.clear(e).pipe(li(t=>Qi(`Could not clear cached environment data after removal.`,{environmentId:e,error:t}))),i.clear(e)],{concurrency:`unbounded`,discard:!0})}))}),_e=x(`EnvironmentRegistry.registerPlatform`)(function*(e){yield*he(e)}),ve=x(`EnvironmentRegistry.reconcilePlatform`)(function*(e){let t=new Set(e.map(e=>e.target.environmentId));yield*xn(yield*yo(g),e=>t.has(e)?j:ge(e),{discard:!0}),yield*xn(e,he,{discard:!0})}),be=x(`EnvironmentRegistry.remove`)(function*(e,t){return yield*re(e,E(function*(){if((yield*yo(g)).has(e))return yield*new Bp({environmentId:e});let o=(yield*ae(e)).target,s=o._tag===`PrimaryConnectionTarget`?C():yield*a.get(o.connectionId);t!==void 0&&(yield*i.clear(e,t)),yield*n.remove(o),yield*xo(ee,t=>{let n=new Map(t);return n.delete(e),n}),yield*y(e),yield*es(p,t=>{let n=new Map(t);return n.delete(e),n}),yield*Br([r.clear(e).pipe(li(t=>Qi(`Could not clear cached environment data after removal.`,{environmentId:e,error:t}))),t===void 0?i.clear(e):j],{concurrency:`unbounded`,discard:!0}),o._tag===`SshConnectionTarget`&&u(s)&&Rp(s.value)&&(yield*d.disconnect(s.value.target).pipe(wn(t=>Qi(`Could not disconnect the managed SSH environment.`,{environmentId:e,error:t})),Vn))}))}),xe=e=>se(e).pipe(I(e=>e.target._tag===`CloudConnectionTarget`?L(e.state).pipe(I(t=>t.desired?e.retryNow:e.connect)):e.retryNow),me(`EnvironmentNotRegisteredError`,()=>j),F(`EnvironmentRegistry.retryNow`)),Se=x(`EnvironmentRegistry.state`)(function*(e){return yield*L((yield*se(e)).state)});return yield*Kr(()=>L(h).pipe(I(e=>xn(e.values(),e=>vi(e.scope,ui),{concurrency:`unbounded`,discard:!0})))),yield*s.changes.pipe(Ce(e=>$o(m,e)),D),Vp.of({entries:p,networkStatus:m,start:de,register:pe,registerPlatform:_e,reconcilePlatform:ve,remove:be,retryNow:xe,state:Se,stateChanges:e=>ue(e,ke(Ip.pipe(O(e=>Zo(e.state))))),run:ce,runStream:le,followStream:ue})})),Up=class extends nr()(`EnvironmentRpcUnavailableError`,{environmentId:P,message:P}){},Wp=class extends fr(`@borgtools/client-runtime/rpc/EnvironmentRpcRequestObserver`,{defaultValue:()=>({observe:()=>b(j)})}){},Gp=class extends fr(`@borgtools/client-runtime/rpc/EnvironmentRpcSubscriptionObserver`,{defaultValue:()=>({observe:()=>b(j)})}){},Kp=fe(Qc),qp=x(`EnvironmentRpc.currentSession`)(function*(){let e=yield*Ip;return yield*L(e.session).pipe(I(dt({onNone:()=>S(new Up({environmentId:e.target.environmentId,message:`${e.target.label} is not connected.`})),onSome:b})))}),Jp=x(`EnvironmentRpc.request`)(function*(e,t){let n=yield*Ip;yield*Ta({"environment.id":n.target.environmentId,"rpc.method":e});let r=yield*qp(),i=yield*Wp,a=r.client[e],o=yield*i.observe({environmentId:n.target.environmentId,method:e});return yield*a(t).pipe(Te(o))});function Yp(e,t){return ke(qp().pipe(O(n=>{let r=n.client[e];return r(t)}))).pipe(Qe(`EnvironmentRpc.runStream`,{attributes:{"rpc.method":e}}))}function Xp(e,t,n){return ke(E(function*(){let r=yield*Ip,i=yield*Gp,a=Zo(r.session);return(n?.resubscribe===void 0?a:si(a,n.resubscribe.pipe(Ct(()=>L(r.session))))).pipe(_(dt({onNone:()=>Si,onSome:a=>{let o=e===k.subscribeServerConfig?a.subscribeServerConfig:a.client[e],s=()=>$a(()=>ke(E(function*(){let c=yield*t(a),l=yield*i.observe({environmentId:r.target.environmentId,method:e,input:c});return o(c).pipe(Gr(l),ra(t=>{let i=t.reasons.length>0&&t.reasons.every(e=>e._tag===`Fail`);if(i&&t.reasons.every(e=>e._tag===`Fail`&&Kp(e.error)))return or(Qi(`Durable RPC subscription lost its transport; waiting for the next session.`,{cause:yn(t),method:e,environmentId:r.target.environmentId})).pipe(Hi);if(i&&n?.onExpectedFailure!==void 0){let e=or(n.onExpectedFailure(t)).pipe(Hi);return n.retryExpectedFailureAfter===void 0?e:e.pipe(ga(or(_n(n.retryExpectedFailureAfter)).pipe(Hi)),ga(s()))}return Kn(t)}))})));return s()}})))})).pipe(Qe(`EnvironmentRpc.subscribe`,{attributes:{"rpc.method":e}}))}function Zp(e,t,n){return Xp(e,()=>b(t),n)}E(function*(){return yield*(yield*qp()).initialConfig}).pipe(F(`EnvironmentRpc.config`));async function Qp(e){try{return await e()}catch(e){return us(f(e))}}function $p(){let e=new WeakMap,t=t=>{let n=e.get(t);if(n!==void 0)return n;let r={serial:new Map,singleFlight:new Map,latest:new Map};return e.set(t,r),r};return{schedule:(e,n,r,i)=>{if(n.mode===`parallel`)return i();let a=n.key(r),o=t(e);if(n.mode===`singleFlight`){let e=o.singleFlight.get(a);if(e!==void 0)return e;let t=i();return o.singleFlight.set(a,t),t.then(()=>{o.singleFlight.get(a)===t&&o.singleFlight.delete(a)},()=>{o.singleFlight.get(a)===t&&o.singleFlight.delete(a)}),t}if(n.mode===`serial`){let e=o.serial.get(a),t=e===void 0?i():e.then(i,i);return o.serial.set(a,t),t.then(()=>{o.serial.get(a)===t&&o.serial.delete(a)},()=>{o.serial.get(a)===t&&o.serial.delete(a)}),t}let s=o.latest.get(a);s===void 0&&(s={running:!1,pending:void 0},o.latest.set(a,s));let c=s,l=new Promise(e=>{if(c.pending===void 0){c.pending={execute:i,resolve:[e]};return}c.pending.execute=i,c.pending.resolve.push(e)});return c.running||(c.running=!0,(async()=>{for(;c.pending!==void 0;){let e=c.pending;c.pending=void 0;let t;try{t=await e.execute()}catch(e){t=us(f(e))}for(let n of e.resolve)n(t)}c.running=!1,o.latest.get(a)===c&&o.latest.delete(a)})()),l}}}function em(e,t,n,r,i){return E(function*(){let a=yield*ii(),o=yield*Ga(o=>t.schedule(e,n,r,async()=>{let e=await Ot(a)(i,{signal:o});return he(e)?cs(e.value):us(e.cause)}));return o._tag===`Success`?o.value:yield*Bt(o.cause)})}async function tm(e,t,n,r={},i=console){let a=await Qp(()=>t.run(e,n));return lm(a,{...r,label:r.label??t.label},i),a}function nm(e,t){return e._tag===`Success`?cs(t(e.value)):us(e.cause)}function rm(e){return e._tag===`Failure`&&Ue(e.cause)}function im(e){return $e(e.cause)}async function am(e){try{return ns(await e())}catch(e){return us(f(e))}}async function om(e,t={},n=console){let r=await am(e);return lm(r,t,n),r}async function sm(e,t,n={},r=console){let i=fn(E(function*(){return yield*Ts(e,t),n.refresh&&(yield*M(()=>{let n=e.get(t);n._tag!==`Initial`&&!n.waiting&&e.refresh(t)})),yield*ws(e,t,{suspendOnWaiting:!0})}));return om(()=>gt(i),n,r)}function cm(e,t){let n=t.scheduler??$p(),r=t.concurrency??{mode:`parallel`};return{label:t.label,run:(i,a)=>Qp(()=>n.schedule(i,r,a,()=>sm(i,e.atom(t.execute(a,i)).pipe(B(t.label)),{reportDefect:!1,reportFailure:!1})))}}function lm(e,t={},n=console){if(ss(e)||Ue(e.cause))return;let r=t.label??`atom command`;kt(e.cause)?(t.reportDefect??!0)&&n.error(`[atom-command] ${r} defected`,e.cause):(t.reportFailure??!0)&&n.warn(`[atom-command] ${r} failed`,e.cause)}async function um(e){try{return cs(await e())}catch(e){return us(f(e))}}function dm(e){return JSON.stringify([e.environmentId,e.input])}function fm(e){let t=JSON.parse(e);return{environmentId:xe.make(t[0]),input:t[1]}}function pm(e,t){return Vp.pipe(I(n=>n.run(e,t)))}function mm(e,t){return ke(Vp.pipe(O(n=>n.runStream(e,t))))}function hm(e,t){return ke(Vp.pipe(O(n=>n.followStream(e,t))))}function gm(e,t){let n=z(t=>e.atom(hm(t,ke(Ip.pipe(O(e=>Zo(e.state).pipe(Ki(Zo(e.session))))))),{initialValue:null})),r=z(r=>{let i=fm(r),a=t.idleTtlMs??5*6e4,o=e.atom(e=>{let r=Qt(gs(e(n(i.environmentId))));if(r===null)return Nr;let[a,o]=r;switch(a.phase){case`connected`:return u(o)?pm(i.environmentId,t.execute(i.input)):Nr;case`connecting`:case`backoff`:return Nr;case`available`:case`offline`:case`blocked`:return a.lastFailure===null?S(new Up({environmentId:i.environmentId,message:`Environment ${i.environmentId} is ${a.phase===`available`?`not connected`:a.phase}.`})):S(a.lastFailure)}}).pipe(Cc({staleTime:t.staleTimeMs??3e4,revalidateOnMount:!0}),Gs(a));return(t.refreshIntervalMs===void 0?o:o.pipe(Sc(t.refreshIntervalMs))).pipe(Gs(a),B(`${t.label}:${r}`))});return e=>r(dm(e))}function _m(e,t){let n=z(n=>{let r=fm(n);return e.atom(hm(r.environmentId,t.subscribe(r.input))).pipe(Gs(t.idleTtlMs??5*6e4),B(`${t.label}:${n}`))});return e=>n(dm(e))}function vm(e,t){return cm(e,{label:t.label,...t.scheduler===void 0?{}:{scheduler:t.scheduler},...t.concurrency===void 0?{}:{concurrency:t.concurrency},execute:(e,n)=>pm(e.environmentId,t.execute(e.input,n,e.environmentId))})}function ym(e,t){return gm(e,{label:t.label,...t.staleTimeMs===void 0?{}:{staleTimeMs:t.staleTimeMs},...t.idleTtlMs===void 0?{}:{idleTtlMs:t.idleTtlMs},...t.refreshIntervalMs===void 0?{}:{refreshIntervalMs:t.refreshIntervalMs},execute:e=>Jp(t.tag,e)})}function bm(e,t){return _m(e,{label:t.label,...t.idleTtlMs===void 0?{}:{idleTtlMs:t.idleTtlMs},subscribe:e=>{let n=Zp(t.tag,e);return t.transform===void 0?n:t.transform(n)}})}function xm(e,t){return vm(e,{label:t.label,...t.scheduler===void 0?{}:{scheduler:t.scheduler},...t.concurrency===void 0?{}:{concurrency:t.concurrency},execute:(e,n,r)=>{let i={environmentId:r,input:e};return Jp(t.tag,e).pipe(Ge(()=>t.onSuccess?.(i,n)??j),Te(t.onSettled?.(i,n)??j))}})}var Sm=`token`,Cm=`host`,wm=`label`,Tm=new Set([`http:`,`https:`,`ws:`,`wss:`]),Em=e=>new URLSearchParams(e.hash.startsWith(`#`)?e.hash.slice(1):e.hash),Dm=class extends nr()(`RemoteBackendUrlMissingError`,{}){get message(){return`Enter a backend URL.`}},Om=class extends nr()(`RemotePairingUrlInvalidError`,{cause:ri(De()),protocol:ri(P)}){get message(){return`Pairing URL is invalid.`}},km=class extends nr()(`RemoteBackendUrlInvalidError`,{source:Cn([`direct-host`,`hosted-pairing-host`]),cause:ri(De()),protocol:ri(P)}){get message(){return`Backend URL is invalid.`}},Am=class extends nr()(`RemotePairingTokenMissingError`,{host:P}){get message(){return`Pairing URL is missing its token.`}},jm=class extends nr()(`RemotePairingCodeMissingError`,{host:P}){get message(){return`Enter a pairing code.`}};_a([Dm,Om,km,Am,jm]);var Mm=e=>Tm.has(e.protocol),Nm=(e,t)=>{let n=e.trim();if(!n)throw new Dm;let r=n.replace(/^\/+/,``),i=/^[a-zA-Z][a-zA-Z\d+-]*:\/\//.test(r)?r:`https://${r}`,a;try{a=new URL(i)}catch(e){throw new km({source:t,cause:e})}if(!Mm(a))throw new km({source:t,protocol:a.protocol});return Pm(a),a.search=``,a.hash=``,a},Pm=e=>{let t=e.pathname.replace(/\/+$/u,``)||`/`;e.pathname=t===`/pair`?`/`:`${t===`/`?``:t}/`},Fm=e=>{let t=new URL(e.toString());return t.protocol===`ws:`?t.protocol=`http:`:t.protocol===`wss:`&&(t.protocol=`https:`),Pm(t),t.search=``,t.hash=``,t.toString()},Im=e=>{let t=new URL(Fm(e));return t.protocol===`http:`?t.protocol=`ws:`:t.protocol===`https:`&&(t.protocol=`wss:`),t.toString()},Lm=e=>{let t=Em(e).get(Sm)?.trim()??``;if(t.length>0)return t;let n=e.searchParams.get(Sm)?.trim()??``;return n.length>0?n:null},Rm=e=>{let t=new URL(e.toString()),n=Em(t);return n.has(Sm)&&(n.delete(Sm),t.hash=n.toString()),t.searchParams.delete(Sm),t},zm=(e,t)=>{let n=new URL(e.toString());return n.searchParams.delete(Sm),n.hash=new URLSearchParams([[Sm,t]]).toString(),n},Bm=e=>{let t=e.searchParams.get(Cm)?.trim()??``,n=Lm(e)?.trim()??``,r=e.searchParams.get(wm)?.trim()??``;return!t||!n?null:{host:t,token:n,label:r}},Vm=e=>{let t=e.pairingUrl?.trim()??``;if(t.length>0){let e;try{e=new URL(t)}catch(e){throw new Om({cause:e})}if(!Mm(e))throw new Om({protocol:e.protocol});let n=Bm(e);if(n){let e=Nm(n.host,`hosted-pairing-host`);return{credential:n.token,httpBaseUrl:Fm(e),wsBaseUrl:Im(e)}}let r=Lm(e)??``;if(!r)throw new Am({host:e.host});return{credential:r,httpBaseUrl:Fm(e),wsBaseUrl:Im(e)}}let n=e.host?.trim()??``,r=e.pairingCode?.trim()??``;if(!n)throw new Dm;let i=Nm(n,`direct-host`);if(!r)throw new jm({host:i.host});return{credential:r,httpBaseUrl:Fm(i),wsBaseUrl:Im(i)}};function Hm(e){return e.entries.filter(t=>t.target._tag===`CloudConnectionTarget`&&t.target.connectionId===e.registeredConnectionId&&t.target.environmentId!==e.registeredEnvironmentId).map(e=>e.target.environmentId)}var Um=`http://127.0.0.1:3773`,Wm=class extends A()(`@borgtools/client-runtime/connection/onboarding/ConnectionOnboarding`){},Gm=x(`clientRuntime.connection.onboarding.resolvePairingTarget`)(function*(e){return yield*ua({try:()=>Vm(e),catch:e=>new Y({reason:`configuration`,detail:e instanceof Error?e.message:`The pairing details are invalid.`})})}),Km=x(`clientRuntime.connection.onboarding.preparePairingRegistration`)(function*(e){let t=yield*Gm(e),n=yield*Vu,r=yield*go({httpBaseUrl:t.httpBaseUrl,...e.awaitRouting===!0?{awaitRouting:!0}:{}}).pipe(N(Qd)),i=t.credential.split(`.`).length===3?{access_token:t.credential}:yield*zd({httpBaseUrl:t.httpBaseUrl,credential:t.credential,scopes:n.scopes,clientMetadata:n.metadata}).pipe(N(Qd)),a=`bearer:${r.environmentId}`;return new fd({target:new qu({environmentId:r.environmentId,label:r.label,connectionId:a}),profile:new id({connectionId:a,environmentId:r.environmentId,label:r.label,httpBaseUrl:t.httpBaseUrl,wsBaseUrl:t.wsBaseUrl}),credential:new ld({token:i.access_token})})}),qm=x(`clientRuntime.connection.onboarding.registerPairingConnection`)(function*(e){let t=yield*Km(e);return yield*(yield*Vp).register(t),t.target.environmentId}),Jm=x(`clientRuntime.connection.onboarding.registerCloudPairingConnection`)(function*(e){let t=yield*Vp,n=yield*Km({...e,awaitRouting:!0}),r=`cloud:${e.sessionId}`,i=new pd({target:new Ju({environmentId:n.target.environmentId,label:e.label??n.target.label,connectionId:r}),profile:new ad({connectionId:r,environmentId:n.profile.environmentId,label:e.label??n.profile.label,httpBaseUrl:n.profile.httpBaseUrl,wsBaseUrl:n.profile.wsBaseUrl}),credential:n.credential});return yield*t.register(i),yield*xn(Hm({entries:[...(yield*L(t.entries)).values()],registeredEnvironmentId:i.target.environmentId,registeredConnectionId:r}),e=>t.remove(e,i.target.environmentId).pipe(Fa(()=>S(new wd({operation:`clear-environment`,message:`Could not reconnect this Cloud workspace without losing unsent input. Your input and the old connection have been kept; resolve any draft conflict and retry.`})))),{discard:!0}),i.target.environmentId}),Ym=fe(ld),Xm=fe(id),Zm=x(`clientRuntime.connection.onboarding.updateBearerConnection`)(function*(e){let t=yield*Vp,n=yield*_d,r=(yield*L(t.entries)).get(e.environmentId),i=r?.target._tag===`BearerConnectionTarget`?yield*n.get(r.target.connectionId):C(),a=yield*Qm({input:e,entry:ie(r),credential:i});yield*t.register(a)}),Qm=x(`clientRuntime.connection.onboarding.prepareBearerConnectionUpdate`)(function*(e){let t=Qt(e.entry);if(t==null||t.target._tag!==`BearerConnectionTarget`||oi(t.profile)||!Xm(t.profile.value))return yield*new Y({reason:`configuration`,detail:`Only saved bearer environments can be edited.`});let n=e.credential;if(oi(n)||!Ym(n.value))return yield*new Y({reason:`authentication`,detail:`The saved bearer credential is unavailable.`});let r=e.input.label.trim();if(r===``)return yield*new Y({reason:`configuration`,detail:`Environment label cannot be empty.`});let i=yield*ua({try:()=>so(e.input.httpBaseUrl),catch:e=>new Y({reason:`configuration`,detail:e instanceof Error?e.message:`The environment URL is invalid.`})}),a=t.target.connectionId;return new fd({target:new qu({environmentId:e.input.environmentId,label:r,connectionId:a}),profile:new id({connectionId:a,environmentId:e.input.environmentId,label:r,httpBaseUrl:i,wsBaseUrl:ao(i)}),credential:n.value})}),$m=x(`clientRuntime.connection.onboarding.prepareSshRegistration`)(function*(e){let t=yield*(yield*Uu).provision(e.target),n=`ssh:${t.environmentId}`,r=e.label?.trim()||t.label||t.bootstrap.target.alias;return new md({target:new Yu({environmentId:t.environmentId,label:r,connectionId:n}),profile:new od({connectionId:n,environmentId:t.environmentId,label:r,target:t.bootstrap.target})})}),eh=x(`clientRuntime.connection.onboarding.registerSshConnection`)(function*(e){let t=yield*$m(e);return yield*(yield*Vp).register(t),t.target.environmentId}),th=x(`clientRuntime.connection.onboarding.prepareBorgRegistration`)(function*(e){let t=yield*Vu,n=yield*Wu,r=Se(yield*ii()),i=jf({borgApiUrl:e.borgApiUrl,deviceId:e.deviceId,openTunnel:()=>r(n.openTunnel())}),a=yield*go({httpBaseUrl:Um}).pipe(T(_o,i),N(Qd)),o=yield*zd({httpBaseUrl:Um,credential:e.pairingCode,scopes:t.scopes,clientMetadata:t.metadata}).pipe(T(_o,i),N(Qd)),s=`borg:${a.environmentId}`,c=e.label?.trim()||a.label;return new hd({target:new Xu({environmentId:a.environmentId,label:c,connectionId:s,deviceId:e.deviceId}),profile:new sd({connectionId:s,environmentId:a.environmentId,label:c,borgApiUrl:e.borgApiUrl,deviceId:e.deviceId}),credential:new ld({token:o.access_token})})}),nh=x(`clientRuntime.connection.onboarding.registerBorgConnection`)(function*(e){let t=yield*th(e);return yield*(yield*Vp).register(t),t.target.environmentId}),rh=Mn(Wm,E(function*(){let e=yield*Vp,t=yield*Vu,n=yield*_o,r=yield*Uu,i=yield*Wu,a=yield*_d;return Wm.of({registerPairing:r=>qm(r).pipe(T(Vp,e),T(Vu,t),T(_o,n)),registerCloudPairing:r=>Jm(r).pipe(T(Vp,e),T(Vu,t),T(_o,n)),registerSsh:t=>eh(t).pipe(T(Vp,e),T(Uu,r)),registerBorg:r=>nh(r).pipe(T(Vp,e),T(Vu,t),T(Wu,i),T(_o,n)),registerPrepared:t=>e.register(t).pipe(cr(t.target.environmentId)),updateBearer:t=>Zm(t).pipe(T(Vp,e),T(_d,a))})})),ih=class extends A()(`@borgtools/client-runtime/platform/source/PlatformConnectionSource`){},ah=Kf.pipe(da(pf));function oh(e){let t=ip.pipe(da(Ar(ah,np(e)))),n=Hp.pipe(da(t)),r=Ar(n,rh.pipe(da(n)));return zn(E(function*(){let e=yield*Vp,t=yield*ih;yield*e.start,yield*t.registrations.pipe(Ce(e.reconcilePlatform),D)}).pipe(F(`clientRuntime.connection.application.start`))).pipe(Ai(r))}oh({});function sh(e){switch(e.phase){case`available`:return{phase:`available`,error:null,traceId:null};case`offline`:return{phase:`offline`,error:null,traceId:null};case`connecting`:return{phase:e.attempt<=1&&e.lastFailure===null?`connecting`:`reconnecting`,error:e.lastFailure?.message??null,traceId:e.lastFailure?.traceId??null};case`connected`:return{phase:`connected`,error:null,traceId:null};case`backoff`:return{phase:`reconnecting`,error:e.lastFailure?.message??null,traceId:e.lastFailure?.traceId??null};case`blocked`:return{phase:`error`,error:e.lastFailure?.message??null,traceId:e.lastFailure?.traceId??null}}}function ch(e){switch(e.phase){case`available`:return`Available`;case`offline`:return`Offline`;case`connecting`:return`Connecting...`;case`reconnecting`:return e.error?`Failed to connect. Reconnecting... Reason: ${e.error}`:`Reconnecting...`;case`connected`:return`Connected`;case`error`:return e.error?`Connection failed. Reason: ${e.error}`:`Connection failed`}}function lh(e){return e.phase===`reconnecting`&&e.error?`Failed to connect. Reconnecting...`:ch({...e,error:null})}function uh(e){return sh(e)}function dh(e){switch(e.target._tag){case`PrimaryConnectionTarget`:return e.target.httpBaseUrl;case`BearerConnectionTarget`:return u(e.profile)&&e.profile.value._tag===`BearerConnectionProfile`?e.profile.value.httpBaseUrl:null;case`CloudConnectionTarget`:return u(e.profile)&&e.profile.value._tag===`CloudConnectionProfile`?e.profile.value.httpBaseUrl:null;case`SshConnectionTarget`:return u(e.profile)&&e.profile.value._tag===`SshConnectionProfile`?`${e.profile.value.target.username}@${e.profile.value.target.hostname}`:null;case`BorgConnectionTarget`:return u(e.profile)&&e.profile.value._tag===`BorgConnectionProfile`?`Through Borg · ${e.profile.value.deviceId.slice(0,8)}`:null}}var fh=(e,t)=>e===null?t.pipe(T(wo,{credentials:`include`})):t,ph=(e,t,n,r)=>E(function*(){if(e===null)return{};if(e._tag===`Bearer`)return{authorization:`Bearer ${e.token}`};if(oi(r))return yield*new io({message:`No DPoP signer is available to authorize the environment request.`,cause:e._tag});let i=yield*r.value.createProof({method:t,url:n,accessToken:e.accessToken}).pipe(N(e=>new io({message:`Could not create the environment request authorization proof.`,cause:e})));return{authorization:`DPoP ${e.accessToken}`,dpop:i}}),mh=6e3,hh=x(`clientRuntime.state.fetchEnvironmentShellSnapshot`)(function*(e){let t=uo(e.prepared.httpBaseUrl,`/api/orchestration/shell`),n=yield*fo(e.prepared.httpBaseUrl),r=yield*ph(e.prepared.httpAuthorization,`GET`,t,e.signer);return yield*ro(t,e.timeoutMs??mh,fh(e.prepared.httpAuthorization,n.orchestration.shellSnapshot({headers:r})))}),gh=class extends A()(`@borgtools/client-runtime/state/shellSnapshotHttp/ShellSnapshotLoader`){},_h=Mn(gh,E(function*(){let e=yield*_o,t=yield*an(ef);return gh.of({load:n=>hh({prepared:n,signer:t}).pipe(O(w),T(_o,e),Fa(e=>Qi(`Could not load the environment shell snapshot over HTTP; using the socket snapshot instead.`).pipe(Ya({cause:yn(e)}),cr(C()))))})}));function vh(e,t){if(t.sequence<=e.snapshotSequence)return e;switch(t.kind){case`project-upserted`:{let n=e.projects.some(e=>e.id===t.project.id)?nt(e.projects,e=>e.id===t.project.id?t.project:e):We(e.projects,t.project);return{...e,projects:n,snapshotSequence:t.sequence}}case`project-removed`:return{...e,projects:eo(e.projects,e=>e.id!==t.projectId),snapshotSequence:t.sequence};case`thread-upserted`:{let n=e.threads.some(e=>e.id===t.thread.id)?nt(e.threads,e=>e.id===t.thread.id?t.thread:e):We(e.threads,t.thread);return{...e,threads:n,snapshotSequence:t.sequence}}case`thread-removed`:return{...e,threads:eo(e.threads,e=>e.id!==t.threadId),snapshotSequence:t.sequence};default:return e}}function yh(e,t){return{...t,environmentId:e}}function bh(e,t){return{...t,environmentId:e}}function xh(e,t){return{...t,environmentId:e}}function Sh(e){return{openInEditor:xm(e,{label:`environment-data:shell:open-in-editor`,tag:k.shellOpenInEditor}),captureLoopbackRedirect:xm(e,{label:`environment-data:shell:capture-loopback-redirect`,tag:k.shellCaptureLoopbackRedirect}),cancelLoopbackRedirect:xm(e,{label:`environment-data:shell:cancel-loopback-redirect`,tag:k.shellCancelLoopbackRedirect})}}function Ch(e){return z(t=>R(n=>dt(gs(n(e(t))),{onNone:()=>null,onSome:e=>Qt(e.snapshot)})).pipe(B(`environment-snapshot:${t}`)))}var wh={snapshot:C(),status:`empty`,error:C()};function Th(e){return u(e)?`cached`:`empty`}var Eh=`Could not synchronize environment data.`,Dh=x(`EnvironmentShellState.make`)(function*(){let e=yield*Ip,t=yield*Dd,n=yield*gh,r=yield*an(xp),i=e.target.environmentId,a=yield*t.loadShell(i).pipe(li(e=>Qi(`Could not load cached environment shell.`).pipe(Ya({environmentId:i,...hp(e)}),cr(C())))),o=yield*Xo({snapshot:a,status:Th(a),error:C()}),s=yield*bo(!1),c=yield*bo(null),l=yield*bo(null),f=yield*Mr(1),p=x(`EnvironmentShellState.persist`)(function*(e){yield*t.saveShell(i,e).pipe(li(e=>Qi(`Could not persist environment shell cache.`).pipe(Ya({environmentId:i,...hp(e)}))))});yield*ae(f).pipe(Cr(`500 millis`),Ce(p),D);let m=to(s,!1).pipe(Yn(es(o,e=>({...e,status:Th(e.snapshot)})))),h=es(o,e=>({...e,status:`synchronizing`,error:C()})),g=es(o,e=>e.status===`live`?e:{...e,status:`synchronizing`,error:C()}),_=e=>to(s,!1).pipe(Yn(Qi(`Could not synchronize the environment shell.`)),Ya({environmentId:i,...hp(e)}),Yn(es(o,e=>({...e,status:Th(e.snapshot),error:w(Eh)})))),ee=x(`EnvironmentShellState.applyItem`)(function*(e){if(e.kind===`synchronized`){yield*to(s,!1),yield*es(o,e=>u(e.snapshot)?{...e,status:`live`,error:C()}:e);return}let t=yield*L(o),n=e.kind===`snapshot`?e.snapshot:dt(t.snapshot,{onNone:()=>null,onSome:t=>e.sequence>t.snapshotSequence?vh(t,e):t});if(n===null)return;let r=yield*yo(s);if(yield*$o(o,{snapshot:w(n),status:r?`synchronizing`:`live`,error:C()}),e.kind===`snapshot`){let e=yield*yo(l);e!==null&&(yield*to(c,e))}yield*dr(f,n)}),v=dt(r,{onNone:()=>d,onSome:e=>e.changes.pipe(Ca(bp))});return yield*h,yield*D(Xp(Sn.subscribeShell,x(`EnvironmentShellState.makeSubscribeInput`)(function*(t){yield*to(l,t);let r=yield*t.initialConfig.pipe(O(e=>e.shellResumeCompletionMarker===!0),Sa(()=>!1));yield*to(s,r),yield*h;let i=(yield*yo(c))===t,a=i,d=yield*L(o);if(!i||oi(d.snapshot)){let t=yield*L(e.prepared).pipe(I(dt({onSome:b,onNone:()=>Zo(e.prepared).pipe(Ca(u),ye(e=>e.value),ot,O(ve))}))),r=yield*n.load(t);u(r)&&(yield*ee({kind:`snapshot`,snapshot:r.value}),a=!0,d=yield*L(o))}return!a||oi(d.snapshot)?r?{requestCompletionMarker:!0}:{}:(r||(yield*es(o,e=>({...e,status:`live`,error:C()}))),{afterSequence:d.snapshot.value.snapshotSequence,...r?{requestCompletionMarker:!0}:{}})}),{onExpectedFailure:e=>_($e(e)),retryExpectedFailureAfter:`250 millis`,resubscribe:v}).pipe(Ce(ee))),yield*Zo(e.state).pipe(Ce(e=>{switch(td(e)){case`synchronizing`:return h;case`disconnected`:return m;case`ready`:return g}}),D),o});function Oh(e){return hm(e,ke(Dh().pipe(O(Zo))))}var kh=Object.freeze({hasSnapshot:!1,hasSynchronizingShell:!1,hasCachedShell:!1,hasLiveShell:!1,firstError:null,latestSnapshotUpdatedAt:null}),Ah=new Map;function jh(e,t){return e.hasSnapshot===t.hasSnapshot&&e.hasSynchronizingShell===t.hasSynchronizingShell&&e.hasCachedShell===t.hasCachedShell&&e.hasLiveShell===t.hasLiveShell&&e.firstError===t.firstError&&e.latestSnapshotUpdatedAt===t.latestSnapshotUpdatedAt}function Mh(e,t){if(e.size!==t.size)return!1;for(let[n,r]of e)if(t.get(n)!==r)return!1;return!0}function Nh(e){let t=kh;return R(n=>{let r=!1,i=!1,a=!1,o=!1,s=null,c=null;for(let t of n(e.catalogValueAtom).entries.keys()){let l=n(e.shellStateValueAtom(t));if(i||=l.status===`synchronizing`,a||=l.status===`cached`,o||=l.status===`live`,s===null&&(s=Qt(l.error)),oi(l.snapshot))continue;r=!0;let u=l.snapshot.value.updatedAt;(c===null||u>c)&&(c=u)}let l={hasSnapshot:r,hasSynchronizingShell:i,hasCachedShell:a,hasLiveShell:o,firstError:s,latestSnapshotUpdatedAt:c};return jh(t,l)||(t=l),t}).pipe(B(`environment-shell-summary`))}function Ph(e){let t=Ah;return R(n=>{let r=new Map;for(let t of n(e.catalogValueAtom).entries.keys()){let i=n(e.serverConfigValueAtom(t));i!==null&&r.set(t,i)}return Mh(t,r)||(t=r),t}).pipe(B(`environment-server-configs`))}function Fh(e){let t=z(t=>e.atom(Oh(t),{initialValue:wh}));return{stateAtom:t,stateValueAtom:z(e=>R(n=>ja(gs(n(t(e))),()=>wh)).pipe(B(`environment-shell-state-value:${e}`)))}}function Ih(e){if(typeof e==`number`)return Number.isSafeInteger(e)&&e!==0;if(typeof e!=`string`)return!1;let t=e.trim();if(!/^-?[0-9]+$/u.test(t))return!1;let n=Number(t);return Number.isSafeInteger(n)&&n!==0}var Lh=`Borg Cloud is having trouble starting sessions right now. Try again in a few minutes.`;function Rh(e,t){if(t?.code===`quota_reached`&&t.limit!==void 0){let e=t.running??t.limit;return`Your organization is already running ${e} cloud ${e===1?`session`:`sessions`}, the most it can run at once. Stop one and try again.`}return t?.code===`stopping`?`This session is still shutting down. Give it a moment and try again.`:t?.code===`execution_worker_unavailable`?Lh:t?.code===`already_running`?`This session already has a cloud runtime.`:`Borg cloud execution request failed (${e}).`}var zh=class extends Error{status;code;constructor(e,t){super(Rh(e,t)),this.name=`CloudExecutionClientError`,this.status=e,this.code=t?.code}};function Bh(e){if(e instanceof zh)return e.status;if(!(e instanceof Error))return null;let t=e.message.match(/\[cloud_http:(\d{3})\]/u);return t?Number(t[1]):null}async function Vh(e){try{let t=await e.json();return new zh(e.status,{...typeof t.code==`string`?{code:t.code}:{},...typeof t.detail==`string`?{detail:t.detail}:{},...typeof t.running==`number`?{running:t.running}:{},...typeof t.limit==`number`?{limit:t.limit}:{}})}catch{return new zh(e.status)}}var Hh=/^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;function Uh(e){if(!Hh.test(e))throw new zh(400);return e}function Wh(e){let t=e.fetch??globalThis.fetch,n=e.apiUrl.replace(/\/$/u,``);if(!Ih(e.customerId))throw new zh(400);let r=String(e.customerId),i=async(r,i)=>{let a=await e.getAccessToken();if(!a)throw new zh(401);let o=await t(`${n}${r}`,{...i,...i?.signal??e.signal?{signal:i?.signal??e.signal}:{},headers:{authorization:`Bearer ${a}`,"content-type":`application/json`}});if(!o.ok)throw await Vh(o);return o.json()};return{createWorkspace:(e,t)=>i(`/api/v1/customers/${r}/workspaces/`,{method:`POST`,body:JSON.stringify({name:e,repository_provider:`other`,repository_identifier:t,repository_url:`https://example.invalid/local-cloud`,default_branch:`main`,metadata:{localCloud:!0}})}),listSessions:()=>i(`/api/v1/customers/${r}/sessions/`),createSession:(e,t,n)=>i(`/api/v1/customers/${r}/sessions/`,{method:`POST`,body:JSON.stringify({workspace:Uh(e),title:t,model:pt,executor_kind:n?.executorKind??`cloud`,...n?.executorDevice?{executor_device:Uh(n.executorDevice)}:{},metadata:{localCloud:!0}})}),start:e=>i(`/api/v1/sessions/${Uh(e)}/execution/`,{method:`POST`,body:`{}`}),pause:e=>i(`/api/v1/sessions/${Uh(e)}/execution/`,{method:`DELETE`}),resume:e=>i(`/api/v1/sessions/${Uh(e)}/execution/`,{method:`POST`,body:`{}`}),session:e=>i(`/api/v1/sessions/${Uh(e)}/`),localHandoff:e=>i(`/api/v1/sessions/${Uh(e)}/local-connection/`,{method:`POST`,body:`{}`}),spawnDeviceSession:async e=>{let t=await i(`/api/v1/customers/${r}/sessions/`,{method:`POST`,body:JSON.stringify({workspace:Uh(e.workspaceId),title:e.title,model:pt,executor_kind:`device`,executor_device:Uh(e.deviceId)})});await i(`/api/v1/sessions/${t.id}/execution/`,{method:`POST`,body:`{}`});let n=e.maxPollAttempts??60;for(let r=0;r<n;r+=1){e.signal?.throwIfAborted();let n=await i(`/api/v1/sessions/${t.id}/`),r=n.spawn_pairing_code;if(n.status===`failed`)throw Error(`That machine could not start the session.`);if(n.status===`running`&&typeof r==`string`&&r.length>0)return{session:n,pairingCode:r,environmentId:n.executor_device??e.deviceId};await e.sleep(1e3)}throw Error(`That machine did not accept the session in time.`)}}}var Gh=Qr(2),Kh=$n(30),qh=`cloud:`,Jh=fe(ld),Yh=e=>zn(E(function*(){let t=yield*Vp,n=yield*_d,r=yield*gf,i=yield*Jf,a=t=>E(function*(){let n=e(),r=yield*i.current;if(!n||oi(r)||r.value.kind!==`jwt`)return C();let a=r.value.token,o=Ri(a);if(!o)return C();let s=Wh({apiUrl:n,customerId:o.customerId,getAccessToken:async()=>a});return Wt((yield*kr(()=>s.localHandoff(t))).runtime_session)}),o=e=>E(function*(){let t=e.slice(6);for(;;){let i=yield*n.get(e).pipe(Sa(C));if(oi(i)||!Jh(i.value))return;let o=jr(i.value.token);if(o===void 0)return;let s=yield*en,c=o-Mi(Gh)-s;c>0&&(yield*_n(Di(c)));let l=yield*a(t).pipe(wn(t=>ca(`Cloud runtime session refresh did not land`,{connectionId:e,cause:t})),Sa(C));if(oi(l)){yield*_n(Kh);continue}yield*n.put(e,new ld({token:l.value})),yield*r.set(e,l.value)}}).pipe(Vn),s=new Map,c=E(function*(){let e=yield*L(t.entries);for(let[t,n]of s)e.has(t)||(s.delete(t),yield*Xt(n));for(let[t,n]of e)s.has(t)||n.target._tag!==`CloudConnectionTarget`||n.target.connectionId.startsWith(qh)&&s.set(t,yield*D(o(n.target.connectionId)))});yield*c,yield*Zo(t.entries).pipe(Ce(()=>c),D)})),Xh=e=>typeof e==`object`&&!!e&&`_tag`in e&&e._tag===`SearchAtlasCredentialRejectedError`,Zh=(e,t,n)=>e.run(t,u(n)?Jp(k.searchAtlasSetCredential,n.value):Jp(k.searchAtlasClearCredential,{})).pipe(Jt,Fa(e=>{let n=vt(e);return u(n)&&Xh(n.value)?Qi(`Search Atlas credential push was refused`,{environmentId:t,cause:e}):ca(`Search Atlas credential push did not land`,{environmentId:t,cause:e})})),Qh=zn(E(function*(){let e=yield*Vp,t=yield*Jf,n=yield*Mr(1),r=()=>fa(n,void 0),i=e=>e.target._tag!==`BearerConnectionTarget`,a=E(function*(){let n=yield*t.current;yield*xn([...(yield*L(e.entries)).entries()].filter(([,e])=>i(e)),([t])=>Zh(e,t,n),{concurrency:`unbounded`,discard:!0})}).pipe(F(`searchAtlas.credentialSync.push`));yield*ae(n).pipe(Ce(()=>a),D);let o=new Map,s=n=>e.stateChanges(n).pipe(ye(e=>e.phase===`connected`),mr,Ca(e=>e),Ce(()=>E(function*(){let r=(yield*L(e.entries)).get(n);!r||!i(r)||(yield*t.current.pipe(I(t=>Zh(e,n,t))))})),Vn),c=E(function*(){let t=yield*L(e.entries);for(let[e,n]of o)t.has(e)||(o.delete(e),yield*Xt(n));for(let e of t.keys())o.has(e)||o.set(e,yield*D(s(e)))});yield*c,yield*Zo(e.entries).pipe(Ce(()=>c),D),yield*t.changes.pipe(Ce(()=>M(r)),D);let l=$n(30);yield*E(function*(){(yield*L(e.entries)).size!==0&&(yield*t.current.pipe(Vn))}).pipe(Zt(sr(l)),D),yield*M(r)})),$h=6e3,eg=x(`clientRuntime.state.fetchEnvironmentThreadSnapshot`)(function*(e){let t=uo(e.prepared.httpBaseUrl,`/api/orchestration/threads/${e.threadId}`),n=yield*fo(e.prepared.httpBaseUrl),r=yield*ph(e.prepared.httpAuthorization,`GET`,t,e.signer);return yield*ro(t,e.timeoutMs??$h,fh(e.prepared.httpAuthorization,n.orchestration.threadSnapshot({params:{threadId:e.threadId},payload:{...e.window===void 0?{}:{turnLimit:e.window.turnLimit},...e.window?.beforeCursor===void 0?{}:{beforeCursor:e.window.beforeCursor}},headers:r})))}),tg=class extends A()(`@borgtools/client-runtime/state/threadSnapshotHttp/ThreadSnapshotLoader`){},ng=Mn(tg,E(function*(){let e=yield*_o,t=yield*an(ef);return tg.of({load:(n,r,i)=>eg({prepared:n,threadId:r,signer:t,...i===void 0?{}:{window:i}}).pipe(O(w),T(_o,e),Tt({EnvironmentResourceNotFoundError:()=>ca(`Thread snapshot not found over HTTP; deferring to the socket subscription.`).pipe(Ya({threadId:r}),cr(C()))}),Fa(e=>Qi(`Could not load the thread snapshot over HTTP; using the socket snapshot instead.`).pipe(Ya({threadId:r,cause:yn(e)}),cr(C()))))})})),rg=class extends nr()(`InvalidScopedProjectKeyError`,{key:P}){get message(){return`Invalid scoped project atom key: ${JSON.stringify(this.key)}.`}},ig=class extends nr()(`InvalidScopedThreadKeyError`,{key:P}){get message(){return`Invalid scoped thread atom key: ${JSON.stringify(this.key)}.`}},ag=class extends nr()(`InvalidScopedProjectRefCollectionKeyError`,{key:P,cause:De()}){get message(){return`Invalid scoped project reference collection atom key: ${JSON.stringify(this.key)}.`}},og=Ba(dn(Fi([P,P])));function sg(e){return`${e.environmentId}\u0000${e.projectId}`}function cg(e){return`${e.environmentId}\u0000${e.threadId}`}function lg(e){if(typeof e!=`string`)return!1;let t=e.indexOf(`\0`);return t>0&&t<=200&&e.length-t-1>0&&e.length-t-1<=200&&e.indexOf(`\0`,t+1)===-1}function ug(e){return JSON.stringify(e.map(e=>[e.environmentId,e.projectId]))}function dg(e){let t=e.indexOf(`\0`);if(t<0)throw new rg({key:e});return{environmentId:xe.make(e.slice(0,t)),projectId:rt.make(e.slice(t+1))}}function fg(e){let t;try{t=og(JSON.parse(e))}catch(t){throw new ag({key:e,cause:t})}return t.map(([e,t])=>({environmentId:xe.make(e),projectId:rt.make(t)}))}function pg(e){let t=e.indexOf(`\0`);if(t<0)throw new ig({key:e});return{environmentId:xe.make(e.slice(0,t)),threadId:It.make(e.slice(t+1))}}function mg(e,t){return e.length===t.length&&e.every((e,n)=>e.environmentId===t[n]?.environmentId&&e.projectId===t[n]?.projectId)}function hg(e,t){return e.length===t.length&&e.every((e,n)=>e.environmentId===t[n]?.environmentId&&e.threadId===t[n]?.threadId)}function gg(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}var _g=Qa(Ie(at,e=>e.createdAt),Ie(at,e=>e.id)),vg=Ie(Ve,e=>e.checkpointTurnCount??2**53-1),yg=g([Ie(Ve,e=>e.sequence??2**53-1),Ie(at,e=>e.createdAt),Ie(at,e=>e.id)]),bg=new WeakMap;function xg(e){if(e.kind!==`context-window.updated`)return!1;let t=(e.payload&&typeof e.payload==`object`?e.payload:null)?.usedTokens;return typeof t==`number`&&Number.isFinite(t)&&t>=0}function Sg(e,t){let n=Cg(wg(e),t);return n.kind===`updated`?{kind:`updated`,thread:wg(n.thread)}:n}function Cg(e,t){switch(t.type){case`project.created`:case`project.meta-updated`:case`project.deleted`:return{kind:`unchanged`};case`thread.created`:return{kind:`updated`,thread:{id:t.payload.threadId,projectId:t.payload.projectId,title:t.payload.title,modelSelection:t.payload.modelSelection,runtimeMode:t.payload.runtimeMode,agent:t.payload.agent,borgProfileId:t.payload.borgProfileId??null,sharedChatId:t.payload.sharedChatId??null,scheduledTaskId:t.payload.scheduledTaskId??null,designSystemId:t.payload.designSystemId??`auto`,branch:t.payload.branch,worktreePath:t.payload.worktreePath,latestTurn:null,createdAt:t.payload.createdAt,updatedAt:t.payload.updatedAt,archivedAt:null,settledOverride:null,settledAt:null,unsettledAt:null,snoozedUntil:null,snoozedAt:null,deletedAt:null,messages:[],proposedPlans:[],activities:[],checkpoints:[],session:null}};case`thread.deleted`:return{kind:`deleted`};case`thread.archived`:return{kind:`updated`,thread:{...e,archivedAt:t.payload.archivedAt,titleRegeneration:null,updatedAt:t.payload.updatedAt}};case`thread.unarchived`:return{kind:`updated`,thread:{...e,archivedAt:null,updatedAt:t.payload.updatedAt}};case`thread.settled`:return{kind:`updated`,thread:{...e,settledOverride:`settled`,settledAt:t.payload.settledAt,unsettledAt:null,updatedAt:t.payload.updatedAt}};case`thread.unsettled`:return{kind:`updated`,thread:{...e,settledOverride:t.payload.reason===`user`?`active`:null,settledAt:null,unsettledAt:e.settledOverride===`active`?e.unsettledAt??null:t.payload.updatedAt,updatedAt:t.payload.updatedAt}};case`thread.snoozed`:return{kind:`updated`,thread:{...e,snoozedUntil:t.payload.snoozedUntil,snoozedAt:t.payload.snoozedAt,updatedAt:t.payload.updatedAt}};case`thread.unsnoozed`:return{kind:`updated`,thread:{...e,snoozedUntil:null,snoozedAt:null,updatedAt:t.payload.updatedAt}};case`thread.pinned`:return{kind:`updated`,thread:{...e,pinnedAt:t.payload.pinnedAt,...t.payload.pinOrderKey===void 0?{}:{pinOrderKey:t.payload.pinOrderKey},updatedAt:t.payload.updatedAt}};case`thread.unpinned`:return{kind:`updated`,thread:{...e,pinnedAt:null,pinOrderKey:null,updatedAt:t.payload.updatedAt}};case`thread.pin-reordered`:return{kind:`updated`,thread:{...e,pinOrderKey:t.payload.orderKey,updatedAt:t.payload.updatedAt}};case`thread.meta-updated`:return{kind:`updated`,thread:{...e,...t.payload.title===void 0?{}:{title:t.payload.title},...t.payload.titleRegeneration===void 0?{}:{titleRegeneration:t.payload.titleRegeneration},...t.payload.modelSelection===void 0?{}:{modelSelection:t.payload.modelSelection},...t.payload.branch===void 0?{}:{branch:t.payload.branch},...t.payload.worktreePath===void 0?{}:{worktreePath:t.payload.worktreePath},...t.payload.linkedPullRequest===void 0?{}:{linkedPullRequest:t.payload.linkedPullRequest},updatedAt:t.payload.updatedAt}};case`thread.runtime-mode-set`:return{kind:`updated`,thread:{...e,runtimeMode:t.payload.runtimeMode,updatedAt:t.payload.updatedAt}};case`thread.interaction-mode-set`:return{kind:`updated`,thread:{...e,agent:t.payload.agent,updatedAt:t.payload.updatedAt}};case`thread.design-system-set`:return{kind:`updated`,thread:{...e,designSystemId:t.payload.designSystemId??`auto`,updatedAt:t.payload.updatedAt}};case`thread.turn-start-requested`:return{kind:`updated`,thread:{...e,...t.payload.modelSelection===void 0?{}:{modelSelection:t.payload.modelSelection},runtimeMode:t.payload.runtimeMode,agent:t.payload.agent,designSystemId:t.payload.designSystemId??`auto`,updatedAt:t.occurredAt}};case`thread.turn-interrupt-requested`:{if(t.payload.turnId===void 0)return{kind:`unchanged`};let n=e.latestTurn;if(n===null||n.turnId!==t.payload.turnId){let n=Og(e.unfinishedTurns,t.payload.turnId,`interrupted`);return n===e.unfinishedTurns?{kind:`unchanged`}:{kind:`updated`,thread:{...e,unfinishedTurns:n,updatedAt:t.occurredAt}}}return{kind:`updated`,thread:{...e,latestTurn:{...n,state:`interrupted`,startedAt:n.startedAt??t.payload.createdAt,completedAt:n.completedAt??t.payload.createdAt},updatedAt:t.occurredAt}}}case`thread.message-sent`:{let n={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)?nt(e.messages,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?{}:{updatedAt:n.updatedAt},...n.attachments===void 0?{}:{attachments:n.attachments}}:e):We(e.messages,n),i=t.payload.turnId!==null&&e.session?.status===`running`&&e.session.activeTurnId===t.payload.turnId,a=!t.payload.streaming&&!i,o=kg(e.latestTurn,t.payload.role===`assistant`&&t.payload.turnId!==null&&(e.latestTurn===null||e.latestTurn.turnId===t.payload.turnId)?{turnId:t.payload.turnId,state:a?e.latestTurn?.state===`interrupted`?`interrupted`:e.latestTurn?.state===`error`?`error`:`completed`:`running`,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,completedAt:a?t.payload.updatedAt:e.latestTurn?.turnId===t.payload.turnId?e.latestTurn.completedAt??null:null,assistantMessageId:t.payload.messageId}:e.latestTurn),s=t.payload.role===`assistant`&&t.payload.turnId!==null?Ag(e.checkpoints,t.payload.turnId,t.payload.messageId):e.checkpoints;return{kind:`updated`,thread:{...e,messages:r,checkpoints:s,latestTurn:o,updatedAt:t.occurredAt}}}case`thread.session-set`:{let n=Tg(t.payload.session.status),r=kg(e.latestTurn,t.payload.session.status===`running`&&t.payload.session.activeTurnId!==null?{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}:e.latestTurn!==null&&e.latestTurn.state===`running`&&n!==null?{...e.latestTurn,state:n,completedAt:t.payload.session.updatedAt}:e.latestTurn);return{kind:`updated`,thread:{...e,session:t.payload.session,latestTurn:r,updatedAt:t.occurredAt}}}case`thread.session-stop-requested`:return e.session===null?{kind:`unchanged`}:{kind:`updated`,thread:{...e,session:{...e.session,status:`stopped`,activeTurnId:null,updatedAt:t.payload.createdAt},updatedAt:t.occurredAt}};case`thread.proposed-plan-upserted`:{let n=t.payload.proposedPlan,r=ha(e.proposedPlans,eo(e=>e.id!==n.id),We(n),Xi(_g));return{kind:`updated`,thread:{...e,proposedPlans:r,updatedAt:t.occurredAt}}}case`thread.turn-diff-completed`:{let n={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.checkpoints.find(e=>e.turnId===n.turnId);if(r&&r.status!==`missing`&&n.status===`missing`)return{kind:`unchanged`};let i=ha(e.checkpoints,eo(e=>e.turnId!==n.turnId),We(n),Xi(vg)),a=!(e.session?.status===`running`&&e.session.activeTurnId===t.payload.turnId)&&(e.latestTurn===null||e.latestTurn.turnId===t.payload.turnId)?{turnId:t.payload.turnId,state:Eg(e.latestTurn?.turnId===t.payload.turnId?e.latestTurn.state:Dg(e,t.payload.turnId),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}:e.latestTurn;return{kind:`updated`,thread:{...e,checkpoints:i,latestTurn:a,updatedAt:t.occurredAt}}}case`thread.reverted`:{let n=ha(e.checkpoints,eo(e=>e.checkpointTurnCount!==void 0&&e.checkpointTurnCount<=t.payload.turnCount),Xi(vg)),r=new Set(nt(n,e=>e.turnId)),i=jg(e.messages,r),a=ha(e.proposedPlans,eo(e=>e.turnId===null||r.has(e.turnId))),o=ha(e.activities,eo(e=>e.turnId===null||r.has(e.turnId))),s=n.at(-1)??null,c=e.unfinishedTurns?.filter(e=>r.has(e.turnId));return{kind:`updated`,thread:{...e,checkpoints:n,messages:i,proposedPlans:a,activities:o,...c===void 0?{}:{unfinishedTurns:c},latestTurn:s===null?null:{turnId:s.turnId,state:Eg(Dg(e,s.turnId),s.status),requestedAt:s.completedAt,startedAt:s.completedAt,completedAt:s.completedAt,assistantMessageId:s.assistantMessageId??null},updatedAt:t.occurredAt}}}case`thread.activity-appended`:{let n=t.payload.activity,r=xg(n),i=bg.get(e.activities),a=e.activities.at(-1);if(!r&&i!==void 0&&(a===void 0||yg(a,n)<=0)&&!i.has(n.id)){let r=We(e.activities,n);return bg.delete(e.activities),i.add(n.id),bg.set(r,i),{kind:`updated`,thread:{...e,activities:r,updatedAt:t.occurredAt}}}let o=ha(e.activities,eo(e=>e.id!==n.id&&!(r&&e.turnId===n.turnId&&xg(e))),We(n),Xi(yg));return bg.set(o,new Set(o.map(e=>e.id))),{kind:`updated`,thread:{...e,activities:o,updatedAt:t.occurredAt}}}case`thread.approval-response-requested`:case`thread.user-input-response-requested`:case`thread.checkpoint-revert-requested`:return{kind:`unchanged`}}return{kind:`unchanged`}}function wg(e){let t=e.unfinishedTurns,n=e.latestTurn;if(n===null)return e;let r=n.state===`interrupted`||n.state===`error`?n.state:null,i=t?.find(e=>e.turnId===n.turnId);return(r===null?i===void 0:i?.state===r)?e:{...e,unfinishedTurns:r===null?t?.filter(e=>e.turnId!==n.turnId):Og(t,n.turnId,r)}}function Tg(e){switch(e){case`idle`:case`ready`:return`completed`;case`error`:return`error`;case`interrupted`:case`stopped`:return`interrupted`;case`starting`:case`running`:return null}}function Eg(e,t){return e===`completed`||e===`interrupted`||e===`error`?e:t===`error`?`error`:`completed`}function Dg(e,t){return e.unfinishedTurns?.find(e=>e.turnId===t)?.state}function Og(e,t,n){return e===void 0?[{turnId:t,state:n}]:e.some(e=>e.turnId===t&&e.state===n)?e:[...e.filter(e=>e.turnId!==t),{turnId:t,state:n}]}function kg(e,t){return e===null||t===null?t:e.turnId===t.turnId&&e.state===t.state&&e.requestedAt===t.requestedAt&&e.startedAt===t.startedAt&&e.completedAt===t.completedAt&&e.assistantMessageId===t.assistantMessageId&&e.sourceProposedPlan?.threadId===t.sourceProposedPlan?.threadId&&e.sourceProposedPlan?.planId===t.sourceProposedPlan?.planId?e:t}function Ag(e,t,n){return e.some(e=>e.turnId===t&&e.assistantMessageId!==n)?nt(e,e=>e.turnId===t?{...e,assistantMessageId:n}:e):e}function jg(e,t){return eo(e,e=>e.role===`system`||e.turnId===null?!0:t.has(e.turnId))}var Mg=5*6e4,Ng={data:C(),status:`empty`,error:C(),page:C()};function Pg(e){return dt(e.page,{onNone:()=>!1,onSome:e=>e.hasMore})}var Fg=1440*60*1e3;function Ig(e,t){if(e.latestUserMessageAt==null||e.session?.status===`error`)return!1;let n=Date.parse(e.latestUserMessageAt);if(Number.isNaN(n))return!1;let r=Date.parse(t.now);if(Number.isNaN(r)||Math.abs(r-n)>12e4)return!1;let i=e.latestTurn;return i===null?!0:[i.requestedAt,i.startedAt,i.completedAt].every(e=>e==null||Date.parse(e)<n)}function Lg(e){return!!(e.hasPendingApprovals||e.hasPendingUserInput||e.session?.status===`error`&&(e.snoozedAt==null||Date.parse(e.session.updatedAt)>Date.parse(e.snoozedAt))||e.snoozedAt!=null&&e.latestTurn?.state===`completed`&&e.latestTurn.completedAt!=null&&Date.parse(e.latestTurn.completedAt)>Date.parse(e.snoozedAt))}function Rg(e,t){return!(e.hasPendingApprovals||e.hasPendingUserInput||Ig(e,t))}function zg(e,t){if(e.snoozedUntil==null)return!1;let n=Date.parse(e.snoozedUntil);return Number.isNaN(n)||n<=Date.parse(t.now)?!1:!Lg(e)}function Bg(e,t){if(e.snoozedUntil==null)return null;let n=Date.parse(e.snoozedUntil);return Number.isNaN(n)?null:Lg(e)?e.snoozedAt!=null&&e.latestTurn?.state===`completed`&&e.latestTurn.completedAt!=null&&Date.parse(e.latestTurn.completedAt)>Date.parse(e.snoozedAt)?e.latestTurn.completedAt:e.session?.updatedAt??e.snoozedAt??null:n<=Date.parse(t.now)?e.snoozedUntil:null}var Vg=3600*1e3,Hg=18,Ug=9;function Wg(e){return e.toLocaleTimeString(void 0,{hour:`numeric`,minute:`2-digit`})}function Gg(e,t){let n=new Date(e);return n.setHours(t,0,0,0),n}function Kg(e,t){let n=new Date(e);return n.setDate(n.getDate()+t),n}function qg(e){let t=new Date(e.getTime()+Vg),n=new Date(e.getTime()+3*Vg),r=[{id:`hour`,label:`In 1 hour`,whenLabel:Wg(t),snoozedUntil:t.toISOString()},{id:`three-hours`,label:`In 3 hours`,whenLabel:Wg(n),snoozedUntil:n.toISOString()}],i=Gg(e,Hg);i.getTime()-e.getTime()>Vg&&r.push({id:`evening`,label:`This evening`,whenLabel:Wg(i),snoozedUntil:i.toISOString()});let a=Gg(Kg(e,1),Ug);r.push({id:`tomorrow`,label:`Tomorrow`,whenLabel:Wg(a),snoozedUntil:a.toISOString()});let o=Gg(Kg(e,(1-e.getDay()+7)%7||7),Ug);return o.getTime()!==a.getTime()&&r.push({id:`next-week`,label:`Next week`,whenLabel:`${o.toLocaleDateString(void 0,{weekday:`short`})} ${Wg(o)}`,snoozedUntil:o.toISOString()}),r}function Jg(e,t){let n=Date.parse(e),r=Date.parse(t.now);if(Number.isNaN(n)||Number.isNaN(r))return`now`;let i=n-r;return i<=0?`now`:i<Vg?`${Math.max(1,Math.ceil(i/6e4))}m`:i<Fg?`${Math.ceil(i/Vg)}h`:`${Math.ceil(i/Fg)}d`}function Yg(e){return typeof e==`string`&&Number.isFinite(Date.parse(e))?e:null}function Xg(e,t){if(t.length===0)return e;let n=new Map(t.map(e=>[e.threadId,e])),r=!1,i=e.flatMap(e=>{let t=n.get(e.id);if(!t)return[e];if(r=!0,t.deletedAt!==null)return[];let i=t.metadata,a=Rg(e,{now:Yg(i.archivedAt)??e.updatedAt});return[{...e,...typeof i.title==`string`?{title:i.title}:{},...typeof i.archived==`boolean`&&(!i.archived||a)?{archivedAt:i.archived?Yg(i.archivedAt):null}:{},...typeof i.settled==`boolean`&&(!i.settled||a)?{settledOverride:i.settled?`settled`:`active`,settledAt:i.settled?Yg(i.settledAt):null,...i.settled?{}:{unsettledAt:Yg(i.unsettledAt)}}:{},...(i.snoozedUntil===null||typeof i.snoozedUntil==`string`)&&(i.snoozedUntil===null||a)?{snoozedUntil:i.snoozedUntil,snoozedAt:i.snoozedUntil===null?null:Yg(i.snoozedAt)}:{},...typeof i.pinned==`boolean`?{pinnedAt:i.pinned?Yg(i.pinnedAt):null,pinOrderKey:i.pinned&&typeof i.pinOrderKey==`string`?i.pinOrderKey:null}:{}}]});return r?i:e}function Zg(e,t){return e.some(e=>e.id===t.id)?e:[...e,t]}function Qg(e,t){let n=t.payload;switch(t.type){case`thread.archive`:return Rg(e,{now:t.createdAt})&&e.session?.status!==`starting`&&e.session?.status!==`running`?{...e,archivedAt:t.createdAt}:e;case`thread.unarchive`:return{...e,archivedAt:null};case`thread.settle`:return Rg(e,{now:t.createdAt})&&e.session?.status!==`starting`&&e.session?.status!==`running`?{...e,settledOverride:`settled`,settledAt:t.createdAt,pinnedAt:null,pinOrderKey:null,snoozedUntil:null}:e;case`thread.unsettle`:return{...e,settledOverride:`active`,unsettledAt:t.createdAt};case`thread.snooze`:return Rg(e,{now:t.createdAt})&&typeof n.snoozedUntil==`string`?{...e,snoozedUntil:n.snoozedUntil,snoozedAt:t.createdAt}:e;case`thread.unsnooze`:return{...e,snoozedUntil:null,snoozedAt:null};case`thread.pin`:return{...e,pinnedAt:e.pinnedAt??t.createdAt,...e.settledOverride===`settled`?{settledOverride:`active`,unsettledAt:t.createdAt}:{},...e.snoozedUntil===null?{}:{snoozedUntil:null,snoozedAt:null},...e.pinnedAt===null&&typeof n.orderKey==`string`?{pinOrderKey:n.orderKey}:{}};case`thread.unpin`:return{...e,pinnedAt:null,pinOrderKey:null};case`thread.pin.reorder`:return typeof n.orderKey==`string`?{...e,pinOrderKey:n.orderKey}:e;case`thread.meta.update`:return typeof n.title==`string`?{...e,title:n.title}:e}}function $g(e,t){let n=new Map;for(let e of t){if(e.status!==`pending`)continue;let t=n.get(e.threadId)??[];n.set(e.threadId,[...t,e])}if(n.size===0)return e;let r=!1,i=e.map(e=>{let t=n.get(e.id);if(!t)return e;let i=[...t].sort((e,t)=>BigInt(e.id)<BigInt(t.id)?-1:+(BigInt(e.id)>BigInt(t.id))).reduce(Qg,e);return r||=i!==e,i});return r?i:e}var e_=Object.freeze([]),t_=new Set,n_=Object.freeze([]),r_=new Map,i_=new Map;function a_(e,t,n,r=t_){if(n.size===0&&r.size===0)return t;let i=t.filter(t=>!n.has(cg({environmentId:e,threadId:t.id}))&&!r.has(t.id));return i.length===t.length?t:i}function o_(e){let t=new WeakMap,n=(e,n)=>{let r=t.get(n);r===void 0&&(r=new Map,t.set(n,r));let i=r.get(e);return i===void 0&&(i=bh(e,n),r.set(e,i)),i},r=z(t=>R(n=>{let r=n(e.snapshotAtom(t))?.threads??e_,i=e.pendingCloudActionsAtom?$g(r,n(e.pendingCloudActionsAtom)):r;return a_(t,e.canonicalThreadStatesAtom?Xg(i,n(e.canonicalThreadStatesAtom)):i,e.hiddenThreadKeysAtom?n(e.hiddenThreadKeysAtom):t_,e.deletedThreadIdsAtom?n(e.deletedThreadIdsAtom):t_)}).pipe(B(`environment-threads:${t}`))),i=z(e=>R(t=>{let n=t(r(e));return n.length===0?r_:new Map(n.map(e=>[e.id,e]))}).pipe(B(`environment-thread-index:${e}`))),a=z(e=>{let t=[];return R(n=>{let i=n(r(e)).map(t=>({environmentId:e,threadId:t.id}));return hg(t,i)?t:(t=i,i)}).pipe(B(`environment-thread-refs:${e}`))}),o=z(e=>{let t=i_;return R(n=>{let i=new Map;for(let t of n(r(e))){let n=i.get(t.projectId),r={environmentId:e,threadId:t.id};n===void 0?i.set(t.projectId,[r]):n.push(r)}if(i.size===0)return t=i_,t;let a=new Map;for(let[e,n]of i){let r=t.get(e);a.set(e,r!==void 0&&hg(r,n)?r:n)}let o=[...t.keys()];return a.size===t.size&&[...a].every(([e,n],r)=>o[r]===e&&t.get(e)===n)||(t=a),t}).pipe(B(`environment-thread-refs-by-project:${e}`))}),s=z(e=>{let t=pg(e);return R(e=>{let r=e(i(t.environmentId)).get(t.threadId)??null;return r===null?null:n(t.environmentId,r)}).pipe(B(`environment-thread-shell:${e}`))}),c=z(e=>{let t=fg(e),r=[];return R(e=>{let a=[],s=new Set;for(let r of t){let t=e(o(r.environmentId)).get(r.projectId)??n_;if(t.length===0)continue;let c=e(i(r.environmentId));for(let e of t){let t=cg(e);if(s.has(t))continue;s.add(t);let r=c.get(e.threadId);r!==void 0&&a.push(n(e.environmentId,r))}}return gg(r,a)||(r=a),r}).pipe(B(`environment-thread-shells-for-projects:${e}`))}),l=[],u=R(t=>{let n=[];for(let r of t(e.catalogValueAtom).entries.keys())n.push(...t(a(r)));return hg(l,n)?l:(l=n,n)}).pipe(B(`environment-thread-refs`)),d=[];return{environmentThreadsAtom:r,environmentThreadIndexAtom:i,environmentThreadRefsAtom:a,environmentThreadRefsByProjectAtom:o,threadRefsAtom:u,threadShellsAtom:R(t=>{let i=[];for(let a of t(e.catalogValueAtom).entries.keys())for(let e of t(r(a)))i.push(n(a,e));return gg(d,i)||(d=i),d}).pipe(B(`environment-thread-shell-list`)),threadShellsForProjectRefsAtom:e=>c(ug(e)),threadShellAtom:e=>s(cg(e))}}var s_=``,c_=new Set;function l_(e){return e.length===0?[]:ha(e.split(s_),nt(e=>xe.make(e)))}function u_(e){return z(t=>R(n=>{let r=[],i=null,a=!1;for(let o of l_(t)){let t=n(e.getSnapshotAtom(o));a||=t.waiting;let s=Qt(gs(t));if(s!==null){let t=e.hiddenThreadKeysAtom?n(e.hiddenThreadKeysAtom):c_,i=e.deletedThreadIdsAtom?n(e.deletedThreadIdsAtom):c_,a=a_(o,s.threads,t,i);r.push({environmentId:o,snapshot:a===s.threads?s:{...s,threads:a}})}i===null&&t._tag===`Failure`&&(i=`Failed to load archived threads.`)}return{snapshots:r,error:i,isLoading:a}}).pipe(B(`${e.labelPrefix}:${t}`)))}function d_(e){return E(function*(){return e.commandId===void 0?yield*(yield*Oo).randomUUIDv4.pipe(Gn,O(Dt.make)):e.commandId})}function f_(e){return Br({commandId:d_(e),createdAt:e.createdAt===void 0?va.pipe(O(gr)):b(e.createdAt)})}function X(e){return Jp(Sn.dispatchCommand,e)}var p_=x(`EnvironmentCommands.createProject`)(function*(e){let t=yield*f_(e);return yield*X({...e,type:`project.create`,commandId:t.commandId,createdAt:t.createdAt})}),m_=x(`EnvironmentCommands.updateProject`)(function*(e){return yield*X({...e,type:`project.meta.update`,commandId:yield*d_(e)})}),h_=x(`EnvironmentCommands.deleteProject`)(function*(e){return yield*X({...e,type:`project.delete`,commandId:yield*d_(e)})}),g_=x(`EnvironmentCommands.createThread`)(function*(e){let t=yield*f_(e);return yield*X({...e,type:`thread.create`,commandId:t.commandId,createdAt:t.createdAt})}),__=x(`EnvironmentCommands.deleteThread`)(function*(e){return yield*X({...e,type:`thread.delete`,commandId:yield*d_(e)})}),v_=x(`EnvironmentCommands.archiveThread`)(function*(e){return yield*X({...e,type:`thread.archive`,commandId:yield*d_(e)})}),y_=x(`EnvironmentCommands.unarchiveThread`)(function*(e){return yield*X({...e,type:`thread.unarchive`,commandId:yield*d_(e)})}),b_=x(`EnvironmentCommands.settleThread`)(function*(e){return yield*X({...e,type:`thread.settle`,commandId:yield*d_(e)})}),x_=x(`EnvironmentCommands.unsettleThread`)(function*(e){return yield*X({...e,type:`thread.unsettle`,commandId:yield*d_(e)})}),S_=x(`EnvironmentCommands.snoozeThread`)(function*(e){return yield*X({...e,type:`thread.snooze`,commandId:yield*d_(e)})}),C_=x(`EnvironmentCommands.publishThread`)(function*(e){return yield*X({...e,type:`thread.publish`,createdAt:e.createdAt??(yield*va).pipe(gr),commandId:yield*d_(e)})}),w_=x(`EnvironmentCommands.unsnoozeThread`)(function*(e){return yield*X({...e,type:`thread.unsnooze`,commandId:yield*d_(e)})}),T_=x(`EnvironmentCommands.pinThread`)(function*(e){return yield*X({...e,type:`thread.pin`,commandId:yield*d_(e)})}),E_=x(`EnvironmentCommands.unpinThread`)(function*(e){return yield*X({...e,type:`thread.unpin`,commandId:yield*d_(e)})}),D_=x(`EnvironmentCommands.reorderPinnedThread`)(function*(e){return yield*X({...e,type:`thread.pin.reorder`,commandId:yield*d_(e)})}),O_=x(`EnvironmentCommands.updateThreadMetadata`)(function*(e){return yield*X({...e,type:`thread.meta.update`,commandId:yield*d_(e)})}),k_=x(`EnvironmentCommands.setThreadRuntimeMode`)(function*(e){let t=yield*f_(e);return yield*X({...e,type:`thread.runtime-mode.set`,commandId:t.commandId,createdAt:t.createdAt})}),A_=x(`EnvironmentCommands.setThreadAgent`)(function*(e){let t=yield*f_(e);return yield*X({...e,type:`thread.interaction-mode.set`,commandId:t.commandId,createdAt:t.createdAt})}),j_=x(`EnvironmentCommands.setThreadDesignSystem`)(function*(e){let t=yield*f_(e);return yield*X({...e,type:`thread.design-system.set`,commandId:t.commandId,createdAt:t.createdAt})}),M_=()=>{try{let e=Intl.DateTimeFormat().resolvedOptions().timeZone;return lt(e)?e:void 0}catch{return}},N_=x(`EnvironmentCommands.startThreadTurn`)(function*(e){let t=yield*f_(e),n=M_();return yield*X({...e,...n?{clientTimeZone:n}:{},type:`thread.turn.start`,commandId:t.commandId,createdAt:t.createdAt})}),P_=x(`EnvironmentCommands.interruptThreadTurn`)(function*(e){let t=yield*f_(e);return yield*X({...e,type:`thread.turn.interrupt`,commandId:t.commandId,createdAt:t.createdAt})}),F_=x(`EnvironmentCommands.compactThread`)(function*(e){let t=yield*f_(e);return yield*X({...e,type:`thread.compact`,commandId:t.commandId,createdAt:t.createdAt})}),I_=x(`EnvironmentCommands.respondToThreadApproval`)(function*(e){let t=yield*f_(e);return yield*X({...e,type:`thread.approval.respond`,commandId:t.commandId,createdAt:t.createdAt})}),L_=x(`EnvironmentCommands.respondToThreadUserInput`)(function*(e){let t=yield*f_(e);return yield*X({...e,type:`thread.user-input.respond`,commandId:t.commandId,createdAt:t.createdAt})}),R_=x(`EnvironmentCommands.revertThreadCheckpoint`)(function*(e){let t=yield*f_(e);return yield*X({...e,type:`thread.checkpoint.revert`,commandId:t.commandId,createdAt:t.createdAt})}),z_=x(`EnvironmentCommands.stopThreadSession`)(function*(e){let t=yield*f_(e);return yield*X({...e,type:`thread.session.stop`,commandId:t.commandId,createdAt:t.createdAt})});function B_(e){let t=$p(),n={mode:`serial`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.threadId])};return{create:vm(e,{label:`environment-data:commands:thread:create`,execute:e=>g_(e),scheduler:t,concurrency:n}),delete:vm(e,{label:`environment-data:commands:thread:delete`,execute:e=>__(e),scheduler:t,concurrency:n}),archive:vm(e,{label:`environment-data:commands:thread:archive`,execute:e=>v_(e),scheduler:t,concurrency:n}),unarchive:vm(e,{label:`environment-data:commands:thread:unarchive`,execute:e=>y_(e),scheduler:t,concurrency:n}),settle:vm(e,{label:`environment-data:commands:thread:settle`,execute:e=>b_(e),scheduler:t,concurrency:n}),unsettle:vm(e,{label:`environment-data:commands:thread:unsettle`,execute:e=>x_(e),scheduler:t,concurrency:n}),snooze:vm(e,{label:`environment-data:commands:thread:snooze`,execute:e=>S_(e),scheduler:t,concurrency:n}),publish:vm(e,{label:`environment-data:commands:thread:publish`,execute:e=>C_(e),scheduler:t,concurrency:n}),unsnooze:vm(e,{label:`environment-data:commands:thread:unsnooze`,execute:e=>w_(e),scheduler:t,concurrency:n}),pin:vm(e,{label:`environment-data:commands:thread:pin`,execute:e=>T_(e),scheduler:t,concurrency:n}),unpin:vm(e,{label:`environment-data:commands:thread:unpin`,execute:e=>E_(e),scheduler:t,concurrency:n}),reorderPin:vm(e,{label:`environment-data:commands:thread:reorder-pin`,execute:e=>D_(e),scheduler:t,concurrency:n}),updateMetadata:vm(e,{label:`environment-data:commands:thread:update-metadata`,execute:e=>O_(e),scheduler:t,concurrency:n}),setRuntimeMode:vm(e,{label:`environment-data:commands:thread:set-runtime-mode`,execute:e=>k_(e),scheduler:t,concurrency:n}),setAgent:vm(e,{label:`environment-data:commands:thread:set-interaction-mode`,execute:e=>A_(e),scheduler:t,concurrency:n}),setDesignSystem:vm(e,{label:`environment-data:commands:thread:set-design-system`,execute:e=>j_(e),scheduler:t,concurrency:n}),startTurn:vm(e,{label:`environment-data:commands:thread:start-turn`,execute:e=>N_(e),scheduler:t,concurrency:n}),interruptTurn:vm(e,{label:`environment-data:commands:thread:interrupt-turn`,execute:e=>P_(e),scheduler:t,concurrency:n}),compactThread:vm(e,{label:`environment-data:commands:thread:compact`,execute:e=>F_(e),scheduler:t,concurrency:n}),respondToApproval:vm(e,{label:`environment-data:commands:thread:respond-to-approval`,execute:e=>I_(e),scheduler:t,concurrency:n}),respondToUserInput:vm(e,{label:`environment-data:commands:thread:respond-to-user-input`,execute:e=>L_(e),scheduler:t,concurrency:n}),revertCheckpoint:vm(e,{label:`environment-data:commands:thread:revert-checkpoint`,execute:e=>R_(e),scheduler:t,concurrency:n}),stopSession:vm(e,{label:`environment-data:commands:thread:stop-session`,execute:e=>z_(e),scheduler:t,concurrency:n}),uploadFeedback:xm(e,{label:`environment-data:commands:thread:upload-feedback`,tag:k.providerUploadFeedback,scheduler:t,concurrency:n}),continueSharedChat:xm(e,{label:`environment-data:commands:thread:continue-shared-chat`,tag:Sn.continueSharedChat})}}function V_(e){let t=/^\/feedback(?:\s+([\s\S]*))?$/iu.exec(e.trim());if(!t)return null;let n=t[1]?.trim();return n?{reason:n}:{}}function H_(e,t=`user`){let n=t===`user`?e.command:e.status===`sent`?`Feedback sent to OpenAI.\n\nThread ID: \`${e.feedbackId}\``:e.status===`failed`?`Could not send feedback to OpenAI.\n\n${e.errorMessage}`:`Sending feedback to OpenAI...`;return{id:t===`user`?e.id:ze.make(`${e.id}:feedback`),role:t,text:n,turnId:null,streaming:!1,createdAt:e.createdAt,updatedAt:e.createdAt}}async function U_(e){e.onUpdate({...e.submission,status:`uploading`}),e.clearDraft();let t=await e.upload();if(t._tag===`Success`)e.onUpdate({...e.submission,status:`sent`,feedbackId:t.value.feedbackId});else if(rm(t))e.onUpdate({...e.submission,status:`interrupted`});else{let n=im(t);e.onUpdate({...e.submission,status:`failed`,errorMessage:n instanceof Error?n.message:`An error occurred.`})}return t}var W_=Object.freeze([]),G_=Object.freeze([]),K_=Object.freeze([]),q_=Object.freeze([]);function J_(e,t){return e===null||t===null||e.environmentId!==t.environmentId||e.id!==t.id?e:{...e,environmentId:t.environmentId,id:t.id,projectId:t.projectId,title:t.title,modelSelection:t.modelSelection,runtimeMode:t.runtimeMode,agent:t.agent,borgProfileId:t.borgProfileId??null,sharedChatId:t.sharedChatId??null,scheduledTaskId:t.scheduledTaskId??null,...t.designSystemId===void 0?{}:{designSystemId:t.designSystemId},branch:t.branch,worktreePath:t.worktreePath,latestTurn:t.latestTurn,createdAt:t.createdAt,updatedAt:t.updatedAt,archivedAt:t.archivedAt,settledOverride:t.settledOverride,settledAt:t.settledAt,snoozedUntil:t.snoozedUntil,snoozedAt:t.snoozedAt,pinnedAt:t.pinnedAt,pinOrderKey:t.pinOrderKey,session:t.session}}function Y_(e){let t=z(t=>{let n=pg(t);return R(t=>ja(gs(t(e(n.environmentId,n.threadId))),()=>Ng)).pipe(Gs(Mg),B(`environment-thread-state-value:${t}`))}),n=z(e=>{let n=pg(e),r=null,i=null;return R(a=>{let o=Qt(a(t(e)).data);return o===r?i:(r=o,i=o===null?null:xh(n.environmentId,o),i)}).pipe(Gs(Mg),B(`environment-thread-detail:${e}`))}),r=z(e=>R(n=>n(t(e)).status).pipe(Gs(Mg),B(`environment-thread-status:${e}`))),i=z(e=>R(n=>Qt(n(t(e)).error)).pipe(Gs(Mg),B(`environment-thread-error:${e}`))),a=z(e=>R(t=>t(n(e))?.messages??W_).pipe(Gs(Mg),B(`environment-thread-messages:${e}`))),o=z(e=>R(t=>t(n(e))?.activities??G_).pipe(Gs(Mg),B(`environment-thread-activities:${e}`))),s=z(e=>R(t=>t(n(e))?.proposedPlans??K_).pipe(Gs(Mg),B(`environment-thread-proposed-plans:${e}`))),c=z(e=>R(t=>t(n(e))?.checkpoints??q_).pipe(Gs(Mg),B(`environment-thread-checkpoints:${e}`))),l=z(e=>R(t=>t(n(e))?.session??null).pipe(Gs(Mg),B(`environment-thread-session:${e}`))),u=z(e=>R(t=>t(n(e))?.latestTurn??null).pipe(Gs(Mg),B(`environment-thread-latest-turn:${e}`)));return{stateAtom:e=>t(cg(e)),detailAtom:e=>n(cg(e)),statusAtom:e=>r(cg(e)),errorAtom:e=>i(cg(e)),messagesAtom:e=>a(cg(e)),activitiesAtom:e=>o(cg(e)),proposedPlansAtom:e=>s(cg(e)),checkpointsAtom:e=>c(cg(e)),sessionAtom:e=>l(cg(e)),latestTurnAtom:e=>u(cg(e))}}function X_(e){return u(e)?`cached`:`empty`}function Z_(e){return e===void 0?C():w({beforeCursor:e.beforeCursor,hasMore:e.hasMore,loadingOlder:!1})}function Q_(){let e=new Map;return{register:(t,n)=>(e.set(t,n),()=>{e.get(t)===n&&e.delete(t)}),request:t=>{let n=e.get(t);return n===void 0?!1:(n(),!0)}}}var $_=Q_(),ev=class extends fr(`@borgtools/client-runtime/state/threads/ThreadOlderTurnRequests`,{defaultValue:()=>$_}){};function tv(e,t){return $_.request(cg({environmentId:e,threadId:t}))}function nv(e){let t=$e(e);return t instanceof Error&&t.message.trim().length>0?t.message:`Could not synchronize the thread.`}function rv(e){let t=e.session?.status;return t!==`starting`&&t!==`running`}var iv=x(`EnvironmentThreadState.make`)(function*(e){let t=yield*Ip,n=yield*Dd,r=yield*tg,i=yield*an(xp),a=t.target.environmentId,o=yield*n.loadThread(a,e).pipe(li(t=>Qi(`Could not load cached thread.`).pipe(Ya({environmentId:a,threadId:e,error:t.message}),cr(C())))),s=ti(o,e=>e.thread),c=yield*Xo({data:s,status:X_(s),error:C(),page:Ka(o,e=>Z_(e.page))}),l=yield*Xo(dt(o,{onNone:()=>0,onSome:e=>e.snapshotSequence})),f=yield*bo(!1),p=yield*bo(0),m=yield*sa(1),h=yield*bo(!1),g=yield*bo(null),_=yield*Mr(1),ee=x(`EnvironmentThreadState.persist`)(function*(t){yield*n.saveThread(a,t).pipe(li(t=>Qi(`Could not persist the thread cache.`).pipe(Ya({environmentId:a,threadId:e,error:t.message}))))});yield*ae(_).pipe(Cr(`500 millis`),Ce(ee),D);let v=es(c,e=>e.status===`deleted`?e:{...e,status:`synchronizing`,error:C()}),te=es(c,e=>e.status===`live`||e.status===`deleted`?e:{...e,status:`synchronizing`,error:C()}),ne=E(function*(){yield*to(f,!1),yield*to(h,!1),yield*es(c,e=>({...e,status:e.status===`deleted`?e.status:X_(e.data)}))}),re=e=>to(f,!1).pipe(Yn(es(c,t=>({...t,status:t.status===`deleted`?t.status:X_(t.data),error:w(nv(e))})))),ie=x(`EnvironmentThreadState.setThread`)(function*(e,t){let n=yield*yo(f);if(yield*es(c,r=>({data:w(e),status:n?`synchronizing`:`live`,error:C(),page:t===`keep`?r.page:t})),rv(e)){let t=yield*L(l),n=yield*L(c).pipe(O(e=>e.page));yield*dr(_,{snapshotSequence:t,thread:e,...dt(n,{onNone:()=>({}),onSome:e=>({page:{beforeCursor:e.beforeCursor,hasMore:e.hasMore,snapshotSequence:t}})})})}}),y=x(`EnvironmentThreadState.setDeleted`)(function*(){yield*to(f,!1),yield*xo(p,e=>e+1),yield*$o(c,{data:C(),status:`deleted`,error:C(),page:C()}),yield*n.removeThread(a,e).pipe(li(t=>Qi(`Could not remove the cached thread.`).pipe(Ya({environmentId:a,threadId:e,error:t.message}))))}),oe=x(`EnvironmentThreadState.applyItemLocked`)(function*(e){if(e.kind===`synchronized`){yield*to(f,!1),yield*es(c,e=>u(e.data)&&e.status!==`deleted`?{...e,status:`live`,error:C()}:e);return}if(e.kind===`snapshot`){yield*xo(p,e=>e+1),yield*$o(l,e.snapshot.snapshotSequence),yield*ie(e.snapshot.thread,Z_(e.snapshot.page));return}let t=yield*L(l);if(e.event.sequence<=t)return;yield*$o(l,e.event.sequence);let n=yield*L(c);if(oi(n.data)){e.event.type===`thread.deleted`&&(yield*y());return}e.event.type===`thread.reverted`&&(yield*xo(p,e=>e+1));let r=Sg(n.data.value,e.event);r.kind===`updated`?yield*ie(r.thread,`keep`):r.kind===`deleted`&&(yield*y()),yield*se()}),se=x(`EnvironmentThreadState.tryMergePendingOlderPage`)(function*(){let e=yield*yo(g);if(e===null)return;if((yield*yo(p))!==e.epoch){yield*to(g,null),yield*es(c,e=>({...e,page:ti(e.page,e=>({...e,loadingOlder:!1}))}));return}let t=e.snapshot.page?.threadSequence,n=yield*L(l);t!==void 0&&t>n||(yield*to(g,null),yield*le(e.snapshot))}),ce=x(`EnvironmentThreadState.applyItem`)(function*(e){yield*m.withPermits(1)(oe(e))}),le=x(`EnvironmentThreadState.mergeOlderPage`)(function*(e){let t=null;if(yield*es(c,n=>{if(oi(n.data))return n;let r=n.data.value,i=e.thread,a=(e,t)=>{let n=new Set(t.map(e=>e.id));return[...e.filter(e=>!n.has(e.id)),...t]},o=new Set(r.checkpoints.map(e=>e.turnId));return t={...r,messages:a(i.messages,r.messages),activities:a(i.activities,r.activities),proposedPlans:a(i.proposedPlans,r.proposedPlans),checkpoints:[...i.checkpoints.filter(e=>!o.has(e.turnId)),...r.checkpoints]},{...n,data:w(t),page:Z_(e.page)}}),t!==null&&rv(t)){let n=yield*L(l);yield*dr(_,{snapshotSequence:n,thread:t,...e.page===void 0?{}:{page:{...e.page,snapshotSequence:n}}})}}),ue=x(`EnvironmentThreadState.loadOlderTurns`)(function*(){if(!(yield*yo(h)))return;let n=Qt((yield*L(c)).page);if(n===null||n.loadingOlder||!n.hasMore||n.beforeCursor===null)return;let i=Qt(yield*L(t.prepared));if(i===null)return;let a=yield*yo(p);yield*es(c,e=>({...e,page:ti(e.page,e=>({...e,loadingOlder:!0}))}));let o={turnLimit:20,beforeCursor:n.beforeCursor},s=yield*r.load(i,e,o);yield*m.withPermits(1)(E(function*(){let e=yield*yo(p),t=yield*L(l),n=e!==a||dt(s,{onNone:()=>!1,onSome:e=>e.snapshotSequence<t});if(oi(s)||n){yield*es(c,e=>({...e,page:ti(e.page,e=>({...e,loadingOlder:!1}))}));return}let r=s.value.page?.threadSequence;if(r!==void 0&&r>t){yield*to(g,{snapshot:s.value,epoch:e});return}yield*le(s.value)}))});yield*Zo(t.state).pipe(Ce(e=>{switch(td(e)){case`synchronizing`:return v;case`disconnected`:return ne;case`ready`:return te}}),D);let de=dt(i,{onNone:()=>d,onSome:e=>e.changes.pipe(Ca(bp))});yield*v,yield*D(Xp(Sn.subscribeThread,x(`EnvironmentThreadState.makeSubscribeInput`)(function*(n){let i=yield*n.initialConfig.pipe(Sa(()=>({}))),a=i.threadResumeCompletionMarker===!0,o=i.threadSnapshotPagination===!0;yield*to(h,o),yield*to(f,a),yield*v;let s=yield*L(c);if(!o&&u(s.page)&&(yield*xo(p,e=>e+1),yield*es(c,e=>({...e,data:C(),status:e.status===`deleted`?e.status:`empty`,page:C()})),yield*$o(l,0),s=yield*L(c)),oi(s.data)&&s.status!==`deleted`){let n=yield*L(t.prepared).pipe(I(dt({onSome:b,onNone:()=>Zo(t.prepared).pipe(Ca(u),ye(e=>e.value),ot,O(ve))}))),i=yield*r.load(n,e,o?{turnLimit:10}:void 0);u(i)&&(yield*ce({kind:`snapshot`,snapshot:i.value}),s=yield*L(c))}let d=yield*L(l),m=u(s.data);return!a&&m&&(yield*es(c,e=>({...e,status:e.status===`deleted`?e.status:`live`,error:C()}))),{threadId:e,...m?{afterSequence:d}:{},...a?{requestCompletionMarker:!0}:{},...o?{turnLimit:10}:{}}}),{onExpectedFailure:re,retryExpectedFailureAfter:`250 millis`,resubscribe:de}).pipe(Ce(ce)));let fe=yield*ev,pe=yield*Mr(1);yield*ae(pe).pipe(Ce(()=>ue()),D);let me=fe.register(cg({environmentId:a,threadId:e}),()=>{fa(pe,void 0)});return yield*Kr(()=>M(me)),yield*Kr(()=>Br([L(c),L(l)]).pipe(I(([e,t])=>dt(e.data,{onNone:()=>j,onSome:n=>rv(n)?ee({snapshotSequence:t,thread:n,...dt(e.page,{onNone:()=>({}),onSome:e=>({page:{beforeCursor:e.beforeCursor,hasMore:e.hasMore,snapshotSequence:t}})})}):j})))),c});function av(e,t){return hm(e,ke(iv(t).pipe(O(Zo))))}function ov(e){let t=z(t=>{let{environmentId:n,threadId:r}=pg(t);return e.atom(av(n,r),{initialValue:Ng}).pipe(Gs(Mg),B(`environment-thread-state:${t}`))});return{stateAtom:(e,n)=>t(cg({environmentId:e,threadId:n}))}}var sv=6e4,cv=x(`clientRuntime.state.fetchEnvironmentPullRequestDiff`)(function*(e){let t=To(e.prepared.httpBaseUrl).pullRequests.diff(),n=yield*fo(e.prepared.httpBaseUrl),r=yield*ph(e.prepared.httpAuthorization,`POST`,t,e.signer);return yield*ro(t,e.timeoutMs??sv,fh(e.prepared.httpAuthorization,n.pullRequests.diff({payload:e.diff,headers:r})))}),lv=class extends A()(`@borgtools/client-runtime/state/pullRequestDiffHttp/PullRequestDiffLoader`){},uv=Mn(lv,E(function*(){let e=yield*_o,t=yield*an(ef);return lv.of({load:(n,r)=>cv({prepared:n,diff:r,signer:t}).pipe(T(_o,e))})})),dv=class extends de(`EnvironmentHttpConnectionNotReadyError`){};function fv(e){return ym(e,{label:`environment-data:pull-requests:linked-detail`,tag:k.pullRequestsDetail,staleTimeMs:15e3,refreshIntervalMs:3e4})}function pv(e){return{number:e.number,title:e.title,url:e.url,baseRef:e.baseBranch,headRef:e.headBranch,state:e.state,updatedAt:e.updatedAt}}function mv(e){let t=$p(),n={mode:`serial`,key:({environmentId:e})=>e},r=ym(e,{label:`environment-data:pull-requests:activity`,tag:k.pullRequestsActivity,staleTimeMs:15e3});return{list:ym(e,{label:`environment-data:pull-requests:list`,tag:k.pullRequestsList,staleTimeMs:3e4}),listStats:ym(e,{label:`environment-data:pull-requests:list-stats`,tag:k.pullRequestsListStats,staleTimeMs:6e4}),detail:ym(e,{label:`environment-data:pull-requests:detail`,tag:k.pullRequestsDetail,staleTimeMs:15e3}),activity:r,threadComments:xm(e,{label:`environment-data:pull-requests:thread-comments`,tag:k.pullRequestsThreadComments,scheduler:t,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.threadId,t.cursor])}}),diff:gm(e,{label:`environment-data:pull-requests:diff`,staleTimeMs:6e4,execute:e=>E(function*(){let t=yield*Ip,n=yield*lv,r=yield*L(t.prepared);return oi(r)?yield*new dv({message:`The environment HTTP connection is not ready.`}):yield*n.load(r.value,e)})}),diffFileContents:xm(e,{label:`environment-data:pull-requests:diff-file-contents`,tag:k.pullRequestsDiffFileContents,scheduler:t,concurrency:{mode:`singleFlight`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.projectId,t.repository,t.number,t.commit??null,t.changeType,t.oldPath,t.newPath])}}),runAction:xm(e,{label:`environment-data:pull-requests:run-action`,tag:k.pullRequestsRunAction,scheduler:t,concurrency:n}),update:xm(e,{label:`environment-data:pull-requests:update`,tag:k.pullRequestsUpdate,scheduler:t,concurrency:n}),comment:xm(e,{label:`environment-data:pull-requests:comment`,tag:k.pullRequestsComment,scheduler:t,concurrency:n}),updateComment:xm(e,{label:`environment-data:pull-requests:update-comment`,tag:k.pullRequestsUpdateComment,scheduler:t,concurrency:n,onSuccess:({environmentId:e,input:{projectId:t,repository:n,number:i}},a)=>M(()=>a.refresh(r({environmentId:e,input:{projectId:t,repository:n,number:i}})))}),submitReview:xm(e,{label:`environment-data:pull-requests:submit-review`,tag:k.pullRequestsSubmitReview,scheduler:t,concurrency:n}),replyToThread:xm(e,{label:`environment-data:pull-requests:reply-to-thread`,tag:k.pullRequestsReplyToThread,scheduler:t,concurrency:n}),reviewerCandidates:ym(e,{label:`environment-data:pull-requests:reviewer-candidates`,tag:k.pullRequestsReviewerCandidates,staleTimeMs:6e4}),requestReviewers:xm(e,{label:`environment-data:pull-requests:request-reviewers`,tag:k.pullRequestsRequestReviewers,scheduler:t,concurrency:n}),setThreadResolution:xm(e,{label:`environment-data:pull-requests:set-thread-resolution`,tag:k.pullRequestsSetThreadResolution,scheduler:t,concurrency:n}),setReaction:xm(e,{label:`environment-data:pull-requests:set-reaction`,tag:k.pullRequestsSetReaction,scheduler:t,concurrency:n}),invalidate:xm(e,{label:`environment-data:pull-requests:invalidate`,tag:k.pullRequestsInvalidate,scheduler:t,concurrency:n})}}function hv(){return`https://api.getborg.com`}function gv(e){return e}var _v=Cn([`configured`,`window-origin`,`desktop-managed`]),vv=Cn([`http-base-url`,`websocket-base-url`,`development-server-url`,`window-location-url`]),yv=class extends nr()(`PrimaryEnvironmentUrlInvalidError`,{source:_v,urlKind:vv,cause:De()}){get message(){return`Could not parse ${this.urlKind} for the ${this.source} primary environment target.`}},bv=class extends nr()(`PrimaryEnvironmentProtocolUnsupportedError`,{source:_v,protocol:P}){get message(){return`The ${this.source} primary environment target uses unsupported protocol ${this.protocol}.`}},xv=class extends nr()(`DesktopEnvironmentBootstrapIncompleteError`,{hasHttpBaseUrl:Pe,hasWsBaseUrl:Pe}){get message(){return`Desktop bootstrap is missing ${[...this.hasHttpBaseUrl?[]:[`httpBaseUrl`],...this.hasWsBaseUrl?[]:[`wsBaseUrl`]].join(` and `)} for the local environment.`}};fe(yv),fe(bv),fe(xv);var Sv=new Set([`127.0.0.1`,`::1`,`localhost`]);function Cv(){return(window.desktopBridge?.getLocalEnvironmentBootstraps()??[]).find(e=>e.id===`primary`)??null}function wv(e){try{return e.baseUrl===void 0?new URL(e.rawValue):new URL(e.rawValue,e.baseUrl)}catch(t){throw new yv({source:e.source,urlKind:e.urlKind,cause:t})}}function Tv(e,t,n){return wv({rawValue:e,baseUrl:window.location.origin,source:t,urlKind:n}).toString()}function Ev(e){return e.trim().toLowerCase().replace(/^\[(.*)\]$/,`$1`)}function Dv(e){return Sv.has(Ev(e))}function Ov(e){return e.target.httpBaseUrl}function kv(){return null}function Av(){let e=wv({rawValue:window.location.origin,source:`window-origin`,urlKind:`http-base-url`}),t=e.toString();if(e.protocol===`http:`)e.protocol=`ws:`;else if(e.protocol===`https:`)e.protocol=`wss:`;else throw new bv({source:`window-origin`,protocol:e.protocol});return{source:`window-origin`,target:{httpBaseUrl:t,wsBaseUrl:e.toString()}}}function jv(){let e=Cv();if(!e||!e.httpBaseUrl&&!e.wsBaseUrl)return null;if(!e.httpBaseUrl||!e.wsBaseUrl)throw new xv({hasHttpBaseUrl:!!e.httpBaseUrl,hasWsBaseUrl:!!e.wsBaseUrl});return{source:`desktop-managed`,target:{httpBaseUrl:Tv(e.httpBaseUrl,`desktop-managed`,`http-base-url`),wsBaseUrl:Tv(e.wsBaseUrl,`desktop-managed`,`websocket-base-url`)}}}function Mv(e,t){let n=Nv(),r=new URL(uo(Ov(n),e));return t&&(r.search=new URLSearchParams(t).toString()),r.toString()}function Nv(){return jv()??kv()??Av()}var Pv=class extends A()(`@borgtools/web/environments/primary/httpClient/PrimaryEnvironmentHttpClient`){},Fv=Mn(Pv,Ze(()=>fo(Mv(`/`)))),Iv=null;function Lv(){if(typeof window>`u`)return Promise.resolve(null);let e=window.desktopBridge;return e?(Iv??=e.getLocalEnvironmentBearerToken().catch(e=>{throw Iv=null,e}),Iv):Promise.resolve(null)}function Rv(){return typeof window>`u`||window.desktopBridge!==void 0||!window.location.origin.startsWith(`http`)?!1:new URL(Mv(`/`)).origin===window.location.origin}function zv(e){return e.pipe(co(e=>Ga(Lv).pipe(O(t=>t?Ii(e,t):e))))}function Bv(){return rr(M(()=>{let e=no(globalThis.fetch);return Rv()?a(e,ea(wo,{credentials:`include`})):a(Mn(_o,O(_o,zv)).pipe(da(e)),ea(wo,{credentials:`omit`}))}))}var Vv=Bv(),Hv=no((e,t)=>globalThis.fetch(e,t)),Uv=ea(Oo,ko({randomBytes:e=>globalThis.crypto.getRandomValues(new Uint8Array(e)),digest:(e,t)=>Ga(async()=>{let n=new Uint8Array(t.length);return n.set(t),new Uint8Array(await globalThis.crypto.subtle.digest(e,n.buffer))})}));Lo(Hv);var Wv=Lo(Fv.pipe(da(Vv))),Gv=e=>Wv.runPromise(e),Kv=e=>Gv(e),qv=Dn(Lo(Ar(Hv,Uv,Nn)).contextEffect),Jv=`borg.backgroundActivity.clientId`,Yv=25e3,Xv=45e3,Zv=Xv,Qv=[{type:`provider-status`}],$v=new Map,ey=new Set;function ty(){for(let e of ey)try{e()}catch{}}function ny(e,t){switch(t.type){case`server-config`:case`diagnostics`:return JSON.stringify([e,t.type]);case`provider-status`:return JSON.stringify([e,t.type,t.instanceId??null]);case`vcs-status`:case`git-refs`:return JSON.stringify([e,t.type,t.cwd]);case`thread`:return JSON.stringify([e,t.type,t.threadId])}}function ry(){try{let e=window.localStorage.getItem(Jv);if(e)return e;let t=So();return window.localStorage.setItem(Jv,t),t}catch{return`ephemeral-browser-client`}}function iy(){return window.desktopBridge?`desktop-renderer`:`web`}function ay(e,t){return e<=t&&t-e<=Zv}function oy(e,t,n){let r=[...Qv];for(let t of $v.values())t.environmentId===e&&r.push(t.scope);return{environmentId:e,clientId:ry(),clientKind:iy(),visible:document.visibilityState===`visible`,focused:document.hasFocus(),recentlyInteracted:ay(t,n),appState:document.visibilityState===`visible`?`active`:`background`,scopes:r,ttlMs:Xv,observedAt:_i(n)}}function sy(e){if(e.method===k.subscribeResourceTelemetry)return{type:`diagnostics`};if(e.method!==k.subscribeVcsStatus)return null;let t=e.input;return typeof t.cwd==`string`?{type:`vcs-status`,cwd:t.cwd}:null}function cy(e,t){let n=ny(e,t),r=$v.get(n);return r?r.refCount+=1:($v.set(n,{environmentId:e,scope:t,refCount:1}),ty()),()=>{let e=$v.get(n);e&&(--e.refCount,e.refCount<=0&&($v.delete(n),ty()))}}function ly(e){let t=sy(e);return t===null?b(j):M(()=>M(cy(e.environmentId,t)))}var uy=ea(Gp,Gp.of({observe:ly})),dy=zn(E(function*(){if(typeof window>`u`||typeof document>`u`)return;let e=yield*Vp,t=yield*Na,n=yield*Mr(1),r=()=>fa(n,void 0),i=t.currentTimeMillisUnsafe(),a=()=>{let e=t.currentTimeMillisUnsafe(),n=ay(i,e);i=e,n||r()},o={passive:!0},s=E(function*(){let t=yield*en;yield*xn((yield*L(e.entries)).keys(),n=>e.run(n,Jp(k.serverReportClientActivity,oy(n,i,t))).pipe(Vn),{concurrency:`unbounded`,discard:!0})}).pipe(F(`web.backgroundActivity.report`));yield*Wi(M(()=>{ey.add(r),document.addEventListener(`visibilitychange`,r),window.addEventListener(`focus`,r),window.addEventListener(`blur`,r),window.addEventListener(`online`,r),window.addEventListener(`pointermove`,a),window.addEventListener(`keydown`,a),window.addEventListener(`wheel`,a,o),window.addEventListener(`touchstart`,a,o)}),()=>M(()=>{ey.delete(r),document.removeEventListener(`visibilitychange`,r),window.removeEventListener(`focus`,r),window.removeEventListener(`blur`,r),window.removeEventListener(`online`,r),window.removeEventListener(`pointermove`,a),window.removeEventListener(`keydown`,a),window.removeEventListener(`wheel`,a),window.removeEventListener(`touchstart`,a)})),yield*Zo(e.entries).pipe(Ce(()=>M(r)),D),yield*ae(n).pipe(Cr(`250 millis`),Ce(()=>s),D),yield*M(r).pipe(Zt(sr(`${Yv} millis`)),D)})),fy=$i({connectionId:P,credential:ud}),py=$i({schemaVersion:On(1),targets:dn(Zu),profiles:dn(cd),credentials:dn(fy),remoteDpopTokens:dn(rf)}),my=Object.freeze({schemaVersion:1,targets:[],profiles:[],credentials:[],remoteDpopTokens:[]});function hy(e,t,n){let r=t(n);return[...e.filter(e=>t(e)!==r),n]}function gy(e,t,n){return e.filter(e=>t(e)!==n)}function _y(e){switch(e._tag){case`PrimaryConnectionTarget`:return null;case`BearerConnectionTarget`:case`CloudConnectionTarget`:case`SshConnectionTarget`:case`BorgConnectionTarget`:return e.connectionId}}function vy(e,t,n){let r=_y(t),i=gy(e.targets,e=>e.environmentId,t.environmentId),a=r!==null&&!i.some(e=>_y(e)===r);return{...e,targets:i,profiles:a?gy(e.profiles,e=>e.connectionId,r):e.profiles,credentials:a?gy(e.credentials,e=>e.connectionId,r):e.credentials,remoteDpopTokens:n?gy(e.remoteDpopTokens,e=>e.environmentId,t.environmentId):e.remoteDpopTokens}}function yy(e,t){let n=t.target,r=e.targets.find(e=>e.environmentId===n.environmentId),i=r===void 0?e:vy(e,r,!1),a={...i,targets:hy(i.targets,e=>e.environmentId,n)};switch(t._tag){case`BearerConnectionRegistration`:case`CloudConnectionRegistration`:case`BorgConnectionRegistration`:return{...a,profiles:hy(a.profiles,e=>e.connectionId,t.profile),credentials:hy(a.credentials,e=>e.connectionId,{connectionId:t.target.connectionId,credential:t.credential})};case`SshConnectionRegistration`:return{...a,profiles:hy(a.profiles,e=>e.connectionId,t.profile)}}}function by(e,t){return vy(e,t,!0)}var xy=class extends Error{status;constructor(e){super(`Borg tunnel request failed (${e}).`),this.name=`BorgTunnelClientError`,this.status=e}};function Sy(){return crypto.randomUUID()}function Cy(e){if(!Ih(e.customerId))throw new xy(400);let t=e.fetch??globalThis.fetch,n=e.apiUrl.replace(/\/$/,``),r=async(r,i={})=>{let a=await e.getAccessToken();if(!a)throw new xy(401);let o=await t(`${n}${r}`,{...i,headers:{...i.headers,authorization:`Bearer ${a}`}});if(!o.ok)throw new xy(o.status);return o};return{requestTicket:async()=>{let t=await(await r(`/api/v1/ws-tickets/`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({customer_id:e.customerId})})).json();if(typeof t.ticket!=`string`||t.ticket.length===0)throw new xy(502);return t.ticket},status:async e=>{let t=await(await r(`/api/v1/devices/${e}/tunnel-status/`)).json();if(typeof t.tunnel_online!=`boolean`)throw new xy(502);return{deviceId:String(t.device_id??e),online:t.tunnel_online,lastSeenAt:typeof t.last_seen_at==`string`?t.last_seen_at:null}}}}var wy=32,Ty=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_`;function Ey(e){let t=``;for(let n=0;n<e.length;n+=3){let r=e[n]??0,i=n+1<e.length,a=n+2<e.length,o=e[n+1]??0,s=e[n+2]??0;t+=Ty[r>>2],t+=Ty[(r&3)<<4|o>>4],i&&(t+=Ty[(o&15)<<2|s>>6]),a&&(t+=Ty[s&63])}return t}var Dy={randomBytes:e=>{let t=new Uint8Array(e);return globalThis.crypto.getRandomValues(t),t},sha256:async e=>new Uint8Array(await globalThis.crypto.subtle.digest(`SHA-256`,Uint8Array.from(e).buffer))};async function Oy(e=wy,t=Dy){return Ey(await t.randomBytes(e))}async function ky(e=Dy){let t=await Oy(wy,e);return{verifier:t,challenge:Ey(await e.sha256(new TextEncoder().encode(t))),method:`S256`}}var Ay;function Z(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,"_zod",{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,"name",{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,"init",{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,"name",{value:e}),o}var jy=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},My=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(Ay=globalThis).__zod_globalConfig??(Ay.__zod_globalConfig={});var Ny=globalThis.__zod_globalConfig;function Py(e){return e&&Object.assign(Ny,e),Ny}function Fy(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function Iy(e,t){return typeof t==`bigint`?t.toString():t}function Ly(e){return{get value(){{let t=e();return Object.defineProperty(this,"value",{value:t}),t}throw Error(`cached value already set`)}}}function Ry(e){return e==null}function zy(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}function By(e,t){let n=e/t,r=Math.round(n),i=2**-52*Math.max(Math.abs(n),1);return Math.abs(n-r)<i?0:n-r}var Vy=Symbol(`evaluating`);function Q(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==Vy)return r===void 0&&(r=Vy,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function Hy(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function Uy(...e){let t={};for(let n of e){let e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function Wy(e){return JSON.stringify(e)}function Gy(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}var Ky=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function qy(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var Jy=Ly(()=>{if(Ny.jitless||typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function Yy(e){if(qy(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(qy(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}function Xy(e){return Yy(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}var Zy=new Set([`string`,`number`,`symbol`]);function Qy(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function $y(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function $(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function eb(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}var tb={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function nb(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.pick() cannot be used on object schemas containing refinements`);return $y(e,Uy(e._zod.def,{get shape(){let e={};for(let r in t){if(!(r in n.shape))throw Error(`Unrecognized key: "${r}"`);t[r]&&(e[r]=n.shape[r])}return Hy(this,`shape`,e),e},checks:[]}))}function rb(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.omit() cannot be used on object schemas containing refinements`);return $y(e,Uy(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let e in t){if(!(e in n.shape))throw Error(`Unrecognized key: "${e}"`);t[e]&&delete r[e]}return Hy(this,`shape`,r),r},checks:[]}))}function ib(e,t){if(!Yy(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0){let n=e._zod.def.shape;for(let e in t)if(Object.getOwnPropertyDescriptor(n,e)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return $y(e,Uy(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return Hy(this,`shape`,n),n}}))}function ab(e,t){if(!Yy(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return $y(e,Uy(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return Hy(this,`shape`,n),n}}))}function ob(e,t){if(e._zod.def.checks?.length)throw Error(`.merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.`);return $y(e,Uy(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return Hy(this,`shape`,n),n},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]}))}function sb(e,t,n){let r=t._zod.def.checks;if(r&&r.length>0)throw Error(`.partial() cannot be used on object schemas containing refinements`);return $y(t,Uy(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in r))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t])}else for(let t in r)i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t];return Hy(this,`shape`,i),i},checks:[]}))}function cb(e,t,n){return $y(t,Uy(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in i))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=new e({type:`nonoptional`,innerType:r[t]}))}else for(let t in r)i[t]=new e({type:`nonoptional`,innerType:r[t]});return Hy(this,`shape`,i),i}}))}function lb(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function ub(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function db(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function fb(e){return typeof e==`string`?e:e?.message}function pb(e,t,n){let r=e.message?e.message:fb(e.inst?._zod.def?.error?.(e))??fb(t?.error?.(e))??fb(n.customError?.(e))??fb(n.localeError?.(e))??`Invalid input`,{inst:i,continue:a,input:o,...s}=e;return s.path??=[],s.message=r,t?.reportInput&&(s.input=o),s}function mb(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function hb(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}var gb=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,Iy,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},_b=Z(`$ZodError`,gb),vb=Z(`$ZodError`,gb,{Parent:Error});function yb(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?(n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i))):r.push(t(i));return{formErrors:r,fieldErrors:n}}function bb(e,t=e=>e.message){let n={_errors:[]},r=(e,i=[])=>{for(let a of e.issues)if(a.code===`invalid_union`&&a.errors.length)a.errors.map(e=>r({issues:e},[...i,...a.path]));else if(a.code===`invalid_key`)r({issues:a.issues},[...i,...a.path]);else if(a.code===`invalid_element`)r({issues:a.issues},[...i,...a.path]);else{let e=[...i,...a.path];if(e.length===0)n._errors.push(t(a));else{let r=n,i=0;for(;i<e.length;){let n=e[i];i===e.length-1?(r[n]=r[n]||{_errors:[]},r[n]._errors.push(t(a))):r[n]=r[n]||{_errors:[]},r=r[n],i++}}}};return r(e),n}var xb=e=>(t,n,r,i)=>{let a=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new jy;if(o.issues.length){let t=new((i?.Err)??e)(o.issues.map(e=>pb(e,a,Py())));throw Ky(t,i?.callee),t}return o.value},Sb=e=>async(t,n,r,i)=>{let a=r?{...r,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new((i?.Err)??e)(o.issues.map(e=>pb(e,a,Py())));throw Ky(t,i?.callee),t}return o.value},Cb=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new jy;return a.issues.length?{success:!1,error:new(e??_b)(a.issues.map(e=>pb(e,i,Py())))}:{success:!0,data:a.value}},wb=Cb(vb),Tb=e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>pb(e,i,Py())))}:{success:!0,data:a.value}},Eb=Tb(vb),Db=e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return xb(e)(t,n,i)},Ob=e=>(t,n,r)=>xb(e)(t,n,r),kb=e=>async(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return Sb(e)(t,n,i)},Ab=e=>async(t,n,r)=>Sb(e)(t,n,r),jb=e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return Cb(e)(t,n,i)},Mb=e=>(t,n,r)=>Cb(e)(t,n,r),Nb=e=>async(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return Tb(e)(t,n,i)},Pb=e=>async(t,n,r)=>Tb(e)(t,n,r),Fb=/^[cC][0-9a-z]{6,}$/,Ib=/^[0-9a-z]+$/,Lb=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Rb=/^[0-9a-vA-V]{20}$/,zb=/^[A-Za-z0-9]{27}$/,Bb=/^[a-zA-Z0-9_-]{21}$/,Vb=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Hb=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Ub=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,Wb=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Gb=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`;function Kb(){return new RegExp(Gb,`u`)}var qb=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Jb=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,Yb=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Xb=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Zb=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Qb=/^[A-Za-z0-9_-]*$/,$b=/^https?$/,ex=/^\+[1-9]\d{6,14}$/,tx=`(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))`,nx=RegExp(`^${tx}$`);function rx(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function ix(e){return RegExp(`^${rx(e)}$`)}function ax(e){let t=rx({precision:e.precision}),n=[`Z`];e.local&&n.push(``),e.offset&&n.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let r=`${t}(?:${n.join(`|`)})`;return RegExp(`^${tx}T(?:${r})$`)}var ox=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\s\\S]*`;return RegExp(`^${t}$`)},sx=/^-?\d+$/,cx=/^-?\d+(?:\.\d+)?$/,lx=/^[^A-Z]*$/,ux=/^[^a-z]*$/,dx=Z(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),fx={number:`number`,bigint:`bigint`,object:`date`},px=Z(`$ZodCheckLessThan`,(e,t)=>{dx.init(e,t);let n=fx[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),mx=Z(`$ZodCheckGreaterThan`,(e,t)=>{dx.init(e,t);let n=fx[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),hx=Z(`$ZodCheckMultipleOf`,(e,t)=>{dx.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?n.value%t.value===BigInt(0):By(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),gx=Z(`$ZodCheckNumberFormat`,(e,t)=>{dx.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=tb[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=a,n&&(r.pattern=sx)}),e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),_x=Z(`$ZodCheckMaxLength`,(e,t)=>{var n;dx.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Ry(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=mb(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),vx=Z(`$ZodCheckMinLength`,(e,t)=>{var n;dx.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Ry(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=mb(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),yx=Z(`$ZodCheckLengthEquals`,(e,t)=>{var n;dx.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Ry(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length;if(i===t.length)return;let a=mb(r),o=i>t.length;n.issues.push({origin:a,...o?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),bx=Z(`$ZodCheckStringFormat`,(e,t)=>{var n,r;dx.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),xx=Z(`$ZodCheckRegex`,(e,t)=>{bx.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Sx=Z(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=lx,bx.init(e,t)}),Cx=Z(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=ux,bx.init(e,t)}),wx=Z(`$ZodCheckIncludes`,(e,t)=>{dx.init(e,t);let n=Qy(t.includes),r=new RegExp(typeof t.position==`number`?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),Tx=Z(`$ZodCheckStartsWith`,(e,t)=>{dx.init(e,t);let n=RegExp(`^${Qy(t.prefix)}.*`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),Ex=Z(`$ZodCheckEndsWith`,(e,t)=>{dx.init(e,t);let n=RegExp(`.*${Qy(t.suffix)}$`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),Dx=Z(`$ZodCheckOverwrite`,(e,t)=>{dx.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}),Ox=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),--this.indent}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
4
- `).filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>` `.repeat(this.indent*2)+e);for(let e of r)this.content.push(e)}compile(){let e=Function,t=this?.args,n=[...(this?.content??[``]).map(e=>` ${e}`)];return new e(...t,n.join(`
5
- `))}},kx={major:4,minor:4,patch:3},Ax=Z(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=kx;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=lb(e),i;for(let a of t){if(a._zod.def.when){if(ub(e)||!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new jy;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=lb(e,t))});else{if(e.issues.length===t)continue;r||=lb(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(lb(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new jy;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new jy;return o.then(e=>t(e,r,a))}return t(o,r,a)}}Q(e,`~standard`,()=>({validate:t=>{try{let n=wb(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return Eb(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),jx=Z(`$ZodString`,(e,t)=>{Ax.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??ox(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),Mx=Z(`$ZodStringFormat`,(e,t)=>{bx.init(e,t),jx.init(e,t)}),Nx=Z(`$ZodGUID`,(e,t)=>{t.pattern??=Hb,Mx.init(e,t)}),Px=Z(`$ZodUUID`,(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(e===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??=Ub(e)}else t.pattern??=Ub();Mx.init(e,t)}),Fx=Z(`$ZodEmail`,(e,t)=>{t.pattern??=Wb,Mx.init(e,t)}),Ix=Z(`$ZodURL`,(e,t)=>{Mx.init(e,t),e._zod.check=n=>{try{let r=n.value.trim();if(!t.normalize&&t.protocol?.source===$b.source&&!/^https?:\/\//i.test(r)){n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid URL format`,input:n.value,inst:e,continue:!t.abort});return}let i=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(i.hostname)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid hostname`,pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(i.protocol.endsWith(`:`)?i.protocol.slice(0,-1):i.protocol)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid protocol`,pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=i.href:n.value=r;return}catch{n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort})}}}),Lx=Z(`$ZodEmoji`,(e,t)=>{t.pattern??=Kb(),Mx.init(e,t)}),Rx=Z(`$ZodNanoID`,(e,t)=>{t.pattern??=Bb,Mx.init(e,t)}),zx=Z(`$ZodCUID`,(e,t)=>{t.pattern??=Fb,Mx.init(e,t)}),Bx=Z(`$ZodCUID2`,(e,t)=>{t.pattern??=Ib,Mx.init(e,t)}),Vx=Z(`$ZodULID`,(e,t)=>{t.pattern??=Lb,Mx.init(e,t)}),Hx=Z(`$ZodXID`,(e,t)=>{t.pattern??=Rb,Mx.init(e,t)}),Ux=Z(`$ZodKSUID`,(e,t)=>{t.pattern??=zb,Mx.init(e,t)}),Wx=Z(`$ZodISODateTime`,(e,t)=>{t.pattern??=ax(t),Mx.init(e,t)}),Gx=Z(`$ZodISODate`,(e,t)=>{t.pattern??=nx,Mx.init(e,t)}),Kx=Z(`$ZodISOTime`,(e,t)=>{t.pattern??=ix(t),Mx.init(e,t)}),qx=Z(`$ZodISODuration`,(e,t)=>{t.pattern??=Vb,Mx.init(e,t)}),Jx=Z(`$ZodIPv4`,(e,t)=>{t.pattern??=qb,Mx.init(e,t),e._zod.bag.format=`ipv4`}),Yx=Z(`$ZodIPv6`,(e,t)=>{t.pattern??=Jb,Mx.init(e,t),e._zod.bag.format=`ipv6`,e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:`invalid_format`,format:`ipv6`,input:n.value,inst:e,continue:!t.abort})}}}),Xx=Z(`$ZodCIDRv4`,(e,t)=>{t.pattern??=Yb,Mx.init(e,t)}),Zx=Z(`$ZodCIDRv6`,(e,t)=>{t.pattern??=Xb,Mx.init(e,t),e._zod.check=n=>{let r=n.value.split(`/`);try{if(r.length!==2)throw Error();let[e,t]=r;if(!t)throw Error();let n=Number(t);if(`${n}`!==t||n<0||n>128)throw Error();new URL(`http://[${e}]`)}catch{n.issues.push({code:`invalid_format`,format:`cidrv6`,input:n.value,inst:e,continue:!t.abort})}}});function Qx(e){if(e===``)return!0;if(/\s/.test(e)||e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}var $x=Z(`$ZodBase64`,(e,t)=>{t.pattern??=Zb,Mx.init(e,t),e._zod.bag.contentEncoding=`base64`,e._zod.check=n=>{Qx(n.value)||n.issues.push({code:`invalid_format`,format:`base64`,input:n.value,inst:e,continue:!t.abort})}});function eS(e){if(!Qb.test(e))return!1;let t=e.replace(/[-_]/g,e=>e===`-`?`+`:`/`);return Qx(t.padEnd(Math.ceil(t.length/4)*4,`=`))}var tS=Z(`$ZodBase64URL`,(e,t)=>{t.pattern??=Qb,Mx.init(e,t),e._zod.bag.contentEncoding=`base64url`,e._zod.check=n=>{eS(n.value)||n.issues.push({code:`invalid_format`,format:`base64url`,input:n.value,inst:e,continue:!t.abort})}}),nS=Z(`$ZodE164`,(e,t)=>{t.pattern??=ex,Mx.init(e,t)});function rS(e,t=null){try{let n=e.split(`.`);if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));return!(`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&(!(`alg`in i)||i.alg!==t))}catch{return!1}}var iS=Z(`$ZodJWT`,(e,t)=>{Mx.init(e,t),e._zod.check=n=>{rS(n.value,t.alg)||n.issues.push({code:`invalid_format`,format:`jwt`,input:n.value,inst:e,continue:!t.abort})}}),aS=Z(`$ZodNumber`,(e,t)=>{Ax.init(e,t),e._zod.pattern=e._zod.bag.pattern??cx,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),oS=Z(`$ZodNumberFormat`,(e,t)=>{gx.init(e,t),aS.init(e,t)}),sS=Z(`$ZodUnknown`,(e,t)=>{Ax.init(e,t),e._zod.parse=e=>e}),cS=Z(`$ZodNever`,(e,t)=>{Ax.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:`never`,code:`invalid_type`,input:t.value,inst:e}),t)});function lS(e,t,n){e.issues.length&&t.issues.push(...db(n,e.issues)),t.value[n]=e.value}var uS=Z(`$ZodArray`,(e,t)=>{Ax.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>lS(t,n,e))):lS(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function dS(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...db(n,e.issues))}if(!o&&!i){e.issues.length||t.issues.push({code:`invalid_type`,expected:`nonoptional`,input:void 0,path:[n]});return}e.value===void 0?o&&(t.value[n]=void 0):t.value[n]=e.value}function fS(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key "${n}": expected a Zod schema`);let n=eb(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function pS(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optin===`optional`,d=c.optout===`optional`;for(let i in t){if(i===`__proto__`||s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>dS(e,n,i,t,u,d))):dS(a,n,i,t,u,d)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}var mS=Z(`$ZodObject`,(e,t)=>{if(Ax.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,"shape",{get:()=>{let n={...e};return Object.defineProperty(t,"shape",{value:n}),n}})}let n=Ly(()=>fS(t));Q(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=qy,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optin===`optional`,i=n._zod.optout===`optional`,a=n._zod.run({value:s[e],issues:[]},o);a instanceof Promise?c.push(a.then(n=>dS(n,t,e,s,r,i))):dS(a,t,e,s,r,i)}return i?pS(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}}),hS=Z(`$ZodObjectJIT`,(e,t)=>{mS.init(e,t);let n=e._zod.parse,r=Ly(()=>fS(t)),i=e=>{let t=new Ox([`shape`,`payload`,`ctx`]),n=r.value,i=e=>{let t=Wy(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write(`const input = payload.value;`);let a=Object.create(null),o=0;for(let e of n.keys)a[e]=`key_${o++}`;t.write(`const newResult = {};`);for(let r of n.keys){let n=a[r],o=Wy(r),s=e[r],c=s?._zod?.optin===`optional`,l=s?._zod?.optout===`optional`;t.write(`const ${n} = ${i(r)};`),c&&l?t.write(`
6
- if (${n}.issues.length) {
7
- if (${o} in input) {
8
- payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
9
- ...iss,
10
- path: iss.path ? [${o}, ...iss.path] : [${o}]
11
- })));
12
- }
13
- }
14
-
15
- if (${n}.value === undefined) {
16
- if (${o} in input) {
17
- newResult[${o}] = undefined;
18
- }
19
- } else {
20
- newResult[${o}] = ${n}.value;
21
- }
22
-
23
- `):c?t.write(`
24
- if (${n}.issues.length) {
25
- payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
26
- ...iss,
27
- path: iss.path ? [${o}, ...iss.path] : [${o}]
28
- })));
29
- }
30
-
31
- if (${n}.value === undefined) {
32
- if (${o} in input) {
33
- newResult[${o}] = undefined;
34
- }
35
- } else {
36
- newResult[${o}] = ${n}.value;
37
- }
38
-
39
- `):t.write(`
40
- const ${n}_present = ${o} in input;
41
- if (${n}.issues.length) {
42
- payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
43
- ...iss,
44
- path: iss.path ? [${o}, ...iss.path] : [${o}]
45
- })));
46
- }
47
- if (!${n}_present && !${n}.issues.length) {
48
- payload.issues.push({
49
- code: "invalid_type",
50
- expected: "nonoptional",
51
- input: undefined,
52
- path: [${o}]
53
- });
54
- }
55
-
56
- if (${n}_present) {
57
- if (${n}.value === undefined) {
58
- newResult[${o}] = undefined;
59
- } else {
60
- newResult[${o}] = ${n}.value;
61
- }
62
- }
63
-
64
- `)}t.write(`payload.value = newResult;`),t.write(`return payload;`);let s=t.compile();return(t,n)=>s(e,t,n)},a,o=qy,s=!Ny.jitless,c=s&&Jy.value,l=t.catchall,u;e._zod.parse=(d,f)=>{u??=r.value;let p=d.value;return o(p)?s&&c&&f?.async===!1&&f.jitless!==!0?(a||=i(t.shape),d=a(d,f),l?pS([],p,d,f,u,e):d):n(d,f):(d.issues.push({expected:`object`,code:`invalid_type`,input:p,inst:e}),d)}});function gS(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!lb(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>pb(e,r,Py())))}),t)}var _S=Z(`$ZodUnion`,(e,t)=>{Ax.init(e,t),Q(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),Q(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),Q(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),Q(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>zy(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(t.issues.length===0)return t;o.push(t)}}return a?Promise.all(o).then(t=>gS(t,r,e,i)):gS(o,r,e,i)}}),vS=Z(`$ZodIntersection`,(e,t)=>{Ax.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([t,n])=>bS(e,t,n)):bS(e,i,a)}});function yS(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(Yy(e)&&Yy(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=yS(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=yS(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function bS(e,t,n){let r=new Map,i;for(let n of t.issues)if(n.code===`unrecognized_keys`){i??=n;for(let e of n.keys)r.has(e)||r.set(e,{}),r.get(e).l=!0}else e.issues.push(n);for(let t of n.issues)if(t.code===`unrecognized_keys`)for(let e of t.keys)r.has(e)||r.set(e,{}),r.get(e).r=!0;else e.issues.push(t);let a=[...r].filter(([,e])=>e.l&&e.r).map(([e])=>e);if(a.length&&i&&e.issues.push({...i,keys:a}),lb(e))return e;let o=yS(t.value,n.value);if(!o.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return e.value=o.data,e}var xS=Z(`$ZodEnum`,(e,t)=>{Ax.init(e,t);let n=Fy(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>Zy.has(typeof e)).map(e=>typeof e==`string`?Qy(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),SS=Z(`$ZodTransform`,(e,t)=>{Ax.init(e,t),e._zod.optin=`optional`,e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new My(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n.fallback=!0,n));if(i instanceof Promise)throw new jy;return n.value=i,n.fallback=!0,n}});function CS(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}var wS=Z(`$ZodOptional`,(e,t)=>{Ax.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,Q(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Q(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${zy(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=e.value,i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then(e=>CS(e,r)):CS(i,r)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),TS=Z(`$ZodExactOptional`,(e,t)=>{wS.init(e,t),Q(e._zod,`values`,()=>t.innerType._zod.values),Q(e._zod,`pattern`,()=>t.innerType._zod.pattern),e._zod.parse=(e,n)=>t.innerType._zod.run(e,n)}),ES=Z(`$ZodNullable`,(e,t)=>{Ax.init(e,t),Q(e._zod,`optin`,()=>t.innerType._zod.optin),Q(e._zod,`optout`,()=>t.innerType._zod.optout),Q(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${zy(e.source)}|null)$`):void 0}),Q(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),DS=Z(`$ZodDefault`,(e,t)=>{Ax.init(e,t),e._zod.optin=`optional`,Q(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>OS(e,t)):OS(r,t)}});function OS(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var kS=Z(`$ZodPrefault`,(e,t)=>{Ax.init(e,t),e._zod.optin=`optional`,Q(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>(n.direction===`backward`||e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),AS=Z(`$ZodNonOptional`,(e,t)=>{Ax.init(e,t),Q(e._zod,`values`,()=>{let e=t.innerType._zod.values;return e?new Set([...e].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>jS(t,e)):jS(i,e)}});function jS(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}var MS=Z(`$ZodCatch`,(e,t)=>{Ax.init(e,t),e._zod.optin=`optional`,Q(e._zod,`optout`,()=>t.innerType._zod.optout),Q(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(r=>(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>pb(e,n,Py()))},input:e.value}),e.issues=[],e.fallback=!0),e)):(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>pb(e,n,Py()))},input:e.value}),e.issues=[],e.fallback=!0),e)}}),NS=Z(`$ZodPipe`,(e,t)=>{Ax.init(e,t),Q(e._zod,`values`,()=>t.in._zod.values),Q(e._zod,`optin`,()=>t.in._zod.optin),Q(e._zod,`optout`,()=>t.out._zod.optout),Q(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>PS(e,t.in,n)):PS(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>PS(e,t.out,n)):PS(r,t.out,n)}});function PS(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}var FS=Z(`$ZodReadonly`,(e,t)=>{Ax.init(e,t),Q(e._zod,`propValues`,()=>t.innerType._zod.propValues),Q(e._zod,`values`,()=>t.innerType._zod.values),Q(e._zod,`optin`,()=>t.innerType?._zod?.optin),Q(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(IS):IS(r)}});function IS(e){return e.value=Object.freeze(e.value),e}var LS=Z(`$ZodCustom`,(e,t)=>{dx.init(e,t),Ax.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>RS(t,n,r,e));RS(i,n,r,e)}});function RS(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(hb(e))}}var zS,BS=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];return this._map.set(e,n),n&&typeof n==`object`&&`id`in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function VS(){return new BS}(zS=globalThis).__zod_globalRegistry??(zS.__zod_globalRegistry=VS());var HS=globalThis.__zod_globalRegistry;function US(e,t){return new e({type:`string`,...$(t)})}function WS(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...$(t)})}function GS(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...$(t)})}function KS(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...$(t)})}function qS(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...$(t)})}function JS(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...$(t)})}function YS(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...$(t)})}function XS(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...$(t)})}function ZS(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...$(t)})}function QS(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...$(t)})}function $S(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...$(t)})}function eC(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...$(t)})}function tC(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...$(t)})}function nC(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...$(t)})}function rC(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...$(t)})}function iC(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...$(t)})}function aC(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...$(t)})}function oC(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...$(t)})}function sC(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...$(t)})}function cC(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...$(t)})}function lC(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...$(t)})}function uC(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...$(t)})}function dC(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...$(t)})}function fC(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...$(t)})}function pC(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...$(t)})}function mC(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...$(t)})}function hC(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...$(t)})}function gC(e,t){return new e({type:`number`,checks:[],...$(t)})}function _C(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...$(t)})}function vC(e){return new e({type:`unknown`})}function yC(e,t){return new e({type:`never`,...$(t)})}function bC(e,t){return new px({check:`less_than`,...$(t),value:e,inclusive:!1})}function xC(e,t){return new px({check:`less_than`,...$(t),value:e,inclusive:!0})}function SC(e,t){return new mx({check:`greater_than`,...$(t),value:e,inclusive:!1})}function CC(e,t){return new mx({check:`greater_than`,...$(t),value:e,inclusive:!0})}function wC(e,t){return new hx({check:`multiple_of`,...$(t),value:e})}function TC(e,t){return new _x({check:`max_length`,...$(t),maximum:e})}function EC(e,t){return new vx({check:`min_length`,...$(t),minimum:e})}function DC(e,t){return new yx({check:`length_equals`,...$(t),length:e})}function OC(e,t){return new xx({check:`string_format`,format:`regex`,...$(t),pattern:e})}function kC(e){return new Sx({check:`string_format`,format:`lowercase`,...$(e)})}function AC(e){return new Cx({check:`string_format`,format:`uppercase`,...$(e)})}function jC(e,t){return new wx({check:`string_format`,format:`includes`,...$(t),includes:e})}function MC(e,t){return new Tx({check:`string_format`,format:`starts_with`,...$(t),prefix:e})}function NC(e,t){return new Ex({check:`string_format`,format:`ends_with`,...$(t),suffix:e})}function PC(e){return new Dx({check:`overwrite`,tx:e})}function FC(e){return PC(t=>t.normalize(e))}function IC(){return PC(e=>e.trim())}function LC(){return PC(e=>e.toLowerCase())}function RC(){return PC(e=>e.toUpperCase())}function zC(){return PC(e=>Gy(e))}function BC(e,t,n){return new e({type:`array`,element:t,...$(n)})}function VC(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...$(n)})}function HC(e,t){let n=UC(t=>(t.addIssue=e=>{if(typeof e==`string`)t.issues.push(hb(e,t.value,n._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,r.input??=t.value,r.inst??=n,r.continue??=!n._zod.def.abort,t.issues.push(hb(r))}},e(t.value,t)),t);return n}function UC(e,t){let n=new dx({check:`custom`,...$(t)});return n._zod.check=e,n}function WC(e){let t=e?.target??`draft-2020-12`;return t===`draft-4`&&(t=`draft-04`),t===`draft-7`&&(t=`draft-07`),{processors:e.processors??{},metadataRegistry:e?.metadata??HS,target:t,unrepresentable:e?.unrepresentable??`throw`,override:e?.override??(()=>{}),io:e?.io??`output`,counter:0,seen:new Map,cycles:e?.cycles??`ref`,reused:e?.reused??`inline`,external:e?.external??void 0}}function GC(e,t,n={path:[],schemaPath:[]}){var r;let i=e._zod.def,a=t.seen.get(e);if(a)return a.count++,n.schemaPath.includes(e)&&(a.cycle=n.path),a.schema;let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o);let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let r={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,r);else{let n=o.schema,a=t.processors[i.type];if(!a)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);a(e,t,n,r)}let a=e._zod.parent;a&&(o.ref||=a,GC(a,t,r),t.seen.get(a).isParent=!0)}let c=t.metadataRegistry.get(e);return c&&Object.assign(o.schema,c),t.io===`input`&&JC(e)&&(delete o.schema.examples,delete o.schema.default),t.io===`input`&&`_prefault`in o.schema&&((r=o.schema).default??(r.default=o.schema._prefault)),delete o.schema._prefault,t.seen.get(e).schema}function KC(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=new Map;for(let t of e.seen.entries()){let n=e.metadataRegistry.get(t[0])?.id;if(n){let e=r.get(n);if(e&&e!==t[0])throw Error(`Duplicate schema id "${n}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(n,t[0])}}let i=t=>{let r=e.target===`draft-2020-12`?`$defs`:`definitions`;if(e.external){let n=e.external.registry.get(t[0])?.id,i=e.external.uri??(e=>e);if(n)return{ref:i(n)};let a=t[1].defId??t[1].schema.id??`schema${e.counter++}`;return t[1].defId=a,{defId:a,ref:`${i(`__shared`)}#/${r}/${a}`}}if(t[1]===n)return{ref:`#`};let i=`#/${r}/`,a=t[1].schema.id??`__schema${e.counter++}`;return{defId:a,ref:i+a}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};if(e.cycles===`throw`)for(let t of e.seen.entries()){let e=t[1];if(e.cycle)throw Error(`Cycle detected: #/${e.cycle?.join(`/`)}/<root>
65
-
66
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0]){a(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}if(e.metadataRegistry.get(n[0])?.id){a(n);continue}if(r.cycle){a(n);continue}if(r.count>1&&e.reused===`ref`){a(n);continue}}}function qC(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):Object.assign(i,s),Object.assign(i,a),t._zod.parent===o)for(let e in i)e===`$ref`||e===`allOf`||e in a||delete i[e];if(s.$ref&&n.def)for(let e in i)e===`$ref`||e===`allOf`||e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e===`$ref`||e===`allOf`||e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};for(let t of[...e.seen.entries()].reverse())r(t[0]);let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}Object.assign(i,n.def??n.schema);let a=e.metadataRegistry.get(t)?.id;a!==void 0&&i.id===a&&delete i.id;let o=e.external?.defs??{};for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(e.def.id===e.defId&&delete e.def.id,o[e.defId]=e.def)}e.external||Object.keys(o).length>0&&(e.target===`draft-2020-12`?i.$defs=o:i.definitions=o);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,"~standard",{value:{...t[`~standard`],jsonSchema:{input:XC(t,`input`,e.processors),output:XC(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function JC(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return JC(r.element,n);if(r.type===`set`)return JC(r.valueType,n);if(r.type===`lazy`)return JC(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type==="default"||r.type===`prefault`)return JC(r.innerType,n);if(r.type===`intersection`)return JC(r.left,n)||JC(r.right,n);if(r.type===`record`||r.type===`map`)return JC(r.keyType,n)||JC(r.valueType,n);if(r.type===`pipe`)return e._zod.traits.has(`$ZodCodec`)?!0:JC(r.in,n)||JC(r.out,n);if(r.type===`object`){for(let e in r.shape)if(JC(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(JC(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(JC(e,n))return!0;return!!(r.rest&&JC(r.rest,n))}return!1}var YC=(e,t={})=>n=>{let r=WC({...n,processors:t});return GC(e,r),KC(r,e),qC(r,e)},XC=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=WC({...i??{},target:a,io:t,processors:n});return GC(e,o),KC(o,e),qC(o,e)},ZC={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},QC=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=ZC[s]??s,i.format===``&&delete i.format,s===`time`&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c];e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},$C=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,format:s,multipleOf:c,exclusiveMaximum:l,exclusiveMinimum:u}=e._zod.bag;typeof s==`string`&&s.includes(`int`)?i.type=`integer`:i.type=`number`;let d=typeof u==`number`&&u>=(a??-1/0),f=typeof l==`number`&&l<=(o??1/0),p=t.target===`draft-04`||t.target===`openapi-3.0`;d?p?(i.minimum=u,i.exclusiveMinimum=!0):i.exclusiveMinimum=u:typeof a==`number`&&(i.minimum=a),f?p?(i.maximum=l,i.exclusiveMaximum=!0):i.exclusiveMaximum=l:typeof o==`number`&&(i.maximum=o),typeof c==`number`&&(i.multipleOf=c)},ew=(e,t,n,r)=>{n.not={}},tw=(e,t,n,r)=>{let i=e._zod.def,a=Fy(i.entries);a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},nw=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},rw=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},iw=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=GC(a.element,t,{...r,path:[...r.path,`items`]})},aw=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`,i.properties={};let o=a.shape;for(let e in o)i.properties[e]=GC(o[e],t,{...r,path:[...r.path,`properties`,e]});let s=new Set(Object.keys(o)),c=new Set([...s].filter(e=>{let n=a.shape[e]._zod;return t.io===`input`?n.optin===void 0:n.optout===void 0}));c.size>0&&(i.required=Array.from(c)),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=GC(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},ow=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>GC(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},sw=(e,t,n,r)=>{let i=e._zod.def,a=GC(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=GC(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1;n.allOf=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]]},cw=(e,t,n,r)=>{let i=e._zod.def,a=GC(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},lw=(e,t,n,r)=>{let i=e._zod.def;GC(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},uw=(e,t,n,r)=>{let i=e._zod.def;GC(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},dw=(e,t,n,r)=>{let i=e._zod.def;GC(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,t.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},fw=(e,t,n,r)=>{let i=e._zod.def;GC(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=o},pw=(e,t,n,r)=>{let i=e._zod.def,a=i.in._zod.traits.has(`$ZodTransform`),o=t.io===`input`?a?i.out:i.in:i.out;GC(o,t,r);let s=t.seen.get(e);s.ref=o},mw=(e,t,n,r)=>{let i=e._zod.def;GC(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},hw=(e,t,n,r)=>{let i=e._zod.def;GC(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},gw=Z(`ZodISODateTime`,(e,t)=>{Wx.init(e,t),Uw.init(e,t)});function _w(e){return fC(gw,e)}var vw=Z(`ZodISODate`,(e,t)=>{Gx.init(e,t),Uw.init(e,t)});function yw(e){return pC(vw,e)}var bw=Z(`ZodISOTime`,(e,t)=>{Kx.init(e,t),Uw.init(e,t)});function xw(e){return mC(bw,e)}var Sw=Z(`ZodISODuration`,(e,t)=>{qx.init(e,t),Uw.init(e,t)});function Cw(e){return hC(Sw,e)}var ww=Z(`ZodError`,(e,t)=>{_b.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>bb(e,t)},flatten:{value:t=>yb(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,Iy,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,Iy,2)}},isEmpty:{get(){return e.issues.length===0}}})},{Parent:Error}),Tw=xb(ww),Ew=Sb(ww),Dw=Cb(ww),Ow=Tb(ww),kw=Db(ww),Aw=Ob(ww),jw=kb(ww),Mw=Ab(ww),Nw=jb(ww),Pw=Mb(ww),Fw=Nb(ww),Iw=Pb(ww),Lw=new WeakMap;function Rw(e,t,n){let r=Object.getPrototypeOf(e),i=Lw.get(r);if(i||(i=new Set,Lw.set(r,i)),!i.has(t)){i.add(t);for(let e in n){let t=n[e];Object.defineProperty(r,e,{configurable:!0,enumerable:!1,get(){let n=t.bind(this);return Object.defineProperty(this,e,{configurable:!0,writable:!0,enumerable:!0,value:n}),n},set(t){Object.defineProperty(this,e,{configurable:!0,writable:!0,enumerable:!0,value:t})}})}}}var zw=Z(`ZodType`,(e,t)=>(Ax.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:XC(e,`input`),output:XC(e,`output`)}}),e.toJSONSchema=YC(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(t,n)=>Tw(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Dw(e,t,n),e.parseAsync=async(t,n)=>Ew(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Ow(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>kw(e,t,n),e.decode=(t,n)=>Aw(e,t,n),e.encodeAsync=async(t,n)=>jw(e,t,n),e.decodeAsync=async(t,n)=>Mw(e,t,n),e.safeEncode=(t,n)=>Nw(e,t,n),e.safeDecode=(t,n)=>Pw(e,t,n),e.safeEncodeAsync=async(t,n)=>Fw(e,t,n),e.safeDecodeAsync=async(t,n)=>Iw(e,t,n),Rw(e,`ZodType`,{check(...e){let t=this.def;return this.clone(Uy(t,{checks:[...t.checks??[],...e.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return $y(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(JT(e,t))},superRefine(e,t){return this.check(YT(e,t))},overwrite(e){return this.check(PC(e))},optional(){return AT(this)},exactOptional(){return MT(this)},nullable(){return PT(this)},nullish(){return AT(PT(this))},nonoptional(e){return BT(this,e)},array(){return vT(this)},or(e){return ST([this,e])},and(e){return wT(this,e)},transform(e){return WT(this,OT(e))},default(e){return IT(this,e)},prefault(e){return RT(this,e)},catch(e){return HT(this,e)},pipe(e){return WT(this,e)},readonly(){return KT(this)},describe(e){let t=this.clone();return HS.add(t,{description:e}),t},meta(...e){if(e.length===0)return HS.get(this);let t=this.clone();return HS.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e){return e(this)}}),Object.defineProperty(e,"description",{get(){return HS.get(e)?.description},configurable:!0}),e)),Bw=Z(`_ZodString`,(e,t)=>{jx.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>QC(e,t,n,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,Rw(e,`_ZodString`,{regex(...e){return this.check(OC(...e))},includes(...e){return this.check(jC(...e))},startsWith(...e){return this.check(MC(...e))},endsWith(...e){return this.check(NC(...e))},min(...e){return this.check(EC(...e))},max(...e){return this.check(TC(...e))},length(...e){return this.check(DC(...e))},nonempty(...e){return this.check(EC(1,...e))},lowercase(e){return this.check(kC(e))},uppercase(e){return this.check(AC(e))},trim(){return this.check(IC())},normalize(...e){return this.check(FC(...e))},toLowerCase(){return this.check(LC())},toUpperCase(){return this.check(RC())},slugify(){return this.check(zC())}})}),Vw=Z(`ZodString`,(e,t)=>{jx.init(e,t),Bw.init(e,t),e.email=t=>e.check(WS(Ww,t)),e.url=t=>e.check(XS(qw,t)),e.jwt=t=>e.check(dC(cT,t)),e.emoji=t=>e.check(ZS(Jw,t)),e.guid=t=>e.check(GS(Gw,t)),e.uuid=t=>e.check(KS(Kw,t)),e.uuidv4=t=>e.check(qS(Kw,t)),e.uuidv6=t=>e.check(JS(Kw,t)),e.uuidv7=t=>e.check(YS(Kw,t)),e.nanoid=t=>e.check(QS(Yw,t)),e.guid=t=>e.check(GS(Gw,t)),e.cuid=t=>e.check($S(Xw,t)),e.cuid2=t=>e.check(eC(Zw,t)),e.ulid=t=>e.check(tC(Qw,t)),e.base64=t=>e.check(cC(aT,t)),e.base64url=t=>e.check(lC(oT,t)),e.xid=t=>e.check(nC($w,t)),e.ksuid=t=>e.check(rC(eT,t)),e.ipv4=t=>e.check(iC(tT,t)),e.ipv6=t=>e.check(aC(nT,t)),e.cidrv4=t=>e.check(oC(rT,t)),e.cidrv6=t=>e.check(sC(iT,t)),e.e164=t=>e.check(uC(sT,t)),e.datetime=t=>e.check(_w(t)),e.date=t=>e.check(yw(t)),e.time=t=>e.check(xw(t)),e.duration=t=>e.check(Cw(t))});function Hw(e){return US(Vw,e)}var Uw=Z(`ZodStringFormat`,(e,t)=>{Mx.init(e,t),Bw.init(e,t)}),Ww=Z(`ZodEmail`,(e,t)=>{Fx.init(e,t),Uw.init(e,t)}),Gw=Z(`ZodGUID`,(e,t)=>{Nx.init(e,t),Uw.init(e,t)}),Kw=Z(`ZodUUID`,(e,t)=>{Px.init(e,t),Uw.init(e,t)}),qw=Z(`ZodURL`,(e,t)=>{Ix.init(e,t),Uw.init(e,t)}),Jw=Z(`ZodEmoji`,(e,t)=>{Lx.init(e,t),Uw.init(e,t)}),Yw=Z(`ZodNanoID`,(e,t)=>{Rx.init(e,t),Uw.init(e,t)}),Xw=Z(`ZodCUID`,(e,t)=>{zx.init(e,t),Uw.init(e,t)}),Zw=Z(`ZodCUID2`,(e,t)=>{Bx.init(e,t),Uw.init(e,t)}),Qw=Z(`ZodULID`,(e,t)=>{Vx.init(e,t),Uw.init(e,t)}),$w=Z(`ZodXID`,(e,t)=>{Hx.init(e,t),Uw.init(e,t)}),eT=Z(`ZodKSUID`,(e,t)=>{Ux.init(e,t),Uw.init(e,t)}),tT=Z(`ZodIPv4`,(e,t)=>{Jx.init(e,t),Uw.init(e,t)}),nT=Z(`ZodIPv6`,(e,t)=>{Yx.init(e,t),Uw.init(e,t)}),rT=Z(`ZodCIDRv4`,(e,t)=>{Xx.init(e,t),Uw.init(e,t)}),iT=Z(`ZodCIDRv6`,(e,t)=>{Zx.init(e,t),Uw.init(e,t)}),aT=Z(`ZodBase64`,(e,t)=>{$x.init(e,t),Uw.init(e,t)}),oT=Z(`ZodBase64URL`,(e,t)=>{tS.init(e,t),Uw.init(e,t)}),sT=Z(`ZodE164`,(e,t)=>{nS.init(e,t),Uw.init(e,t)}),cT=Z(`ZodJWT`,(e,t)=>{iS.init(e,t),Uw.init(e,t)}),lT=Z(`ZodNumber`,(e,t)=>{aS.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>$C(e,t,n,r),Rw(e,`ZodNumber`,{gt(e,t){return this.check(SC(e,t))},gte(e,t){return this.check(CC(e,t))},min(e,t){return this.check(CC(e,t))},lt(e,t){return this.check(bC(e,t))},lte(e,t){return this.check(xC(e,t))},max(e,t){return this.check(xC(e,t))},int(e){return this.check(fT(e))},safe(e){return this.check(fT(e))},positive(e){return this.check(SC(0,e))},nonnegative(e){return this.check(CC(0,e))},negative(e){return this.check(bC(0,e))},nonpositive(e){return this.check(xC(0,e))},multipleOf(e,t){return this.check(wC(e,t))},step(e,t){return this.check(wC(e,t))},finite(){return this}});let n=e._zod.bag;e.minValue=Math.max(n.minimum??-1/0,n.exclusiveMinimum??-1/0)??null,e.maxValue=Math.min(n.maximum??1/0,n.exclusiveMaximum??1/0)??null,e.isInt=(n.format??``).includes(`int`)||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function uT(e){return gC(lT,e)}var dT=Z(`ZodNumberFormat`,(e,t)=>{oS.init(e,t),lT.init(e,t)});function fT(e){return _C(dT,e)}var pT=Z(`ZodUnknown`,(e,t)=>{sS.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function mT(){return vC(pT)}var hT=Z(`ZodNever`,(e,t)=>{cS.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ew(e,t,n,r)});function gT(e){return yC(hT,e)}var _T=Z(`ZodArray`,(e,t)=>{uS.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>iw(e,t,n,r),e.element=t.element,Rw(e,`ZodArray`,{min(e,t){return this.check(EC(e,t))},nonempty(e){return this.check(EC(1,e))},max(e,t){return this.check(TC(e,t))},length(e,t){return this.check(DC(e,t))},unwrap(){return this.element}})});function vT(e,t){return BC(_T,e,t)}var yT=Z(`ZodObject`,(e,t)=>{hS.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>aw(e,t,n,r),Q(e,`shape`,()=>t.shape),Rw(e,`ZodObject`,{keyof(){return ET(Object.keys(this._zod.def.shape))},catchall(e){return this.clone({...this._zod.def,catchall:e})},passthrough(){return this.clone({...this._zod.def,catchall:mT()})},loose(){return this.clone({...this._zod.def,catchall:mT()})},strict(){return this.clone({...this._zod.def,catchall:gT()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(e){return ib(this,e)},safeExtend(e){return ab(this,e)},merge(e){return ob(this,e)},pick(e){return nb(this,e)},omit(e){return rb(this,e)},partial(...e){return sb(kT,this,e[0])},required(...e){return cb(zT,this,e[0])}})});function bT(e,t){return new yT({type:`object`,shape:e??{},...$(t)})}var xT=Z(`ZodUnion`,(e,t)=>{_S.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ow(e,t,n,r),e.options=t.options});function ST(e,t){return new xT({type:`union`,options:e,...$(t)})}var CT=Z(`ZodIntersection`,(e,t)=>{vS.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>sw(e,t,n,r)});function wT(e,t){return new CT({type:`intersection`,left:e,right:t})}var TT=Z(`ZodEnum`,(e,t)=>{xS.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>tw(e,t,n,r),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new TT({...t,checks:[],...$(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new TT({...t,checks:[],...$(r),entries:i})}});function ET(e,t){return new TT({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...$(t)})}var DT=Z(`ZodTransform`,(e,t)=>{SS.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>rw(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new My(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(hb(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,n.issues.push(hb(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n.fallback=!0,n)):(n.value=i,n.fallback=!0,n)}});function OT(e){return new DT({type:`transform`,transform:e})}var kT=Z(`ZodOptional`,(e,t)=>{wS.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>hw(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function AT(e){return new kT({type:`optional`,innerType:e})}var jT=Z(`ZodExactOptional`,(e,t)=>{TS.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>hw(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function MT(e){return new jT({type:`optional`,innerType:e})}var NT=Z(`ZodNullable`,(e,t)=>{ES.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>cw(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function PT(e){return new NT({type:`nullable`,innerType:e})}var FT=Z(`ZodDefault`,(e,t)=>{DS.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>uw(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function IT(e,t){return new FT({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():Xy(t)}})}var LT=Z(`ZodPrefault`,(e,t)=>{kS.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>dw(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function RT(e,t){return new LT({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():Xy(t)}})}var zT=Z(`ZodNonOptional`,(e,t)=>{AS.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>lw(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function BT(e,t){return new zT({type:`nonoptional`,innerType:e,...$(t)})}var VT=Z(`ZodCatch`,(e,t)=>{MS.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>fw(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function HT(e,t){return new VT({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}var UT=Z(`ZodPipe`,(e,t)=>{NS.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>pw(e,t,n,r),e.in=t.in,e.out=t.out});function WT(e,t){return new UT({type:`pipe`,in:e,out:t})}var GT=Z(`ZodReadonly`,(e,t)=>{FS.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>mw(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function KT(e){return new GT({type:`readonly`,innerType:e})}var qT=Z(`ZodCustom`,(e,t)=>{LS.init(e,t),zw.init(e,t),e._zod.processJSONSchema=(t,n,r)=>nw(e,t,n,r)});function JT(e,t={}){return VC(qT,e,t)}function YT(e,t){return HC(e,t)}var XT=bT({accessToken:Hw().min(1),refreshToken:Hw().min(1).optional(),expiresAt:uT().int().positive().optional(),tokenType:Hw().default(`Bearer`),scope:Hw().optional()}),ZT=bT({access_token:Hw().min(1),refresh_token:Hw().min(1).optional(),expires_in:uT().int().positive().optional(),token_type:Hw().optional(),scope:Hw().optional()}),QT=(e,t=Date.now())=>e.expiresAt!==void 0&&e.expiresAt-6e4<=t;function $T(e,t=Date.now()){let n=ZT.parse(e);return{accessToken:n.access_token,...n.refresh_token?{refreshToken:n.refresh_token}:{},...n.expires_in?{expiresAt:t+n.expires_in*1e3}:{},tokenType:n.token_type??`Bearer`,...n.scope?{scope:n.scope}:{}}}var eE=`relay`,tE=class extends Error{refusal;constructor(e){super(`Search Atlas refused the request (${e.status})`),this.name=`EmailAuthRefusedError`,this.refusal=e}},nE=(e,t)=>new URL(t,e).toString(),rE=`/api/customer/account/register/v2/`,iE=`/api/token/`,aE=`/api/customer/account/check-email/`,oE=`/oauth/approve/`,sE=`/account/google/oauth/start`;function cE(e){let t=JSON.stringify({a:e.api,c:e.clientId,r:e.redirectUri,s:e.scope,t:e.state,x:e.challenge});return btoa(t).replace(/\+/gu,`-`).replace(/\//gu,`_`).replace(/=+$/u,``)}function lE(e){let t=e.name?.trim();return{email:e.email.trim(),password:e.password,...t?{contact_name:t}:{},registration_source:eE,...uE(e.captcha)}}var uE=e=>e.version===`v2`?{captcha_v2:e.token}:{captcha:e.token};function dE(e){return{username:e.email.trim(),password:e.password,...uE(e.captcha)}}var fE={email:`email`,password:`password`,contact_name:`name`},pE=e=>{let t=Array.isArray(e)?e[0]:e;return typeof t==`string`&&t.trim().length>0?t.trim():null},mE=e=>typeof e==`object`&&e&&!Array.isArray(e)?e:null;function hE(e,t){let n=mE(t);if(e===201||e===200){let e=n?.jwt_token;if(typeof e==`string`&&e.length>0)return e;if(n?.verification_required===!0)throw new tE({status:`verification-required`});return null}if(e===409)throw new tE({status:`email-registered`});if(e===406)throw new tE({status:`invalid`,field:`email`,message:`Search Atlas doesn't accept this email provider. Use a different email.`});if(e!==400||!n)return null;if(gE(n))throw new tE({status:`captcha-required`});for(let[e,t]of Object.entries(fE)){let r=pE(n[e]);if(r)throw new tE({status:`invalid`,field:t,message:r})}return null}function gE(e){if(`recaptcha_fallback`in e||`captcha`in e||`captcha_v2`in e)return!0;let t=pE(e.non_field_errors);return t!==null&&/recaptcha/iu.test(t)}function _E(e,t){let n=mE(t);if(e===200){let e=n?.token;return typeof e==`string`&&e.length>0?e:null}if(e===400&&n&&gE(n))throw new tE({status:`captcha-required`});if(e===403&&n?.kind===`email_verification_required`)throw new tE({status:`verification-required`});if(e===401)throw new tE({status:`invalid`,field:`password`,message:`The email or password is incorrect.`});return null}function vE(e){let t=mE(e)?.redirect_url;return typeof t==`string`&&t.length>0?t:null}var yE=class extends Error{code;status;constructor(e,t,n){super(t),this.code=e,this.status=n,this.name=`AuthError`}},bE=e=>e instanceof yE&&e.status!==void 0&&e.status>=400&&e.status<500&&e.status!==408&&e.status!==429,xE=2e4;async function SE(e){let t=new AbortController,n,r=new Promise((e,r)=>{n=setTimeout(()=>{let e=Error(`Search Atlas authentication timed out. Try again.`);e.name=`TimeoutError`,r(e),t.abort(e)},xE)});try{return await Promise.race([e(t.signal),r])}finally{clearTimeout(n)}}function CE(e){if(typeof e!=`object`||!e||Array.isArray(e))return null;let t=e;return typeof t.sub!=`string`||typeof t.name!=`string`?null:{subject:t.sub,email:typeof t.email==`string`?t.email:``,name:t.name.trim()}}var wE=`borg.tokens`;function TE(e,t){let n=new URL(e),r=n.searchParams.get(`error`);if(r)throw new yE(r,n.searchParams.get(`error_description`)??r);if(n.searchParams.get(`state`)!==t)throw new yE(`state_mismatch`,`Authorization state did not match`);let i=n.searchParams.get(`code`);if(!i)throw new yE(`missing_code`,`Callback carried no authorization code`);return i}var EE=class{#e;#t;#n=Promise.resolve();#r=new Map;#i=Promise.resolve();#a=0;#o;#s;#c=new Set;constructor(e,t){this.#o=e,this.#s=t}subscribe(e){return this.#c.add(e),()=>{this.#c.delete(e)}}#l(e){for(let t of this.#c)try{t(e)}catch{}}async beginAuthorization(e=this.#o.redirectUri){let{state:t,challenge:n,method:r}=await this.#u(e),i=new URL(this.#o.authorizationEndpoint);return i.searchParams.set(`response_type`,`code`),i.searchParams.set(`client_id`,this.#o.clientId),i.searchParams.set(`redirect_uri`,e),i.searchParams.set(`code_challenge`,n),i.searchParams.set(`code_challenge_method`,r),i.searchParams.set(`state`,t),this.#o.scopes?.length&&i.searchParams.set(`scope`,this.#o.scopes.join(` `)),i.toString()}async#u(e){let t=await this.#d(e);return this.#e=t,t}async#d(e){let{verifier:t,challenge:n,method:r}=await ky(this.#s.pkceCrypto);return{state:await Oy(16,this.#s.pkceCrypto),verifier:t,challenge:n,method:r,redirectUri:e}}async isEmailRegistered(e){let t=nE(this.#o.tokenEndpoint,aE);return SE(async n=>{let r=await fetch(t,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({email:e.trim()}),signal:n}),i=await r.json().catch(()=>null);if(!r.ok)throw new yE(`http_${r.status}`,`Email check returned ${r.status}`,r.status);return i?.exists===!0})}async signUp(e){let t=await this.#f(rE,lE(e),hE);return this.authorizeWithAccountToken(t)}async signIn(e){let t=await this.#f(iE,dE(e),_E);return this.authorizeWithAccountToken(t)}#f(e,t,n){return SE(async r=>{let i=await fetch(nE(this.#o.tokenEndpoint,e),{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(t),signal:r}),a=await i.json().catch(()=>null),o=n(i.status,a);if(o===null)throw new yE(`http_${i.status}`,`Search Atlas returned ${i.status}`,i.status);return o})}async authorizeWithGoogle(e){let t=new URL(e);if(t.protocol!==`https:`)throw new yE(`invalid_request`,`Google sign-in must return to an https page`);return this.#p(async()=>{let e=await this.#s.listenForOAuthCallback(),{state:n,challenge:r}=await this.#u(e.redirectUri),i=cE({api:new URL(this.#o.tokenEndpoint).origin,clientId:this.#o.clientId,redirectUri:e.redirectUri,scope:this.#o.scopes?.join(` `)??``,state:n,challenge:r}),a=new URL(sE,this.#o.tokenEndpoint);return a.searchParams.set(`from_domain`,`${t.host}${t.pathname}#${i}`),a.searchParams.set(`registration_source`,eE),a.toString()})}async authorizeWithAccountToken(e){let t=await this.#d(this.#o.redirectUri),n=await SE(async n=>{let r=await fetch(nE(this.#o.tokenEndpoint,oE),{method:`POST`,headers:{authorization:`Bearer ${e}`,"content-type":`application/json`},body:JSON.stringify({client_id:this.#o.clientId,scope:this.#o.scopes?.join(` `)??``,state:t.state,redirect_uri:t.redirectUri,code_challenge:t.challenge,code_challenge_method:t.method,nonce:``,response_type:`code`,action:`approve`}),signal:n}),i=await r.json().catch(()=>null),a=r.ok?vE(i):null;if(a===null){let e=i;throw new yE(e?.error??`http_${r.status}`,e?.error_description??`Approval returned ${r.status}`,r.status)}return a});return this.#m(TE(n,t.state),t)}cancelAuthorization(){this.#e=void 0,this.#t?.(),this.#s.cancelOAuthCallback?.()}async authorizeNative(){return this.#p(async()=>{let e=await this.#s.listenForOAuthCallback();return this.beginAuthorization(e.redirectUri)})}async#p(e){this.#t&&this.cancelAuthorization();let t=()=>{},n=new Promise((e,n)=>{t=()=>n(new yE(`cancelled`,`Sign-in was cancelled.`))});n.catch(()=>void 0),this.#t=t;let r=e();r.catch(()=>void 0);try{let e=await Promise.race([r,n]),t=this.#s.waitForOAuthCallback();return t.catch(()=>void 0),await Promise.race([this.#s.openExternal(e),n]),await this.completeAuthorization(await Promise.race([t,n]))}catch(e){throw e instanceof yE&&e.code===`cancelled`&&(await r.catch(()=>void 0),this.#t===t&&this.#s.cancelOAuthCallback?.()),e}finally{this.#t===t&&(this.#t=void 0)}}async completeAuthorization(e){let t=this.#e;if(!t)throw new yE(`no_pending_authorization`,`No authorization in progress`);let n=TE(e,t.state);return this.#e=void 0,this.#m(n,t)}async#m(e,t){let n=this.#a,r=await this.#g({grant_type:`authorization_code`,code:e,redirect_uri:t.redirectUri,client_id:this.#o.clientId,code_verifier:t.verifier});if(n!==this.#a||!await this.#v(r,++this.#a))throw new yE(`session_changed`,`This sign-in was cancelled. Start sign-in again.`);return r}getAccessToken(e){let t=this.#a,n=this.#r.get(e);if(n?.version===t)return n.promise;let r=this.#n.then(()=>this.#h(t,e)).finally(()=>{this.#r.get(e)?.promise===r&&this.#r.delete(e)});return this.#r.set(e,{version:t,promise:r}),this.#n=r.catch(()=>void 0),r}async#h(e,t){if(await this.#i,e!==this.#a)return null;let n=await this.loadTokens();if(e!==this.#a||!n)return null;if(!QT(n)&&n.accessToken!==t)return n.accessToken;if(!n.refreshToken)return await this.signOut(),null;try{let t=await this.refresh(n.refreshToken);return e===this.#a?t.accessToken:null}catch(t){if(e!==this.#a)return null;throw bE(t)&&await this.signOut(),t}}async getUserProfile(){if(!this.#o.userinfoEndpoint)return null;let e=await this.getAccessToken();if(!e)return null;let t=this.#o.userinfoEndpoint,n=e=>SE(async n=>{let r=await fetch(t,{headers:{authorization:`Bearer ${e}`},signal:n});return{response:r,payload:await r.json().catch(()=>null)}}),r=await n(e);if(r.response.status===401){if(e=await this.getAccessToken(e),!e)return null;r=await n(e)}if(!r.response.ok)throw new yE(`http_${r.response.status}`,`Userinfo endpoint returned ${r.response.status}`,r.response.status);let i=CE(r.payload);if(!i)throw new yE(`invalid_userinfo`,`Userinfo endpoint returned an invalid profile`);return i}async refresh(e){let t=this.#a,n=await this.#g({grant_type:`refresh_token`,refresh_token:e,client_id:this.#o.clientId}),r=n.refreshToken?n:{...n,refreshToken:e};return await this.#v(r,t),r}async#g(e){return SE(async t=>{let n=await fetch(this.#o.tokenEndpoint,{method:`POST`,headers:{"content-type":`application/x-www-form-urlencoded`},body:new URLSearchParams(e).toString(),signal:t}),r=await n.json().catch(()=>null);if(!n.ok){let e=r;throw new yE(e?.error??`http_${n.status}`,e?.error_description??`Token endpoint returned ${n.status}`,n.status)}return $T(r)})}async storeTokens(e){await this.#v(e,++this.#a)}#_(e){let t=this.#i.then(e);return this.#i=t.catch(()=>void 0),t}#v(e,t){return this.#_(async()=>t!==this.#a||(await this.#s.setSecureCredential(wE,JSON.stringify(e)),t!==this.#a)?!1:(this.#l(e.accessToken),!0))}async loadTokens(){let e=await this.#s.getSecureCredential(wE);if(!e)return null;try{let t=XT.safeParse(JSON.parse(e));return t.success?t.data:null}catch(e){if(e instanceof SyntaxError)return null;throw e}}async signOut(){this.#e=void 0;let e=++this.#a,t=await this.#_(async()=>{let t=await this.loadTokens().catch(()=>null);return await this.#s.deleteSecureCredential(wE),e===this.#a&&this.#l(null),t});if(t?.refreshToken&&this.#o.revocationEndpoint){let e=this.#o.revocationEndpoint,n=t.refreshToken;SE(t=>fetch(e,{method:`POST`,headers:{"content-type":`application/x-www-form-urlencoded`},body:new URLSearchParams({token:n,client_id:this.#o.clientId}).toString(),signal:t})).catch(()=>{})}}};function DE(){if(typeof window>`u`||!window.location)return null;let e=`mcp:tools:read mcp:tools:execute profile`.split(/\s+/u);return{authorizationEndpoint:`https://dashboard.searchatlas.com/oauth/authorize`,tokenEndpoint:`https://api.searchatlas.com/oauth/token/`,userinfoEndpoint:`https://api.searchatlas.com/oauth/userinfo/`,clientId:`C735iQetqz7GyPSU1N7rCoQunxZuwtq8WR5z-hCp8VA`,redirectUri:`${window.location.origin}/oauth-callback.html`,scopes:e,revocationEndpoint:`https://api.searchatlas.com/oauth/revoke/`}}var OE=`borg.search-atlas.oauth-callback`,kE=`borg-search-atlas-auth`,AE=`borg-search-atlas-oauth-callback`;function jE(e){if(typeof e!=`object`||!e)return null;let t=e;return t.type===AE&&typeof t.url==`string`?t.url:null}function ME(){let e=DE();if(!e)return null;let t=new Map,n=e=>{try{return window.sessionStorage.getItem(e)??t.get(e)??null}catch{return t.get(e)??null}},r=(e,n)=>{t.set(e,n);try{window.sessionStorage.setItem(e,n)}catch{}},i=e=>{t.delete(e);try{window.sessionStorage.removeItem(e)}catch{}},a=null,o=null,s=null;return new EE(e,{getSecureCredential:async e=>n(e),setSecureCredential:async(e,t)=>{r(e,t)},deleteSecureCredential:async e=>{i(e)},listenForOAuthCallback:async()=>({redirectUri:e.redirectUri}),waitForOAuthCallback:()=>(o??=new Promise((e,t)=>{let n=window.setTimeout(()=>{d(),t(Error(`Search Atlas authentication timed out.`))},12e4),r=typeof BroadcastChannel>`u`?null:new BroadcastChannel(kE),i=t=>{d(),e(t)},c=e=>{let t=jE(e.data);t&&i(t)},l=e=>{if(e.origin!==window.location.origin||e.source!==a)return;let t=jE(e.data);t&&i(t)},u=e=>{if(!(e.key!==OE||!e.newValue))try{let t=jE(JSON.parse(e.newValue));t&&i(t)}catch{}};s=()=>{d(),t(new yE(`cancelled`,`Sign-in was cancelled.`))};let d=()=>{s=null,window.clearTimeout(n),window.removeEventListener(`message`,l),window.removeEventListener(`storage`,u),r?.removeEventListener(`message`,c),r?.close(),o=null};window.addEventListener(`message`,l),window.addEventListener(`storage`,u),r?.addEventListener(`message`,c)}),o),cancelOAuthCallback:()=>{s?.(),a?.close()},openExternal:async e=>{if(a=window.open(e,`borg-search-atlas-auth`,`popup,width=520,height=720`),!a)throw Error(`The authentication window was blocked.`)}})}var NE;function PE(){return NE??=ME(),NE}async function FE(e){if(!e.apiUrl)throw Error(`Borg Cloud is not configured.`);let t=Ri(e.token);if(t===void 0)throw Error(`This Search Atlas session names no customer.`);return t.customerId}var IE=/-nightly\.\d{8}\.\d+$/;function LE(e){return e.stageLabel.trim().toLowerCase()===`latest`?e.baseName:`${e.baseName} (${e.stageLabel})`}function RE(e){return e.primaryServerVersion&&IE.test(e.primaryServerVersion)?`Nightly`:e.fallbackStageLabel}function zE(e){let t=RE({primaryServerVersion:e.primaryServerVersion,fallbackStageLabel:e.fallbackStageLabel});return t===e.fallbackStageLabel?e.fallbackDisplayName:LE({baseName:e.baseName,stageLabel:t})}var BE={local:`Development`,staging:`Preview`,production:``};function VE(e){return[BE[e.environment.trim().toLowerCase()]??`Development`,/^[0-9a-f]{7,40}$/i.test(e.commit.trim())?e.commit.trim().slice(0,7):``].filter(Boolean).join(` · `)}function HE(){return typeof window>`u`?null:window.desktopBridge?.getAppBranding?.()??null}var UE=HE(),WE=``,GE=WE===`latest`||WE===`nightly`?WE:null,KE=GE===`nightly`?`Nightly`:GE===`latest`?`Latest`:null,qE=UE?.baseName??`Borg`,JE=UE?.stageLabel??KE??`Alpha`,YE=UE?.displayName??LE({baseName:qE,stageLabel:JE}),XE=`0.0.119`,ZE=VE({environment:`production`,commit:`529849f3c01e48a9f1553d6c3dadb5449ee13b2d`});[`${qE} ${XE}`,ZE].filter(Boolean).join(` · `);function QE(){return`https://app.getborg.com`}function $E(){return``}function eD(){return null}function tD(e){try{return new URL(e).origin}catch{return null}}function nD(){return typeof window<`u`&&window.desktopBridge!==void 0}function rD(e=new URL(window.location.href)){if($E()||nD())return!1;if(eD())return!0;let t=tD(QE());return t!==null&&e.origin===t}function iD(e=new URL(window.location.href)){let t=e.searchParams.get(`host`)?.trim()??``,n=Lm(e)?.trim()??``,r=e.searchParams.get(`label`)?.trim()??``;return!t||!n?null:{host:t,token:n,label:r}}function aD(e=new URL(window.location.href)){return iD(e)!==null}function oD(e){let t=new URL(`/pair`,QE());t.searchParams.set(`host`,e.host);let n=e.label?.trim();return n&&t.searchParams.set(`label`,n),zm(t,e.token).toString()}function sD(e){let t=new URL(`/__borgcode/channel`,QE());return t.searchParams.set(`channel`,e.channel),t.toString()}var cD=Ss();function lD({children:e}){return(0,Mc.createElement)(Fc.Provider,{value:cD},e)}var uD=15e3,dD=12e4,fD=uD,pD=new Map,mD=new Set([k.previewAutomationConnect,k.shellCaptureLoopbackRedirect]),hD=new Set([k.serverUpdateProvider,k.serverRefreshProviders,k.serverUpdateServer]),gD=R([]).pipe(vc,B(`slow-rpc-ack-requests`));function _D(e){cD.set(gD,[...e])}function vD(){return cD.get(gD)}function yD(e){return!e.includes(`subscribe`)&&!e.startsWith(`pullRequests.`)&&!mD.has(e)}function bD(e){return hD.has(e)?Math.max(fD,dD):fD}function xD(e,t,n=t){if(!yD(t))return;CD(e),TD();let r=Date.now(),i=bD(t),a={requestId:e,startedAt:new Date(r).toISOString(),startedAtMs:r,tag:n,thresholdMs:i},o=setTimeout(()=>{pD.delete(e),wD(a)},i);pD.set(e,{request:a,timeoutId:o})}function SD(e){CD(e);let t=vD();t.some(t=>t.requestId===e)&&_D(t.filter(t=>t.requestId!==e))}function CD(e){let t=pD.get(e);t&&(clearTimeout(t.timeoutId),pD.delete(e))}function wD(e){let t=[...vD(),e];if(t.length<=256){_D(t);return}_D(t.slice(-256))}function TD(){for(;pD.size>=256;){let e=pD.keys().next().value;if(e===void 0)return;CD(e)}}function ED(){return zc(gD)}var DD=Promise.resolve(),OD=e=>{DD=e},kD=()=>DD,AD=4,jD=`catalog`,MD=`shell`,ND=`thread`,PD=`server-config`,FD=`vcs-refs`,ID=`document`,LD=`5 seconds`,RD=1,zD=tn($i({schemaVersion:On(RD),environmentId:xe,snapshot:Hn})),BD=tn($i({schemaVersion:On(3),environmentId:xe,threadId:It,snapshot:s})),VD=tn($i({schemaVersion:On(1),environmentId:xe,config:un})),HD=tn($i({schemaVersion:On(1),environmentId:xe,cwd:P,refs:m})),UD=tn(py),WD=Ja(UD),GD=qt(UD),KD=Ja(zD),qD=qt(zD),JD=Ja(BD),YD=qt(BD),XD=Ja(VD),ZD=qt(VD),QD=Ja(HD),$D=qt(HD);function eO(e,t){return new ed({reason:`remote-unavailable`,detail:`Could not ${e} the local connection catalog: ${String(t)}`})}function tO(e,t){return new wd({operation:e,message:`Could not ${e.replaceAll(`-`,` `)}: ${String(t)}`})}var nO=x(`web.connectionStorage.openDatabase`)(function*(){yield*Ga(kD);let e=yield*y(e=>{if(typeof indexedDB>`u`){e(S(eO(`open`,`IndexedDB is unavailable in this browser context.`)));return}let t=!1,n=indexedDB.open(Yr(oa),AD);return n.addEventListener(`upgradeneeded`,()=>{n.result.objectStoreNames.contains(jD)||n.result.createObjectStore(jD),n.result.objectStoreNames.contains(MD)||n.result.createObjectStore(MD),n.result.objectStoreNames.contains(ND)||n.result.createObjectStore(ND),n.result.objectStoreNames.contains(PD)||n.result.createObjectStore(PD),n.result.objectStoreNames.contains(FD)||n.result.createObjectStore(FD)}),n.addEventListener(`error`,()=>{e(S(eO(`open`,n.error??`Unknown IndexedDB error`)))}),n.addEventListener(`success`,()=>{let r=n.result;if(t){r.close();return}r.addEventListener(`versionchange`,()=>r.close()),e(b(r))}),M(()=>{t=!0})}).pipe(r({duration:LD,orElse:()=>S(new ed({reason:`timeout`,detail:`Another Borg tab is holding Borg's saved data. Close your other Borg tabs, then reload this one.`}))}));return yield*rO(e),e});function rO(e){return kr(()=>ur(Zn(),di(),vr)).pipe(I(t=>t===void 0?j:E(function*(){t.document!==void 0&&(yield*iO(e,jD,ID))===void 0&&(yield*aO(e,jD,ID,t.document)),yield*kr(t.release)})),Vn)}function iO(e,t,n){return y(r=>{let i=e.transaction(t,`readonly`).objectStore(t).get(n);i.addEventListener(`error`,()=>{r(S(eO(`read`,i.error??`Unknown IndexedDB read error`)))}),i.addEventListener(`success`,()=>{r(b(i.result))})}).pipe(F(`web.connectionStorage.readDatabaseValue`))}function aO(e,t,n,r){return y(i=>{let a=e.transaction(t,`readwrite`);a.addEventListener(`error`,()=>{i(S(eO(`write`,a.error??`Unknown IndexedDB write error`)))}),a.addEventListener(`complete`,()=>{i(j)}),a.objectStore(t).put(r,n)}).pipe(F(`web.connectionStorage.writeDatabaseValue`))}function oO(e,t,n){return y(r=>{let i=e.transaction(t,`readwrite`);i.addEventListener(`error`,()=>{r(S(eO(`remove`,i.error??`Unknown IndexedDB remove error`)))}),i.addEventListener(`complete`,()=>{r(j)}),i.objectStore(t).delete(n)}).pipe(F(`web.connectionStorage.removeDatabaseValue`))}function sO(e,t,n){return y(r=>{let i=e.transaction(t,`readwrite`);i.addEventListener(`error`,()=>{r(S(eO(`remove`,i.error??`Unknown IndexedDB cursor error`)))}),i.addEventListener(`complete`,()=>{r(j)});let a=i.objectStore(t).openCursor(n);a.addEventListener(`error`,()=>{r(S(eO(`remove`,a.error??`Unknown IndexedDB cursor error`)))}),a.addEventListener(`success`,()=>{let e=a.result;e!==null&&(e.delete(),e.continue())})}).pipe(F(`web.connectionStorage.removeDatabaseValuesInRange`))}function cO(e,t){return`${e}:${t}`}function lO(e,t){return`${e}:${t}`}var uO=x(`web.connectionStorage.decodeCatalog`)(function*(e){return yield*WD(e).pipe(N(e=>eO(`decode`,e)))}),dO=x(`web.connectionStorage.encodeCatalog`)(function*(e){return yield*GD(e).pipe(N(e=>eO(`encode`,e)))});function fO(e){return t=>typeof navigator>`u`||!navigator.locks?t:kr({try:()=>navigator.locks.request(e,()=>gt(t)),catch:e=>eO(`lock`,e)}).pipe(I(e=>e))}function pO(e){let t=window.desktopBridge;return t?.getConnectionCatalog!==void 0&&t.setConnectionCatalog!==void 0?{read:kr({try:()=>t.getConnectionCatalog(),catch:e=>eO(`load`,e)}),write:e=>kr({try:()=>t.setConnectionCatalog(e),catch:e=>eO(`save`,e)}).pipe(I(e=>e?j:S(eO(`save`,`Desktop secure storage is unavailable in this system context.`))))}:{read:iO(e,jD,ID).pipe(O(e=>typeof e==`string`?e:null)),write:t=>aO(e,jD,ID,t),quarantine:t=>aO(e,jD,`${ID}:corrupt:${Date.now()}`,t),exclusive:fO(`${e.name}:catalog`)}}var mO=x(`web.connectionStorage.makeCatalogStore`)(function*(e){let t=yield*bo(C()),n=yield*sa(1),r=x(`web.connectionStorage.loadCatalog`)(function*(){let n=yield*yo(t);if(u(n))return n.value;let r=yield*e.read,i=my;return r!==null&&r.trim()!==``&&(i=yield*uO(r).pipe(li(t=>E(function*(){yield*Qi(`Discarding a corrupt web connection catalog.`,{error:t.message}),e.quarantine!==void 0&&(yield*e.quarantine(r).pipe(li(e=>Qi(`Could not quarantine the corrupt web connection catalog.`,{error:e.message}))));let n=yield*dO(my);return yield*e.write(n).pipe(li(e=>Qi(`Could not persist the recovered web connection catalog.`,{error:e.message}))),my})))),yield*to(t,w(i)),i}),i=n.withPermits(1)(r()),a=e.exclusive??(e=>e);return{read:i,update:x(`web.connectionStorage.updateCatalog`)(function*(i){yield*n.withPermits(1)(a(E(function*(){yield*to(t,C());let n=i(yield*r());yield*e.write(yield*dO(n)),yield*to(t,w(n))})))})}}),hO=Dn(E(function*(){let e=yield*Wi(nO(),e=>M(()=>e.close())),t=yield*mO(pO(e)),n=Td.of({list:t.read.pipe(O(e=>e.targets),N(e=>tO(`list-targets`,e)))}),r=Ed.of({register:e=>t.update(t=>yy(t,e)).pipe(N(e=>tO(`register-connection`,e))),remove:e=>t.update(t=>by(t,e)).pipe(N(e=>tO(`remove-connection`,e)))}),i=bd({get:e=>t.read.pipe(O(t=>ie(t.profiles.find(t=>t.connectionId===e)))),put:e=>t.update(t=>({...t,profiles:hy(t.profiles,e=>e.connectionId,e)})),remove:e=>t.update(t=>({...t,profiles:gy(t.profiles,e=>e.connectionId,e)}))}),a=vd({get:e=>t.read.pipe(O(t=>ie(t.credentials.find(t=>t.connectionId===e)?.credential))),put:(e,n)=>t.update(t=>({...t,credentials:hy(t.credentials,e=>e.connectionId,{connectionId:e,credential:n})})),remove:e=>t.update(t=>({...t,credentials:gy(t.credentials,e=>e.connectionId,e)}))}),o=of({get:e=>t.read.pipe(O(t=>ie(t.remoteDpopTokens.find(t=>t.environmentId===e)))),put:e=>t.update(t=>({...t,remoteDpopTokens:hy(t.remoteDpopTokens,e=>e.environmentId,e)})),remove:e=>t.update(t=>({...t,remoteDpopTokens:gy(t.remoteDpopTokens,e=>e.environmentId,e)}))}),s=Dd.of({loadShell:t=>iO(e,MD,t).pipe(I(e=>typeof e==`string`?KD(e).pipe(N(e=>tO(`load-shell`,e)),O(e=>e.environmentId===t?w(e.snapshot):C())):b(C())),N(e=>e._tag===`ConnectionPersistenceError`?e:tO(`load-shell`,e))),saveShell:(t,n)=>E(function*(){let r=yield*qD({schemaVersion:RD,environmentId:t,snapshot:n}).pipe(N(e=>tO(`save-shell`,e)));yield*aO(e,MD,t,r)}).pipe(N(e=>e._tag===`ConnectionPersistenceError`?e:tO(`save-shell`,e))),loadServerConfig:t=>iO(e,PD,t).pipe(I(e=>typeof e==`string`?XD(e).pipe(N(e=>tO(`load-server-config`,e)),O(e=>e.environmentId===t?w(e.config):C())):b(C())),N(e=>e._tag===`ConnectionPersistenceError`?e:tO(`load-server-config`,e))),saveServerConfig:(t,n)=>E(function*(){let r=yield*ZD({schemaVersion:1,environmentId:t,config:n}).pipe(N(e=>tO(`save-server-config`,e)));yield*aO(e,PD,t,r)}).pipe(N(e=>e._tag===`ConnectionPersistenceError`?e:tO(`save-server-config`,e))),loadThread:(t,n)=>iO(e,ND,cO(t,n)).pipe(I(e=>typeof e==`string`?JD(e).pipe(N(e=>tO(`load-thread`,e)),O(e=>e.environmentId===t&&e.threadId===n?w(e.snapshot):C())):b(C())),N(e=>e._tag===`ConnectionPersistenceError`?e:tO(`load-thread`,e))),saveThread:(t,n)=>E(function*(){let r=yield*YD({schemaVersion:3,environmentId:t,threadId:n.thread.id,snapshot:n}).pipe(N(e=>tO(`save-thread`,e)));yield*aO(e,ND,cO(t,n.thread.id),r)}).pipe(N(e=>e._tag===`ConnectionPersistenceError`?e:tO(`save-thread`,e))),loadVcsRefs:(t,n)=>iO(e,FD,lO(t,n)).pipe(I(e=>typeof e==`string`?QD(e).pipe(N(e=>tO(`load-vcs-refs`,e)),O(e=>e.environmentId===t&&e.cwd===n?w(e.refs):C())):b(C())),N(e=>e._tag===`ConnectionPersistenceError`?e:tO(`load-vcs-refs`,e))),saveVcsRefs:(t,n,r)=>E(function*(){let i=yield*$D({schemaVersion:1,environmentId:t,cwd:n,refs:r}).pipe(N(e=>tO(`save-vcs-refs`,e)));yield*aO(e,FD,lO(t,n),i)}).pipe(N(e=>e._tag===`ConnectionPersistenceError`?e:tO(`save-vcs-refs`,e))),removeVcsRefs:(t,n)=>oO(e,FD,lO(t,n)).pipe(N(e=>tO(`remove-vcs-refs`,e))),clearVcsRefs:t=>sO(e,FD,IDBKeyRange.bound(`${t}:`,`${t}:\uffff`)).pipe(N(e=>tO(`clear-vcs-refs`,e))),removeThread:(t,n)=>oO(e,ND,cO(t,n)).pipe(N(e=>tO(`remove-thread`,e))),clear:t=>Br([oO(e,MD,t),sO(e,ND,IDBKeyRange.bound(`${t}:`,`${t}:\uffff`)),oO(e,PD,t),sO(e,FD,IDBKeyRange.bound(`${t}:`,`${t}:\uffff`))],{concurrency:`unbounded`,discard:!0}).pipe(N(e=>tO(`clear-environment`,e)))});return xi(Td,n).pipe(ma(Ed,r),ma(yd,i),ma(_d,a),ma(af,o),ma(Dd,s))}));function gO(e){switch(e){case`darwin`:return`macOS`;case`win32`:return`Windows`;case`linux`:return`Linux`;default:return e?`other`:`unknown`}}function _O(e){return/macintosh/i.test(e.userAgent)&&/mac/i.test(e.platform)&&e.maxTouchPoints>1}function vO(e){let t=e.userAgent;return t.trim()===``?`unknown`:/iphone|ipad|ipod/i.test(t)||_O(e)?`iOS`:/android/i.test(t)?`Android`:/cros/i.test(t)?`ChromeOS`:/windows/i.test(t)?`Windows`:/macintosh|mac os x/i.test(t)?`macOS`:/linux|x11/i.test(t)?`Linux`:`other`}function yO(e){return e.trim()===``?`unknown`:/edg(?:e|a|ios)?\//i.test(e)?`Edge`:/opr\/|opios\//i.test(e)?`Opera`:/samsungbrowser\//i.test(e)?`Samsung Internet`:/firefox\/|fxios\//i.test(e)?`Firefox`:/chrome\/|crios\//i.test(e)?`Chrome`:/safari\//i.test(e)?`Safari`:`other`}function bO(e){let t=e.userAgent;return t.trim()===``?`unknown`:/ipad|tablet|kindle|silk/i.test(t)||/android/i.test(t)&&!/mobile/i.test(t)||_O(e)?`tablet`:/iphone|ipod|android.+mobile|mobile/i.test(t)?`mobile`:`desktop`}function xO(e){return e.desktopBridge===void 0?{label:`Borg Web`,deviceType:bO(e.identity),os:vO(e.identity),surface:`web`,webDeployment:e.hosted?`hosted`:`server`,browser:yO(e.identity.userAgent),...e.appVersion===`0.0.0`?{}:{appVersion:e.appVersion}}:{label:`Borg Desktop`,deviceType:`desktop`,os:gO(e.desktopBridge.getClientPlatform?.()),surface:`desktop`,...e.appVersion===`0.0.0`?{}:{appVersion:e.appVersion}}}var SO=new Set([`GET`,`POST`,`PUT`,`PATCH`,`DELETE`]),CO=new Set([101,103,204,205,304]),wO=e=>SO.has(e);function TO(e,t){return t.aborted?Promise.reject(t.reason):new Promise((n,r)=>{let i=()=>r(t.reason);t.addEventListener(`abort`,i,{once:!0}),e.then(n,r).finally(()=>t.removeEventListener(`abort`,i))})}var EO=async(e,t)=>{let n=typeof window>`u`?void 0:window.desktopBridge?.requestBorgCloud;if(!n)return globalThis.fetch(e,t);let r=new Request(e,t),i=r.method.toUpperCase();if(!wO(i))throw TypeError(`Borg Cloud does not take ${i} requests from the desktop app.`);let a=i===`GET`?``:await r.text(),o=await TO(n({url:r.url,method:i,headers:Object.fromEntries(r.headers),body:a.length===0?null:a}).catch(e=>{throw TypeError(`Borg Cloud could not be reached.`,{cause:e})}),r.signal);return new Response(CO.has(o.status)?null:o.body,{status:o.status,headers:o.headers})},DO=0;function OO(){return typeof navigator>`u`?`unknown`:navigator.onLine?`online`:`offline`}var kO=Cd({status:M(OO),changes:Pi(e=>Wi(M(()=>{let t=()=>fa(e,`online`),n=()=>fa(e,`offline`);return window.addEventListener(`online`,t),window.addEventListener(`offline`,n),{online:t,offline:n}}),({online:e,offline:t})=>M(()=>{window.removeEventListener(`online`,e),window.removeEventListener(`offline`,t)})).pipe(Jt))}),AO=Cp({changes:Pi(e=>Wi(M(()=>{let t=()=>{document.visibilityState===`visible`&&fa(e,`application-active`)};return document.addEventListener(`visibilitychange`,t),{visibility:t,detachCredentials:_p(()=>{fa(e,`credentials-changed`)})}}),e=>M(()=>{document.removeEventListener(`visibilitychange`,e.visibility),e.detachCredentials()})).pipe(Jt))});function jO(){return xO({appVersion:XE,hosted:rD(),identity:{userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints},desktopBridge:window.desktopBridge})}function MO(e){let t=e instanceof Error?e.message:String(e);return t.toLowerCase().includes(`cancel`)?new Y({reason:`authentication`,detail:t}):new ed({reason:`remote-unavailable`,detail:`Could not prepare the SSH environment: ${t}`})}function NO(e){return new ed({reason:`borg-unavailable`,detail:`Borg is unavailable: ${String(e)}`})}var PO=x(`web.connectionPlatform.borgTunnelCredentials`)(function*(){let e=window.desktopBridge;if(e?.getSearchAtlasAccessToken||e?.getSearchAtlasTunnelCredentials){let t=yield*kr({try:async()=>e.getSearchAtlasAccessToken?e.getSearchAtlasAccessToken():(await e.getSearchAtlasTunnelCredentials?.())?.accessToken??null,catch:e=>new ed({reason:`remote-unavailable`,detail:`Could not load the desktop Borg credentials: ${String(e)}`})});return t===null?yield*new Y({reason:`authentication`,detail:`Sign in to Search Atlas to reach this device through Borg.`}):{getAccessToken:async()=>t}}let t=PE();return t?{getAccessToken:()=>t.getAccessToken()}:yield*new Y({reason:`configuration`,detail:`Borg is not configured for this client.`})}),FO=x(`web.connectionPlatform.borgTunnelClient`)(function*(){let e=hv();if(!e)return yield*new Y({reason:`configuration`,detail:`Borg is not configured for this client.`});let t=yield*PO(),n=yield*kr({try:async()=>{let n=await t.getAccessToken();if(!n)throw Error(`Search Atlas authentication is required.`);return FE({apiUrl:e,token:n})},catch:e=>new Y({reason:`configuration`,detail:`Borg customer could not be resolved: ${String(e)}`})});return yield*ua({try:()=>Cy({apiUrl:e,customerId:n,getAccessToken:t.getAccessToken,fetch:EO}),catch:e=>new Y({reason:`configuration`,detail:`Borg is not configured for this client: ${String(e)}`})})}),IO=x(`web.connectionPlatform.ssh.provisionDesktop`)(function*(e,t){let n=yield*kr({try:()=>e.ensureSshEnvironment(t,{issuePairingToken:!0}),catch:MO}),r=n.pairingToken;if(r===null)return yield*new Y({reason:`authentication`,detail:`The SSH environment did not issue a pairing credential.`});let i=yield*kr({try:()=>e.fetchSshEnvironmentDescriptor(n.httpBaseUrl),catch:MO}),a=yield*kr({try:()=>e.bootstrapSshBearerSession(n.httpBaseUrl,r),catch:MO});return{environmentId:i.environmentId,label:i.label,bootstrap:n,bearerToken:a.access_token}}),LO=Dn(M(()=>{let e=Vu.of({metadata:jO(),scopes:Pn}),t=Bu.of({deviceId:Ze(()=>{let e=window.desktopBridge?.getSearchAtlasTunnelCredentials;return e?kr({try:()=>e(),catch:e=>new ed({reason:`remote-unavailable`,detail:`Could not load the desktop device identity: ${String(e)}`})}).pipe(O(e=>Wt(e?.deviceId))):b(C())})}),n=Hu.of({bearerToken:kr({try:Lv,catch:e=>new ed({reason:`remote-unavailable`,detail:`Could not load the desktop primary credential: ${String(e)}`})}).pipe(O(Wt))}),r=Uu.of({provision:x(`web.connectionPlatform.ssh.provision`)(function*(e){let t=window.desktopBridge;return t===void 0?yield*new Y({reason:`unsupported`,detail:`SSH environments are only available in the desktop app.`}):yield*IO(t,e)}),prepare:x(`web.connectionPlatform.ssh.prepare`)(function*(e){let t=window.desktopBridge;if(t===void 0)return yield*new Y({reason:`unsupported`,detail:`SSH environments are only available in the desktop app.`});let n=yield*kr({try:()=>t.ensureSshEnvironment(e.target,{issuePairingToken:!0}),catch:MO});return n.pairingToken===null?yield*new Y({reason:`authentication`,detail:`The SSH environment did not issue a pairing credential.`}):{bootstrap:n,bearerToken:(yield*kr({try:()=>t.bootstrapSshBearerSession(n.httpBaseUrl,n.pairingToken),catch:MO})).access_token}}),disconnect:x(`web.connectionPlatform.ssh.disconnect`)(function*(e){let t=window.desktopBridge;t!==void 0&&(yield*kr({try:()=>t.disconnectSshEnvironment(e),catch:e=>new ed({reason:`remote-unavailable`,detail:`Could not disconnect the SSH environment: ${String(e)}`})}))})}),i=Wu.of({openTunnel:x(`web.connectionPlatform.borgTunnel.openTunnel`)(function*(){let e=yield*FO();return{ticket:yield*kr({try:()=>e.requestTicket(),catch:NO}),tunnelId:Sy()}}),isDeviceOnline:x(`web.connectionPlatform.borgTunnel.isDeviceOnline`)(function*(e){let t=yield*FO();return(yield*kr({try:()=>t.status(e),catch:NO})).online})});return xi(Bu,t).pipe(ma(Hu,n),ma(Vu,e),ma(Uu,r),ma(Wu,i))})),RO=x(`web.connectionPlatform.loadPrimaryConnectionRegistration`)(function*(e){let t=yield*go({httpBaseUrl:e.target.httpBaseUrl}).pipe(ir(Vv),N(Qd));return new dd({target:new Ku({environmentId:t.environmentId,label:t.label,httpBaseUrl:e.target.httpBaseUrl,wsBaseUrl:e.target.wsBaseUrl})})}),zO=x(`web.connectionPlatform.loadSecondaryConnectionRegistration`)(function*(e){if(e.httpBaseUrl===null||e.wsBaseUrl===null||e.bootstrapToken===void 0)return yield*new ed({reason:`endpoint-unavailable`,detail:`Desktop-local backend ${e.id} is not ready yet.`});let t=e.httpBaseUrl,n=e.wsBaseUrl,r=yield*go({httpBaseUrl:t}).pipe(N(Qd)),i=yield*en,a=yield*zd({httpBaseUrl:t,credential:e.bootstrapToken,scopes:Pn,clientMetadata:jO()}).pipe(N(Qd)),o=Co(e.id),s=e.label||r.label;return{registration:new fd({target:new qu({environmentId:r.environmentId,label:s,connectionId:o}),profile:new id({connectionId:o,environmentId:r.environmentId,label:s,httpBaseUrl:t,wsBaseUrl:n}),credential:new ld({token:a.access_token})}),expiresAtEpochMs:HO(i,a.expires_in),refreshAtEpochMs:UO(i,a.expires_in)}}),BO=`3 seconds`,VO=5e3;function HO(e,t){return e+Math.max(0,t*1e3)}function UO(e,t){return Math.max(e,HO(e,t)-VO)}function WO(e=Nv){try{return{_tag:`Success`,target:e()}}catch(e){return{_tag:`Failure`,cause:e}}}function GO(e,t){return t._tag===`Failure`?e.get(Ea):void 0}function KO(e,t,n){return e.signature===t&&(e.refreshAtEpochMs===void 0||n<e.refreshAtEpochMs)}function qO(e,t,n){return e.signature===t&&e.expiresAtEpochMs!==void 0&&n<e.expiresAtEpochMs}function JO(e,t,n){return t._tag===`Success`?new Map:new Map([...e].filter(([,e])=>e.expiresAtEpochMs!==void 0&&n<e.expiresAtEpochMs))}var YO=Ar(hO,kO,AO,LO,Mn(ih,E(function*(){if(rD())return ih.of({registrations:Si});let e=yield*bo(new Map),t=E(function*(){let t=yield*yo(e),n=yield*en,r=new Map,i=[],a=WO(),o=GO(t,a);if(o!==void 0&&(r.set(Ea,o),i.push(o.registration)),a._tag===`Failure`)yield*Qi(`Could not read the primary environment topology.`,{cause:a.cause});else if(a.target!==null){let e=a.target,o=`primary|${e.target.httpBaseUrl}|${e.target.wsBaseUrl}`,s=t.get(Ea);if(s!==void 0&&KO(s,o,n))r.set(Ea,s),i.push(s.registration);else{let t=yield*RO(e).pipe(wn(e=>Qi(`Could not discover the primary environment.`,{error:e})),Ir);if(u(t)){let e={signature:o,registration:t.value};r.set(Ea,e),i.push(t.value)}}}let s=Eo();for(let[e,a]of JO(t,s,n))r.set(e,a),i.push(a.registration);if(s._tag===`Failure`)yield*Qi(`Could not read the desktop-local backend topology.`,{cause:s.cause});else for(let e of s.bootstraps){let a=`${e.httpBaseUrl}|${e.wsBaseUrl}|${e.bootstrapToken??``}`,o=t.get(e.id);if(o!==void 0&&KO(o,a,n)){r.set(e.id,o),i.push(o.registration);continue}let s=yield*zO(e).pipe(wn(t=>Qi(`Could not connect a desktop-local backend.`,{id:e.id,error:t})),Ir);if(u(s)){let t={signature:a,...s.value};r.set(e.id,t),i.push(s.value.registration)}else o!==void 0&&qO(o,a,n)&&(r.set(e.id,o),i.push(o.registration))}return yield*to(e,r),i}).pipe(ir(lo));return ih.of({registrations:pn(BO).pipe(Ct(()=>t))})})),ea(Od,Od.of({clear:(e,t)=>M(()=>{ho(e,t)})})),ea(Wp,Wp.of({observe:({environmentId:e,method:t})=>M(()=>{DO+=1;let n=`${e}:${DO}`;return xD(n,t,`${t} · ${e}`),M(()=>{SD(n)})})}))),XO=`borg.searchatlas.api-key`,ZO=`borg.searchatlas.api-customer-id`,QO=`borg-search-atlas-credential-changed`,$O=e=>/^\d+$/u.test(e)&&Number(e)>0,ek=()=>{try{let e=window.sessionStorage.getItem(XO)?.trim(),t=window.sessionStorage.getItem(ZO)?.trim();return e&&t&&$O(t)?{kind:`apiKey`,key:e,customerId:t}:void 0}catch{return}};function tk(e,t){try{e.trim()&&$O(t.trim())?(window.sessionStorage.setItem(XO,e.trim()),window.sessionStorage.setItem(ZO,t.trim())):(window.sessionStorage.removeItem(XO),window.sessionStorage.removeItem(ZO)),window.dispatchEvent(new Event(QO))}catch{}}function nk(){tk(``,``)}var rk=e=>e===null||e.trim().length===0?C():w({kind:`jwt`,token:e}),ik=e=>{let t=rk(e);return u(t)?t:ie(ek())},ak=Mn(Jf,E(function*(){let e=typeof window>`u`?void 0:window.desktopBridge,t=e?null:PE(),n=yield*yi(),r=async()=>{let n=null;try{n=e?e.getSearchAtlasAccessToken?await e.getSearchAtlasAccessToken():(await e.getSearchAtlasTunnelCredentials?.())?.accessToken??null:t?await t.getAccessToken():null}catch{n=null}return e?rk(n):ik(n)};t!==null&&(yield*Wi(M(()=>t.subscribe(e=>fa(n,ik(e)))),e=>M(e)));let i=e?.onSearchAtlasCredentialChanged;return i&&(yield*Wi(M(()=>i(()=>{r().then(e=>fa(n,e))})),e=>M(e))),typeof window<`u`&&(yield*Wi(M(()=>{let e=()=>{r().then(e=>fa(n,e))};window.addEventListener(QO,e);let t=_p(e);return()=>{window.removeEventListener(QO,e),t()}}),e=>M(e))),Jf.of({current:Ga(r),changes:ae(n)})}));function ok(){try{return{key:window.sessionStorage.getItem(XO)??``,customerId:window.sessionStorage.getItem(ZO)??``}}catch{return{key:``,customerId:``}}}var sk=YO.pipe(da(qv)),ck=Ar(ng,_h,uv),lk=a(oh({environmentThemes:!0}),ck).pipe(Ai(Ar(qv,sk,uy,ak))),uk=cc(Ar(dy,Qh,Yh(hv)).pipe(Ai(lk)));function dk(e){return e.pipe(O(w),li(e=>Qi(`Could not load the initial environment configuration.`).pipe(Ya({...hp(e)}),cr(C()))))}var fk=6e3,pk=x(`clientRuntime.state.fetchEnvironmentSessionState`)(function*(e){let t=uo(e.prepared.httpBaseUrl,`/api/auth/session`),n=yield*fo(e.prepared.httpBaseUrl),r=yield*ph(e.prepared.httpAuthorization,`GET`,t,e.signer);return yield*ro(t,e.timeoutMs??fk,fh(e.prepared.httpAuthorization,n.auth.session({headers:r})))});function mk(e){let t=z(t=>e.atom(hm(t,ke(Ip.pipe(O(e=>Zo(e.session).pipe(Ct(dt({onNone:()=>b(C()),onSome:e=>dk(e.initialConfig)}))))))),{initialValue:C()})),n=z(e=>R(n=>Qt(ja(gs(n(t(e))),()=>C()))).pipe(B(`environment-config-value:${e}`))),r=z(t=>e.atom(hm(t,ke(Ip.pipe(O(e=>Zo(e.prepared))))),{initialValue:C()})),i=z(e=>R(t=>ja(gs(t(r(e))),()=>C())).pipe(B(`environment-prepared-connection:${e}`))),a=z(t=>e.atom(e=>{let n=Qt(e(i(t)));return n===null?Nr:E(function*(){let e=yield*an(ef);return yield*pk({prepared:n,signer:e})})}).pipe(Cc({staleTime:3e4,revalidateOnMount:!0}),Gs(5*6e4),B(`environment-session-state:${t}`)));return{initialConfigAtom:t,initialConfigValueAtom:n,preparedConnectionAtom:r,preparedConnectionValueAtom:i,sessionStateAtom:a,sessionStateValueAtom:z(e=>R(t=>Qt(gs(t(a(e))))??null).pipe(B(`environment-session-state-value:${e}`)))}}var hk=mk(uk),gk=R(C()).pipe(B(`web-prepared-connection:empty`));function _k(e){let t=(0,Gc.c)(2),n;return t[0]===e?n=t[1]:(n=e===null?gk:hk.preparedConnectionValueAtom(e),t[0]=e,t[1]=n),zc(n)}function vk(e){return Qt(cD.get(hk.preparedConnectionValueAtom(e)))}export{u_ as $,Jp as $t,PE as A,gs as An,uh as At,mv as B,_m as Bt,XE as C,Cs as Cn,Ch as Ct,zE as D,ls as Dn,dh as Dt,KE as E,os as En,xh as Et,Dv as F,Lo as Fn,$p as Ft,J_ as G,nm as Gt,ov as H,sm as Ht,Mv as I,vm as It,U_ as J,em as Jt,H_ as K,tm as Kt,hv as L,xm as Lt,Kv as M,L as Mn,Lm as Mt,Vv as N,Xo as Nn,zm as Nt,RE as O,ss as On,ch as Ot,Pv as P,$o as Pn,Rm as Pt,m_ as Q,Kp as Qt,gv as R,ym as Rt,JE as S,B as Sn,Nh as St,GE as T,_s as Tn,yh as Tt,tv as U,hm as Ut,pv as V,cm as Vt,Y_ as W,rm as Wt,p_ as X,um as Xt,B_ as Y,am as Yt,h_ as Z,im as Zt,aD as _,z as _n,Bh as _t,QO as a,_p as an,Jg as at,qE as b,Gs as bn,Ph as bt,tk as c,Yf as cn,Pg as ct,ED as d,td as dn,dg as dt,Yp as en,o_ as et,lD as f,Wc as fn,sg as ft,QE as g,jc as gn,Lh as gt,oD as h,Fc as hn,zh as ht,uk as i,vp as in,qg as it,tE as j,Zo as jn,Wm as jt,FE as k,cs as kn,lh as kt,EO as l,Dd as ln,gg as lt,sD as m,zc as mn,cg as mt,vk as n,Vp as nn,Rg as nt,nk as o,hp as on,Bg as ot,cD as p,Uc as pn,mg as pt,V_ as q,mm as qt,_k as r,Ip as rn,zg as rt,ok as s,Xf as sn,Ng as st,hk as t,Zp as tn,Zg as tt,OD as u,nd as un,lg as ut,rD as v,vc as vn,Wh as vt,ZE as w,us as wn,Sh as wt,YE as x,Cc as xn,Fh as xt,iD as y,R as yn,Ih as yt,fv as z,bm as zt};
67
- //# sourceMappingURL=session-D3Szkrpk.js.map