@openagt/dashboard 0.56.0 → 0.58.0

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 (223) hide show
  1. package/README.md +19 -1
  2. package/dist/built-in.d.ts +9 -0
  3. package/dist/built-in.d.ts.map +1 -1
  4. package/dist/built-in.js +19 -1
  5. package/dist/built-in.js.map +1 -1
  6. package/dist/cli/skills.d.ts +7 -9
  7. package/dist/cli/skills.d.ts.map +1 -1
  8. package/dist/cli/skills.js +25 -22
  9. package/dist/cli/skills.js.map +1 -1
  10. package/dist/client.d.ts +3 -0
  11. package/dist/client.d.ts.map +1 -1
  12. package/dist/client.js +3 -0
  13. package/dist/client.js.map +1 -1
  14. package/dist/clone-project.d.ts +10 -8
  15. package/dist/clone-project.d.ts.map +1 -1
  16. package/dist/clone-project.js +36 -47
  17. package/dist/clone-project.js.map +1 -1
  18. package/dist/cloud-scratch-refs.d.ts +9 -1
  19. package/dist/cloud-scratch-refs.d.ts.map +1 -1
  20. package/dist/cloud-scratch-refs.js +9 -2
  21. package/dist/cloud-scratch-refs.js.map +1 -1
  22. package/dist/daemon-runtime.d.ts.map +1 -1
  23. package/dist/daemon-runtime.js +37 -5
  24. package/dist/daemon-runtime.js.map +1 -1
  25. package/dist/daemon-services.d.ts.map +1 -1
  26. package/dist/daemon-services.js +4 -2
  27. package/dist/daemon-services.js.map +1 -1
  28. package/dist/daemon.d.ts.map +1 -1
  29. package/dist/daemon.js +7 -0
  30. package/dist/daemon.js.map +1 -1
  31. package/dist/dashboard/copy-logins.d.ts +1 -1
  32. package/dist/dashboard/copy-logins.d.ts.map +1 -1
  33. package/dist/dashboard/copy-logins.js +9 -6
  34. package/dist/dashboard/copy-logins.js.map +1 -1
  35. package/dist/dashboard/git-hosts.d.ts +3 -3
  36. package/dist/dashboard/git-hosts.d.ts.map +1 -1
  37. package/dist/dashboard/git-hosts.js +3 -2
  38. package/dist/dashboard/git-hosts.js.map +1 -1
  39. package/dist/dashboard/index.d.ts +1 -1
  40. package/dist/dashboard/index.d.ts.map +1 -1
  41. package/dist/dashboard/logins-sync.d.ts +25 -1
  42. package/dist/dashboard/logins-sync.d.ts.map +1 -1
  43. package/dist/dashboard/logins-sync.js +78 -15
  44. package/dist/dashboard/logins-sync.js.map +1 -1
  45. package/dist/dashboard/overview.d.ts +4 -2
  46. package/dist/dashboard/overview.d.ts.map +1 -1
  47. package/dist/dashboard/overview.js +7 -3
  48. package/dist/dashboard/overview.js.map +1 -1
  49. package/dist/dashboard/person.d.ts +13 -12
  50. package/dist/dashboard/person.d.ts.map +1 -1
  51. package/dist/dashboard/person.js +7 -21
  52. package/dist/dashboard/person.js.map +1 -1
  53. package/dist/dashboard/projects.d.ts.map +1 -1
  54. package/dist/dashboard/projects.js +5 -1
  55. package/dist/dashboard/projects.js.map +1 -1
  56. package/dist/dashboard/repos.d.ts +75 -0
  57. package/dist/dashboard/repos.d.ts.map +1 -0
  58. package/dist/dashboard/repos.js +142 -0
  59. package/dist/dashboard/repos.js.map +1 -0
  60. package/dist/dashboard/send-skills.d.ts +12 -1
  61. package/dist/dashboard/send-skills.d.ts.map +1 -1
  62. package/dist/dashboard/send-skills.js +11 -3
  63. package/dist/dashboard/send-skills.js.map +1 -1
  64. package/dist/dashboard/start-branch.d.ts.map +1 -1
  65. package/dist/dashboard/start-branch.js +5 -3
  66. package/dist/dashboard/start-branch.js.map +1 -1
  67. package/dist/dashboard/types.d.ts +26 -15
  68. package/dist/dashboard/types.d.ts.map +1 -1
  69. package/dist/dashboard-bundle/assets/host/module-Jq6JDNSB.js +1 -0
  70. package/dist/dashboard-bundle/assets/main-BIyFp6td.js +152 -0
  71. package/dist/dashboard-bundle/assets/main-C_ohUWaY.css +2 -0
  72. package/dist/dashboard-bundle/assets/module-Cqcyno9w.js +19 -0
  73. package/dist/dashboard-bundle/index.html +19 -4
  74. package/dist/dashboard-rpc/agents.d.ts +64 -0
  75. package/dist/dashboard-rpc/agents.d.ts.map +1 -0
  76. package/dist/dashboard-rpc/agents.js +137 -0
  77. package/dist/dashboard-rpc/agents.js.map +1 -0
  78. package/dist/dashboard-rpc/backup.d.ts +36 -0
  79. package/dist/dashboard-rpc/backup.d.ts.map +1 -0
  80. package/dist/dashboard-rpc/backup.js +62 -0
  81. package/dist/dashboard-rpc/backup.js.map +1 -0
  82. package/dist/dashboard-rpc/copied-logins.d.ts +1 -1
  83. package/dist/dashboard-rpc/copied-logins.d.ts.map +1 -1
  84. package/dist/dashboard-rpc/copied-logins.js +7 -7
  85. package/dist/dashboard-rpc/copied-logins.js.map +1 -1
  86. package/dist/dashboard-rpc/hosted-repos.d.ts +42 -0
  87. package/dist/dashboard-rpc/hosted-repos.d.ts.map +1 -0
  88. package/dist/dashboard-rpc/hosted-repos.js +74 -0
  89. package/dist/dashboard-rpc/hosted-repos.js.map +1 -0
  90. package/dist/dashboard-rpc/index.d.ts +3 -2
  91. package/dist/dashboard-rpc/index.d.ts.map +1 -1
  92. package/dist/dashboard-rpc/index.js +6 -3
  93. package/dist/dashboard-rpc/index.js.map +1 -1
  94. package/dist/dashboard-rpc/logins.d.ts +3 -33
  95. package/dist/dashboard-rpc/logins.d.ts.map +1 -1
  96. package/dist/dashboard-rpc/logins.js +8 -51
  97. package/dist/dashboard-rpc/logins.js.map +1 -1
  98. package/dist/dashboard-rpc/modules.d.ts +4 -3
  99. package/dist/dashboard-rpc/modules.d.ts.map +1 -1
  100. package/dist/dashboard-rpc/modules.js +6 -5
  101. package/dist/dashboard-rpc/modules.js.map +1 -1
  102. package/dist/dashboard-rpc/person.d.ts +34 -1
  103. package/dist/dashboard-rpc/person.d.ts.map +1 -1
  104. package/dist/dashboard-rpc/person.js +49 -8
  105. package/dist/dashboard-rpc/person.js.map +1 -1
  106. package/dist/dashboard-rpc/personal-folder.d.ts +19 -2
  107. package/dist/dashboard-rpc/personal-folder.d.ts.map +1 -1
  108. package/dist/dashboard-rpc/personal-folder.js +24 -6
  109. package/dist/dashboard-rpc/personal-folder.js.map +1 -1
  110. package/dist/dashboard-rpc/project-agent-data.d.ts +12 -0
  111. package/dist/dashboard-rpc/project-agent-data.d.ts.map +1 -1
  112. package/dist/dashboard-rpc/project-agent-data.js +17 -2
  113. package/dist/dashboard-rpc/project-agent-data.js.map +1 -1
  114. package/dist/dashboard-rpc/projects.d.ts +63 -10
  115. package/dist/dashboard-rpc/projects.d.ts.map +1 -1
  116. package/dist/dashboard-rpc/projects.js +103 -23
  117. package/dist/dashboard-rpc/projects.js.map +1 -1
  118. package/dist/dashboard-rpc/reads.d.ts +1 -1
  119. package/dist/dashboard-rpc/reads.d.ts.map +1 -1
  120. package/dist/dashboard-rpc/reads.js +6 -2
  121. package/dist/dashboard-rpc/reads.js.map +1 -1
  122. package/dist/dashboard-rpc/runs-changed.d.ts.map +1 -1
  123. package/dist/dashboard-rpc/runs-changed.js +9 -3
  124. package/dist/dashboard-rpc/runs-changed.js.map +1 -1
  125. package/dist/dashboard-rpc/send-as.d.ts +42 -0
  126. package/dist/dashboard-rpc/send-as.d.ts.map +1 -0
  127. package/dist/dashboard-rpc/send-as.js +78 -0
  128. package/dist/dashboard-rpc/send-as.js.map +1 -0
  129. package/dist/dashboard-rpc/skills.d.ts +2 -1
  130. package/dist/dashboard-rpc/skills.d.ts.map +1 -1
  131. package/dist/dashboard-rpc/skills.js +6 -4
  132. package/dist/dashboard-rpc/skills.js.map +1 -1
  133. package/dist/index.d.ts +1 -1
  134. package/dist/index.d.ts.map +1 -1
  135. package/dist/module-types/dashboard/components/ui/confirm-dialog.d.ts +5 -1
  136. package/dist/module-types/dashboard/components/ui/popup-placement.d.ts +5 -0
  137. package/dist/module-types/dashboard/components/ui/row-item.d.ts +1 -2
  138. package/dist/module-types/dashboard/lib/route.d.ts +3 -3
  139. package/dist/module-types/dashboard/module/index.d.ts +18 -3
  140. package/dist/module-types/src/built-in.d.ts +9 -0
  141. package/dist/module-types/src/client.d.ts +3 -0
  142. package/dist/module-types/src/clone-project.d.ts +10 -8
  143. package/dist/module-types/src/dashboard/git-hosts.d.ts +3 -3
  144. package/dist/module-types/src/dashboard/logins-sync.d.ts +25 -1
  145. package/dist/module-types/src/dashboard/overview.d.ts +4 -2
  146. package/dist/module-types/src/dashboard/person.d.ts +13 -12
  147. package/dist/module-types/src/dashboard/repos.d.ts +74 -0
  148. package/dist/module-types/src/dashboard/send-skills.d.ts +12 -1
  149. package/dist/module-types/src/dashboard/types.d.ts +26 -15
  150. package/dist/module-types/src/dashboard-rpc/agents.d.ts +63 -0
  151. package/dist/module-types/src/dashboard-rpc/backup.d.ts +35 -0
  152. package/dist/module-types/src/dashboard-rpc/copied-logins.d.ts +1 -1
  153. package/dist/module-types/src/dashboard-rpc/hosted-repos.d.ts +41 -0
  154. package/dist/module-types/src/dashboard-rpc/index.d.ts +3 -2
  155. package/dist/module-types/src/dashboard-rpc/logins.d.ts +3 -33
  156. package/dist/module-types/src/dashboard-rpc/modules.d.ts +4 -3
  157. package/dist/module-types/src/dashboard-rpc/person.d.ts +34 -1
  158. package/dist/module-types/src/dashboard-rpc/personal-folder.d.ts +19 -2
  159. package/dist/module-types/src/dashboard-rpc/project-agent-data.d.ts +12 -0
  160. package/dist/module-types/src/dashboard-rpc/projects.d.ts +63 -10
  161. package/dist/module-types/src/dashboard-rpc/reads.d.ts +1 -1
  162. package/dist/module-types/src/dashboard-rpc/send-as.d.ts +41 -0
  163. package/dist/module-types/src/dashboard-rpc/skills.d.ts +2 -1
  164. package/dist/module-types/src/index.d.ts +1 -1
  165. package/dist/module-types/src/project-address.d.ts +8 -1
  166. package/dist/module-types/src/project-hooks.d.ts +12 -2
  167. package/dist/module-types/src/project-modules.d.ts +6 -0
  168. package/dist/module-types/src/project-skills/catalogue.d.ts +6 -9
  169. package/dist/module-types/src/registry.d.ts +13 -0
  170. package/dist/module-types/src/store/agent-store.d.ts +14 -0
  171. package/dist/module-types/src/store/branches.d.ts +7 -0
  172. package/dist/module-types/src/store/git-host.d.ts +1 -3
  173. package/dist/module-types/src/typed-repository.d.ts +16 -0
  174. package/dist/project-address.d.ts +8 -1
  175. package/dist/project-address.d.ts.map +1 -1
  176. package/dist/project-address.js +11 -4
  177. package/dist/project-address.js.map +1 -1
  178. package/dist/project-hooks.d.ts +12 -2
  179. package/dist/project-hooks.d.ts.map +1 -1
  180. package/dist/project-hooks.js +9 -2
  181. package/dist/project-hooks.js.map +1 -1
  182. package/dist/project-modules.d.ts +6 -0
  183. package/dist/project-modules.d.ts.map +1 -1
  184. package/dist/project-modules.js +13 -1
  185. package/dist/project-modules.js.map +1 -1
  186. package/dist/project-skills/catalogue.d.ts +6 -9
  187. package/dist/project-skills/catalogue.d.ts.map +1 -1
  188. package/dist/project-skills/catalogue.js +9 -8
  189. package/dist/project-skills/catalogue.js.map +1 -1
  190. package/dist/registry.d.ts +13 -0
  191. package/dist/registry.d.ts.map +1 -1
  192. package/dist/registry.js +43 -2
  193. package/dist/registry.js.map +1 -1
  194. package/dist/sessions-home.d.ts +11 -0
  195. package/dist/sessions-home.d.ts.map +1 -0
  196. package/dist/sessions-home.js +41 -0
  197. package/dist/sessions-home.js.map +1 -0
  198. package/dist/store/agent-store.d.ts +14 -0
  199. package/dist/store/agent-store.d.ts.map +1 -1
  200. package/dist/store/agent-store.js.map +1 -1
  201. package/dist/store/branches.d.ts +7 -0
  202. package/dist/store/branches.d.ts.map +1 -1
  203. package/dist/store/branches.js +37 -2
  204. package/dist/store/branches.js.map +1 -1
  205. package/dist/store/git-host.d.ts +1 -3
  206. package/dist/store/git-host.d.ts.map +1 -1
  207. package/dist/store/git-host.js +0 -14
  208. package/dist/store/git-host.js.map +1 -1
  209. package/dist/typed-repository.d.ts +17 -0
  210. package/dist/typed-repository.d.ts.map +1 -0
  211. package/dist/typed-repository.js +29 -0
  212. package/dist/typed-repository.js.map +1 -0
  213. package/dist/website/assets/entries/{entry-client-routing.C33s8xOY.js → entry-client-routing.CvPemUV2.js} +2 -2
  214. package/dist/website/assets/entries/{pages_go-to-dashboard.C3OBfFYB.js → pages_go-to-dashboard.CUCqKDCh.js} +1 -1
  215. package/dist/website/banner/index.html +1 -1
  216. package/dist/website/go-to-dashboard/index.html +3 -3
  217. package/dist/website/index.html +1 -1
  218. package/dist/website/press/index.html +1 -1
  219. package/package.json +21 -21
  220. package/dist/dashboard-bundle/assets/host/module-BMyNrbiB.js +0 -1
  221. package/dist/dashboard-bundle/assets/main-BK8YIg7v.js +0 -152
  222. package/dist/dashboard-bundle/assets/main-mnNPGbsz.css +0 -2
  223. package/dist/dashboard-bundle/assets/module-DY3Aigsz.js +0 -19
@@ -0,0 +1,152 @@
1
+ import{n as e,r as t,t as n}from"./rolldown-runtime-QTnfLwEv.js";import{t as r}from"./react-CZI7_Jkm.js";import{t as i}from"./react-dom-cJyBB_A4.js";import{t as a}from"./client-CbBRB9m4.js";import{$a as o,$i as s,$n as c,$r as l,$t as u,A as d,Aa as f,Ai as p,An as m,Ar as h,At as g,B as _,Ba as v,Bi as y,Bn as b,Br as x,C as S,Ca as C,Ci as w,Cn as T,Cr as E,Ct as D,D as O,Da as k,Di as A,Dn as j,Dr as M,Dt as N,E as P,Ea as F,Ei as ee,En as te,Er as ne,Et as I,Fa as L,Fi as R,Fn as re,Fr as ie,Ft as ae,G as oe,Ga as se,Gi as ce,Gn as le,Gr as ue,H as de,Ha as fe,Hi as pe,Hn as me,Hr as he,Ht as ge,I as _e,Ia as ve,Ii as ye,In as be,Ir as xe,It as Se,Ji as Ce,Jn as we,Jr as Te,Jt as Ee,K as De,Ka as Oe,Ki as ke,Kn as z,Kr as Ae,La as B,Li as je,Ln as Me,Lr as Ne,Lt as Pe,M as Fe,Ma as Ie,Mi as Le,Mr as Re,Mt as ze,N as Be,Na as Ve,Ni as He,Nr as Ue,Nt as We,Oa as Ge,Oi as Ke,On as qe,Or as Je,Ot as Ye,P as Xe,Pa as Ze,Pi as Qe,Pn as $e,Pr as et,Pt as tt,Q as nt,Qa as rt,Qi as it,Qn as at,Qr as ot,Qt as st,R as ct,Ra as lt,Ri as ut,Rn as dt,Rr as ft,Rt as pt,S as mt,Sa as ht,Si as V,Sn as gt,Sr as _t,St as vt,T as yt,Ta as bt,Ti as xt,Tn as St,Tr as Ct,Tt as wt,U as Tt,Ua as Et,Ui as Dt,Un as Ot,V as kt,Va as H,Vi as U,Vn as At,Vr as jt,Wa as Mt,Wi as Nt,Wn as Pt,Wr as Ft,X as It,Xa as Lt,Xi as Rt,Xn as zt,Xr as Bt,Xt as Vt,Y as Ht,Ya as Ut,Yi as Wt,Yn as Gt,Yr as Kt,Yt as qt,Z as Jt,Za as Yt,Zi as Xt,Zn as Zt,Zr as Qt,Zt as $t,_ as en,_i as tn,_r as nn,_t as rn,a as an,aa as on,ai as sn,an as cn,ao as ln,ar as un,at as dn,b as fn,ba as pn,bi as W,bn as mn,br as hn,bt as gn,ca as _n,ci as vn,cn as yn,cr as bn,di as xn,dr as Sn,dt as Cn,ea as wn,ei as Tn,en as En,eo as Dn,er as On,et as kn,fa as An,fi as jn,fn as Mn,fr as Nn,ft as Pn,g as Fn,gi as In,gr as Ln,gt as Rn,h as zn,ha as Bn,hi as Vn,hr as Hn,ht as Un,i as Wn,ia as Gn,ii as Kn,in as qn,io as Jn,ir as Yn,j as Xn,ja as Zn,ji as Qn,jn as $n,jr as er,jt as tr,k as nr,ka as rr,ki as ir,kn as ar,kr as or,kt as sr,la as cr,li as lr,ln as ur,lr as dr,m as fr,ma as pr,mi as mr,mr as hr,mt as gr,na as _r,ni as vr,nn as yr,no as br,nr as xr,nt as Sr,o as Cr,oa as wr,on as Tr,or as Er,ot as Dr,p as Or,pa as kr,pi as Ar,pr as jr,pt as Mr,q as Nr,qa as Pr,qi as Fr,qn as Ir,qr as Lr,r as Rr,ri as zr,rn as Br,ro as Vr,rr as Hr,rt as Ur,sa as Wr,si as Gr,sn as Kr,sr as qr,st as Jr,t as Yr,ta as Xr,ti as Zr,tn as Qr,to as $r,tr as ei,tt as ti,u as ni,ua as ri,ui as ii,un as ai,ur as oi,ut as si,v as ci,va as li,vi as G,vr as ui,vt as di,w as fi,wa as pi,wi as mi,wn as hi,wr as gi,wt as _i,x as vi,xa as yi,xi as bi,xn as xi,xr as Si,xt as Ci,y as wi,ya as Ti,yi as K,yn as Ei,yr as Di,yt as Oi,z as ki,za as q,zi as Ai,zn as ji,zr as Mi,zt as Ni}from"./module-Cqcyno9w.js";import{t as Pi}from"./jsx-runtime-By8HlURe.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var Fi=t(i(),1),Ii=t(a(),1);function Li(e){return Array.isArray(e)?[...e]:e?[e]:[]}function Ri(e){switch(e.kind){case`session`:return`◆ ${e.fake?`fake`:e.driver}${e.model?` (${e.model})`:``} in ${e.workspace}${e.sessionLink?` — ${e.sessionLink}`:``}`;case`session-update`:return` session ${e.sessionId}${e.sessionLink?` — ${e.sessionLink}`:``}`;case`screen`:return`◆ ${e.label}`;case`log`:return` ${e.message}`;case`error`:return`✗ ${e.headline}${e.detail?`\n ${e.detail.replace(/\n/g,`
2
+ `)}`:``}`;case`settled`:return`◆ done for now — waiting for your next message`;case`branch`:return` branch: ${e.branch}`;case`cloud-anchor`:return` hand-off anchor: ${e.sha.slice(0,7)}`;case`pull-request`:return` pull request: #${e.number}`;case`usage`:return` spend: $${e.costUsd.toFixed(4)}`;case`choice`:{let t=t=>e.multi?t.default?`[x]`:`[ ]`:t.id===e.recommended?`●`:`○`,n=e.options.map(e=>` ${t(e)} ${e.label}`).join(`
3
+ `);return`? ${e.title}\n${n}`}case`choice-resolved`:return` ✓ chose ${Li(e.picked).join(`, `)||`(none)`} (${e.by})`;case`driver`:return zi(e.event);case`intent`:return`▶ "${Vi(e.text)}"`;case`title`:return`Named the session: ${Vi(e.text)}`;case`end`:return e.ok?`✓ finished`:e.stopped?`■ stopped`:e.waiting?`? waiting for an answer`:`✗ failed: ${e.detail??`unknown error`}`}}function zi(e){switch(e.type){case`start`:return` › prompt: ${Vi(e.prompt,140)}`;case`steered`:return` › message: ${Vi(e.text,140)}`;case`session`:return` session ${e.sessionId}`;case`model`:return` model ${e.model}`;case`tokens`:return` ${e.tokens} tokens so far`;case`thinking`:return` thinking`;case`partial`:case`text`:return` ${Vi(e.text)}`;case`action`:return e.detail===void 0?` · ${e.label}`:` · ${e.label} ${Vi(e.detail,140)}`;case`output`:return` ${e.failed?`✗`:`→`} ${Vi(e.text,140)}`;case`subagent`:return` ${e.status===`ended`?`✓`:e.status===`failed`?`✗`:`·`} subagent ${Vi(e.name??e.role??e.id,60)}`;case`thought`:return` 💭 ${Vi(e.text,140)}`;case`result`:return` ‹ turn complete`;case`rate-limit`:return` ${Bi(e.limit)}`;case`error`:return` ! agent error: ${e.message}`;case`notice`:return` ~ ${e.message}`;case`question`:return` ? ${Vi(e.question.title,140)}`}}function Bi(e){let t=new Date(e.resetsAt).toISOString();return e.status===`rejected`?`✗ quota exhausted (${e.window}), resets ${t}`:e.status===`allowed_warning`?`! quota running low (${e.window}), resets ${t}`:`· quota ${e.status} (${e.window}), resets ${t}`}function Vi(e,t=100){let n=e.replace(/\s+/g,` `).trim();return n.length>t?n.slice(0,t-1)+`…`:n}var Hi=[`openagent`,`neutral`],Ui={openagent:`OpenAgent`,neutral:`Neutral`},Wi={openagent:[`green`,`aqua`,`yellow`,`orange`,`red`,`purple`],neutral:[`amber`,`blue`,`cyan`,`emerald`,`fuchsia`,`green`,`indigo`,`lime`,`orange`,`pink`,`purple`,`red`,`rose`,`sky`,`teal`,`violet`,`yellow`]},Gi={openagent:`Blue`,neutral:`The colours’ own`};function Ki(e,t){return Wi[e??`openagent`].includes(t)?t:void 0}var qi={"ibm-plex-sans":`IBM Plex Sans`,figtree:`Figtree`,inter:`Inter`,geist:`Geist`,"plus-jakarta-sans":`Plus Jakarta Sans`,manrope:`Manrope`},Ji={"jetbrains-mono":`JetBrains Mono`,"geist-mono":`Geist Mono`,"ibm-plex-mono":`IBM Plex Mono`,"fira-code":`Fira Code`,"source-code-pro":`Source Code Pro`},Yi={"source-serif-4":`Source Serif 4`,newsreader:`Newsreader`,literata:`Literata`,app:`The page’s font`};function Xi(e){return e.title?.trim()||e.intent?.trim()||e.branch?.trim()||void 0}function Zi(e,t=Date.now()){let n=new Set,r=new Map,i=new Map,a=-1;e.forEach((e,t)=>{e.kind===`end`&&!e.waiting&&(a=t),e.kind===`screen`&&(e.ended?(n.add(e),r.delete(e.url),i.delete(e.url)):e.until===void 0?r.set(e.url,t):(n.add(e),i.set(e.url,{at:t,until:Date.parse(e.until)})))});let o=new Set;for(let[n,s]of r){let r=i.get(n);(s>a||r!==void 0&&r.at>a&&r.until>t)&&o.add(e[s])}return{live:o,hidden:n}}var Qi=[`B`,`KB`,`MB`,`GB`,`TB`];function $i(e,t=`–`){if(typeof e!=`number`||!Number.isFinite(e)||e<0)return t;let n=e,r=0;for(;n>=1024&&r<Qi.length-1;)n/=1024,r++;return`${n<10&&r>0?Math.round(n*10)/10:Math.round(n)} ${Qi[r]}`}var ea=`refs/remotes/origin/`;function ta(e){return`${ea}${e}`}function na(e){let t=[];for(let n of e)if(n.kind===`error`)t.push({headline:n.headline,...n.detail?{detail:n.detail}:{}});else if(n.kind===`driver`&&n.event.type===`error`&&typeof n.event.message==`string`){let[e=``,...r]=n.event.message.trim().split(`
4
+ `),i=r.join(`
5
+ `).trim();t.push({headline:e||`error`,...i?{detail:i}:{}})}return t}function ra(e){let t=null;for(let n of e)n.kind===`session`?t={workspace:n.workspace,...n.sessionLink?{sessionLink:n.sessionLink}:{}}:n.kind===`session-update`&&(t={...t??{},sessionId:n.sessionId,...n.sessionLink?{sessionLink:n.sessionLink}:{}});return t}function ia(e){let t=new Map;for(let n of e)if(n.kind===`choice-resolved`)t.delete(n.id);else if(n.kind===`driver`)t.clear();else if(n.kind===`end`)n.waiting!==!0&&t.clear();else if(n.kind===`choice`){let{kind:e,...r}=n;t.set(n.id,r)}return[...t.values()]}function aa(e){return e.kind===`awaiting`?`awaiting:${e.projectId}:${e.agentId??``}:${e.awaitId??``}`:e.kind===`uncommitted`||e.kind===`unpushed`?`${e.kind}:${e.projectId}:${e.agentId??``}`:e.url??``}function oa(e){return`${e.kind}:${e.projectId}:${e.agentId}`}var sa=class{keyOf;scopeOf;seen=new Set;warmedUp=new Set;constructor(e,t){this.keyOf=e,this.scopeOf=t}observe(e,t){let n=e.filter(e=>this.warmedUp.has(this.scopeOf(e))&&!this.seen.has(this.keyOf(e)));for(let t of e)this.seen.add(this.keyOf(t));for(let e of t)this.warmedUp.add(e);return n}};function ca(e){return{id:`bridge:${e.sessionId}`,title:e.title,options:e.options.map(e=>({id:e.label,label:e.label,...e.detail?{detail:e.detail}:{},...e.default?{default:!0}:{}})),...e.recommended?{recommended:e.recommended}:{},...e.multi?{multi:!0}:{}}}function la(e,t){if(e.target!==`web`||e.status!==`done`)return;if(e.cloudWaiting)return`waiting`;if(e.mergeOutcome===`merged`)return`merged`;if(e.pr)return`done`;let n=Date.parse(e.startedAt);return Number.isFinite(n)&&t-n<=432e5?`in-cloud`:`done`}var ua=[`1/4`,`1/3`,`1/2`,`2/3`,`3/4`,`1`],da=e=>ua.indexOf(e);function fa(e){return ua.filter(t=>da(t)>=da(e.minWidth))}function pa(e,t,n){let r=t?.[n]??t?.[`*`]??[],i=new Map(e.map(e=>[e.id,e]));return[...r.flatMap(e=>{let t=i.get(e.id);return t?(i.delete(e.id),[{card:t,width:e.width!==void 0&&da(e.width)>=da(t.minWidth)?e.width:t.width,hidden:e.hidden===!0}]):[]}),...[...i.values()].map(e=>({card:e,width:e.width,hidden:!1}))]}var J=t(r(),1),ma=H(`onPreferences`);H(`savePreferences`);var ha=H(`patchPreferences`),ga=H(`onProjectPresets`),_a=H(`saveProjectPresets`),va=H(`onEditors`),ya={},ba=null,xa=null,Sa=new Map,Ca=new Set,wa=[],Ta=0,Ea=0,Da=new Set;function Oa(){for(let e of Da)e()}function ka(e){return Da.add(e),()=>Da.delete(e)}var Aa=(0,J.createContext)(null);function ja(){!ba&&!xa&&(xa=ma().then(e=>{ba??=e}).catch(()=>{ba??={}}).finally(()=>{xa=null,Oa()}))}typeof window<`u`&&(window.addEventListener(`focus`,Ia),document.addEventListener(`visibilitychange`,()=>{document.visibilityState===`visible`&&Ia()}));function Ma(e){!e||Sa.has(e)||Ca.has(e)||(Ca.add(e),ga(e).then(t=>{Sa.has(e)||Sa.set(e,t)}).catch(()=>{Sa.has(e)||Sa.set(e,[])}).finally(()=>{Ca.delete(e),Oa()}))}function Na(){let e=(0,J.useContext)(Aa),t=(0,J.useSyncExternalStore)(ka,()=>e?Sa.get(e)??wa:wa,()=>wa);return(0,J.useEffect)(()=>Ma(e),[e]),t}function Pa(e,t){e&&(Sa.set(e,t),_a(e,t).catch(()=>{}),Oa())}function Fa(e){ba={...ba??{},...e};let t=++Ta;Ea++,ha(e).then(e=>{e.ok&&t===Ta&&(ba=e.preferences,Oa())}).catch(()=>{}).finally(()=>Ea--),Oa()}function Ia(){let e=Ta;ma().then(t=>{e!==Ta||Ea>0||(ba=t,Oa())}).catch(()=>{})}function La(){return(0,J.useContext)(Aa)}function Ra(){let e=(0,J.useSyncExternalStore)(ka,()=>ba??ya,()=>ya);return(0,J.useEffect)(()=>ja(),[]),e}function za(){return(0,J.useSyncExternalStore)(ka,()=>ba!==null,()=>!1)}function Ba(e){return e.theme??`system`}function Va(e,t){return e===`dark`||e===`system`&&t}function Ha(e){return Ut(e)}function Ua(e){return Lt(e,`newActivity`)}function Wa(e){return Lt(e,`humanIntervention`)}var Ga=`openagent:look`;function Ka(e,t){let n=e.getAttribute(`style`),r={theme:t,...e.dataset.palette?{palette:e.dataset.palette}:{},...e.dataset.accent?{accent:e.dataset.accent}:{},...n?{style:n}:{}};try{localStorage.setItem(Ga,JSON.stringify(r))}catch{}}var qa={app:`ui-sans-serif, system-ui, sans-serif`,code:`ui-monospace, SFMono-Regular, Menlo, monospace`,document:`ui-serif, Georgia, serif`},Ja=new Set([`IBM Plex Sans`,`JetBrains Mono`,`Source Serif 4`]),Ya=`picked-fonts`;function Xa(e){return`https://fonts.googleapis.com/css2?${e.map(e=>`family=${e.replace(/ /g,`+`)}:wght@400;500;600;700`).join(`&`)}&display=swap`}function Za(e,t){t.palette&&t.palette!==`openagent`?e.dataset.palette=t.palette:delete e.dataset.palette;let n=Ki(t.palette,t.accent);n?e.dataset.accent=n:delete e.dataset.accent;let r=t.font?qi[t.font]:void 0,i=t.codeFont?Ji[t.codeFont]:void 0,a=t.documentFont&&t.documentFont!==`app`?Yi[t.documentFont]:void 0;Qa(e,`--font-app`,r,qa.app),Qa(e,`--font-code`,i,qa.code),t.documentFont===`app`?e.style.setProperty(`--font-document`,`var(--font-app)`):Qa(e,`--font-document`,a,qa.document);let o=[r,i,a].filter(e=>e!==void 0&&!Ja.has(e)),s=e.ownerDocument,c=s.getElementById(Ya);if(o.length===0){c?.remove();return}c||(c=s.createElement(`link`),c.id=Ya,c.rel=`stylesheet`,s.head.appendChild(c));let l=Xa(o);c.href!==l&&(c.href=l)}function Qa(e,t,n,r){n?e.style.setProperty(t,`'${n}', ${r}`):e.style.removeProperty(t)}var Y=t(Pi(),1),$a=class extends J.Component{state={error:null};static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e,t){console.error(`Dashboard render error:`,e,t.componentStack)}reset=()=>this.setState({error:null});render(){let{error:e}=this.state;return e?(0,Y.jsxs)(`div`,{role:`alert`,className:`flex min-h-screen flex-col items-center justify-center gap-3 bg-background p-8 text-center text-foreground`,children:[(0,Y.jsx)(`p`,{className:`text-base font-medium`,children:`Something went wrong`}),(0,Y.jsx)(`p`,{className:`max-w-md text-sm text-muted-foreground`,children:`The dashboard hit an error and could not finish drawing this view. Your session is safe — the daemon keeps running. Try again, or reload the page.`}),e.message&&(0,Y.jsx)(`pre`,{className:`max-w-md overflow-x-auto rounded-md bg-muted px-3 py-2 text-left text-xs text-muted-foreground`,children:e.message}),(0,Y.jsxs)(`div`,{className:`flex gap-2`,children:[(0,Y.jsx)(B,{variant:`outline`,onClick:this.reset,children:`Try again`}),(0,Y.jsx)(B,{onClick:()=>window.location.reload(),children:`Reload`})]})]}):this.props.children}};function eo({children:e}){let t=Ra(),n=za(),r=Ba(t),{palette:i,accent:a,font:o,codeFont:s,documentFont:c}=t;return(0,J.useEffect)(()=>{n&&(Za(document.documentElement,{palette:i,accent:a,font:o,codeFont:s,documentFont:c}),Ka(document.documentElement,r))},[n,i,a,o,s,c,r]),(0,J.useEffect)(()=>{if(!n)return;let e=document.documentElement,t=window.matchMedia(`(prefers-color-scheme: dark)`),i=()=>e.classList.toggle(`dark`,Va(r,t.matches));if(i(),r===`system`)return t.addEventListener(`change`,i),()=>t.removeEventListener(`change`,i)},[n,r]),(0,Y.jsx)(`div`,{className:`min-h-screen bg-background text-foreground`,children:(0,Y.jsx)(bi,{children:(0,Y.jsx)($a,{children:e})})})}var to=G(`ArrowDownUp`,[[`path`,{d:`m3 16 4 4 4-4`,key:`1co6wj`}],[`path`,{d:`M7 20V4`,key:`1yoxec`}],[`path`,{d:`m21 8-4-4-4 4`,key:`1c9v7m`}],[`path`,{d:`M17 4v16`,key:`7dpous`}]]),no=G(`ArrowDown`,[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]),ro=G(`ArrowLeft`,[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]),io=G(`ArrowUp`,[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]),ao=G(`BellOff`,[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M17 17H4a1 1 0 0 1-.74-1.673C4.59 13.956 6 12.499 6 8a6 6 0 0 1 .258-1.742`,key:`178tsu`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M8.668 3.01A6 6 0 0 1 18 8c0 2.687.77 4.653 1.707 6.05`,key:`1hqiys`}]]),oo=G(`Bell`,[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326`,key:`11g9vi`}]]),so=G(`Blocks`,[[`rect`,{width:`7`,height:`7`,x:`14`,y:`3`,rx:`1`,key:`6d4xhi`}],[`path`,{d:`M10 21V8a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-5a1 1 0 0 0-1-1H3`,key:`1fpvtg`}]]),co=G(`Bot`,[[`path`,{d:`M12 8V4H8`,key:`hb8ula`}],[`rect`,{width:`16`,height:`12`,x:`4`,y:`8`,rx:`2`,key:`enze0r`}],[`path`,{d:`M2 14h2`,key:`vft8re`}],[`path`,{d:`M20 14h2`,key:`4cs60a`}],[`path`,{d:`M15 13v2`,key:`1xurst`}],[`path`,{d:`M9 13v2`,key:`rq6x2g`}]]),lo=G(`ChevronLeft`,[[`path`,{d:`m15 18-6-6 6-6`,key:`1wnfg3`}]]),uo=G(`ChevronsUpDown`,[[`path`,{d:`m7 15 5 5 5-5`,key:`1hf1tw`}],[`path`,{d:`m7 9 5-5 5 5`,key:`sgt6xg`}]]),fo=G(`CircleAlert`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`12`,x2:`12`,y1:`8`,y2:`12`,key:`1pkeuh`}],[`line`,{x1:`12`,x2:`12.01`,y1:`16`,y2:`16`,key:`4dfq90`}]]),po=G(`CircleArrowUp`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m16 12-4-4-4 4`,key:`177agl`}],[`path`,{d:`M12 16V8`,key:`1sbj14`}]]),mo=G(`CircleCheck`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),ho=G(`CircleHelp`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),go=G(`CloudUpload`,[[`path`,{d:`M12 13v8`,key:`1l5pq0`}],[`path`,{d:`M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242`,key:`1pljnt`}],[`path`,{d:`m8 17 4-4 4 4`,key:`1quai1`}]]),_o=G(`Cloud`,[[`path`,{d:`M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z`,key:`p7xjir`}]]),vo=G(`Code`,[[`polyline`,{points:`16 18 22 12 16 6`,key:`z7tu5w`}],[`polyline`,{points:`8 6 2 12 8 18`,key:`1eg1df`}]]),yo=G(`Database`,[[`ellipse`,{cx:`12`,cy:`5`,rx:`9`,ry:`3`,key:`msslwz`}],[`path`,{d:`M3 5V19A9 3 0 0 0 21 19V5`,key:`1wlel7`}],[`path`,{d:`M3 12A9 3 0 0 0 21 12`,key:`mv7ke4`}]]),bo=G(`EllipsisVertical`,[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`12`,cy:`5`,r:`1`,key:`gxeob9`}],[`circle`,{cx:`12`,cy:`19`,r:`1`,key:`lyex9k`}]]),xo=G(`Ellipsis`,[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`19`,cy:`12`,r:`1`,key:`1wjl8i`}],[`circle`,{cx:`5`,cy:`12`,r:`1`,key:`1pcz8c`}]]),So=G(`ExternalLink`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`M10 14 21 3`,key:`gplh6r`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`,key:`a6xqqp`}]]),Co=G(`FilePen`,[[`path`,{d:`M12.5 22H18a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v9.5`,key:`1couwa`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`path`,{d:`M13.378 15.626a1 1 0 1 0-3.004-3.004l-5.01 5.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z`,key:`1y4qbx`}]]),wo=G(`FileText`,[[`path`,{d:`M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z`,key:`1rqfz7`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`path`,{d:`M10 9H8`,key:`b1mrlr`}],[`path`,{d:`M16 13H8`,key:`t4e002`}],[`path`,{d:`M16 17H8`,key:`z1uh3a`}]]),To=G(`FolderGit2`,[[`path`,{d:`M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5`,key:`1w6njk`}],[`circle`,{cx:`13`,cy:`12`,r:`2`,key:`1j92g6`}],[`path`,{d:`M18 19c-2.8 0-5-2.2-5-5v8`,key:`pkpw2h`}],[`circle`,{cx:`20`,cy:`19`,r:`2`,key:`1obnsp`}]]),Eo=G(`FolderOpen`,[[`path`,{d:`m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2`,key:`usdka0`}]]),Do=G(`FolderPlus`,[[`path`,{d:`M12 10v6`,key:`1bos4e`}],[`path`,{d:`M9 13h6`,key:`1uhe8q`}],[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]),Oo=G(`FolderSearch`,[[`path`,{d:`M10.7 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v4.1`,key:`1bw5m7`}],[`path`,{d:`m21 21-1.9-1.9`,key:`1g2n9r`}],[`circle`,{cx:`17`,cy:`17`,r:`3`,key:`18b49y`}]]),ko=G(`FolderX`,[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}],[`path`,{d:`m9.5 10.5 5 5`,key:`ra9qjz`}],[`path`,{d:`m14.5 10.5-5 5`,key:`l2rkpq`}]]),Ao=G(`Folder`,[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]),jo=G(`GitBranch`,[[`line`,{x1:`6`,x2:`6`,y1:`3`,y2:`15`,key:`17qcm7`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}],[`circle`,{cx:`6`,cy:`18`,r:`3`,key:`fqmcym`}],[`path`,{d:`M18 9a9 9 0 0 1-9 9`,key:`n2h4wq`}]]),Mo=G(`GitMerge`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M6 21V9a9 9 0 0 0 9 9`,key:`7kw0sc`}]]),No=G(`GitPullRequestClosed`,[[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M6 9v12`,key:`1sc30k`}],[`path`,{d:`m21 3-6 6`,key:`16nqsk`}],[`path`,{d:`m21 9-6-6`,key:`9j17rh`}],[`path`,{d:`M18 11.5V15`,key:`65xf6f`}],[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}]]),Po=G(`GitPullRequestDraft`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M18 6V5`,key:`1oao2s`}],[`path`,{d:`M18 11v-1`,key:`11c8tz`}],[`line`,{x1:`6`,x2:`6`,y1:`9`,y2:`21`,key:`rroup`}]]),Fo=G(`GitPullRequest`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M13 6h3a2 2 0 0 1 2 2v7`,key:`1yeb86`}],[`line`,{x1:`6`,x2:`6`,y1:`9`,y2:`21`,key:`rroup`}]]),Io=G(`Github`,[[`path`,{d:`M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4`,key:`tonef`}],[`path`,{d:`M9 18c-4.51 2-5-2-7-2`,key:`9comsn`}]]),Lo=G(`Globe`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]),Ro=G(`GripVertical`,[[`circle`,{cx:`9`,cy:`12`,r:`1`,key:`1vctgf`}],[`circle`,{cx:`9`,cy:`5`,r:`1`,key:`hp0tcf`}],[`circle`,{cx:`9`,cy:`19`,r:`1`,key:`fkjjf6`}],[`circle`,{cx:`15`,cy:`12`,r:`1`,key:`1tmaij`}],[`circle`,{cx:`15`,cy:`5`,r:`1`,key:`19l28e`}],[`circle`,{cx:`15`,cy:`19`,r:`1`,key:`f4zoj3`}]]),zo=G(`Inbox`,[[`polyline`,{points:`22 12 16 12 14 15 10 15 8 12 2 12`,key:`o97t9d`}],[`path`,{d:`M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z`,key:`oot6mr`}]]),Bo=G(`Info`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]),Vo=G(`KeyRound`,[[`path`,{d:`M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z`,key:`1s6t7t`}],[`circle`,{cx:`16.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`w0ekpg`}]]),Ho=G(`Layers`,[[`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z`,key:`zw3jo`}],[`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`,key:`1wduqc`}],[`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`,key:`kqbvx6`}]]),Uo=G(`LayoutDashboard`,[[`rect`,{width:`7`,height:`9`,x:`3`,y:`3`,rx:`1`,key:`10lvy0`}],[`rect`,{width:`7`,height:`5`,x:`14`,y:`3`,rx:`1`,key:`16une8`}],[`rect`,{width:`7`,height:`9`,x:`14`,y:`12`,rx:`1`,key:`1hutg5`}],[`rect`,{width:`7`,height:`5`,x:`3`,y:`16`,rx:`1`,key:`ldoo1y`}]]),Wo=G(`Maximize2`,[[`polyline`,{points:`15 3 21 3 21 9`,key:`mznyad`}],[`polyline`,{points:`9 21 3 21 3 15`,key:`1avn1i`}],[`line`,{x1:`21`,x2:`14`,y1:`3`,y2:`10`,key:`ota7mn`}],[`line`,{x1:`3`,x2:`10`,y1:`21`,y2:`14`,key:`1atl0r`}]]),Go=G(`Menu`,[[`line`,{x1:`4`,x2:`20`,y1:`12`,y2:`12`,key:`1e0a9i`}],[`line`,{x1:`4`,x2:`20`,y1:`6`,y2:`6`,key:`1owob3`}],[`line`,{x1:`4`,x2:`20`,y1:`18`,y2:`18`,key:`yk5zj1`}]]),Ko=G(`Minimize2`,[[`polyline`,{points:`4 14 10 14 10 20`,key:`11kfnr`}],[`polyline`,{points:`20 10 14 10 14 4`,key:`rlmsce`}],[`line`,{x1:`14`,x2:`21`,y1:`10`,y2:`3`,key:`o5lafz`}],[`line`,{x1:`3`,x2:`10`,y1:`21`,y2:`14`,key:`1atl0r`}]]),qo=G(`Monitor`,[[`rect`,{width:`20`,height:`14`,x:`2`,y:`3`,rx:`2`,key:`48i651`}],[`line`,{x1:`8`,x2:`16`,y1:`21`,y2:`21`,key:`1svkeh`}],[`line`,{x1:`12`,x2:`12`,y1:`17`,y2:`21`,key:`vw1qmm`}]]),Jo=G(`Moon`,[[`path`,{d:`M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z`,key:`a7tn18`}]]),Yo=G(`Palette`,[[`circle`,{cx:`13.5`,cy:`6.5`,r:`.5`,fill:`currentColor`,key:`1okk4w`}],[`circle`,{cx:`17.5`,cy:`10.5`,r:`.5`,fill:`currentColor`,key:`f64h9f`}],[`circle`,{cx:`8.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`fotxhn`}],[`circle`,{cx:`6.5`,cy:`12.5`,r:`.5`,fill:`currentColor`,key:`qy21gx`}],[`path`,{d:`M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10c.926 0 1.648-.746 1.648-1.688 0-.437-.18-.835-.437-1.125-.29-.289-.438-.652-.438-1.125a1.64 1.64 0 0 1 1.668-1.668h1.996c3.051 0 5.555-2.503 5.555-5.554C21.965 6.012 17.461 2 12 2z`,key:`12rzf8`}]]),Xo=G(`PencilLine`,[[`path`,{d:`M12 20h9`,key:`t2du7b`}],[`path`,{d:`M16.376 3.622a1 1 0 0 1 3.002 3.002L7.368 18.635a2 2 0 0 1-.855.506l-2.872.838a.5.5 0 0 1-.62-.62l.838-2.872a2 2 0 0 1 .506-.854z`,key:`1ykcvy`}],[`path`,{d:`m15 5 3 3`,key:`1w25hb`}]]),Zo=G(`Pencil`,[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}],[`path`,{d:`m15 5 4 4`,key:`1mk7zo`}]]),Qo=G(`Plus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]),$o=G(`Puzzle`,[[`path`,{d:`M15.39 4.39a1 1 0 0 0 1.68-.474 2.5 2.5 0 1 1 3.014 3.015 1 1 0 0 0-.474 1.68l1.683 1.682a2.414 2.414 0 0 1 0 3.414L19.61 15.39a1 1 0 0 1-1.68-.474 2.5 2.5 0 1 0-3.014 3.015 1 1 0 0 1 .474 1.68l-1.683 1.682a2.414 2.414 0 0 1-3.414 0L8.61 19.61a1 1 0 0 0-1.68.474 2.5 2.5 0 1 1-3.014-3.015 1 1 0 0 0 .474-1.68l-1.683-1.682a2.414 2.414 0 0 1 0-3.414L4.39 8.61a1 1 0 0 1 1.68.474 2.5 2.5 0 1 0 3.014-3.015 1 1 0 0 1-.474-1.68l1.683-1.682a2.414 2.414 0 0 1 3.414 0z`,key:`w46dr5`}]]),es=G(`RefreshCw`,[[`path`,{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`,key:`v9h5vc`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}],[`path`,{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`,key:`3uifl3`}],[`path`,{d:`M8 16H3v5`,key:`1cv678`}]]),ts=G(`Search`,[[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}],[`path`,{d:`m21 21-4.3-4.3`,key:`1qie3q`}]]),ns=G(`Settings2`,[[`path`,{d:`M20 7h-9`,key:`3s1dr2`}],[`path`,{d:`M14 17H5`,key:`gfn3mx`}],[`circle`,{cx:`17`,cy:`17`,r:`3`,key:`18b49y`}],[`circle`,{cx:`7`,cy:`7`,r:`3`,key:`dfmy0x`}]]),rs=G(`Settings`,[[`path`,{d:`M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z`,key:`1qme2f`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),is=G(`SlidersHorizontal`,[[`line`,{x1:`21`,x2:`14`,y1:`4`,y2:`4`,key:`obuewd`}],[`line`,{x1:`10`,x2:`3`,y1:`4`,y2:`4`,key:`1q6298`}],[`line`,{x1:`21`,x2:`12`,y1:`12`,y2:`12`,key:`1iu8h1`}],[`line`,{x1:`8`,x2:`3`,y1:`12`,y2:`12`,key:`ntss68`}],[`line`,{x1:`21`,x2:`16`,y1:`20`,y2:`20`,key:`14d8ph`}],[`line`,{x1:`12`,x2:`3`,y1:`20`,y2:`20`,key:`m0wm8r`}],[`line`,{x1:`14`,x2:`14`,y1:`2`,y2:`6`,key:`14e1ph`}],[`line`,{x1:`8`,x2:`8`,y1:`10`,y2:`14`,key:`1i6ji0`}],[`line`,{x1:`16`,x2:`16`,y1:`18`,y2:`22`,key:`1lctlv`}]]),as=G(`Square`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}]]),ss=G(`Sun`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]),cs=G(`Trash2`,[[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6`,key:`4alrt4`}],[`path`,{d:`M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2`,key:`v07s0e`}],[`line`,{x1:`10`,x2:`10`,y1:`11`,y2:`17`,key:`1uufr5`}],[`line`,{x1:`14`,x2:`14`,y1:`11`,y2:`17`,key:`xtxkd`}]]),ls=G(`TriangleAlert`,[[`path`,{d:`m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3`,key:`wmoenq`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),us=G(`Upload`,[[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`polyline`,{points:`17 8 12 3 7 8`,key:`t8dd8p`}],[`line`,{x1:`12`,x2:`12`,y1:`3`,y2:`15`,key:`widbto`}]]),ds=G(`UserRound`,[[`circle`,{cx:`12`,cy:`8`,r:`5`,key:`1hypcn`}],[`path`,{d:`M20 21a8 8 0 0 0-16 0`,key:`rfgkzh`}]]),fs=G(`Workflow`,[[`rect`,{width:`8`,height:`8`,x:`3`,y:`3`,rx:`2`,key:`by2w9f`}],[`path`,{d:`M7 11v4a2 2 0 0 0 2 2h4`,key:`xkn7yn`}],[`rect`,{width:`8`,height:`8`,x:`13`,y:`13`,rx:`2`,key:`1cgmvn`}]]),ps=H(`onAgentAccounts`),ms=H(`sendUseAgentAccountFirst`);function hs({percent:e,className:t}){let n=Math.min(100,Math.max(0,e??0));return(0,Y.jsx)(`span`,{"aria-hidden":!0,className:q(`relative block h-1.5 w-20 shrink-0 overflow-hidden rounded-full bg-muted-foreground/15`,t),children:(0,Y.jsx)(`span`,{className:q(`absolute inset-y-0 left-0 rounded-full`,n>=100?`bg-danger`:n>=80?`bg-warning`:`bg-success`),style:{width:`${n}%`}})})}var gs=new Map;function _s(e={}){let{locale:t,...n}=e,r={usage:`search`,sensitivity:`base`,ignorePunctuation:!0,...n},i=`${Hr(t)}|${JSON.stringify(r)}`,a=gs.get(i);if(a)return a;let o=new Intl.Collator(t,r),s={contains(e,t,n){if(!t)return!0;let r=ei(e,n);for(let e=0;e<=r.length-t.length;e+=1)if(o.compare(r.slice(e,e+t.length),t)===0)return!0;return!1},startsWith(e,t,n){if(!t)return!0;let r=ei(e,n);return o.compare(r.slice(0,t.length),t)===0},endsWith(e,t,n){if(!t)return!0;let r=ei(e,n),i=t.length;return r.length>=i&&o.compare(r.slice(r.length-i),t)===0}};return gs.set(i,s),s}var vs=`⁠`;function ys(e){let t=e.ownerDocument.createTreeWalker(e,NodeFilter.SHOW_TEXT),n=null;for(;t.nextNode();){let e=t.currentNode;e.nodeValue!==``&&(n=e)}return n}function bs(e=!0){let t=f(),n=J.useRef(null);return J.useEffect(()=>{if(!e||rr)return;let r=n.current;if(r==null)return;let i=ys(r);if(i==null)return;let a=i.data,o=`${a}${vs}`;return i.nodeValue=o,t.start(200,()=>{i.nodeValue===o&&(i.nodeValue=a)}),()=>{t.clear(),i.nodeValue===o&&(i.nodeValue=a)}},[e,n,t]),n}var xs=3e4;function Ss(e){let{value:t}=Bt(()=>ps(e),void 0,xs,[e],{remember:`agent-accounts:${e}`});return{view:t}}function Cs(e,t){let n=Math.max(1,Math.ceil((e-t)/6e4)),r=Math.floor(n/60),i=n%60;return r>=48?`${Math.round(r/24)} days`:r===0?`${i} min`:i===0?`${r} h`:`${r} h ${i} min`}function ws(e){return new Date(e).toLocaleTimeString(void 0,{hour:`numeric`,minute:`2-digit`})}function Ts(e){return e.windows[e.windows.length-1]}function Es(e){let t=Ts(e);return t===void 0?e.own?void 0:`not used yet`:`${Math.round(t.percent)}% ${t.label===`5 h`?`of 5 h`:`this ${t.label}`}${e.asOf===void 0?``:` · as of ${ws(e.asOf)}`}`}var Ds=(e,t)=>`machine-agent-accounts:${e}:${t}`;function Os(e){for(let t of[`claude`,`codex`])Te(Ds(e,t),()=>Hn(e,t))}function ks(e,t,n=!0){let r=Bt(n&&t===void 0?()=>ps(e):null,void 0,xs,[e,n,t===void 0],{remember:`agent-accounts:${e}`}),i=Bt(n&&t!==void 0?()=>Hn(t,e):null,void 0,xs,[e,n,t],t===void 0?void 0:{remember:Ds(t,e)});return t===void 0?{view:r.value,unanswered:!1,pick:t=>ms(e,t).then(r.reload)}:{view:i.value??void 0,unanswered:i.value===null,pick:n=>Je(t,e,n).then(i.reload)}}function As(e){let t=e.accounts.filter(e=>!e.loggedOut);return t.length>0?t:e.accounts}function js(e){let t=e&&As(e)[0];if(!t)return;let n=Ts(t);return{name:t.name,percent:t.state===`limited`?` · limited`:n===void 0?``:` · ${Math.round(n.percent)}%`}}function Ms({view:e,on:t,onPick:n,onAdd:r}){return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(me,{}),(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(At,{children:t===void 0?`Accounts`:`Accounts on ${t}`}),As(e).map((e,t)=>(0,Y.jsxs)(b,{closeOnClick:!1,onClick:()=>n(e.id),children:[(0,Y.jsx)(In,{className:q(`h-3.5 w-3.5 shrink-0`,t===0?`opacity-100`:`opacity-0`),"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`flex-1 truncate`,children:e.name}),(0,Y.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e.state===`limited`?`limited`:Ts(e)===void 0?``:`${Math.round(Ts(e).percent)}%`})]},e.id)),(0,Y.jsxs)(b,{onClick:r,children:[(0,Y.jsx)(Qo,{className:`h-3.5 w-3.5 shrink-0 opacity-70`,"aria-hidden":!0}),`Add account…`]})]})]})}function Ns(){let{view:e}=Ss(`claude`),t=e&&e.accounts.length>1?e.accounts.filter(e=>!e.own):[];return t.length===0?null:(0,Y.jsx)(`div`,{className:`space-y-1.5 border-t border-border pt-3`,"aria-label":`Other Claude accounts`,children:t.map(t=>(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-2 gap-y-0.5 text-sm`,children:[(0,Y.jsx)(`span`,{className:`w-24 truncate`,children:t.name}),(0,Y.jsx)(hs,{percent:Ts(t)?.percent}),(0,Y.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:t.state===`limited`&&t.limitedUntil!==void 0?`limited, free in ${Cs(t.limitedUntil,e.now)}`:Es(t)??``})]},t.id))})}var Ps=H(`onGitHosts`),Fs=H(`sendUseGitHostAccount`),Is=H(`sendForgetGitHostAccount`),Ls=H(`sendGitHostLogin`),Rs=H(`sendStopGitHostLogin`),zs=H(`sendGitHostInstall`),Bs=H(`onAgentState`),Vs=H(`sendAgentFix`),Hs=2e3,Us=8e3,Ws=3e4;function Gs(e,t,n,r){let[i,a]=(0,J.useState)(Ws),{value:o,reload:s}=Bt(t,void 0,i,[...r,i],{remember:e}),c=n(o);return(0,J.useEffect)(()=>{c!==i&&a(c)},[c,i]),{value:o,reload:s}}function Ks(e,t=!0){let{value:n,reload:r}=Gs(`agent-state:${e??``}`,t?()=>Bs(e):null,e=>e?.fixing?Hs:e&&!e.ready?Us:Ws,[e,t]);return{state:n,reload:r}}function qs(){let{value:e,reload:t}=Gs(`git-hosts`,Ps,e=>e?.hosts.some(e=>e.provider?.installing||e.provider?.loggingIn)?Hs:e?.hosts.some(e=>Ys(e)===`step`||Ys(e)===`not-installed`)?Us:Ws,[]);return{view:e,reload:t}}function Js(e){if(e)return e.ready?`connected`:e.fix?.kind===`install`||/ not found/.test(e.problem??``)?`not-installed`:`step`}function Ys(e){let t=e.provider;if(t)return t.installed?t.accounts.length>0&&t.accounts.every(e=>e.ok)?`connected`:`step`:`not-installed`}var Xs={step:{words:`Log in`,tone:`bg-warning/10 text-warning`,dot:`bg-warning`},"not-installed":{words:`Not installed`,tone:`bg-muted text-muted-foreground`,dot:`bg-muted-foreground`}};function Zs({words:e,tone:t,dot:n}){return(0,Y.jsxs)(`span`,{className:q(`inline-flex shrink-0 items-center gap-1.5 rounded-full px-2 py-0.5 text-xs font-medium`,t),children:[(0,Y.jsx)(`span`,{"aria-hidden":!0,className:q(`size-1.5 rounded-full`,n)}),e]})}function Qs({state:e}){return e===`connected`?null:(0,Y.jsx)(Zs,{...Xs[e]})}function $s({svg:e,className:t}){if(!e)return(0,Y.jsx)(`span`,{"aria-hidden":!0,className:q(`size-4 shrink-0 rounded-sm bg-muted-foreground/30`,t)});let n=`url("data:image/svg+xml;utf8,${encodeURIComponent(e)}")`;return(0,Y.jsx)(`span`,{"aria-hidden":!0,className:q(`size-4 shrink-0 bg-current`,t),style:{maskImage:n,WebkitMaskImage:n,maskSize:`contain`,WebkitMaskSize:`contain`,maskRepeat:`no-repeat`,WebkitMaskRepeat:`no-repeat`}})}var ec=72;function tc({command:e}){let[t,n]=(0,J.useState)(!1),r=e.length>ec;return(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-start gap-1`,children:[(0,Y.jsx)(`code`,{className:q(`min-w-0 flex-1 font-mono text-[11px] text-muted-foreground`,r&&!t?`truncate`:`break-all`),children:e}),r&&(0,Y.jsx)(`button`,{type:`button`,className:`shrink-0 text-[11px] text-muted-foreground underline-offset-2 hover:text-foreground hover:underline`,onClick:()=>n(!t),children:t?`Less`:`Show all`}),(0,Y.jsx)(re,{text:e,label:`Copy the command`})]})}function nc(e){let t=Vr[e.driver];return Js(e)===`not-installed`?`${t} is not installed.`:/ logged in/.test(e.problem??``)?`${t} is not logged in.`:e.problem??`${t} cannot start.`}function rc(e){let t=e.provider;return t.installed?t.accounts.length===0?`OpenAgent has no ${t.name} account yet.`:`${t.name} no longer takes a login: add it again.`:`${t.tool}, the tool for ${t.name}, is not installed.`}function ic({label:e,busy:t,busyWords:n,command:r,failed:i,onPress:a,size:o=`sm`}){return(0,Y.jsxs)(`div`,{className:`min-w-0 space-y-1`,children:[t?(0,Y.jsx)(`p`,{role:`status`,className:`text-xs text-muted-foreground`,children:n}):(0,Y.jsx)(B,{size:o,onClick:a,children:e}),r&&(0,Y.jsx)(tc,{command:r}),i&&(0,Y.jsx)(`p`,{role:`alert`,className:`whitespace-pre-line text-xs text-danger`,children:i})]})}function ac(e){let t=Vr[e.driver];return e.fixing===`install`?`Installing ${t}…`:`Say yes in the page this computer's browser opened to log ${t} in.`}function oc({state:e,onChanged:t,size:n}){let[r,i]=(0,J.useState)();if(e.ready||!e.fix)return null;let a=Vr[e.driver],o=async()=>{i(void 0);let n=await Vs(e.driver);n.ok||i(n.error),t()};return(0,Y.jsx)(ic,{size:n,label:e.fix.kind===`install`?`Install ${a}`:`Log in to ${a}`,busy:e.fixing!==void 0,busyWords:ac(e),command:e.fix.command,...(r??e.failed)===void 0?{}:{failed:r??e.failed},onPress:()=>void o()})}function sc({code:e,url:t,host:n,onChanged:r}){let[i,a]=(0,J.useState)(!1),o=async()=>{a(!0);try{await Rs(n).catch(()=>void 0),await r()}finally{a(!1)}};return(0,Y.jsxs)(`div`,{role:`status`,className:`space-y-1 text-xs`,children:[(0,Y.jsxs)(`p`,{className:`flex flex-wrap items-center gap-x-1.5 gap-y-1 text-sm`,children:[(0,Y.jsx)(`span`,{children:`Open`}),(0,Y.jsx)(`a`,{href:t,target:`_blank`,rel:`noreferrer`,className:`font-medium text-[var(--color-primary)] underline-offset-2 hover:underline`,children:t.replace(/^https:\/\//,``)}),(0,Y.jsx)(`span`,{children:`and enter`}),(0,Y.jsx)(`code`,{className:`rounded bg-muted px-1.5 py-0.5 font-mono text-sm font-medium tracking-wider`,children:e}),(0,Y.jsx)(re,{text:e,label:`Copy the code`}),(0,Y.jsx)(B,{size:`xs`,variant:`ghost`,className:`text-muted-foreground`,disabled:i,onClick:()=>void o(),children:i?`Cancelling…`:`Cancel`})]}),(0,Y.jsx)(`p`,{className:`text-muted-foreground`,children:`Sign in there as the account OpenAgent should use.`})]})}function cc(e){let[t,n]=(0,J.useState)(),[r,i]=(0,J.useState)(!1);return{start:async t=>{i(!0),n(void 0);try{let r=await Ls(t);r.ok||n(r.error),await e()}finally{i(!1)}},error:t,busy:r}}function lc({row:e,onChanged:t,size:n}){let[r,i]=(0,J.useState)(),a=cc(t),o=e.provider;if(!o)return null;if(!o.installed){if(!o.install)return(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Install ${o.tool} by hand: ${o.name} makes none for this computer.`});let a=async()=>{i(void 0);let n=await zs(e.host);n.ok||i(n.error),await t()};return(0,Y.jsx)(ic,{size:n,label:`Install ${o.tool}`,busy:o.installing===!0,busyWords:`Installing ${o.tool}…`,command:o.install,...(r??o.installFailed)===void 0?{}:{failed:r??o.installFailed},onPress:()=>void a()})}return o.loggingIn?(0,Y.jsx)(sc,{code:o.loggingIn.code,url:o.loggingIn.url,host:e.host,onChanged:t}):o.accounts.length>0?null:(0,Y.jsx)(ic,{size:n,label:`Add a ${o.name} account`,busy:a.busy,busyWords:`Asking for a code…`,...a.error===void 0?{}:{failed:a.error},onPress:()=>void a.start(e.host)})}function uc(){let{state:e,reload:t}=Ks(),{view:n,reload:r}=qs(),i=async()=>{await Promise.all([t(),r()])},a=[];if(e&&!e.ready){let n=Vr[e.driver];a.push({key:`agent`,name:n,words:nc(e),fix:(0,Y.jsx)(oc,{state:e,onChanged:()=>void t()})})}for(let e of n?.hosts??[]){let t=e.provider;!t||Ys(e)===`connected`||a.push({key:`host:${e.host}`,name:t.name,words:rc(e),fix:(0,Y.jsx)(lc,{row:e,onChanged:r})})}return{missing:a,reload:i,hosts:n}}var dc=H(`onServerLogins`),fc=H(`sendUseLoginsOn`),pc=H(`sendAllowLogins`),mc=H(`sendSettleLogin`),hc=2e3,gc=3e4,_c=(0,J.createContext)({view:void 0,reload:async()=>{}});function vc(){return(0,J.useContext)(_c)}function yc({children:e}){let[t,n]=(0,J.useState)(!1),{value:r,reload:i}=Bt(dc,void 0,t?hc:gc,[t],`previous`),a=r?.servers.some(e=>e.allowing)??!1;return(0,J.useEffect)(()=>{a!==t&&n(a)},[a,t]),(0,Y.jsx)(_c.Provider,{value:{view:r,reload:i},children:e})}function bc(){let{view:e,reload:t}=vc();return e?(0,Y.jsx)(Y.Fragment,{children:e.servers.map(n=>(0,Y.jsx)(xc,{server:n,computer:e.computer,onChanged:t},n.machineId))}):null}function xc({server:e,computer:t,onChanged:n}){let{tone:r,body:i}=kc(e,t,n),[a,o]=(0,J.useState)(!1),[s,c]=(0,J.useState)();if(r===`quiet`&&e.reachable&&e.left.length===0)return null;let l=async(t,r)=>{o(!0),c(void 0);try{let i=await mc(e.machineId,{kind:t.kind,...t.host===void 0?{}:{host:t.host},source:t.source},r);i.ok||c(i.error),await n()}finally{o(!1)}};return(0,Y.jsxs)(`section`,{"aria-label":`Your logins on ${e.label}`,className:`space-y-1.5`,children:[(0,Y.jsx)(Nc,{tone:r===`quiet`?`ask`:r,children:i}),e.left.length>0&&(0,Y.jsx)(`ul`,{className:`px-1`,children:e.left.map(n=>(0,Y.jsxs)(Lc,{row:n,name:n.name,on:e.label,words:`On ${e.label}, no longer on ${t}`,children:[(0,Y.jsx)(B,{size:`xs`,variant:`ghost`,disabled:a,onClick:()=>void l(n,!0),children:`Keep it there`}),(0,Y.jsx)(B,{size:`xs`,variant:`ghost`,className:`text-muted-foreground`,disabled:a,onClick:()=>void l(n,!1),children:`Take it off`})]},`left ${n.kind} ${n.host??``} ${n.source}`))}),s!==void 0&&(0,Y.jsx)(`p`,{role:`alert`,className:`text-xs text-danger`,children:s})]})}function Sc(e){return e.kind===`git`?{kind:`git`,host:e.host,source:e.login}:{kind:e.kind,source:e.own?`own`:e.name}}var Cc=(e,t)=>e.kind===t.kind&&(e.host??``)===(t.host??``)&&e.source===t.source,wc={there:`bg-success`,waits:`bg-warning`,failed:`bg-danger`,off:`bg-muted-foreground/40`};function Tc({account:e}){let{view:t,reload:n}=vc(),[r,i]=(0,J.useState)(),[a,o]=(0,J.useState)();if(!t||t.servers.length===0)return null;let s=Sc(e),c=async(e,t)=>{i(e),o(void 0);try{let e=await t();e.ok||o(e.error),await n()}finally{i(void 0)}};return(0,Y.jsxs)(`div`,{className:`space-y-1 pb-1`,children:[(0,Y.jsxs)(`ul`,{"aria-label":`Where it works`,className:`flex flex-wrap items-center gap-1.5`,children:[(0,Y.jsx)(Dc,{label:`This computer`,dot:`there`,title:`On ${t.computer}`}),t.servers.map(e=>{let n=e.on&&e.reachable?e.logins.find(e=>Cc(e,s)):void 0,i=r===e.machineId||n!==void 0&&e.allowing?.name===n.name,a=e.on?e.reachable?n?Rc(n,t.computer).words:`Not on ${e.label}`:`${e.label} does not answer`:`${e.label} does not use your logins`,o=n?n.state===`there`?`there`:n.state===`failed`?`failed`:`waits`:`off`,l=[];return(n?.state===`allow`||n?.state===`switched`&&!e.allowing)&&l.push({label:n.state===`switched`?`Use ${n.name} there`:`Allow`,go:()=>pc(e.machineId)}),n?.state===`switched`&&!e.allowing&&l.push({label:`Keep ${n.was}`,go:()=>mc(e.machineId,s,!0)}),n?.state===`there`&&n.anew&&l.push({label:`Take off`,go:()=>mc(e.machineId,s,!1)}),l.length===0&&!i?(0,Y.jsx)(Dc,{label:e.label,dot:o,title:a},e.machineId):(0,Y.jsx)(`li`,{children:(0,Y.jsxs)(be,{children:[(0,Y.jsxs)(z,{className:q(Ec,`hover:bg-muted`),disabled:i,title:a,children:[i?(0,Y.jsx)(xn,{className:`size-3 animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(`span`,{"aria-hidden":!0,className:q(`size-1.5 rounded-full`,wc[o])}),e.label]}),(0,Y.jsxs)(dt,{className:`min-w-[12rem]`,children:[(0,Y.jsx)(`p`,{className:`px-2 py-1 text-xs text-muted-foreground`,children:a}),l.map(t=>(0,Y.jsx)(b,{onClick:()=>void c(e.machineId,t.go),children:t.label},t.label))]})]})},e.machineId)})]}),a!==void 0&&(0,Y.jsx)(`p`,{role:`alert`,className:`text-xs text-danger`,children:a})]})}var Ec=`inline-flex items-center gap-1.5 rounded-full border border-border px-2 py-0.5 text-xs text-muted-foreground`;function Dc({label:e,dot:t,title:n}){return(0,Y.jsxs)(`li`,{title:n,"aria-label":`${e}: ${n}`,className:Ec,children:[(0,Y.jsx)(`span`,{"aria-hidden":!0,className:q(`size-1.5 rounded-full`,wc[t])}),e]})}var Oc=e=>e.logins.filter(e=>e.state===`allow`||e.state===`switched`);function kc(e,t,n){let[r,i]=(0,J.useState)(!1),[a,o]=(0,J.useState)(),s=async e=>{i(!0),o(void 0);try{let t=await e();t.ok||o(t.error),await n()}finally{i(!1)}},c=a??e.failed,l=e.logins.filter(e=>e.state===`failed`).map(e=>e.name),u=Oc(e),d=e.logins.filter(e=>e.state===`there`).length;return e.on?e.allowing?{tone:`ask`,body:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Pc,{title:`Making ${e.allowing.name}'s login for ${e.label}`,words:`Say yes in the page your browser opened. If it is signed in to another account, copy the link into a private window.`}),e.allowing.url!==void 0&&(0,Y.jsx)(re,{text:e.allowing.url,label:`Copy link`})]})}:e.reachable?u.length>0?{tone:`ask`,body:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Pc,{title:`${e.label} uses your logins: ${d} of ${e.logins.length} there`,words:`${u.map(e=>e.name).join(` and `)} ${u.length===1?`needs`:`need`} your yes once: your browser opens, you press Allow or Continue.`}),(0,Y.jsx)(B,{size:`sm`,disabled:r,onClick:()=>void s(()=>pc(e.machineId)),children:u.length===1?`Allow 1 login`:`Allow ${u.length} logins`}),(0,Y.jsx)(Fc,{error:c})]})}:d<e.logins.length?{tone:`ask`,body:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Pc,{title:`${e.label} uses your logins: ${d} of ${e.logins.length} there`,words:l.length>0?`${l.join(` and `)} did not get there: ${l.length===1?`its row says`:`their rows say`} why. Tried again every minute.`:`These did not get there. They are tried again every minute.`}),(0,Y.jsx)(Fc,{error:c})]})}:{tone:`quiet`,body:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Pc,{title:e.label,words:`Uses your logins: all ${e.logins.length} there`}),(0,Y.jsx)(Fc,{error:c})]})}:{tone:`quiet`,body:(0,Y.jsx)(Pc,{title:`${e.label} does not answer`,words:`Its logins are brought up to date once it does.`})}:{tone:`ask`,body:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Pc,{title:`Use your logins on ${e.label}?`,words:`Runs there use the accounts you're logged into on ${t}, and its page follows your settings. The server gets logins of its own: nothing here is logged out.`}),(0,Y.jsx)(B,{size:`sm`,disabled:r,onClick:()=>void s(()=>fc(e.machineId)),children:`Use them`}),(0,Y.jsx)(Fc,{error:c})]})}}function Ac({machineId:e,onAccounts:t}){return(0,Y.jsx)(yc,{children:(0,Y.jsx)(jc,{machineId:e,onAccounts:t})})}function jc({machineId:e,onAccounts:t}){let{view:n,reload:r}=vc(),i=n?.servers.find(t=>t.machineId===e);return n?i?(0,Y.jsx)(Mc,{server:i,computer:n.computer,onChanged:r}):(0,Y.jsx)(B,{size:`sm`,variant:`outline`,onClick:t,children:`Open Accounts`}):null}function Mc({server:e,computer:t,onChanged:n}){return(0,Y.jsx)(`div`,{className:`flex flex-wrap items-center gap-x-3 gap-y-2 text-foreground`,children:kc(e,t,n).body})}function Nc({tone:e,children:t}){return(0,Y.jsx)(`div`,{className:q(`flex flex-wrap items-center gap-x-3 gap-y-2`,e===`ask`&&`rounded-lg border border-warning/40 bg-warning/10 px-3 py-2.5`),children:t})}function Pc({title:e,words:t}){return(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1 basis-60`,children:[(0,Y.jsx)(`p`,{className:`text-sm font-medium`,children:e}),(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:t})]})}function Fc({error:e}){return e===void 0?null:(0,Y.jsx)(`p`,{role:`alert`,className:`basis-full text-xs whitespace-pre-line text-danger`,children:e})}var Ic={claude:l,codex:Tn,git:jo};function Lc({row:e,name:t,on:n,words:r,tone:i=`text-muted-foreground`,children:a}){let o=Ic[e.kind];return(0,Y.jsxs)(`li`,{"aria-label":`${t} on ${n}`,className:`flex min-w-0 flex-wrap items-center gap-x-2.5 gap-y-1 py-1`,children:[(0,Y.jsx)(o,{className:`size-4 shrink-0 text-muted-foreground`}),(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1 basis-40`,children:[(0,Y.jsx)(`p`,{className:`truncate text-sm font-medium`,children:t}),(0,Y.jsx)(`p`,{className:q(`text-xs`,i),children:r})]}),a!==void 0&&(0,Y.jsx)(`div`,{className:`ml-auto flex shrink-0 items-center gap-1`,children:a})]})}function Rc(e,t){return e.state===`there`?{words:`Connected`,tone:`text-success`}:e.state===`allow`?{words:`Needs your yes`,tone:`text-warning`}:e.state===`switched`?{words:`Still runs on ${e.was}, the account you left on ${t}. Runs go on until you pick.`,tone:`text-warning`}:{words:`Not connected: ${e.error??`it did not get there`}`,tone:`text-danger`}}var zc=`inline-flex h-7 min-w-0 max-w-full shrink items-center gap-1.5 overflow-hidden rounded-md px-2 text-[13px] font-normal text-muted-foreground max-sm:max-w-none max-sm:shrink-0`,Bc=q(zc,`transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary disabled:pointer-events-none disabled:opacity-50`),Vc=`flex h-8 items-center gap-2`,Hc=`flex min-w-0 flex-1 items-center gap-0.5 max-sm:overflow-x-auto max-sm:[scrollbar-width:none] max-sm:[mask-image:linear-gradient(to_right,#000_85%,transparent)]`;function Uc({children:e}){return(0,Y.jsx)(`div`,{className:q(`mb-1`,Vc),children:(0,Y.jsx)(`div`,{className:Hc,children:e})})}function Wc({tip:e,children:t}){return(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(`span`,{className:`inline-flex min-w-0 max-w-full shrink max-sm:max-w-none max-sm:shrink-0`}),children:t}),(0,Y.jsx)(W,{children:e})]})}function Gc(){let{view:e,reload:t}=qs();return(0,Y.jsxs)(vr,{children:[(0,Y.jsxs)(Kn,{className:`gap-1`,children:[(0,Y.jsx)(sn,{className:`text-base`,children:(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-2`,children:[(0,Y.jsx)(jo,{className:`h-4 w-4 text-muted-foreground`,"aria-hidden":!0}),`Git host accounts`]})}),(0,Y.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Runs push with the one in use at each host, never your own login.`})]}),(0,Y.jsx)(zr,{className:`flex flex-col gap-4`,children:e&&e.hosts.length===0?(0,Y.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`None of your projects has a remote yet. A project pushed to a git host gets its accounts here.`}):(e?.hosts??[]).map(e=>e.provider?(0,Y.jsx)(Jc,{row:e,onChanged:t},e.host):(0,Y.jsx)(qc,{row:e},e.host))})]})}function Kc(e){return e.projects.length>0?`Used by ${e.projects.join(`, `)}`:`No project on it yet`}function qc({row:e}){return(0,Y.jsxs)(`p`,{"aria-label":e.host,className:`rounded-lg border border-dashed border-border px-3 py-2.5 text-sm text-muted-foreground`,children:[(0,Y.jsx)(`span`,{className:`font-medium text-foreground`,children:e.host}),` · ${Kc(e)}. No package for it yet.`]})}function Jc({row:e,onChanged:t}){let n=e.provider,[r,i]=(0,J.useState)(),a=cc(t),o=vc(),[s,c]=(0,J.useState)(),[l,u]=(0,J.useState)(),d=async(e,n,r)=>{u({login:e,press:n}),i(void 0);try{let e=await r();e.ok||i(e.error),c(void 0),await Promise.all([t(),o.reload()])}finally{u(void 0)}},f=r??a.error,p=!n.installed||n.accounts.length===0;return(0,Y.jsxs)(`section`,{"aria-label":n.name,className:`space-y-2`,children:[(0,Y.jsxs)(`header`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Y.jsx)($s,{svg:n.logo}),(0,Y.jsx)(`h3`,{className:`text-sm font-medium`,children:n.name}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs text-muted-foreground`,children:Kc(e)}),!p&&!n.loggingIn&&(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,Y.jsxs)(B,{size:`xs`,variant:`ghost`,className:`font-normal`,disabled:a.busy,title:`Adds an account to OpenAgent with a code you type at ${n.name}. Your own logins stay as they are.`,onClick:()=>void a.start(e.host),children:[a.busy?(0,Y.jsx)(xn,{className:`size-3.5 animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(Qo,{className:`size-3.5`,"aria-hidden":!0}),`Add account`]}),n.accounts.some(e=>!e.login.toLowerCase().endsWith(`-agent`))&&(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Why an account of its own for your agents`,className:`text-muted-foreground hover:text-foreground`}),children:(0,Y.jsx)(Bo,{className:`size-3.5`,"aria-hidden":!0})}),(0,Y.jsx)(W,{className:`max-w-xs`,children:`An account of its own for your agents, with access to only what they need, is safer: name it like you-agent.`})]})]})]}),n.accounts.length>0&&(0,Y.jsx)(`ul`,{className:`space-y-2`,children:n.accounts.map(t=>{let r=l?.login===t.login;return(0,Y.jsxs)(`li`,{"aria-label":`@${t.login}`,className:`flex min-w-0 items-start gap-2.5`,children:[(0,Y.jsx)(Yc,{src:t.avatar,login:t.login}),(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Y.jsxs)(`p`,{className:`truncate text-sm font-medium`,children:[`@`,t.login]}),(0,Y.jsx)(`p`,{className:q(`truncate text-xs`,t.ok?`text-muted-foreground`:`text-warning`),children:t.ok?t.from===void 0?`added to OpenAgent`:`from ${t.from}`:`${n.name} no longer takes this login: add it again`})]}),t.runs&&(0,Y.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-1 text-xs text-success`,children:[(0,Y.jsx)(In,{className:`size-3.5`,"aria-hidden":!0}),`Runs use this`]}),(0,Y.jsxs)(be,{children:[(0,Y.jsx)(z,{"aria-label":`More for @${t.login}`,disabled:l!==void 0,className:`shrink-0 rounded-md p-1 text-muted-foreground hover:bg-muted hover:text-foreground`,children:r?(0,Y.jsx)(xn,{className:`size-4 animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(xo,{className:`size-4`,"aria-hidden":!0})}),(0,Y.jsxs)(dt,{align:`end`,className:`min-w-[11rem]`,children:[!t.runs&&(0,Y.jsx)(b,{disabled:!t.ok,onClick:()=>void d(t.login,`use`,()=>Fs(e.host,t.login)),children:`Use for runs`}),(0,Y.jsx)(b,{className:`text-danger`,onClick:()=>c(t.login),children:`Remove`})]})]})]}),s===t.login&&(0,Y.jsxs)(`div`,{role:`group`,"aria-label":`Remove @${t.login}`,className:`flex flex-wrap items-center gap-2 rounded-md bg-muted px-2.5 py-2 text-xs`,children:[(0,Y.jsx)(`p`,{className:`min-w-0 flex-1 basis-60`,children:t.runs?`Runs use @${t.login}. Without it they have no ${n.name} account until you add one.`:`OpenAgent forgets @${t.login}. The login goes on working wherever else it is.`}),(0,Y.jsx)(B,{size:`xs`,variant:`destructive`,disabled:r,onClick:()=>void d(t.login,`remove`,()=>Is(e.host,t.login)),children:r?`Removing…`:`Remove`}),(0,Y.jsx)(B,{size:`xs`,variant:`ghost`,disabled:r,onClick:()=>c(void 0),children:`Cancel`})]}),(0,Y.jsx)(Tc,{account:{kind:`git`,host:e.host,login:t.login}})]})]},t.login)})}),p?(0,Y.jsxs)(`div`,{className:`flex items-center gap-3 pt-1 max-sm:flex-col max-sm:items-start`,children:[(0,Y.jsx)(`p`,{className:`min-w-0 flex-1 text-xs text-muted-foreground`,children:rc(e)}),(0,Y.jsx)(`div`,{className:`shrink-0`,children:(0,Y.jsx)(lc,{row:e,onChanged:t})})]}):n.loggingIn&&(0,Y.jsx)(sc,{code:n.loggingIn.code,url:n.loggingIn.url,host:e.host,onChanged:t}),f!==void 0&&(0,Y.jsx)(`p`,{role:`alert`,className:`text-xs text-danger`,children:f})]})}function Yc({src:e,login:t}){let[n,r]=(0,J.useState)(!1);return(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`mt-0.5 flex size-7 shrink-0 items-center justify-center overflow-hidden rounded-full bg-muted text-xs font-medium text-muted-foreground`,children:e&&!n?(0,Y.jsx)(`img`,{src:e,alt:``,referrerPolicy:`no-referrer`,className:`size-full object-cover`,onError:()=>r(!0)}):t[0]?.toUpperCase()})}var Xc=e=>`machine-git-hosts:${e}`;function Zc(e){Te(Xc(e),()=>Ln(e))}function Qc(e){let t=qs(),n=Bt(e===void 0?null:()=>Ln(e),void 0,3e4,[e],e===void 0?void 0:{remember:Xc(e)});return e===void 0?t.view:n.value??void 0}function $c(e,t,n){let r=Qc(t),i=e?.split(`/`)[0],a=r?.hosts.find(e=>e.host===i)?.provider?.accounts;return(n!==void 0&&a?.some(e=>e.login===n&&e.ok)?n:void 0)??a?.find(e=>e.runs)?.login}function el({address:e,machineId:t,on:n,busy:r,picked:i,onPick:a,onAdd:o}){let s=Qc(t),c=$c(e,t,i),l=e?.split(`/`)[0],u=l===void 0?void 0:s?.hosts.find(e=>e.host===l),d=u?.provider;if(!u||!d)return null;if(c===void 0)return(0,Y.jsxs)(`button`,{type:`button`,disabled:r,onClick:o,className:q(Bc,`text-warning`),children:[(0,Y.jsx)($s,{svg:d.logo,className:`size-3.5`}),(0,Y.jsx)(`span`,{className:`truncate`,children:d.installed?`Add a ${d.name} account`:`${d.tool} not installed`})]});let f=`This session pushes and opens pull requests as @${c}${n===void 0?``:` on ${n}`}`;return(0,Y.jsxs)(be,{children:[(0,Y.jsxs)(K,{children:[(0,Y.jsxs)(V,{render:(0,Y.jsx)(z,{type:`button`,disabled:r,"aria-label":`${d.name} account: @${c}`,className:Bc}),children:[(0,Y.jsx)($s,{svg:d.logo,className:`size-3.5`}),(0,Y.jsxs)(`span`,{className:`max-w-32 truncate`,children:[`@`,c]}),(0,Y.jsx)(Vn,{className:`h-3 w-3 shrink-0 opacity-70`,"aria-hidden":!0})]}),(0,Y.jsx)(W,{children:f})]}),(0,Y.jsxs)(dt,{align:`start`,className:`min-w-[14rem]`,children:[(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(At,{children:`${d.name} account for this session${n===void 0?``:`, on ${n}`}`}),d.accounts.map(e=>(0,Y.jsxs)(b,{disabled:!e.ok,onClick:()=>a(e.login),children:[(0,Y.jsx)(In,{className:q(`h-3.5 w-3.5 shrink-0`,e.login===c?`opacity-100`:`opacity-0`),"aria-hidden":!0}),(0,Y.jsxs)(`span`,{className:`flex-1 truncate`,children:[`@`,e.login]})]},e.login))]}),(0,Y.jsx)(me,{}),(0,Y.jsxs)(b,{onClick:o,children:[(0,Y.jsx)(Qo,{className:`h-3.5 w-3.5 shrink-0 opacity-70`,"aria-hidden":!0}),`Add account…`]})]})]})}function tl({home:e,account:t}){let{view:n}=qs();if(!e||!n)return null;let r=n.hosts.find(t=>t.host===e.url.split(`/`)[2])?.provider?.logo;return(0,Y.jsx)(Wc,{tip:t===void 0?`This project is on ${e.name}`:`This run works as @${t} on ${e.name}`,children:(0,Y.jsxs)(`button`,{type:`button`,disabled:!0,className:Bc,children:[(0,Y.jsx)($s,{svg:r,className:`size-3.5`}),(0,Y.jsx)(`span`,{className:`max-w-32 truncate`,children:t===void 0?e.name:`@${t}`}),(0,Y.jsx)(Vn,{className:`h-3 w-3 shrink-0 opacity-70`,"aria-hidden":!0})]})})}var nl=class extends J.Component{state={error:null};static getDerivedStateFromError(e){return{error:e instanceof Error?e.message:String(e)}}render(){return this.state.error===null?this.props.children:(0,Y.jsxs)(`div`,{role:`alert`,className:`p-6 text-sm text-danger`,children:[`The `,this.props.label,` failed: `,this.state.error]})}};function rl({package:e,label:t,children:n}){let r=vn(e),i=(0,J.useMemo)(()=>Rr(r),[r]);return(0,Y.jsx)(Yr.Provider,{value:i,children:(0,Y.jsx)(nl,{label:t,children:n})})}function il(e,t){return e.flatMap(e=>{let n=t.find(t=>t.id===e);return n?[{id:n.id,name:n.name,gitHost:n.gitHost}]:[]})}function al({page:e,projects:t,projectId:n,path:r}){let i=e.Page;return(0,Y.jsx)(rl,{package:e.package,label:`${e.label} page`,children:(0,Y.jsx)(i,{projects:il(e.projects,t),projectId:n,path:r})},e.segment)}var ol=`@openagt/skill-account-rotation`;function sl(){return(0,Y.jsx)(gr,{title:`Permissions`,description:`The accounts your agents work with: what an agent can reach is what these accounts can.`,children:(0,Y.jsx)(cl,{})})}function cl(){return(0,Y.jsx)(yc,{children:(0,Y.jsxs)(`div`,{className:`space-y-4`,children:[(0,Y.jsx)(dl,{}),(0,Y.jsx)(ul,{driver:`claude-code`,title:`Claude Code`,Logo:l}),(0,Y.jsx)(ul,{driver:`codex`,title:`Codex`,Logo:Tn}),(0,Y.jsx)(bc,{}),(0,Y.jsx)(ll,{}),(0,Y.jsx)(Gc,{})]})})}function ll(){let{cards:e,loaded:t}=x(),n=e.find(e=>e.package===ol&&e.id===`accounts`);return n?(0,Y.jsx)(rl,{package:n.package,label:`accounts card`,children:(0,Y.jsx)(n.Card,{projects:[],accountWhere:e=>(0,Y.jsx)(Tc,{account:{kind:e.agent,own:e.own,name:e.name}})})}):t?(0,Y.jsx)(vr,{children:(0,Y.jsx)(zr,{className:`pt-6 text-sm text-muted-foreground`,children:`The accounts card did not load.`})}):(0,Y.jsx)(ot,{className:`h-32 w-full`})}function ul({driver:e,title:t,Logo:n}){let{state:r,reload:i}=Ks(e);return!r||r.ready||r.fix===void 0&&Js(r)!==`not-installed`?null:(0,Y.jsxs)(`section`,{"aria-label":t,className:`space-y-2 rounded-lg border border-border px-3 py-2.5`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsx)(n,{className:`size-4 shrink-0`}),(0,Y.jsx)(`h3`,{className:`flex-1 text-sm font-medium`,children:t}),(0,Y.jsx)(Qs,{state:Js(r)})]}),(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:nc(r)}),(0,Y.jsx)(oc,{state:r,onChanged:()=>void i()})]})}function dl(){let e=Ss(`claude`).view?.from;return e===void 0?null:(0,Y.jsxs)(`div`,{className:`rounded-lg bg-muted px-3 py-2.5`,children:[(0,Y.jsx)(`p`,{className:`text-sm font-medium`,children:`Your logins and settings from ${e}`}),(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Log in or out there, or change a setting, and this server follows.`})]})}var fl=H(`onAgentsList`),pl=H(`sendSaveAgent`),ml=H(`sendRemoveAgent`),hl=H(`onAgentLogins`),gl=H(`sendCopyAgentLogins`),_l=3e4;function vl(){let{value:e,reload:t}=Bt(fl,void 0,_l,[],{remember:`agents`});return{view:e,reload:t}}var yl=15e3;function bl(){let{value:e,reload:t}=Bt(hl,void 0,yl,[],`previous`);return{devices:e,reload:t}}function xl(e){let{view:t}=vl();if(!(e===void 0||!t))return t.agents.find(t=>t.id===e)?.name??e}function Sl(e){return{...e?{id:e.id}:{},name:e?.name??``,skills:new Set(e?.skills??[`ask`,`github`]),...e?.accounts.github===void 0?{}:{github:e.accounts.github},claude:new Set(e?.accounts.claude??[]),codex:new Set(e?.accounts.codex??[]),projectSkills:e?.projectSkills??!0}}function Cl(){let{view:e,reload:t}=vl(),{devices:n,reload:r}=bl(),[i,a]=(0,J.useState)(!1),o=async()=>{await t(),await r()};return(0,Y.jsx)(gr,{title:`Agents`,description:`An agent is a name, a set of skills and a set of accounts. Pick one under the message box; it works in any project, or in none.`,actions:(0,Y.jsxs)(B,{size:`sm`,disabled:!e||i,onClick:()=>a(!0),children:[(0,Y.jsx)(Qo,{className:`size-3.5`,"aria-hidden":!0}),`New agent`]}),children:e?(0,Y.jsxs)(`div`,{className:`space-y-4`,children:[i&&(0,Y.jsx)(Dl,{view:e,onDone:async e=>(a(!1),e?o():void 0)}),e.agents.map(t=>(0,Y.jsx)(wl,{agent:t,view:e,devices:n,onChanged:o},t.id))]}):(0,Y.jsx)(ot,{className:`h-32 w-full`})})}function wl({agent:e,view:t,devices:n,onChanged:r}){let[i,a]=(0,J.useState)(!1),o=e.id===fe;if(i)return(0,Y.jsx)(Dl,{agent:e,view:t,onDone:async e=>(a(!1),e?r():void 0)});let s=[e.accounts.github===void 0?`GitHub: whatever the computer uses`:`@${e.accounts.github} on GitHub`,...e.accounts.claude?[`Claude: ${e.accounts.claude.map(e=>t.claude.find(t=>t.id===e)?.name??e).join(`, `)}`]:[],...e.accounts.codex?[`Codex: ${e.accounts.codex.map(e=>t.codex.find(t=>t.id===e)?.name??e).join(`, `)}`]:[]];return(0,Y.jsxs)(vr,{role:`region`,"aria-label":e.name,children:[(0,Y.jsxs)(Kn,{className:`flex flex-row items-center gap-2 space-y-0`,children:[(0,Y.jsx)(co,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Y.jsx)(sn,{className:`min-w-0 flex-1 truncate text-base`,children:e.name}),o&&(0,Y.jsx)(`span`,{className:`rounded-md bg-muted px-1.5 py-0.5 text-xs text-muted-foreground`,children:`the agent a session is on unless you pick another`}),(0,Y.jsxs)(B,{size:`xs`,variant:`ghost`,"aria-label":`Edit ${e.name}`,onClick:()=>a(!0),children:[(0,Y.jsx)(Zo,{className:`size-3.5`,"aria-hidden":!0}),`Edit`]}),!o&&(0,Y.jsx)(an,{trigger:(0,Y.jsxs)(B,{size:`xs`,variant:`ghost`,className:`hover:text-danger`,"aria-label":`Remove ${e.name}`,children:[(0,Y.jsx)(cs,{className:`size-3.5`,"aria-hidden":!0}),`Remove`]}),title:`Remove ${e.name}?`,body:`Sessions that ran on it keep their records. Nothing is removed from any account.`,confirmLabel:`Remove`,onConfirm:async()=>{let t=await ml(e.id);if(!t.ok)throw Error(t.error)},onSuccess:()=>void r()})]}),(0,Y.jsxs)(zr,{className:`space-y-2 text-sm`,children:[(0,Y.jsxs)(`p`,{className:`flex flex-wrap items-center gap-1.5`,children:[(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:`Skills:`}),e.skills.length===0?(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:`none`}):e.skills.map(e=>(0,Y.jsx)(`span`,{className:`rounded-md border border-border px-1.5 py-0.5 text-xs`,children:e},e)),!e.projectSkills&&(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:`· no project skills`})]}),(0,Y.jsx)(`p`,{className:`text-muted-foreground`,children:s.join(` · `)}),e.accounts.github!==void 0&&n&&n.length>0&&(0,Y.jsx)(Tl,{login:e.accounts.github,devices:n,onCopied:r})]})]})}function Tl({login:e,devices:t,onCopied:n}){let[r,i]=(0,J.useState)(!1),[a,o]=(0,J.useState)(),s=async()=>{i(!0),o(void 0);try{let e=await gl();e.ok||o(e.error),await n()}finally{i(!1)}},c=t.some(t=>t.reachable&&t.github[e]?.state===`failed`);return(0,Y.jsxs)(`ul`,{"aria-label":`Where @${e} is`,className:`space-y-0.5 text-xs`,children:[t.map(t=>{let n=t.github[e];return(0,Y.jsx)(`li`,{className:`flex items-center gap-1.5`,children:t.reachable?n?.state===`there`?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(In,{className:`size-3 text-success`,"aria-hidden":!0}),(0,Y.jsxs)(`span`,{children:[`on `,t.label]})]}):n?.state===`failed`?(0,Y.jsx)(`span`,{className:`text-warning`,children:`${t.label}: not copied — ${n.error??`it did not take it`}`}):(0,Y.jsxs)(`span`,{className:`text-muted-foreground`,children:[t.label,`: not copied yet`]}):(0,Y.jsxs)(`span`,{className:`text-muted-foreground`,children:[t.label,`: not reached`]})},t.machineId)}),c&&(0,Y.jsxs)(`li`,{children:[(0,Y.jsxs)(B,{size:`xs`,variant:`ghost`,className:`-ml-2 font-normal`,disabled:r,onClick:()=>void s(),children:[r?(0,Y.jsx)(xn,{className:`size-3 animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(es,{className:`size-3`,"aria-hidden":!0}),r?`Copying…`:`Copy again`]}),a!==void 0&&(0,Y.jsx)(`span`,{role:`alert`,className:`ml-2 text-danger`,children:a})]})]})}var El=``;function Dl({agent:e,view:t,onDone:n}){let[r,i]=(0,J.useState)(()=>Sl(e)),[a,o]=(0,J.useState)(!1),[s,c]=(0,J.useState)();(0,J.useEffect)(()=>i(Sl(e)),[e]);let l=e?.id===fe,u=(e,t,n)=>i(r=>{let i=new Set(r[e]);return n?i.add(t):i.delete(t),{...r,[e]:i}}),d=async()=>{o(!0),c(void 0);try{let e=await pl({...r.id===void 0?{}:{id:r.id},name:r.name,skills:[...r.skills],accounts:{...r.github===void 0?{}:{github:r.github},...r.claude.size>0?{claude:[...r.claude]}:{},...r.codex.size>0?{codex:[...r.codex]}:{}},projectSkills:r.projectSkills});e.ok?await n(!0):c(e.error)}finally{o(!1)}},f=[{value:El,label:`None — whatever the computer uses`},...(t.github?.accounts??[]).map(e=>({value:e,label:`@${e}`}))];return(0,Y.jsxs)(vr,{role:`region`,"aria-label":e?`Editing ${e.name}`:`New agent`,children:[(0,Y.jsx)(Kn,{children:(0,Y.jsx)(sn,{className:`text-base`,children:e?`Editing ${e.name}`:`New agent`})}),(0,Y.jsxs)(zr,{className:`space-y-5`,children:[(0,Y.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Y.jsx)(Mn,{htmlFor:`agent-name`,children:`Name`}),(0,Y.jsx)($e,{id:`agent-name`,value:r.name,disabled:a||l,placeholder:`Social media`,onChange:e=>i(t=>({...t,name:e.target.value})),className:`max-w-sm`})]}),(0,Y.jsxs)(`div`,{className:`space-y-3`,children:[(0,Y.jsx)(`p`,{className:`text-sm font-medium`,children:`Skills`}),t.skills.map(e=>(0,Y.jsxs)(`section`,{"aria-label":e.title,className:`space-y-1.5`,children:[(0,Y.jsx)(`h4`,{className:`text-xs font-medium uppercase tracking-wide text-muted-foreground`,children:e.title}),(0,Y.jsx)(`div`,{className:`grid gap-2 sm:grid-cols-2`,children:e.skills.map(e=>(0,Y.jsxs)(`label`,{className:q(`flex cursor-pointer items-start gap-2.5 rounded-lg border bg-card p-3 transition-colors`,r.skills.has(e.name)?`border-primary/60`:`border-border hover:border-muted-foreground/40`),children:[(0,Y.jsx)(xi,{checked:r.skills.has(e.name),onCheckedChange:t=>u(`skills`,e.name,t===!0),disabled:a,className:`mt-0.5`,"aria-label":e.name}),(0,Y.jsxs)(`span`,{className:`min-w-0`,children:[(0,Y.jsx)(`span`,{className:`block text-sm font-medium`,children:e.name}),(0,Y.jsx)(`span`,{className:`mt-0.5 block text-xs text-muted-foreground`,children:e.description})]})]},e.name))})]},e.title)),(0,Y.jsxs)(`label`,{className:`flex cursor-pointer items-start gap-2.5 text-sm`,children:[(0,Y.jsx)(xi,{checked:r.projectSkills,onCheckedChange:e=>i(t=>({...t,projectSkills:e===!0})),disabled:a,className:`mt-0.5`,"aria-label":`Project skills`}),(0,Y.jsxs)(`span`,{className:`min-w-0`,children:[(0,Y.jsx)(`span`,{className:`block font-medium`,children:`Project skills`}),(0,Y.jsx)(`span`,{className:`mt-0.5 block text-xs text-muted-foreground`,children:`The skills a project keeps in its repo go to this agent’s sessions too. Off, a session starts without them and can still pick them under the box.`})]})]})]}),(0,Y.jsxs)(`div`,{className:`space-y-3`,children:[(0,Y.jsx)(`p`,{className:`text-sm font-medium`,children:`Accounts`}),(0,Y.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Y.jsx)(Mn,{htmlFor:`agent-github`,children:`GitHub`}),(0,Y.jsxs)(Ee,{items:f,value:r.github??El,onValueChange:e=>i(t=>({...t,...e?{github:String(e)}:{},...e?{}:{github:void 0}})),disabled:a,children:[(0,Y.jsx)($t,{id:`agent-github`,size:`sm`,"aria-label":`GitHub account`,className:`max-w-sm`,children:(0,Y.jsx)(st,{})}),(0,Y.jsx)(qt,{children:f.map(e=>(0,Y.jsx)(Vt,{value:e.value,children:e.label},e.value))})]}),(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Runs push and open pull requests as this account. An account this computer does not have refuses the start.`})]}),(0,Y.jsx)(Ol,{label:`Claude`,accounts:t.claude,picked:r.claude,busy:a,onTick:(e,t)=>u(`claude`,e,t)}),(0,Y.jsx)(Ol,{label:`Codex`,accounts:t.codex,picked:r.codex,busy:a,onTick:(e,t)=>u(`codex`,e,t)})]}),s!==void 0&&(0,Y.jsx)(`p`,{role:`alert`,className:`text-xs text-danger`,children:s}),(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsxs)(B,{size:`sm`,disabled:a||!r.name.trim(),onClick:()=>void d(),children:[a&&(0,Y.jsx)(xn,{className:`size-3.5 animate-spin`,"aria-hidden":!0}),a?`Saving…`:`Save`]}),(0,Y.jsx)(B,{size:`sm`,variant:`ghost`,disabled:a,onClick:()=>void n(!1),children:`Cancel`})]})]})]})}function Ol({label:e,accounts:t,picked:n,busy:r,onTick:i}){return t.length===0?null:(0,Y.jsxs)(`fieldset`,{className:`space-y-1.5`,children:[(0,Y.jsx)(`legend`,{className:`text-sm`,children:e}),(0,Y.jsx)(`div`,{className:`flex flex-wrap gap-3`,children:t.map(t=>(0,Y.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 text-sm`,children:[(0,Y.jsx)(xi,{checked:n.has(t.id),onCheckedChange:e=>i(t.id,e===!0),disabled:r,"aria-label":`${e} account ${t.name}`}),t.name]},t.id))}),(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:n.size===0?`All of this computer's ${e} accounts, the next free one taking over at a limit.`:`Only these, where the computer the run goes to has them.`})]})}var kl=H(`onAgents`),Al=H(`onModuleAgents`),jl=H(`onRetainedWorktrees`),Ml=H(`onAgentWorktree`),Nl=H(`onAgentMainBranch`),Pl=H(`onAgent`),Fl=H(`onAgentsDoing`),Il=H(`onDocs`);H(`onQueue`);var Ll=H(`onOverview`),Rl=H(`onRecentAgents`),zl=H(`onInterventions`),Bl=H(`onActivity`),Vl=H(`onDashboard`),Hl=H(`onProjectFiles`),Ul=H(`onGitHostHome`),Wl=H(`onRepositoryOffer`),Gl=H(`onAgentHandoff`),Kl=H(`onBridgeQuestion`),ql=H(`onBridgeStatus`),Jl=H(`onBridgeToken`),Yl=H(`onBridgeAnswer`),Xl=H(`onBridgeEvents`),Zl=H(`onBridgeBrowser`),Ql=H(`onStartedName`),$l=H(`sendStop`),eu=H(`sendChoice`),tu=H(`sendBridgeAnswer`),nu=H(`sendBridgeAnswerCancel`),ru=H(`sendBridgeBrowser`),iu=H(`sendMessage`),au=H(`withdrawMessage`),ou=H(`sendNow`),su=H(`sendRemoveWorktree`),cu=H(`sendDeleteAgent`),lu=H(`sendStart`),uu=H(`sendOpenInApp`),du=H(`sendOpenPullRequest`),fu=H(`sendMerge`),pu=H(`sendPush`),mu=H(`sendMergeBranch`),hu=H(`sendCreateRepository`),gu=H(`onProjects`),_u=H(`sendAddProject`),vu=H(`onCloneTarget`),yu=H(`sendAddProjectFromAddress`),bu=H(`sendRemoveProject`),xu=H(`sendShareRecords`),Su=H(`sendPickProjectDirectory`),Cu=H(`onRepos`),wu=H(`sendAddRepoFolder`),Tu=H(`onCommands`),Eu=H(`onStartBranches`),Du=H(`onStartCheck`),Ou=H(`onCloneCheck`),ku=H(`onRepoSources`),Au=H(`sendAddRepoOwner`),ju=H(`sendRemoveRepoOwner`),Mu=H(`sendRemoveRepoFolder`),Nu=H(`onGitHostPeople`),Pu=null,Fu=new Set,Iu=!1,Lu=null,Ru=`unread`,zu=null;function Bu(){for(let e of Fu)e()}function Vu(e){Pu!==e&&(Pu=e,Bu())}function Hu(e){Iu=!1,Lu=e,Ru=`settled`,zu!==null&&(zu=null,Bu()),Vu(e),Fa({runOn:e??``})}function Uu(){return Pu}function Wu(e){return Fu.add(e),()=>Fu.delete(e)}function Gu(){return(0,J.useSyncExternalStore)(Wu,Uu,()=>null)}function Ku(){return(0,J.useSyncExternalStore)(Wu,()=>zu,()=>null)}function qu(e,t,n){if(Ru===`unread`){if(t===null)return;if(e===void 0){Ru=`settled`;return}if(!t.some(t=>t.id===e)){Ru=`settled`,zu={why:`gone`},Fa({runOn:``}),Bu();return}Ru=`checking`,Lu=e,Iu||Vu(e)}Ru!==`checking`||e===void 0||n[e]===void 0||(Ru=`settled`,n[e]!==`online`&&(Lu=null,zu={why:`offline`,id:e},Iu||Vu(null),Bu()))}function Ju(e){e===void 0?Iu&&(Iu=!1,Vu(Lu)):(Vu(e),Iu=!0)}function Yu(e,t,n,r){if(t!==null&&!(n!==null&&n.address===void 0&&t!==r))return e.find(e=>e.id===t)}var Xu=[],Zu=null,Qu=0,$u=0,ed=!1,td=new Set;function nd(e){return td.add(e),()=>td.delete(e)}function rd(){let e=++Qu;return $u++,Si().then(t=>{if(e===Qu){Zu=t;for(let e of td)e()}},()=>{}).finally(()=>$u--)}function id(){Zu===null&&$u===0&&rd(),!(ed||typeof window>`u`)&&(ed=!0,window.addEventListener(`focus`,()=>void rd()))}async function ad(e,t){let n=await ne(e,t);return n.ok&&await rd(),n}async function od(e,t){let n=await Ne(e,t);return n.ok&&await rd(),n}async function sd(e){let t=await xe(e);return t.ok&&await rd(),t.ok?{ok:!0}:t}async function cd(e,t){let n=await Ct(e,t);return n.ok&&await rd(),n}async function ld(e){await er(e).catch(()=>{}),await rd()}async function ud(e){let t=await et(e).catch(()=>({ok:!1,error:`The machine could not be removed.`}));await rd();let n=Uu();return t.ok&&n!==null&&!(Zu??[]).some(e=>e.id===n)&&Hu(null),t}function dd(){let e=(0,J.useSyncExternalStore)(nd,()=>Zu!==null,()=>!1);return(0,J.useEffect)(id,[]),e}function fd(){let e=(0,J.useSyncExternalStore)(nd,()=>Zu??Xu,()=>Xu);return(0,J.useEffect)(id,[]),e}var pd=`all`,md=`settings`,hd=`item`;function gd(e,t){let[n=``,r=``]=e.split(`?`),i=new URLSearchParams(r),a=i.get(md),o=i.get(hd),s=a===null?{}:{settings:a,...o?{settingsItem:o}:{}},[c,...l]=n.split(`/`).filter(Boolean).map(bd);if(c===`settings`)return{projectId:null,agentId:null,settings:a??l[0]??``};if(!c||c===`overview`)return{projectId:null,agentId:null,...s};let u=t.projectOf(c);if(u===void 0&&Ft(c))return{projectId:null,agentId:null,page:c,pagePath:l,...s};let d=u??c,[f,...p]=l;return f===`overview`?{projectId:null,agentId:null,scope:d,...s}:f!==void 0&&Ft(f)?{projectId:null,agentId:null,page:f,pagePath:p,scope:d,...s}:{projectId:d,agentId:f??null,...i.has(pd)||d===`session`?{}:{scope:d},...s}}function _d(e,t){let n=!e.page&&e.projectId&&e.projectId!==`session`&&!e.scope?[pd]:[],r=e.settings===void 0?[]:[`${md}=${encodeURIComponent(e.settings)}`,...e.settingsItem?[`${hd}=${encodeURIComponent(e.settingsItem)}`]:[]],i=[...n,...r].join(`&`);return yd(e,t)+(i?`?${i}`:``)}function vd(e,t){let[n=``,r=``]=e.split(`?`),i=new URLSearchParams(t);for(let e of[pd,md,hd,...new URLSearchParams(r).keys()])i.delete(e);let a=[i.toString(),r].filter(Boolean).join(`&`);return a?`${n}?${a}`:n}function yd({projectId:e,agentId:t,page:n,pagePath:r,scope:i},a){let o=!n&&e?e:i,s=o?[a.addressOf(o)]:[],c=n?[n,...r??[]]:e?t?[t]:[]:o?[jt]:[];return`/`+[...s,...c].map(encodeURIComponent).join(`/`)}function bd(e){try{return decodeURIComponent(e)}catch{return e}}var xd=new Set;function Sd(){for(let e of xd)e()}function Cd(e){return xd.size===0&&window.addEventListener(`popstate`,Sd),xd.add(e),()=>{xd.delete(e),xd.size===0&&window.removeEventListener(`popstate`,Sd)}}var wd=()=>window.location.pathname+window.location.search;function Td(e){let t=(0,J.useSyncExternalStore)(Cd,wd,()=>`/`);return{route:gd(t,e),go:(n,r)=>{let i=r?.keepQuery?vd(_d(n,e),window.location.search):_d(n,e);i!==t&&(r?.replace?window.history.replaceState(null,``,i):window.history.pushState(null,``,i),Sd())}}}var Ed=`permissions`,Dd=`agents`;function Od(){window.history.pushState(null,``,`/${Dd}`),Sd()}function kd(){window.history.pushState(null,``,`/${Ed}`),Sd()}function Ad(e,t){let n=new URL(window.location.href);n.searchParams.set(md,e),t?n.searchParams.set(hd,t):n.searchParams.delete(hd),window.history.pushState(null,``,n.pathname+n.search),Sd()}var jd=30,Md=24,Nd=810,Pd=new Map;function Fd({text:e,start:t}){let[n]=(0,J.useState)(()=>{let n=Date.now();for(let[e,t]of Pd)n-t>Nd&&Pd.delete(e);let r=Pd.get(e);return r===void 0?t?(Pd.set(e,n),0):Nd:n-r});if(n>=Nd)return e;let r=[...e],i=e=>({animationDelay:`${Math.min(e,Md)*jd-n}ms`});return(0,Y.jsxs)(Y.Fragment,{children:[r.slice(0,Md).map((e,t)=>(0,Y.jsx)(`span`,{className:`letter-in`,style:i(t),children:e},t)),r.length>Md&&(0,Y.jsx)(`span`,{className:`letter-in`,style:i(Md),children:r.slice(Md).join(``)})]})}function Id(e){return Xi(e)??zn(e.startedAt)}function Ld(e,t,n=Date.now()){if(!t||e.title!==void 0||e.parent!==void 0)return!1;let r=Date.parse(e.startedAt);return Number.isFinite(r)&&n-r<6e4}var Rd={created:`Date created`,updated:`Last updated`,name:`Name`};function zd(e,t){let n=(e,t)=>e<t?1:e>t?-1:0,r=(e,t)=>n(e.agent.startedAt,t.agent.startedAt)||n(e.agent.id,t.agent.id);return t===`updated`?[...e].sort((e,t)=>n(e.agent.updatedAt,t.agent.updatedAt)||r(e,t)):t===`name`?[...e].sort((e,t)=>Id(e.agent).localeCompare(Id(t.agent),void 0,{sensitivity:`base`,numeric:!0})||r(e,t)):[...e].sort(r)}function Bd(e){let t=new Map;for(let n of e)t.set(n.name,[...t.get(n.name)??[],n]);let n=new Map;for(let r of e){let e=t.get(r.name).filter(e=>e!==r);n.set(r.id,e.length===0?r.name:Vd(r,e))}return n}function Vd(e,t){let n=Hd(e.path),r=t.map(e=>Hd(e.path));for(let e=2;e<=n.length;e++){let t=n.slice(-e).join(`/`);if(r.every(n=>n.slice(-e).join(`/`)!==t))return t}return e.path}function Hd(e){return e.split(/[\\/]/).filter(Boolean)}var Ud=(0,J.createContext)(new Map);function Wd(){let e=(0,J.useContext)(Ud);return(t,n)=>e.get(t)??n}var Gd={running:`text-primary`,done:`text-success`,stopped:`text-warning`,failed:`text-danger`},Kd={running:`bg-primary`,waiting:`bg-warning`,saving:`bg-success`,failed:`bg-danger`},qd={stopped:`border-warning/70`,merged:`border-success/70`,done:`border-muted-foreground/60`,unknown:`border-dashed border-muted-foreground/60`},Jd={open:{Icon:Fo,tone:`text-success`,word:`open`},draft:{Icon:Po,tone:`text-muted-foreground`,word:`draft`},merged:{Icon:Mo,tone:`text-merged`,word:`merged`},closed:{Icon:No,tone:`text-danger`,word:`closed`}};function Yd(e){let t=e.toLowerCase();return t===`open`||t===`draft`||t===`merged`||t===`closed`?t:void 0}function Xd(e){let t=/^(\d{4}-\d{2}-\d{2}T\d{2})-(\d{2})-(\d{2})-(\d{3})Z$/.exec(e);return t?`${t[1]}:${t[2]}:${t[3]}.${t[4]}Z`:void 0}function Zd(e,t){return e.filter(e=>e.parent===t).sort((e,t)=>e.id<t.id?-1:+(e.id>t.id))}function Qd(e){return Id(e).split(`
6
+ `)[0].trim()}function $d(e){return e.status===`running`||e.status===`waiting`}var ef=1e4;function tf(e,t){return e.status===`running`||e.saving===!0||e.endedAt!==void 0&&t-Date.parse(e.endedAt)<ef}function nf(e){let t=new Map(e.map(e=>[e.key,e])),n=e=>e.agent.parent===void 0?void 0:t.get(e.key.slice(0,e.key.length-e.agent.id.length)+e.agent.parent),r=e=>{let t=n(e);return t&&!n(t)?t:void 0};return e.filter(e=>!r(e)).map(t=>({row:t,subagents:e.filter(e=>r(e)===t).sort((e,t)=>e.agent.id<t.agent.id?-1:+(e.agent.id>t.agent.id))}))}var rf=/^The run (\S+), started for this run, ended (\w+)(?:: (.*?))?\.?$/;function af(e,t){let[n=``,...r]=e.split(`
7
+ `),i=rf.exec(n.trim()),a=i&&t.find(e=>e.id===i[1]);if(!(!i||!a))return{agent:a,status:i[2],...i[3]?{detail:i[3]}:{},rest:r.join(`
8
+ `).trim()}}function of(e){return Xd(e.id)??e.startedAt}function sf(e){let t=new Map;for(let n of e){if(n.kind!==`driver`)continue;let e=n.event;if(e.type===`subagent`){let r=t.get(e.id),{type:i,...a}=e;t.set(e.id,{...a,calls:r?.calls??0,...r?.tool===void 0?{}:{tool:r.tool},...(r?.startedAt??n.at)===void 0?{}:{startedAt:r?.startedAt??n.at},...e.status!==`working`&&n.at!==void 0?{endedAt:n.at}:{}})}else if(e.type===`action`&&e.subagent!==void 0){let n=t.get(e.subagent);n&&t.set(e.subagent,{...n,calls:n.calls+1,tool:e.label})}}return[...t.values()]}function cf(e){let t=new Set,n=new Set(e.flatMap(e=>e.kind===`driver`&&e.event.type===`output`&&e.event.failed===!0&&e.event.id!==void 0?[e.event.id]:[])),r=new Set(e.flatMap(e=>e.kind===`driver`&&e.event.type===`action`&&e.event.subagent===void 0&&e.event.id!==void 0&&!n.has(e.event.id)&&mf(e.event.whole??e.event.detail)?[e.event.id]:[]));for(let n of e)n.kind===`driver`&&n.event.type===`subagent`&&t.add(n.event.id);let i=new Set([...t].flatMap(e=>[e,e.split(`:`)[0]])),a=new Set;for(let t of e){if(t.kind!==`driver`)continue;let e=t.event;(e.type===`subagent`||(e.type===`action`||e.type===`output`||e.type===`text`||e.type===`thought`)&&e.subagent!==void 0||(e.type===`action`||e.type===`output`)&&e.id!==void 0&&(i.has(e.id)||r.has(e.id)))&&a.add(t)}return a}function lf(e,t){return e.filter(e=>e.kind===`driver`&&(e.event.type===`action`||e.event.type===`output`||e.event.type===`text`||e.event.type===`thought`)&&e.event.subagent===t)}function uf(e,t){let n=e.status===`running`;return{key:`run:${e.id}`,name:Qd(e),...e.model===void 0?{}:{model:e.model},status:e.status,working:n,startedAt:of(e),...e.endedAt===void 0?{}:{endedAt:e.endedAt},...n&&t?.tool!==void 0?{tool:t.tool}:{},...n&&t!==void 0?{calls:t.calls}:{},...n&&t?.doing!==void 0?{doing:t.doing}:{},...e.cost===void 0?{}:{cost:e.cost},...e.intent===void 0?{}:{prompt:e.intent},agent:e}}function df(e,t,n){let r=e.status===`working`&&t,i=e.status===`failed`?`failed`:e.status===`ended`?`done`:r?`running`:`stopped`;return{key:`call:${e.id}`,name:e.name??e.role??`Subagent`,...e.model===void 0?{}:{model:e.model},status:i,working:r,startedAt:e.startedAt??n,...e.endedAt===void 0?{}:{endedAt:e.endedAt},...r&&e.tool!==void 0?{tool:e.tool}:{},...r?{calls:e.calls}:{},...e.prompt===void 0?{}:{prompt:e.prompt},...e.tokens===void 0?{}:{tokens:e.tokens},...e.toolUses===void 0?{}:{toolUses:e.toolUses},call:e}}function ff(e,t,n,r){let i=[];for(let t of e)i.push((i.at(-1)??0)+ +!!r(t));let a=(t,n)=>{let r=Date.parse(n),a=e.findIndex(e=>e.at!==void 0&&Date.parse(e.at)>r),o=a===-1?e.length:a;return{step:t,time:n,index:o,stretch:o>0?i[o-1]:0}},o=t.flatMap(e=>{let t=n.get(e.key);return[a({kind:`agent`,row:e},e.startedAt),...t!==void 0&&e.endedAt!==void 0?[a({kind:`message`,row:e,text:t},e.endedAt)]:[]]}).sort((e,t)=>e.index-t.index||(e.time<t.time?-1:1)),s=new Map,c=new Map;for(let{step:e,index:t,stretch:n}of o){let r=c.get(n)??t;c.set(n,r),s.set(r,[...s.get(r)??[],e])}return s}function pf(e){let t=e.filter(e=>e.kind===`agent`),n=e.length-t.length,r=t.filter(e=>e.row.status===`failed`).length,i=t.length===1?`ran an agent`:`ran ${t.length} agents`,a=n===1?`received a message`:`received ${n} messages`,o=[...t.length>0?[i]:[],...n>0?[a]:[]];e[0]?.kind===`message`&&o.reverse();let s=[...o,...r>0?[`${r} failed`]:[]].join(`, `);return s.charAt(0).toUpperCase()+s.slice(1)}function mf(e){if(e===void 0)return!1;let t=e.split(/;|&&|\n/).map(e=>e.trim()).filter(Boolean),n=/^npx (?:-y )?@openagt\/skill-orchestration(?:@\S+)? (?:start|land|next|list|read)\b/;return t.some(e=>n.test(e))&&t.every(e=>n.test(e)||/^git (?:status|log|diff)\b/.test(e))}function hf(e,t){return lf(e,t).flatMap(e=>e.kind===`driver`&&e.event.type===`text`?[e.event.text]:[]).at(-1)}function gf(e){return e.replace(/^Its last words:\n/m,``).trim()}function _f(e){let t=new Set,n=new Set(e.flatMap(e=>e.kind===`driver`&&e.event.type===`subagent`?[e.event.id,e.event.id.split(`:`)[0]]:[])),r=!1,i=!1,a;for(let o of e){if(o.kind!==`driver`)continue;let e=o.event;if(e.type===`start`){t.clear(),r=!1,i=!1,a=void 0;continue}if(e.type===`subagent`&&e.id!==void 0){e.status===`working`?t.has(e.id)||(t.size===0&&(i=!1),t.add(e.id),r=!0):(t.delete(e.id),r&&t.size===0?(a=o.at,r=!1,i=!1):r&&(i=!0));continue}e.subagent===void 0&&((e.type===`action`||e.type===`output`)&&e.id!==void 0&&n.has(e.id)||[`action`,`output`,`text`,`thought`,`thinking`,`partial`].includes(e.type)&&(r&&i&&(a=o.at),r=!1,i=!1,e.type===`text`&&t.size>0&&(r=!0)))}return{waiting:r&&t.size>0,...a===void 0?{}:{wokeAt:a}}}function vf(e,t,n,r,i,a,o,s,c,l=2){let u=ke(n.current,{event:e,orientation:r,loopFocus:i,rtl:a,cols:l,disabledIndices:o,minIndex:s,maxIndex:c,prevIndex:t>c?s:t,stopEvent:!0});return Fr(n.current,u)?void 0:u}var yf=J.createContext(void 0),bf=J.createContext(void 0),xf=J.createContext(void 0),Sf=J.createContext(!1),Cf=J.createContext(``);function wf(){let e=J.useContext(yf);if(!e)throw Error(Zn(22));return e}function Tf(){let e=J.useContext(bf);if(!e)throw Error(Zn(23));return e}function Ef(){let e=J.useContext(xf);if(!e)throw Error(Zn(24));return e}function Df(){return J.useContext(Cf)}function Of(){return J.useContext(Sf)}var kf={id:e=>e.id,labelId:e=>e.labelId,items:e=>e.items,selectedValue:e=>e.selectedValue,hasSelectionChips:e=>{let t=e.selectedValue;return Array.isArray(t)&&t.length>0},hasSelectedValue:e=>{let{selectedValue:t,selectionMode:n}=e;return t==null?!1:n===`multiple`&&Array.isArray(t)?t.length>0:!0},hasNullItemLabel:(e,t)=>t?c(e.items):!1,open:e=>e.open,mounted:e=>e.mounted,forceMounted:e=>e.forceMounted,inline:e=>e.inline,activeIndex:e=>e.activeIndex,selectedIndex:e=>e.selectedIndex,isActive:(e,t)=>e.activeIndex===t,isSelected:(e,t)=>{let n=e.isItemEqualToValue,r=e.selectedValue;return Array.isArray(r)?r.some(e=>En(t,e,n)):En(t,r,n)},transitionStatus:e=>e.transitionStatus,popupProps:e=>e.popupProps,listProps:e=>e.listProps,inputProps:e=>e.inputProps,triggerProps:e=>e.triggerProps,itemRoot:e=>e.itemRoot,positionerElement:e=>e.positionerElement,listElement:e=>e.listElement,popupId:e=>e.popupId,triggerElement:e=>e.triggerElement,inputElement:e=>e.inputElement,inputGroupElement:e=>e.inputGroupElement,popupSide:e=>e.popupSide,openMethod:e=>e.openMethod,inputInsidePopup:e=>e.inputInsidePopup,inputOwnsFormValue:e=>e.inputOwnsFormValue,selectionMode:e=>e.selectionMode,name:e=>e.name,form:e=>e.form,disabled:e=>e.disabled,readOnly:e=>e.readOnly,required:e=>e.required,grid:e=>e.grid,virtualized:e=>e.virtualized,itemToStringLabel:e=>e.itemToStringLabel,isItemEqualToValue:e=>e.isItemEqualToValue,modal:e=>e.modal,autoHighlight:e=>e.autoHighlight};function Af(e){return e==null?void 0:`${e}-popup`}function jf(e,t){return(n,r)=>n!=null&&e.contains(n,r,t)}var Mf=_s;function Nf(e,t=!1){let{overflowY:n}=C(e);return n!==`auto`&&n!==`scroll`?!1:t?e.clientHeight>0:e.scrollHeight>e.clientHeight}var Pf=Symbol(`none`),Ff={value:Pf,index:-1};function If(e,t,n){let r=e.get(t);if(r!==void 0||n===Qr)return r;for(let[r,i]of e)if(En(r,t,n))return i}function Lf(e){let{id:t,onOpenChangeComplete:n,defaultSelectedValue:r=null,selectedValue:i,onSelectedValueChange:a,defaultInputValue:o,inputValue:c,open:l,defaultOpen:u=!1,selectionMode:d,onItemHighlighted:f,name:p,form:m,disabled:h=!1,readOnly:g=!1,required:_=!1,inputRef:v,grid:b=!1,items:x,filteredItems:S,filter:C,filterQuery:w,openOnInputClick:T=!0,autoHighlight:E=!1,keepHighlight:D=!1,highlightItemOnHover:O=!0,loopFocus:k=!0,itemToStringLabel:A,itemToStringValue:j,isItemEqualToValue:M=Qr,virtualized:N=!1,inline:P=!1,fillInputOnItemPress:F=!0,modal:ee=!1,limit:te=-1,autoComplete:ne=`list`,formAutoComplete:I,locale:re,submitOnItemClick:ie=!1}=e,{clearErrors:ae}=hi(),{setDirty:oe,validityData:se,setFilled:le,name:ue,disabled:de,setTouched:fe,setFocused:pe,validationMode:me,validation:he}=ar(),ge=ir(),_e=gt({id:t}),be=Mf({locale:re}),xe=Array.isArray(x)?null:x;if(xe&&typeof xe.label!=`function`)throw Error(Zn(100));let Se=xe?xe.data:x,we=xe?.value,Te=we?void 0:Se,Ee=J.useMemo(()=>{if(!S||!we)return;let e=at(S),t=e.map(we),n;return{values:t,findItem(r,i){if(!n){n=new Map;for(let r=0;r<t.length;r+=1)n.has(t[r])||n.set(t[r],e[r])}return If(n,r,i)}}},[S,we]),De=J.useMemo(()=>xe?e=>xe.label(e,M,e=>{let t=Ee?.findItem(e,M);return t==null?ei(e,A):xe.itemLabel(t)}):A,[xe,A,Ee,M]),Oe=J.useMemo(()=>xe?Object.assign(e=>xe.itemLabel(e),{selected:e=>ei(e,De)}):A,[xe,De,A]);function ke(e){return ei(e,De)}let[z,Ae]=J.useState(!1),[B,Me]=J.useState(null),Ne=J.useRef(B),Pe=J.useRef([]),Fe=J.useRef([]),Re=J.useRef(null),ze=J.useRef(null),Be=J.useRef(null),Ue=J.useRef(null),We=J.useRef(null),Ge=J.useRef(!1),Ke=J.useRef(null),qe=J.useRef(null),Je=J.useRef(null),Ye=J.useRef(Ff),Xe=J.useRef(null),$e=J.useRef([]),et=J.useRef(null),tt=de||h,nt=ue??p,rt=d===`multiple`,ot=d===`single`,st=c!==void 0||o!==void 0,ct=Se!==void 0,lt=S!==void 0,ut;ut=E===`always`?`always`:E?`input-change`:!1;let[dt,ft]=jr({controlled:i,default:rt?r??Ve:r,name:`Combobox`,state:`selectedValue`}),pt=J.useMemo(()=>C===null?()=>!0:C===void 0?jf(be,Oe):C,[C,be,Oe]),mt=ve(()=>st?o??``:ot?ke(dt):``).current,[V,_t]=jr({controlled:c,default:mt,name:`Combobox`,state:`inputValue`}),[vt,yt]=jr({controlled:l,default:u,name:`Combobox`,state:`open`}),xt=On(Se),Ct=!vt&&B!==null?B:String(V).trim(),wt=ot?ke(dt):``,Tt=ot&&!z&&Ct!==``&&wt.length===Ct.length&&be.contains(wt,Ct),Et=Tt?``:w??Ct,Dt=ct&&lt&&Tt&&(!xe||xe.hasValue(dt,M)),Ot=J.useMemo(()=>Se?at(Se):Ve,[Se]),kt=J.useMemo(()=>{if(S&&!Dt)return S;if(!Se)return Ve;if(xt){let e=Se,t=[],n=0;for(let r of e){if(te>-1&&n>=te)break;let e=te>-1?te-n:1/0,i=Et===``?r.items.slice(0,e):[];if(Et!==``)for(let t of r.items){if(i.length>=e)break;pt(t,Et,Oe)&&i.push(t)}if(i.length>0){let e={...r,items:i};t.push(e),n+=i.length}}return t}if(Et===``)return te>-1?Ot.slice(0,te):Ot;let e=[];for(let t of Ot){if(te>-1&&e.length>=te)break;pt(t,Et,Oe)&&e.push(t)}return e},[S,Dt,Se,xt,Et,te,pt,Oe,Ot]),H=J.useMemo(()=>{if(Ee&&kt===S)return Ee.values;let e=at(kt);return we?e.map(e=>we(e)):e},[kt,S,Ee,we]),U=ve(()=>{let e=null;return P&&vt&&ct&&d!==`none`&&(e=Br(H,dt,M,rt)),new Qe({id:_e,labelId:void 0,selectedValue:dt,open:vt,items:Te,selectionMode:d,name:nt,form:m,disabled:tt,readOnly:g,required:_,grid:b,virtualized:N,openOnInputClick:T,itemToStringLabel:De,isItemEqualToValue:M,modal:ee,autoHighlight:ut,submitOnItemClick:ie,hasInputValue:st,mounted:!1,forceMounted:!1,transitionStatus:`idle`,inline:P,activeIndex:null,selectedIndex:e,popupProps:{},listProps:{},inputProps:{},triggerProps:{},itemRoot:{props:Ze,id:_e,selectionMode:d,disabled:tt,readOnly:g,isItemEqualToValue:M},positionerElement:null,listElement:null,popupId:void 0,triggerElement:null,inputElement:null,inputGroupElement:null,popupSide:null,openMethod:null,inputInsidePopup:!0,inputOwnsFormValue:d===`none`},{onOpenChangeComplete:L,setOpen:L,setInputValue:L,setSelectedValue:L,setIndices:L,handleSelection:L,forceMount:L,requestSubmit:L,listRef:Pe,labelsRef:Fe,popupRef:Re,emptyRef:We,inputRef:ze,startDismissRef:Be,endDismissRef:Ue,chipsContainerRef:Ke,clearRef:qe,valuesRef:$e,pointerDownItemRef:et,selectionEventRef:Je},kf)}).current,At=d===`none`?V:dt,jt=J.useMemo(()=>d===`none`?At:Array.isArray(dt)?dt.map(e=>xr(e,j)):xr(dt,j),[At,j,d,dt]),Mt=Xt(f),Nt=Xt(n),Pt=U.useState(`activeIndex`),Ft=U.useState(`selectedIndex`),It=U.useState(`positionerElement`),Lt=U.useState(`listElement`),Rt=U.useState(`triggerElement`),zt=U.useState(`inputElement`),Bt=U.useState(`inputGroupElement`),Vt=U.useState(`inline`),Ht=U.useState(`inputInsidePopup`),Ut=U.useState(`inputOwnsFormValue`),Gt=ot&&!Ht&&V===wt,Kt=it(Rt),{openMethod:qt,triggerProps:Jt}=Er(vt),Yt=Xt(()=>jt);St(Ht?Kt:ze,_e,At,Yt,!tt,p);let Zt=Xt(()=>{Se?Fe.current=H.map(ke):U.set(`forceMounted`,!0)}),Qt=Xt((e,t,n,r)=>{if(t===-1){if(Ye.current===Ff)return;Ye.current=Ff}else Ye.current={value:e,index:t};Mt(e,kr(n,r,{index:t}))}),$t=Xt(e=>{let t={};e.activeIndex!==void 0&&(t.activeIndex=e.activeIndex),e.selectedIndex!==void 0&&(t.selectedIndex=e.selectedIndex),U.update(t);let n=e.activeIndex;if(n===void 0)return;let r=e.type||`none`;n===null?Qt(void 0,-1,r,e.event):Qt($e.current[n],n,r,e.event)}),en=Xt((t,n)=>{if(e.onInputValueChange?.(t,n),!n.isCanceled){if(Ge.current=n.reason===wr,n.reason===`input-change`){vt&&B!==null&&Me(null);let e=n.event,r=e.inputType;if(e.type===`compositionend`||r!=null&&r!==``&&r!==`insertReplacementText`){let e=t.trim()!==``;e&&Ae(!0),Xe.current={hasQuery:e};let n=U.state.listElement;if(!U.state.virtualized&&n){let e=Re.current;for(let t of pi(n.firstElementChild??n)){if(!bt(t)||(e?!yi(e,t):t.getAttribute(`role`)===`dialog`))break;if(Nf(t)){t.scrollTop=0;break}}}e&&ut&&U.state.activeIndex==null&&(vt||Vt)&&U.set(`activeIndex`,0)}}else n.reason===`input-clear`&&t===``&&U.state.inputInsidePopup&&(Xe.current={hasQuery:!1,selection:!0});_t(t)}}),tn=Xt(e=>{let t=!e&&Ht&&!Vt&&V!==``&&(String(V).trim()===B||V===wt);!e&&(t||V===``||Gt)&&Ae(!1),Me(null),t&&en(``,An(wr))}),[nn,rn]=J.useState(!1),an=Xt((t,n)=>{if(vt===t)return;n.reason===`escape-key`&&ct&&H.length===0&&!We.current&&n.allowPropagation();let r=n,i=ye(r);if(e.onOpenChange?.(t,r),Xe.current?.hasQuery&&n.reason===`input-change`===n.isCanceled&&(Xe.current=null),!n.isCanceled&&(t&&B!==null&&tn(n.reason===on),!t&&z&&(ot?(Vt||Me(Ct),Ct===``&&Ae(!1)):rt&&(Vt||Me(Ct),Ht&&$t({activeIndex:null}),(!Ht||Vt)&&en(``,An(wr,n.event,void 0,{isItemPress:n.reason===_n})))),t||rn(i()),yt(t),!t&&Ht&&(n.reason===`focus-out`||n.reason===`outside-press`)&&(fe(!0),pe(!1),me===`onBlur`))){let e=d===`none`?V:dt;he.commit(e)}}),sn=Xt((e,t)=>{a?.(e,t),!t.isCanceled&&(ft(e),(d===`none`&&Re.current&&F||ot&&!U.state.inputInsidePopup)&&en(ke(e),An(t.reason,t.event)))}),ln=Xt((e,t)=>{let n=ht(e),r=Je.current??e;Je.current=null;let i=An(_n,r),a=pn(n,`a`)?.getAttribute(`href`);if(a){a.startsWith(`#`)&&an(!1,i);return}if(rt){let e=Array.isArray(dt)?dt:[],n=Kr(e,t,M),r=n?cn(e,t,M):[...e,t];if(sn(r,i),i.isCanceled||!(ze.current&&ze.current.value.trim()!==``))return;if(U.state.inputInsidePopup){en(``,An(wr,i.event,void 0,{isItemPress:!0}));let e=Xe.current;e&&!n&&(e.toggledValue=t)}else an(!1,i)}else{if(sn(t,i),i.isCanceled)return;an(!1,i)}}),dn=Xt(()=>{let e=he.inputRef.current?.form??U.state.inputElement?.form;e&&typeof e.requestSubmit==`function`&&e.requestSubmit()}),fn=Xt(()=>{if(Nt?.(!1),Ae(!1),Me(null),$t(d===`none`?{activeIndex:null,selectedIndex:null}:{activeIndex:null}),rt&&ze.current&&ze.current.value!==``&&!Ge.current&&en(``,An(wr)),ot)if(U.state.inputInsidePopup)ze.current&&ze.current.value!==``&&en(``,An(wr));else{let e=ke(dt);ze.current&&ze.current.value!==e&&en(e,An(e===``?wr:ri))}}),W=J.useMemo(()=>Vt&&It?{current:pn(It,`[role="dialog"]`)}:Re,[Vt,It]),{mounted:mn,transitionStatus:hn,forceUnmount:gn}=je({open:vt,ref:W,preventUnmountOnClose:nn,setPreventUnmountOnClose:rn,onUnmount:fn});J.useImperativeHandle(e.actionsRef,()=>({unmount:gn,close:()=>an(!1,An(Gn))}),[gn,an]),Ie(function(){let e=Ne.current!==null&&B===null;if(Ne.current=B,vt&&(!e||!ct)||(vt||(et.current=null),d===`none`))return;let t=ct?H:$e.current;$t({selectedIndex:Br(t,dt,M,rt)})},[vt,B,dt,d,rt,ct,H,M,$t]),Ie(()=>{Se&&($e.current=H,Pe.current.length=H.length)},[Se,H]),Ie(()=>{!vt&&Xe.current?.hasQuery&&(Xe.current=null)},[vt]),Ie(()=>{if(!vt&&Vt&&W.current){Xe.current=null;return}let e=ct||lt?H:$e.current,t=Xe.current;if(t){let n=vt||Vt||U.state.positionerElement?.hidden===!1;if(t.hasQuery){let t=ze.current;!ut||String(V).trim()===``||Vt&&ut!==`always`&&(!t||Ti(t.ownerDocument)!==t)?Xe.current=null:n&&(e[0]!==void 0||!ct&&!lt)&&(U.set(`activeIndex`,0),Xe.current=null)}else if(String(V).trim()===``&&(Xe.current=null,n)){let e=t.selection;ut===`always`&&!e&&U.state.selectionMode===`none`&&U.set(`activeIndex`,0),queueMicrotask(()=>{if(!U.state.open&&(!U.state.inline||W.current)||ze.current&&ze.current.value.trim()!==``)return;let n=U.state.selectedValue,r=U.state.selectionMode===`multiple`;if(r&&Array.isArray(n)?n.length>0:U.state.selectionMode!==`none`&&n!=null){let e=ct||lt?H:$e.current,i=yr(e,t.toggledValue,U.state.isItemEqualToValue);U.set(`activeIndex`,i===-1?Br(e,n,U.state.isItemEqualToValue,r):i)}else e?U.set(`activeIndex`,null):ut===`always`&&U.set(`activeIndex`,0)})}}if(!vt&&!Vt)return;let n=U.state.activeIndex;if(n==null){if(ut===`always`&&e.length>0){U.set(`activeIndex`,0);return}Qt(void 0,-1,ri);return}if(n>=e.length){Qt(void 0,-1,ri),U.set(`activeIndex`,null);return}let r=e[n],i=Ye.current.value,a=i!==Pf&&En(r,i,U.state.isItemEqualToValue);(Ye.current.index!==n||!a)&&Qt(r,n,ri)},[Pt,ut,Qt,lt,ct,H,Vt,vt,W,U,V]),Ie(()=>{if(d===`none`){le(String(V)!==``);return}le(rt?Array.isArray(dt)&&dt.length>0:dt!=null)},[le,d,V,dt,rt]),J.useEffect(()=>{ct&&ut&&H.length===0&&$t({activeIndex:null})},[ct,ut,H.length,$t]);function vn(){vt&&Ct!==``&&Ct!==String(mt)&&!Gt&&Ae(!0)}function bn(){vt&&B!==null&&tn(!1)}let xn=!1;function Sn(){!xn&&V!==wt&&(xn=!0,en(wt,An(ri)))}function Cn(){d!==`none`&&(ae(nt),oe(qn(dt,se.initialValue,M)),he.change(dt),ot&&!st&&!Ht&&Sn())}function wn(){ot&&!st&&!Ht&&!z&&Sn()}function Tn(){d===`none`&&(ae(nt),oe(V!==se.initialValue),he.change(V))}qr(Ct,vn),qr(vt,bn),qr(dt,Cn),qr(wt,wn),qr(Se,wn),qr(V,Tn);let Dn=He({open:Vt?!0:vt,onOpenChange:an,elements:{reference:Ht?Rt:zt,floating:It}}),kn=b?`grid`:`listbox`,jn=vt||Vt,Mn=jn?`true`:`false`,Nn=J.useMemo(()=>{let e=zt?.tagName===`INPUT`,t=zt==null||e,n=t||jn,r=t?{autoComplete:`off`,spellCheck:`false`,autoCorrect:`off`,autoCapitalize:`none`}:{};return n&&(r.role=`combobox`,r[`aria-expanded`]=Mn,r[`aria-haspopup`]=kn,r[`aria-controls`]=jn?Lt?.id:void 0,r[`aria-autocomplete`]=g?`none`:ne),{reference:r,floating:{role:`presentation`}}},[zt,jn,Mn,kn,Lt?.id,ne,g]),Pn=y(Dn,{enabled:!tt&&T,event:`mousedown-only`,toggle:!1,touchOpenDelay:Ht?0:100,reason:Wr}),Fn=Ai(Dn,{enabled:!tt&&!Vt,outsidePressEvent:{mouse:`sloppy`,touch:`intentional`},bubbles:Vt?!0:void 0,outsidePress(e){let t=ht(e);return!yi(Rt,t)&&!yi(qe.current,t)&&!yi(Ke.current,t)&&!yi(Bt,t)}}),In=Le(Dn,{enabled:!tt,id:_e,listRef:Pe,activeIndex:Pt,selectedIndex:Ft,virtual:!0,loopFocus:k,allowEscape:k&&!ut,focusItemOnOpen:z||d===`none`&&!ut?!1:`auto`,focusItemOnHover:O,resetOnPointerLeave:!D,orientation:b?`horizontal`:void 0,rtl:ge===`rtl`,disabledIndices:Ve,grid:b?vf:void 0,onNavigate(e,t){!t&&!vt&&!(Vt&&e===null)||hn===`ending`||$t({activeIndex:e,type:un(t),event:t?.nativeEvent})}}),Ln=J.useMemo(()=>ce(In.reference,{onKeyDown(e){b&&U.state.activeIndex==null&&(e.key===`ArrowLeft`||e.key===`ArrowRight`)&&e.preventBaseUIHandler()}},Fn.reference,Pn.reference,Nn.reference),[In.reference,Fn.reference,Pn.reference,Nn.reference,b,U]),Rn=J.useMemo(()=>ce(R,Fn.floating),[Fn.floating]),zn=J.useMemo(()=>ce(In.floating,Nn.floating),[In.floating,Nn.floating]),Bn=J.useMemo(()=>{let e=In.item;return{props:e?{...e,onFocus:void 0}:Ze,id:_e,selectionMode:d,disabled:tt,readOnly:g,isItemEqualToValue:M}},[In.item,_e,d,tt,g,M]);U.useContextCallback(`setOpen`,an),U.useContextCallback(`setInputValue`,en),U.useContextCallback(`setSelectedValue`,sn),U.useContextCallback(`setIndices`,$t),U.useContextCallback(`handleSelection`,ln),U.useContextCallback(`forceMount`,Zt),U.useContextCallback(`requestSubmit`,dn),U.useContextCallback(`onOpenChangeComplete`,n),yn(()=>{U.update({inline:P,popupProps:Rn,listProps:zn,inputProps:Ln,triggerProps:Jt,itemRoot:Bn})});let Vn={id:_e,selectedValue:dt,open:vt,mounted:mn,transitionStatus:hn,items:Te,inline:P,popupProps:Rn,listProps:zn,inputProps:Ln,triggerProps:Jt,itemRoot:Bn,openMethod:qt,selectionMode:d,name:nt,form:m,disabled:tt,readOnly:g,required:_,grid:b,virtualized:N,openOnInputClick:T,itemToStringLabel:De,modal:ee,autoHighlight:ut,isItemEqualToValue:M,submitOnItemClick:ie,hasInputValue:st};Ie(()=>{U.update({...Vn,inputOwnsFormValue:d===`none`&&(P||!U.state.inputInsidePopup)})},[U,...Object.values(Vn)]);let Hn=s(v,he.inputRef),Un=J.useMemo(()=>({query:Ct,hasItems:ct,filteredItems:kt,flatFilteredValues:H}),[Ct,ct,kt,H]),Wn=J.useMemo(()=>Array.isArray(At)?``:xr(At,j),[At,j]),Kn=rt&&Array.isArray(dt)&&dt.length>0,Jn=rt||d===`none`&&Ut?void 0:nt,Yn=J.useMemo(()=>!rt||!Array.isArray(dt)||!nt?null:dt.map(e=>{let t=xr(e,j);return(0,Y.jsx)(`input`,{type:`hidden`,form:m,name:nt,value:t,disabled:tt},t)}),[rt,dt,m,nt,j,tt]),Xn=(0,Y.jsxs)(J.Fragment,{children:[e.children,(0,Y.jsx)(`input`,{...he.getValidationProps(tt,{onFocus(){if(Ht){Rt?.focus();return}(ze.current||Rt)?.focus()},onChange(e){if(e.nativeEvent.defaultPrevented||tt||g)return;let t=e.currentTarget.value,n=t.toLowerCase(),r=An(ri,e.nativeEvent),i=()=>$e.current.findIndex(e=>xr(e,j).toLowerCase()===n||ke(e).toLowerCase()===n);function a(){if(rt)return;if(d===`none`){en(t,r);return}let e=i();e===-1&&(e=$e.current.findIndex((e,t)=>{let r=Fe.current[t];return r!=null&&r.toLowerCase()===n}));let a=e===-1?void 0:$e.current[e];a!=null&&sn?.(a,r)}ot&&(Zt(),Se&&i()===-1&&U.set(`forceMounted`,!0)),queueMicrotask(a)}}),id:_e&&Jn==null?`${_e}-hidden-input`:void 0,form:m,name:Jn,autoComplete:I,disabled:tt,required:_&&!Kn,readOnly:g,value:Wn,ref:Hn,style:Jn?Wt:Ce,tabIndex:-1,"aria-hidden":!0,suppressHydrationWarning:!0}),Yn]});return(0,Y.jsx)(yf.Provider,{value:U,children:(0,Y.jsx)(bf.Provider,{value:Dn,children:(0,Y.jsx)(Sf.Provider,{value:ct,children:(0,Y.jsx)(xf.Provider,{value:Un,children:(0,Y.jsx)(Cf.Provider,{value:V,children:Xn})})})})})}function Rf(e){let{multiple:t=!1,defaultValue:n,value:r,onValueChange:i,autoComplete:a,...o}=e;return(0,Y.jsx)(Lf,{...o,selectionMode:t?`multiple`:`single`,selectedValue:r,defaultSelectedValue:n,onSelectedValueChange:i,formAutoComplete:a})}var zf=`data-popup-side`,Bf=`data-list-empty`,Vf={...Bn,...$n,popupSide:e=>e?{[zf]:e}:null,listEmpty:e=>e?{[Bf]:``}:null},Hf=J.createContext(void 0);function Uf(){return J.useContext(Hf)}var Wf=J.createContext(void 0);function Gf(e){let t=J.useContext(Wf);if(t===void 0&&!e)throw Error(Zn(21));return t}var Kf=J.forwardRef(function(e,t){let n=wf(),{buttonRef:r,getButtonProps:i}=Nn({native:!1}),a=s(t,r);function o(e){n.context.setOpen(!1,An(Xr,e.nativeEvent,e.currentTarget))}return(0,Y.jsx)(`span`,{ref:a,...i({onClick:o}),"aria-label":`Dismiss`,tabIndex:void 0,style:Wt})});function qf(e){let t=e.useState(`mounted`),n=e.useState(`popupSide`),r=e.useState(`positionerElement`);return t&&r?n:null}function Jf(){return Ef().filteredItems.length===0}function Yf(e){return e===`rtl`?[`ArrowRight`,`ArrowLeft`]:[`ArrowLeft`,`ArrowRight`]}function Xf(e,t,n){let r=e.context.listRef.current[t];r&&(e.context.selectionEventRef.current=n,r.click(),e.context.selectionEventRef.current=null)}var Zf=J.forwardRef(function(e,t){let{render:n,className:r,disabled:i=!1,id:a,style:o,...s}=e,{state:c,disabled:l,setTouched:u,validationMode:d,validation:f}=ar(),{labelId:h}=T(),g=Uf(),_=!!Gf(!0),v=wf(),y=Df(),b=ir(),x=v.useState(`required`),S=v.useState(`disabled`),C=v.useState(`readOnly`),w=v.useState(`name`),E=v.useState(`form`),D=v.useState(`selectionMode`),O=v.useState(`autoHighlight`),A=v.useState(`inputProps`),M=v.useState(`triggerProps`),N=v.useState(`open`),P=v.useState(`mounted`),ee=v.useState(`selectedValue`),ne=v.useState(`id`),I=v.useState(`inline`),L=v.useState(`modal`),R=!!O,re=qf(v),ie=l||S||i,ae=Jf(),oe=te(ie,v.context.inputRef),se=_||I,ce=!se||L,le=p(a??(se?void 0:ne)),ue=_?m:c,[de,fe]=J.useState(null),pe=J.useRef(!1),me=J.useRef(null);Ie(()=>{N||(me.current=null)},[N]);let he=D===`none`&&!_,ge=Xt(e=>{let t=_||v.state.inline;t&&!v.state.hasInputValue&&v.context.setInputValue(``,An(ri)),v.update({inputElement:e,inputInsidePopup:t,inputOwnsFormValue:he})}),_e=_?s:f.getValidationProps(ie,s);function ve(e){v.context.setIndices({activeIndex:null,selectedIndex:null,type:un(e),event:e})}let ye={...ue,open:N,disabled:ie,readOnly:C,popupSide:re,listEmpty:ae};function be(e){if(!g)return;let t,n=g.chipsRef.current.length,[r]=Yf(b);return e.key===r&&(e.currentTarget.selectionStart??0)===0&&ee.length>0&&(e.preventDefault(),t=n>0?n-1:void 0),t}let xe=Nt(`input`,e,{state:ye,ref:[t,v.context.inputRef,ge],props:[A,M,{value:de??y,"aria-readonly":C||void 0,"aria-required":x||void 0,"aria-labelledby":h,disabled:ie,readOnly:C,required:D===`none`?x:void 0,form:E,...he&&w&&{name:w},id:le,onFocus(){if(oe(!0),!I)return;let e=me.current;me.current=null,!(e==null||!Object.hasOwn(v.context.valuesRef.current,e))&&v.context.setIndices({activeIndex:e})},onBlur(){u(!0),oe(!1);let e=v.state.activeIndex;if(I&&e!==null&&O!==`always`&&(me.current=e,v.context.setIndices({activeIndex:null})),d===`onBlur`){let e=D===`none`?y:ee;f.commit(e)}},onCompositionStart(e){Ge||(pe.current=!0,fe(e.currentTarget.value))},onCompositionEnd(e){pe.current=!1;let t=e.currentTarget.value;fe(null),v.context.setInputValue(t,An(on,e.nativeEvent))},onChange(e){let t=e.nativeEvent,n=t.inputType,r=!n||n===`insertReplacementText`,i=pe.current||!r;function a(e){C||ie||!e||!i||(v.context.setOpen(!0,An(on,t)),R||ve(t))}if(pe.current){let n=e.currentTarget.value;fe(n),n===``&&!v.state.openOnInputClick&&!v.state.inputInsidePopup&&v.context.setOpen(!1,An(wr,t));let r=n.trim(),i=R&&r!==``;a(r),N&&v.state.activeIndex!==null&&!i&&ve(t);return}let o=An(on,t);if(v.context.setInputValue(e.currentTarget.value,o),o.isCanceled)return;let s=e.currentTarget.value===``,c=An(wr,t);s&&!v.state.inputInsidePopup&&(D===`single`&&v.context.setSelectedValue(null,c),v.state.openOnInputClick||v.context.setOpen(!1,c)),a(e.currentTarget.value.trim()),N&&v.state.activeIndex!==null&&!R&&ve(t)},onKeyDown(e){if(e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)return;if(ie||C){C&&e.key===`Enter`&&N&&v.state.activeIndex!==null&&F(e);return}let t=e.currentTarget,n=t.scrollWidth-t.clientWidth,r=b===`rtl`;if(e.key===`Home`){F(e);let n=k&&r?t.value.length:0;t.setSelectionRange(n,n),t.scrollLeft=0;return}if(e.key===`End`){F(e);let i=k&&r?0:t.value.length;t.setSelectionRange(i,i),t.scrollLeft=r?-n:n;return}if(!P&&e.key===`Escape`){let t=D===`multiple`&&Array.isArray(ee)?ee.length===0:ee===null,n=An(_r,e.nativeEvent),r=D===`multiple`?[]:null;v.context.setInputValue(``,n),v.context.setSelectedValue(r,n),!t&&!v.state.inline&&!n.isPropagationAllowed&&e.stopPropagation();return}if(g&&e.key===`Backspace`&&t.value===``&&Array.isArray(ee)&&ee.length>0){let t=g.chipsRef.current.length,n=t>0?t-1:ee.length-1,r=ee.filter((e,t)=>t!==n);ve(e.nativeEvent),v.context.setSelectedValue(r,An(ri,e.nativeEvent));return}let i=be(e);if(i!==void 0&&g?.chipsRef.current[i]?.focus(),e.which!==229&&e.key===`Enter`&&N){let t=v.state.activeIndex,n=e.nativeEvent;if(t===null){if(I)return;v.context.setOpen(!1,An(ri,n));return}F(e),Xf(v,t,n)}}},_e],stateAttributesMapping:Vf}),Se=_?(0,Y.jsx)(qe.Provider,{value:j,children:xe}):xe;return(0,Y.jsxs)(J.Fragment,{children:[N&&ce&&(0,Y.jsx)(Kf,{ref:v.context.startDismissRef}),Se]})}),Qf=J.forwardRef(function(e,t){let{render:n,className:r,nativeButton:i=!0,disabled:a=!1,id:o,style:s,...c}=e,{state:l,disabled:d,setTouched:p,validationMode:m,validation:h}=ar(),{labelId:g}=T(),_=wf(),v=_.useState(`selectionMode`),b=_.useState(`disabled`),x=_.useState(`readOnly`),S=_.useState(`required`),C=_.useState(`positionerElement`),w=_.useState(`listElement`),E=_.useState(`popupId`),D=_.useState(`triggerProps`),O=_.useState(`inputInsidePopup`),k=_.useState(`id`),A=_.useState(`labelId`),j=_.useState(`open`),M=_.useState(`selectedValue`),N=_.useState(`activeIndex`),P=_.useState(`selectedIndex`),ee=_.useState(`hasSelectedValue`),ne=Tf(),I=Df(),L=f(),R=d||b||a,re=Jf(),ie=qf(_),ae=J.useRef(null),oe=te(R,ae);gt({id:O?o:void 0});let se=O?o??k:o,ce=u(g,A),le;j&&O?le=E??Af(k):j&&(le=w?.id);let ue=J.useRef(``);function de(e){ue.current=e.pointerType}let{reference:fe}=Qn(ne,{enabled:!j&&!x&&!b&&v===`single`,listRef:_.context.labelsRef,activeIndex:N,selectedIndex:P,onMatch(e){let t=_.context.valuesRef.current[e];t!==void 0&&_.context.setSelectedValue(t,An(ri))}}),{reference:pe}=y(ne,{enabled:!b,event:`mousedown`}),{buttonRef:me,getButtonProps:he}=Nn({native:i,disabled:R}),ge={...l,readOnly:x,open:j,disabled:R,popupSide:ie,listEmpty:re,placeholder:v!==`none`&&!ee};return Nt(`button`,e,{ref:[t,me,ae,Xt(e=>{_.set(`triggerElement`,e)})],state:ge,props:[D,pe,fe,{id:se,tabIndex:O?0:-1,role:O?`combobox`:void 0,"aria-expanded":j,"aria-haspopup":O?`dialog`:`listbox`,"aria-controls":le,"aria-required":O&&S||void 0,"aria-readonly":O&&x||void 0,"aria-labelledby":ce,onPointerDown:de,onPointerEnter:de,onFocus(){oe(!0),!R&&L.start(0,_.context.forceMount)},onBlur(e){if(!yi(C,e.relatedTarget)&&(p(!0),oe(!1),m===`onBlur`)){let e=v===`none`?I:M;h.commit(e)}},onMouseDown(e){if(R||(O||ne.set(`domReferenceElement`,e.currentTarget),_.context.forceMount(),ue.current!==`touch`&&(_.context.inputRef.current?.focus(),O||e.preventDefault()),j))return;let t=Rt(e.currentTarget);function n(e){let t=_.state.triggerElement;if(!t)return;let n=ht(e),r=_.state.positionerElement,i=_.state.listElement;yi(t,n)||yi(r,n)||yi(i,n)||Yn(e,t)||_.context.setOpen(!1,An(wn,e))}O&&t.addEventListener(`mouseup`,n,{once:!0})},onKeyDown(e){(e.key===`ArrowDown`||e.key===`ArrowUp`)&&(F(e),_.context.setOpen(!0,An(cr,e.nativeEvent)),_.context.inputRef.current?.focus())}},h.getValidationProps(R,c),he],stateAttributesMapping:Vf})}),$f=J.createContext(null);function ep(){return J.useContext($f)}function tp(e){let{children:t,items:n}=e,r=J.useMemo(()=>({items:n}),[n]);return(0,Y.jsx)($f.Provider,{value:r,children:t})}function np(e){let{children:t}=e,{filteredItems:n}=Ef(),r=ep(),i=r?r.items:n;return(0,Y.jsx)(J.Fragment,{children:i.map(t)})}var rp=J.forwardRef(function(e,t){var n;let{render:r,className:i,style:a,children:o,...s}=e,c=wf(),l=Tf(),u=!!Gf(!0),{filteredItems:d,hasItems:f}=Ef(),p=c.useState(`selectionMode`),m=c.useState(`grid`),h=c.useState(`readOnly`),g=c.useState(`listProps`),_=c.useState(`virtualized`),v=c.useState(`forceMounted`),y=p===`multiple`,b=d.length===0,x=Xt(e=>{c.set(`positionerElement`,e)}),S=Xt(e=>{c.set(`listElement`,e)}),C=J.useMemo(()=>typeof o==`function`?n||=(0,Y.jsx)(np,{children:o}):o,[o]),w={empty:b},T=l.useState(`floatingId`),E=Nt(`div`,e,{state:w,ref:[t,S,u?null:x],props:[g,{children:C,tabIndex:-1,id:T,role:m?`grid`:`listbox`,"aria-multiselectable":y?`true`:void 0,"aria-readonly":!m&&h?!0:void 0,onKeyDown(e){if(!(c.state.disabled||c.state.readOnly)&&e.key===`Enter`){let t=c.state.activeIndex;if(t==null)return;F(e),Xf(c,t,e.nativeEvent)}}},s]});if(_)return E;let D=f&&!v?void 0:c.context.labelsRef;return(0,Y.jsx)(oi,{elementsRef:c.context.listRef,labelsRef:D,children:E})}),ip=J.createContext(void 0);function ap(){let e=J.useContext(ip);if(e===void 0)throw Error(Zn(20));return e}var op=J.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e,i=wf(),a=i.useState(`mounted`),o=i.useState(`forceMounted`);return a||n||o?(0,Y.jsx)(ip.Provider,{value:n,children:(0,Y.jsx)(pe,{ref:t,...r})}):null}),sp=J.forwardRef(function(e,t){let{render:n,className:r,anchor:i,positionMethod:a,side:o,align:s,sideOffset:c,alignOffset:l,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d,arrowPadding:f,sticky:p,disableAnchorTracking:m=!1,collisionAvoidance:h=Dt,style:g,..._}=e,v=wf(),y=Tf(),b=ap(),x=v.useState(`modal`),S=v.useState(`open`),C=v.useState(`mounted`),w=v.useState(`openMethod`),T=v.useState(`positionerElement`),E=v.useState(`triggerElement`),D=v.useState(`inputElement`),O=v.useState(`inputGroupElement`),k=v.useState(`inputInsidePopup`),A=v.useState(`transitionStatus`),j=Jf(),M=Ke({anchor:i??(k?E:O??D),floatingRootContext:y,positionMethod:a,mounted:C,side:o,sideOffset:c,align:s,alignOffset:l,arrowPadding:f,collisionBoundary:u,collisionPadding:d,sticky:p,disableAnchorTracking:m,keepMounted:b,collisionAvoidance:h,lazyFlip:!0});bn(S&&x,w===`touch`,T,E);let N={open:S,side:M.side,align:M.align,anchorHidden:M.anchorHidden,empty:j};Ie(()=>{v.set(`popupSide`,M.side)},[v,M.side]);let P=Xt(e=>{v.set(`positionerElement`,e)}),F=ee(e,N,{styles:M.positionerStyles,transitionStatus:A,props:_,refs:[t,P],hidden:!C,inert:!S});return(0,Y.jsxs)(Wf.Provider,{value:M,children:[C&&x&&(0,Y.jsx)(dr,{inert:xt(!S),cutout:O??D??E}),F]})}),cp={...pr,...li},lp=J.forwardRef(function(e,t){let{render:n,className:r,style:i,initialFocus:a,finalFocus:o,...s}=e,c=wf(),l=Gf(),u=Tf(),d=c.useState(`mounted`),f=c.useState(`open`),p=c.useState(`openMethod`),m=c.useState(`popupProps`),h=c.useState(`transitionStatus`),g=c.useState(`inputInsidePopup`),_=c.useState(`inputElement`),v=c.useState(`modal`),y=c.useState(`id`),b=Jf(),x=s.id??(g?Af(y):void 0);Ie(()=>(c.set(`popupId`,c.context.popupRef.current?.id||x),()=>{c.set(`popupId`,void 0)}),[c,x]),ut({open:f,ref:c.context.popupRef,onComplete(){f&&c.context.onOpenChangeComplete(!0)}});let S=Nt(`div`,e,{state:{open:f,side:l.side,align:l.align,anchorHidden:l.anchorHidden,transitionStatus:h,empty:b},ref:[t,c.context.popupRef],props:[m,{id:x,role:g?`dialog`:`presentation`,onFocus(e){let t=ht(e.nativeEvent);p!==`touch`&&(yi(c.state.listElement,t)||t===e.currentTarget)&&c.context.inputRef.current?.focus()}},A(h),s],stateAttributesMapping:cp}),C=a===void 0?g?e=>e===`touch`?c.context.popupRef.current:_:!1:a,w;w=o??(g?void 0:!1);let T=!g||v;return(0,Y.jsx)(U,{context:u,disabled:!d,modal:T,openInteractionType:p,initialFocus:C,returnFocus:w,getInsideElements:()=>[c.context.startDismissRef.current,c.context.endDismissRef.current],children:(0,Y.jsxs)(J.Fragment,{children:[S,T&&(0,Y.jsx)(Kf,{ref:c.context.endDismissRef})]})})}),up=J.createContext(void 0);function dp(){let e=J.useContext(up);if(e===void 0)throw Error(Zn(18));return e}var fp=J.forwardRef(function(e,t){let{render:n,className:r,style:i,items:a,...o}=e,s=wf().useState(`grid`),[c,l]=J.useState(),u=J.useMemo(()=>({labelId:c,setLabelId:l,items:a}),[c,l,a]),d=Nt(`div`,e,{ref:t,props:[{role:s?`rowgroup`:`group`,"aria-labelledby":c},o]}),f=(0,Y.jsx)(up.Provider,{value:u,children:d});return a?(0,Y.jsx)(tp,{items:a,children:f}):f}),pp=J.forwardRef(function(e,t){let{render:n,className:r,style:i,id:a,...o}=e,{setLabelId:s}=dp(),c=p(a);return Ie(()=>(s(c),()=>{s(e=>e===c?void 0:e)}),[c,s]),Nt(`div`,e,{ref:t,props:[{id:c,"aria-hidden":!0},o]})}),mp=J.createContext(void 0),hp=J.createContext(!1);function gp(){return J.useContext(hp)}function _p(e){let{componentProps:t,forwardedRef:n,virtualized:r,indexFromFilter:i}=e,{render:a,className:o,style:s,value:c=null,index:l,disabled:u=!1,nativeButton:d=!1,...f}=t,p=J.useRef(null),m=Sn({guess:!0,index:l,textRef:p}),h=wf(),g=gp(),_=Of(),{props:v,id:y,selectionMode:b,disabled:x,readOnly:S,isItemEqualToValue:C}=h.useState(`itemRoot`),w=x||u,T=b!==`none`,E=l??i??m.index,D=E!==-1,O=h.useState(`isActive`,E),k=h.useState(`isSelected`,c),A=J.useRef(null),j=y!=null&&D?`${y}-${E}`:void 0,M=k&&T;Ie(()=>{if(!(D&&(r||l!=null)))return;let e=h.context.listRef.current;return e[E]=A.current,()=>{delete e[E]}},[D,r,E,l,h]),Ie(()=>{if(!D||_)return;let e=h.context.valuesRef.current;return e[E]=c,()=>{delete e[E]}},[D,_,E,c,h]),Ie(()=>{if(!D||_)return;let e=h.state.selectedValue,t=h.state.selectedIndex;h.state.selectionMode===`multiple`&&Array.isArray(e)?t=Tr(E,c,h.context.valuesRef.current,e,C,t):En(c,e,C)&&(t=E),h.set(`selectedIndex`,t)},[D,_,h,E,c,C]);let{getButtonProps:N,buttonRef:P}=Nn({disabled:w,focusableWhenDisabled:!0,native:d,composite:!0}),F={disabled:w,selected:M,highlighted:O};function ee(e){function t(){h.context.handleSelection(e,c)}h.state.submitOnItemClick?(Fi.flushSync(t),h.context.requestSubmit()):t()}let te={id:j,role:g?`gridcell`:`option`,"aria-selected":T?M:void 0,tabIndex:void 0,onPointerDownCapture(e){e.isPrimary&&(h.context.pointerDownItemRef.current=e.currentTarget),e.preventDefault()},onMouseDown(e){e.preventDefault()},onClick(e){w||S||ee(e.nativeEvent)},onMouseUp(e){let t=h.context.pointerDownItemRef.current===e.currentTarget;h.context.pointerDownItemRef.current=null,!(w||S||e.button!==0||t||!O)&&ee(e.nativeEvent)}},ne=Nt(`div`,t,{ref:[P,n,m.ref,A],state:F,props:[v,te,f,N]}),I=J.useMemo(()=>({selected:M,textRef:p}),[M,p]);return(0,Y.jsx)(mp.Provider,{value:I,children:ne})}function vp(e){let{componentProps:t,forwardedRef:n}=e,r=wf().useState(`isItemEqualToValue`),{flatFilteredValues:i}=Ef();return(0,Y.jsx)(_p,{componentProps:t,forwardedRef:n,virtualized:!0,indexFromFilter:yr(i,t.value??null,r)})}var yp=J.memo(J.forwardRef(function(e,t){let n=wf().useState(`virtualized`);return n&&e.index==null?(0,Y.jsx)(vp,{componentProps:e,forwardedRef:t}):(0,Y.jsx)(_p,{componentProps:e,forwardedRef:t,virtualized:n,indexFromFilter:void 0})})),bp=J.forwardRef(function(e,t){let{render:n,className:r,style:i,children:a,...o}=e,{filteredItems:s}=Ef(),c=wf(),l=bs(),u=s.length===0?a:null;return Nt(`div`,e,{ref:[t,c.context.emptyRef,l],props:[{children:u,role:`status`,"aria-live":`polite`,"aria-atomic":!0},o]})});function xp(e){switch(e){case`data-sync`:return`Not syncing with the remote`;case`provider`:return`Unsettled: which package provides the data`}}function Sp({errors:e}){return!e||e.length===0?null:(0,Y.jsx)(`div`,{className:`flex flex-col gap-2 border-b border-danger/30 bg-danger/10 px-4 py-3`,children:e.map(e=>(0,Y.jsxs)(`div`,{role:`alert`,className:`flex items-start gap-2 text-sm`,children:[(0,Y.jsx)(ls,{className:`mt-0.5 h-4 w-4 shrink-0 text-danger`,"aria-hidden":!0}),(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[(0,Y.jsxs)(`p`,{className:`font-medium text-danger`,children:[xp(e.code),(0,Y.jsxs)(`span`,{className:`font-normal text-muted-foreground`,children:[` · since `,Or(e.since)]})]}),(0,Y.jsx)(`p`,{className:`break-words text-muted-foreground`,children:e.message})]})]},e.code))})}function Cp({folder:e,address:t,fromAddress:n=t!==void 0,onAdded:r,onClose:i}){let[a,o]=(0,J.useState)(e??null),[s,c]=(0,J.useState)(n),[l,u]=(0,J.useState)(t??``),[d,f]=(0,J.useState)(null),[p,m]=(0,J.useState)(null),[h,g]=(0,J.useState)(null),{busy:_,error:v,reset:y,run:b}=ni(),x=(0,J.useRef)(null);(0,J.useEffect)(()=>{let e=document.activeElement instanceof HTMLElement?document.activeElement:null;return()=>e?.focus()},[]);let S=async()=>{g(null);let e=await Su().catch(()=>({ok:!1,error:`Could not reach the daemon.`}));if(!e.ok){g(e.error);return}if(!e.path){i();return}y(),o(e.path)};(0,J.useEffect)(()=>{!e&&!n&&S()},[]),(0,J.useEffect)(()=>{if(!p)return;let e=setTimeout(i,p.path?6e3:2500);return()=>clearTimeout(e)},[p]);let C=async e=>{e?.preventDefault();let t=l.trim();if(_||!t)return;let n=await b(()=>vu(t),`Could not reach the daemon.`);n.ok&&f({typed:t,address:n.value.address,path:n.value.path})};(0,J.useEffect)(()=>{t!==void 0&&C()},[]);let w=async()=>{if(_||!a&&!d)return;let e=await b(()=>d?yu(d.typed):_u(a),`Failed to add the project.`);e.ok&&(m({alreadyActivated:e.value.alreadyActivated,...e.value.path?{path:e.value.path}:{}}),r(e.value.path??a))};return(0,Y.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-start justify-center bg-black/40 pt-24`,onKeyDown:e=>{if(e.key===`Escape`){e.preventDefault(),i();return}if(e.key!==`Tab`||!x.current)return;let t=[...x.current.querySelectorAll(`button, input, [tabindex]:not([tabindex="-1"])`)].filter(e=>!e.hasAttribute(`disabled`)),n=t[0],r=t[t.length-1];!n||!r||(e.shiftKey&&document.activeElement===n?(e.preventDefault(),r.focus()):!e.shiftKey&&document.activeElement===r&&(e.preventDefault(),n.focus()))},children:[(0,Y.jsx)(`div`,{className:`absolute inset-0`,onClick:i}),(0,Y.jsx)(`div`,{ref:x,role:`dialog`,"aria-modal":`true`,"aria-label":`Add project`,className:`relative w-96 max-w-[90vw] rounded-lg border border-border bg-background p-4 shadow-lg`,children:p?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`p`,{role:`status`,className:`mb-3 text-sm font-medium`,children:p.alreadyActivated?`Already added`:`Project added`}),p.path&&(0,Y.jsxs)(`p`,{className:`mb-3 break-all text-xs text-muted-foreground`,children:[`It is in `,(0,Y.jsx)(`code`,{className:`rounded bg-muted px-1`,children:p.path}),`.`]}),(0,Y.jsx)(`div`,{className:`flex justify-end`,children:(0,Y.jsx)(B,{type:`button`,size:`sm`,autoFocus:!0,onClick:i,children:`Done`})})]}):s&&!d?(0,Y.jsxs)(`form`,{onSubmit:e=>void C(e),children:[(0,Y.jsx)(`p`,{className:`mb-2 text-sm font-medium`,children:`Add project from a GitHub address`}),h&&(0,Y.jsx)(`p`,{className:`mb-2 text-xs text-muted-foreground`,children:h}),(0,Y.jsx)(`label`,{className:`mb-1 block text-xs text-muted-foreground`,htmlFor:`add-project-address`,children:`The repository’s address. Any git host works.`}),(0,Y.jsx)($e,{id:`add-project-address`,autoFocus:!0,value:l,disabled:_,onChange:e=>u(e.target.value),placeholder:`github.com/you/project`,spellCheck:!1,autoCapitalize:`none`,autoCorrect:`off`,className:`mb-2 h-8 bg-background px-2 font-mono text-xs`}),(0,Y.jsx)(`p`,{className:`mb-3 text-xs text-muted-foreground`,children:`It is cloned into the projects folder of this computer, with the logins this computer has.`}),v&&(0,Y.jsx)(`p`,{className:`mb-2 text-xs text-danger`,children:v}),(0,Y.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,Y.jsx)(B,{type:`button`,variant:`ghost`,size:`sm`,onClick:i,children:`Cancel`}),(0,Y.jsx)(B,{type:`submit`,size:`sm`,disabled:_||!l.trim(),children:`Next`})]})]}):h?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`p`,{className:`mb-2 text-sm font-medium`,children:`Add project`}),(0,Y.jsx)(`p`,{className:`mb-3 text-xs text-danger`,children:h}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap justify-end gap-2`,children:[(0,Y.jsx)(B,{type:`button`,variant:`ghost`,size:`sm`,onClick:i,children:`Cancel`}),(0,Y.jsx)(B,{type:`button`,variant:`outline`,size:`sm`,onClick:()=>c(!0),children:`Add from a GitHub address`}),(0,Y.jsx)(B,{type:`button`,size:`sm`,onClick:()=>void S(),children:`Try again`})]})]}):a||d?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`p`,{className:`mb-2 text-sm font-medium`,children:`Do you trust this repository?`}),(0,Y.jsx)(`p`,{className:`mb-2 break-all text-xs text-muted-foreground`,children:(0,Y.jsx)(`code`,{className:`rounded bg-muted px-1`,children:d?d.address:a})}),d&&(0,Y.jsxs)(`p`,{className:`mb-2 break-all text-xs text-muted-foreground`,children:[`It will be cloned to `,(0,Y.jsx)(`code`,{className:`rounded bg-muted px-1`,children:d.path}),`.`]}),(0,Y.jsx)(`p`,{className:`mb-3 text-xs text-muted-foreground`,children:`Agents will read its files. Hidden instructions in a repository can take over an agent, so add only the ones you trust.`}),v&&(0,Y.jsx)(`p`,{className:`mb-2 text-xs text-danger`,children:v}),(0,Y.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,Y.jsx)(B,{type:`button`,variant:`ghost`,size:`sm`,disabled:_,onClick:()=>{y(),d?f(null):e?i():S()},children:d?`Change the address`:e?`Cancel`:`Choose again`}),(0,Y.jsx)(B,{type:`button`,size:`sm`,autoFocus:!0,disabled:_,onClick:()=>void w(),children:_?d?`Cloning…`:`Adding…`:d?`I trust it, clone and add it`:`I trust it, add it`})]})]}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`p`,{className:`mb-2 text-sm font-medium`,children:`Add project`}),(0,Y.jsx)(`p`,{role:`status`,className:`mb-3 text-xs text-muted-foreground`,children:`Choose the repository's folder in the system dialog…`}),(0,Y.jsx)(`div`,{className:`flex justify-end`,children:(0,Y.jsx)(B,{type:`button`,variant:`ghost`,size:`sm`,onClick:i,children:`Cancel`})})]})})]})}var wp=2e3,Tp=200;function Ep(e){return e.replace(/^[a-z+]+:\/\//i,``).replace(/^[^@/]+@/,``).replace(/^([^/:]+):(?!\d+\/)/,`$1/`).replace(/\.git$/,``).replace(/\/$/,``)}var Dp=(e,t)=>e.value===t.value,Op=(e,t)=>`${e.label}\n${e.search}`.toLowerCase().includes(t);function kp(e,t,n,r){let i=r.trim().toLowerCase(),a=(e,t)=>(i?e.filter(e=>Op(e,i)):e).slice(0,t),o=Yt(r)?.address,s=o!==void 0&&[...t,...n].some(e=>e.search.toLowerCase().includes(o)),c=o!==void 0&&!s?[{value:`address:${o}`,label:`Add ${o}`,detail:`Cloned to this computer, as a project`,pick:{kind:`address`,typed:r.trim()},search:``}]:[];return[{value:`none`,items:e?a([e],1):[]},{value:`projects`,label:`Projects`,items:a(t,Tp)},{value:`repos`,label:`Repos`,items:a(n,i?Tp:20)},{value:`address`,items:c}].filter(e=>e.items.length>0)}function Ap({project:e}){return(0,Y.jsx)(`span`,{"aria-hidden":!0,className:q(`h-2 w-2 shrink-0 rounded-full`,e.errors?.length?`bg-danger`:e.activated?`bg-primary`:`bg-muted-foreground`)})}function jp({name:e,label:t}){let n=t.endsWith(e)?t.slice(0,-e.length):``;return(0,Y.jsxs)(`span`,{className:`block truncate`,children:[n&&(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:n}),n?e:t]})}function Mp({machineId:e}){let t=fd().find(t=>t.id===e);if(!t)return null;let n=oe[Et(t).kind];return(0,Y.jsxs)(`span`,{className:`flex items-center gap-1 text-xs text-muted-foreground`,children:[(0,Y.jsx)(n,{className:`h-3 w-3 shrink-0`,"aria-hidden":!0}),(0,Y.jsxs)(`span`,{className:`truncate`,children:[`on `,Mt(t)]})]})}function Np({project:e,label:t}){return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`span`,{className:`mt-0.5 flex h-3.5 w-3.5 shrink-0 items-center justify-center`,children:(0,Y.jsx)(Ap,{project:e})}),(0,Y.jsxs)(`span`,{className:`min-w-0 flex-1 leading-tight`,children:[(0,Y.jsx)(jp,{name:e.name,label:t}),e.machine!==void 0&&(0,Y.jsx)(Mp,{machineId:e.machine}),e.errors?.map(e=>(0,Y.jsx)(`span`,{title:e.message,className:`block truncate text-xs text-danger`,children:xp(e.code)},e.code)),!e.errors?.length&&!e.activated&&(0,Y.jsx)(`span`,{className:`block text-xs text-muted-foreground`,children:`Not activated`}),!e.errors?.length&&e.activated&&e.local&&(0,Y.jsx)(`span`,{className:`block text-xs text-muted-foreground`,children:e.local===`no-remote`?`Local only, no remote`:`Records kept on this machine`})]})]})}function Pp({picked:e,pickedName:t,projects:n,busy:r=!1,pending:i=!1,none:a,look:o,onPick:s,onProjectAdded:c}){let l=Wd(),u=mi(),[d,f]=(0,J.useState)(!1),[p,m]=(0,J.useState)(``),[h,g]=(0,J.useState)(null),[_,v]=(0,J.useState)(null),[y,b]=(0,J.useState)(null),[x,S]=(0,J.useState)(0),C=Kt(()=>Cu().catch(()=>({repos:[],hosted:[],reposLoading:!1,hostedLoading:!1,canAddFolder:!1})),null,[d,x]);(0,J.useEffect)(()=>{if(!d||!(C?.reposLoading||C?.hostedLoading))return;let e=setTimeout(()=>S(e=>e+1),wp);return()=>clearTimeout(e)},[d,C]),(0,J.useEffect)(()=>{if(_===null)return;let e=n.find(e=>e.path===_&&e.machine===void 0);e&&(v(null),g(null),s(e.id))},[_,n,s]);let w=(0,J.useMemo)(()=>({value:`none`,label:a.label,pick:{kind:`none`},search:``}),[a.label]),T=(0,J.useMemo)(()=>n.map(e=>({value:`project:${e.id}`,label:l(e.id,e.name),pick:{kind:`project`,project:e},search:e.machine===void 0?e.path:``})),[n,l]),E=(0,J.useMemo)(()=>[...(C?.repos??[]).map(e=>({value:`repo:${e.path}`,label:e.name,detail:e.url?Ep(e.url):e.path,pick:{kind:`repo`,path:e.path},search:`${e.path}\n${e.url??``}`})),...(C?.hosted??[]).map(e=>({value:`hosted:${e.address}`,label:e.address.split(`/`).slice(1).join(`/`),detail:`${e.private?`Private · `:``}Not on this computer · ${e.from}`,pick:{kind:`hosted`,address:e.address},search:`${e.address}\n${e.description??``}`}))],[C]),D=kp(o===`add`?void 0:w,T,E,p),O=e===null?w:T.find(t=>t.value===`project:${e}`)??{value:`project:${e}`,label:t??``,pick:{kind:`none`},search:``},k=O.label;if(!k&&!i)return null;let A=O.pick.kind===`project`?O.pick.project:void 0,j=async()=>{b(null);let e=await wu().catch(()=>({ok:!1,error:`Could not reach the daemon.`}));e.ok?e.added&&S(e=>e+1):b(e.error)},M=o===`sidebar`?`Project: ${i?`loading`:k}`:o===`add`?a.label:`The session works in`,N=o===`add`?(0,Y.jsxs)(`button`,{type:`button`,className:lt({size:`sm`}),children:[(0,Y.jsx)(Do,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),a.label]}):o===`sidebar`?(0,Y.jsxs)(`button`,{type:`button`,className:`flex w-full items-center gap-2 rounded-md border border-sidebar-border bg-background px-2 py-1.5 text-sm font-medium transition-colors hover:bg-sidebar-accent/60`,children:[i?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`h-2 w-2 shrink-0 rounded-full bg-muted`}),(0,Y.jsx)(`span`,{className:`flex-1`,children:(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`block h-3.5 w-24 animate-pulse rounded bg-muted`})})]}):(0,Y.jsxs)(Y.Fragment,{children:[A?(0,Y.jsx)(Ap,{project:A}):(0,Y.jsx)(Ho,{className:`h-4 w-4 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`flex-1 truncate text-left`,children:k})]}),(0,Y.jsx)(uo,{className:`h-3.5 w-3.5 shrink-0 opacity-70`,"aria-hidden":!0})]}):(0,Y.jsxs)(`button`,{type:`button`,className:q(Bc,`max-w-[16rem]!`),children:[(0,Y.jsx)(Ao,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`truncate`,children:k}),(0,Y.jsx)(Vn,{className:`h-3 w-3 shrink-0 opacity-70`,"aria-hidden":!0})]}),P=(0,Y.jsx)(Qf,{disabled:r||i,"aria-label":M,className:zt,render:N});return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(Rf,{items:D,filteredItems:D,value:O,isItemEqualToValue:Dp,itemToStringLabel:e=>e.label,inputValue:p,onInputValueChange:m,open:d,onOpenChange:e=>{f(e),e||m(``)},onValueChange:e=>{e&&(e.pick.kind===`none`?s(null):e.pick.kind===`project`?s(e.pick.project.id):e.pick.kind===`repo`?g({folder:e.pick.path}):e.pick.kind===`hosted`?g({address:e.pick.address}):g({address:e.pick.typed}))},children:[o===`row`?(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:P}),(0,Y.jsx)(W,{children:e===null?a.tip:`The session works in ${k}`})]}):P,(0,Y.jsx)(op,{children:(0,Y.jsx)(sp,{positionMethod:u,sideOffset:6,align:`start`,className:`z-50 outline-none`,children:(0,Y.jsxs)(lp,{"aria-label":M,className:q(we,`w-[22rem] max-w-[var(--available-width)]`),children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border px-3`,children:[(0,Y.jsx)(ts,{className:`h-3.5 w-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Y.jsx)(Zf,{"aria-label":`Search projects and repos`,placeholder:`Search, or paste a GitHub address`,className:`h-9 w-full min-w-0 bg-transparent text-sm outline-none placeholder:text-muted-foreground`})]}),(0,Y.jsx)(Zt,{viewportClassName:`h-[min(20rem,calc(var(--available-height)-5rem))]`,children:(0,Y.jsxs)(`div`,{className:`p-1`,children:[(0,Y.jsx)(bp,{className:`px-2 py-1.5 text-xs text-muted-foreground empty:hidden`,children:`No project or repo by that name.`}),(0,Y.jsx)(rp,{children:e=>(0,Y.jsxs)(fp,{items:e.items,children:[e.label&&(0,Y.jsx)(pp,{className:`px-2 pt-2 pb-1 text-xs font-normal text-muted-foreground`,children:e.label}),(0,Y.jsx)(np,{children:e=>(0,Y.jsxs)(yp,{value:e,className:q(Ir,`items-start`),children:[e.pick.kind===`address`?(0,Y.jsx)(Qo,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0}):e.pick.kind===`none`?(0,Y.jsx)(Ho,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0}):e.pick.kind===`repo`?(0,Y.jsx)(To,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0}):e.pick.kind===`hosted`?(0,Y.jsx)(_o,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0}):null,e.pick.kind===`project`?(0,Y.jsx)(Np,{project:e.pick.project,label:e.label}):(0,Y.jsxs)(`span`,{className:`min-w-0 flex-1 leading-tight`,children:[(0,Y.jsx)(`span`,{className:`block truncate`,children:e.label}),e.detail&&(0,Y.jsx)(`span`,{className:`block truncate text-xs text-muted-foreground`,children:e.detail})]}),e.value===O.value&&(0,Y.jsx)(In,{className:`mt-0.5 h-3.5 w-3.5 shrink-0`,"aria-hidden":!0})]},e.value)})]},e.value)}),C===null||C.reposLoading?(0,Y.jsx)(`p`,{role:`status`,className:`px-2 py-1.5 text-xs text-muted-foreground`,children:`Looking for repos on this computer…`}):!p.trim()&&E.length>20?(0,Y.jsxs)(`p`,{className:`px-2 py-1.5 text-xs text-muted-foreground`,children:[`Search to see more of the `,E.length,` repos.`]}):null,C?.hostedLoading&&(0,Y.jsx)(`p`,{role:`status`,className:`px-2 py-1.5 text-xs text-muted-foreground`,children:`Asking GitHub for repos…`})]})}),C?.canAddFolder&&(0,Y.jsxs)(`div`,{className:`border-t border-border p-1`,children:[(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>void j(),className:q(`relative flex cursor-pointer select-none items-center gap-2 rounded-lg px-2 py-1.5 text-sm font-medium outline-none data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50`,`w-full text-muted-foreground`),children:[(0,Y.jsx)(Oo,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{children:`Search another folder…`})]}),y&&(0,Y.jsx)(`p`,{className:`px-2 py-1.5 text-xs text-danger`,children:y})]})]})})})]}),h!==null&&(0,Y.jsx)(Cp,{...`folder`in h?{folder:h.folder}:{address:h.address},onAdded:e=>{v(e),c()},onClose:()=>{g(null),v(null)}})]})}function Fp(e,t=!0){return e===`awaiting`?`Needs answer`:e===`uncommitted`?`Needs commit`:e===`unpushed`?t?`Needs PR`:`Needs push`:`Needs merge`}var Ip={awaiting:{Icon:ho,tone:`text-warning`},uncommitted:{Icon:Co,tone:`text-info`},unpushed:{Icon:jo,tone:`text-info`},pr:{Icon:Fo,tone:`text-success`}};function Lp(e){return e.kind===`awaiting`?e.question:e.kind===`uncommitted`?e.files?e.files===1?`1 file`:`${e.files} files`:void 0:e.kind===`unpushed`?e.commits?e.commits===1?`1 commit`:`${e.commits} commits`:void 0:`#${e.number}`}function Rp(e){return e.kind===`awaiting`?`Open the agent to answer`:e.kind===`uncommitted`?`Open the session: it left files uncommitted`:e.kind===`unpushed`?`Open the session: work on ${e.branch??``} is not published`:e.agentId?`Open the session of PR #${e.number}`:`Open PR #${e.number}`}function zp({items:e,onOpenAgent:t,onOpenProject:n,grouped:r=!1}){let[i,a]=(0,J.useState)(!1),o=i?e:e.slice(0,5),s=e.length-5,c=new Set(e.map(e=>e.projectId)).size>1;return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`ul`,{children:o.map(e=>{let{Icon:i,tone:a}=Ip[e.kind],o=Lp(e),s=wi(e.createdAt,``),l=(0,Y.jsxs)(Y.Fragment,{children:[r?(0,Y.jsx)(`span`,{title:Fp(e.kind,e.gitHost),className:q(`flex size-4 shrink-0 items-center justify-center`,a),children:(0,Y.jsx)(i,{className:`h-3.5 w-3.5`,"aria-hidden":!0})}):(0,Y.jsxs)(`span`,{className:q(`flex w-28 shrink-0 items-center gap-1.5 text-xs max-md:w-auto max-md:flex-1`,a),children:[(0,Y.jsx)(i,{className:`h-3.5 w-3.5 shrink-0`}),Fp(e.kind,e.gitHost)]}),(0,Y.jsx)(`span`,{className:q(`min-w-0 shrink truncate text-foreground md:max-w-[50%]`,r?`max-md:flex-1`:`max-md:order-1 max-md:basis-full`),children:e.title}),(0,Y.jsx)(`span`,{className:`min-w-0 truncate text-muted-foreground md:flex-auto max-md:order-2 max-md:basis-full`,children:o}),e.computer&&(0,Y.jsx)(Nr,{computer:e.computer,named:!1}),c&&(0,Y.jsx)(`span`,{className:`shrink-0 text-xs text-muted-foreground`,children:e.projectName}),(0,Y.jsx)(`span`,{className:`min-w-14 shrink-0 text-right text-xs tabular-nums text-muted-foreground`,children:s}),(0,Y.jsx)(tn,{className:`h-3.5 w-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0})]}),u=`flex w-full items-center overflow-hidden whitespace-nowrap rounded-md px-2 py-1.5 text-left text-sm hover:bg-accent/40 md:gap-3 max-md:flex-wrap max-md:gap-x-3 max-md:gap-y-0.5`;return(0,Y.jsx)(`li`,{children:(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:e.kind===`pr`&&!e.agentId?(0,Y.jsx)(`a`,{href:e.url,target:`_blank`,rel:`noreferrer`,className:u}):(0,Y.jsx)(`button`,{type:`button`,onClick:()=>e.agentId?t(e.projectId,e.agentId):n?.(e.projectId),className:u}),children:l}),(0,Y.jsx)(W,{children:e.computer?`${Rp(e)} · runs on ${e.computer.name}`:Rp(e)})]})},aa(e))})}),s>0&&(0,Y.jsx)(`button`,{type:`button`,onClick:()=>a(!i),className:`mt-1 px-2 py-1 text-xs text-muted-foreground hover:text-foreground`,children:i?`Show fewer`:`Show ${s} more`})]})}var Bp=[`#e69875`,`#dbbc7f`,`#a7c080`,`#7fbbb3`,`#d699b6`,`#e67e80`],Vp=[{d:`M-160 -166.3 A10 10 0 0 0 -175 -174.9 L-234 -140.9 A10 10 0 0 0 -239 -132.2 L-239 34.1 A10 10 0 0 0 -234 42.7 L-72 136.3 A10 10 0 0 0 -62 136.3 L-21 112.6 A10 10 0 0 0 -21 95.3 L-173 7.5 A10 10 0 0 1 -178 -1.2 L-178 -97 A10 10 0 0 1 -173 -105.7 L-165 -110.3 A10 10 0 0 0 -160 -118.9 Z`,axis:[-160,-148.4,-36.5,121.5]},{d:`M64 -221.7 A10 10 0 0 0 64 -239 L5 -273.1 A10 10 0 0 0 -5 -273.1 L-149 -189.9 A10 10 0 0 0 -154 -181.3 L-154 5.8 A10 10 0 0 0 -149 14.4 L-108 38.1 A10 10 0 0 0 -93 29.4 L-93 -146.1 A10 10 0 0 1 -88 -154.7 L-5 -202.6 A10 10 0 0 1 5 -202.6 L13 -198 A10 10 0 0 0 23 -198 Z`,axis:[48.5,-212.8,-123.5,29.2]},{d:`M224 -55.4 A10 10 0 0 0 239 -64.1 L239 -132.2 A10 10 0 0 0 234 -140.9 L90 -224 A10 10 0 0 0 80 -224 L-82 -130.5 A10 10 0 0 0 -87 -121.8 L-87 -74.5 A10 10 0 0 0 -72 -65.8 L80 -153.6 A10 10 0 0 1 90 -153.6 L173 -105.7 A10 10 0 0 1 178 -97 L178 -87.8 A10 10 0 0 0 183 -79.1 Z`,axis:[208.5,-64.4,-87,-92.4]},{d:`M160 166.3 A10 10 0 0 0 175 174.9 L234 140.9 A10 10 0 0 0 239 132.2 L239 -34.1 A10 10 0 0 0 234 -42.7 L72 -136.3 A10 10 0 0 0 62 -136.3 L21 -112.6 A10 10 0 0 0 21 -95.3 L173 -7.5 A10 10 0 0 1 178 1.2 L178 97 A10 10 0 0 1 173 105.7 L165 110.3 A10 10 0 0 0 160 118.9 Z`,axis:[160,148.4,36.5,-121.5]},{d:`M-64 221.7 A10 10 0 0 0 -64 239 L-5 273.1 A10 10 0 0 0 5 273.1 L149 189.9 A10 10 0 0 0 154 181.3 L154 -5.8 A10 10 0 0 0 149 -14.4 L108 -38.1 A10 10 0 0 0 93 -29.4 L93 146.1 A10 10 0 0 1 88 154.7 L5 202.6 A10 10 0 0 1 -5 202.6 L-13 198 A10 10 0 0 0 -23 198 Z`,axis:[-48.5,212.8,123.5,-29.2]},{d:`M-224 55.4 A10 10 0 0 0 -239 64.1 L-239 132.2 A10 10 0 0 0 -234 140.9 L-90 224 A10 10 0 0 0 -80 224 L82 130.5 A10 10 0 0 0 87 121.8 L87 74.5 A10 10 0 0 0 72 65.8 L-80 153.6 A10 10 0 0 1 -90 153.6 L-173 105.7 A10 10 0 0 1 -178 97 L-178 87.8 A10 10 0 0 0 -183 79.1 Z`,axis:[-208.5,64.4,87,92.4]}];function Hp(e){return e?`AI is working for you 🚀`:`AI isn't working for you 💤`}function Up(e){return e?`AI is working for you`:`AI isn't working for you`}function Wp(e){return Bp[(e%Bp.length+Bp.length)%Bp.length]}function Gp(e){return Bp.map((t,n)=>Wp(e+n)).concat(Wp(e)).join(`;`)}function Kp({className:e,working:t=!1}){let n=Hp(t);return(0,Y.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`-289 -326 578 651.9`,className:e,role:`img`,"aria-label":Up(t),children:[(0,Y.jsx)(`title`,{children:n}),t&&(0,Y.jsx)(`defs`,{children:Vp.map(({axis:[e,t,n,r]},i)=>(0,Y.jsxs)(`linearGradient`,{id:`hexknot-${i}`,gradientUnits:`userSpaceOnUse`,x1:e,y1:t,x2:n,y2:r,children:[(0,Y.jsx)(`stop`,{offset:`0`,stopColor:Wp(i),children:(0,Y.jsx)(`animate`,{attributeName:`stop-color`,dur:`6s`,repeatCount:`indefinite`,values:Gp(i)})}),(0,Y.jsx)(`stop`,{offset:`1`,stopColor:Wp(i-1),children:(0,Y.jsx)(`animate`,{attributeName:`stop-color`,dur:`6s`,repeatCount:`indefinite`,values:Gp(i-1)})})]},i))}),Vp.map(({d:e},n)=>(0,Y.jsx)(`path`,{fill:t?`url(#hexknot-${n})`:`var(--logo-${n+1})`,d:e},n))]})}function qp({working:e,href:t=`/`,onNavigate:n}){return(0,Y.jsxs)(`a`,{href:t,onClick:e=>{e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||e.button!==0||(e.preventDefault(),n())},className:`flex shrink-0 items-center gap-3 rounded-md [view-transition-name:oa-brand] transition-opacity hover:opacity-80 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-primary)]`,children:[(0,Y.jsx)(Kp,{className:`h-6 w-auto shrink-0`,working:e}),(0,Y.jsx)(`span`,{className:`shrink-0 font-['IBM_Plex_Sans',ui-sans-serif,sans-serif] text-[17px] leading-6 font-medium max-sm:hidden`,children:`OpenAgent`})]})}function Jp(){return document.cookie.split(`;`).some(e=>e.trim().startsWith(`openagent-view=`))}function Yp(){if(!Jp())return null;let e=`relative flex h-6 items-center justify-center rounded-md font-['IBM_Plex_Sans',ui-sans-serif,sans-serif] text-xs font-medium whitespace-nowrap`;return(0,Y.jsxs)(`div`,{className:`relative inline-flex gap-0.5 self-start rounded-lg border border-sidebar-border p-0.5 [view-transition-name:oa-toggle]`,children:[(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`absolute top-0.5 left-[calc(0.125rem+96px+0.125rem)] h-6 w-[84px] rounded-md bg-primary [view-transition-name:oa-toggle-thumb]`}),(0,Y.jsxs)(`span`,{className:`relative inline-flex gap-0.5 [view-transition-name:oa-toggle-labels]`,children:[(0,Y.jsx)(`a`,{href:`/_view/landing`,className:q(e,`w-[96px] text-muted-foreground transition-colors hover:text-foreground`),children:`Landing page`}),(0,Y.jsx)(`span`,{"aria-current":`page`,className:q(e,`w-[84px] text-primary-foreground`),children:`Dashboard`})]})]})}var Xp=H(`onPerson`),Zp=H(`sendSavePersonName`),Qp=H(`sendRemovePersonPicture`),$p=H(`sendSyncPersonFromGitHub`);H(`sendForgetPerson`);var em=6e4,tm=new Set;function nm(){for(let e of tm)e()}function rm(){let{value:e,reload:t}=Bt(()=>Xp().catch(()=>null),null,em,[],{remember:`person`});return(0,J.useEffect)(()=>{let e=()=>void t();return tm.add(e),()=>void tm.delete(e)},[t]),{person:e,reload:t}}var im=[{value:`system`,label:`System`,icon:qo},{value:`light`,label:`Light`,icon:ss},{value:`dark`,label:`Dark`,icon:Jo}];function am(){let e=Ba(Ra()),t=im.find(t=>t.value===e)??im[0],n=t.icon;return(0,Y.jsxs)(Ot,{children:[(0,Y.jsxs)(le,{children:[(0,Y.jsx)(n,{className:`h-3.5 w-3.5 shrink-0 opacity-70`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`flex-1`,children:`Theme`}),(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:t.label})]}),(0,Y.jsx)(Pt,{children:im.map(t=>{let n=t.icon;return(0,Y.jsxs)(b,{closeOnClick:!1,onClick:()=>Fa({theme:t.value}),children:[(0,Y.jsx)(In,{className:q(`h-3.5 w-3.5 shrink-0`,t.value===e?`opacity-100`:`opacity-0`)}),(0,Y.jsx)(n,{className:`h-3.5 w-3.5 shrink-0 opacity-70`}),t.label]},t.value)})})]})}function om(){return(0,J.useSyncExternalStore)(sm,()=>typeof Notification>`u`?`unsupported`:Notification.permission,()=>`unsupported`)}function sm(e){let t=setInterval(e,3e3);return()=>clearInterval(t)}function cm(){let e=Ra(),t=Ha(e),n=Ua(e),r=Wa(e),i=om(),a=i!==`unsupported`,o=i===`denied`,s=t&&i===`granted`;return(0,Y.jsxs)(Ot,{children:[(0,Y.jsxs)(le,{children:[s?(0,Y.jsx)(oo,{className:`h-3.5 w-3.5 shrink-0 opacity-70`,"aria-hidden":!0}):(0,Y.jsx)(ao,{className:`h-3.5 w-3.5 shrink-0 opacity-70`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`flex-1`,children:`Notifications`}),(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:s?`On`:`Off`})]}),(0,Y.jsxs)(Pt,{className:`min-w-[16rem]`,children:[a&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(At,{children:`Deliver to`}),(0,Y.jsx)(Me,{checked:t,disabled:o,onCheckedChange:e=>{Fa({notifyBrowser:e}),e&&i==="default"&&Notification.requestPermission()},className:`items-start`,children:(0,Y.jsx)(It,{label:`Browser`,description:o?`Blocked in your browser settings`:t&&i==="default"?`Click to allow browser notifications`:`Desktop notifications while the dashboard is open`})})]}),(0,Y.jsx)(me,{})]}),(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(At,{children:`Notify me about`}),(0,Y.jsx)(Me,{checked:r,onCheckedChange:e=>Fa({notifyHumanIntervention:e}),className:`items-start`,children:(0,Y.jsx)(It,{label:`Human Queue`,description:`An agent awaiting you, or a PR to review`})}),(0,Y.jsx)(Me,{checked:n,onCheckedChange:e=>Fa({notifyNewActivity:e}),className:`items-start`,children:(0,Y.jsx)(It,{label:`New activity`,description:`An agent started or finished`})})]})]})]})}var lm=H(`onBackup`),um=H(`sendBackUpAs`),dm=6e4,fm=new Set;function pm(){for(let e of fm)e()}function mm(){let{value:e,reload:t}=Bt(()=>lm().catch(()=>null),null,dm,[],{remember:`backup`});return(0,J.useEffect)(()=>{let e=()=>void t();return fm.add(e),()=>void fm.delete(e)},[t]),{view:e,reload:t}}var hm=H(`onPersonalFolder`),gm=H(`sendSyncPersonalFolder`),_m=H(`sendStopSyncingPersonalFolder`),vm=H(`sendPersonalFolderAs`);function ym(e,t){if(!(!e||e.logins.length===0))return t!==void 0&&e.logins.includes(t)?t:e.runs??e.logins[0]}function bm({host:e,value:t,onChange:n,disabled:r=!1,label:i=`Send as`}){if(!e||e.logins.length===0)return(0,Y.jsxs)(`p`,{className:`text-xs text-warning`,children:[`OpenAgent has no account`,e?` at ${e.host}`:``,` to send it as, and never uses your own login.`,` `,(0,Y.jsx)(`button`,{type:`button`,className:`underline underline-offset-2`,onClick:kd,children:`Add one in Permissions`}),`.`]});let a=e.logins.map(e=>({value:e,label:`@${e}`}));return(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,Y.jsx)(`span`,{children:i}),(0,Y.jsxs)(Ee,{items:a,value:t??null,onValueChange:e=>e&&n(String(e)),disabled:r,children:[(0,Y.jsx)($t,{size:`sm`,"aria-label":i,className:`h-7 min-w-0`,children:(0,Y.jsx)(st,{})}),(0,Y.jsx)(qt,{children:a.map(e=>(0,Y.jsx)(Vt,{value:e.value,children:e.label},e.value))})]})]})}function xm(e,t){let n=e?.provider?.accounts.filter(e=>e.ok)??[],r=n.find(e=>e.runs)?.login;return{host:t,logins:n.map(e=>e.login),...r===void 0?{}:{runs:r}}}function Sm({onChanged:e}){let{view:t}=mm(),{view:n,reload:r}=qs();if(!t||t.gaps.length===0)return null;let i=new Map;for(let e of t.gaps)i.set(e.host,[...i.get(e.host)??[],e]);return(0,Y.jsxs)(`section`,{"aria-label":`Not backed up`,className:`mb-4 space-y-3 rounded-lg border border-warning/40 bg-warning/5 p-3`,children:[(0,Y.jsxs)(`p`,{className:`flex items-center gap-2 text-sm font-medium text-warning`,children:[(0,Y.jsx)(fo,{className:`h-4 w-4 shrink-0`,"aria-hidden":!0}),`Not backed up`]}),[...i].map(([t,i])=>{let a=n?.hosts.find(e=>e.host===t),o=a?.provider?.name??t,s=xm(a,t);return(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`OpenAgent backs up to ${o} with an account of its own, never your own login. Until then, changes are kept on this computer.`}),s.logins.length===0?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`ul`,{className:`space-y-1`,children:i.map(e=>(0,Y.jsx)(`li`,{className:`text-sm`,children:(0,Y.jsx)(Cm,{gap:e})},e.kind+(e.projectId??``)))}),a?(0,Y.jsx)(lc,{row:a,onChanged:r,size:`xs`}):(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`No package answers for ${t} yet.`})]}):(0,Y.jsx)(`ul`,{className:`space-y-2`,children:i.map(t=>(0,Y.jsx)(wm,{gap:t,at:s,onChanged:e},t.kind+(t.projectId??``)))})]},t)})]})}function Cm({gap:e}){let t=e.kind===`personal`?`Your agent data`:`${e.project}’s shared data`,n=e.waiting?` · ${e.waiting} ${e.waiting===1?`change`:`changes`} waiting`:``;return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`span`,{className:`font-medium`,children:t}),(0,Y.jsxs)(`span`,{className:`text-muted-foreground`,children:[` to `,e.url?(0,Y.jsx)(`a`,{href:e.url,target:`_blank`,rel:`noreferrer`,className:`underline underline-offset-2 hover:text-foreground`,children:e.address}):e.address,n]})]})}function wm({gap:e,at:t,onChanged:n}){let[r,i]=(0,J.useState)(),[a,o]=(0,J.useState)(!1),[s,c]=(0,J.useState)(),l=r!==void 0&&t.logins.includes(r)?r:ym(t),u=async()=>{if(l!==void 0){o(!0),c(void 0);try{let t=await um(e.kind===`project`?{kind:`project`,projectId:e.projectId}:{kind:`personal`},l);t.ok||c(t.error),pm(),n?.()}catch{c(`Could not back it up.`)}finally{o(!1)}}};return(0,Y.jsxs)(`li`,{className:`space-y-1.5 text-sm`,children:[(0,Y.jsx)(`p`,{children:(0,Y.jsx)(Cm,{gap:e})}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,Y.jsx)(bm,{host:t,value:l,onChange:i,disabled:a,label:`Back up as`}),(0,Y.jsxs)(B,{size:`xs`,disabled:a||l===void 0,onClick:()=>void u(),children:[a&&(0,Y.jsx)(xn,{className:`size-3 animate-spin`,"aria-hidden":!0}),a?`Backing up…`:`Back up`]})]}),s!==void 0&&(0,Y.jsx)(`p`,{role:`alert`,className:`text-xs text-danger`,children:s})]})}var Tm=`agent-data`,Em=1e4;function Dm(){let{value:e,reload:t}=Bt(hm,null,Em,[]),[n,r]=(0,J.useState)(!1),[i,a]=(0,J.useState)(``),[o,s]=(0,J.useState)(),{busy:c,error:l,reset:u,run:d}=ni(),{view:f,reload:p}=qs();if(!e)return null;let m=e,h=Yt(i)?.address.split(`/`)[0]?.toLowerCase(),g=h===void 0?void 0:f?.hosts.find(e=>e.host===h),_=h===void 0?void 0:g?xm(g,h):m.hosts.find(e=>e.host===h)??{host:h,logins:[]},v=o!==void 0&&_?.logins.includes(o)?o:ym(_),y=m.remoteUrl?m.remote?.split(`/`)[0]?.toLowerCase():void 0,b=y===void 0?void 0:m.hosts.find(e=>e.host===y),x=()=>void d(()=>gm(i,v),`Could not sync with that repository.`).then(async e=>{e.ok&&(r(!1),a(``),await t())}),S=e=>void d(()=>vm(e),`Could not change the account.`).then(async e=>{e.ok&&await t()}),C=()=>void d(()=>_m(),`Could not stop syncing.`).then(async e=>{e.ok&&await t()}),w=m.projects.length>0?` · ${m.projects.join(`, `)}`:``,T=m.unsent>0?` ${m.unsent} ${m.unsent===1?`change`:`changes`} waiting to back up.`:``,E=y!==void 0&&!m.account,D=m.remoteUrl?(0,Y.jsx)(`a`,{href:m.remoteUrl,target:`_blank`,rel:`noreferrer`,className:`underline underline-offset-2 hover:text-foreground`,children:m.remote}):m.remote,O=m.remote?E?(0,Y.jsxs)(Y.Fragment,{children:[`Synced with `,D,`, not backed up yet.`]}):(0,Y.jsxs)(Y.Fragment,{children:[`Backed up to `,D,m.account?` as @${m.account}`:``,`.`,T]}):`Only on this computer.`;return(0,Y.jsxs)(ki,{description:`Everything your agents keep: what each was asked and answered, the tickets, the queue and plans.`,children:[(0,Y.jsx)(Sm,{onChanged:()=>void t()}),(0,Y.jsxs)(`div`,{className:`py-3 first:pt-0 last:pb-0`,children:[(0,Y.jsx)(ct,{label:`Your folder`,description:(0,Y.jsxs)(Y.Fragment,{children:[m.path,w,`. `,O]}),control:m.remote?(0,Y.jsx)(B,{variant:`outline`,size:`sm`,disabled:c,onClick:C,children:`Stop syncing`}):!n&&(0,Y.jsx)(B,{variant:`outline`,size:`sm`,onClick:()=>r(!0),children:`Sync with a repository`})}),m.remote&&y!==void 0&&!E&&(0,Y.jsx)(`div`,{className:`mt-2`,children:(0,Y.jsx)(bm,{host:b??{host:y,logins:[]},value:m.account,onChange:S,disabled:c,label:`Back up as`})}),n&&!m.remote&&(0,Y.jsxs)(`form`,{className:`mt-3 space-y-2`,onSubmit:e=>{e.preventDefault(),x()},children:[(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Make an empty private repository, then paste its address. Each of your computers that syncs with the same one has the same records.`}),(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsx)($e,{"aria-label":`Repository address`,placeholder:`github.com/you/agent`,value:i,autoFocus:!0,disabled:c,onChange:e=>{a(e.target.value),u()},className:`h-8`}),(0,Y.jsx)(B,{type:`submit`,size:`sm`,disabled:c||i.trim()===``||_!==void 0&&v===void 0,children:c?`Syncing…`:`Sync`}),(0,Y.jsx)(B,{type:`button`,variant:`ghost`,size:`sm`,disabled:c,onClick:()=>{r(!1),a(``),u()},children:`Cancel`})]}),_&&(_.logins.length===0&&g?(0,Y.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`OpenAgent backs up to ${g.provider?.name??_.host} with an account of its own, never your own login. It has none there yet.`}),(0,Y.jsx)(lc,{row:g,onChanged:p,size:`xs`})]}):(0,Y.jsx)(bm,{host:_,value:v,onChange:s,disabled:c,label:`Back up as`}))]}),l&&(0,Y.jsx)(`p`,{className:`mt-2 text-xs text-danger`,children:l})]})]})}function Om(e){return e.trim().split(/\s+/)[0]??e}function km(e){let t=e.trim().split(/\s+/).filter(Boolean);return(t.length>1?`${t[0][0]}${t.at(-1)[0]}`:t[0]?.[0]??`?`).toUpperCase()}function Am({person:e,dot:t=!1,size:n=`h-6 w-6 text-[10px]`}){let[r,i]=(0,J.useState)(!1),a=e?.avatar&&!r?e.avatar:void 0;return(0,Y.jsxs)(`span`,{"aria-hidden":!0,className:`relative shrink-0`,children:[(0,Y.jsx)(`span`,{className:`flex ${n} items-center justify-center overflow-hidden rounded-full bg-muted font-medium text-muted-foreground`,children:a?(0,Y.jsx)(`img`,{src:a,alt:``,referrerPolicy:`no-referrer`,className:`h-full w-full object-cover`,onError:()=>i(!0)}):e?km(e.name):null}),t&&(0,Y.jsx)(`span`,{"data-testid":`missing-dot`,className:`absolute -top-0.5 -right-0.5 size-2 rounded-full bg-warning ring-2 ring-sidebar`})]})}function jm({onSettings:e}){let{person:t}=rm(),{missing:n}=uc(),{view:r}=mm(),i=(r?.gaps.length??0)>0,a=n.length>0||i;return(0,Y.jsxs)(be,{children:[(0,Y.jsxs)(z,{"aria-label":`${t?`${t.name}: settings`:`Settings`}${a?`, something is missing`:``}`,className:`flex w-full min-w-0 items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm outline-none hover:bg-sidebar-accent focus-visible:ring-2 focus-visible:ring-sidebar-ring data-[popup-open]:bg-sidebar-accent`,children:[(0,Y.jsx)(Am,{person:t,dot:a}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:t?Om(t.name):``}),(0,Y.jsx)(rs,{className:`h-4 w-4 shrink-0 text-muted-foreground`,"aria-hidden":!0})]}),(0,Y.jsxs)(dt,{align:`start`,className:`min-w-[14rem]`,children:[t&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(ji,{children:(0,Y.jsxs)(At,{className:`flex flex-col`,children:[(0,Y.jsx)(`span`,{className:`truncate text-foreground`,children:t.name}),t.github&&(0,Y.jsxs)(`span`,{className:`truncate font-normal`,children:[`@`,t.github]})]})}),(0,Y.jsx)(me,{})]}),a&&(0,Y.jsxs)(Y.Fragment,{children:[n.map(e=>(0,Y.jsxs)(b,{onClick:kd,className:`text-warning`,children:[(0,Y.jsx)(fo,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`flex-1 truncate`,children:e.words})]},e.key)),i&&(0,Y.jsxs)(b,{onClick:()=>e(`agent-data`),className:`text-warning`,children:[(0,Y.jsx)(fo,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`flex-1 truncate`,children:`Agent data not backed up`})]}),(0,Y.jsx)(me,{})]}),(0,Y.jsx)(am,{}),(0,Y.jsx)(cm,{}),(0,Y.jsx)(me,{}),(0,Y.jsxs)(b,{onClick:()=>e(),children:[(0,Y.jsx)(rs,{className:`h-3.5 w-3.5 shrink-0 opacity-70`,"aria-hidden":!0}),`Settings`]})]})]})}var Mm=`oa.sidebar-width`,Nm=new Set,Pm=e=>Math.round(Math.min(448,Math.max(224,e)));function Fm(){try{let e=Number(localStorage.getItem(Mm));return Number.isFinite(e)&&e>0?Pm(e):256}catch{return 256}}var Im=Fm();function Lm(e){Im=e===void 0?256:Pm(e);try{e===void 0?localStorage.removeItem(Mm):localStorage.setItem(Mm,String(Im))}catch{}for(let e of Nm)e()}function Rm(){return(0,J.useSyncExternalStore)(e=>(Nm.add(e),()=>Nm.delete(e)),()=>Im)}var zm=`oa.sidebar-hidden`;function Bm(){try{return localStorage.getItem(zm)===`true`}catch{return!1}}var Vm=Bm();function Hm(e){Vm=e;try{e?localStorage.setItem(zm,`true`):localStorage.removeItem(zm)}catch{}for(let e of Nm)e()}function Um(){return(0,J.useSyncExternalStore)(e=>(Nm.add(e),()=>Nm.delete(e)),()=>Vm)}var Wm=16;function Gm(){let e=Rm(),t=(0,J.useRef)(null);return(0,Y.jsx)(`div`,{role:`separator`,"aria-orientation":`vertical`,"aria-label":`The width of the sidebar`,"aria-valuenow":e,"aria-valuemin":224,"aria-valuemax":448,tabIndex:0,onPointerDown:n=>{n.preventDefault(),n.currentTarget.setPointerCapture(n.pointerId),t.current={x:n.clientX,width:e}},onPointerMove:e=>{t.current&&Lm(t.current.width+e.clientX-t.current.x)},onPointerUp:()=>t.current=null,onPointerCancel:()=>t.current=null,onDoubleClick:()=>Lm(void 0),onKeyDown:t=>{t.key===`ArrowLeft`||t.key===`ArrowRight`?(t.preventDefault(),Lm(e+(t.key===`ArrowRight`?Wm:-16))):t.key===`Enter`&&e!==256&&Lm(void 0)},className:`group/edge absolute inset-y-0 -right-1 z-20 flex w-2 cursor-col-resize touch-none justify-center outline-none`,children:(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`w-[3px] bg-transparent transition-colors group-hover/edge:bg-primary group-focus-visible/edge:bg-primary group-active/edge:bg-primary`})})}function Km(e,t){return`agent-log:${e}:${t}`}function qm(e,t){Te(Km(e,t),()=>Pl(e,t))}function Jm(e,t){return e===null||t.status===`running`?{}:{onNear:()=>qm(e,t.id)}}function Ym({pageScrolls:e=!1,projectId:t,scope:n=null,scopePending:r=!1,listLoaded:i=!0,onScope:a=()=>{},homeHref:o=`/`,agents:s,selectedAgentId:c,onSelect:l,recentAgents:u,onSelectRecent:d,projects:f=[],onNewAgentInProject:p,onProjectAdded:m,startTick:h=0,startIntent:g=``,startTitle:_,startId:v=null,startProjectName:y,working:b=!1,onDashboard:x=()=>{},onSettings:S=()=>{},pages:C=[],activePage:T=null,onPage:E=()=>{},interventionCount:O=0}){let{isMobile:k,open:A,setOpenMobile:j}=N(),M=e=>(...t)=>{j(!1),e(...t)},F=Ra(),ee=Wd(),[te,ne]=(0,J.useState)(null);(0,J.useEffect)(()=>{h>0&&ne({intent:g,id:v})},[h]);let I=n===null&&u!==void 0,L=I?u.map(e=>e.agent):s,R=L.some(e=>e.status===`running`),re=te!==null&&L.some(e=>e.id===te.id);(0,J.useEffect)(()=>{re&&ne(null)},[re]),(0,J.useEffect)(()=>{ne(null)},[n]),(0,J.useEffect)(()=>{if(te===null||R)return;let e=setTimeout(()=>ne(null),2e4);return()=>clearTimeout(e)},[te,R]);let ie=te!==null&&!R&&!re,ae=c!==null&&!L.some(e=>e.id===c),oe=F.recentsSort??`created`,se=zd(I?u.map(e=>({key:`${e.projectId}:${e.agent.id}`,agent:e.agent,...e.projectId===`session`?{}:{project:ee(e.projectId,e.projectName)},projectId:e.projectId,active:e.projectId===t&&e.agent.id===c,onClick:()=>d?.(e.projectId,e.agent.id),...Jm(e.projectId,e.agent)})):s.map(e=>({key:e.id,agent:e,projectId:t,active:e.id===c,onClick:()=>l(e.id),...Jm(t,e)})),oe),ce=t!==null&&c===null,le=nf(se),[ue,fe]=(0,J.useState)({}),pe=se.length>0||ie,me=e=>e.projectId??n,he=de(se.map(e=>({projectId:me(e),person:e.agent.person})),Nu,`sidebar:people`),ge=nr(),_e=(e,t,n=e.agent.status,r)=>(0,Y.jsx)(th,{status:n,fold:r,saving:e.agent.saving===!0&&n===e.agent.status,intent:t?Qd(e.agent):Id(e.agent),naming:!t&&Ld(e.agent,F.nameRuns!==!1),driver:e.agent.driver,...e.agent.person&&!t?{person:e.agent.person,account:he(me(e),e.agent.person)}:{},...e.agent.model?{model:P(ge?.[Jn(e.agent.driver)??`claude-code`],e.agent.model)}:{},...e.project&&!t?{project:e.project}:{},subtitle:wi(e.agent.startedAt),active:e.active,remote:e.agent.target===`remote`,cloud:e.agent.target===`web`,...e.agent.otherHost&&e.agent.host?{startedOn:e.agent.host}:{},cloudState:la(e.agent,Date.now()),...e.agent.remoteLabel?{remoteLabel:e.agent.remoteLabel}:{},...e.agent.remoteKind?{remoteKind:e.agent.remoteKind}:{},seenAt:e.agent.seenAt,...e.agent.pr?{pr:{number:e.agent.pr.number,...e.agent.prState?{state:e.agent.prState}:{}}}:{},...e.agent.unpublished?{unpublished:e.agent.unpublished}:{},...e.agent.uncommitted?{uncommitted:e.agent.uncommitted}:{},gitHost:f.find(t=>t.id===e.projectId)?.gitHost!==!1,onClick:M(e.onClick),onNear:e.onNear});if(!k&&!A)return null;let ve=e&&!k;return(0,Y.jsxs)(w.Provider,{value:ve||k?`fixed`:`absolute`,children:[ve&&(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`w-(--sidebar-width) shrink-0`}),(0,Y.jsxs)(rn,{collapsible:k?`offcanvas`:`none`,className:q(`relative w-(--sidebar-width) border-r border-sidebar-border`,ve&&`fixed top-(--top-banner,0px) left-0 z-20 h-[calc(100dvh-var(--top-banner,0px))]`),children:[(0,Y.jsxs)(D,{className:`gap-4 pb-2`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-1 pt-1`,children:[(0,Y.jsx)(qp,{working:b,href:o,onNavigate:M(x)}),(0,Y.jsx)(Un,{})]}),(0,Y.jsx)(Yp,{}),(0,Y.jsx)(Pp,{look:`sidebar`,none:{label:`All projects`},picked:n??null,pending:r,projects:f,onPick:a,onProjectAdded:m??(()=>{})})]}),(0,Y.jsxs)(D,{className:`gap-0.5 pt-0! pb-2`,children:[(0,Y.jsx)(Qm,{scope:n,active:ce,onNewAgentInProject:p&&M(p),onSelect:M(l)}),(0,Y.jsx)(Zm,{active:t===null&&T===null,count:O,onClick:M(x)}),C.map(e=>(0,Y.jsx)(Xm,{icon:e.icon??so,label:e.label,active:T===e.segment,onClick:M(()=>E(e.segment))},e.segment)),(0,Y.jsx)(Xm,{icon:co,label:`Agents`,active:T===Dd,onClick:M(()=>E(Dd))}),(0,Y.jsx)(Xm,{icon:Vo,label:`Permissions`,active:T===Ed,onClick:M(()=>E(Ed))})]}),(0,Y.jsx)(di,{className:`overflow-hidden`,children:(0,Y.jsx)(Zt,{className:`min-h-0 flex-1`,children:(0,Y.jsxs)(gn,{className:`pt-3 pr-3`,children:[(0,Y.jsxs)(`div`,{className:`sticky top-0 z-10`,children:[(0,Y.jsxs)(vt,{className:`rounded-none bg-sidebar font-normal tracking-wide text-muted-foreground`,children:[`Log`,(0,Y.jsx)($m,{order:oe})]}),(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`rail-fade pointer-events-none absolute inset-x-0 top-full h-4 bg-gradient-to-b from-sidebar to-transparent`})]}),(0,Y.jsxs)(Ci,{children:[(0,Y.jsxs)(_i,{className:`gap-0.5`,children:[ie&&(0,Y.jsx)(wt,{children:(0,Y.jsx)(th,{status:`running`,...F.nameRuns===!1?{intent:te?.intent??void 0}:_===void 0?{intent:void 0,naming:!0}:{intent:_},...I&&y?{project:y}:{},subtitle:`just now`,driver:F.driver,active:ae,standIn:!0,onClick:M(()=>l(null))})}),le.map(({row:e,subagents:t})=>{let n=ue[e.key]??t.some(e=>$d(e.agent)||e.active),r=t.filter(e=>e.agent.status===`running`).length,i=Date.now(),a=e.agent.status===`done`&&t.some(e=>tf(e.agent,i));return(0,Y.jsxs)(wt,{children:[_e(e,!1,a?`running`:e.agent.status,t.length>0?{count:t.length,working:r,open:n,onToggle:()=>fe(t=>({...t,[e.key]:!n}))}:void 0),t.length>0&&n&&(0,Y.jsx)(`div`,{className:`mt-0.5 ml-4 flex flex-col gap-0.5 border-l border-sidebar-border pl-2`,children:t.map(e=>(0,Y.jsx)(`div`,{children:_e(e,!0)},e.key))})]},e.key)})]}),!pe&&i&&(0,Y.jsx)(`p`,{className:`whitespace-nowrap px-2 py-1 text-sm text-muted-foreground`,children:`No sessions yet.`})]})]})})}),(0,Y.jsx)(Oi,{className:`border-t border-sidebar-border`,children:(0,Y.jsx)(jm,{onSettings:M(S)})}),!k&&(0,Y.jsx)(Gm,{})]})]})}function Xm({icon:e,label:t,active:n,onClick:r,children:i}){return(0,Y.jsxs)(`button`,{type:`button`,onClick:r,"aria-current":n?`page`:void 0,className:q(`flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-sm transition-colors`,n?`bg-sidebar-accent text-sidebar-accent-foreground`:`text-foreground hover:bg-sidebar-accent/60`),children:[(0,Y.jsx)(e,{className:`h-4 w-4 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`flex-1 text-left`,children:t}),i]})}function Zm({active:e,count:t,onClick:n}){return(0,Y.jsx)(Xm,{icon:Uo,label:`Overview`,active:e,onClick:n,children:t>0&&(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(`span`,{className:`min-w-5 rounded-full bg-primary px-1.5 text-center text-xs font-semibold text-primary-foreground tabular-nums`}),children:t}),(0,Y.jsxs)(W,{children:[t,` item`,t===1?``:`s`,` in your Human Queue`]})]})})}function Qm({scope:e,active:t=!1,onNewAgentInProject:n,onSelect:r}){let i=q(`h-auto w-full justify-start gap-2 px-2 py-1.5 font-normal`,t&&`bg-sidebar-accent text-sidebar-accent-foreground`),a=e??`session`;return(0,Y.jsxs)(B,{variant:`ghost`,className:i,onClick:()=>n?n(a):r(null),children:[(0,Y.jsx)(Qo,{className:`h-4 w-4 shrink-0`}),(0,Y.jsx)(`span`,{className:`whitespace-nowrap`,children:`New agent session`})]})}function $m({order:e}){return(0,Y.jsxs)(be,{children:[(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(z,{type:`button`,"aria-label":`Sort agents`,className:`ml-auto flex h-5 w-5 items-center justify-center rounded-sm text-muted-foreground transition-colors hover:bg-accent hover:text-accent-foreground`}),children:(0,Y.jsx)(to,{className:`h-3.5 w-3.5`,"aria-hidden":!0})}),(0,Y.jsxs)(W,{children:[`Sort by: `,Rd[e]]})]}),(0,Y.jsx)(dt,{align:`end`,className:`min-w-40`,children:(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(At,{className:`font-normal`,children:`Sort by`}),Object.keys(Rd).map(t=>(0,Y.jsxs)(b,{"aria-current":t===e,onClick:()=>Fa({recentsSort:t}),children:[(0,Y.jsx)(In,{className:q(`h-3.5 w-3.5 shrink-0`,t===e?`opacity-100`:`opacity-0`),"aria-hidden":!0}),Rd[t]]},t))]})})]})}var eh=`size-3.5 text-[7px]`;function th({status:e,intent:t,naming:n=!1,project:r,subtitle:i,active:a,onClick:o,onNear:s,driver:c,model:l,standIn:u=!1,saving:d=!1,remote:f=!1,cloud:p=!1,cloudState:m,remoteLabel:h,remoteKind:g=`server`,seenAt:_,startedOn:v,fold:y,pr:b,unpublished:x,uncommitted:S,gitHost:C=!0,person:w,account:T}){let E=e===`waiting`||m===`waiting`,D=Jn(c),O=oe[g],k=m===`in-cloud`,A=m===`merged`?`merged`:void 0,j=d&&!p,M=(0,J.useRef)(null),[N,P]=(0,J.useState)(!1);(0,J.useEffect)(()=>{let e=M.current;if(!e)return;let t=!1,n=()=>{t||P(e.scrollWidth>e.clientWidth+1)};n(),document.fonts?.ready.then(n);let r=typeof ResizeObserver>`u`?void 0:new ResizeObserver(n);return r?.observe(e),()=>{t=!0,r?.disconnect()}},[t,n]);let F=n?``:t||`New agent session`,ee=(0,J.useRef)(!1);n&&(ee.current=!0);let te=q(`rail-title min-w-0 flex-1 text-sm font-normal`,N&&`is-overflowing`),ne=E?`waiting`:k?`in cloud`:A||(j?`saving…`:e===`unknown`?`status unknown`:e),I=e===`unknown`?`${h??`Its computer`} offline${_?` · last seen ${wi(_)}`:``}`:void 0,L=e===`running`||k||j,R=j?Kd.saving:E?Kd.waiting:L?Kd.running:Kd[e],re=(A?qd[A]:qd[e])??qd.done,ie=b?.state?Jd[b.state]:void 0,ae=b?`PR #${b.number}${ie?` ${ie.word}`:``}`:void 0,se=S?{Icon:Co,said:`${Fp(`uncommitted`)} · ${S} file${S===1?``:`s`}`}:x?{Icon:jo,said:`${Fp(`unpushed`,C)} · ${x} commit${x===1?``:`s`}`}:void 0,ce=w?kt(w,T):void 0,le=[ne,...r?[r]:[],i,...ce?[ce]:[],...D?[Vr[D]]:[],...v?[`started on ${v}`]:[],...I?[I]:f?[h?`runs on ${h}`:`runs on another machine`]:[],...p?[`a Claude Code cloud session`]:[],...ae?[ae]:[],...se?[se.said]:[]].join(` · `),ue=D?[Vr[D],...l?[l]:[]].join(` · `):void 0;return(0,Y.jsxs)(B,{variant:`ghost`,"aria-label":`${n?`Naming this session`:F} · ${le}`,className:q(`rail-row h-8 w-full items-center gap-2 px-2 text-left`,a&&`bg-accent text-accent-foreground`),...u?{"data-stand-in":``}:{},onClick:o,onPointerEnter:s,onFocus:s,children:[(0,Y.jsx)(`span`,{role:`img`,"aria-label":ne,className:q(`inline-block h-2 w-2 shrink-0 rounded-full`,R??q(`border`,re),L&&`animate-pulse`)}),(0,Y.jsxs)(K,{disabled:!N,children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(`span`,{ref:M,className:te}),children:n?(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`block h-3.5 w-2/3 animate-pulse rounded bg-muted-foreground/20`}):(0,Y.jsx)(Fd,{text:F,start:u||ee.current})}),(0,Y.jsx)(W,{side:`right`,className:`max-w-96 whitespace-pre-wrap break-words text-sm`,children:F})]}),v&&(0,Y.jsx)(nh,{said:`Started on ${v}`,children:(0,Y.jsx)(jn,{className:`h-3 w-3 text-muted-foreground`})}),f&&(0,Y.jsx)(nh,{said:I??(h?`Runs on ${h}`:`Runs on another machine`),children:(0,Y.jsx)(O,{className:`h-3 w-3 text-muted-foreground`})}),p&&(0,Y.jsx)(nh,{said:`Runs as a Claude Code cloud session`,children:(0,Y.jsx)(_o,{className:`h-3 w-3 text-muted-foreground`})}),r&&(0,Y.jsx)(`span`,{className:`max-w-[35%] min-w-0 shrink truncate text-xs text-muted-foreground`,children:r}),y&&(0,Y.jsxs)(`span`,{role:`button`,tabIndex:0,"aria-expanded":y.open,"aria-label":`${y.count} agent${y.count===1?``:`s`}${y.working>0?` · ${y.working} running`:``}`,title:`${y.count} subagent${y.count===1?``:`s`}${y.working>0?`, ${y.working} running`:``}`,onClick:e=>{e.stopPropagation(),y.onToggle()},onKeyDown:e=>{e.key!==`Enter`&&e.key!==` `||(e.preventDefault(),e.stopPropagation(),y.onToggle())},className:`flex shrink-0 items-center gap-0.5 rounded-sm px-1 text-[11px] font-normal tabular-nums text-muted-foreground transition-colors hover:bg-background hover:text-foreground`,children:[(0,Y.jsx)(Vn,{className:q(`h-3 w-3 shrink-0 transition-transform`,y.open||`-rotate-90`),"aria-hidden":!0}),(0,Y.jsx)(co,{className:`h-3 w-3 shrink-0`,"aria-hidden":!0}),y.count]}),ie&&ae&&(0,Y.jsx)(nh,{said:ae,children:(0,Y.jsx)(ie.Icon,{className:q(`h-3 w-3`,ie.tone)})}),se&&(0,Y.jsx)(nh,{said:se.said,children:(0,Y.jsx)(se.Icon,{className:`h-3 w-3 text-muted-foreground`})}),ce?(0,Y.jsx)(nh,{said:ce,children:(0,Y.jsx)(Tt,{email:w,picture:T?.avatar,className:eh})}):u&&(0,Y.jsx)(Tt,{className:eh}),D&&ue&&(0,Y.jsx)(nh,{said:ue,children:(0,Y.jsx)(Zr,{driver:D,className:`h-3 w-3 text-muted-foreground`})})]})}function nh({said:e,children:t}){return(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(`span`,{role:`img`,"aria-label":e,className:`flex shrink-0 items-center`}),children:t}),(0,Y.jsx)(W,{children:e})]})}function rh(e=typeof window>`u`?``:window.location.hostname){return e===``||Pr(e)?`This machine`:e}function ih(e,t){let n=rh(t);return n===`This machine`?e:n}function ah(e){return{...e.driver?{driver:e.driver}:{},...e.model?{model:e.model}:{},...e.effort?{effort:e.effort}:{},...e.publish?{publish:e.publish}:{}}}function oh(e){let{busy:t,error:n,reset:r,run:i}=ni(),[a,o]=(0,J.useState)(null),s=(0,J.useRef)(!0),c=(0,J.useRef)(e);return c.current=e,(0,J.useEffect)(()=>(s.current=!0,()=>{s.current=!1}),[]),{busy:t,cloning:a!==null&&a.scope===e,error:n,reset:r,start:async(t,n,r={},a=`Failed to start the agent.`)=>{let l=e,u=()=>s.current&&c.current===l,d=await i(async()=>{let e=await lu(t,n,r);if(e.ok||!e.notThere)return e;let i=r.machine;o({scope:l});try{let e=i===void 0?await uh(()=>Re(t),()=>E(t),u):await uh(()=>Ue(t,i),()=>gi(t,i),u);if(e===sh||!u())return sh;if(!e.ok)return e}finally{o(null)}return lu(t,n,r)},a);return d.ok?d.value??void 0:void 0}}}var sh=null,ch=2e3,lh=16*6e4;async function uh(e,t,n){let r=Date.now()+lh,i=await e();for(;i.ok&&!i.there;){if(Date.now()>r)return{ok:!1,error:`The project is still being cloned. Send again in a few minutes.`};if(await new Promise(e=>setTimeout(e,ch)),!n())return sh;i=await t()}return i.ok?{ok:!0}:i}function dh(e){let t=Ra().startFrom?.[e??``],n=Bt(e?()=>t?Tu(e,t):Tu(e):null,null,15e3,[e,t?.kind,t?.kind===`published`?t.branch:void 0]),r=(0,J.useRef)({projectId:e,launcher:null});return n.loaded&&(r.current={projectId:e,launcher:n.value}),n.loaded||r.current.projectId!==e?n.value:r.current.launcher}function fh(e){return e.filter(e=>e.waiting===void 0)}function ph(){let[e,t]=(0,J.useState)(new Set);return{context:e,add:e=>t(t=>t.has(e)?t:new Set(t).add(e)),remove:e=>t(t=>{if(!t.has(e))return t;let n=new Set(t);return n.delete(e),n}),toggle:e=>t(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n}),reset:()=>t(new Set)}}function mh(e,t){let n=[...t];return n.length?`${e.trimEnd()}\n\nContext: ${n.join(`, `)}`:e}var hh={nothing:`Adds nothing to your message. The agent decides, and usually commits.`,commit:`It commits its work on its branch.`,branch:`It commits and pushes its branch.`,pr:`It commits, pushes its branch and opens a pull request.`,merge:`It commits, pushes its branch and opens a pull request set to merge once its checks pass.`};function gh({publish:e,picks:t,onPublish:n,target:r,busy:i}){let a=e===`pr`||e===`merge`?r:void 0;return(0,Y.jsxs)(be,{children:[(0,Y.jsxs)(K,{children:[(0,Y.jsxs)(V,{render:(0,Y.jsx)(z,{type:`button`,disabled:i,"aria-label":`Auto`,className:q(Bc,`max-w-[20rem]!`)}),children:[(0,Y.jsx)(`span`,{className:`truncate`,children:`Auto: ${rt[e]}${a?` → ${a.into}`:``}`}),(0,Y.jsx)(Vn,{className:`h-3 w-3 shrink-0 opacity-70`,"aria-hidden":!0})]}),(0,Y.jsx)(W,{children:`What the agent does by itself when it finishes.${a?` The pull request goes into ${a.into}.`:``}`})]}),(0,Y.jsxs)(dt,{className:`min-w-[19rem] max-w-[22rem]`,children:[(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(At,{className:`font-normal`,children:`When the agent finishes`}),t.map(t=>(0,Y.jsxs)(b,{className:`items-start`,"aria-current":t===e,onClick:()=>n(t),children:[(0,Y.jsx)(It,{label:rt[t],description:hh[t]}),t===e&&(0,Y.jsx)(In,{className:`ml-auto mt-0.5 h-3.5 w-3.5 shrink-0`,"aria-hidden":!0})]},t))]}),a?.picks&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(me,{}),(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(At,{className:`font-normal`,children:`The pull request goes into`}),a.picks.map(e=>(0,Y.jsxs)(b,{"aria-current":e===a.into,onClick:()=>a.onPick?.(e),children:[(0,Y.jsx)(`span`,{className:`flex-1 truncate`,children:e}),e===a.into&&(0,Y.jsx)(In,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0})]},e))]})]})]})]})}function _h({files:e,onRemove:t,busy:n}){return e.length===0?null:(0,Y.jsx)(`div`,{className:`flex flex-col gap-1`,children:e.map(e=>(0,Y.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(`button`,{type:`button`,disabled:n,onClick:()=>t(e),"aria-label":`Remove ${e} from context`,className:`flex h-3.5 w-3.5 items-center justify-center rounded text-muted-foreground hover:text-danger disabled:opacity-50`}),children:(0,Y.jsx)(ii,{className:`h-3.5 w-3.5`})}),(0,Y.jsxs)(W,{children:[`Remove `,e]})]}),(0,Y.jsx)(`span`,{className:`truncate`,title:e,children:e})]},e))})}function vh({projectId:e,context:t,busy:n,onToggle:r}){let i=Kt(gu,[],[]).filter(e=>e.machine===void 0),a=new Set(i.map(e=>e.path)),o=[...t].filter(e=>!a.has(e)),s=i.filter(t=>t.id!==e),c=s.filter(e=>t.has(e.path)).length;return(0,Y.jsx)(yh,{otherProjects:s,context:t,contextFiles:o,summary:[c>0?`${c} project${c>1?`s`:``}`:null,o.length>0?`${o.length} file${o.length>1?`s`:``}`:null].filter(Boolean).join(` · `),busy:n,onToggle:r})}function yh({otherProjects:e,context:t,contextFiles:n,summary:r,busy:i,onToggle:a}){return(0,Y.jsxs)(be,{children:[(0,Y.jsxs)(K,{children:[(0,Y.jsxs)(V,{render:(0,Y.jsx)(z,{type:`button`,disabled:i,className:Bc}),children:[(0,Y.jsx)(Ho,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),`Context`,r&&(0,Y.jsxs)(`span`,{className:`text-primary`,children:[` · `,r]})]}),(0,Y.jsx)(W,{children:`Narrow the run to specific repos and files`})]}),(0,Y.jsxs)(dt,{align:`start`,className:`min-w-[18rem] max-w-[24rem]`,children:[(0,Y.jsxs)(ji,{children:[(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(At,{}),children:`Projects`}),(0,Y.jsx)(W,{className:`max-w-[22rem]`,children:`The agent can still reach every repo; ticking some just narrows its focus.`})]}),e.length>0?e.map(e=>(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(Me,{checked:t.has(e.path),onCheckedChange:()=>a(e.path),disabled:i}),children:(0,Y.jsx)(`span`,{className:`truncate`,children:e.name})}),(0,Y.jsx)(W,{children:e.path})]},e.id)):(0,Y.jsx)(`p`,{className:`px-2 py-1 text-xs text-muted-foreground/60`,children:`No other repos to add.`})]}),(0,Y.jsx)(me,{}),(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(At,{children:`Files`}),n.length>0?(0,Y.jsx)(`div`,{className:`px-2 py-1`,children:(0,Y.jsx)(_h,{files:n,onRemove:a,busy:i})}):(0,Y.jsx)(`p`,{className:`px-2 py-1 text-xs text-muted-foreground/60`,children:`None yet — add with # or the Files pane.`})]})]})]})}function bh(e){this.content=e}bh.prototype={constructor:bh,find:function(e){for(var t=0;t<this.content.length;t+=2)if(this.content[t]===e)return t;return-1},get:function(e){var t=this.find(e);return t==-1?void 0:this.content[t+1]},update:function(e,t,n){var r=n&&n!=e?this.remove(n):this,i=r.find(e),a=r.content.slice();return i==-1?a.push(n||e,t):(a[i+1]=t,n&&(a[i]=n)),new bh(a)},remove:function(e){var t=this.find(e);if(t==-1)return this;var n=this.content.slice();return n.splice(t,2),new bh(n)},addToStart:function(e,t){return new bh([e,t].concat(this.remove(e).content))},addToEnd:function(e,t){var n=this.remove(e).content.slice();return n.push(e,t),new bh(n)},addBefore:function(e,t,n){var r=this.remove(t),i=r.content.slice(),a=r.find(e);return i.splice(a==-1?i.length:a,0,t,n),new bh(i)},forEach:function(e){for(var t=0;t<this.content.length;t+=2)e(this.content[t],this.content[t+1])},prepend:function(e){return e=bh.from(e),e.size?new bh(e.content.concat(this.subtract(e).content)):this},append:function(e){return e=bh.from(e),e.size?new bh(this.subtract(e).content.concat(e.content)):this},subtract:function(e){var t=this;e=bh.from(e);for(var n=0;n<e.content.length;n+=2)t=t.remove(e.content[n]);return t},toObject:function(){var e={};return this.forEach(function(t,n){e[t]=n}),e},get size(){return this.content.length>>1}},bh.from=function(e){if(e instanceof bh)return e;var t=[];if(e)for(var n in e)t.push(n,e[n]);return new bh(t)};function xh(e,t,n){for(let r=0;;r++){if(r==e.childCount||r==t.childCount)return e.childCount==t.childCount?null:n;let i=e.child(r),a=t.child(r);if(i==a){n+=i.nodeSize;continue}if(!i.sameMarkup(a))return n;if(i.isText&&i.text!=a.text){let e=i.text,t=a.text,r=0;for(;e[r]==t[r];r++)n++;return r&&r<e.length&&r<t.length&&wh(e.charCodeAt(r-1))&&Ch(e.charCodeAt(r))&&n--,n}if(i.content.size||a.content.size){let e=xh(i.content,a.content,n+1);if(e!=null)return e}n+=i.nodeSize}}function Sh(e,t,n,r){for(let i=e.childCount,a=t.childCount;;){if(i==0||a==0)return i==a?null:{a:n,b:r};let o=e.child(--i),s=t.child(--a),c=o.nodeSize;if(o==s){n-=c,r-=c;continue}if(!o.sameMarkup(s))return{a:n,b:r};if(o.isText&&o.text!=s.text){let e=o.text,t=s.text,i=e.length,a=t.length;for(;i>0&&a>0&&e[i-1]==t[a-1];)i--,a--,n--,r--;return i&&a&&i<e.length&&wh(e.charCodeAt(i-1))&&Ch(e.charCodeAt(i))&&(n++,r++),{a:n,b:r}}if(o.content.size||s.content.size){let e=Sh(o.content,s.content,n-1,r-1);if(e)return e}n-=c,r-=c}}function Ch(e){return e>=56320&&e<57344}function wh(e){return e>=55296&&e<56320}var X=class e{constructor(e,t){if(this.content=e,this.size=t||0,t==null)for(let t=0;t<e.length;t++)this.size+=e[t].nodeSize}nodesBetween(e,t,n,r=0,i){for(let a=0,o=0;o<t;a++){let s=this.content[a],c=o+s.nodeSize;if(c>e&&n(s,r+o,i||null,a)!==!1&&s.content.size){let i=o+1;s.nodesBetween(Math.max(0,e-i),Math.min(s.content.size,t-i),n,r+i)}o=c}}descendants(e){this.nodesBetween(0,this.size,e)}textBetween(e,t,n,r){let i=``,a=!0;return this.nodesBetween(e,t,(o,s)=>{let c=o.isText?o.text.slice(Math.max(e,s)-s,t-s):o.isLeaf?r?typeof r==`function`?r(o):r:o.type.spec.leafText?o.type.spec.leafText(o):``:``;o.isBlock&&(o.isLeaf&&c||o.isTextblock)&&n&&(a?a=!1:i+=n),i+=c},0),i}append(t){if(!t.size)return this;if(!this.size)return t;let n=this.lastChild,r=t.firstChild,i=this.content.slice(),a=0;for(n.isText&&n.sameMarkup(r)&&(i[i.length-1]=n.withText(n.text+r.text),a=1);a<t.content.length;a++)i.push(t.content[a]);return new e(i,this.size+t.size)}cut(t,n=this.size){if(t==0&&n==this.size)return this;let r=[],i=0;if(n>t)for(let e=0,a=0;a<n;e++){let o=this.content[e],s=a+o.nodeSize;s>t&&((a<t||s>n)&&(o=o.isText?o.cut(Math.max(0,t-a),Math.min(o.text.length,n-a)):o.cut(Math.max(0,t-a-1),Math.min(o.content.size,n-a-1))),r.push(o),i+=o.nodeSize),a=s}return new e(r,i)}cutByIndex(t,n){return t==n?e.empty:t==0&&n==this.content.length?this:new e(this.content.slice(t,n))}replaceChild(t,n){let r=this.content[t];if(r==n)return this;let i=this.content.slice(),a=this.size+n.nodeSize-r.nodeSize;return i[t]=n,new e(i,a)}addToStart(t){return new e([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new e(this.content.concat(t),this.size+t.nodeSize)}eq(e){if(this.content.length!=e.content.length)return!1;for(let t=0;t<this.content.length;t++)if(!this.content[t].eq(e.content[t]))return!1;return!0}get firstChild(){return this.content.length?this.content[0]:null}get lastChild(){return this.content.length?this.content[this.content.length-1]:null}get childCount(){return this.content.length}child(e){let t=this.content[e];if(!t)throw RangeError(`Index `+e+` out of range for `+this);return t}maybeChild(e){return this.content[e]||null}forEach(e){for(let t=0,n=0;t<this.content.length;t++){let r=this.content[t];e(r,n,t),n+=r.nodeSize}}findDiffStart(e,t=0){return xh(this,e,t)}findDiffEnd(e,t=this.size,n=e.size){return Sh(this,e,t,n)}findIndex(e){if(e==0)return Eh(0,e);if(e==this.size)return Eh(this.content.length,e);if(e>this.size||e<0)throw RangeError(`Position ${e} outside of fragment (${this})`);for(let t=0,n=0;;t++){let r=this.child(t),i=n+r.nodeSize;if(i>=e)return i==e?Eh(t+1,i):Eh(t,n);n=i}}toString(){return`<`+this.toStringInner()+`>`}toStringInner(){return this.content.join(`, `)}toJSON(){return this.content.length?this.content.map(e=>e.toJSON()):null}static fromJSON(t,n){if(!n)return e.empty;if(!Array.isArray(n))throw RangeError(`Invalid input for Fragment.fromJSON`);return e.fromArray(n.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return e.empty;let n,r=0;for(let e=0;e<t.length;e++){let i=t[e];r+=i.nodeSize,e&&i.isText&&t[e-1].sameMarkup(i)?(n||=t.slice(0,e),n[n.length-1]=i.withText(n[n.length-1].text+i.text)):n&&n.push(i)}return new e(n||t,r)}static from(t){if(!t)return e.empty;if(t instanceof e)return t;if(Array.isArray(t))return this.fromArray(t);if(t.attrs)return new e([t],t.nodeSize);throw RangeError(`Can not convert `+t+` to a Fragment`+(t.nodesBetween?` (looks like multiple versions of prosemirror-model were loaded)`:``))}};X.empty=new X([],0);var Th={index:0,offset:0};function Eh(e,t){return Th.index=e,Th.offset=t,Th}function Dh(e,t){if(e===t)return!0;if(!(e&&typeof e==`object`)||!(t&&typeof t==`object`))return!1;let n=Array.isArray(e);if(Array.isArray(t)!=n)return!1;if(n){if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++)if(!Dh(e[n],t[n]))return!1}else{for(let n in e)if(!(n in t)||!Dh(e[n],t[n]))return!1;for(let n in t)if(!(n in e))return!1}return!0}var Oh=class e{constructor(e,t){this.type=e,this.attrs=t}addToSet(e){let t,n=!1;for(let r=0;r<e.length;r++){let i=e[r];if(this.eq(i))return e;if(this.type.excludes(i.type))t||=e.slice(0,r);else if(i.type.excludes(this.type))return e;else!n&&i.type.rank>this.type.rank&&(t||=e.slice(0,r),t.push(this),n=!0),t&&t.push(i)}return t||=e.slice(),n||t.push(this),t}removeFromSet(e){for(let t=0;t<e.length;t++)if(this.eq(e[t]))return e.slice(0,t).concat(e.slice(t+1));return e}isInSet(e){for(let t=0;t<e.length;t++)if(this.eq(e[t]))return!0;return!1}eq(e){return this==e||this.type==e.type&&Dh(this.attrs,e.attrs)}toJSON(){let e={type:this.type.name};for(let t in this.attrs){e.attrs=this.attrs;break}return e}static fromJSON(e,t){if(!t)throw RangeError(`Invalid input for Mark.fromJSON`);let n=e.marks[t.type];if(!n)throw RangeError(`There is no mark type ${t.type} in this schema`);let r=n.create(t.attrs);return n.checkAttrs(r.attrs),r}static sameSet(e,t){if(e==t)return!0;if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++)if(!e[n].eq(t[n]))return!1;return!0}static setFrom(t){if(!t||Array.isArray(t)&&t.length==0)return e.none;if(t instanceof e)return[t];let n=t.slice();return n.sort((e,t)=>e.type.rank-t.type.rank),n}};Oh.none=[];var kh=class extends Error{},Z=class e{constructor(e,t,n){this.content=e,this.openStart=t,this.openEnd=n}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(t,n){let r=jh(this.content,t+this.openStart,n,this.openStart+1,this.openEnd+1);return r&&new e(r,this.openStart,this.openEnd)}removeBetween(t,n){return new e(Ah(this.content,t+this.openStart,n+this.openStart),this.openStart,this.openEnd)}eq(e){return this.content.eq(e.content)&&this.openStart==e.openStart&&this.openEnd==e.openEnd}toString(){return this.content+`(`+this.openStart+`,`+this.openEnd+`)`}toJSON(){if(!this.content.size)return null;let e={content:this.content.toJSON()};return this.openStart>0&&(e.openStart=this.openStart),this.openEnd>0&&(e.openEnd=this.openEnd),e}static fromJSON(t,n){if(!n)return e.empty;let r=n.openStart||0,i=n.openEnd||0;if(typeof r!=`number`||typeof i!=`number`)throw RangeError(`Invalid input for Slice.fromJSON`);return new e(X.fromJSON(t,n.content),r,i)}static maxOpen(t,n=!0){let r=0,i=0;for(let e=t.firstChild;e&&!e.isLeaf&&(n||!e.type.spec.isolating);e=e.firstChild)r++;for(let e=t.lastChild;e&&!e.isLeaf&&(n||!e.type.spec.isolating);e=e.lastChild)i++;return new e(t,r,i)}};Z.empty=new Z(X.empty,0,0);function Ah(e,t,n){let{index:r,offset:i}=e.findIndex(t),a=e.maybeChild(r),{index:o,offset:s}=e.findIndex(n);if(i==t||a.isText){if(s!=n&&!e.child(o).isText)throw RangeError(`Removing non-flat range`);return e.cut(0,t).append(e.cut(n))}if(r!=o)throw RangeError(`Removing non-flat range`);return e.replaceChild(r,a.copy(Ah(a.content,t-i-1,n-i-1)))}function jh(e,t,n,r,i,a){let{index:o,offset:s}=e.findIndex(t),c=e.maybeChild(o);if(s==t||c.isText)return a&&r<=0&&i<=0&&!a.canReplace(o,o,n)?null:e.cut(0,t).append(n).append(e.cut(t));let l=jh(c.content,t-s-1,n,o==0?r-1:0,o==e.childCount-1?i-1:0,c);return l&&e.replaceChild(o,c.copy(l))}function Mh(e,t,n){if(n.openStart>e.depth)throw new kh(`Inserted content deeper than insertion position`);if(e.depth-n.openStart!=t.depth-n.openEnd)throw new kh(`Inconsistent open depths`);return Nh(e,t,n,0)}function Nh(e,t,n,r){let i=e.index(r),a=e.node(r);if(i==t.index(r)&&r<e.depth-n.openStart){let o=Nh(e,t,n,r+1);return a.copy(a.content.replaceChild(i,o))}else if(!n.content.size)return Rh(a,Bh(e,t,r));else if(!n.openStart&&!n.openEnd&&e.depth==r&&t.depth==r){let r=e.parent,i=r.content;return Rh(r,i.cut(0,e.parentOffset).append(n.content).append(i.cut(t.parentOffset)))}else{let{start:i,end:o}=Vh(n,e);return Rh(a,zh(e,i,o,t,r))}}function Ph(e,t){if(!t.type.compatibleContent(e.type))throw new kh(`Cannot join `+t.type.name+` onto `+e.type.name)}function Fh(e,t,n){let r=e.node(n);return Ph(r,t.node(n)),r}function Ih(e,t){let n=t.length-1;n>=0&&e.isText&&e.sameMarkup(t[n])?t[n]=e.withText(t[n].text+e.text):t.push(e)}function Lh(e,t,n,r){let i=(t||e).node(n),a=0,o=t?t.index(n):i.childCount;e&&(a=e.index(n),e.depth>n?a++:e.textOffset&&(Ih(e.nodeAfter,r),a++));for(let e=a;e<o;e++)Ih(i.child(e),r);t&&t.depth==n&&t.textOffset&&Ih(t.nodeBefore,r)}function Rh(e,t){if(!e.type.validContent(t))throw new kh(`Invalid content for node `+e.type.name);return e.copy(t)}function zh(e,t,n,r,i){let a=e.depth>i&&Fh(e,t,i+1),o=r.depth>i&&Fh(n,r,i+1),s=[];return Lh(null,e,i,s),a&&o&&t.index(i)==n.index(i)?(Ph(a,o),Ih(Rh(a,zh(e,t,n,r,i+1)),s)):(a&&Ih(Rh(a,Bh(e,t,i+1)),s),Lh(t,n,i,s),o&&Ih(Rh(o,Bh(n,r,i+1)),s)),Lh(r,null,i,s),new X(s)}function Bh(e,t,n){let r=[];return Lh(null,e,n,r),e.depth>n&&Ih(Rh(Fh(e,t,n+1),Bh(e,t,n+1)),r),Lh(t,null,n,r),new X(r)}function Vh(e,t){let n=t.depth-e.openStart,r=t.node(n).copy(e.content);for(let e=n-1;e>=0;e--)r=t.node(e).copy(X.from(r));return{start:r.resolveNoCache(e.openStart+n),end:r.resolveNoCache(r.content.size-e.openEnd-n)}}var Hh=class e{constructor(e,t,n){this.pos=e,this.path=t,this.parentOffset=n,this.depth=t.length/3-1}resolveDepth(e){return e==null?this.depth:e<0?this.depth+e:e}get parent(){return this.node(this.depth)}get doc(){return this.node(0)}node(e){return this.path[this.resolveDepth(e)*3]}index(e){return this.path[this.resolveDepth(e)*3+1]}indexAfter(e){return e=this.resolveDepth(e),this.index(e)+(e==this.depth&&!this.textOffset?0:1)}start(e){return e=this.resolveDepth(e),e==0?0:this.path[e*3-1]+1}end(e){return e=this.resolveDepth(e),this.start(e)+this.node(e).content.size}before(e){if(e=this.resolveDepth(e),!e)throw RangeError(`There is no position before the top-level node`);return e==this.depth+1?this.pos:this.path[e*3-1]}after(e){if(e=this.resolveDepth(e),!e)throw RangeError(`There is no position after the top-level node`);return e==this.depth+1?this.pos:this.path[e*3-1]+this.path[e*3].nodeSize}get textOffset(){return this.pos-this.path[this.path.length-1]}get nodeAfter(){let e=this.parent,t=this.index(this.depth);if(t==e.childCount)return null;let n=this.pos-this.path[this.path.length-1],r=e.child(t);return n?e.child(t).cut(n):r}get nodeBefore(){let e=this.index(this.depth),t=this.pos-this.path[this.path.length-1];return t?this.parent.child(e).cut(0,t):e==0?null:this.parent.child(e-1)}posAtIndex(e,t){t=this.resolveDepth(t);let n=this.path[t*3],r=t==0?0:this.path[t*3-1]+1;for(let t=0;t<e;t++)r+=n.child(t).nodeSize;return r}marks(){let e=this.parent,t=this.index();if(e.content.size==0)return Oh.none;if(this.textOffset)return e.child(t).marks;let n=e.maybeChild(t-1),r=e.maybeChild(t);if(!n){let e=n;n=r,r=e}let i=n.marks;for(var a=0;a<i.length;a++)i[a].type.spec.inclusive===!1&&(!r||!i[a].isInSet(r.marks))&&(i=i[a--].removeFromSet(i));return i}marksAcross(e){let t=this.parent.maybeChild(this.index());if(!t||!t.isInline)return null;let n=t.marks,r=e.parent.maybeChild(e.index());for(var i=0;i<n.length;i++)n[i].type.spec.inclusive===!1&&(!r||!n[i].isInSet(r.marks))&&(n=n[i--].removeFromSet(n));return n}sharedDepth(e){for(let t=this.depth;t>0;t--)if(this.start(t)<=e&&this.end(t)>=e)return t;return 0}blockRange(e=this,t){if(e.pos<this.pos)return e.blockRange(this);for(let n=this.depth-(this.parent.inlineContent||this.pos==e.pos?1:0);n>=0;n--)if(e.pos<=this.end(n)&&(!t||t(this.node(n))))return new Kh(this,e,n);return null}sameParent(e){return this.pos-this.parentOffset==e.pos-e.parentOffset}max(e){return e.pos>this.pos?e:this}min(e){return e.pos<this.pos?e:this}toString(){let e=``;for(let t=1;t<=this.depth;t++)e+=(e?`/`:``)+this.node(t).type.name+`_`+this.index(t-1);return e+`:`+this.parentOffset}static resolve(t,n){if(!(n>=0&&n<=t.content.size))throw RangeError(`Position `+n+` out of range`);let r=[],i=0,a=n;for(let e=t;;){let{index:t,offset:n}=e.content.findIndex(a),o=a-n;if(r.push(e,t,i+n),!o||(e=e.child(t),e.isText))break;a=o-1,i+=n+1}return new e(n,r,a)}static resolveCached(t,n){let r=Gh.get(t);if(r)for(let e=0;e<r.elts.length;e++){let t=r.elts[e];if(t.pos==n)return t}else Gh.set(t,r=new Uh);let i=r.elts[r.i]=e.resolve(t,n);return r.i=(r.i+1)%Wh,i}},Uh=class{constructor(){this.elts=[],this.i=0}},Wh=12,Gh=new WeakMap,Kh=class{constructor(e,t,n){this.$from=e,this.$to=t,this.depth=n}get start(){return this.$from.before(this.depth+1)}get end(){return this.$to.after(this.depth+1)}get parent(){return this.$from.node(this.depth)}get startIndex(){return this.$from.index(this.depth)}get endIndex(){return this.$to.indexAfter(this.depth)}},qh=Object.create(null),Jh=class e{constructor(e,t,n,r=Oh.none){this.type=e,this.attrs=t,this.marks=r,this.content=n||X.empty}get children(){return this.content.content}get nodeSize(){return this.isLeaf?1:2+this.content.size}get childCount(){return this.content.childCount}child(e){return this.content.child(e)}maybeChild(e){return this.content.maybeChild(e)}forEach(e){this.content.forEach(e)}nodesBetween(e,t,n,r=0){this.content.nodesBetween(e,t,n,r,this)}descendants(e){this.nodesBetween(0,this.content.size,e)}get textContent(){return this.isLeaf&&this.type.spec.leafText?this.type.spec.leafText(this):this.textBetween(0,this.content.size,``)}textBetween(e,t,n,r){return this.content.textBetween(e,t,n,r)}get firstChild(){return this.content.firstChild}get lastChild(){return this.content.lastChild}eq(e){return this==e||this.sameMarkup(e)&&this.content.eq(e.content)}sameMarkup(e){return this.hasMarkup(e.type,e.attrs,e.marks)}hasMarkup(e,t,n){return this.type==e&&Dh(this.attrs,t||e.defaultAttrs||qh)&&Oh.sameSet(this.marks,n||Oh.none)}copy(t=null){return t==this.content?this:new e(this.type,this.attrs,t,this.marks)}mark(t){return t==this.marks?this:new e(this.type,this.attrs,this.content,t)}cut(e,t=this.content.size){return e==0&&t==this.content.size?this:this.copy(this.content.cut(e,t))}slice(e,t=this.content.size,n=!1){if(e==t)return Z.empty;let r=this.resolve(e),i=this.resolve(t),a=n?0:r.sharedDepth(t),o=r.start(a);return new Z(r.node(a).content.cut(r.pos-o,i.pos-o),r.depth-a,i.depth-a)}replace(e,t,n){return Mh(this.resolve(e),this.resolve(t),n)}nodeAt(e){for(let t=this;;){let{index:n,offset:r}=t.content.findIndex(e);if(t=t.maybeChild(n),!t)return null;if(r==e||t.isText)return t;e-=r+1}}childAfter(e){let{index:t,offset:n}=this.content.findIndex(e);return{node:this.content.maybeChild(t),index:t,offset:n}}childBefore(e){if(e==0)return{node:null,index:0,offset:0};let{index:t,offset:n}=this.content.findIndex(e);if(n<e)return{node:this.content.child(t),index:t,offset:n};let r=this.content.child(t-1);return{node:r,index:t-1,offset:n-r.nodeSize}}resolve(e){return Hh.resolveCached(this,e)}resolveNoCache(e){return Hh.resolve(this,e)}rangeHasMark(e,t,n){let r=!1;return t>e&&this.nodesBetween(e,t,e=>(n.isInSet(e.marks)&&(r=!0),!r)),r}get isBlock(){return this.type.isBlock}get isTextblock(){return this.type.isTextblock}get inlineContent(){return this.type.inlineContent}get isInline(){return this.type.isInline}get isText(){return this.type.isText}get isLeaf(){return this.type.isLeaf}get isAtom(){return this.type.isAtom}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);let e=this.type.name;return this.content.size&&(e+=`(`+this.content.toStringInner()+`)`),Xh(this.marks,e)}contentMatchAt(e){let t=this.type.contentMatch.matchFragment(this.content,0,e);if(!t)throw Error(`Called contentMatchAt on a node with invalid content`);return t}canReplace(e,t,n=X.empty,r=0,i=n.childCount){let a=this.contentMatchAt(e).matchFragment(n,r,i),o=a&&a.matchFragment(this.content,t);if(!o||!o.validEnd)return!1;for(let e=r;e<i;e++)if(!this.type.allowsMarks(n.child(e).marks))return!1;return!0}canReplaceWith(e,t,n,r){if(r&&!this.type.allowsMarks(r))return!1;let i=this.contentMatchAt(e).matchType(n),a=i&&i.matchFragment(this.content,t);return a?a.validEnd:!1}canAppend(e){return e.content.size?this.canReplace(this.childCount,this.childCount,e.content):this.type.compatibleContent(e.type)}check(){this.type.checkContent(this.content),this.type.checkAttrs(this.attrs);let e=Oh.none;for(let t=0;t<this.marks.length;t++){let n=this.marks[t];n.type.checkAttrs(n.attrs),e=n.addToSet(e)}if(!Oh.sameSet(e,this.marks))throw RangeError(`Invalid collection of marks for node ${this.type.name}: ${this.marks.map(e=>e.type.name)}`);this.content.forEach(e=>e.check())}toJSON(){let e={type:this.type.name};for(let t in this.attrs){e.attrs=this.attrs;break}return this.content.size&&(e.content=this.content.toJSON()),this.marks.length&&(e.marks=this.marks.map(e=>e.toJSON())),e}static fromJSON(e,t){if(!t)throw RangeError(`Invalid input for Node.fromJSON`);let n;if(t.marks){if(!Array.isArray(t.marks))throw RangeError(`Invalid mark data for Node.fromJSON`);n=t.marks.map(e.markFromJSON)}if(t.type==`text`){if(typeof t.text!=`string`)throw RangeError(`Invalid text node in JSON`);return e.text(t.text,n)}let r=X.fromJSON(e,t.content),i=e.nodeType(t.type).create(t.attrs,r,n);return i.type.checkAttrs(i.attrs),i}};Jh.prototype.text=void 0;var Yh=class e extends Jh{constructor(e,t,n,r){if(super(e,t,null,r),!n)throw RangeError(`Empty text nodes are not allowed`);this.text=n}toString(){return this.type.spec.toDebugString?this.type.spec.toDebugString(this):Xh(this.marks,JSON.stringify(this.text))}get textContent(){return this.text}textBetween(e,t){return this.text.slice(e,t)}get nodeSize(){return this.text.length}mark(t){return t==this.marks?this:new e(this.type,this.attrs,this.text,t)}withText(t){return t==this.text?this:new e(this.type,this.attrs,t,this.marks)}cut(e=0,t=this.text.length){return e==0&&t==this.text.length?this:this.withText(this.text.slice(e,t))}eq(e){return this.sameMarkup(e)&&this.text==e.text}toJSON(){let e=super.toJSON();return e.text=this.text,e}};function Xh(e,t){for(let n=e.length-1;n>=0;n--)t=e[n].type.name+`(`+t+`)`;return t}var Zh=class e{constructor(e){this.validEnd=e,this.next=[],this.wrapCache=[]}static parse(t,n){let r=new Qh(t,n);if(r.next==null)return e.empty;let i=$h(r);r.next&&r.err(`Unexpected trailing text`);let a=lg(og(i));return ug(a,r),a}matchType(e){for(let t=0;t<this.next.length;t++)if(this.next[t].type==e)return this.next[t].next;return null}matchFragment(e,t=0,n=e.childCount){let r=this;for(let i=t;r&&i<n;i++)r=r.matchType(e.child(i).type);return r}get inlineContent(){return this.next.length!=0&&this.next[0].type.isInline}get defaultType(){for(let e=0;e<this.next.length;e++){let{type:t}=this.next[e];if(!(t.isText||t.hasRequiredAttrs()))return t}return null}compatible(e){for(let t=0;t<this.next.length;t++)for(let n=0;n<e.next.length;n++)if(this.next[t].type==e.next[n].type)return!0;return!1}fillBefore(e,t=!1,n=0){let r=[this];function i(a,o){let s=a.matchFragment(e,n);if(s&&(!t||s.validEnd))return X.from(o.map(e=>e.createAndFill()));for(let e=0;e<a.next.length;e++){let{type:t,next:n}=a.next[e];if(!(t.isText||t.hasRequiredAttrs())&&r.indexOf(n)==-1){r.push(n);let e=i(n,o.concat(t));if(e)return e}}return null}return i(this,[])}findWrapping(e){for(let t=0;t<this.wrapCache.length;t+=2)if(this.wrapCache[t]==e)return this.wrapCache[t+1];let t=this.computeWrapping(e);return this.wrapCache.push(e,t),t}computeWrapping(e){let t=Object.create(null),n=[{match:this,type:null,via:null}];for(;n.length;){let r=n.shift(),i=r.match;if(i.matchType(e)){let e=[];for(let t=r;t.type;t=t.via)e.push(t.type);return e.reverse()}for(let e=0;e<i.next.length;e++){let{type:a,next:o}=i.next[e];!a.isLeaf&&!a.hasRequiredAttrs()&&!(a.name in t)&&(!r.type||o.validEnd)&&(n.push({match:a.contentMatch,type:a,via:r}),t[a.name]=!0)}}return null}get edgeCount(){return this.next.length}edge(e){if(e>=this.next.length)throw RangeError(`There's no ${e}th edge in this content match`);return this.next[e]}toString(){let e=[];function t(n){e.push(n);for(let r=0;r<n.next.length;r++)e.indexOf(n.next[r].next)==-1&&t(n.next[r].next)}return t(this),e.map((t,n)=>{let r=n+(t.validEnd?`*`:` `)+` `;for(let n=0;n<t.next.length;n++)r+=(n?`, `:``)+t.next[n].type.name+`->`+e.indexOf(t.next[n].next);return r}).join(`
9
+ `)}};Zh.empty=new Zh(!0);var Qh=class{constructor(e,t){this.string=e,this.nodeTypes=t,this.inline=null,this.pos=0,this.tokens=e.split(/\s*(?=\b|\W|$)/),this.tokens[this.tokens.length-1]==``&&this.tokens.pop(),this.tokens[0]==``&&this.tokens.shift()}get next(){return this.tokens[this.pos]}eat(e){return this.next==e&&(this.pos++||!0)}err(e){throw SyntaxError(e+` (in content expression '`+this.string+`')`)}};function $h(e){let t=[];do t.push(eg(e));while(e.eat(`|`));return t.length==1?t[0]:{type:`choice`,exprs:t}}function eg(e){let t=[];do t.push(tg(e));while(e.next&&e.next!=`)`&&e.next!=`|`);return t.length==1?t[0]:{type:`seq`,exprs:t}}function tg(e){let t=ag(e);for(;;)if(e.eat(`+`))t={type:`plus`,expr:t};else if(e.eat(`*`))t={type:`star`,expr:t};else if(e.eat(`?`))t={type:`opt`,expr:t};else if(e.eat(`{`))t=rg(e,t);else break;return t}function ng(e){/\D/.test(e.next)&&e.err(`Expected number, got '`+e.next+`'`);let t=Number(e.next);return e.pos++,t}function rg(e,t){let n=ng(e),r=n;return e.eat(`,`)&&(r=e.next==`}`?-1:ng(e)),e.eat(`}`)||e.err(`Unclosed braced range`),{type:`range`,min:n,max:r,expr:t}}function ig(e,t){let n=e.nodeTypes,r=n[t];if(r)return[r];let i=[];for(let e in n){let r=n[e];r.isInGroup(t)&&i.push(r)}return i.length==0&&e.err(`No node type or group '`+t+`' found`),i}function ag(e){if(e.eat(`(`)){let t=$h(e);return e.eat(`)`)||e.err(`Missing closing paren`),t}else if(/\W/.test(e.next))e.err(`Unexpected token '`+e.next+`'`);else{let t=ig(e,e.next).map(t=>(e.inline==null?e.inline=t.isInline:e.inline!=t.isInline&&e.err(`Mixing inline and block content`),{type:`name`,value:t}));return e.pos++,t.length==1?t[0]:{type:`choice`,exprs:t}}}function og(e){let t=[[]];return i(a(e,0),n()),t;function n(){return t.push([])-1}function r(e,n,r){let i={term:r,to:n};return t[e].push(i),i}function i(e,t){e.forEach(e=>e.to=t)}function a(e,t){if(e.type==`choice`)return e.exprs.reduce((e,n)=>e.concat(a(n,t)),[]);if(e.type==`seq`)for(let r=0;;r++){let o=a(e.exprs[r],t);if(r==e.exprs.length-1)return o;i(o,t=n())}else if(e.type==`star`){let o=n();return r(t,o),i(a(e.expr,o),o),[r(o)]}else if(e.type==`plus`){let o=n();return i(a(e.expr,t),o),i(a(e.expr,o),o),[r(o)]}else if(e.type==`opt`)return[r(t)].concat(a(e.expr,t));else if(e.type==`range`){let o=t;for(let t=0;t<e.min;t++){let t=n();i(a(e.expr,o),t),o=t}if(e.max==-1)i(a(e.expr,o),o);else for(let t=e.min;t<e.max;t++){let t=n();r(o,t),i(a(e.expr,o),t),o=t}return[r(o)]}else if(e.type==`name`)return[r(t,void 0,e.value)];else throw Error(`Unknown expr type`)}}function sg(e,t){return t-e}function cg(e,t){let n=[];return r(t),n.sort(sg);function r(t){let i=e[t];if(i.length==1&&!i[0].term)return r(i[0].to);n.push(t);for(let e=0;e<i.length;e++){let{term:t,to:a}=i[e];!t&&n.indexOf(a)==-1&&r(a)}}}function lg(e){let t=Object.create(null);return n(cg(e,0));function n(r){let i=[];r.forEach(t=>{e[t].forEach(({term:t,to:n})=>{if(!t)return;let r;for(let e=0;e<i.length;e++)i[e][0]==t&&(r=i[e][1]);cg(e,n).forEach(e=>{r||i.push([t,r=[]]),r.indexOf(e)==-1&&r.push(e)})})});let a=t[r.join(`,`)]=new Zh(r.indexOf(e.length-1)>-1);for(let e=0;e<i.length;e++){let r=i[e][1].sort(sg);a.next.push({type:i[e][0],next:t[r.join(`,`)]||n(r)})}return a}}function ug(e,t){for(let n=0,r=[e];n<r.length;n++){let e=r[n],i=!e.validEnd,a=[];for(let t=0;t<e.next.length;t++){let{type:n,next:o}=e.next[t];a.push(n.name),i&&!(n.isText||n.hasRequiredAttrs())&&(i=!1),r.indexOf(o)==-1&&r.push(o)}i&&t.err(`Only non-generatable nodes (`+a.join(`, `)+`) in a required position (see https://prosemirror.net/docs/guide/#generatable)`)}}function dg(e){let t=Object.create(null);for(let n in e){let r=e[n];if(!r.hasDefault)return null;t[n]=r.default}return t}function fg(e,t){let n=Object.create(null);for(let r in e){let i=t&&t[r];if(i===void 0){let t=e[r];if(t.hasDefault)i=t.default;else throw RangeError(`No value supplied for attribute `+r)}n[r]=i}return n}function pg(e,t,n,r){for(let i in t)if(!(i in e))throw RangeError(`Unsupported attribute ${i} for ${n} of type ${r}`);for(let n in e)e[n].validate&&e[n].validate(t[n])}function mg(e,t){let n=Object.create(null);if(t)for(let r in t)n[r]=new _g(e,r,t[r]);return n}var hg=class e{constructor(e,t,n){this.name=e,this.schema=t,this.spec=n,this.markSet=null,this.groups=n.group?n.group.split(` `):[],this.attrs=mg(e,n.attrs),this.defaultAttrs=dg(this.attrs),this.contentMatch=null,this.inlineContent=null,this.isBlock=!(n.inline||e==`text`),this.isText=e==`text`}get isInline(){return!this.isBlock}get isTextblock(){return this.isBlock&&this.inlineContent}get isLeaf(){return this.contentMatch==Zh.empty}get isAtom(){return this.isLeaf||!!this.spec.atom}isInGroup(e){return this.groups.indexOf(e)>-1}get whitespace(){return this.spec.whitespace||(this.spec.code?`pre`:`normal`)}hasRequiredAttrs(){for(let e in this.attrs)if(this.attrs[e].isRequired)return!0;return!1}compatibleContent(e){return this==e||this.contentMatch.compatible(e.contentMatch)}computeAttrs(e){return!e&&this.defaultAttrs?this.defaultAttrs:fg(this.attrs,e)}create(e=null,t,n){if(this.isText)throw Error(`NodeType.create can't construct text nodes`);return new Jh(this,this.computeAttrs(e),X.from(t),Oh.setFrom(n))}createChecked(e=null,t,n){return t=X.from(t),this.checkContent(t),new Jh(this,this.computeAttrs(e),t,Oh.setFrom(n))}createAndFill(e=null,t,n){if(e=this.computeAttrs(e),t=X.from(t),t.size){let e=this.contentMatch.fillBefore(t);if(!e)return null;t=e.append(t)}let r=this.contentMatch.matchFragment(t),i=r&&r.fillBefore(X.empty,!0);return i?new Jh(this,e,t.append(i),Oh.setFrom(n)):null}validContent(e){let t=this.contentMatch.matchFragment(e);if(!t||!t.validEnd)return!1;for(let t=0;t<e.childCount;t++)if(!this.allowsMarks(e.child(t).marks))return!1;return!0}checkContent(e){if(!this.validContent(e))throw RangeError(`Invalid content for node ${this.name}: ${e.toString().slice(0,50)}`)}checkAttrs(e){pg(this.attrs,e,`node`,this.name)}allowsMarkType(e){return this.markSet==null||this.markSet.indexOf(e)>-1}allowsMarks(e){if(this.markSet==null)return!0;for(let t=0;t<e.length;t++)if(!this.allowsMarkType(e[t].type))return!1;return!0}allowedMarks(e){if(this.markSet==null)return e;let t;for(let n=0;n<e.length;n++)this.allowsMarkType(e[n].type)?t&&t.push(e[n]):t||=e.slice(0,n);return t?t.length?t:Oh.none:e}static compile(t,n){let r=Object.create(null);t.forEach((t,i)=>r[t]=new e(t,n,i));let i=n.spec.topNode||`doc`;if(!r[i])throw RangeError(`Schema is missing its top node type ('`+i+`')`);if(!r.text)throw RangeError(`Every schema needs a 'text' type`);for(let e in r.text.attrs)throw RangeError(`The text node type should not have attributes`);return r}};function gg(e,t,n){let r=n.split(`|`);return n=>{let i=n===null?`null`:typeof n;if(r.indexOf(i)<0)throw RangeError(`Expected value of type ${r} for attribute ${t} on type ${e}, got ${i}`)}}var _g=class{constructor(e,t,n){this.hasDefault=Object.prototype.hasOwnProperty.call(n,`default`),this.default=n.default,this.validate=typeof n.validate==`string`?gg(e,t,n.validate):n.validate}get isRequired(){return!this.hasDefault}},vg=class e{constructor(e,t,n,r){this.name=e,this.rank=t,this.schema=n,this.spec=r,this.attrs=mg(e,r.attrs),this.excluded=null;let i=dg(this.attrs);this.instance=i?new Oh(this,i):null}create(e=null){return!e&&this.instance?this.instance:new Oh(this,fg(this.attrs,e))}static compile(t,n){let r=Object.create(null),i=0;return t.forEach((t,a)=>r[t]=new e(t,i++,n,a)),r}removeFromSet(e){for(var t=0;t<e.length;t++)e[t].type==this&&(e=e.slice(0,t).concat(e.slice(t+1)),t--);return e}isInSet(e){for(let t=0;t<e.length;t++)if(e[t].type==this)return e[t]}checkAttrs(e){pg(this.attrs,e,`mark`,this.name)}excludes(e){return this.excluded.indexOf(e)>-1}},yg=class{constructor(e){this.linebreakReplacement=null,this.cached=Object.create(null);let t=this.spec={};for(let n in e)t[n]=e[n];t.nodes=bh.from(e.nodes),t.marks=bh.from(e.marks||{}),this.nodes=hg.compile(this.spec.nodes,this),this.marks=vg.compile(this.spec.marks,this);let n=Object.create(null);for(let e in this.nodes){if(e in this.marks)throw RangeError(e+` can not be both a node and a mark`);let t=this.nodes[e],r=t.spec.content||``,i=t.spec.marks;if(t.contentMatch=n[r]||(n[r]=Zh.parse(r,this.nodes)),t.inlineContent=t.contentMatch.inlineContent,t.spec.linebreakReplacement){if(this.linebreakReplacement)throw RangeError(`Multiple linebreak nodes defined`);if(!t.isInline||!t.isLeaf)throw RangeError(`Linebreak replacement nodes must be inline leaf nodes`);this.linebreakReplacement=t}t.markSet=i==`_`?null:i?bg(this,i.split(` `)):i==``||!t.inlineContent?[]:null}for(let e in this.marks){let t=this.marks[e],n=t.spec.excludes;t.excluded=n==null?[t]:n==``?[]:bg(this,n.split(` `))}this.nodeFromJSON=e=>Jh.fromJSON(this,e),this.markFromJSON=e=>Oh.fromJSON(this,e),this.topNodeType=this.nodes[this.spec.topNode||`doc`],this.cached.wrappings=Object.create(null)}node(e,t=null,n,r){if(typeof e==`string`)e=this.nodeType(e);else if(!(e instanceof hg))throw RangeError(`Invalid node type: `+e);else if(e.schema!=this)throw RangeError(`Node type from different schema used (`+e.name+`)`);return e.createChecked(t,n,r)}text(e,t){let n=this.nodes.text;return new Yh(n,n.defaultAttrs,e,Oh.setFrom(t))}mark(e,t){return typeof e==`string`&&(e=this.marks[e]),e.create(t)}nodeType(e){let t=this.nodes[e];if(!t)throw RangeError(`Unknown node type: `+e);return t}};function bg(e,t){let n=[];for(let r=0;r<t.length;r++){let i=t[r],a=e.marks[i],o=a;if(a)n.push(a);else for(let t in e.marks){let r=e.marks[t];(i==`_`||r.spec.group&&r.spec.group.split(` `).indexOf(i)>-1)&&n.push(o=r)}if(!o)throw SyntaxError(`Unknown mark type: '`+t[r]+`'`)}return n}function xg(e){return e.tag!=null}function Sg(e){return e.style!=null}var Cg=class e{constructor(e,t){this.schema=e,this.rules=t,this.tags=[],this.styles=[];let n=this.matchedStyles=[];t.forEach(e=>{if(xg(e))this.tags.push(e);else if(Sg(e)){let t=/[^=]*/.exec(e.style)[0];n.indexOf(t)<0&&n.push(t),this.styles.push(e)}}),this.normalizeLists=!this.tags.some(t=>{if(!/^(ul|ol)\b/.test(t.tag)||!t.node)return!1;let n=e.nodes[t.node];return n.contentMatch.matchType(n)})}parse(e,t={}){let n=new Mg(this,t,!1);return n.addAll(e,Oh.none,t.from,t.to),n.finish()}parseSlice(e,t={}){let n=new Mg(this,t,!0);return n.addAll(e,Oh.none,t.from,t.to),Z.maxOpen(n.finish())}matchTag(e,t,n){for(let r=n?this.tags.indexOf(n)+1:0;r<this.tags.length;r++){let n=this.tags[r];if(Pg(e,n.tag)&&(n.namespace===void 0||e.namespaceURI==n.namespace)&&(!n.context||t.matchesContext(n.context))){if(n.getAttrs){let t=n.getAttrs(e);if(t===!1)continue;n.attrs=t||void 0}return n}}}matchStyle(e,t,n,r){for(let i=r?this.styles.indexOf(r)+1:0;i<this.styles.length;i++){let r=this.styles[i],a=r.style;if(!(a.indexOf(e)!=0||r.context&&!n.matchesContext(r.context)||a.length>e.length&&(a.charCodeAt(e.length)!=61||a.slice(e.length+1)!=t))){if(r.getAttrs){let e=r.getAttrs(t);if(e===!1)continue;r.attrs=e||void 0}return r}}}static schemaRules(e){let t=[];function n(e){let n=e.priority==null?50:e.priority,r=0;for(;r<t.length;r++){let e=t[r];if((e.priority==null?50:e.priority)<n)break}t.splice(r,0,e)}for(let t in e.marks){let r=e.marks[t].spec.parseDOM;r&&r.forEach(e=>{n(e=Fg(e)),e.mark||e.ignore||e.clearMark||(e.mark=t)})}for(let t in e.nodes){let r=e.nodes[t].spec.parseDOM;r&&r.forEach(e=>{n(e=Fg(e)),e.node||e.ignore||e.mark||(e.node=t)})}return t}static fromSchema(t){return t.cached.domParser||(t.cached.domParser=new e(t,e.schemaRules(t)))}},wg={address:!0,article:!0,aside:!0,blockquote:!0,body:!0,canvas:!0,dd:!0,div:!0,dl:!0,fieldset:!0,figcaption:!0,figure:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,li:!0,noscript:!0,ol:!0,output:!0,p:!0,pre:!0,section:!0,table:!0,tfoot:!0,ul:!0},Tg={head:!0,noscript:!0,object:!0,script:!0,style:!0,title:!0},Eg={ol:!0,ul:!0},Dg=1,Og=2,kg=4;function Ag(e,t,n){return t==null?e&&e.whitespace==`pre`?3:n&-5:(t?Dg:0)|(t===`full`?Og:0)}var jg=class{constructor(e,t,n,r,i,a){this.type=e,this.attrs=t,this.marks=n,this.solid=r,this.options=a,this.content=[],this.activeMarks=Oh.none,this.match=i||(a&kg?null:e.contentMatch)}findWrapping(e){if(!this.match){if(!this.type)return[];let t=this.type.contentMatch.fillBefore(X.from(e));if(t)this.match=this.type.contentMatch.matchFragment(t);else{let t=this.type.contentMatch,n;return(n=t.findWrapping(e.type))?(this.match=t,n):null}}return this.match.findWrapping(e.type)}finish(e){if(!(this.options&Dg)){let e=this.content[this.content.length-1],t;if(e&&e.isText&&(t=/[ \t\r\n\u000c]+$/.exec(e.text))){let n=e;e.text.length==t[0].length?this.content.pop():this.content[this.content.length-1]=n.withText(n.text.slice(0,n.text.length-t[0].length))}}let t=X.from(this.content);return!e&&this.match&&(t=t.append(this.match.fillBefore(X.empty,!0))),this.type?this.type.create(this.attrs,t,this.marks):t}inlineContext(e){return this.type?this.type.inlineContent:this.content.length?this.content[0].isInline:e.parentNode&&!wg.hasOwnProperty(e.parentNode.nodeName.toLowerCase())}},Mg=class{constructor(e,t,n){this.parser=e,this.options=t,this.isOpen=n,this.open=0,this.localPreserveWS=!1;let r=t.topNode,i,a=Ag(null,t.preserveWhitespace,0)|(n?kg:0);i=r?new jg(r.type,r.attrs,Oh.none,!0,t.topMatch||r.type.contentMatch,a):n?new jg(null,null,Oh.none,!0,null,a):new jg(e.schema.topNodeType,null,Oh.none,!0,null,a),this.nodes=[i],this.find=t.findPositions,this.needsBlock=!1}get top(){return this.nodes[this.open]}addDOM(e,t){e.nodeType==3?this.addTextNode(e,t):e.nodeType==1&&this.addElement(e,t)}addTextNode(e,t){let n=e.nodeValue,r=this.top,i=r.options&Og?`full`:this.localPreserveWS||(r.options&Dg)>0,{schema:a}=this.parser;if(i===`full`||r.inlineContext(e)||/[^ \t\r\n\u000c]/.test(n)){if(!i){if(n=n.replace(/[ \t\r\n\u000c]+/g,` `),/^[ \t\r\n\u000c]/.test(n)&&this.open==this.nodes.length-1){let t=r.content[r.content.length-1],i=e.previousSibling;(!t||i&&i.nodeName==`BR`||t.isText&&/[ \t\r\n\u000c]$/.test(t.text))&&(n=n.slice(1))}}else if(i===`full`)n=n.replace(/\r\n?/g,`
10
+ `);else if(a.linebreakReplacement&&/[\r\n]/.test(n)&&this.top.findWrapping(a.linebreakReplacement.create())){let e=n.split(/\r?\n|\r/);for(let n=0;n<e.length;n++)n&&this.insertNode(a.linebreakReplacement.create(),t,!0),e[n]&&this.insertNode(a.text(e[n]),t,!/\S/.test(e[n]));n=``}else n=n.replace(/\r?\n|\r/g,` `);n&&this.insertNode(a.text(n),t,!/\S/.test(n)),this.findInText(e)}else this.findInside(e)}addElement(e,t,n){let r=this.localPreserveWS,i=this.top;(e.tagName==`PRE`||/pre/.test(e.style&&e.style.whiteSpace))&&(this.localPreserveWS=!0);let a=e.nodeName.toLowerCase(),o;Eg.hasOwnProperty(a)&&this.parser.normalizeLists&&Ng(e);let s=this.options.ruleFromNode&&this.options.ruleFromNode(e)||(o=this.parser.matchTag(e,this,n));out:if(s?s.ignore:Tg.hasOwnProperty(a))this.findInside(e),this.ignoreFallback(e,t);else if(!s||s.skip||s.closeParent){s&&s.closeParent?this.open=Math.max(0,this.open-1):s&&s.skip.nodeType&&(e=s.skip);let n,r=this.needsBlock;if(wg.hasOwnProperty(a))i.content.length&&i.content[0].isInline&&this.open&&(this.open--,i=this.top),n=!0,i.type||(this.needsBlock=!0);else if(!e.firstChild){this.leafFallback(e,t);break out}let o=s&&s.skip?t:this.readStyles(e,t);o&&this.addAll(e,o),n&&this.sync(i),this.needsBlock=r}else{let n=this.readStyles(e,t);n&&this.addElementByRule(e,s,n,s.consuming===!1?o:void 0)}this.localPreserveWS=r}leafFallback(e,t){e.nodeName==`BR`&&this.top.type&&this.top.type.inlineContent&&this.addTextNode(e.ownerDocument.createTextNode(`
11
+ `),t)}ignoreFallback(e,t){e.nodeName==`BR`&&(!this.top.type||!this.top.type.inlineContent)&&this.findPlace(this.parser.schema.text(`-`),t,!0)}readStyles(e,t){let n=e.style;if(n&&n.length)for(let e=0;e<this.parser.matchedStyles.length;e++){let r=this.parser.matchedStyles[e],i=n.getPropertyValue(r);if(i)for(let e;;){let n=this.parser.matchStyle(r,i,this,e);if(!n)break;if(n.ignore)return null;if(t=n.clearMark?t.filter(e=>!n.clearMark(e)):t.concat(this.parser.schema.marks[n.mark].create(n.attrs)),n.consuming===!1)e=n;else break}}return t}addElementByRule(e,t,n,r){let i,a;if(t.node)if(a=this.parser.schema.nodes[t.node],a.isLeaf)this.insertNode(a.create(t.attrs),n,e.nodeName==`BR`)||this.leafFallback(e,n);else{let e=this.enter(a,t.attrs||null,n,t.preserveWhitespace);e&&(i=!0,n=e)}else{let e=this.parser.schema.marks[t.mark];n=n.concat(e.create(t.attrs))}let o=this.top;if(a&&a.isLeaf)this.findInside(e);else if(r)this.addElement(e,n,r);else if(t.getContent)this.findInside(e),t.getContent(e,this.parser.schema).forEach(e=>this.insertNode(e,n,!1));else{let r=e;typeof t.contentElement==`string`?r=e.querySelector(t.contentElement):typeof t.contentElement==`function`?r=t.contentElement(e):t.contentElement&&(r=t.contentElement),this.findAround(e,r,!0),this.addAll(r,n),this.findAround(e,r,!1)}i&&this.sync(o)&&this.open--}addAll(e,t,n,r){let i=n||0;for(let a=n?e.childNodes[n]:e.firstChild,o=r==null?null:e.childNodes[r];a!=o;a=a.nextSibling,++i)this.findAtPoint(e,i),this.addDOM(a,t);this.findAtPoint(e,i)}findPlace(e,t,n){let r,i;for(let t=this.open,a=0;t>=0;t--){let o=this.nodes[t],s=o.findWrapping(e);if(s&&(!r||r.length>s.length+a)&&(r=s,i=o,!s.length))break;if(o.solid){if(n)break;a+=2}}if(!r)return null;this.sync(i);for(let e=0;e<r.length;e++)t=this.enterInner(r[e],null,t,!1);return t}insertNode(e,t,n){if(e.isInline&&this.needsBlock&&!this.top.type){let e=this.textblockFromContext();e&&(t=this.enterInner(e,null,t))}let r=this.findPlace(e,t,n);if(r){this.closeExtra();let t=this.top;t.match&&=t.match.matchType(e.type);let n=Oh.none;for(let i of r.concat(e.marks))(t.type?t.type.allowsMarkType(i.type):Ig(i.type,e.type))&&(n=i.addToSet(n));return t.content.push(e.mark(n)),!0}return!1}enter(e,t,n,r){let i=this.findPlace(e.create(t),n,!1);return i&&=this.enterInner(e,t,n,!0,r),i}enterInner(e,t,n,r=!1,i){this.closeExtra();let a=this.top;a.match=a.match&&a.match.matchType(e);let o=Ag(e,i,a.options);a.options&kg&&a.content.length==0&&(o|=kg);let s=Oh.none;return n=n.filter(t=>(a.type?a.type.allowsMarkType(t.type):Ig(t.type,e))?(s=t.addToSet(s),!1):!0),this.nodes.push(new jg(e,t,s,r,null,o)),this.open++,n}closeExtra(e=!1){let t=this.nodes.length-1;if(t>this.open){for(;t>this.open;t--)this.nodes[t-1].content.push(this.nodes[t].finish(e));this.nodes.length=this.open+1}}finish(){return this.open=0,this.closeExtra(this.isOpen),this.nodes[0].finish(!!(this.isOpen||this.options.topOpen))}sync(e){for(let t=this.open;t>=0;t--)if(this.nodes[t]==e)return this.open=t,!0;else this.localPreserveWS&&(this.nodes[t].options|=Dg);return!1}get currentPos(){this.closeExtra();let e=0;for(let t=this.open;t>=0;t--){let n=this.nodes[t].content;for(let t=n.length-1;t>=0;t--)e+=n[t].nodeSize;t&&e++}return e}findAtPoint(e,t){if(this.find)for(let n=0;n<this.find.length;n++)this.find[n].node==e&&this.find[n].offset==t&&(this.find[n].pos=this.currentPos)}findInside(e){if(this.find)for(let t=0;t<this.find.length;t++)this.find[t].pos==null&&e.nodeType==1&&e.contains(this.find[t].node)&&(this.find[t].pos=this.currentPos)}findAround(e,t,n){if(e!=t&&this.find)for(let r=0;r<this.find.length;r++)this.find[r].pos==null&&e.nodeType==1&&e.contains(this.find[r].node)&&t.compareDocumentPosition(this.find[r].node)&(n?2:4)&&(this.find[r].pos=this.currentPos)}findInText(e){if(this.find)for(let t=0;t<this.find.length;t++)this.find[t].node==e&&(this.find[t].pos=this.currentPos-(e.nodeValue.length-this.find[t].offset))}matchesContext(e){if(e.indexOf(`|`)>-1)return e.split(/\s*\|\s*/).some(this.matchesContext,this);let t=e.split(`/`),n=this.options.context,r=!this.isOpen&&(!n||n.parent.type==this.nodes[0].type),i=-(n?n.depth+1:0)+ +!r,a=(e,o)=>{for(;e>=0;e--){let s=t[e];if(s==``){if(e==t.length-1||e==0)continue;for(;o>=i;o--)if(a(e-1,o))return!0;return!1}else{let e=o>0||o==0&&r?this.nodes[o].type:n&&o>=i?n.node(o-i).type:null;if(!e||e.name!=s&&!e.isInGroup(s))return!1;o--}}return!0};return a(t.length-1,this.open)}textblockFromContext(){let e=this.options.context;if(e)for(let t=e.depth;t>=0;t--){let n=e.node(t).contentMatchAt(e.indexAfter(t)).defaultType;if(n&&n.isTextblock&&n.defaultAttrs)return n}for(let e in this.parser.schema.nodes){let t=this.parser.schema.nodes[e];if(t.isTextblock&&t.defaultAttrs)return t}}};function Ng(e){for(let t=e.firstChild,n=null;t;t=t.nextSibling){let e=t.nodeType==1?t.nodeName.toLowerCase():null;e&&Eg.hasOwnProperty(e)&&n?(n.appendChild(t),t=n):e==`li`?n=t:e&&(n=null)}}function Pg(e,t){return(e.matches||e.msMatchesSelector||e.webkitMatchesSelector||e.mozMatchesSelector).call(e,t)}function Fg(e){let t={};for(let n in e)t[n]=e[n];return t}function Ig(e,t){let n=t.schema.nodes;for(let r in n){let i=n[r];if(!i.allowsMarkType(e))continue;let a=[],o=e=>{a.push(e);for(let n=0;n<e.edgeCount;n++){let{type:r,next:i}=e.edge(n);if(r==t||a.indexOf(i)<0&&o(i))return!0}};if(o(i.contentMatch))return!0}}var Lg=class e{constructor(e,t){this.nodes=e,this.marks=t}serializeFragment(e,t={},n){n||=zg(t).createDocumentFragment();let r=n,i=[];return e.forEach(e=>{if(i.length||e.marks.length){let n=0,a=0;for(;n<i.length&&a<e.marks.length;){let t=e.marks[a];if(!this.marks[t.type.name]){a++;continue}if(!t.eq(i[n][0])||t.type.spec.spanning===!1)break;n++,a++}for(;n<i.length;)r=i.pop()[1];for(;a<e.marks.length;){let n=e.marks[a++],o=this.serializeMark(n,e.isInline,t);o&&(i.push([n,r]),r.appendChild(o.dom),r=o.contentDOM||o.dom)}}r.appendChild(this.serializeNodeInner(e,t))}),n}serializeNodeInner(e,t){if(e.isText)return zg(t).createTextNode(e.text);let{dom:n,contentDOM:r}=Ug(zg(t),this.nodes[e.type.name](e),null,e.attrs);if(r){if(e.isLeaf)throw RangeError(`Content hole not allowed in a leaf node spec`);this.serializeFragment(e.content,t,r)}return n}serializeNode(e,t={}){let n=this.serializeNodeInner(e,t);for(let r=e.marks.length-1;r>=0;r--){let i=this.serializeMark(e.marks[r],e.isInline,t);i&&((i.contentDOM||i.dom).appendChild(n),n=i.dom)}return n}serializeMark(e,t,n={}){let r=this.marks[e.type.name];return r&&Ug(zg(n),r(e,t),null,e.attrs)}static renderSpec(e,t,n=null,r){return typeof t==`string`?{dom:e.createTextNode(t)}:Ug(e,t,n,r)}static fromSchema(t){return t.cached.domSerializer||(t.cached.domSerializer=new e(this.nodesFromSchema(t),this.marksFromSchema(t)))}static nodesFromSchema(e){let t=Rg(e.nodes);return t.text||=e=>e.text,t}static marksFromSchema(e){return Rg(e.marks)}};function Rg(e){let t={};for(let n in e){let r=e[n].spec.toDOM;r&&(t[n]=r)}return t}function zg(e){return e.document||window.document}var Bg=new WeakMap;function Vg(e){let t=Bg.get(e);return t===void 0&&Bg.set(e,t=Hg(e)),t}function Hg(e){let t=null;function n(e){if(e&&typeof e==`object`)if(Array.isArray(e))if(typeof e[0]==`string`)t||=[],t.push(e);else for(let t=0;t<e.length;t++)n(e[t]);else for(let t in e)n(e[t])}return n(e),t}function Ug(e,t,n,r){if(t.nodeType==1)return{dom:t};if(t.dom&&t.dom.nodeType==1)return t;let i=t[0],a;if(typeof i!=`string`)throw RangeError(`Invalid array passed to renderSpec`);if(r&&(a=Vg(r))&&a.indexOf(t)>-1)throw RangeError(`Using an array from an attribute object as a DOM spec. This may be an attempted cross site scripting attack.`);let o=i.indexOf(` `);o>0&&(n=i.slice(0,o),i=i.slice(o+1));let s,c=n?e.createElementNS(n,i):e.createElement(i),l=t[1],u=1;if(l&&typeof l==`object`&&l.nodeType==null&&!Array.isArray(l)){u=2;for(let e in l)if(l[e]!=null){let t=e.indexOf(` `);t>0?c.setAttributeNS(e.slice(0,t),e.slice(t+1),l[e]):e==`style`&&c.style?c.style.cssText=l[e]:c.setAttribute(e,l[e])}}for(let i=u;i<t.length;i++){let a=t[i];if(a===0){if(i<t.length-1||i>u)throw RangeError(`Content hole must be the only child of its parent node`);return{dom:c,contentDOM:c}}else if(typeof a==`string`)c.appendChild(e.createTextNode(a));else{let{dom:t,contentDOM:i}=Ug(e,a,n,r);if(c.appendChild(t),i){if(s)throw RangeError(`Multiple content holes`);s=i}}}return{dom:c,contentDOM:s}}var Wg=65535,Gg=2**16;function Kg(e,t){return e+t*Gg}function qg(e){return e&Wg}function Jg(e){return(e-(e&Wg))/Gg}var Yg=1,Xg=2,Zg=4,Qg=8,$g=class{constructor(e,t,n){this.pos=e,this.delInfo=t,this.recover=n}get deleted(){return(this.delInfo&Qg)>0}get deletedBefore(){return(this.delInfo&5)>0}get deletedAfter(){return(this.delInfo&6)>0}get deletedAcross(){return(this.delInfo&Zg)>0}},e_=class e{constructor(t,n=!1){if(this.ranges=t,this.inverted=n,!t.length&&e.empty)return e.empty}recover(e){let t=0,n=qg(e);if(!this.inverted)for(let e=0;e<n;e++)t+=this.ranges[e*3+2]-this.ranges[e*3+1];return this.ranges[n*3]+t+Jg(e)}mapResult(e,t=1){return this._map(e,t,!1)}map(e,t=1){return this._map(e,t,!0)}_map(e,t,n){let r=0,i=this.inverted?2:1,a=this.inverted?1:2;for(let o=0;o<this.ranges.length;o+=3){let s=this.ranges[o]-(this.inverted?r:0);if(s>e)break;let c=this.ranges[o+i],l=this.ranges[o+a],u=s+c;if(e<=u){let i=c?e==s?-1:e==u?1:t:t,a=s+r+(i<0?0:l);if(n)return a;let d=e==(t<0?s:u)?null:Kg(o/3,e-s),f=e==s?Xg:e==u?Yg:Zg;return(t<0?e!=s:e!=u)&&(f|=Qg),new $g(a,f,d)}r+=l-c}return n?e+r:new $g(e+r,0,null)}touches(e,t){let n=0,r=qg(t),i=this.inverted?2:1,a=this.inverted?1:2;for(let t=0;t<this.ranges.length;t+=3){let o=this.ranges[t]-(this.inverted?n:0);if(o>e)break;let s=this.ranges[t+i];if(e<=o+s&&t==r*3)return!0;n+=this.ranges[t+a]-s}return!1}forEach(e){let t=this.inverted?2:1,n=this.inverted?1:2;for(let r=0,i=0;r<this.ranges.length;r+=3){let a=this.ranges[r],o=a-(this.inverted?i:0),s=a+(this.inverted?0:i),c=this.ranges[r+t],l=this.ranges[r+n];e(o,o+c,s,s+l),i+=l-c}}invert(){return new e(this.ranges,!this.inverted)}toString(){return(this.inverted?`-`:``)+JSON.stringify(this.ranges)}static offset(t){return t==0?e.empty:new e(t<0?[0,-t,0]:[0,0,t])}};e_.empty=new e_([]);var t_=class e{constructor(e,t,n=0,r=e?e.length:0){this.mirror=t,this.from=n,this.to=r,this._maps=e||[],this.ownData=!(e||t)}get maps(){return this._maps}slice(t=0,n=this.maps.length){return new e(this._maps,this.mirror,t,n)}appendMap(e,t){this.ownData||=(this._maps=this._maps.slice(),this.mirror=this.mirror&&this.mirror.slice(),!0),this.to=this._maps.push(e),t!=null&&this.setMirror(this._maps.length-1,t)}appendMapping(e){for(let t=0,n=this._maps.length;t<e._maps.length;t++){let r=e.getMirror(t);this.appendMap(e._maps[t],r!=null&&r<t?n+r:void 0)}}getMirror(e){if(this.mirror){for(let t=0;t<this.mirror.length;t++)if(this.mirror[t]==e)return this.mirror[t+(t%2?-1:1)]}}setMirror(e,t){this.mirror||=[],this.mirror.push(e,t)}appendMappingInverted(e){for(let t=e.maps.length-1,n=this._maps.length+e._maps.length;t>=0;t--){let r=e.getMirror(t);this.appendMap(e._maps[t].invert(),r!=null&&r>t?n-r-1:void 0)}}invert(){let t=new e;return t.appendMappingInverted(this),t}map(e,t=1){if(this.mirror)return this._map(e,t,!0);for(let n=this.from;n<this.to;n++)e=this._maps[n].map(e,t);return e}mapResult(e,t=1){return this._map(e,t,!1)}_map(e,t,n){let r=0;for(let n=this.from;n<this.to;n++){let i=this._maps[n].mapResult(e,t);if(i.recover!=null){let t=this.getMirror(n);if(t!=null&&t>n&&t<this.to){n=t,e=this._maps[t].recover(i.recover);continue}}r|=i.delInfo,e=i.pos}return n?e:new $g(e,r,null)}},n_=Object.create(null),r_=class{getMap(){return e_.empty}merge(e){return null}static fromJSON(e,t){if(!t||!t.stepType)throw RangeError(`Invalid input for Step.fromJSON`);let n=n_[t.stepType];if(!n)throw RangeError(`No step type ${t.stepType} defined`);return n.fromJSON(e,t)}static jsonID(e,t){if(e in n_)throw RangeError(`Duplicate use of step JSON ID `+e);return n_[e]=t,t.prototype.jsonID=e,t}},i_=class e{constructor(e,t){this.doc=e,this.failed=t}static ok(t){return new e(t,null)}static fail(t){return new e(null,t)}static fromReplace(t,n,r,i){try{return e.ok(t.replace(n,r,i))}catch(t){if(t instanceof kh)return e.fail(t.message);throw t}}};function a_(e,t,n){let r=[];for(let i=0;i<e.childCount;i++){let a=e.child(i);a.content.size&&(a=a.copy(a_(a.content,t,a))),a.isInline&&(a=t(a,n,i)),r.push(a)}return X.fromArray(r)}var o_=class e extends r_{constructor(e,t,n){super(),this.from=e,this.to=t,this.mark=n}apply(e){let t=e.slice(this.from,this.to),n=e.resolve(this.from),r=n.node(n.sharedDepth(this.to)),i=new Z(a_(t.content,(e,t)=>!e.isAtom||!t.type.allowsMarkType(this.mark.type)?e:e.mark(this.mark.addToSet(e.marks)),r),t.openStart,t.openEnd);return i_.fromReplace(e,this.from,this.to,i)}invert(){return new s_(this.from,this.to,this.mark)}map(t){let n=t.mapResult(this.from,1),r=t.mapResult(this.to,-1);return n.deleted&&r.deleted||n.pos>=r.pos?null:new e(n.pos,r.pos,this.mark)}merge(t){return t instanceof e&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from?new e(Math.min(this.from,t.from),Math.max(this.to,t.to),this.mark):null}toJSON(){return{stepType:`addMark`,mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(t,n){if(typeof n.from!=`number`||typeof n.to!=`number`)throw RangeError(`Invalid input for AddMarkStep.fromJSON`);return new e(n.from,n.to,t.markFromJSON(n.mark))}};r_.jsonID(`addMark`,o_);var s_=class e extends r_{constructor(e,t,n){super(),this.from=e,this.to=t,this.mark=n}apply(e){let t=e.slice(this.from,this.to),n=new Z(a_(t.content,e=>e.mark(this.mark.removeFromSet(e.marks)),e),t.openStart,t.openEnd);return i_.fromReplace(e,this.from,this.to,n)}invert(){return new o_(this.from,this.to,this.mark)}map(t){let n=t.mapResult(this.from,1),r=t.mapResult(this.to,-1);return n.deleted&&r.deleted||n.pos>=r.pos?null:new e(n.pos,r.pos,this.mark)}merge(t){return t instanceof e&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from?new e(Math.min(this.from,t.from),Math.max(this.to,t.to),this.mark):null}toJSON(){return{stepType:`removeMark`,mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(t,n){if(typeof n.from!=`number`||typeof n.to!=`number`)throw RangeError(`Invalid input for RemoveMarkStep.fromJSON`);return new e(n.from,n.to,t.markFromJSON(n.mark))}};r_.jsonID(`removeMark`,s_);var c_=class e extends r_{constructor(e,t){super(),this.pos=e,this.mark=t}apply(e){let t=e.nodeAt(this.pos);if(!t)return i_.fail(`No node at mark step's position`);let n=t.type.create(t.attrs,null,this.mark.addToSet(t.marks));return i_.fromReplace(e,this.pos,this.pos+1,new Z(X.from(n),0,+!t.isLeaf))}invert(t){let n=t.nodeAt(this.pos);if(n){let t=this.mark.addToSet(n.marks);if(t.length==n.marks.length){for(let r=0;r<n.marks.length;r++)if(!n.marks[r].isInSet(t))return new e(this.pos,n.marks[r]);return new e(this.pos,this.mark)}}return new l_(this.pos,this.mark)}map(t){let n=t.mapResult(this.pos,1);return n.deletedAfter?null:new e(n.pos,this.mark)}toJSON(){return{stepType:`addNodeMark`,pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(t,n){if(typeof n.pos!=`number`)throw RangeError(`Invalid input for AddNodeMarkStep.fromJSON`);return new e(n.pos,t.markFromJSON(n.mark))}};r_.jsonID(`addNodeMark`,c_);var l_=class e extends r_{constructor(e,t){super(),this.pos=e,this.mark=t}apply(e){let t=e.nodeAt(this.pos);if(!t)return i_.fail(`No node at mark step's position`);let n=t.type.create(t.attrs,null,this.mark.removeFromSet(t.marks));return i_.fromReplace(e,this.pos,this.pos+1,new Z(X.from(n),0,+!t.isLeaf))}invert(e){let t=e.nodeAt(this.pos);return!t||!this.mark.isInSet(t.marks)?this:new c_(this.pos,this.mark)}map(t){let n=t.mapResult(this.pos,1);return n.deletedAfter?null:new e(n.pos,this.mark)}toJSON(){return{stepType:`removeNodeMark`,pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(t,n){if(typeof n.pos!=`number`)throw RangeError(`Invalid input for RemoveNodeMarkStep.fromJSON`);return new e(n.pos,t.markFromJSON(n.mark))}};r_.jsonID(`removeNodeMark`,l_);var u_=class e extends r_{constructor(e,t,n,r=!1){super(),this.from=e,this.to=t,this.slice=n,this.structure=r}apply(e){return this.structure&&f_(e,this.from,this.to)?i_.fail(`Structure replace would overwrite content`):i_.fromReplace(e,this.from,this.to,this.slice)}getMap(){return new e_([this.from,this.to-this.from,this.slice.size])}invert(t){return new e(this.from,this.from+this.slice.size,t.slice(this.from,this.to))}map(t){let n=t.mapResult(this.to,-1),r=this.from==this.to&&e.MAP_BIAS<0?n:t.mapResult(this.from,1);return r.deletedAcross&&n.deletedAcross?null:new e(r.pos,Math.max(r.pos,n.pos),this.slice,this.structure)}merge(t){if(!(t instanceof e)||t.structure||this.structure)return null;if(this.from+this.slice.size==t.from&&!this.slice.openEnd&&!t.slice.openStart){let n=this.slice.size+t.slice.size==0?Z.empty:new Z(this.slice.content.append(t.slice.content),this.slice.openStart,t.slice.openEnd);return new e(this.from,this.to+(t.to-t.from),n,this.structure)}else if(t.to==this.from&&!this.slice.openStart&&!t.slice.openEnd){let n=this.slice.size+t.slice.size==0?Z.empty:new Z(t.slice.content.append(this.slice.content),t.slice.openStart,this.slice.openEnd);return new e(t.from,this.to,n,this.structure)}else return null}toJSON(){let e={stepType:`replace`,from:this.from,to:this.to};return this.slice.size&&(e.slice=this.slice.toJSON()),this.structure&&(e.structure=!0),e}static fromJSON(t,n){if(typeof n.from!=`number`||typeof n.to!=`number`)throw RangeError(`Invalid input for ReplaceStep.fromJSON`);return new e(n.from,n.to,Z.fromJSON(t,n.slice),!!n.structure)}};u_.MAP_BIAS=1,r_.jsonID(`replace`,u_);var d_=class e extends r_{constructor(e,t,n,r,i,a,o=!1){super(),this.from=e,this.to=t,this.gapFrom=n,this.gapTo=r,this.slice=i,this.insert=a,this.structure=o}apply(e){if(this.structure&&(f_(e,this.from,this.gapFrom)||f_(e,this.gapTo,this.to)))return i_.fail(`Structure gap-replace would overwrite content`);let t=e.slice(this.gapFrom,this.gapTo);if(t.openStart||t.openEnd)return i_.fail(`Gap is not a flat range`);let n=this.slice.insertAt(this.insert,t.content);return n?i_.fromReplace(e,this.from,this.to,n):i_.fail(`Content does not fit in gap`)}getMap(){return new e_([this.from,this.gapFrom-this.from,this.insert,this.gapTo,this.to-this.gapTo,this.slice.size-this.insert])}invert(t){let n=this.gapTo-this.gapFrom;return new e(this.from,this.from+this.slice.size+n,this.from+this.insert,this.from+this.insert+n,t.slice(this.from,this.to).removeBetween(this.gapFrom-this.from,this.gapTo-this.from),this.gapFrom-this.from,this.structure)}map(t){let n=t.mapResult(this.from,1),r=t.mapResult(this.to,-1),i=this.from==this.gapFrom?n.pos:t.map(this.gapFrom,-1),a=this.to==this.gapTo?r.pos:t.map(this.gapTo,1);return n.deletedAcross&&r.deletedAcross||i<n.pos||a>r.pos?null:new e(n.pos,r.pos,i,a,this.slice,this.insert,this.structure)}toJSON(){let e={stepType:`replaceAround`,from:this.from,to:this.to,gapFrom:this.gapFrom,gapTo:this.gapTo,insert:this.insert};return this.slice.size&&(e.slice=this.slice.toJSON()),this.structure&&(e.structure=!0),e}static fromJSON(t,n){if(typeof n.from!=`number`||typeof n.to!=`number`||typeof n.gapFrom!=`number`||typeof n.gapTo!=`number`||typeof n.insert!=`number`)throw RangeError(`Invalid input for ReplaceAroundStep.fromJSON`);return new e(n.from,n.to,n.gapFrom,n.gapTo,Z.fromJSON(t,n.slice),n.insert,!!n.structure)}};r_.jsonID(`replaceAround`,d_);function f_(e,t,n){let r=e.resolve(t),i=n-t,a=r.depth;for(;i>0&&a>0&&r.indexAfter(a)==r.node(a).childCount;)a--,i--;if(i>0){let e=r.node(a).maybeChild(r.indexAfter(a));for(;i>0;){if(!e||e.isLeaf)return!0;e=e.firstChild,i--}}return!1}function p_(e,t,n,r){let i=[],a=[],o,s;e.doc.nodesBetween(t,n,(e,c,l)=>{if(!e.isInline)return;let u=e.marks;if(!r.isInSet(u)&&l.type.allowsMarkType(r.type)){let l=Math.max(c,t),d=Math.min(c+e.nodeSize,n),f=r.addToSet(u);for(let e=0;e<u.length;e++)u[e].isInSet(f)||(o&&o.to==l&&o.mark.eq(u[e])?o.to=d:i.push(o=new s_(l,d,u[e])));s&&s.to==l?s.to=d:a.push(s=new o_(l,d,r))}}),i.forEach(t=>e.step(t)),a.forEach(t=>e.step(t))}function m_(e,t,n,r){let i=[],a=0;e.doc.nodesBetween(t,n,(e,o)=>{if(!e.isInline)return;a++;let s=null;if(r instanceof vg){let t=e.marks,n;for(;n=r.isInSet(t);)(s||=[]).push(n),t=n.removeFromSet(t)}else r?r.isInSet(e.marks)&&(s=[r]):s=e.marks;if(s&&s.length){let r=Math.min(o+e.nodeSize,n);for(let e=0;e<s.length;e++){let n=s[e],c;for(let e=0;e<i.length;e++){let t=i[e];t.step==a-1&&n.eq(i[e].style)&&(c=t)}c?(c.to=r,c.step=a):i.push({style:n,from:Math.max(o,t),to:r,step:a})}}}),i.forEach(t=>e.step(new s_(t.from,t.to,t.style)))}function h_(e,t,n,r=n.contentMatch,i=!0){let a=e.doc.nodeAt(t),o=[],s=t+1;for(let t=0;t<a.childCount;t++){let c=a.child(t),l=s+c.nodeSize,u=r.matchType(c.type);if(!u)o.push(new u_(s,l,Z.empty));else{r=u;for(let t=0;t<c.marks.length;t++)n.allowsMarkType(c.marks[t].type)||e.step(new s_(s,l,c.marks[t]));if(i&&c.isText&&n.whitespace!=`pre`){let e,t=/\r?\n|\r/g,r;for(;e=t.exec(c.text);)r||=new Z(X.from(n.schema.text(` `,n.allowedMarks(c.marks))),0,0),o.push(new u_(s+e.index,s+e.index+e[0].length,r))}}s=l}if(!r.validEnd){let t=r.fillBefore(X.empty,!0);e.replace(s,s,new Z(t,0,0))}for(let t=o.length-1;t>=0;t--)e.step(o[t])}function g_(e,t,n){return(t==0||e.canReplace(t,e.childCount))&&(n==e.childCount||e.canReplace(0,n))}function __(e){let t=e.parent.content.cutByIndex(e.startIndex,e.endIndex);for(let n=e.depth,r=0,i=0;;--n){let a=e.$from.node(n),o=e.$from.index(n)+r,s=e.$to.indexAfter(n)-i;if(n<e.depth&&a.canReplace(o,s,t))return n;if(n==0||a.type.spec.isolating||!g_(a,o,s))break;o&&(r=1),s<a.childCount&&(i=1)}return null}function v_(e,t,n){let{$from:r,$to:i,depth:a}=t,o=r.before(a+1),s=i.after(a+1),c=o,l=s,u=X.empty,d=0;for(let e=a,t=!1;e>n;e--)t||r.index(e)>0?(t=!0,u=X.from(r.node(e).copy(u)),d++):c--;let f=X.empty,p=0;for(let e=a,t=!1;e>n;e--)t||i.after(e+1)<i.end(e)?(t=!0,f=X.from(i.node(e).copy(f)),p++):l++;e.step(new d_(c,l,o,s,new Z(u.append(f),d,p),u.size-d,!0))}function y_(e,t,n=null,r=e){let i=x_(e,t),a=i&&S_(r,t);return a?i.map(b_).concat({type:t,attrs:n}).concat(a.map(b_)):null}function b_(e){return{type:e,attrs:null}}function x_(e,t){let{parent:n,startIndex:r,endIndex:i}=e,a=n.contentMatchAt(r).findWrapping(t);if(!a)return null;let o=a.length?a[0]:t;return n.canReplaceWith(r,i,o)?a:null}function S_(e,t){let{parent:n,startIndex:r,endIndex:i}=e,a=n.child(r),o=t.contentMatch.findWrapping(a.type);if(!o)return null;let s=(o.length?o[o.length-1]:t).contentMatch;for(let e=r;s&&e<i;e++)s=s.matchType(n.child(e).type);return!s||!s.validEnd?null:o}function C_(e,t,n){let r=X.empty;for(let e=n.length-1;e>=0;e--){if(r.size){let t=n[e].type.contentMatch.matchFragment(r);if(!t||!t.validEnd)throw RangeError(`Wrapper type given to Transform.wrap does not form valid content of its parent wrapper`)}r=X.from(n[e].type.create(n[e].attrs,r))}let i=t.start,a=t.end;e.step(new d_(i,a,i,a,new Z(r,0,0),n.length,!0))}function w_(e,t,n,r,i){if(!r.isTextblock)throw RangeError(`Type given to setBlockType should be a textblock`);let a=e.steps.length;e.doc.nodesBetween(t,n,(t,n)=>{let o=typeof i==`function`?i(t):i;if(t.isTextblock&&!t.hasMarkup(r,o)&&D_(e.doc,e.mapping.slice(a).map(n),r)){let i=null;if(r.schema.linebreakReplacement){let e=r.whitespace==`pre`,t=!!r.contentMatch.matchType(r.schema.linebreakReplacement);e&&!t?i=!1:!e&&t&&(i=!0)}i===!1&&E_(e,t,n,a),h_(e,e.mapping.slice(a).map(n,1),r,void 0,i===null);let s=e.mapping.slice(a),c=s.map(n,1),l=s.map(n+t.nodeSize,1);return e.step(new d_(c,l,c+1,l-1,new Z(X.from(r.create(o,null,t.marks)),0,0),1,!0)),i===!0&&T_(e,t,n,a),!1}})}function T_(e,t,n,r){t.forEach((i,a)=>{if(i.isText){let o,s=/\r?\n|\r/g;for(;o=s.exec(i.text);){let i=e.mapping.slice(r).map(n+1+a+o.index);e.replaceWith(i,i+1,t.type.schema.linebreakReplacement.create())}}})}function E_(e,t,n,r){t.forEach((i,a)=>{if(i.type==i.type.schema.linebreakReplacement){let i=e.mapping.slice(r).map(n+1+a);e.replaceWith(i,i+1,t.type.schema.text(`
12
+ `))}})}function D_(e,t,n){let r=e.resolve(t),i=r.index();return r.parent.canReplaceWith(i,i+1,n)}function O_(e,t,n,r,i){let a=e.doc.nodeAt(t);if(!a)throw RangeError(`No node at given position`);n||=a.type;let o=n.create(r,null,i||a.marks);if(a.isLeaf)return e.replaceWith(t,t+a.nodeSize,o);if(!n.validContent(a.content))throw RangeError(`Invalid content for node type `+n.name);e.step(new d_(t,t+a.nodeSize,t+1,t+a.nodeSize-1,new Z(X.from(o),0,0),1,!0))}function k_(e,t,n=1,r){let i=e.resolve(t),a=i.depth-n,o=r&&r[r.length-1]||i.parent;if(a<0||i.parent.type.spec.isolating||!i.parent.canReplace(i.index(),i.parent.childCount)||!o.type.validContent(i.parent.content.cutByIndex(i.index(),i.parent.childCount)))return!1;for(let e=i.depth-1,t=n-2;e>a;e--,t--){let n=i.node(e),a=i.index(e);if(n.type.spec.isolating)return!1;let o=n.content.cutByIndex(a,n.childCount),s=r&&r[t+1];s&&(o=o.replaceChild(0,s.type.create(s.attrs)));let c=r&&r[t]||n;if(!n.canReplace(a+1,n.childCount)||!c.type.validContent(o))return!1}let s=i.indexAfter(a),c=r&&r[0];return i.node(a).canReplaceWith(s,s,c?c.type:i.node(a+1).type)}function A_(e,t,n=1,r){let i=e.doc.resolve(t),a=X.empty,o=X.empty;for(let e=i.depth,t=i.depth-n,s=n-1;e>t;e--,s--){a=X.from(i.node(e).copy(a));let t=r&&r[s];o=X.from(t?t.type.create(t.attrs,o):i.node(e).copy(o))}e.step(new u_(t,t,new Z(a.append(o),n,n),!0))}function j_(e,t){let n=e.resolve(t),r=n.index();return N_(n.nodeBefore,n.nodeAfter)&&n.parent.canReplace(r,r+1)}function M_(e,t){t.content.size||e.type.compatibleContent(t.type);let n=e.contentMatchAt(e.childCount),{linebreakReplacement:r}=e.type.schema;for(let i=0;i<t.childCount;i++){let a=t.child(i),o=a.type==r?e.type.schema.nodes.text:a.type;if(n=n.matchType(o),!n||!e.type.allowsMarks(a.marks))return!1}return n.validEnd}function N_(e,t){return!!(e&&t&&!e.isLeaf&&M_(e,t))}function P_(e,t,n=-1){let r=e.resolve(t);for(let e=r.depth;;e--){let i,a,o=r.index(e);if(e==r.depth?(i=r.nodeBefore,a=r.nodeAfter):n>0?(i=r.node(e+1),o++,a=r.node(e).maybeChild(o)):(i=r.node(e).maybeChild(o-1),a=r.node(e+1)),i&&!i.isTextblock&&N_(i,a)&&r.node(e).canReplace(o,o+1))return t;if(e==0)break;t=n<0?r.before(e):r.after(e)}}function F_(e,t,n){let r=null,{linebreakReplacement:i}=e.doc.type.schema,a=e.doc.resolve(t-n),o=a.node().type;if(i&&o.inlineContent){let e=o.whitespace==`pre`,t=!!o.contentMatch.matchType(i);e&&!t?r=!1:!e&&t&&(r=!0)}let s=e.steps.length;if(r===!1){let r=e.doc.resolve(t+n);E_(e,r.node(),r.before(),s)}o.inlineContent&&h_(e,t+n-1,o,a.node().contentMatchAt(a.index()),r==null);let c=e.mapping.slice(s),l=c.map(t-n);if(e.step(new u_(l,c.map(t+n,-1),Z.empty,!0)),r===!0){let t=e.doc.resolve(l);T_(e,t.node(),t.before(),e.steps.length)}return e}function I_(e,t,n){let r=e.resolve(t);if(r.parent.canReplaceWith(r.index(),r.index(),n))return t;if(r.parentOffset==0)for(let e=r.depth-1;e>=0;e--){let t=r.index(e);if(r.node(e).canReplaceWith(t,t,n))return r.before(e+1);if(t>0)return null}if(r.parentOffset==r.parent.content.size)for(let e=r.depth-1;e>=0;e--){let t=r.indexAfter(e);if(r.node(e).canReplaceWith(t,t,n))return r.after(e+1);if(t<r.node(e).childCount)return null}return null}function L_(e,t,n){let r=e.resolve(t);if(!n.content.size)return t;let i=n.content;for(let e=0;e<n.openStart;e++)i=i.firstChild.content;for(let e=1;e<=(n.openStart==0&&n.size?2:1);e++)for(let t=r.depth;t>=0;t--){let n=t==r.depth?0:r.pos<=(r.start(t+1)+r.end(t+1))/2?-1:1,a=r.index(t)+ +(n>0),o=r.node(t),s=!1;if(e==1)s=o.canReplace(a,a,i);else{let e=o.contentMatchAt(a).findWrapping(i.firstChild.type);s=e&&o.canReplaceWith(a,a,e[0])}if(s)return n==0?r.pos:n<0?r.before(t+1):r.after(t+1)}return null}function R_(e,t,n=t,r=Z.empty){if(t==n&&!r.size)return null;let i=e.resolve(t),a=e.resolve(n);return z_(i,a,r)?new u_(t,n,r):new B_(i,a,r).fit()}function z_(e,t,n){return!n.openStart&&!n.openEnd&&e.start()==t.start()&&e.parent.canReplace(e.index(),t.index(),n.content)}var B_=class{constructor(e,t,n){this.$from=e,this.$to=t,this.unplaced=n,this.frontier=[],this.placed=X.empty;for(let t=0;t<=e.depth;t++){let n=e.node(t);this.frontier.push({type:n.type,match:n.contentMatchAt(e.indexAfter(t))})}for(let t=e.depth;t>0;t--)this.placed=X.from(e.node(t).copy(this.placed))}get depth(){return this.frontier.length-1}fit(){for(;this.unplaced.size;){let e=this.findFittable();e?this.placeNodes(e):this.openMore()||this.dropNode()}let e=this.mustMoveInline(),t=this.placed.size-this.depth-this.$from.depth,n=this.$from,r=this.close(e<0?this.$to:n.doc.resolve(e));if(!r)return null;let i=this.placed,a=n.depth,o=r.depth;for(;a&&o&&i.childCount==1;)i=i.firstChild.content,a--,o--;let s=new Z(i,a,o);return e>-1?new d_(n.pos,e,this.$to.pos,this.$to.end(),s,t):s.size||n.pos!=this.$to.pos?new u_(n.pos,r.pos,s):null}findFittable(){let e=this.unplaced.openStart;for(let t=this.unplaced.content,n=0,r=this.unplaced.openEnd;n<e;n++){let i=t.firstChild;if(t.childCount>1&&(r=0),i.type.spec.isolating&&r<=n){e=n;break}t=i.content}for(let t=1;t<=2;t++)for(let n=t==1?e:this.unplaced.openStart;n>=0;n--){let e,r=null;n?(r=U_(this.unplaced.content,n-1).firstChild,e=r.content):e=this.unplaced.content;let i=e.firstChild;for(let e=this.depth;e>=0;e--){let{type:a,match:o}=this.frontier[e],s,c=null;if(t==1&&(i?o.matchType(i.type)||(c=o.fillBefore(X.from(i),!1)):r&&a.compatibleContent(r.type)))return{sliceDepth:n,frontierDepth:e,parent:r,inject:c};if(t==2&&i&&(s=o.findWrapping(i.type)))return{sliceDepth:n,frontierDepth:e,parent:r,wrap:s};if(r&&o.matchType(r.type))break}}}openMore(){let{content:e,openStart:t,openEnd:n}=this.unplaced,r=U_(e,t);return!r.childCount||r.firstChild.isLeaf?!1:(this.unplaced=new Z(e,t+1,Math.max(n,r.size+t>=e.size-n?t+1:0)),!0)}dropNode(){let{content:e,openStart:t,openEnd:n}=this.unplaced,r=U_(e,t);if(r.childCount<=1&&t>0){let i=e.size-t<=t+r.size;this.unplaced=new Z(V_(e,t-1,1),t-1,i?t-1:n)}else this.unplaced=new Z(V_(e,t,1),t,n)}placeNodes({sliceDepth:e,frontierDepth:t,parent:n,inject:r,wrap:i}){for(;this.depth>t;)this.closeFrontierNode();if(i)for(let e=0;e<i.length;e++)this.openFrontierNode(i[e]);let a=this.unplaced,o=n?n.content:a.content,s=a.openStart-e,c=0,l=[],{match:u,type:d}=this.frontier[t];if(r){for(let e=0;e<r.childCount;e++)l.push(r.child(e));u=u.matchFragment(r)}let f=o.size+e-(a.content.size-a.openEnd);for(;c<o.childCount;){let e=o.child(c),t=u.matchType(e.type);if(!t)break;c++,(c>1||s==0||e.content.size)&&(u=t,l.push(W_(e.mark(d.allowedMarks(e.marks)),c==1?s:0,c==o.childCount?f:-1)))}let p=c==o.childCount;p||(f=-1),this.placed=H_(this.placed,t,X.from(l)),this.frontier[t].match=u,p&&f<0&&n&&n.type==this.frontier[this.depth].type&&this.frontier.length>1&&this.closeFrontierNode();for(let e=0,t=o;e<f;e++){let e=t.lastChild;this.frontier.push({type:e.type,match:e.contentMatchAt(e.childCount)}),t=e.content}this.unplaced=p?e==0?Z.empty:new Z(V_(a.content,e-1,1),e-1,f<0?a.openEnd:e-1):new Z(V_(a.content,e,c),a.openStart,a.openEnd)}mustMoveInline(){if(!this.$to.parent.isTextblock)return-1;let e=this.frontier[this.depth],t;if(!e.type.isTextblock||!G_(this.$to,this.$to.depth,e.type,e.match,!1)||this.$to.depth==this.depth&&(t=this.findCloseLevel(this.$to))&&t.depth==this.depth)return-1;let{depth:n}=this.$to,r=this.$to.after(n);for(;n>1&&r==this.$to.end(--n);)++r;return r}findCloseLevel(e){scan:for(let t=Math.min(this.depth,e.depth);t>=0;t--){let{match:n,type:r}=this.frontier[t],i=t<e.depth&&e.end(t+1)==e.pos+(e.depth-(t+1)),a=G_(e,t,r,n,i);if(a){for(let n=t-1;n>=0;n--){let{match:t,type:r}=this.frontier[n],i=G_(e,n,r,t,!0);if(!i||i.childCount)continue scan}return{depth:t,fit:a,move:i?e.doc.resolve(e.after(t+1)):e}}}}close(e){let t=this.findCloseLevel(e);if(!t)return null;for(;this.depth>t.depth;)this.closeFrontierNode();t.fit.childCount&&(this.placed=H_(this.placed,t.depth,t.fit)),e=t.move;for(let n=t.depth+1;n<=e.depth;n++){let t=e.node(n),r=t.type.contentMatch.fillBefore(t.content,!0,e.index(n));this.openFrontierNode(t.type,t.attrs,r)}return e}openFrontierNode(e,t=null,n){let r=this.frontier[this.depth];r.match=r.match.matchType(e),this.placed=H_(this.placed,this.depth,X.from(e.create(t,n))),this.frontier.push({type:e,match:e.contentMatch})}closeFrontierNode(){let e=this.frontier.pop().match.fillBefore(X.empty,!0);e.childCount&&(this.placed=H_(this.placed,this.frontier.length,e))}};function V_(e,t,n){return t==0?e.cutByIndex(n,e.childCount):e.replaceChild(0,e.firstChild.copy(V_(e.firstChild.content,t-1,n)))}function H_(e,t,n){return t==0?e.append(n):e.replaceChild(e.childCount-1,e.lastChild.copy(H_(e.lastChild.content,t-1,n)))}function U_(e,t){for(let n=0;n<t;n++)e=e.firstChild.content;return e}function W_(e,t,n){if(t<=0)return e;let r=e.content;return t>1&&(r=r.replaceChild(0,W_(r.firstChild,t-1,r.childCount==1?n-1:0))),t>0&&(r=e.type.contentMatch.fillBefore(r).append(r),n<=0&&(r=r.append(e.type.contentMatch.matchFragment(r).fillBefore(X.empty,!0)))),e.copy(r)}function G_(e,t,n,r,i){let a=e.node(t),o=i?e.indexAfter(t):e.index(t);if(o==a.childCount&&!n.compatibleContent(a.type))return null;let s=r.fillBefore(a.content,!0,o);return s&&!K_(n,a.content,o)?s:null}function K_(e,t,n){for(let r=n;r<t.childCount;r++)if(!e.allowsMarks(t.child(r).marks))return!0;return!1}function q_(e){return e.spec.defining||e.spec.definingForContent}function J_(e,t,n,r){if(!r.size)return e.deleteRange(t,n);let i=e.doc.resolve(t),a=e.doc.resolve(n);if(z_(i,a,r))return e.step(new u_(t,n,r));let o=Q_(i,a);o[o.length-1]==0&&o.pop();let s=-(i.depth+1);o.unshift(s);for(let e=i.depth,t=i.pos-1;e>0;e--,t--){let n=i.node(e).type.spec;if(n.defining||n.definingAsContext||n.isolating)break;o.indexOf(e)>-1?s=e:i.before(e)==t&&o.splice(1,0,-e)}let c=o.indexOf(s),l=[],u=r.openStart;for(let e=r.content,t=0;;t++){let n=e.firstChild;if(l.push(n),t==r.openStart)break;e=n.content}for(let e=u-1;e>=0;e--){let t=l[e],n=q_(t.type);if(n&&!t.sameMarkup(i.node(Math.abs(s)-1)))u=e;else if(n||!t.type.isTextblock)break}for(let t=r.openStart;t>=0;t--){let s=(t+u+1)%(r.openStart+1),d=l[s];if(d)for(let t=0;t<o.length;t++){let l=o[(t+c)%o.length],u=!0;l<0&&(u=!1,l=-l);let f=i.node(l-1),p=i.index(l-1);if(f.canReplaceWith(p,p,d.type,d.marks))return e.replace(i.before(l),u?a.after(l):n,new Z(Y_(r.content,0,r.openStart,s),s,r.openEnd))}}let d=e.steps.length;for(let s=o.length-1;s>=0&&(e.replace(t,n,r),!(e.steps.length>d));s--){let e=o[s];e<0||(t=i.before(e),n=a.after(e))}}function Y_(e,t,n,r,i){if(t<n){let i=e.firstChild;e=e.replaceChild(0,i.copy(Y_(i.content,t+1,n,r,i)))}if(t>r){let t=i.contentMatchAt(0),n=t.fillBefore(e).append(e);e=n.append(t.matchFragment(n).fillBefore(X.empty,!0))}return e}function X_(e,t,n,r){if(!r.isInline&&t==n&&e.doc.resolve(t).parent.content.size){let i=I_(e.doc,t,r.type);i!=null&&(t=n=i)}e.replaceRange(t,n,new Z(X.from(r),0,0))}function Z_(e,t,n){let r=e.doc.resolve(t),i=e.doc.resolve(n);if(r.parent.isTextblock&&i.parent.isTextblock&&r.start()!=i.start()&&r.parentOffset==0&&i.parentOffset==0){let a=r.sharedDepth(n),o=!1;for(let e=r.depth;e>a;e--)r.node(e).type.spec.isolating&&(o=!0);for(let e=i.depth;e>a;e--)i.node(e).type.spec.isolating&&(o=!0);if(!o){for(let e=r.depth;e>0&&t==r.start(e);e--)t=r.before(e);for(let e=i.depth;e>0&&n==i.start(e);e--)n=i.before(e);r=e.doc.resolve(t),i=e.doc.resolve(n)}}let a=Q_(r,i);for(let t=0;t<a.length;t++){let n=a[t],o=t==a.length-1;if(o&&n==0||r.node(n).type.contentMatch.validEnd)return e.delete(r.start(n),i.end(n));if(n>0&&(o||r.node(n-1).canReplace(r.index(n-1),i.indexAfter(n-1))))return e.delete(r.before(n),i.after(n))}for(let a=1;a<=r.depth&&a<=i.depth;a++)if(t-r.start(a)==r.depth-a&&n>r.end(a)&&i.end(a)-n!=i.depth-a&&r.start(a-1)==i.start(a-1)&&r.node(a-1).canReplace(r.index(a-1),i.index(a-1)))return e.delete(r.before(a),n);e.delete(t,n)}function Q_(e,t){let n=[],r=Math.min(e.depth,t.depth);for(let i=r;i>=0;i--){let r=e.start(i);if(r<e.pos-(e.depth-i)||t.end(i)>t.pos+(t.depth-i)||e.node(i).type.spec.isolating||t.node(i).type.spec.isolating)break;(r==t.start(i)||i==e.depth&&i==t.depth&&e.parent.inlineContent&&t.parent.inlineContent&&i&&t.start(i-1)==r-1)&&n.push(i)}return n}var $_=class e extends r_{constructor(e,t,n){super(),this.pos=e,this.attr=t,this.value=n}apply(e){let t=e.nodeAt(this.pos);if(!t)return i_.fail(`No node at attribute step's position`);let n=Object.create(null);for(let e in t.attrs)n[e]=t.attrs[e];n[this.attr]=this.value;let r=t.type.create(n,null,t.marks);return i_.fromReplace(e,this.pos,this.pos+1,new Z(X.from(r),0,+!t.isLeaf))}getMap(){return e_.empty}invert(t){return new e(this.pos,this.attr,t.nodeAt(this.pos).attrs[this.attr])}map(t){let n=t.mapResult(this.pos,1);return n.deletedAfter?null:new e(n.pos,this.attr,this.value)}toJSON(){return{stepType:`attr`,pos:this.pos,attr:this.attr,value:this.value}}static fromJSON(t,n){if(typeof n.pos!=`number`||typeof n.attr!=`string`)throw RangeError(`Invalid input for AttrStep.fromJSON`);return new e(n.pos,n.attr,n.value)}};r_.jsonID(`attr`,$_);var ev=class e extends r_{constructor(e,t){super(),this.attr=e,this.value=t}apply(e){let t=Object.create(null);for(let n in e.attrs)t[n]=e.attrs[n];t[this.attr]=this.value;let n=e.type.create(t,e.content,e.marks);return i_.ok(n)}getMap(){return e_.empty}invert(t){return new e(this.attr,t.attrs[this.attr])}map(e){return this}toJSON(){return{stepType:`docAttr`,attr:this.attr,value:this.value}}static fromJSON(t,n){if(typeof n.attr!=`string`)throw RangeError(`Invalid input for DocAttrStep.fromJSON`);return new e(n.attr,n.value)}};r_.jsonID(`docAttr`,ev);var tv=class extends Error{};tv=function e(t){let n=Error.call(this,t);return n.__proto__=e.prototype,n},tv.prototype=Object.create(Error.prototype),tv.prototype.constructor=tv,tv.prototype.name=`TransformError`;var nv=class{constructor(e){this.doc=e,this.steps=[],this.docs=[],this.mapping=new t_}get before(){return this.docs.length?this.docs[0]:this.doc}step(e){let t=this.maybeStep(e);if(t.failed)throw new tv(t.failed);return this}maybeStep(e){let t=e.apply(this.doc);return t.failed||this.addStep(e,t.doc),t}get docChanged(){return this.steps.length>0}changedRange(){let e=1e9,t=-1e9;for(let n=0;n<this.mapping.maps.length;n++){let r=this.mapping.maps[n];n&&(e=r.map(e,1),t=r.map(t,-1)),r.forEach((n,r,i,a)=>{e=Math.min(e,i),t=Math.max(t,a)})}return e==1e9?null:{from:e,to:t}}addStep(e,t){this.docs.push(this.doc),this.steps.push(e),this.mapping.appendMap(e.getMap()),this.doc=t}replace(e,t=e,n=Z.empty){let r=R_(this.doc,e,t,n);return r&&this.step(r),this}replaceWith(e,t,n){return this.replace(e,t,new Z(X.from(n),0,0))}delete(e,t){return this.replace(e,t,Z.empty)}insert(e,t){return this.replaceWith(e,e,t)}replaceRange(e,t,n){return J_(this,e,t,n),this}replaceRangeWith(e,t,n){return X_(this,e,t,n),this}deleteRange(e,t){return Z_(this,e,t),this}lift(e,t){return v_(this,e,t),this}join(e,t=1){return F_(this,e,t),this}wrap(e,t){return C_(this,e,t),this}setBlockType(e,t=e,n,r=null){return w_(this,e,t,n,r),this}setNodeMarkup(e,t,n=null,r){return O_(this,e,t,n,r),this}setNodeAttribute(e,t,n){return this.step(new $_(e,t,n)),this}setDocAttribute(e,t){return this.step(new ev(e,t)),this}addNodeMark(e,t){return this.step(new c_(e,t)),this}removeNodeMark(e,t){let n=this.doc.nodeAt(e);if(!n)throw RangeError(`No node at position `+e);if(t instanceof Oh)t.isInSet(n.marks)&&this.step(new l_(e,t));else{let r=n.marks,i,a=[];for(;i=t.isInSet(r);)a.push(new l_(e,i)),r=i.removeFromSet(r);for(let e=a.length-1;e>=0;e--)this.step(a[e])}return this}split(e,t=1,n){return A_(this,e,t,n),this}addMark(e,t,n){return p_(this,e,t,n),this}removeMark(e,t,n){return m_(this,e,t,n),this}clearIncompatible(e,t,n){return h_(this,e,t,n),this}},rv=Object.create(null),iv=class{constructor(e,t,n){this.$anchor=e,this.$head=t,this.ranges=n||[new av(e.min(t),e.max(t))]}get anchor(){return this.$anchor.pos}get head(){return this.$head.pos}get from(){return this.$from.pos}get to(){return this.$to.pos}get $from(){return this.ranges[0].$from}get $to(){return this.ranges[0].$to}get empty(){let e=this.ranges;for(let t=0;t<e.length;t++)if(e[t].$from.pos!=e[t].$to.pos)return!1;return!0}content(){return this.$from.doc.slice(this.from,this.to,!0)}replace(e,t=Z.empty){let n=t.content.lastChild,r=null;for(let e=0;e<t.openEnd;e++)r=n,n=n.lastChild;let i=e.steps.length,a=this.ranges;for(let o=0;o<a.length;o++){let{$from:s,$to:c}=a[o],l=e.mapping.slice(i);e.replaceRange(l.map(s.pos),l.map(c.pos),o?Z.empty:t),o==0&&mv(e,i,(n?n.isInline:r&&r.isTextblock)?-1:1)}}replaceWith(e,t){let n=e.steps.length,r=this.ranges;for(let i=0;i<r.length;i++){let{$from:a,$to:o}=r[i],s=e.mapping.slice(n),c=s.map(a.pos),l=s.map(o.pos);i?e.deleteRange(c,l):(e.replaceRangeWith(c,l,t),mv(e,n,t.isInline?-1:1))}}static findFrom(e,t,n=!1){let r=e.parent.inlineContent?new cv(e):pv(e.node(0),e.parent,e.pos,e.index(),t,n);if(r)return r;for(let r=e.depth-1;r>=0;r--){let i=t<0?pv(e.node(0),e.node(r),e.before(r+1),e.index(r),t,n):pv(e.node(0),e.node(r),e.after(r+1),e.index(r)+1,t,n);if(i)return i}return null}static near(e,t=1){return this.findFrom(e,t)||this.findFrom(e,-t)||new dv(e.node(0))}static atStart(e){return pv(e,e,0,0,1)||new dv(e)}static atEnd(e){return pv(e,e,e.content.size,e.childCount,-1)||new dv(e)}static fromJSON(e,t){if(!t||!t.type)throw RangeError(`Invalid input for Selection.fromJSON`);let n=rv[t.type];if(!n)throw RangeError(`No selection type ${t.type} defined`);return n.fromJSON(e,t)}static jsonID(e,t){if(e in rv)throw RangeError(`Duplicate use of selection JSON ID `+e);return rv[e]=t,t.prototype.jsonID=e,t}getBookmark(){return cv.between(this.$anchor,this.$head).getBookmark()}};iv.prototype.visible=!0;var av=class{constructor(e,t){this.$from=e,this.$to=t}},ov=!1;function sv(e){!ov&&!e.parent.inlineContent&&(ov=!0,console.warn(`TextSelection endpoint not pointing into a node with inline content (`+e.parent.type.name+`)`))}var cv=class e extends iv{constructor(e,t=e){sv(e),sv(t),super(e,t)}get $cursor(){return this.$anchor.pos==this.$head.pos?this.$head:null}map(t,n){let r=t.resolve(n.map(this.head));if(!r.parent.inlineContent)return iv.near(r);let i=t.resolve(n.map(this.anchor));return new e(i.parent.inlineContent?i:r,r)}replace(e,t=Z.empty){if(super.replace(e,t),t==Z.empty){let t=this.$from.marksAcross(this.$to);t&&e.ensureMarks(t)}}eq(t){return t instanceof e&&t.anchor==this.anchor&&t.head==this.head}getBookmark(){return new lv(this.anchor,this.head)}toJSON(){return{type:`text`,anchor:this.anchor,head:this.head}}static fromJSON(t,n){if(typeof n.anchor!=`number`||typeof n.head!=`number`)throw RangeError(`Invalid input for TextSelection.fromJSON`);return new e(t.resolve(n.anchor),t.resolve(n.head))}static create(e,t,n=t){let r=e.resolve(t);return new this(r,n==t?r:e.resolve(n))}static between(t,n,r){let i=t.pos-n.pos;if((!r||i)&&(r=i>=0?1:-1),!n.parent.inlineContent){let e=iv.findFrom(n,r,!0)||iv.findFrom(n,-r,!0);if(e)n=e.$head;else return iv.near(n,r)}return t.parent.inlineContent||(i==0?t=n:(t=(iv.findFrom(t,-r,!0)||iv.findFrom(t,r,!0)).$anchor,t.pos<n.pos!=i<0&&(t=n))),new e(t,n)}};iv.jsonID(`text`,cv);var lv=class e{constructor(e,t){this.anchor=e,this.head=t}map(t){return new e(t.map(this.anchor),t.map(this.head))}resolve(e){return cv.between(e.resolve(this.anchor),e.resolve(this.head))}},Q=class e extends iv{constructor(e){let t=e.nodeAfter,n=e.node(0).resolve(e.pos+t.nodeSize);super(e,n),this.node=t}map(t,n){let{deleted:r,pos:i}=n.mapResult(this.anchor),a=t.resolve(i);return r?iv.near(a):new e(a)}content(){return new Z(X.from(this.node),0,0)}eq(t){return t instanceof e&&t.anchor==this.anchor}toJSON(){return{type:`node`,anchor:this.anchor}}getBookmark(){return new uv(this.anchor)}static fromJSON(t,n){if(typeof n.anchor!=`number`)throw RangeError(`Invalid input for NodeSelection.fromJSON`);return new e(t.resolve(n.anchor))}static create(t,n){return new e(t.resolve(n))}static isSelectable(e){return!e.isText&&e.type.spec.selectable!==!1}};Q.prototype.visible=!1,iv.jsonID(`node`,Q);var uv=class e{constructor(e){this.anchor=e}map(t){let{deleted:n,pos:r}=t.mapResult(this.anchor);return n?new lv(r,r):new e(r)}resolve(e){let t=e.resolve(this.anchor),n=t.nodeAfter;return n&&Q.isSelectable(n)?new Q(t):iv.near(t)}},dv=class e extends iv{constructor(e){super(e.resolve(0),e.resolve(e.content.size))}replace(e,t=Z.empty){if(t==Z.empty){e.delete(0,e.doc.content.size);let t=iv.atStart(e.doc);t.eq(e.selection)||e.setSelection(t)}else super.replace(e,t)}toJSON(){return{type:`all`}}static fromJSON(t){return new e(t)}map(t){return new e(t)}eq(t){return t instanceof e}getBookmark(){return fv}};iv.jsonID(`all`,dv);var fv={map(){return this},resolve(e){return new dv(e)}};function pv(e,t,n,r,i,a=!1){if(t.inlineContent)return cv.create(e,n);for(let o=r-(i>0?0:1);i>0?o<t.childCount:o>=0;o+=i){let r=t.child(o);if(!r.isAtom){let t=pv(e,r,n+i,i<0?r.childCount:0,i,a);if(t)return t}else if(!a&&Q.isSelectable(r))return Q.create(e,n-(i<0?r.nodeSize:0));n+=r.nodeSize*i}return null}function mv(e,t,n){let r=e.steps.length-1;if(r<t)return;let i=e.steps[r];if(!(i instanceof u_||i instanceof d_))return;let a=e.mapping.maps[r],o;a.forEach((e,t,n,r)=>{o??=r}),e.setSelection(iv.near(e.doc.resolve(o),n))}var hv=1,gv=2,_v=4,vv=class extends nv{constructor(e){super(e.doc),this.curSelectionFor=0,this.updated=0,this.meta=Object.create(null),this.time=Date.now(),this.curSelection=e.selection,this.storedMarks=e.storedMarks}get selection(){return this.curSelectionFor<this.steps.length&&(this.curSelection=this.curSelection.map(this.doc,this.mapping.slice(this.curSelectionFor)),this.curSelectionFor=this.steps.length),this.curSelection}setSelection(e){if(e.$from.doc!=this.doc)throw RangeError(`Selection passed to setSelection must point at the current document`);return this.curSelection=e,this.curSelectionFor=this.steps.length,this.updated=(this.updated|hv)&-3,this.storedMarks=null,this}get selectionSet(){return(this.updated&hv)>0}setStoredMarks(e){return this.storedMarks=e,this.updated|=gv,this}ensureMarks(e){return Oh.sameSet(this.storedMarks||this.selection.$from.marks(),e)||this.setStoredMarks(e),this}addStoredMark(e){return this.ensureMarks(e.addToSet(this.storedMarks||this.selection.$head.marks()))}removeStoredMark(e){return this.ensureMarks(e.removeFromSet(this.storedMarks||this.selection.$head.marks()))}get storedMarksSet(){return(this.updated&gv)>0}addStep(e,t){super.addStep(e,t),this.updated&=-3,this.storedMarks=null}setTime(e){return this.time=e,this}replaceSelection(e){return this.selection.replace(this,e),this}replaceSelectionWith(e,t=!0){let n=this.selection;return t&&(e=e.mark(this.storedMarks||(n.empty?n.$from.marks():n.$from.marksAcross(n.$to)||Oh.none))),n.replaceWith(this,e),this}deleteSelection(){return this.selection.replace(this),this}insertText(e,t,n){let r=this.doc.type.schema;if(t==null)return e?this.replaceSelectionWith(r.text(e),!0):this.deleteSelection();{if(n??=t,!e)return this.deleteRange(t,n);let i=this.storedMarks;if(!i){let e=this.doc.resolve(t);i=n==t?e.marks():e.marksAcross(this.doc.resolve(n))}return this.replaceRangeWith(t,n,r.text(e,i)),!this.selection.empty&&this.selection.to==t+e.length&&this.setSelection(iv.near(this.selection.$to)),this}}setMeta(e,t){return this.meta[typeof e==`string`?e:e.key]=t,this}getMeta(e){return this.meta[typeof e==`string`?e:e.key]}get isGeneric(){for(let e in this.meta)return!1;return!0}scrollIntoView(){return this.updated|=_v,this}get scrolledIntoView(){return(this.updated&_v)>0}};function yv(e,t){return!t||!e?e:e.bind(t)}var bv=class{constructor(e,t,n){this.name=e,this.init=yv(t.init,n),this.apply=yv(t.apply,n)}},xv=[new bv(`doc`,{init(e){return e.doc||e.schema.topNodeType.createAndFill()},apply(e){return e.doc}}),new bv(`selection`,{init(e,t){return e.selection||iv.atStart(t.doc)},apply(e){return e.selection}}),new bv(`storedMarks`,{init(e){return e.storedMarks||null},apply(e,t,n,r){return r.selection.$cursor?e.storedMarks:null}}),new bv(`scrollToSelection`,{init(){return 0},apply(e,t){return e.scrolledIntoView?t+1:t}})],Sv=class{constructor(e,t){this.schema=e,this.plugins=[],this.pluginsByKey=Object.create(null),this.fields=xv.slice(),t&&t.forEach(e=>{if(this.pluginsByKey[e.key])throw RangeError(`Adding different instances of a keyed plugin (`+e.key+`)`);this.plugins.push(e),this.pluginsByKey[e.key]=e,e.spec.state&&this.fields.push(new bv(e.key,e.spec.state,e))})}},Cv=class e{constructor(e){this.config=e}get schema(){return this.config.schema}get plugins(){return this.config.plugins}apply(e){return this.applyTransaction(e).state}filterTransaction(e,t=-1){for(let n=0;n<this.config.plugins.length;n++)if(n!=t){let t=this.config.plugins[n];if(t.spec.filterTransaction&&!t.spec.filterTransaction.call(t,e,this))return!1}return!0}applyTransaction(e){if(!this.filterTransaction(e))return{state:this,transactions:[]};let t=[e],n=this.applyInner(e),r=null;for(;;){let i=!1;for(let a=0;a<this.config.plugins.length;a++){let o=this.config.plugins[a];if(o.spec.appendTransaction){let s=r?r[a].n:0,c=r?r[a].state:this,l=s<t.length&&o.spec.appendTransaction.call(o,s?t.slice(s):t,c,n);if(l&&n.filterTransaction(l,a)){if(l.setMeta(`appendedTransaction`,e),!r){r=[];for(let e=0;e<this.config.plugins.length;e++)r.push(e<a?{state:n,n:t.length}:{state:this,n:0})}t.push(l),n=n.applyInner(l),i=!0}r&&(r[a]={state:n,n:t.length})}}if(!i)return{state:n,transactions:t}}}applyInner(t){if(!t.before.eq(this.doc))throw RangeError(`Applying a mismatched transaction`);let n=new e(this.config),r=this.config.fields;for(let e=0;e<r.length;e++){let i=r[e];n[i.name]=i.apply(t,this[i.name],this,n)}return n}get tr(){return new vv(this)}static create(t){let n=new Sv(t.doc?t.doc.type.schema:t.schema,t.plugins),r=new e(n);for(let e=0;e<n.fields.length;e++)r[n.fields[e].name]=n.fields[e].init(t,r);return r}reconfigure(t){let n=new Sv(this.schema,t.plugins),r=n.fields,i=new e(n);for(let e=0;e<r.length;e++){let n=r[e].name;i[n]=this.hasOwnProperty(n)?this[n]:r[e].init(t,i)}return i}toJSON(e){let t={doc:this.doc.toJSON(),selection:this.selection.toJSON()};if(this.storedMarks&&(t.storedMarks=this.storedMarks.map(e=>e.toJSON())),e&&typeof e==`object`)for(let n in e){if(n==`doc`||n==`selection`)throw RangeError("The JSON fields `doc` and `selection` are reserved");let r=e[n],i=r.spec.state;i&&i.toJSON&&(t[n]=i.toJSON.call(r,this[r.key]))}return t}static fromJSON(t,n,r){if(!n)throw RangeError(`Invalid input for EditorState.fromJSON`);if(!t.schema)throw RangeError(`Required config field 'schema' missing`);let i=new Sv(t.schema,t.plugins),a=new e(i);return i.fields.forEach(e=>{if(e.name==`doc`)a.doc=Jh.fromJSON(t.schema,n.doc);else if(e.name==`selection`)a.selection=iv.fromJSON(a.doc,n.selection);else if(e.name==`storedMarks`)n.storedMarks&&(a.storedMarks=n.storedMarks.map(t.schema.markFromJSON));else{if(r)for(let i in r){let o=r[i],s=o.spec.state;if(o.key==e.name&&s&&s.fromJSON&&Object.prototype.hasOwnProperty.call(n,i)){a[e.name]=s.fromJSON.call(o,t,n[i],a);return}}a[e.name]=e.init(t,a)}}),a}};function wv(e,t,n){for(let r in e){let i=e[r];i instanceof Function?i=i.bind(t):r==`handleDOMEvents`&&(i=wv(i,t,{})),n[r]=i}return n}var Tv=class{constructor(e){this.spec=e,this.props={},e.props&&wv(e.props,this,this.props),this.key=e.key?e.key.key:Dv(`plugin`)}getState(e){return e[this.key]}},Ev=Object.create(null);function Dv(e){return e in Ev?e+`$`+ ++Ev[e]:(Ev[e]=0,e+`$`)}var Ov=class{constructor(e=`key`){this.key=Dv(e)}get(e){return e.config.pluginsByKey[this.key]}getState(e){return e[this.key]}},kv=function(e){for(var t=0;;t++)if(e=e.previousSibling,!e)return t},Av=function(e){let t=e.assignedSlot||e.parentNode;return t&&t.nodeType==11?t.host:t},jv=null,Mv=function(e,t,n){let r=jv||=document.createRange();return r.setEnd(e,n??e.nodeValue.length),r.setStart(e,t||0),r},Nv=function(){jv=null},Pv=function(e,t,n,r){return n&&(Iv(e,t,n,r,-1)||Iv(e,t,n,r,1))},Fv=/^(img|br|input|textarea|hr)$/i;function Iv(e,t,n,r,i){for(;;){if(e==n&&t==r)return!0;if(t==(i<0?0:Lv(e))){let n=e.parentNode;if(!n||n.nodeType!=1||Vv(e)||Fv.test(e.nodeName)||e.contentEditable==`false`)return!1;t=kv(e)+(i<0?0:1),e=n}else if(e.nodeType==1){let n=e.childNodes[t+(i<0?-1:0)];if(n.nodeType==1&&n.contentEditable==`false`)if(n.pmViewDesc?.ignoreForSelection)t+=i;else return!1;else e=n,t=i<0?Lv(e):0}else return!1}}function Lv(e){return e.nodeType==3?e.nodeValue.length:e.childNodes.length}function Rv(e,t){for(;;){if(e.nodeType==3&&t)return e;if(e.nodeType==1&&t>0){if(e.contentEditable==`false`)return null;e=e.childNodes[t-1],t=Lv(e)}else if(e.parentNode&&!Vv(e))t=kv(e),e=e.parentNode;else return null}}function zv(e,t){for(;;){if(e.nodeType==3&&t<e.nodeValue.length)return e;if(e.nodeType==1&&t<e.childNodes.length){if(e.contentEditable==`false`)return null;e=e.childNodes[t],t=0}else if(e.parentNode&&!Vv(e))t=kv(e)+1,e=e.parentNode;else return null}}function Bv(e,t,n){for(let r=t==0,i=t==Lv(e);r||i;){if(e==n)return!0;let t=kv(e);if(e=e.parentNode,!e)return!1;r&&=t==0,i&&=t==Lv(e)}}function Vv(e){let t;for(let n=e;n&&!(t=n.pmViewDesc);n=n.parentNode);return t&&t.node&&t.node.isBlock&&(t.dom==e||t.contentDOM==e)}var Hv=function(e){return e.focusNode&&Pv(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset)};function Uv(e,t){let n=document.createEvent(`Event`);return n.initEvent(`keydown`,!0,!0),n.keyCode=e,n.key=n.code=t,n}function Wv(e){let t=e.activeElement;for(;t&&t.shadowRoot;)t=t.shadowRoot.activeElement;return t}function Gv(e,t,n){if(e.caretPositionFromPoint)try{let r=e.caretPositionFromPoint(t,n);if(r)return{node:r.offsetNode,offset:Math.min(Lv(r.offsetNode),r.offset)}}catch{}if(e.caretRangeFromPoint){let r=e.caretRangeFromPoint(t,n);if(r)return{node:r.startContainer,offset:Math.min(Lv(r.startContainer),r.startOffset)}}}var Kv=typeof navigator<`u`?navigator:null,qv=typeof document<`u`?document:null,Jv=Kv&&Kv.userAgent||``,Yv=/Edge\/(\d+)/.exec(Jv),Xv=/MSIE \d/.exec(Jv),Zv=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(Jv),Qv=!!(Xv||Zv||Yv),$v=Xv?document.documentMode:Zv?+Zv[1]:Yv?+Yv[1]:0,ey=!Qv&&/gecko\/(\d+)/i.test(Jv);ey&&+(/Firefox\/(\d+)/.exec(Jv)||[0,0])[1];var ty=!Qv&&/Chrome\/(\d+)/.exec(Jv),ny=!!ty,ry=ty?+ty[1]:0,iy=!Qv&&!!Kv&&/Apple Computer/.test(Kv.vendor),ay=iy&&(/Mobile\/\w+/.test(Jv)||!!Kv&&Kv.maxTouchPoints>2),oy=ay||(Kv?/Mac/.test(Kv.platform):!1),sy=Kv?/Win/.test(Kv.platform):!1,cy=/Android \d/.test(Jv),ly=!!qv&&`webkitFontSmoothing`in qv.documentElement.style,uy=ly?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function dy(e){let t=e.defaultView&&e.defaultView.visualViewport;return t?{left:0,right:t.width,top:0,bottom:t.height}:{left:0,right:e.documentElement.clientWidth,top:0,bottom:e.documentElement.clientHeight}}function fy(e,t){return typeof e==`number`?e:e[t]}function py(e){let t=e.getBoundingClientRect(),n=t.width/e.offsetWidth||1,r=t.height/e.offsetHeight||1;return{left:t.left,right:t.left+e.clientWidth*n,top:t.top,bottom:t.top+e.clientHeight*r}}function my(e,t,n){if(!ky(t)&&t.left==0)return;let r=e.someProp(`scrollThreshold`)||0,i=e.someProp(`scrollMargin`)||5,a=e.dom.ownerDocument;for(let o=n||e.dom;o;){if(o.nodeType!=1){o=Av(o);continue}let e=o,n=e==a.body,s=n?dy(a):py(e),c=0,l=0;if(t.top<s.top+fy(r,`top`)?l=-(s.top-t.top+fy(i,`top`)):t.bottom>s.bottom-fy(r,`bottom`)&&(l=t.bottom-t.top>s.bottom-s.top?t.top+fy(i,`top`)-s.top:t.bottom-s.bottom+fy(i,`bottom`)),t.left<s.left+fy(r,`left`)?c=-(s.left-t.left+fy(i,`left`)):t.right>s.right-fy(r,`right`)&&(c=t.right-s.right+fy(i,`right`)),c||l)if(n)a.defaultView.scrollBy(c,l);else{let n=e.scrollLeft,r=e.scrollTop;l&&(e.scrollTop+=l),c&&(e.scrollLeft+=c);let i=e.scrollLeft-n,a=e.scrollTop-r;t={left:t.left-i,top:t.top-a,right:t.right-i,bottom:t.bottom-a}}let u=n?`fixed`:getComputedStyle(o).position;if(/^(fixed|sticky)$/.test(u))break;o=u==`absolute`?o.offsetParent:Av(o)}}function hy(e){let t=e.dom.getBoundingClientRect(),n=Math.max(0,t.top),r,i;for(let a=(t.left+t.right)/2,o=n+1;o<Math.min(innerHeight,t.bottom);o+=5){let t=e.root.elementFromPoint(a,o);if(!t||t==e.dom||!e.dom.contains(t))continue;let s=t.getBoundingClientRect();if(s.top>=n-20){r=t,i=s.top;break}}return{refDOM:r,refTop:i,stack:gy(e.dom)}}function gy(e){let t=[],n=e.ownerDocument;for(let r=e;r&&(t.push({dom:r,top:r.scrollTop,left:r.scrollLeft}),e!=n);r=Av(r));return t}function _y({refDOM:e,refTop:t,stack:n}){let r=e?e.getBoundingClientRect().top:0;vy(n,r==0?0:r-t)}function vy(e,t){for(let n=0;n<e.length;n++){let{dom:r,top:i,left:a}=e[n];r.scrollTop!=i+t&&(r.scrollTop=i+t),r.scrollLeft!=a&&(r.scrollLeft=a)}}var yy=null;function by(e){if(e.setActive)return e.setActive();if(yy)return e.focus(yy);let t=gy(e);e.focus(yy==null?{get preventScroll(){return yy={preventScroll:!0},!0}}:void 0),yy||(yy=!1,vy(t,0))}function xy(e,t){let n,r=2e8,i,a=0,o=t.top,s=t.top,c,l;for(let u=e.firstChild,d=0;u;u=u.nextSibling,d++){let e;if(u.nodeType==1)e=u.getClientRects();else if(u.nodeType==3)e=Mv(u).getClientRects();else continue;for(let f=0;f<e.length;f++){let p=e[f];if(p.top<=o&&p.bottom>=s){o=Math.max(p.bottom,o),s=Math.min(p.top,s);let e=p.left>t.left?p.left-t.left:p.right<t.left?t.left-p.right:0;if(e<r){n=u,r=e,i=e&&n.nodeType==3?{left:p.right<t.left?p.right:p.left,top:t.top}:t,u.nodeType==1&&e&&(a=d+ +(t.left>=(p.left+p.right)/2));continue}}else p.top>t.top&&!c&&p.left<=t.left&&p.right>=t.left&&(c=u,l={left:Math.max(p.left,Math.min(p.right,t.left)),top:p.top});!n&&(t.left>=p.right&&t.top>=p.top||t.left>=p.left&&t.top>=p.bottom)&&(a=d+1)}}return!n&&c&&(n=c,i=l,r=0),n&&n.nodeType==3?Sy(n,i):!n||r&&n.nodeType==1?{node:e,offset:a}:xy(n,i)}function Sy(e,t){let n=e.nodeValue.length,r=document.createRange(),i;for(let a=0;a<n;a++){r.setEnd(e,a+1),r.setStart(e,a);let n=Ay(r,1);if(n.top!=n.bottom&&Cy(t,n)){i={node:e,offset:a+ +(t.left>=(n.left+n.right)/2)};break}}return r.detach(),i||{node:e,offset:0}}function Cy(e,t){return e.left>=t.left-1&&e.left<=t.right+1&&e.top>=t.top-1&&e.top<=t.bottom+1}function wy(e,t){let n=e.parentNode;return n&&/^li$/i.test(n.nodeName)&&t.left<e.getBoundingClientRect().left?n:e}function Ty(e,t,n){let{node:r,offset:i}=xy(t,n),a=-1;if(r.nodeType==1&&!r.firstChild){let e=r.getBoundingClientRect();a=e.left!=e.right&&n.left>(e.left+e.right)/2?1:-1}return e.docView.posFromDOM(r,i,a)}function Ey(e,t,n,r){let i=-1;for(let n=t,a=!1;n!=e.dom;){let t=e.docView.nearestDesc(n,!0),o;if(!t)return null;if(t.dom.nodeType==1&&(t.node.isBlock&&t.parent||!t.contentDOM)&&((o=t.dom.getBoundingClientRect()).width||o.height)&&(t.node.isBlock&&t.parent&&!/^T(R|BODY|HEAD|FOOT)$/.test(t.dom.nodeName)&&(!a&&o.left>r.left||o.top>r.top?i=t.posBefore:(!a&&o.right<r.left||o.bottom<r.top)&&(i=t.posAfter),a=!0),!t.contentDOM&&i<0&&!t.node.isText))return(t.node.isBlock?r.top<(o.top+o.bottom)/2:r.left<(o.left+o.right)/2)?t.posBefore:t.posAfter;n=t.dom.parentNode}return i>-1?i:e.docView.posFromDOM(t,n,-1)}function Dy(e,t,n){let r=e.childNodes.length;if(r&&n.top<n.bottom)for(let i=Math.max(0,Math.min(r-1,Math.floor(r*(t.top-n.top)/(n.bottom-n.top))-2)),a=i;;){let n=e.childNodes[a];if(n.nodeType==1){let e=n.getClientRects();for(let r=0;r<e.length;r++){let i=e[r];if(Cy(t,i))return Dy(n,t,i)}}if((a=(a+1)%r)==i)break}return e}function Oy(e,t){let n=e.dom.ownerDocument,r,i=0,a=Gv(n,t.left,t.top);a&&({node:r,offset:i}=a);let o=(e.root.elementFromPoint?e.root:n).elementFromPoint(t.left,t.top),s;if(!o||!e.dom.contains(o.nodeType==1?o:o.parentNode)){let n=e.dom.getBoundingClientRect();if(!Cy(t,n)||(o=Dy(e.dom,t,n),!o))return null}if(iy)for(let e=o;r&&e;e=Av(e))e.draggable&&(r=void 0);if(o=wy(o,t),r){if(ey&&r.nodeType==1&&(i=Math.min(i,r.childNodes.length),i<r.childNodes.length)){let e=r.childNodes[i],n;e.nodeName==`IMG`&&(n=e.getBoundingClientRect()).right<=t.left&&n.bottom>t.top&&i++}let n;ly&&i&&r.nodeType==1&&(n=r.childNodes[i-1]).nodeType==1&&n.contentEditable==`false`&&n.getBoundingClientRect().top>=t.top&&i--,r==e.dom&&i==r.childNodes.length-1&&r.lastChild.nodeType==1&&t.top>r.lastChild.getBoundingClientRect().bottom?s=e.state.doc.content.size:(i==0||r.nodeType!=1||r.childNodes[i-1].nodeName!=`BR`)&&(s=Ey(e,r,i,t))}s??=Ty(e,o,t);let c=e.docView.nearestDesc(o,!0);return{pos:s,inside:c?c.posAtStart-c.border:-1}}function ky(e){return e.top<e.bottom||e.left<e.right}function Ay(e,t){let n=e.getClientRects();if(n.length){let e=n[t<0?0:n.length-1];if(ky(e))return e}return Array.prototype.find.call(n,ky)||e.getBoundingClientRect()}var jy=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;function My(e,t,n){let{node:r,offset:i,atom:a}=e.docView.domFromPos(t,n<0?-1:1),o=ly||ey;if(r.nodeType==3)if(o&&(jy.test(r.nodeValue)||(n<0?!i:i==r.nodeValue.length))){let e=Ay(Mv(r,i,i),n);if(ey&&i&&/\s/.test(r.nodeValue[i-1])&&i<r.nodeValue.length){let t=Ay(Mv(r,i-1,i-1),-1);if(t.top==e.top){let n=Ay(Mv(r,i,i+1),-1);if(n.top!=e.top)return Ny(n,n.left<t.left)}}return e}else{let e=i,t=i,a=n<0?1:-1;return n<0&&!i?(t++,a=-1):n>=0&&i==r.nodeValue.length?(e--,a=1):n<0?e--:t++,Ny(Ay(Mv(r,e,t),a),a<0)}if(!e.state.doc.resolve(t-(a||0)).parent.inlineContent){if(a==null&&i&&(n<0||i==Lv(r))){let e=r.childNodes[i-1];if(e.nodeType==1)return Py(e.getBoundingClientRect(),!1)}if(a==null&&i<Lv(r)){let e=r.childNodes[i];if(e.nodeType==1)return Py(e.getBoundingClientRect(),!0)}return Py(r.getBoundingClientRect(),n>=0)}if(a==null&&i&&(n<0||i==Lv(r))){let e=r.childNodes[i-1],t=e.nodeType==3?Mv(e,Lv(e)-+!o):e.nodeType==1&&(e.nodeName!=`BR`||!e.nextSibling)?e:null;if(t)return Ny(Ay(t,1),!1)}if(a==null&&i<Lv(r)){let e=r.childNodes[i];for(;e.pmViewDesc&&e.pmViewDesc.ignoreForCoords;)e=e.nextSibling;let t=e?e.nodeType==3?Mv(e,0,+!o):e.nodeType==1?e:null:null;if(t)return Ny(Ay(t,-1),!0)}return Ny(Ay(r.nodeType==3?Mv(r):r,-n),n>=0)}function Ny(e,t){if(e.width==0)return e;let n=t?e.left:e.right;return{top:e.top,bottom:e.bottom,left:n,right:n}}function Py(e,t){if(e.height==0)return e;let n=t?e.top:e.bottom;return{top:n,bottom:n,left:e.left,right:e.right}}function Fy(e,t,n){let r=e.state,i=e.root.activeElement;r!=t&&e.updateState(t),i!=e.dom&&e.focus();try{return n()}finally{r!=t&&e.updateState(r),i!=e.dom&&i&&i.focus()}}function Iy(e,t,n){let r=t.selection,i=n==`up`?r.$from:r.$to;return Fy(e,t,()=>{let{node:t}=e.docView.domFromPos(i.pos,n==`up`?-1:1);for(;;){let n=e.docView.nearestDesc(t,!0);if(!n)break;if(n.node.isBlock){t=n.contentDOM||n.dom;break}t=n.dom.parentNode}let r=My(e,i.pos,1);for(let e=t.firstChild;e;e=e.nextSibling){let t;if(e.nodeType==1)t=e.getClientRects();else if(e.nodeType==3)t=Mv(e,0,e.nodeValue.length).getClientRects();else continue;for(let e=0;e<t.length;e++){let i=t[e];if(i.bottom>i.top+1&&(n==`up`?r.top-i.top>(i.bottom-r.top)*2:i.bottom-r.bottom>(r.bottom-i.top)*2))return!1}}return!0})}var Ly=/[\u0590-\u08ac]/;function Ry(e,t,n){let{$head:r}=t.selection;if(!r.parent.isTextblock)return!1;let i=r.parentOffset,a=!i,o=i==r.parent.content.size,s=e.domSelection();return s?!Ly.test(r.parent.textContent)||!s.modify?n==`left`||n==`backward`?a:o:Fy(e,t,()=>{let{focusNode:t,focusOffset:i,anchorNode:a,anchorOffset:o}=e.domSelectionRange(),c=s.caretBidiLevel;s.modify(`move`,n,`character`);let l=r.depth?e.docView.domAfterPos(r.before()):e.dom,{focusNode:u,focusOffset:d}=e.domSelectionRange(),f=u&&!l.contains(u.nodeType==1?u:u.parentNode)||t==u&&i==d;try{s.collapse(a,o),t&&(t!=a||i!=o)&&s.extend&&s.extend(t,i)}catch{}return c!=null&&(s.caretBidiLevel=c),f}):r.pos==r.start()||r.pos==r.end()}var zy=null,By=null,Vy=!1;function Hy(e,t,n){return zy==t&&By==n?Vy:(zy=t,By=n,Vy=n==`up`||n==`down`?Iy(e,t,n):Ry(e,t,n))}var Uy=0,Wy=1,Gy=2,Ky=3,qy=class{constructor(e,t,n,r){this.parent=e,this.children=t,this.dom=n,this.contentDOM=r,this.dirty=Uy,n.pmViewDesc=this}matchesWidget(e){return!1}matchesMark(e){return!1}matchesNode(e,t,n){return!1}matchesHack(e){return!1}parseRule(){return null}stopEvent(e){return!1}get size(){let e=0;for(let t=0;t<this.children.length;t++)e+=this.children[t].size;return e}get border(){return 0}destroy(){this.parent=void 0,this.dom.pmViewDesc==this&&(this.dom.pmViewDesc=void 0);for(let e=0;e<this.children.length;e++)this.children[e].destroy()}posBeforeChild(e){for(let t=0,n=this.posAtStart;;t++){let r=this.children[t];if(r==e)return n;n+=r.size}}get posBefore(){return this.parent.posBeforeChild(this)}get posAtStart(){return this.parent?this.parent.posBeforeChild(this)+this.border:0}get posAfter(){return this.posBefore+this.size}get posAtEnd(){return this.posAtStart+this.size-2*this.border}localPosFromDOM(e,t,n){if(this.contentDOM&&this.contentDOM.contains(e.nodeType==1?e:e.parentNode))if(n<0){let n,r;if(e==this.contentDOM)n=e.childNodes[t-1];else{for(;e.parentNode!=this.contentDOM;)e=e.parentNode;n=e.previousSibling}for(;n&&!((r=n.pmViewDesc)&&r.parent==this);)n=n.previousSibling;return n?this.posBeforeChild(r)+r.size:this.posAtStart}else{let n,r;if(e==this.contentDOM)n=e.childNodes[t];else{for(;e.parentNode!=this.contentDOM;)e=e.parentNode;n=e.nextSibling}for(;n&&!((r=n.pmViewDesc)&&r.parent==this);)n=n.nextSibling;return n?this.posBeforeChild(r):this.posAtEnd}let r;if(e==this.dom&&this.contentDOM)r=t>kv(this.contentDOM);else if(this.contentDOM&&this.contentDOM!=this.dom&&this.dom.contains(this.contentDOM))r=e.compareDocumentPosition(this.contentDOM)&2;else if(this.dom.firstChild){if(t==0)for(let t=e;;t=t.parentNode){if(t==this.dom){r=!1;break}if(t.previousSibling)break}if(r==null&&t==e.childNodes.length)for(let t=e;;t=t.parentNode){if(t==this.dom){r=!0;break}if(t.nextSibling)break}}return r??n>0?this.posAtEnd:this.posAtStart}nearestDesc(e,t=!1){for(let n=!0,r=e;r;r=r.parentNode){let i=this.getDesc(r),a;if(i&&(!t||i.node))if(n&&(a=i.nodeDOM)&&!(a.nodeType==1?a.contains(e.nodeType==1?e:e.parentNode):a==e))n=!1;else return i}}getDesc(e){let t=e.pmViewDesc;for(let e=t;e;e=e.parent)if(e==this)return t}posFromDOM(e,t,n){for(let r=e;r;r=r.parentNode){let i=this.getDesc(r);if(i)return i.localPosFromDOM(e,t,n)}return-1}descAt(e){for(let t=0,n=0;t<this.children.length;t++){let r=this.children[t],i=n+r.size;if(n==e&&i!=n){for(;!r.border&&r.children.length;)for(let e=0;e<r.children.length;e++){let t=r.children[e];if(t.size){r=t;break}}return r}if(e<i)return r.descAt(e-n-r.border);n=i}}domFromPos(e,t){if(!this.contentDOM)return{node:this.dom,offset:0,atom:e+1};let n=0,r=0;for(let t=0;n<this.children.length;n++){let i=this.children[n],a=t+i.size;if(a>e||i instanceof eb){r=e-t;break}t=a}if(r)return this.children[n].domFromPos(r-this.children[n].border,t);for(let e;n&&!(e=this.children[n-1]).size&&e instanceof Jy&&e.side>=0;n--);if(t<=0){let e,r=!0;for(;e=n?this.children[n-1]:null,!(!e||e.dom.parentNode==this.contentDOM);n--,r=!1);return e&&t&&r&&!e.border&&!e.domAtom?e.domFromPos(e.size,t):{node:this.contentDOM,offset:e?kv(e.dom)+1:0}}else{let e,r=!0;for(;e=n<this.children.length?this.children[n]:null,!(!e||e.dom.parentNode==this.contentDOM);n++,r=!1);return e&&r&&!e.border&&!e.domAtom?e.domFromPos(0,t):{node:this.contentDOM,offset:e?kv(e.dom):this.contentDOM.childNodes.length}}}parseRange(e,t,n=0){if(this.children.length==0)return{node:this.contentDOM,from:e,to:t,fromOffset:0,toOffset:this.contentDOM.childNodes.length};let r=-1,i=-1;for(let a=n,o=0;;o++){let n=this.children[o],s=a+n.size;if(r==-1&&e<=s){let i=a+n.border;if(e>=i&&t<=s-n.border&&n.node&&n.contentDOM&&this.contentDOM.contains(n.contentDOM))return n.parseRange(e,t,i);e=a;for(let t=o;t>0;t--){let n=this.children[t-1];if(n.size&&n.dom.parentNode==this.contentDOM&&!n.emptyChildAt(1)){r=kv(n.dom)+1;break}e-=n.size}r==-1&&(r=0)}if(r>-1&&(s>t||o==this.children.length-1)){t=s;for(let e=o+1;e<this.children.length;e++){let n=this.children[e];if(n.size&&n.dom.parentNode==this.contentDOM&&!n.emptyChildAt(-1)){i=kv(n.dom);break}t+=n.size}i==-1&&(i=this.contentDOM.childNodes.length);break}a=s}return{node:this.contentDOM,from:e,to:t,fromOffset:r,toOffset:i}}emptyChildAt(e){if(this.border||!this.contentDOM||!this.children.length)return!1;let t=this.children[e<0?0:this.children.length-1];return t.size==0||t.emptyChildAt(e)}domAfterPos(e){let{node:t,offset:n}=this.domFromPos(e,0);if(t.nodeType!=1||n==t.childNodes.length)throw RangeError(`No node after pos `+e);return t.childNodes[n]}setSelection(e,t,n,r=!1){let i=Math.min(e,t),a=Math.max(e,t);for(let o=0,s=0;o<this.children.length;o++){let c=this.children[o],l=s+c.size;if(i>s&&a<l)return c.setSelection(e-s-c.border,t-s-c.border,n,r);s=l}let o=this.domFromPos(e,e?-1:1),s=t==e?o:this.domFromPos(t,t?-1:1),c=n.root.getSelection(),l=n.domSelectionRange(),u=!1;if((ey||iy)&&e==t){let{node:e,offset:t}=o;if(e.nodeType==3){if(u=!!(t&&e.nodeValue[t-1]==`
13
+ `),u&&t==e.nodeValue.length)for(let t=e,n;t;t=t.parentNode){if(n=t.nextSibling){n.nodeName==`BR`&&(o=s={node:n.parentNode,offset:kv(n)+1});break}let e=t.pmViewDesc;if(e&&e.node&&e.node.isBlock)break}}else{let n=e.childNodes[t-1];u=n&&(n.nodeName==`BR`||n.contentEditable==`false`)}}if(ey&&l.focusNode&&l.focusNode!=s.node&&l.focusNode.nodeType==1){let e=l.focusNode.childNodes[l.focusOffset];e&&e.contentEditable==`false`&&(r=!0)}if(!(r||u&&iy)&&Pv(o.node,o.offset,l.anchorNode,l.anchorOffset)&&Pv(s.node,s.offset,l.focusNode,l.focusOffset))return;let d=!1;if((c.extend||e==t)&&!(u&&ey)){c.collapse(o.node,o.offset);try{e!=t&&c.extend(s.node,s.offset),d=!0}catch{}}if(!d){if(e>t){let e=o;o=s,s=e}let n=document.createRange();n.setEnd(s.node,s.offset),n.setStart(o.node,o.offset),c.removeAllRanges(),c.addRange(n)}}ignoreMutation(e){return!this.contentDOM&&e.type!=`selection`}get contentLost(){return this.contentDOM&&this.contentDOM!=this.dom&&!this.dom.contains(this.contentDOM)}markDirty(e,t){for(let n=0,r=0;r<this.children.length;r++){let i=this.children[r],a=n+i.size;if(n==a?e<=a&&t>=n:e<a&&t>n){let r=n+i.border,o=a-i.border;if(e>=r&&t<=o){this.dirty=e==n||t==a?Gy:Wy,e==r&&t==o&&(i.contentLost||i.dom.parentNode!=this.contentDOM)?i.dirty=Ky:i.markDirty(e-r,t-r);return}else i.dirty=i.dom==i.contentDOM&&i.dom.parentNode==this.contentDOM&&!i.children.length?Gy:Ky}n=a}this.dirty=Gy}markParentsDirty(){let e=1;for(let t=this.parent;t;t=t.parent,e++){let n=e==1?Gy:Wy;t.dirty<n&&(t.dirty=n)}}get domAtom(){return!1}get ignoreForCoords(){return!1}get ignoreForSelection(){return!1}isText(e){return!1}},Jy=class extends qy{constructor(e,t,n,r){let i,a=t.type.toDOM;if(typeof a==`function`&&(a=a(n,()=>{if(!i)return r;if(i.parent)return i.parent.posBeforeChild(i)})),!t.type.spec.raw){if(a.nodeType!=1){let e=document.createElement(`span`);e.appendChild(a),a=e}a.contentEditable=`false`,a.classList.add(`ProseMirror-widget`)}super(e,[],a,null),this.widget=t,this.widget=t,i=this}matchesWidget(e){return this.dirty==Uy&&e.type.eq(this.widget.type)}parseRule(){return{ignore:!0}}stopEvent(e){let t=this.widget.spec.stopEvent;return t?t(e):!1}ignoreMutation(e){return e.type!=`selection`||this.widget.spec.ignoreSelection}destroy(){this.widget.type.destroy(this.dom),super.destroy()}get domAtom(){return!0}get ignoreForSelection(){return!!this.widget.type.spec.relaxedSide}get side(){return this.widget.type.side}},Yy=class extends qy{constructor(e,t,n,r){super(e,[],t,null),this.textDOM=n,this.text=r}get size(){return this.text.length}localPosFromDOM(e,t){return e==this.textDOM?this.posAtStart+t:this.posAtStart+(t?this.size:0)}domFromPos(e){return{node:this.textDOM,offset:e}}ignoreMutation(e){return e.type===`characterData`&&e.target.nodeValue==e.oldValue}},Xy=class e extends qy{constructor(e,t,n,r,i){super(e,[],n,r),this.mark=t,this.spec=i}static create(t,n,r,i){let a=i.nodeViews[n.type.name],o=a&&a(n,i,r);return(!o||!o.dom)&&(o=Lg.renderSpec(document,n.type.spec.toDOM(n,r),null,n.attrs)),new e(t,n,o.dom,o.contentDOM||o.dom,o)}parseRule(){return this.dirty&Ky||this.mark.type.spec.reparseInView?null:{mark:this.mark.type.name,attrs:this.mark.attrs,contentElement:this.contentDOM}}matchesMark(e){return this.dirty!=Ky&&this.mark.eq(e)}markDirty(e,t){if(super.markDirty(e,t),this.dirty!=Uy){let e=this.parent;for(;!e.node;)e=e.parent;e.dirty<this.dirty&&(e.dirty=this.dirty),this.dirty=Uy}}slice(t,n,r){let i=e.create(this.parent,this.mark,!0,r),a=this.children,o=this.size;n<o&&(a=_b(a,n,o,r)),t>0&&(a=_b(a,0,t,r));for(let e=0;e<a.length;e++)a[e].parent=i;return i.children=a,i}ignoreMutation(e){return this.spec.ignoreMutation?this.spec.ignoreMutation(e):super.ignoreMutation(e)}destroy(){this.spec.destroy&&this.spec.destroy(),super.destroy()}},Zy=class e extends qy{constructor(e,t,n,r,i,a,o){super(e,[],i,a),this.node=t,this.outerDeco=n,this.innerDeco=r,this.nodeDOM=o}static create(t,n,r,i,a,o){let s=a.nodeViews[n.type.name],c,l=s&&s(n,a,()=>{if(!c)return o;if(c.parent)return c.parent.posBeforeChild(c)},r,i),u=l&&l.dom,d=l&&l.contentDOM;if(n.isText){if(!u)u=document.createTextNode(n.text);else if(u.nodeType!=3)throw RangeError(`Text must be rendered as a DOM text node`)}else if(!u){let e=Lg.renderSpec(document,n.type.spec.toDOM(n),null,n.attrs);({dom:u,contentDOM:d}=e)}!d&&!n.isText&&u.nodeName!=`BR`&&(u.hasAttribute(`contenteditable`)||(u.contentEditable=`false`),n.type.spec.draggable&&(u.draggable=!0));let f=u;return u=cb(u,r,n),l?c=new tb(t,n,r,i,u,d||null,f,l):n.isText?new $y(t,n,r,i,u,f):new e(t,n,r,i,u,d||null,f)}parseRule(){if(this.node.type.spec.reparseInView)return null;let e={node:this.node.type.name,attrs:this.node.attrs};if(this.node.type.whitespace==`pre`&&(e.preserveWhitespace=`full`),!this.contentDOM)e.getContent=()=>this.node.content;else if(!this.contentLost)e.contentElement=this.contentDOM;else{for(let t=this.children.length-1;t>=0;t--){let n=this.children[t];if(this.dom.contains(n.dom.parentNode)){e.contentElement=n.dom.parentNode;break}}e.contentElement||(e.getContent=()=>X.empty)}return e}matchesNode(e,t,n){return this.dirty==Uy&&e.eq(this.node)&&lb(t,this.outerDeco)&&n.eq(this.innerDeco)}get size(){return this.node.nodeSize}get border(){return+!this.node.isLeaf}updateChildren(e,t){let n=this.node.inlineContent,r=t,i=e.composing?this.localCompositionInfo(e,t):null,a=i&&i.pos>-1?i:null,o=i&&i.pos<0,s=new db(this,a&&a.node,e);mb(this.node,this.innerDeco,(t,i,a)=>{t.spec.marks?s.syncToMarks(t.spec.marks,n,e,i):t.type.side>=0&&!a&&s.syncToMarks(i==this.node.childCount?Oh.none:this.node.child(i).marks,n,e,i),s.placeWidget(t,e,r)},(t,a,c,l)=>{s.syncToMarks(t.marks,n,e,l);let u;s.findNodeMatch(t,a,c,l)||o&&e.state.selection.from>r&&e.state.selection.to<r+t.nodeSize&&(u=s.findIndexWithChild(i.node))>-1&&s.updateNodeAt(t,a,c,u,e)||s.updateNextNode(t,a,c,e,l,r)||s.addNode(t,a,c,e,r),r+=t.nodeSize}),s.syncToMarks([],n,e,0),this.node.isTextblock&&s.addTextblockHacks(),s.destroyRest(),(s.changed||this.dirty==Gy)&&(a&&this.protectLocalComposition(e,a),nb(this.contentDOM,this.children,e),ay&&hb(this.dom))}localCompositionInfo(e,t){let{from:n,to:r}=e.state.selection;if(!(e.state.selection instanceof cv)||n<t||r>t+this.node.content.size)return null;let i=e.input.compositionNode;if(!i||!this.dom.contains(i.parentNode))return null;if(this.node.inlineContent){let e=i.nodeValue,a=gb(this.node.content,e,n-t,r-t);return a<0?null:{node:i,pos:a,text:e}}else return{node:i,pos:-1,text:``}}protectLocalComposition(e,{node:t,pos:n,text:r}){if(this.getDesc(t))return;let i=t;for(;i.parentNode!=this.contentDOM;i=i.parentNode){for(;i.previousSibling;)i.parentNode.removeChild(i.previousSibling);for(;i.nextSibling;)i.parentNode.removeChild(i.nextSibling);i.pmViewDesc&&=void 0}let a=new Yy(this,i,t,r);e.input.compositionNodes.push(a),this.children=_b(this.children,n,n+r.length,e,a)}update(e,t,n,r){return this.dirty==Ky||!e.sameMarkup(this.node)?!1:(this.updateInner(e,t,n,r),!0)}updateInner(e,t,n,r){this.updateOuterDeco(t),this.node=e,this.innerDeco=n,this.contentDOM&&this.updateChildren(r,this.posAtStart),this.dirty=Uy}updateOuterDeco(e){if(lb(e,this.outerDeco))return;let t=this.nodeDOM.nodeType!=1,n=this.dom;this.dom=ob(this.dom,this.nodeDOM,ab(this.outerDeco,this.node,t),ab(e,this.node,t)),this.dom!=n&&(n.pmViewDesc=void 0,this.dom.pmViewDesc=this),this.outerDeco=e}selectNode(){this.nodeDOM.nodeType==1&&(this.nodeDOM.classList.add(`ProseMirror-selectednode`),(this.contentDOM||!this.node.type.spec.draggable)&&(this.nodeDOM.draggable=!0))}deselectNode(){this.nodeDOM.nodeType==1&&(this.nodeDOM.classList.remove(`ProseMirror-selectednode`),(this.contentDOM||!this.node.type.spec.draggable)&&this.nodeDOM.removeAttribute(`draggable`))}get domAtom(){return this.node.isAtom}};function Qy(e,t,n,r,i){cb(r,t,e);let a=new Zy(void 0,e,t,n,r,r,r);return a.contentDOM&&a.updateChildren(i,0),a}var $y=class e extends Zy{constructor(e,t,n,r,i,a){super(e,t,n,r,i,null,a)}parseRule(){let e=this.nodeDOM.parentNode;for(;e&&e!=this.dom&&!e.pmIsDeco;)e=e.parentNode;return{skip:e||!0}}update(e,t,n,r){return this.dirty==Ky||this.dirty!=Uy&&!this.inParent()||!e.sameMarkup(this.node)?!1:(this.updateOuterDeco(t),(this.dirty!=Uy||e.text!=this.node.text)&&e.text!=this.nodeDOM.nodeValue&&(this.nodeDOM.nodeValue=e.text,r.trackWrites==this.nodeDOM&&(r.trackWrites=null)),this.node=e,this.dirty=Uy,!0)}inParent(){let e=this.parent.contentDOM;for(let t=this.nodeDOM;t;t=t.parentNode)if(t==e)return!0;return!1}domFromPos(e){return{node:this.nodeDOM,offset:e}}localPosFromDOM(e,t,n){return e==this.nodeDOM?this.posAtStart+Math.min(t,this.node.text.length):super.localPosFromDOM(e,t,n)}ignoreMutation(e){return e.type!=`characterData`&&e.type!=`selection`}slice(t,n,r){let i=this.node.cut(t,n),a=document.createTextNode(i.text);return new e(this.parent,i,this.outerDeco,this.innerDeco,a,a)}markDirty(e,t){super.markDirty(e,t),this.dom!=this.nodeDOM&&(e==0||t==this.nodeDOM.nodeValue.length)&&(this.dirty=Ky)}get domAtom(){return!1}isText(e){return this.node.text==e}},eb=class extends qy{parseRule(){return{ignore:!0}}matchesHack(e){return this.dirty==Uy&&this.dom.nodeName==e}get domAtom(){return!0}get ignoreForCoords(){return this.dom.nodeName==`IMG`}},tb=class extends Zy{constructor(e,t,n,r,i,a,o,s){super(e,t,n,r,i,a,o),this.spec=s}update(e,t,n,r){if(this.dirty==Ky)return!1;if(this.spec.update&&(this.node.type==e.type||this.spec.multiType)){let i=this.spec.update(e,t,n);return i&&this.updateInner(e,t,n,r),i}else if(!this.contentDOM&&!e.isLeaf)return!1;else return super.update(e,t,n,r)}selectNode(){this.spec.selectNode?this.spec.selectNode():super.selectNode()}deselectNode(){this.spec.deselectNode?this.spec.deselectNode():super.deselectNode()}setSelection(e,t,n,r){this.spec.setSelection?this.spec.setSelection(e,t,n.root):super.setSelection(e,t,n,r)}destroy(){this.spec.destroy&&this.spec.destroy(),super.destroy()}stopEvent(e){return this.spec.stopEvent?this.spec.stopEvent(e):!1}ignoreMutation(e){return this.spec.ignoreMutation?this.spec.ignoreMutation(e):super.ignoreMutation(e)}};function nb(e,t,n){let r=e.firstChild,i=!1;for(let a=0;a<t.length;a++){let o=t[a],s=o.dom;if(s.parentNode==e){for(;s!=r;)r=ub(r),i=!0;r=r.nextSibling}else i=!0,e.insertBefore(s,r);if(o instanceof Xy){let t=r?r.previousSibling:e.lastChild;nb(o.contentDOM,o.children,n),r=t?t.nextSibling:e.firstChild}}for(;r;)r=ub(r),i=!0;i&&n.trackWrites==e&&(n.trackWrites=null)}var rb=function(e){e&&(this.nodeName=e)};rb.prototype=Object.create(null);var ib=[new rb];function ab(e,t,n){if(e.length==0)return ib;let r=n?ib[0]:new rb,i=[r];for(let a=0;a<e.length;a++){let o=e[a].type.attrs;if(o){o.nodeName&&i.push(r=new rb(o.nodeName));for(let e in o){let a=o[e];a!=null&&(n&&i.length==1&&i.push(r=new rb(t.isInline?`span`:`div`)),e==`class`?r.class=(r.class?r.class+` `:``)+a:e==`style`?r.style=(r.style?r.style+`;`:``)+a:e!=`nodeName`&&(r[e]=a))}}}return i}function ob(e,t,n,r){if(n==ib&&r==ib)return t;let i=t;for(let t=0;t<r.length;t++){let a=r[t],o=n[t];if(t){let t;o&&o.nodeName==a.nodeName&&i!=e&&(t=i.parentNode)&&t.nodeName.toLowerCase()==a.nodeName?i=t:(t=document.createElement(a.nodeName),t.pmIsDeco=!0,t.appendChild(i),o=ib[0],i=t)}sb(i,o||ib[0],a)}return i}function sb(e,t,n){for(let r in t)r!=`class`&&r!=`style`&&r!=`nodeName`&&!(r in n)&&e.removeAttribute(r);for(let r in n)r!=`class`&&r!=`style`&&r!=`nodeName`&&n[r]!=t[r]&&e.setAttribute(r,n[r]);if(t.class!=n.class){let r=t.class?t.class.split(` `).filter(Boolean):[],i=n.class?n.class.split(` `).filter(Boolean):[];for(let t=0;t<r.length;t++)i.indexOf(r[t])==-1&&e.classList.remove(r[t]);for(let t=0;t<i.length;t++)r.indexOf(i[t])==-1&&e.classList.add(i[t]);e.classList.length==0&&e.removeAttribute(`class`)}if(t.style!=n.style){if(t.style){let n=/\s*([\w\-\xa1-\uffff]+)\s*:(?:"(?:\\.|[^"])*"|'(?:\\.|[^'])*'|\(.*?\)|[^;])*/g,r;for(;r=n.exec(t.style);)e.style.removeProperty(r[1])}n.style&&(e.style.cssText+=n.style)}}function cb(e,t,n){return ob(e,e,ib,ab(t,n,e.nodeType!=1))}function lb(e,t){if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++)if(!e[n].type.eq(t[n].type))return!1;return!0}function ub(e){let t=e.nextSibling;return e.parentNode.removeChild(e),t}var db=class{constructor(e,t,n){this.lock=t,this.view=n,this.index=0,this.stack=[],this.changed=!1,this.top=e,this.preMatch=fb(e.node.content,e)}destroyBetween(e,t){if(e!=t){for(let n=e;n<t;n++)this.top.children[n].destroy();this.top.children.splice(e,t-e),this.changed=!0}}destroyRest(){this.destroyBetween(this.index,this.top.children.length)}syncToMarks(e,t,n,r){let i=0,a=this.stack.length>>1,o=Math.min(a,e.length);for(;i<o&&(i==a-1?this.top:this.stack[i+1<<1]).matchesMark(e[i])&&e[i].type.spec.spanning!==!1;)i++;for(;i<a;)this.destroyRest(),this.top.dirty=Uy,this.index=this.stack.pop(),this.top=this.stack.pop(),a--;for(;a<e.length;){this.stack.push(this.top,this.index+1);let i=-1,o=this.top.children.length;r<this.preMatch.index&&(o=Math.min(this.index+3,o));for(let t=this.index;t<o;t++){let n=this.top.children[t];if(n.matchesMark(e[a])&&!this.isLocked(n.dom)){i=t;break}}if(i<0&&this.index<this.top.children.length){let t=this.top.children[this.index];t instanceof Xy&&t.dirty!=Ky&&t.mark.type==e[a].type&&t.spec.update&&!this.isLocked(t.dom)&&t.spec.update(e[a])&&(t.mark=e[a],i=this.index,this.changed=!0)}if(i>-1)i>this.index&&(this.changed=!0,this.destroyBetween(this.index,i)),this.top=this.top.children[this.index];else{let r=Xy.create(this.top,e[a],t,n);this.top.children.splice(this.index,0,r),this.top=r,this.changed=!0}this.index=0,a++}}findNodeMatch(e,t,n,r){let i=-1,a;if(r>=this.preMatch.index&&(a=this.preMatch.matches[r-this.preMatch.index]).parent==this.top&&a.matchesNode(e,t,n))i=this.top.children.indexOf(a,this.index);else for(let r=this.index,a=Math.min(this.top.children.length,r+5);r<a;r++){let a=this.top.children[r];if(a.matchesNode(e,t,n)&&!this.preMatch.matched.has(a)){i=r;break}}return i<0?!1:(this.destroyBetween(this.index,i),this.index++,!0)}updateNodeAt(e,t,n,r,i){let a=this.top.children[r];return a.dirty==Ky&&a.dom==a.contentDOM&&(a.dirty=Gy),a.update(e,t,n,i)?(this.destroyBetween(this.index,r),this.index++,!0):!1}findIndexWithChild(e){for(;;){let t=e.parentNode;if(!t)return-1;if(t==this.top.contentDOM){let t=e.pmViewDesc;if(t){for(let e=this.index;e<this.top.children.length;e++)if(this.top.children[e]==t)return e}return-1}e=t}}updateNextNode(e,t,n,r,i,a){for(let o=this.index;o<this.top.children.length;o++){let s=this.top.children[o];if(s instanceof Zy){let c=this.preMatch.matched.get(s);if(c!=null&&c!=i)return!1;let l=s.dom,u,d=this.isLocked(l)&&!(e.isText&&s.node&&s.node.isText&&s.nodeDOM.nodeValue==e.text&&s.dirty!=Ky&&lb(t,s.outerDeco));if(!d&&s.update(e,t,n,r))return this.destroyBetween(this.index,o),s.dom!=l&&(this.changed=!0),this.index++,!0;if(!d&&(u=this.recreateWrapper(s,e,t,n,r,a)))return this.destroyBetween(this.index,o),this.top.children[this.index]=u,u.contentDOM&&(u.dirty=Gy,u.updateChildren(r,a+1),u.dirty=Uy),this.changed=!0,this.index++,!0;break}}return!1}recreateWrapper(e,t,n,r,i,a){if(e.dirty||t.isAtom||!e.children.length||!e.node.content.eq(t.content)||!lb(n,e.outerDeco)||!r.eq(e.innerDeco))return null;let o=Zy.create(this.top,t,n,r,i,a);if(o.contentDOM){o.children=e.children,e.children=[];for(let e of o.children)e.parent=o}return e.destroy(),o}addNode(e,t,n,r,i){let a=Zy.create(this.top,e,t,n,r,i);a.contentDOM&&a.updateChildren(r,i+1),this.top.children.splice(this.index++,0,a),this.changed=!0}placeWidget(e,t,n){let r=this.index<this.top.children.length?this.top.children[this.index]:null;if(r&&r.matchesWidget(e)&&(e==r.widget||!r.widget.type.toDOM.parentNode))this.index++;else{let r=new Jy(this.top,e,t,n);this.top.children.splice(this.index++,0,r),this.changed=!0}}addTextblockHacks(){let e=this.top.children[this.index-1],t=this.top;for(;e instanceof Xy;)t=e,e=t.children[t.children.length-1];(!e||!(e instanceof $y)||/\n$/.test(e.node.text)||this.view.requiresGeckoHackNode&&/\s$/.test(e.node.text))&&((iy||ny)&&e&&e.dom.contentEditable==`false`&&this.addHackNode(`IMG`,t),this.addHackNode(`BR`,this.top))}addHackNode(e,t){if(t==this.top&&this.index<t.children.length&&t.children[this.index].matchesHack(e))this.index++;else{let n=document.createElement(e);e==`IMG`&&(n.className=`ProseMirror-separator`,n.alt=``),e==`BR`&&(n.className=`ProseMirror-trailingBreak`);let r=new eb(this.top,[],n,null);t==this.top?t.children.splice(this.index++,0,r):t.children.push(r),this.changed=!0}}isLocked(e){return this.lock&&(e==this.lock||e.nodeType==1&&e.contains(this.lock.parentNode))}};function fb(e,t){let n=t,r=n.children.length,i=e.childCount,a=new Map,o=[];outer:for(;i>0;){let s;for(;;)if(r){let e=n.children[r-1];if(e instanceof Xy)n=e,r=e.children.length;else{s=e,r--;break}}else if(n==t)break outer;else r=n.parent.children.indexOf(n),n=n.parent;let c=s.node;if(c){if(c!=e.child(i-1))break;--i,a.set(s,i),o.push(s)}}return{index:i,matched:a,matches:o.reverse()}}function pb(e,t){return e.type.side-t.type.side}function mb(e,t,n,r){let i=t.locals(e),a=0;if(i.length==0){for(let n=0;n<e.childCount;n++){let o=e.child(n);r(o,i,t.forChild(a,o),n),a+=o.nodeSize}return}let o=0,s=[],c=null;for(let l=0;;){let u,d;for(;o<i.length&&i[o].to==a;){let e=i[o++];e.widget&&(u?(d||=[u]).push(e):u=e)}if(u)if(d){d.sort(pb);for(let e=0;e<d.length;e++)n(d[e],l,!!c)}else n(u,l,!!c);let f,p;if(c)p=-1,f=c,c=null;else if(l<e.childCount)p=l,f=e.child(l++);else break;for(let e=0;e<s.length;e++)s[e].to<=a&&s.splice(e--,1);for(;o<i.length&&i[o].from<=a&&i[o].to>a;)s.push(i[o++]);let m=a+f.nodeSize;if(f.isText){let e=m;o<i.length&&i[o].from<e&&(e=i[o].from);for(let t=0;t<s.length;t++)s[t].to<e&&(e=s[t].to);e<m&&(c=f.cut(e-a),f=f.cut(0,e-a),m=e,p=-1)}else for(;o<i.length&&i[o].to<m;)o++;let h=f.isInline&&!f.isLeaf?s.filter(e=>!e.inline):s.slice();r(f,h,t.forChild(a,f),p),a=m}}function hb(e){if(e.nodeName==`UL`||e.nodeName==`OL`){let t=e.style.cssText;e.style.cssText=t+`; list-style: square !important`,window.getComputedStyle(e).listStyle,e.style.cssText=t}}function gb(e,t,n,r){for(let i=0,a=0;i<e.childCount&&a<=r;){let o=e.child(i++),s=a;if(a+=o.nodeSize,!o.isText)continue;let c=o.text;for(;i<e.childCount;){let t=e.child(i++);if(a+=t.nodeSize,!t.isText)break;c+=t.text}if(a>=n){if(a>=r&&c.slice(r-t.length-s,r-s)==t)return r-t.length;let e=s<r?c.lastIndexOf(t,r-s-1):-1;if(e>=0&&e+t.length+s>=n)return s+e;if(n==r&&c.length>=r+t.length-s&&c.slice(r-s,r-s+t.length)==t)return r}}return-1}function _b(e,t,n,r,i){let a=[];for(let o=0,s=0;o<e.length;o++){let c=e[o],l=s,u=s+=c.size;l>=n||u<=t?a.push(c):(l<t&&a.push(c.slice(0,t-l,r)),i&&=(a.push(i),void 0),u>n&&a.push(c.slice(n-l,c.size,r)))}return a}function vb(e,t=null){let n=e.domSelectionRange(),r=e.state.doc;if(!n.focusNode)return null;let i=e.docView.nearestDesc(n.focusNode),a=i&&i.size==0,o=e.docView.posFromDOM(n.focusNode,n.focusOffset,1);if(o<0)return null;let s=r.resolve(o),c,l;if(Hv(n)){for(c=o;i&&!i.node;)i=i.parent;let e=i.node;if(i&&e.isAtom&&Q.isSelectable(e)&&i.parent&&!(e.isInline&&Bv(n.focusNode,n.focusOffset,i.dom))){let e=i.posBefore;l=new Q(o==e?s:r.resolve(e))}}else{if(n instanceof e.dom.ownerDocument.defaultView.Selection&&n.rangeCount>1){let t=o,i=o;for(let r=0;r<n.rangeCount;r++){let a=n.getRangeAt(r);t=Math.min(t,e.docView.posFromDOM(a.startContainer,a.startOffset,1)),i=Math.max(i,e.docView.posFromDOM(a.endContainer,a.endOffset,-1))}if(t<0)return null;[c,o]=i==e.state.selection.anchor?[i,t]:[t,i],s=r.resolve(o)}else c=e.docView.posFromDOM(n.anchorNode,n.anchorOffset,1);if(c<0)return null}let u=r.resolve(c);if(!l){let n=t==`pointer`||e.state.selection.head<s.pos&&!a?1:-1;l=kb(e,u,s,n)}return l}function yb(e){return e.editable?e.hasFocus():jb(e)&&document.activeElement&&document.activeElement.contains(e.dom)}function bb(e,t=!1){let n=e.state.selection;if(Db(e,n),!yb(e))return;let r=e.input.mouseDown;if(!t&&ny&&r){let t=e.domSelectionRange(),n=e.domObserver.currentSelection;if(t.anchorNode&&n.anchorNode&&Pv(t.anchorNode,t.anchorOffset,n.anchorNode,n.anchorOffset)&&r.delaySelUpdate()){e.domObserver.setCurSelection();return}}if(e.domObserver.disconnectSelection(),e.cursorWrapper)Eb(e);else{let{anchor:r,head:i}=n,a,o;xb&&!(n instanceof cv)&&(n.$from.parent.inlineContent||(a=Sb(e,n.from)),!n.empty&&!n.$from.parent.inlineContent&&(o=Sb(e,n.to))),e.docView.setSelection(r,i,e,t),xb&&(a&&wb(a),o&&wb(o)),n.visible?e.dom.classList.remove(`ProseMirror-hideselection`):(e.dom.classList.add(`ProseMirror-hideselection`),`onselectionchange`in document&&Tb(e))}e.domObserver.setCurSelection(),e.domObserver.connectSelection()}var xb=iy||ny&&ry<63;function Sb(e,t){let{node:n,offset:r}=e.docView.domFromPos(t,0),i=r<n.childNodes.length?n.childNodes[r]:null,a=r?n.childNodes[r-1]:null;if(iy&&i&&i.contentEditable==`false`)return Cb(i);if((!i||i.contentEditable==`false`)&&(!a||a.contentEditable==`false`)){if(i)return Cb(i);if(a)return Cb(a)}}function Cb(e){return e.contentEditable=`true`,iy&&e.draggable&&(e.draggable=!1,e.wasDraggable=!0),e}function wb(e){e.contentEditable=`false`,e.wasDraggable&&=(e.draggable=!0,null)}function Tb(e){let t=e.dom.ownerDocument;t.removeEventListener(`selectionchange`,e.input.hideSelectionGuard);let n=e.domSelectionRange(),r=n.anchorNode,i=n.anchorOffset;t.addEventListener(`selectionchange`,e.input.hideSelectionGuard=()=>{(n.anchorNode!=r||n.anchorOffset!=i)&&(t.removeEventListener(`selectionchange`,e.input.hideSelectionGuard),setTimeout(()=>{(!yb(e)||e.state.selection.visible)&&e.dom.classList.remove(`ProseMirror-hideselection`)},20))})}function Eb(e){let t=e.domSelection();if(!t)return;let n=e.cursorWrapper.dom,r=n.nodeName==`IMG`;r?t.collapse(n.parentNode,kv(n)+1):t.collapse(n,0),!r&&!e.state.selection.visible&&Qv&&$v<=11&&(n.disabled=!0,n.disabled=!1)}function Db(e,t){if(t instanceof Q){let n=e.docView.descAt(t.from);n!=e.lastSelectedViewDesc&&(Ob(e),n&&n.selectNode(),e.lastSelectedViewDesc=n)}else Ob(e)}function Ob(e){e.lastSelectedViewDesc&&=(e.lastSelectedViewDesc.parent&&e.lastSelectedViewDesc.deselectNode(),void 0)}function kb(e,t,n,r){return e.someProp(`createSelectionBetween`,r=>r(e,t,n))||cv.between(t,n,r)}function Ab(e){return e.editable&&!e.hasFocus()?!1:jb(e)}function jb(e){let t=e.domSelectionRange();if(!t.anchorNode)return!1;try{return e.dom.contains(t.anchorNode.nodeType==3?t.anchorNode.parentNode:t.anchorNode)&&(e.editable||e.dom.contains(t.focusNode.nodeType==3?t.focusNode.parentNode:t.focusNode))}catch{return!1}}function Mb(e){let t=e.docView.domFromPos(e.state.selection.anchor,0),n=e.domSelectionRange();return Pv(t.node,t.offset,n.anchorNode,n.anchorOffset)}function Nb(e,t){let{$anchor:n,$head:r}=e.selection,i=t>0?n.max(r):n.min(r),a=i.parent.inlineContent?i.depth?e.doc.resolve(t>0?i.after():i.before()):null:i;return a&&iv.findFrom(a,t)}function Pb(e,t){return e.dispatch(e.state.tr.setSelection(t).scrollIntoView()),!0}function Fb(e,t,n){let r=e.state.selection;if(r instanceof cv){if(n.indexOf(`s`)>-1){let{$head:n}=r,i=n.textOffset?null:t<0?n.nodeBefore:n.nodeAfter;if(!i||i.isText||!i.isLeaf)return!1;let a=e.state.doc.resolve(n.pos+i.nodeSize*(t<0?-1:1));return Pb(e,new cv(r.$anchor,a))}else if(!r.empty)return!1;else if(e.endOfTextblock(t>0?`forward`:`backward`)){let n=Nb(e.state,t);return n&&n instanceof Q?Pb(e,n):!1}else if(!(oy&&n.indexOf(`m`)>-1)){let n=r.$head,i=n.textOffset?null:t<0?n.nodeBefore:n.nodeAfter,a;if(!i||i.isText)return!1;let o=t<0?n.pos-i.nodeSize:n.pos;return i.isAtom||(a=e.docView.descAt(o))&&!a.contentDOM?Q.isSelectable(i)?Pb(e,new Q(t<0?e.state.doc.resolve(n.pos-i.nodeSize):n)):ly?Pb(e,new cv(e.state.doc.resolve(t<0?o:o+i.nodeSize))):!1:!1}}else if(r instanceof Q&&r.node.isInline)return Pb(e,new cv(t>0?r.$to:r.$from));else{let n=Nb(e.state,t);return n?Pb(e,n):!1}}function Ib(e){return e.nodeType==3?e.nodeValue.length:e.childNodes.length}function Lb(e,t){let n=e.pmViewDesc;return n&&n.size==0&&(t<0||e.nextSibling||e.nodeName!=`BR`)}function Rb(e,t){return t<0?zb(e):Bb(e)}function zb(e){let t=e.domSelectionRange(),n=t.focusNode,r=t.focusOffset;if(!n)return;let i,a,o=!1;for(ey&&n.nodeType==1&&r<Ib(n)&&Lb(n.childNodes[r],-1)&&(o=!0);;)if(r>0){if(n.nodeType!=1)break;{let e=n.childNodes[r-1];if(Lb(e,-1))i=n,a=--r;else if(e.nodeType==3)n=e,r=n.nodeValue.length;else break}}else if(Vb(n))break;else{let t=n.previousSibling;for(;t&&Lb(t,-1);)i=n.parentNode,a=kv(t),t=t.previousSibling;if(t)n=t,r=Ib(n);else{if(n=n.parentNode,n==e.dom)break;r=0}}o?Wb(e,n,r):i&&Wb(e,i,a)}function Bb(e){let t=e.domSelectionRange(),n=t.focusNode,r=t.focusOffset;if(!n)return;let i=Ib(n),a,o;for(;;)if(r<i){if(n.nodeType!=1)break;let e=n.childNodes[r];if(Lb(e,1))a=n,o=++r;else break}else if(Vb(n))break;else{let t=n.nextSibling;for(;t&&Lb(t,1);)a=t.parentNode,o=kv(t)+1,t=t.nextSibling;if(t)n=t,r=0,i=Ib(n);else{if(n=n.parentNode,n==e.dom)break;r=i=0}}a&&Wb(e,a,o)}function Vb(e){let t=e.pmViewDesc;return t&&t.node&&t.node.isBlock}function Hb(e,t){for(;e&&t==e.childNodes.length&&!Vv(e);)t=kv(e)+1,e=e.parentNode;for(;e&&t<e.childNodes.length;){let n=e.childNodes[t];if(n.nodeType==3)return n;if(n.nodeType==1&&n.contentEditable==`false`)break;e=n,t=0}}function Ub(e,t){for(;e&&!t&&!Vv(e);)t=kv(e),e=e.parentNode;for(;e&&t;){let n=e.childNodes[t-1];if(n.nodeType==3)return n;if(n.nodeType==1&&n.contentEditable==`false`)break;e=n,t=e.childNodes.length}}function Wb(e,t,n){if(t.nodeType!=3){let e,r;(r=Hb(t,n))?(t=r,n=0):(e=Ub(t,n))&&(t=e,n=e.nodeValue.length)}let r=e.domSelection();if(!r)return;if(Hv(r)){let e=document.createRange();e.setEnd(t,n),e.setStart(t,n),r.removeAllRanges(),r.addRange(e)}else r.extend&&r.extend(t,n);e.domObserver.setCurSelection();let{state:i}=e;setTimeout(()=>{e.state==i&&bb(e)},50)}function Gb(e,t){let n=e.state.doc.resolve(t);if(!(ny||sy)&&n.parent.inlineContent){let r=e.coordsAtPos(t);if(t>n.start()){let n=e.coordsAtPos(t-1),i=(n.top+n.bottom)/2;if(i>r.top&&i<r.bottom&&Math.abs(n.left-r.left)>1)return n.left<r.left?`ltr`:`rtl`}if(t<n.end()){let n=e.coordsAtPos(t+1),i=(n.top+n.bottom)/2;if(i>r.top&&i<r.bottom&&Math.abs(n.left-r.left)>1)return n.left>r.left?`ltr`:`rtl`}}return getComputedStyle(e.dom).direction==`rtl`?`rtl`:`ltr`}function Kb(e,t,n){let r=e.state.selection;if(r instanceof cv&&!r.empty||n.indexOf(`s`)>-1||oy&&n.indexOf(`m`)>-1)return!1;let{$from:i,$to:a}=r;if(!i.parent.inlineContent||e.endOfTextblock(t<0?`up`:`down`)){let n=Nb(e.state,t);if(n&&n instanceof Q)return Pb(e,n)}if(!i.parent.inlineContent){let n=t<0?i:a,o=r instanceof dv?iv.near(n,t):iv.findFrom(n,t);return o?Pb(e,o):!1}return!1}function qb(e,t){if(!(e.state.selection instanceof cv))return!0;let{$head:n,$anchor:r,empty:i}=e.state.selection;if(!n.sameParent(r))return!0;if(!i)return!1;if(e.endOfTextblock(t>0?`forward`:`backward`))return!0;let a=!n.textOffset&&(t<0?n.nodeBefore:n.nodeAfter);if(a&&!a.isText){let r=e.state.tr;return t<0?r.delete(n.pos-a.nodeSize,n.pos):r.delete(n.pos,n.pos+a.nodeSize),e.dispatch(r),!0}return!1}function Jb(e,t,n){e.domObserver.stop(),t.contentEditable=n,e.domObserver.start()}function Yb(e){if(!iy||e.state.selection.$head.parentOffset>0)return!1;let{focusNode:t,focusOffset:n}=e.domSelectionRange();if(t&&t.nodeType==1&&n==0&&t.firstChild&&t.firstChild.contentEditable==`false`){let n=t.firstChild;Jb(e,n,`true`),setTimeout(()=>Jb(e,n,`false`),20)}return!1}function Xb(e){let t=``;return e.ctrlKey&&(t+=`c`),e.metaKey&&(t+=`m`),e.altKey&&(t+=`a`),e.shiftKey&&(t+=`s`),t}function Zb(e,t){let n=t.keyCode,r=Xb(t);if(n==8||oy&&n==72&&r==`c`)return qb(e,-1)||Rb(e,-1);if(n==46&&!t.shiftKey||oy&&n==68&&r==`c`)return qb(e,1)||Rb(e,1);if(n==13||n==27)return!0;if(n==37||oy&&n==66&&r==`c`){let t=n==37?Gb(e,e.state.selection.from)==`ltr`?-1:1:-1;return Fb(e,t,r)||Rb(e,t)}else if(n==39||oy&&n==70&&r==`c`){let t=n==39?Gb(e,e.state.selection.from)==`ltr`?1:-1:1;return Fb(e,t,r)||Rb(e,t)}else if(n==38||oy&&n==80&&r==`c`)return Kb(e,-1,r)||Rb(e,-1);else if(n==40||oy&&n==78&&r==`c`)return Yb(e)||Kb(e,1,r)||Rb(e,1);else if(r==(oy?`m`:`c`)&&(n==66||n==73||n==89||n==90))return!0;return!1}function Qb(e,t){e.someProp(`transformCopied`,n=>{t=n(t,e)});let n=[],{content:r,openStart:i,openEnd:a}=t;for(;i>1&&a>1&&r.childCount==1&&r.firstChild.childCount==1;){i--,a--;let e=r.firstChild;n.push(e.type.name,e.attrs==e.type.defaultAttrs?null:e.attrs),r=e.content}let o=e.someProp(`clipboardSerializer`)||Lg.fromSchema(e.state.schema),s=cx(),c=s.createElement(`div`);c.appendChild(o.serializeFragment(r,{document:s}));let l=c.firstChild,u,d=0;for(;l&&l.nodeType==1&&(u=sx[l.nodeName.toLowerCase()]);){for(let e=u.length-1;e>=0;e--){let t=s.createElement(u[e]);for(;c.firstChild;)t.appendChild(c.firstChild);c.appendChild(t),d++}l=c.firstChild}return l&&l.nodeType==1&&l.setAttribute(`data-pm-slice`,`${i} ${a}${d?` -${d}`:``} ${JSON.stringify(n)}`),{dom:c,text:e.someProp(`clipboardTextSerializer`,n=>n(t,e))||t.content.textBetween(0,t.content.size,`
14
+
15
+ `),slice:t}}function $b(e,t,n,r,i){let a=i.parent.type.spec.code,o,s;if(!n&&!t)return null;let c=!!t&&(r||a||!n);if(c){if(e.someProp(`transformPastedText`,n=>{t=n(t,a||r,e)}),a)return s=new Z(X.from(e.state.schema.text(t.replace(/\r\n?/g,`
16
+ `))),0,0),e.someProp(`transformPasted`,t=>{s=t(s,e,!0)}),s;let n=e.someProp(`clipboardTextParser`,n=>n(t,i,r,e));if(n)s=n;else{let n=i.marks(),{schema:r}=e.state,a=Lg.fromSchema(r);o=document.createElement(`div`),t.split(/(?:\r\n?|\n)+/).forEach(e=>{let t=o.appendChild(document.createElement(`p`));e&&t.appendChild(a.serializeNode(r.text(e,n)))})}}else e.someProp(`transformPastedHTML`,t=>{n=t(n,e)}),o=dx(n),ly&&fx(o);let l=o&&o.querySelector(`[data-pm-slice]`),u=l&&/^(\d+) (\d+)(?: -(\d+))? (.*)/.exec(l.getAttribute(`data-pm-slice`)||``);if(u&&u[3])for(let e=+u[3];e>0;e--){let e=o.firstChild;for(;e&&e.nodeType!=1;)e=e.nextSibling;if(!e)break;o=e}if(s||=(e.someProp(`clipboardParser`)||e.someProp(`domParser`)||Cg.fromSchema(e.state.schema)).parseSlice(o,{preserveWhitespace:!!(c||u),context:i,ruleFromNode(e){return e.nodeName==`BR`&&!e.nextSibling&&e.parentNode&&!ex.test(e.parentNode.nodeName)?{ignore:!0}:null}}),u)s=px(ox(s,+u[1],+u[2]),u[4]);else if(s=Z.maxOpen(tx(s.content,i),!0),s.openStart||s.openEnd){let e=0,t=0;for(let t=s.content.firstChild;e<s.openStart&&!t.type.spec.isolating;e++,t=t.firstChild);for(let e=s.content.lastChild;t<s.openEnd&&!e.type.spec.isolating;t++,e=e.lastChild);s=ox(s,e,t)}return e.someProp(`transformPasted`,t=>{s=t(s,e,c)}),s}var ex=/^(a|abbr|acronym|b|cite|code|del|em|i|ins|kbd|label|output|q|ruby|s|samp|span|strong|sub|sup|time|u|tt|var)$/i;function tx(e,t){if(e.childCount<2)return e;for(let n=t.depth;n>=0;n--){let r=t.node(n).contentMatchAt(t.index(n)),i,a=[];if(e.forEach(e=>{if(!a)return;let t=r.findWrapping(e.type),n;if(!t)return a=null;if(n=a.length&&i.length&&rx(t,i,e,a[a.length-1],0))a[a.length-1]=n;else{a.length&&(a[a.length-1]=ix(a[a.length-1],i.length));let n=nx(e,t);a.push(n),r=r.matchType(n.type),i=t}}),a)return X.from(a)}return e}function nx(e,t,n=0){for(let r=t.length-1;r>=n;r--)e=t[r].create(null,X.from(e));return e}function rx(e,t,n,r,i){if(i<e.length&&i<t.length&&e[i]==t[i]){let a=rx(e,t,n,r.lastChild,i+1);if(a)return r.copy(r.content.replaceChild(r.childCount-1,a));if(r.contentMatchAt(r.childCount).matchType(i==e.length-1?n.type:e[i+1]))return r.copy(r.content.append(X.from(nx(n,e,i+1))))}}function ix(e,t){if(t==0)return e;let n=e.content.replaceChild(e.childCount-1,ix(e.lastChild,t-1)),r=e.contentMatchAt(e.childCount).fillBefore(X.empty,!0);return e.copy(n.append(r))}function ax(e,t,n,r,i,a){let o=t<0?e.firstChild:e.lastChild,s=o.content;return e.childCount>1&&(a=0),i<r-1&&(s=ax(s,t,n,r,i+1,a)),i>=n&&(s=t<0?o.contentMatchAt(0).fillBefore(s,a<=i).append(s):s.append(o.contentMatchAt(o.childCount).fillBefore(X.empty,!0))),e.replaceChild(t<0?0:e.childCount-1,o.copy(s))}function ox(e,t,n){return t<e.openStart&&(e=new Z(ax(e.content,-1,t,e.openStart,0,e.openEnd),t,e.openEnd)),n<e.openEnd&&(e=new Z(ax(e.content,1,n,e.openEnd,0,0),e.openStart,n)),e}var sx={thead:[`table`],tbody:[`table`],tfoot:[`table`],caption:[`table`],colgroup:[`table`],col:[`table`,`colgroup`],tr:[`table`,`tbody`],td:[`table`,`tbody`,`tr`],th:[`table`,`tbody`,`tr`]};function cx(){return document.implementation.createHTMLDocument(`title`)}var lx=null;function ux(e){let t=window.trustedTypes;return t?(lx||=t.defaultPolicy||t.createPolicy(`ProseMirrorClipboard`,{createHTML:e=>e}),lx.createHTML(e)):e}function dx(e){let t=/^(\s*<meta [^>]*>)*/.exec(e);t&&(e=e.slice(t[0].length));let n=cx(),r=n.body,i=/<([a-z][^>\s]+)/i.exec(e),a;if((a=i&&sx[i[1].toLowerCase()])&&(e=a.map(e=>`<`+e+`>`).join(``)+e+a.map(e=>`</`+e+`>`).reverse().join(``)),r.innerHTML=ux(e),a)for(let e=0;e<a.length;e++)r=r.querySelector(a[e])||r;for(let e=0;e<n.styleSheets.length;e++){let t=n.styleSheets[e];for(let e=0;e<t.rules.length;e++){let n=t.rules[e];if(n instanceof CSSStyleRule){let e=r.querySelectorAll(n.selectorText);for(let t=0;t<e.length;t++)e[t].style.cssText+=n.style.cssText}}}return r}function fx(e){let t=e.querySelectorAll(ny?`span:not([class]):not([style])`:`span.Apple-converted-space`);for(let n=0;n<t.length;n++){let r=t[n];r.childNodes.length==1&&r.textContent==`\xA0`&&r.parentNode&&r.parentNode.replaceChild(e.ownerDocument.createTextNode(` `),r)}}function px(e,t){if(!e.size)return e;let n=e.content.firstChild.type.schema,r;try{r=JSON.parse(t)}catch{return e}let{content:i,openStart:a,openEnd:o}=e;for(let e=r.length-2;e>=0;e-=2){let t=n.nodes[r[e]];if(!t||t.hasRequiredAttrs())break;i=X.from(t.create(r[e+1],i)),a++,o++}return new Z(i,a,o)}var mx={},hx={},gx={touchstart:!0,touchmove:!0},_x=class{constructor(){this.shiftKey=!1,this.mouseDown=null,this.lastKeyCode=null,this.lastKeyCodeTime=0,this.lastClick={time:0,x:0,y:0,type:``,button:0},this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastIOSEnter=0,this.lastIOSEnterFallbackTimeout=-1,this.lastFocus=0,this.lastTouch=0,this.lastChromeDelete=0,this.composing=!1,this.compositionNode=null,this.composingTimeout=-1,this.compositionNodes=[],this.compositionEndedAt=-2e8,this.compositionID=1,this.badSafariComposition=!1,this.compositionPendingChanges=0,this.domChangeCount=0,this.eventHandlers=Object.create(null),this.hideSelectionGuard=null}};function vx(e){for(let t in mx){let n=mx[t];e.dom.addEventListener(t,e.input.eventHandlers[t]=t=>{Cx(e,t)&&!Sx(e,t)&&(e.editable||!(t.type in hx))&&n(e,t)},gx[t]?{passive:!0}:void 0)}iy&&e.dom.addEventListener(`input`,()=>null),xx(e)}function yx(e,t){e.input.lastSelectionOrigin=t,e.input.lastSelectionTime=Date.now()}function bx(e){e.input.mouseDown&&e.input.mouseDown.done(),e.domObserver.stop();for(let t in e.input.eventHandlers)e.dom.removeEventListener(t,e.input.eventHandlers[t]);clearTimeout(e.input.composingTimeout),clearTimeout(e.input.lastIOSEnterFallbackTimeout)}function xx(e){e.someProp(`handleDOMEvents`,t=>{for(let n in t)e.input.eventHandlers[n]||e.dom.addEventListener(n,e.input.eventHandlers[n]=t=>Sx(e,t))})}function Sx(e,t){return e.someProp(`handleDOMEvents`,n=>{let r=n[t.type];return r?r(e,t)||t.defaultPrevented:!1})}function Cx(e,t){if(!t.bubbles)return!0;if(t.defaultPrevented)return!1;for(let n=t.target;n!=e.dom;n=n.parentNode)if(!n||n.nodeType==11||n.pmViewDesc&&n.pmViewDesc.stopEvent(t))return!1;return!0}function wx(e,t){!Sx(e,t)&&mx[t.type]&&(e.editable||!(t.type in hx))&&mx[t.type](e,t)}hx.keydown=(e,t)=>{let n=t;if(e.input.shiftKey=n.keyCode==16||n.shiftKey,!Vx(e)&&(e.input.lastKeyCode=n.keyCode,e.input.lastKeyCodeTime=Date.now(),!(cy&&ny&&n.keyCode==13)))if(n.keyCode!=229&&e.domObserver.forceFlush(),ay&&n.keyCode==13&&!n.ctrlKey&&!n.altKey&&!n.metaKey){let t=Date.now();e.input.lastIOSEnter=t,e.input.lastIOSEnterFallbackTimeout=setTimeout(()=>{e.input.lastIOSEnter==t&&(e.someProp(`handleKeyDown`,t=>t(e,Uv(13,`Enter`))),e.input.lastIOSEnter=0)},200)}else e.someProp(`handleKeyDown`,t=>t(e,n))||Zb(e,n)?n.preventDefault():yx(e,`key`)},hx.keyup=(e,t)=>{t.keyCode==16&&(e.input.shiftKey=!1)},hx.keypress=(e,t)=>{let n=t;if(Vx(e)||!n.charCode||n.ctrlKey&&!n.altKey||oy&&n.metaKey)return;if(e.someProp(`handleKeyPress`,t=>t(e,n))){n.preventDefault();return}let r=e.state.selection;if(!(r instanceof cv)||!r.$from.sameParent(r.$to)){let t=String.fromCharCode(n.charCode),i=()=>e.state.tr.insertText(t).scrollIntoView();!/[\r\n]/.test(t)&&!e.someProp(`handleTextInput`,n=>n(e,r.$from.pos,r.$to.pos,t,i))&&e.dispatch(i()),n.preventDefault()}};function Tx(e){return{left:e.clientX,top:e.clientY}}function Ex(e,t){let n=t.x-e.clientX,r=t.y-e.clientY;return n*n+r*r<100}function Dx(e,t,n,r,i){if(r==-1)return!1;let a=e.state.doc.resolve(r);for(let r=a.depth+1;r>0;r--)if(e.someProp(t,t=>r>a.depth?t(e,n,a.nodeAfter,a.before(r),i,!0):t(e,n,a.node(r),a.before(r),i,!1)))return!0;return!1}function Ox(e,t,n){if(e.focused||e.focus(),e.state.selection.eq(t))return;let r=e.state.tr.setSelection(t);n==`pointer`&&r.setMeta(`pointer`,!0),e.dispatch(r)}function kx(e,t){if(t==-1)return!1;let n=e.state.doc.resolve(t),r=n.nodeAfter;return r&&r.isAtom&&Q.isSelectable(r)?(Ox(e,new Q(n),`pointer`),!0):!1}function Ax(e,t){if(t==-1)return!1;let n=e.state.selection,r,i;n instanceof Q&&(r=n.node);let a=e.state.doc.resolve(t);for(let e=a.depth+1;e>0;e--){let t=e>a.depth?a.nodeAfter:a.node(e);if(Q.isSelectable(t)){i=r&&n.$from.depth>0&&e>=n.$from.depth&&a.before(n.$from.depth+1)==n.$from.pos?a.before(n.$from.depth):a.before(e);break}}return i==null?!1:(Ox(e,Q.create(e.state.doc,i),`pointer`),!0)}function jx(e,t,n,r,i){return Dx(e,`handleClickOn`,t,n,r)||e.someProp(`handleClick`,n=>n(e,t,r))||(i?Ax(e,n):kx(e,n))}function Mx(e,t,n,r){return Dx(e,`handleDoubleClickOn`,t,n,r)||e.someProp(`handleDoubleClick`,n=>n(e,t,r))}function Nx(e,t,n,r){return Dx(e,`handleTripleClickOn`,t,n,r)||e.someProp(`handleTripleClick`,n=>n(e,t,r))||Px(e,n,r)}function Px(e,t,n){if(n.button!=0)return!1;let r=Fx(e,t,!0),i=e.state.doc;return r?(Ox(e,r,`pointer`),r instanceof cv&&i.eq(e.state.doc)&&(e.input.mouseDown=new Bx(e,r)),!0):!1}function Fx(e,t,n){let r=e.state.doc;if(t==-1)return r.inlineContent?cv.create(r,0,r.content.size):null;let i=r.resolve(t);for(let e=i.depth+1;e>0;e--){let t=e>i.depth?i.nodeAfter:i.node(e),a=i.before(e);if(t.inlineContent)return cv.create(r,a+1,a+1+t.content.size);if(n&&Q.isSelectable(t))return Q.create(r,a)}return null}function Ix(e){return qx(e)}var Lx=oy?`metaKey`:`ctrlKey`;mx.mousedown=(e,t)=>{let n=t;e.input.shiftKey=n.shiftKey;let r=Ix(e),i=Date.now(),a=`singleClick`;i-e.input.lastClick.time<500&&Ex(n,e.input.lastClick)&&!n[Lx]&&e.input.lastClick.button==n.button&&(e.input.lastClick.type==`singleClick`?a=`doubleClick`:e.input.lastClick.type==`doubleClick`&&(a=`tripleClick`)),e.input.lastClick={time:i,x:n.clientX,y:n.clientY,type:a,button:n.button},e.input.mouseDown&&e.input.mouseDown.done();let o=e.posAtCoords(Tx(n));o&&(a==`singleClick`?e.input.mouseDown=new zx(e,o,n,!!r):(a==`doubleClick`?Mx:Nx)(e,o.pos,o.inside,n)?n.preventDefault():yx(e,`pointer`))};var Rx=class{constructor(e){this.view=e,this.mightDrag=null,e.root.addEventListener(`mouseup`,this.up=this.up.bind(this)),e.root.addEventListener(`mousemove`,this.move=this.move.bind(this))}up(e){this.done()}move(e){e.buttons==0&&this.done()}done(){this.view.root.removeEventListener(`mouseup`,this.up),this.view.root.removeEventListener(`mousemove`,this.move),this.view.input.mouseDown==this&&(this.view.input.mouseDown=null)}delaySelUpdate(){return!1}},zx=class extends Rx{constructor(e,t,n,r){super(e),this.pos=t,this.event=n,this.flushed=r,this.delayedSelectionSync=!1,this.startDoc=e.state.doc,this.selectNode=!!n[Lx],this.allowDefault=n.shiftKey;let i,a;if(t.inside>-1)i=e.state.doc.nodeAt(t.inside),a=t.inside;else{let n=e.state.doc.resolve(t.pos);i=n.parent,a=n.depth?n.before():0}let o=r?null:n.target,s=o?e.docView.nearestDesc(o,!0):null;this.target=s&&s.nodeDOM.nodeType==1?s.nodeDOM:null;let{selection:c}=e.state;n.button==0&&(i.type.spec.draggable&&i.type.spec.selectable!==!1||c instanceof Q&&c.from<=a&&c.to>a)&&(this.mightDrag={node:i,pos:a,addAttr:!!(this.target&&!this.target.draggable),setUneditable:!!(this.target&&ey&&!this.target.hasAttribute(`contentEditable`))}),this.target&&this.mightDrag&&(this.mightDrag.addAttr||this.mightDrag.setUneditable)&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&(this.target.draggable=!0),this.mightDrag.setUneditable&&setTimeout(()=>{this.view.input.mouseDown==this&&this.target.setAttribute(`contentEditable`,`false`)},20),this.view.domObserver.start()),yx(e,`pointer`)}done(){super.done(),this.mightDrag&&this.target&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&this.target.removeAttribute(`draggable`),this.mightDrag.setUneditable&&this.target.removeAttribute(`contentEditable`),this.view.domObserver.start()),this.delayedSelectionSync&&setTimeout(()=>{this.view.isDestroyed||bb(this.view)})}up(e){if(this.done(),!this.view.dom.contains(e.target))return;let t=this.pos;this.view.state.doc!=this.startDoc&&(t=this.view.posAtCoords(Tx(e))),this.updateAllowDefault(e),this.allowDefault||!t?yx(this.view,`pointer`):jx(this.view,t.pos,t.inside,e,this.selectNode)?e.preventDefault():e.button==0&&(this.flushed||iy&&this.mightDrag&&!this.mightDrag.node.isAtom||ny&&!this.view.state.selection.visible&&Math.min(Math.abs(t.pos-this.view.state.selection.from),Math.abs(t.pos-this.view.state.selection.to))<=2)?(Ox(this.view,iv.near(this.view.state.doc.resolve(t.pos)),`pointer`),e.preventDefault()):yx(this.view,`pointer`)}move(e){this.updateAllowDefault(e),yx(this.view,`pointer`),super.move(e)}updateAllowDefault(e){!this.allowDefault&&(Math.abs(this.event.x-e.clientX)>4||Math.abs(this.event.y-e.clientY)>4)&&(this.allowDefault=!0)}delaySelUpdate(){return this.allowDefault?(this.delayedSelectionSync=!0,!0):!1}},Bx=class extends Rx{constructor(e,t){super(e),this.startSelection=t,this.startDoc=e.state.doc}move(e){if(e.buttons==0||this.view.isDestroyed||!this.view.state.doc.eq(this.startDoc)){this.done();return}e.preventDefault(),yx(this.view,`pointer`);let t=this.view.posAtCoords(Tx(e)),n=t&&Fx(this.view,t.inside,!1);if(!n)return;let{doc:r}=this.view.state,i=this.startSelection,[a,o]=n.from<i.from?[i.to,n.from]:[i.from,n.to];Ox(this.view,cv.create(r,a,o),`pointer`)}};mx.touchstart=e=>{e.input.lastTouch=Date.now(),Ix(e),yx(e,`pointer`)},mx.touchmove=e=>{e.input.lastTouch=Date.now(),yx(e,`pointer`)},mx.contextmenu=e=>Ix(e);function Vx(e,t){return e.composing?!0:iy&&Math.abs(Date.now()-e.input.compositionEndedAt)<500?(e.input.compositionEndedAt=-2e8,!0):!1}var Hx=cy?5e3:-1;hx.compositionstart=hx.compositionupdate=e=>{if(!e.composing){e.domObserver.flush();let{state:t}=e,n=t.selection.$to;if(t.selection instanceof cv&&(t.storedMarks||!n.textOffset&&n.parentOffset&&n.nodeBefore.marks.some(e=>e.type.spec.inclusive===!1)||ny&&sy&&Ux(e)))e.markCursor=e.state.storedMarks||n.marks(),qx(e,!0),e.markCursor=null;else if(qx(e,!t.selection.empty),ey&&t.selection.empty&&n.parentOffset&&!n.textOffset&&n.nodeBefore.marks.length){let t=e.domSelectionRange();for(let n=t.focusNode,r=t.focusOffset;n&&n.nodeType==1&&r!=0;){let t=r<0?n.lastChild:n.childNodes[r-1];if(!t)break;if(t.nodeType==3){let n=e.domSelection();n&&n.collapse(t,t.nodeValue.length);break}else n=t,r=-1}}e.input.composing=!0}Wx(e,Hx)};function Ux(e){let{focusNode:t,focusOffset:n}=e.domSelectionRange();if(!t||t.nodeType!=1||n>=t.childNodes.length)return!1;let r=t.childNodes[n];return r.nodeType==1&&r.contentEditable==`false`}hx.compositionend=(e,t)=>{e.composing&&(e.input.composing=!1,e.input.compositionEndedAt=Date.now(),e.input.compositionPendingChanges=e.domObserver.pendingRecords().length?e.input.compositionID:0,e.input.compositionNode=null,e.input.badSafariComposition?e.domObserver.forceFlush():e.input.compositionPendingChanges&&Promise.resolve().then(()=>e.domObserver.flush()),e.input.compositionID++,Wx(e,20))};function Wx(e,t){clearTimeout(e.input.composingTimeout),t>-1&&(e.input.composingTimeout=setTimeout(()=>qx(e),t))}function Gx(e){for(e.composing&&(e.input.composing=!1,e.input.compositionEndedAt=Date.now());e.input.compositionNodes.length>0;)e.input.compositionNodes.pop().markParentsDirty()}function Kx(e){let t=e.domSelectionRange();if(!t.focusNode)return null;let n=Rv(t.focusNode,t.focusOffset),r=zv(t.focusNode,t.focusOffset);if(n&&r&&n!=r){let t=r.pmViewDesc,i=e.domObserver.lastChangedTextNode;if(n==i||r==i)return i;if(!t||!t.isText(r.nodeValue))return r;if(e.input.compositionNode==r){let e=n.pmViewDesc;if(!(!e||!e.isText(n.nodeValue)))return r}}return n||r}function qx(e,t=!1){if(!(cy&&e.domObserver.flushingSoon>=0)){if(e.domObserver.forceFlush(),Gx(e),t||e.docView&&e.docView.dirty){let n=vb(e),r=e.state.selection;return n&&!n.eq(r)?e.dispatch(e.state.tr.setSelection(n)):(e.markCursor||t)&&!r.$from.node(r.$from.sharedDepth(r.to)).inlineContent?e.dispatch(e.state.tr.deleteSelection()):e.updateState(e.state),!0}return!1}}function Jx(e,t){if(!e.dom.parentNode)return;let n=e.dom.parentNode.appendChild(document.createElement(`div`));n.appendChild(t),n.style.cssText=`position: fixed; left: -10000px; top: 10px`;let r=getSelection(),i=document.createRange();i.selectNodeContents(t),e.dom.blur(),r.removeAllRanges(),r.addRange(i),setTimeout(()=>{n.parentNode&&n.parentNode.removeChild(n),e.focus()},50)}var Yx=Qv&&$v<15||ay&&uy<604;mx.copy=hx.cut=(e,t)=>{let n=t,r=e.state.selection,i=n.type==`cut`;if(r.empty)return;let a=Yx?null:n.clipboardData,{dom:o,text:s}=Qb(e,r.content());a?(n.preventDefault(),a.clearData(),a.setData(`text/html`,o.innerHTML),a.setData(`text/plain`,s)):Jx(e,o),i&&e.dispatch(e.state.tr.deleteSelection().scrollIntoView().setMeta(`uiEvent`,`cut`))};function Xx(e){return e.openStart==0&&e.openEnd==0&&e.content.childCount==1?e.content.firstChild:null}function Zx(e,t){if(!e.dom.parentNode)return;let n=e.input.shiftKey||e.state.selection.$from.parent.type.spec.code,r=e.dom.parentNode.appendChild(document.createElement(n?`textarea`:`div`));n||(r.contentEditable=`true`),r.style.cssText=`position: fixed; left: -10000px; top: 10px`,r.focus();let i=e.input.shiftKey&&e.input.lastKeyCode!=45;setTimeout(()=>{e.focus(),r.parentNode&&r.parentNode.removeChild(r),n?Qx(e,r.value,null,i,t):Qx(e,r.textContent,r.innerHTML,i,t)},50)}function Qx(e,t,n,r,i){let a=$b(e,t,n,r,e.state.selection.$from);if(e.someProp(`handlePaste`,t=>t(e,i,a||Z.empty)))return!0;if(!a)return!1;let o=Xx(a),s=o?e.state.tr.replaceSelectionWith(o,r):e.state.tr.replaceSelection(a);return e.dispatch(s.scrollIntoView().setMeta(`paste`,!0).setMeta(`uiEvent`,`paste`)),!0}function $x(e){let t=e.getData(`text/plain`)||e.getData(`Text`);if(t)return t;let n=e.getData(`text/uri-list`);return n?n.replace(/\r?\n/g,` `):``}hx.paste=(e,t)=>{let n=t;if(e.composing&&!cy)return;let r=Yx?null:n.clipboardData,i=e.input.shiftKey&&e.input.lastKeyCode!=45;r&&Qx(e,$x(r),r.getData(`text/html`),i,n)?n.preventDefault():Zx(e,n)};var eS=class{constructor(e,t,n){this.slice=e,this.move=t,this.node=n}},tS=oy?`altKey`:`ctrlKey`;function nS(e,t){let n;return e.someProp(`dragCopies`,e=>{n||=e(t)}),n==null?!t[tS]:!n}mx.dragstart=(e,t)=>{let n=t,r=e.input.mouseDown;if(r&&r.done(),!n.dataTransfer)return;let i=e.state.selection,a=i.empty?null:e.posAtCoords(Tx(n)),o;if(!(a&&a.pos>=i.from&&a.pos<=(i instanceof Q?i.to-1:i.to))){if(r&&r.mightDrag)o=Q.create(e.state.doc,r.mightDrag.pos);else if(n.target&&n.target.nodeType==1){let t=e.docView.nearestDesc(n.target,!0);t&&t.node.type.spec.draggable&&t!=e.docView&&(o=Q.create(e.state.doc,t.posBefore))}}let{dom:s,text:c,slice:l}=Qb(e,(o||e.state.selection).content());(!n.dataTransfer.files.length||!ny||ry>120)&&n.dataTransfer.clearData(),n.dataTransfer.setData(Yx?`Text`:`text/html`,s.innerHTML),n.dataTransfer.effectAllowed=`copyMove`,Yx||n.dataTransfer.setData(`text/plain`,c),e.dragging=new eS(l,nS(e,n),o)},mx.dragend=e=>{let t=e.dragging;window.setTimeout(()=>{e.dragging==t&&(e.dragging=null)},50)},hx.dragover=hx.dragenter=(e,t)=>t.preventDefault(),hx.drop=(e,t)=>{try{rS(e,t,e.dragging)}finally{e.dragging=null}};function rS(e,t,n){if(!t.dataTransfer)return;let r=e.posAtCoords(Tx(t));if(!r)return;let i=e.state.doc.resolve(r.pos),a=n&&n.slice;a?e.someProp(`transformPasted`,t=>{a=t(a,e,!1)}):a=$b(e,$x(t.dataTransfer),Yx?null:t.dataTransfer.getData(`text/html`),!1,i);let o=!!(n&&nS(e,t));if(e.someProp(`handleDrop`,n=>n(e,t,a||Z.empty,o))){t.preventDefault();return}if(!a)return;t.preventDefault();let s=a?L_(e.state.doc,i.pos,a):i.pos;s??=i.pos;let c=e.state.tr;if(o){let{node:e}=n;e?e.replace(c):c.deleteSelection()}let l=c.mapping.map(s),u=a.openStart==0&&a.openEnd==0&&a.content.childCount==1,d=c.doc;if(u?c.replaceRangeWith(l,l,a.content.firstChild):c.replaceRange(l,l,a),c.doc.eq(d))return;let f=c.doc.resolve(l);if(u&&Q.isSelectable(a.content.firstChild)&&f.nodeAfter&&f.nodeAfter.sameMarkup(a.content.firstChild))c.setSelection(new Q(f));else{let t=c.mapping.map(s);c.mapping.maps[c.mapping.maps.length-1].forEach((e,n,r,i)=>t=i),c.setSelection(kb(e,f,c.doc.resolve(t)))}e.focus(),e.dispatch(c.setMeta(`uiEvent`,`drop`))}mx.focus=e=>{e.input.lastFocus=Date.now(),e.focused||(e.domObserver.stop(),e.dom.classList.add(`ProseMirror-focused`),e.domObserver.start(),e.focused=!0,setTimeout(()=>{e.docView&&e.hasFocus()&&!e.domObserver.currentSelection.eq(e.domSelectionRange())&&bb(e)},20))},mx.blur=(e,t)=>{let n=t;e.focused&&=(e.domObserver.stop(),e.dom.classList.remove(`ProseMirror-focused`),e.domObserver.start(),n.relatedTarget&&e.dom.contains(n.relatedTarget)&&e.domObserver.currentSelection.clear(),!1)},mx.beforeinput=(e,t)=>{if(ny&&cy&&t.inputType==`deleteContentBackward`){e.domObserver.flushSoon();let{domChangeCount:t}=e.input;setTimeout(()=>{if(e.input.domChangeCount!=t||(e.dom.blur(),e.focus(),e.someProp(`handleKeyDown`,t=>t(e,Uv(8,`Backspace`)))))return;let{$cursor:n}=e.state.selection;n&&n.pos>0&&e.dispatch(e.state.tr.delete(n.pos-1,n.pos).scrollIntoView())},50)}};for(let e in hx)mx[e]=hx[e];function iS(e,t){if(e==t)return!0;for(let n in e)if(e[n]!==t[n])return!1;for(let n in t)if(!(n in e))return!1;return!0}var aS=class e{constructor(e,t){this.toDOM=e,this.spec=t||uS,this.side=this.spec.side||0}map(e,t,n,r){let{pos:i,deleted:a}=e.mapResult(t.from+r,this.side<0?-1:1);return a?null:new cS(i-n,i-n,this)}valid(){return!0}eq(t){return this==t||t instanceof e&&(this.spec.key&&this.spec.key==t.spec.key||this.toDOM==t.toDOM&&iS(this.spec,t.spec))}destroy(e){this.spec.destroy&&this.spec.destroy(e)}},oS=class e{constructor(e,t){this.attrs=e,this.spec=t||uS}map(e,t,n,r){let i=e.map(t.from+r,this.spec.inclusiveStart?-1:1)-n,a=e.map(t.to+r,this.spec.inclusiveEnd?1:-1)-n;return i>=a?null:new cS(i,a,this)}valid(e,t){return t.from<t.to}eq(t){return this==t||t instanceof e&&iS(this.attrs,t.attrs)&&iS(this.spec,t.spec)}static is(t){return t.type instanceof e}destroy(){}},sS=class e{constructor(e,t){this.attrs=e,this.spec=t||uS}map(e,t,n,r){let i=e.mapResult(t.from+r,1);if(i.deleted)return null;let a=e.mapResult(t.to+r,-1);return a.deleted||a.pos<=i.pos?null:new cS(i.pos-n,a.pos-n,this)}valid(e,t){let{index:n,offset:r}=e.content.findIndex(t.from),i;return r==t.from&&!(i=e.child(n)).isText&&r+i.nodeSize==t.to}eq(t){return this==t||t instanceof e&&iS(this.attrs,t.attrs)&&iS(this.spec,t.spec)}destroy(){}},cS=class e{constructor(e,t,n){this.from=e,this.to=t,this.type=n}copy(t,n){return new e(t,n,this.type)}eq(e,t=0){return this.type.eq(e.type)&&this.from+t==e.from&&this.to+t==e.to}map(e,t,n){return this.type.map(e,this,t,n)}static widget(t,n,r){return new e(t,t,new aS(n,r))}static inline(t,n,r,i){return new e(t,n,new oS(r,i))}static node(t,n,r,i){return new e(t,n,new sS(r,i))}get spec(){return this.type.spec}get inline(){return this.type instanceof oS}get widget(){return this.type instanceof aS}},lS=[],uS={},dS=class e{constructor(e,t){this.local=e.length?e:lS,this.children=t.length?t:lS}static create(e,t){return t.length?yS(t,e,0,uS):fS}find(e,t,n){let r=[];return this.findInner(e??0,t??1e9,r,0,n),r}findInner(e,t,n,r,i){for(let a=0;a<this.local.length;a++){let o=this.local[a];o.from<=t&&o.to>=e&&(!i||i(o.spec))&&n.push(o.copy(o.from+r,o.to+r))}for(let a=0;a<this.children.length;a+=3)if(this.children[a]<t&&this.children[a+1]>e){let o=this.children[a]+1;this.children[a+2].findInner(e-o,t-o,n,r+o,i)}}map(e,t,n){return this==fS||e.maps.length==0?this:this.mapInner(e,t,0,0,n||uS)}mapInner(t,n,r,i,a){let o;for(let e=0;e<this.local.length;e++){let s=this.local[e].map(t,r,i);s&&s.type.valid(n,s)?(o||=[]).push(s):a.onRemove&&a.onRemove(this.local[e].spec)}return this.children.length?mS(this.children,o||[],t,n,r,i,a):o?new e(o.sort(bS),lS):fS}add(t,n){return n.length?this==fS?e.create(t,n):this.addInner(t,n,0):this}addInner(t,n,r){let i,a=0;t.forEach((e,t)=>{let o=t+r,s;if(s=_S(n,e,o)){for(i||=this.children.slice();a<i.length&&i[a]<t;)a+=3;i[a]==t?i[a+2]=i[a+2].addInner(e,s,o+1):i.splice(a,0,t,t+e.nodeSize,yS(s,e,o+1,uS)),a+=3}});let o=hS(a?vS(n):n,-r);for(let e=0;e<o.length;e++)o[e].type.valid(t,o[e])||o.splice(e--,1);return new e(o.length?this.local.concat(o).sort(bS):this.local,i||this.children)}remove(e){return e.length==0||this==fS?this:this.removeInner(e,0)}removeInner(t,n){let r=this.children,i=this.local;for(let e=0;e<r.length;e+=3){let i,a=r[e]+n,o=r[e+1]+n;for(let e=0,n;e<t.length;e++)(n=t[e])&&n.from>a&&n.to<o&&(t[e]=null,(i||=[]).push(n));if(!i)continue;r==this.children&&(r=this.children.slice());let s=r[e+2].removeInner(i,a+1);s==fS?(r.splice(e,3),e-=3):r[e+2]=s}if(i.length){for(let e=0,r;e<t.length;e++)if(r=t[e])for(let e=0;e<i.length;e++)i[e].eq(r,n)&&(i==this.local&&(i=this.local.slice()),i.splice(e--,1))}return r==this.children&&i==this.local?this:i.length||r.length?new e(i,r):fS}forChild(t,n){if(this==fS)return this;if(n.isLeaf)return e.empty;let r,i;for(let e=0;e<this.children.length;e+=3)if(this.children[e]>=t){this.children[e]==t&&(r=this.children[e+2]);break}let a=t+1,o=a+n.content.size;for(let e=0;e<this.local.length;e++){let t=this.local[e];if(t.from<o&&t.to>a&&t.type instanceof oS){let e=Math.max(a,t.from)-a,n=Math.min(o,t.to)-a;e<n&&(i||=[]).push(t.copy(e,n))}}if(i){let t=new e(i.sort(bS),lS);return r?new pS([t,r]):t}return r||fS}eq(t){if(this==t)return!0;if(!(t instanceof e)||this.local.length!=t.local.length||this.children.length!=t.children.length)return!1;for(let e=0;e<this.local.length;e++)if(!this.local[e].eq(t.local[e]))return!1;for(let e=0;e<this.children.length;e+=3)if(this.children[e]!=t.children[e]||this.children[e+1]!=t.children[e+1]||!this.children[e+2].eq(t.children[e+2]))return!1;return!0}locals(e){return xS(this.localsInner(e))}localsInner(e){if(this==fS)return lS;if(e.inlineContent||!this.local.some(oS.is))return this.local;let t=[];for(let e=0;e<this.local.length;e++)this.local[e].type instanceof oS||t.push(this.local[e]);return t}forEachSet(e){e(this)}};dS.empty=new dS([],[]),dS.removeOverlap=xS;var fS=dS.empty,pS=class e{constructor(e){this.members=e}map(t,n){let r=this.members.map(e=>e.map(t,n,uS));return e.from(r)}forChild(t,n){if(n.isLeaf)return dS.empty;let r=[];for(let i=0;i<this.members.length;i++){let a=this.members[i].forChild(t,n);a!=fS&&(a instanceof e?r=r.concat(a.members):r.push(a))}return e.from(r)}eq(t){if(!(t instanceof e)||t.members.length!=this.members.length)return!1;for(let e=0;e<this.members.length;e++)if(!this.members[e].eq(t.members[e]))return!1;return!0}locals(e){let t,n=!0;for(let r=0;r<this.members.length;r++){let i=this.members[r].localsInner(e);if(i.length)if(!t)t=i;else{n&&=(t=t.slice(),!1);for(let e=0;e<i.length;e++)t.push(i[e])}}return t?xS(n?t:t.sort(bS)):lS}static from(t){switch(t.length){case 0:return fS;case 1:return t[0];default:return new e(t.every(e=>e instanceof dS)?t:t.reduce((e,t)=>e.concat(t instanceof dS?t:t.members),[]))}}forEachSet(e){for(let t=0;t<this.members.length;t++)this.members[t].forEachSet(e)}};function mS(e,t,n,r,i,a,o){let s=e.slice();for(let e=0,t=a;e<n.maps.length;e++){let r=0;n.maps[e].forEach((e,n,i,a)=>{let o=a-i-(n-e);for(let i=0;i<s.length;i+=3){let a=s[i+1];if(a<0||e>a+t-r)continue;let c=s[i]+t-r;n>=c?s[i+1]=e<=c?-2:-1:e>=t&&o&&(s[i]+=o,s[i+1]+=o)}r+=o}),t=n.maps[e].map(t,-1)}let c=!1;for(let t=0;t<s.length;t+=3)if(s[t+1]<0){if(s[t+1]==-2){c=!0,s[t+1]=-1;continue}let l=n.map(e[t]+a),u=l-i;if(u<0||u>=r.content.size){c=!0;continue}let d=n.map(e[t+1]+a,-1)-i,{index:f,offset:p}=r.content.findIndex(u),m=r.maybeChild(f);if(m&&p==u&&p+m.nodeSize==d){let r=s[t+2].mapInner(n,m,l+1,e[t]+a+1,o);r==fS?(s[t+1]=-2,c=!0):(s[t]=u,s[t+1]=d,s[t+2]=r)}else c=!0}if(c){let c=yS(gS(s,e,t,n,i,a,o),r,0,o);t=c.local;for(let e=0;e<s.length;e+=3)s[e+1]<0&&(s.splice(e,3),e-=3);for(let e=0,t=0;e<c.children.length;e+=3){let n=c.children[e];for(;t<s.length&&s[t]<n;)t+=3;s.splice(t,0,c.children[e],c.children[e+1],c.children[e+2])}}return new dS(t.sort(bS),s)}function hS(e,t){if(!t||!e.length)return e;let n=[];for(let r=0;r<e.length;r++){let i=e[r];n.push(new cS(i.from+t,i.to+t,i.type))}return n}function gS(e,t,n,r,i,a,o){function s(e,t){for(let a=0;a<e.local.length;a++){let s=e.local[a].map(r,i,t);s?n.push(s):o.onRemove&&o.onRemove(e.local[a].spec)}for(let n=0;n<e.children.length;n+=3)s(e.children[n+2],e.children[n]+t+1)}for(let n=0;n<e.length;n+=3)e[n+1]==-1&&s(e[n+2],t[n]+a+1);return n}function _S(e,t,n){if(t.isLeaf)return null;let r=n+t.nodeSize,i=null;for(let t=0,a;t<e.length;t++)(a=e[t])&&a.from>n&&a.to<r&&((i||=[]).push(a),e[t]=null);return i}function vS(e){let t=[];for(let n=0;n<e.length;n++)e[n]!=null&&t.push(e[n]);return t}function yS(e,t,n,r){let i=[],a=!1;t.forEach((t,o)=>{let s=_S(e,t,o+n);if(s){a=!0;let e=yS(s,t,n+o+1,r);e!=fS&&i.push(o,o+t.nodeSize,e)}});let o=hS(a?vS(e):e,-n).sort(bS);for(let e=0;e<o.length;e++)o[e].type.valid(t,o[e])||(r.onRemove&&r.onRemove(o[e].spec),o.splice(e--,1));return o.length||i.length?new dS(o,i):fS}function bS(e,t){return e.from-t.from||e.to-t.to}function xS(e){let t=e;for(let n=0;n<t.length-1;n++){let r=t[n];if(r.from!=r.to)for(let i=n+1;i<t.length;i++){let a=t[i];if(a.from==r.from){a.to!=r.to&&(t==e&&(t=e.slice()),t[i]=a.copy(a.from,r.to),SS(t,i+1,a.copy(r.to,a.to)));continue}else{a.from<r.to&&(t==e&&(t=e.slice()),t[n]=r.copy(r.from,a.from),SS(t,i,r.copy(a.from,r.to)));break}}}return t}function SS(e,t,n){for(;t<e.length&&bS(n,e[t])>0;)t++;e.splice(t,0,n)}function CS(e){let t=[];return e.someProp(`decorations`,n=>{let r=n(e.state);r&&r!=fS&&t.push(r)}),e.cursorWrapper&&t.push(dS.create(e.state.doc,[e.cursorWrapper.deco])),pS.from(t)}var wS={childList:!0,characterData:!0,characterDataOldValue:!0,attributes:!0,attributeOldValue:!0,subtree:!0},TS=Qv&&$v<=11,ES=class{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}set(e){this.anchorNode=e.anchorNode,this.anchorOffset=e.anchorOffset,this.focusNode=e.focusNode,this.focusOffset=e.focusOffset}clear(){this.anchorNode=this.focusNode=null}eq(e){return e.anchorNode==this.anchorNode&&e.anchorOffset==this.anchorOffset&&e.focusNode==this.focusNode&&e.focusOffset==this.focusOffset}},DS=class{constructor(e,t){this.view=e,this.handleDOMChange=t,this.queue=[],this.flushingSoon=-1,this.observer=null,this.currentSelection=new ES,this.onCharData=null,this.suppressingSelectionUpdates=!1,this.lastChangedTextNode=null,this.observer=window.MutationObserver&&new window.MutationObserver(t=>{for(let e=0;e<t.length;e++)this.queue.push(t[e]);Qv&&$v<=11&&t.some(e=>e.type==`childList`&&e.removedNodes.length||e.type==`characterData`&&e.oldValue.length>e.target.nodeValue.length)?this.flushSoon():iy&&e.composing&&t.some(e=>e.type==`childList`&&e.target.nodeName==`TR`)?(e.input.badSafariComposition=!0,this.flushSoon()):this.flush()}),TS&&(this.onCharData=e=>{this.queue.push({target:e.target,type:`characterData`,oldValue:e.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this)}flushSoon(){this.flushingSoon<0&&(this.flushingSoon=window.setTimeout(()=>{this.flushingSoon=-1,this.flush()},20))}forceFlush(){this.flushingSoon>-1&&(window.clearTimeout(this.flushingSoon),this.flushingSoon=-1,this.flush())}start(){this.observer&&(this.observer.takeRecords(),this.observer.observe(this.view.dom,wS)),this.onCharData&&this.view.dom.addEventListener(`DOMCharacterDataModified`,this.onCharData),this.connectSelection()}stop(){if(this.observer){let e=this.observer.takeRecords();if(e.length){for(let t=0;t<e.length;t++)this.queue.push(e[t]);window.setTimeout(()=>this.flush(),20)}this.observer.disconnect()}this.onCharData&&this.view.dom.removeEventListener(`DOMCharacterDataModified`,this.onCharData),this.disconnectSelection()}connectSelection(){this.view.dom.ownerDocument.addEventListener(`selectionchange`,this.onSelectionChange)}disconnectSelection(){this.view.dom.ownerDocument.removeEventListener(`selectionchange`,this.onSelectionChange)}suppressSelectionUpdates(){this.suppressingSelectionUpdates=!0,setTimeout(()=>this.suppressingSelectionUpdates=!1,50)}onSelectionChange(){if(Ab(this.view)){if(this.suppressingSelectionUpdates)return bb(this.view);if(Qv&&$v<=11&&!this.view.state.selection.empty){let e=this.view.domSelectionRange();if(e.focusNode&&Pv(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset))return this.flushSoon()}this.flush()}}setCurSelection(){this.currentSelection.set(this.view.domSelectionRange())}ignoreSelectionChange(e){if(!e.focusNode)return!0;let t=new Set,n;for(let n=e.focusNode;n;n=Av(n))t.add(n);for(let r=e.anchorNode;r;r=Av(r))if(t.has(r)){n=r;break}let r=n&&this.view.docView.nearestDesc(n);if(r&&r.ignoreMutation({type:`selection`,target:n.nodeType==3?n.parentNode:n}))return this.setCurSelection(),!0}pendingRecords(){if(this.observer)for(let e of this.observer.takeRecords())this.queue.push(e);return this.queue}flush(){let{view:e}=this;if(!e.docView||this.flushingSoon>-1)return;let t=this.pendingRecords();t.length&&(this.queue=[]);let n=e.domSelectionRange(),r=!this.suppressingSelectionUpdates&&!this.currentSelection.eq(n)&&Ab(e)&&!this.ignoreSelectionChange(n),i=-1,a=-1,o=!1,s=[];if(e.editable)for(let e=0;e<t.length;e++){let n=this.registerMutation(t[e],s);n&&(i=i<0?n.from:Math.min(n.from,i),a=a<0?n.to:Math.max(n.to,a),n.typeOver&&(o=!0))}if(s.some(e=>e.nodeName==`BR`)&&(e.input.lastKeyCode==8||e.input.lastKeyCode==46||ny&&(e.composing||e.input.compositionEndedAt>Date.now()-50)&&t.some(e=>e.type==`childList`&&e.removedNodes.length))){for(let e of s)if(e.nodeName==`BR`&&e.parentNode){let t=e.nextSibling;for(;t&&t.nodeType==1;){if(t.contentEditable==`false`){e.parentNode.removeChild(e);break}t=t.firstChild}}}else if(ey&&s.length){let t=s.filter(e=>e.nodeName==`BR`);if(t.length==2){let[e,n]=t;e.parentNode&&e.parentNode.parentNode==n.parentNode?n.remove():e.remove()}else{let{focusNode:n}=this.currentSelection;for(let r of t){let t=r.parentNode;t&&t.nodeName==`LI`&&(!n||NS(e,n)!=t)&&r.remove()}}}let c=null;i<0&&r&&e.input.lastFocus>Date.now()-200&&Math.max(e.input.lastTouch,e.input.lastClick.time)<Date.now()-300&&Hv(n)&&(c=vb(e))&&c.eq(iv.near(e.state.doc.resolve(0),1))?(e.input.lastFocus=0,bb(e),this.currentSelection.set(n),e.scrollToSelection()):(i>-1||r)&&(i>-1&&(e.docView.markDirty(i,a),AS(e)),e.input.badSafariComposition&&(e.input.badSafariComposition=!1,PS(e,s)),this.handleDOMChange(i,a,o,s),e.docView&&e.docView.dirty?e.updateState(e.state):this.currentSelection.eq(n)||bb(e),this.currentSelection.set(n))}registerMutation(e,t){if(t.indexOf(e.target)>-1)return null;let n=this.view.docView.nearestDesc(e.target);if(e.type==`attributes`&&(n==this.view.docView||e.attributeName==`contenteditable`||e.attributeName==`style`&&!e.oldValue&&!e.target.getAttribute(`style`))||!n||n.ignoreMutation(e))return null;if(e.type==`childList`){for(let n=0;n<e.addedNodes.length;n++){let r=e.addedNodes[n];t.push(r),r.nodeType==3&&(this.lastChangedTextNode=r)}if(n.contentDOM&&n.contentDOM!=n.dom&&!n.contentDOM.contains(e.target))return{from:n.posBefore,to:n.posAfter};let r=e.previousSibling,i=e.nextSibling;if(Qv&&$v<=11&&e.addedNodes.length)for(let t=0;t<e.addedNodes.length;t++){let{previousSibling:n,nextSibling:a}=e.addedNodes[t];(!n||Array.prototype.indexOf.call(e.addedNodes,n)<0)&&(r=n),(!a||Array.prototype.indexOf.call(e.addedNodes,a)<0)&&(i=a)}let a=r&&r.parentNode==e.target?kv(r)+1:0,o=n.localPosFromDOM(e.target,a,-1),s=i&&i.parentNode==e.target?kv(i):e.target.childNodes.length;return{from:o,to:n.localPosFromDOM(e.target,s,1)}}else if(e.type==`attributes`)return{from:n.posAtStart-n.border,to:n.posAtEnd+n.border};else return this.lastChangedTextNode=e.target,{from:n.posAtStart,to:n.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}}},OS=new WeakMap,kS=!1;function AS(e){if(!OS.has(e)&&(OS.set(e,null),[`normal`,`nowrap`,`pre-line`].indexOf(getComputedStyle(e.dom).whiteSpace)!==-1)){if(e.requiresGeckoHackNode=ey,kS)return;console.warn(`ProseMirror expects the CSS white-space property to be set, preferably to 'pre-wrap'. It is recommended to load style/prosemirror.css from the prosemirror-view package.`),kS=!0}}function jS(e,t){let n=t.startContainer,r=t.startOffset,i=t.endContainer,a=t.endOffset,o=e.domAtPos(e.state.selection.anchor);return Pv(o.node,o.offset,i,a)&&([n,r,i,a]=[i,a,n,r]),{anchorNode:n,anchorOffset:r,focusNode:i,focusOffset:a}}function MS(e,t){if(t.getComposedRanges){let n=t.getComposedRanges(e.root)[0];if(n)return jS(e,n)}let n;function r(e){e.preventDefault(),e.stopImmediatePropagation(),n=e.getTargetRanges()[0]}return e.dom.addEventListener(`beforeinput`,r,!0),document.execCommand(`indent`),e.dom.removeEventListener(`beforeinput`,r,!0),n?jS(e,n):null}function NS(e,t){for(let n=t.parentNode;n&&n!=e.dom;n=n.parentNode){let t=e.docView.nearestDesc(n,!0);if(t&&t.node.isBlock)return n}return null}function PS(e,t){let{focusNode:n,focusOffset:r}=e.domSelectionRange();for(let i of t)if(i.parentNode?.nodeName==`TR`){let t=i.nextSibling;for(;t&&t.nodeName!=`TD`&&t.nodeName!=`TH`;)t=t.nextSibling;if(t){let a=t;for(;;){let e=a.firstChild;if(!e||e.nodeType!=1||e.contentEditable==`false`||/^(BR|IMG)$/.test(e.nodeName))break;a=e}a.insertBefore(i,a.firstChild),n==i&&e.domSelection().collapse(i,r)}else i.parentNode.removeChild(i)}}function FS(e,t,n){let{node:r,fromOffset:i,toOffset:a,from:o,to:s}=e.docView.parseRange(t,n),c=e.domSelectionRange(),l,u=c.anchorNode;if(u&&e.dom.contains(u.nodeType==1?u:u.parentNode)&&(l=[{node:u,offset:c.anchorOffset}],Hv(c)||l.push({node:c.focusNode,offset:c.focusOffset})),ny&&e.input.lastKeyCode===8)for(let e=a;e>i;e--){let t=r.childNodes[e-1],n=t.pmViewDesc;if(t.nodeName==`BR`&&!n){a=e;break}if(!n||n.size)break}let d=e.state.doc,f=e.someProp(`domParser`)||Cg.fromSchema(e.state.schema),p=d.resolve(o),m=null,h=f.parse(r,{topNode:p.parent,topMatch:p.parent.contentMatchAt(p.index()),topOpen:!0,from:i,to:a,preserveWhitespace:p.parent.type.whitespace!=`pre`||`full`,findPositions:l,ruleFromNode:IS,context:p});if(l&&l[0].pos!=null){let e=l[0].pos,t=l[1]&&l[1].pos;t??=e,m={anchor:e+o,head:t+o}}return{doc:h,sel:m,from:o,to:s}}function IS(e){let t=e.pmViewDesc;if(t)return t.parseRule();if(e.nodeName==`BR`&&e.parentNode){if(iy&&/^(ul|ol)$/i.test(e.parentNode.nodeName)){let e=document.createElement(`div`);return e.appendChild(document.createElement(`li`)),{skip:e}}else if(e.parentNode.lastChild==e||iy&&/^(tr|table)$/i.test(e.parentNode.nodeName))return{ignore:!0}}else if(e.nodeName==`IMG`&&e.getAttribute(`mark-placeholder`))return{ignore:!0};return null}var LS=/^(a|abbr|acronym|b|bd[io]|big|br|button|cite|code|data(list)?|del|dfn|em|i|img|ins|kbd|label|map|mark|meter|output|q|ruby|s|samp|small|span|strong|su[bp]|time|u|tt|var)$/i;function RS(e,t,n,r,i){let a=e.input.compositionPendingChanges||(e.composing?e.input.compositionID:0);if(e.input.compositionPendingChanges=0,t<0){let t=e.input.lastSelectionTime>Date.now()-50?e.input.lastSelectionOrigin:null,n=vb(e,t);if(n&&!e.state.selection.eq(n)){if(ny&&cy&&e.input.lastKeyCode===13&&Date.now()-100<e.input.lastKeyCodeTime&&e.someProp(`handleKeyDown`,t=>t(e,Uv(13,`Enter`))))return;let r=e.state.tr.setSelection(n);t==`pointer`?r.setMeta(`pointer`,!0):t==`key`&&r.scrollIntoView(),a&&r.setMeta(`composition`,a),e.dispatch(r)}return}let o=e.state.doc.resolve(t),s=o.sharedDepth(n);t=o.before(s+1),n=e.state.doc.resolve(n).after(s+1);let c=e.state.selection,l=FS(e,t,n),u=e.state.doc,d=u.slice(l.from,l.to),f,p;e.input.lastKeyCode===8&&Date.now()-100<e.input.lastKeyCodeTime?(f=e.state.selection.to,p=`end`):(f=e.state.selection.from,p=`start`),e.input.lastKeyCode=null;let m=US(d.content,l.doc.content,l.from,f,p);if(m&&e.input.domChangeCount++,(ay&&e.input.lastIOSEnter>Date.now()-225||cy)&&i.some(e=>e.nodeType==1&&!LS.test(e.nodeName))&&(!m||m.endA>=m.endB)&&e.someProp(`handleKeyDown`,t=>t(e,Uv(13,`Enter`)))){e.input.lastIOSEnter=0;return}if(!m)if(r&&c instanceof cv&&!c.empty&&c.$head.sameParent(c.$anchor)&&!e.composing&&!(l.sel&&l.sel.anchor!=l.sel.head))m={start:c.from,endA:c.to,endB:c.to};else{if(l.sel){let t=zS(e,e.state.doc,l.sel);if(t&&!t.eq(e.state.selection)){let n=e.state.tr.setSelection(t);a&&n.setMeta(`composition`,a),e.dispatch(n)}}return}e.state.selection.from<e.state.selection.to&&m.start==m.endB&&e.state.selection instanceof cv&&(m.start>e.state.selection.from&&m.start<=e.state.selection.from+2&&e.state.selection.from>=l.from?m.start=e.state.selection.from:m.endA<e.state.selection.to&&m.endA>=e.state.selection.to-2&&e.state.selection.to<=l.to&&(m.endB+=e.state.selection.to-m.endA,m.endA=e.state.selection.to)),Qv&&$v<=11&&m.endB==m.start+1&&m.endA==m.start&&m.start>l.from&&l.doc.textBetween(m.start-l.from-1,m.start-l.from+1)==` \xA0`&&(m.start--,m.endA--,m.endB--);let h=l.doc.resolveNoCache(m.start-l.from),g=l.doc.resolveNoCache(m.endB-l.from),_=u.resolve(m.start),v=h.sameParent(g)&&h.parent.inlineContent&&_.end()>=m.endA;if((ay&&e.input.lastIOSEnter>Date.now()-225&&(!v||i.some(e=>e.nodeName==`DIV`||e.nodeName==`P`))||!v&&h.pos<l.doc.content.size&&(!h.sameParent(g)||!h.parent.inlineContent)&&h.pos<g.pos&&!/\S/.test(l.doc.textBetween(h.pos,g.pos,``,``)))&&e.someProp(`handleKeyDown`,t=>t(e,Uv(13,`Enter`)))){e.input.lastIOSEnter=0;return}if(e.state.selection.anchor>m.start&&VS(u,m.start,m.endA,h,g)&&e.someProp(`handleKeyDown`,t=>t(e,Uv(8,`Backspace`)))){cy&&ny&&e.domObserver.suppressSelectionUpdates();return}ny&&m.endB==m.start&&(e.input.lastChromeDelete=Date.now()),cy&&!v&&h.start()!=g.start()&&g.parentOffset==0&&h.depth==g.depth&&l.sel&&l.sel.anchor==l.sel.head&&l.sel.head==m.endA&&(m.endB-=2,g=l.doc.resolveNoCache(m.endB-l.from),setTimeout(()=>{e.someProp(`handleKeyDown`,function(t){return t(e,Uv(13,`Enter`))})},20));let y=m.start,b=m.endA,x=t=>{let n=t||e.state.tr.replace(y,b,l.doc.slice(m.start-l.from,m.endB-l.from));if(l.sel){let t=zS(e,n.doc,l.sel);t&&!(ny&&e.composing&&t.empty&&(m.start!=m.endB||e.input.lastChromeDelete<Date.now()-100)&&(t.head==y||t.head==n.mapping.map(b)-1)||Qv&&t.empty&&t.head==y)&&n.setSelection(t)}return a&&n.setMeta(`composition`,a),n.scrollIntoView()},S;if(v)if(h.pos==g.pos){Qv&&$v<=11&&h.parentOffset==0&&(e.domObserver.suppressSelectionUpdates(),setTimeout(()=>bb(e),20));let t=x(e.state.tr.delete(y,b)),n=u.resolve(m.start).marksAcross(u.resolve(m.endA));n&&t.ensureMarks(n),e.dispatch(t)}else if(m.endA==m.endB&&(S=BS(h.parent.content.cut(h.parentOffset,g.parentOffset),_.parent.content.cut(_.parentOffset,m.endA-_.start())))){let t=x(e.state.tr);S.type==`add`?t.addMark(y,b,S.mark):t.removeMark(y,b,S.mark),e.dispatch(t)}else if(h.parent.child(h.index()).isText&&h.index()==g.index()-+!g.textOffset){let t=h.parent.textBetween(h.parentOffset,g.parentOffset),n=()=>x(e.state.tr.insertText(t,y,b));e.someProp(`handleTextInput`,r=>r(e,y,b,t,n))||e.dispatch(n())}else e.dispatch(x());else e.dispatch(x())}function zS(e,t,n){return Math.max(n.anchor,n.head)>t.content.size?null:kb(e,t.resolve(n.anchor),t.resolve(n.head))}function BS(e,t){let n=e.firstChild.marks,r=t.firstChild.marks,i=n,a=r,o,s,c;for(let e=0;e<r.length;e++)i=r[e].removeFromSet(i);for(let e=0;e<n.length;e++)a=n[e].removeFromSet(a);if(i.length==1&&a.length==0)s=i[0],o=`add`,c=e=>e.mark(s.addToSet(e.marks));else if(i.length==0&&a.length==1)s=a[0],o=`remove`,c=e=>e.mark(s.removeFromSet(e.marks));else return null;let l=[];for(let e=0;e<t.childCount;e++)l.push(c(t.child(e)));if(X.from(l).eq(e))return{mark:s,type:o}}function VS(e,t,n,r,i){if(n-t<=i.pos-r.pos||HS(r,!0,!1)<i.pos)return!1;let a=e.resolve(t);if(!r.parent.isTextblock){let e=a.nodeAfter;return e!=null&&n==t+e.nodeSize}if(a.parentOffset<a.parent.content.size||!a.parent.isTextblock)return!1;let o=e.resolve(HS(a,!0,!0));return!o.parent.isTextblock||o.pos>n||HS(o,!0,!1)<n?!1:r.parent.content.cut(r.parentOffset).eq(o.parent.content)}function HS(e,t,n){let r=e.depth,i=t?e.end():e.pos;for(;r>0&&(t||e.indexAfter(r)==e.node(r).childCount);)r--,i++,t=!1;if(n){let t=e.node(r).maybeChild(e.indexAfter(r));for(;t&&!t.isLeaf;)t=t.firstChild,i++}return i}function US(e,t,n,r,i){let a=e.findDiffStart(t,n),o=n+e.size,s=n+t.size;if(a==null)return null;let{a:c,b:l}=e.findDiffEnd(t,o,s);if(i==`end`){let e=Math.max(0,a-Math.min(c,l));r-=c+e-a}if(c<a&&o<s){let e=r<=a&&r>=c?a-r:0;a-=e,l=a+(l-c),c=a}else if(l<a){let e=r<=a&&r>=l?a-r:0;a-=e,c=a+(c-l),l=a}return{start:a,endA:c,endB:l}}var WS=class{constructor(e,t){this._root=null,this.focused=!1,this.trackWrites=null,this.mounted=!1,this.markCursor=null,this.cursorWrapper=null,this.lastSelectedViewDesc=void 0,this.input=new _x,this.prevDirectPlugins=[],this.pluginViews=[],this.requiresGeckoHackNode=!1,this.dragging=null,this._props=t,this.state=t.state,this.directPlugins=t.plugins||[],this.directPlugins.forEach(ZS),this.dispatch=this.dispatch.bind(this),this.dom=e&&e.mount||document.createElement(`div`),e&&(e.appendChild?e.appendChild(this.dom):typeof e==`function`?e(this.dom):e.mount&&(this.mounted=!0)),this.editable=qS(this),KS(this),this.nodeViews=YS(this),this.docView=Qy(this.state.doc,GS(this),CS(this),this.dom,this),this.domObserver=new DS(this,(e,t,n,r)=>RS(this,e,t,n,r)),this.domObserver.start(),vx(this),this.updatePluginViews()}get composing(){return this.input.composing}get props(){if(this._props.state!=this.state){let e=this._props;this._props={};for(let t in e)this._props[t]=e[t];this._props.state=this.state}return this._props}update(e){e.handleDOMEvents!=this._props.handleDOMEvents&&xx(this);let t=this._props;this._props=e,e.plugins&&(e.plugins.forEach(ZS),this.directPlugins=e.plugins),this.updateStateInner(e.state,t)}setProps(e){let t={};for(let e in this._props)t[e]=this._props[e];t.state=this.state;for(let n in e)t[n]=e[n];this.update(t)}updateState(e){this.updateStateInner(e,this._props)}updateStateInner(e,t){let n=this.state,r=!1,i=!1;e.storedMarks&&this.composing&&(Gx(this),i=!0),this.state=e;let a=n.plugins!=e.plugins||this._props.plugins!=t.plugins;if(a||this._props.plugins!=t.plugins||this._props.nodeViews!=t.nodeViews){let e=YS(this);XS(e,this.nodeViews)&&(this.nodeViews=e,r=!0)}(a||t.handleDOMEvents!=this._props.handleDOMEvents)&&xx(this),this.editable=qS(this),KS(this);let o=CS(this),s=GS(this),c=n.plugins!=e.plugins&&!n.doc.eq(e.doc)?`reset`:e.scrollToSelection>n.scrollToSelection?`to selection`:`preserve`,l=r||!this.docView.matchesNode(e.doc,s,o);(l||!e.selection.eq(n.selection))&&(i=!0);let u=c==`preserve`&&i&&this.dom.style.overflowAnchor==null&&hy(this);if(i){this.domObserver.stop();let t=l&&(Qv||ny)&&!this.composing&&!n.selection.empty&&!e.selection.empty&&JS(n.selection,e.selection);if(l){let n=ny?this.trackWrites=this.domSelectionRange().focusNode:null;this.composing&&(this.input.compositionNode=Kx(this)),(r||!this.docView.update(e.doc,s,o,this))&&(this.docView.updateOuterDeco(s),this.docView.destroy(),this.docView=Qy(e.doc,s,o,this.dom,this)),n&&(!this.trackWrites||!this.dom.contains(this.trackWrites))&&(t=!0)}let i=this.input.mouseDown;t||!(i&&this.domObserver.currentSelection.eq(this.domSelectionRange())&&Mb(this)&&i.delaySelUpdate())?bb(this,t):(Db(this,e.selection),this.domObserver.setCurSelection()),this.domObserver.start()}this.updatePluginViews(n),this.dragging?.node&&!n.doc.eq(e.doc)&&this.updateDraggedNode(this.dragging,n),c==`reset`?this.dom.scrollTop=0:c==`to selection`?this.scrollToSelection():u&&_y(u)}scrollToSelection(){let e=this.domSelectionRange().focusNode;if(!(!e||!this.dom.contains(e.nodeType==1?e:e.parentNode))&&!this.someProp(`handleScrollToSelection`,e=>e(this)))if(this.state.selection instanceof Q){let t=this.docView.domAfterPos(this.state.selection.from);t.nodeType==1&&my(this,t.getBoundingClientRect(),e)}else my(this,this.coordsAtPos(this.state.selection.head,1),e)}destroyPluginViews(){let e;for(;e=this.pluginViews.pop();)e.destroy&&e.destroy()}updatePluginViews(e){if(!e||e.plugins!=this.state.plugins||this.directPlugins!=this.prevDirectPlugins){this.prevDirectPlugins=this.directPlugins,this.destroyPluginViews();for(let e=0;e<this.directPlugins.length;e++){let t=this.directPlugins[e];t.spec.view&&this.pluginViews.push(t.spec.view(this))}for(let e=0;e<this.state.plugins.length;e++){let t=this.state.plugins[e];t.spec.view&&this.pluginViews.push(t.spec.view(this))}}else for(let t=0;t<this.pluginViews.length;t++){let n=this.pluginViews[t];n.update&&n.update(this,e)}}updateDraggedNode(e,t){let n=e.node,r=-1;if(n.from<this.state.doc.content.size&&this.state.doc.nodeAt(n.from)==n.node)r=n.from;else{let e=n.from+(this.state.doc.content.size-t.doc.content.size);(e>0&&e<this.state.doc.content.size&&this.state.doc.nodeAt(e))==n.node&&(r=e)}this.dragging=new eS(e.slice,e.move,r<0?void 0:Q.create(this.state.doc,r))}someProp(e,t){let n=this._props&&this._props[e],r;if(n!=null&&(r=t?t(n):n))return r;for(let n=0;n<this.directPlugins.length;n++){let i=this.directPlugins[n].props[e];if(i!=null&&(r=t?t(i):i))return r}let i=this.state.plugins;if(i)for(let n=0;n<i.length;n++){let a=i[n].props[e];if(a!=null&&(r=t?t(a):a))return r}}hasFocus(){if(Qv){let e=this.root.activeElement;if(e==this.dom)return!0;if(!e||!this.dom.contains(e))return!1;for(;e&&this.dom!=e&&this.dom.contains(e);){if(e.contentEditable==`false`)return!1;e=e.parentElement}return!0}return this.root.activeElement==this.dom}focus(){this.domObserver.stop(),this.editable&&by(this.dom),bb(this),this.domObserver.start()}get root(){let e=this._root;if(e==null){for(let e=this.dom.parentNode;e;e=e.parentNode)if(e.nodeType==9||e.nodeType==11&&e.host)return e.getSelection||(Object.getPrototypeOf(e).getSelection=()=>e.ownerDocument.getSelection()),this._root=e}return e||document}updateRoot(){this._root=null}posAtCoords(e){return Oy(this,e)}coordsAtPos(e,t=1){return My(this,e,t)}domAtPos(e,t=0){return this.docView.domFromPos(e,t)}nodeDOM(e){let t=this.docView.descAt(e);return t?t.nodeDOM:null}posAtDOM(e,t,n=-1){let r=this.docView.posFromDOM(e,t,n);if(r==null)throw RangeError(`DOM position not inside the editor`);return r}endOfTextblock(e,t){return Hy(this,t||this.state,e)}pasteHTML(e,t){return Qx(this,``,e,!1,t||new ClipboardEvent(`paste`))}pasteText(e,t){return Qx(this,e,null,!0,t||new ClipboardEvent(`paste`))}serializeForClipboard(e){return Qb(this,e)}destroy(){this.docView&&(bx(this),this.destroyPluginViews(),this.mounted?(this.docView.update(this.state.doc,[],CS(this),this),this.dom.textContent=``):this.dom.parentNode&&this.dom.parentNode.removeChild(this.dom),this.docView.destroy(),this.docView=null,Nv())}get isDestroyed(){return this.docView==null}dispatchEvent(e){return wx(this,e)}domSelectionRange(){let e=this.domSelection();return e?iy&&this.root.nodeType===11&&Wv(this.dom.ownerDocument)==this.dom&&MS(this,e)||e:{focusNode:null,focusOffset:0,anchorNode:null,anchorOffset:0}}domSelection(){return this.root.getSelection()}};WS.prototype.dispatch=function(e){let t=this._props.dispatchTransaction;t?t.call(this,e):this.updateState(this.state.apply(e))};function GS(e){let t=Object.create(null);return t.class=`ProseMirror`,t.contenteditable=String(e.editable),e.someProp(`attributes`,n=>{if(typeof n==`function`&&(n=n(e.state)),n)for(let e in n)e==`class`?t.class+=` `+n[e]:e==`style`?t.style=(t.style?t.style+`;`:``)+n[e]:!t[e]&&e!=`contenteditable`&&e!=`nodeName`&&(t[e]=String(n[e]))}),t.translate||=`no`,[cS.node(0,e.state.doc.content.size,t)]}function KS(e){if(e.markCursor){let t=document.createElement(`img`);t.className=`ProseMirror-separator`,t.setAttribute(`mark-placeholder`,`true`),t.setAttribute(`alt`,``),e.cursorWrapper={dom:t,deco:cS.widget(e.state.selection.from,t,{raw:!0,marks:e.markCursor})}}else e.cursorWrapper=null}function qS(e){return!e.someProp(`editable`,t=>t(e.state)===!1)}function JS(e,t){let n=Math.min(e.$anchor.sharedDepth(e.head),t.$anchor.sharedDepth(t.head));return e.$anchor.start(n)!=t.$anchor.start(n)}function YS(e){let t=Object.create(null);function n(e){for(let n in e)Object.prototype.hasOwnProperty.call(t,n)||(t[n]=e[n])}return e.someProp(`nodeViews`,n),e.someProp(`markViews`,n),t}function XS(e,t){let n=0,r=0;for(let r in e){if(e[r]!=t[r])return!0;n++}for(let e in t)r++;return n!=r}function ZS(e){if(e.spec.state||e.spec.filterTransaction||e.spec.appendTransaction)throw RangeError(`Plugins passed directly to the view must not have a state component`)}for(var QS={8:`Backspace`,9:`Tab`,10:`Enter`,12:`NumLock`,13:`Enter`,16:`Shift`,17:`Control`,18:`Alt`,20:`CapsLock`,27:`Escape`,32:` `,33:`PageUp`,34:`PageDown`,35:`End`,36:`Home`,37:`ArrowLeft`,38:`ArrowUp`,39:`ArrowRight`,40:`ArrowDown`,44:`PrintScreen`,45:`Insert`,46:`Delete`,59:`;`,61:`=`,91:`Meta`,92:`Meta`,106:`*`,107:`+`,108:`,`,109:`-`,110:`.`,111:`/`,144:`NumLock`,145:`ScrollLock`,160:`Shift`,161:`Shift`,162:`Control`,163:`Control`,164:`Alt`,165:`Alt`,173:`-`,186:`;`,187:`=`,188:`,`,189:`-`,190:`.`,191:`/`,192:"`",219:`[`,220:`\\`,221:`]`,222:`'`},$S={48:`)`,49:`!`,50:`@`,51:`#`,52:`$`,53:`%`,54:`^`,55:`&`,56:`*`,57:`(`,59:`:`,61:`+`,173:`_`,186:`:`,187:`+`,188:`<`,189:`_`,190:`>`,191:`?`,192:`~`,219:`{`,220:`|`,221:`}`,222:`"`},eC=typeof navigator<`u`&&/Mac/.test(navigator.platform),tC=typeof navigator<`u`&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent),nC=0;nC<10;nC++)QS[48+nC]=QS[96+nC]=String(nC);for(var nC=1;nC<=24;nC++)QS[nC+111]=`F`+nC;for(var nC=65;nC<=90;nC++)QS[nC]=String.fromCharCode(nC+32),$S[nC]=String.fromCharCode(nC);for(var rC in QS)$S.hasOwnProperty(rC)||($S[rC]=QS[rC]);function iC(e){var t=!(eC&&e.metaKey&&e.shiftKey&&!e.ctrlKey&&!e.altKey||tC&&e.shiftKey&&e.key&&e.key.length==1||e.key==`Unidentified`)&&e.key||(e.shiftKey?$S:QS)[e.keyCode]||e.key||`Unidentified`;return t==`Esc`&&(t=`Escape`),t==`Del`&&(t=`Delete`),t==`Left`&&(t=`ArrowLeft`),t==`Up`&&(t=`ArrowUp`),t==`Right`&&(t=`ArrowRight`),t==`Down`&&(t=`ArrowDown`),t}var aC=typeof navigator<`u`&&/Mac|iP(hone|[oa]d)/.test(navigator.platform),oC=typeof navigator<`u`&&/Win/.test(navigator.platform);function sC(e){let t=e.split(/-(?!$)/),n=t[t.length-1];n==`Space`&&(n=` `);let r,i,a,o;for(let e=0;e<t.length-1;e++){let n=t[e];if(/^(cmd|meta|m)$/i.test(n))o=!0;else if(/^a(lt)?$/i.test(n))r=!0;else if(/^(c|ctrl|control)$/i.test(n))i=!0;else if(/^s(hift)?$/i.test(n))a=!0;else if(/^mod$/i.test(n))aC?o=!0:i=!0;else throw Error(`Unrecognized modifier name: `+n)}return r&&(n=`Alt-`+n),i&&(n=`Ctrl-`+n),o&&(n=`Meta-`+n),a&&(n=`Shift-`+n),n}function cC(e){let t=Object.create(null);for(let n in e)t[sC(n)]=e[n];return t}function lC(e,t,n=!0){return t.altKey&&(e=`Alt-`+e),t.ctrlKey&&(e=`Ctrl-`+e),t.metaKey&&(e=`Meta-`+e),n&&t.shiftKey&&(e=`Shift-`+e),e}function uC(e){return new Tv({props:{handleKeyDown:dC(e)}})}function dC(e){let t=cC(e);return function(e,n){let r=iC(n),i,a=t[lC(r,n)];if(a&&a(e.state,e.dispatch,e))return!0;if(r.length==1&&r!=` `){if(n.shiftKey){let i=t[lC(r,n,!1)];if(i&&i(e.state,e.dispatch,e))return!0}if((n.altKey||n.metaKey||n.ctrlKey)&&!(oC&&n.ctrlKey&&n.altKey)&&(i=QS[n.keyCode])&&i!=r){let r=t[lC(i,n)];if(r&&r(e.state,e.dispatch,e))return!0}}return!1}}var fC=(e,t)=>e.selection.empty?!1:(t&&t(e.tr.deleteSelection().scrollIntoView()),!0);function pC(e,t){let{$cursor:n}=e.selection;return!n||(t?!t.endOfTextblock(`backward`,e):n.parentOffset>0)?null:n}var mC=(e,t,n)=>{let r=pC(e,n);if(!r)return!1;let i=bC(r);if(!i){let n=r.blockRange(),i=n&&__(n);return i==null?!1:(t&&t(e.tr.lift(n,i).scrollIntoView()),!0)}let a=i.nodeBefore;if(RC(e,i,t,-1))return!0;if(r.parent.content.size==0&&(vC(a,`end`)||Q.isSelectable(a)))for(let n=r.depth;;n--){let o=R_(e.doc,r.before(n),r.after(n),Z.empty);if(o&&o.slice.size<o.to-o.from){if(t){let n=e.tr.step(o);n.setSelection(vC(a,`end`)?iv.findFrom(n.doc.resolve(n.mapping.map(i.pos,-1)),-1):Q.create(n.doc,i.pos-a.nodeSize)),t(n.scrollIntoView())}return!0}if(n==1||r.node(n-1).childCount>1)break}return a.isAtom&&i.depth==r.depth-1?(t&&t(e.tr.delete(i.pos-a.nodeSize,i.pos).scrollIntoView()),!0):!1},hC=(e,t,n)=>{let r=pC(e,n);if(!r)return!1;let i=bC(r);return i?_C(e,i,t):!1},gC=(e,t,n)=>{let r=xC(e,n);if(!r)return!1;let i=wC(r);return i?_C(e,i,t):!1};function _C(e,t,n){let r=t.nodeBefore,i=t.pos-1;for(;!r.isTextblock;i--){if(r.type.spec.isolating)return!1;let e=r.lastChild;if(!e)return!1;r=e}let a=t.nodeAfter,o=t.pos+1;for(;!a.isTextblock;o++){if(a.type.spec.isolating)return!1;let e=a.firstChild;if(!e)return!1;a=e}let s=R_(e.doc,i,o,Z.empty);if(!s||s.from!=i||s instanceof u_&&s.slice.size>=o-i)return!1;if(n){let t=e.tr.step(s);t.setSelection(cv.create(t.doc,i)),n(t.scrollIntoView())}return!0}function vC(e,t,n=!1){for(let r=e;r;r=t==`start`?r.firstChild:r.lastChild){if(r.isTextblock)return!0;if(n&&r.childCount!=1)return!1}return!1}var yC=(e,t,n)=>{let{$head:r,empty:i}=e.selection,a=r;if(!i)return!1;if(r.parent.isTextblock){if(n?!n.endOfTextblock(`backward`,e):r.parentOffset>0)return!1;a=bC(r)}let o=a&&a.nodeBefore;return!o||!Q.isSelectable(o)?!1:(t&&t(e.tr.setSelection(Q.create(e.doc,a.pos-o.nodeSize)).scrollIntoView()),!0)};function bC(e){if(!e.parent.type.spec.isolating)for(let t=e.depth-1;t>=0;t--){if(e.index(t)>0)return e.doc.resolve(e.before(t+1));if(e.node(t).type.spec.isolating)break}return null}function xC(e,t){let{$cursor:n}=e.selection;return!n||(t?!t.endOfTextblock(`forward`,e):n.parentOffset<n.parent.content.size)?null:n}var SC=(e,t,n)=>{let r=xC(e,n);if(!r)return!1;let i=wC(r);if(!i)return!1;let a=i.nodeAfter;if(RC(e,i,t,1))return!0;if(r.parent.content.size==0&&(vC(a,`start`)||Q.isSelectable(a))){let n=R_(e.doc,r.before(),r.after(),Z.empty);if(n&&n.slice.size<n.to-n.from){if(t){let r=e.tr.step(n);r.setSelection(vC(a,`start`)?iv.findFrom(r.doc.resolve(r.mapping.map(i.pos)),1):Q.create(r.doc,r.mapping.map(i.pos))),t(r.scrollIntoView())}return!0}}return a.isAtom&&i.depth==r.depth-1?(t&&t(e.tr.delete(i.pos,i.pos+a.nodeSize).scrollIntoView()),!0):!1},CC=(e,t,n)=>{let{$head:r,empty:i}=e.selection,a=r;if(!i)return!1;if(r.parent.isTextblock){if(n?!n.endOfTextblock(`forward`,e):r.parentOffset<r.parent.content.size)return!1;a=wC(r)}let o=a&&a.nodeAfter;return!o||!Q.isSelectable(o)?!1:(t&&t(e.tr.setSelection(Q.create(e.doc,a.pos)).scrollIntoView()),!0)};function wC(e){if(!e.parent.type.spec.isolating)for(let t=e.depth-1;t>=0;t--){let n=e.node(t);if(e.index(t)+1<n.childCount)return e.doc.resolve(e.after(t+1));if(n.type.spec.isolating)break}return null}var TC=(e,t)=>{let n=e.selection,r=n instanceof Q,i;if(r){if(n.node.isTextblock||!j_(e.doc,n.from))return!1;i=n.from}else if(i=P_(e.doc,n.from,-1),i==null)return!1;if(t){let n=e.tr.join(i);r&&n.setSelection(Q.create(n.doc,i-e.doc.resolve(i).nodeBefore.nodeSize)),t(n.scrollIntoView())}return!0},EC=(e,t)=>{let n=e.selection,r;if(n instanceof Q){if(n.node.isTextblock||!j_(e.doc,n.to))return!1;r=n.to}else if(r=P_(e.doc,n.to,1),r==null)return!1;return t&&t(e.tr.join(r).scrollIntoView()),!0},DC=(e,t)=>{let{$from:n,$to:r}=e.selection,i=n.blockRange(r),a=i&&__(i);return a==null?!1:(t&&t(e.tr.lift(i,a).scrollIntoView()),!0)},OC=(e,t)=>{let{$head:n,$anchor:r}=e.selection;return!n.parent.type.spec.code||!n.sameParent(r)?!1:(t&&t(e.tr.insertText(`
17
+ `).scrollIntoView()),!0)};function kC(e){for(let t=0;t<e.edgeCount;t++){let{type:n}=e.edge(t);if(n.isTextblock&&!n.hasRequiredAttrs())return n}return null}var AC=(e,t)=>{let{$head:n,$anchor:r}=e.selection;if(!n.parent.type.spec.code||!n.sameParent(r))return!1;let i=n.node(-1),a=n.indexAfter(-1),o=kC(i.contentMatchAt(a));if(!o||!i.canReplaceWith(a,a,o))return!1;if(t){let r=n.after(),i=e.tr.replaceWith(r,r,o.createAndFill());i.setSelection(iv.near(i.doc.resolve(r),1)),t(i.scrollIntoView())}return!0},jC=(e,t)=>{let n=e.selection,{$from:r,$to:i}=n;if(n instanceof dv||r.parent.inlineContent||i.parent.inlineContent)return!1;let a=kC(i.parent.contentMatchAt(i.indexAfter()));if(!a||!a.isTextblock)return!1;if(t){let n=(!r.parentOffset&&i.index()<i.parent.childCount?r:i).pos,o=e.tr.insert(n,a.createAndFill());o.setSelection(cv.create(o.doc,n+1)),t(o.scrollIntoView())}return!0},MC=(e,t)=>{let{$cursor:n}=e.selection;if(!n||n.parent.content.size)return!1;if(n.depth>1&&n.after()!=n.end(-1)){let r=n.before();if(k_(e.doc,r))return t&&t(e.tr.split(r).scrollIntoView()),!0}let r=n.blockRange(),i=r&&__(r);return i==null?!1:(t&&t(e.tr.lift(r,i).scrollIntoView()),!0)};function NC(e){return(t,n)=>{let{$from:r,$to:i}=t.selection;if(t.selection instanceof Q&&t.selection.node.isBlock)return!r.parentOffset||!k_(t.doc,r.pos)?!1:(n&&n(t.tr.split(r.pos).scrollIntoView()),!0);if(!r.depth)return!1;let a=[],o,s,c=!1,l=!1;for(let t=r.depth;;t--)if(r.node(t).isBlock){c=r.end(t)==r.pos+(r.depth-t),l=r.start(t)==r.pos-(r.depth-t),s=kC(r.node(t-1).contentMatchAt(r.indexAfter(t-1)));let n=e&&e(i.parent,c,r);a.unshift(n||(c&&s?{type:s}:null)),o=t;break}else{if(t==1)return!1;a.unshift(null)}let u=t.tr;(t.selection instanceof cv||t.selection instanceof dv)&&u.deleteSelection();let d=u.mapping.map(r.pos),f=k_(u.doc,d,a.length,a);if(f||=(a[0]=s?{type:s}:null,k_(u.doc,d,a.length,a)),!f)return!1;if(u.split(d,a.length,a),!c&&l&&r.node(o).type!=s){let e=u.mapping.map(r.before(o)),t=u.doc.resolve(e);s&&r.node(o-1).canReplaceWith(t.index(),t.index()+1,s)&&u.setNodeMarkup(u.mapping.map(r.before(o)),s)}return n&&n(u.scrollIntoView()),!0}}var PC=NC(),FC=(e,t)=>{let{$from:n,to:r}=e.selection,i,a=n.sharedDepth(r);return a==0?!1:(i=n.before(a),t&&t(e.tr.setSelection(Q.create(e.doc,i))),!0)},IC=(e,t)=>(t&&t(e.tr.setSelection(new dv(e.doc))),!0);function LC(e,t,n){let r=t.nodeBefore,i=t.nodeAfter,a=t.index();return!r||!i||!r.type.compatibleContent(i.type)?!1:!r.content.size&&t.parent.canReplace(a-1,a)?(n&&n(e.tr.delete(t.pos-r.nodeSize,t.pos).scrollIntoView()),!0):!t.parent.canReplace(a,a+1)||!(i.isTextblock||j_(e.doc,t.pos))?!1:(n&&n(e.tr.join(t.pos).scrollIntoView()),!0)}function RC(e,t,n,r){let i=t.nodeBefore,a=t.nodeAfter,o,s,c=i.type.spec.isolating||a.type.spec.isolating;if(!c&&LC(e,t,n))return!0;let l=!c&&t.parent.canReplace(t.index(),t.index()+1);if(l&&(o=(s=i.contentMatchAt(i.childCount)).findWrapping(a.type))&&s.matchType(o[0]||a.type).validEnd){if(n){let r=t.pos+a.nodeSize,s=X.empty;for(let e=o.length-1;e>=0;e--)s=X.from(o[e].create(null,s));s=X.from(i.copy(s));let c=e.tr.step(new d_(t.pos-1,r,t.pos,r,new Z(s,1,0),o.length,!0)),l=c.doc.resolve(r+2*o.length);l.nodeAfter&&l.nodeAfter.type==i.type&&j_(c.doc,l.pos)&&c.join(l.pos),n(c.scrollIntoView())}return!0}let u=a.type.spec.isolating||r>0&&c?null:iv.findFrom(t,1),d=u&&u.$from.blockRange(u.$to),f=d&&__(d);if(f!=null&&f>=t.depth)return n&&n(e.tr.lift(d,f).scrollIntoView()),!0;if(l&&vC(a,`start`,!0)&&vC(i,`end`)){let r=i,o=[];for(;o.push(r),!r.isTextblock;)r=r.lastChild;let s=a,c=1;for(;!s.isTextblock;s=s.firstChild)c++;if(r.canReplace(r.childCount,r.childCount,s.content)){if(n){let r=X.empty;for(let e=o.length-1;e>=0;e--)r=X.from(o[e].copy(r));n(e.tr.step(new d_(t.pos-o.length,t.pos+a.nodeSize,t.pos+c,t.pos+a.nodeSize-c,new Z(r,o.length,0),0,!0)).scrollIntoView())}return!0}}return!1}function zC(e){return function(t,n){let r=t.selection,i=e<0?r.$from:r.$to,a=i.depth;for(;i.node(a).isInline;){if(!a)return!1;a--}return i.node(a).isTextblock?(n&&n(t.tr.setSelection(cv.create(t.doc,e<0?i.start(a):i.end(a)))),!0):!1}}var BC=zC(-1),VC=zC(1);function HC(e,t=null){return function(n,r){let{$from:i,$to:a}=n.selection,o=i.blockRange(a),s=o&&y_(o,e,t);return s?(r&&r(n.tr.wrap(o,s).scrollIntoView()),!0):!1}}function UC(e,t=null){return function(n,r){let i=!1;for(let r=0;r<n.selection.ranges.length&&!i;r++){let{$from:{pos:a},$to:{pos:o}}=n.selection.ranges[r];n.doc.nodesBetween(a,o,(r,a)=>{if(i)return!1;if(!(!r.isTextblock||r.hasMarkup(e,t)))if(r.type==e)i=!0;else{let t=n.doc.resolve(a),r=t.index();i=t.parent.canReplaceWith(r,r+1,e)}})}if(!i)return!1;if(r){let i=n.tr;for(let r=0;r<n.selection.ranges.length;r++){let{$from:{pos:a},$to:{pos:o}}=n.selection.ranges[r];i.setBlockType(a,o,e,t)}r(i.scrollIntoView())}return!0}}function WC(...e){return function(t,n,r){for(let i=0;i<e.length;i++)if(e[i](t,n,r))return!0;return!1}}var GC=WC(fC,mC,yC),KC=WC(fC,SC,CC),qC={Enter:WC(OC,jC,MC,PC),"Mod-Enter":AC,Backspace:GC,"Mod-Backspace":GC,"Shift-Backspace":GC,Delete:KC,"Mod-Delete":KC,"Mod-a":IC},JC={"Ctrl-h":qC.Backspace,"Alt-Backspace":qC[`Mod-Backspace`],"Ctrl-d":qC.Delete,"Ctrl-Alt-Backspace":qC[`Mod-Delete`],"Alt-Delete":qC[`Mod-Delete`],"Alt-d":qC[`Mod-Delete`],"Ctrl-a":BC,"Ctrl-e":VC};for(let e in qC)JC[e]=qC[e];typeof navigator<`u`?/Mac|iP(hone|[oa]d)/.test(navigator.platform):typeof os<`u`&&os.platform&&os.platform();function YC(e,t=null){return function(n,r){let{$from:i,$to:a}=n.selection,o=i.blockRange(a);if(!o)return!1;let s=r?n.tr:null;return XC(s,o,e,t)?(r&&r(s.scrollIntoView()),!0):!1}}function XC(e,t,n,r=null){let i=!1,a=t,o=t.$from.doc;if(t.depth>=2&&t.$from.node(t.depth-1).type.compatibleContent(n)&&t.startIndex==0){if(t.$from.index(t.depth-1)==0)return!1;let e=o.resolve(t.start-2);a=new Kh(e,e,t.depth),t.endIndex<t.parent.childCount&&(t=new Kh(t.$from,o.resolve(t.$to.end(t.depth)),t.depth)),i=!0}let s=y_(a,n,r,t);return s?(e&&ZC(e,t,s,i,n),!0):!1}function ZC(e,t,n,r,i){let a=X.empty;for(let e=n.length-1;e>=0;e--)a=X.from(n[e].type.create(n[e].attrs,a));e.step(new d_(t.start-(r?2:0),t.end,t.start,t.end,new Z(a,0,0),n.length,!0));let o=0;for(let e=0;e<n.length;e++)n[e].type==i&&(o=e+1);let s=n.length-o,c=t.start+n.length-(r?2:0),l=t.parent;for(let n=t.startIndex,r=t.endIndex,i=!0;n<r;n++,i=!1)!i&&k_(e.doc,c,s)&&(e.split(c,s),c+=2*s),c+=l.child(n).nodeSize;return e}function QC(e){return function(t,n){let{$from:r,$to:i}=t.selection,a=r.blockRange(i,t=>t.childCount>0&&t.firstChild.type==e);return a?n?r.node(a.depth-1).type==e?$C(t,n,e,a):ew(t,n,a):!0:!1}}function $C(e,t,n,r){let i=e.tr,a=r.end,o=r.$to.end(r.depth);a<o&&(i.step(new d_(a-1,o,a,o,new Z(X.from(n.create(null,r.parent.copy())),1,0),1,!0)),r=new Kh(i.doc.resolve(r.$from.pos),i.doc.resolve(o),r.depth));let s=__(r);if(s==null)return!1;i.lift(r,s);let c=i.doc.resolve(i.mapping.map(a,-1)-1);return j_(i.doc,c.pos)&&c.nodeBefore.type==c.nodeAfter.type&&i.join(c.pos),t(i.scrollIntoView()),!0}function ew(e,t,n){let r=e.tr,i=n.parent;for(let e=n.end,t=n.endIndex-1,a=n.startIndex;t>a;t--)e-=i.child(t).nodeSize,r.delete(e-1,e+1);let a=r.doc.resolve(n.start),o=a.nodeAfter;if(r.mapping.map(n.end)!=n.start+a.nodeAfter.nodeSize)return!1;let s=n.startIndex==0,c=n.endIndex==i.childCount,l=a.node(-1),u=a.index(-1);if(!l.canReplace(u+ +!s,u+1,o.content.append(c?X.empty:X.from(i))))return!1;let d=a.pos,f=d+o.nodeSize;return r.step(new d_(d-+!!s,f+ +!!c,d+1,f-1,new Z((s?X.empty:X.from(i.copy(X.empty))).append(c?X.empty:X.from(i.copy(X.empty))),+!s,+!c),+!s)),t(r.scrollIntoView()),!0}function tw(e){return function(t,n){let{$from:r,$to:i}=t.selection,a=r.blockRange(i,t=>t.childCount>0&&t.firstChild.type==e);if(!a)return!1;let o=a.startIndex;if(o==0)return!1;let s=a.parent,c=s.child(o-1);if(c.type!=e)return!1;if(n){let r=c.lastChild&&c.lastChild.type==s.type,i=X.from(r?e.create():null),o=new Z(X.from(e.create(null,X.from(s.type.create(null,i)))),r?3:1,0),l=a.start,u=a.end;n(t.tr.step(new d_(l-(r?3:1),u,l,u,o,1,!0)).scrollIntoView())}return!0}}function nw(e){let{state:t,transaction:n}=e,{selection:r}=n,{doc:i}=n,{storedMarks:a}=n;return{...t,apply:t.apply.bind(t),applyTransaction:t.applyTransaction.bind(t),plugins:t.plugins,schema:t.schema,reconfigure:t.reconfigure.bind(t),toJSON:t.toJSON.bind(t),get storedMarks(){return a},get selection(){return r},get doc(){return i},get tr(){return r=n.selection,i=n.doc,a=n.storedMarks,n}}}var rw=class{constructor(e){this.editor=e.editor,this.rawCommands=this.editor.extensionManager.commands,this.customState=e.state}get hasCustomState(){return!!this.customState}get state(){return this.customState||this.editor.state}get commands(){let{rawCommands:e,editor:t,state:n}=this,{view:r}=t,{tr:i}=n,a=this.buildProps(i);return Object.fromEntries(Object.entries(e).map(([e,t])=>[e,(...e)=>{let n=t(...e)(a);return!i.getMeta(`preventDispatch`)&&!this.hasCustomState&&r.dispatch(i),n}]))}get chain(){return()=>this.createChain()}get can(){return()=>this.createCan()}createChain(e,t=!0){let{rawCommands:n,editor:r,state:i}=this,{view:a}=r,o=[],s=!!e,c=e||i.tr,l=()=>(!s&&t&&!c.getMeta(`preventDispatch`)&&!this.hasCustomState&&a.dispatch(c),o.every(e=>e===!0)),u={...Object.fromEntries(Object.entries(n).map(([e,n])=>[e,(...e)=>{let r=this.buildProps(c,t),i=n(...e)(r);return o.push(i),u}])),run:l};return u}createCan(e){let{rawCommands:t,state:n}=this,r=e||n.tr,i=this.buildProps(r,!1);return{...Object.fromEntries(Object.entries(t).map(([e,t])=>[e,(...e)=>t(...e)({...i,dispatch:void 0})])),chain:()=>this.createChain(r,!1)}}buildProps(e,t=!0){let{rawCommands:n,editor:r,state:i}=this,{view:a}=r,o={tr:e,editor:r,view:a,state:nw({state:i,transaction:e}),dispatch:t?()=>void 0:void 0,chain:()=>this.createChain(e,t),can:()=>this.createCan(e),get commands(){return Object.fromEntries(Object.entries(n).map(([e,t])=>[e,(...e)=>t(...e)(o)]))}};return o}},iw=class{constructor(){this.callbacks={}}on(e,t){return this.callbacks[e]||(this.callbacks[e]=[]),this.callbacks[e].push(t),this}emit(e,...t){let n=this.callbacks[e];return n&&n.forEach(e=>e.apply(this,t)),this}off(e,t){let n=this.callbacks[e];return n&&(t?this.callbacks[e]=n.filter(e=>e!==t):delete this.callbacks[e]),this}once(e,t){let n=(...r)=>{this.off(e,n),t.apply(this,r)};return this.on(e,n)}removeAllListeners(){this.callbacks={}}};function $(e,t,n){return e.config[t]===void 0&&e.parent?$(e.parent,t,n):typeof e.config[t]==`function`?e.config[t].bind({...n,parent:e.parent?$(e.parent,t,n):null}):e.config[t]}function aw(e){return{baseExtensions:e.filter(e=>e.type===`extension`),nodeExtensions:e.filter(e=>e.type===`node`),markExtensions:e.filter(e=>e.type===`mark`)}}function ow(e){let t=[],{nodeExtensions:n,markExtensions:r}=aw(e),i=[...n,...r],a={default:null,rendered:!0,renderHTML:null,parseHTML:null,keepOnSplit:!0,isRequired:!1};return e.forEach(e=>{let n=$(e,`addGlobalAttributes`,{name:e.name,options:e.options,storage:e.storage,extensions:i});n&&n().forEach(e=>{e.types.forEach(n=>{Object.entries(e.attributes).forEach(([e,r])=>{t.push({type:n,name:e,attribute:{...a,...r}})})})})}),i.forEach(e=>{let n=$(e,`addAttributes`,{name:e.name,options:e.options,storage:e.storage});if(!n)return;let r=n();Object.entries(r).forEach(([n,r])=>{let i={...a,...r};typeof i?.default==`function`&&(i.default=i.default()),i?.isRequired&&i?.default===void 0&&delete i.default,t.push({type:e.name,name:n,attribute:i})})}),t}function sw(e,t){if(typeof e==`string`){if(!t.nodes[e])throw Error(`There is no node type named '${e}'. Maybe you forgot to add the extension?`);return t.nodes[e]}return e}function cw(...e){return e.filter(e=>!!e).reduce((e,t)=>{let n={...e};return Object.entries(t).forEach(([e,t])=>{if(!n[e]){n[e]=t;return}if(e===`class`){let r=t?String(t).split(` `):[],i=n[e]?n[e].split(` `):[],a=r.filter(e=>!i.includes(e));n[e]=[...i,...a].join(` `)}else if(e===`style`){let r=t?t.split(`;`).map(e=>e.trim()).filter(Boolean):[],i=n[e]?n[e].split(`;`).map(e=>e.trim()).filter(Boolean):[],a=new Map;i.forEach(e=>{let[t,n]=e.split(`:`).map(e=>e.trim());a.set(t,n)}),r.forEach(e=>{let[t,n]=e.split(`:`).map(e=>e.trim());a.set(t,n)}),n[e]=Array.from(a.entries()).map(([e,t])=>`${e}: ${t}`).join(`; `)}else n[e]=t}),n},{})}function lw(e,t){return t.filter(t=>t.type===e.type.name).filter(e=>e.attribute.rendered).map(t=>t.attribute.renderHTML?t.attribute.renderHTML(e.attrs)||{}:{[t.name]:e.attrs[t.name]}).reduce((e,t)=>cw(e,t),{})}function uw(e){return typeof e==`function`}function dw(e,t=void 0,...n){return uw(e)?t?e.bind(t)(...n):e(...n):e}function fw(e={}){return Object.keys(e).length===0&&e.constructor===Object}function pw(e){return typeof e==`string`?e.match(/^[+-]?(?:\d*\.)?\d+$/)?Number(e):e===`true`||e!==`false`&&e:e}function mw(e,t){return`style`in e?e:{...e,getAttrs:n=>{let r=e.getAttrs?e.getAttrs(n):e.attrs;if(r===!1)return!1;let i=t.reduce((e,t)=>{let r=t.attribute.parseHTML?t.attribute.parseHTML(n):pw(n.getAttribute(t.name));return r==null?e:{...e,[t.name]:r}},{});return{...r,...i}}}}function hw(e){return Object.fromEntries(Object.entries(e).filter(([e,t])=>e===`attrs`&&fw(t)?!1:t!=null))}function gw(e,t){let n=ow(e),{nodeExtensions:r,markExtensions:i}=aw(e);return new yg({topNode:r.find(e=>$(e,`topNode`))?.name,nodes:Object.fromEntries(r.map(r=>{let i=n.filter(e=>e.type===r.name),a={name:r.name,options:r.options,storage:r.storage,editor:t},o=hw({...e.reduce((e,t)=>{let n=$(t,`extendNodeSchema`,a);return{...e,...n?n(r):{}}},{}),content:dw($(r,`content`,a)),marks:dw($(r,`marks`,a)),group:dw($(r,`group`,a)),inline:dw($(r,`inline`,a)),atom:dw($(r,`atom`,a)),selectable:dw($(r,`selectable`,a)),draggable:dw($(r,`draggable`,a)),code:dw($(r,`code`,a)),whitespace:dw($(r,`whitespace`,a)),linebreakReplacement:dw($(r,`linebreakReplacement`,a)),defining:dw($(r,`defining`,a)),isolating:dw($(r,`isolating`,a)),attrs:Object.fromEntries(i.map(e=>[e.name,{default:e?.attribute?.default}]))}),s=dw($(r,`parseHTML`,a));s&&(o.parseDOM=s.map(e=>mw(e,i)));let c=$(r,`renderHTML`,a);c&&(o.toDOM=e=>c({node:e,HTMLAttributes:lw(e,i)}));let l=$(r,`renderText`,a);return l&&(o.toText=l),[r.name,o]})),marks:Object.fromEntries(i.map(r=>{let i=n.filter(e=>e.type===r.name),a={name:r.name,options:r.options,storage:r.storage,editor:t},o=hw({...e.reduce((e,t)=>{let n=$(t,`extendMarkSchema`,a);return{...e,...n?n(r):{}}},{}),inclusive:dw($(r,`inclusive`,a)),excludes:dw($(r,`excludes`,a)),group:dw($(r,`group`,a)),spanning:dw($(r,`spanning`,a)),code:dw($(r,`code`,a)),attrs:Object.fromEntries(i.map(e=>[e.name,{default:e?.attribute?.default}]))}),s=dw($(r,`parseHTML`,a));s&&(o.parseDOM=s.map(e=>mw(e,i)));let c=$(r,`renderHTML`,a);return c&&(o.toDOM=e=>c({mark:e,HTMLAttributes:lw(e,i)})),[r.name,o]}))})}function _w(e,t){return t.nodes[e]||t.marks[e]||null}function vw(e,t){return Array.isArray(t)?t.some(t=>(typeof t==`string`?t:t.name)===e.name):t}function yw(e,t){let n=Lg.fromSchema(t).serializeFragment(e),r=document.implementation.createHTMLDocument().createElement(`div`);return r.appendChild(n),r.innerHTML}var bw=(e,t=500)=>{let n=``,r=e.parentOffset;return e.parent.nodesBetween(Math.max(0,r-t),r,(e,t,i,a)=>{var o;let s=(o=e.type.spec).toText?.call(o,{node:e,pos:t,parent:i,index:a})||e.textContent||`%leaf%`;n+=e.isAtom&&!e.isText?s:s.slice(0,Math.max(0,r-t))}),n};function xw(e){return Object.prototype.toString.call(e)===`[object RegExp]`}var Sw=class{constructor(e){this.find=e.find,this.handler=e.handler}},Cw=(e,t)=>{if(xw(t))return t.exec(e);let n=t(e);if(!n)return null;let r=[n.text];return r.index=n.index,r.input=e,r.data=n.data,n.replaceWith&&(n.text.includes(n.replaceWith)||console.warn(`[tiptap warn]: "inputRuleMatch.replaceWith" must be part of "inputRuleMatch.text".`),r.push(n.replaceWith)),r};function ww(e){let{editor:t,from:n,to:r,text:i,rules:a,plugin:o}=e,{view:s}=t;if(s.composing)return!1;let c=s.state.doc.resolve(n);if(c.parent.type.spec.code||(c.nodeBefore||c.nodeAfter)?.marks.find(e=>e.type.spec.code))return!1;let l=!1,u=bw(c)+i;return a.forEach(e=>{if(l)return;let a=Cw(u,e.find);if(!a)return;let c=s.state.tr,d=nw({state:s.state,transaction:c}),f={from:n-(a[0].length-i.length),to:r},{commands:p,chain:m,can:h}=new rw({editor:t,state:d});e.handler({state:d,range:f,match:a,commands:p,chain:m,can:h})===null||!c.steps.length||(c.setMeta(o,{transform:c,from:n,to:r,text:i}),s.dispatch(c),l=!0)}),l}function Tw(e){let{editor:t,rules:n}=e,r=new Tv({state:{init(){return null},apply(e,i,a){let o=e.getMeta(r);if(o)return o;let s=e.getMeta(`applyInputRules`);return s&&setTimeout(()=>{let{text:e}=s;e=typeof e==`string`?e:yw(X.from(e),a.schema);let{from:i}=s,o=i+e.length;ww({editor:t,from:i,to:o,text:e,rules:n,plugin:r})}),e.selectionSet||e.docChanged?null:i}},props:{handleTextInput(e,i,a,o){return ww({editor:t,from:i,to:a,text:o,rules:n,plugin:r})},handleDOMEvents:{compositionend:e=>(setTimeout(()=>{let{$cursor:i}=e.state.selection;i&&ww({editor:t,from:i.pos,to:i.pos,text:``,rules:n,plugin:r})}),!1)},handleKeyDown(e,i){if(i.key!==`Enter`)return!1;let{$cursor:a}=e.state.selection;return a?ww({editor:t,from:a.pos,to:a.pos,text:`
18
+ `,rules:n,plugin:r}):!1}},isInputRules:!0});return r}function Ew(e){return Object.prototype.toString.call(e).slice(8,-1)}function Dw(e){return Ew(e)===`Object`&&e.constructor===Object&&Object.getPrototypeOf(e)===Object.prototype}function Ow(e,t){let n={...e};return Dw(e)&&Dw(t)&&Object.keys(t).forEach(r=>{Dw(t[r])&&Dw(e[r])?n[r]=Ow(e[r],t[r]):n[r]=t[r]}),n}var kw=class e{constructor(e={}){this.type=`mark`,this.name=`mark`,this.parent=null,this.child=null,this.config={name:this.name,defaultOptions:{}},this.config={...this.config,...e},this.name=this.config.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${this.name}".`),this.options=this.config.defaultOptions,this.config.addOptions&&(this.options=dw($(this,`addOptions`,{name:this.name}))),this.storage=dw($(this,`addStorage`,{name:this.name,options:this.options}))||{}}static create(t={}){return new e(t)}configure(e={}){let t=this.extend({...this.config,addOptions:()=>Ow(this.options,e)});return t.name=this.name,t.parent=this.parent,t}extend(t={}){let n=new e(t);return n.parent=this,this.child=n,n.name=t.name?t.name:n.parent.name,t.defaultOptions&&Object.keys(t.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${n.name}".`),n.options=dw($(n,`addOptions`,{name:n.name})),n.storage=dw($(n,`addStorage`,{name:n.name,options:n.options})),n}static handleExit({editor:e,mark:t}){let{tr:n}=e.state,r=e.state.selection.$from;if(r.pos===r.end()){let i=r.marks();if(!i.find(e=>e?.type.name===t.name))return!1;let a=i.find(e=>e?.type.name===t.name);return a&&n.removeStoredMark(a),n.insertText(` `,r.pos),e.view.dispatch(n),!0}return!1}};function Aw(e){return typeof e==`number`}var jw=class{constructor(e){this.find=e.find,this.handler=e.handler}},Mw=(e,t,n)=>{if(xw(t))return[...e.matchAll(t)];let r=t(e,n);return r?r.map(t=>{let n=[t.text];return n.index=t.index,n.input=e,n.data=t.data,t.replaceWith&&(t.text.includes(t.replaceWith)||console.warn(`[tiptap warn]: "pasteRuleMatch.replaceWith" must be part of "pasteRuleMatch.text".`),n.push(t.replaceWith)),n}):[]};function Nw(e){let{editor:t,state:n,from:r,to:i,rule:a,pasteEvent:o,dropEvent:s}=e,{commands:c,chain:l,can:u}=new rw({editor:t,state:n}),d=[];return n.doc.nodesBetween(r,i,(e,t)=>{if(!e.isTextblock||e.type.spec.code)return;let f=Math.max(r,t),p=Math.min(i,t+e.content.size);Mw(e.textBetween(f-t,p-t,void 0,``),a.find,o).forEach(e=>{if(e.index===void 0)return;let t=f+e.index+1,r=t+e[0].length,i={from:n.tr.mapping.map(t),to:n.tr.mapping.map(r)},p=a.handler({state:n,range:i,match:e,commands:c,chain:l,can:u,pasteEvent:o,dropEvent:s});d.push(p)})}),d.every(e=>e!==null)}var Pw=null,Fw=e=>{var t;let n=new ClipboardEvent(`paste`,{clipboardData:new DataTransfer});return(t=n.clipboardData)==null||t.setData(`text/html`,e),n};function Iw(e){let{editor:t,rules:n}=e,r=null,i=!1,a=!1,o=typeof ClipboardEvent<`u`?new ClipboardEvent(`paste`):null,s;try{s=typeof DragEvent<`u`?new DragEvent(`drop`):null}catch{s=null}let c=({state:e,from:n,to:r,rule:i,pasteEvt:a})=>{let c=e.tr,l=nw({state:e,transaction:c});if(!(!Nw({editor:t,state:l,from:Math.max(n-1,0),to:r.b-1,rule:i,pasteEvent:a,dropEvent:s})||!c.steps.length)){try{s=typeof DragEvent<`u`?new DragEvent(`drop`):null}catch{s=null}return o=typeof ClipboardEvent<`u`?new ClipboardEvent(`paste`):null,c}};return n.map(e=>new Tv({view(e){let n=n=>{r=e.dom.parentElement?.contains(n.target)?e.dom.parentElement:null,r&&(Pw=t)},i=()=>{Pw&&=null};return window.addEventListener(`dragstart`,n),window.addEventListener(`dragend`,i),{destroy(){window.removeEventListener(`dragstart`,n),window.removeEventListener(`dragend`,i)}}},props:{handleDOMEvents:{drop:(e,t)=>{if(a=r===e.dom.parentElement,s=t,!a){let e=Pw;e?.isEditable&&setTimeout(()=>{let t=e.state.selection;t&&e.commands.deleteRange({from:t.from,to:t.to})},10)}return!1},paste:(e,t)=>{let n=t.clipboardData?.getData(`text/html`);return o=t,i=!!n?.includes(`data-pm-slice`),!1}}},appendTransaction:(t,n,r)=>{let s=t[0],l=s.getMeta(`uiEvent`)===`paste`&&!i,u=s.getMeta(`uiEvent`)===`drop`&&!a,d=s.getMeta(`applyPasteRules`),f=!!d;if(!l&&!u&&!f)return;if(f){let{text:t}=d;t=typeof t==`string`?t:yw(X.from(t),r.schema);let{from:n}=d,i=n+t.length,a=Fw(t);return c({rule:e,state:r,from:n,to:{b:i},pasteEvt:a})}let p=n.doc.content.findDiffStart(r.doc.content),m=n.doc.content.findDiffEnd(r.doc.content);if(!(!Aw(p)||!m||p===m.b))return c({rule:e,state:r,from:p,to:m,pasteEvt:o})}}))}function Lw(e){let t=e.filter((t,n)=>e.indexOf(t)!==n);return Array.from(new Set(t))}var Rw=class e{constructor(t,n){this.splittableMarks=[],this.editor=n,this.extensions=e.resolve(t),this.schema=gw(this.extensions,n),this.setupExtensions()}static resolve(t){let n=e.sort(e.flatten(t)),r=Lw(n.map(e=>e.name));return r.length&&console.warn(`[tiptap warn]: Duplicate extension names found: [${r.map(e=>`'${e}'`).join(`, `)}]. This can lead to issues.`),n}static flatten(e){return e.map(e=>{let t=$(e,`addExtensions`,{name:e.name,options:e.options,storage:e.storage});return t?[e,...this.flatten(t())]:e}).flat(10)}static sort(e){return e.sort((e,t)=>{let n=$(e,`priority`)||100,r=$(t,`priority`)||100;return n>r?-1:+(n<r)})}get commands(){return this.extensions.reduce((e,t)=>{let n=$(t,`addCommands`,{name:t.name,options:t.options,storage:t.storage,editor:this.editor,type:_w(t.name,this.schema)});return n?{...e,...n()}:e},{})}get plugins(){let{editor:t}=this,n=e.sort([...this.extensions].reverse()),r=[],i=[],a=n.map(e=>{let n={name:e.name,options:e.options,storage:e.storage,editor:t,type:_w(e.name,this.schema)},a=[],o=$(e,`addKeyboardShortcuts`,n),s={};if(e.type===`mark`&&$(e,`exitable`,n)&&(s.ArrowRight=()=>kw.handleExit({editor:t,mark:e})),o){let e=Object.fromEntries(Object.entries(o()).map(([e,n])=>[e,()=>n({editor:t})]));s={...s,...e}}let c=uC(s);a.push(c);let l=$(e,`addInputRules`,n);vw(e,t.options.enableInputRules)&&l&&r.push(...l());let u=$(e,`addPasteRules`,n);vw(e,t.options.enablePasteRules)&&u&&i.push(...u());let d=$(e,`addProseMirrorPlugins`,n);if(d){let e=d();a.push(...e)}return a}).flat();return[Tw({editor:t,rules:r}),...Iw({editor:t,rules:i}),...a]}get attributes(){return ow(this.extensions)}get nodeViews(){let{editor:e}=this,{nodeExtensions:t}=aw(this.extensions);return Object.fromEntries(t.filter(e=>!!$(e,`addNodeView`)).map(t=>{let n=this.attributes.filter(e=>e.type===t.name),r=$(t,`addNodeView`,{name:t.name,options:t.options,storage:t.storage,editor:e,type:sw(t.name,this.schema)});return r?[t.name,(i,a,o,s,c)=>{let l=lw(i,n);return r()({node:i,view:a,getPos:o,decorations:s,innerDecorations:c,editor:e,extension:t,HTMLAttributes:l})}]:[]}))}setupExtensions(){this.extensions.forEach(e=>{this.editor.extensionStorage[e.name]=e.storage;let t={name:e.name,options:e.options,storage:e.storage,editor:this.editor,type:_w(e.name,this.schema)};e.type===`mark`&&(dw($(e,`keepOnSplit`,t))??!0)&&this.splittableMarks.push(e.name);let n=$(e,`onBeforeCreate`,t),r=$(e,`onCreate`,t),i=$(e,`onUpdate`,t),a=$(e,`onSelectionUpdate`,t),o=$(e,`onTransaction`,t),s=$(e,`onFocus`,t),c=$(e,`onBlur`,t),l=$(e,`onDestroy`,t);n&&this.editor.on(`beforeCreate`,n),r&&this.editor.on(`create`,r),i&&this.editor.on(`update`,i),a&&this.editor.on(`selectionUpdate`,a),o&&this.editor.on(`transaction`,o),s&&this.editor.on(`focus`,s),c&&this.editor.on(`blur`,c),l&&this.editor.on(`destroy`,l)})}},zw=class e{constructor(e={}){this.type=`extension`,this.name=`extension`,this.parent=null,this.child=null,this.config={name:this.name,defaultOptions:{}},this.config={...this.config,...e},this.name=this.config.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${this.name}".`),this.options=this.config.defaultOptions,this.config.addOptions&&(this.options=dw($(this,`addOptions`,{name:this.name}))),this.storage=dw($(this,`addStorage`,{name:this.name,options:this.options}))||{}}static create(t={}){return new e(t)}configure(e={}){let t=this.extend({...this.config,addOptions:()=>Ow(this.options,e)});return t.name=this.name,t.parent=this.parent,t}extend(t={}){let n=new e({...this.config,...t});return n.parent=this,this.child=n,n.name=t.name?t.name:n.parent.name,t.defaultOptions&&Object.keys(t.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${n.name}".`),n.options=dw($(n,`addOptions`,{name:n.name})),n.storage=dw($(n,`addStorage`,{name:n.name,options:n.options})),n}};function Bw(e,t,n){let{from:r,to:i}=t,{blockSeparator:a=`
19
+
20
+ `,textSerializers:o={}}=n||{},s=``;return e.nodesBetween(r,i,(e,n,c,l)=>{e.isBlock&&n>r&&(s+=a);let u=o?.[e.type.name];if(u)return c&&(s+=u({node:e,pos:n,parent:c,index:l,range:t})),!1;e.isText&&(s+=(e?.text)?.slice(Math.max(r,n)-n,i-n))}),s}function Vw(e){return Object.fromEntries(Object.entries(e.nodes).filter(([,e])=>e.spec.toText).map(([e,t])=>[e,t.spec.toText]))}var Hw=zw.create({name:`clipboardTextSerializer`,addOptions(){return{blockSeparator:void 0}},addProseMirrorPlugins(){return[new Tv({key:new Ov(`clipboardTextSerializer`),props:{clipboardTextSerializer:()=>{let{editor:e}=this,{state:t,schema:n}=e,{doc:r,selection:i}=t,{ranges:a}=i,o=Math.min(...a.map(e=>e.$from.pos)),s=Math.max(...a.map(e=>e.$to.pos)),c=Vw(n);return Bw(r,{from:o,to:s},{...this.options.blockSeparator===void 0?{}:{blockSeparator:this.options.blockSeparator},textSerializers:c})}}})]}}),Uw=()=>({editor:e,view:t})=>(requestAnimationFrame(()=>{var n;e.isDestroyed||(t.dom.blur(),(n=window==null?void 0:window.getSelection())==null||n.removeAllRanges())}),!0),Ww=(e=!1)=>({commands:t})=>t.setContent(``,e),Gw=()=>({state:e,tr:t,dispatch:n})=>{let{selection:r}=t,{ranges:i}=r;return n&&i.forEach(({$from:n,$to:r})=>{e.doc.nodesBetween(n.pos,r.pos,(e,n)=>{if(e.type.isText)return;let{doc:r,mapping:i}=t,a=r.resolve(i.map(n)),o=r.resolve(i.map(n+e.nodeSize)),s=a.blockRange(o);if(!s)return;let c=__(s);if(e.type.isTextblock){let{defaultType:e}=a.parent.contentMatchAt(a.index());t.setNodeMarkup(s.start,e)}(c||c===0)&&t.lift(s,c)})}),!0},Kw=e=>t=>e(t),qw=()=>({state:e,dispatch:t})=>jC(e,t),Jw=(e,t)=>({editor:n,tr:r})=>{let{state:i}=n,a=i.doc.slice(e.from,e.to);r.deleteRange(e.from,e.to);let o=r.mapping.map(t);return r.insert(o,a.content),r.setSelection(new cv(r.doc.resolve(Math.max(o-1,0)))),!0},Yw=()=>({tr:e,dispatch:t})=>{let{selection:n}=e,r=n.$anchor.node();if(r.content.size>0)return!1;let i=e.selection.$anchor;for(let n=i.depth;n>0;--n)if(i.node(n).type===r.type){if(t){let t=i.before(n),r=i.after(n);e.delete(t,r).scrollIntoView()}return!0}return!1},Xw=e=>({tr:t,state:n,dispatch:r})=>{let i=sw(e,n.schema),a=t.selection.$anchor;for(let e=a.depth;e>0;--e)if(a.node(e).type===i){if(r){let n=a.before(e),r=a.after(e);t.delete(n,r).scrollIntoView()}return!0}return!1},Zw=e=>({tr:t,dispatch:n})=>{let{from:r,to:i}=e;return n&&t.delete(r,i),!0},Qw=()=>({state:e,dispatch:t})=>fC(e,t),$w=()=>({commands:e})=>e.keyboardShortcut(`Enter`),eT=()=>({state:e,dispatch:t})=>AC(e,t);function tT(e,t,n={strict:!0}){let r=Object.keys(t);return!r.length||r.every(r=>n.strict?t[r]===e[r]:xw(t[r])?t[r].test(e[r]):t[r]===e[r])}function nT(e,t,n={}){return e.find(e=>e.type===t&&tT(Object.fromEntries(Object.keys(n).map(t=>[t,e.attrs[t]])),n))}function rT(e,t,n={}){return!!nT(e,t,n)}function iT(e,t,n){if(!e||!t)return;let r=e.parent.childAfter(e.parentOffset);if((!r.node||!r.node.marks.some(e=>e.type===t))&&(r=e.parent.childBefore(e.parentOffset)),!r.node||!r.node.marks.some(e=>e.type===t)||(n||=r.node.marks[0]?.attrs,!nT([...r.node.marks],t,n)))return;let i=r.index,a=e.start()+r.offset,o=i+1,s=a+r.node.nodeSize;for(;i>0&&rT([...e.parent.child(i-1).marks],t,n);)--i,a-=e.parent.child(i).nodeSize;for(;o<e.parent.childCount&&rT([...e.parent.child(o).marks],t,n);)s+=e.parent.child(o).nodeSize,o+=1;return{from:a,to:s}}function aT(e,t){if(typeof e==`string`){if(!t.marks[e])throw Error(`There is no mark type named '${e}'. Maybe you forgot to add the extension?`);return t.marks[e]}return e}var oT=(e,t={})=>({tr:n,state:r,dispatch:i})=>{let a=aT(e,r.schema),{doc:o,selection:s}=n,{$from:c,from:l,to:u}=s;if(i){let e=iT(c,a,t);if(e&&e.from<=l&&e.to>=u){let t=cv.create(o,e.from,e.to);n.setSelection(t)}}return!0},sT=e=>t=>{let n=typeof e==`function`?e(t):e;for(let e=0;e<n.length;e+=1)if(n[e](t))return!0;return!1};function cT(e){return e instanceof cv}function lT(e=0,t=0,n=0){return Math.min(Math.max(e,t),n)}function uT(e,t=null){if(!t)return null;let n=iv.atStart(e),r=iv.atEnd(e);if(t===`start`||t===!0)return n;if(t===`end`)return r;let i=n.from,a=r.to;return t===`all`?cv.create(e,lT(0,i,a),lT(e.content.size,i,a)):cv.create(e,lT(t,i,a),lT(t,i,a))}function dT(){return navigator.platform===`Android`||/android/i.test(navigator.userAgent)}function fT(){return[`iPad Simulator`,`iPhone Simulator`,`iPod Simulator`,`iPad`,`iPhone`,`iPod`].includes(navigator.platform)||navigator.userAgent.includes(`Mac`)&&`ontouchend`in document}function pT(){return typeof navigator<`u`&&/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}var mT=(e=null,t={})=>({editor:n,view:r,tr:i,dispatch:a})=>{t={scrollIntoView:!0,...t};let o=()=>{(fT()||dT())&&r.dom.focus(),requestAnimationFrame(()=>{n.isDestroyed||(r.focus(),pT()&&!fT()&&!dT()&&r.dom.focus({preventScroll:!0}))})};if(r.hasFocus()&&e===null||e===!1)return!0;if(a&&e===null&&!cT(n.state.selection))return o(),!0;let s=uT(i.doc,e)||n.state.selection,c=n.state.selection.eq(s);return a&&(c||i.setSelection(s),c&&i.storedMarks&&i.setStoredMarks(i.storedMarks),o()),!0},hT=(e,t)=>n=>e.every((e,r)=>t(e,{...n,index:r})),gT=(e,t)=>({tr:n,commands:r})=>r.insertContentAt({from:n.selection.from,to:n.selection.to},e,t),_T=e=>{let t=e.childNodes;for(let n=t.length-1;n>=0;--n){let r=t[n];r.nodeType===3&&r.nodeValue&&/^(\n\s\s|\n)$/.test(r.nodeValue)?e.removeChild(r):r.nodeType===1&&_T(r)}return e};function vT(e){let t=`<body>${e}</body>`,n=new window.DOMParser().parseFromString(t,`text/html`).body;return _T(n)}function yT(e,t,n){if(e instanceof Jh||e instanceof X)return e;n={slice:!0,parseOptions:{},...n};let r=typeof e==`object`&&!!e,i=typeof e==`string`;if(r)try{if(Array.isArray(e)&&e.length>0)return X.fromArray(e.map(e=>t.nodeFromJSON(e)));let r=t.nodeFromJSON(e);return n.errorOnInvalidContent&&r.check(),r}catch(r){if(n.errorOnInvalidContent)throw Error(`[tiptap error]: Invalid JSON content`,{cause:r});return console.warn(`[tiptap warn]: Invalid content.`,`Passed value:`,e,`Error:`,r),yT(``,t,n)}if(i){if(n.errorOnInvalidContent){let r=!1,i=``,a=new yg({topNode:t.spec.topNode,marks:t.spec.marks,nodes:t.spec.nodes.append({__tiptap__private__unknown__catch__all__node:{content:`inline*`,group:`block`,parseDOM:[{tag:`*`,getAttrs:e=>(r=!0,i=typeof e==`string`?e:e.outerHTML,null)}]}})});if(n.slice?Cg.fromSchema(a).parseSlice(vT(e),n.parseOptions):Cg.fromSchema(a).parse(vT(e),n.parseOptions),n.errorOnInvalidContent&&r)throw Error(`[tiptap error]: Invalid HTML content`,{cause:Error(`Invalid element found: ${i}`)})}let r=Cg.fromSchema(t);return n.slice?r.parseSlice(vT(e),n.parseOptions).content:r.parse(vT(e),n.parseOptions)}return yT(``,t,n)}function bT(e,t,n){let r=e.steps.length-1;if(r<t)return;let i=e.steps[r];if(!(i instanceof u_||i instanceof d_))return;let a=e.mapping.maps[r],o=0;a.forEach((e,t,n,r)=>{o===0&&(o=r)}),e.setSelection(iv.near(e.doc.resolve(o),n))}var xT=e=>!(`type`in e),ST=(e,t,n)=>({tr:r,dispatch:i,editor:a})=>{if(i){n={parseOptions:a.options.parseOptions,updateSelection:!0,applyInputRules:!1,applyPasteRules:!1,...n};let i,o=e=>{a.emit(`contentError`,{editor:a,error:e,disableCollaboration:()=>{a.storage.collaboration&&(a.storage.collaboration.isDisabled=!0)}})},s={preserveWhitespace:`full`,...n.parseOptions};if(!n.errorOnInvalidContent&&!a.options.enableContentCheck&&a.options.emitContentError)try{yT(t,a.schema,{parseOptions:s,errorOnInvalidContent:!0})}catch(e){o(e)}try{i=yT(t,a.schema,{parseOptions:s,errorOnInvalidContent:n.errorOnInvalidContent??a.options.enableContentCheck})}catch(e){return o(e),!1}let{from:c,to:l}=typeof e==`number`?{from:e,to:e}:{from:e.from,to:e.to},u=!0,d=!0;if((xT(i)?i:[i]).forEach(e=>{e.check(),u=u?e.isText&&e.marks.length===0:!1,d=d?e.isBlock:!1}),c===l&&d){let{parent:e}=r.doc.resolve(c);e.isTextblock&&!e.type.spec.code&&!e.childCount&&(--c,l+=1)}let f;if(u){if(Array.isArray(t))f=t.map(e=>e.text||``).join(``);else if(t instanceof X){let e=``;t.forEach(t=>{t.text&&(e+=t.text)}),f=e}else f=typeof t==`object`&&t&&t.text?t.text:t;r.insertText(f,c,l)}else f=i,r.replaceWith(c,l,f);n.updateSelection&&bT(r,r.steps.length-1,-1),n.applyInputRules&&r.setMeta(`applyInputRules`,{from:c,text:f}),n.applyPasteRules&&r.setMeta(`applyPasteRules`,{from:c,text:f})}return!0},CT=()=>({state:e,dispatch:t})=>TC(e,t),wT=()=>({state:e,dispatch:t})=>EC(e,t),TT=()=>({state:e,dispatch:t})=>mC(e,t),ET=()=>({state:e,dispatch:t})=>SC(e,t),DT=()=>({state:e,dispatch:t,tr:n})=>{try{let r=P_(e.doc,e.selection.$from.pos,-1);return r==null?!1:(n.join(r,2),t&&t(n),!0)}catch{return!1}},OT=()=>({state:e,dispatch:t,tr:n})=>{try{let r=P_(e.doc,e.selection.$from.pos,1);return r==null?!1:(n.join(r,2),t&&t(n),!0)}catch{return!1}},kT=()=>({state:e,dispatch:t})=>hC(e,t),AT=()=>({state:e,dispatch:t})=>gC(e,t);function jT(){return typeof navigator<`u`&&/Mac/.test(navigator.platform)}function MT(e){let t=e.split(/-(?!$)/),n=t[t.length-1];n===`Space`&&(n=` `);let r,i,a,o;for(let e=0;e<t.length-1;e+=1){let n=t[e];if(/^(cmd|meta|m)$/i.test(n))o=!0;else if(/^a(lt)?$/i.test(n))r=!0;else if(/^(c|ctrl|control)$/i.test(n))i=!0;else if(/^s(hift)?$/i.test(n))a=!0;else if(/^mod$/i.test(n))fT()||jT()?o=!0:i=!0;else throw Error(`Unrecognized modifier name: ${n}`)}return r&&(n=`Alt-${n}`),i&&(n=`Ctrl-${n}`),o&&(n=`Meta-${n}`),a&&(n=`Shift-${n}`),n}var NT=e=>({editor:t,view:n,tr:r,dispatch:i})=>{let a=MT(e).split(/-(?!$)/),o=a.find(e=>![`Alt`,`Ctrl`,`Meta`,`Shift`].includes(e)),s=new KeyboardEvent(`keydown`,{key:o===`Space`?` `:o,altKey:a.includes(`Alt`),ctrlKey:a.includes(`Ctrl`),metaKey:a.includes(`Meta`),shiftKey:a.includes(`Shift`),bubbles:!0,cancelable:!0});return t.captureTransaction(()=>{n.someProp(`handleKeyDown`,e=>e(n,s))})?.steps.forEach(e=>{let t=e.map(r.mapping);t&&i&&r.maybeStep(t)}),!0};function PT(e,t,n={}){let{from:r,to:i,empty:a}=e.selection,o=t?sw(t,e.schema):null,s=[];e.doc.nodesBetween(r,i,(e,t)=>{if(e.isText)return;let n=Math.max(r,t),a=Math.min(i,t+e.nodeSize);s.push({node:e,from:n,to:a})});let c=i-r,l=s.filter(e=>!o||o.name===e.node.type.name).filter(e=>tT(e.node.attrs,n,{strict:!1}));return a?!!l.length:l.reduce((e,t)=>e+t.to-t.from,0)>=c}var FT=(e,t={})=>({state:n,dispatch:r})=>PT(n,sw(e,n.schema),t)?DC(n,r):!1,IT=()=>({state:e,dispatch:t})=>MC(e,t),LT=e=>({state:t,dispatch:n})=>QC(sw(e,t.schema))(t,n),RT=()=>({state:e,dispatch:t})=>OC(e,t);function zT(e,t){return t.nodes[e]?`node`:t.marks[e]?`mark`:null}function BT(e,t){let n=typeof t==`string`?[t]:t;return Object.keys(e).reduce((t,r)=>(n.includes(r)||(t[r]=e[r]),t),{})}var VT=(e,t)=>({tr:n,state:r,dispatch:i})=>{let a=null,o=null,s=zT(typeof e==`string`?e:e.name,r.schema);return s?(s===`node`&&(a=sw(e,r.schema)),s===`mark`&&(o=aT(e,r.schema)),i&&n.selection.ranges.forEach(e=>{r.doc.nodesBetween(e.$from.pos,e.$to.pos,(e,r)=>{a&&a===e.type&&n.setNodeMarkup(r,void 0,BT(e.attrs,t)),o&&e.marks.length&&e.marks.forEach(i=>{o===i.type&&n.addMark(r,r+e.nodeSize,o.create(BT(i.attrs,t)))})})}),!0):!1},HT=()=>({tr:e,dispatch:t})=>(t&&e.scrollIntoView(),!0),UT=()=>({tr:e,dispatch:t})=>{if(t){let t=new dv(e.doc);e.setSelection(t)}return!0},WT=()=>({state:e,dispatch:t})=>yC(e,t),GT=()=>({state:e,dispatch:t})=>CC(e,t),KT=()=>({state:e,dispatch:t})=>FC(e,t),qT=()=>({state:e,dispatch:t})=>VC(e,t),JT=()=>({state:e,dispatch:t})=>BC(e,t);function YT(e,t,n={},r={}){return yT(e,t,{slice:!1,parseOptions:n,errorOnInvalidContent:r.errorOnInvalidContent})}var XT=(e,t=!1,n={},r={})=>({editor:i,tr:a,dispatch:o,commands:s})=>{let{doc:c}=a;if(n.preserveWhitespace!==`full`){let s=YT(e,i.schema,n,{errorOnInvalidContent:r.errorOnInvalidContent??i.options.enableContentCheck});return o&&a.replaceWith(0,c.content.size,s).setMeta(`preventUpdate`,!t),!0}return o&&a.setMeta(`preventUpdate`,!t),s.insertContentAt({from:0,to:c.content.size},e,{parseOptions:n,errorOnInvalidContent:r.errorOnInvalidContent??i.options.enableContentCheck})};function ZT(e,t){let n=aT(t,e.schema),{from:r,to:i,empty:a}=e.selection,o=[];a?(e.storedMarks&&o.push(...e.storedMarks),o.push(...e.selection.$head.marks())):e.doc.nodesBetween(r,i,e=>{o.push(...e.marks)});let s=o.find(e=>e.type.name===n.name);return s?{...s.attrs}:{}}function QT(e){for(let t=0;t<e.edgeCount;t+=1){let{type:n}=e.edge(t);if(n.isTextblock&&!n.hasRequiredAttrs())return n}return null}function $T(e,t){for(let n=e.depth;n>0;--n){let r=e.node(n);if(t(r))return{pos:n>0?e.before(n):0,start:e.start(n),depth:n,node:r}}}function eE(e){return t=>$T(t.$from,e)}function tE(e,t){return Bw(e,{from:0,to:e.content.size},t)}function nE(e,t){let n=sw(t,e.schema),{from:r,to:i}=e.selection,a=[];e.doc.nodesBetween(r,i,e=>{a.push(e)});let o=a.reverse().find(e=>e.type.name===n.name);return o?{...o.attrs}:{}}function rE(e,t){let n=zT(typeof t==`string`?t:t.name,e.schema);return n===`node`?nE(e,t):n===`mark`?ZT(e,t):{}}function iE(e,t,n){let r=[];return e===t?n.resolve(e).marks().forEach(t=>{let i=iT(n.resolve(e),t.type);i&&r.push({mark:t,...i})}):n.nodesBetween(e,t,(e,t)=>{!e||e?.nodeSize===void 0||r.push(...e.marks.map(n=>({from:t,to:t+e.nodeSize,mark:n})))}),r}function aE(e,t,n){return Object.fromEntries(Object.entries(n).filter(([n])=>{let r=e.find(e=>e.type===t&&e.name===n);return r?r.attribute.keepOnSplit:!1}))}function oE(e,t,n={}){let{empty:r,ranges:i}=e.selection,a=t?aT(t,e.schema):null;if(r)return!!(e.storedMarks||e.selection.$from.marks()).filter(e=>!a||a.name===e.type.name).find(e=>tT(e.attrs,n,{strict:!1}));let o=0,s=[];if(i.forEach(({$from:t,$to:n})=>{let r=t.pos,i=n.pos;e.doc.nodesBetween(r,i,(e,t)=>{if(!e.isText&&!e.marks.length)return;let n=Math.max(r,t),a=Math.min(i,t+e.nodeSize),c=a-n;o+=c,s.push(...e.marks.map(e=>({mark:e,from:n,to:a})))})}),o===0)return!1;let c=s.filter(e=>!a||a.name===e.mark.type.name).filter(e=>tT(e.mark.attrs,n,{strict:!1})).reduce((e,t)=>e+t.to-t.from,0),l=s.filter(e=>!a||e.mark.type!==a&&e.mark.type.excludes(a)).reduce((e,t)=>e+t.to-t.from,0);return(c>0?c+l:c)>=o}function sE(e,t,n={}){if(!t)return PT(e,null,n)||oE(e,null,n);let r=zT(t,e.schema);return r===`node`?PT(e,t,n):r===`mark`&&oE(e,t,n)}function cE(e,t){let{nodeExtensions:n}=aw(t),r=n.find(t=>t.name===e);if(!r)return!1;let i=dw($(r,`group`,{name:r.name,options:r.options,storage:r.storage}));return typeof i==`string`&&i.split(` `).includes(`list`)}function lE(e,{checkChildren:t=!0,ignoreWhitespace:n=!1}={}){if(n){if(e.type.name===`hardBreak`)return!0;if(e.isText)return/^\s*$/m.test(e.text??``)}if(e.isText)return!e.text;if(e.isAtom||e.isLeaf)return!1;if(e.content.childCount===0)return!0;if(t){let r=!0;return e.content.forEach(e=>{r!==!1&&(lE(e,{ignoreWhitespace:n,checkChildren:t})||(r=!1))}),r}return!1}function uE(e){return e instanceof Q}function dE(e,t,n){let{selection:r}=t,i=null;if(cT(r)&&(i=r.$cursor),i){let t=e.storedMarks??i.marks();return!!n.isInSet(t)||!t.some(e=>e.type.excludes(n))}let{ranges:a}=r;return a.some(({$from:t,$to:r})=>{let i=t.depth===0&&e.doc.inlineContent&&e.doc.type.allowsMarkType(n);return e.doc.nodesBetween(t.pos,r.pos,(e,t,r)=>{if(i)return!1;if(e.isInline){let t=!r||r.type.allowsMarkType(n),a=!!n.isInSet(e.marks)||!e.marks.some(e=>e.type.excludes(n));i=t&&a}return!i}),i})}var fE=(e,t={})=>({tr:n,state:r,dispatch:i})=>{let{selection:a}=n,{empty:o,ranges:s}=a,c=aT(e,r.schema);if(i)if(o){let e=ZT(r,c);n.addStoredMark(c.create({...e,...t}))}else s.forEach(e=>{let i=e.$from.pos,a=e.$to.pos;r.doc.nodesBetween(i,a,(e,r)=>{let o=Math.max(r,i),s=Math.min(r+e.nodeSize,a);e.marks.find(e=>e.type===c)?e.marks.forEach(e=>{c===e.type&&n.addMark(o,s,c.create({...e.attrs,...t}))}):n.addMark(o,s,c.create(t))})});return dE(r,n,c)},pE=(e,t)=>({tr:n})=>(n.setMeta(e,t),!0),mE=(e,t={})=>({state:n,dispatch:r,chain:i})=>{let a=sw(e,n.schema),o;return n.selection.$anchor.sameParent(n.selection.$head)&&(o=n.selection.$anchor.parent.attrs),a.isTextblock?i().command(({commands:e})=>UC(a,{...o,...t})(n)?!0:e.clearNodes()).command(({state:e})=>UC(a,{...o,...t})(e,r)).run():(console.warn(`[tiptap warn]: Currently "setNode()" only supports text block nodes.`),!1)},hE=e=>({tr:t,dispatch:n})=>{if(n){let{doc:n}=t,r=lT(e,0,n.content.size),i=Q.create(n,r);t.setSelection(i)}return!0},gE=e=>({tr:t,dispatch:n})=>{if(n){let{doc:n}=t,{from:r,to:i}=typeof e==`number`?{from:e,to:e}:e,a=cv.atStart(n).from,o=cv.atEnd(n).to,s=lT(r,a,o),c=lT(i,a,o),l=cv.create(n,s,c);t.setSelection(l)}return!0},_E=e=>({state:t,dispatch:n})=>tw(sw(e,t.schema))(t,n);function vE(e,t){let n=e.storedMarks||e.selection.$to.parentOffset&&e.selection.$from.marks();if(n){let r=n.filter(e=>t?.includes(e.type.name));e.tr.ensureMarks(r)}}var yE=({keepMarks:e=!0}={})=>({tr:t,state:n,dispatch:r,editor:i})=>{let{selection:a,doc:o}=t,{$from:s,$to:c}=a,l=i.extensionManager.attributes,u=aE(l,s.node().type.name,s.node().attrs);if(a instanceof Q&&a.node.isBlock)return!s.parentOffset||!k_(o,s.pos)?!1:(r&&(e&&vE(n,i.extensionManager.splittableMarks),t.split(s.pos).scrollIntoView()),!0);if(!s.parent.isBlock)return!1;let d=c.parentOffset===c.parent.content.size,f=s.depth===0?void 0:QT(s.node(-1).contentMatchAt(s.indexAfter(-1))),p=d&&f?[{type:f,attrs:u}]:void 0,m=k_(t.doc,t.mapping.map(s.pos),1,p);if(!p&&!m&&k_(t.doc,t.mapping.map(s.pos),1,f?[{type:f}]:void 0)&&(m=!0,p=f?[{type:f,attrs:u}]:void 0),r){if(m&&(a instanceof cv&&t.deleteSelection(),t.split(t.mapping.map(s.pos),1,p),f&&!d&&!s.parentOffset&&s.parent.type!==f)){let e=t.mapping.map(s.before()),n=t.doc.resolve(e);s.node(-1).canReplaceWith(n.index(),n.index()+1,f)&&t.setNodeMarkup(t.mapping.map(s.before()),f)}e&&vE(n,i.extensionManager.splittableMarks),t.scrollIntoView()}return m},bE=(e,t={})=>({tr:n,state:r,dispatch:i,editor:a})=>{let o=sw(e,r.schema),{$from:s,$to:c}=r.selection,l=r.selection.node;if(l&&l.isBlock||s.depth<2||!s.sameParent(c))return!1;let u=s.node(-1);if(u.type!==o)return!1;let d=a.extensionManager.attributes;if(s.parent.content.size===0&&s.node(-1).childCount===s.indexAfter(-1)){if(s.depth===2||s.node(-3).type!==o||s.index(-2)!==s.node(-2).childCount-1)return!1;if(i){let e=X.empty,r=s.index(-1)?1:s.index(-2)?2:3;for(let t=s.depth-r;t>=s.depth-3;--t)e=X.from(s.node(t).copy(e));let i=s.indexAfter(-1)<s.node(-2).childCount?1:s.indexAfter(-2)<s.node(-3).childCount?2:3,a={...aE(d,s.node().type.name,s.node().attrs),...t},c=o.contentMatch.defaultType?.createAndFill(a)||void 0;e=e.append(X.from(o.createAndFill(null,c)||void 0));let l=s.before(s.depth-(r-1));n.replace(l,s.after(-i),new Z(e,4-r,0));let u=-1;n.doc.nodesBetween(l,n.doc.content.size,(e,t)=>{if(u>-1)return!1;e.isTextblock&&e.content.size===0&&(u=t+1)}),u>-1&&n.setSelection(cv.near(n.doc.resolve(u))),n.scrollIntoView()}return!0}let f=c.pos===s.end()?u.contentMatchAt(0).defaultType:null,p={...aE(d,u.type.name,u.attrs),...t},m={...aE(d,s.node().type.name,s.node().attrs),...t};n.delete(s.pos,c.pos);let h=f?[{type:o,attrs:p},{type:f,attrs:m}]:[{type:o,attrs:p}];if(!k_(n.doc,s.pos,2))return!1;if(i){let{selection:e,storedMarks:t}=r,{splittableMarks:o}=a.extensionManager,c=t||e.$to.parentOffset&&e.$from.marks();if(n.split(s.pos,2,h).scrollIntoView(),!c||!i)return!0;let l=c.filter(e=>o.includes(e.type.name));n.ensureMarks(l)}return!0},xE=(e,t)=>{let n=eE(e=>e.type===t)(e.selection);if(!n)return!0;let r=e.doc.resolve(Math.max(0,n.pos-1)).before(n.depth);if(r===void 0)return!0;let i=e.doc.nodeAt(r);return n.node.type===i?.type&&j_(e.doc,n.pos)&&e.join(n.pos),!0},SE=(e,t)=>{let n=eE(e=>e.type===t)(e.selection);if(!n)return!0;let r=e.doc.resolve(n.start).after(n.depth);if(r===void 0)return!0;let i=e.doc.nodeAt(r);return n.node.type===i?.type&&j_(e.doc,r)&&e.join(r),!0},CE=Object.freeze({__proto__:null,blur:Uw,clearContent:Ww,clearNodes:Gw,command:Kw,createParagraphNear:qw,cut:Jw,deleteCurrentNode:Yw,deleteNode:Xw,deleteRange:Zw,deleteSelection:Qw,enter:$w,exitCode:eT,extendMarkRange:oT,first:sT,focus:mT,forEach:hT,insertContent:gT,insertContentAt:ST,joinBackward:TT,joinDown:wT,joinForward:ET,joinItemBackward:DT,joinItemForward:OT,joinTextblockBackward:kT,joinTextblockForward:AT,joinUp:CT,keyboardShortcut:NT,lift:FT,liftEmptyBlock:IT,liftListItem:LT,newlineInCode:RT,resetAttributes:VT,scrollIntoView:HT,selectAll:UT,selectNodeBackward:WT,selectNodeForward:GT,selectParentNode:KT,selectTextblockEnd:qT,selectTextblockStart:JT,setContent:XT,setMark:fE,setMeta:pE,setNode:mE,setNodeSelection:hE,setTextSelection:gE,sinkListItem:_E,splitBlock:yE,splitListItem:bE,toggleList:(e,t,n,r={})=>({editor:i,tr:a,state:o,dispatch:s,chain:c,commands:l,can:u})=>{let{extensions:d,splittableMarks:f}=i.extensionManager,p=sw(e,o.schema),m=sw(t,o.schema),{selection:h,storedMarks:g}=o,{$from:_,$to:v}=h,y=_.blockRange(v),b=g||h.$to.parentOffset&&h.$from.marks();if(!y)return!1;let x=eE(e=>cE(e.type.name,d))(h);if(y.depth>=1&&x&&y.depth-x.depth<=1){if(x.node.type===p)return l.liftListItem(m);if(cE(x.node.type.name,d)&&p.validContent(x.node.content)&&s)return c().command(()=>(a.setNodeMarkup(x.pos,p),!0)).command(()=>xE(a,p)).command(()=>SE(a,p)).run()}return!n||!b||!s?c().command(()=>u().wrapInList(p,r)?!0:l.clearNodes()).wrapInList(p,r).command(()=>xE(a,p)).command(()=>SE(a,p)).run():c().command(()=>{let e=u().wrapInList(p,r),t=b.filter(e=>f.includes(e.type.name));return a.ensureMarks(t),e?!0:l.clearNodes()}).wrapInList(p,r).command(()=>xE(a,p)).command(()=>SE(a,p)).run()},toggleMark:(e,t={},n={})=>({state:r,commands:i})=>{let{extendEmptyMarkRange:a=!1}=n,o=aT(e,r.schema);return oE(r,o,t)?i.unsetMark(o,{extendEmptyMarkRange:a}):i.setMark(o,t)},toggleNode:(e,t,n={})=>({state:r,commands:i})=>{let a=sw(e,r.schema),o=sw(t,r.schema),s=PT(r,a,n),c;return r.selection.$anchor.sameParent(r.selection.$head)&&(c=r.selection.$anchor.parent.attrs),s?i.setNode(o,c):i.setNode(a,{...c,...n})},toggleWrap:(e,t={})=>({state:n,commands:r})=>{let i=sw(e,n.schema);return PT(n,i,t)?r.lift(i):r.wrapIn(i,t)},undoInputRule:()=>({state:e,dispatch:t})=>{let n=e.plugins;for(let r=0;r<n.length;r+=1){let i=n[r],a;if(i.spec.isInputRules&&(a=i.getState(e))){if(t){let t=e.tr,n=a.transform;for(let e=n.steps.length-1;e>=0;--e)t.step(n.steps[e].invert(n.docs[e]));if(a.text){let n=t.doc.resolve(a.from).marks();t.replaceWith(a.from,a.to,e.schema.text(a.text,n))}else t.delete(a.from,a.to)}return!0}}return!1},unsetAllMarks:()=>({tr:e,dispatch:t})=>{let{selection:n}=e,{empty:r,ranges:i}=n;return r||t&&i.forEach(t=>{e.removeMark(t.$from.pos,t.$to.pos)}),!0},unsetMark:(e,t={})=>({tr:n,state:r,dispatch:i})=>{let{extendEmptyMarkRange:a=!1}=t,{selection:o}=n,s=aT(e,r.schema),{$from:c,empty:l,ranges:u}=o;if(!i)return!0;if(l&&a){let{from:e,to:t}=o,r=iT(c,s,c.marks().find(e=>e.type===s)?.attrs);r&&(e=r.from,t=r.to),n.removeMark(e,t,s)}else u.forEach(e=>{n.removeMark(e.$from.pos,e.$to.pos,s)});return n.removeStoredMark(s),!0},updateAttributes:(e,t={})=>({tr:n,state:r,dispatch:i})=>{let a=null,o=null,s=zT(typeof e==`string`?e:e.name,r.schema);return s?(s===`node`&&(a=sw(e,r.schema)),s===`mark`&&(o=aT(e,r.schema)),i&&n.selection.ranges.forEach(e=>{let i=e.$from.pos,s=e.$to.pos,c,l,u,d;n.selection.empty?r.doc.nodesBetween(i,s,(e,t)=>{a&&a===e.type&&(u=Math.max(t,i),d=Math.min(t+e.nodeSize,s),c=t,l=e)}):r.doc.nodesBetween(i,s,(e,r)=>{r<i&&a&&a===e.type&&(u=Math.max(r,i),d=Math.min(r+e.nodeSize,s),c=r,l=e),r>=i&&r<=s&&(a&&a===e.type&&n.setNodeMarkup(r,void 0,{...e.attrs,...t}),o&&e.marks.length&&e.marks.forEach(a=>{if(o===a.type){let c=Math.max(r,i),l=Math.min(r+e.nodeSize,s);n.addMark(c,l,o.create({...a.attrs,...t}))}}))}),l&&(c!==void 0&&n.setNodeMarkup(c,void 0,{...l.attrs,...t}),o&&l.marks.length&&l.marks.forEach(e=>{o===e.type&&n.addMark(u,d,o.create({...e.attrs,...t}))}))}),!0):!1},wrapIn:(e,t={})=>({state:n,dispatch:r})=>HC(sw(e,n.schema),t)(n,r),wrapInList:(e,t={})=>({state:n,dispatch:r})=>YC(sw(e,n.schema),t)(n,r)}),wE=zw.create({name:`commands`,addCommands(){return{...CE}}}),TE=zw.create({name:`drop`,addProseMirrorPlugins(){return[new Tv({key:new Ov(`tiptapDrop`),props:{handleDrop:(e,t,n,r)=>{this.editor.emit(`drop`,{editor:this.editor,event:t,slice:n,moved:r})}}})]}}),EE=zw.create({name:`editable`,addProseMirrorPlugins(){return[new Tv({key:new Ov(`editable`),props:{editable:()=>this.editor.options.editable}})]}}),DE=new Ov(`focusEvents`),OE=zw.create({name:`focusEvents`,addProseMirrorPlugins(){let{editor:e}=this;return[new Tv({key:DE,props:{handleDOMEvents:{focus:(t,n)=>{e.isFocused=!0;let r=e.state.tr.setMeta(`focus`,{event:n}).setMeta(`addToHistory`,!1);return t.dispatch(r),!1},blur:(t,n)=>{e.isFocused=!1;let r=e.state.tr.setMeta(`blur`,{event:n}).setMeta(`addToHistory`,!1);return t.dispatch(r),!1}}}})]}}),kE=zw.create({name:`keymap`,addKeyboardShortcuts(){let e=()=>this.editor.commands.first(({commands:e})=>[()=>e.undoInputRule(),()=>e.command(({tr:t})=>{let{selection:n,doc:r}=t,{empty:i,$anchor:a}=n,{pos:o,parent:s}=a,c=a.parent.isTextblock&&o>0?t.doc.resolve(o-1):a,l=c.parent.type.spec.isolating,u=a.pos-a.parentOffset,d=l&&c.parent.childCount===1?u===a.pos:iv.atStart(r).from===o;return!i||!s.type.isTextblock||s.textContent.length||!d||d&&a.parent.type.name===`paragraph`?!1:e.clearNodes()}),()=>e.deleteSelection(),()=>e.joinBackward(),()=>e.selectNodeBackward()]),t=()=>this.editor.commands.first(({commands:e})=>[()=>e.deleteSelection(),()=>e.deleteCurrentNode(),()=>e.joinForward(),()=>e.selectNodeForward()]),n={Enter:()=>this.editor.commands.first(({commands:e})=>[()=>e.newlineInCode(),()=>e.createParagraphNear(),()=>e.liftEmptyBlock(),()=>e.splitBlock()]),"Mod-Enter":()=>this.editor.commands.exitCode(),Backspace:e,"Mod-Backspace":e,"Shift-Backspace":e,Delete:t,"Mod-Delete":t,"Mod-a":()=>this.editor.commands.selectAll()},r={...n},i={...n,"Ctrl-h":e,"Alt-Backspace":e,"Ctrl-d":t,"Ctrl-Alt-Backspace":t,"Alt-Delete":t,"Alt-d":t,"Ctrl-a":()=>this.editor.commands.selectTextblockStart(),"Ctrl-e":()=>this.editor.commands.selectTextblockEnd()};return fT()||jT()?i:r},addProseMirrorPlugins(){return[new Tv({key:new Ov(`clearDocument`),appendTransaction:(e,t,n)=>{if(e.some(e=>e.getMeta(`composition`)))return;let r=e.some(e=>e.docChanged)&&!t.doc.eq(n.doc),i=e.some(e=>e.getMeta(`preventClearDocument`));if(!r||i)return;let{empty:a,from:o,to:s}=t.selection,c=iv.atStart(t.doc).from,l=iv.atEnd(t.doc).to;if(a||!(o===c&&s===l)||!lE(n.doc))return;let u=n.tr,d=nw({state:n,transaction:u}),{commands:f}=new rw({editor:this.editor,state:d});if(f.clearNodes(),u.steps.length)return u}})]}}),AE=zw.create({name:`paste`,addProseMirrorPlugins(){return[new Tv({key:new Ov(`tiptapPaste`),props:{handlePaste:(e,t,n)=>{this.editor.emit(`paste`,{editor:this.editor,event:t,slice:n})}}})]}}),jE=zw.create({name:`tabindex`,addProseMirrorPlugins(){return[new Tv({key:new Ov(`tabindex`),props:{attributes:()=>this.editor.isEditable?{tabindex:`0`}:{}}})]}}),ME=Object.freeze({__proto__:null,ClipboardTextSerializer:Hw,Commands:wE,Drop:TE,Editable:EE,FocusEvents:OE,Keymap:kE,Paste:AE,Tabindex:jE,focusEventsPluginKey:DE}),NE=class e{get name(){return this.node.type.name}constructor(e,t,n=!1,r=null){this.currentNode=null,this.actualDepth=null,this.isBlock=n,this.resolvedPos=e,this.editor=t,this.currentNode=r}get node(){return this.currentNode||this.resolvedPos.node()}get element(){return this.editor.view.domAtPos(this.pos).node}get depth(){return this.actualDepth??this.resolvedPos.depth}get pos(){return this.resolvedPos.pos}get content(){return this.node.content}set content(e){let t=this.from,n=this.to;if(this.isBlock){if(this.content.size===0){console.error(`You can’t set content on a block node. Tried to set content on ${this.name} at ${this.pos}`);return}t=this.from+1,n=this.to-1}this.editor.commands.insertContentAt({from:t,to:n},e)}get attributes(){return this.node.attrs}get textContent(){return this.node.textContent}get size(){return this.node.nodeSize}get from(){return this.isBlock?this.pos:this.resolvedPos.start(this.resolvedPos.depth)}get range(){return{from:this.from,to:this.to}}get to(){return this.isBlock?this.pos+this.size:this.resolvedPos.end(this.resolvedPos.depth)+ +!this.node.isText}get parent(){if(this.depth===0)return null;let t=this.resolvedPos.start(this.resolvedPos.depth-1),n=this.resolvedPos.doc.resolve(t);return new e(n,this.editor)}get before(){let t=this.resolvedPos.doc.resolve(this.from-(this.isBlock?1:2));return t.depth!==this.depth&&(t=this.resolvedPos.doc.resolve(this.from-3)),new e(t,this.editor)}get after(){let t=this.resolvedPos.doc.resolve(this.to+(this.isBlock?2:1));return t.depth!==this.depth&&(t=this.resolvedPos.doc.resolve(this.to+3)),new e(t,this.editor)}get children(){let t=[];return this.node.content.forEach((n,r)=>{let i=n.isBlock&&!n.isTextblock,a=n.isAtom&&!n.isText,o=this.pos+r+ +!a;if(o<0||o>this.resolvedPos.doc.nodeSize-2)return;let s=this.resolvedPos.doc.resolve(o);if(!i&&s.depth<=this.depth)return;let c=new e(s,this.editor,i,i?n:null);i&&(c.actualDepth=this.depth+1),t.push(new e(s,this.editor,i,i?n:null))}),t}get firstChild(){return this.children[0]||null}get lastChild(){let e=this.children;return e[e.length-1]||null}closest(e,t={}){let n=null,r=this.parent;for(;r&&!n;){if(r.node.type.name===e)if(Object.keys(t).length>0){let e=r.node.attrs,n=Object.keys(t);for(let r=0;r<n.length;r+=1){let i=n[r];if(e[i]!==t[i])break}}else n=r;r=r.parent}return n}querySelector(e,t={}){return this.querySelectorAll(e,t,!0)[0]||null}querySelectorAll(e,t={},n=!1){let r=[];if(!this.children||this.children.length===0)return r;let i=Object.keys(t);return this.children.forEach(a=>{n&&r.length>0||(a.node.type.name===e&&i.every(e=>t[e]===a.node.attrs[e])&&r.push(a),!(n&&r.length>0)&&(r=r.concat(a.querySelectorAll(e,t,n))))}),r}setAttribute(e){let{tr:t}=this.editor.state;t.setNodeMarkup(this.from,void 0,{...this.node.attrs,...e}),this.editor.view.dispatch(t)}},PE=`.ProseMirror {
21
+ position: relative;
22
+ }
23
+
24
+ .ProseMirror {
25
+ word-wrap: break-word;
26
+ white-space: pre-wrap;
27
+ white-space: break-spaces;
28
+ -webkit-font-variant-ligatures: none;
29
+ font-variant-ligatures: none;
30
+ font-feature-settings: "liga" 0; /* the above doesn't seem to work in Edge */
31
+ }
32
+
33
+ .ProseMirror [contenteditable="false"] {
34
+ white-space: normal;
35
+ }
36
+
37
+ .ProseMirror [contenteditable="false"] [contenteditable="true"] {
38
+ white-space: pre-wrap;
39
+ }
40
+
41
+ .ProseMirror pre {
42
+ white-space: pre-wrap;
43
+ }
44
+
45
+ img.ProseMirror-separator {
46
+ display: inline !important;
47
+ border: none !important;
48
+ margin: 0 !important;
49
+ width: 0 !important;
50
+ height: 0 !important;
51
+ }
52
+
53
+ .ProseMirror-gapcursor {
54
+ display: none;
55
+ pointer-events: none;
56
+ position: absolute;
57
+ margin: 0;
58
+ }
59
+
60
+ .ProseMirror-gapcursor:after {
61
+ content: "";
62
+ display: block;
63
+ position: absolute;
64
+ top: -2px;
65
+ width: 20px;
66
+ border-top: 1px solid black;
67
+ animation: ProseMirror-cursor-blink 1.1s steps(2, start) infinite;
68
+ }
69
+
70
+ @keyframes ProseMirror-cursor-blink {
71
+ to {
72
+ visibility: hidden;
73
+ }
74
+ }
75
+
76
+ .ProseMirror-hideselection *::selection {
77
+ background: transparent;
78
+ }
79
+
80
+ .ProseMirror-hideselection *::-moz-selection {
81
+ background: transparent;
82
+ }
83
+
84
+ .ProseMirror-hideselection * {
85
+ caret-color: transparent;
86
+ }
87
+
88
+ .ProseMirror-focused .ProseMirror-gapcursor {
89
+ display: block;
90
+ }
91
+
92
+ .tippy-box[data-animation=fade][data-state=hidden] {
93
+ opacity: 0
94
+ }`;function FE(e,t,n){let r=document.querySelector(`style[data-tiptap-style${n?`-${n}`:``}]`);if(r!==null)return r;let i=document.createElement(`style`);return t&&i.setAttribute(`nonce`,t),i.setAttribute(`data-tiptap-style${n?`-${n}`:``}`,``),i.innerHTML=e,document.getElementsByTagName(`head`)[0].appendChild(i),i}var IE=class extends iw{constructor(e={}){super(),this.isFocused=!1,this.isInitialized=!1,this.extensionStorage={},this.options={element:document.createElement(`div`),content:``,injectCSS:!0,injectNonce:void 0,extensions:[],autofocus:!1,editable:!0,editorProps:{},parseOptions:{},coreExtensionOptions:{},enableInputRules:!0,enablePasteRules:!0,enableCoreExtensions:!0,enableContentCheck:!1,emitContentError:!1,onBeforeCreate:()=>null,onCreate:()=>null,onUpdate:()=>null,onSelectionUpdate:()=>null,onTransaction:()=>null,onFocus:()=>null,onBlur:()=>null,onDestroy:()=>null,onContentError:({error:e})=>{throw e},onPaste:()=>null,onDrop:()=>null},this.isCapturingTransaction=!1,this.capturedTransaction=null,this.setOptions(e),this.createExtensionManager(),this.createCommandManager(),this.createSchema(),this.on(`beforeCreate`,this.options.onBeforeCreate),this.emit(`beforeCreate`,{editor:this}),this.on(`contentError`,this.options.onContentError),this.createView(),this.injectCSS(),this.on(`create`,this.options.onCreate),this.on(`update`,this.options.onUpdate),this.on(`selectionUpdate`,this.options.onSelectionUpdate),this.on(`transaction`,this.options.onTransaction),this.on(`focus`,this.options.onFocus),this.on(`blur`,this.options.onBlur),this.on(`destroy`,this.options.onDestroy),this.on(`drop`,({event:e,slice:t,moved:n})=>this.options.onDrop(e,t,n)),this.on(`paste`,({event:e,slice:t})=>this.options.onPaste(e,t)),window.setTimeout(()=>{this.isDestroyed||(this.commands.focus(this.options.autofocus),this.emit(`create`,{editor:this}),this.isInitialized=!0)},0)}get storage(){return this.extensionStorage}get commands(){return this.commandManager.commands}chain(){return this.commandManager.chain()}can(){return this.commandManager.can()}injectCSS(){this.options.injectCSS&&document&&(this.css=FE(PE,this.options.injectNonce))}setOptions(e={}){this.options={...this.options,...e},!(!this.view||!this.state||this.isDestroyed)&&(this.options.editorProps&&this.view.setProps(this.options.editorProps),this.view.updateState(this.state))}setEditable(e,t=!0){this.setOptions({editable:e}),t&&this.emit(`update`,{editor:this,transaction:this.state.tr})}get isEditable(){return this.options.editable&&this.view&&this.view.editable}get state(){return this.view.state}registerPlugin(e,t){let n=uw(t)?t(e,[...this.state.plugins]):[...this.state.plugins,e],r=this.state.reconfigure({plugins:n});return this.view.updateState(r),r}unregisterPlugin(e){if(this.isDestroyed)return;let t=this.state.plugins,n=t;if([].concat(e).forEach(e=>{let t=typeof e==`string`?`${e}$`:e.key;n=n.filter(e=>!e.key.startsWith(t))}),t.length===n.length)return;let r=this.state.reconfigure({plugins:n});return this.view.updateState(r),r}createExtensionManager(){let e=[...this.options.enableCoreExtensions?[EE,Hw.configure({blockSeparator:this.options.coreExtensionOptions?.clipboardTextSerializer?.blockSeparator}),wE,OE,kE,jE,TE,AE].filter(e=>typeof this.options.enableCoreExtensions!=`object`||this.options.enableCoreExtensions[e.name]!==!1):[],...this.options.extensions].filter(e=>[`extension`,`node`,`mark`].includes(e?.type));this.extensionManager=new Rw(e,this)}createCommandManager(){this.commandManager=new rw({editor:this})}createSchema(){this.schema=this.extensionManager.schema}createView(){let e;try{e=YT(this.options.content,this.schema,this.options.parseOptions,{errorOnInvalidContent:this.options.enableContentCheck})}catch(t){if(!(t instanceof Error)||![`[tiptap error]: Invalid JSON content`,`[tiptap error]: Invalid HTML content`].includes(t.message))throw t;this.emit(`contentError`,{editor:this,error:t,disableCollaboration:()=>{this.storage.collaboration&&(this.storage.collaboration.isDisabled=!0),this.options.extensions=this.options.extensions.filter(e=>e.name!==`collaboration`),this.createExtensionManager()}}),e=YT(this.options.content,this.schema,this.options.parseOptions,{errorOnInvalidContent:!1})}let t=uT(e,this.options.autofocus);this.view=new WS(this.options.element,{...this.options.editorProps,attributes:{role:`textbox`,...this.options.editorProps?.attributes},dispatchTransaction:this.dispatchTransaction.bind(this),state:Cv.create({doc:e,selection:t||void 0})});let n=this.state.reconfigure({plugins:this.extensionManager.plugins});this.view.updateState(n),this.createNodeViews(),this.prependClass();let r=this.view.dom;r.editor=this}createNodeViews(){this.view.isDestroyed||this.view.setProps({nodeViews:this.extensionManager.nodeViews})}prependClass(){this.view.dom.className=`tiptap ${this.view.dom.className}`}captureTransaction(e){this.isCapturingTransaction=!0,e(),this.isCapturingTransaction=!1;let t=this.capturedTransaction;return this.capturedTransaction=null,t}dispatchTransaction(e){if(this.view.isDestroyed)return;if(this.isCapturingTransaction){if(!this.capturedTransaction){this.capturedTransaction=e;return}e.steps.forEach(e=>this.capturedTransaction?.step(e));return}let t=this.state.apply(e),n=!this.state.selection.eq(t.selection);this.emit(`beforeTransaction`,{editor:this,transaction:e,nextState:t}),this.view.updateState(t),this.emit(`transaction`,{editor:this,transaction:e}),n&&this.emit(`selectionUpdate`,{editor:this,transaction:e});let r=e.getMeta(`focus`),i=e.getMeta(`blur`);r&&this.emit(`focus`,{editor:this,event:r.event,transaction:e}),i&&this.emit(`blur`,{editor:this,event:i.event,transaction:e}),!(!e.docChanged||e.getMeta(`preventUpdate`))&&this.emit(`update`,{editor:this,transaction:e})}getAttributes(e){return rE(this.state,e)}isActive(e,t){let n=typeof e==`string`?e:null,r=typeof e==`string`?t:e;return sE(this.state,n,r)}getJSON(){return this.state.doc.toJSON()}getHTML(){return yw(this.state.doc.content,this.schema)}getText(e){let{blockSeparator:t=`
95
+
96
+ `,textSerializers:n={}}=e||{};return tE(this.state.doc,{blockSeparator:t,textSerializers:{...Vw(this.schema),...n}})}get isEmpty(){return lE(this.state.doc)}getCharacterCount(){return console.warn(`[tiptap warn]: "editor.getCharacterCount()" is deprecated. Please use "editor.storage.characterCount.characters()" instead.`),this.state.doc.content.size-2}destroy(){if(this.emit(`destroy`),this.view){let e=this.view.dom;e&&e.editor&&delete e.editor,this.view.destroy()}this.removeAllListeners()}get isDestroyed(){return!this.view?.docView}$node(e,t){return this.$doc?.querySelector(e,t)||null}$nodes(e,t){return this.$doc?.querySelectorAll(e,t)||null}$pos(e){return new NE(this.state.doc.resolve(e),this)}get $doc(){return this.$pos(0)}};function LE(e){return new Sw({find:e.find,handler:({state:t,range:n,match:r})=>{let i=dw(e.getAttributes,void 0,r);if(i===!1||i===null)return null;let{tr:a}=t,o=r[r.length-1],s=r[0];if(o){let r=s.search(/\S/),c=n.from+s.indexOf(o),l=c+o.length;if(iE(n.from,n.to,t.doc).filter(t=>t.mark.type.excluded.find(n=>n===e.type&&n!==t.mark.type)).filter(e=>e.to>c).length)return null;l<n.to&&a.delete(l,n.to),c>n.from&&a.delete(n.from+r,c);let u=n.from+r+o.length;a.addMark(n.from+r,u,e.type.create(i||{})),a.removeStoredMark(e.type)}}})}function RE(e){return new Sw({find:e.find,handler:({state:t,range:n,match:r})=>{let i=dw(e.getAttributes,void 0,r)||{},{tr:a}=t,o=n.from,s=n.to,c=e.type.create(i);if(r[1]){let e=o+r[0].lastIndexOf(r[1]);e>s?e=s:s=e+r[1].length;let t=r[0][r[0].length-1];a.insertText(t,o+r[0].length-1),a.replaceWith(e,s,c)}else if(r[0]){let t=e.type.isInline?o:o-1;a.insert(t,e.type.create(i)).delete(a.mapping.map(o),a.mapping.map(s))}a.scrollIntoView()}})}function zE(e){return new Sw({find:e.find,handler:({state:t,range:n,match:r})=>{let i=t.doc.resolve(n.from),a=dw(e.getAttributes,void 0,r)||{};if(!i.node(-1).canReplaceWith(i.index(-1),i.indexAfter(-1),e.type))return null;t.tr.delete(n.from,n.to).setBlockType(n.from,n.from,e.type,a)}})}function BE(e){return new Sw({find:e.find,handler:({state:t,range:n,match:r,chain:i})=>{let a=dw(e.getAttributes,void 0,r)||{},o=t.tr.delete(n.from,n.to),s=o.doc.resolve(n.from).blockRange(),c=s&&y_(s,e.type,a);if(!c)return null;if(o.wrap(s,c),e.keepMarks&&e.editor){let{selection:n,storedMarks:r}=t,{splittableMarks:i}=e.editor.extensionManager,a=r||n.$to.parentOffset&&n.$from.marks();if(a){let e=a.filter(e=>i.includes(e.type.name));o.ensureMarks(e)}}if(e.keepAttributes){let t=e.type.name===`bulletList`||e.type.name===`orderedList`?`listItem`:`taskList`;i().updateAttributes(t,a).run()}let l=o.doc.resolve(n.from-1).nodeBefore;l&&l.type===e.type&&j_(o.doc,n.from-1)&&(!e.joinPredicate||e.joinPredicate(r,l))&&o.join(n.from-1)}})}var VE=class e{constructor(e={}){this.type=`node`,this.name=`node`,this.parent=null,this.child=null,this.config={name:this.name,defaultOptions:{}},this.config={...this.config,...e},this.name=this.config.name,e.defaultOptions&&Object.keys(e.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${this.name}".`),this.options=this.config.defaultOptions,this.config.addOptions&&(this.options=dw($(this,`addOptions`,{name:this.name}))),this.storage=dw($(this,`addStorage`,{name:this.name,options:this.options}))||{}}static create(t={}){return new e(t)}configure(e={}){let t=this.extend({...this.config,addOptions:()=>Ow(this.options,e)});return t.name=this.name,t.parent=this.parent,t}extend(t={}){let n=new e(t);return n.parent=this,this.child=n,n.name=t.name?t.name:n.parent.name,t.defaultOptions&&Object.keys(t.defaultOptions).length>0&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${n.name}".`),n.options=dw($(n,`addOptions`,{name:n.name})),n.storage=dw($(n,`addStorage`,{name:n.name,options:n.options})),n}};function HE(e){return new jw({find:e.find,handler:({state:t,range:n,match:r,pasteEvent:i})=>{let a=dw(e.getAttributes,void 0,r,i);if(a===!1||a===null)return null;let{tr:o}=t,s=r[r.length-1],c=r[0],l=n.to;if(s){let r=c.search(/\S/),i=n.from+c.indexOf(s),u=i+s.length;if(iE(n.from,n.to,t.doc).filter(t=>t.mark.type.excluded.find(n=>n===e.type&&n!==t.mark.type)).filter(e=>e.to>i).length)return null;u<n.to&&o.delete(u,n.to),i>n.from&&o.delete(n.from+r,i),l=n.from+r+s.length,o.addMark(n.from+r,l,e.type.create(a||{})),o.removeStoredMark(e.type)}}})}function UE(e,t){let{selection:n}=e,{$from:r}=n;if(n instanceof Q){let e=r.index();return r.parent.canReplaceWith(e,e+1,t)}let i=r.depth;for(;i>=0;){let e=r.index(i);if(r.node(i).contentMatchAt(e).matchType(t))return!0;--i}return!1}function WE(e){return e.replace(/[-/\\^$*+?.()|[\]{}]/g,`\\$&`)}function GE(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}var KE={exports:{}},qE={},JE;function YE(){if(JE)return qE;JE=1;var e=J.default;function t(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var n=typeof Object.is==`function`?Object.is:t,r=e.useState,i=e.useEffect,a=e.useLayoutEffect,o=e.useDebugValue;function s(e,t){var n=t(),s=r({inst:{value:n,getSnapshot:t}}),l=s[0].inst,u=s[1];return a(function(){l.value=n,l.getSnapshot=t,c(l)&&u({inst:l})},[e,n,t]),i(function(){return c(l)&&u({inst:l}),e(function(){c(l)&&u({inst:l})})},[e]),o(n),n}function c(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!n(e,r)}catch{return!0}}function l(e,t){return t()}var u=typeof window>`u`||window.document===void 0||window.document.createElement===void 0?l:s;return qE.useSyncExternalStore=e.useSyncExternalStore===void 0?u:e.useSyncExternalStore,qE}KE.exports=YE();var XE=KE.exports,ZE=(...e)=>t=>{e.forEach(e=>{typeof e==`function`?e(t):e&&(e.current=t)})},QE=({contentComponent:e})=>{let t=XE.useSyncExternalStore(e.subscribe,e.getSnapshot,e.getServerSnapshot);return J.createElement(J.Fragment,null,Object.values(t))};function $E(){let e=new Set,t={};return{subscribe(t){return e.add(t),()=>{e.delete(t)}},getSnapshot(){return t},getServerSnapshot(){return t},setRenderer(n,r){t={...t,[n]:Fi.createPortal(r.reactElement,r.element,n)},e.forEach(e=>e())},removeRenderer(n){let r={...t};delete r[n],t=r,e.forEach(e=>e())}}}var eD=class extends J.Component{constructor(e){super(e),this.editorContentRef=J.createRef(),this.initialized=!1,this.state={hasContentComponentInitialized:!!e.editor?.contentComponent}}componentDidMount(){this.init()}componentDidUpdate(){this.init()}init(){let e=this.props.editor;if(e&&!e.isDestroyed&&e.options.element){if(e.contentComponent)return;let t=this.editorContentRef.current;t.append(...e.options.element.childNodes),e.setOptions({element:t}),e.contentComponent=$E(),this.state.hasContentComponentInitialized||(this.unsubscribeToContentComponent=e.contentComponent.subscribe(()=>{this.setState(e=>e.hasContentComponentInitialized?e:{hasContentComponentInitialized:!0}),this.unsubscribeToContentComponent&&this.unsubscribeToContentComponent()})),e.createNodeViews(),this.initialized=!0}}componentWillUnmount(){let e=this.props.editor;if(!e||(this.initialized=!1,e.isDestroyed||e.view.setProps({nodeViews:{}}),this.unsubscribeToContentComponent&&this.unsubscribeToContentComponent(),e.contentComponent=null,!e.options.element.firstChild))return;let t=document.createElement(`div`);t.append(...e.options.element.childNodes),e.setOptions({element:t})}render(){let{editor:e,innerRef:t,...n}=this.props;return J.createElement(J.Fragment,null,J.createElement(`div`,{ref:ZE(t,this.editorContentRef),...n}),e?.contentComponent&&J.createElement(QE,{contentComponent:e.contentComponent}))}},tD=(0,J.forwardRef)((e,t)=>{let n=J.useMemo(()=>Math.floor(Math.random()*4294967295).toString(),[e.editor]);return J.createElement(eD,{key:n,innerRef:t,...e})}),nD=J.memo(tD),rD=GE(function e(t,n){if(t===n)return!0;if(t&&n&&typeof t==`object`&&typeof n==`object`){if(t.constructor!==n.constructor)return!1;var r,i,a;if(Array.isArray(t)){if(r=t.length,r!=n.length)return!1;for(i=r;i--!==0;)if(!e(t[i],n[i]))return!1;return!0}if(t instanceof Map&&n instanceof Map){if(t.size!==n.size)return!1;for(i of t.entries())if(!n.has(i[0]))return!1;for(i of t.entries())if(!e(i[1],n.get(i[0])))return!1;return!0}if(t instanceof Set&&n instanceof Set){if(t.size!==n.size)return!1;for(i of t.entries())if(!n.has(i[0]))return!1;return!0}if(ArrayBuffer.isView(t)&&ArrayBuffer.isView(n)){if(r=t.length,r!=n.length)return!1;for(i=r;i--!==0;)if(t[i]!==n[i])return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if(a=Object.keys(t),r=a.length,r!==Object.keys(n).length)return!1;for(i=r;i--!==0;)if(!Object.prototype.hasOwnProperty.call(n,a[i]))return!1;for(i=r;i--!==0;){var o=a[i];if(!(o===`_owner`&&t.$$typeof)&&!e(t[o],n[o]))return!1}return!0}return t!==t&&n!==n}),iD={exports:{}},aD={},oD;function sD(){if(oD)return aD;oD=1;var e=J.default,t=XE;function n(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var r=typeof Object.is==`function`?Object.is:n,i=t.useSyncExternalStore,a=e.useRef,o=e.useEffect,s=e.useMemo,c=e.useDebugValue;return aD.useSyncExternalStoreWithSelector=function(e,t,n,l,u){var d=a(null);if(d.current===null){var f={hasValue:!1,value:null};d.current=f}else f=d.current;d=s(function(){function e(e){if(!i){if(i=!0,a=e,e=l(e),u!==void 0&&f.hasValue){var t=f.value;if(u(t,e))return o=t}return o=e}if(t=o,r(a,e))return t;var n=l(e);return u!==void 0&&u(t,n)?t:(a=e,o=n)}var i=!1,a,o,s=n===void 0?null:n;return[function(){return e(t())},s===null?void 0:function(){return e(s())}]},[t,n,l,u]);var p=i(e,d[0],d[1]);return o(function(){f.hasValue=!0,f.value=p},[p]),c(p),p},aD}iD.exports=sD();var cD=iD.exports,lD=typeof window<`u`?J.useLayoutEffect:J.useEffect,uD=class{constructor(e){this.transactionNumber=0,this.lastTransactionNumber=0,this.subscribers=new Set,this.editor=e,this.lastSnapshot={editor:e,transactionNumber:0},this.getSnapshot=this.getSnapshot.bind(this),this.getServerSnapshot=this.getServerSnapshot.bind(this),this.watch=this.watch.bind(this),this.subscribe=this.subscribe.bind(this)}getSnapshot(){return this.transactionNumber===this.lastTransactionNumber?this.lastSnapshot:(this.lastTransactionNumber=this.transactionNumber,this.lastSnapshot={editor:this.editor,transactionNumber:this.transactionNumber},this.lastSnapshot)}getServerSnapshot(){return{editor:null,transactionNumber:0}}subscribe(e){return this.subscribers.add(e),()=>{this.subscribers.delete(e)}}watch(e){if(this.editor=e,this.editor){let e=()=>{this.transactionNumber+=1,this.subscribers.forEach(e=>e())},t=this.editor;return t.on(`transaction`,e),()=>{t.off(`transaction`,e)}}}};function dD(e){let[t]=(0,J.useState)(()=>new uD(e.editor)),n=cD.useSyncExternalStoreWithSelector(t.subscribe,t.getSnapshot,t.getServerSnapshot,e.selector,e.equalityFn??rD);return lD(()=>t.watch(e.editor),[e.editor,t]),(0,J.useDebugValue)(n),n}var fD=typeof window>`u`,pD=fD||!!(typeof window<`u`&&window.next),mD=class e{constructor(e){this.editor=null,this.subscriptions=new Set,this.isComponentMounted=!1,this.previousDeps=null,this.instanceId=``,this.options=e,this.subscriptions=new Set,this.setEditor(this.getInitialEditor()),this.scheduleDestroy(),this.getEditor=this.getEditor.bind(this),this.getServerSnapshot=this.getServerSnapshot.bind(this),this.subscribe=this.subscribe.bind(this),this.refreshEditorInstance=this.refreshEditorInstance.bind(this),this.scheduleDestroy=this.scheduleDestroy.bind(this),this.onRender=this.onRender.bind(this),this.createEditor=this.createEditor.bind(this)}setEditor(e){this.editor=e,this.instanceId=Math.random().toString(36).slice(2,9),this.subscriptions.forEach(e=>e())}getInitialEditor(){return this.options.current.immediatelyRender===void 0?fD||pD?null:this.createEditor():(this.options.current.immediatelyRender,this.options.current.immediatelyRender?this.createEditor():null)}createEditor(){return new IE({...this.options.current,onBeforeCreate:(...e)=>{var t;return(t=this.options.current).onBeforeCreate?.call(t,...e)},onBlur:(...e)=>{var t;return(t=this.options.current).onBlur?.call(t,...e)},onCreate:(...e)=>{var t;return(t=this.options.current).onCreate?.call(t,...e)},onDestroy:(...e)=>{var t;return(t=this.options.current).onDestroy?.call(t,...e)},onFocus:(...e)=>{var t;return(t=this.options.current).onFocus?.call(t,...e)},onSelectionUpdate:(...e)=>{var t;return(t=this.options.current).onSelectionUpdate?.call(t,...e)},onTransaction:(...e)=>{var t;return(t=this.options.current).onTransaction?.call(t,...e)},onUpdate:(...e)=>{var t;return(t=this.options.current).onUpdate?.call(t,...e)},onContentError:(...e)=>{var t;return(t=this.options.current).onContentError?.call(t,...e)},onDrop:(...e)=>{var t;return(t=this.options.current).onDrop?.call(t,...e)},onPaste:(...e)=>{var t;return(t=this.options.current).onPaste?.call(t,...e)}})}getEditor(){return this.editor}getServerSnapshot(){return null}subscribe(e){return this.subscriptions.add(e),()=>{this.subscriptions.delete(e)}}static compareOptions(e,t){return Object.keys(e).every(n=>[`onCreate`,`onBeforeCreate`,`onDestroy`,`onUpdate`,`onTransaction`,`onFocus`,`onBlur`,`onSelectionUpdate`,`onContentError`,`onDrop`,`onPaste`].includes(n)?!0:n===`extensions`&&e.extensions&&t.extensions?e.extensions.length===t.extensions.length&&e.extensions.every((e,n)=>e===t.extensions?.[n]):e[n]===t[n])}onRender(t){return()=>(this.isComponentMounted=!0,clearTimeout(this.scheduledDestructionTimeout),this.editor&&!this.editor.isDestroyed&&t.length===0?e.compareOptions(this.options.current,this.editor.options)||this.editor.setOptions({...this.options.current,editable:this.editor.isEditable}):this.refreshEditorInstance(t),()=>{this.isComponentMounted=!1,this.scheduleDestroy()})}refreshEditorInstance(e){if(this.editor&&!this.editor.isDestroyed){if(this.previousDeps===null){this.previousDeps=e;return}if(this.previousDeps.length===e.length&&this.previousDeps.every((t,n)=>t===e[n]))return}this.editor&&!this.editor.isDestroyed&&this.editor.destroy(),this.setEditor(this.createEditor()),this.previousDeps=e}scheduleDestroy(){let e=this.instanceId,t=this.editor;this.scheduledDestructionTimeout=setTimeout(()=>{if(this.isComponentMounted&&this.instanceId===e){t&&t.setOptions(this.options.current);return}t&&!t.isDestroyed&&(t.destroy(),this.instanceId===e&&this.setEditor(null))},1)}};function hD(e={},t=[]){let n=(0,J.useRef)(e);n.current=e;let[r]=(0,J.useState)(()=>new mD(n)),i=XE.useSyncExternalStore(r.subscribe,r.getEditor,r.getServerSnapshot);return(0,J.useDebugValue)(i),(0,J.useEffect)(r.onRender(t)),dD({editor:i,selector:({transactionNumber:t})=>e.shouldRerenderOnTransaction===!1?null:e.immediatelyRender&&t===0?0:t+1}),i}(0,J.createContext)({editor:null}).Consumer;var gD=(0,J.createContext)({onDragStart:void 0}),_D=()=>(0,J.useContext)(gD);J.forwardRef((e,t)=>{let{onDragStart:n}=_D(),r=e.as||`div`;return J.createElement(r,{...e,ref:t,"data-node-view-wrapper":``,onDragStart:n,style:{whiteSpace:`normal`,...e.style}})});var vD=/^\s*>\s$/,yD=VE.create({name:`blockquote`,addOptions(){return{HTMLAttributes:{}}},content:`block+`,group:`block`,defining:!0,parseHTML(){return[{tag:`blockquote`}]},renderHTML({HTMLAttributes:e}){return[`blockquote`,cw(this.options.HTMLAttributes,e),0]},addCommands(){return{setBlockquote:()=>({commands:e})=>e.wrapIn(this.name),toggleBlockquote:()=>({commands:e})=>e.toggleWrap(this.name),unsetBlockquote:()=>({commands:e})=>e.lift(this.name)}},addKeyboardShortcuts(){return{"Mod-Shift-b":()=>this.editor.commands.toggleBlockquote()}},addInputRules(){return[BE({find:vD,type:this.type})]}}),bD=/(?:^|\s)(\*\*(?!\s+\*\*)((?:[^*]+))\*\*(?!\s+\*\*))$/,xD=/(?:^|\s)(\*\*(?!\s+\*\*)((?:[^*]+))\*\*(?!\s+\*\*))/g,SD=/(?:^|\s)(__(?!\s+__)((?:[^_]+))__(?!\s+__))$/,CD=/(?:^|\s)(__(?!\s+__)((?:[^_]+))__(?!\s+__))/g,wD=kw.create({name:`bold`,addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:`strong`},{tag:`b`,getAttrs:e=>e.style.fontWeight!==`normal`&&null},{style:`font-weight=400`,clearMark:e=>e.type.name===this.name},{style:`font-weight`,getAttrs:e=>/^(bold(er)?|[5-9]\d{2,})$/.test(e)&&null}]},renderHTML({HTMLAttributes:e}){return[`strong`,cw(this.options.HTMLAttributes,e),0]},addCommands(){return{setBold:()=>({commands:e})=>e.setMark(this.name),toggleBold:()=>({commands:e})=>e.toggleMark(this.name),unsetBold:()=>({commands:e})=>e.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-b":()=>this.editor.commands.toggleBold(),"Mod-B":()=>this.editor.commands.toggleBold()}},addInputRules(){return[LE({find:bD,type:this.type}),LE({find:SD,type:this.type})]},addPasteRules(){return[HE({find:xD,type:this.type}),HE({find:CD,type:this.type})]}}),TD=`listItem`,ED=`textStyle`,DD=/^\s*([-+*])\s$/,OD=VE.create({name:`bulletList`,addOptions(){return{itemTypeName:`listItem`,HTMLAttributes:{},keepMarks:!1,keepAttributes:!1}},group:`block list`,content(){return`${this.options.itemTypeName}+`},parseHTML(){return[{tag:`ul`}]},renderHTML({HTMLAttributes:e}){return[`ul`,cw(this.options.HTMLAttributes,e),0]},addCommands(){return{toggleBulletList:()=>({commands:e,chain:t})=>this.options.keepAttributes?t().toggleList(this.name,this.options.itemTypeName,this.options.keepMarks).updateAttributes(TD,this.editor.getAttributes(ED)).run():e.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-8":()=>this.editor.commands.toggleBulletList()}},addInputRules(){let e=BE({find:DD,type:this.type});return(this.options.keepMarks||this.options.keepAttributes)&&(e=BE({find:DD,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:()=>this.editor.getAttributes(ED),editor:this.editor})),[e]}}),kD=/(^|[^`])`([^`]+)`(?!`)/,AD=/(^|[^`])`([^`]+)`(?!`)/g,jD=kw.create({name:`code`,addOptions(){return{HTMLAttributes:{}}},excludes:`_`,code:!0,exitable:!0,parseHTML(){return[{tag:`code`}]},renderHTML({HTMLAttributes:e}){return[`code`,cw(this.options.HTMLAttributes,e),0]},addCommands(){return{setCode:()=>({commands:e})=>e.setMark(this.name),toggleCode:()=>({commands:e})=>e.toggleMark(this.name),unsetCode:()=>({commands:e})=>e.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-e":()=>this.editor.commands.toggleCode()}},addInputRules(){return[LE({find:kD,type:this.type})]},addPasteRules(){return[HE({find:AD,type:this.type})]}}),MD=/^```([a-z]+)?[\s\n]$/,ND=/^~~~([a-z]+)?[\s\n]$/,PD=VE.create({name:`codeBlock`,addOptions(){return{languageClassPrefix:`language-`,exitOnTripleEnter:!0,exitOnArrowDown:!0,defaultLanguage:null,HTMLAttributes:{}}},content:`text*`,marks:``,group:`block`,code:!0,defining:!0,addAttributes(){return{language:{default:this.options.defaultLanguage,parseHTML:e=>{let{languageClassPrefix:t}=this.options;return[...e.firstElementChild?.classList||[]].filter(e=>e.startsWith(t)).map(e=>e.replace(t,``))[0]||null},rendered:!1}}},parseHTML(){return[{tag:`pre`,preserveWhitespace:`full`}]},renderHTML({node:e,HTMLAttributes:t}){return[`pre`,cw(this.options.HTMLAttributes,t),[`code`,{class:e.attrs.language?this.options.languageClassPrefix+e.attrs.language:null},0]]},addCommands(){return{setCodeBlock:e=>({commands:t})=>t.setNode(this.name,e),toggleCodeBlock:e=>({commands:t})=>t.toggleNode(this.name,`paragraph`,e)}},addKeyboardShortcuts(){return{"Mod-Alt-c":()=>this.editor.commands.toggleCodeBlock(),Backspace:()=>{let{empty:e,$anchor:t}=this.editor.state.selection,n=t.pos===1;return!e||t.parent.type.name!==this.name?!1:n||!t.parent.textContent.length?this.editor.commands.clearNodes():!1},Enter:({editor:e})=>{if(!this.options.exitOnTripleEnter)return!1;let{state:t}=e,{selection:n}=t,{$from:r,empty:i}=n;if(!i||r.parent.type!==this.type)return!1;let a=r.parentOffset===r.parent.nodeSize-2,o=r.parent.textContent.endsWith(`
97
+
98
+ `);return!a||!o?!1:e.chain().command(({tr:e})=>(e.delete(r.pos-2,r.pos),!0)).exitCode().run()},ArrowDown:({editor:e})=>{if(!this.options.exitOnArrowDown)return!1;let{state:t}=e,{selection:n,doc:r}=t,{$from:i,empty:a}=n;if(!a||i.parent.type!==this.type||i.parentOffset!==i.parent.nodeSize-2)return!1;let o=i.after();return o===void 0?!1:r.nodeAt(o)?e.commands.command(({tr:e})=>(e.setSelection(iv.near(r.resolve(o))),!0)):e.commands.exitCode()}}},addInputRules(){return[zE({find:MD,type:this.type,getAttributes:e=>({language:e[1]})}),zE({find:ND,type:this.type,getAttributes:e=>({language:e[1]})})]},addProseMirrorPlugins(){return[new Tv({key:new Ov(`codeBlockVSCodeHandler`),props:{handlePaste:(e,t)=>{if(!t.clipboardData||this.editor.isActive(this.type.name))return!1;let n=t.clipboardData.getData(`text/plain`),r=t.clipboardData.getData(`vscode-editor-data`),i=(r?JSON.parse(r):void 0)?.mode;if(!n||!i)return!1;let{tr:a,schema:o}=e.state,s=o.text(n.replace(/\r\n?/g,`
99
+ `));return a.replaceSelectionWith(this.type.create({language:i},s)),a.selection.$from.parent.type!==this.type&&a.setSelection(cv.near(a.doc.resolve(Math.max(0,a.selection.from-2)))),a.setMeta(`paste`,!0),e.dispatch(a),!0}}})]}}),FD=VE.create({name:`doc`,topNode:!0,content:`block+`});function ID(e={}){return new Tv({view(t){return new LD(t,e)}})}var LD=class{constructor(e,t){this.editorView=e,this.cursorPos=null,this.element=null,this.timeout=-1,this.lastDragEvent=null,this.width=t.width??1,this.color=t.color===!1?void 0:t.color||`black`,this.class=t.class,this.handlers=[`dragover`,`dragend`,`drop`,`dragleave`].map(t=>{let n=e=>{this[t](e)};return e.dom.addEventListener(t,n),{name:t,handler:n}})}destroy(){this.handlers.forEach(({name:e,handler:t})=>this.editorView.dom.removeEventListener(e,t))}update(e,t){if(this.cursorPos!=null&&t.doc!=e.state.doc)if(this.lastDragEvent){let e=this.computeTarget(this.lastDragEvent);e==this.cursorPos?this.updateOverlay():this.setCursor(e)}else this.updateOverlay()}setCursor(e){e!=this.cursorPos&&(this.cursorPos=e,e==null?(this.element.parentNode.removeChild(this.element),this.element=null):this.updateOverlay())}updateOverlay(){let e=this.editorView.state.doc.resolve(this.cursorPos),t=!e.parent.inlineContent,n,r=this.editorView.dom,i=r.getBoundingClientRect(),a=i.width/r.offsetWidth,o=i.height/r.offsetHeight;if(t){let t=e.nodeBefore,r=e.nodeAfter;if(t||r){let e=this.editorView.nodeDOM(this.cursorPos-(t?t.nodeSize:0));if(e){let i=e.getBoundingClientRect(),a=t?i.bottom:i.top;t&&r&&(a=(a+this.editorView.nodeDOM(this.cursorPos).getBoundingClientRect().top)/2);let s=this.width/2*o;n={left:i.left,right:i.right,top:a-s,bottom:a+s}}}}if(!n){let e=this.editorView.coordsAtPos(this.cursorPos),t=this.width/2*a;n={left:e.left-t,right:e.left+t,top:e.top,bottom:e.bottom}}let s=this.editorView.dom.offsetParent;this.element||(this.element=s.appendChild(document.createElement(`div`)),this.class&&(this.element.className=this.class),this.element.style.cssText=`position: absolute; z-index: 50; pointer-events: none;`,this.color&&(this.element.style.backgroundColor=this.color)),this.element.classList.toggle(`prosemirror-dropcursor-block`,t),this.element.classList.toggle(`prosemirror-dropcursor-inline`,!t);let c,l;if(!s||s==document.body&&getComputedStyle(s).position==`static`)c=-pageXOffset,l=-pageYOffset;else{let e=s.getBoundingClientRect(),t=e.width/s.offsetWidth,n=e.height/s.offsetHeight;c=e.left-s.scrollLeft*t,l=e.top-s.scrollTop*n}this.element.style.left=(n.left-c)/a+`px`,this.element.style.top=(n.top-l)/o+`px`,this.element.style.width=(n.right-n.left)/a+`px`,this.element.style.height=(n.bottom-n.top)/o+`px`}scheduleRemoval(e){clearTimeout(this.timeout),this.timeout=setTimeout(()=>this.setCursor(null),e)}computeTarget(e){let t=this.editorView.posAtCoords({left:e.clientX,top:e.clientY}),n=t&&t.inside>=0&&this.editorView.state.doc.nodeAt(t.inside),r=n&&n.type.spec.disableDropCursor,i=typeof r==`function`?r(this.editorView,t,e):r;if(!t||i)return null;let a=t.pos;if(this.editorView.dragging&&this.editorView.dragging.slice){let e=L_(this.editorView.state.doc,a,this.editorView.dragging.slice);e!=null&&(a=e)}return a}dragover(e){if(!this.editorView.editable)return;this.lastDragEvent=e;let t=this.computeTarget(e);t!=null&&(this.setCursor(t),this.scheduleRemoval(5e3))}dragend(){this.scheduleRemoval(20)}drop(){this.scheduleRemoval(20)}dragleave(e){this.editorView.dom.contains(e.relatedTarget)||this.setCursor(null)}},RD=zw.create({name:`dropCursor`,addOptions(){return{color:`currentColor`,width:1,class:void 0}},addProseMirrorPlugins(){return[ID(this.options)]}}),zD=class e extends iv{constructor(e){super(e,e)}map(t,n){let r=t.resolve(n.map(this.head));return e.valid(r)?new e(r):iv.near(r)}content(){return Z.empty}eq(t){return t instanceof e&&t.head==this.head}toJSON(){return{type:`gapcursor`,pos:this.head}}static fromJSON(t,n){if(typeof n.pos!=`number`)throw RangeError(`Invalid input for GapCursor.fromJSON`);return new e(t.resolve(n.pos))}getBookmark(){return new BD(this.anchor)}static valid(e){let t=e.parent;if(t.inlineContent||!HD(e)||!UD(e))return!1;let n=t.type.spec.allowGapCursor;if(n!=null)return n;let r=t.contentMatchAt(e.index()).defaultType;return r&&r.isTextblock}static findGapCursorFrom(t,n,r=!1){search:for(;;){if(!r&&e.valid(t))return t;let i=t.pos,a=null;for(let r=t.depth;;r--){let o=t.node(r);if(n>0?t.indexAfter(r)<o.childCount:t.index(r)>0){a=o.child(n>0?t.indexAfter(r):t.index(r)-1);break}else if(r==0)return null;i+=n;let s=t.doc.resolve(i);if(e.valid(s))return s}for(;;){let o=n>0?a.firstChild:a.lastChild;if(!o){if(a.isAtom&&!a.isText&&!Q.isSelectable(a)){t=t.doc.resolve(i+a.nodeSize*n),r=!1;continue search}break}a=o,i+=n;let s=t.doc.resolve(i);if(e.valid(s))return s}return null}}};zD.prototype.visible=!1,zD.findFrom=zD.findGapCursorFrom,iv.jsonID(`gapcursor`,zD);var BD=class e{constructor(e){this.pos=e}map(t){return new e(t.map(this.pos))}resolve(e){let t=e.resolve(this.pos);return zD.valid(t)?new zD(t):iv.near(t)}};function VD(e){return e.isAtom||e.spec.isolating||e.spec.createGapCursor}function HD(e){for(let t=e.depth;t>=0;t--){let n=e.index(t),r=e.node(t);if(n==0){if(r.type.spec.isolating)return!0;continue}for(let e=r.child(n-1);;e=e.lastChild){if(e.childCount==0&&!e.inlineContent||VD(e.type))return!0;if(e.inlineContent)return!1}}return!0}function UD(e){for(let t=e.depth;t>=0;t--){let n=e.indexAfter(t),r=e.node(t);if(n==r.childCount){if(r.type.spec.isolating)return!0;continue}for(let e=r.child(n);;e=e.firstChild){if(e.childCount==0&&!e.inlineContent||VD(e.type))return!0;if(e.inlineContent)return!1}}return!0}function WD(){return new Tv({props:{decorations:YD,createSelectionBetween(e,t,n){return t.pos==n.pos&&zD.valid(n)?new zD(n):null},handleClick:qD,handleKeyDown:GD,handleDOMEvents:{beforeinput:JD}}})}var GD=dC({ArrowLeft:KD(`horiz`,-1),ArrowRight:KD(`horiz`,1),ArrowUp:KD(`vert`,-1),ArrowDown:KD(`vert`,1)});function KD(e,t){let n=e==`vert`?t>0?`down`:`up`:t>0?`right`:`left`;return function(e,r,i){let a=e.selection,o=t>0?a.$to:a.$from,s=a.empty;if(a instanceof cv){if(!i.endOfTextblock(n)||o.depth==0)return!1;s=!1,o=e.doc.resolve(t>0?o.after():o.before())}let c=zD.findGapCursorFrom(o,t,s);return c?(r&&r(e.tr.setSelection(new zD(c))),!0):!1}}function qD(e,t,n){if(!e||!e.editable)return!1;let r=e.state.doc.resolve(t);if(!zD.valid(r))return!1;let i=e.posAtCoords({left:n.clientX,top:n.clientY});return i&&i.inside>-1&&Q.isSelectable(e.state.doc.nodeAt(i.inside))?!1:(e.dispatch(e.state.tr.setSelection(new zD(r))),!0)}function JD(e,t){if(t.inputType!=`insertCompositionText`||!(e.state.selection instanceof zD))return!1;let{$from:n}=e.state.selection,r=n.parent.contentMatchAt(n.index()).findWrapping(e.state.schema.nodes.text);if(!r)return!1;let i=X.empty;for(let e=r.length-1;e>=0;e--)i=X.from(r[e].createAndFill(null,i));let a=e.state.tr.replace(n.pos,n.pos,new Z(i,0,0));return a.setSelection(cv.near(a.doc.resolve(n.pos+1))),e.dispatch(a),!1}function YD(e){if(!(e.selection instanceof zD))return null;let t=document.createElement(`div`);return t.className=`ProseMirror-gapcursor`,dS.create(e.doc,[cS.widget(e.selection.head,t,{key:`gapcursor`})])}var XD=zw.create({name:`gapCursor`,addProseMirrorPlugins(){return[WD()]},extendNodeSchema(e){return{allowGapCursor:dw($(e,`allowGapCursor`,{name:e.name,options:e.options,storage:e.storage}))??null}}}),ZD=VE.create({name:`hardBreak`,addOptions(){return{keepMarks:!0,HTMLAttributes:{}}},inline:!0,group:`inline`,selectable:!1,linebreakReplacement:!0,parseHTML(){return[{tag:`br`}]},renderHTML({HTMLAttributes:e}){return[`br`,cw(this.options.HTMLAttributes,e)]},renderText(){return`
100
+ `},addCommands(){return{setHardBreak:()=>({commands:e,chain:t,state:n,editor:r})=>e.first([()=>e.exitCode(),()=>e.command(()=>{let{selection:e,storedMarks:i}=n;if(e.$from.parent.type.spec.isolating)return!1;let{keepMarks:a}=this.options,{splittableMarks:o}=r.extensionManager,s=i||e.$to.parentOffset&&e.$from.marks();return t().insertContent({type:this.name}).command(({tr:e,dispatch:t})=>{if(t&&s&&a){let t=s.filter(e=>o.includes(e.type.name));e.ensureMarks(t)}return!0}).run()})])}},addKeyboardShortcuts(){return{"Mod-Enter":()=>this.editor.commands.setHardBreak(),"Shift-Enter":()=>this.editor.commands.setHardBreak()}}}),QD=VE.create({name:`heading`,addOptions(){return{levels:[1,2,3,4,5,6],HTMLAttributes:{}}},content:`inline*`,group:`block`,defining:!0,addAttributes(){return{level:{default:1,rendered:!1}}},parseHTML(){return this.options.levels.map(e=>({tag:`h${e}`,attrs:{level:e}}))},renderHTML({node:e,HTMLAttributes:t}){return[`h${this.options.levels.includes(e.attrs.level)?e.attrs.level:this.options.levels[0]}`,cw(this.options.HTMLAttributes,t),0]},addCommands(){return{setHeading:e=>({commands:t})=>this.options.levels.includes(e.level)?t.setNode(this.name,e):!1,toggleHeading:e=>({commands:t})=>this.options.levels.includes(e.level)?t.toggleNode(this.name,`paragraph`,e):!1}},addKeyboardShortcuts(){return this.options.levels.reduce((e,t)=>({...e,[`Mod-Alt-${t}`]:()=>this.editor.commands.toggleHeading({level:t})}),{})},addInputRules(){return this.options.levels.map(e=>zE({find:RegExp(`^(#{${Math.min(...this.options.levels)},${e}})\\s$`),type:this.type,getAttributes:{level:e}}))}}),$D=200,eO=function(){};eO.prototype.append=function(e){return e.length?(e=eO.from(e),!this.length&&e||e.length<$D&&this.leafAppend(e)||this.length<$D&&e.leafPrepend(this)||this.appendInner(e)):this},eO.prototype.prepend=function(e){return e.length?eO.from(e).append(this):this},eO.prototype.appendInner=function(e){return new nO(this,e)},eO.prototype.slice=function(e,t){return e===void 0&&(e=0),t===void 0&&(t=this.length),e>=t?eO.empty:this.sliceInner(Math.max(0,e),Math.min(this.length,t))},eO.prototype.get=function(e){if(!(e<0||e>=this.length))return this.getInner(e)},eO.prototype.forEach=function(e,t,n){t===void 0&&(t=0),n===void 0&&(n=this.length),t<=n?this.forEachInner(e,t,n,0):this.forEachInvertedInner(e,t,n,0)},eO.prototype.map=function(e,t,n){t===void 0&&(t=0),n===void 0&&(n=this.length);var r=[];return this.forEach(function(t,n){return r.push(e(t,n))},t,n),r},eO.from=function(e){return e instanceof eO?e:e&&e.length?new tO(e):eO.empty};var tO=function(e){function t(t){e.call(this),this.values=t}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var n={length:{configurable:!0},depth:{configurable:!0}};return t.prototype.flatten=function(){return this.values},t.prototype.sliceInner=function(e,n){return e==0&&n==this.length?this:new t(this.values.slice(e,n))},t.prototype.getInner=function(e){return this.values[e]},t.prototype.forEachInner=function(e,t,n,r){for(var i=t;i<n;i++)if(e(this.values[i],r+i)===!1)return!1},t.prototype.forEachInvertedInner=function(e,t,n,r){for(var i=t-1;i>=n;i--)if(e(this.values[i],r+i)===!1)return!1},t.prototype.leafAppend=function(e){if(this.length+e.length<=$D)return new t(this.values.concat(e.flatten()))},t.prototype.leafPrepend=function(e){if(this.length+e.length<=$D)return new t(e.flatten().concat(this.values))},n.length.get=function(){return this.values.length},n.depth.get=function(){return 0},Object.defineProperties(t.prototype,n),t}(eO);eO.empty=new tO([]);var nO=function(e){function t(t,n){e.call(this),this.left=t,this.right=n,this.length=t.length+n.length,this.depth=Math.max(t.depth,n.depth)+1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.flatten=function(){return this.left.flatten().concat(this.right.flatten())},t.prototype.getInner=function(e){return e<this.left.length?this.left.get(e):this.right.get(e-this.left.length)},t.prototype.forEachInner=function(e,t,n,r){var i=this.left.length;if(t<i&&this.left.forEachInner(e,t,Math.min(n,i),r)===!1||n>i&&this.right.forEachInner(e,Math.max(t-i,0),Math.min(this.length,n)-i,r+i)===!1)return!1},t.prototype.forEachInvertedInner=function(e,t,n,r){var i=this.left.length;if(t>i&&this.right.forEachInvertedInner(e,t-i,Math.max(n,i)-i,r+i)===!1||n<i&&this.left.forEachInvertedInner(e,Math.min(t,i),n,r)===!1)return!1},t.prototype.sliceInner=function(e,t){if(e==0&&t==this.length)return this;var n=this.left.length;return t<=n?this.left.slice(e,t):e>=n?this.right.slice(e-n,t-n):this.left.slice(e,n).append(this.right.slice(0,t-n))},t.prototype.leafAppend=function(e){var n=this.right.leafAppend(e);if(n)return new t(this.left,n)},t.prototype.leafPrepend=function(e){var n=this.left.leafPrepend(e);if(n)return new t(n,this.right)},t.prototype.appendInner=function(e){return this.left.depth>=Math.max(this.right.depth,e.depth)+1?new t(this.left,new t(this.right,e)):new t(this,e)},t}(eO),rO=500,iO=class e{constructor(e,t){this.items=e,this.eventCount=t}popEvent(t,n){if(this.eventCount==0)return null;let r=this.items.length;for(;;r--)if(this.items.get(r-1).selection){--r;break}let i,a;n&&(i=this.remapping(r,this.items.length),a=i.maps.length);let o=t.tr,s,c,l=[],u=[];return this.items.forEach((t,n)=>{if(!t.step){i||(i=this.remapping(r,n+1),a=i.maps.length),a--,u.push(t);return}if(i){u.push(new oO(t.map));let e=t.step.map(i.slice(a)),n;e&&o.maybeStep(e).doc&&(n=o.mapping.maps[o.mapping.maps.length-1],l.push(new oO(n,void 0,void 0,l.length+u.length))),a--,n&&i.appendMap(n,a)}else o.maybeStep(t.step);if(t.selection)return s=i?t.selection.map(i.slice(a)):t.selection,c=new e(this.items.slice(0,r).append(u.reverse().concat(l)),this.eventCount-1),!1},this.items.length,0),{remaining:c,transform:o,selection:s}}addTransform(t,n,r,i){let a=[],o=this.eventCount,s=this.items,c=!i&&s.length?s.get(s.length-1):null;for(let e=0;e<t.steps.length;e++){let r=t.steps[e].invert(t.docs[e]),l=new oO(t.mapping.maps[e],r,n),u;(u=c&&c.merge(l))&&(l=u,e?a.pop():s=s.slice(0,s.length-1)),a.push(l),n&&=(o++,void 0),i||(c=l)}let l=o-r.depth;return l>cO&&(s=aO(s,l),o-=l),new e(s.append(a),o)}remapping(e,t){let n=new t_;return this.items.forEach((t,r)=>{let i=t.mirrorOffset!=null&&r-t.mirrorOffset>=e?n.maps.length-t.mirrorOffset:void 0;n.appendMap(t.map,i)},e,t),n}addMaps(t){return this.eventCount==0?this:new e(this.items.append(t.map(e=>new oO(e))),this.eventCount)}rebased(t,n){if(!this.eventCount)return this;let r=[],i=Math.max(0,this.items.length-n),a=t.mapping,o=t.steps.length,s=this.eventCount;this.items.forEach(e=>{e.selection&&s--},i);let c=n;this.items.forEach(e=>{let n=a.getMirror(--c);if(n==null)return;o=Math.min(o,n);let i=a.maps[n];if(e.step){let o=t.steps[n].invert(t.docs[n]),l=e.selection&&e.selection.map(a.slice(c+1,n));l&&s++,r.push(new oO(i,o,l))}else r.push(new oO(i))},i);let l=[];for(let e=n;e<o;e++)l.push(new oO(a.maps[e]));let u=this.items.slice(0,i).append(l).append(r),d=new e(u,s);return d.emptyItemCount()>rO&&(d=d.compress(this.items.length-r.length)),d}emptyItemCount(){let e=0;return this.items.forEach(t=>{t.step||e++}),e}compress(t=this.items.length){let n=this.remapping(0,t),r=n.maps.length,i=[],a=0;return this.items.forEach((e,o)=>{if(o>=t)i.push(e),e.selection&&a++;else if(e.step){let t=e.step.map(n.slice(r)),o=t&&t.getMap();if(r--,o&&n.appendMap(o,r),t){let s=e.selection&&e.selection.map(n.slice(r));s&&a++;let c=new oO(o.invert(),t,s),l,u=i.length-1;(l=i.length&&i[u].merge(c))?i[u]=l:i.push(c)}}else e.map&&r--},this.items.length,0),new e(eO.from(i.reverse()),a)}};iO.empty=new iO(eO.empty,0);function aO(e,t){let n;return e.forEach((e,r)=>{if(e.selection&&t--==0)return n=r,!1}),e.slice(n)}var oO=class e{constructor(e,t,n,r){this.map=e,this.step=t,this.selection=n,this.mirrorOffset=r}merge(t){if(this.step&&t.step&&!t.selection){let n=t.step.merge(this.step);if(n)return new e(n.getMap().invert(),n,this.selection)}}},sO=class{constructor(e,t,n,r,i){this.done=e,this.undone=t,this.prevRanges=n,this.prevTime=r,this.prevComposition=i}},cO=20;function lO(e,t,n,r){let i=n.getMeta(_O),a;if(i)return i.historyState;n.getMeta(vO)&&(e=new sO(e.done,e.undone,null,0,-1));let o=n.getMeta(`appendedTransaction`);if(n.steps.length==0)return e;if(o&&o.getMeta(_O))return o.getMeta(_O).redo?new sO(e.done.addTransform(n,void 0,r,gO(t)),e.undone,dO(n.mapping.maps),e.prevTime,e.prevComposition):new sO(e.done,e.undone.addTransform(n,void 0,r,gO(t)),null,e.prevTime,e.prevComposition);if(n.getMeta(`addToHistory`)!==!1&&!(o&&o.getMeta(`addToHistory`)===!1)){let i=n.getMeta(`composition`),a=e.prevTime==0||!o&&e.prevComposition!=i&&(e.prevTime<(n.time||0)-r.newGroupDelay||!uO(n,e.prevRanges)),s=o?fO(e.prevRanges,n.mapping):dO(n.mapping.maps);return new sO(e.done.addTransform(n,a?t.selection.getBookmark():void 0,r,gO(t)),iO.empty,s,n.time,i??e.prevComposition)}else if(a=n.getMeta(`rebased`))return new sO(e.done.rebased(n,a),e.undone.rebased(n,a),fO(e.prevRanges,n.mapping),e.prevTime,e.prevComposition);else return new sO(e.done.addMaps(n.mapping.maps),e.undone.addMaps(n.mapping.maps),fO(e.prevRanges,n.mapping),e.prevTime,e.prevComposition)}function uO(e,t){if(!t)return!1;if(!e.docChanged)return!0;let n=!1;return e.mapping.maps[0].forEach((e,r)=>{for(let i=0;i<t.length;i+=2)e<=t[i+1]&&r>=t[i]&&(n=!0)}),n}function dO(e){let t=[];for(let n=e.length-1;n>=0&&t.length==0;n--)e[n].forEach((e,n,r,i)=>t.push(r,i));return t}function fO(e,t){if(!e)return null;let n=[];for(let r=0;r<e.length;r+=2){let i=t.map(e[r],1),a=t.map(e[r+1],-1);i<=a&&n.push(i,a)}return n}function pO(e,t,n){let r=gO(t),i=_O.get(t).spec.config,a=(n?e.undone:e.done).popEvent(t,r);if(!a)return null;let o=a.selection.resolve(a.transform.doc),s=(n?e.done:e.undone).addTransform(a.transform,t.selection.getBookmark(),i,r),c=new sO(n?s:a.remaining,n?a.remaining:s,null,0,-1);return a.transform.setSelection(o).setMeta(_O,{redo:n,historyState:c})}var mO=!1,hO=null;function gO(e){let t=e.plugins;if(hO!=t){mO=!1,hO=t;for(let e=0;e<t.length;e++)if(t[e].spec.historyPreserveItems){mO=!0;break}}return mO}var _O=new Ov(`history`),vO=new Ov(`closeHistory`);function yO(e={}){return e={depth:e.depth||100,newGroupDelay:e.newGroupDelay||500},new Tv({key:_O,state:{init(){return new sO(iO.empty,iO.empty,null,0,-1)},apply(t,n,r){return lO(n,r,t,e)}},config:e,props:{handleDOMEvents:{beforeinput(e,t){let n=t.inputType,r=n==`historyUndo`?xO:n==`historyRedo`?SO:null;return!r||!e.editable?!1:(t.preventDefault(),r(e.state,e.dispatch))}}}})}function bO(e,t){return(n,r)=>{let i=_O.getState(n);if(!i||(e?i.undone:i.done).eventCount==0)return!1;if(r){let a=pO(i,n,e);a&&r(t?a.scrollIntoView():a)}return!0}}var xO=bO(!1,!0),SO=bO(!0,!0),CO=zw.create({name:`history`,addOptions(){return{depth:100,newGroupDelay:500}},addCommands(){return{undo:()=>({state:e,dispatch:t})=>xO(e,t),redo:()=>({state:e,dispatch:t})=>SO(e,t)}},addProseMirrorPlugins(){return[yO(this.options)]},addKeyboardShortcuts(){return{"Mod-z":()=>this.editor.commands.undo(),"Shift-Mod-z":()=>this.editor.commands.redo(),"Mod-y":()=>this.editor.commands.redo(),"Mod-я":()=>this.editor.commands.undo(),"Shift-Mod-я":()=>this.editor.commands.redo()}}}),wO=VE.create({name:`horizontalRule`,addOptions(){return{HTMLAttributes:{}}},group:`block`,parseHTML(){return[{tag:`hr`}]},renderHTML({HTMLAttributes:e}){return[`hr`,cw(this.options.HTMLAttributes,e)]},addCommands(){return{setHorizontalRule:()=>({chain:e,state:t})=>{if(!UE(t,t.schema.nodes[this.name]))return!1;let{selection:n}=t,{$from:r,$to:i}=n,a=e();return r.parentOffset===0?a.insertContentAt({from:Math.max(r.pos-1,0),to:i.pos},{type:this.name}):uE(n)?a.insertContentAt(i.pos,{type:this.name}):a.insertContent({type:this.name}),a.command(({tr:e,dispatch:t})=>{if(t){let{$to:t}=e.selection,n=t.end();if(t.nodeAfter)t.nodeAfter.isTextblock?e.setSelection(cv.create(e.doc,t.pos+1)):t.nodeAfter.isBlock?e.setSelection(Q.create(e.doc,t.pos)):e.setSelection(cv.create(e.doc,t.pos));else{let r=t.parent.type.contentMatch.defaultType?.create();r&&(e.insert(n,r),e.setSelection(cv.create(e.doc,n+1)))}e.scrollIntoView()}return!0}).run()}}},addInputRules(){return[RE({find:/^(?:---|—-|___\s|\*\*\*\s)$/,type:this.type})]}}),TO=/(?:^|\s)(\*(?!\s+\*)((?:[^*]+))\*(?!\s+\*))$/,EO=/(?:^|\s)(\*(?!\s+\*)((?:[^*]+))\*(?!\s+\*))/g,DO=/(?:^|\s)(_(?!\s+_)((?:[^_]+))_(?!\s+_))$/,OO=/(?:^|\s)(_(?!\s+_)((?:[^_]+))_(?!\s+_))/g,kO=kw.create({name:`italic`,addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:`em`},{tag:`i`,getAttrs:e=>e.style.fontStyle!==`normal`&&null},{style:`font-style=normal`,clearMark:e=>e.type.name===this.name},{style:`font-style=italic`}]},renderHTML({HTMLAttributes:e}){return[`em`,cw(this.options.HTMLAttributes,e),0]},addCommands(){return{setItalic:()=>({commands:e})=>e.setMark(this.name),toggleItalic:()=>({commands:e})=>e.toggleMark(this.name),unsetItalic:()=>({commands:e})=>e.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-i":()=>this.editor.commands.toggleItalic(),"Mod-I":()=>this.editor.commands.toggleItalic()}},addInputRules(){return[LE({find:TO,type:this.type}),LE({find:DO,type:this.type})]},addPasteRules(){return[HE({find:EO,type:this.type}),HE({find:OO,type:this.type})]}}),AO=VE.create({name:`listItem`,addOptions(){return{HTMLAttributes:{},bulletListTypeName:`bulletList`,orderedListTypeName:`orderedList`}},content:`paragraph block*`,defining:!0,parseHTML(){return[{tag:`li`}]},renderHTML({HTMLAttributes:e}){return[`li`,cw(this.options.HTMLAttributes,e),0]},addKeyboardShortcuts(){return{Enter:()=>this.editor.commands.splitListItem(this.name),Tab:()=>this.editor.commands.sinkListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)}}}),jO=`listItem`,MO=`textStyle`,NO=/^(\d+)\.\s$/,PO=VE.create({name:`orderedList`,addOptions(){return{itemTypeName:`listItem`,HTMLAttributes:{},keepMarks:!1,keepAttributes:!1}},group:`block list`,content(){return`${this.options.itemTypeName}+`},addAttributes(){return{start:{default:1,parseHTML:e=>e.hasAttribute(`start`)?parseInt(e.getAttribute(`start`)||``,10):1},type:{default:null,parseHTML:e=>e.getAttribute(`type`)}}},parseHTML(){return[{tag:`ol`}]},renderHTML({HTMLAttributes:e}){let{start:t,...n}=e;return t===1?[`ol`,cw(this.options.HTMLAttributes,n),0]:[`ol`,cw(this.options.HTMLAttributes,e),0]},addCommands(){return{toggleOrderedList:()=>({commands:e,chain:t})=>this.options.keepAttributes?t().toggleList(this.name,this.options.itemTypeName,this.options.keepMarks).updateAttributes(jO,this.editor.getAttributes(MO)).run():e.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-7":()=>this.editor.commands.toggleOrderedList()}},addInputRules(){let e=BE({find:NO,type:this.type,getAttributes:e=>({start:+e[1]}),joinPredicate:(e,t)=>t.childCount+t.attrs.start===+e[1]});return(this.options.keepMarks||this.options.keepAttributes)&&(e=BE({find:NO,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:e=>({start:+e[1],...this.editor.getAttributes(MO)}),joinPredicate:(e,t)=>t.childCount+t.attrs.start===+e[1],editor:this.editor})),[e]}}),FO=VE.create({name:`paragraph`,priority:1e3,addOptions(){return{HTMLAttributes:{}}},group:`block`,content:`inline*`,parseHTML(){return[{tag:`p`}]},renderHTML({HTMLAttributes:e}){return[`p`,cw(this.options.HTMLAttributes,e),0]},addCommands(){return{setParagraph:()=>({commands:e})=>e.setNode(this.name)}},addKeyboardShortcuts(){return{"Mod-Alt-0":()=>this.editor.commands.setParagraph()}}}),IO=/(?:^|\s)(~~(?!\s+~~)((?:[^~]+))~~(?!\s+~~))$/,LO=/(?:^|\s)(~~(?!\s+~~)((?:[^~]+))~~(?!\s+~~))/g,RO=kw.create({name:`strike`,addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:`s`},{tag:`del`},{tag:`strike`},{style:`text-decoration`,consuming:!1,getAttrs:e=>e.includes(`line-through`)?{}:!1}]},renderHTML({HTMLAttributes:e}){return[`s`,cw(this.options.HTMLAttributes,e),0]},addCommands(){return{setStrike:()=>({commands:e})=>e.setMark(this.name),toggleStrike:()=>({commands:e})=>e.toggleMark(this.name),unsetStrike:()=>({commands:e})=>e.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-Shift-s":()=>this.editor.commands.toggleStrike()}},addInputRules(){return[LE({find:IO,type:this.type})]},addPasteRules(){return[HE({find:LO,type:this.type})]}}),zO=VE.create({name:`text`,group:`inline`}),BO=zw.create({name:`starterKit`,addExtensions(){let e=[];return this.options.bold!==!1&&e.push(wD.configure(this.options.bold)),this.options.blockquote!==!1&&e.push(yD.configure(this.options.blockquote)),this.options.bulletList!==!1&&e.push(OD.configure(this.options.bulletList)),this.options.code!==!1&&e.push(jD.configure(this.options.code)),this.options.codeBlock!==!1&&e.push(PD.configure(this.options.codeBlock)),this.options.document!==!1&&e.push(FD.configure(this.options.document)),this.options.dropcursor!==!1&&e.push(RD.configure(this.options.dropcursor)),this.options.gapcursor!==!1&&e.push(XD.configure(this.options.gapcursor)),this.options.hardBreak!==!1&&e.push(ZD.configure(this.options.hardBreak)),this.options.heading!==!1&&e.push(QD.configure(this.options.heading)),this.options.history!==!1&&e.push(CO.configure(this.options.history)),this.options.horizontalRule!==!1&&e.push(wO.configure(this.options.horizontalRule)),this.options.italic!==!1&&e.push(kO.configure(this.options.italic)),this.options.listItem!==!1&&e.push(AO.configure(this.options.listItem)),this.options.orderedList!==!1&&e.push(PO.configure(this.options.orderedList)),this.options.paragraph!==!1&&e.push(FO.configure(this.options.paragraph)),this.options.strike!==!1&&e.push(RO.configure(this.options.strike)),this.options.text!==!1&&e.push(zO.configure(this.options.text)),e}}),VO={};function HO(e){let t=VO[e];if(t)return t;t=VO[e]=[];for(let e=0;e<128;e++){let n=String.fromCharCode(e);t.push(n)}for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);t[r]=`%`+(`0`+r.toString(16).toUpperCase()).slice(-2)}return t}function UO(e,t){typeof t!=`string`&&(t=UO.defaultChars);let n=HO(t);return e.replace(/(%[a-f0-9]{2})+/gi,function(e){let t=``;for(let r=0,i=e.length;r<i;r+=3){let a=parseInt(e.slice(r+1,r+3),16);if(a<128){t+=n[a];continue}if((a&224)==192&&r+3<i){let n=parseInt(e.slice(r+4,r+6),16);if((n&192)==128){let e=a<<6&1984|n&63;e<128?t+=`��`:t+=String.fromCharCode(e),r+=3;continue}}if((a&240)==224&&r+6<i){let n=parseInt(e.slice(r+4,r+6),16),i=parseInt(e.slice(r+7,r+9),16);if((n&192)==128&&(i&192)==128){let e=a<<12&61440|n<<6&4032|i&63;e<2048||e>=55296&&e<=57343?t+=`���`:t+=String.fromCharCode(e),r+=6;continue}}if((a&248)==240&&r+9<i){let n=parseInt(e.slice(r+4,r+6),16),i=parseInt(e.slice(r+7,r+9),16),o=parseInt(e.slice(r+10,r+12),16);if((n&192)==128&&(i&192)==128&&(o&192)==128){let e=a<<18&1835008|n<<12&258048|i<<6&4032|o&63;e<65536||e>1114111?t+=`����`:(e-=65536,t+=String.fromCharCode(55296+(e>>10),56320+(e&1023))),r+=9;continue}}t+=`�`}return t})}UO.defaultChars=`;/?:@&=+$,#`,UO.componentChars=``;var WO={};function GO(e){let t=WO[e];if(t)return t;t=WO[e]=[];for(let e=0;e<128;e++){let n=String.fromCharCode(e);/^[0-9a-z]$/i.test(n)?t.push(n):t.push(`%`+(`0`+e.toString(16).toUpperCase()).slice(-2))}for(let n=0;n<e.length;n++)t[e.charCodeAt(n)]=e[n];return t}function KO(e,t,n){typeof t!=`string`&&(n=t,t=KO.defaultChars),n===void 0&&(n=!0);let r=GO(t),i=``;for(let t=0,a=e.length;t<a;t++){let o=e.charCodeAt(t);if(n&&o===37&&t+2<a&&/^[0-9a-f]{2}$/i.test(e.slice(t+1,t+3))){i+=e.slice(t,t+3),t+=2;continue}if(o<128){i+=r[o];continue}if(o>=55296&&o<=57343){if(o>=55296&&o<=56319&&t+1<a){let n=e.charCodeAt(t+1);if(n>=56320&&n<=57343){i+=encodeURIComponent(e[t]+e[t+1]),t++;continue}}i+=`%EF%BF%BD`;continue}i+=encodeURIComponent(e[t])}return i}KO.defaultChars=`;/?:@&=+$,-_.!~*'()#`,KO.componentChars=`-_.!~*'()`;function qO(e){let t=``;return t+=e.protocol||``,t+=e.slashes?`//`:``,t+=e.auth?e.auth+`@`:``,e.hostname&&e.hostname.indexOf(`:`)!==-1?t+=`[`+e.hostname+`]`:t+=e.hostname||``,t+=e.port?`:`+e.port:``,t+=e.pathname||``,t+=e.search||``,t+=e.hash||``,t}function JO(){this.protocol=null,this.slashes=null,this.auth=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.pathname=null}var YO=/^([a-z0-9.+-]+:)/i,XO=/:[0-9]*$/,ZO=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,QO=[`%`,`/`,`?`,`;`,`#`,`'`,`{`,`}`,`|`,`\\`,`^`,"`",`<`,`>`,`"`,"`",` `,`\r`,`
101
+ `,` `],$O=[`/`,`?`,`#`],ek=255,tk=/^[+a-z0-9A-Z_-]{0,63}$/,nk=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,rk={javascript:!0,"javascript:":!0},ik={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0};function ak(e,t){if(e&&e instanceof JO)return e;let n=new JO;return n.parse(e,t),n}JO.prototype.parse=function(e,t){let n,r,i,a=e;if(a=a.trim(),!t&&e.split(`#`).length===1){let e=ZO.exec(a);if(e)return this.pathname=e[1],e[2]&&(this.search=e[2]),this}let o=YO.exec(a);if(o&&(o=o[0],n=o.toLowerCase(),this.protocol=o,a=a.substr(o.length)),(t||o||a.match(/^\/\/[^@\/]+@[^@\/]+/))&&(i=a.substr(0,2)===`//`,i&&!(o&&rk[o])&&(a=a.substr(2),this.slashes=!0)),!rk[o]&&(i||o&&!ik[o])){let e=-1;for(let t=0;t<$O.length;t++)r=a.indexOf($O[t]),r!==-1&&(e===-1||r<e)&&(e=r);let t,n;n=e===-1?a.lastIndexOf(`@`):a.lastIndexOf(`@`,e),n!==-1&&(t=a.slice(0,n),a=a.slice(n+1),this.auth=t),e=-1;for(let t=0;t<QO.length;t++)r=a.indexOf(QO[t]),r!==-1&&(e===-1||r<e)&&(e=r);e===-1&&(e=a.length),a[e-1]===`:`&&e--;let i=a.slice(0,e);a=a.slice(e),this.parseHost(i),this.hostname=this.hostname||``;let o=this.hostname[0]===`[`&&this.hostname[this.hostname.length-1]===`]`;if(!o){let e=this.hostname.split(/\./);for(let t=0,n=e.length;t<n;t++){let n=e[t];if(n&&!n.match(tk)){let r=``;for(let e=0,t=n.length;e<t;e++)n.charCodeAt(e)>127?r+=`x`:r+=n[e];if(!r.match(tk)){let r=e.slice(0,t),i=e.slice(t+1),o=n.match(nk);o&&(r.push(o[1]),i.unshift(o[2])),i.length&&(a=i.join(`.`)+a),this.hostname=r.join(`.`);break}}}}this.hostname.length>ek&&(this.hostname=``),o&&(this.hostname=this.hostname.substr(1,this.hostname.length-2))}let s=a.indexOf(`#`);s!==-1&&(this.hash=a.substr(s),a=a.slice(0,s));let c=a.indexOf(`?`);return c!==-1&&(this.search=a.substr(c),a=a.slice(0,c)),a&&(this.pathname=a),ik[n]&&this.hostname&&!this.pathname&&(this.pathname=``),this},JO.prototype.parseHost=function(e){let t=XO.exec(e);t&&(t=t[0],t!==`:`&&(this.port=t.substr(1)),e=e.substr(0,e.length-t.length)),e&&(this.hostname=e)};var ok=e({decode:()=>UO,encode:()=>KO,format:()=>qO,parse:()=>ak}),sk=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,ck=/[\0-\x1F\x7F-\x9F]/,lk=/[\xAD\u0600-\u0605\u061C\u06DD\u070F\u0890\u0891\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB]|\uD804[\uDCBD\uDCCD]|\uD80D[\uDC30-\uDC3F]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|\uDB40[\uDC01\uDC20-\uDC7F]/,uk=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061D-\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1B7D\u1B7E\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E52-\u2E5D\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDEAD\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3E]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD81B[\uDE97-\uDE9A\uDFE2]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]|\uD83A[\uDD5E\uDD5F]/,dk=/[\$\+<->\^`\|~\xA2-\xA6\xA8\xA9\xAC\xAE-\xB1\xB4\xB8\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0384\u0385\u03F6\u0482\u058D-\u058F\u0606-\u0608\u060B\u060E\u060F\u06DE\u06E9\u06FD\u06FE\u07F6\u07FE\u07FF\u0888\u09F2\u09F3\u09FA\u09FB\u0AF1\u0B70\u0BF3-\u0BFA\u0C7F\u0D4F\u0D79\u0E3F\u0F01-\u0F03\u0F13\u0F15-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE\u0FCF\u0FD5-\u0FD8\u109E\u109F\u1390-\u1399\u166D\u17DB\u1940\u19DE-\u19FF\u1B61-\u1B6A\u1B74-\u1B7C\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2044\u2052\u207A-\u207C\u208A-\u208C\u20A0-\u20C0\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2307\u230C-\u2328\u232B-\u2426\u2440-\u244A\u249C-\u24E9\u2500-\u2767\u2794-\u27C4\u27C7-\u27E5\u27F0-\u2982\u2999-\u29D7\u29DC-\u29FB\u29FE-\u2B73\u2B76-\u2B95\u2B97-\u2BFF\u2CE5-\u2CEA\u2E50\u2E51\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFF\u3004\u3012\u3013\u3020\u3036\u3037\u303E\u303F\u309B\u309C\u3190\u3191\u3196-\u319F\u31C0-\u31E3\u31EF\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uAA77-\uAA79\uAB5B\uAB6A\uAB6B\uFB29\uFBB2-\uFBC2\uFD40-\uFD4F\uFDCF\uFDFC-\uFDFF\uFE62\uFE64-\uFE66\uFE69\uFF04\uFF0B\uFF1C-\uFF1E\uFF3E\uFF40\uFF5C\uFF5E\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD]|\uD800[\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC]|\uD802[\uDC77\uDC78\uDEC8]|\uD805\uDF3F|\uD807[\uDFD5-\uDFF1]|\uD81A[\uDF3C-\uDF3F\uDF45]|\uD82F\uDC9C|\uD833[\uDF50-\uDFC3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDEA\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85\uDE86]|\uD838[\uDD4F\uDEFF]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED7\uDEDC-\uDEEC\uDEF0-\uDEFC\uDF00-\uDF76\uDF7B-\uDFD9\uDFE0-\uDFEB\uDFF0]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0\uDCB1\uDD00-\uDE53\uDE60-\uDE6D\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC5\uDECE-\uDEDB\uDEE0-\uDEE8\uDEF0-\uDEF8\uDF00-\uDF92\uDF94-\uDFCA]/,fk=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/,pk=e({Any:()=>sk,Cc:()=>ck,Cf:()=>lk,P:()=>uk,S:()=>dk,Z:()=>fk}),mk=new Uint16Array(`ᵁ<Õıʊҝջאٵ۞ޢߖࠏ੊ઑඡ๭༉༦჊ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ὾⁠↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms„‹•˜¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲ΂ϏϢϸontourIntegraìȹoɴ͹\0\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՗՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲ׌y;䐤r;쀀𝔉lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀𝔽All;戀riertrf;愱cò׋؀JTabcdfgorstר׬ׯ׺؀ؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d׷׸䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇܎ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻Ï䃏ʀcfosuެ޷޼߂ߐĀiyޱ޵rc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\0ߌr;쀀𝒥rcy;䐈kcy;䐄΀HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶߻dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣ঳সে্਷ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗ࡜ࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४Ānrࢃ࢏gleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpw৔ਖਛgȀLRlr৞৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼੝੠੷੼અઋ઎p;椅y;䐜Ādl੥੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑ඗ඞcy;䐊cute;䅃ƀaey઴હાron;䅇dil;䅅;䐝ƀgswે૰଎ativeƀMTV૓૟૨ediumSpace;怋hiĀcn૦૘ë૙eryThiî૙tedĀGL૸ଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷ଺reak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪୼஡௫ఄ౞಄ದ೘ൡඅ櫬Āou୛୤ngruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊ஛ement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater΀;EFGLSTஶஷ஽௉௓௘௥扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲௽ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ೒拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨೹setĀ;E೰ೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂ෉෕ෛ෠෧෼ขภยา฿ไlig;䅒cute耻Ó䃓Āiy෎ීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲ෶cr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬื฼de耻Õ䃕es;樷ml耻Ö䃖erĀBP๋๠Āar๐๓r;怾acĀek๚๜;揞et;掴arenthesis;揜Ҁacfhilors๿ງຊຏຒດຝະ໼rtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ໠໤檻cedesȀ;EST່້໏໚扺qual;檯lantEqual;扼ilde;找me;怳Ādp໩໮uct;戏ortionĀ;aȥ໹l;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀𝔔pf;愚cr;쀀𝒬؀BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁࿫࿳ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL࿜࿝࿡憒ar;懥eftArrow;懄eiling;按oǵ࿹\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»࿝pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄ቉ቕ቞ቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHc቎ቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗Āeiቻ኉Dzኀ\0ኇefore;戴a;䎘Ācn኎ኘkSpace;쀀  Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0᏿ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\0጖y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻፿on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidtè૙a;䎖r;愨pf;愤cr;쀀𝒵௡ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚΀;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒΀;Eaeiop዁ᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;e዁ᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;e዁ᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰ᜼ᝃᝈ᝸᝽០៦ᠹᡐᜍ᤽᥈ᥰot;櫭Ācrᛶ᜞kȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e᜚᜛戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;t፜᜷brk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓ᝛ᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯ᝱ᝳ;䎲;愶een;扬r;쀀𝔟g΀costuvwឍឝឳេ៕៛៞ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀako៭ᠦᠵĀcn៲ᠣkƀlst៺֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘᠝斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈؀DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬ᣿ᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教΀;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ᣷᣹᣻᣽;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ᤟;敛;敘;攘;攔΀;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģ᥂bar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;e᜚᜜lƀ;bhᥨᥩᥫ䁜;槅sub;柈Ŭᥴ᥾lĀ;e᥹᥺怢t»᥺pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭍᭒\0᯽\0ᰌƀcpr᦭ᦲ᧝ute;䄇̀;abcdsᦿᧀᧄ᧊᧕᧙戩nd;橄rcup;橉Āau᧏᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r΀;Ecefms᩟᩠ᩢᩫ᪤᪪᪮旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖᪚᪟»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇᫔᫺\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ᫙\0\0᫢aĀ;t᫞᫟䀬;䁀ƀ;fl᫨᫩᫫戁îᅠeĀmx᫱᫶ent»᫩eóɍǧ᫾\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯΀delprvw᭠᭬᭷ᮂᮬᯔ᯹arrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;p᭿ᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰸᰻᰿ᱝᱩᱵᲊᲞᲬᲷ᳻᳿ᴍᵻᶑᶫᶻ᷆᷍rò΁ar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂͸᳖᳜᳠mƀ;oș᳊᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄ὎὚ĀDoḆᴴoôᲉĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\0\0ỻíՈantĀglἂἆtr»ṝess»Ṻƀaeiἒ἖Ἒls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙ῜ῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao‌⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧‪‬\0‮耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₟₥₰₴⃰⃵⃺⃿℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕ₝ute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽⃉ƀ;qsؾٌ⃄lanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqr׮ⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0↎proø₞r;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢␧␭␱␵␻ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀஀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼rò৆òΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonó྘quigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d྘➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ᠛旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐௏쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop඄⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roø඄urĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻\xA0ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓΀;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨í஘istĀ;s஠டr;쀀𝔫ȀEest௅⩦⩹⩼ƀ;qs஼⩭௡ƀ;qs஼௅⩴lanô௢ií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚΀AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs఻⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs఻⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast୻⭕⭚⭟lleì୻l;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖ΀chimpqu⮽⯍⯙⬄୸⯤⯯Ȁ;cerല⯆ഷ⯉uå൅;쀀𝓃ortɭ⬅\0\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭å೸åഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñ೗Ā;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰⳴ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥ⵲ⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;c᪞ⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācr⵩⵭ir;榿;쀀𝔬ͯ⵹\0\0⵼\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕ⶘ⶥⶨrò᪀Āir⶝ⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔ⷗ǒr;榷rp;榹΀;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ⹞\0⹽\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ⹧⹲຅脀¶;l⹭⹮䂶leìЃɩ⹸\0\0⹻m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳⻴ᤈ⻹⻽⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp໬⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t໻⾴ï໻rel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⿚⋢⿟⿥⿫⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei⿾々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔઀ABHabcdefhilmnoprstux぀けさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤΀cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstw࿜ガクシスゼゾダッデナp;極Ā;f࿠ゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes㄂㄄;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ì࿲âヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘㇤㇮rrowĀ;t࿜ㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowó࿪arpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓rò࿪aòՑ;怏oustĀ;a㈞㈟掱che»㈟mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦΀Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼਴t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜iäᑤaraì⹯耻­䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;q኱ኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫ਩war;椪lig耻ß䃟௡㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄rë๟ƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproø዁im»ኬsðኞĀas㚺㚮ð዁rn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈ΀adempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xô᝷headĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜΀eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roð໻tré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚΀cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜ៟tré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌`.split(``).map(e=>e.charCodeAt(0))),hk=new Uint16Array(`Ȁaglq \x1Bɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢`.split(``).map(e=>e.charCodeAt(0))),gk=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),_k=String.fromCodePoint??function(e){let t=``;return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|e&1023),t+=String.fromCharCode(e),t};function vk(e){return e>=55296&&e<=57343||e>1114111?65533:gk.get(e)??e}var yk;(function(e){e[e.NUM=35]=`NUM`,e[e.SEMI=59]=`SEMI`,e[e.EQUALS=61]=`EQUALS`,e[e.ZERO=48]=`ZERO`,e[e.NINE=57]=`NINE`,e[e.LOWER_A=97]=`LOWER_A`,e[e.LOWER_F=102]=`LOWER_F`,e[e.LOWER_X=120]=`LOWER_X`,e[e.LOWER_Z=122]=`LOWER_Z`,e[e.UPPER_A=65]=`UPPER_A`,e[e.UPPER_F=70]=`UPPER_F`,e[e.UPPER_Z=90]=`UPPER_Z`})(yk||={});var bk=32,xk;(function(e){e[e.VALUE_LENGTH=49152]=`VALUE_LENGTH`,e[e.BRANCH_LENGTH=16256]=`BRANCH_LENGTH`,e[e.JUMP_TABLE=127]=`JUMP_TABLE`})(xk||={});function Sk(e){return e>=yk.ZERO&&e<=yk.NINE}function Ck(e){return e>=yk.UPPER_A&&e<=yk.UPPER_F||e>=yk.LOWER_A&&e<=yk.LOWER_F}function wk(e){return e>=yk.UPPER_A&&e<=yk.UPPER_Z||e>=yk.LOWER_A&&e<=yk.LOWER_Z||Sk(e)}function Tk(e){return e===yk.EQUALS||wk(e)}var Ek;(function(e){e[e.EntityStart=0]=`EntityStart`,e[e.NumericStart=1]=`NumericStart`,e[e.NumericDecimal=2]=`NumericDecimal`,e[e.NumericHex=3]=`NumericHex`,e[e.NamedEntity=4]=`NamedEntity`})(Ek||={});var Dk;(function(e){e[e.Legacy=0]=`Legacy`,e[e.Strict=1]=`Strict`,e[e.Attribute=2]=`Attribute`})(Dk||={});var Ok=class{constructor(e,t,n){this.decodeTree=e,this.emitCodePoint=t,this.errors=n,this.state=Ek.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Dk.Strict}startEntity(e){this.decodeMode=e,this.state=Ek.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,t){switch(this.state){case Ek.EntityStart:return e.charCodeAt(t)===yk.NUM?(this.state=Ek.NumericStart,this.consumed+=1,this.stateNumericStart(e,t+1)):(this.state=Ek.NamedEntity,this.stateNamedEntity(e,t));case Ek.NumericStart:return this.stateNumericStart(e,t);case Ek.NumericDecimal:return this.stateNumericDecimal(e,t);case Ek.NumericHex:return this.stateNumericHex(e,t);case Ek.NamedEntity:return this.stateNamedEntity(e,t)}}stateNumericStart(e,t){return t>=e.length?-1:(e.charCodeAt(t)|bk)===yk.LOWER_X?(this.state=Ek.NumericHex,this.consumed+=1,this.stateNumericHex(e,t+1)):(this.state=Ek.NumericDecimal,this.stateNumericDecimal(e,t))}addToNumericResult(e,t,n,r){if(t!==n){let i=n-t;this.result=this.result*r**+i+parseInt(e.substr(t,i),r),this.consumed+=i}}stateNumericHex(e,t){let n=t;for(;t<e.length;){let r=e.charCodeAt(t);if(Sk(r)||Ck(r))t+=1;else return this.addToNumericResult(e,n,t,16),this.emitNumericEntity(r,3)}return this.addToNumericResult(e,n,t,16),-1}stateNumericDecimal(e,t){let n=t;for(;t<e.length;){let r=e.charCodeAt(t);if(Sk(r))t+=1;else return this.addToNumericResult(e,n,t,10),this.emitNumericEntity(r,2)}return this.addToNumericResult(e,n,t,10),-1}emitNumericEntity(e,t){var n;if(this.consumed<=t)return(n=this.errors)==null||n.absenceOfDigitsInNumericCharacterReference(this.consumed),0;if(e===yk.SEMI)this.consumed+=1;else if(this.decodeMode===Dk.Strict)return 0;return this.emitCodePoint(vk(this.result),this.consumed),this.errors&&(e!==yk.SEMI&&this.errors.missingSemicolonAfterCharacterReference(),this.errors.validateNumericCharacterReference(this.result)),this.consumed}stateNamedEntity(e,t){let{decodeTree:n}=this,r=n[this.treeIndex],i=(r&xk.VALUE_LENGTH)>>14;for(;t<e.length;t++,this.excess++){let a=e.charCodeAt(t);if(this.treeIndex=Ak(n,r,this.treeIndex+Math.max(1,i),a),this.treeIndex<0)return this.result===0||this.decodeMode===Dk.Attribute&&(i===0||Tk(a))?0:this.emitNotTerminatedNamedEntity();if(r=n[this.treeIndex],i=(r&xk.VALUE_LENGTH)>>14,i!==0){if(a===yk.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==Dk.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var e;let{result:t,decodeTree:n}=this,r=(n[t]&xk.VALUE_LENGTH)>>14;return this.emitNamedEntityData(t,r,this.consumed),(e=this.errors)==null||e.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(e,t,n){let{decodeTree:r}=this;return this.emitCodePoint(t===1?r[e]&~xk.VALUE_LENGTH:r[e+1],n),t===3&&this.emitCodePoint(r[e+2],n),n}end(){var e;switch(this.state){case Ek.NamedEntity:return this.result!==0&&(this.decodeMode!==Dk.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case Ek.NumericDecimal:return this.emitNumericEntity(0,2);case Ek.NumericHex:return this.emitNumericEntity(0,3);case Ek.NumericStart:return(e=this.errors)==null||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case Ek.EntityStart:return 0}}};function kk(e){let t=``,n=new Ok(e,e=>t+=_k(e));return function(e,r){let i=0,a=0;for(;(a=e.indexOf(`&`,a))>=0;){t+=e.slice(i,a),n.startEntity(r);let o=n.write(e,a+1);if(o<0){i=a+n.end();break}i=a+o,a=o===0?i+1:i}let o=t+e.slice(i);return t=``,o}}function Ak(e,t,n,r){let i=(t&xk.BRANCH_LENGTH)>>7,a=t&xk.JUMP_TABLE;if(i===0)return a!==0&&r===a?n:-1;if(a){let t=r-a;return t<0||t>=i?-1:e[n+t]-1}let o=n,s=o+i-1;for(;o<=s;){let t=o+s>>>1,n=e[t];if(n<r)o=t+1;else if(n>r)s=t-1;else return e[t+i]}return-1}var jk=kk(mk);kk(hk);function Mk(e,t=Dk.Legacy){return jk(e,t)}function Nk(e){return jk(e,Dk.Strict)}var Pk=e({arrayReplaceAt:()=>Bk,asciiTrim:()=>lA,assign:()=>zk,escapeHtml:()=>$k,escapeRE:()=>tA,fromCodePoint:()=>Hk,has:()=>Rk,isMdAsciiPunct:()=>oA,isPunctChar:()=>iA,isPunctCharCode:()=>aA,isSpace:()=>nA,isString:()=>Ik,isValidEntityCode:()=>Vk,isWhiteSpace:()=>rA,lib:()=>uA,normalizeReference:()=>sA,unescapeAll:()=>Jk,unescapeMd:()=>qk});function Fk(e){return Object.prototype.toString.call(e)}function Ik(e){return Fk(e)===`[object String]`}var Lk=Object.prototype.hasOwnProperty;function Rk(e,t){return Lk.call(e,t)}function zk(e){return Array.prototype.slice.call(arguments,1).forEach(function(t){if(t){if(typeof t!=`object`)throw TypeError(t+`must be object`);Object.keys(t).forEach(function(n){e[n]=t[n]})}}),e}function Bk(e,t,n){return[].concat(e.slice(0,t),n,e.slice(t+1))}function Vk(e){return!(e>=55296&&e<=57343||e>=64976&&e<=65007||(e&65535)==65535||(e&65535)==65534||e>=0&&e<=8||e===11||e>=14&&e<=31||e>=127&&e<=159||e>1114111)}function Hk(e){if(e>65535){e-=65536;let t=55296+(e>>10),n=56320+(e&1023);return String.fromCharCode(t,n)}return String.fromCharCode(e)}var Uk=/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g,Wk=RegExp(Uk.source+`|&([a-z#][a-z0-9]{1,31});`,`gi`),Gk=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i;function Kk(e,t){if(t.charCodeAt(0)===35&&Gk.test(t)){let n=t[1].toLowerCase()===`x`?parseInt(t.slice(2),16):parseInt(t.slice(1),10);return Vk(n)?Hk(n):e}let n=Mk(e);return n===e?e:n}function qk(e){return e.indexOf(`\\`)<0?e:e.replace(Uk,`$1`)}function Jk(e){return e.indexOf(`\\`)<0&&e.indexOf(`&`)<0?e:e.replace(Wk,function(e,t,n){return t||Kk(e,n)})}var Yk=/[&<>"]/,Xk=/[&<>"]/g,Zk={"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`};function Qk(e){return Zk[e]}function $k(e){return Yk.test(e)?e.replace(Xk,Qk):e}var eA=/[.?*+^$[\]\\(){}|-]/g;function tA(e){return e.replace(eA,`\\$&`)}function nA(e){switch(e){case 9:case 32:return!0}return!1}function rA(e){if(e>=8192&&e<=8202)return!0;switch(e){case 9:case 10:case 11:case 12:case 13:case 32:case 160:case 5760:case 8239:case 8287:case 12288:return!0}return!1}function iA(e){return uk.test(e)||dk.test(e)}function aA(e){return iA(Hk(e))}function oA(e){switch(e){case 33:case 34:case 35:case 36:case 37:case 38:case 39:case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 124:case 125:case 126:return!0;default:return!1}}function sA(e){return e=e.trim().replace(/\s+/g,` `),e.toLowerCase().toUpperCase()}function cA(e){return e===32||e===9||e===10||e===13}function lA(e){let t=0;for(;t<e.length&&cA(e.charCodeAt(t));t++);let n=e.length-1;for(;n>=t&&cA(e.charCodeAt(n));n--);return e.slice(t,n+1)}var uA={mdurl:ok,ucmicro:pk};function dA(e,t,n){let r,i,a,o,s=e.posMax,c=e.pos;for(e.pos=t+1,r=1;e.pos<s;){if(a=e.src.charCodeAt(e.pos),a===93&&(r--,r===0)){i=!0;break}if(o=e.pos,e.md.inline.skipToken(e),a===91){if(o===e.pos-1)r++;else if(n)return e.pos=c,-1}}let l=-1;return i&&(l=e.pos),e.pos=c,l}function fA(e,t,n){let r,i=t,a={ok:!1,pos:0,str:``};if(e.charCodeAt(i)===60){for(i++;i<n;){if(r=e.charCodeAt(i),r===10||r===60)return a;if(r===62)return a.pos=i+1,a.str=Jk(e.slice(t+1,i)),a.ok=!0,a;if(r===92&&i+1<n){i+=2;continue}i++}return a}let o=0;for(;i<n&&(r=e.charCodeAt(i),!(r===32||r<32||r===127));){if(r===92&&i+1<n){if(e.charCodeAt(i+1)===32)break;i+=2;continue}if(r===40&&(o++,o>32))return a;if(r===41){if(o===0)break;o--}i++}return t===i||o!==0?a:(a.str=Jk(e.slice(t,i)),a.pos=i,a.ok=!0,a)}function pA(e,t,n,r){let i,a=t,o={ok:!1,can_continue:!1,pos:0,str:``,marker:0};if(r)o.str=r.str,o.marker=r.marker;else{if(a>=n)return o;let r=e.charCodeAt(a);if(r!==34&&r!==39&&r!==40)return o;t++,a++,r===40&&(r=41),o.marker=r}for(;a<n;){if(i=e.charCodeAt(a),i===o.marker)return o.pos=a+1,o.str+=Jk(e.slice(t,a)),o.ok=!0,o;if(i===40&&o.marker===41)return o;i===92&&a+1<n&&a++,a++}return o.can_continue=!0,o.str+=Jk(e.slice(t,a)),o}var mA=e({parseLinkDestination:()=>fA,parseLinkLabel:()=>dA,parseLinkTitle:()=>pA}),hA={};hA.code_inline=function(e,t,n,r,i){let a=e[t];return`<code`+i.renderAttrs(a)+`>`+$k(a.content)+`</code>`},hA.code_block=function(e,t,n,r,i){let a=e[t];return`<pre`+i.renderAttrs(a)+`><code>`+$k(e[t].content)+`</code></pre>
102
+ `},hA.fence=function(e,t,n,r,i){let a=e[t],o=a.info?Jk(a.info).trim():``,s=``,c=``;if(o){let e=o.split(/(\s+)/g);s=e[0],c=e.slice(2).join(``)}let l;if(l=n.highlight&&n.highlight(a.content,s,c)||$k(a.content),l.indexOf(`<pre`)===0)return l+`
103
+ `;if(o){let e=a.attrIndex(`class`),t=a.attrs?a.attrs.slice():[];e<0?t.push([`class`,n.langPrefix+s]):(t[e]=t[e].slice(),t[e][1]+=` `+n.langPrefix+s);let r={attrs:t};return`<pre><code${i.renderAttrs(r)}>${l}</code></pre>\n`}return`<pre><code${i.renderAttrs(a)}>${l}</code></pre>\n`},hA.image=function(e,t,n,r,i){let a=e[t];return a.attrs[a.attrIndex(`alt`)][1]=i.renderInlineAsText(a.children,n,r),i.renderToken(e,t,n)},hA.hardbreak=function(e,t,n){return n.xhtmlOut?`<br />
104
+ `:`<br>
105
+ `},hA.softbreak=function(e,t,n){return n.breaks?n.xhtmlOut?`<br />
106
+ `:`<br>
107
+ `:`
108
+ `},hA.text=function(e,t){return $k(e[t].content)},hA.html_block=function(e,t){return e[t].content},hA.html_inline=function(e,t){return e[t].content};function gA(){this.rules=zk({},hA)}gA.prototype.renderAttrs=function(e){let t,n,r;if(!e.attrs)return``;for(r=``,t=0,n=e.attrs.length;t<n;t++)r+=` `+$k(e.attrs[t][0])+`="`+$k(e.attrs[t][1])+`"`;return r},gA.prototype.renderToken=function(e,t,n){let r=e[t],i=``;if(r.hidden)return``;r.block&&r.nesting!==-1&&t&&e[t-1].hidden&&(i+=`
109
+ `),i+=(r.nesting===-1?`</`:`<`)+r.tag,i+=this.renderAttrs(r),r.nesting===0&&n.xhtmlOut&&(i+=` /`);let a=!1;if(r.block&&(a=!0,r.nesting===1&&t+1<e.length)){let n=e[t+1];(n.type===`inline`||n.hidden||n.nesting===-1&&n.tag===r.tag)&&(a=!1)}return i+=a?`>
110
+ `:`>`,i},gA.prototype.renderInline=function(e,t,n){let r=``,i=this.rules;for(let a=0,o=e.length;a<o;a++){let o=e[a].type;i[o]===void 0?r+=this.renderToken(e,a,t):r+=i[o](e,a,t,n,this)}return r},gA.prototype.renderInlineAsText=function(e,t,n){let r=``;for(let i=0,a=e.length;i<a;i++)switch(e[i].type){case`text`:r+=e[i].content;break;case`image`:r+=this.renderInlineAsText(e[i].children,t,n);break;case`html_inline`:case`html_block`:r+=e[i].content;break;case`softbreak`:case`hardbreak`:r+=`
111
+ `;break;default:}return r},gA.prototype.render=function(e,t,n){let r=``,i=this.rules;for(let a=0,o=e.length;a<o;a++){let o=e[a].type;o===`inline`?r+=this.renderInline(e[a].children,t,n):i[o]===void 0?r+=this.renderToken(e,a,t,n):r+=i[o](e,a,t,n,this)}return r};function _A(){this.__rules__=[],this.__cache__=null}_A.prototype.__find__=function(e){for(let t=0;t<this.__rules__.length;t++)if(this.__rules__[t].name===e)return t;return-1},_A.prototype.__compile__=function(){let e=this,t=[``];e.__rules__.forEach(function(e){e.enabled&&e.alt.forEach(function(e){t.indexOf(e)<0&&t.push(e)})}),e.__cache__={},t.forEach(function(t){e.__cache__[t]=[],e.__rules__.forEach(function(n){n.enabled&&(t&&n.alt.indexOf(t)<0||e.__cache__[t].push(n.fn))})})},_A.prototype.at=function(e,t,n){let r=this.__find__(e),i=n||{};if(r===-1)throw Error(`Parser rule not found: `+e);this.__rules__[r].fn=t,this.__rules__[r].alt=i.alt||[],this.__cache__=null},_A.prototype.before=function(e,t,n,r){let i=this.__find__(e),a=r||{};if(i===-1)throw Error(`Parser rule not found: `+e);this.__rules__.splice(i,0,{name:t,enabled:!0,fn:n,alt:a.alt||[]}),this.__cache__=null},_A.prototype.after=function(e,t,n,r){let i=this.__find__(e),a=r||{};if(i===-1)throw Error(`Parser rule not found: `+e);this.__rules__.splice(i+1,0,{name:t,enabled:!0,fn:n,alt:a.alt||[]}),this.__cache__=null},_A.prototype.push=function(e,t,n){let r=n||{};this.__rules__.push({name:e,enabled:!0,fn:t,alt:r.alt||[]}),this.__cache__=null},_A.prototype.enable=function(e,t){Array.isArray(e)||(e=[e]);let n=[];return e.forEach(function(e){let r=this.__find__(e);if(r<0){if(t)return;throw Error(`Rules manager: invalid rule name `+e)}this.__rules__[r].enabled=!0,n.push(e)},this),this.__cache__=null,n},_A.prototype.enableOnly=function(e,t){Array.isArray(e)||(e=[e]),this.__rules__.forEach(function(e){e.enabled=!1}),this.enable(e,t)},_A.prototype.disable=function(e,t){Array.isArray(e)||(e=[e]);let n=[];return e.forEach(function(e){let r=this.__find__(e);if(r<0){if(t)return;throw Error(`Rules manager: invalid rule name `+e)}this.__rules__[r].enabled=!1,n.push(e)},this),this.__cache__=null,n},_A.prototype.getRules=function(e){return this.__cache__===null&&this.__compile__(),this.__cache__[e]||[]};function vA(e,t,n){this.type=e,this.tag=t,this.attrs=null,this.map=null,this.nesting=n,this.level=0,this.children=null,this.content=``,this.markup=``,this.info=``,this.meta=null,this.block=!1,this.hidden=!1}vA.prototype.attrIndex=function(e){if(!this.attrs)return-1;let t=this.attrs;for(let n=0,r=t.length;n<r;n++)if(t[n][0]===e)return n;return-1},vA.prototype.attrPush=function(e){this.attrs?this.attrs.push(e):this.attrs=[e]},vA.prototype.attrSet=function(e,t){let n=this.attrIndex(e),r=[e,t];n<0?this.attrPush(r):this.attrs[n]=r},vA.prototype.attrGet=function(e){let t=this.attrIndex(e),n=null;return t>=0&&(n=this.attrs[t][1]),n},vA.prototype.attrJoin=function(e,t){let n=this.attrIndex(e);n<0?this.attrPush([e,t]):this.attrs[n][1]=this.attrs[n][1]+` `+t};function yA(e,t,n){this.src=e,this.env=n,this.tokens=[],this.inlineMode=!1,this.md=t}yA.prototype.Token=vA;var bA=/\r\n?|\n/g,xA=/\0/g;function SA(e){let t;t=e.src.replace(bA,`
112
+ `),t=t.replace(xA,`�`),e.src=t}function CA(e){let t;e.inlineMode?(t=new e.Token(`inline`,``,0),t.content=e.src,t.map=[0,1],t.children=[],e.tokens.push(t)):e.md.block.parse(e.src,e.md,e.env,e.tokens)}function wA(e){let t=e.tokens;for(let n=0,r=t.length;n<r;n++){let r=t[n];r.type===`inline`&&e.md.inline.parse(r.content,e.md,e.env,r.children)}}function TA(e){return/^<a[>\s]/i.test(e)}function EA(e){return/^<\/a\s*>/i.test(e)}function DA(e){let t=e.tokens;if(e.md.options.linkify)for(let n=0,r=t.length;n<r;n++){if(t[n].type!==`inline`||!e.md.linkify.pretest(t[n].content))continue;let r=t[n].children,i=0;for(let a=r.length-1;a>=0;a--){let o=r[a];if(o.type===`link_close`){for(a--;r[a].level!==o.level&&r[a].type!==`link_open`;)a--;continue}if(o.type===`html_inline`&&(TA(o.content)&&i>0&&i--,EA(o.content)&&i++),!(i>0)&&o.type===`text`&&e.md.linkify.test(o.content)){let i=o.content,s=e.md.linkify.match(i),c=[],l=o.level,u=0;s.length>0&&s[0].index===0&&a>0&&r[a-1].type===`text_special`&&(s=s.slice(1));for(let t=0;t<s.length;t++){let n=s[t].url,r=e.md.normalizeLink(n);if(!e.md.validateLink(r))continue;let a=s[t].text;a=s[t].schema?s[t].schema===`mailto:`&&!/^mailto:/i.test(a)?e.md.normalizeLinkText(`mailto:`+a).replace(/^mailto:/,``):e.md.normalizeLinkText(a):e.md.normalizeLinkText(`http://`+a).replace(/^http:\/\//,``);let o=s[t].index;if(o>u){let t=new e.Token(`text`,``,0);t.content=i.slice(u,o),t.level=l,c.push(t)}let d=new e.Token(`link_open`,`a`,1);d.attrs=[[`href`,r]],d.level=l++,d.markup=`linkify`,d.info=`auto`,c.push(d);let f=new e.Token(`text`,``,0);f.content=a,f.level=l,c.push(f);let p=new e.Token(`link_close`,`a`,-1);p.level=--l,p.markup=`linkify`,p.info=`auto`,c.push(p),u=s[t].lastIndex}if(u<i.length){let t=new e.Token(`text`,``,0);t.content=i.slice(u),t.level=l,c.push(t)}t[n].children=r=Bk(r,a,c)}}}}var OA=/\+-|\.\.|\?\?\?\?|!!!!|,,|--/,kA=/\((c|tm|r)\)/i,AA=/\((c|tm|r)\)/gi,jA={c:`©`,r:`®`,tm:`™`};function MA(e,t){return jA[t.toLowerCase()]}function NA(e){let t=0;for(let n=e.length-1;n>=0;n--){let r=e[n];r.type===`text`&&!t&&(r.content=r.content.replace(AA,MA)),r.type===`link_open`&&r.info===`auto`&&t--,r.type===`link_close`&&r.info===`auto`&&t++}}function PA(e){let t=0;for(let n=e.length-1;n>=0;n--){let r=e[n];r.type===`text`&&!t&&OA.test(r.content)&&(r.content=r.content.replace(/\+-/g,`±`).replace(/\.{2,}/g,`…`).replace(/([?!])…/g,`$1..`).replace(/([?!]){4,}/g,`$1$1$1`).replace(/,{2,}/g,`,`).replace(/(^|[^-])---(?=[^-]|$)/gm,`$1—`).replace(/(^|\s)--(?=\s|$)/gm,`$1–`).replace(/(^|[^-\s])--(?=[^-\s]|$)/gm,`$1–`)),r.type===`link_open`&&r.info===`auto`&&t--,r.type===`link_close`&&r.info===`auto`&&t++}}function FA(e){let t;if(e.md.options.typographer)for(t=e.tokens.length-1;t>=0;t--)e.tokens[t].type===`inline`&&(kA.test(e.tokens[t].content)&&NA(e.tokens[t].children),OA.test(e.tokens[t].content)&&PA(e.tokens[t].children))}var IA=/['"]/,LA=/['"]/g,RA=`’`;function zA(e,t,n,r){e[t]||(e[t]=[]),e[t].push({pos:n,ch:r})}function BA(e,t){let n=``,r=0;t.sort((e,t)=>e.pos-t.pos);for(let i=0;i<t.length;i++){let a=t[i];n+=e.slice(r,a.pos)+a.ch,r=a.pos+1}return n+e.slice(r)}function VA(e,t){let n,r=[],i={};for(let a=0;a<e.length;a++){let o=e[a],s=e[a].level;for(n=r.length-1;n>=0&&!(r[n].level<=s);n--);if(r.length=n+1,o.type!==`text`)continue;let c=o.content,l=0,u=c.length;OUTER:for(;l<u;){LA.lastIndex=l;let o=LA.exec(c);if(!o)break;let d=!0,f=!0;l=o.index+1;let p=o[0]===`'`,m=32;if(o.index-1>=0)m=c.charCodeAt(o.index-1);else for(n=a-1;n>=0&&!(e[n].type===`softbreak`||e[n].type===`hardbreak`);n--)if(e[n].content){m=e[n].content.charCodeAt(e[n].content.length-1);break}let h=32;if(l<u)h=c.charCodeAt(l);else for(n=a+1;n<e.length&&!(e[n].type===`softbreak`||e[n].type===`hardbreak`);n++)if(e[n].content){h=e[n].content.charCodeAt(0);break}let g=oA(m)||aA(m),_=oA(h)||aA(h),v=rA(m),y=rA(h);if(y?d=!1:_&&(v||g||(d=!1)),v?f=!1:g&&(y||_||(f=!1)),h===34&&o[0]===`"`&&m>=48&&m<=57&&(f=d=!1),d&&f&&(d=g,f=_),!d&&!f){p&&zA(i,a,o.index,RA);continue}if(f)for(n=r.length-1;n>=0;n--){let e=r[n];if(r[n].level<s)break;if(e.single===p&&r[n].level===s){e=r[n];let s,c;p?(s=t.md.options.quotes[2],c=t.md.options.quotes[3]):(s=t.md.options.quotes[0],c=t.md.options.quotes[1]),zA(i,a,o.index,c),zA(i,e.token,e.pos,s),r.length=n;continue OUTER}}d?r.push({token:a,pos:o.index,single:p,level:s}):f&&p&&zA(i,a,o.index,RA)}}Object.keys(i).forEach(function(t){e[t].content=BA(e[t].content,i[t])})}function HA(e){if(e.md.options.typographer)for(let t=e.tokens.length-1;t>=0;t--)e.tokens[t].type!==`inline`||!IA.test(e.tokens[t].content)||VA(e.tokens[t].children,e)}function UA(e){let t,n,r=e.tokens,i=r.length;for(let e=0;e<i;e++){if(r[e].type!==`inline`)continue;let i=r[e].children,a=i.length;for(t=0;t<a;t++)i[t].type===`text_special`&&(i[t].type=`text`);for(t=n=0;t<a;t++)i[t].type===`text`&&t+1<a&&i[t+1].type===`text`?i[t+1].content=i[t].content+i[t+1].content:(t!==n&&(i[n]=i[t]),n++);t!==n&&(i.length=n)}}var WA=[[`normalize`,SA],[`block`,CA],[`inline`,wA],[`linkify`,DA],[`replacements`,FA],[`smartquotes`,HA],[`text_join`,UA]];function GA(){this.ruler=new _A;for(let e=0;e<WA.length;e++)this.ruler.push(WA[e][0],WA[e][1])}GA.prototype.process=function(e){let t=this.ruler.getRules(``);for(let n=0,r=t.length;n<r;n++)t[n](e)},GA.prototype.State=yA;function KA(e,t,n,r){this.src=e,this.md=t,this.env=n,this.tokens=r,this.bMarks=[],this.eMarks=[],this.tShift=[],this.sCount=[],this.bsCount=[],this.blkIndent=0,this.line=0,this.lineMax=0,this.tight=!1,this.ddIndent=-1,this.listIndent=-1,this.parentType=`root`,this.level=0;let i=this.src;for(let e=0,t=0,n=0,r=0,a=i.length,o=!1;t<a;t++){let s=i.charCodeAt(t);if(!o)if(nA(s)){n++,s===9?r+=4-r%4:r++;continue}else o=!0;(s===10||t===a-1)&&(s!==10&&t++,this.bMarks.push(e),this.eMarks.push(t),this.tShift.push(n),this.sCount.push(r),this.bsCount.push(0),o=!1,n=0,r=0,e=t+1)}this.bMarks.push(i.length),this.eMarks.push(i.length),this.tShift.push(0),this.sCount.push(0),this.bsCount.push(0),this.lineMax=this.bMarks.length-1}KA.prototype.push=function(e,t,n){let r=new vA(e,t,n);return r.block=!0,n<0&&this.level--,r.level=this.level,n>0&&this.level++,this.tokens.push(r),r},KA.prototype.isEmpty=function(e){return this.bMarks[e]+this.tShift[e]>=this.eMarks[e]},KA.prototype.skipEmptyLines=function(e){for(let t=this.lineMax;e<t&&!(this.bMarks[e]+this.tShift[e]<this.eMarks[e]);e++);return e},KA.prototype.skipSpaces=function(e){for(let t=this.src.length;e<t&&nA(this.src.charCodeAt(e));e++);return e},KA.prototype.skipSpacesBack=function(e,t){if(e<=t)return e;for(;e>t;)if(!nA(this.src.charCodeAt(--e)))return e+1;return e},KA.prototype.skipChars=function(e,t){for(let n=this.src.length;e<n&&this.src.charCodeAt(e)===t;e++);return e},KA.prototype.skipCharsBack=function(e,t,n){if(e<=n)return e;for(;e>n;)if(t!==this.src.charCodeAt(--e))return e+1;return e},KA.prototype.getLines=function(e,t,n,r){if(e>=t)return``;let i=Array(t-e);for(let a=0,o=e;o<t;o++,a++){let e=0,s=this.bMarks[o],c=s,l;for(l=o+1<t||r?this.eMarks[o]+1:this.eMarks[o];c<l&&e<n;){let t=this.src.charCodeAt(c);if(nA(t))t===9?e+=4-(e+this.bsCount[o])%4:e++;else if(c-s<this.tShift[o])e++;else break;c++}e>n?i[a]=Array(e-n+1).join(` `)+this.src.slice(c,l):i[a]=this.src.slice(c,l)}return i.join(``)},KA.prototype.Token=vA;var qA=65536;function JA(e,t){let n=e.bMarks[t]+e.tShift[t],r=e.eMarks[t];return e.src.slice(n,r)}function YA(e){let t=[],n=e.length,r=0,i=e.charCodeAt(r),a=!1,o=0,s=``;for(;r<n;)i===124&&(a?(s+=e.substring(o,r-1),o=r):(t.push(s+e.substring(o,r)),s=``,o=r+1)),a=i===92,r++,i=e.charCodeAt(r);return t.push(s+e.substring(o)),t}function XA(e,t,n,r){if(t+2>n)return!1;let i=t+1;if(e.sCount[i]<e.blkIndent||e.sCount[i]-e.blkIndent>=4)return!1;let a=e.bMarks[i]+e.tShift[i];if(a>=e.eMarks[i])return!1;let o=e.src.charCodeAt(a++);if(o!==124&&o!==45&&o!==58||a>=e.eMarks[i])return!1;let s=e.src.charCodeAt(a++);if(s!==124&&s!==45&&s!==58&&!nA(s)||o===45&&nA(s))return!1;for(;a<e.eMarks[i];){let t=e.src.charCodeAt(a);if(t!==124&&t!==45&&t!==58&&!nA(t))return!1;a++}let c=JA(e,t+1),l=c.split(`|`),u=[];for(let e=0;e<l.length;e++){let t=l[e].trim();if(!t){if(e===0||e===l.length-1)continue;return!1}if(!/^:?-+:?$/.test(t))return!1;t.charCodeAt(t.length-1)===58?u.push(t.charCodeAt(0)===58?`center`:`right`):t.charCodeAt(0)===58?u.push(`left`):u.push(``)}if(c=JA(e,t).trim(),c.indexOf(`|`)===-1||e.sCount[t]-e.blkIndent>=4)return!1;l=YA(c),l.length&&l[0]===``&&l.shift(),l.length&&l[l.length-1]===``&&l.pop();let d=l.length;if(d===0||d!==u.length)return!1;if(r)return!0;let f=e.parentType;e.parentType=`table`;let p=e.md.block.ruler.getRules(`blockquote`),m=e.push(`table_open`,`table`,1),h=[t,0];m.map=h;let g=e.push(`thead_open`,`thead`,1);g.map=[t,t+1];let _=e.push(`tr_open`,`tr`,1);_.map=[t,t+1];for(let t=0;t<l.length;t++){let n=e.push(`th_open`,`th`,1);u[t]&&(n.attrs=[[`style`,`text-align:`+u[t]]]);let r=e.push(`inline`,``,0);r.content=l[t].trim(),r.children=[],e.push(`th_close`,`th`,-1)}e.push(`tr_close`,`tr`,-1),e.push(`thead_close`,`thead`,-1);let v,y=0;for(i=t+2;i<n&&!(e.sCount[i]<e.blkIndent);i++){let r=!1;for(let t=0,a=p.length;t<a;t++)if(p[t](e,i,n,!0)){r=!0;break}if(r||(c=JA(e,i).trim(),!c)||e.sCount[i]-e.blkIndent>=4||(l=YA(c),l.length&&l[0]===``&&l.shift(),l.length&&l[l.length-1]===``&&l.pop(),y+=d-l.length,y>qA))break;if(i===t+2){let n=e.push(`tbody_open`,`tbody`,1);n.map=v=[t+2,0]}let a=e.push(`tr_open`,`tr`,1);a.map=[i,i+1];for(let t=0;t<d;t++){let n=e.push(`td_open`,`td`,1);u[t]&&(n.attrs=[[`style`,`text-align:`+u[t]]]);let r=e.push(`inline`,``,0);r.content=l[t]?l[t].trim():``,r.children=[],e.push(`td_close`,`td`,-1)}e.push(`tr_close`,`tr`,-1)}return v&&(e.push(`tbody_close`,`tbody`,-1),v[1]=i),e.push(`table_close`,`table`,-1),h[1]=i,e.parentType=f,e.line=i,!0}function ZA(e,t,n){if(e.sCount[t]-e.blkIndent<4)return!1;let r=t+1,i=r;for(;r<n;){if(e.isEmpty(r)){r++;continue}if(e.sCount[r]-e.blkIndent>=4){r++,i=r;continue}break}e.line=i;let a=e.push(`code_block`,`code`,0);return a.content=e.getLines(t,i,4+e.blkIndent,!1)+`
113
+ `,a.map=[t,e.line],!0}function QA(e,t,n,r){let i=e.bMarks[t]+e.tShift[t],a=e.eMarks[t];if(e.sCount[t]-e.blkIndent>=4||i+3>a)return!1;let o=e.src.charCodeAt(i);if(o!==126&&o!==96)return!1;let s=i;i=e.skipChars(i,o);let c=i-s;if(c<3)return!1;let l=e.src.slice(s,i),u=e.src.slice(i,a);if(o===96&&u.indexOf(String.fromCharCode(o))>=0)return!1;if(r)return!0;let d=t,f=!1;for(;d++,!(d>=n||(i=s=e.bMarks[d]+e.tShift[d],a=e.eMarks[d],i<a&&e.sCount[d]<e.blkIndent));)if(e.src.charCodeAt(i)===o&&!(e.sCount[d]-e.blkIndent>=4)&&(i=e.skipChars(i,o),!(i-s<c)&&(i=e.skipSpaces(i),!(i<a)))){f=!0;break}c=e.sCount[t],e.line=d+ +!!f;let p=e.push(`fence`,`code`,0);return p.info=u,p.content=e.getLines(t+1,d,c,!0),p.markup=l,p.map=[t,e.line],!0}function $A(e,t,n,r){let i=e.bMarks[t]+e.tShift[t],a=e.eMarks[t],o=e.lineMax;if(e.sCount[t]-e.blkIndent>=4||e.src.charCodeAt(i)!==62)return!1;if(r)return!0;let s=[],c=[],l=[],u=[],d=e.md.block.ruler.getRules(`blockquote`),f=e.parentType;e.parentType=`blockquote`;let p=!1,m;for(m=t;m<n;m++){let t=e.sCount[m]<e.blkIndent;if(i=e.bMarks[m]+e.tShift[m],a=e.eMarks[m],i>=a)break;if(e.src.charCodeAt(i++)===62&&!t){let t=e.sCount[m]+1,n,r;e.src.charCodeAt(i)===32?(i++,t++,r=!1,n=!0):e.src.charCodeAt(i)===9?(n=!0,(e.bsCount[m]+t)%4==3?(i++,t++,r=!1):r=!0):n=!1;let o=t;for(s.push(e.bMarks[m]),e.bMarks[m]=i;i<a;){let t=e.src.charCodeAt(i);if(nA(t))t===9?o+=4-(o+e.bsCount[m]+ +!!r)%4:o++;else break;i++}p=i>=a,c.push(e.bsCount[m]),e.bsCount[m]=e.sCount[m]+1+ +!!n,l.push(e.sCount[m]),e.sCount[m]=o-t,u.push(e.tShift[m]),e.tShift[m]=i-e.bMarks[m];continue}if(p)break;let r=!1;for(let t=0,i=d.length;t<i;t++)if(d[t](e,m,n,!0)){r=!0;break}if(r){e.lineMax=m,e.blkIndent!==0&&(s.push(e.bMarks[m]),c.push(e.bsCount[m]),u.push(e.tShift[m]),l.push(e.sCount[m]),e.sCount[m]-=e.blkIndent);break}s.push(e.bMarks[m]),c.push(e.bsCount[m]),u.push(e.tShift[m]),l.push(e.sCount[m]),e.sCount[m]=-1}let h=e.blkIndent;e.blkIndent=0;let g=e.push(`blockquote_open`,`blockquote`,1);g.markup=`>`;let _=[t,0];g.map=_,e.md.block.tokenize(e,t,m);let v=e.push(`blockquote_close`,`blockquote`,-1);v.markup=`>`,e.lineMax=o,e.parentType=f,_[1]=e.line;for(let n=0;n<u.length;n++)e.bMarks[n+t]=s[n],e.tShift[n+t]=u[n],e.sCount[n+t]=l[n],e.bsCount[n+t]=c[n];return e.blkIndent=h,!0}function ej(e,t,n,r){let i=e.eMarks[t];if(e.sCount[t]-e.blkIndent>=4)return!1;let a=e.bMarks[t]+e.tShift[t],o=e.src.charCodeAt(a++);if(o!==42&&o!==45&&o!==95)return!1;let s=1;for(;a<i;){let t=e.src.charCodeAt(a++);if(t!==o&&!nA(t))return!1;t===o&&s++}if(s<3)return!1;if(r)return!0;e.line=t+1;let c=e.push(`hr`,`hr`,0);return c.map=[t,e.line],c.markup=Array(s+1).join(String.fromCharCode(o)),!0}function tj(e,t){let n=e.eMarks[t],r=e.bMarks[t]+e.tShift[t],i=e.src.charCodeAt(r++);return i!==42&&i!==45&&i!==43||r<n&&!nA(e.src.charCodeAt(r))?-1:r}function nj(e,t){let n=e.bMarks[t]+e.tShift[t],r=e.eMarks[t],i=n;if(i+1>=r)return-1;let a=e.src.charCodeAt(i++);if(a<48||a>57)return-1;for(;;){if(i>=r)return-1;if(a=e.src.charCodeAt(i++),a>=48&&a<=57){if(i-n>=10)return-1;continue}if(a===41||a===46)break;return-1}return i<r&&(a=e.src.charCodeAt(i),!nA(a))?-1:i}function rj(e,t){let n=e.level+2;for(let r=t+2,i=e.tokens.length-2;r<i;r++)e.tokens[r].level===n&&e.tokens[r].type===`paragraph_open`&&(e.tokens[r+2].hidden=!0,e.tokens[r].hidden=!0,r+=2)}function ij(e,t,n,r){let i,a,o,s,c=t,l=!0;if(e.sCount[c]-e.blkIndent>=4||e.listIndent>=0&&e.sCount[c]-e.listIndent>=4&&e.sCount[c]<e.blkIndent)return!1;let u=!1;r&&e.parentType===`paragraph`&&e.sCount[c]>=e.blkIndent&&(u=!0);let d,f,p;if((p=nj(e,c))>=0){if(d=!0,o=e.bMarks[c]+e.tShift[c],f=Number(e.src.slice(o,p-1)),u&&f!==1)return!1}else if((p=tj(e,c))>=0)d=!1;else return!1;if(u&&e.skipSpaces(p)>=e.eMarks[c])return!1;if(r)return!0;let m=e.src.charCodeAt(p-1),h=e.tokens.length;d?(s=e.push(`ordered_list_open`,`ol`,1),f!==1&&(s.attrs=[[`start`,f]])):s=e.push(`bullet_list_open`,`ul`,1);let g=[c,0];s.map=g,s.markup=String.fromCharCode(m);let _=!1,v=e.md.block.ruler.getRules(`list`),y=e.parentType;for(e.parentType=`list`;c<n;){a=p,i=e.eMarks[c];let t=e.sCount[c]+p-(e.bMarks[c]+e.tShift[c]),r=t;for(;a<i;){let t=e.src.charCodeAt(a);if(t===9)r+=4-(r+e.bsCount[c])%4;else if(t===32)r++;else break;a++}let u=a,f;f=u>=i?1:r-t,f>4&&(f=1);let h=t+f;s=e.push(`list_item_open`,`li`,1),s.markup=String.fromCharCode(m);let g=[c,0];s.map=g,d&&(s.info=e.src.slice(o,p-1));let y=e.tight,b=e.tShift[c],x=e.sCount[c],S=e.listIndent;if(e.listIndent=e.blkIndent,e.blkIndent=h,e.tight=!0,e.tShift[c]=u-e.bMarks[c],e.sCount[c]=r,u>=i&&e.isEmpty(c+1)?e.line=Math.min(e.line+2,n):e.md.block.tokenize(e,c,n,!0),(!e.tight||_)&&(l=!1),_=e.line-c>1&&e.isEmpty(e.line-1),e.blkIndent=e.listIndent,e.listIndent=S,e.tShift[c]=b,e.sCount[c]=x,e.tight=y,s=e.push(`list_item_close`,`li`,-1),s.markup=String.fromCharCode(m),c=e.line,g[1]=c,c>=n||e.sCount[c]<e.blkIndent||e.sCount[c]-e.blkIndent>=4)break;let C=!1;for(let t=0,r=v.length;t<r;t++)if(v[t](e,c,n,!0)){C=!0;break}if(C)break;if(d){if(p=nj(e,c),p<0)break;o=e.bMarks[c]+e.tShift[c]}else if(p=tj(e,c),p<0)break;if(m!==e.src.charCodeAt(p-1))break}return s=d?e.push(`ordered_list_close`,`ol`,-1):e.push(`bullet_list_close`,`ul`,-1),s.markup=String.fromCharCode(m),g[1]=c,e.line=c,e.parentType=y,l&&rj(e,h),!0}function aj(e,t,n,r){let i=e.bMarks[t]+e.tShift[t],a=e.eMarks[t],o=t+1;if(e.sCount[t]-e.blkIndent>=4||e.src.charCodeAt(i)!==91)return!1;function s(t){let n=e.lineMax;if(t>=n||e.isEmpty(t))return null;let r=!1;if(e.sCount[t]-e.blkIndent>3&&(r=!0),e.sCount[t]<0&&(r=!0),!r){let r=e.md.block.ruler.getRules(`reference`),i=e.parentType;e.parentType=`reference`;let a=!1;for(let i=0,o=r.length;i<o;i++)if(r[i](e,t,n,!0)){a=!0;break}if(e.parentType=i,a)return null}let i=e.bMarks[t]+e.tShift[t],a=e.eMarks[t];return e.src.slice(i,a+1)}let c=e.src.slice(i,a+1);a=c.length;let l=-1;for(i=1;i<a;i++){let e=c.charCodeAt(i);if(e===91)return!1;if(e===93){l=i;break}else if(e===10){let e=s(o);e!==null&&(c+=e,a=c.length,o++)}else if(e===92&&(i++,i<a&&c.charCodeAt(i)===10)){let e=s(o);e!==null&&(c+=e,a=c.length,o++)}}if(l<0||c.charCodeAt(l+1)!==58)return!1;for(i=l+2;i<a;i++){let e=c.charCodeAt(i);if(e===10){let e=s(o);e!==null&&(c+=e,a=c.length,o++)}else if(!nA(e))break}let u=e.md.helpers.parseLinkDestination(c,i,a);if(!u.ok)return!1;let d=e.md.normalizeLink(u.str);if(!e.md.validateLink(d))return!1;i=u.pos;let f=i,p=o,m=i;for(;i<a;i++){let e=c.charCodeAt(i);if(e===10){let e=s(o);e!==null&&(c+=e,a=c.length,o++)}else if(!nA(e))break}let h=e.md.helpers.parseLinkTitle(c,i,a);for(;h.can_continue;){let t=s(o);if(t===null)break;c+=t,i=a,a=c.length,o++,h=e.md.helpers.parseLinkTitle(c,i,a,h)}let g;for(i<a&&m!==i&&h.ok?(g=h.str,i=h.pos):(g=``,i=f,o=p);i<a&&nA(c.charCodeAt(i));)i++;if(i<a&&c.charCodeAt(i)!==10&&g)for(g=``,i=f,o=p;i<a&&nA(c.charCodeAt(i));)i++;if(i<a&&c.charCodeAt(i)!==10)return!1;let _=sA(c.slice(1,l));return _?r?!0:(e.env.references===void 0&&(e.env.references={}),e.env.references[_]===void 0&&(e.env.references[_]={title:g,href:d}),e.line=o,!0):!1}var oj=`address.article.aside.base.basefont.blockquote.body.caption.center.col.colgroup.dd.details.dialog.dir.div.dl.dt.fieldset.figcaption.figure.footer.form.frame.frameset.h1.h2.h3.h4.h5.h6.head.header.hr.html.iframe.legend.li.link.main.menu.menuitem.nav.noframes.ol.optgroup.option.p.param.search.section.summary.table.tbody.td.tfoot.th.thead.title.tr.track.ul`.split(`.`),sj=RegExp(`^(?:<[A-Za-z][A-Za-z0-9\\-]*(?:\\s+[a-zA-Z_:][a-zA-Z0-9:._-]*(?:\\s*=\\s*(?:[^"'=<>\`\\x00-\\x20]+|'[^']*'|"[^"]*"))?)*\\s*\\/?>|<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>|<!---?>|<!--(?:[^-]|-[^-]|--[^>])*-->|<[?][\\s\\S]*?[?]>|<![A-Za-z][^>]*>|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>)`),cj=RegExp(`^(?:<[A-Za-z][A-Za-z0-9\\-]*(?:\\s+[a-zA-Z_:][a-zA-Z0-9:._-]*(?:\\s*=\\s*(?:[^"'=<>\`\\x00-\\x20]+|'[^']*'|"[^"]*"))?)*\\s*\\/?>|<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>)`),lj=[[/^<(script|pre|style|textarea)(?=(\s|>|$))/i,/<\/(script|pre|style|textarea)>/i,!0],[/^<!--/,/-->/,!0],[/^<\?/,/\?>/,!0],[/^<![A-Z]/,/>/,!0],[/^<!\[CDATA\[/,/\]\]>/,!0],[RegExp(`^</?(`+oj.join(`|`)+`)(?=(\\s|/?>|$))`,`i`),/^$/,!0],[RegExp(cj.source+`\\s*$`),/^$/,!1]];function uj(e,t,n,r){let i=e.bMarks[t]+e.tShift[t],a=e.eMarks[t];if(e.sCount[t]-e.blkIndent>=4||!e.md.options.html||e.src.charCodeAt(i)!==60)return!1;let o=e.src.slice(i,a),s=0;for(;s<lj.length&&!lj[s][0].test(o);s++);if(s===lj.length)return!1;if(r)return lj[s][2];let c=t+1,l=lj[s][1].test(``);if(!lj[s][1].test(o)){for(;c<n&&!(e.sCount[c]<e.blkIndent&&(l||!e.isEmpty(c)));c++)if(i=e.bMarks[c]+e.tShift[c],a=e.eMarks[c],o=e.src.slice(i,a),lj[s][1].test(o)){o.length!==0&&c++;break}}e.line=c;let u=e.push(`html_block`,``,0);return u.map=[t,c],u.content=e.getLines(t,c,e.blkIndent,!0),!0}function dj(e,t,n,r){let i=e.bMarks[t]+e.tShift[t],a=e.eMarks[t];if(e.sCount[t]-e.blkIndent>=4)return!1;let o=e.src.charCodeAt(i);if(o!==35||i>=a)return!1;let s=1;for(o=e.src.charCodeAt(++i);o===35&&i<a&&s<=6;)s++,o=e.src.charCodeAt(++i);if(s>6||i<a&&!nA(o))return!1;if(r)return!0;a=e.skipSpacesBack(a,i);let c=e.skipCharsBack(a,35,i);c>i&&nA(e.src.charCodeAt(c-1))&&(a=c),e.line=t+1;let l=e.push(`heading_open`,`h`+String(s),1);l.markup=`########`.slice(0,s),l.map=[t,e.line];let u=e.push(`inline`,``,0);u.content=lA(e.src.slice(i,a)),u.map=[t,e.line],u.children=[];let d=e.push(`heading_close`,`h`+String(s),-1);return d.markup=`########`.slice(0,s),!0}function fj(e,t,n){let r=e.md.block.ruler.getRules(`paragraph`);if(e.sCount[t]-e.blkIndent>=4)return!1;let i=e.parentType;e.parentType=`paragraph`;let a=0,o,s=t+1;for(;s<n&&!e.isEmpty(s);s++){if(e.sCount[s]-e.blkIndent>3)continue;if(e.sCount[s]>=e.blkIndent){let t=e.bMarks[s]+e.tShift[s],n=e.eMarks[s];if(t<n&&(o=e.src.charCodeAt(t),(o===45||o===61)&&(t=e.skipChars(t,o),t=e.skipSpaces(t),t>=n))){a=o===61?1:2;break}}if(e.sCount[s]<0)continue;let t=!1;for(let i=0,a=r.length;i<a;i++)if(r[i](e,s,n,!0)){t=!0;break}if(t)break}if(!a)return e.parentType=i,!1;let c=lA(e.getLines(t,s,e.blkIndent,!1));e.line=s+1;let l=e.push(`heading_open`,`h`+String(a),1);l.markup=String.fromCharCode(o),l.map=[t,e.line];let u=e.push(`inline`,``,0);u.content=c,u.map=[t,e.line-1],u.children=[];let d=e.push(`heading_close`,`h`+String(a),-1);return d.markup=String.fromCharCode(o),e.parentType=i,!0}function pj(e,t,n){let r=e.md.block.ruler.getRules(`paragraph`),i=e.parentType,a=t+1;for(e.parentType=`paragraph`;a<n&&!e.isEmpty(a);a++){if(e.sCount[a]-e.blkIndent>3||e.sCount[a]<0)continue;let t=!1;for(let i=0,o=r.length;i<o;i++)if(r[i](e,a,n,!0)){t=!0;break}if(t)break}let o=lA(e.getLines(t,a,e.blkIndent,!1));e.line=a;let s=e.push(`paragraph_open`,`p`,1);s.map=[t,e.line];let c=e.push(`inline`,``,0);return c.content=o,c.map=[t,e.line],c.children=[],e.push(`paragraph_close`,`p`,-1),e.parentType=i,!0}var mj=[[`table`,XA,[`paragraph`,`reference`]],[`code`,ZA],[`fence`,QA,[`paragraph`,`reference`,`blockquote`,`list`]],[`blockquote`,$A,[`paragraph`,`reference`,`blockquote`,`list`]],[`hr`,ej,[`paragraph`,`reference`,`blockquote`,`list`]],[`list`,ij,[`paragraph`,`reference`,`blockquote`]],[`reference`,aj],[`html_block`,uj,[`paragraph`,`reference`,`blockquote`]],[`heading`,dj,[`paragraph`,`reference`,`blockquote`]],[`lheading`,fj],[`paragraph`,pj]];function hj(){this.ruler=new _A;for(let e=0;e<mj.length;e++)this.ruler.push(mj[e][0],mj[e][1],{alt:(mj[e][2]||[]).slice()})}hj.prototype.tokenize=function(e,t,n){let r=this.ruler.getRules(``),i=r.length,a=e.md.options.maxNesting,o=t,s=!1;for(;o<n&&(e.line=o=e.skipEmptyLines(o),!(o>=n||e.sCount[o]<e.blkIndent));){if(e.level>=a){e.line=n;break}let t=e.line,c=!1;for(let a=0;a<i;a++)if(c=r[a](e,o,n,!1),c){if(t>=e.line)throw Error(`block rule didn't increment state.line`);break}if(!c)throw Error(`none of the block rules matched`);e.tight=!s,e.isEmpty(e.line-1)&&(s=!0),o=e.line,o<n&&e.isEmpty(o)&&(s=!0,o++,e.line=o)}},hj.prototype.parse=function(e,t,n,r){if(!e)return;let i=new this.State(e,t,n,r);this.tokenize(i,i.line,i.lineMax)},hj.prototype.State=KA;function gj(e,t,n,r){this.src=e,this.env=n,this.md=t,this.tokens=r,this.tokens_meta=Array(r.length),this.pos=0,this.posMax=this.src.length,this.level=0,this.pending=``,this.pendingLevel=0,this.cache={},this.delimiters=[],this._prev_delimiters=[],this.backticks={},this.backticksScanned=!1,this.linkLevel=0}gj.prototype.pushPending=function(){let e=new vA(`text`,``,0);return e.content=this.pending,e.level=this.pendingLevel,this.tokens.push(e),this.pending=``,e},gj.prototype.push=function(e,t,n){this.pending&&this.pushPending();let r=new vA(e,t,n),i=null;return n<0&&(this.level--,this.delimiters=this._prev_delimiters.pop()),r.level=this.level,n>0&&(this.level++,this._prev_delimiters.push(this.delimiters),this.delimiters=[],i={delimiters:this.delimiters}),this.pendingLevel=this.level,this.tokens.push(r),this.tokens_meta.push(i),r},gj.prototype.scanDelims=function(e,t){let n=this.posMax,r=this.src.charCodeAt(e),i;if(e===0)i=32;else if(e===1)i=this.src.charCodeAt(0),(i&63488)==55296&&(i=65533);else if(i=this.src.charCodeAt(e-1),(i&64512)==56320){let t=this.src.charCodeAt(e-2);i=(t&64512)==55296?65536+(t-55296<<10)+(i-56320):65533}else(i&64512)==55296&&(i=65533);let a=e;for(;a<n&&this.src.charCodeAt(a)===r;)a++;let o=a-e,s=a<n?this.src.charCodeAt(a):32;if((s&64512)==55296){let e=this.src.charCodeAt(a+1);s=(e&64512)==56320?65536+(s-55296<<10)+(e-56320):65533}else(s&64512)==56320&&(s=65533);let c=oA(i)||aA(i),l=oA(s)||aA(s),u=rA(i),d=rA(s),f=!d&&(!l||u||c),p=!u&&(!c||d||l);return{can_open:f&&(t||!p||c),can_close:p&&(t||!f||l),length:o}},gj.prototype.Token=vA;function _j(e){switch(e){case 10:case 33:case 35:case 36:case 37:case 38:case 42:case 43:case 45:case 58:case 60:case 61:case 62:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 125:case 126:return!0;default:return!1}}function vj(e,t){let n=e.pos;for(;n<e.posMax&&!_j(e.src.charCodeAt(n));)n++;return n===e.pos?!1:(t||(e.pending+=e.src.slice(e.pos,n)),e.pos=n,!0)}var yj=/(?:^|[^a-z0-9.+-])([a-z][a-z0-9.+-]*)$/i;function bj(e,t){if(!e.md.options.linkify||e.linkLevel>0)return!1;let n=e.pos,r=e.posMax;if(n+3>r||e.src.charCodeAt(n)!==58||e.src.charCodeAt(n+1)!==47||e.src.charCodeAt(n+2)!==47)return!1;let i=e.pending.match(yj);if(!i)return!1;let a=i[1],o=e.md.linkify.matchAtStart(e.src.slice(n-a.length));if(!o)return!1;let s=o.url;if(s.length<=a.length)return!1;let c=s.length;for(;c>0&&s.charCodeAt(c-1)===42;)c--;c!==s.length&&(s=s.slice(0,c));let l=e.md.normalizeLink(s);if(!e.md.validateLink(l))return!1;if(!t){e.pending=e.pending.slice(0,-a.length);let t=e.push(`link_open`,`a`,1);t.attrs=[[`href`,l]],t.markup=`linkify`,t.info=`auto`;let n=e.push(`text`,``,0);n.content=e.md.normalizeLinkText(s);let r=e.push(`link_close`,`a`,-1);r.markup=`linkify`,r.info=`auto`}return e.pos+=s.length-a.length,!0}function xj(e,t){let n=e.pos;if(e.src.charCodeAt(n)!==10)return!1;let r=e.pending.length-1,i=e.posMax;if(!t)if(r>=0&&e.pending.charCodeAt(r)===32)if(r>=1&&e.pending.charCodeAt(r-1)===32){let t=r-1;for(;t>=1&&e.pending.charCodeAt(t-1)===32;)t--;e.pending=e.pending.slice(0,t),e.push(`hardbreak`,`br`,0)}else e.pending=e.pending.slice(0,-1),e.push(`softbreak`,`br`,0);else e.push(`softbreak`,`br`,0);for(n++;n<i&&nA(e.src.charCodeAt(n));)n++;return e.pos=n,!0}var Sj=[];for(let e=0;e<256;e++)Sj.push(0);`\\!"#$%&'()*+,./:;<=>?@[]^_\`{|}~-`.split(``).forEach(function(e){Sj[e.charCodeAt(0)]=1});function Cj(e,t){let n=e.pos,r=e.posMax;if(e.src.charCodeAt(n)!==92||(n++,n>=r))return!1;let i=e.src.charCodeAt(n);if(i===10){for(t||e.push(`hardbreak`,`br`,0),n++;n<r&&(i=e.src.charCodeAt(n),nA(i));)n++;return e.pos=n,!0}if(i===32){if(!t){let t=e.push(`text_special`,``,0);t.content=`\\`,t.markup=`\\`,t.info=`escape`}return e.pos=n,!0}let a=e.src[n];if(i>=55296&&i<=56319&&n+1<r){let t=e.src.charCodeAt(n+1);t>=56320&&t<=57343&&(a+=e.src[n+1],n++)}let o=`\\`+a;if(!t){let t=e.push(`text_special`,``,0);i<256&&Sj[i]!==0?t.content=a:t.content=o,t.markup=o,t.info=`escape`}return e.pos=n+1,!0}function wj(e,t){let n=e.pos;if(e.src.charCodeAt(n)!==96)return!1;let r=n;n++;let i=e.posMax;for(;n<i&&e.src.charCodeAt(n)===96;)n++;let a=e.src.slice(r,n),o=a.length;if(e.backticksScanned&&(e.backticks[o]||0)<=r)return t||(e.pending+=a),e.pos+=o,!0;let s=n,c;for(;(c=e.src.indexOf("`",s))!==-1;){for(s=c+1;s<i&&e.src.charCodeAt(s)===96;)s++;let r=s-c;if(r===o){if(!t){let t=e.push(`code_inline`,`code`,0);t.markup=a,t.content=e.src.slice(n,c).replace(/\n/g,` `).replace(/^ (.+) $/,`$1`)}return e.pos=s,!0}e.backticks[r]=c}return e.backticksScanned=!0,t||(e.pending+=a),e.pos+=o,!0}function Tj(e,t){let n=e.pos,r=e.src.charCodeAt(n);if(t||r!==126)return!1;let i=e.scanDelims(e.pos,!0),a=i.length,o=String.fromCharCode(r);if(a<2)return!1;let s;a%2&&(s=e.push(`text`,``,0),s.content=o,a--);for(let t=0;t<a;t+=2)s=e.push(`text`,``,0),s.content=o+o,e.delimiters.push({marker:r,length:0,token:e.tokens.length-1,end:-1,open:i.can_open,close:i.can_close});return e.pos+=i.length,!0}function Ej(e,t){let n,r=[],i=t.length;for(let a=0;a<i;a++){let i=t[a];if(i.marker!==126||i.end===-1)continue;let o=t[i.end];n=e.tokens[i.token],n.type=`s_open`,n.tag=`s`,n.nesting=1,n.markup=`~~`,n.content=``,n=e.tokens[o.token],n.type=`s_close`,n.tag=`s`,n.nesting=-1,n.markup=`~~`,n.content=``,e.tokens[o.token-1].type===`text`&&e.tokens[o.token-1].content===`~`&&r.push(o.token-1)}for(;r.length;){let t=r.pop(),i=t+1;for(;i<e.tokens.length&&e.tokens[i].type===`s_close`;)i++;i--,t!==i&&(n=e.tokens[i],e.tokens[i]=e.tokens[t],e.tokens[t]=n)}}function Dj(e){let t=e.tokens_meta,n=e.tokens_meta.length;Ej(e,e.delimiters);for(let r=0;r<n;r++)t[r]&&t[r].delimiters&&Ej(e,t[r].delimiters)}var Oj={tokenize:Tj,postProcess:Dj};function kj(e,t){let n=e.pos,r=e.src.charCodeAt(n);if(t||r!==95&&r!==42)return!1;let i=e.scanDelims(e.pos,r===42);for(let t=0;t<i.length;t++){let t=e.push(`text`,``,0);t.content=String.fromCharCode(r),e.delimiters.push({marker:r,length:i.length,token:e.tokens.length-1,end:-1,open:i.can_open,close:i.can_close})}return e.pos+=i.length,!0}function Aj(e,t){let n=t.length;for(let r=n-1;r>=0;r--){let n=t[r];if(n.marker!==95&&n.marker!==42||n.end===-1)continue;let i=t[n.end],a=r>0&&t[r-1].end===n.end+1&&t[r-1].marker===n.marker&&t[r-1].token===n.token-1&&t[n.end+1].token===i.token+1,o=String.fromCharCode(n.marker),s=e.tokens[n.token];s.type=a?`strong_open`:`em_open`,s.tag=a?`strong`:`em`,s.nesting=1,s.markup=a?o+o:o,s.content=``;let c=e.tokens[i.token];c.type=a?`strong_close`:`em_close`,c.tag=a?`strong`:`em`,c.nesting=-1,c.markup=a?o+o:o,c.content=``,a&&(e.tokens[t[r-1].token].content=``,e.tokens[t[n.end+1].token].content=``,r--)}}function jj(e){let t=e.tokens_meta,n=e.tokens_meta.length;Aj(e,e.delimiters);for(let r=0;r<n;r++)t[r]&&t[r].delimiters&&Aj(e,t[r].delimiters)}var Mj={tokenize:kj,postProcess:jj};function Nj(e,t){let n,r,i,a,o=``,s=``,c=e.pos,l=!0;if(e.src.charCodeAt(e.pos)!==91)return!1;let u=e.pos,d=e.posMax,f=e.pos+1,p=e.md.helpers.parseLinkLabel(e,e.pos,!0);if(p<0)return!1;let m=p+1;if(m<d&&e.src.charCodeAt(m)===40){for(l=!1,m++;m<d&&(n=e.src.charCodeAt(m),!(!nA(n)&&n!==10));m++);if(m>=d)return!1;if(c=m,i=e.md.helpers.parseLinkDestination(e.src,m,e.posMax),i.ok){for(o=e.md.normalizeLink(i.str),e.md.validateLink(o)?m=i.pos:o=``,c=m;m<d&&(n=e.src.charCodeAt(m),!(!nA(n)&&n!==10));m++);if(i=e.md.helpers.parseLinkTitle(e.src,m,e.posMax),m<d&&c!==m&&i.ok)for(s=i.str,m=i.pos;m<d&&(n=e.src.charCodeAt(m),!(!nA(n)&&n!==10));m++);}(m>=d||e.src.charCodeAt(m)!==41)&&(l=!0),m++}if(l){if(e.env.references===void 0)return!1;if(m<d&&e.src.charCodeAt(m)===91?(c=m+1,m=e.md.helpers.parseLinkLabel(e,m),m>=0?r=e.src.slice(c,m++):m=p+1):m=p+1,r||=e.src.slice(f,p),a=e.env.references[sA(r)],!a)return e.pos=u,!1;o=a.href,s=a.title}if(!t){e.pos=f,e.posMax=p;let t=e.push(`link_open`,`a`,1),n=[[`href`,o]];t.attrs=n,s&&n.push([`title`,s]),e.linkLevel++,e.md.inline.tokenize(e),e.linkLevel--,e.push(`link_close`,`a`,-1)}return e.pos=m,e.posMax=d,!0}function Pj(e,t){let n,r,i,a,o,s,c,l,u=``,d=e.pos,f=e.posMax;if(e.src.charCodeAt(e.pos)!==33||e.src.charCodeAt(e.pos+1)!==91)return!1;let p=e.pos+2,m=e.md.helpers.parseLinkLabel(e,e.pos+1,!1);if(m<0)return!1;if(a=m+1,a<f&&e.src.charCodeAt(a)===40){for(a++;a<f&&(n=e.src.charCodeAt(a),!(!nA(n)&&n!==10));a++);if(a>=f)return!1;for(l=a,s=e.md.helpers.parseLinkDestination(e.src,a,e.posMax),s.ok&&(u=e.md.normalizeLink(s.str),e.md.validateLink(u)?a=s.pos:u=``),l=a;a<f&&(n=e.src.charCodeAt(a),!(!nA(n)&&n!==10));a++);if(s=e.md.helpers.parseLinkTitle(e.src,a,e.posMax),a<f&&l!==a&&s.ok)for(c=s.str,a=s.pos;a<f&&(n=e.src.charCodeAt(a),!(!nA(n)&&n!==10));a++);else c=``;if(a>=f||e.src.charCodeAt(a)!==41)return e.pos=d,!1;a++}else{if(e.env.references===void 0)return!1;if(a<f&&e.src.charCodeAt(a)===91?(l=a+1,a=e.md.helpers.parseLinkLabel(e,a),a>=0?i=e.src.slice(l,a++):a=m+1):a=m+1,i||=e.src.slice(p,m),o=e.env.references[sA(i)],!o)return e.pos=d,!1;u=o.href,c=o.title}if(!t){r=e.src.slice(p,m);let t=[];e.md.inline.parse(r,e.md,e.env,t);let n=e.push(`image`,`img`,0),i=[[`src`,u],[`alt`,``]];n.attrs=i,n.children=t,n.content=r,c&&i.push([`title`,c])}return e.pos=a,e.posMax=f,!0}var Fj=/^([a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)$/,Ij=/^([a-zA-Z][a-zA-Z0-9+.-]{1,31}):([^<>\x00-\x20]*)$/;function Lj(e,t){let n=e.pos;if(e.src.charCodeAt(n)!==60)return!1;let r=e.pos,i=e.posMax;for(;;){if(++n>=i)return!1;let t=e.src.charCodeAt(n);if(t===60)return!1;if(t===62)break}let a=e.src.slice(r+1,n);if(Ij.test(a)){let n=e.md.normalizeLink(a);if(!e.md.validateLink(n))return!1;if(!t){let t=e.push(`link_open`,`a`,1);t.attrs=[[`href`,n]],t.markup=`autolink`,t.info=`auto`;let r=e.push(`text`,``,0);r.content=e.md.normalizeLinkText(a);let i=e.push(`link_close`,`a`,-1);i.markup=`autolink`,i.info=`auto`}return e.pos+=a.length+2,!0}if(Fj.test(a)){let n=e.md.normalizeLink(`mailto:`+a);if(!e.md.validateLink(n))return!1;if(!t){let t=e.push(`link_open`,`a`,1);t.attrs=[[`href`,n]],t.markup=`autolink`,t.info=`auto`;let r=e.push(`text`,``,0);r.content=e.md.normalizeLinkText(a);let i=e.push(`link_close`,`a`,-1);i.markup=`autolink`,i.info=`auto`}return e.pos+=a.length+2,!0}return!1}function Rj(e){return/^<a[>\s]/i.test(e)}function zj(e){return/^<\/a\s*>/i.test(e)}function Bj(e){let t=e|32;return t>=97&&t<=122}function Vj(e,t){if(!e.md.options.html)return!1;let n=e.posMax,r=e.pos;if(e.src.charCodeAt(r)!==60||r+2>=n)return!1;let i=e.src.charCodeAt(r+1);if(i!==33&&i!==63&&i!==47&&!Bj(i))return!1;let a=e.src.slice(r).match(sj);if(!a)return!1;if(!t){let t=e.push(`html_inline`,``,0);t.content=a[0],Rj(t.content)&&e.linkLevel++,zj(t.content)&&e.linkLevel--}return e.pos+=a[0].length,!0}var Hj=/^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));/i,Uj=/^&([a-z][a-z0-9]{1,31});/i;function Wj(e,t){let n=e.pos,r=e.posMax;if(e.src.charCodeAt(n)!==38||n+1>=r)return!1;if(e.src.charCodeAt(n+1)===35){let r=e.src.slice(n).match(Hj);if(r){if(!t){let t=r[1][0].toLowerCase()===`x`?parseInt(r[1].slice(1),16):parseInt(r[1],10),n=e.push(`text_special`,``,0);n.content=Vk(t)?Hk(t):Hk(65533),n.markup=r[0],n.info=`entity`}return e.pos+=r[0].length,!0}}else{let r=e.src.slice(n).match(Uj);if(r){let n=Nk(r[0]);if(n!==r[0]){if(!t){let t=e.push(`text_special`,``,0);t.content=n,t.markup=r[0],t.info=`entity`}return e.pos+=r[0].length,!0}}}return!1}function Gj(e){let t={},n=e.length;if(!n)return;let r=0,i=-2,a=[];for(let o=0;o<n;o++){let n=e[o];if(a.push(0),(e[r].marker!==n.marker||i!==n.token-1)&&(r=o),i=n.token,n.length=n.length||0,!n.close)continue;t.hasOwnProperty(n.marker)||(t[n.marker]=[-1,-1,-1,-1,-1,-1]);let s=t[n.marker][(n.open?3:0)+n.length%3],c=r-a[r]-1,l=c;for(;c>s;c-=a[c]+1){let t=e[c];if(t.marker===n.marker&&t.open&&t.end<0){let r=!1;if((t.close||n.open)&&(t.length+n.length)%3==0&&(t.length%3!=0||n.length%3!=0)&&(r=!0),!r){let r=c>0&&!e[c-1].open?a[c-1]+1:0;a[o]=o-c+r,a[c]=r,n.open=!1,t.end=o,t.close=!1,l=-1,i=-2;break}}}l!==-1&&(t[n.marker][(n.open?3:0)+(n.length||0)%3]=l)}}function Kj(e){let t=e.tokens_meta,n=e.tokens_meta.length;Gj(e.delimiters);for(let e=0;e<n;e++)t[e]&&t[e].delimiters&&Gj(t[e].delimiters)}function qj(e){let t,n,r=0,i=e.tokens,a=e.tokens.length;for(t=n=0;t<a;t++)i[t].nesting<0&&r--,i[t].level=r,i[t].nesting>0&&r++,i[t].type===`text`&&t+1<a&&i[t+1].type===`text`?i[t+1].content=i[t].content+i[t+1].content:(t!==n&&(i[n]=i[t]),n++);t!==n&&(i.length=n)}var Jj=[[`text`,vj],[`linkify`,bj],[`newline`,xj],[`escape`,Cj],[`backticks`,wj],[`strikethrough`,Oj.tokenize],[`emphasis`,Mj.tokenize],[`link`,Nj],[`image`,Pj],[`autolink`,Lj],[`html_inline`,Vj],[`entity`,Wj]],Yj=[[`balance_pairs`,Kj],[`strikethrough`,Oj.postProcess],[`emphasis`,Mj.postProcess],[`fragments_join`,qj]];function Xj(){this.ruler=new _A;for(let e=0;e<Jj.length;e++)this.ruler.push(Jj[e][0],Jj[e][1]);this.ruler2=new _A;for(let e=0;e<Yj.length;e++)this.ruler2.push(Yj[e][0],Yj[e][1])}Xj.prototype.skipToken=function(e){let t=e.pos,n=this.ruler.getRules(``),r=n.length,i=e.md.options.maxNesting,a=e.cache;if(a[t]!==void 0){e.pos=a[t];return}let o=!1;if(e.level<i){for(let i=0;i<r;i++)if(e.level++,o=n[i](e,!0),e.level--,o){if(t>=e.pos)throw Error(`inline rule didn't increment state.pos`);break}}else e.pos=e.posMax;o||e.pos++,a[t]=e.pos},Xj.prototype.tokenize=function(e){let t=this.ruler.getRules(``),n=t.length,r=e.posMax,i=e.md.options.maxNesting;for(;e.pos<r;){let a=e.pos,o=!1;if(e.level<i){for(let r=0;r<n;r++)if(o=t[r](e,!1),o){if(a>=e.pos)throw Error(`inline rule didn't increment state.pos`);break}}if(o){if(e.pos>=r)break;continue}e.pending+=e.src[e.pos++]}e.pending&&e.pushPending()},Xj.prototype.parse=function(e,t,n,r){let i=new this.State(e,t,n,r);this.tokenize(i);let a=this.ruler2.getRules(``),o=a.length;for(let e=0;e<o;e++)a[e](i)},Xj.prototype.State=gj;function Zj(e){let t={};e||={},t.src_Any=sk.source,t.src_Cc=ck.source,t.src_Z=fk.source,t.src_P=uk.source,t.src_ZPCc=[t.src_Z,t.src_P,t.src_Cc].join(`|`),t.src_ZCc=[t.src_Z,t.src_Cc].join(`|`);let n=`[><|]`;return t.src_pseudo_letter=`(?:(?!${n}|${t.src_ZPCc})${t.src_Any})`,t.src_ip4=`(?:(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)`,t.src_auth=`(?:(?:(?!${t.src_ZCc}|[@/\\[\\]()]).){1,50}@)?`,t.src_port=`(?::(?:6(?:[0-4]\\d{3}|5(?:[0-4]\\d{2}|5(?:[0-2]\\d|3[0-5])))|[1-5]?\\d{1,4}))?`,t.src_host_terminator=`(?=$|${n}|${t.src_ZPCc})(?!${e[`---`]?`-(?!--)|`:`-|`}_|:\\d|\\.-|\\.(?!$|${t.src_ZPCc}))`,t.src_path=`(?:[/?#](?:(?!${t.src_ZCc}|${n}|[()[\\]{}.,"'?!\\-;]).|\\[(?:(?!${t.src_ZCc}|\\]).)*\\]|\\((?:(?!${t.src_ZCc}|[)]).)*\\)|\\{(?:(?!${t.src_ZCc}|[}]).)*\\}|\\"(?:(?!${t.src_ZCc}|["]).)+\\"|\\'(?:(?!${t.src_ZCc}|[']).)+\\'|\\'(?=${t.src_pseudo_letter}|[-])|\\.{2,}[a-zA-Z0-9%/&]|\\.(?!${t.src_ZCc}|[.]|$)|`+(e[`---`]?`\\-(?!--(?:[^-]|$))(?:-*)|`:`\\-+|`)+`,(?!${t.src_ZCc}|$)|;(?!${t.src_ZCc}|$)|\\!+(?!${t.src_ZCc}|[!]|$)|\\?(?!${t.src_ZCc}|[?]|$))+|\\/)?`,t.src_email_name=`[\\-;:&=\\+\\$,\\.a-zA-Z0-9_][\\-;:&=\\+\\$,\\"\\.a-zA-Z0-9_]{0,63}`,t.src_xn=`xn--[a-z0-9\\-]{1,59}`,t.src_domain_root=`(?:`+t.src_xn+`|${t.src_pseudo_letter}{1,63})`,t.src_domain=`(?:`+t.src_xn+`|(?:${t.src_pseudo_letter})|(?:${t.src_pseudo_letter}(?:-|${t.src_pseudo_letter}){0,61}${t.src_pseudo_letter}))`,t.src_host=`(?:(?:(?:(?:${t.src_domain})\\.)*${t.src_domain}))`,t.tpl_host_fuzzy=`(?:`+t.src_ip4+`|(?:(?:(?:${t.src_domain})\\.)+(?:%TLDS%)))`,t.tpl_host_no_ip_fuzzy=`(?:(?:(?:${t.src_domain})\\.)+(?:%TLDS%))`,t.src_host_strict=t.src_host+t.src_host_terminator,t.tpl_host_fuzzy_strict=t.tpl_host_fuzzy+t.src_host_terminator,t.src_host_port_strict=t.src_host+t.src_port+t.src_host_terminator,t.tpl_host_port_fuzzy_strict=t.tpl_host_fuzzy+t.src_port+t.src_host_terminator,t.tpl_host_port_no_ip_fuzzy_strict=t.tpl_host_no_ip_fuzzy+t.src_port+t.src_host_terminator,t.tpl_host_fuzzy_test=`localhost|www\\.|\\.\\d{1,3}\\.|(?:\\.(?:%TLDS%)(?:${t.src_ZPCc}|>|$))`,t.tpl_email_fuzzy=`(^|${n}|"|\\(|${t.src_ZCc})(${t.src_email_name}@${t.tpl_host_fuzzy_strict})`,t.tpl_link_fuzzy=`(^|(?![.:/\\-_@])(?:[$+<=>^\`|\uff5c]|${t.src_ZPCc}))((?![$+<=>^\`|\uff5c])${t.tpl_host_port_fuzzy_strict}${t.src_path})`,t.tpl_link_no_ip_fuzzy=`(^|(?![.:/\\-_@])(?:[$+<=>^\`|\uff5c]|${t.src_ZPCc}))((?![$+<=>^\`|\uff5c])${t.tpl_host_port_no_ip_fuzzy_strict}${t.src_path})`,t}function Qj(e){return Array.prototype.slice.call(arguments,1).forEach(function(t){t&&Object.keys(t).forEach(function(n){e[n]=t[n]})}),e}function $j(e){return Object.prototype.toString.call(e)}function eM(e){return $j(e)===`[object String]`}function tM(e){return $j(e)===`[object Object]`}function nM(e){return $j(e)===`[object RegExp]`}function rM(e){return $j(e)===`[object Function]`}function iM(e){return e.replace(/[.?*+^$[\]\\(){}|-]/g,`\\$&`)}var aM={fuzzyLink:!0,fuzzyEmail:!0,fuzzyIP:!1};function oM(e){return Object.keys(e||{}).reduce(function(e,t){return e||aM.hasOwnProperty(t)},!1)}var sM={"http:":{validate:function(e,t,n){let r=e.slice(t);return n.re.http||(n.re.http=RegExp(`^\\/\\/${n.re.src_auth}${n.re.src_host_port_strict}${n.re.src_path}`,`i`)),n.re.http.test(r)?r.match(n.re.http)[0].length:0}},"https:":`http:`,"ftp:":`http:`,"//":{validate:function(e,t,n){let r=e.slice(t);return n.re.no_http||(n.re.no_http=RegExp(`^`+n.re.src_auth+`(?:localhost|(?:(?:${n.re.src_domain})\\.)+${n.re.src_domain_root})`+n.re.src_port+n.re.src_host_terminator+n.re.src_path,`i`)),n.re.no_http.test(r)?t>=3&&e[t-3]===`:`||t>=3&&e[t-3]===`/`?0:r.match(n.re.no_http)[0].length:0}},"mailto:":{validate:function(e,t,n){let r=e.slice(t);return n.re.mailto||(n.re.mailto=RegExp(`^${n.re.src_email_name}@${n.re.src_host_strict}`,`i`)),n.re.mailto.test(r)?r.match(n.re.mailto)[0].length:0}}},cM=`a[cdefgilmnoqrstuwxz]|b[abdefghijmnorstvwyz]|c[acdfghiklmnoruvwxyz]|d[ejkmoz]|e[cegrstu]|f[ijkmor]|g[abdefghilmnpqrstuwy]|h[kmnrtu]|i[delmnoqrst]|j[emop]|k[eghimnprwyz]|l[abcikrstuvy]|m[acdeghklmnopqrstuvwxyz]|n[acefgilopruz]|om|p[aefghklmnrstwy]|qa|r[eosuw]|s[abcdeghijklmnortuvxyz]|t[cdfghjklmnortvwz]|u[agksyz]|v[aceginu]|w[fs]|y[et]|z[amw]`,lM=`biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф`.split(`|`);function uM(e){return function(t,n){let r=t.slice(n);return e.test(r)?r.match(e)[0].length:0}}function dM(){return function(e,t){t.normalize(e)}}function fM(e){let t=e.re=Zj(e.__opts__),n=e.__tlds__.slice();e.onCompile(),e.__tlds_replaced__||n.push(cM),n.push(t.src_xn),t.src_tlds=n.join(`|`);function r(e){return e.replace(`%TLDS%`,t.src_tlds)}t.email_fuzzy=RegExp(r(t.tpl_email_fuzzy),`i`),t.email_fuzzy_global=RegExp(r(t.tpl_email_fuzzy),`ig`),t.link_fuzzy=RegExp(r(t.tpl_link_fuzzy),`i`),t.link_fuzzy_global=RegExp(r(t.tpl_link_fuzzy),`ig`),t.link_no_ip_fuzzy=RegExp(r(t.tpl_link_no_ip_fuzzy),`i`),t.link_no_ip_fuzzy_global=RegExp(r(t.tpl_link_no_ip_fuzzy),`ig`),t.host_fuzzy_test=RegExp(r(t.tpl_host_fuzzy_test),`i`);let i=[];e.__compiled__={};function a(e,t){throw Error(`(LinkifyIt) Invalid schema "${e}": ${t}`)}Object.keys(e.__schemas__).forEach(function(t){let n=e.__schemas__[t];if(n===null)return;let r={validate:null,link:null};if(e.__compiled__[t]=r,tM(n)){nM(n.validate)?r.validate=uM(n.validate):rM(n.validate)?r.validate=n.validate:a(t,n),rM(n.normalize)?r.normalize=n.normalize:n.normalize?a(t,n):r.normalize=dM();return}if(eM(n)){i.push(t);return}a(t,n)}),i.forEach(function(t){e.__compiled__[e.__schemas__[t]]&&(e.__compiled__[t].validate=e.__compiled__[e.__schemas__[t]].validate,e.__compiled__[t].normalize=e.__compiled__[e.__schemas__[t]].normalize)}),e.__compiled__[``]={validate:null,normalize:dM()};let o=Object.keys(e.__compiled__).filter(function(t){return t.length>0&&e.__compiled__[t]}).map(iM).join(`|`);e.re.schema_test=RegExp(`(^|(?!_)(?:[><\uff5c]|${t.src_ZPCc}))(${o})`,`i`),e.re.schema_search=RegExp(`(^|(?!_)(?:[><\uff5c]|${t.src_ZPCc}))(${o})`,`ig`),e.re.schema_at_start=RegExp(`^${e.re.schema_search.source}`,`i`),e.re.pretest=RegExp(`(${e.re.schema_test.source})|(${e.re.host_fuzzy_test.source})|@`,`i`)}function pM(e,t,n,r){let i=e.slice(n,r);this.schema=t.toLowerCase(),this.index=n,this.lastIndex=r,this.raw=i,this.text=i,this.url=i}function mM(e,t){if(!(this instanceof mM))return new mM(e,t);t||oM(e)&&(t=e,e={}),this.__opts__=Qj({},aM,t),this.__schemas__=Qj({},sM,e),this.__compiled__={},this.__tlds__=lM,this.__tlds_replaced__=!1,this.re={},fM(this)}mM.prototype.add=function(e,t){return this.__schemas__[e]=t,fM(this),this},mM.prototype.set=function(e){return this.__opts__=Qj(this.__opts__,e),this},mM.prototype.test=function(e){if(!e.length)return!1;let t,n;if(this.re.schema_test.test(e)){for(n=this.re.schema_search,n.lastIndex=0;(t=n.exec(e))!==null;)if(this.testSchemaAt(e,t[2],n.lastIndex))return!0}return!!(this.__opts__.fuzzyLink&&this.__compiled__[`http:`]&&e.search(this.re.host_fuzzy_test)>=0&&e.match(this.__opts__.fuzzyIP?this.re.link_fuzzy:this.re.link_no_ip_fuzzy)!==null||this.__opts__.fuzzyEmail&&this.__compiled__[`mailto:`]&&e.indexOf(`@`)>=0&&e.match(this.re.email_fuzzy)!==null)},mM.prototype.pretest=function(e){return this.re.pretest.test(e)},mM.prototype.testSchemaAt=function(e,t,n){return this.__compiled__[t.toLowerCase()]?this.__compiled__[t.toLowerCase()].validate(e,n,this):0},mM.prototype.match=function(e){let t=[],n=[],r=[],i=[],a,o,s;function c(e,t){return e?t?e.index===t.index?e.lastIndex>=t.lastIndex?e:t:e.index<t.index?e:t:e:t}if(!e.length)return null;if(this.re.schema_test.test(e))for(s=this.re.schema_search,s.lastIndex=0;(a=s.exec(e))!==null;)o=this.testSchemaAt(e,a[2],s.lastIndex),o&&n.push({schema:a[2],index:a.index+a[1].length,lastIndex:a.index+a[0].length+o});if(this.__opts__.fuzzyLink&&this.__compiled__[`http:`])for(s=this.__opts__.fuzzyIP?this.re.link_fuzzy_global:this.re.link_no_ip_fuzzy_global,s.lastIndex=0;(a=s.exec(e))!==null;)r.push({schema:``,index:a.index+a[1].length,lastIndex:a.index+a[0].length});if(this.__opts__.fuzzyEmail&&this.__compiled__[`mailto:`])for(s=this.re.email_fuzzy_global,s.lastIndex=0;(a=s.exec(e))!==null;)i.push({schema:`mailto:`,index:a.index+a[1].length,lastIndex:a.index+a[0].length});let l=[0,0,0],u=0;for(;;){let a=[n[l[0]],i[l[1]],r[l[2]]],o=c(c(a[0],a[1]),a[2]);if(!o)break;if(o===a[0]?l[0]++:o===a[1]?l[1]++:l[2]++,o.index<u)continue;let s=new pM(e,o.schema,o.index,o.lastIndex);this.__compiled__[s.schema].normalize(s,this),t.push(s),u=o.lastIndex}return t.length?t:null},mM.prototype.matchAtStart=function(e){if(!e.length)return null;let t=this.re.schema_at_start.exec(e);if(!t)return null;let n=this.testSchemaAt(e,t[2],t[0].length);if(!n)return null;let r=new pM(e,t[2],t.index+t[1].length,t.index+t[0].length+n);return this.__compiled__[r.schema].normalize(r,this),r},mM.prototype.tlds=function(e,t){return e=Array.isArray(e)?e:[e],t?(this.__tlds__=this.__tlds__.concat(e).sort().filter(function(e,t,n){return e!==n[t-1]}).reverse(),fM(this),this):(this.__tlds__=e.slice(),this.__tlds_replaced__=!0,fM(this),this)},mM.prototype.normalize=function(e){e.schema||(e.url=`http://${e.url}`),e.schema===`mailto:`&&!/^mailto:/i.test(e.url)&&(e.url=`mailto:${e.url}`)},mM.prototype.onCompile=function(){};var hM=2147483647,gM=36,_M=1,vM=26,yM=38,bM=700,xM=72,SM=128,CM=`-`,wM=/^xn--/,TM=/[^\0-\x7F]/,EM=/[\x2E\u3002\uFF0E\uFF61]/g,DM={overflow:`Overflow: input needs wider integers to process`,"not-basic":`Illegal input >= 0x80 (not a basic code point)`,"invalid-input":`Invalid input`},OM=gM-_M,kM=Math.floor,AM=String.fromCharCode;function jM(e){throw RangeError(DM[e])}function MM(e,t){let n=[],r=e.length;for(;r--;)n[r]=t(e[r]);return n}function NM(e,t){let n=e.split(`@`),r=``;n.length>1&&(r=n[0]+`@`,e=n[1]),e=e.replace(EM,`.`);let i=MM(e.split(`.`),t).join(`.`);return r+i}function PM(e){let t=[],n=0,r=e.length;for(;n<r;){let i=e.charCodeAt(n++);if(i>=55296&&i<=56319&&n<r){let r=e.charCodeAt(n++);(r&64512)==56320?t.push(((i&1023)<<10)+(r&1023)+65536):(t.push(i),n--)}else t.push(i)}return t}var FM=e=>String.fromCodePoint(...e),IM=function(e){return e>=48&&e<58?26+(e-48):e>=65&&e<91?e-65:e>=97&&e<123?e-97:gM},LM=function(e,t){return e+22+75*(e<26)-((t!=0)<<5)},RM=function(e,t,n){let r=0;for(e=n?kM(e/bM):e>>1,e+=kM(e/t);e>455;r+=gM)e=kM(e/OM);return kM(r+36*e/(e+yM))},zM=function(e){let t=[],n=e.length,r=0,i=SM,a=xM,o=e.lastIndexOf(CM);o<0&&(o=0);for(let n=0;n<o;++n)e.charCodeAt(n)>=128&&jM(`not-basic`),t.push(e.charCodeAt(n));for(let s=o>0?o+1:0;s<n;){let o=r;for(let t=1,i=gM;;i+=gM){s>=n&&jM(`invalid-input`);let o=IM(e.charCodeAt(s++));o>=gM&&jM(`invalid-input`),o>kM((hM-r)/t)&&jM(`overflow`),r+=o*t;let c=i<=a?_M:i>=a+vM?vM:i-a;if(o<c)break;let l=gM-c;t>kM(hM/l)&&jM(`overflow`),t*=l}let c=t.length+1;a=RM(r-o,c,o==0),kM(r/c)>hM-i&&jM(`overflow`),i+=kM(r/c),r%=c,t.splice(r++,0,i)}return String.fromCodePoint(...t)},BM=function(e){let t=[];e=PM(e);let n=e.length,r=SM,i=0,a=xM;for(let n of e)n<128&&t.push(AM(n));let o=t.length,s=o;for(o&&t.push(CM);s<n;){let n=hM;for(let t of e)t>=r&&t<n&&(n=t);let c=s+1;n-r>kM((hM-i)/c)&&jM(`overflow`),i+=(n-r)*c,r=n;for(let n of e)if(n<r&&++i>hM&&jM(`overflow`),n===r){let e=i;for(let n=gM;;n+=gM){let r=n<=a?_M:n>=a+vM?vM:n-a;if(e<r)break;let i=e-r,o=gM-r;t.push(AM(LM(r+i%o,0))),e=kM(i/o)}t.push(AM(LM(e,0))),a=RM(i,c,s===o),i=0,++s}++i,++r}return t.join(``)},VM={version:`2.3.1`,ucs2:{decode:PM,encode:FM},decode:zM,encode:BM,toASCII:function(e){return NM(e,function(e){return TM.test(e)?`xn--`+BM(e):e})},toUnicode:function(e){return NM(e,function(e){return wM.test(e)?zM(e.slice(4).toLowerCase()):e})}},HM={default:{options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:`language-`,linkify:!1,typographer:!1,quotes:`“”‘’`,highlight:null,maxNesting:100},components:{core:{},block:{},inline:{}}},zero:{options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:`language-`,linkify:!1,typographer:!1,quotes:`“”‘’`,highlight:null,maxNesting:20},components:{core:{rules:[`normalize`,`block`,`inline`,`text_join`]},block:{rules:[`paragraph`]},inline:{rules:[`text`],rules2:[`balance_pairs`,`fragments_join`]}}},commonmark:{options:{html:!0,xhtmlOut:!0,breaks:!1,langPrefix:`language-`,linkify:!1,typographer:!1,quotes:`“”‘’`,highlight:null,maxNesting:20},components:{core:{rules:[`normalize`,`block`,`inline`,`text_join`]},block:{rules:[`blockquote`,`code`,`fence`,`heading`,`hr`,`html_block`,`lheading`,`list`,`reference`,`paragraph`]},inline:{rules:[`autolink`,`backticks`,`emphasis`,`entity`,`escape`,`html_inline`,`image`,`link`,`newline`,`text`],rules2:[`balance_pairs`,`emphasis`,`fragments_join`]}}}},UM=/^(vbscript|javascript|file|data):/,WM=/^data:image\/(gif|png|jpeg|webp);/;function GM(e){let t=e.trim().toLowerCase();return!UM.test(t)||WM.test(t)}var KM=[`http:`,`https:`,`mailto:`];function qM(e){let t=ak(e,!0);if(t.hostname&&(!t.protocol||KM.indexOf(t.protocol)>=0))try{t.hostname=VM.toASCII(t.hostname)}catch{}return KO(qO(t))}function JM(e){let t=ak(e,!0);if(t.hostname&&(!t.protocol||KM.indexOf(t.protocol)>=0))try{t.hostname=VM.toUnicode(t.hostname)}catch{}return UO(qO(t),UO.defaultChars+`%`)}function YM(e,t){if(!(this instanceof YM))return new YM(e,t);t||Ik(e)||(t=e||{},e=`default`),this.inline=new Xj,this.block=new hj,this.core=new GA,this.renderer=new gA,this.linkify=new mM,this.validateLink=GM,this.normalizeLink=qM,this.normalizeLinkText=JM,this.utils=Pk,this.helpers=zk({},mA),this.options={},this.configure(e),t&&this.set(t)}YM.prototype.set=function(e){return zk(this.options,e),this},YM.prototype.configure=function(e){let t=this;if(Ik(e)){let t=e;if(e=HM[t],!e)throw Error('Wrong `markdown-it` preset "'+t+`", check name`)}if(!e)throw Error("Wrong `markdown-it` preset, can't be empty");return e.options&&t.set(e.options),e.components&&Object.keys(e.components).forEach(function(n){e.components[n].rules&&t[n].ruler.enableOnly(e.components[n].rules),e.components[n].rules2&&t[n].ruler2.enableOnly(e.components[n].rules2)}),this},YM.prototype.enable=function(e,t){let n=[];Array.isArray(e)||(e=[e]),[`core`,`block`,`inline`].forEach(function(t){n=n.concat(this[t].ruler.enable(e,!0))},this),n=n.concat(this.inline.ruler2.enable(e,!0));let r=e.filter(function(e){return n.indexOf(e)<0});if(r.length&&!t)throw Error(`MarkdownIt. Failed to enable unknown rule(s): `+r);return this},YM.prototype.disable=function(e,t){let n=[];Array.isArray(e)||(e=[e]),[`core`,`block`,`inline`].forEach(function(t){n=n.concat(this[t].ruler.disable(e,!0))},this),n=n.concat(this.inline.ruler2.disable(e,!0));let r=e.filter(function(e){return n.indexOf(e)<0});if(r.length&&!t)throw Error(`MarkdownIt. Failed to disable unknown rule(s): `+r);return this},YM.prototype.use=function(e){let t=[this].concat(Array.prototype.slice.call(arguments,1));return e.apply(e,t),this},YM.prototype.parse=function(e,t){if(typeof e!=`string`)throw Error(`Input data should be a String`);let n=new this.core.State(e,this,t);return this.core.process(n),n.tokens},YM.prototype.render=function(e,t){return t||={},this.renderer.render(this.parse(e,t),this.options,t)},YM.prototype.parseInline=function(e,t){let n=new this.core.State(e,this,t);return n.inlineMode=!0,this.core.process(n),n.tokens},YM.prototype.renderInline=function(e,t){return t||={},this.renderer.render(this.parseInline(e,t),this.options,t)};var XM=new yg({nodes:{doc:{content:`block+`},paragraph:{content:`inline*`,group:`block`,parseDOM:[{tag:`p`}],toDOM(){return[`p`,0]}},blockquote:{content:`block+`,group:`block`,parseDOM:[{tag:`blockquote`}],toDOM(){return[`blockquote`,0]}},horizontal_rule:{group:`block`,parseDOM:[{tag:`hr`}],toDOM(){return[`div`,[`hr`]]}},heading:{attrs:{level:{default:1}},content:`(text | image)*`,group:`block`,defining:!0,parseDOM:[{tag:`h1`,attrs:{level:1}},{tag:`h2`,attrs:{level:2}},{tag:`h3`,attrs:{level:3}},{tag:`h4`,attrs:{level:4}},{tag:`h5`,attrs:{level:5}},{tag:`h6`,attrs:{level:6}}],toDOM(e){return[`h`+e.attrs.level,0]}},code_block:{content:`text*`,group:`block`,code:!0,defining:!0,marks:``,attrs:{params:{default:``}},parseDOM:[{tag:`pre`,preserveWhitespace:`full`,getAttrs:e=>({params:e.getAttribute(`data-params`)||``})}],toDOM(e){return[`pre`,e.attrs.params?{"data-params":e.attrs.params}:{},[`code`,0]]}},ordered_list:{content:`list_item+`,group:`block`,attrs:{order:{default:1},tight:{default:!1}},parseDOM:[{tag:`ol`,getAttrs(e){return{order:e.hasAttribute(`start`)?+e.getAttribute(`start`):1,tight:e.hasAttribute(`data-tight`)}}}],toDOM(e){return[`ol`,{start:e.attrs.order==1?null:e.attrs.order,"data-tight":e.attrs.tight?`true`:null},0]}},bullet_list:{content:`list_item+`,group:`block`,attrs:{tight:{default:!1}},parseDOM:[{tag:`ul`,getAttrs:e=>({tight:e.hasAttribute(`data-tight`)})}],toDOM(e){return[`ul`,{"data-tight":e.attrs.tight?`true`:null},0]}},list_item:{content:`block+`,defining:!0,parseDOM:[{tag:`li`}],toDOM(){return[`li`,0]}},text:{group:`inline`},image:{inline:!0,attrs:{src:{},alt:{default:null},title:{default:null}},group:`inline`,draggable:!0,parseDOM:[{tag:`img[src]`,getAttrs(e){return{src:e.getAttribute(`src`),title:e.getAttribute(`title`),alt:e.getAttribute(`alt`)}}}],toDOM(e){return[`img`,e.attrs]}},hard_break:{inline:!0,group:`inline`,selectable:!1,parseDOM:[{tag:`br`}],toDOM(){return[`br`]}}},marks:{em:{parseDOM:[{tag:`i`},{tag:`em`},{style:`font-style=italic`},{style:`font-style=normal`,clearMark:e=>e.type.name==`em`}],toDOM(){return[`em`]}},strong:{parseDOM:[{tag:`strong`},{tag:`b`,getAttrs:e=>e.style.fontWeight!=`normal`&&null},{style:`font-weight=400`,clearMark:e=>e.type.name==`strong`},{style:`font-weight`,getAttrs:e=>/^(bold(er)?|[5-9]\d{2,})$/.test(e)&&null}],toDOM(){return[`strong`]}},link:{attrs:{href:{},title:{default:null}},inclusive:!1,parseDOM:[{tag:`a[href]`,getAttrs(e){return{href:e.getAttribute(`href`),title:e.getAttribute(`title`)}}}],toDOM(e){return[`a`,e.attrs]}},code:{code:!0,parseDOM:[{tag:`code`}],toDOM(){return[`code`]}}}});function ZM(e,t){if(e.isText&&t.isText&&Oh.sameSet(e.marks,t.marks))return e.withText(e.text+t.text)}var QM=class{constructor(e,t){this.schema=e,this.tokenHandlers=t,this.stack=[{type:e.topNodeType,attrs:null,content:[],marks:Oh.none}]}top(){return this.stack[this.stack.length-1]}push(e){this.stack.length&&this.top().content.push(e)}addText(e){if(!e)return;let t=this.top(),n=t.content,r=n[n.length-1],i=this.schema.text(e,t.marks),a;r&&(a=ZM(r,i))?n[n.length-1]=a:n.push(i)}openMark(e){let t=this.top();t.marks=e.addToSet(t.marks)}closeMark(e){let t=this.top();t.marks=e.removeFromSet(t.marks)}parseTokens(e){for(let t=0;t<e.length;t++){let n=e[t],r=this.tokenHandlers[n.type];if(!r)throw Error("Token type `"+n.type+"` not supported by Markdown parser");r(this,n,e,t)}}addNode(e,t,n){let r=this.top(),i=e.createAndFill(t,n,r?r.marks:[]);return i?(this.push(i),i):null}openNode(e,t){this.stack.push({type:e,attrs:t,content:[],marks:Oh.none})}closeNode(){let e=this.stack.pop();return this.addNode(e.type,e.attrs,e.content)}};function $M(e,t,n,r){return e.getAttrs?e.getAttrs(t,n,r):e.attrs instanceof Function?e.attrs(t):e.attrs}function eN(e,t){return e.noCloseToken||t==`code_inline`||t==`code_block`||t==`fence`}function tN(e){return e[e.length-1]==`
114
+ `?e.slice(0,e.length-1):e}function nN(){}function rN(e,t){let n=Object.create(null);for(let r in t){let i=t[r];if(i.block){let t=e.nodeType(i.block);eN(i,r)?n[r]=(e,n,r,a)=>{e.openNode(t,$M(i,n,r,a)),e.addText(tN(n.content)),e.closeNode()}:(n[r+`_open`]=(e,n,r,a)=>e.openNode(t,$M(i,n,r,a)),n[r+`_close`]=e=>e.closeNode())}else if(i.node){let t=e.nodeType(i.node);n[r]=(e,n,r,a)=>e.addNode(t,$M(i,n,r,a))}else if(i.mark){let t=e.marks[i.mark];eN(i,r)?n[r]=(e,n,r,a)=>{e.openMark(t.create($M(i,n,r,a))),e.addText(tN(n.content)),e.closeMark(t)}:(n[r+`_open`]=(e,n,r,a)=>e.openMark(t.create($M(i,n,r,a))),n[r+`_close`]=e=>e.closeMark(t))}else if(i.ignore)eN(i,r)?n[r]=nN:(n[r+`_open`]=nN,n[r+`_close`]=nN);else throw RangeError(`Unrecognized parsing spec `+JSON.stringify(i))}return n.text=(e,t)=>e.addText(t.content),n.inline=(e,t)=>e.parseTokens(t.children),n.softbreak=n.softbreak||(e=>e.addText(` `)),n}var iN=class{constructor(e,t,n){this.schema=e,this.tokenizer=t,this.tokens=n,this.tokenHandlers=rN(e,n)}parse(e,t={}){let n=new QM(this.schema,this.tokenHandlers),r;n.parseTokens(this.tokenizer.parse(e,t));do r=n.closeNode();while(n.stack.length);return r||this.schema.topNodeType.createAndFill()}};function aN(e,t){for(;++t<e.length;)if(e[t].type!=`list_item_open`)return e[t].hidden;return!1}new iN(XM,YM(`commonmark`,{html:!1}),{blockquote:{block:`blockquote`},paragraph:{block:`paragraph`},list_item:{block:`list_item`},bullet_list:{block:`bullet_list`,getAttrs:(e,t,n)=>({tight:aN(t,n)})},ordered_list:{block:`ordered_list`,getAttrs:(e,t,n)=>({order:+e.attrGet(`start`)||1,tight:aN(t,n)})},heading:{block:`heading`,getAttrs:e=>({level:+e.tag.slice(1)})},code_block:{block:`code_block`,noCloseToken:!0},fence:{block:`code_block`,getAttrs:e=>({params:e.info||``}),noCloseToken:!0},hr:{node:`horizontal_rule`},image:{node:`image`,getAttrs:e=>({src:e.attrGet(`src`),title:e.attrGet(`title`)||null,alt:e.children[0]&&e.children[0].content||null})},hardbreak:{node:`hard_break`},em:{mark:`em`},strong:{mark:`strong`},link:{mark:`link`,getAttrs:e=>({href:e.attrGet(`href`),title:e.attrGet(`title`)||null})},code_inline:{mark:`code`,noCloseToken:!0}});var oN={open:``,close:``,mixable:!0},sN=new class{constructor(e,t,n={}){this.nodes=e,this.marks=t,this.options=n}serialize(e,t={}){t=Object.assign({},this.options,t);let n=new uN(this.nodes,this.marks,t);return n.renderContent(e),n.out}}({blockquote(e,t){e.wrapBlock(`> `,null,t,()=>e.renderContent(t))},code_block(e,t){let n=t.textContent.match(/`{3,}/gm),r=n?n.sort().slice(-1)[0]+"`":"```";e.write(r+(t.attrs.params||``)+`
115
+ `),e.text(t.textContent,!1),e.write(`
116
+ `),e.write(r),e.closeBlock(t)},heading(e,t){e.write(e.repeat(`#`,t.attrs.level)+` `),e.renderInline(t,!1),e.closeBlock(t)},horizontal_rule(e,t){e.write(t.attrs.markup||`---`),e.closeBlock(t)},bullet_list(e,t){e.renderList(t,` `,()=>(t.attrs.bullet||`*`)+` `)},ordered_list(e,t){let n=t.attrs.order??1,r=String(n+t.childCount-1).length,i=e.repeat(` `,r+2);e.renderList(t,i,t=>{let i=String(n+t);return e.repeat(` `,r-i.length)+i+`. `})},list_item(e,t){e.renderContent(t)},paragraph(e,t){e.renderInline(t),e.closeBlock(t)},image(e,t){e.write(`![`+e.esc(t.attrs.alt||``)+`](`+t.attrs.src.replace(/[\(\)]/g,`\\$&`)+(t.attrs.title?` "`+t.attrs.title.replace(/"/g,`\\"`)+`"`:``)+`)`)},hard_break(e,t,n,r){for(let i=r+1;i<n.childCount;i++)if(n.child(i).type!=t.type){e.write(`\\
117
+ `);return}},text(e,t){e.text(t.text,!e.inAutolink)}},{em:{open:`*`,close:`*`,mixable:!0,expelEnclosingWhitespace:!0},strong:{open:`**`,close:`**`,mixable:!0,expelEnclosingWhitespace:!0},link:{open(e,t,n,r){return e.inAutolink=lN(t,n,r),e.inAutolink?`<`:`[`},close(e,t,n,r){let{inAutolink:i}=e;return e.inAutolink=void 0,i?`>`:`](`+t.attrs.href.replace(/[\(\)"]/g,`\\$&`)+(t.attrs.title?` "${t.attrs.title.replace(/"/g,`\\"`)}"`:``)+`)`},mixable:!0},code:{open(e,t,n,r){return cN(n.child(r),-1)},close(e,t,n,r){return cN(n.child(r-1),1)},escape:!1}});function cN(e,t){let n=/`+/g,r,i=0;if(e.isText)for(;r=n.exec(e.text);)i=Math.max(i,r[0].length);let a=i>0&&t>0?" `":"`";for(let e=0;e<i;e++)a+="`";return i>0&&t<0&&(a+=` `),a}function lN(e,t,n){if(e.attrs.title||!/^\w+:/.test(e.attrs.href))return!1;let r=t.child(n);return!r.isText||r.text!=e.attrs.href||r.marks[r.marks.length-1]!=e?!1:n==t.childCount-1||!e.isInSet(t.child(n+1).marks)}var uN=class{constructor(e,t,n){this.nodes=e,this.marks=t,this.options=n,this.delim=``,this.out=``,this.closed=null,this.inAutolink=void 0,this.atBlockStart=!1,this.inTightList=!1,this.options.tightLists===void 0&&(this.options.tightLists=!1),this.options.hardBreakNodeName===void 0&&(this.options.hardBreakNodeName=`hard_break`)}flushClose(e=2){if(this.closed){if(this.atBlank()||(this.out+=`
118
+ `),e>1){let t=this.delim,n=/\s+$/.exec(t);n&&(t=t.slice(0,t.length-n[0].length));for(let n=1;n<e;n++)this.out+=t+`
119
+ `}this.closed=null}}getMark(e){let t=this.marks[e];if(!t){if(this.options.strict!==!1)throw Error(`Mark type \`${e}\` not supported by Markdown renderer`);t=oN}return t}wrapBlock(e,t,n,r){let i=this.delim;this.write(t??e),this.delim+=e,r(),this.delim=i,this.closeBlock(n)}atBlank(){return/(^|\n)$/.test(this.out)}ensureNewLine(){this.atBlank()||(this.out+=`
120
+ `)}write(e){this.flushClose(),this.delim&&this.atBlank()&&(this.out+=this.delim),e&&(this.out+=e)}closeBlock(e){this.closed=e}text(e,t=!0){let n=e.split(`
121
+ `);for(let e=0;e<n.length;e++)this.write(),!t&&n[e][0]==`[`&&/(^|[^\\])\!$/.test(this.out)&&(this.out=this.out.slice(0,this.out.length-1)+`\\!`),this.out+=t?this.esc(n[e],this.atBlockStart):n[e],e!=n.length-1&&(this.out+=`
122
+ `)}render(e,t,n){if(this.nodes[e.type.name])this.nodes[e.type.name](this,e,t,n);else if(this.options.strict!==!1)throw Error("Token type `"+e.type.name+"` not supported by Markdown renderer");else e.type.isLeaf||(e.type.inlineContent?this.renderInline(e):this.renderContent(e),e.isBlock&&this.closeBlock(e))}renderContent(e){e.forEach((t,n,r)=>this.render(t,e,r))}renderInline(e,t=!0){this.atBlockStart=t;let n=[],r=``,i=(t,i,a)=>{let o=t?t.marks:[];t&&t.type.name===this.options.hardBreakNodeName&&(o=o.filter(t=>{if(a+1==e.childCount)return!1;let n=e.child(a+1);return t.isInSet(n.marks)&&(!n.isText||/\S/.test(n.text))}));let s=r;if(r=``,t&&t.isText&&o.some(e=>{let t=this.getMark(e.type.name);return t&&t.expelEnclosingWhitespace&&!e.isInSet(n)})){let[e,r,i]=/^(\s*)(.*)$/m.exec(t.text);r&&(s+=r,t=i?t.withText(i):null,t||(o=n))}if(t&&t.isText&&o.some(t=>{let n=this.getMark(t.type.name);return n&&n.expelEnclosingWhitespace&&!this.isMarkAhead(e,a+1,t)})){let[e,i,a]=/^(.*?)(\s*)$/m.exec(t.text);a&&(r=a,t=i?t.withText(i):null,t||(o=n))}let c=o.length?o[o.length-1]:null,l=c&&this.getMark(c.type.name).escape===!1,u=o.length-+!!l;outer:for(let e=0;e<u;e++){let t=o[e];if(!this.getMark(t.type.name).mixable)break;for(let r=0;r<n.length;r++){let i=n[r];if(!this.getMark(i.type.name).mixable)break;if(t.eq(i)){e>r?o=o.slice(0,r).concat(t).concat(o.slice(r,e)).concat(o.slice(e+1,u)):r>e&&(o=o.slice(0,e).concat(o.slice(e+1,r)).concat(t).concat(o.slice(r,u)));continue outer}}}let d=0;for(;d<Math.min(n.length,u)&&o[d].eq(n[d]);)++d;for(;d<n.length;)this.text(this.markString(n.pop(),!1,e,a),!1);if(s&&this.text(s),t){for(;n.length<u;){let t=o[n.length];n.push(t),this.text(this.markString(t,!0,e,a),!1),this.atBlockStart=!1}l&&t.isText?this.text(this.markString(c,!0,e,a)+t.text+this.markString(c,!1,e,a+1),!1):this.render(t,e,a),this.atBlockStart=!1}t?.isText&&t.nodeSize>0&&(this.atBlockStart=!1)};e.forEach(i),i(null,0,e.childCount),this.atBlockStart=!1}renderList(e,t,n){this.closed&&this.closed.type==e.type?this.flushClose(3):this.inTightList&&this.flushClose(1);let r=e.attrs.tight===void 0?this.options.tightLists:e.attrs.tight,i=this.inTightList;this.inTightList=r,e.forEach((i,a,o)=>{o&&r&&this.flushClose(1),this.wrapBlock(t,n(o),e,()=>this.render(i,e,o))}),this.inTightList=i}esc(e,t=!1){return e=e.replace(/[`*\\~\[\]_]/g,(t,n)=>t==`_`&&n>0&&n+1<e.length&&e[n-1].match(/\w/)&&e[n+1].match(/\w/)?t:`\\`+t),t&&(e=e.replace(/^(\+[ ]|[\-*>])/,`\\$&`).replace(/^(\s*)(#{1,6})(\s|$)/,`$1\\$2$3`).replace(/^(\s*\d+)\.\s/,`$1\\. `)),this.options.escapeExtraCharacters&&(e=e.replace(this.options.escapeExtraCharacters,`\\$&`)),e}quote(e){let t=e.indexOf(`"`)==-1?`""`:e.indexOf(`'`)==-1?`''`:`()`;return t[0]+e+t[1]}repeat(e,t){let n=``;for(let r=0;r<t;r++)n+=e;return n}markString(e,t,n,r){let i=this.getMark(e.type.name),a=t?i.open:i.close;return typeof a==`string`?a:a(this,e,n,r)}getEnclosingWhitespace(e){return{leading:(e.match(/^(\s+)/)||[void 0])[0],trailing:(e.match(/(\s+)$/)||[void 0])[0]}}isMarkAhead(e,t,n){for(;;t++){if(t>=e.childCount)return!1;let r=e.child(t);if(r.type.name!=this.options.hardBreakNodeName)return n.isInSet(r.marks);t++}}},dN=t(n(((e,t)=>{var n=!0,r=!1,i=!1;t.exports=function(e,t){t&&(n=!t.enabled,r=!!t.label,i=!!t.labelAfter),e.core.ruler.after(`inline`,`github-task-lists`,function(e){for(var t=e.tokens,r=2;r<t.length;r++)s(t,r)&&(c(t[r],e.Token),a(t[r-2],`class`,`task-list-item`+(n?``:` enabled`)),a(t[o(t,r-2)],`class`,`contains-task-list`))})};function a(e,t,n){var r=e.attrIndex(t),i=[t,n];r<0?e.attrPush(i):e.attrs[r]=i}function o(e,t){for(var n=e[t].level-1,r=t-1;r>=0;r--)if(e[r].level===n)return r;return-1}function s(e,t){return p(e[t])&&m(e[t-1])&&h(e[t-2])&&g(e[t])}function c(e,t){if(e.children.unshift(l(e,t)),e.children[1].content=e.children[1].content.slice(3),e.content=e.content.slice(3),r)if(i){e.children.pop();var n=`task-item-`+Math.ceil(1e4*1e3*Math.random()-1e3);e.children[0].content=e.children[0].content.slice(0,-1)+` id="`+n+`">`,e.children.push(f(e.content,n,t))}else e.children.unshift(u(t)),e.children.push(d(t))}function l(e,t){var r=new t(`html_inline`,``,0),i=n?` disabled="" `:``;return e.content.indexOf(`[ ] `)===0?r.content=`<input class="task-list-item-checkbox"`+i+`type="checkbox">`:(e.content.indexOf(`[x] `)===0||e.content.indexOf(`[X] `)===0)&&(r.content=`<input class="task-list-item-checkbox" checked=""`+i+`type="checkbox">`),r}function u(e){var t=new e(`html_inline`,``,0);return t.content=`<label>`,t}function d(e){var t=new e(`html_inline`,``,0);return t.content=`</label>`,t}function f(e,t,n){var r=new n(`html_inline`,``,0);return r.content=`<label class="task-list-item-label" for="`+t+`">`+e+`</label>`,r.attrs=[{for:t}],r}function p(e){return e.type===`inline`}function m(e){return e.type===`paragraph_open`}function h(e){return e.type===`list_item_open`}function g(e){return e.content.indexOf(`[ ] `)===0||e.content.indexOf(`[x] `)===0||e.content.indexOf(`[X] `)===0}}))(),1),fN=Object.defineProperty,pN=(e,t,n)=>t in e?fN(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,mN=(e,t,n)=>(pN(e,typeof t==`symbol`?t:t+``,n),n),hN=zw.create({name:`markdownTightLists`,addOptions:()=>({tight:!0,tightClass:`tight`,listTypes:[`bulletList`,`orderedList`]}),addGlobalAttributes(){return[{types:this.options.listTypes,attributes:{tight:{default:this.options.tight,parseHTML:e=>e.getAttribute(`data-tight`)===`true`||!e.querySelector(`p`),renderHTML:e=>({class:e.tight?this.options.tightClass:null,"data-tight":e.tight?`true`:null})}}}]},addCommands(){var e=this;return{toggleTight:function(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null;return n=>{let{editor:r,commands:i}=n;function a(e){if(!r.isActive(e))return!1;let n=r.getAttributes(e);return i.updateAttributes(e,{tight:t??!(n!=null&&n.tight)})}return e.options.listTypes.some(e=>a(e))}}}}}),gN=YM();function _N(e,t){return gN.inline.State.prototype.scanDelims.call({src:e,posMax:e.length}),new gN.inline.State(e,null,null,[]).scanDelims(t,!0)}function vN(e,t,n,r){let i=e.substring(0,n)+e.substring(n+t.length);return i=i.substring(0,n+r)+t+i.substring(n+r),i}function yN(e,t,n,r){let i=n,a=e;for(;i<r&&!_N(a,i).can_open;)a=vN(a,t,i,1),i++;return{text:a,from:i,to:r}}function bN(e,t,n,r){let i=r,a=e;for(;i>n&&!_N(a,i).can_close;)a=vN(a,t,i,-1),i--;return{text:a,from:n,to:i}}function xN(e,t,n,r){let i={text:e,from:n,to:r};return i=yN(i.text,t,i.from,i.to),i=bN(i.text,t,i.from,i.to),i.to-i.from<t.length+1&&(i.text=i.text.substring(0,i.from)+i.text.substring(i.to+t.length)),i.text}var SN=class extends uN{constructor(e,t,n){super(e,t,n??{}),mN(this,`inTable`,!1),this.inlines=[]}render(e,t,n){super.render(e,t,n);let r=this.inlines[this.inlines.length-1];if(r!=null&&r.start&&r!=null&&r.end){let{delimiter:e,start:t,end:n}=this.normalizeInline(r);this.out=xN(this.out,e,t,n),this.inlines.pop()}}markString(e,t,n,r){let i=this.marks[e.type.name];if(i.expelEnclosingWhitespace)if(t)this.inlines.push({start:this.out.length,delimiter:i.open});else{let e=this.inlines.pop();this.inlines.push({...e,end:this.out.length})}return super.markString(e,t,n,r)}normalizeInline(e){let{start:t,end:n}=e;for(;this.out.charAt(t).match(/\s/);)t++;return{...e,start:t}}},CN=kw.create({name:`markdownHTMLMark`,addStorage(){return{markdown:{serialize:{open(e,t){return this.editor.storage.markdown.options.html?wN(t)?.[0]??``:(console.warn(`Tiptap Markdown: "${t.type.name}" mark is only available in html mode`),``)},close(e,t){return this.editor.storage.markdown.options.html?wN(t)?.[1]??``:``}},parse:{}}}}});function wN(e){let t=e.type.schema,n=t.text(` `,[e]),r=yw(X.from(n),t).match(/^(<.*?>) (<\/.*?>)$/);return r?[r[1],r[2]]:null}function TN(e){let t=`<body>${e}</body>`;return new window.DOMParser().parseFromString(t,`text/html`).body}function EN(e){return e?.replace(/</g,`&lt;`).replace(/>/g,`&gt;`)}function DN(e){let t=e.parentElement,n=t.cloneNode();for(;t.firstChild&&t.firstChild!==e;)n.appendChild(t.firstChild);n.childNodes.length>0&&t.parentElement.insertBefore(n,t),t.parentElement.insertBefore(e,t),t.childNodes.length===0&&t.remove()}function ON(e){let t=e.parentNode;for(;e.firstChild;)t.insertBefore(e.firstChild,e);t.removeChild(e)}var kN=VE.create({name:`markdownHTMLNode`,addStorage(){return{markdown:{serialize(e,t,n){this.editor.storage.markdown.options.html?e.write(AN(t,n)):(console.warn(`Tiptap Markdown: "${t.type.name}" node is only available in html mode`),e.write(`[${t.type.name}]`)),t.isBlock&&e.closeBlock(t)},parse:{}}}}});function AN(e,t){let n=e.type.schema,r=yw(X.from(e),n);return e.isBlock&&(t instanceof X||t.type.name===n.topNodeType.name)?jN(r):r}function jN(e){let t=TN(e).firstElementChild;return t.innerHTML=t.innerHTML.trim()?`
123
+ ${t.innerHTML}
124
+ `:`
125
+ `,t.outerHTML}var MN=VE.create({name:`blockquote`}).extend({addStorage(){return{markdown:{serialize:sN.nodes.blockquote,parse:{}}}}}),NN=VE.create({name:`bulletList`}).extend({addStorage(){return{markdown:{serialize(e,t){return e.renderList(t,` `,()=>(this.editor.storage.markdown.options.bulletListMarker||`-`)+` `)},parse:{}}}}}),PN=VE.create({name:`codeBlock`}).extend({addStorage(){return{markdown:{serialize(e,t){e.write("```"+(t.attrs.language||``)+`
126
+ `),e.text(t.textContent,!1),e.ensureNewLine(),e.write("```"),e.closeBlock(t)},parse:{setup(e){e.set({langPrefix:this.options.languageClassPrefix??`language-`})},updateDOM(e){e.innerHTML=e.innerHTML.replace(/\n<\/code><\/pre>/g,`</code></pre>`)}}}}}}),FN=VE.create({name:`hardBreak`}).extend({addStorage(){return{markdown:{serialize(e,t,n,r){for(let i=r+1;i<n.childCount;i++)if(n.child(i).type!=t.type){e.write(e.inTable?kN.storage.markdown.serialize.call(this,e,t,n):`\\
127
+ `);return}},parse:{}}}}}),IN=VE.create({name:`heading`}).extend({addStorage(){return{markdown:{serialize:sN.nodes.heading,parse:{}}}}}),LN=VE.create({name:`horizontalRule`}).extend({addStorage(){return{markdown:{serialize:sN.nodes.horizontal_rule,parse:{}}}}}),RN=VE.create({name:`image`}).extend({addStorage(){return{markdown:{serialize:sN.nodes.image,parse:{}}}}}),zN=VE.create({name:`listItem`}).extend({addStorage(){return{markdown:{serialize:sN.nodes.list_item,parse:{}}}}}),BN=VE.create({name:`orderedList`});function VN(e,t,n){let r=0;for(;n-r>0&&t.child(n-r-1).type.name===e.type.name;r++);return r}var HN=BN.extend({addStorage(){return{markdown:{serialize(e,t,n,r){let i=t.attrs.start||1,a=String(i+t.childCount-1).length,o=e.repeat(` `,a+2),s=VN(t,n,r)%2?`) `:`. `;e.renderList(t,o,t=>{let n=String(i+t);return e.repeat(` `,a-n.length)+n+s})},parse:{}}}}}),UN=VE.create({name:`paragraph`}).extend({addStorage(){return{markdown:{serialize:sN.nodes.paragraph,parse:{}}}}});function WN(e){var t;return(e==null||(t=e.content)==null?void 0:t.content)??[]}var GN=VE.create({name:`table`}).extend({addStorage(){return{markdown:{serialize(e,t,n){if(!qN(t)){kN.storage.markdown.serialize.call(this,e,t,n);return}e.inTable=!0,t.forEach((t,n,r)=>{if(e.write(`| `),t.forEach((t,n,r)=>{r&&e.write(` | `);let i=t.firstChild;i.textContent.trim()&&e.renderInline(i)}),e.write(` |`),e.ensureNewLine(),!r){let n=Array.from({length:t.childCount}).map(()=>`---`).join(` | `);e.write(`| ${n} |`),e.ensureNewLine()}}),e.closeBlock(t),e.inTable=!1},parse:{}}}}});function KN(e){return e.attrs.colspan>1||e.attrs.rowspan>1}function qN(e){let t=WN(e),n=t[0],r=t.slice(1);return!(WN(n).some(e=>e.type.name!==`tableHeader`||KN(e)||e.childCount>1)||r.some(e=>WN(e).some(e=>e.type.name===`tableHeader`||KN(e)||e.childCount>1)))}var JN=[MN,NN,PN,FN,IN,LN,kN,RN,zN,HN,UN,GN,VE.create({name:`taskItem`}).extend({addStorage(){return{markdown:{serialize(e,t){let n=t.attrs.checked?`[x]`:`[ ]`;e.write(`${n} `),e.renderContent(t)},parse:{updateDOM(e){[...e.querySelectorAll(`.task-list-item`)].forEach(e=>{let t=e.querySelector(`input`);e.setAttribute(`data-type`,`taskItem`),t&&(e.setAttribute(`data-checked`,t.checked),t.remove())})}}}}}}),VE.create({name:`taskList`}).extend({addStorage(){return{markdown:{serialize:NN.storage.markdown.serialize,parse:{setup(e){e.use(dN.default)},updateDOM(e){[...e.querySelectorAll(`.contains-task-list`)].forEach(e=>{e.setAttribute(`data-type`,`taskList`)})}}}}}}),VE.create({name:`text`}).extend({addStorage(){return{markdown:{serialize(e,t){e.text(EN(t.text))},parse:{}}}}}),kw.create({name:`bold`}).extend({addStorage(){return{markdown:{serialize:sN.marks.strong,parse:{}}}}}),kw.create({name:`code`}).extend({addStorage(){return{markdown:{serialize:sN.marks.code,parse:{}}}}}),CN,kw.create({name:`italic`}).extend({addStorage(){return{markdown:{serialize:sN.marks.em,parse:{}}}}}),kw.create({name:`link`}).extend({addStorage(){return{markdown:{serialize:sN.marks.link,parse:{}}}}}),kw.create({name:`strike`}).extend({addStorage(){return{markdown:{serialize:{open:`~~`,close:`~~`,expelEnclosingWhitespace:!0},parse:{}}}}})];function YN(e){let t=e.storage?.markdown,n=JN.find(t=>t.name===e.name)?.storage.markdown;return t||n?{...n,...t}:null}var XN=class{constructor(e){mN(this,`editor`,null),this.editor=e}serialize(e){let t=new SN(this.nodes,this.marks,{hardBreakNodeName:FN.name});return t.renderContent(e),t.out}get nodes(){return{...Object.fromEntries(Object.keys(this.editor.schema.nodes).map(e=>[e,this.serializeNode(kN)])),...Object.fromEntries(this.editor.extensionManager.extensions.filter(e=>e.type===`node`&&this.serializeNode(e)).map(e=>[e.name,this.serializeNode(e)])??[])}}get marks(){return{...Object.fromEntries(Object.keys(this.editor.schema.marks).map(e=>[e,this.serializeMark(CN)])),...Object.fromEntries(this.editor.extensionManager.extensions.filter(e=>e.type===`mark`&&this.serializeMark(e)).map(e=>[e.name,this.serializeMark(e)])??[])}}serializeNode(e){var t;return(t=YN(e))==null||(t=t.serialize)==null?void 0:t.bind({editor:this.editor,options:e.options})}serializeMark(e){let t=YN(e)?.serialize;return t?{...t,open:typeof t.open==`function`?t.open.bind({editor:this.editor,options:e.options}):t.open,close:typeof t.close==`function`?t.close.bind({editor:this.editor,options:e.options}):t.close}:null}},ZN=class{constructor(e,t){mN(this,`editor`,null),mN(this,`md`,null);let{html:n,linkify:r,breaks:i}=t;this.editor=e,this.md=this.withPatchedRenderer(YM({html:n,linkify:r,breaks:i}))}parse(e){let{inline:t}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(typeof e==`string`){this.editor.extensionManager.extensions.forEach(e=>{var t;return(t=YN(e))==null||(t=t.parse)==null||(t=t.setup)==null?void 0:t.call({editor:this.editor,options:e.options},this.md)});let n=TN(this.md.render(e));return this.editor.extensionManager.extensions.forEach(e=>{var t;return(t=YN(e))==null||(t=t.parse)==null||(t=t.updateDOM)==null?void 0:t.call({editor:this.editor,options:e.options},n)}),this.normalizeDOM(n,{inline:t,content:e}),n.innerHTML}return e}normalizeDOM(e,t){let{inline:n,content:r}=t;return this.normalizeBlocks(e),e.querySelectorAll(`*`).forEach(e=>{e.nextSibling?.nodeType===Node.TEXT_NODE&&!e.closest(`pre`)&&(e.nextSibling.textContent=e.nextSibling.textContent.replace(/^\n/,``))}),n&&this.normalizeInline(e,r),e}normalizeBlocks(e){let t=Object.values(this.editor.schema.nodes).filter(e=>e.isBlock).map(e=>e.spec.parseDOM?.map(e=>e.tag)).flat().filter(Boolean).join(`,`);t&&[...e.querySelectorAll(t)].forEach(e=>{e.parentElement.matches(`p`)&&DN(e)})}normalizeInline(e,t){var n;if((n=e.firstElementChild)!=null&&n.matches(`p`)){let n=e.firstElementChild,{nextElementSibling:r}=n,i=t.match(/^\s+/)?.[0]??``,a=r?``:t.match(/\s+$/)?.[0]??``;if(t.match(/^\n\n/)){n.innerHTML=`${n.innerHTML}${a}`;return}ON(n),e.innerHTML=`${i}${e.innerHTML}${a}`}}withPatchedRenderer(e){let t=e=>function(){let t=e(...arguments);return t===`
128
+ `?t:t[t.length-1]===`
129
+ `?t.slice(0,-1):t};return e.renderer.rules.hardbreak=t(e.renderer.rules.hardbreak),e.renderer.rules.softbreak=t(e.renderer.rules.softbreak),e.renderer.rules.fence=t(e.renderer.rules.fence),e.renderer.rules.code_block=t(e.renderer.rules.code_block),e.renderer.renderToken=t(e.renderer.renderToken.bind(e.renderer)),e}},QN=zw.create({name:`markdownClipboard`,addOptions(){return{transformPastedText:!1,transformCopiedText:!1}},addProseMirrorPlugins(){return[new Tv({key:new Ov(`markdownClipboard`),props:{clipboardTextParser:(e,t,n)=>{if(n||!this.options.transformPastedText)return null;let r=this.editor.storage.markdown.parser.parse(e,{inline:!0});return Cg.fromSchema(this.editor.schema).parseSlice(TN(r),{preserveWhitespace:!0,context:t})},clipboardTextSerializer:e=>this.options.transformCopiedText?this.editor.storage.markdown.serializer.serialize(e.content):null}})]}}),$N=zw.create({name:`markdown`,priority:50,addOptions(){return{html:!0,tightLists:!0,tightListClass:`tight`,bulletListMarker:`-`,linkify:!1,breaks:!1,transformPastedText:!1,transformCopiedText:!1}},addCommands(){let e=ME.Commands.config.addCommands();return{setContent:(t,n,r)=>i=>e.setContent(i.editor.storage.markdown.parser.parse(t),n,r)(i),insertContentAt:(t,n,r)=>i=>e.insertContentAt(t,i.editor.storage.markdown.parser.parse(n,{inline:!0}),r)(i)}},onBeforeCreate(){this.editor.storage.markdown={options:{...this.options},parser:new ZN(this.editor,this.options),serializer:new XN(this.editor),getMarkdown:()=>this.editor.storage.markdown.serializer.serialize(this.editor.state.doc)},this.editor.options.initialContent=this.editor.options.content,this.editor.options.content=this.editor.storage.markdown.parser.parse(this.editor.options.content)},onCreate(){this.editor.options.content=this.editor.options.initialContent,delete this.editor.options.initialContent},addStorage(){return{}},addExtensions(){return[hN.configure({tight:this.options.tightLists,tightClass:this.options.tightListClass}),QN.configure({transformPastedText:this.options.transformPastedText,transformCopiedText:this.options.transformCopiedText})]}}),eP=VE.create({name:`token`,group:`inline`,inline:!0,atom:!0,selectable:!0,addAttributes(){return{kind:{default:`file`},label:{default:``},text:{default:``}}},parseHTML(){return[{tag:`span[data-token]`}]},renderHTML({node:e,HTMLAttributes:t}){return[`span`,cw(t,{"data-token":e.attrs.kind,class:`pe-token`}),e.attrs.label||e.attrs.text]},renderText({node:e}){return e.attrs.text},addStorage(){return{markdown:{serialize(e,t){e.write(t.attrs.text)},parse:{}}}}});function tP(e){let{char:t,allowSpaces:n,allowToIncludeChar:r,allowedPrefixes:i,startOfLine:a,$position:o}=e,s=n&&!r,c=WE(t),l=RegExp(`\\s${c}$`),u=a?`^`:``,d=r?``:c,f=RegExp(s?`${u}${c}.*?(?=\\s${d}|$)`:`${u}(?:^)?${c}[^\\s${d}]*`,`gm`),p=o.nodeBefore?.isText&&o.nodeBefore.text;if(!p)return null;let m=o.pos-p.length,h=Array.from(p.matchAll(f)).pop();if(!h||h.input===void 0||h.index===void 0)return null;let g=h.input.slice(Math.max(0,h.index-1),h.index),_=RegExp(`^[${i?.join(``)}\0]?$`).test(g);if(i!==null&&!_)return null;let v=m+h.index,y=v+h[0].length;return s&&l.test(p.slice(y-1,y+1))&&(h[0]+=` `,y+=1),v<o.pos&&y>=o.pos?{range:{from:v,to:y},query:h[0].slice(t.length),text:h[0]}:null}var nP=new Ov(`suggestion`);function rP({pluginKey:e=nP,editor:t,char:n=`@`,allowSpaces:r=!1,allowToIncludeChar:i=!1,allowedPrefixes:a=[` `],startOfLine:o=!1,decorationTag:s=`span`,decorationClass:c=`suggestion`,decorationContent:l=``,decorationEmptyClass:u=`is-empty`,command:d=()=>null,items:f=()=>[],render:p=()=>({}),allow:m=()=>!0,findSuggestionMatch:h=tP}){let g,_=p?.(),v=new Tv({key:e,view(){return{update:async(e,n)=>{var r,i,a,o,s;let c=this.key?.getState(n),l=this.key?.getState(e.state),u=c.active&&l.active&&c.range.from!==l.range.from,p=!c.active&&l.active,m=c.active&&!l.active,h=!p&&!m&&c.query!==l.query,v=p||u&&h,y=h||u,b=m||u&&h;if(!v&&!y&&!b)return;let x=b&&!v?c:l,S=e.dom.querySelector(`[data-decoration-id="${x.decorationId}"]`);g={editor:t,range:x.range,query:x.query,text:x.text,items:[],command:e=>d({editor:t,range:x.range,props:e}),decorationNode:S,clientRect:S?()=>{let{decorationId:n}=this.key?.getState(t.state);return e.dom.querySelector(`[data-decoration-id="${n}"]`)?.getBoundingClientRect()||null}:null},v&&((r=_?.onBeforeStart)==null||r.call(_,g)),y&&((i=_?.onBeforeUpdate)==null||i.call(_,g)),(y||v)&&(g.items=await f({editor:t,query:x.query})),b&&((a=_?.onExit)==null||a.call(_,g)),y&&((o=_?.onUpdate)==null||o.call(_,g)),v&&((s=_?.onStart)==null||s.call(_,g))},destroy:()=>{var e;g&&((e=_?.onExit)==null||e.call(_,g))}}},state:{init(){return{active:!1,range:{from:0,to:0},query:null,text:null,composing:!1}},apply(e,s,c,l){let{isEditable:u}=t,{composing:d}=t.view,{selection:f}=e,{empty:p,from:g}=f,_={...s};if(_.composing=d,u&&(p||t.view.composing)){(g<s.range.from||g>s.range.to)&&!d&&!s.composing&&(_.active=!1);let e=h({char:n,allowSpaces:r,allowToIncludeChar:i,allowedPrefixes:a,startOfLine:o,$position:f.$from}),c=`id_${Math.floor(Math.random()*4294967295)}`;e&&m({editor:t,state:l,range:e.range,isActive:s.active})?(_.active=!0,_.decorationId=s.decorationId?s.decorationId:c,_.range=e.range,_.query=e.query,_.text=e.text):_.active=!1}else _.active=!1;return _.active||(_.decorationId=null,_.range={from:0,to:0},_.query=null,_.text=null),_}},props:{handleKeyDown(e,t){let{active:n,range:r}=v.getState(e.state);return n&&(_?.onKeyDown)?.call(_,{view:e,event:t,range:r})||!1},decorations(e){let{active:t,range:n,decorationId:r,query:i}=v.getState(e);if(!t)return null;let a=!i?.length,o=[c];return a&&o.push(u),dS.create(e.doc,[cS.inline(n.from,n.to,{nodeName:s,class:o.join(` `),"data-decoration-id":r,"data-decoration-content":l})])}}});return v}function iP(e){return`prompt-suggestion-option-${e}`}var aP=(0,J.forwardRef)(function({items:e,command:t,emptyNote:n,onActiveChange:r},i){let[a,o]=(0,J.useState)(0);return(0,J.useEffect)(()=>o(0),[e]),(0,J.useEffect)(()=>{r?.(e.length>0?iP(a):null)},[e,a,r]),(0,J.useImperativeHandle)(i,()=>({onKeyDown:n=>{if(e.length===0)return!1;if(n.key===`ArrowDown`)return o(t=>(t+1)%e.length),!0;if(n.key===`ArrowUp`)return o(t=>(t-1+e.length)%e.length),!0;if(n.key===`Enter`||n.key===`Tab`){let n=e[a];return n&&t(n),!0}return!1}})),e.length===0?(0,Y.jsx)(`div`,{role:`status`,className:q(`w-64 p-2 text-sm text-muted-foreground`,Gt),children:n??`No matches`}):(0,Y.jsx)(`div`,{role:`listbox`,"aria-label":`Suggestions`,className:q(`max-h-72 w-64 overflow-y-auto p-1.5 text-sm`,Gt),children:e.map((n,r)=>(0,Y.jsxs)(`div`,{children:[n.group&&(r===0||e[r-1]?.group!==n.group)&&(0,Y.jsx)(`div`,{className:`px-2 pb-1 pt-2 text-[10px] font-semibold uppercase tracking-wide text-muted-foreground/70`,children:n.group}),(0,Y.jsxs)(`button`,{type:`button`,id:iP(r),role:`option`,"aria-selected":r===a,...n.title?{title:n.title}:{},onMouseDown:e=>{e.preventDefault(),t(n)},onMouseEnter:()=>o(r),className:q(`flex w-full items-center gap-2 rounded px-2 py-1.5 text-left`,r===a?`bg-accent text-accent-foreground`:`hover:bg-accent/60`),children:[(0,Y.jsx)(`span`,{className:`truncate font-medium`,children:n.label}),n.hint&&(0,Y.jsx)(`span`,{className:`ml-auto truncate text-xs text-muted-foreground`,children:n.hint})]})]},n.id))})});function oP(e,t){if(!t)return;let n=window.innerHeight-t.bottom;e.style.left=`${t.left}px`,n<320?(e.style.top=``,e.style.bottom=`${window.innerHeight-t.top+4}px`):(e.style.bottom=``,e.style.top=`${t.bottom+4}px`)}function sP(e){let t=null,n=null,r=null,i=null,a=null,o=!1,s=e=>{a&&(e?a.setAttribute(`aria-activedescendant`,e):a.removeAttribute(`aria-activedescendant`))},c=i=>{let{items:c,command:l}=i,u=c.length===0&&!i.query?e.emptyNote:void 0,d=!o&&(c.length>0||!!u);t&&(t.style.display=d?``:`none`),a?.setAttribute(`aria-expanded`,d?`true`:`false`),d||s(null),n?.render((0,J.createElement)(aP,{items:c,command:l,emptyNote:u,onActiveChange:s,ref:e=>{r=e}}))},l=()=>{t&&oP(t,i?.()??null)};return{onStart(e){o=!1,t=document.createElement(`div`),t.style.position=`fixed`,t.style.zIndex=`50`,document.body.appendChild(t),n=(0,Ii.createRoot)(t),i=e.clientRect??null,a=e.editor?.view.dom??null,l(),c(e),window.addEventListener(`scroll`,l,!0),window.addEventListener(`resize`,l)},onUpdate(e){i=e.clientRect??null,l(),c(e)},onKeyDown(e){return e.event.key===`Escape`?!t||t.style.display===`none`?!1:(o=!0,t.style.display=`none`,a?.setAttribute(`aria-expanded`,`false`),s(null),!0):r?.onKeyDown(e.event)??!1},onExit(){o=!1,window.removeEventListener(`scroll`,l,!0),window.removeEventListener(`resize`,l),a?.setAttribute(`aria-expanded`,`false`),s(null),a=null,n?.unmount(),t?.remove(),n=null,t=null,r=null,i=null}}}function cP(e){return zw.create({name:`suggestion-${e.key}`,addProseMirrorPlugins(){return[rP({editor:this.editor,char:e.char,pluginKey:new Ov(e.key),items:({query:t})=>e.items(t.toLowerCase()),command:({editor:t,range:n,props:r})=>e.onSelect(r,{editor:t,range:n}),render:()=>sP(e)})]}})}function lP(e,t,n){e.chain().focus().deleteRange(t).insertContent([{type:`token`,attrs:{kind:n.kind,label:n.label,text:n.text}},{type:`text`,text:` `}]).run()}function uP(e,t){e.commands.setContent(t),e.commands.focus(`end`),/\s$/.test(t)&&e.commands.insertContent({type:`text`,text:` `})}var dP=(0,J.forwardRef)(function({onChange:e,onSubmit:t,onPreset:n,onMentionProject:r,onMentionFile:i,onMentionRemoved:a,projects:o,files:s=[],commands:c,customPresets:l=[],projectPresets:u=[],onNewPreset:d,disabled:f=!1,placeholder:p=`Describe what to do…`,initialText:m,compact:h=!1},g){let[_,v]=(0,J.useState)(!0),y=(0,J.useRef)(o),b=(0,J.useRef)(s),x=(0,J.useRef)(c),S=(0,J.useRef)(l),C=(0,J.useRef)(u),w=(0,J.useRef)(d),T=(0,J.useRef)(n),E=(0,J.useRef)(r),D=(0,J.useRef)(i),O=(0,J.useRef)(a),k=(0,J.useRef)(e),A=(0,J.useRef)(t);(0,J.useEffect)(()=>{y.current=o,b.current=s,x.current=c,S.current=l,C.current=u,w.current=d,T.current=n,E.current=r,D.current=i,O.current=a,k.current=e,A.current=t});let j=(0,J.useRef)(new Set),M=e=>{let t=new Set;e.state.doc.descendants(e=>(e.type.name===`token`&&(e.attrs.kind===`project`||e.attrs.kind===`file`)&&t.add(String(e.attrs.text)),!0));for(let e of j.current)if(!t.has(e)){if(e.startsWith(`#`))O.current?.(e.slice(1));else if(e.startsWith(`@`)){let t=y.current.find(t=>t.name===e.slice(1));t&&O.current?.(t.path)}}j.current=t},N=(e,t)=>{let n=!e.isEmpty;return uP(e,t),M(e),v(e.isEmpty),k.current(e.storage.markdown.getMarkdown()),n},P=hD({immediatelyRender:!1,extensions:[BO,$N.configure({html:!1,linkify:!1,breaks:!0,transformPastedText:!0}),eP,cP({char:`/`,key:`slash`,items:e=>{let t=e.toLowerCase();if(x.current.some(e=>e.name===t))return[];let n=x.current.filter(e=>e.name.includes(t)).map(e=>({id:`command:${e.name}`,label:`/${e.name}`,group:`Commands`,...e.description?{title:e.description}:{}})),r=S.current.filter(e=>e.label.toLowerCase().includes(t)).map(e=>({id:`custom-preset:${e.id}`,label:e.label,hint:`saved prompt`,group:`Saved prompts`})),i=C.current.filter(e=>e.label.toLowerCase().includes(t)).map(e=>({id:`project-preset:${e.id}`,label:e.label,hint:`project saved prompt`,group:`Saved prompts`})),a=w.current&&`save prompt`.includes(t)?[{id:`new-preset`,label:`Save prompt…`,hint:`save the current prompt`,group:`Saved prompts`}]:[];return[...n,...r,...i,...a]},onSelect:(e,{editor:t,range:n})=>{if(e.id.startsWith(`command:`)){let r=x.current.find(t=>`command:${t.name}`===e.id);if(r){t.chain().focus().deleteRange(n).run();let e=N(t,`/${r.name} `);T.current?.(`/${r.name}`,e)}return}if(e.id.startsWith(`custom-preset:`)){let r=S.current.find(t=>`custom-preset:${t.id}`===e.id);if(r){t.chain().focus().deleteRange(n).run();let e=N(t,r.prompt);T.current?.(r.label,e)}return}if(e.id.startsWith(`project-preset:`)){let r=C.current.find(t=>`project-preset:${t.id}`===e.id);if(r){t.chain().focus().deleteRange(n).run();let e=N(t,r.prompt);T.current?.(r.label,e)}return}e.id===`new-preset`&&(t.chain().focus().deleteRange(n).run(),w.current?.())}}),cP({char:`@`,key:`at`,emptyNote:`No projects to reference yet.`,items:e=>y.current.filter(t=>t.name.toLowerCase().includes(e)).slice(0,8).map(e=>({id:`project:${e.id}`,label:`@${e.name}`,hint:`project`,group:`Projects`})),onSelect:(e,{editor:t,range:n})=>{let r=y.current.find(t=>`project:${t.id}`===e.id);r&&(lP(t,n,{kind:`project`,label:`@${r.name}`,text:`@${r.name}`}),E.current?.(r.path))}}),cP({char:`#`,key:`hash`,emptyNote:`No files indexed here yet.`,items:e=>b.current.filter(t=>t.toLowerCase().includes(e.toLowerCase())).slice(0,8).map(e=>({id:`file:${e}`,label:`#${e}`,hint:`file`,group:`Files`})),onSelect:(e,{editor:t,range:n})=>{let r=e.id.slice(5);lP(t,n,{kind:`file`,label:`#${r}`,text:`#${r}`}),D.current?.(r)}})],editorProps:{attributes:{class:`pe-prose focus:outline-none`,role:`textbox`,"aria-multiline":`true`,"aria-label":`Prompt`,"aria-placeholder":p},handleKeyDown:(e,t)=>(t.metaKey||t.ctrlKey)&&t.key===`Enter`?(t.preventDefault(),A.current(!0),!0):t.key===`Enter`&&!t.shiftKey&&!t.altKey&&!t.isComposing?e.dom.getAttribute(`aria-expanded`)===`true`||e.state.selection.$from.parent.type.name===`codeBlock`?!1:(t.preventDefault(),A.current(),!0):!1},onUpdate:({editor:e})=>{M(e),v(e.isEmpty),k.current(e.storage.markdown.getMarkdown())}});(0,J.useImperativeHandle)(g,()=>({clear:()=>{P?.commands.clearContent(),P&&M(P),v(!0),k.current(``)},focus:()=>P?.commands.focus(`end`),loadTemplate:e=>P?N(P,e):!1})),(0,J.useEffect)(()=>{P?.setEditable(!f,!1)},[P,f]);let F=(0,J.useRef)(!1);(0,J.useEffect)(()=>{!P||F.current||!m||(F.current=!0,N(P,m))},[P,m]);let ee=h?`px-2 py-1.5`:`px-3 py-2.5`,te=h?`inset-x-2 top-1.5`:`inset-x-3 top-2.5`;return(0,Y.jsxs)(`div`,{className:`relative`,children:[(0,Y.jsx)(Zt,{className:h?`rounded-md border border-border focus-within:ring-2 focus-within:ring-[var(--color-primary)]`:``,viewportClassName:h?`max-h-32 min-h-8`:`max-h-64 min-h-10`,children:(0,Y.jsx)(nD,{editor:P,className:`w-full bg-transparent text-sm pointer-coarse:text-base ${ee}`})}),_&&(0,Y.jsx)(`span`,{className:`pointer-events-none absolute truncate text-sm text-muted-foreground pointer-coarse:text-base ${te}`,children:p})]})}),fP=80;function pP(){return typeof crypto<`u`&&crypto.randomUUID?crypto.randomUUID():`p-${Date.now()}`}function mP({currentPrompt:e,busy:t,canSaveToProject:n,onSave:r,onCancel:i}){let[a,o]=(0,J.useState)(``),[s,c]=(0,J.useState)(e),[l,u]=(0,J.useState)(`user`),d=()=>{let e=a.trim(),t=s.trim();!e||!t||r({id:pP(),label:e,prompt:t},n?l:`user`)};return(0,Y.jsx)(Xe,{open:!0,onOpenChange:e=>{e||i()},title:`Save prompt`,children:(0,Y.jsxs)(`div`,{className:`flex w-full flex-col gap-2`,onKeyDown:e=>{(e.metaKey||e.ctrlKey)&&e.key===`Enter`&&(e.preventDefault(),d())},children:[(0,Y.jsx)($e,{type:`text`,value:a,maxLength:fP,placeholder:`Name`,disabled:t,autoFocus:!0,onChange:e=>o(e.target.value),className:`h-8 bg-background px-2`}),(0,Y.jsx)(Ei,{value:s,placeholder:`The prompt to save…`,disabled:t,rows:5,onChange:e=>c(e.target.value),className:`resize-y px-2 py-1 font-mono text-xs`}),n&&(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-[var(--color-muted-foreground)]`,children:[(0,Y.jsx)(`span`,{children:`Save to`}),(0,Y.jsx)(`div`,{className:`inline-flex overflow-hidden rounded-md border border-border`,children:[`user`,`project`].map(e=>(0,Y.jsx)(`button`,{type:`button`,disabled:t,onClick:()=>u(e),"aria-pressed":l===e,className:l===e?`bg-foreground px-2 py-0.5 text-background`:`px-2 py-0.5 text-foreground hover:bg-[var(--color-muted)]`,children:e===`user`?`Just me`:`This project`},e))}),(0,Y.jsx)(`span`,{className:`truncate`,children:l===`project`?`Committed to the repo, shared with your team`:`Private to you, on every project`})]}),(0,Y.jsxs)(`div`,{className:`mt-1 flex items-center justify-end gap-2`,children:[(0,Y.jsx)(B,{type:`button`,variant:`ghost`,size:`sm`,onClick:i,children:`Cancel`}),(0,Y.jsx)(B,{type:`button`,size:`sm`,disabled:t||!a.trim()||!s.trim(),onClick:d,children:`Save prompt`})]})]})})}function hP({preset:e,busy:t,onLoad:n,onDelete:r}){return(0,Y.jsxs)(b,{disabled:t,onClick:()=>n(e.prompt,e.label),className:`items-center gap-2`,children:[(0,Y.jsx)(`span`,{className:`flex-1 truncate`,children:e.label}),(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(`button`,{type:`button`,disabled:t,onClick:t=>{t.stopPropagation(),r(e.id)},"aria-label":`Delete saved prompt ${e.label}`,className:`rounded p-0.5 text-[var(--color-muted-foreground)] hover:text-danger`}),children:(0,Y.jsx)(ii,{className:`h-3.5 w-3.5`,"aria-hidden":!0})}),(0,Y.jsxs)(W,{children:[`Delete "`,e.label,`"`]})]})]})}function gP({commands:e,customPresets:t,projectPresets:n,busy:r,onLoad:i,onNew:a,onDelete:o,onDeleteProject:s}){return(0,Y.jsxs)(be,{children:[(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(z,{type:`button`,disabled:r,"aria-label":`Commands`,className:q(lt({variant:`ghost`,size:`icon-sm`}),`h-8 w-8`)}),children:(0,Y.jsx)(Qo,{className:`h-4 w-4`,"aria-hidden":!0})}),(0,Y.jsx)(W,{children:`Run a command or load a saved prompt. In the box: / commands · @ projects · # files`})]}),(0,Y.jsxs)(dt,{align:`start`,className:`min-w-[16rem] max-w-[20rem]`,children:[(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(At,{children:`Commands`}),e.length===0&&(0,Y.jsx)(`div`,{className:`px-2 py-1.5 text-xs text-muted-foreground`,children:`This project has no commands.`}),e.map(e=>{let t={disabled:r||e.waiting!==void 0,onClick:()=>i(`/${e.name} `,`/${e.name}`),className:`items-start`},n=(0,Y.jsx)(It,{label:`/${e.name}`,...e.waiting===void 0?{}:{description:`waiting to reach ${e.waiting}`}});return e.description?(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(b,{...t}),children:n}),(0,Y.jsx)(W,{className:`max-w-[22rem]`,children:e.description})]},e.name):(0,Y.jsx)(b,{...t,children:n},e.name)})]}),t.length>0&&(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(me,{}),(0,Y.jsx)(At,{children:`Your saved prompts`}),t.map(e=>(0,Y.jsx)(hP,{preset:e,busy:r,onLoad:i,onDelete:o},e.id))]}),n.length>0&&(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(me,{}),(0,Y.jsx)(At,{children:`Project saved prompts`}),n.map(e=>(0,Y.jsx)(hP,{preset:e,busy:r,onLoad:i,onDelete:s},e.id))]}),a&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(me,{}),(0,Y.jsxs)(b,{disabled:r,onClick:a,children:[(0,Y.jsx)(Qo,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),`Save prompt…`]})]})]})]})}var _P=`the CLI's own default`,vP={xhigh:`Extra high`};function yP(e){return vP[e]??e.charAt(0).toUpperCase()+e.slice(1)}function bP(e,t){return e.find(e=>e.value===t)??e[0]}function xP(e,t){if(t)return e?.models.find(e=>e.value===t)?.label??t}function SP({drivers:e,driver:t,model:n,onChange:r,effort:i,busy:a}){let o=bP(e,t),s=xP(o,n),c=i?.levels??[],l=i?.level===void 0?void 0:yP(i.level),u=`Driver: ${o?.label??``} · Model: ${s??`the CLI's own default`}${c.length>0?` · Effort: ${l??`the agent’s default`}`:``}`;return(0,Y.jsxs)(be,{children:[(0,Y.jsxs)(K,{children:[(0,Y.jsxs)(V,{render:(0,Y.jsx)(z,{type:`button`,disabled:a,"aria-label":u,className:q(Bc,`text-foreground`)}),children:[o?.icon?(0,Y.jsx)(`span`,{className:`flex h-3.5 w-3.5 items-center justify-center [&>svg]:size-3.5`,children:o.icon}):o?.label,s,l&&(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:l}),(0,Y.jsx)(Vn,{className:`h-3 w-3 shrink-0 opacity-70`})]}),(0,Y.jsx)(W,{children:u})]}),(0,Y.jsxs)(dt,{align:`end`,children:[e.map(e=>(0,Y.jsxs)(Ot,{children:[(0,Y.jsxs)(le,{children:[(0,Y.jsx)(In,{className:q(`h-3.5 w-3.5 shrink-0`,e.value===t?`opacity-100`:`opacity-0`),"aria-hidden":!0}),e.icon&&(0,Y.jsx)(`span`,{className:`flex h-4 w-4 items-center justify-center`,children:e.icon}),(0,Y.jsx)(`span`,{className:`flex-1`,children:e.label}),e.account&&(0,Y.jsxs)(`span`,{className:`flex max-w-36 min-w-0 text-muted-foreground`,children:[(0,Y.jsx)(`span`,{className:`truncate`,children:e.account.name}),(0,Y.jsx)(`span`,{className:`shrink-0 whitespace-pre`,children:e.account.percent})]})]}),(0,Y.jsxs)(Pt,{className:`min-w-[15rem]`,children:[e.models.length===0&&e.modelsNote&&(0,Y.jsx)(b,{disabled:!0,children:e.modelsNote}),e.models.map(i=>(0,Y.jsxs)(b,{onClick:()=>r(e.value,i.value),children:[(0,Y.jsx)(In,{className:q(`h-3.5 w-3.5 shrink-0`,e.value===t&&i.value===n?`opacity-100`:`opacity-0`),"aria-hidden":!0}),i.label]},i.value)),e.accounts]})]},e.value)),c.length>0&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(me,{}),(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(At,{children:`Effort`}),(0,Y.jsxs)(b,{onClick:()=>i.onChange(void 0),children:[(0,Y.jsx)(In,{className:q(`h-3.5 w-3.5 shrink-0`,i?.level===void 0?`opacity-100`:`opacity-0`),"aria-hidden":!0}),`The agent’s default`]}),c.map(e=>(0,Y.jsxs)(b,{onClick:()=>i.onChange(e),children:[(0,Y.jsx)(In,{className:q(`h-3.5 w-3.5 shrink-0`,i?.level===e?`opacity-100`:`opacity-0`),"aria-hidden":!0}),yP(e)]},e))]})]})]})]})}function CP(e){let{kind:t,place:n}=Et(e);return t===`shared`?`${n}. Runs use your own logins.`:n}function wP({icon:e,elsewhere:t,label:n}){return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`span`,{className:`relative flex shrink-0`,children:[(0,Y.jsx)(e,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),t&&(0,Y.jsx)(`span`,{className:`absolute -right-0.5 -top-0.5 h-1.5 w-1.5 rounded-full bg-[var(--color-primary)]`})]}),(0,Y.jsx)(`span`,{className:`truncate`,children:n}),(0,Y.jsx)(Vn,{className:`h-3 w-3 shrink-0 opacity-70`,"aria-hidden":!0})]})}function TP({connection:e,busy:t,inRow:n=!1}){let r=e.selectedMachineId&&!e.onlyHere&&(!e.onlyThere||e.selectedMachineId===e.home)?e.machines.find(t=>t.id===e.selectedMachineId):void 0,i=rh(),a=r?Mt(r):i,o=!r,s=o?jn:oe[Et(r).kind];return(0,Y.jsxs)(be,{children:[(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(z,{type:`button`,disabled:t,"aria-label":`Run on`,className:n?Bc:q(lt({variant:`ghost`,size:`icon-sm`}),`relative h-8 w-8`)}),children:n?(0,Y.jsx)(wP,{icon:s,elsewhere:!o,label:a}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(s,{className:`h-4 w-4`}),!o&&(0,Y.jsx)(`span`,{className:`absolute -right-0.5 -top-0.5 h-2 w-2 rounded-full bg-[var(--color-primary)]`})]})}),(0,Y.jsx)(W,{children:`Run on — ${r?.label??i}`})]}),(0,Y.jsxs)(dt,{align:n?`start`:`end`,className:`min-w-[19rem] max-w-[22rem]`,children:[(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(At,{children:`Run on`}),(0,Y.jsxs)(b,{className:q(`items-start gap-2`,e.onlyThere&&`opacity-60`),disabled:e.onlyThere,onClick:()=>e.onSelectLocal(),children:[(0,Y.jsx)(jn,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Y.jsx)(It,{label:i,description:e.home===void 0?`Runs here, through this project's start hook.`:e.onlyThere?`It has no repository address to clone it here from.`:`Cloned here first, then runs here.`}),o&&(0,Y.jsx)(In,{className:`ml-auto mt-0.5 h-3.5 w-3.5 shrink-0`,"aria-hidden":!0})]}),e.machines.map(t=>{let n=e.status[t.id],i=n===`offline`,a=CP(t),o=e.home===void 0?a:t.id===e.home?`${a}. Has this project.`:`${a}. Cloned there first, then runs there.`,s=i?se(t.url)?`Not connected. It must be on, with OpenAgent running.`:`Offline · ${o}`:o,c=e.onlyHere||e.onlyThere===!0&&t.id!==e.home;return(0,Y.jsxs)(b,{className:q(`items-start gap-2`,(i||c)&&`opacity-60`),disabled:c,onClick:()=>e.onSelect(t),children:[(0,Y.jsx)(De,{kind:Et(t).kind,online:n===`online`,className:`mt-0.5`}),(0,Y.jsx)(It,{label:Mt(t),description:s}),r?.id===t.id&&(0,Y.jsx)(In,{className:`ml-auto mt-0.5 h-3.5 w-3.5 shrink-0`,"aria-hidden":!0})]},t.id)})]}),e.onlyHere&&e.machines.length>0&&(0,Y.jsx)(`p`,{className:`px-2 py-1.5 text-xs text-muted-foreground`,children:`This project has no repository address, so it cannot be sent to another machine.`}),(0,Y.jsxs)(b,{className:`items-start`,disabled:t,onClick:()=>e.onAddMachine(),children:[(0,Y.jsx)(Qo,{className:`mt-0.5 h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(It,{label:`Add a machine…`,description:`Connect a computer, or join with a code.`})]})]})]})}var EP=1e4;function DP(e){let t=e.map(e=>e.id).join(`|`),n=Bt((0,J.useMemo)(()=>t?()=>_t():null,[t]),{},EP,[t]).value;return(0,J.useMemo)(()=>{let e={};for(let[t,r]of Object.entries(n))e[t]=r?`online`:`offline`;return e},[n])}var OP={"claude-code":{icon:(0,Y.jsx)(l,{className:`h-4 w-4`})},codex:{icon:(0,Y.jsx)(Tn,{className:`h-4 w-4`})}},kP=(0,J.forwardRef)(function({files:e,addContext:t,removeContext:n,startsAt:r,controls:i,controlsEnd:a,sessionModel:o,sessionContext:s,onSubmit:c,onPromptChange:l,onPreset:u,busy:f,submitLabel:p,submitBusyLabel:m,placeholder:h,compact:g=!1,showDriverModel:_=!0,inAgent:v=!1,sessionRow:y,canSubmit:b=!0,idleControl:x,home:C},w){let[T,E]=(0,J.useState)(``),[D,k]=(0,J.useState)(!1),A=(0,J.useRef)(null),j=fd(),M=DP(j),N=Kt(gu,[],[]),P=(0,J.useMemo)(()=>N.filter(e=>e.machine===void 0),[N]),F=Ra(),ee=F.model??``,te=F.driver??`claude-code`,ne=F.customPresets??[],I=Na(),L=La(),R=dh(L),re=R?.commands??[],ie=C===void 0&&R!==null&&R.address===void 0,ae=C!==void 0&&R!==null&&R.address===void 0,oe=Gu(),se=za(),ce=dd();(0,J.useEffect)(()=>{v||qu(F.runOn,se&&ce?j:null,M)},[v,F.runOn,se,ce,j,M]),(0,J.useEffect)(()=>{if(!v)for(let e of j)M[e.id]===`online`&&(O(e.id),Os(e.id),Zc(e.id))},[v,j,M]);let le=Ku(),ue=le?.why===`offline`?j.find(e=>e.id===le.id):void 0,de=Yu(j,oe,R,C),{models:fe,theirs:pe}=d(v?void 0:de?.id),me=v||!_?void 0:de?.id,he=ks(`claude`,me,!v&&_),ge=ks(`codex`,me,!v&&_),_e=e=>{let{view:t,pick:n}=e===`codex`?ge:he,r=fe?.[e],i=r!==void 0&&!(`error`in r&&r.missing);if(!t||t.accounts.length===0||e===`codex`&&t.accounts.length<2&&!i)return{};let a=de?Mt(de):void 0;return{account:js(t),accounts:(0,Y.jsx)(Ms,{view:t,on:a,onPick:e=>void n(e),onAdd:()=>de?Ad(`devices`,de.id):kd()})}},ve=!!de&&M[de.id]===`offline`,[ye,be]=(0,J.useState)(null),xe=de?.owner,Se=!v&&!!de&&xe!==void 0&&!de.told&&ye!==de.id;(0,J.useImperativeHandle)(w,()=>({clear:()=>{A.current?.clear(),E(``)},focus:()=>A.current?.focus(),edit:e=>{A.current?.loadTemplate(e),E(e),A.current?.focus()}}));let[Ce,we]=(0,J.useState)(void 0);(0,J.useEffect)(()=>{if(g||v)return;let e=nt();e&&we(e)},[g,v]);let Te=(0,J.useRef)(!1),Ee=(e,t=!1)=>{e?.preventDefault();let n=T.trim();!n||f||Te.current||ve||Se||!b||(Te.current=!0,Promise.resolve(c(n,{later:t})).finally(()=>{Te.current=!1}))},De=(e,t)=>{let n=A.current?.loadTemplate(e)??!1;u?.(t,n)},Oe=(0,Y.jsx)(dP,{ref:A,compact:g,onChange:e=>{E(e),l?.(e)},onSubmit:e=>Ee(void 0,e),...u?{onPreset:u}:{},...t?{onMentionProject:t,onMentionFile:t}:{},...n?{onMentionRemoved:n}:{},projects:P,files:e,commands:fh(re),customPresets:ne,projectPresets:I,...g?{}:{onNewPreset:()=>k(!0)},disabled:f,...h?{placeholder:h}:{},...Ce?{initialText:Ce}:{}}),ke=_&&(0,Y.jsx)(SP,{drivers:S(fe,pe&&de?Mt(de):void 0).map(e=>({...e,...OP[e.value],..._e(e.value)})),driver:te,model:ee,onChange:(e,t)=>Fa({driver:e,model:t}),effort:{levels:yt(fe,te,ee),level:F.effort||void 0,onChange:e=>Fa({effort:e??``})},busy:f}),z=!g&&(0,Y.jsx)(gP,{commands:re,customPresets:ne,projectPresets:I,busy:f,onLoad:De,onNew:()=>k(!0),onDelete:e=>Fa({customPresets:ne.filter(t=>t.id!==e)}),onDeleteProject:e=>Pa(L,I.filter(t=>t.id!==e))}),Ae=v?null:(0,Y.jsx)(TP,{busy:f,inRow:!g,connection:{machines:j,selectedMachineId:oe,onlyHere:ie,home:C,onlyThere:ae,onSelect:e=>Hu(e.id),onSelectLocal:()=>Hu(null),onAddMachine:()=>Ad(`devices`),status:M}}),je=!!T.trim(),Me=(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(B,{type:`submit`,size:`icon-sm`,onClick:Ee,disabled:f||!je||ve||Se||!b,"aria-hidden":!je,tabIndex:je?void 0:-1,"aria-label":p,className:q(`h-8 w-8 shrink-0 transition-[margin,opacity,transform] duration-150 ease-out`,je?q(`ml-0 translate-x-0 opacity-100`,f?`disabled:opacity-100`:`disabled:opacity-40`):q(`pointer-events-none translate-x-2 opacity-0 disabled:opacity-0`,g?`-ml-[2.375rem]`:`-ml-8`))}),children:f?(0,Y.jsx)(xn,{className:`h-4 w-4 animate-spin`}):(0,Y.jsx)(io,{className:`h-4 w-4`})}),(0,Y.jsx)(W,{children:f?m:`${p} (Enter · Shift+Enter for a new line)`})]}),Ne=!je&&x?x:Me,Pe=ve&&(0,Y.jsx)(`p`,{role:`alert`,className:`mt-2 text-xs text-danger`,children:`${de?Mt(de):`The selected machine`} is offline. Pick another place to run, then start.`}),Fe=rh()===`This machine`?`this machine`:rh(),Ie=!v&&!g&&le&&!de&&(0,Y.jsx)(`p`,{role:`status`,className:`mt-2 text-xs text-muted-foreground`,children:le.why===`gone`?`The computer you last picked to run on is no longer saved, so runs start on ${Fe}.`:`${ue?Mt(ue):`The computer you last picked`} is offline, so runs start on ${Fe}. Pick it again once it is on.`}),Le=Se&&(0,Y.jsxs)(`div`,{role:`note`,className:`mb-1.5 flex items-center gap-3 rounded-md border border-border bg-background px-3 py-2 text-xs`,children:[(0,Y.jsxs)(`p`,{className:`min-w-0 flex-1`,children:[(0,Y.jsx)(`span`,{className:`text-foreground`,children:`Your GitHub and Claude logins are copied to @${xe}'s server.`}),` `,(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:`@${xe} can see what is on it. Runs there start once you say OK.`})]}),(0,Y.jsx)(B,{type:`button`,size:`xs`,variant:`outline`,onClick:()=>{be(de.id),ld(de.id)},children:`OK`})]});return g?(0,Y.jsxs)(`div`,{className:`flex items-start gap-1.5`,children:[(0,Y.jsx)(`div`,{className:`min-w-0 flex-1`,children:Oe}),ke,Ae,Ne]}):(0,Y.jsxs)(Y.Fragment,{children:[v?y:(0,Y.jsxs)(Uc,{children:[Ae,r]}),Le,(0,Y.jsxs)(`div`,{className:`flex items-end rounded-xl border border-border bg-card focus-within:border-muted-foreground/40`,children:[z&&(0,Y.jsx)(`div`,{className:`-mr-2 flex shrink-0 items-center p-1`,children:z}),(0,Y.jsx)(`div`,{className:`min-w-0 flex-1`,children:Oe}),(0,Y.jsx)(`div`,{className:`flex shrink-0 items-center p-1`,children:Ne})]}),(0,Y.jsxs)(`div`,{className:q(`mt-1`,Vc),children:[(0,Y.jsx)(`div`,{className:Hc,children:i}),(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-0.5`,children:[a,ke||(0,Y.jsxs)(`span`,{className:`flex items-center`,children:[o!==void 0&&(0,Y.jsx)(`span`,{className:`px-2 text-[13px] text-muted-foreground`,children:o}),s]})]})]}),Pe,Ie,D&&(0,Y.jsx)(mP,{currentPrompt:T,busy:f,canSaveToProject:L!==null,onCancel:()=>{k(!1),A.current?.focus()},onSave:(e,t)=>{t===`project`?Pa(L,[...I,e]):Fa({customPresets:[...ne,e]}),k(!1),A.current?.focus()}})]})}),AP=200;function jP(e,t,n){return e?.kind===`local`?`${n} (local)`:e?.kind===`published`?e.branch:t}function MP(e,t,n){return e?.kind===`local`?{base:n}:e?.kind===`published`&&e.branch!==t?{base:ta(e.branch)}:{}}function NP(e,t,n,r){if(e===void 0)return;let i=e.kind===`local`?n:e.branch;if(i!==t)return e.kind===`published`||r?.includes(i)?i:void 0}function PP({label:e,className:t,...n}){return(0,Y.jsxs)(`button`,{type:`button`,...n,className:q(Bc,`max-w-[16rem]!`,t),children:[(0,Y.jsx)(jo,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`truncate`,children:e}),(0,Y.jsx)(Vn,{className:`h-3 w-3 shrink-0 opacity-70`,"aria-hidden":!0})]})}var FP=(e,t)=>e.value===t.value;function IP({projectId:e,main:t,local:n,pick:r,onPick:i,busy:a}){let o=jP(r,t,n),[s,c]=(0,J.useState)(!1),l=Kt(s?()=>Eu(e).then(e=>e??{},()=>({})):null,null,[s,e],{remember:`start-branches:${e}`}),u=l?.branches,d=(0,J.useMemo)(()=>[{value:`main`,label:t,pick:void 0,description:`The project's main branch, fetched fresh.`},{value:`local`,label:`My local branch ${n}`,pick:{kind:`local`},description:`Your branch as committed on this machine; uncommitted edits are not carried. If the agent publishes, your commits that are not pushed go up with its branch.`},...(u??[]).map(e=>({value:`published:${e}`,label:e,pick:{kind:`published`,branch:e}}))],[t,n,u]),f=r===void 0?d[0]:r.kind===`local`?d[1]:d.find(e=>e.value===`published:${r.branch}`)??{value:`published:${r.branch}`,label:r.branch,pick:r};return(0,Y.jsxs)(Rf,{items:d,limit:AP,value:f,isItemEqualToValue:FP,open:s,onOpenChange:c,onValueChange:e=>{e&&i(e.pick)},children:[(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(Qf,{disabled:a,"aria-label":`The agent starts from`,className:zt,render:(0,Y.jsx)(PP,{label:o})})}),(0,Y.jsx)(W,{children:`The agent starts from ${o}`})]}),(0,Y.jsx)(op,{children:(0,Y.jsx)(sp,{sideOffset:6,align:`start`,className:`z-50 outline-none`,children:(0,Y.jsxs)(lp,{"aria-label":`The agent starts from`,className:q(we,`w-[22rem] max-w-[var(--available-width)]`),children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border px-3`,children:[(0,Y.jsx)(ts,{className:`h-3.5 w-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Y.jsx)(Zf,{"aria-label":`Search branches`,placeholder:`Search branches`,className:`h-9 w-full min-w-0 bg-transparent text-sm outline-none placeholder:text-muted-foreground`})]}),(0,Y.jsx)(Zt,{viewportClassName:`h-[min(20rem,calc(var(--available-height)-2.5rem))]`,children:(0,Y.jsxs)(`div`,{className:`p-1`,children:[(0,Y.jsx)(`p`,{className:`px-2 py-1.5 text-xs font-normal text-muted-foreground`,children:`The agent starts from`}),(0,Y.jsx)(bp,{className:`px-2 py-1.5 text-xs text-muted-foreground empty:hidden`,children:`No branch by that name.`}),(0,Y.jsx)(rp,{children:e=>(0,Y.jsxs)(yp,{value:e,className:q(Ir,`items-start`),children:[e.description===void 0?(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 leading-tight [overflow-wrap:anywhere]`,children:e.label}):(0,Y.jsx)(It,{label:e.label,description:e.description}),e.value===f.value&&(0,Y.jsx)(In,{className:`ml-auto mt-0.5 h-3.5 w-3.5 shrink-0`,"aria-hidden":!0})]},e.value)}),l===null?(0,Y.jsx)(`p`,{role:`status`,className:`px-2 py-1.5 text-xs text-muted-foreground`,children:`Reading the branches on origin…`}):u===void 0?(0,Y.jsx)(`p`,{role:`status`,className:`px-2 py-1.5 text-xs text-muted-foreground`,children:`The other branches could not be read from origin.`}):u.length+2>AP?(0,Y.jsxs)(`p`,{className:`px-2 py-1.5 text-xs text-muted-foreground`,children:[`Search to see more of the `,u.length,` branches.`]}):null]})})]})})})]})}var LP=200;function RP(e){return e.replace(/[\\/]+$/,``).split(/[\\/]/).pop()??e}function zP(e,t,n,r){let i=r.trim().toLowerCase(),a=(e,t)=>e.filter(e=>!n.some(t=>t.path===e.path)).filter(e=>!i||`${e.label}\n${e.search}`.toLowerCase().includes(i)).slice(0,t);return[{value:`projects`,label:`Projects`,items:a(e,LP)},{value:`repos`,label:`Repos`,items:a(t,i?LP:20)}].filter(e=>e.items.length>0)}function BP({picked:e,projects:t,busy:n,onChange:r}){let[i,a]=(0,J.useState)(!1),[o,s]=(0,J.useState)(``),c=mi(),[l,u]=(0,J.useState)(0),d=Kt(()=>Cu().catch(()=>({repos:[],hosted:[],reposLoading:!1,hostedLoading:!1,canAddFolder:!1})),null,[i,l]);(0,J.useEffect)(()=>{if(!i||!d?.reposLoading)return;let e=setTimeout(()=>u(e=>e+1),wp);return()=>clearTimeout(e)},[i,d]);let f=zP((0,J.useMemo)(()=>t.filter(e=>e.machine===void 0).map(e=>({value:`project:${e.id}`,label:RP(e.path),detail:e.path,path:e.path,search:e.path})),[t]),(0,J.useMemo)(()=>(d?.repos??[]).map(e=>({value:`repo:${e.path}`,label:e.name,detail:e.url?Ep(e.url):e.path,path:e.path,search:`${e.path}\n${e.url??``}`})),[d]),e,o);return(0,Y.jsxs)(Y.Fragment,{children:[e.map(t=>(0,Y.jsx)(VP,{repo:t,tip:t.path,onRemove:n?void 0:()=>r(e.filter(e=>e.path!==t.path))},t.path)),(0,Y.jsxs)(Rf,{items:f,filteredItems:f,value:null,itemToStringLabel:e=>e.label,inputValue:o,onInputValueChange:s,open:i,onOpenChange:e=>{a(e),e||s(``)},onValueChange:t=>{t&&r([...e,{path:t.path,name:RP(t.path)}])},children:[(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(Qf,{disabled:n,"aria-label":`Add repo`,className:zt,render:(0,Y.jsxs)(`button`,{type:`button`,className:q(Bc,`shrink-0`),children:[(0,Y.jsx)(Qo,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`truncate`,children:`Add repo`})]})})}),(0,Y.jsx)(W,{children:`A copy of the repo in the session's folder, on a branch of its own`})]}),(0,Y.jsx)(op,{children:(0,Y.jsx)(sp,{positionMethod:c,sideOffset:6,align:`start`,className:`z-50 outline-none`,children:(0,Y.jsxs)(lp,{"aria-label":`Add repo`,className:q(we,`w-[24rem] max-w-[var(--available-width)]`),children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border px-3`,children:[(0,Y.jsx)(ts,{className:`h-3.5 w-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Y.jsx)(Zf,{"aria-label":`Search repos`,placeholder:`Search repos`,className:`h-9 w-full min-w-0 bg-transparent text-sm outline-none placeholder:text-muted-foreground`})]}),(0,Y.jsx)(Zt,{viewportClassName:`h-[min(20rem,calc(var(--available-height)-5rem))]`,children:(0,Y.jsxs)(`div`,{className:`p-1`,children:[(0,Y.jsx)(bp,{className:`px-2 py-1.5 text-xs text-muted-foreground empty:hidden`,children:d===null?``:`No repo by that name.`}),(0,Y.jsx)(rp,{children:e=>(0,Y.jsxs)(fp,{items:e.items,children:[(0,Y.jsx)(pp,{className:`px-2 pt-2 pb-1 text-xs font-normal text-muted-foreground`,children:e.label}),(0,Y.jsx)(np,{children:e=>(0,Y.jsxs)(yp,{value:e,className:q(Ir,`items-start`),children:[(0,Y.jsx)(To,{className:`mt-0.5 h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsxs)(`span`,{className:`min-w-0 leading-tight`,children:[(0,Y.jsx)(`span`,{className:`block truncate`,children:e.label}),(0,Y.jsx)(`span`,{className:`block truncate text-xs text-muted-foreground`,children:e.detail})]})]},e.value)})]},e.value)}),d===null||d.reposLoading?(0,Y.jsx)(`p`,{role:`status`,className:`px-2 py-1.5 text-xs text-muted-foreground`,children:`Looking for repos on this computer…`}):!o.trim()&&d.repos.length>20?(0,Y.jsxs)(`p`,{className:`px-2 py-1.5 text-xs text-muted-foreground`,children:[`Search to see more of the `,d.repos.length,` repos.`]}):null]})})]})})})]})]})}function VP({repo:e,tip:t,onRemove:n}){return n?(0,Y.jsxs)(K,{children:[(0,Y.jsxs)(V,{render:(0,Y.jsx)(`span`,{className:q(zc,`gap-1 pr-1`)}),children:[(0,Y.jsx)(To,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`truncate`,children:e.name}),(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Remove ${e.name}`,onClick:n,className:`rounded-sm p-0.5 hover:bg-accent hover:text-accent-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary`,children:(0,Y.jsx)(ii,{className:`h-3 w-3`,"aria-hidden":!0})})]}),(0,Y.jsx)(W,{children:t})]}):(0,Y.jsx)(Wc,{tip:t,children:(0,Y.jsxs)(`span`,{className:zc,children:[(0,Y.jsx)(To,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`truncate`,children:e.name})]})})}function HP(e,t){let n=t?.replace(/\/+$/,``);return n&&e.startsWith(`${n}/`)?e.slice(n.length+1):e}function UP(e,t){let n=t?.replace(/\/+$/,``);return n===void 0||!e.startsWith(`/`)||e.startsWith(`${n}/`)}function WP(e){return e.kind===`driver`&&e.event.type===`output`?e.event.changed??[]:[]}function GP(e){return e.kind===`driver`&&e.event.type===`start`}function KP(e,t){let n=new Map;for(let r of e){if(!UP(r.path,t))continue;let e=HP(r.path,t),i=n.get(e)??{path:e,name:e.replace(/\/+$/,``).split(`/`).pop()||e,added:0,removed:0,created:!1};n.set(e,{...i,added:i.added+r.added,removed:i.removed+r.removed,created:i.created||r.created===!0})}return[...n.values()].map(e=>e.created?{...e,added:Math.max(0,e.added-e.removed),removed:0}:e)}function qP(e,t){let n=new Map,r=[];for(let i of e){if(GP(i)){r.length>0&&n.set(i,KP(r,t)),r=[];continue}r.push(...WP(i))}return{ended:n,last:KP(r,t)}}function JP(e){return{added:e.reduce((e,t)=>e+t.added,0),removed:e.reduce((e,t)=>e+t.removed,0)}}var YP={Bash:{verb:`Ran`,doing:`Running`,kind:`command`},Read:{verb:`Read`,doing:`Reading`,kind:`read`,file:!0},Edit:{verb:`Edited`,doing:`Editing`,kind:`edit`,file:!0},MultiEdit:{verb:`Edited`,doing:`Editing`,kind:`edit`,file:!0},NotebookEdit:{verb:`Edited`,doing:`Editing`,kind:`edit`,file:!0},Write:{verb:`Wrote`,doing:`Writing`,kind:`edit`,file:!0},Grep:{verb:`Searched`,doing:`Searching`,kind:`search`,plain:!0},Glob:{verb:`Searched`,doing:`Searching`,kind:`find`,plain:!0},WebSearch:{verb:`Searched the web`,doing:`Searching the web`,kind:`web`,plain:!0},WebFetch:{verb:`Fetched`,doing:`Fetching`,kind:`other`},Skill:{verb:`Ran skill`,doing:`Running skill`,kind:`skill`,slash:!0},Task:{verb:`Started agent`,doing:`Starting agent`,kind:`other`},Agent:{verb:`Started agent`,doing:`Starting agent`,kind:`other`},TodoWrite:{verb:`Updated todos`,doing:`Updating todos`,kind:`other`},ToolSearch:{verb:`Loaded tools`,doing:`Loading tools`,kind:`other`},commandExecution:{verb:`Ran`,doing:`Running`,kind:`command`},fileChange:{verb:`Edited`,doing:`Editing`,kind:`edit`,file:!0},mcpToolCall:{verb:`Called`,doing:`Calling`,kind:`other`},webSearch:{verb:`Searched the web`,doing:`Searching the web`,kind:`web`,plain:!0}};function XP(e){if(!/^[a-z]+([A-Z][a-z]*)+$/.test(e))return e;let t=e.replace(/[A-Z]/g,e=>` ${e.toLowerCase()}`);return t.charAt(0).toUpperCase()+t.slice(1)}function ZP(e){return e.split(`, `).map(e=>e.replace(/\/+$/,``).split(`/`).pop()||e).join(`, `)}function QP(e){let t=/^mcp__(.+?)__(.+)$/.exec(e);if(!t)return;let n=t[2].replace(/_/g,` `);return{verb:`Used ${t[1]}:`,doing:`Using ${t[1]}:`,tool:n.charAt(0).toUpperCase()+n.slice(1)}}function $P(e,t,n){let r=YP[e],i=QP(e),a={verb:r?.verb??i?.verb??XP(e),doing:r?.doing??i?.doing??XP(e),kind:r?.kind??`other`};if(i&&(a.target=i.tool),r?.plain&&(a.plain=!0),t!==void 0&&(a.detail=t,a.target=r?.file?ZP(t):r?.slash?`/${t.replace(/^\//,``)}`:t,r?.file&&!t.includes(`, `)&&(a.path=t)),n!==void 0&&n.length>0){let e=KP(n);a.kind=`edit`,a.verb=e.every(e=>e.created)?`Created`:`Updated`,a.target=e.map(e=>e.name).join(`, `),e.length===1?a.path=e[0].path:delete a.path,a.files=e,a.size=JP(e)}return a}var eF=(e,t,n)=>e===1?t:`${e} ${n}`;function tF(e){let t=t=>e.filter(e=>e.kind===t),n=e=>{let n=t(e).filter(e=>e.failed).length;return n>0?` (${n} failed)`:``},r=t(`edit`),i=new Set(t(`read`).map((e,t)=>e.detail??t)).size,a=[],o={parts:a},s=t(`command`).length;if(s>0&&a.push({words:`ran ${eF(s,`a command`,`commands`)}${n(`command`)}`}),i>0&&a.push({words:`read ${eF(i,`a file`,`files`)}${n(`read`)}`}),t(`search`).length>0&&a.push({words:`searched code${n(`search`)}`}),t(`find`).length>0&&a.push({words:`found files${n(`find`)}`}),t(`web`).length>0&&a.push({words:`searched the web${n(`web`)}`}),r.length>0){let e=KP(r.flatMap(e=>(e.files??[]).map(e=>({path:e.path,added:e.added,removed:e.removed,...e.created?{created:!0}:{}})))),t=e.filter(e=>e.created).length;e.length===1?a.push({words:t===1?`created`:`edited`,target:e[0].name}):e.length===0?a.push({words:`edited ${eF(r.length,`a file`,`files`)}`}):(t>0&&a.push({words:`created ${eF(t,`a file`,`files`)}`}),e.length>t&&a.push({words:`edited ${eF(e.length-t,`a file`,`files`)}`})),e.length>0&&(o.size=JP(e))}let c=t(`skill`).length+t(`other`).length,l=[...t(`skill`),...t(`other`)].filter(e=>e.failed).length;return c>0&&a.push({words:`used ${eF(c,`a tool`,`tools`)}${l>0?` (${l} failed)`:``}`}),a[0]&&(a[0].words=a[0].words.charAt(0).toUpperCase()+a[0].words.slice(1)),o}function nF(e){return e.parts.map(e=>e.target===void 0?e.words:`${e.words} ${e.target}`).join(`, `)}function rF(e){let t=/^([A-Za-z][A-Za-z-]*)(.*)$/s.exec(e.trim());if(!t)return;let[,n,r]=t,i=n.toLowerCase();if(i.endsWith(`ing`)&&(uF.has(i.slice(0,-3))||uF.has(`${i.slice(0,-3)}e`)||uF.has(i.slice(0,-4))))return e.trim();if(!uF.has(i))return;let a=r.replace(/\b(and|then)(\s+)([A-Za-z][A-Za-z-]*)/g,(e,t,n,r)=>uF.has(r.toLowerCase())?`${t}${n}${lF(r)}`:e);return lF(n)+a}function iF(e){let t=/^([A-Za-z][A-Za-z-]*)(.*)$/s.exec(e.trim());if(!t)return;let[,n,r]=t,i=aF(n.toLowerCase());if(i===void 0)return;let a=r.replace(/\b(and|then)(\s+)([A-Za-z][A-Za-z-]*)/g,(e,t,n,r)=>{let i=aF(r.toLowerCase());return i===void 0?e:`${t}${n}${cF(r,oF(i))}`});return cF(n,oF(i))+a}function aF(e){if(uF.has(e))return e;if(!e.endsWith(`ing`))return;let t=e.slice(0,-3);return[t,`${t}e`,t.slice(0,-1),t.endsWith(`y`)?`${t.slice(0,-1)}ie`:void 0].find(e=>e!==void 0&&uF.has(e))}function oF(e){let t=sF[e];return t===void 0?dF.has(e)?`${e}${e.at(-1)}ed`:e.endsWith(`e`)?`${e}d`:/[^aeiou]y$/.test(e)?`${e.slice(0,-1)}ied`:`${e}ed`:t}var sF={build:`built`,cut:`cut`,drive:`drove`,find:`found`,get:`got`,give:`gave`,hold:`held`,keep:`kept`,leave:`left`,make:`made`,put:`put`,read:`read`,rebuild:`rebuilt`,reread:`reread`,"re-read":`re-read`,rerun:`reran`,reset:`reset`,rewrite:`rewrote`,run:`ran`,send:`sent`,set:`set`,sleep:`slept`,split:`split`,take:`took`,tell:`told`,write:`wrote`};function cF(e,t){return e[0]===e[0].toUpperCase()?t.charAt(0).toUpperCase()+t.slice(1):t}function lF(e){let t=e.toLowerCase(),n=dF.has(t)?t+t.at(-1)+`ing`:t.endsWith(`ie`)?t.slice(0,-2)+`ying`:/[^aeioy]e$/.test(t)?t.slice(0,-1)+`ing`:t+`ing`;return e[0]===e[0].toUpperCase()?n.charAt(0).toUpperCase()+n.slice(1):n}var uF=new Set(`add analyze append apply archive audit build bump calculate call change check clean clear clone close collect commit compare compile compute configure confirm convert copy count create cut debug decode delete deploy describe detect diff disable display download draft drop dump echo edit enable encode ensure evaluate examine execute explore export extract fetch filter find fix format gather generate get grab grep identify import inspect install investigate kill launch lint list load locate log look make map measure merge migrate move open outline parse patch pick ping plan prepare preview print profile prune publish pull push query read rebase rebuild record refactor refresh reload remove rename render replace report rerun research reset resolve restart restore retry review revert rewrite run save scan search serve set show shorten sort split start stash stop study summarize survey sync tag test tidy trace translate trim try unzip update upgrade upload use validate verify view wait watch write zip adjust type sleep tail peek answer approve ask assign cancel claim comment drive give hand hold join keep label land leave link mark name note pause poll post probe queue reach recheck reply request reread re-read resume return send share stage switch take tell turn unstage walk wire`.split(` `)),dF=new Set([`commit`,`cut`,`debug`,`drop`,`format`,`get`,`grab`,`grep`,`log`,`map`,`plan`,`put`,`rerun`,`run`,`set`,`stop`,`tag`,`unzip`,`zip`,`scan`,`ship`,`skip`,`submit`,`trim`]);function fF({added:e,removed:t}){return(0,Y.jsxs)(`span`,{className:`shrink-0 tabular-nums`,children:[(0,Y.jsxs)(`span`,{className:`text-success`,children:[`+`,e]}),` `,(0,Y.jsxs)(`span`,{className:`text-danger`,children:[`−`,t]})]})}function pF({added:e,removed:t}){return(0,Y.jsxs)(`span`,{className:`flex h-4 shrink-0 overflow-hidden rounded text-[10px] font-medium tabular-nums`,children:[(0,Y.jsxs)(`span`,{className:`bg-success/20 px-1 text-success`,"aria-hidden":!0,children:[`+`,e]}),(0,Y.jsxs)(`span`,{className:`bg-danger/20 px-1 text-danger`,"aria-hidden":!0,children:[`−`,t]}),(0,Y.jsxs)(`span`,{className:`sr-only`,children:[e,` added, `,t,` removed`]})]})}function mF({files:e,onOpen:t}){let n=e.length>1,r=`flex h-7 w-full min-w-0 items-center gap-1.5 rounded-md px-2`;return(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col rounded-[10px] p-1 font-sans ring-1 ring-border`,children:[n&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:`flex h-7 items-center px-2 text-[13px] text-foreground`,children:[`Edited `,e.length,` files`]}),(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`-mx-1 my-1 h-px bg-border`})]}),(0,Y.jsx)(`ul`,{"aria-label":`Files changed`,className:`flex min-w-0 flex-col`,children:e.map(e=>{let n=(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(wo,{className:`h-4 w-4 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-left text-[13px] text-foreground`,title:e.path,children:e.name}),(0,Y.jsx)(`span`,{className:`text-xs`,children:(0,Y.jsx)(fF,{added:e.added,removed:e.removed})})]});return(0,Y.jsx)(`li`,{className:`min-w-0`,children:t?(0,Y.jsx)(`button`,{type:`button`,onClick:()=>t(e.path),"aria-label":`Show the change to ${e.name}`,className:`${r} hover:bg-foreground/5`,children:n}):(0,Y.jsx)(`div`,{className:r,children:n})},e.path)})}),n&&t&&(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>t(),className:`${r} hover:bg-foreground/5`,children:[(0,Y.jsx)(`span`,{className:`flex-1 text-left text-[13px] text-foreground`,children:`See all`}),(0,Y.jsx)(`span`,{className:`text-xs`,children:(0,Y.jsx)(fF,{added:e.reduce((e,t)=>e+t.added,0),removed:e.reduce((e,t)=>e+t.removed,0)})})]})]})}var hF=`cubic-bezier(0.2, 0, 0, 1)`;function gF({id:e,children:t,className:n}){let[r,i]=(0,J.useState)(e),[a,o]=(0,J.useState)([]),s=(0,J.useRef)(t);r!==e&&(o(t=>[...t.filter(t=>t.id!==e),{id:r,node:s.current}]),i(e)),(0,J.useLayoutEffect)(()=>{s.current=t}),(0,J.useLayoutEffect)(()=>{if(a.length===0)return;let e=setTimeout(()=>o([]),200);return()=>clearTimeout(e)},[a]);let c=(0,J.useRef)(null),l=(0,J.useRef)(void 0),u=(0,J.useRef)(r),d=(0,J.useRef)(void 0);return(0,J.useLayoutEffect)(()=>{let e=c.current;if(!e)return;let t=u.current!==r;if(u.current=r,!t){d.current===void 0&&(l.current=e.getBoundingClientRect().width);return}clearTimeout(d.current),e.style.transition=``,e.style.width=``;let n=e.getBoundingClientRect().width,i=l.current;l.current=n,!(i===void 0||Math.abs(i-n)<.5||typeof matchMedia!=`function`||matchMedia(`(prefers-reduced-motion: reduce)`).matches)&&(e.style.transition=`none`,e.style.width=`${i}px`,e.offsetWidth,e.style.transition=`width 160ms ${hF}`,e.style.width=`${n}px`,d.current=setTimeout(()=>{d.current=void 0,e.style.transition=``,e.style.width=``,l.current=e.getBoundingClientRect().width},180))}),(0,J.useLayoutEffect)(()=>()=>clearTimeout(d.current),[]),(0,Y.jsxs)(`span`,{ref:c,"data-cross-fade":``,className:q(`relative inline-block min-w-0 max-w-full align-bottom`,n),children:[a.map(e=>(0,Y.jsx)(`span`,{"aria-hidden":`true`,className:`cross-fade-out pointer-events-none absolute top-0 left-0 inline-flex items-center gap-1.5 whitespace-nowrap`,children:e.node},e.id)),(0,Y.jsx)(`span`,{className:q(`inline-flex max-w-full items-center gap-1.5 whitespace-nowrap`,a.length>0&&`cross-fade-in`),children:t},r)]})}var _F=(0,J.createContext)(void 0);function vF({since:e}){let[t,n]=(0,J.useState)(()=>Date.now());(0,J.useEffect)(()=>{let e=setInterval(()=>n(Date.now()),1e3);return()=>clearInterval(e)},[]);let r=t-Date.parse(e);return r<2e3?null:(0,Y.jsx)(`span`,{className:`shrink-0 tabular-nums`,children:ci(r)})}function yF(){return(0,Y.jsxs)(`span`,{className:`dot-wave shrink-0`,"aria-hidden":!0,children:[(0,Y.jsx)(`span`,{}),(0,Y.jsx)(`span`,{}),(0,Y.jsx)(`span`,{})]})}function bF(e){let t=e.trim().split(`
130
+ `).find(e=>e.trim()!==``)?.trim()??`Thought`;return t.length>90?`${t.slice(0,90).trimEnd()}…`:t}var xF=`max-h-64 overflow-auto whitespace-pre-wrap break-all font-mono text-[13px] leading-[19px]`,SF=new Set([`Agent`,`Task`]);function CF(e){let[t,n]=(0,J.useState)(!1),{words:r,label:i,opens:a}=EF(e,!1,(0,J.useContext)(_F));return a?(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[(0,Y.jsx)(wF,{open:t,label:i,onToggle:()=>n(e=>!e),className:`max-w-full gap-1.5 hover:text-foreground`,children:r}),t&&(0,Y.jsx)(DF,{...e})]}):(0,Y.jsx)(`div`,{className:`flex min-w-0 items-center gap-1.5`,children:r})}function wF({open:e,label:t,onToggle:n,className:r,children:i}){return(0,Y.jsxs)(`div`,{onClick:n,className:q(`flex min-w-0 cursor-pointer items-center text-left select-none`,r),children:[i,(0,Y.jsx)(`button`,{type:`button`,"aria-expanded":e,"aria-label":t,className:`flex shrink-0 items-center self-stretch rounded-sm`,children:(0,Y.jsx)(MF,{open:e})})]})}function TF({name:e,path:t,openFile:n}){return(0,Y.jsx)(`button`,{type:`button`,title:`Open ${t}`,onClick:e=>{e.stopPropagation(),n(t)},className:`min-w-0 truncate rounded-sm text-foreground hover:underline hover:underline-offset-2`,children:e})}function EF({label:e,detail:t,whole:n,summary:r,output:i},a,o){let s=$P(e,t,i?.changed),c=s.kind===`command`?r:SF.has(e)&&a?t===void 0?void 0:rF(t):void 0,l=c===void 0?void 0:a?rF(c)??c:iF(c)??c,u=(0,Y.jsxs)(Y.Fragment,{children:[l===void 0?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`span`,{className:q(`shrink-0`,a&&`text-shimmer`),children:a?s.doing:s.verb}),s.target!==void 0&&(s.path!==void 0&&o&&!a?(0,Y.jsx)(TF,{name:s.target,path:s.path,openFile:o}):(0,Y.jsx)(`span`,{className:q(`truncate`,a?`text-shimmer`:!s.plain&&`text-foreground`),children:s.target}))]}):(0,Y.jsx)(`span`,{className:q(`truncate`,a&&`text-shimmer`),children:l}),s.size!==void 0&&(0,Y.jsx)(pF,{...s.size}),i?.failed&&!a&&(0,Y.jsx)(`span`,{className:`shrink-0 text-danger`,children:`Failed`})]}),d=l??[a?s.doing:s.verb,s.target].filter(Boolean).join(` `);return{words:u,label:i?.failed&&!a?`${d}, failed`:d,opens:(n??s.detail)!==void 0||i!==void 0}}function DF({label:e,detail:t,whole:n,output:r,card:i=!1}){let a=$P(e,t,r?.changed),o=a.kind===`read`&&a.path!==void 0&&r!==void 0?OF(r.text):void 0;return o?(0,Y.jsx)(kF,{path:a.path,read:o}):(0,Y.jsx)(jF,{label:e,call:a,whole:n,output:r,card:i})}function OF(e){let t=e.split(`
131
+ `),n=[],r=0;for(;r<t.length;r++){let e=/^\s*(\d+)(?:\t|→|$)(.*)$/.exec(t[r]);if(!e||n.length>0&&Number(e[1])!==n.at(-1).number+1)break;n.push({number:Number(e[1]),text:e[2]})}if(n.length!==0)return n.length>1&&n.at(-1).text===``&&r===t.length&&n.pop(),{lines:n,rest:t.slice(r).join(`
132
+ `).trim()}}function kF({path:e,read:t}){let n=(0,J.useContext)(_F),r=dn(t.lines.map(e=>e.text).join(`
133
+ `),Ur(e)),i=`${String(t.lines.at(-1).number).length}ch`;return(0,Y.jsxs)(`div`,{className:`mt-1.5 flex flex-col gap-2.5`,children:[n?(0,Y.jsx)(`button`,{type:`button`,title:`Open ${e}`,onClick:()=>n(e),className:`min-w-0 truncate text-left text-[13px] text-foreground hover:underline hover:underline-offset-2`,children:e}):(0,Y.jsx)(`div`,{className:`min-w-0 truncate text-[13px] text-foreground`,children:e}),(0,Y.jsx)(`div`,{"aria-label":`File`,className:`max-h-[400px] overflow-auto rounded-lg border border-border py-1.5 font-mono text-[13px] leading-[19px]`,children:t.lines.map((e,t)=>(0,Y.jsxs)(`div`,{className:`flex w-max min-w-full whitespace-pre text-foreground`,children:[(0,Y.jsx)(`span`,{className:`shrink-0 select-none pr-4 pl-3 text-right tabular-nums text-muted-foreground/60`,style:{width:`calc(${i} + 1.75rem)`},children:e.number}),(0,Y.jsx)(`span`,{className:`pr-3`,children:r?.[t]?(0,Y.jsx)(AF,{pieces:r[t]}):e.text||` `})]},e.number))}),t.rest!==``&&(0,Y.jsx)(`pre`,{className:q(xF,`text-muted-foreground`),children:t.rest})]})}function AF({pieces:e}){return e.length===0?` `:(0,Y.jsx)(Sr,{pieces:e})}function jF({label:e,call:t,whole:n,output:r,card:i}){let a=n??t.detail,o=t.kind===`command`&&a!==void 0,s=dn(o?a:``,o?`shellscript`:void 0);return(0,Y.jsxs)(`div`,{className:q(`mt-1.5 flex flex-col gap-1.5`,i&&`rounded-xl border border-border px-3 py-3`),children:[i&&(0,Y.jsx)(`div`,{className:`text-sm text-muted-foreground`,children:e}),a!==void 0&&(0,Y.jsxs)(`div`,{className:`relative rounded-lg border border-border`,children:[(0,Y.jsxs)(`pre`,{"aria-label":o?`Command`:`Detail`,className:q(xF,`py-1.5 pl-3 pr-10 text-foreground`),children:[o&&(0,Y.jsx)(`span`,{className:`select-none text-muted-foreground`,children:`$ `}),s?s.map((e,t)=>(0,Y.jsxs)(J.Fragment,{children:[(0,Y.jsx)(Sr,{pieces:e}),t<s.length-1?`
134
+ `:null]},t)):a]}),(0,Y.jsx)(re,{text:a,label:o?`Copy the command`:`Copy`,className:`absolute top-[7px] right-2`})]}),r!==void 0&&r.text!==``&&(0,Y.jsx)(`pre`,{"aria-label":`Output`,className:q(xF,`mt-1.5 text-muted-foreground`),children:r.text}),r?.failed&&r.exitCode!==void 0&&(0,Y.jsxs)(`div`,{className:`text-xs text-danger`,children:[`Exit code `,r.exitCode]})]})}function MF({open:e=!1}){return(0,Y.jsx)(`svg`,{viewBox:`0 0 6 8`,"aria-hidden":!0,className:q(`h-1.5 w-[4.5px] shrink-0 fill-current opacity-70 transition-transform`,e&&`rotate-90`),children:(0,Y.jsx)(`path`,{d:`M0 0L6 4L0 8Z`})})}function NF({leaving:e=!1}){return(0,Y.jsx)(`span`,{className:q(`relative top-[1.5px] flex w-[18px] shrink-0 items-center`,e&&`dots-leave`),children:(0,Y.jsx)(yF,{})})}function PF({live:e}){let[t,n]=(0,J.useState)(e),[r,i]=(0,J.useState)(!1);return t!==e&&(n(e),i(!e)),(0,J.useEffect)(()=>{if(!r)return;let e=setTimeout(()=>i(!1),200);return()=>clearTimeout(e)},[r]),!e&&!r?null:(0,Y.jsx)(NF,{leaving:r})}function FF({text:e}){let[t,n]=(0,J.useState)(!1);return(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>n(e=>!e),"aria-expanded":t,"aria-label":`Thought`,className:`flex min-w-0 max-w-full items-center gap-1.5 hover:text-foreground`,children:[(0,Y.jsx)(`span`,{className:`truncate italic`,children:bF(e)}),(0,Y.jsx)(MF,{open:t})]}),t&&(0,Y.jsx)(`div`,{className:`mt-1 italic`,children:(0,Y.jsx)(ti,{text:e,compact:!0})})]})}function IF({word:e,since:t,tokens:n}){return(0,Y.jsxs)(`div`,{role:`status`,className:`relative flex min-w-0 flex-1 items-center gap-2 font-sans text-sm text-muted-foreground`,children:[(0,Y.jsx)(NF,{}),e!==void 0&&(0,Y.jsx)(`span`,{className:`text-shimmer`,children:e}),t!==void 0&&(0,Y.jsx)(vF,{since:t}),n!==void 0&&(0,Y.jsx)(RF,{tokens:n})]})}var LF=360;function RF({tokens:e}){let[t,n]=(0,J.useState)(()=>typeof matchMedia==`function`&&matchMedia(`(prefers-reduced-motion: reduce)`).matches?e:0),r=(0,J.useRef)(t);return(0,J.useEffect)(()=>{let t=Math.max(0,r.current);if(t===e)return;let i=0,a=performance.now(),o=s=>{let c=Math.min(1,Math.max(0,(s-a)/LF)),l=Math.round(t+(e-t)*(1-(1-c)**3));r.current=l,n(l),c<1&&(i=requestAnimationFrame(o))};return i=requestAnimationFrame(o),()=>cancelAnimationFrame(i)},[e]),t<=0?null:(0,Y.jsxs)(`span`,{className:`flex shrink-0 items-center gap-2 tabular-nums`,children:[(0,Y.jsx)(`span`,{"aria-hidden":!0,children:`·`}),zF(t),` tokens`]})}function zF(e){return e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function BF({steps:e,lead:t,live:n}){let[r,i]=(0,J.useState)(!1),a=(0,J.useContext)(_F),o=Ra().showThinking===!0?e:e.filter(e=>e.type===`action`),s=e.filter(e=>e.type===`action`);if(s.length===0&&!n)return null;let c=tF(s.map(e=>({...$P(e.label,e.detail,e.output?.changed),...e.output?.failed?{failed:!0}:{}}))),l=!n&&!t&&o.length===1&&o[0].type===`action`?o[0]:void 0,u=n?EF(n.call,!0):void 0,d=l?EF(l,!1,a):void 0,f=u?.label??d?.label??nF(c),p=u?(0,Y.jsx)(gF,{id:`live:${n.call.id??`${n.call.label} ${n.call.detail??``}`}`,children:u.words}):d?(0,Y.jsx)(gF,{id:`one`,children:d.words}):(0,Y.jsxs)(gF,{id:`steps`,children:[(0,Y.jsx)(`span`,{className:`min-w-0 truncate text-left`,children:c.parts.map((e,t)=>(0,Y.jsxs)(J.Fragment,{children:[(0,Y.jsxs)(`span`,{className:`group-hover/status:text-foreground/80 group-has-focus-visible/status:text-foreground/80`,children:[t>0&&`, `,e.words]}),e.target!==void 0&&(0,Y.jsxs)(`span`,{className:`text-foreground/80 group-hover/status:text-foreground group-has-focus-visible/status:text-foreground`,children:[` `,e.target]})]},t))}),c.size!==void 0&&(0,Y.jsx)(pF,{...c.size})]}),m=!d||d.opens;return(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1 font-sans text-sm text-muted-foreground`,children:[(0,Y.jsxs)(`div`,{className:`group/status relative flex items-center gap-2`,...n?{role:`status`}:{},children:[(0,Y.jsx)(PF,{live:n!==void 0}),m?(0,Y.jsxs)(wF,{open:r,label:f,onToggle:()=>i(e=>!e),className:`gap-1.5 py-0.5 hover:text-foreground`,children:[p,n?.since!==void 0&&(0,Y.jsx)(vF,{since:n.since})]}):(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5 py-0.5`,children:[p,n?.since!==void 0&&(0,Y.jsx)(vF,{since:n.since})]})]}),r&&(d&&l?.type===`action`?(0,Y.jsx)(DF,{...l,card:!0}):(0,Y.jsxs)(`div`,{className:`mt-1.5 flex flex-col divide-y divide-border rounded-lg border border-border`,children:[t&&(0,Y.jsx)(`div`,{className:`px-2 py-1.5`,children:t}),o.map((e,t)=>(0,Y.jsx)(`div`,{className:`px-2 py-1.5`,children:e.type===`action`?(0,Y.jsx)(CF,{...e}):(0,Y.jsx)(FF,{text:e.text})},t)),n&&(0,Y.jsxs)(`div`,{className:`px-2 py-1.5`,children:[(0,Y.jsx)(`div`,{className:`flex min-w-0 items-center gap-1.5`,children:u.words}),(0,Y.jsx)(DF,{...n.call})]})]}))]})}var VF=H(`onProjectSkills`),HF=H(`sendChangeSkills`),UF=H(`sendProjectSkills`),WF=new Set;function GF(){for(let e of WF)e()}function KF(e){return WF.add(e),()=>WF.delete(e)}var qF=`skills`,JF=e=>e.standing!==`absent`,YF=e=>e.groups.flatMap(e=>e.skills),XF=(e,t,n)=>`${e} ${e===1?t:n}`;function ZF({names:e}){return e.length>3?(0,Y.jsxs)(`span`,{className:`text-foreground`,children:[e.length,` skills`]}):(0,Y.jsxs)(Y.Fragment,{children:[`The`,` `,e.map((t,n)=>(0,Y.jsxs)(`span`,{children:[n>0&&(n===e.length-1?` and `:`, `),(0,Y.jsx)(`span`,{className:`text-foreground`,children:t})]},t)),` `,e.length===1?`skill`:`skills`]})}var QF=e=>e.length===1?`is`:`are`,$F=e=>e.length===1?`it`:`them`,eI={newer:`a newer version is there`,changed:`changed by hand`,own:`your own text`},tI=e=>e.remote?`Send to ${e.remote}`:`Commit`;function nI({projectId:e,onChanged:t}){let{value:n,reload:r}=Bt(()=>VF(e).catch(()=>null),null,15e3,[e],`previous`),[i,a]=(0,J.useState)(null),{error:o,run:s}=ni();if((0,J.useEffect)(()=>KF(()=>void r()),[r]),!n)return null;let c=async()=>{await r(),t?.()},l=async(e,t)=>{a(e);try{(await t()).ok&&await c()}finally{a(null)}},{newer:u,waiting:d,here:f,sending:p,inRequest:m,onBranch:h}=rI(n),g=()=>l(`update`,()=>iI(e,n,s)),_=()=>l(`send`,()=>s(()=>UF(e),`Could not send the skills.`));return u.length===0&&!p&&!m&&!h&&!o?null:(0,Y.jsxs)(`div`,{role:`status`,"aria-label":`This project's skills`,className:`m-3 flex flex-col gap-1.5 rounded-lg border border-border px-3 py-2 text-sm text-muted-foreground`,children:[u.length>0&&(0,Y.jsxs)(`span`,{className:`flex items-center justify-between gap-3`,children:[(0,Y.jsxs)(`span`,{children:[(0,Y.jsx)(ZF,{names:u}),` `,u.length===1?`has a newer version`:`have newer versions`,`.`]}),(0,Y.jsx)(B,{type:`button`,variant:`outline`,size:`xs`,className:`shrink-0`,disabled:i!==null,onClick:()=>void g(),children:i===`update`?`Updating…`:`Update`})]}),p&&(0,Y.jsxs)(`span`,{className:`flex items-center justify-between gap-3`,children:[(0,Y.jsxs)(`span`,{children:[(0,Y.jsx)(ZF,{names:f}),` `,QF(f),` `,n.remote?`on this computer only`:`not committed`,`, so your agents do not have `,$F(f),` yet.`,n.local&&n.remote&&` Or pick My local branch when you start an agent.`]}),(0,Y.jsx)(B,{type:`button`,variant:`outline`,size:`xs`,className:`shrink-0`,disabled:i!==null,onClick:()=>void _(),children:i===`send`?`Sending…`:tI(n)})]}),m&&(0,Y.jsxs)(`span`,{className:`flex items-center justify-between gap-3`,children:[(0,Y.jsxs)(`span`,{children:[(0,Y.jsx)(ZF,{names:d}),` `,QF(d),` in pull request #`,n.request.number,`. Your agents get `,$F(d),` once it is merged.`]}),(0,Y.jsxs)(`a`,{href:n.request.url,target:`_blank`,rel:`noreferrer`,className:lt({variant:`outline`,size:`xs`,className:`shrink-0`}),children:[`Open #`,n.request.number]})]}),h&&(0,Y.jsxs)(`span`,{children:[(0,Y.jsx)(ZF,{names:d}),` `,QF(d),` on the branch `,n.branch,` on `,n.remote,`. Merge it into `,n.startBranch??`the default branch`,`, and your agents get `,$F(d),`.`]}),o&&(0,Y.jsx)(`span`,{className:`text-danger`,children:o})]})}function rI(e){let t=YF(e).filter(e=>e.standing===`newer`).map(e=>e.name),n=YF(e).filter(e=>e.waiting).map(e=>e.name),r=e.request||e.branch?e.uncommitted:[...new Set([...e.uncommitted,...n])],i=e.git&&r.length>0,a=e.request!==void 0&&n.length>0,o=!a&&e.branch!==void 0&&n.length>0,s=YF(e).filter(JF).map(e=>e.name);return{newer:t,waiting:n,here:r,sending:i,inRequest:a,onBranch:o,held:s.length,heldNames:s}}async function iI(e,t,n){let{newer:r}=rI(t),i=await n(()=>HF(e,{write:r}),`Could not update the skills.`);return!i.ok||!t.git?i:n(()=>UF(e,r),`Could not send the skills.`)}function aI(e){return new Set(YF(e).filter(JF).map(e=>e.name))}function oI({projectId:e}){let[t,n]=(0,J.useState)(0),r=Kt(()=>VF(e).catch(()=>null),void 0,[e,t]);return r===void 0?(0,Y.jsx)(`div`,{"aria-label":`Reading the skills`,className:`grid grid-cols-2 gap-3 max-sm:grid-cols-1`,children:Array.from({length:6},(e,t)=>(0,Y.jsx)(ot,{className:`h-20 rounded-lg`},t))}):r===null?(0,Y.jsx)(`p`,{role:`alert`,className:`rounded-lg border border-border px-3 py-2 text-sm text-danger`,children:`This project’s skills could not be read.`}):(0,Y.jsx)(sI,{projectId:e,skills:r,onDone:()=>n(e=>e+1)},t)}function sI({projectId:e,skills:t,onDone:n}){let[r,i]=(0,J.useState)(()=>aI(t)),[a,o]=(0,J.useState)(null),[s,c]=(0,J.useState)(null),{busy:l,error:u,reset:d,run:f}=ni(),p=(e,t)=>i(n=>{let r=new Set(n);return t?r.add(e):r.delete(e),r}),m=YF(t).filter(e=>r.has(e.name)&&!JF(e)).map(e=>e.name),h=YF(t).filter(e=>!r.has(e.name)&&JF(e)).map(e=>e.name),g=m.length===0&&h.length===0,_=async t=>{c(null);let n=await f(()=>UF(e,t),`Could not send the skills.`);n.ok&&c(n.value),GF()},v=async()=>{let n=await f(()=>HF(e,{write:m,remove:h}),`Could not change the skills.`);if(!n.ok)return;o(n.value),GF();let r=[...n.value.written,...n.value.removed];r.length>0&&t.git&&await _(r)},y=g||!t.git?`Save`:t.remote?`Save and send to ${t.remote}`:`Save and commit`,b=t.startBranch??`the default branch`;return a?(0,Y.jsxs)(`div`,{className:`space-y-2 text-sm text-muted-foreground`,children:[a.written.length>0&&(0,Y.jsxs)(`p`,{children:[`Wrote `,XF(a.written.length,`skill`,`skills`),` in `,(0,Y.jsx)(`code`,{className:`rounded bg-muted px-1`,children:`.agents/skills`}),`, linked in`,` `,(0,Y.jsx)(`code`,{className:`rounded bg-muted px-1`,children:`.claude/skills`}),`: `,(0,Y.jsx)(`span`,{className:`text-foreground`,children:a.written.join(`, `)}),`.`]}),a.removed.length>0&&(0,Y.jsxs)(`p`,{children:[`Deleted `,XF(a.removed.length,`skill`,`skills`),`: `,(0,Y.jsx)(`span`,{className:`text-foreground`,children:a.removed.join(`, `)}),`.`]}),a.scheduler===`on`&&(0,Y.jsx)(`p`,{children:`The scheduler is on for this project, on this machine. Every automation starts switched off.`}),a.scheduler===`off`&&(0,Y.jsx)(`p`,{children:`The scheduler is off for this project on this machine, and stopped.`}),a.left.map(({path:e,reason:t})=>(0,Y.jsxs)(`p`,{children:[`Left as it is: `,(0,Y.jsx)(`code`,{className:`rounded bg-muted px-1`,children:e}),` (`,t,`).`]},e)),a.schedulerError&&(0,Y.jsxs)(`p`,{className:`text-danger`,children:[`The scheduler was not switched: `,a.schedulerError]}),a.written.length+a.removed.length>0&&!t.git&&(0,Y.jsx)(`p`,{children:`This folder is not a git repository, so there is nothing to commit.`}),s?.ok&&s.sent===`committed`&&(0,Y.jsx)(`p`,{children:`Committed. Your agents get this change from their next start.`}),s?.ok&&s.sent===`pushed`&&(0,Y.jsxs)(`p`,{children:[`Sent to `,t.remote,`, on `,s.branch,`. Your agents get this change from their next start.`]}),s?.ok&&s.sent===`request`&&(0,Y.jsxs)(`p`,{children:[t.remote,` took no push to `,b,`, so the change is in`,` `,(0,Y.jsxs)(`a`,{href:s.request.url,target:`_blank`,rel:`noreferrer`,className:`text-foreground underline underline-offset-2`,children:[`pull request #`,s.request.number]}),`. Your agents get it once it is merged.`]}),s?.ok&&s.sent===`branch`&&(0,Y.jsxs)(`p`,{children:[b,` took no push, so the change is on the branch `,(0,Y.jsx)(`code`,{className:`rounded bg-muted px-1`,children:s.branch}),`. Merge it into `,b,`, and your agents get it.`]}),u&&(0,Y.jsx)(`p`,{className:`text-danger`,children:a.written.length+a.removed.length>0?`Saved in the project's folder, not sent: ${u}`:u}),(0,Y.jsxs)(`div`,{className:`flex justify-end gap-2 pt-1`,children:[u&&a.written.length+a.removed.length>0&&t.git&&(0,Y.jsx)(B,{type:`button`,size:`sm`,disabled:l,onClick:()=>void _([...a.written,...a.removed]),children:l?`Sending…`:`Send again`}),(0,Y.jsx)(B,{type:`button`,variant:`outline`,size:`sm`,disabled:l,onClick:n,children:`Done`})]})]}):(0,Y.jsxs)(`div`,{className:`space-y-4`,children:[(0,Y.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[`A ticked skill is written into the project’s folder and an unticked one is deleted`,t.remote?`; Save sends the change to ${t.remote}, where your agents start from`:t.git?`; Save commits the change`:``,`. The skills every agent gets by default come with every run and are not here.`]}),t.groups.map(e=>(0,Y.jsxs)(`fieldset`,{children:[(0,Y.jsx)(`legend`,{className:`mb-2 text-sm font-medium`,children:e.title}),(0,Y.jsx)(`div`,{className:`grid grid-cols-2 gap-3 max-sm:grid-cols-1`,children:e.skills.map(e=>{let n=[eI[e.standing],e.waiting&&t.startBranch!==void 0?`waiting to reach ${t.startBranch}`:void 0].filter(Boolean);return(0,Y.jsxs)(`label`,{className:q(`flex cursor-pointer items-start gap-2.5 rounded-lg border bg-card p-3 transition-colors`,r.has(e.name)?`border-primary/60`:`border-border hover:border-muted-foreground/40`),children:[(0,Y.jsx)(xi,{checked:r.has(e.name),onCheckedChange:t=>p(e.name,t===!0),disabled:l,className:`mt-0.5`,"aria-label":e.name}),(0,Y.jsxs)(`span`,{className:`min-w-0`,children:[(0,Y.jsx)(`span`,{className:`block text-sm font-medium`,children:e.name}),n.length>0&&(0,Y.jsx)(`span`,{className:`block text-xs text-warning`,children:n.join(` · `)}),(0,Y.jsx)(`span`,{className:`mt-0.5 block text-xs text-muted-foreground`,children:e.description})]})]},e.name)})})]},e.title)),(0,Y.jsxs)(`div`,{className:`sticky bottom-0 -mx-4 -mb-6 border-t border-border bg-background px-4 py-3`,children:[u&&(0,Y.jsx)(`p`,{role:`alert`,className:`mb-2 text-xs text-danger`,children:u}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-2`,children:[(0,Y.jsx)(`span`,{className:`mr-auto text-xs text-muted-foreground`,children:g?`Nothing to change.`:[m.length>0?`${XF(m.length,`skill`,`skills`)} to write`:``,h.length>0?`${XF(h.length,`skill`,`skills`)} to delete`:``].filter(Boolean).join(`, `)+`.`}),(0,Y.jsx)(B,{type:`button`,variant:`outline`,size:`sm`,disabled:l||g,onClick:()=>{i(aI(t)),d()},children:`Cancel`}),(0,Y.jsx)(B,{type:`button`,size:`sm`,disabled:l||g,onClick:()=>void v(),children:l?`Saving…`:y})]})]})]})}var cI={on:[],off:[]};function lI(e){return e?.projectSkills===!1?{on:[],off:[],project:`none`}:cI}function uI(e,t){let n=e?.skills??[];return[...n.filter(e=>!t.off.includes(e)),...t.on.filter(e=>!n.includes(e))]}function dI(e,t){return t===void 0?[...e]:t===`none`?[]:e.filter(e=>t.includes(e))}function fI(e){let t=[...e.skillsOn?.length?[`with ${e.skillsOn.join(`, `)}`]:[],...e.skillsOff?.length?[`without ${e.skillsOff.join(`, `)}`]:[]];return`${`its agent's skills${t.length>0?` ${t.join(`, `)}`:``}`}, and ${e.projectSkills===void 0?`every project skill`:e.projectSkills===`none`?`no project skill`:`the project skills ${e.projectSkills.join(`, `)}`}`}function pI({projectId:e,agent:t,groups:n,picks:r,onChange:i,busy:a}){let o=Kt(e===void 0?null:()=>VF(e),null,[e])?.held??[];if(!t||!n)return null;let s=t.skills,c=uI(t,r),l=[...s,...r.on.filter(e=>!s.includes(e))],u=dI(o,r.project),d=c.length+(e===void 0?0:u.length),f=e=>{s.includes(e)?i({...r,off:r.off.includes(e)?r.off.filter(t=>t!==e):[...r.off,e]}):i({...r,on:r.on.filter(t=>t!==e)})},p=e=>{let t=u.includes(e)?u.filter(t=>t!==e):[...o.filter(t=>t===e||u.includes(t))],{project:n,...a}=r;i(t.length===o.length?a:{...a,project:t.length===0?`none`:t})},m=n.map(e=>({title:e.title,skills:e.skills.filter(e=>!l.includes(e.name))})).filter(e=>e.skills.length>0),h=`This session gets ${fI({skillsOn:r.on,skillsOff:r.off,...e===void 0?{projectSkills:`none`}:{projectSkills:r.project}})}`;return(0,Y.jsxs)(be,{children:[(0,Y.jsxs)(K,{children:[(0,Y.jsxs)(V,{render:(0,Y.jsx)(z,{type:`button`,disabled:a,"aria-label":`Skills: ${d}`,className:Bc}),children:[(0,Y.jsx)($o,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`truncate`,children:`Skills: ${d}`}),(0,Y.jsx)(Vn,{className:`h-3 w-3 shrink-0 opacity-70`,"aria-hidden":!0})]}),(0,Y.jsx)(W,{children:h})]}),(0,Y.jsxs)(dt,{align:`start`,className:`min-w-[16rem]`,children:[(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(At,{children:`${t.name}'s skills, this session`}),l.map(e=>(0,Y.jsx)(Me,{checked:c.includes(e),onCheckedChange:()=>f(e),children:(0,Y.jsx)(`span`,{className:`truncate`,children:e})},e)),m.length>0&&(0,Y.jsxs)(Ot,{children:[(0,Y.jsxs)(le,{children:[(0,Y.jsx)(`span`,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),`More skills`]}),(0,Y.jsx)(Pt,{className:`min-w-[14rem]`,children:m.map(e=>(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(At,{children:e.title}),e.skills.map(e=>(0,Y.jsx)(Me,{checked:!1,onCheckedChange:()=>i({...r,on:[...r.on,e.name]}),children:(0,Y.jsx)(`span`,{className:`truncate`,children:e.name})},e.name))]},e.title))})]})]}),e!==void 0&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(me,{}),(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(At,{children:`Project skills`}),o.length===0?(0,Y.jsxs)(b,{disabled:!0,children:[(0,Y.jsx)(`span`,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:`None yet`})]}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(b,{closeOnClick:!1,"aria-current":r.project===void 0,onClick:()=>i({on:r.on,off:r.off}),children:[(0,Y.jsx)(In,{className:q(`h-3.5 w-3.5 shrink-0`,r.project===void 0?`opacity-100`:`opacity-0`),"aria-hidden":!0}),`All`]}),(0,Y.jsxs)(b,{closeOnClick:!1,"aria-current":r.project===`none`,onClick:()=>i({...r,project:`none`}),children:[(0,Y.jsx)(In,{className:q(`h-3.5 w-3.5 shrink-0`,r.project===`none`?`opacity-100`:`opacity-0`),"aria-hidden":!0}),`None`]}),o.map(e=>(0,Y.jsx)(Me,{checked:u.includes(e),onCheckedChange:()=>p(e),children:(0,Y.jsx)(`span`,{className:`truncate`,children:e})},e))]})]}),(0,Y.jsx)(me,{}),(0,Y.jsxs)(b,{onClick:()=>Ad(`skills`,e),children:[(0,Y.jsx)(ns,{className:`h-3.5 w-3.5 shrink-0 opacity-70`,"aria-hidden":!0}),`Manage project skills…`]})]})]})]})}function mI({skillsOn:e,skillsOff:t,projectSkills:n,noProject:r=!1}){return(0,Y.jsx)(Wc,{tip:`This session got ${fI({skillsOn:e,skillsOff:t,projectSkills:r?`none`:n})}`,children:(0,Y.jsxs)(`button`,{type:`button`,disabled:!0,className:Bc,children:[(0,Y.jsx)($o,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`truncate`,children:`Skills`}),(0,Y.jsx)(Vn,{className:`h-3 w-3 shrink-0 opacity-70`,"aria-hidden":!0})]})})}function hI({agents:e,picked:t,busy:n,onPick:r}){if(!e)return null;let i=e.find(e=>e.id===t)??e[0];if(!i)return null;let a=`This session is on the agent ${i.name}: ${i.skills.length===1?`one skill`:`${i.skills.length} skills`}${i.accounts.github===void 0?``:`, as @${i.accounts.github} on GitHub`}`;return(0,Y.jsxs)(be,{children:[(0,Y.jsxs)(K,{children:[(0,Y.jsxs)(V,{render:(0,Y.jsx)(z,{type:`button`,disabled:n,"aria-label":`Agent: ${i.name}`,className:Bc}),children:[(0,Y.jsx)(co,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`max-w-32 truncate`,children:i.name}),(0,Y.jsx)(Vn,{className:`h-3 w-3 shrink-0 opacity-70`,"aria-hidden":!0})]}),(0,Y.jsx)(W,{children:a})]}),(0,Y.jsxs)(dt,{align:`start`,className:`min-w-[14rem]`,children:[(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(At,{children:`Agent`}),e.map(e=>(0,Y.jsxs)(b,{onClick:()=>r(e.id),children:[(0,Y.jsx)(In,{className:q(`h-3.5 w-3.5 shrink-0`,e.id===i.id?`opacity-100`:`opacity-0`),"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`flex-1 truncate`,children:e.name}),(0,Y.jsx)(`span`,{className:`shrink-0 text-xs text-muted-foreground`,children:e.skills.length===1?`1 skill`:`${e.skills.length} skills`})]},e.id))]}),(0,Y.jsx)(me,{}),(0,Y.jsxs)(b,{onClick:Od,children:[(0,Y.jsx)(ns,{className:`h-3.5 w-3.5 shrink-0 opacity-70`,"aria-hidden":!0}),`Manage agents…`]})]})]})}function gI({agent:e}){let t=xl(e??`default`);return t===void 0?null:(0,Y.jsx)(Wc,{tip:`This session is on the agent ${t}: its skills and accounts`,children:(0,Y.jsxs)(`button`,{type:`button`,disabled:!0,className:Bc,children:[(0,Y.jsx)(co,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`max-w-32 truncate`,children:t}),(0,Y.jsx)(Vn,{className:`h-3 w-3 shrink-0 opacity-70`,"aria-hidden":!0})]})})}var _I=`Starting session`,vI=8e3,yI=6e4,bI=8e3;function xI({projectId:e,projectName:t,onAgentStarted:n,files:r,context:i,addContext:a,removeContext:o,toggleContext:s,home:c,projects:l,onPickProject:u,onProjectAdded:d}){let[f,p]=(0,J.useState)(null),[m,h]=(0,J.useState)(null),{busy:g,cloning:_,error:v,reset:y,start:b}=oh(e),x=(0,J.useRef)(null),S=Ra(),C=dh(e),w=e===he,[T,E]=(0,J.useState)([]);(0,J.useEffect)(()=>E([]),[e]);let D=(0,J.useRef)(``),O=t=>{t!==e&&(D.current.trim()&&Jt(D.current),u(t))},k=fd(),A=Gu();(0,J.useEffect)(()=>Ju(c),[e,c]);let j=Yu(k,A,C,c),M=c!==void 0&&j?.id===c,N=j!==void 0&&!M,P=c!==void 0&&j===void 0,F=C!==null&&!C.startHook&&!N&&!P,ee=N?!0:C?.gitHost??!0,te=N?!0:C?.remote??!0,ne=$r(S.publish,ee,te),I=N||P?void 0:C?.startFrom,L=S.startFrom?.[e],R=za(),re=t=>{let{[e]:n,...r}=S.startFrom??{};Fa({startFrom:t?{...r,[e]:t}:r}),v&&y()},[ie,ae]=(0,J.useState)(null),oe=Kt(C?.prBase&&I&&L?.kind===`local`?()=>Eu(e).then(e=>e?.branches,()=>void 0):null,void 0,[e,C?.prBase,I!==void 0,L?.kind]),se=C?.prBase&&I?NP(L,I.main,I.local,oe):void 0,ce=se!==void 0&&ie!==se?se:void 0,le=se!==void 0&&I?{into:ce??I.main,picks:[se,I.main],onPick:e=>ae(e===se?null:se)}:void 0,ue=S.driver,[de,fe]=(0,J.useState)(0),pe=C?.address,me=Kt(j?null:P?pe===void 0?null:()=>Ou(pe,ue):()=>Du(e,ue),null,[e,ue,j===void 0,P,pe,de]),[ge,_e]=(0,J.useState)(yI),ve=Bt(j?()=>Di(e,j.id,ue):null,null,ge,[e,ue,j?.id]).value,ye=j?ve:me;(0,J.useEffect)(()=>{let e=ve&&ve.problems.length>0?vI:yI;e!==ge&&_e(e)},[ve,ge]);let be=!j&&ye?.fix!==void 0,{state:xe,reload:Se}=Ks(ln(ue)?ue:void 0,be),Ce=Vr[ln(ue)?ue:`claude-code`],we=Bt(j?.owner===void 0?null:()=>nn(j.id),null,bI,[j?.id]).value,Te=j?.owner!==void 0&&we?.ok?[`GitHub`,`Claude`].filter(e=>we.logins[e===`GitHub`?`github`:`claude`]===void 0):[],Ee=j?Mt(j):void 0,De=(0,J.useRef)(void 0);(0,J.useEffect)(()=>{let e=be?xe?.ready:void 0;De.current===!1&&e===!0&&fe(e=>e+1),De.current=e},[be,xe?.ready]);let{view:ke}=vl(),z=ke?.agents.find(e=>e.id===(S.agent??`default`))??ke?.agents[0],Ae=z!==void 0&&z.id!=="default"?z.id:void 0,[je,Me]=(0,J.useState)();(0,J.useEffect)(()=>Me(void 0),[e,j?.id]);let[Ne,Pe]=(0,J.useState)(()=>lI(z));(0,J.useEffect)(()=>Pe(lI(z)),[e,z?.id,z?.projectSkills]);let Fe={...Ne.on.length>0?{skillsOn:Ne.on}:{},...Ne.off.length>0?{skillsOff:Ne.off}:{},...!w&&Ne.project!==void 0?{projectSkills:Ne.project}:{}},Ie=$c(pe,j?.id,je??z?.accounts.github);return(0,Y.jsxs)(`form`,{onSubmit:e=>e.preventDefault(),className:`relative mx-auto w-full max-w-3xl p-2`,children:[(0,Y.jsx)(kP,{ref:x,home:c,files:r,addContext:a,removeContext:o,startsAt:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Pp,{look:`row`,none:{label:`No project`,tip:`The session works in a folder of its own`},picked:w?null:e,pickedName:t,projects:l,busy:g,onPick:e=>O(e??`session`),onProjectAdded:d}),w&&(0,Y.jsx)(BP,{picked:T,projects:l,busy:g,onChange:E}),!w&&t&&I&&R&&(0,Y.jsx)(IP,{projectId:e,main:I.main,local:I.local,pick:L,onPick:re,busy:g})]}),controls:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(hI,{agents:ke?.agents,picked:z?.id,busy:g,onPick:e=>Fa({agent:e==="default"?``:e})}),(0,Y.jsx)(pI,{projectId:w?void 0:e,agent:z,groups:ke?.skills,picks:Ne,onChange:Pe,busy:g}),!w&&(0,Y.jsx)(vh,{projectId:e,context:i,busy:g,onToggle:s})]}),controlsEnd:!w&&(0,Y.jsxs)(Y.Fragment,{children:[te&&(0,Y.jsx)(el,{address:pe,machineId:j?.id,on:Ee,busy:g,picked:je,onPick:Me,onAdd:()=>j?Ad(`devices`,j.id):kd()}),(0,Y.jsx)(gh,{publish:ne,picks:Dn(ee,te),onPublish:e=>Fa({publish:e}),target:le,busy:g})]}),onSubmit:async t=>{if(g)return;p(_I),h(j?Mt(j):P?SI():null);let{publish:r,...a}=ah(S),o=await b(e,mh(t,i),{...w?a:ah(S),...I?MP(L,I.main,I.local):{},...ce===void 0?{}:{prBase:ce},...j?{machine:j.id}:{},...w&&T.length>0?{repos:T.map(e=>e.path)}:{},...!w&&te&&Ie!==void 0?{account:Ie}:{},...Ae===void 0?{}:{agent:Ae},...Fe});if(p(null),o){let e=I?L?.kind===`local`?I.local:L?.kind===`published`?L.branch:I.main:void 0;n?.(t,o.agentId,j?.label,o.projectId,{...e===void 0?{}:{branch:e},...!w&&te&&Ie!==void 0?{gitAccount:Ie}:{},...Ae===void 0?{}:{agent:Ae},...Fe,...w?{}:{publish:ne},...ce===void 0?{}:{prBase:ce},...S.driver?{driver:S.driver}:{},...S.model?{model:S.model}:{},...S.effort?{effort:S.effort}:{},...w&&T.length>0?{repos:T.map(e=>({name:e.name,from:e.path}))}:{}}),x.current?.clear(),E([]),Pe(lI(z))}},onPromptChange:e=>{D.current=e,!e.trim()&&f&&p(null),v&&y()},onPreset:(e,t)=>{y(),p(t?`${e} loaded over your draft — undo (⌘Z) brings the draft back`:`${e} loaded — review or edit, then Start`)},busy:g,canSubmit:!F,submitLabel:`Start agent`,submitBusyLabel:`Starting…`},e),(0,Y.jsxs)(`div`,{className:`absolute inset-x-2 bottom-full flex flex-col gap-1.5 pb-1`,children:[v&&Te.length===0&&!ye?.problems.length&&(0,Y.jsx)(CI,{...wI(v)}),j&&Te.length>0&&(0,Y.jsx)(CI,{title:`Your ${Te.join(` and `)} ${Te.length===1?`login is`:`logins are`} not on ${Ee} yet.`,detail:`Runs there use your own logins. Log ${Te.length===1?`it`:`them`} in on its page, or start your first run there from your page on ${Oe(j.url)??`its server`}, which copies yours.`,actions:(0,Y.jsx)(B,{type:`button`,size:`xs`,onClick:()=>Ad(`devices`,j.id),children:`Log in on ${Ee}`})}),ye?.problems.map(e=>e===ye.fix?.problem?j?ye.fix.kind===`log-in`?(0,Y.jsx)(CI,{title:`${Ce} is not logged in on ${Ee}.`,actions:(0,Y.jsx)(Ac,{machineId:j.id,onAccounts:kd})},e):(0,Y.jsx)(CI,{title:`${Ce} is not installed on ${Ee}.`,detail:`Update ${Ee} to get it.`,actions:(0,Y.jsx)(B,{type:`button`,size:`xs`,onClick:()=>Ad(`devices`,j.id),children:`Update ${Ee}`})},e):(0,Y.jsx)(CI,{...xe&&!xe.ready?{title:nc(xe),actions:(0,Y.jsx)(oc,{state:xe,onChanged:()=>void Se(),size:`xs`})}:wI(e)},e):(0,Y.jsx)(CI,{...wI(e)},e)),ye?.warnings.map(e=>(0,Y.jsx)(`p`,{role:`alert`,className:`rounded-lg border border-warning/30 bg-[color-mix(in_oklab,var(--color-warning)_8%,var(--color-background))] px-3 py-1.5 text-xs text-warning`,children:e},e)),F&&(0,Y.jsx)(CI,{title:`This project has no start hook.`,detail:(0,Y.jsxs)(Y.Fragment,{children:[`Add a `,(0,Y.jsx)(`code`,{className:`font-mono`,children:`start:`}),` line to `,(0,Y.jsx)(`code`,{className:`font-mono`,children:`.openagent/hooks.yml`}),`.`]})}),f===_I&&!v&&(0,Y.jsxs)(`p`,{role:`status`,className:`flex items-center gap-2 px-1.5 text-sm text-muted-foreground`,children:[(0,Y.jsx)(yF,{}),(0,Y.jsx)(`span`,{className:`text-shimmer`,children:_&&m?`Cloning ${t??`this project`} on ${m}, the first time only`:f})]})]}),f!==_I&&f&&!v&&(0,Y.jsx)(`p`,{role:`status`,className:`mt-2 text-xs text-muted-foreground`,children:f})]})}function SI(){let e=rh();return e===`This machine`?`this computer`:e}function CI({title:e,detail:t,actions:n}){return(0,Y.jsxs)(`div`,{role:`alert`,className:`flex items-start gap-2.5 rounded-lg border border-danger/30 bg-[color-mix(in_oklab,var(--color-danger)_8%,var(--color-background))] px-3 py-2.5 shadow-sm`,children:[(0,Y.jsx)(fo,{className:`mt-0.5 h-4 w-4 shrink-0 text-danger`,"aria-hidden":!0}),(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1 [overflow-wrap:anywhere]`,children:[(0,Y.jsx)(`p`,{className:`text-sm font-medium text-danger`,children:e}),t!==void 0&&(0,Y.jsxs)(Y.Fragment,{children:[` `,(0,Y.jsx)(`p`,{className:`mt-0.5 text-xs text-muted-foreground`,children:t})]}),n!==void 0&&(0,Y.jsx)(`div`,{className:`mt-2 flex flex-wrap items-center gap-2 text-foreground`,children:n})]})]})}function wI(e){let t=e.search(/\.\s+(?=[A-Z`@])/);return t<=0||t>140?{title:e}:{title:e.slice(0,t+1),detail:e.slice(t+1).trim()}}var TI=H(`onProjectAgentData`),EI=H(`sendProjectDataAs`),DI=`project-agent-data`,OI=1e4,kI={runs:e=>`${e} ${e===1?`run`:`runs`}`,tickets:e=>`${e} ${e===1?`ticket`:`tickets`}`,queue:e=>`${e} queued`};function AI({projectId:e}){let{value:t,loaded:n,reload:r}=Bt(()=>TI(e),null,OI,[e]),[i,a]=(0,J.useState)(!1),[o,s]=(0,J.useState)(),{busy:c,error:l,run:u}=ni();if(!n)return null;if(!t)return(0,Y.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`This project’s agent data is on the computer the project is on.`});let d=(0,Y.jsxs)(Y.Fragment,{children:[`your folder`,` `,(0,Y.jsx)(`button`,{type:`button`,className:`underline underline-offset-2 hover:text-foreground`,onClick:()=>Ad(Tm),children:t.folder.path}),t.folder.remote?(0,Y.jsxs)(Y.Fragment,{children:[`, synced with`,` `,t.folder.remoteUrl?(0,Y.jsx)(`a`,{href:t.folder.remoteUrl,target:`_blank`,rel:`noreferrer`,className:`underline underline-offset-2 hover:text-foreground`,children:t.folder.remote}):t.folder.remote]}):`, only on this computer`]}),f=t.place===`repository`?(0,Y.jsxs)(Y.Fragment,{children:[`In this project’s repository, on the branch agent-data`,t.account?`, sent as @${t.account}`:``,`. Everyone who can read the repository can read it.`]}):(0,Y.jsxs)(Y.Fragment,{children:[`In `,d,`.`]}),p=t.kept.filter(e=>e.count>0),m=o!==void 0&&t.accounts?.logins.includes(o)?o:ym(t.accounts,t.account),h=t.accounts!==void 0&&m===void 0;return(0,Y.jsxs)(ki,{description:`Where this project’s agent data is, and what the skills keep there.`,children:[(0,Y.jsx)(_,{label:`Kept in`,description:f,value:t.place,options:[{value:`personal`,label:`Your folder`},{value:`repository`,label:t.canShare?`This project’s repository`:`This project’s repository (it has no remote)`,disabled:!t.canShare}],onChange:n=>{n===t.place||c||(n===`repository`?a(!0):u(()=>xu(e,!1),`Could not move the agent data.`).then(()=>r()))}}),t.place===`repository`&&t.accounts&&(0,Y.jsx)(`div`,{className:`pb-3`,children:(0,Y.jsx)(bm,{host:t.accounts,value:t.account,disabled:c,onChange:t=>void u(()=>EI(e,t),`Could not change the account.`).then(()=>r())})}),l&&(0,Y.jsx)(`p`,{className:`py-3 text-xs text-danger`,children:l}),(0,Y.jsx)(ct,{label:`What is kept`,description:p.length>0?p.map(e=>`${kI[e.kind](e.count)} (${e.skill})`).join(` · `):`Nothing yet.`,control:null}),(0,Y.jsx)(an,{open:i,onOpenChange:a,title:`Keep this project’s agent data in its repository?`,body:(0,Y.jsxs)(Y.Fragment,{children:[`Its agent data moves from your folder to a branch `,(0,Y.jsx)(`span`,{className:`font-medium text-foreground`,children:`agent-data`}),` of this project’s repository, pushed now and as agents work. It holds what you asked each agent and what it answered, under your git email. Everyone who can read the repository can read it.`]}),extra:t.accounts&&(0,Y.jsx)(bm,{host:t.accounts,value:m,onChange:s,label:`Push as`}),confirmLabel:`Move and push`,confirmBusyLabel:`Moving…`,fallbackError:`Could not move the agent data.`,destructive:!1,confirmDisabled:h,onConfirm:()=>xu(e,!0,m),onSuccess:()=>void r()})]})}function jI(e){let t=II(e);return t.length>0&&!t.some(e=>e.kind===`end`)}function MI(e){let t=II(e).find(e=>e.kind===`end`);if(!(!t||t.kind!==`end`))return{ok:t.ok,stopped:t.stopped===!0,...t.waiting===!0?{waiting:!0}:{},...t.detail===void 0?{}:{detail:t.detail}}}function NI(e){if(e!==`running`)return{ok:e===`done`,stopped:e===`stopped`,...e===`waiting`?{waiting:!0}:{}}}function PI(e){let t;for(let n of e){if(n.kind!==`driver`||n.event.type!==`action`)continue;let e=/^run (https?:\/\/\S+)$/.exec(n.event.label);e&&(t=e[1])}return t}function FI(e){let t;for(let n of e){if(n.kind!==`driver`||n.event.type!==`action`)continue;let e=/^cloud (https:\/\/claude\.ai\/code\/(session_[A-Za-z0-9]+)\S*)$/.exec(n.event.label);e&&(t={url:e[1],id:e[2]})}return t}function II(e){let t=0,n=!1;for(let r=e.length-1;r>=0;r--){let i=e[r]?.kind;if(i===`session`){t=r;break}if(i===`end`&&n){t=r+1;break}i===`driver`&&(n=!0)}return e.slice(t)}function LI(e){let t=e?.sessionLink,n=e?.sessionId;return!t||!n||!t.includes(n)?null:{href:t,label:`Open session (${n}) ↗`}}function RI(e){let t=e?.sessionId;if(!t)return null;let n=e.workspace;if(!n)return t;let r=`'${n.replaceAll(`'`,`'\\''`)}'`;return`mkdir -p ${r} && cd ${r} && claude --resume ${t}`}function zI(){return Kt(()=>va(),[],[])}function BI(e){let t=zI();return e&&!t.some(t=>t.bin===e)?[...t,{bin:e,label:e}]:t}function VI({busy:e}){let t=Ra().editor,n=BI(t);return(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(At,{children:`Preferred editor`}),(0,Y.jsxs)(b,{disabled:e,closeOnClick:!1,onClick:()=>Fa({editor:``}),className:`items-start`,children:[(0,Y.jsx)(In,{className:q(`mt-0.5 h-3.5 w-3.5 shrink-0`,t?`opacity-0`:`opacity-100`)}),(0,Y.jsx)(It,{label:`Default`,description:`$OPENAGENT_EDITOR, or code`})]}),n.map(n=>(0,Y.jsxs)(b,{disabled:e,closeOnClick:!1,onClick:()=>Fa({editor:n.bin}),className:`items-start`,children:[(0,Y.jsx)(In,{className:q(`mt-0.5 h-3.5 w-3.5 shrink-0`,t===n.bin?`opacity-100`:`opacity-0`)}),(0,Y.jsx)(It,{label:n.label,description:n.bin})]},n.bin))]})}var HI=`font-medium text-foreground`;function UI({projectId:e,open:t,onOpenChange:n,onRemoved:r}){let[i,a]=(0,J.useState)(!1),[o,s]=(0,J.useState)(null),{busy:c,error:l,run:u,reset:d}=ni();(0,J.useEffect)(()=>{t&&(a(!1),d())},[t,d]);let f=()=>{n(!1),queueMicrotask(r)};return(0,Y.jsx)(Cr,{open:t,onOpenChange:e=>{c||o||n(e)},children:(0,Y.jsxs)(ze,{children:[(0,Y.jsx)(Se,{className:`fixed inset-0 z-50 bg-black/40 backdrop-blur-[1px]`}),(0,Y.jsx)(We,{className:`fixed left-1/2 top-1/2 z-50 max-h-[calc(100vh-2rem)] w-[min(28rem,calc(100vw-2rem))] -translate-x-1/2 -translate-y-1/2 overflow-y-auto rounded-lg border border-border bg-card p-5 text-card-foreground shadow-lg`,children:o?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(g,{className:`text-sm font-semibold`,children:`Project removed`}),(0,Y.jsx)(tt,{className:`mt-2 text-xs leading-relaxed text-muted-foreground`,children:`It left the dashboard’s list. This is what happened to OpenAgent’s files in the folder.`}),(0,Y.jsx)(WI,{title:`Deleted`,empty:`Nothing: there was nothing of OpenAgent’s to delete.`,lines:o.removed}),o.kept.length>0&&(0,Y.jsx)(WI,{title:`Kept`,lines:o.kept.map(e=>`${e.path}: ${e.reason}`)}),o.failed.length>0&&(0,Y.jsx)(WI,{title:`Could not be cleaned`,lines:o.failed,danger:!0}),(0,Y.jsx)(`div`,{className:`mt-4 flex justify-end`,children:(0,Y.jsx)(B,{size:`sm`,onClick:f,children:`Done`})})]}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(g,{className:`text-sm font-semibold`,children:`Remove this project?`}),(0,Y.jsxs)(tt,{className:`mt-2 text-xs leading-relaxed text-muted-foreground`,children:[`It leaves the dashboard’s list, and its scheduler stops unless you set it to keep running.`,` `,i?(0,Y.jsx)(Y.Fragment,{children:`Your files and your commits stay.`}):(0,Y.jsxs)(Y.Fragment,{children:[`Nothing in the folder is deleted: your files and your commits stay, and so do OpenAgent’s own files there (`,(0,Y.jsx)(`span`,{className:HI,children:`.openagent`}),`, `,(0,Y.jsx)(`span`,{className:HI,children:`.branches`}),`,`,` `,(0,Y.jsx)(`span`,{className:HI,children:`.agent-runner`}),`), and the agents’ records (in `,(0,Y.jsx)(`span`,{className:HI,children:`~/.openagent`}),`, or on the branch `,(0,Y.jsx)(`span`,{className:HI,children:`agent-data`}),` if you shared them).`]}),` `,`Add the folder again to bring the project back.`]}),(0,Y.jsxs)(`label`,{className:`mt-3 flex cursor-pointer items-start gap-2 text-xs text-foreground`,children:[(0,Y.jsx)(xi,{checked:i,onCheckedChange:e=>a(e===!0),disabled:c,className:`mt-0.5`}),(0,Y.jsx)(`span`,{children:`Also delete OpenAgent’s files in this folder`})]}),i&&(0,Y.jsxs)(`div`,{className:`mt-2 rounded-md border border-border p-3 text-xs leading-relaxed text-muted-foreground`,children:[(0,Y.jsxs)(`p`,{children:[`This deletes, on this machine: the agents’ checkouts in `,(0,Y.jsx)(`span`,{className:HI,children:`.branches`}),`, the folders`,` `,(0,Y.jsx)(`span`,{className:HI,children:`.openagent`}),` (with `,(0,Y.jsx)(`span`,{className:HI,children:`hooks.yml`}),`, the project’s start lines) and`,` `,(0,Y.jsx)(`span`,{className:HI,children:`.agent-runner`}),`, the agents’ records in `,(0,Y.jsx)(`span`,{className:HI,children:`~/.openagent`}),`, and the local branch `,(0,Y.jsx)(`span`,{className:HI,children:`agent-data`}),`. A tool that worked in the project removes its own files too: the scheduler’s state, the subagent settings.`]}),(0,Y.jsxs)(`p`,{className:`mt-2`,children:[(0,Y.jsx)(`span`,{className:HI,children:`The agents’ conversations go with them.`}),` If you never shared the records, this is their only copy. If you did, what has not reached the remote yet is lost. An agent that waits for your answer cannot be continued after this.`]}),(0,Y.jsxs)(`p`,{className:`mt-2`,children:[`It never touches the remote, your files, your commits, a branch with work on it, or a file git tracks. A checkout with uncommitted work stays, and so does `,(0,Y.jsx)(`span`,{className:HI,children:`.agent-runner/config.yml`}),` if you wrote one. A scheduler you set to keep running is not stopped: its files, the records and `,(0,Y.jsx)(`span`,{className:HI,children:`.openagent`}),` then stay. Stop it, add the folder again and remove it once more to delete them. You see the list of what went and what stayed right after.`]})]}),l&&(0,Y.jsx)(`p`,{className:`mt-2 text-xs text-danger`,children:l}),(0,Y.jsxs)(`div`,{className:`mt-4 flex justify-end gap-2`,children:[(0,Y.jsx)(ae,{render:(0,Y.jsx)(B,{variant:`outline`,size:`sm`,disabled:c,children:`Cancel`})}),(0,Y.jsx)(B,{variant:`destructive`,size:`sm`,disabled:c,onClick:()=>{u(()=>bu(e,i),`Could not remove the project.`).then(e=>{if(!e.ok)return;let t=e.value.cleanup;t?s(t):f()})},className:q(c&&`cursor-progress`),children:c?`Removing…`:i?`Remove and delete`:`Remove`})]})]})})]})})}function WI({title:e,lines:t,empty:n,danger:r=!1}){return(0,Y.jsxs)(`div`,{className:`mt-3 text-xs`,children:[(0,Y.jsx)(`p`,{className:q(`font-medium`,r?`text-danger`:`text-foreground`),children:e}),t.length===0?(0,Y.jsx)(`p`,{className:`mt-1 text-muted-foreground`,children:n}):(0,Y.jsx)(`ul`,{className:`mt-1 space-y-0.5 text-muted-foreground`,children:t.map(e=>(0,Y.jsx)(`li`,{className:`break-words`,children:e},e))})]})}function GI({projectId:e,agentId:t,events:n,label:r,naming:i=!1,retainedWorktree:a=!1,onWorktreeRemoved:o,onDeleted:s,onProjectRemoved:c,details:l,size:u}){let d=!!t,f=jI(n),p=ra(n),m=LI(p),h=f||a,g=RI(p),[_,v]=(0,J.useState)(!1),y=(0,J.useRef)(void 0);(0,J.useEffect)(()=>()=>clearTimeout(y.current),[]);let x=()=>{g&&navigator.clipboard?.writeText(g).then(()=>{v(!0),clearTimeout(y.current),y.current=setTimeout(()=>v(!1),1500)})},[S,C]=(0,J.useState)(0),w=Kt(()=>Ul(e),null,[e,S],{remember:`git-host-home:${e}`}),T=Kt(d?null:()=>Wl(e),null,[e,d,S]),[E,D]=(0,J.useState)(!1),[O,k]=(0,J.useState)(!1),{busy:A,error:j,run:M}=ni(),[N,P]=(0,J.useState)(!1);(0,J.useEffect)(()=>P(!1),[t]);let F=A||N&&f,[ee,te]=(0,J.useState)(!1),ne=n=>M(()=>uu(e,n,t??void 0),`Failed to open.`),I=()=>void M(()=>$l(e,t??void 0),`Could not stop the session.`).then(e=>{e.ok&&P(!0)}),L=()=>{t&&M(()=>su(e,t),`Could not remove the worktree.`).then(e=>{e.ok&&o?.()})},R=(0,J.useRef)({agent:t,naming:!1});R.current.agent!==t&&(R.current={agent:t,naming:!1}),i&&(R.current.naming=!0);let re=r?.trim()||t,ie=d?`Session actions`:`Project actions`,ae=a&&!f&&!!t&&e!==`session`,oe=!!s&&!f&&!!t,se=w&&(0,Y.jsxs)(b,{render:(0,Y.jsx)(`a`,{href:w.url,target:`_blank`,rel:`noreferrer`}),children:[(0,Y.jsx)(So,{className:`h-3.5 w-3.5 shrink-0`}),` Open on `,w.name]});return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(be,{children:[d?(0,Y.jsxs)(z,{type:`button`,"aria-label":ie,title:r,className:`flex min-w-0 items-center gap-1 rounded px-1 py-0.5 text-left text-xs hover:bg-muted data-[popup-open]:bg-muted`,children:[r?(0,Y.jsx)(`span`,{className:`min-w-0 truncate font-medium text-foreground`,children:(0,Y.jsx)(Fd,{text:r,start:R.current.naming},r)}):(0,Y.jsx)(`span`,{"data-testid":`title-placeholder`,className:`h-3 w-40 max-w-full rounded bg-muted`}),(0,Y.jsx)(Vn,{className:`h-3 w-3 shrink-0 text-muted-foreground`,"aria-hidden":!0})]}):(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(z,{type:`button`,"aria-label":ie,className:q(lt({variant:`outline`,size:`icon-sm`}),`shrink-0`)}),children:(0,Y.jsx)(bo,{className:`h-3.5 w-3.5`})}),(0,Y.jsx)(W,{children:ie})]}),(0,Y.jsxs)(dt,{align:d?`start`:`end`,className:`min-w-[14rem]`,children:[l&&(0,Y.jsxs)(b,{onClick:l.onToggle,children:[(0,Y.jsx)(Bo,{className:`h-3.5 w-3.5 shrink-0`}),` `,l.open?`Hide details`:`Show details`]}),!d&&se,T&&(0,Y.jsxs)(b,{onClick:()=>D(!0),children:[(0,Y.jsx)(go,{className:`h-3.5 w-3.5 shrink-0`}),` Create a repository on `,T.name,`…`]}),!d&&(0,Y.jsxs)(b,{onClick:()=>Ad(`project-agent-data`,e),children:[(0,Y.jsx)(yo,{className:`h-3.5 w-3.5 shrink-0`}),` Agent data…`]}),(0,Y.jsxs)(b,{disabled:A,onClick:()=>void ne(`files`),title:t&&!h?`This session no longer has its own checkout`:void 0,children:[(0,Y.jsx)(Eo,{className:`h-3.5 w-3.5 shrink-0`}),` `,t?h?`Open session's folder`:`Open project folder`:`Open folder`]}),(0,Y.jsxs)(Ot,{children:[(0,Y.jsxs)(le,{disabled:A,children:[(0,Y.jsx)(vo,{className:`h-3.5 w-3.5 shrink-0`}),` Open in editor`]}),(0,Y.jsxs)(Pt,{className:`min-w-[15rem]`,children:[(0,Y.jsxs)(b,{disabled:A,onClick:()=>void ne(`editor`),children:[(0,Y.jsx)(vo,{className:`h-3.5 w-3.5 shrink-0`}),` `,t?`Open this session's checkout`:`Open in your editor`]}),(0,Y.jsx)(me,{}),(0,Y.jsx)(VI,{busy:A})]})]}),d&&se,m&&(0,Y.jsxs)(b,{render:(0,Y.jsx)(`a`,{href:m.href,target:`_blank`,rel:`noreferrer`}),children:[(0,Y.jsx)(So,{className:`h-3.5 w-3.5 shrink-0`}),` `,m.label.replace(` ↗`,``)]}),g&&p?.sessionId&&(0,Y.jsxs)(b,{closeOnClick:!1,onClick:x,title:g,children:[_?(0,Y.jsx)(In,{className:`h-3.5 w-3.5 shrink-0 text-success`}):(0,Y.jsx)(Ar,{className:`h-3.5 w-3.5 shrink-0`}),(0,Y.jsx)(`span`,{className:`flex-1`,children:_?`Copied`:p.workspace?`Copy resume command`:`Copy session id`}),(0,Y.jsx)(`span`,{className:`ml-auto pl-3 font-mono text-[10px] text-muted-foreground`,children:p.sessionId.slice(0,8)})]}),(f||ae||oe)&&(0,Y.jsx)(me,{}),f&&(0,Y.jsxs)(b,{disabled:F,onClick:()=>void I(),children:[(0,Y.jsx)(as,{className:`h-3 w-3 shrink-0 fill-current`}),` `,F?`Stopping…`:`Stop agent`]}),ae&&(0,Y.jsxs)(b,{disabled:A,onClick:()=>L(),children:[(0,Y.jsx)(ko,{className:`h-3.5 w-3.5 shrink-0`}),` `,(0,Y.jsx)(`span`,{className:`flex-1`,children:`Remove worktree`}),u&&(0,Y.jsx)(`span`,{className:`ml-auto pl-3 text-[10px] text-muted-foreground`,children:u})]}),oe&&(0,Y.jsxs)(b,{onClick:()=>te(!0),className:`text-danger`,children:[(0,Y.jsx)(cs,{className:`h-3.5 w-3.5 shrink-0`}),` Delete session`]}),c&&!d&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(me,{}),(0,Y.jsxs)(b,{onClick:()=>k(!0),className:`text-danger`,children:[(0,Y.jsx)(cs,{className:`h-3.5 w-3.5 shrink-0`}),` Remove project…`]})]}),j&&(0,Y.jsx)(`p`,{className:`px-2 py-1.5 text-xs text-danger`,children:j})]})]}),T&&(0,Y.jsx)(an,{open:E,onOpenChange:D,title:`Create a private repository on ${T.name}?`,body:(0,Y.jsxs)(Y.Fragment,{children:[`This creates the private repository `,(0,Y.jsx)(`span`,{className:`font-medium text-foreground`,children:T.repository}),` on your`,` `,T.name,` account and pushes this project to it. The project’s code leaves this machine.`]}),confirmLabel:`Create and push`,confirmBusyLabel:`Creating…`,fallbackError:`Could not create the repository.`,destructive:!1,onConfirm:()=>hu(e),onSuccess:()=>C(e=>e+1)}),c&&!d&&(0,Y.jsx)(UI,{projectId:e,open:O,onOpenChange:k,onRemoved:c}),s&&t&&(0,Y.jsx)(an,{open:ee,onOpenChange:te,title:`Delete this agent?`,body:(0,Y.jsxs)(Y.Fragment,{children:[`Deleting `,(0,Y.jsx)(`span`,{className:`font-medium text-foreground`,children:re}),` removes it from the dashboard for good — its history can’t be recovered. Its branch and any pull request stay in git.`]}),confirmLabel:`Delete`,confirmBusyLabel:`Deleting…`,fallbackError:`Could not delete the agent.`,onConfirm:()=>cu(e,t),onSuccess:s})]})}function KI({docs:e,loaded:t}){let[n,r]=(0,J.useState)(0);if(!t)return(0,Y.jsx)(`p`,{className:`p-4 text-sm text-muted-foreground`,children:`Loading…`});if(e.length===0)return(0,Y.jsx)(`p`,{className:`p-4 text-sm text-muted-foreground`,children:`No PLAN/TODO docs yet.`});let i=e[Math.min(n,e.length-1)];return(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-auto flex-col`,children:[(0,Y.jsx)(`div`,{className:`flex flex-wrap gap-1 border-b border-border p-2`,children:e.map((e,t)=>(0,Y.jsx)(B,{variant:`ghost`,size:`sm`,className:q(`h-7 text-xs`,t===n&&`bg-accent text-accent-foreground`),onClick:()=>r(t),children:e.name},e.name))}),(0,Y.jsx)(Zt,{className:`min-h-0 flex-auto`,children:(0,Y.jsx)(`div`,{className:`p-4`,children:(0,Y.jsx)(ti,{text:i.content,document:!0})})})]})}function qI(e){let t=(0,J.useId)();return`${e??t}`}var JI=typeof window<`u`?J.useLayoutEffect:J.useEffect;function YI(e){let t=(0,J.useRef)(e);return JI(()=>{t.current=e},[e]),(0,J.useCallback)((...e)=>t.current?.(...e),[t])}function XI(...e){return YI(t=>{e.forEach(e=>{if(e)switch(typeof e){case`function`:e(t);break;case`object`:e.current=t;break}})})}function ZI(e,t){return t?e*2+1:e+1}function QI(e,t){return t?e*2-1:e}function $I(e,t,n){let r=ZI(e,n);return t===void 0?`${r} / -1`:`${r} / span ${QI(t,n)}`}function eL(e){return`${e*2} / span 1`}function tL({crossCount:e,crossSpan:t,crossStart:n,hasGutters:r}){let i=t===void 0?e:n+t;if(n===0&&i===e)return`1 / -1`;let a=ZI(n,r),o=ZI(i-1,r)+1;return r&&(n>0&&a--,i<e&&o++),`${a} / ${o}`}function nL(e,t){return Number.isInteger(e)&&e>=1&&e<t}function rL(e,t=`Assertion error`){if(!e)throw Error(t)}var iL=(0,J.createContext)(null);function aL(){let e=(0,J.useContext)(iL);return rL(e,`Grid Context not found; did you render a Cell or Gridline outside of a Grid?`),e}function oL({children:e,className:t,column:n,columnSpan:r=1,elementRef:i,id:a,row:o,rowSpan:s=1,style:c,...l}){let u=qI(a),{gutters:d,registerCell:f}=aL(),p=(0,J.useRef)(null),m=XI(p,i);return JI(()=>{let e=p.current;if(e!==null)return f({column:n,columnSpan:r,element:e,id:u,row:o,rowSpan:s})},[n,r,u,f,o,s]),(0,Y.jsx)(`div`,{...l,className:t,"data-cell":!0,"data-testid":u,id:u,ref:m,style:{overflow:`auto`,...c,minHeight:0,minWidth:0,gridColumn:$I(n,r,d.column),gridRow:$I(o,s,d.row)},children:e})}oL.displayName=`Cell`;var sL;function cL(){return sL===void 0&&(sL=typeof matchMedia==`function`&&!!matchMedia(`(pointer:coarse)`).matches),sL}function lL({expandHitTargets:e,axis:t,rect:n}){let r=e?cL()?t.resizeTargetMinimumSize.coarse:t.resizeTargetMinimumSize.fine:0;if(n.width<r){let e=r-n.width;n=new DOMRect(n.x-e/2,n.y,n.width+e,n.height)}if(n.height<r){let e=r-n.height;n=new DOMRect(n.x,n.y-e/2,n.width,n.height+e)}return n}function uL({axis:e,cells:t,index:n,rect:r}){let i=[r];for(let r of t){let t=e===`column`?r.column:r.row,a=e===`column`?r.columnSpan:r.rowSpan;if(t>=n||t+a<=n)continue;let o=r.element.getBoundingClientRect(),s=e===`column`?o.top:o.left,c=e===`column`?o.bottom:o.right;c<=s||(i=i.flatMap(t=>{let n=e===`column`?t.top:t.left,r=e===`column`?t.bottom:t.right;if(s>=r||c<=n)return[t];let i=[],a=(n,r)=>{i.push(e===`column`?new DOMRect(t.x,n,t.width,r-n):new DOMRect(n,t.y,r-n,t.height))};return n<s&&a(n,s),r>c&&a(c,r),i}))}return i}function dL({axis:e,cells:t,crossTrackCount:n,expandHitTargets:r,resizeAxis:i,axisSize:a,includeDisabled:o,separatorPlacements:s}){let{items:c,separators:l}=i,u=c.length,d=-1,f=-1,p=0;if(c.forEach((e,t)=>{e.constraintProps.disabled||(p++,d===-1&&(d=t),f=t)}),!o&&p<2)return[];let m=e=>o||e>d&&e<=f,h=[],g=(e,t,n)=>({axis:i,axisSize:a,items:[c[e-1],c[e]],rect:t,separator:n}),_=(n,r)=>{let i;for(let a of t){let t=e===`column`?a.row:a.column,o=e===`column`?a.rowSpan:a.columnSpan;if(r===`start`?t===n:t+o-1===n){let t=a.element.getBoundingClientRect();if(r===`start`){let n=e===`column`?t.top:t.left;i=i===void 0?n:Math.min(i,n)}else{let n=e===`column`?t.bottom:t.right;i=i===void 0?n:Math.max(i,n)}}}return i},v=new Set;for(let a of l){let c=s.get(a);if(!c||c.index<1||c.index>=u||(v.add(c.index),!o&&(a.disabled||a.element.hasAttribute(`aria-disabled`)))||!m(c.index))continue;let l=a.element.getBoundingClientRect(),{crossSpan:d,crossStart:f}=c,p=d===void 0?n:f+d,y=e===`column`?l.top:l.left,b=e===`column`?l.bottom:l.right;if(f>0){let e=_(f-1,`end`);e!==void 0&&e<y&&(y=e)}if(p<n){let e=_(p,`start`);e!==void 0&&e>b&&(b=e)}l=e===`column`?new DOMRect(l.x,y,l.width,b-y):new DOMRect(y,l.y,b-y,l.height),l=lL({expandHitTargets:r,axis:i,rect:l}),o?h.push(g(c.index,l,a)):uL({axis:e,cells:t,index:c.index,rect:l}).forEach(e=>{h.push(g(c.index,e,a))})}let y=(n,a)=>{uL({axis:e,cells:t,index:n,rect:lL({expandHitTargets:r,axis:i,rect:a})}).forEach(e=>{h.push(g(n,e))})},b=Array.from({length:n},()=>Array(u));for(let r of t){let[t,i,a,o]=e===`column`?[r.column,r.columnSpan,r.row,r.rowSpan]:[r.row,r.rowSpan,r.column,r.columnSpan];for(let e=Math.max(0,a);e<Math.min(n,a+o);e++)for(let n=Math.max(0,t);n<Math.min(u,t+i);n++)b[e][n]??=r}let x=new Map,S=t=>{let n=x.get(t);if(!n){let r=t.element.getBoundingClientRect();n=e===`column`?{crossEnd:r.bottom,crossStart:r.top,end:r.right,start:r.left}:{crossEnd:r.right,crossStart:r.left,end:r.bottom,start:r.top},x.set(t,n)}return n},C=({crossEnd:t,crossStart:n,end:r,start:i})=>e===`column`?new DOMRect(i,n,r-i,t-n):new DOMRect(n,i,t-n,r-i);for(let e=1;e<u;e++){if(v.has(e)||!m(e))continue;let t;for(let r=0;r<n;r++){let n=b[r][e-1],i=b[r][e],a;if((n||i)&&n!==i){let e=n?S(n):void 0,t=i?S(i):void 0,r=e?.end??t.start,o=t?.start??e.end,s=Math.max(e?.crossStart??-1/0,t?.crossStart??-1/0),c=Math.min(e?.crossEnd??1/0,t?.crossEnd??1/0);a={crossEnd:Math.max(s,c),crossStart:s,end:Math.max(r,o),start:Math.min(r,o)}}a?t=t?{crossEnd:Math.max(t.crossEnd,a.crossEnd),crossStart:Math.min(t.crossStart,a.crossStart),end:Math.max(t.end,a.end),start:Math.min(t.start,a.start)}:a:t&&=(y(e,C(t)),void 0)}t&&y(e,C(t))}return h}function fL(e){let t=parseFloat(e??``);return Number.isFinite(t)?t:0}function pL({axis:e,element:t,gutterSizes:n,hasGutters:r,layout:i,trackIds:a}){let o=a.length,s=r?o*2-1:o,c=t.ownerDocument.defaultView?.getComputedStyle(t),l=e===`column`?c?.gridTemplateColumns:c?.gridTemplateRows;if(l){let e=l.trim().split(/\s+/);if(e.length===s&&e.every(e=>/^-?[\d.]+px$/.test(e))){let t=a.map((t,n)=>fL(e[r?n*2:n]));return{availableSize:t.reduce((e,t)=>e+t,0),trackSizes:t}}}let u=e===`column`?t.offsetWidth:t.offsetHeight,d=e===`column`?fL(c?.paddingLeft)+fL(c?.paddingRight)+fL(c?.borderLeftWidth)+fL(c?.borderRightWidth):fL(c?.paddingTop)+fL(c?.paddingBottom)+fL(c?.borderTopWidth)+fL(c?.borderBottomWidth),f=fL(e===`column`?c?.columnGap:c?.rowGap),p=n.reduce((e,t)=>e+t,0),m=Math.max(0,u-d-f*Math.max(0,s-1)-p);return{availableSize:m,trackSizes:a.map(e=>i&&i[e]!==void 0?i[e]/100*m:m/o)}}function mL(e){switch(typeof e){case`number`:return[e,`px`];case`string`:{let t=parseFloat(e);return e.endsWith(`%`)?[t,`%`]:e.endsWith(`px`)?[t,`px`]:e.endsWith(`rem`)?[t,`rem`]:e.endsWith(`em`)?[t,`em`]:e.endsWith(`vh`)?[t,`vh`]:e.endsWith(`vw`)?[t,`vw`]:[t,`%`]}}}var hL=class{#e={};addListener(e,t){let n=this.#e[e];return n===void 0?this.#e[e]=[t]:n.includes(t)||n.push(t),()=>{this.removeListener(e,t)}}emit(e,t){let n=this.#e[e];if(n!==void 0)if(n.length===1)n[0].call(null,t);else{let e=!1,r=null,i=Array.from(n);for(let n=0;n<i.length;n++){let a=i[n];try{a.call(null,t)}catch(t){r===null&&(e=!0,r=t)}}if(e)throw r}}removeAllListeners(){this.#e={}}removeListener(e,t){let n=this.#e[e];if(n!==void 0){let e=n.indexOf(t);e>=0&&n.splice(e,1)}}},gL={cursorFlags:0,state:`inactive`},_L=new hL;function vL(){return gL}function yL(e){return _L.addListener(`change`,e)}function bL(e,t=[],n,r=!1){let i=gL,a={...gL};a.cursorFlags=e,a.state===`active`&&(a.didPointerMove||=r,a.previews=t,n&&(a.previewLayoutMap=n)),gL=a,_L.emit(`change`,{prev:i,next:a})}function xL(e){let t=gL;gL=e,t.state===`active`&&e.state!==`active`&&t.didPointerMove&&t.hitRegions.forEach(({separator:e})=>{e&&e.element.ownerDocument.activeElement===e.element&&e.element.blur()}),_L.emit(`change`,{prev:t,next:e})}function SL(e){gL.state!==`active`||!gL.previews.some(t=>t.separator===e)||xL({...gL,previews:gL.previews.map(t=>t.separator===e?{...t}:t)})}function CL(e){if(gL.state===`inactive`)return!1;let t=gL.hitRegions.filter(t=>t.axis!==e),n=gL.state===`active`&&gL.previews.some(t=>t.axis===e);if(t.length===gL.hitRegions.length&&!n)return!1;if(t.length===0)xL({cursorFlags:0,state:`inactive`});else if(gL.state===`active`){let n=new Map(gL.initialLayoutMap),r=new Map(gL.previewLayoutMap);n.delete(e),r.delete(e),xL({...gL,cursorFlags:0,hitRegions:t,initialLayoutMap:n,previewLayoutMap:r,previews:gL.previews.filter(t=>t.axis!==e)})}else xL({...gL,hitRegions:t});return!0}var wL=e=>e,TL=()=>{},EL=1,DL=2,OL=4,kL=8,AL=3,jL=12,ML;function NL(){return ML===void 0&&(ML=!1,typeof window<`u`&&(window.navigator.userAgent.includes(`Chrome`)||window.navigator.userAgent.includes(`Firefox`))&&(ML=!0)),ML}function PL({cursorFlags:e,axes:t,state:n}){let r=0,i=0;switch(n){case`active`:case`hover`:t.forEach(e=>{if(!e.mutableState.disableCursor)switch(e.orientation){case`horizontal`:r++;break;case`vertical`:i++;break}})}if(!(r===0&&i===0)){switch(n){case`active`:if(e&&NL()){let t=(e&EL)!==0,n=(e&DL)!==0,r=(e&OL)!==0,i=(e&kL)!==0;if(t)return r?`se-resize`:i?`ne-resize`:`e-resize`;if(n)return r?`sw-resize`:i?`nw-resize`:`w-resize`;if(r)return`s-resize`;if(i)return`n-resize`}break}return NL()?r>0&&i>0?`move`:r>0?`ew-resize`:`ns-resize`:r>0&&i>0?`grab`:r>0?`col-resize`:`row-resize`}}var FL=new WeakMap;function IL(e){if(!e.defaultView||!e.adoptedStyleSheets)return;let{prevStyle:t,styleSheet:n}=FL.get(e)??{};n===void 0&&(n=new e.defaultView.CSSStyleSheet,e.adoptedStyleSheets&&(Object.isExtensible(e.adoptedStyleSheets)?e.adoptedStyleSheets.push(n):e.adoptedStyleSheets=[...e.adoptedStyleSheets,n]));let r=vL();switch(r.state){case`active`:case`hover`:{let e=PL({cursorFlags:r.cursorFlags,axes:r.hitRegions.map(e=>e.axis),state:r.state}),i=`*, *:hover {cursor: ${e} !important; }`;if(t===i)return;t=i,e?n.cssRules.length===0?n.insertRule(i):n.replaceSync(i):n.cssRules.length===1&&n.deleteRule(0);break}case`inactive`:t=void 0,n.cssRules.length===1&&n.deleteRule(0);break}FL.set(e,{prevStyle:t,styleSheet:n})}function LL({axis:e}){let{layoutStrategy:t,orientation:n,items:r}=e;return t?t.calculateAvailableSize():r.reduce((e,t)=>(e+=n===`horizontal`?t.element.offsetWidth:t.element.offsetHeight,e),0)}function RL(e,t){let n=e.compareDocumentPosition(t);return n&Node.DOCUMENT_POSITION_DISCONNECTED?0:n&Node.DOCUMENT_POSITION_FOLLOWING?-1:n&Node.DOCUMENT_POSITION_PRECEDING?1:0}function zL(e,t){return Array.from(t).sort((t,n)=>{let r=e===`horizontal`?BL(t,n):VL(t,n);return r===0?RL(t.element,n.element):r})}function BL(e,t){let n=e.element.offsetLeft-t.element.offsetLeft;return n===0?e.element.offsetWidth-t.element.offsetWidth:n}function VL(e,t){let n=e.element.offsetTop-t.element.offsetTop;return n===0?e.element.offsetHeight-t.element.offsetHeight:n}function HL(e){return typeof e==`object`&&!!e&&`nodeType`in e&&e.nodeType===Node.ELEMENT_NODE}function UL(e,t){return{x:e.x>=t.left&&e.x<=t.right?0:Math.min(Math.abs(e.x-t.left),Math.abs(e.x-t.right)),y:e.y>=t.top&&e.y<=t.bottom?0:Math.min(Math.abs(e.y-t.top),Math.abs(e.y-t.bottom))}}function WL({orientation:e,rects:t,targetRect:n}){let r={x:n.x+n.width/2,y:n.y+n.height/2},i,a=Number.MAX_VALUE;for(let n of t){let{x:t,y:o}=UL(r,n),s=e===`horizontal`?t:o;s<a&&(a=s,i=n)}return rL(i,`No rect found`),i}function GL({expandHitTargets:e=!0,axis:t,includeDisabled:n=!1}){if(t.layoutStrategy)return t.layoutStrategy.calculateHitRegions({expandHitTargets:e,axis:t,includeDisabled:n});let{element:r,orientation:i,items:a,separators:o}=t,s=zL(i,Array.from(r.children).filter(HL).filter(e=>!e.hasAttribute(`data-resize-preview`)).map(e=>({element:e}))).map(({element:e})=>e),c=[],l=!1,u=!1,d=-1,f,p=-1,m=0,h,g=[];{let e=-1;for(let t of s)t.hasAttribute(`data-panel`)&&(e++,t.hasAttribute(`data-disabled`)||(m++,d===-1&&(d=e),p=e))}if(n||m>1){let r=-1;for(let m of s)if(m.hasAttribute(`data-panel`)){r++;let o=a.find(e=>e.element===m);if(o){if(h){let a=h.element.getBoundingClientRect(),s=m.getBoundingClientRect(),_;if(u){let e=i===`horizontal`?new DOMRect(a.right,a.top,0,a.height):new DOMRect(a.left,a.bottom,a.width,0),t=i===`horizontal`?new DOMRect(s.left,s.top,0,s.height):new DOMRect(s.left,s.top,s.width,0);switch(g.length){case 0:_=[e,t];break;case 1:{let n=g[0];_=[n,WL({orientation:i,rects:[a,s],targetRect:n.element.getBoundingClientRect()})===a?t:e];break}default:_=g;break}}else _=g.length?g:[i===`horizontal`?new DOMRect(a.right,s.top,s.left-a.right,s.height):new DOMRect(s.left,a.bottom,s.width,s.top-a.bottom)];for(let i of _){let a=lL({expandHitTargets:e,axis:t,rect:`width`in i?i:i.element.getBoundingClientRect()});(n||!l&&!(r<=d||r>p))&&(f??=LL({axis:t}),c.push({axis:t,axisSize:f,items:[h,o],separator:`width`in i?void 0:i,rect:a})),l=!1}}u=!1,h=o,g=[]}}else if(m.hasAttribute(`data-separator`)){m.ariaDisabled!==null&&(l=!0);let e=o.find(e=>e.element===m);e?g.push(e):(h=void 0,g=[])}else u=!0}return c}function KL(e,t){let n=getComputedStyle(e);return t*parseFloat(n.fontSize)}function qL(e,t){let n=getComputedStyle(e.ownerDocument.documentElement);return t*parseFloat(n.fontSize)}function JL(e){return e/100*window.innerHeight}function YL(e){return e/100*window.innerWidth}function XL({axisSize:e,itemElement:t,styleProp:n}){let r,[i,a]=mL(n);switch(a){case`%`:r=i/100*e;break;case`px`:r=i;break;case`rem`:r=qL(t,i);break;case`em`:r=KL(t,i);break;case`vh`:r=JL(i);break;case`vw`:r=YL(i);break}return r}function ZL(e){return parseFloat(e.toFixed(3))}function QL(e){let{items:t}=e,n=LL({axis:e});return n===0?t.map(e=>({groupResizeBehavior:e.constraintProps.groupResizeBehavior,collapsedSize:0,collapsible:e.constraintProps.collapsible===!0,defaultSize:void 0,disabled:e.constraintProps.disabled,minSize:0,maxSize:100,itemId:e.id})):t.map(e=>{let{element:t,constraintProps:r}=e,i=0;r.collapsedSize!==void 0&&(i=ZL(XL({axisSize:n,itemElement:t,styleProp:r.collapsedSize})/n*100));let a;r.collapsedThreshold!==void 0&&(a=ZL(XL({axisSize:n,itemElement:t,styleProp:r.collapsedThreshold})/n*100));let o;r.defaultSize!==void 0&&(o=ZL(XL({axisSize:n,itemElement:t,styleProp:r.defaultSize})/n*100));let s=0;r.minSize!==void 0&&(s=ZL(XL({axisSize:n,itemElement:t,styleProp:r.minSize})/n*100));let c=100;return r.maxSize!==void 0&&(c=ZL(XL({axisSize:n,itemElement:t,styleProp:r.maxSize})/n*100)),{groupResizeBehavior:r.groupResizeBehavior,collapsedSize:i,collapsedThreshold:a,collapsible:r.collapsible===!0,defaultSize:o,disabled:r.disabled,minSize:s,maxSize:c,itemId:e.id}})}var $L=new Map,eR=new hL;function tR(e){$L=new Map($L),$L.delete(e)}function nR(e,t){for(let[t]of $L)if(t.id===e)return t}function rR(e,t){for(let[t,n]of $L)if(t.id===e)return n;if(t)throw Error(`Could not find data for Group with id ${e}`)}function iR(){return $L}function aR(e,t){return eR.addListener(`axisChange`,n=>{n.axis.id===e&&t(n)})}function oR(e,t,n){let r=$L.get(e);$L=new Map($L),$L.set(e,t),eR.emit(`axisChange`,{axis:e,isUserInteraction:n?.isUserInteraction===!0,prev:r,next:t})}function sR(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!=t[n])return!1;return!0}function cR(e,t,n=0){return Math.abs(ZL(e)-ZL(t))<=n}function lR(e,t){return cR(e,t)?0:e>t?1:-1}function uR({overrideDisabledItems:e,itemConstraints:t,prevSize:n,size:r}){let{collapsedSize:i=0,collapsedThreshold:a,collapsible:o,disabled:s,maxSize:c=100,minSize:l=0}=t;if(s&&!e)return n;if(lR(r,l)<0)if(o){let e=a??(l-i)/2,t=lR(n,i)<=0,o=t?i+e:l-e,s=lR(r,o);r=lR(r,i)<=0||s<0||a!==void 0&&t&&s===0?i:l}else r=l;return r=Math.min(c,r),r=ZL(r),r}function dR({delta:e,initialLayout:t,itemConstraints:n,pivotIndices:r,prevLayout:i,trigger:a}){if(cR(e,0))return t;let o=a===`imperative-api`,s=n.map(({itemId:e})=>t[e]),c=n.map(({itemId:e})=>i[e]),l=[...s],[u,d]=r;rL(u!=null,`Invalid first pivot index`),rL(d!=null,`Invalid second pivot index`);let f=0;switch(a){case`keyboard`:{let t=e<0?d:u,r=n[t];rL(r,`Panel constraints not found for index ${t}`);let{collapsedSize:i=0,collapsible:a,minSize:o=0}=r;if(a){let n=s[t];if(rL(n!=null,`Previous layout not found for panel index ${t}`),cR(n,i)){let t=o-n;lR(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}{let t=e<0?u:d,r=n[t];rL(r,`No panel constraints found for index ${t}`);let{collapsedSize:i=0,collapsible:a,minSize:o=0}=r;if(a){let n=s[t];if(rL(n!=null,`Previous layout not found for panel index ${t}`),cR(n,o)){let t=n-i;lR(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}break;default:{let t=e<0?d:u,r=n[t];rL(r,`Panel constraints not found for index ${t}`);let i=s[t],{collapsedSize:a,collapsedThreshold:o,collapsible:c,minSize:l}=r;if(c&&lR(i,l)<0){let t=l-a,n=o??t/2;if(lR(i+Math.abs(e),l)<0){let r=lR(Math.abs(e),n);e=r>0||r===0&&o===void 0&&e<0?e<0?-t:t:0}}break}}{let t=e<0?1:-1,r=e<0?d:u,i=0;for(;;){let e=s[r];rL(e!=null,`Previous layout not found for panel index ${r}`);let a=uR({overrideDisabledItems:o,itemConstraints:n[r],prevSize:e,size:100})-e;if(i+=a,r+=t,r<0||r>=n.length)break}let a=Math.min(Math.abs(e),Math.abs(i));e=e<0?0-a:a}{let t=e<0?u:d;for(;t>=0&&t<n.length;){let r=Math.abs(e)-Math.abs(f),i=s[t];rL(i!=null,`Previous layout not found for panel index ${t}`);let a=i-r,c=uR({overrideDisabledItems:o,itemConstraints:n[t],prevSize:i,size:a});if(!cR(i,c)&&(f+=i-c,l[t]=c,f.toFixed(3).localeCompare(Math.abs(e).toFixed(3),void 0,{numeric:!0})>=0))break;e<0?t--:t++}}if(sR(c,l))return i;{let t=e<0?d:u,r=s[t];rL(r!=null,`Previous layout not found for panel index ${t}`);let i=r+f,a=uR({overrideDisabledItems:o,itemConstraints:n[t],prevSize:r,size:i});if(l[t]=a,!cR(a,i)){let t=i-a,r=e<0?d:u;for(;r>=0&&r<n.length;){let i=l[r];rL(i!=null,`Previous layout not found for panel index ${r}`);let a=i+t,s=uR({overrideDisabledItems:o,itemConstraints:n[r],prevSize:i,size:a});if(cR(i,s)||(t-=s-i,l[r]=s),cR(t,0))break;e>0?r--:r++}}}return cR(Object.values(l).reduce((e,t)=>t+e,0),100,.1)?l.reduce((e,t,r)=>(e[n[r].itemId]=t,e),{}):i}function fR(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(t[n]===void 0||lR(e[n],t[n])!==0)return!1;return!0}function pR({commit:e,document:t,event:n,hitRegions:r,initialLayoutMap:i,mountedAxes:a,pointerDownAtPoint:o,prevCursorFlags:s}){let c=0,l=vL(),u=l.state===`active`?l.previews:[],d=new Map(l.state===`active`?l.previewLayoutMap:void 0);r.forEach(t=>{let{axis:r,axisSize:s}=t,{orientation:l,items:f}=r;if(e&&r.resizePreviewMode!==`separator`)return;let{disableCursor:p}=r.mutableState,m=0;m=o?l===`horizontal`?(n.clientX-o.x)/s*100:(n.clientY-o.y)/s*100:l===`horizontal`?n.clientX<0?-100:100:n.clientY<0?-100:100;let h=i.get(r),g=a.get(r);if(!h||!g)return;let{defaultLayoutDeferred:_,derivedItemConstraints:v,axisSize:y,layout:b,separatorToItems:x}=g;if(v&&b&&x){let n=r.resizePreviewMode===`separator`?d.get(r)??b:b,i=dR({delta:m,initialLayout:h,itemConstraints:v,pivotIndices:t.items.map(e=>f.indexOf(e)),prevLayout:n,trigger:`mouse-or-touch`});if(r.resizePreviewMode===`separator`&&!e&&!fR(i,n)){d.set(r,i);let e=0,t=f.map(t=>(e+=i[t.id]-h[t.id],s/100*e));u=u.map(e=>{if(e.axis!==r)return e;let n=t[e.itemIndex];return n===e.offset?e:{...e,offset:n}})}if(fR(i,n)&&m!==0&&!p)switch(l){case`horizontal`:c|=m<0?EL:DL;break;case`vertical`:c|=m<0?OL:kL;break}(r.resizePreviewMode!==`separator`||e)&&!fR(i,b)&&oR(t.axis,{defaultLayoutDeferred:_,derivedItemConstraints:v,axisSize:y,layout:i,requestedAxisSize:y,requestedLayout:i,separatorToItems:x})}});let f=0;n.movementX===0?f|=s&AL:f|=c&AL,n.movementY===0?f|=s&jL:f|=c&jL;let p=l.state===`active`&&(n.clientX!==l.pointerDownAtPoint.x||n.clientY!==l.pointerDownAtPoint.y);bL(f,u,d,p),IL(t)}function mR(e,t){let n=vL(),r=iR(),i=!1;switch(n.state){case`active`:pR({commit:!0,document:e,event:t,hitRegions:n.hitRegions,initialLayoutMap:n.initialLayoutMap,mountedAxes:r,pointerDownAtPoint:n.pointerDownAtPoint,prevCursorFlags:n.cursorFlags}),xL({cursorFlags:0,state:`inactive`}),n.hitRegions.length>0&&(IL(e),i=!0,n.hitRegions.forEach(e=>{if(!r.has(e.axis))return;let t=rR(e.axis.id,!0);oR(e.axis,t,{isUserInteraction:!0})}))}return i}function hR(e){e.defaultPrevented||mR(e.currentTarget,e)}function gR(e,t,n){let r,i={x:1/0,y:1/0};for(let a of t){let t=UL(n,a.rect);switch(e){case`horizontal`:(t.x<i.x||t.x===i.x&&t.y<=i.y)&&(r=a,i=t);break;case`vertical`:(t.y<i.y||t.y===i.y&&t.x<=i.x)&&(r=a,i=t);break}}return r?{distance:i,hitRegion:r}:void 0}function _R(e){return typeof e==`object`&&!!e&&`nodeType`in e&&e.nodeType===Node.DOCUMENT_FRAGMENT_NODE}function vR(e,t){if(e===t)throw Error(`Cannot compare node with itself`);let n={a:wR(e),b:wR(t)},r;for(;n.a.at(-1)===n.b.at(-1);)r=n.a.pop(),n.b.pop();rL(r,`Stacking order can only be calculated for elements with a common ancestor`);let i={a:CR(SR(n.a)),b:CR(SR(n.b))};if(i.a===i.b){let e=r.childNodes,t={a:n.a.at(-1),b:n.b.at(-1)},i=e.length;for(;i--;){let n=e[i];if(n===t.a)return 1;if(n===t.b)return-1}}return Math.sign(i.a-i.b)}var yR=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function bR(e){let t=getComputedStyle(TR(e)??e).display;return t===`flex`||t===`inline-flex`}function xR(e){let t=getComputedStyle(e);return!!(t.position===`fixed`||t.zIndex!==`auto`&&(t.position!==`static`||bR(e))||+t.opacity<1||`transform`in t&&t.transform!==`none`||`webkitTransform`in t&&t.webkitTransform!==`none`||`mixBlendMode`in t&&t.mixBlendMode!==`normal`||`filter`in t&&t.filter!==`none`||`webkitFilter`in t&&t.webkitFilter!==`none`||`isolation`in t&&t.isolation===`isolate`||yR.test(t.willChange)||t.webkitOverflowScrolling===`touch`)}function SR(e){let t=e.length;for(;t--;){let n=e[t];if(rL(n,`Missing node`),xR(n))return n}return null}function CR(e){return e&&Number(getComputedStyle(e).zIndex)||0}function wR(e){let t=[];for(;e;)t.push(e),e=TR(e);return t}function TR(e){let{parentNode:t}=e;return _R(t)?t.host:t}function ER(e,t){return e.x<t.x+t.width&&e.x+e.width>t.x&&e.y<t.y+t.height&&e.y+e.height>t.y}function DR(e){try{return e.matches(`:modal`)}catch{return!1}}function OR({axisElement:e,hitRegion:t,pointerEventTarget:n}){if(HL(n)){let t=n.closest(`dialog`);if(t&&!t.contains(e)&&DR(t))return!1}if(!HL(n)||n.contains(e)||e.contains(n))return!0;if(vR(n,e)>0){let r=n;for(;r;){if(r.contains(e))return!0;if(ER(r.getBoundingClientRect(),t))return!1;r=r.parentElement}}return!0}function kR(e,t){let n=[];return t.forEach((t,r)=>{if(r.disabled)return;let i=GL({axis:r}),a=gR(r.orientation,i,{x:e.clientX,y:e.clientY});a&&a.distance.x<=0&&a.distance.y<=0&&OR({axisElement:r.element,hitRegion:a.hitRegion.rect,pointerEventTarget:e.target})&&n.push(a.hitRegion)}),n}function AR({layout:e,itemConstraints:t}){let n=t.map(({itemId:t})=>e[t]),r=[...n],i=r.reduce((e,t)=>e+t,0);if(Object.keys(e).length!==t.length)throw Error(`Invalid ${t.length} panel layout: ${Object.values(e).map(e=>`${e}%`).join(`, `)}`);if(!cR(i,100)&&r.length>0)for(let e=0;e<t.length;e++){let t=r[e];rL(t!=null,`No layout data found for index ${e}`),r[e]=100/i*t}let a=0;for(let e=0;e<t.length;e++){let i=n[e];rL(i!=null,`No layout data found for index ${e}`);let o=r[e];rL(o!=null,`No layout data found for index ${e}`);let s=uR({overrideDisabledItems:!0,itemConstraints:t[e],prevSize:i,size:o});o!=s&&(a+=o-s,r[e]=s)}if(!cR(a,0))for(let e=0;e<t.length;e++){let n=r[e];rL(n!=null,`No layout data found for index ${e}`);let i=n+a,o=uR({overrideDisabledItems:!0,itemConstraints:t[e],prevSize:n,size:i});if(n!==o&&(a-=o-n,r[e]=o,cR(a,0)))break}return r.reduce((e,n,r)=>(e[t[r].itemId]=n,e),{})}function jR({axisId:e,itemId:t}){let n=()=>{let t=iR();for(let[n,{defaultLayoutDeferred:r,derivedItemConstraints:i,layout:a,axisSize:o,separatorToItems:s}]of t)if(n.id===e)return{defaultLayoutDeferred:r,derivedItemConstraints:i,axis:n,axisSize:o,layout:a,separatorToItems:s};throw Error(`Group ${e} not found`)},r=()=>{let e=n().derivedItemConstraints.find(e=>e.itemId===t);if(e!==void 0)return e;throw Error(`Panel constraints not found for Panel ${t}`)},i=()=>{let e=n().axis.items.find(e=>e.id===t);if(e!==void 0)return e;throw Error(`Layout not found for Panel ${t}`)},a=()=>{let e=n().layout[t];if(e!==void 0)return e;throw Error(`Layout not found for Panel ${t}`)},o=({nextSize:e,items:n,prevLayout:r,derivedItemConstraints:i})=>{let o=a(),s=n.findIndex(e=>e.id===t),c=s===0,l=s===n.length-1;if(l&&e<o&&(c||n.slice(0,s).every((e,t)=>{let n=i[t];return n?.collapsible&&cR(n.collapsedSize,r[n.itemId])}))){let e=n.slice(0,s).reduce((e,t)=>e+r[t.id],0);return{...r,[t]:ZL(100-e)}}return dR({delta:l?o-e:e-o,initialLayout:r,itemConstraints:i,pivotIndices:l?[s-1,s]:[s,s+1],prevLayout:r,trigger:`imperative-api`})},s=e=>{if(e===a())return;let{defaultLayoutDeferred:t,derivedItemConstraints:r,axis:i,axisSize:s,layout:c,separatorToItems:l}=n(),u=AR({layout:o({nextSize:e,items:i.items,prevLayout:c,derivedItemConstraints:r}),itemConstraints:r});fR(c,u)||oR(i,{defaultLayoutDeferred:t,derivedItemConstraints:r,axisSize:s,layout:u,requestedAxisSize:s,requestedLayout:u,separatorToItems:l})};return{collapse:()=>{let{collapsible:e,collapsedSize:t}=r(),{mutableValues:n}=i(),o=a();e&&o!==t&&(n.expandToSize=o,s(t))},expand:()=>{let{collapsible:e,collapsedSize:t,minSize:n}=r(),{mutableValues:o}=i(),c=a();if(e&&c===t){let e=o.expandToSize??n;e===0&&(e=1),s(e)}},getSize:()=>{let{axis:e}=n(),r=a(),{element:o}=i();return{asPercentage:r,inPixels:e.layoutStrategy?e.layoutStrategy.getItemSizeInPixels(t):e.orientation===`horizontal`?o.offsetWidth:o.offsetHeight}},isCollapsed:()=>{let{collapsible:e,collapsedSize:t}=r(),n=a();return e&&cR(t,n)},resize:e=>{let{axis:t}=n(),{element:r}=i(),a=LL({axis:t}),o=ZL(XL({axisSize:a,itemElement:r,styleProp:e})/a*100);s(o)}}}function MR(e){e.defaultPrevented||kR(e,iR()).forEach(t=>{if(t.separator&&!t.separator.disableDoubleClick){let n=t.items.find(e=>e.constraintProps.defaultSize!==void 0);if(n){let r=n.constraintProps.defaultSize,i=jR({axisId:t.axis.id,itemId:n.id});i&&r!==void 0&&(i.resize(r),e.preventDefault())}}})}function NR(e){let t=iR();for(let[n]of t)if(n.separators.some(t=>t.element===e))return n;throw Error(`Could not find parent Group for separator element`)}function PR({axisId:e}){let t=()=>{let t=iR();for(let[n,r]of t)if(n.id===e)return{axis:n,...r};throw Error(`Could not find Group with id "${e}"`)};return{getLayout(){let{defaultLayoutDeferred:e,layout:n}=t();return e?{}:n},setLayout(e){let{defaultLayoutDeferred:n,derivedItemConstraints:r,axis:i,axisSize:a,layout:o,separatorToItems:s}=t(),c=AR({layout:e,itemConstraints:r});return n?o:(fR(o,c)||oR(i,{defaultLayoutDeferred:n,derivedItemConstraints:r,axisSize:a,layout:c,requestedAxisSize:a,requestedLayout:c,separatorToItems:s}),c)}}}function FR(e,t){let n=NR(e),r=rR(n.id,!0),i=n.separators.find(t=>t.element===e);rL(i,`Matching separator not found`);let a=r.separatorToItems.get(i);rL(a,`Matching panels not found`);let o=a.map(e=>n.items.indexOf(e)),s=PR({axisId:n.id}).getLayout(),c=AR({layout:dR({delta:t,initialLayout:s,itemConstraints:r.derivedItemConstraints,pivotIndices:o,prevLayout:s,trigger:`keyboard`}),itemConstraints:r.derivedItemConstraints});fR(s,c)||oR(n,{defaultLayoutDeferred:r.defaultLayoutDeferred,derivedItemConstraints:r.derivedItemConstraints,axisSize:r.axisSize,layout:c,requestedAxisSize:r.axisSize,requestedLayout:c,separatorToItems:r.separatorToItems},{isUserInteraction:!0})}function IR(e){if(e.defaultPrevented)return;let t=e.currentTarget,n=NR(t);if(!(n.disabled||n.separators.find(e=>e.element===t)?.disabled))switch(e.key){case`ArrowDown`:e.preventDefault(),n.orientation===`vertical`&&FR(t,5);break;case`ArrowLeft`:e.preventDefault(),n.orientation===`horizontal`&&FR(t,-5);break;case`ArrowRight`:e.preventDefault(),n.orientation===`horizontal`&&FR(t,5);break;case`ArrowUp`:e.preventDefault(),n.orientation===`vertical`&&FR(t,-5);break;case`End`:e.preventDefault(),FR(t,100);break;case`Enter`:{e.preventDefault();let{derivedItemConstraints:r,layout:i,separatorToItems:a}=rR(n.id,!0),o=n.separators.find(e=>e.element===t);rL(o,`Matching separator not found`);let s=a.get(o);rL(s,`Matching panels not found`);let c=s[0],l=r.find(e=>e.itemId===c.id);if(rL(l,`Panel metadata not found`),l.collapsible){let e=i[c.id];FR(t,(l.collapsedSize===e?n.mutableState.expandedItemSizes[c.id]??l.minSize:l.collapsedSize)-e)}break}case`F6`:{e.preventDefault();let t=n.separators.map(e=>e.element),r=Array.from(t).findIndex(t=>t===e.currentTarget);rL(r!==null,`Index not found`),t[e.shiftKey?r>0?r-1:t.length-1:r+1<t.length?r+1:0].focus({preventScroll:!0});break}case`Home`:e.preventDefault(),FR(t,-100);break}}function LR(e,t){let{element:n,orientation:r,items:i}=e,a=n.getBoundingClientRect(),o=r===`horizontal`;return GL({expandHitTargets:!1,axis:e,includeDisabled:!0}).map(({items:r,rect:s,separator:c},l)=>{let u=i.indexOf(r[0]),d=o?s.left+s.width/2:s.top+s.height/2;return{active:t.some(t=>{if(t.axis!==e||t.items[0]!==r[0])return!1;if(c||t.separator)return t.separator===c;let n=o?t.rect.left+t.rect.width/2:t.rect.top+t.rect.height/2;return cR(d,n)}),axis:e,key:c?`separator-${c.id}`:`panel-${r[0].id}-${l}`,offset:0,itemIndex:u,rect:new DOMRect((o&&!c?d:s.left)-a.left-n.clientLeft+n.scrollLeft,(!o&&!c?d:s.top)-a.top-n.clientTop+n.scrollTop,o&&!c?0:s.width,!o&&!c?0:s.height),separator:c}})}function RR(e){if(e.defaultPrevented||e.pointerType===`mouse`&&e.button>0)return;let t=iR(),n=kR(e,t);if(n.length===0)return;let r=new Map,i=!1;n.forEach(e=>{e.separator&&(i||(i=!0,e.separator.element.focus({focusVisible:!1,preventScroll:!0})));let n=t.get(e.axis);n&&r.set(e.axis,n.layout)});let a=Array.from(r.keys()).flatMap(e=>e.resizePreviewMode===`separator`?LR(e,n):[]);xL({cursorFlags:0,didPointerMove:!1,hitRegions:n,initialLayoutMap:r,pointerDownAtPoint:{x:e.clientX,y:e.clientY},previewLayoutMap:new Map(r),previews:a,state:`active`}),e.preventDefault()}function zR(e){let t=iR(),n=vL();switch(n.state){case`active`:pR({commit:!1,document:e.currentTarget,event:e,hitRegions:n.hitRegions,initialLayoutMap:n.initialLayoutMap,mountedAxes:t,prevCursorFlags:n.cursorFlags})}}function BR(e){if(e.defaultPrevented)return;let t=vL(),n=iR();switch(t.state){case`active`:if(e.buttons===0){t.previewLayoutMap.forEach((e,t)=>{let r=n.get(t);t.resizePreviewMode===`separator`&&r&&!fR(e,r.layout)&&oR(t,{...r,layout:e,requestedAxisSize:r.axisSize,requestedLayout:e})}),xL({cursorFlags:0,state:`inactive`}),t.hitRegions.forEach(e=>{if(!n.has(e.axis))return;let t=rR(e.axis.id,!0);oR(e.axis,t,{isUserInteraction:!0})}),IL(e.currentTarget);return}for(let n of t.hitRegions)if(n.separator){let{element:t}=n.separator;t.isConnected&&!t.hasPointerCapture?.(e.pointerId)&&t.setPointerCapture?.(e.pointerId)}pR({commit:!1,document:e.currentTarget,event:e,hitRegions:t.hitRegions,initialLayoutMap:t.initialLayoutMap,mountedAxes:n,pointerDownAtPoint:t.pointerDownAtPoint,prevCursorFlags:t.cursorFlags});break;default:{let r=kR(e,n);r.length===0?t.state!==`inactive`&&xL({cursorFlags:0,state:`inactive`}):xL({cursorFlags:0,hitRegions:r,state:`hover`}),IL(e.currentTarget);break}}}function VR(e){if(e.relatedTarget instanceof HTMLIFrameElement)switch(vL().state){case`hover`:xL({cursorFlags:0,state:`inactive`})}}function HR(e){e.defaultPrevented||e.pointerType===`mouse`&&e.button>0||mR(e.currentTarget,e)&&e.preventDefault()}function UR(e){let t=0,n=0,r={};for(let i of e)if(i.defaultSize!==void 0){t++;let e=ZL(i.defaultSize);n+=e,r[i.itemId]=e}else r[i.itemId]=void 0;let i=e.length-t;if(i!==0){let t=ZL((100-n)/i);for(let n of e)n.defaultSize===void 0&&(r[n.itemId]=t)}return r}function WR(e,t){let n=e.map(e=>e.id),r=Object.keys(t);if(n.length!==r.length)return!1;for(let e of n)if(!r.includes(e))return!1;return!0}function GR({axis:e,itemConstraints:t}){let n=e.items.map(({id:e})=>e).join(`,`),r=e.mutableState.defaultLayout;return e.mutableState.layouts[n]??(r&&WR(e.items,r)?r:UR(t))}function KR({itemIds:e,layout:t}){return AR({layout:t,itemConstraints:e.map(e=>({collapsedSize:0,collapsible:!1,defaultSize:void 0,disabled:void 0,itemId:e,maxSize:100,minSize:0}))})}function qR(e,t,n){if(!n[0])return;let r=e.items.find(e=>e.element===t);if(!r||!r.onResize)return;let i=LL({axis:e}),a=e.orientation===`horizontal`?r.element.offsetWidth:r.element.offsetHeight,o=r.mutableValues.prevSize,s={asPercentage:ZL(a/i*100),inPixels:a};r.mutableValues.prevSize=s,r.onResize(s,r.id,o)}function JR(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(e[n]!==t[n])return!1;return!0}function YR(e,t){return e.length===t.length&&e.every((e,n)=>JR(e,t[n]))}function XR({axis:e,nextAxisSize:t,prevAxisSize:n,prevLayout:r}){if(n<=0||t<=0||n===t)return r;let i=0,a=0,o=!1,s=new Map,c=[];for(let l of e.items){let e=r[l.id]??0;switch(l.constraintProps.groupResizeBehavior){case`preserve-pixel-size`:{o=!0;let r=ZL(e/100*n/t*100);s.set(l.id,r),i+=r;break}default:c.push(l.id),a+=e;break}}if(!o||c.length===0)return r;let l=100-i,u={...r};if(s.forEach((e,t)=>{u[t]=e}),a>0)for(let e of c)u[e]=ZL((r[e]??0)/a*l);else{let e=ZL(l/c.length);for(let t of c)u[t]=e}return u}var ZR=new Map;function QR(e){let t=!0;rL(e.element.ownerDocument.defaultView,`Cannot register an unmounted Group`);let n=e.element.ownerDocument.defaultView.ResizeObserver,r=new Set,i=new Set,a=new n(n=>{for(let r of n){let{borderBoxSize:n,target:i}=r;if(i===e.element){if(t){let t=LL({axis:e});if(t===0)return;let n=rR(e.id);if(!n)return;let r=QL(e),i=n.requestedAxisSize,a=n.requestedLayout;n.defaultLayoutDeferred&&(i=t,a=KR({itemIds:e.items.map(({id:e})=>e),layout:GR({axis:e,itemConstraints:r})}));let o=AR({layout:XR({axis:e,nextAxisSize:t,prevAxisSize:i,prevLayout:a}),itemConstraints:r});if(!n.defaultLayoutDeferred&&fR(n.layout,o)&&YR(n.derivedItemConstraints,r)&&n.axisSize===t)continue;oR(e,{defaultLayoutDeferred:!1,derivedItemConstraints:r,axisSize:t,layout:o,requestedAxisSize:i,requestedLayout:a,separatorToItems:n.separatorToItems})}}else qR(e,i,n)}});a.observe(e.element),e.items.forEach(e=>{rL(!r.has(e.id),`Panel ids must be unique; id "${e.id}" was used more than once`),r.add(e.id),e.onResize&&a.observe(e.element)});let o=LL({axis:e}),s=QL(e),c=GR({axis:e,itemConstraints:s}),l=AR({layout:c,itemConstraints:s}),u=e.element.ownerDocument;ZR.set(u,(ZR.get(u)??0)+1);let d=new Map;return GL({axis:e,includeDisabled:!0}).forEach(e=>{e.separator&&d.set(e.separator,e.items)}),oR(e,{defaultLayoutDeferred:o===0,derivedItemConstraints:s,axisSize:o,layout:l,requestedAxisSize:o,requestedLayout:KR({itemIds:e.items.map(({id:e})=>e),layout:c}),separatorToItems:d}),e.separators.forEach(e=>{rL(!i.has(e.id),`Separator ids must be unique; id "${e.id}" was used more than once`),i.add(e.id),e.element.addEventListener(`keydown`,IR)}),ZR.get(u)===1&&(u.addEventListener(`contextmenu`,hR,!0),u.addEventListener(`dblclick`,MR,!0),u.addEventListener(`pointerdown`,RR,!0),u.addEventListener(`pointerleave`,zR),u.addEventListener(`pointermove`,BR),u.addEventListener(`pointerout`,VR),u.addEventListener(`pointerup`,HR,!0)),function(){t=!1,ZR.set(u,Math.max(0,(ZR.get(u)??0)-1)),tR(e),CL(e)&&IL(u),e.separators.forEach(e=>{e.element.removeEventListener(`keydown`,IR)}),ZR.get(u)||(u.removeEventListener(`contextmenu`,hR,!0),u.removeEventListener(`dblclick`,MR,!0),u.removeEventListener(`pointerdown`,RR,!0),u.removeEventListener(`pointerleave`,zR),u.removeEventListener(`pointermove`,BR),u.removeEventListener(`pointerout`,VR),u.removeEventListener(`pointerup`,HR,!0)),a.disconnect()}}function $R({derivedItemConstraints:e,axis:t,layout:n,prevLayout:r,requestedLayout:i}){let a=t.items.map(({id:e})=>e).join(`,`);t.mutableState.layouts[a]=i,r&&e.forEach(e=>{if(e.collapsible){let i=cR(e.collapsedSize,n[e.itemId]),a=cR(e.collapsedSize,r[e.itemId]);i&&!a&&(t.mutableState.expandedItemSizes[e.itemId]=r[e.itemId])}})}function ez(){let[e,t]=(0,J.useState)({});return[e,(0,J.useCallback)(()=>t({}),[])]}function tz(e){let t=(0,J.useRef)({...e});return JI(()=>{for(let n in e)t.current[n]=e[n]},[e]),t.current}var nz=(0,J.createContext)(null);function rz({layout:e,itemConstraints:t,itemId:n,itemIndex:r}){let i,a,o=e[n],s=t.find(e=>e.itemId===n);if(s){let c=s.maxSize,l=s.collapsible?s.collapsedSize:s.minSize,u=[r,r+1];a=AR({layout:dR({delta:l-o,initialLayout:e,itemConstraints:t,pivotIndices:u,prevLayout:e}),itemConstraints:t})[n],i=AR({layout:dR({delta:c-o,initialLayout:e,itemConstraints:t,pivotIndices:u,prevLayout:e}),itemConstraints:t})[n]}return{valueControls:n,valueMax:i,valueMin:a,valueNow:o}}function iz({attributes:e,axisId:t,axisOrientation:n,children:r,className:i,disableCursor:a,disabled:o,disableDoubleClick:s,elementRef:c,id:l,isSharedHitRegion:u,preview:d,registerSeparator:f,requiredStyle:p,style:m,styleDefaults:h,tabIndex:g=0,updateSeparatorProps:_}){let v=tz({disabled:o,disableDoubleClick:s,children:r,className:i,preview:d,style:m}),[y,b]=(0,J.useState)({}),[x,S]=(0,J.useState)(`inactive`),[C,w]=(0,J.useState)(!1),T=(0,J.useRef)(null),E=(0,J.useRef)(null),D=XI(T,c),O=n===`horizontal`?`vertical`:`horizontal`;JI(()=>{let e=T.current;if(e!==null){let n={disabled:v.disabled,disableDoubleClick:v.disableDoubleClick,element:e,id:l,get children(){return v.children},get className(){return v.className},get preview(){return v.preview},get style(){return v.style}};E.current=n;let r=f(n),i=yL(e=>{S(e.next.state!==`inactive`&&e.next.hitRegions.some(e=>e.separator===n||(u?.(e)??!1))?e.next.state:`inactive`)}),a=aR(t,e=>{let{derivedItemConstraints:t,layout:r,separatorToItems:i}=e.next,a=i.get(n);if(a){let n=a[0],i=t.findIndex(e=>e.itemId===n.id),{layoutStrategy:o}=e.axis;b({...rz({layout:r,itemConstraints:t,itemId:n.id,itemIndex:i}),...o?.getItemAriaControls&&{valueControls:o.getItemAriaControls(n.id)}})}});return()=>{E.current=null,i(),a(),r()}}},[t,l,u,f,v]),JI(()=>{let e=E.current;e&&SL(e)},[d]),(0,J.useEffect)(()=>{_(l,{disabled:o,disableDoubleClick:s})},[o,s,l,_]);let k;o&&!a&&(k=`not-allowed`);let A;if(o)A=`disabled`;else switch(x){case`active`:A=`active`;break;default:A=C?`focus`:x}return(0,Y.jsx)(`div`,{...e,"aria-controls":y.valueControls,"aria-disabled":o||void 0,"aria-orientation":O,"aria-valuemax":y.valueMax,"aria-valuemin":y.valueMin,"aria-valuenow":y.valueNow,children:r,className:i,"data-separator":A,"data-testid":l,id:l,onBlur:()=>w(!1),onFocus:()=>w(!0),ref:D,role:`separator`,style:{...h,cursor:k,...m,...p,touchAction:`none`},tabIndex:o?void 0:g})}function az({axis:e,children:t,className:n,crossSpan:r,crossStart:i,disabled:a,elementRef:o,index:s,style:c}){let l=qI(void 0),{getDisableCursor:u,getResizeAxisId:d,gutters:f,registerSeparator:p,separatorPlacements:m,trackCounts:h,updateSeparatorProps:g}=aL(),_=d(e),v=e===`column`?`row`:`column`,y=h[v],b=!!a||!nL(s,h[e]),x=!0;for(let t of m.values())if(t.axis===e&&t.index===s&&!t.disabled&&t.crossStart<i){x=!1;break}let S=(0,J.useCallback)(e=>e.axis.id===_&&e.axis.items.indexOf(e.items[1])===s,[_,s]),C=(0,J.useCallback)(t=>p({axis:e,crossSpan:r,crossStart:i,disabled:!!a,index:s},t),[e,r,i,a,s,p]),w=eL(s),T=tL({crossCount:y,crossSpan:r,crossStart:i,hasGutters:f[v]});return(0,Y.jsx)(iz,{axisId:_,axisOrientation:e===`column`?`horizontal`:`vertical`,className:n,disableCursor:u(),disabled:b,disableDoubleClick:void 0,elementRef:o,id:l,isSharedHitRegion:S,registerSeparator:C,requiredStyle:{gridColumn:e===`column`?w:T,gridRow:e===`row`?w:T},style:c,tabIndex:x?0:-1,updateSeparatorProps:g,children:t})}function oz(e){let{children:t,className:n,disabled:r,elementRef:i,style:a}=e;return e.type===`column`?(0,Y.jsx)(az,{axis:`column`,className:n,crossSpan:e.rowSpan,crossStart:e.row??0,disabled:r,elementRef:i,index:e.column,style:a,children:t}):(0,Y.jsx)(az,{axis:`row`,className:n,crossSpan:e.columnSpan,crossStart:e.column??0,disabled:r,elementRef:i,index:e.row,style:a,children:t})}oz.displayName=`Gridline`;var sz=[`column`,`row`],cz={columns:{},rows:{}};function lz({children:e,className:t,columns:n,defaultLayout:r,disableCursor:i,disabled:a,elementRef:o,gridRef:s,id:c,onLayoutChange:l,onLayoutChanged:u,resizeTargetMinimumSize:d={coarse:20,fine:10},rows:f,style:p,...m}){let h=qI(c),g=(0,J.useCallback)(e=>e===`column`?`${h}:columns`:`${h}:rows`,[h]),_=uz(n,`columns`),v=uz(f,`rows`),y=e=>e===`column`?_:v,b=(0,J.useRef)({onLayoutChange:cz,onLayoutChanged:cz}),x=YI(e=>{mz(b.current.onLayoutChange,e)||(b.current.onLayoutChange=e,l?.(e))}),S=YI((e,t,n)=>{mz(b.current.onLayoutChanged,e)||(b.current.onLayoutChanged=e,u?.(e,{isUserInteraction:t,requestedLayout:n}))}),C=(0,J.useRef)(null),w=XI(C,o),[T,E]=ez(),D=(0,J.useRef)({cells:[],column:{expandedItemSizes:{},layouts:{}},loggedErrors:new Set,row:{expandedItemSizes:{},layouts:{}},separators:new Map}),O={column:!1,row:!1};for(let e of D.current.separators.values())O[e.axis]=!0;dz(e,O);let k=tz({defaultLayout:r,disableCursor:i,resizeTargetMinimumSize:d}),A=YI(()=>!!k.disableCursor),j=(0,J.useCallback)(e=>{let t=D.current;return t.cells=[...t.cells,e],E(),()=>{t.cells=t.cells.filter(t=>t!==e),E()}},[E]),M=(0,J.useCallback)((e,t)=>{let n=D.current;return n.separators=new Map(n.separators),n.separators.set(t,e),E(),()=>{n.separators=new Map(n.separators),n.separators.delete(t),E()}},[E]),N=(0,J.useCallback)((e,{disabled:t,disableDoubleClick:n})=>{for(let r of D.current.separators.keys())r.id===e&&(r.disabled=t,r.disableDoubleClick=n)},[]),P=D.current.separators,F=(0,J.useMemo)(()=>({getDisableCursor:A,getResizeAxisId:g,gutters:{column:O.column,row:O.row},id:h,registerCell:j,registerSeparator:M,separatorPlacements:P,trackCounts:{column:_.length,row:v.length},updateSeparatorProps:N}),[_.length,A,g,O.column,O.row,h,j,M,v.length,P,N]),ee=(0,J.useRef)([]);JI(()=>{let e=C.current;if(e===null)return;let t=D.current,n=pz({cells:t.cells,separatorPlacements:t.separators,trackCounts:{column:_.length,row:v.length}});n.forEach(e=>{t.loggedErrors.has(e)||console.error(e)}),t.loggedErrors=new Set(n);let r=e=>Array.from(t.separators.entries()).filter(([,t])=>t.axis===e).sort(([,e],[,t])=>e.index-t.index).map(([e])=>e),i=sz.map(n=>{let i=n===`column`?_:v,o=n===`column`?v:_,s=i.map(e=>e.id),c=g(n),l=r(n),u=l.length>0,d=i.map(({id:t,...n},r)=>({element:e,id:s[r],idIsStable:!0,mutableValues:{expandToSize:void 0,prevSize:void 0},onResize:void 0,constraintProps:n})),f=()=>{let r=[];if(u){for(let[e,a]of t.separators)if(a.axis===n&&nL(a.index,i.length)){let t=e.element.getBoundingClientRect();r[a.index]=Math.max(r[a.index]??0,n===`column`?t.width:t.height)}}return pL({axis:n,element:e,gutterSizes:r.filter(e=>e!==void 0),hasGutters:u,layout:rR(c)?.layout,trackIds:s})},p,m=k.defaultLayout?.[n===`column`?`columns`:`rows`];if(m!==void 0&&Object.keys(m).length===s.length){p={};for(let e of s){let t=m[e];t!==void 0&&(p[e]=t)}}return{disabled:!!a,element:e,id:c,layoutStrategy:{getItemAriaControls:e=>{let r=s.indexOf(e);return t.cells.filter(e=>{let t=n===`column`?e.column:e.row,i=n===`column`?e.columnSpan:e.rowSpan;return t<=r&&r<t+i}).map(e=>e.element.id).filter(Boolean).join(` `)||void 0},calculateAvailableSize:()=>f().availableSize,calculateHitRegions:({expandHitTargets:e,axis:r,includeDisabled:i})=>dL({axis:n,cells:t.cells,crossTrackCount:o.length,expandHitTargets:e,resizeAxis:r,axisSize:f().availableSize,includeDisabled:i,separatorPlacements:t.separators}),getItemSizeInPixels:e=>f().trackSizes[s.indexOf(e)]??0},mutableState:{defaultLayout:p,disableCursor:!!k.disableCursor,expandedItemSizes:t[n].expandedItemSizes,layouts:t[n].layouts},orientation:n===`column`?`horizontal`:`vertical`,items:d,resizePreviewMode:`panel`,get resizeTargetMinimumSize(){return k.resizeTargetMinimumSize},separators:l}});ee.current=i;let o=i.map(e=>QR(e)),s=()=>{let[e,t]=i.map(e=>rR(e.id));if(!(!e||!t||e.defaultLayoutDeferred||t.defaultLayoutDeferred))return{layout:{columns:e.layout,rows:t.layout},requestedLayout:{columns:e.requestedLayout,rows:t.requestedLayout}}};{let e=s();e&&(x(e.layout),S(e.layout,!1,e.requestedLayout))}let c=i.map(e=>aR(e.id,t=>{let{defaultLayoutDeferred:n,derivedItemConstraints:r,layout:a,requestedLayout:o}=t.next;if(n||r.length===0)return;$R({derivedItemConstraints:r,axis:e,layout:a,prevLayout:t.prev?.layout,requestedLayout:o});let c=s();if(c){let e=vL(),n=e.state!==`active`||!e.hitRegions.some(e=>i.includes(e.axis));x(c.layout),n&&S(c.layout,t.isUserInteraction,c.requestedLayout)}}));return()=>{ee.current=[],o.forEach(e=>e()),c.forEach(e=>e())}},[_,a,g,h,S,x,v,T,k]),(0,J.useEffect)(()=>{ee.current.forEach(e=>{e.mutableState.defaultLayout=r?.[e.orientation===`horizontal`?`columns`:`rows`],e.mutableState.disableCursor=!!i})}),(0,J.useImperativeHandle)(s,()=>{let e=()=>{let[e,t]=sz.map(g);return!nR(e)||!nR(t)?{columns:{},rows:{}}:{columns:PR({axisId:e}).getLayout(),rows:PR({axisId:t}).getLayout()}},t=e=>e.map(e=>`"${e}"`).join(`, `),n=(e,n)=>{let r=g(e),i=()=>{let i=nR(r);return rL(i,`Grid "${h}" has not been mounted`),rL(i.items.some(e=>e.id===n),`Grid "${h}" no longer contains a ${e} with id "${n}"; ${e} ids are ${t(i.items.map(e=>e.id))}`),jR({axisId:r,itemId:n})};return{collapse:()=>i().collapse(),expand:()=>i().expand(),getSize:()=>i().getSize(),isCollapsed:()=>i().isCollapsed(),resize:e=>i().resize(e)}};return{getLayout:e,getTrackById:(e,r)=>{let i=e===`column`?_:v,a=`${r}`;return rL(i.some(e=>e.id===a),`Grid "${h}" does not contain a ${e} with id "${a}"; ${e} ids are ${t(i.map(e=>e.id))}`),n(e,a)},getTrackByIndex:(e,t)=>{let r=e===`column`?_:v,i=Number.isInteger(t)?r[t]:void 0;return rL(i,`Grid "${h}" does not contain a ${e} at index ${t}; it has ${r.length} ${e}s`),n(e,i.id)},setLayout:t=>(sz.forEach(e=>{let n=t[e===`column`?`columns`:`rows`],r=g(e);n&&nR(r)&&PR({axisId:r}).setLayout(n)}),e())}},[_,g,h,v]);let te=()=>sz.map(e=>{let t=rR(g(e)),n=y(e);return(t&&!t.defaultLayoutDeferred?n.map(e=>`minmax(0, ${t.layout[e.id]??1}fr)`):fz(n,r?.[e===`column`?`columns`:`rows`])).join(O[e]?` auto `:` `)}).join(`|`),[ne,I]=(0,J.useSyncExternalStore)((0,J.useCallback)(e=>{let t=sz.map(t=>aR(g(t),e));return()=>t.forEach(e=>e())},[g]),te,te).split(`|`);return(0,Y.jsx)(iL.Provider,{value:F,children:(0,Y.jsx)(`div`,{...m,className:t,"data-grid":!0,"data-testid":h,id:h,ref:w,style:{height:`100%`,width:`100%`,overflow:`hidden`,...p,display:`grid`,gridTemplateColumns:ne,gridTemplateRows:I,touchAction:`none`},children:(0,Y.jsx)(nz.Provider,{value:null,children:e})})})}lz.displayName=`Grid`;function uz(e,t){let n=JSON.stringify(e);return(0,J.useMemo)(()=>{let r=typeof e==`number`?Array.from({length:e},(e,t)=>({id:`${t}`})):e.map((e,t)=>({...e,id:`${e.id??t}`}));return rL(r.length>0,`Grid must have at least one track; "${t}" is ${n}`),r},[n])}function dz(e,t){J.Children.forEach(e,e=>{if((0,J.isValidElement)(e))if(e.type===oz){let{type:n}=e.props;n===`column`?t.column=!0:n===`row`&&(t.row=!0)}else typeof e.type==`symbol`&&e.props!==null&&typeof e.props==`object`&&`children`in e.props&&dz(e.props.children,t)})}function fz(e,t){if(t)return e.map(e=>`minmax(0, ${t[e.id]??1}fr)`);let n=e.map(e=>e.defaultSize===void 0?void 0:mL(e.defaultSize)),r=100,i=0;return n.forEach(e=>{e===void 0?i++:e[1]===`%`&&(r-=e[0])}),n.map(e=>{if(e===void 0)return`minmax(0, ${Math.max(0,r)/Math.max(1,i)}fr)`;let[t,n]=e;return n===`%`?`minmax(0, ${t}fr)`:`${t}${n}`})}function pz({cells:e,separatorPlacements:t,trackCounts:n}){let r=[];for(let t of e)sz.forEach(e=>{let[i,a]=e===`column`?[t.column,t.columnSpan]:[t.row,t.rowSpan],o=n[e];(!Number.isInteger(i)||!Number.isInteger(a)||i<0||a<1||i+a>o)&&r.push(`Invalid Cell ${e} placement (${e}: ${i}, ${e}Span: ${a}); Grid has ${o} ${e}s`)});let i=({axis:e,crossSpan:t,crossStart:n,disabled:r,index:i})=>{let a=e===`column`?`row`:`column`,o=`type="${e}" ${e}={${i}}`;return(n!==0||t!==void 0)&&(o+=` ${a}={${n}}`),t!==void 0&&(o+=` ${a}Span={${t}}`),r&&(o+=` disabled`),`<Gridline ${o} />`},a=Array.from(t.values()).filter(e=>{let{axis:t,crossSpan:i,crossStart:a,index:o}=e,s=t===`column`?`row`:`column`,c=n[t],l=n[s],u=!0;return nL(o,c)||(r.push(`Invalid ${t} Gridline ${t} (${o}); must be between 1 and ${c-1}`),u=!1),!Number.isInteger(a)||a<0||a>=l?(r.push(`Invalid ${t} Gridline ${s} (${a}); must be between 0 and ${l-1}`),u=!1):i!==void 0&&(!Number.isInteger(i)||i<1||a+i>l)&&(r.push(`Invalid ${t} Gridline ${s}Span (${i}); Grid has ${l} ${s}s`),u=!1),u}),o=e=>{let t=n[e.axis===`column`?`row`:`column`];return[e.crossStart,e.crossSpan===void 0?t:e.crossStart+e.crossSpan]};return a.forEach((t,n)=>{let{axis:s,index:c}=t,[l,u]=o(t);for(let n of e){let[e,a,o,d]=s===`column`?[n.column,n.columnSpan,n.row,n.rowSpan]:[n.row,n.rowSpan,n.column,n.columnSpan];if(e<c&&c<e+a&&o<u&&l<o+d){let n=s===`column`?`row`:`column`;r.push(`${i(t)} overlaps a Cell that spans across it (${s}: ${e}, ${s}Span: ${a}, ${n}: ${o}, ${n}Span: ${d}); use the ${n} and ${n}Span props to render gridlines beside the Cell instead`)}}for(let e of a.slice(n+1))if(e.axis===s&&e.index===c){let[n,a]=o(e);n<u&&l<a&&r.push(`${i(t)} overlaps ${i(e)}`)}}),r}function mz(e,t){return fR(e.columns,t.columns)&&fR(e.rows,t.rows)}function hz(e){for(let t=1;t<e.length;t++)if(RL(e[t-1],e[t])>0)return!1;return!0}function gz({separator:e}){let{element:t}=e,n=(0,J.useRef)(null);return JI(()=>{let e=t.cloneNode(!0),r=[t,...t.querySelectorAll(`*`)],i=[e,...e.querySelectorAll(`*`)],a=t.ownerDocument.defaultView;return r.forEach((e,t)=>{let n=i[t];if(n instanceof a.HTMLElement||n instanceof a.SVGElement){let t=a.getComputedStyle(e);for(let e=0;e<t.length;e++){let r=t.item(e);n.style.setProperty(r,t.getPropertyValue(r))}}n.removeAttribute(`data-testid`),n.removeAttribute(`id`)}),Object.assign(e.style,{boxSizing:`border-box`,height:`100%`,margin:`0`,position:`static`,transform:`none`,width:`100%`}),n.current.appendChild(e),()=>e.remove()},[t]),(0,Y.jsx)(`div`,{ref:n,style:{height:`100%`,opacity:.65,pointerEvents:`none`,width:`100%`}})}function _z(){let e=(0,J.useContext)(nz);return rL(e,`Group Context not found; did you render a Panel or Separator outside of a Group?`),e}function vz(e){let{registerOverlay:t}=_z(),n=(0,J.useRef)(e);JR(n.current,e)||(n.current=e);let r=n.current;return JI(()=>t(r),[t,r]),null}vz.displayName=`SeparatorOverlay`;function yz({active:e,orientation:t,style:n,...r}){let i;switch(t){case`horizontal`:i={height:`100%`,minWidth:`1px`};break;case`vertical`:i={minHeight:`1px`,width:`100%`};break}return(0,Y.jsx)(`div`,{...r,"data-separator-overlay":e?`active`:`inactive`,style:{...i,...n,flexShrink:0,pointerEvents:`none`}})}function bz({overlay:e,preview:t}){let{axis:n,offset:r,rect:i,separator:a}=t,o=n.orientation===`horizontal`,s=a?.preview,c=e;return(0,J.isValidElement)(s)&&s.type===vz&&(c=s.props,s=void 0),s??(c?s=(0,Y.jsx)(yz,{...c,active:t.active,orientation:n.orientation}):a&&(s=(0,Y.jsx)(gz,{separator:a}))),(0,Y.jsx)(`div`,{"aria-hidden":`true`,"data-resize-preview":!0,inert:!0,style:{height:i.height,left:i.left,pointerEvents:`none`,position:`absolute`,top:i.top,transform:o?`translateX(${r}px)`:`translateY(${r}px)`,width:i.width},children:s})}function xz(e){return Array.from(e).sort(RL)}function Sz(e,t){let n=(0,J.useRef)({getLayout:()=>({}),setLayout:wL});(0,J.useImperativeHandle)(t,()=>n.current,[]),JI(()=>{Object.assign(n.current,PR({axisId:e}))})}function Cz({groupId:e,resizePreviewMode:t}){let[n,r]=(0,J.useState)([]),i=(0,J.useRef)(n);return JI(()=>{let n=n=>{let a=nR(e),o=t===`separator`&&n.state===`active`?n.previews.filter(e=>e.axis===a&&(e.active||!cR(e.offset,0))):[],s=i.current;s.length===o.length&&o.every((e,t)=>e===s[t])||(i.current=o,r(o))};if(t!==`separator`){n(vL());return}let a=yL(({next:e})=>n(e));return n(vL()),a},[e,t]),n}function wz({children:e,className:t,defaultLayout:n,disableCursor:r,disabled:i,elementRef:a,groupRef:o,id:s,onLayoutChange:c,onLayoutChanged:l,orientation:u=`horizontal`,resizePreviewMode:d=`panel`,resizeTargetMinimumSize:f={coarse:20,fine:10},style:p,...m}){let h=(0,J.useRef)({onLayoutChange:{},onLayoutChanged:{}}),g=YI(e=>{fR(h.current.onLayoutChange,e)||(h.current.onLayoutChange=e,c?.(e))}),_=YI((e,t,n)=>{fR(h.current.onLayoutChanged,e)||(h.current.onLayoutChanged=e,l?.(e,{isUserInteraction:t,requestedLayout:n}))}),v=qI(s),[y,b]=(0,J.useState)(),x=Cz({groupId:v,resizePreviewMode:d}),S=(0,J.useRef)(null),[C,w]=ez(),T=(0,J.useRef)([]),E=(0,J.useRef)({lastExpandedPanelSizes:{},layouts:{},panels:[],separators:[]}),D=XI(S,a);Sz(v,o);let O=YI((e,t)=>{let r=rR(e);if(r)return{flexGrow:r.layout[t]??1};if(n?.[t])return{flexGrow:n?.[t]}}),k=tz({defaultLayout:n,disableCursor:r,resizeTargetMinimumSize:f}),A=(0,J.useMemo)(()=>({get disableCursor(){return!!k.disableCursor},getPanelStyles:O,id:v,orientation:u,registerPanel:e=>{let t=E.current;return t.panels=zL(u,[...t.panels,e]),w(),()=>{t.panels=t.panels.filter(t=>t!==e),w()}},registerOverlay:e=>(b(e),()=>{b(void 0)}),registerSeparator:e=>{let t=E.current;return t.separators=zL(u,[...t.separators,e]),w(),()=>{t.separators=t.separators.filter(t=>t!==e),w()}},updatePanelProps:(e,{disabled:t})=>{let n=E.current.panels.find(t=>t.id===e);n&&(n.constraintProps.disabled=t);let r=nR(v),i=rR(v);r&&i&&oR(r,{...i,derivedItemConstraints:QL(r)})},updateSeparatorProps:(e,{disabled:t,disableDoubleClick:n})=>{let r=E.current.separators.find(t=>t.id===e);r&&(r.disabled=t,r.disableDoubleClick=n)}}),[O,v,w,u,k]),j=(0,J.useRef)(null);return JI(()=>{let e=S.current;if(e===null)return;let t=E.current;t.panels=zL(u,t.panels),t.separators=zL(u,t.separators),T.current=xz([...t.panels.map(({element:e})=>e),...t.separators.map(({element:e})=>e)]);let n;if(k.defaultLayout!==void 0&&Object.keys(k.defaultLayout).length===t.panels.length){n={};for(let e of t.panels){let t=k.defaultLayout[e.id];t!==void 0&&(n[e.id]=t)}}let r={disabled:!!i,element:e,id:v,mutableState:{defaultLayout:n,disableCursor:!!k.disableCursor,expandedItemSizes:E.current.lastExpandedPanelSizes,layouts:E.current.layouts},orientation:u,items:t.panels,resizePreviewMode:d,get resizeTargetMinimumSize(){return k.resizeTargetMinimumSize},separators:t.separators};j.current=r;let a=QR(r),{defaultLayoutDeferred:o,derivedItemConstraints:s,layout:c,requestedLayout:l}=rR(r.id,!0);!o&&s.length>0&&(g(c),_(c,!1,l));let f=aR(v,e=>{let{defaultLayoutDeferred:t,derivedItemConstraints:n,layout:i,requestedLayout:a}=e.next;if(t||n.length===0)return;$R({derivedItemConstraints:n,axis:r,layout:i,prevLayout:e.prev?.layout,requestedLayout:a});let o=vL(),s=o.state!==`active`||!o.hitRegions.some(e=>e.axis===r);g(i),s&&_(i,e.isUserInteraction,a)});return()=>{j.current=null,a(),f()}},[i,v,_,g,u,C,d,k]),JI(()=>{hz(T.current)||w()}),(0,J.useEffect)(()=>{let e=j.current;e&&(e.mutableState.defaultLayout=n,e.mutableState.disableCursor=!!r)}),(0,Y.jsx)(nz.Provider,{value:A,children:(0,Y.jsxs)(`div`,{...m,className:t,"data-group":!0,"data-testid":v,id:v,ref:D,style:{height:`100%`,width:`100%`,overflow:`hidden`,position:d===`separator`?`relative`:void 0,...p,display:`flex`,flexDirection:u===`horizontal`?`row`:`column`,flexWrap:`nowrap`,touchAction:u===`horizontal`?`pan-y`:`pan-x`},children:[e,x.map(e=>(0,Y.jsx)(bz,{overlay:y,preview:e},e.key))]})})}wz.displayName=`Group`;function Tz(e,t){let{id:n}=_z(),r=(0,J.useRef)({collapse:TL,expand:TL,getSize:()=>({asPercentage:0,inPixels:0}),isCollapsed:()=>!1,resize:TL});(0,J.useImperativeHandle)(t,()=>r.current,[]),JI(()=>{Object.assign(r.current,jR({axisId:n,itemId:e}))})}function Ez({children:e,className:t,collapsedSize:n=`0%`,collapsedThreshold:r,collapsible:i=!1,defaultSize:a,disabled:o,elementRef:s,groupResizeBehavior:c=`preserve-relative-size`,id:l,maxSize:u=`100%`,minSize:d=`0%`,onResize:f,panelRef:p,style:m,...h}){let g=!!l,_=qI(l),v=tz({disabled:o}),y=(0,J.useRef)(null),b=XI(y,s),{getPanelStyles:x,id:S,orientation:C,registerPanel:w,updatePanelProps:T}=_z(),E=f!==null,D=YI((e,t,n)=>{f?.(e,l,n)});JI(()=>{let e=y.current;if(e!==null){let t={element:e,id:_,idIsStable:g,mutableValues:{expandToSize:void 0,prevSize:void 0},onResize:E?D:void 0,constraintProps:{groupResizeBehavior:c,collapsedSize:n,collapsedThreshold:r,collapsible:i,defaultSize:a,disabled:v.disabled,maxSize:u,minSize:d}};return w(t)}},[c,n,r,i,a,E,_,g,u,d,D,w,v]),(0,J.useEffect)(()=>{T(_,{disabled:o})},[o,_,T]),Tz(_,p);let O=()=>{let e=x(S,_);if(e)return JSON.stringify(e)},k=(0,J.useSyncExternalStore)(e=>aR(S,e),O,O),A;return A=k?JSON.parse(k):a===void 0?{flexGrow:1}:{flexGrow:void 0,flexShrink:void 0,flexBasis:a},(0,Y.jsx)(`div`,{...h,"data-disabled":o||void 0,"data-panel":!0,"data-testid":_,id:_,ref:b,style:{...Dz,display:`flex`,flexBasis:0,flexShrink:1,overflow:`visible`,...A},children:(0,Y.jsx)(`div`,{className:t,style:{maxHeight:`100%`,maxWidth:`100%`,flexGrow:1,overflow:`auto`,...m,touchAction:C===`horizontal`?`pan-y`:`pan-x`},children:e})})}Ez.displayName=`Panel`;var Dz={minHeight:0,maxHeight:`100%`,height:`auto`,minWidth:0,maxWidth:`100%`,width:`auto`,border:`none`,borderWidth:0,padding:0,margin:0},Oz={flexBasis:`auto`},kz={flexGrow:0,flexShrink:0};function Az({children:e,className:t,disabled:n,disableDoubleClick:r,elementRef:i,id:a,preview:o,style:s,...c}){let l=qI(a),{disableCursor:u,id:d,orientation:f,registerSeparator:p,updateSeparatorProps:m}=_z();return(0,Y.jsx)(iz,{attributes:c,axisId:d,axisOrientation:f,className:t,disableCursor:u,disabled:n,disableDoubleClick:r,elementRef:i,id:l,preview:o,registerSeparator:p,requiredStyle:kz,style:s,styleDefaults:Oz,updateSeparatorProps:m,children:e})}Az.displayName=`Separator`;function jz({className:e,...t}){return(0,Y.jsx)(wz,{"data-slot":`resizable-panel-group`,className:q(`flex h-full w-full`,e),...t})}function Mz(e){return(0,Y.jsx)(Ez,{"data-slot":`resizable-panel`,...e})}function Nz({className:e,...t}){return(0,Y.jsx)(Az,{"data-slot":`resizable-handle`,className:q(`group/handle relative shrink-0 bg-border outline-none`,`aria-[orientation=vertical]:w-px aria-[orientation=horizontal]:h-px`,e),...t,children:(0,Y.jsx)(`div`,{className:q(`pointer-events-none absolute z-10 bg-transparent transition-colors`,`group-aria-[orientation=vertical]/handle:inset-y-0 group-aria-[orientation=vertical]/handle:-left-px group-aria-[orientation=vertical]/handle:w-[3px]`,`group-aria-[orientation=horizontal]/handle:inset-x-0 group-aria-[orientation=horizontal]/handle:-top-px group-aria-[orientation=horizontal]/handle:h-[3px]`,`group-data-[separator=hover]/handle:bg-primary group-data-[separator=focus]/handle:bg-primary group-data-[separator=active]/handle:bg-primary`)})})}var Pz=`oa.panes`,Fz=200,Iz=new Set,Lz=[];function Rz(e,t){return t?`${e}/${t}`:`new`}var zz=e=>typeof e==`object`&&!!e&&!Array.isArray(e);function Bz(e){if(!zz(e))return{};let t={};for(let[n,r]of Object.entries(e))zz(r)&&Object.values(r).every(e=>typeof e==`number`)&&(t[n]=r);return t}function Vz(e){let t;try{t=JSON.parse(e??`null`)}catch{t=null}let n={};if(zz(t)&&zz(t.pages))for(let[e,r]of Object.entries(t.pages))zz(r)&&(n[e]={open:Array.isArray(r.open)?r.open.filter(e=>typeof e==`string`):[],sizes:Bz(r.sizes)});return{pages:n,last:zz(t)?Bz(t.last):{}}}var Hz,Uz;function Wz(){let e=Uz??null;if(Uz===void 0)try{e=globalThis.localStorage?.getItem(Pz)??null}catch{e=null}return Hz?.raw!==e&&(Hz={raw:e,kept:Vz(e)}),Hz.kept}function Gz(e,t,n){let r=Wz(),{[e]:i,...a}=r.pages,o=t(i??{open:[],sizes:{}}),s=o.open.length>0||Object.keys(o.sizes).length>0?{...a,[e]:o}:a,c=Object.keys(s);for(let e of c.slice(0,Math.max(0,c.length-Fz)))delete s[e];let l=JSON.stringify({pages:s,last:n??r.last});try{globalThis.localStorage?.setItem(Pz,l),Uz=void 0}catch{Uz=l}for(let e of Iz)e()}function Kz(e){return Iz.add(e),()=>Iz.delete(e)}function qz(e,t,n){!n&&eB.get(e)===t&&eB.delete(e),Gz(e,e=>e.open.includes(t)===n?e:{...e,open:n?[...e.open,t]:e.open.filter(e=>e!==t)})}function Jz(e){eB.delete(e),Gz(e,e=>({...e,open:[]}))}function Yz(e){return(0,J.useSyncExternalStore)(Kz,()=>Wz().pages[e]?.open??Lz,()=>Lz)}function Xz(e,t){let n=Wz();return n.pages[e]?.sizes[t]??n.last[t]}var Zz=0;function Qz(e,t){return Wz().pages[e]?.sizes[t]?e:`~${Zz}`}function $z(e,t,n){Zz++,Gz(e,e=>({...e,sizes:{...e.sizes,[t]:n}}),{...Wz().last,[t]:n})}var eB=new Map;function tB(e,t){t===void 0?eB.delete(e):eB.set(e,t);for(let e of Iz)e()}function nB(e){return(0,J.useSyncExternalStore)(Kz,()=>eB.get(e),()=>void 0)}var rB=new Map,iB=new Map,aB=new Map,oB=new Map,sB=new Set,cB=0;function lB(e){return sB.add(e),()=>sB.delete(e)}function uB(e,t){rB.set(e,t===void 0?{at:++cB}:{path:t,at:++cB});for(let e of sB)e()}function dB(e){return(0,J.useSyncExternalStore)(lB,()=>rB.get(e),()=>void 0)}function fB(e,t){iB.set(e,{path:t,at:++cB});for(let e of sB)e()}function pB(e){return(0,J.useSyncExternalStore)(lB,()=>iB.get(e),()=>void 0)}function mB(e){aB.set(e,++cB);for(let e of sB)e()}function hB(e){return(0,J.useSyncExternalStore)(lB,()=>aB.get(e),()=>void 0)}function gB(e,t){oB.set(e,{key:t,at:++cB});for(let e of sB)e()}function _B(e){return(0,J.useSyncExternalStore)(lB,()=>oB.get(e),()=>void 0)}var vB=e=>`${e.package}/${e.id}`,yB=`docs`,bB=`subagent`,xB=`workspace`,SB=`chat`,CB=`panes`,wB=50,TB=(0,J.createContext)({page:``,enabled:!1,panes:[],open:[],expanded:void 0,panelProps:void 0,reveal:void 0,show:void 0,docs:[],docsLoaded:!1,subagent:null}),EB=0;function DB({projectId:e,agentId:t,enabled:n,files:r,context:i,toggleContext:a,activity:o,subagent:s,children:c}){let l=n?e:null,{value:u,loaded:d}=Bt(l?()=>Il(l):null,[],4e3,[l],l?{remember:`docs:${l}`}:void 0),{panels:f}=x(),p=Rz(l??``,t),m=_B(p),h=s!==void 0&&m!==void 0,g=(0,J.useMemo)(()=>{if(!l)return[];let e=f.filter(e=>e.projects.includes(l)).map(e=>({id:vB(e),label:e.label,icon:e.icon,panel:e})),t=[...u.length>0?[{id:yB,label:`Docs`,icon:wo}]:[],...h?[{id:bB,label:`Subagent`,icon:co,hidden:!0}]:[]];return[...e,...t]},[f,l,u.length,h]),_=Yz(p),v=(0,J.useMemo)(()=>_.flatMap(e=>g.find(t=>t.id===e)??[]),[_,g]),y=nB(p);(0,J.useEffect)(()=>()=>{Ye()&&Jz(p)},[p]);let b=dB(p),S=g.find(e=>e.panel?.changes)?.id,C=b?.at;(0,J.useEffect)(()=>{C===void 0||S===void 0||C<=EB||(EB=C,qz(p,S,!0))},[C,S,p]);let w=pB(p),T=g.find(e=>e.panel?.files)?.id,E=w?.at;(0,J.useEffect)(()=>{E===void 0||T===void 0||E<=EB||(EB=E,qz(p,T,!0))},[E,T,p]);let D=hB(p),O=g.find(e=>e.panel?.screen)?.id;(0,J.useEffect)(()=>{D===void 0||O===void 0||D<=EB||(EB=D,qz(p,O,!0))},[D,O,p]);let k=m?.at;(0,J.useEffect)(()=>{k===void 0||!h||k<=EB||(EB=k,qz(p,bB,!0))},[k,h,p]);let A=(0,J.useMemo)(()=>new Set(r.filter(e=>i.has(e))),[r,i]),j=(0,J.useMemo)(()=>({files:A,toggle:a}),[A,a]),M=(0,J.useMemo)(()=>l?{projectId:l,...t?{agentId:t,...o===void 0?{}:{activity:o}}:{},context:j}:void 0,[l,t,o,j]),N=(0,J.useMemo)(()=>({page:p,enabled:l!==null,panes:g,open:v,expanded:v.some(e=>e.id===y)?y:void 0,panelProps:M,reveal:b,show:w,docs:u,docsLoaded:d,subagent:s??null}),[p,l,g,v,y,M,b,w,u,d,s]);return(0,Y.jsx)(TB.Provider,{value:N,children:c})}function OB(){let{open:e}=(0,J.useContext)(TB);return sr()&&e.length>0}function kB(){let{page:e,panes:t,open:n}=(0,J.useContext)(TB),r=t.filter(e=>!e.hidden);return OB()||r.length===0?null:(0,Y.jsx)(`div`,{role:`group`,"aria-label":`Panes`,className:`flex shrink-0 items-center gap-0.5`,children:r.map(t=>{let r=n.includes(t);return(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(B,{variant:`ghost`,size:`icon-sm`,className:q(`shrink-0 text-muted-foreground`,r&&`bg-accent text-accent-foreground`),"aria-label":t.label,"aria-pressed":r,onClick:()=>qz(e,t.id,!r)}),children:(0,Y.jsx)(t.icon,{className:`h-4 w-4`})}),(0,Y.jsx)(W,{children:t.label})]},t.id)})})}function AB(){let{page:e,panes:t,open:n}=(0,J.useContext)(TB);return OB()?(0,Y.jsxs)(be,{children:[(0,Y.jsx)(z,{"aria-label":`Panes`,className:`flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:bg-accent hover:text-accent-foreground`,children:(0,Y.jsx)(bo,{className:`h-4 w-4`,"aria-hidden":!0})}),(0,Y.jsx)(dt,{align:`start`,className:`min-w-[12rem]`,children:t.filter(e=>!e.hidden||n.includes(e)).map(t=>(0,Y.jsxs)(Me,{closeOnClick:!0,checked:n.includes(t),onCheckedChange:n=>qz(e,t.id,n),children:[(0,Y.jsx)(t.icon,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),` `,t.label]},t.id))})]}):null}function jB({pane:e}){let{page:t,expanded:n,panelProps:r,reveal:i,show:a,docs:o,docsLoaded:s,subagent:c}=(0,J.useContext)(TB),l=n===e.id,[u,d]=(0,J.useState)(null),[f,p]=(0,J.useState)(null),m=(0,J.useMemo)(()=>({title:u,actions:f}),[u,f]);return(0,Y.jsx)(`div`,{className:l?`absolute inset-0 z-30 flex bg-background`:`flex h-full min-h-0 min-w-0`,children:(0,Y.jsxs)(`section`,{"aria-label":e.label,className:`flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden bg-background`,children:[(0,Y.jsxs)(`header`,{className:`flex h-11 shrink-0 items-center gap-0.5 border-b border-border pr-2 pl-2`,children:[(0,Y.jsx)(`div`,{ref:d,className:`peer flex min-w-0 flex-1 items-center gap-0.5 empty:hidden`}),(0,Y.jsx)(`h2`,{className:`min-w-0 flex-1 truncate pl-2 text-[13px] text-muted-foreground peer-[:not(:empty)]:hidden`,children:e.label}),(0,Y.jsx)(`div`,{ref:p,className:`flex shrink-0 items-center gap-0.5 empty:hidden`}),(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(B,{variant:`ghost`,size:`icon-sm`,className:`shrink-0 text-muted-foreground`,"aria-label":l?`Bring ${e.label} back to its place`:`Let ${e.label} fill the page`,"aria-pressed":l,onClick:()=>tB(t,l?void 0:e.id)}),children:l?(0,Y.jsx)(Ko,{className:`h-3.5 w-3.5`}):(0,Y.jsx)(Wo,{className:`h-3.5 w-3.5`})}),(0,Y.jsx)(W,{children:l?`Back to its place`:`Fill the page`})]}),(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(B,{variant:`ghost`,size:`icon-sm`,className:`shrink-0 text-muted-foreground`,"aria-label":`Close ${e.label}`,onClick:()=>qz(t,e.id,!1)}),children:(0,Y.jsx)(ii,{className:`h-4 w-4`})}),(0,Y.jsx)(W,{children:`Close`})]})]}),(0,Y.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden`,children:e.id===bB?(0,Y.jsx)(pt.Provider,{value:m,children:c}):e.panel&&r?(0,Y.jsx)(rl,{package:e.panel.package,label:`${e.label} pane`,children:(0,Y.jsx)(pt.Provider,{value:m,children:(0,Y.jsx)(e.panel.Panel,{...r,...e.panel.changes&&i?{reveal:i}:{},...e.panel.files&&a?{show:a}:{}})})}):(0,Y.jsx)(KI,{docs:o,loaded:s})})]})})}var MB=e=>e.map(e=>e.id).join(`+`);function NB(){let{page:e,open:t,expanded:n}=(0,J.useContext)(TB),r=MB(t),i=Xz(e,r),a=Qz(e,r),o=e=>`${e.id}@${a}`;return(0,Y.jsx)(jz,{orientation:`vertical`,disabled:n!==void 0,onLayoutChanged:(n,{isUserInteraction:i})=>{let a=t.map(e=>[e.id,n[o(e)]]);i&&a.every(([,e])=>e!==void 0)&&$z(e,r,Object.fromEntries(a))},children:t.flatMap((e,n)=>[...n>0?[(0,Y.jsx)(Nz,{"aria-label":`The height of ${t[n-1].label} and ${e.label}`},`above-${e.id}`)]:[],(0,Y.jsx)(Mz,{id:o(e),defaultSize:`${i?.[e.id]??100/t.length}%`,minSize:96,style:{overflow:`hidden`},children:(0,Y.jsx)(jB,{pane:e})},e.id)])})}function PB({children:e}){let{page:t,enabled:n,open:r,expanded:i}=(0,J.useContext)(TB),a=sr(),o=r.length>0&&!a;if(!n)return e;let s=Xz(t,xB)?.[CB]??wB,c=`${CB}@${Qz(t,xB)}`;return(0,Y.jsxs)(`div`,{className:`relative flex min-w-0 flex-1`,children:[(0,Y.jsxs)(jz,{orientation:`horizontal`,disabled:i!==void 0,onLayoutChanged:(e,{isUserInteraction:n})=>{let[r,i]=[e[SB],e[c]];n&&r!==void 0&&i!==void 0&&$z(t,xB,{[SB]:r,[CB]:i})},children:[(0,Y.jsx)(Mz,{id:SB,minSize:320,className:`flex min-w-0 flex-col`,style:{overflow:`hidden`},children:e}),o&&(0,Y.jsx)(Nz,{"aria-label":`The width of the chat and the panes`}),o&&(0,Y.jsx)(Mz,{id:c,defaultSize:`${s}%`,minSize:288,style:{overflow:`hidden`},children:(0,Y.jsx)(NB,{})})]}),a&&r.length>0&&(0,Y.jsx)(`div`,{className:q(`absolute inset-y-0 right-0 z-20 flex flex-col divide-y divide-border border-l border-border bg-background`,i?`left-0`:`w-2/3 min-w-64 max-w-full`),children:r.map(e=>(0,Y.jsx)(`div`,{className:`min-h-0 flex-1`,children:(0,Y.jsx)(jB,{pane:e})},e.id))})]})}var FB=[];function IB({projectId:e,onProjectRemoved:t}){return(0,Y.jsx)(GI,{projectId:e,events:FB,onProjectRemoved:t})}function LB({projectId:e,onProjectRemoved:t}){return(0,Y.jsxs)(`div`,{className:`flex h-11 shrink-0 items-center gap-2 overflow-hidden pr-2 md:pl-4 max-md:pl-11`,children:[(0,Y.jsx)(Rn,{}),(0,Y.jsx)(AB,{}),(0,Y.jsx)(`div`,{className:`grow shrink-0`}),e!==`session`&&(0,Y.jsx)(IB,{projectId:e,onProjectRemoved:t}),(0,Y.jsx)(kB,{})]})}function RB({events:e,headline:t=!1}){let n=zB(e);if(n.length===0)return null;let r=n[n.length-1];return(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsxs)(`span`,{role:`alert`,className:`flex shrink-0 items-center gap-1.5 text-danger`,children:[(0,Y.jsx)(ls,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsxs)(`span`,{className:`font-medium`,children:[n.length,` `,n.length===1?`error`:`errors`]}),t&&(0,Y.jsxs)(`span`,{className:`min-w-0 truncate text-muted-foreground`,children:[`· `,r.headline]})]})}),(0,Y.jsx)(W,{className:`whitespace-pre-line`,children:n.map(e=>e.headline).join(`
135
+ `)})]})}function zB(e){let t=na(e),n=MI(e),r=n&&!n.ok&&!n.stopped&&!n.waiting?n.detail:void 0;return r?t.filter(e=>!r.includes(e.headline)):t}function BB(e){if(e.length===0)return null;let t=MI(e);return t!==void 0&&!t.ok&&!t.stopped&&!t.waiting?{dot:`bg-danger`,label:`failed`,tone:`text-danger`,...t?.detail?{detail:t.detail}:{}}:t?.stopped?{dot:`bg-warning`,label:`stopped`,tone:`text-warning`}:t?.waiting?{dot:`bg-warning`,label:`waiting for an answer`,tone:`text-warning`}:jI(e)?{dot:`animate-pulse bg-warning`,label:`building…`,tone:`text-muted-foreground`}:{dot:`bg-muted-foreground`,label:`finished`,tone:`text-muted-foreground`}}function VB({events:e}){let t=ra(e),n=BB(e),r=zB(e),i=LI(t);return!i&&!n&&r.length===0?null:(0,Y.jsxs)(`div`,{className:`grid gap-3 border-b border-border p-4 md:grid-cols-2`,children:[n&&(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-sm md:col-span-2`,children:[(0,Y.jsx)(`span`,{className:q(`h-2.5 w-2.5 shrink-0 rounded-full`,n.dot),"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:q(`text-xs`,n.tone),children:n.detail?`${n.label} — ${n.detail}`:n.label})]}),r.length>0&&(0,Y.jsx)(`div`,{className:`text-sm md:col-span-2`,children:(0,Y.jsx)(RB,{events:e,headline:!0})}),i&&(0,Y.jsx)(`a`,{href:i.href,target:`_blank`,rel:`noreferrer`,className:`text-xs text-primary underline underline-offset-2 md:col-span-2`,children:i.label})]})}function HB({projectId:e,projectName:t,waiting:n,events:r,onAgentStarted:i,files:a,context:o,addContext:s,removeContext:c,toggleContext:l,onOpenAgent:u,errors:d,onProjectRemoved:f,onSkillsChanged:p,home:m,projects:h,onPickProject:g,onProjectAdded:_}){let v=e===he;return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(LB,{projectId:e,onProjectRemoved:m===void 0?f:void 0}),(0,Y.jsx)(Sp,{errors:d}),(0,Y.jsx)(Zt,{className:`min-h-0 flex-1`,children:(0,Y.jsxs)(`div`,{className:`mx-auto w-full max-w-3xl`,children:[r.length>0&&(0,Y.jsx)(VB,{events:r}),n.length>0&&(0,Y.jsxs)(`section`,{"aria-label":`Waiting on you`,className:`p-3`,children:[(0,Y.jsxs)(`h2`,{className:`mb-3 px-2 text-xs font-semibold uppercase tracking-wide text-muted-foreground`,children:[`Waiting on you · `,n.length]}),(0,Y.jsx)(zp,{items:n,onOpenAgent:u},e)]}),!v&&(0,Y.jsx)(nI,{projectId:e,onChanged:p},e)]})}),(0,Y.jsx)(xI,{projectId:e,projectName:t,onAgentStarted:i,files:a,context:o,addContext:s,removeContext:c,toggleContext:l,home:m,projects:h,onPickProject:g,onProjectAdded:_})]})}var UB=H(`onQuota`),WB=3e4;function GB(){return Bt(UB,void 0,WB,[],{remember:`quota`,stored:!0}).value}function KB(e){return new Intl.DateTimeFormat(`en-US`,{weekday:`short`}).format(e).slice(0,2).toUpperCase()}function qB(e,t,n=KB){let r=t-e;if(!(r>0))return[];let i=[e],a=new Date(e);for(a.setHours(24,0,0,0);a.getTime()<t;)i.push(a.getTime()),a.setHours(24,0,0,0);i.push(t);let o=[];for(let t=0;t<i.length-1;t++){let a=i[t],s=i[t+1];o.push({startPercent:(a-e)/r*100,endPercent:(s-e)/r*100,label:n(a)})}let s=o[0],c=o.at(-1);return o.length>1&&s.label===c.label&&(s.endPercent-s.startPercent>=c.endPercent-c.startPercent?c.label=void 0:s.label=void 0),o}var JB=5;function YB(e,t,n=JB){return e>=100?`full`:e>t+n?`over`:e>=t-n?`near`:`under`}function XB(e,t){return Math.min(Math.max(e+t,0),100)}function ZB(e,t,n){return(e-t)/100*n}function QB(e,t){return Math.min(Math.max(e,0),100)/100*t}function $B(e,t){if(!(t<=0))return e/t*100}function eV(e,t){let n=Math.min(Math.max(e,0),100);return{start:n,end:Math.max(n,Math.min(Math.max(t,0),100))}}var tV={under:`bg-primary`,near:`bg-info`,over:`bg-warning`,full:`bg-danger`},nV={under:`text-primary`,near:`text-info`,over:`text-warning`,full:`text-danger`},rV=` — `;function iV(e){return e.find(e=>e.kind===`week`)}function aV(e,t){let n=t.map(e=>`“${e.label}”`).join(`, `);return e?e.resetsAtText?`Couldn't parse quota: the week resets “${e.resetsAtText}”, which isn't a phrasing this version recognizes.`:`No quota week to place: “${e.label}” reports ${e.percentUsed}% used but no reset time, and the week is drawn between its start and its reset — there is no span to place it in.`:`Couldn't parse quota: no “Current week (all models)” line in the readout — it reported ${n}.`}function oV({swatch:e,children:t}){return(0,Y.jsxs)(`span`,{className:`flex items-center gap-1`,children:[e,t]})}function sV({boundary:e,percentUsed:t,offset:n,onChangeOffset:r,others:i}){let a=qB(e.startsAt,e.resetsAt),o=YB(t,e.percent),s=n!==void 0,c=XB(e.percent,n??0),l=eV(t,s?c:t),u=s&&l.end>l.start,d=ZB(c,e.percent,e.resetsAt-e.startsAt),f=s&&c>e.percent+14.285714285714286,p=`${Math.round(t)}% of the week used, against a boundary of ${Math.round(e.percent)}% on day ${e.day} of 7`,m=e.resetsAt-e.startsAt,h=ZB(t,e.percent,m),g=h>=0,_=QB(t,m),v=$B(t,e.percent);return(0,Y.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Y.jsx)(`div`,{className:`relative h-4 text-[10px] font-medium tracking-wide text-muted-foreground`,children:a.map((e,t)=>e.label&&(0,Y.jsx)(`span`,{className:`absolute top-0 -translate-x-1/2`,style:{left:`${(e.startPercent+e.endPercent)/2}%`},children:e.label},t))}),(0,Y.jsxs)(`div`,{className:`relative h-4`,children:[(0,Y.jsxs)(`div`,{role:`img`,"aria-label":p,className:`absolute inset-x-0 top-[3px] h-2.5 overflow-hidden rounded-full bg-muted`,children:[(0,Y.jsx)(`div`,{className:q(`absolute inset-y-0 left-0`,tV[o]),style:{width:`${l.start}%`}}),u&&(0,Y.jsx)(`div`,{className:q(`absolute inset-y-0 opacity-35`,tV[o]),style:{left:`${l.start}%`,width:`${l.end-l.start}%`}}),a.slice(1).map((e,t)=>(0,Y.jsx)(`div`,{className:`absolute inset-y-0 w-1 bg-background/60`,style:{left:`${e.startPercent}%`},"aria-hidden":!0},t)),(0,Y.jsx)(`div`,{className:`absolute inset-y-0 w-0.5 -translate-x-1/2 bg-foreground`,style:{left:`${Math.min(Math.max(e.percent,0),100)}%`},"aria-hidden":!0})]}),s&&(0,Y.jsx)(`input`,{type:`range`,"aria-label":`Unattended work stops at`,className:q(`absolute inset-0 h-full w-full cursor-grab appearance-none bg-transparent active:cursor-grabbing`,`[&::-webkit-slider-runnable-track]:bg-transparent`,`[&::-moz-range-track]:border-none [&::-moz-range-track]:bg-transparent`,`[&::-webkit-slider-thumb]:h-3.5 [&::-webkit-slider-thumb]:w-3.5 [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:rounded-full`,`[&::-webkit-slider-thumb]:border [&::-webkit-slider-thumb]:border-background [&::-webkit-slider-thumb]:bg-foreground [&::-webkit-slider-thumb]:shadow-sm`,`[&::-moz-range-thumb]:h-3.5 [&::-moz-range-thumb]:w-3.5 [&::-moz-range-thumb]:rounded-full [&::-moz-range-thumb]:border-none`,`[&::-moz-range-thumb]:border [&::-moz-range-thumb]:border-background [&::-moz-range-thumb]:bg-foreground [&::-moz-range-thumb]:shadow-sm`),min:0,max:100,step:`any`,value:c,onChange:t=>{let n=Math.round(Number(t.target.value)-e.percent);r?.(Math.min(Math.max(n,-50),50))}})]}),(0,Y.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[(0,Y.jsxs)(K,{children:[(0,Y.jsxs)(V,{render:(0,Y.jsx)(`span`,{className:`cursor-default`}),children:[`You are `,(0,Y.jsx)(`span`,{className:q(`font-medium`,nV[o]),children:Fn(Math.abs(h))}),` `,g?`over`:`under`,` the week's pace`]}),(0,Y.jsxs)(W,{className:`max-w-64`,children:[`You are `,en(Math.abs(h)),` `,g?`above`:`below`,` the quota boundary.`,(0,Y.jsx)(`br`,{}),(0,Y.jsx)(`br`,{}),`You're`,` `,g?`over-consuming`:`under-consuming`,`: you spend `,g?`faster`:`slower`,` than the week's pace allows.`]})]}),`:`,` `,(0,Y.jsxs)(K,{children:[(0,Y.jsxs)(V,{render:(0,Y.jsx)(`span`,{className:`cursor-default`}),children:[(0,Y.jsx)(`span`,{className:`font-medium text-foreground`,children:Fn(_)}),` spent`]}),(0,Y.jsxs)(W,{className:`max-w-64`,children:[en(_),` of the week's allowance has been consumed — `,Math.round(t),`% of it, said in the same unit as the pace figure beside it.`]})]}),v!==void 0&&(0,Y.jsxs)(Y.Fragment,{children:[`,`,` `,(0,Y.jsxs)(K,{children:[(0,Y.jsxs)(V,{render:(0,Y.jsx)(`span`,{className:`cursor-default`}),children:[(0,Y.jsxs)(`span`,{className:q(`font-medium`,nV[o]),children:[Math.round(v),`%`]}),` of pace`]}),(0,Y.jsxs)(W,{className:`max-w-64`,children:[`Against the `,Math.round(e.percent),`% of the week allowed by day `,e.day,` of 7 — 100% is exactly on pace. This is the line that parks unattended work, not the week's total.`]})]})]}),`.`,` `,(0,Y.jsxs)(K,{children:[(0,Y.jsxs)(V,{render:(0,Y.jsx)(`span`,{className:`cursor-default`}),children:[`Resets `,fn(e.resetsAt)]}),(0,Y.jsx)(W,{children:vi(e.resetsAt)})]}),`.`,i.length>1?(0,Y.jsxs)(Y.Fragment,{children:[` `,(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(`span`,{className:`cursor-default`}),children:`Show all limits`}),(0,Y.jsx)(W,{children:(0,Y.jsx)(`table`,{className:`border-collapse text-left`,children:(0,Y.jsx)(`tbody`,{children:i.map(e=>(0,Y.jsx)(lV,{window:e},e.label))})})})]})]}):null]}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-x-3 gap-y-1 text-[11px] text-muted-foreground max-sm:text-xs`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-3 gap-y-1`,children:[(0,Y.jsx)(oV,{swatch:(0,Y.jsx)(`span`,{className:q(`h-2 w-2 rounded-sm`,tV[o]),"aria-hidden":!0}),children:`Used`}),s&&(0,Y.jsx)(oV,{swatch:(0,Y.jsx)(`span`,{className:q(`h-2 w-2 rounded-sm opacity-35`,tV[o]),"aria-hidden":!0}),children:`Budget for Autonomous AI`}),(0,Y.jsx)(oV,{swatch:(0,Y.jsx)(`span`,{className:`h-2 w-0.5 bg-foreground`,"aria-hidden":!0}),children:(0,Y.jsxs)(K,{children:[(0,Y.jsxs)(V,{render:(0,Y.jsx)(`span`,{className:`inline-flex cursor-default items-center gap-0.5`}),children:[`Quota boundary`,(0,Y.jsx)(ho,{className:`h-3 w-3`,"aria-hidden":!0})]}),(0,Y.jsxs)(W,{className:`max-w-64 space-y-2`,children:[(0,Y.jsx)(`p`,{children:`Not a hard limit — just an indication of whether you're over- or under-consuming. It's calculated as a pro-rated share of the weekly limit.`}),(0,Y.jsx)(`p`,{children:`If your usage matches the quota boundary, then you're spending exactly what the week's pace allows.`}),(0,Y.jsx)(`p`,{children:`Fun fact: the quota boundary is shown exactly at the current time in the week usage bar above.`})]})]})})]}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-2 gap-y-1`,children:[f&&(0,Y.jsxs)(K,{children:[(0,Y.jsxs)(V,{render:(0,Y.jsx)(`span`,{className:`inline-flex cursor-default items-center gap-1 text-warning`}),children:[(0,Y.jsx)(ls,{className:`h-3 w-3`,"aria-hidden":!0}),`Eager consumption`,(0,Y.jsx)(ho,{className:`h-3 w-3`,"aria-hidden":!0})]}),(0,Y.jsxs)(W,{children:[`Autonomous AI will spend tokens `,en(d),` faster than the week's pace allows`]})]}),s&&(0,Y.jsxs)(K,{children:[(0,Y.jsxs)(V,{render:(0,Y.jsx)(`span`,{className:q(`inline-flex cursor-default items-center gap-1.5 text-xs`,u?`text-foreground`:`text-warning`)}),children:[(0,Y.jsx)(`span`,{"aria-hidden":!0,className:q(`size-1.5 shrink-0 rounded-full`,u?`bg-primary`:`bg-warning`)}),u?(0,Y.jsxs)(Y.Fragment,{children:[`Agents may start work on their own up to `,(0,Y.jsxs)(`strong`,{className:`tabular-nums`,children:[Math.round(c),`%`]}),` of the week`,(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:`· drag the handle to change`})]}):(0,Y.jsxs)(Y.Fragment,{children:[`Agents start no work on their own`,(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:`· drag the handle right to allow it`})]})]}),(0,Y.jsx)(W,{className:`max-w-64`,children:u?`Autonomous AI enabled means that unattended work may start on its own while the account is under the line.`:`Autonomous AI disabled means that no agent starts on its own — every new agentic work is triggered by you manually.`})]})]})]})]})}function cV({window:e}){return(0,Y.jsxs)(`div`,{className:`flex items-baseline justify-between gap-2 text-xs`,children:[(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:e.label}),(0,Y.jsxs)(`span`,{className:`text-muted-foreground`,children:[Math.round(e.percentUsed),`% used`,e.resetsAtText?`${rV}resets ${e.resetsAtText}`:``]})]})}function lV({window:e}){return(0,Y.jsxs)(`tr`,{children:[(0,Y.jsx)(`td`,{className:`pr-3 align-baseline text-muted-foreground`,children:e.label}),(0,Y.jsxs)(`td`,{className:`whitespace-nowrap align-baseline text-muted-foreground`,children:[Math.round(e.percentUsed),`% used`,e.resetsAtText?`${rV}resets ${e.resetsAtText}`:``]})]})}function uV(e){switch(e.unavailable){case void 0:return;case`no-subscription`:return`This account has no subscription usage to report, so there is no boundary to measure against.`;case`agent-not-found`:return`Claude Code was not found, so usage cannot be read.`;case`unrecognized`:return e.windows.length?`Claude Code's latest usage readout wasn't one this version recognizes, so these numbers are from the reading before it.`:`Claude Code reported its usage in a way this version does not recognize. Trying again shortly.`;default:return e.windows.length?`Couldn't refresh just now, so these numbers may be a little behind.`:`Reading your usage now.`}}var dV=500;function fV(e,t){let[n,r]=(0,J.useState)(e),[i,a]=(0,J.useState)(),o=(0,J.useRef)(null),s=(0,J.useRef)(void 0);return(0,J.useEffect)(()=>{e!==void 0&&(o.current!==null&&o.current!==e||(o.current=null,r(e)))},[e]),(0,J.useEffect)(()=>()=>clearTimeout(s.current),[]),[n,n=>{r(n),a(void 0),o.current=n,clearTimeout(s.current),s.current=setTimeout(()=>{t(n).then(t=>{t.ok||o.current!==n||(o.current=null,a(t.error),e!==void 0&&r(e))})},dV)},i]}function pV({limit:e,projects:t,boundary:n,percentUsed:r,others:i}){let a=Wn(),o=t.map(e=>e.id).join(`,`),{value:s}=Bt(()=>e.read(a,t),void 0,1e4,[e.package,o],{remember:`usage-limit:${e.package}:${o}`,stored:!0}),[c,l,u]=fV(s,n=>e.save(a,t,n));return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(sV,{boundary:n,percentUsed:r,...c===void 0?{}:{offset:c,onChangeOffset:l},others:i}),u&&(0,Y.jsxs)(`p`,{role:`alert`,className:`text-xs text-danger`,children:[`The limit was not saved: `,u]})]})}function mV({projects:e}){let t=GB(),{usageLimit:n}=x(),r=(Ss(`claude`).view?.accounts??[]).filter(e=>!e.own),i=t&&!(t.windows.length===0&&r.length>0)?uV(t):void 0,a=t?.unavailable!==void 0&&t.windows.length>0?t.readAt:void 0,o=t?iV(t.windows):void 0,s=t?.windows??[];return(0,Y.jsxs)(vr,{children:[(0,Y.jsx)(Kn,{children:(0,Y.jsx)(sn,{className:`text-base`,children:`Usage`})}),(0,Y.jsxs)(zr,{className:`space-y-4`,children:[!t&&(0,Y.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Reading your usage…`}),t?.boundary&&o?n?(0,Y.jsx)(rl,{package:n.package,label:`usage limit`,children:(0,Y.jsx)(pV,{limit:n,projects:il(n.projects,e),boundary:t.boundary,percentUsed:o.percentUsed,others:s})}):(0,Y.jsx)(sV,{boundary:t.boundary,percentUsed:o.percentUsed,others:s}):t&&t.windows.length?(0,Y.jsx)(`p`,{role:`alert`,className:`text-sm text-danger`,children:aV(o,s)}):null,!(t?.boundary&&o)&&s.length?(0,Y.jsx)(`div`,{className:`space-y-1 border-t border-border pt-3`,children:s.map(e=>(0,Y.jsx)(cV,{window:e},e.label))}):null,(0,Y.jsx)(Ns,{}),i?(0,Y.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[i,a===void 0?``:` Last read ${wi(new Date(a).toISOString())}.`]}):null]})]})}function hV(){let e=`rounded bg-muted px-1`;return(0,Y.jsxs)(`div`,{className:`space-y-1 text-xs text-muted-foreground`,children:[(0,Y.jsx)(`p`,{children:`Adding a project lets agents work in its folder. Adding it:`}),(0,Y.jsxs)(`ul`,{className:`list-disc space-y-0.5 pl-4`,children:[(0,Y.jsx)(`li`,{children:`makes no commit on your branch and pushes nothing`}),(0,Y.jsxs)(`li`,{children:[`lets OpenAgent keep its own files there, in hidden folders (`,(0,Y.jsx)(`code`,{className:e,children:`.openagent`}),`,`,` `,(0,Y.jsx)(`code`,{className:e,children:`.branches`}),`, `,(0,Y.jsx)(`code`,{className:e,children:`.agent-runner`}),`)`]}),(0,Y.jsxs)(`li`,{children:[`keeps the agents’ records in your own folder `,(0,Y.jsx)(`code`,{className:e,children:`~/.openagent`}),`, outside the project, unless you choose to share them`]}),(0,Y.jsxs)(`li`,{children:[`gives each agent four basic skills in its own copy, hidden from git: `,(0,Y.jsx)(`code`,{className:e,children:`branches`}),`,`,` `,(0,Y.jsx)(`code`,{className:e,children:`logs`}),`, `,(0,Y.jsx)(`code`,{className:e,children:`question`}),`, and `,(0,Y.jsx)(`code`,{className:e,children:`github`}),` when the project is on GitHub`]})]}),(0,Y.jsx)(`p`,{children:`Agents work in their own copies, on their own branches. Your files and your branch stay as they are.`}),(0,Y.jsx)(`p`,{className:`italic`,children:`A folder with no git, or a repository with no commit yet, gets one empty first commit.`})]})}var gV=`/update-tickets`;function _V({busy:e,onStart:t,onConfigure:n,lastImportedAt:r,disabled:i,variant:a,size:o=`sm`,className:s}){return(0,Y.jsx)(Ht,{...a?{variant:a}:{},size:o,...i===void 0?{}:{disabled:i},...s?{className:s}:{},icon:(0,Y.jsx)(es,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),label:`Update tickets`,menuAriaLabel:`Other ways to update the tickets`,tooltip:r?`Bring tickets/ up to date with the issues and comments changed since the last import.`:`Bring tickets/ up to date with the issue tracker. With no import on record, everything open comes across.`,busy:e,starting:e,onStart:t,onConfigure:n,prompt:gV,configureDescription:`Opens the launcher with the update prompt, so you can set the model and where it runs.`})}var vV=`Hide; Settings › Appearance brings it back`;function yV(e){return e>=5&&e<12?`Good morning`:e>=12&&e<18?`Good afternoon`:`Good evening`}function bV({projects:e,onAgentStarted:t,onSelectProject:n,onProjectAdded:r}){let{value:i,reload:a}=Bt(Vl,null,1e4,[]),o=Ra(),s=om(),{start:c,busy:l,error:u}=oh(),{person:d}=rm(),{missing:f,hosts:p,reload:m}=uc(),h=(0,J.useRef)(new Set),[g,_]=(0,J.useState)(),v=i?.projects[0]?.projectId??null,y=i?.totals.projects??0,b=i?.projects.some(e=>e.hasTickets)??!1,x=s===`granted`&&Ha(o),S=()=>{Fa({notifyBrowser:!0}),s==="default"&&Notification.requestPermission()},C=async()=>{if(!v)return;let e=await c(v,gV,ah(o));e&&t(v,gV,e.agentId)},w=f.find(e=>e.key===`agent`);w&&h.current.add(`agent`);let T=h.current.has(`agent`)?[{key:`agent`,label:`Set up ${w?.name??`your coding agent`}`,description:w?.words,done:!w,doneNote:`Ready`,...w?{action:w.fix}:{}}]:[],E=(p?.hosts??[]).flatMap(e=>{let t=e.provider;if(!t)return[];let n=Ys(e)===`connected`,r=t.accounts.find(e=>e.runs&&e.ok)?.login??t.accounts.find(e=>e.ok)?.login;return[{key:`host:${e.host}`,label:`Connect ${t.name}`,description:t.installed&&t.accounts.length===0?`OpenAgent pushes and opens ${t.requestWord}s with an account of its own, never your own login.`:rc(e),done:n,...r?{doneNote:`@${r}`}:{},action:(0,Y.jsx)(lc,{row:e,onChanged:m,size:`sm`})}]}),D=[...T,...E,{key:`project`,label:`Add your first project`,description:`A git repo your agents work in, each in its own copy and on its own branch. Your files and your branch stay as they are.`,info:(0,Y.jsx)(hV,{}),done:y>0,...e.length>0?{doneNote:e.map(e=>e.name).join(`, `)}:{},action:(0,Y.jsx)(Pp,{look:`add`,none:{label:`Add a project`},picked:null,projects:e,onPick:()=>void a(),onProjectAdded:()=>{r(),a()}})},...(i?.queue.length??0)>0?[{key:`todos`,label:`Populate the queue of AI tasks`,description:`The agent queue: each entry is work the agent picks up on its own, so a filled queue is what lets it keep going without you.`,done:(i?.totals.openTodos??0)>0}]:[],...i?.projects.some(e=>e.providesTickets)?[{key:`tickets`,label:`Populate tickets/`,description:`tickets/ holds the bigger things to work on, in the repo. The agent researches and plans them, and they are the input the queue is filled from.`,done:b,optional:!0,action:(0,Y.jsxs)(`div`,{className:`flex flex-col items-end gap-1`,children:[(0,Y.jsx)(_V,{variant:`default`,busy:l,disabled:!v,onStart:()=>void C(),onConfigure:()=>v&&n(v)}),!v&&(0,Y.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`Add a project first`}),u&&(0,Y.jsx)(`span`,{className:`text-xs text-destructive`,children:u})]})}]:[],{key:`browser-notification`,label:`Turn on notifications`,description:`Desktop pings while the dashboard is open, so a session waiting on you does not sit unnoticed.`,done:x,optional:!0,action:s===`denied`?(0,Y.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`Blocked in your browser settings`}):s===`unsupported`?(0,Y.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`Not supported by this browser`}):(0,Y.jsx)(B,{size:`sm`,variant:`outline`,onClick:S,children:`Turn on`})}],O=g!==void 0&&D.some(e=>e.key===g&&!e.done)?g:D.find(e=>!e.done)?.key,k=i!==null&&D.every(e=>e.done||e.optional),A=d?`, ${Om(d.name)}`:``;return(0,Y.jsxs)(vr,{children:[(0,Y.jsxs)(Kn,{className:`flex flex-row items-center justify-between gap-3`,children:[(0,Y.jsx)(`h2`,{className:`min-w-0 text-lg font-semibold tracking-tight`,children:k?`You're all set${A}`:`${yV(new Date().getHours())}${A}`}),(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-3`,children:[(0,Y.jsx)(`ol`,{"aria-label":`${D.filter(e=>e.done).length} of ${D.length} done`,className:`flex items-center gap-1.5`,children:D.map(e=>(0,Y.jsx)(`li`,{"aria-hidden":!0,className:q(`h-1.5 w-6 rounded-full`,e.done?`bg-[var(--color-primary)]`:e.key===O?`bg-[var(--color-primary)]/40`:`bg-muted-foreground/20`)},e.key))}),k&&v&&(0,Y.jsx)(B,{size:`sm`,onClick:()=>{Fa({onboardingDismissed:!0}),n(v)},children:`Start your first session`}),(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(B,{variant:`ghost`,size:`sm`,onClick:()=>Fa({onboardingDismissed:!0}),"aria-label":vV}),children:(0,Y.jsx)(ii,{className:`h-4 w-4`,"aria-hidden":!0})}),(0,Y.jsx)(W,{children:vV})]})]})]}),(0,Y.jsx)(zr,{children:(0,Y.jsx)(`ol`,{className:`divide-y divide-border`,children:D.map((e,t)=>{let n=e.key===O;return(0,Y.jsxs)(`li`,{"aria-label":e.label,"aria-current":n?`step`:void 0,className:`flex items-start gap-3 py-3 first:pt-0 last:pb-0`,children:[e.done?(0,Y.jsx)(`span`,{"aria-label":`Done`,className:`mt-0.5 flex size-6 shrink-0 items-center justify-center rounded-full bg-[var(--color-primary)] text-[var(--color-primary-foreground)]`,children:(0,Y.jsx)(In,{className:`h-3.5 w-3.5`,"aria-hidden":!0})}):(0,Y.jsx)(`span`,{"aria-hidden":!0,className:q(`mt-0.5 flex size-6 shrink-0 items-center justify-center rounded-full border text-xs font-medium tabular-nums`,n?`border-[var(--color-primary)] text-[var(--color-primary)]`:`border-border text-muted-foreground`),children:t+1}),(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 gap-3 max-sm:flex-col sm:items-start`,children:[(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1`,children:[(0,Y.jsxs)(`div`,{className:`mt-1 flex flex-wrap items-center gap-x-2`,children:[(0,Y.jsxs)(`button`,{type:`button`,disabled:e.done||n,onClick:()=>_(e.key),className:q(`flex flex-wrap items-center gap-x-2 text-left text-sm`,e.done?`text-muted-foreground`:n?`font-medium`:`text-muted-foreground hover:text-foreground`),children:[(0,Y.jsx)(`span`,{children:e.label}),e.done&&e.doneNote&&(0,Y.jsxs)(`span`,{className:`truncate text-xs text-muted-foreground`,children:[`· `,e.doneNote]}),e.optional&&!e.done&&(0,Y.jsx)(`span`,{className:`rounded-full border border-border px-1.5 py-0.5 text-[10px] font-normal uppercase tracking-wide text-muted-foreground`,children:`Optional`})]}),n&&e.info&&(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(`button`,{type:`button`,"aria-label":`More on ${e.label}`,className:`text-muted-foreground hover:text-foreground`}),children:(0,Y.jsx)(Bo,{className:`h-3.5 w-3.5`,"aria-hidden":!0})}),(0,Y.jsx)(W,{className:`max-w-sm`,children:e.info})]})]}),n&&e.description&&(typeof e.description==`string`?(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e.description}):e.description)]}),n&&e.action&&(0,Y.jsx)(`div`,{className:`flex shrink-0 sm:justify-end`,children:e.action})]})]},e.key)})})})]})}var xV=60*6e4,SV=[];function CV(){let{value:e,reload:t}=Bt(Xn,SV,xV,[]);return e.length===0?null:(0,Y.jsx)(`div`,{className:`space-y-2`,children:e.map(e=>(0,Y.jsx)(wV,{update:e,onUpdated:t},e.agent))})}function wV({update:e,onUpdated:t}){let{busy:n,error:r,run:i}=ni(),a=Vr[e.agent],o=async()=>{(await i(()=>Be(e.agent),`${a} could not be updated.`)).ok&&(Lr(`models`),Te(`models`,Fe),await t())};return(0,Y.jsxs)(`div`,{role:`status`,className:`rounded-md border border-border px-3 py-2 text-sm`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-3 gap-y-1`,children:[(0,Y.jsx)(po,{className:`h-4 w-4 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Y.jsxs)(`span`,{className:`flex-1`,children:[a,` `,e.latest,` is out. This computer has `,e.installed,`.`]}),(0,Y.jsx)(B,{size:`xs`,variant:`outline`,disabled:n,onClick:()=>void o(),children:n?`Updating…`:`Update ${a}`})]}),r&&(0,Y.jsx)(`p`,{className:`mt-1 text-xs text-danger`,children:r})]})}function TV({working:e,onSelectAgent:t}){return(0,Y.jsxs)(vr,{children:[(0,Y.jsx)(Kn,{children:(0,Y.jsxs)(sn,{className:`flex items-center gap-2 text-base`,children:[(0,Y.jsx)(co,{className:`h-4 w-4 shrink-0 text-muted-foreground`}),`Agents`,(0,Y.jsx)(`span`,{className:`truncate text-xs font-normal text-muted-foreground`,children:`Agents currently working`})]})}),(0,Y.jsx)(zr,{children:e.length===0?(0,Y.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No agent is at work.`}):(0,Y.jsx)(`ul`,{className:`space-y-0.5`,children:e.map(e=>(0,Y.jsx)(EV,{label:DV(e),cloud:e.cloud,computer:e.computer,at:e.updatedAt,projectName:e.projectName,onOpen:()=>t(e.projectId,e.agentId)},`${e.projectId}:${e.agentId}`))})})]})}function EV({label:e,cloud:t,computer:n,at:r,projectName:i,onOpen:a}){return(0,Y.jsx)(`li`,{children:(0,Y.jsxs)(`button`,{type:`button`,onClick:a,className:`flex w-full items-baseline gap-2 rounded-md px-2 py-1.5 text-left hover:bg-accent focus-visible:bg-accent focus-visible:outline-none`,children:[(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`shrink-0 text-muted-foreground/50`,children:`•`}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm`,children:e}),t&&(0,Y.jsx)(`span`,{className:`shrink-0 text-[10px] uppercase text-muted-foreground`,children:t===`waiting`?`waiting`:`in cloud`}),(0,Y.jsx)(`span`,{className:`shrink-0 text-xs text-muted-foreground`,children:i}),n&&(0,Y.jsx)(Nr,{computer:n}),r&&(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(`span`,{className:`shrink-0 whitespace-nowrap text-xs tabular-nums text-muted-foreground/80`}),children:Or(r)}),(0,Y.jsx)(W,{children:fr(r)})]})]})})}function DV(e){return e.intent?.trim()||e.scope?.trim()||e.projectName}function OV(e){let{cards:t}=x();return t.flatMap(t=>{let n=t.Card,r=t.computer?il(e.map(e=>e.id),e):il(t.projects,e);return r.length===0&&!t.computer?[]:[{id:`${t.package}/${t.id}`,label:t.label,order:t.order??50,width:t.width??`1/2`,minWidth:t.minWidth??`1/3`,node:(0,Y.jsx)(rl,{package:t.package,label:`${t.id} card`,children:(0,Y.jsx)(n,{projects:r})})}]})}var kV=`@openagt/skill-logs`,AV=5;function jV(e){let t=new Map;for(let n of e.flatMap(e=>e.used)){let e=t.get(n.skill);e?(e.uses+=n.uses,e.runs+=n.runs,n.lastAt>e.lastAt&&(e.lastAt=n.lastAt)):t.set(n.skill,{...n})}return[...t.values()].sort((e,t)=>t.uses-e.uses||t.lastAt.localeCompare(e.lastAt))}var MV=[];function NV({projects:e,onSelectProject:t}){let n=e.map(e=>e.id).join(`,`),{value:r,loaded:i,reload:a}=Bt(()=>Promise.all(e.map(async e=>{let[t,n]=await Promise.all([VF(e.id).catch(()=>null),Qt(e.id,kV,[`skills`,`--local`,`--days`,`30`]).then(e=>e.ok&&Array.isArray(e.output)?e.output:[],()=>[])]);return{project:e,skills:t,used:n}})),MV,6e4,[n],{remember:`skills-card:${n}`,stored:!0});(0,J.useEffect)(()=>KF(()=>void a()),[a]);let o=jV(r),s=new Set(o.map(e=>e.skill)),c=[...new Set(r.flatMap(e=>e.skills?rI(e.skills).heldNames:[]))].filter(e=>!s.has(e)).sort(),l=r.filter(e=>e.skills&&rI(e.skills).newer.length>0),[u,d]=(0,J.useState)(!1),f=ni(),p=async()=>{d(!0);try{for(let e of l)if(!(await iI(e.project.id,e.skills,f.run)).ok)break;await a()}finally{d(!1)}};return(0,Y.jsxs)(vr,{children:[(0,Y.jsxs)(Kn,{children:[(0,Y.jsxs)(sn,{className:`flex items-center gap-2 text-base`,children:[(0,Y.jsx)($o,{className:`h-4 w-4 text-muted-foreground`,"aria-hidden":!0}),`Skills`,l.length>1&&(0,Y.jsx)(B,{variant:`outline`,size:`xs`,className:`ml-auto font-normal`,disabled:u,onClick:()=>void p(),title:`Take the newer versions in ${l.map(e=>e.project.name).join(`, `)}`,children:u?`Updating…`:`Update all (${l.length})`})]}),(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`What your agents know, and what is new`})]}),(0,Y.jsx)(zr,{children:i?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`ul`,{className:`space-y-2`,children:r.map(e=>(0,Y.jsx)(PV,{read:e,reload:a,onOpen:()=>t(e.project.id)},e.project.id))}),f.error&&(0,Y.jsx)(`p`,{className:`mt-2 text-xs text-danger`,children:f.error}),(0,Y.jsx)(FV,{used:o,unused:c})]}):(0,Y.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Loading…`})})]})}function PV({read:e,reload:t,onOpen:n}){let{project:r,skills:i}=e,[a,o]=(0,J.useState)(!1),{error:s,run:c}=ni(),l=async e=>{o(!0);try{(await e()).ok&&await t()}finally{o(!1)}},u=i?rI(i):void 0;return(0,Y.jsxs)(`li`,{"aria-label":r.name,className:`min-w-0`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 text-sm`,children:[(0,Y.jsx)(`button`,{type:`button`,onClick:n,className:`min-w-0 truncate font-medium hover:underline`,children:r.name}),u&&u.held>0&&(0,Y.jsx)(`span`,{className:`shrink-0 text-xs text-muted-foreground tabular-nums`,children:u.held===1?`1 skill`:`${u.held} skills`}),(0,Y.jsx)(`span`,{className:`ml-auto flex shrink-0 items-center gap-1.5`,children:!i||!u?(0,Y.jsx)(`span`,{className:`text-xs text-danger`,children:`could not be read`}):u.held===0?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`no skills yet`}),(0,Y.jsx)(B,{variant:`outline`,size:`xs`,onClick:()=>Ad(qF,r.id),title:`Open the project's Skills page`,children:`Add`})]}):u.newer.length>0?(0,Y.jsx)(B,{variant:`outline`,size:`xs`,disabled:a,onClick:()=>void l(()=>iI(r.id,i,c)),title:`Newer versions: ${u.newer.join(`, `)}`,children:a?`Updating…`:`Update ${u.newer.length}`}):u.sending?(0,Y.jsx)(B,{variant:`outline`,size:`xs`,disabled:a,onClick:()=>void l(()=>c(()=>UF(r.id),`Could not send the skills.`)),title:`Not where agents start from yet: ${u.here.join(`, `)}`,children:a?`Sending…`:tI(i)}):u.inRequest?(0,Y.jsxs)(`a`,{href:i.request.url,target:`_blank`,rel:`noreferrer`,className:`text-xs text-info hover:underline`,children:[`in #`,i.request.number]}):u.onBranch?(0,Y.jsx)(`span`,{className:`text-xs text-warning`,title:`On the branch ${i.branch}: merge it into ${i.startBranch??`the default branch`}`,children:`to merge`}):(0,Y.jsxs)(`span`,{className:`flex items-center gap-1 text-xs text-success`,children:[(0,Y.jsx)(mo,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),`up to date`]})})]}),u&&(u.newer.length>0||u.sending||u.inRequest)&&(0,Y.jsx)(`p`,{className:q(`truncate text-xs`,u.newer.length>0?`text-warning`:`text-muted-foreground`),children:u.newer.length>0?`${u.newer.length===1?`1 has a newer version`:`${u.newer.length} have newer versions`}: ${u.newer.join(`, `)}`:u.sending?`${u.here.length} not where agents start from yet`:`${u.waiting.length} waiting in pull request #${i.request.number}`}),s&&(0,Y.jsx)(`p`,{className:`text-xs text-danger`,children:s})]})}function FV({used:e,unused:t}){if(e.length===0)return null;let n=e[0].uses,r=e.length-AV;return(0,Y.jsxs)(`section`,{"aria-label":`Most used`,className:`mt-3 border-t border-border pt-3`,children:[(0,Y.jsx)(`h4`,{className:`mb-1.5 text-xs font-medium text-muted-foreground`,children:`Most used, last 30 days`}),(0,Y.jsx)(`ul`,{className:`space-y-1`,children:e.slice(0,AV).map(e=>(0,Y.jsxs)(`li`,{"aria-label":e.skill,className:`flex items-center gap-2 text-xs`,title:`Used ${e.uses} times in ${e.runs===1?`1 run`:`${e.runs} runs`}`,children:[(0,Y.jsx)(`span`,{className:`w-24 shrink-0 truncate font-mono`,children:e.skill}),(0,Y.jsx)(`span`,{className:`h-1 min-w-0 flex-1 overflow-hidden rounded-full bg-muted-foreground/15`,"aria-hidden":!0,children:(0,Y.jsx)(`span`,{className:`block h-full rounded-full bg-primary/70`,style:{width:`${Math.max(4,Math.round(e.uses/n*100))}%`}})}),(0,Y.jsx)(`span`,{className:`w-8 shrink-0 text-right text-muted-foreground tabular-nums`,children:e.uses})]},e.skill))}),r>0&&(0,Y.jsxs)(`p`,{className:`mt-1 text-xs text-muted-foreground`,children:[`and `,r===1?`1 more`:`${r} more`]}),t.length>0&&(0,Y.jsxs)(`p`,{className:`mt-2 text-xs text-muted-foreground`,title:t.join(`, `),children:[(0,Y.jsx)(`span`,{className:`text-foreground/80`,children:`Not used:`}),` `,t.slice(0,4).join(`, `),t.length>4?` and ${t.length-4} more`:``]})]})}var IV=`@max-2xl:basis-full`,LV={"1/4":`${IV} grow-[3] @2xl:basis-[calc(33.333%_-_0.667rem)] @4xl:basis-[calc(25%_-_0.75rem)]`,"1/3":`${IV} grow-[4] @2xl:basis-[calc(50%_-_0.5rem)] @5xl:basis-[calc(33.333%_-_0.667rem)]`,"1/2":`${IV} grow-[6] @2xl:basis-[calc(50%_-_0.5rem)]`,"2/3":`${IV} grow-[8] @2xl:basis-[calc(50%_-_0.5rem)] @5xl:basis-[calc(66.667%_-_0.334rem)]`,"3/4":`${IV} grow-[9] @2xl:basis-[calc(50%_-_0.5rem)] @5xl:basis-[calc(75%_-_0.25rem)]`,1:`basis-full grow-[12]`};function RV({cards:e}){return(0,Y.jsx)(VV,{children:e.map(({card:e,width:t})=>(0,Y.jsx)(BV,{card:e,className:q(`flex min-w-0 flex-col *:flex-1`,LV[t])},e.id))})}var zV=new Set;function BV({card:e,className:t}){let[n,r]=(0,J.useState)(zV),i=(0,J.useCallback)((e,t)=>{r(n=>{if(n.has(e)===t)return n;let r=new Set(n);return t?r.add(e):r.delete(e),r})},[]),a=e.stale===!0||n.size>0;return(0,Y.jsx)(`div`,{"data-card":e.id,"data-stale":a||void 0,className:q(t,`transition-opacity duration-300`,a&&`opacity-60`),children:(0,Y.jsx)(Ae.Provider,{value:i,children:e.node})})}function VV({children:e,onDragOver:t,onDrop:n}){return(0,Y.jsx)(`div`,{className:`@container`,children:(0,Y.jsx)(`div`,{className:`flex flex-wrap gap-4`,onDragOver:t,onDrop:n,children:e})})}var HV={"1/4":`¼`,"1/3":`⅓`,"1/2":`½`,"2/3":`⅔`,"3/4":`¾`,1:`Full`},UV=(e,t)=>e===`end`||t===`end`?e===t:e.id===t.id&&e.side===t.side,WV=e=>`card-${e.replace(/[^a-zA-Z0-9_-]/g,`-`)}`;function GV({side:e}){return(0,Y.jsx)(`span`,{"data-drop":e,"aria-hidden":!0,className:q(`pointer-events-none absolute inset-y-0 z-20 w-1 rounded-full bg-primary`,e===`before`?`-left-2.5`:`-right-2.5`)})}function KV({arranged:e,layouts:t,layoutKey:n}){let[r,i]=(0,J.useState)(null),[a,o]=(0,J.useState)(void 0),s=()=>{i(null),o(void 0)},c=e=>{(a===void 0||!UV(a,e))&&o(e)},l=e=>Fa({overviewLayouts:{...t,[n]:e.map(({card:e,width:t,hidden:n})=>({id:e.id,...n?{hidden:!0}:{},...t===e.width?{}:{width:t}}))}}),u=e=>{let t=()=>(0,Fi.flushSync)(()=>l(e));typeof document.startViewTransition==`function`?document.startViewTransition(t):t()},d=t=>e.findIndex(e=>e.card.id===t),f=(t,n,r)=>{let i=e[d(t)];if(!i)return;let a=e.filter(e=>e.card.id!==t),o=n===void 0?a.length:a.findIndex(e=>e.card.id===n);a.splice(o<0?a.length:o,0,{...i,hidden:r}),u(a)},p=(t,n)=>u(e.map(e=>e.card.id===t?{...e,...n}:e)),m=e.filter(e=>!e.hidden),h=e.filter(e=>e.hidden),g=(e,t)=>{let n=m.findIndex(t=>t.card.id===e)+t;n<0||n>=m.length||f(e,t<0?m[n].card.id:m[n+1]?.card.id,!1)},_=e=>{if(e.preventDefault(),e.stopPropagation(),r&&a!==void 0){let e=a===`end`?void 0:a;if(e?.id!==r.id){let t=e===void 0?void 0:e.side===`before`?e.id:m.slice(m.findIndex(t=>t.card.id===e.id)+1).find(e=>e.card.id!==r.id)?.card.id;t!==r.id&&f(r.id,t,!1)}}s()},v=m.at(-1)?.card.id;return(0,Y.jsxs)(`div`,{className:`space-y-4`,children:[(0,Y.jsxs)(`section`,{"aria-label":`Cards not on the page`,onDragOver:e=>r?.from===`page`&&e.preventDefault(),onDrop:e=>{e.preventDefault(),r?.from===`page`&&p(r.id,{hidden:!0}),s()},className:q(`rounded-lg border border-dashed border-border px-3 py-2.5`,r?.from===`page`&&`border-primary bg-accent/40`),children:[(0,Y.jsx)(`p`,{className:`mb-2 text-xs text-muted-foreground`,children:h.length===0?`Every card is on the page. Drag one here, or press its ✕, to take it off.`:`Not on the page: drag one onto a card to put it there, or press + to add it at the end.`}),h.length>0&&(0,Y.jsx)(`ul`,{className:`flex flex-wrap gap-2`,children:h.map(({card:e})=>(0,Y.jsxs)(`li`,{"aria-label":e.label,draggable:!0,onDragStart:t=>{t.dataTransfer.effectAllowed=`move`,i({id:e.id,from:`tray`})},onDragEnd:s,className:`flex cursor-grab items-center gap-1 rounded-md border border-border bg-card py-0.5 pr-0.5 pl-2 text-sm`,children:[(0,Y.jsx)(Ro,{className:`h-3.5 w-3.5 text-muted-foreground`,"aria-hidden":!0}),e.label,(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Add ${e.label}`,onClick:()=>f(e.id,void 0,!1),className:`flex size-6 items-center justify-center rounded text-muted-foreground hover:bg-accent hover:text-foreground`,children:(0,Y.jsx)(Qo,{className:`h-3.5 w-3.5`,"aria-hidden":!0})})]},e.id))})]}),(0,Y.jsxs)(VV,{onDragOver:e=>{r!==null&&(e.preventDefault(),c(`end`))},onDrop:_,children:[m.length===0&&(0,Y.jsx)(`div`,{"data-empty":!0,onDragOver:e=>{r!==null&&(e.preventDefault(),e.stopPropagation(),c(`end`))},onDragLeave:()=>o(void 0),onDrop:_,className:q(`flex min-h-40 basis-full items-center justify-center rounded-lg border-2 border-dashed text-sm text-muted-foreground transition-colors`,r&&a===`end`?`border-primary bg-primary/5 text-primary`:`border-border`),children:`No card on the page. Drag one here, or press its +.`}),m.map(({card:e,width:t},n)=>(0,Y.jsxs)(`div`,{"data-card":e.id,draggable:!0,onDragStart:t=>{t.dataTransfer.effectAllowed=`move`,i({id:e.id,from:`page`})},onDragOver:t=>{t.preventDefault(),t.stopPropagation();let n=t.currentTarget.getBoundingClientRect();c({id:e.id,side:t.clientX>n.left+n.width/2?`after`:`before`})},onDrop:_,onDragEnd:s,className:q(`relative flex min-w-0 cursor-grab flex-col rounded-lg outline-1 outline-offset-2 outline-border outline-dashed`,LV[t],r?.id===e.id&&`opacity-40`),style:{viewTransitionName:WV(e.id)},children:[r&&a!==void 0&&(a===`end`?e.id===v&&(0,Y.jsx)(GV,{side:`after`}):a.id===e.id&&(0,Y.jsx)(GV,{side:a.side})),(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`pointer-events-none flex flex-1 select-none flex-col *:flex-1`,children:e.node}),(0,Y.jsx)(qV,{label:e.label,widths:fa(e),width:t,first:n===0,last:n===m.length-1,onStep:t=>g(e.id,t),onWidth:t=>p(e.id,{width:t}),onHide:()=>p(e.id,{hidden:!0})})]},e.id))]})]})}function qV({label:e,widths:t,width:n,first:r,last:i,onStep:a,onWidth:o,onHide:s}){return(0,Y.jsxs)(`div`,{role:`toolbar`,"aria-label":e,className:`absolute top-2 right-2 z-10 flex items-center gap-1 rounded-md border border-border bg-popover p-0.5 text-popover-foreground shadow-sm`,children:[(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Move ${e}: arrow keys`,onKeyDown:e=>{let t=e.key===`ArrowLeft`||e.key===`ArrowUp`?-1:+(e.key===`ArrowRight`||e.key===`ArrowDown`);t!==0&&(e.preventDefault(),a(t))},className:`flex size-6 cursor-grab items-center justify-center rounded text-muted-foreground hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-primary)] pointer-coarse:hidden`,children:(0,Y.jsx)(Ro,{className:`h-4 w-4`,"aria-hidden":!0})}),(0,Y.jsxs)(`span`,{className:`hidden pointer-coarse:flex`,children:[(0,Y.jsx)(JV,{label:`Move ${e} earlier`,disabled:r,onClick:()=>a(-1),children:(0,Y.jsx)(lo,{className:`h-4 w-4`,"aria-hidden":!0})}),(0,Y.jsx)(JV,{label:`Move ${e} later`,disabled:i,onClick:()=>a(1),children:(0,Y.jsx)(mr,{className:`h-4 w-4`,"aria-hidden":!0})})]}),t.length>1&&(0,Y.jsx)(`div`,{role:`group`,"aria-label":`Width of ${e}`,className:`flex overflow-hidden rounded border border-border text-xs`,children:t.map(e=>(0,Y.jsx)(`button`,{type:`button`,"aria-pressed":e===n,onClick:()=>o(e),className:q(`min-w-7 px-1.5 py-0.5 tabular-nums transition-colors`,e===n?`bg-accent text-accent-foreground`:`text-muted-foreground hover:text-foreground`),children:HV[e]},e))}),(0,Y.jsx)(JV,{label:`Take ${e} off the page`,onClick:s,children:(0,Y.jsx)(ii,{className:`h-3.5 w-3.5`,"aria-hidden":!0})})]})}function JV({label:e,disabled:t=!1,onClick:n,children:r}){return(0,Y.jsx)(`button`,{type:`button`,"aria-label":e,title:e,disabled:t,onClick:n,className:`flex size-6 items-center justify-center rounded text-muted-foreground hover:bg-accent hover:text-foreground disabled:opacity-40`,children:r})}var YV=6e4;function XV(){let{value:e}=Bt(fl,void 0,YV,[],{remember:`agents`}),t=e?.agents??[],n=t.map(e=>e.name);return(0,Y.jsx)(Cn,{label:`Your agents`,value:t.length,note:e===void 0?`Loading…`:n.join(`, `),onClick:Od})}function ZV({onSelectProject:e,onSelectAgent:t,onAgentStarted:n,interventions:r,interventionsStale:i,active:a,projects:o,scope:s,onProjectAdded:c}){let l=Ra().onboardingDismissed??!1,u=a.active.filter(e=>s===null||e.projectId===s),d=s===null?o:o.filter(e=>e.id===s),f=OV(d),p=r.filter(e=>e.kind===`awaiting`).length,m=[{id:`needs-you`,stale:i,label:`Needs you`,order:1,width:`1/4`,minWidth:`1/4`,node:(0,Y.jsx)(Cn,{label:`Needs you`,value:r.length,tone:`text-warning`,note:r.length===0?`Nothing waits on you`:p>0?p===1?`1 question to answer`:`${p} questions to answer`:`Work to review or publish`,onClick:()=>Mr(si)})},{id:`working-now`,stale:a.stale,label:`Working now`,order:2,width:`1/4`,minWidth:`1/4`,node:(0,Y.jsx)(Cn,{label:`Working now`,value:u.length,live:u.length>0,note:u.length===0?`No agent is at work`:u.length===1?`1 agent at work`:`${u.length} agents at work`,...u.length>0?{onClick:()=>Mr(Pn)}:{}})},{id:`your-agents`,label:`Your agents`,order:4,width:`1/4`,minWidth:`1/4`,node:(0,Y.jsx)(XV,{})},{id:`usage`,label:`Usage`,order:5,width:`1`,minWidth:`1/2`,node:(0,Y.jsx)(mV,{projects:o})},{id:`human-queue`,stale:i,label:`Human Queue`,order:6,width:`1`,minWidth:`1/2`,node:(0,Y.jsx)(`div`,{id:si,className:`flex scroll-mt-6 flex-col *:flex-1`,children:(0,Y.jsx)(QV,{items:r,onSelectProject:e,onSelectAgent:t})})},{id:`working`,stale:a.stale,label:`Agents at work`,order:7,width:`1/2`,minWidth:`1/3`,node:(0,Y.jsx)(`div`,{id:Pn,className:`flex scroll-mt-6 flex-col *:flex-1`,children:(0,Y.jsx)(TV,{working:u,onSelectAgent:t})})},{id:`skills`,label:`Skills`,order:8,width:`1/3`,minWidth:`1/4`,node:(0,Y.jsx)(NV,{projects:d,onSelectProject:e})},...f];m.sort((e,t)=>e.order-t.order);let h=s??`*`,g=Ra().overviewLayouts,_=za(),v=pa(m,g,h),[y,b]=(0,J.useState)(!1),x=s===null?void 0:o.find(e=>e.id===s)?.name,S=g?.[h]!==void 0;return(0,Y.jsx)(gr,{title:`Overview`,description:`What needs you, the agents at work, and what comes next.`,actions:y?(0,Y.jsxs)(Y.Fragment,{children:[S&&(0,Y.jsx)(B,{variant:`ghost`,size:`sm`,onClick:()=>{let{[h]:e,...t}=g??{};Fa({overviewLayouts:t})},children:h===`*`?`Reset to the default layout`:`Use the all-projects layout`}),(0,Y.jsx)(B,{size:`sm`,onClick:()=>b(!1),children:`Done`})]}):(0,Y.jsxs)(B,{variant:`ghost`,size:`sm`,className:`gap-1.5 text-muted-foreground`,onClick:()=>b(!0),children:[(0,Y.jsx)(is,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),`Customize`]}),bar:y&&(0,Y.jsxs)(`p`,{role:`status`,className:`rounded-md bg-accent/60 px-3 py-2 text-xs text-muted-foreground`,children:[(0,Y.jsx)(`span`,{className:`font-medium text-foreground`,children:x===void 0?`Arranging the layout for all projects.`:`Arranging the layout for ${x}.`}),` `,x===void 0?`A project you never arranged on its own uses it too.`:`Each project keeps its own; a project you never arranged uses the all-projects one.`,` Drag a card by its handle, pick its width, or take it off with ✕. On a phone every card is full width.`]}),children:(0,Y.jsxs)(`div`,{className:`space-y-4`,children:[!l&&!y&&(0,Y.jsx)(bV,{projects:o,onAgentStarted:n,onSelectProject:e,onProjectAdded:c}),!y&&(0,Y.jsx)(CV,{}),_?y?(0,Y.jsx)(KV,{arranged:v,layouts:g,layoutKey:h}):v.some(({hidden:e})=>!e)?(0,Y.jsx)(RV,{cards:v.filter(({hidden:e})=>!e)}):(0,Y.jsx)(`p`,{className:`rounded-lg border border-dashed border-border px-4 py-10 text-center text-sm text-muted-foreground`,children:`Every card is off the Overview. Press Customize to put some back.`}):null]})})}function QV({items:e,onSelectProject:t,onSelectAgent:n}){let r=$V.map(t=>({...t,items:e.filter(e=>e.kind===t.value)})).filter(e=>e.items.length>0);return(0,Y.jsxs)(vr,{children:[(0,Y.jsxs)(Kn,{children:[(0,Y.jsxs)(sn,{className:`flex items-center gap-2 text-base`,children:[(0,Y.jsx)(zo,{className:`h-4 w-4 text-muted-foreground`}),`Human Queue`,e.length>0&&(0,Y.jsx)(`span`,{className:`rounded-full bg-primary px-1.5 text-xs font-semibold text-primary-foreground tabular-nums`,children:e.length})]}),(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Agents awaiting your approval, review, or input`})]}),(0,Y.jsx)(zr,{children:e.length===0?(0,Y.jsx)(`p`,{className:`py-2 text-sm text-muted-foreground`,children:`AI doesn't need you.`}):(0,Y.jsx)(`div`,{className:`-mx-2 space-y-3`,children:r.map(e=>(0,Y.jsxs)(`section`,{"aria-label":e.label,children:[(0,Y.jsxs)(`h4`,{className:`flex items-baseline gap-1.5 px-2 pb-0.5 text-xs font-medium text-muted-foreground`,children:[e.label,(0,Y.jsx)(`span`,{className:`tabular-nums opacity-70`,children:e.items.length})]}),(0,Y.jsx)(zp,{grouped:!0,items:e.items,onOpenAgent:n,onOpenProject:t})]},e.value))})})]})}var $V=[{value:`awaiting`,label:`Questions`},{value:`pr`,label:`Pull requests`},{value:`unpushed`,label:`To publish`},{value:`uncommitted`,label:`To commit`}];function eH({enabled:e,onChange:t}){let[n,r]=(0,J.useState)(null),[i,a]=(0,J.useState)(!1),[o,s]=(0,J.useState)(null),[c,l]=(0,J.useState)(!1);return(0,J.useEffect)(()=>{if(!e){s(null),l(!1);return}let t=!0,n=()=>void ql().then(e=>{t&&(s(e.version?.blocked?{got:e.version.got,expected:e.version.expected}:null),l(e.lastContact?.status===401))}).catch(()=>{});n();let r=setInterval(n,5e3);return()=>{t=!1,clearInterval(r)}},[e]),(0,J.useEffect)(()=>{if(!e){r(null),a(!1);return}let t=!0;return Jl().then(e=>{t&&r(e)}).catch(()=>{}),()=>{t=!1}},[e]),e?(0,Y.jsxs)(`div`,{className:`mt-2 space-y-2 rounded-md border border-border bg-muted/30 p-3 text-xs`,children:[(0,Y.jsx)(`p`,{className:`text-muted-foreground`,children:`Install the browser extension, open its options, and paste this token. It reports the question a Claude web session is parked on, so it shows up here instead of only on claude.ai.`}),o&&(0,Y.jsxs)(`p`,{className:`text-danger`,children:[`The extension is blocked: it is v`,o.got,` and this dashboard expects v`,o.expected,`. Update it — pull the repo, then reload the extension at chrome://extensions.`]}),!o&&c&&(0,Y.jsx)(`p`,{className:`text-danger`,children:`Something is calling the bridge with a token this dashboard rejects, so the calls get nowhere. Open the extension's options and save the token shown below again.`}),n===null?(0,Y.jsx)(`p`,{className:`text-muted-foreground`,children:`Restart the dashboard to generate the token.`}):(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,Y.jsx)(`code`,{className:`min-w-0 flex-1 truncate rounded bg-muted px-2 py-1 font-mono`,children:i?n:`•`.repeat(24)}),(0,Y.jsx)(B,{variant:`outline`,size:`sm`,onClick:()=>a(e=>!e),children:i?`Hide`:`Reveal`}),(0,Y.jsx)(re,{text:n,label:`Copy the bridge token`})]})]}):null}var tH=`profile`;function nH(){let{person:e,reload:t}=rm(),[n,r]=(0,J.useState)(),[i,a]=(0,J.useState)(),o=ni(),s=ni(),c=ni(),[l,u]=(0,J.useState)();if(!e)return null;let d=n??e.name,f=i??e.github??``,p=async e=>{e.ok&&(r(void 0),a(void 0),await t(),nm())},m=()=>void o.run(()=>Zp(d),`Could not save your name.`).then(p),h=()=>{u(void 0),s.run(()=>$p(f),`Could not read that GitHub profile.`).then(async e=>{await p(e),e.ok&&u(e.value.changed?`Name and picture copied from @${e.value.login}.`:`Already up to date with @${e.value.login}.`)})},g=()=>void c.run(()=>Qp(),`Could not remove the picture.`).then(p),_=d.trim()!==``&&(d.trim()!==e.name||!e.own);return(0,Y.jsxs)(ki,{description:`Your name and picture in OpenAgent, the same on each of your computers.`,children:[(0,Y.jsxs)(`div`,{className:`py-3 first:pt-0`,children:[(0,Y.jsxs)(`form`,{className:`flex items-start justify-between gap-4`,onSubmit:e=>{e.preventDefault(),_&&m()},children:[(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[(0,Y.jsx)(`label`,{htmlFor:`profile-name`,className:`text-sm`,children:`Name`}),(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e.own?`At the foot of the sidebar, and what the servers you join call you.`:`Your git name for now. Save it, or type another, to keep one of your own.`})]}),(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,Y.jsx)($e,{id:`profile-name`,value:d,disabled:o.busy,onChange:e=>{r(e.target.value),o.reset()},className:`h-8 w-48`}),(0,Y.jsx)(B,{type:`submit`,size:`sm`,disabled:o.busy||!_,children:o.busy?`Saving…`:`Save`})]})]}),o.error&&(0,Y.jsx)(`p`,{className:`mt-2 text-xs text-danger`,children:o.error})]}),(0,Y.jsx)(ct,{label:`Picture`,description:e.avatar?e.github?`From @${e.github} on GitHub.`:`Yours.`:`None: your initials.`,control:(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsx)(Am,{person:e,size:`h-8 w-8 text-xs`}),e.avatar&&(0,Y.jsx)(B,{variant:`outline`,size:`sm`,disabled:c.busy,onClick:g,children:`Remove`})]})}),c.error&&(0,Y.jsx)(`p`,{className:`pb-3 text-xs text-danger`,children:c.error}),(0,Y.jsxs)(`div`,{className:`py-3 last:pb-0`,children:[(0,Y.jsxs)(`form`,{className:`flex items-start justify-between gap-4`,onSubmit:e=>{e.preventDefault(),f.trim()&&h()},children:[(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[(0,Y.jsx)(`label`,{htmlFor:`profile-github`,className:`text-sm`,children:`Sync from GitHub`}),(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Copies a GitHub profile’s name and picture, once. Read with no login; GitHub is not asked again after.`})]}),(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,Y.jsx)($e,{id:`profile-github`,placeholder:`your GitHub login`,value:f,disabled:s.busy,onChange:e=>{a(e.target.value),s.reset(),u(void 0)},className:`h-8 w-48`}),(0,Y.jsx)(B,{type:`submit`,size:`sm`,variant:`outline`,disabled:s.busy||!f.trim(),children:s.busy?`Syncing…`:`Sync`})]})]}),s.error&&(0,Y.jsx)(`p`,{className:`mt-2 text-xs text-danger`,children:s.error}),l&&(0,Y.jsx)(`p`,{role:`status`,className:`mt-2 text-xs text-muted-foreground`,children:l})]})]})}var rH=`repos`;function iH(){let[e,t]=(0,J.useState)(0),n=Kt(()=>ku().catch(()=>null),null,[e]),[r,i]=(0,J.useState)(``),{busy:a,error:o,reset:s,run:c}=ni();if(!n)return null;let l=e=>(e.ok&&t(e=>e+1),e),u=()=>void c(()=>Au(r),`Could not add it.`).then(e=>{l(e).ok&&i(``)}),d=e=>void c(()=>ju(e),`Could not remove it.`).then(l),f=e=>void c(()=>Mu(e),`Could not remove it.`).then(l);return(0,Y.jsxs)(ki,{description:`Where the project picker finds repos, besides your projects. OpenAgent's own GitHub accounts list their repos there too.`,children:[(0,Y.jsxs)(`div`,{className:`space-y-2 py-3 first:pt-0`,children:[(0,Y.jsx)(`p`,{className:`text-sm`,children:`GitHub users and organizations`}),(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Their repos are listed in the picker, read as the GitHub account runs use; picked, one is cloned. The same on each of your computers.`}),n.owners.length>0&&(0,Y.jsx)(`ul`,{"aria-label":`GitHub users and organizations`,className:`space-y-1`,children:n.owners.map(e=>(0,Y.jsxs)(`li`,{className:`flex items-center justify-between gap-2 rounded-md border border-border px-2 py-1 text-sm`,children:[(0,Y.jsx)(`span`,{className:`truncate`,children:e.replace(/^github\.com\//,``)}),(0,Y.jsx)(B,{variant:`ghost`,size:`icon-sm`,"aria-label":`Remove ${e}`,disabled:a,onClick:()=>d(e),children:(0,Y.jsx)(ii,{className:`h-3.5 w-3.5`,"aria-hidden":!0})})]},e))}),(0,Y.jsxs)(`form`,{className:`flex items-center gap-2`,onSubmit:e=>{e.preventDefault(),r.trim()&&u()},children:[(0,Y.jsx)($e,{"aria-label":`GitHub user or organization`,placeholder:`user or organization`,value:r,disabled:a,onChange:e=>{i(e.target.value),s()},className:`h-8 max-w-xs`}),(0,Y.jsx)(B,{type:`submit`,size:`sm`,variant:`outline`,disabled:a||!r.trim(),children:`Add`})]})]}),(0,Y.jsxs)(`div`,{className:`space-y-2 py-3 last:pb-0`,children:[(0,Y.jsx)(`p`,{className:`text-sm`,children:`Folders searched on this computer`}),(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Your home folder, and the folders added with “Search another folder…” in the picker.`}),n.folders.length>0&&(0,Y.jsx)(`ul`,{"aria-label":`Folders searched`,className:`space-y-1`,children:n.folders.map(e=>(0,Y.jsxs)(`li`,{className:`flex items-center justify-between gap-2 rounded-md border border-border px-2 py-1 text-sm`,children:[(0,Y.jsx)(`span`,{className:`truncate`,children:e}),(0,Y.jsx)(B,{variant:`ghost`,size:`icon-sm`,"aria-label":`Remove ${e}`,disabled:a,onClick:()=>f(e),children:(0,Y.jsx)(ii,{className:`h-3.5 w-3.5`,"aria-hidden":!0})})]},e))})]}),o&&(0,Y.jsx)(`p`,{className:`text-xs text-danger`,children:o})]})}function aH({words:e,projects:t,onPick:n}){let r=Wd();return(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[(0,Y.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:e}),(0,Y.jsx)(`ul`,{className:`divide-y divide-border`,children:t.map(e=>(0,Y.jsx)(`li`,{children:(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>n(e.id),className:`flex w-full min-w-0 items-center gap-3 rounded py-3 text-left outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-primary)]`,children:[(0,Y.jsx)(Ao,{"aria-hidden":!0,className:`h-4 w-4 shrink-0 text-muted-foreground`}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm`,children:r(e.id,e.name)}),(0,Y.jsx)(mr,{"aria-hidden":!0,className:`h-4 w-4 shrink-0 text-muted-foreground`})]})},e.id))})]})}function oH({enabled:e}){let[t,n]=(0,J.useState)(null);if((0,J.useEffect)(()=>{if(!e){n(null);return}let t=!0,r=()=>void Zl().then(e=>{t&&n(e)}).catch(()=>{});r();let i=setInterval(r,3e3);return()=>{t=!1,clearInterval(i)}},[e]),!e||!t)return null;let r=e=>void ru(e).catch(()=>{});return(0,Y.jsxs)(`div`,{className:`mt-2 space-y-2 rounded-md border border-border bg-muted/30 p-3 text-xs`,children:[t.state===`off`&&(0,Y.jsx)(`p`,{className:`text-muted-foreground`,children:`The bridge browser is off.`}),t.state===`starting`&&(0,Y.jsxs)(`p`,{className:`text-muted-foreground`,children:[`Starting the bridge browser: `,t.detail,`.`]}),t.state===`stopped`&&(0,Y.jsxs)(`p`,{className:`text-danger`,children:[`The bridge browser is not running: `,t.detail,`.`,` `,(0,Y.jsx)(B,{variant:`outline`,size:`sm`,onClick:()=>r(`restart`),children:`Restart`})]}),t.state===`running`&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`p`,{className:`text-muted-foreground`,children:[`The bridge browser is running`,t.visible?` with its window shown`:`, minimized`,`.`,t.signIn&&` It is on claude.ai’s sign-in page: show the window and sign in once, then hide it again.`]}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[t.visible?(0,Y.jsx)(B,{variant:`outline`,size:`sm`,onClick:()=>r(`hide`),children:`Hide the window`}):(0,Y.jsx)(B,{variant:`outline`,size:`sm`,onClick:()=>r(`show`),children:t.signIn?`Show the window to sign in`:`Show the window`}),(0,Y.jsx)(B,{variant:`outline`,size:`sm`,onClick:()=>r(`restart`),children:`Restart`})]})]})]})}var sH=``;function cH({entry:e,openItem:t,onEntry:n,onClose:r,scope:i,projects:a}){let{settings:o}=x(),s=sr(),c=s&&e===``,l=(0,J.useRef)(null),[u,d]=(0,J.useState)((e===`skills`||e===`project-agent-data`?t:void 0)??i??sH),f=a.find(e=>e.id===u)??null,p=Wd(),m=uH(),[h,_]=(0,J.useState)(),v=(n,r)=>{let i=n.Section;return{id:n.id,title:n.title,icon:n.icon,body:(0,Y.jsx)(rl,{package:n.package,label:`${n.title} settings`,children:(0,Y.jsx)(i,{projects:il(n.projects,r),...t!==void 0&&n.id===e?{item:t}:{}})})}},y=[...m,...o.filter(e=>e.computer).map(e=>v(e,[]))],b=o.filter(e=>!e.computer&&(f?e.projects.includes(f.id):e.projects.length>0)),S=[...a.length>0?[{id:qF,title:`Skills`,icon:$o,body:f?(0,Y.jsx)(oI,{projectId:f.id}):(0,Y.jsx)(aH,{words:`Skills are written into a project’s own repository, one project at a time. Pick a project.`,projects:a,onPick:d})},{id:DI,title:`Agent data`,icon:yo,body:f?(0,Y.jsx)(AI,{projectId:f.id}):(0,Y.jsx)(aH,{words:`Each project keeps its agent data in one place, your folder or its own repository. Pick a project.`,projects:a,onPick:d})}]:[],...b.map(e=>v(e,f?[f]:a))],C=[...y,...S].find(t=>t.id===e)??y[0],w=S.includes(C),T=w&&!f?il(b.find(e=>e.id===C.id)?.projects??[],a):[],E=e=>{let t=e.icon;return(0,Y.jsx)(`li`,{children:(0,Y.jsxs)(`button`,{type:`button`,"aria-current":e===C?`page`:void 0,onClick:()=>n(e.id),className:q(`flex w-full items-center gap-2 rounded-md px-2 text-left text-sm outline-none hover:bg-sidebar-accent/50 hover:text-sidebar-accent-foreground focus-visible:ring-2 focus-visible:ring-[var(--color-primary)]`,s?`h-10`:`h-8 aria-[current=page]:bg-sidebar-accent aria-[current=page]:font-medium`),children:[(0,Y.jsx)(t,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`truncate`,children:e.title})]})},e.id)};return(0,Y.jsx)(tr,{open:!0,onOpenChange:e=>!e&&r(),children:(0,Y.jsxs)(ze,{children:[(0,Y.jsx)(Se,{className:`fixed inset-0 z-50 bg-black/40 backdrop-blur-[1px]`}),(0,Y.jsxs)(We,{ref:l,initialFocus:l,className:q(`fixed z-50 flex overflow-hidden bg-background text-foreground outline-none`,s?`inset-0`:`top-1/2 left-1/2 h-[min(40rem,calc(100dvh-2rem))] w-[min(56rem,calc(100vw-2rem))] -translate-x-1/2 -translate-y-1/2 rounded-xl border border-border shadow-lg`),children:[(!s||c)&&(0,Y.jsxs)(`nav`,{"aria-label":`Settings`,className:q(`flex shrink-0 flex-col gap-4 overflow-y-auto bg-sidebar p-2`,s?`w-full`:`w-56 border-r border-border`),children:[s&&(0,Y.jsxs)(`div`,{className:`flex h-10 items-center justify-between px-2`,children:[(0,Y.jsx)(g,{className:`text-base font-semibold`,children:`Settings`}),(0,Y.jsx)(ae,{"aria-label":`Close settings`,className:`rounded p-1 text-muted-foreground outline-none hover:text-foreground`,children:(0,Y.jsx)(ii,{className:`size-4`,"aria-hidden":!0})})]}),(0,Y.jsx)(`section`,{"aria-label":`You and this computer`,children:(0,Y.jsx)(`ul`,{className:`flex flex-col gap-1`,children:y.map(E)})}),(0,Y.jsxs)(`section`,{"aria-label":`Project`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 px-2 pb-1`,children:[(0,Y.jsx)(`p`,{className:`text-xs font-medium text-muted-foreground`,children:`Project`}),(0,Y.jsx)(lH,{projects:a,value:f?.id??sH,onChange:d})]}),S.length>0?(0,Y.jsx)(`ul`,{className:`flex flex-col gap-1`,children:S.map(E)}):(0,Y.jsx)(`p`,{className:`px-2 text-xs text-muted-foreground`,children:`Nothing to set for your projects.`})]})]}),!c&&(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,Y.jsxs)(`div`,{className:`flex h-12 shrink-0 items-center gap-2 px-4`,children:[h?(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Back to ${C.title}`,onClick:h.back,className:`-ml-1 rounded p-1 text-muted-foreground outline-none hover:text-foreground`,children:(0,Y.jsx)(ro,{className:`size-4`,"aria-hidden":!0})}):s&&(0,Y.jsx)(`button`,{type:`button`,"aria-label":`All settings`,onClick:()=>n(``),className:`-ml-1 rounded p-1 text-muted-foreground outline-none hover:text-foreground`,children:(0,Y.jsx)(ro,{className:`size-4`,"aria-hidden":!0})}),(0,Y.jsxs)(g,{className:`flex min-w-0 flex-1 items-center gap-1.5 text-sm font-normal`,children:[!s&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:`Settings`}),(0,Y.jsx)(mr,{className:`size-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0})]}),w&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`span`,{className:`truncate text-muted-foreground`,children:f?p(f.id,f.name):`All projects`}),(0,Y.jsx)(mr,{className:`size-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0})]}),h?(0,Y.jsxs)(Y.Fragment,{children:[!s&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`button`,{type:`button`,onClick:h.back,className:`truncate rounded text-muted-foreground outline-none hover:text-foreground`,children:C.title}),(0,Y.jsx)(mr,{className:`size-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0})]}),(0,Y.jsx)(`span`,{className:`truncate font-medium`,children:h.title})]}):(0,Y.jsx)(`span`,{className:`truncate font-medium`,children:C.title})]}),(0,Y.jsx)(ae,{"aria-label":`Close settings`,className:`rounded p-1 text-muted-foreground outline-none hover:text-foreground`,children:(0,Y.jsx)(ii,{className:`size-4`,"aria-hidden":!0})})]}),(0,Y.jsx)(Zt,{className:`min-h-0 flex-1`,children:(0,Y.jsxs)(`div`,{className:`mx-auto max-w-2xl space-y-3 px-4 pb-6`,children:[T.length>0&&(0,Y.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Saved to `,T.length===1?`one project`:`${T.length} projects`,`: `,T.map(e=>p(e.id,e.name)).join(`, `),`.`]}),(0,Y.jsx)(`div`,{children:(0,Y.jsx)(_e.Provider,{value:_,children:C.body})},`${C.id}/${f?.id??sH}`)]})})]})]})]})})}function lH({projects:e,value:t,onChange:n}){let r=Wd(),i=[{value:sH,label:`All projects`},...e.map(e=>({value:e.id,label:r(e.id,e.name)}))];return(0,Y.jsxs)(Ee,{items:i,value:t,onValueChange:e=>n(String(e??sH)),children:[(0,Y.jsx)($t,{size:`sm`,"aria-label":`Project`,className:`h-6 min-w-0 flex-1 border-transparent bg-transparent px-1.5 text-xs shadow-none`,children:(0,Y.jsx)(st,{})}),(0,Y.jsx)(qt,{children:i.map(e=>(0,Y.jsx)(Vt,{value:e.value,children:e.label},e.value))})]})}function uH(){let e=Ra(),t=zI(),n=Ba(e),r=S(nr()),i=e.driver??br[0],a=e.model??``,o=om()===`denied`,s=e.palette??`openagent`;return[{id:tH,title:`Profile`,icon:ds,body:(0,Y.jsx)(nH,{})},{id:`appearance`,title:`Appearance`,icon:Yo,body:(0,Y.jsxs)(ki,{children:[(0,Y.jsx)(_,{label:`Theme`,description:`Follow the system, or pin light or dark.`,value:n,options:[{value:`system`,label:`System`},{value:`light`,label:`Light`},{value:`dark`,label:`Dark`}],onChange:e=>Fa({theme:e})}),(0,Y.jsx)(_,{label:`Colours`,description:`OpenAgent’s own Everforest colours, or neutral greys.`,value:s,options:Hi.map(e=>({value:e,label:Ui[e]})),onChange:e=>Fa({palette:e,accent:``})}),(0,Y.jsx)(_,{label:`Primary colour`,description:`Buttons, links and what is picked, in the colours’ own hues.`,value:Ki(s,e.accent)??``,options:[{value:``,label:Gi[s]},...Wi[s].map(e=>({value:e,label:e.charAt(0).toUpperCase()+e.slice(1)}))],onChange:e=>Fa({accent:e})}),(0,Y.jsx)(_,{label:`Font`,description:`The font of the page and the chat.`,value:e.font??`ibm-plex-sans`,options:Object.entries(qi).map(([e,t])=>({value:e,label:t})),onChange:e=>Fa({font:e})}),(0,Y.jsx)(_,{label:`Code font`,description:`Code blocks, the files an agent read, the Files pane.`,value:e.codeFont??`jetbrains-mono`,options:Object.entries(Ji).map(([e,t])=>({value:e,label:t})),onChange:e=>Fa({codeFont:e})}),(0,Y.jsx)(_,{label:`File preview font`,description:`A Markdown file read in the Files pane.`,value:e.documentFont??`source-serif-4`,options:Object.entries(Yi).map(([e,t])=>({value:e,label:t})),onChange:e=>Fa({documentFont:e})}),(0,Y.jsx)(_,{label:`Editor`,description:`Which editor “Open in editor” launches.`,value:e.editor??``,options:[{value:``,label:`Auto-detect`},...t.map(e=>({value:e.bin,label:e.label}))],onChange:e=>Fa({editor:e})}),(0,Y.jsx)(fH,{label:`Onboarding on the Overview`,description:`The checklist of what a new install needs, at the top of the Overview.`,checked:!(e.onboardingDismissed??!1),onChange:e=>Fa({onboardingDismissed:!e})})]})},{id:`notifications`,title:`Notifications`,icon:oo,body:(0,Y.jsxs)(ki,{children:[(0,Y.jsx)(fH,{label:`Browser`,description:o?`Blocked in your browser settings`:`Desktop notifications while the dashboard is open.`,checked:(e.notifyBrowser??!0)&&!o,disabled:o,onChange:e=>Fa({notifyBrowser:e})}),(0,Y.jsx)(fH,{label:`Human Queue`,description:`An agent awaiting your answer, or a PR ready to review.`,checked:e.notifyHumanIntervention??!0,onChange:e=>Fa({notifyHumanIntervention:e})}),(0,Y.jsx)(fH,{label:`New activity`,description:`Also ping when an agent starts or finishes.`,checked:e.notifyNewActivity??!1,onChange:e=>Fa({notifyNewActivity:e})})]})},{id:`agent`,title:`Agent`,icon:co,body:(0,Y.jsxs)(ki,{children:[(0,Y.jsx)(_,{label:`Agent`,description:`Which coding agent runs the work.`,value:i,options:r,onChange:e=>Fa({driver:e,model:``})}),(0,Y.jsx)(_,{label:`Model`,description:`The models the agent lists. Its own default when none is picked.`,value:a,options:pH(r.find(e=>e.value===i),a),onChange:e=>Fa({model:e})}),(0,Y.jsx)(fH,{label:`Name each run`,description:`A small model is asked for the two to five words a run's row shows, in place of the first line of your prompt. One short turn with no tools, about a thirtieth of a cent a run. Off, a run is listed by what you asked for.`,checked:e.nameRuns??!0,onChange:e=>Fa({nameRuns:e})}),(0,Y.jsx)(fH,{label:`Show what the agent thought`,description:`Inside a run of steps, a row for each thought between them. Off, the panel is the steps the agent took and nothing else.`,checked:e.showThinking??!1,onChange:e=>Fa({showThinking:e})})]})},{id:Tm,title:`Agent data`,icon:To,body:(0,Y.jsx)(Dm,{})},{id:rH,title:`Repos`,icon:Oo,body:(0,Y.jsx)(iH,{})},{id:`claude-web`,title:`Claude web`,icon:Lo,body:(0,Y.jsxs)(ki,{description:`A Claude web agent hands off and ends, so the questions its session asks never reach this dashboard. The browser bridge carries them back and types your answers into the session.`,children:[(0,Y.jsx)(fH,{label:`Browser bridge`,description:`Carry claude.ai questions into this dashboard and type your answers back. A browser signed in to claude.ai does the work, through the bridge extension.`,checked:e.bridge??!1,onChange:e=>Fa({bridge:e})}),(e.bridge??!1)&&(0,Y.jsx)(dH,{daemonBrowser:e.bridgeBrowser??!1,onChange:e=>Fa({bridgeBrowser:e})})]})}]}function dH({daemonBrowser:e,onChange:t}){let n=(0,J.useId)(),r=(t,n,r,i)=>(0,Y.jsxs)(`label`,{className:q(`flex cursor-pointer gap-3 rounded-md border p-3`,e===t?`border-primary/60 bg-muted/20`:`border-border`),children:[(0,Y.jsx)(ai,{value:t?`daemon`:`own`,"aria-label":n,className:`mt-1`}),(0,Y.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,Y.jsx)(`span`,{className:`block text-sm font-medium`,children:n}),(0,Y.jsx)(`span`,{className:`block text-xs text-muted-foreground`,children:r}),e===t&&i]})]});return(0,Y.jsxs)(`div`,{className:`mt-3`,children:[(0,Y.jsx)(`p`,{id:n,className:`mb-2 text-sm font-medium`,children:`Which browser does the work?`}),(0,Y.jsxs)(ur,{"aria-labelledby":n,value:e?`daemon`:`own`,onValueChange:e=>t(e===`daemon`),children:[r(!0,`A browser the daemon runs — recommended`,`Chrome for Testing, downloaded once, signed in once, kept minimized. Web runs work with your own Chrome closed.`,(0,Y.jsx)(oH,{enabled:!0})),r(!1,`Your own Chrome`,`Install the extension, open its options and paste the token. Web runs need your Chrome open.`,(0,Y.jsx)(eH,{enabled:!0,onChange:()=>{}}))]})]})}function fH({label:e,description:t,checked:n,onChange:r,disabled:i=!1}){return(0,Y.jsx)(ct,{label:e,description:t,dimmed:i,control:(0,Y.jsx)(mn,{checked:n,disabled:i,onCheckedChange:e=>r(e===!0),"aria-label":e})})}function pH(e,t){let n=e?.models??[];return[{value:``,label:_P},...n,...t&&!n.some(e=>e.value===t)?[{value:t,label:t}]:[],...n.length===0&&e?.modelsNote?[{value:e.modelsNote,label:e.modelsNote,disabled:!0}]:[]]}var mH=15e3,hH=1e4,gH=1e3;function _H(e){return e?e.landed?!0:e.exists?!e.empty||e.commits.length>0||!!e.pendingFiles?.length:!e.unchanged:!1}function vH(e,t,n=!0,r=!1,i=!1){let a=t?`handoff:${e}:${t}`:void 0;(0,J.useEffect)(()=>{i&&a!==void 0&&Lr(a)},[i,a]);let[o,s]=(0,J.useState)(!1),c=(0,J.useRef)(i);(0,J.useEffect)(()=>{c.current&&!i&&s(!0),c.current=i},[i]),(0,J.useEffect)(()=>{if(!o)return;let e=setTimeout(()=>s(!1),hH);return()=>clearTimeout(e)},[o]);let[l,u]=(0,J.useState)(mH),{value:d,reload:f,loaded:p}=Bt(n&&t?()=>Gl(e,t):null,null,l,[e,t,n,l,r],a===void 0?void 0:{remember:a});(0,J.useEffect)(()=>u(d?.prPending?300:o?gH:mH),[d?.prPending,o]),(0,J.useEffect)(()=>{o&&_H(d)&&s(!1)},[o,d]);let{busy:m,error:h,run:g}=ni(),[_,v]=(0,J.useState)(null);return{handoff:d,loaded:p,busy:m,error:h,pending:_,act:(e,t,n)=>{v(e),g(t,n).then(e=>e.ok?f():void 0).then(()=>v(null))}}}function yH(e,t,n){let[r,i]=(0,J.useState)(1e4),[a,o]=(0,J.useState)(!1),{value:s,reload:c}=Bt(()=>Ml(e,t),null,r,[e,t,r],{remember:`worktree:${e}:${t}`});(0,J.useEffect)(()=>i(s?.prPending?300:a?gH:1e4),[s?.prPending,a]),(0,J.useEffect)(()=>{if(!a)return;let e=setTimeout(()=>o(!1),hH);return()=>clearTimeout(e)},[a]);let l=(0,J.useRef)({key:``,turn:n});return(0,J.useEffect)(()=>{let r=`${e}\0${t}`,i=l.current.key===r&&l.current.turn!==n,u=i&&l.current.turn===!0&&!n;l.current={key:r,turn:n},i&&(u&&o(!0),(!u||a||s?.prPending)&&c())},[e,t,n,c,a,s?.prPending]),s}function bH({projectId:e,agentId:t,events:n,retainedWorktree:r=!1,onWorktreeRemoved:i,onDeleted:a,onProjectRemoved:o,label:s,naming:c,expanded:l=!1,onToggle:u,ready:d=!0,checkout:f}){let p=d?$i(f?.checkout?.sizeBytes,``):``;return(0,Y.jsxs)(`div`,{className:`flex h-11 shrink-0 items-center gap-2 overflow-hidden pr-2 md:pl-4 max-md:pl-11`,children:[(0,Y.jsx)(Rn,{}),(0,Y.jsx)(AB,{}),(0,Y.jsx)(GI,{projectId:e,agentId:t,events:n,label:s,...c?{naming:c}:{},retainedWorktree:r,onWorktreeRemoved:i,onDeleted:a,...u?{details:{open:l,onToggle:u}}:{},size:p}),(0,Y.jsx)(`div`,{className:`grow shrink-0`}),d&&(0,Y.jsx)(RB,{events:n}),e!==`session`&&(0,Y.jsx)(IB,{projectId:e,onProjectRemoved:o}),(0,Y.jsx)(kB,{})]})}function xH(e,t){return e===`web`?_o:e===`actions`?fs:t?oe[t]:jn}function SH({runsOn:e,target:t,remoteKind:n,elsewhere:r,projectName:i,startedFrom:a,worksOn:o,repos:s}){let c=a&&(o&&o!==a?`Started from ${a}, works on ${o}`:`Started from ${a}`);return(0,Y.jsxs)(Uc,{children:[(0,Y.jsx)(Wc,{tip:`Runs on — ${e}`,children:(0,Y.jsx)(`button`,{type:`button`,disabled:!0,className:Bc,children:(0,Y.jsx)(wP,{icon:xH(t,n),elsewhere:r,label:e})})}),i&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Wc,{tip:i,children:(0,Y.jsxs)(`button`,{type:`button`,disabled:!0,className:Bc,children:[(0,Y.jsx)(Ao,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`truncate`,children:i})]})}),c&&(0,Y.jsx)(Wc,{tip:c,children:(0,Y.jsx)(PP,{label:a,disabled:!0})})]}),s?.map(e=>(0,Y.jsx)(VP,{repo:e,tip:`A copy of ${e.from}, in this session's folder`},e.name))]})}function CH(e){return e?.base===void 0&&e?.baseCommit!==void 0}function wH(e,t){return e?.base??(CH(e)?t??void 0:void 0)}function TH({prs:e}){return e.length===0?null:(0,Y.jsx)(`span`,{className:`flex min-w-0 items-center gap-1.5 max-sm:shrink-0`,children:e.map(e=>{let t=e.state===void 0?void 0:Yd(e.state),n=t?Jd[t]:void 0,r=n?.Icon??Fo;return(0,Y.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noreferrer`,"aria-label":`PR #${e.number}${n?` ${n.word}`:``}, on the git host`,className:`inline-flex h-6 shrink-0 items-center gap-1 rounded-full border border-border px-2 text-xs text-muted-foreground transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary`,children:[(0,Y.jsx)(r,{className:q(`h-3 w-3 shrink-0`,n?.tone),"aria-hidden":!0}),(0,Y.jsxs)(`span`,{className:`tabular-nums text-foreground`,children:[`#`,e.number]}),n&&(0,Y.jsx)(`span`,{children:n.word})]},e.url)})})}function EH({projectId:e,agentId:t,live:n,files:r,onAgentStarted:i,onSending:a,onQueued:s,editInBox:c,model:l,context:u,controls:d,contextSet:f,publish:p,prBase:m,row:h,agent:g,gitHost:_,gitAccount:v,skillsOn:y,skillsOff:b,projectSkills:x}){let S=(0,J.useRef)(null);(0,J.useEffect)(()=>{if(c)return c.current=e=>S.current?.edit(e),()=>{c.current=null}},[c]);let{busy:C,error:w,run:T}=ni(),{busy:E,error:D,run:O}=ni(),[k,A]=(0,J.useState)(!1);(0,J.useEffect)(()=>A(!1),[t]),(0,J.useEffect)(()=>{n||A(!1)},[n]);let j=E||k&&n,M=dh(e),N=o(p)?p:`nothing`,[P,F]=(0,J.useState)(null);(0,J.useEffect)(()=>F(null),[t]),(0,J.useEffect)(()=>{P===N&&F(null)},[P,N]);let ee=async(r,o)=>{let c=n;c||a?.(r);let l=crypto.randomUUID();return(await T(()=>c?iu(e,r,t,P,{id:l,...o?{later:o}:{}}):iu(e,r,t,...P===null?[]:[P]),`Could not send. Your text is kept, try again.`)).ok?(c||F(null),c?s?.({id:l,text:r,later:o}):i?.(r,t),!0):(c||a?.(null),!1)},te=async(e,{later:t}={later:!1})=>{C||(await ee(f?mh(e,f.context):e,t)&&(S.current?.clear(),f?.reset()),S.current?.focus())},ne=()=>void O(()=>$l(e,t).then(()=>!0),`Could not stop the agent.`).then(e=>{e&&A(!0)});(0,J.useEffect)(()=>{if(!n)return;let e=e=>{e.key!==`Escape`||j||document.querySelector(`[role="dialog"], [role="menu"], [role="listbox"], .ProseMirror[aria-expanded="true"]`)||ne()};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)});let I=n?(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(B,{type:`button`,variant:`ghost`,size:`icon-sm`,onClick:ne,disabled:j,"aria-label":`Stop agent`,className:`h-8 w-8 shrink-0 disabled:opacity-100`}),children:j?(0,Y.jsx)(xn,{className:`h-4 w-4 animate-spin`}):(0,Y.jsx)(as,{className:`h-3.5 w-3.5 rounded-[3px] fill-current`})}),(0,Y.jsx)(W,{className:`flex items-center gap-1.5`,children:j?`Stopping…`:(0,Y.jsxs)(Y.Fragment,{children:[`Stop`,(0,Y.jsx)(`kbd`,{className:`flex h-[17px] items-center justify-center rounded border border-background/20 px-1 font-sans text-[11px]`,children:`Esc`})]})})]}):void 0,L=w??D;return(0,Y.jsxs)(`div`,{className:`mx-auto w-full max-w-3xl p-2`,children:[L&&(0,Y.jsx)(`p`,{role:`alert`,className:`mb-1 px-2 text-xs text-danger`,children:L}),(0,Y.jsx)(kP,{ref:S,files:r,onSubmit:te,busy:C,submitLabel:`Send`,submitBusyLabel:n?`Sending…`:`Continuing…`,showDriverModel:!1,inAgent:!0,sessionRow:h,sessionModel:l,sessionContext:u,...f?{addContext:f.add,removeContext:f.remove}:{},controls:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(gI,{agent:g}),(0,Y.jsx)(mI,{skillsOn:y,skillsOff:b,projectSkills:x,noProject:e===he}),e!==`session`&&f&&(0,Y.jsx)(vh,{projectId:e,context:f.context,busy:C,onToggle:f.toggle}),d]}),controlsEnd:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(tl,{home:_??null,account:v}),e!==`session`&&(0,Y.jsx)(gh,{publish:P??N,picks:Dn(M?.gitHost??!0,M?.remote??!0),onPublish:e=>F(e===N?null:e),target:m===void 0?void 0:{into:m},busy:C})]}),idleControl:I,placeholder:n?`⏎ to send, ⌘⏎ to queue for later`:`Message the agent to continue it…`})]})}function DH({checkout:e,summary:t,actions:n,error:r,show:i,state:a}){let o=e?.branch,s=a??`${o??``}|${e?.pr?.number??``}|${e?.pr?.state??``}`,[c,l]=(0,J.useState)(null);return o===void 0||!i||c===s?null:(0,Y.jsx)(`div`,{className:`mx-auto w-full max-w-3xl px-2 pt-2`,children:(0,Y.jsxs)(`div`,{role:`group`,"aria-label":`This agent's work`,className:`overflow-hidden rounded-[10px] bg-muted px-2 dark:[--accent:#374145] dark:[--color-accent:#374145] text-[13px]`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center md:h-10 md:gap-2 max-md:min-h-10 max-md:flex-wrap max-md:gap-x-2 max-md:gap-y-1 max-md:py-1.5`,children:[(0,Y.jsx)(`span`,{className:`flex min-w-0 items-center text-muted-foreground`,children:(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(`span`,{className:`truncate`}),children:o}),(0,Y.jsx)(W,{className:`whitespace-pre-line`,children:[o,e?.checkout?.path].filter(Boolean).join(`
136
+ `)})]})}),(0,Y.jsx)(`div`,{className:`grow`}),(0,Y.jsx)(`span`,{className:`shrink-0`,children:t}),e?.pr&&(0,Y.jsxs)(K,{children:[(0,Y.jsxs)(V,{render:(0,Y.jsx)(`a`,{href:e.pr.url,target:`_blank`,rel:`noreferrer`,className:`flex shrink-0 items-center gap-1.5 text-primary hover:underline`}),children:[(0,Y.jsxs)(`span`,{children:[`PR #`,e.pr.number]}),(0,Y.jsx)(`span`,{className:`rounded-full border border-border px-1.5 text-[10px] uppercase text-muted-foreground`,children:e.pr.state.toLowerCase()})]}),(0,Y.jsx)(W,{children:e.pr.title})]}),(0,Y.jsx)(`div`,{className:`flex items-center gap-2 md:shrink-0 max-md:min-w-0 max-md:flex-wrap`,children:n}),(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Hide this bar`,title:`Hide this bar`,onClick:()=>l(s),className:`flex h-6 w-6 shrink-0 items-center justify-center rounded text-muted-foreground hover:bg-accent hover:text-accent-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-primary)]`,children:(0,Y.jsx)(ii,{className:`h-3.5 w-3.5`})})]}),r&&(0,Y.jsx)(`p`,{role:`alert`,className:`pb-2 text-xs text-danger`,children:r})]})})}function OH({top:e,bottom:t,children:n}){let r=(0,J.useRef)(null),i=(0,J.useRef)(null),a=(0,J.useRef)(null);return(0,J.useLayoutEffect)(()=>{let e=typeof matchMedia==`function`&&matchMedia(`(pointer: coarse)`).matches,t=()=>{let t=r.current.style,n=i.current.getBoundingClientRect().height;t.setProperty(`--chat-bar`,`${n}px`),t.setProperty(`--chat-bottom`,e?`0px`:`${n}px`),t.setProperty(`--chat-scroll-bar`,`${a.current.offsetWidth-a.current.clientWidth}px`)};if(t(),typeof ResizeObserver>`u`)return;let n=new ResizeObserver(t);for(let e of[i,a])n.observe(e.current);return()=>n.disconnect()},[]),(0,Y.jsxs)(`div`,{ref:r,"data-testid":`chat-pane`,className:`flex min-h-0 flex-1 flex-col`,children:[(0,Y.jsx)(`div`,{"data-testid":`chat-top`,className:`shrink-0`,children:e}),(0,Y.jsxs)(`div`,{className:`relative isolate flex min-h-0 flex-1 flex-col overflow-hidden pointer-coarse:pb-(--chat-bar)`,children:[(0,Y.jsx)(`div`,{ref:a,className:`scrollbar-thin invisible absolute h-0 w-8 overflow-y-scroll`,"aria-hidden":!0}),n,(0,Y.jsx)(`div`,{ref:i,"data-testid":`chat-bottom`,className:`absolute right-[max(var(--chat-scroll-bar),0.75rem)] bottom-0 left-0 z-10 max-h-full overflow-y-auto bg-background pl-[calc(max(var(--chat-scroll-bar),0.75rem)_-_var(--chat-scroll-bar))] pointer-coarse:right-(--chat-scroll-bar) pointer-coarse:pl-0`,children:t}),(0,Y.jsx)(`div`,{className:`pointer-events-none absolute top-0 right-[max(var(--chat-scroll-bar),0.75rem)] left-0 z-10 h-4 bg-gradient-to-b from-background to-transparent`,"aria-hidden":!0}),(0,Y.jsx)(`div`,{className:`pointer-events-none absolute right-[max(var(--chat-scroll-bar),0.75rem)] bottom-(--chat-bar) left-0 z-10 h-4 bg-gradient-to-t from-background to-transparent`,"aria-hidden":!0})]})]})}function kH({children:e}){return(0,Y.jsx)(`div`,{className:`grid flex-1 place-items-center pb-(--chat-bottom) text-sm text-muted-foreground`,children:e})}var AH=`await-choices`,jH=e=>typeof e==`string`?e.trim():``;function MH(e,t){let n=RegExp("```"+t+"\\s+([\\s\\S]*?)```",`g`);return[...e.matchAll(n)].map(e=>e[1]??``)}function NH(e){for(let t of MH(e,AH).reverse()){let e=PH(t);if(e)return e}}function PH(e){let t;try{t=JSON.parse(e)}catch{return}if(typeof t!=`object`||!t)return;let n=t;if(!Array.isArray(n.options))return;let r=[];if(n.options.forEach((e,t)=>{let n=jH(e?.label);if(!n)return;let i=jH(e?.detail);r.push({id:jH(e?.id)||`opt:${t}`,label:n,...i?{detail:i}:{},...e?.default===!0?{default:!0}:{},...e?.stop===!0?{stop:!0}:{}})}),r.length===0)return;let i=jH(n.recommended),a=i?(r.find(e=>e.id===i)??r.find(e=>e.label===i))?.id:void 0,o=jH(n.file),s=jH(n.header);return{title:jH(n.title)||`Which option?`,...s?{header:s}:{},options:r,...a?{recommended:a}:{},...n.multi===!0?{multi:!0}:{},...o?{file:o}:{}}}function FH(e,t){return`You paused to ask: "${e}". The user chose: ${t}. Continue with that decision.`}function IH(e){return`You paused to ask: "${e}". The user skipped it. Continue without an answer.`}function LH(e){let t=/^You paused to ask: "([\s\S]*)"\. The user chose: ([\s\S]*)\. Continue with that decision\.$/.exec(e);if(t)return{question:t[1],answer:t[2]};let n=/^You paused to ask: "([\s\S]*)"\. The user skipped it\. Continue without an answer\.$/.exec(e);return n?{question:n[1]}:void 0}function RH(e){switch(e.kind){case`end`:return e.stopped?{said:`Stopped`}:!e.ok&&!e.waiting?{said:`Failed — ${e.detail??`unknown error`}`}:void 0;case`error`:return{said:e.headline,...e.detail!==void 0&&e.detail!==``?{detail:e.detail}:{}};case`settled`:return{said:`Done for now — waiting for your next message`};case`branch`:return{said:`Branch`,thing:e.branch};case`pull-request`:return{said:`Pull request`,thing:`#${e.number}`,href:e.url};case`cloud-anchor`:return{said:`Handed off at`,thing:e.sha.slice(0,7)};case`log`:return{said:e.message};case`intent`:return{said:`Asked for`,thing:e.text};case`driver`:return zH(e.event);default:return}}function zH(e){switch(e.type){case`notice`:return{said:e.message};case`error`:return{said:`The agent reported an error`,detail:e.message};case`rate-limit`:{let t=e.limit.window.replace(/_/g,`-`),n=`resets ${new Date(e.limit.resetsAt).toLocaleString()}`;return e.limit.status===`rejected`?{said:`The ${t} quota is used up`,thing:n}:e.limit.status===`allowed_warning`?{said:`The ${t} quota is running low`,thing:n}:void 0}default:return}}function BH({choice:e,pick:t}){let[n,r]=(0,J.useState)(!1),i=new Set(Li(t));return(0,Y.jsxs)(`div`,{className:`overflow-hidden rounded-md border border-border`,children:[(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>r(e=>!e),className:`flex w-full items-baseline gap-2 px-4 py-2 text-left text-xs text-muted-foreground hover:bg-accent/40`,"aria-expanded":n,children:[(0,Y.jsx)(`span`,{className:`shrink-0 text-success`,children:`✓`}),(0,Y.jsx)(`span`,{className:`truncate font-medium text-foreground`,children:e.title}),(0,Y.jsx)(`span`,{className:`ml-auto shrink-0`,children:n?`Collapse`:`Expand`})]}),n&&(0,Y.jsx)(`div`,{className:`border-t border-border p-4`,children:(0,Y.jsxs)(`ul`,{className:`space-y-1 text-sm`,children:[e.options.map(e=>(0,Y.jsxs)(`li`,{className:q(`flex items-baseline gap-2`,i.has(e.id)?``:`text-muted-foreground`),children:[(0,Y.jsx)(`span`,{className:q(`w-4 shrink-0`,i.has(e.id)?`text-success`:``),children:i.has(e.id)?`✓`:``}),(0,Y.jsx)(`span`,{children:e.label})]},e.id)),i.size===0&&(0,Y.jsx)(`li`,{className:`text-muted-foreground`,children:`Accepted none`})]})})]})}var VH=Symbol(`other`),HH=typeof navigator<`u`&&/Mac|iPhone|iPad/.test(navigator.platform)?`⌘`:`Ctrl`;function UH({on:e,multi:t}){return t?(0,Y.jsx)(`span`,{className:q(`mt-0.5 flex h-4 w-4 shrink-0 items-center justify-center rounded border`,e?`border-primary bg-primary text-primary-foreground`:`border-foreground/20`),"aria-hidden":!0,children:e&&(0,Y.jsx)(In,{className:`h-3 w-3`})}):(0,Y.jsx)(`span`,{className:q(`mt-0.5 flex h-4 w-4 shrink-0 items-center justify-center rounded-full`,e?`bg-primary`:`border border-foreground/20`),"aria-hidden":!0,children:e&&(0,Y.jsx)(`span`,{className:`h-1.5 w-1.5 rounded-full bg-primary-foreground`})})}function WH({projectId:e,agentId:t,choice:n,active:r=!1,onSaid:i,send:a}){let{busy:o,error:s,run:c}=ni(),[l,u]=(0,J.useState)(!1),[d,f]=(0,J.useState)(()=>n.multi?void 0:n.recommended??n.options[0]?.id),[p,m]=(0,J.useState)(()=>new Set(n.multi?n.options.filter(e=>e.default).map(e=>e.id):[])),[h,g]=(0,J.useState)(``),[_,v]=(0,J.useState)(!1),y=(0,J.useRef)(null),b=h.trim(),x=(e,t)=>void c(e,`Could not send your answer — try again.`).then(e=>{e.ok&&(u(!0),t!==void 0&&i?.(t))}),S=r=>{if(a)return x(()=>a(r));let i=n.options.filter(e=>[r].flat().includes(e.id)).map(e=>e.label);x(()=>eu(e,n.id,r,t),FH(n.title,i.length?i.join(`, `):`(none)`))},C=n=>x(()=>iu(e,n,t),n),w=n.multi?_:d===VH,T=!w||b!==``,E=()=>{if(!(o||!T)){if(n.multi)return _?C(FH(n.title,[...n.options.filter(e=>p.has(e.id)).map(e=>e.label),b].join(`, `))):S([...p]);if(d===VH)return C(FH(n.title,b));d!==void 0&&S(d)}},D=()=>{o||(n.multi?v(e=>!e):f(VH))},O=e=>{if(!o){if(!n.multi)return f(e);m(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}},k=(0,J.useRef)({submit:E,pick:O,pickOther:D});k.current={submit:E,pick:O,pickOther:D},(0,J.useEffect)(()=>{if(!r||l)return;let e=e=>{let t=e.target,r=t!==null&&(t.isContentEditable||t.tagName===`INPUT`||t.tagName===`TEXTAREA`);if((e.ctrlKey||e.metaKey)&&e.key===`Enter`){if(r&&t!==y.current)return;e.preventDefault(),k.current.submit();return}if(r||e.ctrlKey||e.metaKey||e.altKey||!/^[1-9]$/.test(e.key))return;let i=Number(e.key),o=n.options[i-1];if(o)k.current.pick(o.id);else if(!a&&i===n.options.length+1)k.current.pickOther();else return;e.preventDefault()};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[r,l,n.options,a]),(0,J.useEffect)(()=>{w&&y.current?.focus()},[w]);let A=`flex w-full items-start gap-3 p-4 text-left disabled:opacity-60`;return l?null:(0,Y.jsxs)(`section`,{role:`region`,"aria-label":n.title,className:`flex w-full max-w-[480px] flex-col overflow-clip rounded-xl font-sans text-sm ring-1 ring-border`,children:[(0,Y.jsx)(`h2`,{className:`bg-foreground/5 px-4 py-3 font-normal`,children:n.title}),(0,Y.jsxs)(`ul`,{className:`flex flex-col`,children:[n.options.map(e=>{let t=n.multi?p.has(e.id):d===e.id;return(0,Y.jsx)(`li`,{className:`border-t border-border first:border-t-0`,children:(0,Y.jsxs)(`button`,{type:`button`,role:n.multi?`checkbox`:`radio`,"aria-checked":t,disabled:o,onClick:()=>O(e.id),className:A,children:[(0,Y.jsx)(UH,{on:t,multi:n.multi}),(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col gap-2`,children:[(0,Y.jsxs)(`span`,{children:[e.label,e.id===n.recommended&&(0,Y.jsx)(`span`,{className:`ml-2 text-muted-foreground`,children:`Recommended`})]}),e.detail&&(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:e.detail})]})]})},e.id)}),!a&&(0,Y.jsxs)(`li`,{className:`flex flex-col border-t border-border`,children:[(0,Y.jsxs)(`button`,{type:`button`,role:n.multi?`checkbox`:`radio`,"aria-checked":w,disabled:o,onClick:D,className:A,children:[(0,Y.jsx)(UH,{on:w,multi:n.multi}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1`,children:`Other`})]}),w&&(0,Y.jsx)(`input`,{ref:y,value:h,disabled:o,onChange:e=>g(e.target.value),onKeyDown:e=>{e.key===`Enter`&&!e.ctrlKey&&!e.metaKey&&E()},placeholder:`Type your own answer here`,"aria-label":`Other`,className:`mx-4 mb-2 ml-11 rounded-md border border-border bg-transparent px-2.5 py-1.5 outline-none placeholder:text-muted-foreground focus:border-primary`})]})]}),(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 px-4 pt-2 pb-4`,children:[(0,Y.jsx)(`span`,{role:s?`alert`:o?`status`:void 0,className:q(`min-w-0 flex-1 truncate text-xs`,s?`text-danger`:`text-muted-foreground`),children:s??(o?`Sending your answer…`:``)}),!a&&(0,Y.jsx)(`button`,{type:`button`,disabled:o,onClick:()=>C(IH(n.title)),className:`h-6 rounded-md bg-foreground/10 px-2 text-[13px] hover:bg-foreground/15 disabled:opacity-60`,children:`Skip`}),(0,Y.jsxs)(`button`,{type:`button`,disabled:o||!T,onClick:E,className:`flex h-6 items-center gap-1.5 rounded-md bg-foreground px-2 text-[13px] font-medium text-background hover:bg-foreground/90 disabled:opacity-60`,children:[`Submit`,r&&(0,Y.jsxs)(`span`,{className:`flex gap-0.5`,"aria-hidden":!0,children:[(0,Y.jsx)(`kbd`,{className:`flex h-[17px] min-w-[17px] items-center justify-center rounded border border-background/20 px-0.5 font-sans text-[11px]`,children:HH}),(0,Y.jsx)(`kbd`,{className:`flex h-[17px] min-w-[17px] items-center justify-center rounded border border-background/20 px-0.5 font-sans text-[11px]`,children:`↵`})]})]})]})]})}function GH({label:e,value:t}){return(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Y.jsx)(mo,{className:`h-3.5 w-3.5 shrink-0 text-success`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`shrink-0 text-foreground`,children:e}),t!==void 0&&(0,Y.jsx)(`span`,{className:`truncate`,title:t,children:t})]})}function KH(e,t){return e.workspace===void 0&&e.branch===void 0&&e.driver===void 0&&(!t||e.elsewhere===!0)}function qH({setup:e,live:t,working:n=!1,added:r,nested:i=!1}){let[a,o]=(0,J.useState)(!1),s=Jn(e.driver),c=nr(),l=s?Vr[s]:e.driver,u=e.model&&P(s?c?.[s]:void 0,e.model),d=t?e.branch!==void 0||e.workspace!==void 0?`Starting ${l??`the coding agent`}`:l!==void 0&&!e.elsewhere?`Making the checkout`:`Starting session`:void 0,f=e.workspace!==void 0||e.branch!==void 0||l!==void 0;if(!t&&!f&&KH(e,n))return null;let p=d===void 0&&f,m=(0,Y.jsx)(gF,{id:d??`done`,children:(0,Y.jsx)(`span`,{className:q(d!==void 0&&`text-shimmer`),children:d??`Initialized session`})});return(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1 font-sans text-sm text-muted-foreground`,children:[(0,Y.jsxs)(`div`,{...d===void 0?{}:{role:`status`},className:`relative flex min-w-0 items-center gap-2`,children:[(0,Y.jsx)(PF,{live:d!==void 0}),(0,Y.jsxs)(`div`,{...p?{role:`button`,tabIndex:0,"aria-expanded":a,onClick:()=>o(e=>!e),onKeyDown:e=>{e.key!==`Enter`&&e.key!==` `||(e.preventDefault(),o(e=>!e))}}:{},className:q(`flex min-w-0 items-center gap-1.5 py-0.5`,p&&`cursor-pointer hover:text-foreground`),children:[m,d!==void 0&&t?.since!==void 0&&(0,Y.jsx)(vF,{since:t.since}),p&&(0,Y.jsx)(MF,{open:a})]})]}),a&&(0,Y.jsxs)(`div`,{className:q(`mt-1.5 flex flex-col gap-1.5`,!i&&`rounded-lg border border-border px-3 py-2`),children:[e.workspace!==void 0&&(0,Y.jsx)(GH,{label:`Made the checkout`,value:e.workspace}),e.branch!==void 0&&(0,Y.jsx)(GH,{label:`Made the branch`,value:e.branch}),e.base!==void 0&&(0,Y.jsxs)(`div`,{className:`min-w-0 truncate`,title:e.base,children:[`Started from the branch `,(0,Y.jsx)(`span`,{className:`text-foreground`,children:e.base}),`, not from the main branch.`]}),l!==void 0&&(0,Y.jsx)(GH,{label:`Started ${l}`,...u?{value:u}:{}}),r!==void 0&&(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[`Auto adds after each message: `,(0,Y.jsxs)(`span`,{className:`text-foreground`,children:[`“`,r,`”`]})]})]})]})}var JH=2500;function YH(e){return e===`waiting`?`text-muted-foreground`:Gd[e]??`text-muted-foreground`}function XH({row:e,onOpen:t}){let n=nr();return(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>t?.(e.key),className:`group/sub flex w-full min-w-0 items-center gap-1.5 text-left hover:text-foreground`,"aria-label":`Open the subagent: ${e.name}`,children:[(0,Y.jsx)(`span`,{className:q(`shrink-0`,e.working&&`text-shimmer`),children:e.working?`Running agent`:`Ran agent`}),(0,Y.jsx)(`span`,{className:q(`min-w-0 truncate text-foreground group-hover/sub:underline`,e.working&&`text-shimmer`),children:e.name}),e.model&&(0,Y.jsx)(`span`,{className:`shrink-0 max-sm:hidden`,children:mt(n,e.model)}),e.working?e.calls!==void 0&&(0,Y.jsx)(`span`,{className:`min-w-0 shrink-0 truncate`,title:e.doing,children:[e.tool,`${e.calls} ${e.calls===1?`call`:`calls`}`].filter(Boolean).join(` · `)}):e.status!==`done`&&(0,Y.jsx)(`span`,{className:q(`shrink-0`,YH(e.status)),children:e.status}),(0,Y.jsxs)(`span`,{className:`ml-auto shrink-0 tabular-nums`,title:`Started ${new Date(e.startedAt).toLocaleString()}`,children:[e.working?(0,Y.jsx)(vF,{since:e.startedAt}):e.endedAt===void 0?null:ci(Date.parse(e.endedAt)-Date.parse(e.startedAt)),e.cost!==void 0&&` · $${e.cost.toFixed(2)}`]})]})}function ZH({name:e,text:t,status:n,detail:r}){let[i,a]=(0,J.useState)(!1),o=t!==void 0&&t!==``,s=(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`span`,{className:`shrink-0`,children:`Message from`}),(0,Y.jsx)(`span`,{className:`shrink-0 text-foreground`,children:`subagent`}),n!==void 0&&n!==`done`&&(0,Y.jsx)(`span`,{className:q(`shrink-0`,YH(n)),children:n})]});return(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1 font-sans text-sm text-muted-foreground`,children:[o||r!==void 0?(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>a(e=>!e),"aria-expanded":i,"aria-label":`Message from subagent`,className:`flex max-w-full min-w-0 items-center gap-1.5 py-0.5 text-left hover:text-foreground`,children:[s,(0,Y.jsx)(mr,{className:q(`h-3.5 w-3.5 shrink-0 transition-transform`,i&&`rotate-90`),"aria-hidden":!0})]}):(0,Y.jsx)(`div`,{className:`flex min-w-0 items-center gap-1.5 py-0.5`,children:s}),i&&(0,Y.jsxs)(`div`,{className:`mt-1 flex flex-col gap-1`,children:[(0,Y.jsxs)(`div`,{children:[`From: `,e,r!==void 0&&` (${r})`]}),o&&(0,Y.jsx)(`div`,{className:`text-foreground`,children:(0,Y.jsx)(ti,{text:t})})]})]})}function QH({steps:e,lead:t,onOpen:n}){let[r,i]=(0,J.useState)(!1),a=e.flatMap(e=>e.kind===`agent`&&e.row.working?[e.row]:[]),[o,s]=(0,J.useState)(0);(0,J.useEffect)(()=>{if(a.length<2)return;let e=setInterval(()=>s(e=>e+1),JH);return()=>clearInterval(e)},[a.length]);let c=e.length===1&&!t?e[0]:void 0;if(c?.kind===`message`)return(0,Y.jsx)(ZH,{name:c.row.name,text:c.text});if(c?.kind===`agent`)return(0,Y.jsx)(`div`,{className:`min-w-0 flex-1 py-0.5 font-sans text-sm text-muted-foreground`,children:(0,Y.jsx)(XH,{row:c.row,onOpen:n})});let l=a[o%Math.max(a.length,1)],u=pf(e);return(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1 font-sans text-sm text-muted-foreground`,children:[(0,Y.jsx)(`div`,{className:`group/status flex`,children:(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>i(e=>!e),"aria-expanded":r,"aria-label":l?`Working: ${l.name}`:u,className:`flex min-w-0 items-center gap-1.5 py-0.5`,children:[l?(0,Y.jsx)(Y.Fragment,{children:(0,Y.jsx)(`span`,{className:`morph-in min-w-0 truncate text-left text-shimmer`,children:l.name},l.key)}):(0,Y.jsx)(`span`,{className:`morph-in min-w-0 truncate text-left group-hover/status:text-foreground/80 group-has-focus-visible/status:text-foreground/80`,children:u},u),(0,Y.jsx)(mr,{className:q(`h-3.5 w-3.5 shrink-0 transition-transform`,r&&`rotate-90`),"aria-hidden":!0})]})}),r&&(0,Y.jsxs)(`div`,{className:`mt-1.5 flex flex-col divide-y divide-border rounded-lg border border-border`,children:[t&&(0,Y.jsx)(`div`,{className:`px-2 py-1.5`,children:t}),e.map(e=>(0,Y.jsx)(`div`,{className:`px-2 py-1.5`,children:e.kind===`agent`?(0,Y.jsx)(XH,{row:e.row,onOpen:n}):(0,Y.jsx)(ZH,{name:e.row.name,text:e.text})},`${e.kind}-${e.row.key}`))]})]})}function $H({defaultTagName:e,props:t,render:n,state:r={},stateAttributesMapping:i}){let a=eU(tU(r,i),t);if(!n)return J.createElement(e,a);if(typeof n==`function`)return n(a,r);if(!J.isValidElement(n))return null;let o=n.props,s={...eU(a,o),ref:iU(a.ref,o.ref)};return J.cloneElement(n,s)}function eU(...e){let t={};for(let n of e){if(!n)continue;let e=n;for(let n of Object.keys(e)){let r=e[n];if(r===void 0)continue;let i=t[n];n===`className`?t[n]=[i,r].filter(Boolean).join(` `):n===`style`?t[n]={...i,...r}:n===`ref`?t[n]=iU(i,r):rU(n)&&typeof i==`function`&&typeof r==`function`?t[n]=nU(r,i):t[n]=r}}return t}function tU(e,t){let n={};for(let r of Object.keys(e)){let i=e[r],a=t?.[r]?.(i);if(a){Object.assign(n,a);continue}if(r===`slot`){n[`data-slot`]=i;continue}let o=`data-${String(r).replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}`;typeof i==`boolean`?n[o]=i?``:void 0:i!=null&&(n[o]=String(i))}return n}function nU(e,t){return function(n){e(n),n.defaultPrevented||t(n)}}function rU(e){return/^on[A-Z]/.test(e)}function iU(...e){let t=e.filter(Boolean);if(t.length!==0)return e=>{for(let n of t)typeof n==`function`?n(e):n&&(n.current=e)}}var aU=8,oU=64,sU=0,cU=.5,lU=180,uU=new Set([`ArrowDown`,`ArrowUp`,`End`,`Home`,`PageDown`,`PageUp`,` `]),dU={start:!1,end:!1},fU={currentAnchorId:null,visibleMessageIds:[]};function pU({content:e,scrollEdgeThreshold:t,spacer:n,viewport:r}){if(!r||!e)return dU;let i=TU({content:e,spacer:n,viewport:r});return{start:r.scrollTop>t,end:i-r.scrollTop-r.clientHeight>t}}function mU({content:e,scrollMargin:t,scrollPreviousItemPeek:n,spacer:r,viewport:i,visibleMessageIds:a}){if(!e||!i)return fU;let o=i.getBoundingClientRect(),s=o.top+t+n,c=typeof IntersectionObserver>`u`,l=[],u=null;for(let t of hU(e,r)){let e=t.dataset.messageId;if(!e)continue;let n=t.dataset.scrollAnchor===`true`,r=n||c?t.getBoundingClientRect():null;(c&&r?r.bottom>s&&r.top<o.bottom:a.has(e))&&l.push(e),n&&r&&r.top<=s+cU&&(u=e)}return l.length===0&&u===null?fU:{currentAnchorId:u,visibleMessageIds:l}}function hU(e,t){return Array.from(e.children).filter(e=>e instanceof HTMLElement&&e!==t)}function gU(e,t){for(let n=t;n<e.length;n++){let t=e[n];if(t?.dataset.scrollAnchor===`true`)return t}return null}function _U(e,t){for(let n of e)if(n.dataset.scrollAnchor===`true`&&!t.has(n))return n;return null}function vU(e,t){let n=0;for(let r=t;r<e.length;r++)if(e[r]?.dataset.scrollAnchor===`true`&&(n+=1,n>1))return!0;return!1}function yU(e){for(let t=e.length-1;t>=0;t--){let n=e[t];if(n?.dataset.scrollAnchor===`true`)return n}return null}function bU({content:e,spacer:t,viewport:n}){let r=n.getBoundingClientRect();for(let n of hU(e,t)){if(!n.dataset.messageId)continue;let e=n.getBoundingClientRect();if(e.bottom>r.top&&e.top<r.bottom)return n}return null}function xU({align:e,element:t,scrollMargin:n,spacer:r,viewport:i}){let a=SU(t,i),o=t.getBoundingClientRect().height,s=OU(r);if(e===`center`){let e=Math.max(0,i.clientHeight-s.start-s.end);return a-s.start-(e-o)/2-n}if(e===`end`)return a-i.clientHeight+o+s.end+n;if(e===`nearest`){let e=a+o,t=i.scrollTop+s.start,r=i.scrollTop+i.clientHeight-s.end;return a>=t&&e<=r?i.scrollTop:a<t?a-s.start-n:e-i.clientHeight+s.end+n}return a-s.start-n}function SU(e,t){let n=e.getBoundingClientRect(),r=t.getBoundingClientRect();return n.top-r.top+t.scrollTop}function CU(e,t){return e.getBoundingClientRect().top-t.getBoundingClientRect().top}function wU({content:e,scrollTop:t,spacer:n,viewport:r}){let i=TU({content:e,spacer:n,viewport:r});return t+r.clientHeight-i}function TU({content:e,spacer:t,viewport:n}){let r=hU(e,t),i=DU(e),a=n.getBoundingClientRect(),o=n.scrollTop,s=i.start+i.end;for(let e of r){let t=e.getBoundingClientRect();s=Math.max(s,t.bottom-a.top+o+i.end)}return s}function EU(e){return Math.max(0,e.scrollHeight-e.clientHeight)}function DU(e){let t=window.getComputedStyle(e);return{end:AU(t.paddingBlockEnd||t.paddingBottom),start:AU(t.paddingBlockStart||t.paddingTop)}}function OU(e){let t=e?.parentElement;return t?DU(t):{end:0,start:0}}function kU(e){if(!e)return 0;let t=window.getComputedStyle(e);return AU(t.rowGap===`normal`?t.gap:t.rowGap)}function AU(e){if(!e)return 0;let t=Number.parseFloat(e);return Number.isFinite(t)?t:0}function jU({refs:e,commitScrollState:t,scheduleStateCommit:n,scheduleVisibilitySync:r}){let{streamingTurnRef:i,autoScrollRef:a,autoscrollingRef:o,autoscrollingTimeoutRef:s,contentRef:c,defaultScrollPositionAppliedRef:l,itemCountRef:u,messageElementsRef:d,modeRef:f,pendingScrollToMessageRef:p,prependRestoreRef:m,scrollMarginRef:h,scrollPreviousItemPeekRef:g,spacerGapRef:_,spacerHeightRef:v,spacerRef:y,viewportRef:b}=e,x=J.useCallback(e=>{s.current!==null&&(window.clearTimeout(s.current),s.current=null),o.current!==e&&(o.current=e,t()),e&&(s.current=window.setTimeout(()=>{s.current=null,o.current=!1,t()},lU))},[t]),S=J.useCallback(e=>{let t=y.current;if(!t)return;let n=Math.max(0,Math.ceil(e));v.current!==n&&(v.current=n,t.hidden=n===0,t.style.height=`${n}px`,t.style.marginTop=n>0?`${-_.current}px`:``)},[]),C=J.useCallback((e,{behavior:r=`auto`,autoscrolling:i=!1}={})=>{let a=b.current;if(!a)return;let o=Math.max(0,e);if(Math.abs(a.scrollTop-o)<=cU){a.scrollTop=o,t();return}i&&x(!0),a.scrollTo({top:o,behavior:r}),n()},[t,n,x]),w=J.useCallback(({behavior:e=`auto`}={})=>b.current?(S(0),i.current=null,f.current=`free-scrolling`,C(0,{behavior:e}),r(),!0):!1,[r,C,S]),T=J.useCallback(({behavior:e=`auto`}={})=>{let t=b.current;return t?(S(0),i.current=null,f.current=a.current?`following-bottom`:`free-scrolling`,C(EU(t),{autoscrolling:!0,behavior:e}),r(),!0):!1},[r,C,S]),E=J.useCallback((e,{align:t=`start`,behavior:n=`auto`,scrollMargin:a=h.current}={},{keepPreviousPeek:o=!1}={})=>{let s=c.current,l=b.current;if(!s||!l||!s.contains(e))return!1;let u=xU({align:t,element:e,scrollMargin:o?a+g.current:a,spacer:y.current,viewport:l}),d=wU({content:s,scrollTop:u,spacer:y.current,viewport:l});return S(d),m.current={element:e,viewportTop:CU(e,l)},f.current=o?`anchored-to-message`:`settling-jump`,i.current=o?e:null,C(u,{behavior:n}),r(),!0},[r,C,S]),D=J.useCallback(()=>{let e=i.current;return!e||!e.isConnected||f.current!==`anchored-to-message`?!1:E(e,{align:`start`},{keepPreviousPeek:!0})},[E]),O=J.useCallback((e,t)=>{let n=d.current.get(e);return n?(l.current=!0,E(n,t)?(p.current=null,!0):(p.current={messageId:e,options:t},!0)):u.current===0?(p.current={messageId:e,options:t},l.current=!0,!0):!1},[E]);return{flushPendingScrollToMessage:J.useCallback(()=>{let e=p.current;if(!e)return!1;let t=d.current.get(e.messageId);return!t||!E(t,e.options)?!1:(p.current=null,l.current=!0,!0)},[E]),reanchorToAnchoredMessage:D,scrollToElement:E,scrollToEnd:T,scrollToMessage:O,scrollToStart:w}}function MU(e,t){let n=e,r=new Set;return{getSnapshot:()=>n,hasListeners:()=>r.size>0,setSnapshot:e=>{t(n,e)||(n=e,r.forEach(e=>e()))},subscribe:(e,t,n)=>{let i=r.size===0;return r.add(e),i&&t?.(),()=>{r.delete(e),r.size===0&&n?.()}}}}function NU(e,t){return MU(e,t)}function PU(){return MU(fU,IU)}function FU(e,t){return e.start===t.start&&e.end===t.end}function IU(e,t){return e.currentAnchorId!==t.currentAnchorId||e.visibleMessageIds.length!==t.visibleMessageIds.length?!1:e.visibleMessageIds.every((e,n)=>e===t.visibleMessageIds[n])}function LU({autoScroll:e,scrollEdgeThreshold:t,scrollMargin:n,scrollPreviousItemPeek:r}){let i=J.useRef(e),a=J.useRef(!1),o=J.useRef(null),s=J.useRef(!1),c=J.useRef(t),l=J.useRef(0),u=J.useRef(null),d=J.useRef(0),f=J.useRef(e?`following-bottom`:`free-scrolling`),p=J.useRef(new Map),m=J.useRef(null),h=J.useRef(null),g=J.useRef(null),_=J.useRef(r),v=J.useRef(!0),y=J.useRef(null),b=J.useRef(n),x=J.useRef(null),S=J.useRef(0),C=J.useRef(0),w=J.useRef(null),T=J.useRef(null),E=J.useRef(null),D=J.useRef(null),O=J.useRef(null),k=J.useRef(null),A=J.useRef(null),j=J.useRef(null),M=J.useRef(new Set),N=J.useRef(new WeakSet);return E.current===null&&(E.current=NU(dU,FU)),j.current===null&&(j.current=PU()),i.current=e,c.current=t,b.current=n,_.current=r,{autoScrollRef:i,autoscrollingRef:a,autoscrollingTimeoutRef:D,streamingTurnRef:g,contentRef:o,defaultScrollPositionAppliedRef:s,firstItemRef:u,itemCountRef:l,lastScrollTopRef:d,messageElementsRef:p,modeRef:f,pendingScrollFrameRef:x,pendingScrollToMessageRef:m,prependRestoreRef:h,preserveScrollOnPrependRef:v,rootRef:y,scrollEdgeThresholdRef:c,scrollMarginRef:b,scrollPreviousItemPeekRef:_,spacerGapRef:S,spacerHeightRef:C,spacerRef:w,stateFrameRef:T,stateStore:E.current,viewportRef:O,visibilityFrameRef:k,visibilityObserverRef:A,visibilityStore:j.current,visibleMessageIdsRef:M,handledScrollAnchorsRef:N}}function RU(e,t){return J.useCallback(n=>{e.current=n,n&&t()},[e,t])}function zU({autoScroll:e=!1,defaultScrollPosition:t=`end`,scrollEdgeThreshold:n=aU,scrollPreviousItemPeek:r=oU,scrollMargin:i=sU}){let a=LU({autoScroll:e,scrollEdgeThreshold:n,scrollMargin:i,scrollPreviousItemPeek:r}),{streamingTurnRef:o,autoScrollRef:s,autoscrollingRef:c,autoscrollingTimeoutRef:l,contentRef:u,defaultScrollPositionAppliedRef:d,firstItemRef:f,itemCountRef:p,lastScrollTopRef:m,messageElementsRef:h,modeRef:g,pendingScrollFrameRef:_,pendingScrollToMessageRef:v,prependRestoreRef:y,preserveScrollOnPrependRef:b,rootRef:x,scrollEdgeThresholdRef:S,scrollMarginRef:C,scrollPreviousItemPeekRef:w,spacerGapRef:T,spacerHeightRef:E,spacerRef:D,stateFrameRef:O,stateStore:k,viewportRef:A,visibilityFrameRef:j,visibilityObserverRef:M,visibilityStore:N,visibleMessageIdsRef:P,handledScrollAnchorsRef:F}=a,ee=J.useRef(t);ee.current!==t&&(ee.current=t,d.current=!1);let te=J.useCallback(e=>{let t=x.current,n=A.current,r=[e.start&&`start`,e.end&&`end`].filter(Boolean).join(` `),i=c.current;for(let e of[t,n])e&&(r?e.setAttribute(`data-scrollable`,r):e.removeAttribute(`data-scrollable`),e.toggleAttribute(`data-autoscrolling`,i))},[]),ne=J.useCallback(e=>{let t=A.current?.scrollTop??0,n=t<m.current-cU;m.current=t,s.current&&!e.end&&g.current!==`settling-jump`&&g.current!==`anchored-to-message`?g.current=`following-bottom`:g.current===`following-bottom`&&e.end&&n&&!c.current&&(g.current=`free-scrolling`)},[]),I=J.useCallback(()=>{let e=pU({content:u.current,scrollEdgeThreshold:S.current,spacer:D.current,viewport:A.current});ne(e);let t=g.current===`following-bottom`?{...e,end:!1}:e;te(t),k.setSnapshot(t)},[ne,k,te]),L=J.useCallback(()=>{O.current===null&&(O.current=window.requestAnimationFrame(()=>{O.current=null,I()}))},[I]),R=J.useCallback(()=>{N.hasListeners()&&j.current===null&&(j.current=window.requestAnimationFrame(()=>{j.current=null,N.hasListeners()&&N.setSnapshot(mU({content:u.current,scrollMargin:C.current,scrollPreviousItemPeek:w.current,spacer:D.current,viewport:A.current,visibleMessageIds:P.current}))}))},[N]),{flushPendingScrollToMessage:re,reanchorToAnchoredMessage:ie,scrollToElement:ae,scrollToEnd:oe,scrollToMessage:se,scrollToStart:ce}=jU({refs:a,commitScrollState:I,scheduleStateCommit:L,scheduleVisibilitySync:R}),le=J.useCallback(()=>{let e=y.current,t=A.current;if(!e||!t||!e.element.isConnected)return!1;let n=CU(e.element,t)-e.viewportTop;return Math.abs(n)<=cU?!1:(t.scrollTop+=n,e.viewportTop=CU(e.element,t),L(),R(),!0)},[L,R]),ue=J.useCallback(()=>{let e=u.current,t=A.current;if(!e||!t){y.current=null;return}let n=bU({content:e,spacer:D.current,viewport:t});y.current=n?{element:n,viewportTop:CU(n,t)}:null},[]),de=J.useCallback(()=>{_.current===null&&(_.current=window.requestAnimationFrame(()=>{_.current=null,re()&&ue()}))},[ue,re]),fe=J.useCallback(()=>{if(!t||d.current||p.current===0)return!1;let e=!1;if(t===`last-anchor`){let t=u.current,n=A.current,r=t&&n?yU(hU(t,D.current)):null;if(!t||!n||!r)e=oe({behavior:`auto`});else{let i=SU(r,n);e=TU({content:t,spacer:D.current,viewport:n})-i<=n.clientHeight?oe({behavior:`auto`}):ae(r,{align:`start`},{keepPreviousPeek:!0})}}else e=t===`end`?oe({behavior:`auto`}):ce({behavior:`auto`});return e?(d.current=!0,!0):!1},[t,ae,oe,ce]),pe=J.useCallback(()=>{let e=u.current;if(!e)return;let t=hU(e,D.current),n=p.current,r=f.current;p.current=t.length,f.current=t[0]??null,(()=>{if(re())return;if(n===0){if(fe()||t.length>0&&s.current&&oe({behavior:`auto`}))return;I(),R();return}let e=r?t.indexOf(r):-1;if(b.current&&e>0){le();return}if(t.length>n){let e=gU(t,n);if(e){if(s.current&&g.current===`following-bottom`&&vU(t,n)){oe({behavior:`auto`});return}ae(e,{align:`start`},{keepPreviousPeek:!0}),F.current.add(e);return}}if(t.length===n){let e=_U(t,F.current);if(e){ae(e,{align:`start`},{keepPreviousPeek:!0}),F.current.add(e);return}}g.current===`following-bottom`&&s.current?oe({behavior:`auto`}):(I(),R())})(),ue()},[fe,ue,I,re,le,R,ae,oe]),me=J.useCallback(()=>{if(g.current===`following-bottom`&&s.current){oe({behavior:`auto`});return}let e=E.current;if(ie()){s.current&&e>0&&E.current===0&&oe({behavior:`auto`});return}L(),R()},[ie,L,R,oe]),he=J.useCallback(()=>{let e=A.current;if(!(!e||!N.hasListeners())){if(typeof IntersectionObserver>`u`){R();return}M.current||=new IntersectionObserver(e=>{for(let t of e){let e=t.target.dataset.messageId;e&&(t.isIntersecting?P.current.add(e):P.current.delete(e))}R()},{root:e,rootMargin:`${-(C.current+w.current)}px 0px 0px 0px`,threshold:[0,.01,.5,1]}),h.current.forEach(e=>{M.current?.observe(e)}),R()}},[R,N]),ge=J.useCallback(()=>{j.current!==null&&(window.cancelAnimationFrame(j.current),j.current=null),M.current?.disconnect(),M.current=null,P.current.clear(),N.setSnapshot(fU)},[N]),_e=J.useCallback((e,t,n)=>{if(t){h.current.set(e,t),M.current?.observe(t),R(),v.current?.messageId===e&&de();return}n&&h.current.get(e)===n&&(h.current.delete(e),P.current.delete(e),M.current?.unobserve(n),R())},[de,R]),ve=J.useCallback(()=>{(g.current===`following-bottom`||g.current===`anchored-to-message`||g.current===`settling-jump`)&&(o.current=null,g.current=`free-scrolling`)},[]),ye=J.useCallback(()=>te(k.getSnapshot()),[k,te]),be=RU(x,ye),xe=RU(A,ye),Se=J.useCallback(e=>{u.current=e},[]),Ce=J.useCallback(e=>{D.current=e,T.current=kU(e?.parentElement??null)},[]),we=J.useCallback(()=>{I(),R(),ue()},[ue,I,R]),Te=J.useMemo(()=>({handleContentChange:pe,handleResize:me,observeVisibility:he,preserveScrollOnPrependRef:b,scrollToEnd:oe,scrollToMessage:se,scrollToStart:ce,setContentElement:Se,setRootElement:be,setSpacerElement:Ce,setViewportElement:xe,stateStore:k,syncAfterScroll:we,unobserveVisibility:ge,userScrollIntent:ve,viewportRef:A,visibilityStore:N}),[pe,me,he,oe,se,ce,Se,be,Ce,xe,k,we,ge,ve,N]);return J.useLayoutEffect(()=>{fe()},[fe]),J.useEffect(()=>()=>{O.current!==null&&(window.cancelAnimationFrame(O.current),O.current=null),j.current!==null&&(window.cancelAnimationFrame(j.current),j.current=null),l.current!==null&&(window.clearTimeout(l.current),l.current=null),_.current!==null&&(window.cancelAnimationFrame(_.current),_.current=null),M.current?.disconnect(),M.current=null},[]),J.useLayoutEffect(()=>{if(e&&g.current===`following-bottom`&&p.current>0){oe({behavior:`auto`});return}I()},[e,I,oe]),{context:Te,registerMessage:_e}}function BU(e){let t=J.useRef(e);return t.current=e,t}var VU=J.createContext(null),HU=J.createContext(null);function UU(){let e=J.useContext(VU);if(!e)throw Error(`useMessageScroller must be used within a MessageScroller.`);return e}function WU(){let e=J.useContext(HU);if(!e)throw Error(`MessageScrollerItem must be used within a MessageScroller.`);return e}function GU(){let{scrollToEnd:e,scrollToMessage:t,scrollToStart:n}=UU();return J.useMemo(()=>({scrollToEnd:e,scrollToMessage:t,scrollToStart:n}),[e,t,n])}function KU({autoScroll:e=!1,children:t,defaultScrollPosition:n=`end`,scrollEdgeThreshold:r,scrollPreviousItemPeek:i,scrollMargin:a}){let{context:o,registerMessage:s}=zU({autoScroll:e,defaultScrollPosition:n,scrollEdgeThreshold:r,scrollPreviousItemPeek:i,scrollMargin:a});return(0,Y.jsx)(VU.Provider,{value:o,children:(0,Y.jsx)(HU.Provider,{value:s,children:t})})}function qU({children:e,...t}){let{setRootElement:n}=UU();return(0,Y.jsx)(`div`,{ref:n,...t,children:e})}function JU({"aria-label":e,children:t,onKeyDown:n,onScroll:r,onTouchMove:i,onWheel:a,preserveScrollOnPrepend:o=!0,ref:s,role:c,tabIndex:l,...u}){let{handleResize:d,preserveScrollOnPrependRef:f,setViewportElement:p,syncAfterScroll:m,userScrollIntent:h,viewportRef:g}=UU();f.current=o;let _=J.useCallback(e=>{p(e),iU(s)?.(e)},[s,p]);function v(e){m(),r?.(e)}function y(e){h(),a?.(e)}function b(e){h(),i?.(e)}function x(e){uU.has(e.key)&&h(),n?.(e)}return J.useEffect(()=>{let e=g.current;if(!e||typeof ResizeObserver>`u`)return;let t=0,n=new ResizeObserver(()=>{window.cancelAnimationFrame(t),t=window.requestAnimationFrame(d)});return n.observe(e),()=>{window.cancelAnimationFrame(t),n.disconnect()}},[d,g]),(0,Y.jsx)(`div`,{ref:_,role:c??`region`,"aria-label":e??`Messages`,tabIndex:l??0,onKeyDown:x,onScroll:v,onTouchMove:b,onWheel:y,...u,children:t})}function YU({"aria-relevant":e,children:t,ref:n,role:r,spacerClassName:i,...a}){let{handleContentChange:o,handleResize:s,setContentElement:c,setSpacerElement:l}=UU(),u=J.useRef(null),d=J.useCallback(e=>{u.current=e,c(e),iU(n)?.(e)},[n,c]);return J.useLayoutEffect(()=>{let e=u.current;if(!e||(o(),typeof MutationObserver>`u`))return;let t=new MutationObserver(()=>{o()});return t.observe(e,{childList:!0}),()=>t.disconnect()},[o]),J.useEffect(()=>{let e=u.current;if(!e||typeof ResizeObserver>`u`)return;let t=0,n=new ResizeObserver(()=>{window.cancelAnimationFrame(t),t=window.requestAnimationFrame(s)});return n.observe(e),()=>{window.cancelAnimationFrame(t),n.disconnect()}},[s]),(0,Y.jsxs)(`div`,{ref:d,role:r??`log`,"aria-relevant":e??`additions`,...a,children:[t,(0,Y.jsx)(`div`,{ref:l,"aria-hidden":`true`,"data-message-scroller-spacer":``,hidden:!0,className:i})]})}function XU({messageId:e,ref:t,scrollAnchor:n=!1,...r}){let i=WU(),a=J.useRef(null);return(0,Y.jsx)(`div`,{ref:J.useCallback(n=>{let r=a.current;a.current=n,e&&i(e,n,r),iU(t)?.(n)},[e,t,i]),"data-message-id":e,"data-scroll-anchor":n?`true`:`false`,...r})}function ZU({behavior:e=`smooth`,children:t,direction:n=`end`,onClick:r,render:i,tabIndex:a,type:o=`button`,...s}){let{scrollToEnd:c,scrollToStart:l,stateStore:u}=UU(),d=BU(r),f=J.useCallback(e=>u.subscribe(e),[u]),p=J.useCallback(()=>{let e=u.getSnapshot();return n===`start`?e.start:e.end},[n,u]),m=J.useSyncExternalStore(f,p,p),h=J.useCallback(t=>{m&&(d.current?.(t),t.defaultPrevented||(t.currentTarget.blur(),n===`start`?l({behavior:e}):c({behavior:e})))},[e,n,m,d,c,l]);return $H({defaultTagName:`button`,props:eU({type:o,inert:!m,tabIndex:m?a:-1,children:t??(0,Y.jsxs)(`span`,{children:[`Scroll to `,n]}),onClick:h},s),render:i,state:{active:m,direction:n},stateAttributesMapping:{active:e=>({"data-active":e?`true`:`false`})}})}var QU={Provider:KU,Root:qU,Viewport:JU,Content:YU,Item:XU,Button:ZU},$U=QU.Provider;function eW({className:e,...t}){return(0,Y.jsx)(QU.Root,{"data-slot":`message-scroller`,className:q(`group/message-scroller relative flex size-full min-h-0 flex-col overflow-hidden`,e),...t})}function tW({className:e,...t}){return(0,Y.jsx)(QU.Viewport,{"data-slot":`message-scroller-viewport`,className:q(`size-full min-h-0 min-w-0 overflow-y-auto overscroll-contain`,`scrollbar-thin scrollbar-gutter-stable data-autoscrolling:scrollbar-quiet`,e),...t})}function nW({className:e,...t}){return(0,Y.jsx)(QU.Content,{"data-slot":`message-scroller-content`,className:q(`flex h-max min-h-full flex-col`,e),...t})}function rW({className:e,scrollAnchor:t=!1,...n}){return(0,Y.jsx)(QU.Item,{"data-slot":`message-scroller-item`,scrollAnchor:t,className:q(`min-w-0 shrink-0`,e),...n})}function iW({direction:e=`end`,className:t,children:n,...r}){return(0,Y.jsx)(QU.Button,{"data-slot":`message-scroller-button`,"data-direction":e,direction:e,"aria-label":e===`end`?`Jump to latest`:`Jump to start`,className:q(`absolute left-1/2 z-10 flex size-9 -translate-x-1/2 items-center justify-center rounded-full border border-border/60 bg-muted/80 text-foreground shadow-[0_2px_4px_rgb(0_0_0/0.07),0_6px_16px_rgb(0_0_0/0.24)] backdrop-blur-sm transition-opacity duration-200 hover:bg-accent`,`data-[active=false]:pointer-events-none data-[active=false]:opacity-0 data-[active=true]:opacity-100`,`data-[direction=end]:bottom-3 data-[direction=start]:top-3`,t),...r,children:n??(e===`end`?(0,Y.jsx)(no,{className:`size-5`,strokeWidth:1.5,"aria-hidden":!0}):(0,Y.jsx)(io,{className:`size-5`,strokeWidth:1.5,"aria-hidden":!0}))})}function aW(e){return e.kind===`driver`?e.event.type===`start`?e.event.prompt:e.event.type===`text`?e.event.text:null:null}function oW(e){return e.kind===`driver`?e.event.type===`start`||e.event.type===`steered`?`you`:`agent`:e.kind}function sW(e){return e.kind===`driver`&&e.event.type===`steered`?e.event.text:void 0}function cW(e,t){return e===void 0||t===void 0?e??t:Date.parse(e)>=Date.parse(t)?e:t}function lW(e){return e.kind===`driver`&&e.event.type===`start`}function uW(e){return e.kind===`driver`?e.event.type===`error`:e.kind===`error`||e.kind===`end`&&!e.ok&&!e.stopped&&!e.waiting}function dW(e){return uW(e)?`text-danger`:``}function fW(e){return uW(e)?`bg-danger/10`:``}function pW(e){let t=e.findIndex(lW);return t<=0?e:[e[t],...e.slice(0,t),...e.slice(t+1)]}function mW(e){return new Date(e).toLocaleTimeString()}function hW({choice:e,footer:t}){let[n,r]=(0,J.useState)(!1);return(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1 font-sans text-sm text-muted-foreground`,children:[(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>r(e=>!e),"aria-expanded":n,className:`flex max-w-full min-w-0 items-center gap-1.5 py-0.5 text-left hover:text-foreground`,children:[(0,Y.jsxs)(`span`,{className:`truncate`,children:[`Asked “`,e.header??e.title,`”`]}),(0,Y.jsx)(`span`,{className:`shrink-0`,children:`Replied in chat`}),(0,Y.jsx)(MF,{open:n})]}),n&&(0,Y.jsxs)(`div`,{className:`mt-1.5 flex flex-col gap-1.5`,children:[(0,Y.jsx)(`div`,{children:e.title}),t]})]})}function gW(e){let t=new Map,n=new Set,r=new Map,i=new Map;e.forEach((e,t)=>{e.kind===`choice`?r.set(e.id,{e,at:t}):e.kind===`choice-resolved`&&i.set(e.id,{e,at:t})});let a=new Set(e.flatMap(e=>lW(e)?[LH(e.event.prompt)?.question]:[]));for(let t of e)t.kind===`choice`&&a.has(t.title)&&n.add(t);let o=new Set(ia(e).map(e=>e.id));for(let[a,s]of r){if(n.has(s.e))continue;let{kind:r,...c}=s.e,l=i.get(a);o.has(a)?t.set(s.e,{choice:c}):l&&l.at>s.at?(t.set(s.e,{choice:c,pick:l.e.picked}),n.add(l.e)):e.slice(s.at+1).some(lW)&&t.set(s.e,{choice:c,passed:!0})}return{rows:t,hidden:n}}function _W(e){for(let t=e.length-1;t>=0;t--){let n=e[t];if(n.kind===`choice`||n.kind===`end`||lW(n))return e;if(n.kind!==`driver`||`subagent`in n.event&&n.event.subagent!==void 0)continue;if(n.event.type===`action`)return e;if(n.event.type!==`text`||n.event.text.trim()===``)continue;let r=NH(n.event.text);if(r===void 0)return e;let i={kind:`choice`,id:AH,...r};return[...e.slice(0,t+1),i,...e.slice(t+1)]}return e}function vW(e){return new Set(e.filter(e=>e.kind===`end`&&(e.ok||e.waiting||e.stopped)))}function yW(e){let t=new Set,n;for(let r of e)lW(r)?n=void 0:r.kind===`driver`&&r.event.type===`text`?n=r:r.kind===`choice`&&n&&t.add(n);return t}function bW(e){return e.replace(/```await-choices\b[\s\S]*?(```|$)/g,``).trim()}function xW({text:e}){let{shown:t}=Dr(e,!0,!1);return(0,Y.jsx)(`div`,{className:`min-w-0 flex-1 font-sans text-foreground`,children:(0,Y.jsx)(ti,{text:t,fade:!0})})}function SW({text:e}){let{shown:t,done:n}=Dr(e,!1);return(0,Y.jsx)(`div`,{className:`min-w-0 flex-1 font-sans text-foreground`,children:(0,Y.jsx)(ti,{text:t,fade:!n})})}function CW({text:e}){let[t,n]=(0,J.useState)(!1),r=(0,J.useRef)(void 0);return(0,J.useEffect)(()=>()=>clearTimeout(r.current),[]),(0,Y.jsx)(`button`,{type:`button`,"aria-label":t?`Copied`:`Copy this message`,title:t?`Copied`:`Copy this message`,onClick:()=>{navigator.clipboard?.writeText(e).then(()=>{n(!0),clearTimeout(r.current),r.current=setTimeout(()=>n(!1),1500)},()=>void 0)},className:`flex h-6 w-6 items-center justify-center rounded-md hover:bg-accent hover:text-accent-foreground`,children:t?(0,Y.jsx)(In,{className:`h-3.5 w-3.5`,"aria-hidden":!0}):(0,Y.jsx)(Ar,{className:`h-3.5 w-3.5`,"aria-hidden":!0})})}function wW({text:e,at:t}){return(0,Y.jsxs)(`div`,{className:`turn-footer flex h-6 items-center gap-1 font-sans text-muted-foreground opacity-0 transition-opacity focus-within:opacity-100`,children:[(0,Y.jsx)(CW,{text:e}),t!==void 0&&(0,Y.jsx)(`time`,{dateTime:t,title:new Date(t).toLocaleString(),className:`px-1 text-[11px]`,children:Or(t)})]})}var TW=8,EW=600;function DW(e){return e.length>EW||e.trim().split(`
137
+ `).length>TW}function OW({question:e,answer:t}){return(0,Y.jsxs)(`div`,{role:`group`,"aria-label":`Your answer`,className:`flex w-full max-w-[480px] flex-col gap-0.5 rounded-lg px-3 py-2 font-sans text-sm ring-1 ring-border`,children:[(0,Y.jsx)(`div`,{className:`font-medium text-foreground`,children:e}),t===void 0?(0,Y.jsx)(`div`,{className:`italic text-muted-foreground`,children:`Skipped`}):(0,Y.jsx)(`div`,{className:`text-muted-foreground`,children:t})]})}var kW=`group/row -mx-1.5 mt-2 flex items-start gap-2 rounded-sm px-1.5`;function AW({files:e,onOpen:t,footer:n}){return(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1.5`,children:[(0,Y.jsx)(mF,{files:e,onOpen:t}),n&&(0,Y.jsx)(wW,{text:n.text,at:n.at})]})}function jW({text:e,at:t,waiting:n,attached:r,fresh:i=!1}){let[a,o]=(0,J.useState)(!1),s=DW(e);return(0,Y.jsxs)(`div`,{className:`group/prompt flex min-w-0 flex-1 flex-col items-end font-sans text-foreground ${i?`bubble-in`:``}`,children:[(0,Y.jsxs)(`div`,{role:`group`,"aria-label":n?`Your message, waiting`:`Your message`,className:`max-w-[85%] min-w-0 rounded-xl bg-muted px-3.5 py-2`,children:[(0,Y.jsx)(`div`,{className:s&&!a?`max-h-40 overflow-hidden`:``,children:(0,Y.jsx)(ti,{text:e})}),s&&(0,Y.jsx)(`button`,{type:`button`,onClick:()=>o(e=>!e),"aria-expanded":a,className:`mt-1 text-xs text-muted-foreground hover:text-foreground`,children:a?`Show less`:`Show more`})]}),r!==void 0&&(0,Y.jsx)(MW,{text:r}),(0,Y.jsxs)(`div`,{className:`mt-1.5 flex h-6 items-center gap-1 text-muted-foreground`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-1 opacity-0 transition-opacity focus-within:opacity-100 group-hover/prompt:opacity-100`,children:[!n&&t!==void 0&&(0,Y.jsx)(`time`,{dateTime:t,title:new Date(t).toLocaleString(),className:`px-1 text-[11px]`,children:Or(t)}),(0,Y.jsx)(CW,{text:e}),n?.onEdit&&(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Cancel and edit message`,title:`Cancel and edit message`,onClick:n.onEdit,className:`flex h-6 w-6 items-center justify-center rounded-md hover:bg-accent hover:text-accent-foreground`,children:(0,Y.jsx)(Xo,{className:`h-3.5 w-3.5`,"aria-hidden":!0})})]}),n&&(n.later||!n.onSendNow?(0,Y.jsx)(`span`,{className:`pr-1 text-[11px] leading-6`,children:`Queued`}):(0,Y.jsx)(`button`,{type:`button`,onClick:n.onSendNow,className:`rounded-md px-1.5 text-[11px] leading-6 hover:bg-accent hover:text-accent-foreground`,children:`Send now`}))]})]})}function MW({text:e}){let[t,n]=(0,J.useState)(!1);return(0,Y.jsxs)(`div`,{className:`mt-1 flex max-w-[85%] min-w-0 flex-col items-end text-xs text-muted-foreground`,children:[(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>n(e=>!e),"aria-expanded":t,className:`flex items-center gap-1 hover:text-foreground`,children:[(0,Y.jsx)(`span`,{children:`Sent with this message`}),(0,Y.jsx)(mr,{className:`h-3.5 w-3.5 shrink-0 transition-transform ${t?`rotate-90`:``}`,"aria-hidden":!0})]}),t&&(0,Y.jsx)(`pre`,{className:`mt-1 max-h-80 w-full overflow-auto whitespace-pre-wrap break-words rounded-lg border border-border px-3 py-2 text-left font-mono text-foreground`,children:e})]})}function NW(e){if(e.kind!==`driver`)return!1;let t=e.event;return[`action`,`output`,`text`,`thought`,`thinking`,`partial`].includes(t.type)&&t.subagent===void 0}function PW(e){return e.kind===`driver`&&(e.event.type===`action`||e.event.type===`thought`)?{...e.event}:void 0}function FW(e){return e.kind===`driver`&&e.event.type===`output`?e.event:void 0}function IW(e,t=!1){let n=e[e.length-1],r=t&&n!==void 0?PW(n):void 0;if(r?.type===`action`)return{...IW(e.slice(0,-1)),current:r};let i=[],a=new Map,o,s=new Map,c=()=>{o?.steps.some(e=>e.type===`action`)&&(i.push(o.head),a.set(o.head,o.steps)),o=void 0};for(let t of e){let e=FW(t);if(e){let t=s.get(e.id);t&&(t.output={text:e.text,...e.failed?{failed:!0}:{},...e.exitCode===void 0?{}:{exitCode:e.exitCode},...e.changed?{changed:e.changed}:{}});continue}let n=PW(t);n?.type===`action`&&n.id!==void 0&&s.set(n.id,n),n===void 0?(c(),i.push(t)):o?o.steps.push(n):o={head:t,steps:[n]}}return c(),{rows:i,steps:a}}function LW({words:e,tone:t}){let{said:n,thing:r,href:i,detail:a}=e,o=t===``?`text-foreground`:t;return(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1 font-sans text-sm`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-baseline gap-1.5`,children:[(0,Y.jsx)(`span`,{className:`min-w-0 whitespace-pre-wrap break-words ${t||`text-muted-foreground`}`,children:n}),r!==void 0&&(i===void 0?(0,Y.jsx)(`span`,{className:`min-w-0 truncate ${o}`,children:r}):(0,Y.jsx)(`a`,{href:i,target:`_blank`,rel:`noreferrer`,className:`min-w-0 shrink-0 truncate hover:underline ${o}`,children:r}))]}),a!==void 0&&(0,Y.jsx)(`div`,{className:`mt-0.5 whitespace-pre-wrap break-words opacity-80 ${t||`text-muted-foreground`}`,children:a})]})}function RW({label:e,onOpen:t}){return t?(0,Y.jsxs)(`button`,{type:`button`,onClick:t,className:`group/screen flex min-w-0 flex-1 items-center gap-1.5 text-left font-sans text-sm text-foreground`,children:[(0,Y.jsx)(`span`,{className:`min-w-0 truncate group-hover/screen:underline`,children:e}),(0,Y.jsx)(mr,{className:`h-3.5 w-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0})]}):(0,Y.jsx)(`div`,{className:`min-w-0 flex-1 truncate font-sans text-sm text-muted-foreground`,children:e})}var zW=`ml-auto shrink-0 pt-0.5 text-[10px] tabular-nums text-muted-foreground opacity-0 transition-opacity group-hover/row:opacity-100`,BW=`subagent`,VW=8,HW=[],UW=[],WW={};function GW(e){return e.kind===`session-update`||e.kind===`usage`||e.kind===`title`||e.kind===`driver`&&(e.event.type===`result`||e.event.type===`tokens`||e.event.type===`thinking`)?!1:e.kind===`driver`&&e.event.type===`rate-limit`?e.event.limit.status!==`allowed`:!0}function KW(e,t){(0,J.useLayoutEffect)(()=>{let n=e.current,r=t.current;if(!n||!r||typeof ResizeObserver>`u`)return;let i=()=>n.clientHeight-r.getBoundingClientRect().height,a=i(),o=new ResizeObserver(()=>{let e=a-i();a-=e,!(e<=0)&&n.scrollHeight-n.scrollTop-n.clientHeight-e<=VW&&(n.scrollTop=n.scrollHeight)});return o.observe(r),o.observe(n),()=>o.disconnect()},[e,t])}function qW({sent:e}){let{scrollToEnd:t}=GU(),n=(0,J.useRef)(e);return(0,J.useLayoutEffect)(()=>{e>n.current&&t({behavior:`smooth`}),n.current=e},[e,t]),null}function JW({events:e,writing:t=``,sending:n,working:r=!1,queued:i=UW,waitingOn:a=0,stick:o=!0,openAt:s,head:c,tail:l,projectId:u,agentId:d,onSaid:f,subagents:p=HW,doing:m=WW,setup:h,onOpenSubagent:g,onOpenChange:_,onOpenScreen:v}){let y=(0,J.useMemo)(()=>_W(e),[e]),b=(0,J.useMemo)(()=>u?gW(y):void 0,[u,y]),x=(0,J.useMemo)(()=>Zi(y),[y]),S=(0,J.useMemo)(()=>vW(y),[y]),C=h?.workspace,w=(0,J.useMemo)(()=>qP(y,C),[y,C]),T=(0,J.useMemo)(()=>new Map(y.map((e,t)=>[e,String(t)])),[y]),E=(0,J.useMemo)(()=>yW(y),[y]),D=(0,J.useMemo)(()=>sf(y),[y]),O=(0,J.useMemo)(()=>cf(y),[y]),k=pW(y).filter(e=>GW(e)&&!b?.hidden.has(e)&&!x.hidden.has(e)&&!O.has(e)),A=n===void 0?void 0:LH(n),j=A&&b?[...b.rows].find(([,e])=>e.pick===void 0&&e.choice.title===A.question)?.[0]:void 0,M=(0,J.useMemo)(()=>n===void 0?void 0:new Date().toISOString(),[n]),N=n===void 0?void 0:{kind:`driver`,event:{type:`start`,prompt:n}},P=N===void 0||j?k:[...k,N],F=N===void 0?y:[...y,N],ee=e=>{let t=aW(e);return t!==null&&E.has(e)?bW(t):t},te=bW(t),ne=Jr()||te!==``,I=P.filter(e=>!S.has(e)&&ee(e)!==``),{rows:L,steps:R,current:re}=IW(I,r&&!te),ie=I.length>0&&lW(I[I.length-1]),ae=-1,oe;F.forEach((e,t)=>{e.kind===`driver`&&(e.event.type===`result`?(ae=t,oe=void 0):lW(e)?(ae=-1,oe=void 0):ae>=0&&oe===void 0&&NW(e)&&(oe=e.at))});let se=_f(y),ce=ae>=0&&oe===void 0&&ae>F.findIndex(lW)&&!F.slice(ae+1).some(lW)||se.waiting,le=(0,J.useRef)(void 0);M!==void 0&&(le.current=M);let ue=[...I].reverse().find(lW),de=le.current!==void 0&&ue!==void 0&&ue!==N&&F.find(e=>lW(e)&&e!==N&&e.at!==void 0&&e.at>le.current)===ue,fe=cW(oe,se.wokeAt)??(de||N!==void 0&&ue===N?le.current:ue?.at)??I[I.length-1]?.at,pe=new Map;for(let e of L){let t=e.kind===`driver`&&e.event.type===`start`?af(e.event.prompt,p):void 0;t&&pe.set(e,t)}let me=e=>T.get(e)??`sending`,he=e=>pe.has(e)?BW:oW(e),ge=[...p.map(e=>uf(e,m[e.id])),...D.map(e=>df(e,r,y[0]?.at??new Date(0).toISOString()))],_e=new Map(D.flatMap(e=>{let t=hf(y,e.id);return t===void 0?[]:[[`call:${e.id}`,t]]})),ve=-1;F.forEach((e,t)=>{lW(e)&&(ve=t)});let ye=F.slice(ve+1).some(e=>e.kind===`driver`&&e.event.type===`text`&&e.event.subagent===void 0)?F.slice(ve+1).flatMap(e=>e.kind===`driver`&&e.event.type===`tokens`?[e.event.tokens]:[]).at(-1):void 0,be=y.some(e=>e.kind===`session-update`),xe=re===void 0?void 0:I[I.length-1],Se=L[L.length-1],Ce=xe===void 0?void 0:Se!==void 0&&R.has(Se)?Se:xe,we=xe!==void 0&&Ce===xe?[...L,xe]:L;xe!==void 0&&Ce===xe&&R.set(xe,[]);let Te=ff(L,ge,_e,e=>lW(e)||e.kind===`driver`&&e.event.type===`text`),Ee=e=>{let t=Te.get(e);if(!t)return null;let n=t[0];return(0,Y.jsx)(rW,{messageId:`subagent-${n.kind}-${n.row.key}`,className:`group/row -mx-1.5 flex items-start gap-2 rounded-sm px-1.5`,children:(0,Y.jsx)(QH,{steps:t,lead:Me&&e===De?B:void 0,onOpen:g})},`subagent-${n.kind}-${n.row.key}`)},De=h===void 0?-1:L.length>0&&lW(L[0])?1:0,Oe=h!==void 0&&r&&!te&&ie&&!be&&I.filter(lW).length===1,ke=y.find(lW),z=ke?.kind===`driver`&&ke.event.type===`start`?ke.event.added:void 0,Ae=h!==void 0&&(0,Y.jsx)(qH,{setup:h,working:r,added:z,...Oe?{live:{since:fe}}:{}}),B=h!==void 0&&(0,Y.jsx)(qH,{setup:h,working:r,added:z,nested:!0}),je=Ae!==!1&&!KH(h,r)&&!Oe&&De>=0,Me=je&&Te.has(De),Ne=je&&!Me&&L[De]!==void 0&&R.has(L[De]),Pe=Ae&&!Ne&&!Me&&(0,Y.jsx)(rW,{messageId:`setup`,className:`-mx-1.5 flex items-start gap-2 rounded-sm px-1.5 empty:hidden`,children:Ae},`setup`),Fe=(0,J.useRef)(null),Ie=(0,J.useRef)(null);KW(Fe,Ie);let Le=new Map,Re=new Map,ze,Be=[];for(let e of L){let t=ee(e),n=b?.rows.get(e);if(lW(e)){if(pe.has(e)||t!==null&&LH(t))continue;ze&&(w.ended.has(e)?Re.set(e,{text:ze.text,at:ze.row.at}):Le.set(ze.row,ze.text)),ze=void 0,Be=[]}else t===null?n&&(ze={row:e,text:Be.length>0?Be.join(`
138
+
139
+ `):n.choice.title}):(Be.push(t),ze={row:e,text:Be.join(`
140
+
141
+ `)})}ze&&!r&&n===void 0&&(w.last.length>0?Re.set(null,{text:ze.text,at:ze.row.at}):Le.set(ze.row,ze.text));let Ve=[...L].reverse().find(e=>b?.rows.has(e)&&b.rows.get(e)?.pick===void 0&&!b.rows.get(e)?.passed);return(0,Y.jsxs)($U,{autoScroll:o,defaultScrollPosition:s??(o?`end`:`start`),children:[(0,Y.jsx)(qW,{sent:(n===void 0||j?0:1)+i.length}),(0,Y.jsxs)(eW,{className:`isolate flex-1`,children:[(0,Y.jsx)(tW,{ref:Fe,"aria-label":`Agent output`,className:`scroll-pb-(--chat-bottom)`,children:(0,Y.jsxs)(nW,{spacerClassName:`order-last`,className:`mx-auto w-full max-w-3xl gap-3 px-4 pt-4 font-mono text-xs`,children:[(0,Y.jsx)(`div`,{ref:Ie,"data-testid":`log-end-room`,className:`order-9998 h-[calc(var(--chat-bottom,0px)+0.5rem)] shrink-0 [overflow-anchor:none]`,"aria-hidden":!0}),c&&(0,Y.jsx)(rW,{messageId:`head`,className:`-mx-1.5 rounded-sm px-1.5`,children:c}),we.map((e,t,n)=>{let r=sW(e),i=r??ee(e),a=b?.rows.get(e),o=t>0?n[t-1]:void 0,s=pe.get(e),c=!o||(Te.has(t)?!s:he(o)!==he(e)),l=e.at,p=lW(e)&&!s||r!==void 0,m=RH(e),h=p&&i!==null?LH(i):void 0,g=e===j;return(0,Y.jsxs)(J.Fragment,{children:[w.ended.has(e)&&(0,Y.jsx)(rW,{messageId:`changes-${me(e)}`,className:kW,children:(0,Y.jsx)(AW,{files:w.ended.get(e),onOpen:_,footer:Re.get(e)})}),me(e)===`sending`&&w.last.length>0&&(0,Y.jsx)(rW,{messageId:`changes-last`,className:kW,children:(0,Y.jsx)(AW,{files:w.last,onOpen:_})}),t===De&&Pe,Ee(t),(0,Y.jsxs)(rW,{messageId:me(e),"data-prompt":p&&!h||void 0,className:`group/row relative -mx-1.5 flex items-start gap-2 rounded-sm px-1.5 ${h||g?`mt-1 mb-3.5`:p?`-mb-2.5 mt-4 first:mt-0`:``} ${s?``:fW(e)}`,children:[h?(0,Y.jsx)(OW,{...h}):g&&A?(0,Y.jsx)(OW,{...A}):p&&i!==null?(0,Y.jsx)(jW,{text:i,at:l,attached:e.kind===`driver`&&e.event.type===`start`?e.event.attached:void 0,fresh:me(e)===`sending`}):s?(0,Y.jsx)(ZH,{name:uf(s.agent,void 0).name,text:gf(s.rest),status:s.status,detail:s.detail}):i===null?R.has(e)?(0,Y.jsx)(BF,{steps:R.get(e),lead:Ne&&t===De?B:void 0,live:e===Ce&&re!==void 0?{call:re,since:fe}:void 0}):a?.passed?(0,Y.jsx)(hW,{choice:a.choice,footer:Le.has(e)?(0,Y.jsx)(wW,{text:Le.get(e),at:l}):void 0}):a&&a.pick===void 0&&u!==void 0&&d!==void 0?ne?null:(0,Y.jsxs)(`div`,{className:`mt-1 flex min-w-0 flex-1 flex-col gap-1.5`,children:[(0,Y.jsx)(WH,{projectId:u,agentId:d,choice:a.choice,active:e===Ve,onSaid:f},`${d}:${a.choice.id}`),Le.has(e)&&(0,Y.jsx)(wW,{text:Le.get(e),at:l})]}):a?.pick===void 0?m?(0,Y.jsx)(LW,{words:m,tone:dW(e)}):e.kind===`screen`?(0,Y.jsx)(RW,{label:e.label,onOpen:v&&x.live.has(e)?v:void 0}):(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 whitespace-pre-wrap break-words ${dW(e)||`text-foreground`}`,children:(Ri(e)??``).trim()}):(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1 font-sans`,children:[(0,Y.jsx)(BH,{choice:a.choice,pick:a.pick}),Le.has(e)&&(0,Y.jsx)(wW,{text:Le.get(e),at:l})]}):Le.has(e)?(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1.5`,children:[(0,Y.jsx)(SW,{text:i}),(0,Y.jsx)(wW,{text:Le.get(e),at:l})]}):(0,Y.jsx)(SW,{text:i}),!p&&!s&&i===null&&c&&l!==void 0&&!Le.has(e)&&!R.has(e)&&(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(`span`,{className:zW}),children:mW(l)}),(0,Y.jsx)(W,{children:new Date(l).toLocaleString()})]})]})]},me(e))}),we.length===De&&Pe,Ee(we.length),te&&(0,Y.jsx)(rW,{messageId:`writing`,className:`-mx-1.5 flex items-start gap-2 rounded-sm px-1.5`,children:(0,Y.jsx)(xW,{text:te})}),!r&&n===void 0&&w.last.length>0&&(0,Y.jsx)(rW,{messageId:`changes-last`,className:kW,children:(0,Y.jsx)(AW,{files:w.last,onOpen:_,footer:Re.get(null)})}),L.length>0&&(0,Y.jsx)(`div`,{"data-testid":`live-line`,className:`-mx-1.5 flex min-h-5 shrink-0 items-center gap-2 rounded-sm px-1.5`,children:r&&!Oe&&!ce&&re===void 0&&(0,Y.jsx)(IF,{since:fe,tokens:ye})}),!r&&a>0&&(0,Y.jsx)(rW,{messageId:`waiting-on`,className:`-mx-1.5 flex items-center gap-2 rounded-sm px-1.5`,children:(0,Y.jsx)(IF,{word:`Waiting for ${a} ${a===1?`subagent`:`subagents`}`})}),i.map(({id:e,text:t,...n})=>(0,Y.jsx)(rW,{messageId:`queued-${e}`,className:`-mx-1.5 flex items-start gap-2 rounded-sm px-1.5`,children:(0,Y.jsx)(jW,{text:t,waiting:n,fresh:!0})},`queued-${e}`)),l]})}),(0,Y.jsx)(iW,{className:`data-[direction=end]:bottom-[calc(var(--chat-bottom,0px)+1.25rem)]`})]})]})}function YW({events:e,writing:t=``,sending:n,working:r=!1,queued:i,waitingOn:a,stick:o=!0,openAt:s,emptyLabel:c=`Waiting for the session to start…`,tail:l,projectId:u,agentId:d,onSaid:f,subagents:p,doing:m,setup:h,onOpenSubagent:g,onOpenChange:_,onOpenScreen:v}){return e.length===0&&n===void 0&&!i?.length?(0,Y.jsx)(kH,{children:c}):(0,Y.jsx)(JW,{events:e,writing:t,...n===void 0?{}:{sending:n},working:r,...i?{queued:i}:{},...a?{waitingOn:a}:{},stick:o,...s?{openAt:s}:{},...l?{tail:l}:{},projectId:u,agentId:d,onSaid:f,...p?{subagents:p}:{},...m?{doing:m}:{},setup:h,onOpenSubagent:g,onOpenChange:_,onOpenScreen:v})}function XW({target:e,events:t,live:n}){if(e!==`actions`)return null;let r=PI(t);return(0,Y.jsxs)(`div`,{role:`status`,className:`flex items-center gap-2 border-b border-border bg-muted/40 px-4 py-2 text-xs text-muted-foreground`,children:[(0,Y.jsx)(Io,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[`Running on GitHub Actions`,n?` — updates arrive when the run finishes.`:`.`]}),r&&(0,Y.jsxs)(`a`,{href:r,target:`_blank`,rel:`noreferrer`,className:`inline-flex shrink-0 items-center gap-1 text-primary hover:underline`,children:[`View the Actions run`,(0,Y.jsx)(So,{className:`h-3.5 w-3.5`,"aria-hidden":!0})]})]})}function ZW(){return(0,Y.jsxs)(`div`,{role:`status`,className:`flex items-center gap-2 border-b border-border bg-warning/10 px-4 py-2 text-xs text-warning`,children:[(0,Y.jsx)(ls,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),`Live stream lost — reconnecting. The session keeps running; this view may be behind.`]})}var QW=4e3;function $W({target:e,events:t,projectId:n,agentId:r}){let i=e===`web`?FI(t):void 0,a=uG(i?.id),o=lG(i?.id);return e===`web`?(0,Y.jsxs)(`div`,{className:`border-b border-border bg-muted/40`,children:[(0,Y.jsxs)(`div`,{role:`status`,className:`flex flex-wrap items-center gap-2 px-4 py-2 text-xs text-muted-foreground`,children:[(0,Y.jsx)(_o,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1`,children:i?`Running as a Claude Code cloud session. It opens its own pull request over there; a question it parks on shows here once the bridge sees it.`:`Starting a Claude Code cloud session…`}),i&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-1`,children:[(0,Y.jsxs)(`code`,{className:`rounded bg-muted px-1 py-0.5`,children:[`claude --teleport `,i.id]}),(0,Y.jsx)(re,{text:`claude --teleport ${i.id}`,label:`Copy the command that continues this session here`})]}),(0,Y.jsxs)(`a`,{href:i.url,target:`_blank`,rel:`noreferrer`,className:`inline-flex shrink-0 items-center gap-1 text-primary hover:underline`,children:[`Open the session`,(0,Y.jsx)(So,{className:`h-3.5 w-3.5`,"aria-hidden":!0})]})]})]}),a&&i&&(!o||o.state===`failed`)&&(0,Y.jsx)(tG,{question:a,url:i.url,sessionId:i.id,projectId:n,agentId:r,failure:o?.state===`failed`?o:void 0}),o&&i&&o.state!==`failed`&&(0,Y.jsx)(nG,{answer:o,url:i.url,sessionId:i.id})]}):null}function eG(e){return async t=>{let n=await tu(e,Array.isArray(t)?t:[t]);if(!n.ok)throw Error(n.error??`could not queue the answer`)}}function tG({question:e,url:t,sessionId:n,projectId:r,agentId:i,failure:a}){return(0,Y.jsxs)(`div`,{className:`border-t border-border`,children:[a&&(0,Y.jsxs)(`p`,{className:`flex items-center gap-1 px-4 pt-2.5 text-xs text-destructive`,children:[(0,Y.jsx)(ls,{className:`h-3 w-3 shrink-0`,"aria-hidden":!0}),`Sending “`,a.labels.join(`, `),`” failed`,a.note?`: ${a.note}`:``,`. Pick again, or answer in the session.`]}),(0,Y.jsx)(WH,{projectId:r,agentId:i,choice:ca(e),send:eG(n)},e.title),(0,Y.jsxs)(`a`,{href:t,target:`_blank`,rel:`noreferrer`,className:`inline-flex items-center gap-1 px-4 py-2.5 text-xs text-primary hover:underline`,children:[`Answer it in the session`,(0,Y.jsx)(So,{className:`h-3 w-3`,"aria-hidden":!0})]})]})}function nG({answer:e,url:t,sessionId:n}){return(0,Y.jsx)(`div`,{className:`flex items-center gap-2 border-t border-border px-4 py-2.5 text-xs text-muted-foreground`,children:e.state===`queued`?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(xn,{className:`h-3.5 w-3.5 shrink-0 animate-spin text-primary`,"aria-hidden":!0}),(0,Y.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[`Sending “`,e.labels.join(`, `),`” through your Claude web tab… It goes out the next time the extension checks in.`]}),(0,Y.jsx)(`button`,{type:`button`,onClick:()=>void nu(n).catch(()=>{}),className:`shrink-0 rounded border border-border px-2 py-1 hover:border-primary/50 hover:text-foreground`,children:`Cancel`})]}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(In,{className:`h-3.5 w-3.5 shrink-0 text-primary`,"aria-hidden":!0}),(0,Y.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[`Answered “`,e.labels.join(`, `),`”. The session continues over there and its transcript above follows along.`]}),(0,Y.jsxs)(`a`,{href:t,target:`_blank`,rel:`noreferrer`,className:`inline-flex shrink-0 items-center gap-1 text-primary hover:underline`,children:[`Open the session`,(0,Y.jsx)(So,{className:`h-3 w-3`,"aria-hidden":!0})]})]})})}var rG=[/^Arrow keys move the tile/i,/^Show message actions$/i,/^(Claude\s+)?(Fable|Opus|Sonnet|Haiku)(\s+\d[\d.]*)?$/i];function iG(e){return e.split(`
142
+ `).filter(e=>!rG.some(t=>t.test(e.trim()))).join(`
143
+ `).replace(/\n{3,}/g,`
144
+
145
+ `).trim()}function aG({target:e,events:t}){let n=e===`web`?FI(t):void 0,r=cG(n?.id).map(e=>({...e,text:iG(e.text)})).filter(e=>e.text),i=sG(r.at(-1)?.seq,r.at(-1)?.text.length);return e!==`web`||!n?null:(0,Y.jsxs)(`div`,{role:`status`,"aria-label":`Cloud session mirror`,className:`mt-2 rounded-md border border-border bg-muted/40 font-sans`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 border-b border-border px-3 py-1.5 text-[10px] text-muted-foreground`,children:[(0,Y.jsx)(_o,{className:`h-3 w-3 shrink-0 text-primary`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`font-medium uppercase tracking-wide`,children:`Cloud session mirror`}),(0,Y.jsx)(`span`,{className:`opacity-70`,children:`a best-effort view of the Claude tab, not the run's own log`})]}),r.length>0?(0,Y.jsx)(`div`,{ref:i,className:`max-h-80 space-y-2 overflow-y-auto px-3 py-2 text-xs`,children:r.map(e=>e.role===`user`?(0,Y.jsxs)(`div`,{className:`truncate text-muted-foreground/70`,title:e.text,children:[(0,Y.jsx)(`span`,{className:`font-medium`,children:`you ›`}),` `,oG(e.text)]},e.seq):(0,Y.jsx)(`div`,{className:`whitespace-pre-wrap break-words text-muted-foreground`,children:e.text},e.seq))}):(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2 text-xs text-muted-foreground`,children:[(0,Y.jsx)(xn,{className:`h-3.5 w-3.5 shrink-0 animate-spin text-primary`,"aria-hidden":!0}),`Connecting to the cloud session…`]})]})}function oG(e){return e.split(`
146
+ `).find(e=>e.trim())??``}function sG(e,t){let n=(0,J.useRef)(null);return(0,J.useEffect)(()=>{let e=n.current;e&&(e.scrollTop=e.scrollHeight)},[e,t]),n}function cG(e){let[t,n]=(0,J.useState)([]);return(0,J.useEffect)(()=>{if(!e){n([]);return}let t=!0,r=()=>{Xl(e).then(e=>{t&&n(e)}).catch(()=>{})};r();let i=setInterval(r,QW);return()=>{t=!1,clearInterval(i)}},[e]),t}function lG(e){let[t,n]=(0,J.useState)(void 0);return(0,J.useEffect)(()=>{if(!e){n(void 0);return}let t=!0,r=()=>{Yl(e).then(e=>{t&&n(e??void 0)}).catch(()=>{})};r();let i=setInterval(r,QW);return()=>{t=!1,clearInterval(i)}},[e]),t}function uG(e){let[t,n]=(0,J.useState)(void 0);return(0,J.useEffect)(()=>{if(!e){n(void 0);return}let t=!0,r=()=>{Kl(e).then(e=>{t&&n(e??void 0)}).catch(()=>{})};r();let i=setInterval(r,QW);return()=>{t=!1,clearInterval(i)}},[e]),t}function dG({handoff:e,subagent:t=!1}){if(!e||!e.exists&&e.landed)return null;if(!e.exists)return(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:e.unchanged?`no changes`:`branch gone`});let n=`${e.commits.length} commit${e.commits.length===1?``:`s`}`;if(e.empty&&e.commits.length>0)return(0,Y.jsxs)(`span`,{className:`text-muted-foreground`,children:[n,` · no change left`]});if(e.empty&&e.pendingFiles?.length)return null;if(e.empty)return(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:e.merged?`merged`:`no changes`});let r=[n,`${e.files.length} file${e.files.length===1?``:`s`}`,...!t&&e.pushed&&!e.pr?[`pushed`]:[]].join(` · `);return(0,Y.jsx)(`span`,{className:`flex shrink-0 items-center whitespace-nowrap`,title:r,"aria-label":r,children:(0,Y.jsx)(ge,{added:e.insertions,removed:e.deletions,zeros:!0,className:`text-[11px] font-medium`})})}var fG=`Commit your work.`,pG=`bg-background/60 hover:bg-background`;function mG(e){return e!==void 0&&!/^[0-9a-f]{40}$/.test(e)?e.replace(/^origin\//,``):`the main branch`}function hG(e){return e===fG}function gG(){return(0,Y.jsx)(xG,{children:`Committing…`})}function _G({projectId:e,agentId:t,state:n,subagent:r=!1,onAsked:i}){let{handoff:a,busy:o,pending:s,act:c}=n;if(!a)return null;if(r)return a.landed?(0,Y.jsx)(xG,{children:`landed`}):a.empty?(0,Y.jsx)(yG,{paths:a.pendingFiles??[]}):(0,Y.jsx)(xG,{children:`not landed`});if(a.landed)return(0,Y.jsx)(xG,{children:`Merged into the main branch.`});if(a.prPending)return null;let l=a.pendingFiles??[];if(l.length>0)return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(yG,{paths:l,committed:!a.empty}),(0,Y.jsx)(B,{size:`xs`,variant:`ghost`,className:pG,disabled:o,onClick:()=>{i?.(fG),c(`commit`,()=>iu(e,fG,t).then(e=>(e.ok||i?.(null),e),e=>{throw i?.(null),e}),`Could not ask the agent to commit.`)},children:s===`commit`?`Asking…`:`Commit`})]});let u=()=>c(`push`,()=>pu(e,t),`Could not push the branch.`);if(a.pr&&!a.movedPastPr){if(a.pr.state!==`OPEN`||a.merged)return null;let n=a.pr.headRefOid;return!a.pushed&&a.commits.slice(1).some(e=>e.sha===n)?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(xG,{children:`not in the PR yet`}),(0,Y.jsx)(B,{size:`xs`,variant:`ghost`,className:pG,disabled:o,onClick:u,children:s===`push`?`Updating PR…`:`Update PR`})]}):(0,Y.jsx)(B,{size:`xs`,variant:`ghost`,className:pG,disabled:o,onClick:()=>c(`merge`,()=>fu(e,t),`Could not merge the pull request.`),children:s===`merge`?`Merging…`:`Merge PR`})}if(!a.exists)return a.unchanged?null:(0,Y.jsx)(xG,{children:`Branch gone — nothing to open a PR from.`});if(a.empty)return a.commits.length>0?(0,Y.jsxs)(xG,{children:[`Nothing to `,a.hasRemote?`publish`:`merge`,`: the commits cancel out.`]}):null;if(a.merged)return(0,Y.jsxs)(xG,{children:[`Merged into `,mG(a.base),`.`]});if(!a.hasRemote)return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(xG,{children:[`Not in `,mG(a.base),` yet.`]}),(0,Y.jsx)(B,{size:`xs`,variant:`ghost`,className:pG,disabled:o,onClick:()=>c(`merge-branch`,()=>mu(e,t),`Could not merge the branch.`),children:s===`merge-branch`?`Merging…`:`Merge`})]});if(!a.gitHost)return a.pushed?(0,Y.jsx)(xG,{children:`Pushed — no git host package to open a pull request with.`}):(0,Y.jsx)(Y.Fragment,{children:(0,Y.jsx)(B,{size:`xs`,variant:`ghost`,className:pG,disabled:o,onClick:u,children:s===`push`?`Publishing…`:`Publish branch`})});let d=n=>c(`pr`,()=>du(e,t,{draft:n}),`Could not open the pull request.`);return(0,Y.jsxs)(Y.Fragment,{children:[a.carries&&(0,Y.jsx)(vG,{carries:a.carries}),(0,Y.jsxs)(`span`,{className:`inline-flex`,children:[(0,Y.jsx)(B,{size:`xs`,variant:`ghost`,className:q(pG,`rounded-r-none pr-1.5`),disabled:o,onClick:()=>d(!1),children:s===`pr`?`Opening PR…`:s===`push`?`Publishing…`:`Open PR`}),(0,Y.jsxs)(be,{children:[(0,Y.jsx)(z,{type:`button`,"aria-label":`Other choices`,disabled:o,className:q(lt({size:`xs`,variant:`ghost`}),pG,`rounded-l-none px-1 text-muted-foreground data-[popup-open]:bg-[var(--color-accent)] data-[popup-open]:text-[var(--color-accent-foreground)]`),children:(0,Y.jsx)(Vn,{className:`h-3.5 w-3.5`})}),(0,Y.jsxs)(dt,{align:`end`,className:`min-w-[10rem]`,children:[(0,Y.jsxs)(b,{onClick:()=>d(!0),children:[(0,Y.jsx)(Po,{className:`h-3.5 w-3.5`}),`Create draft PR`]}),!a.pushed&&(0,Y.jsxs)(b,{onClick:u,children:[(0,Y.jsx)(us,{className:`h-3.5 w-3.5`}),`Publish branch`]})]})]})]})]})}function vG({carries:e}){let t=mG(e.base),n=`${e.files} file${e.files===1?``:`s`}`;return(0,Y.jsxs)(xG,{title:`A pull request against ${t} carries ${`${e.commits} commit${e.commits===1?``:`s`}`} · ${n} · +${e.insertions} −${e.deletions}, this run's work among them.`,children:[n,` over `,t]})}function yG({paths:e,committed:t=!1}){return e.length===0?null:(0,Y.jsxs)(xG,{title:e.join(`
147
+ `),children:[t?``:`Nothing committed — `,bG(e),` left uncommitted.`]})}function bG(e){let t=e.slice(0,2).join(`, `),n=e.length-Math.min(e.length,2);return n>0?`${t} and ${n} more`:t}function xG({children:e,title:t}){return(0,Y.jsx)(`span`,{className:`inline-block max-w-[24rem] truncate align-middle text-xs text-muted-foreground`,...t?{title:t}:{},children:e})}function SG(e){let t,n=0;for(let r of e)r.kind===`usage`?t=(t??0)+r.costUsd:r.kind===`driver`&&r.event.type===`result`&&n++;return{...t===void 0?{}:{costUsd:t},turns:n}}function CG({label:e,value:t}){return(0,Y.jsxs)(`span`,{className:`flex items-baseline gap-1.5`,children:[(0,Y.jsx)(`span`,{className:`text-muted-foreground/70`,children:e}),(0,Y.jsx)(`span`,{className:`tabular-nums text-foreground`,children:t})]})}function wG({events:e,card:t,pr:n}){let r=Jn(t?.driver),i=r?Vr[r]:t?.driver,a=nr(),o=t?.model&&P(r?a?.[r]:void 0,t.model),{costUsd:s,turns:c}=SG(e);return(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-4 gap-y-1 border-b border-border px-4 py-2 text-xs`,children:[i&&(0,Y.jsx)(CG,{label:`Agent`,value:i}),o&&(0,Y.jsx)(CG,{label:`Model`,value:o}),s!==void 0&&(0,Y.jsx)(CG,{label:`Spent`,value:`$${s.toFixed(2)}`}),c>0&&(0,Y.jsx)(CG,{label:`Turns`,value:String(c)}),n&&(0,Y.jsxs)(`span`,{className:`flex items-baseline gap-1.5`,children:[(0,Y.jsx)(`span`,{className:`text-muted-foreground/70`,children:`Pull request`}),(0,Y.jsxs)(`a`,{href:n.url,target:`_blank`,rel:`noreferrer`,className:`text-primary hover:underline`,children:[`#`,n.number]}),(0,Y.jsx)(`span`,{className:`text-muted-foreground/70`,children:n.state.toLowerCase()})]}),s===void 0&&c===0&&(0,Y.jsx)(`span`,{className:`text-muted-foreground/70`,children:`No spend reported yet`})]})}function TG(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e5?`${Math.round(e/1e3)}k`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function EG({used:e,size:t}){if(!(t>0))return null;let n=Math.min(Math.max(e,0)/t,1),r=2*Math.PI*5,i=Math.round((1-n)*100),a=`${TG(e)} of ${TG(t)} used · ${i}% of the context left`;return(0,Y.jsxs)(K,{children:[(0,Y.jsx)(V,{render:(0,Y.jsx)(`span`,{className:`flex shrink-0 items-center px-1`,role:`img`,"aria-label":a}),children:(0,Y.jsxs)(`svg`,{viewBox:`0 0 14 14`,className:`h-3.5 w-3.5`,"aria-hidden":!0,children:[(0,Y.jsx)(`circle`,{cx:`7`,cy:`7`,r:5,fill:`none`,strokeWidth:`2`,className:`stroke-muted-foreground/30`}),(0,Y.jsx)(`circle`,{cx:`7`,cy:`7`,r:5,fill:`none`,strokeWidth:`2`,strokeDasharray:`${r*n} ${r}`,transform:`rotate(-90 7 7)`,className:q(`transition-[stroke-dasharray] duration-500`,n>=.9?`stroke-danger`:n>=.75?`stroke-warning`:`stroke-muted-foreground`)})]})}),(0,Y.jsx)(W,{children:a})]})}var DG=1e3,OG=5e3,kG=2e3,AG=[],jG={};function MG({projectId:e,agentId:t,events:n,live:r,card:i,picks:a,label:o,naming:s,projectName:c,target:l,remoteLabel:u,files:d,lost:f=!1,writing:p=``,startedWith:m,onAgentStarted:h,contextSet:g,onDeleted:_,onProjectRemoved:v,subagents:y=AG}){let[b,S]=(0,J.useState)(0),C=Kt(r===!1?()=>Pl(e,t):null,null,[e,t,r,b],{remember:Km(e,t)}),w=y.filter(e=>e.status===`running`).map(e=>e.id).join(`,`),T=Date.now(),E=y.filter(e=>tf(e,T)).length,{value:D}=Bt(w?()=>Fl(e,w.split(`,`)):null,jG,kG,[e,w],`previous`),O=Kt(r===!1?()=>jl(e):null,[],[e,t,r],{remember:`retained:${e}`}),[k,A]=(0,J.useState)(!1),j=(0,J.useCallback)(()=>A(!0),[]),M=Kt(()=>Ul(e),null,[e],{remember:`git-host-home:${e}`}),N=M?.name===`GitHub`?M.url:void 0;(0,J.useEffect)(()=>{A(!1),S(0)},[t]);let F=r===!1&&!k&&O.includes(t),ee=r===!0,te=i?.parent!==void 0,{workspace:ne,branch:I,base:L,driver:R,model:re}=i??{},ie=l!==void 0&&l!==`local`||u!==void 0,ae=(0,J.useMemo)(()=>({workspace:ne,branch:I,base:L,driver:R,model:re,elsewhere:ie}),[ne,I,L,R,re,ie]),oe=Jn(R??a?.driver),se=nr(),ce=re??a?.model,le=ce?P(oe?se?.[oe]:void 0,ce):void 0,ue=i?.effort??a?.effort,de=[le,ue?yP(ue):void 0].filter(Boolean).join(` `)||void 0,fe=fi(se,oe,re),pe=u??(l===`web`?`Cloud`:l===`actions`?`GitHub Actions`:l===`remote`?`Another machine`:i?.otherHost&&i.host?i.host:rh()),me=CH(i),he=wH(i,Kt(me?()=>Nl(e,t):null,null,[e,t,me],{remember:`main-branch:${e}:${t}`}))??a?.branch,[ge,_e]=(0,J.useState)(!1),{runSlots:ve,panels:ye}=x(),be=ye.some(t=>t.changes&&t.projects.includes(e)),xe=(0,J.useMemo)(()=>be?n=>uB(Rz(e,t),n):void 0,[be,e,t]),Se=ye.some(t=>t.files&&t.projects.includes(e)),Ce=(0,J.useMemo)(()=>Se?n=>fB(Rz(e,t),n):void 0,[Se,e,t]),we=ye.some(t=>t.screen&&t.projects.includes(e)),Te=(0,J.useMemo)(()=>we?()=>mB(Rz(e,t)):void 0,[we,e,t]),Ee=(0,J.useMemo)(()=>n=>gB(Rz(e,t),n),[e,t]),De=ve.filter(t=>t.projects.includes(e)),Oe=(0,J.useCallback)(()=>_e(e=>!e),[]),ke=(!C?.length||n.length===0||JSON.stringify(n[0])===JSON.stringify(C[0]))&&n.length>(C?.length??0),z=ee?n:C?.length&&!ke?C:n;(0,J.useEffect)(()=>{r===!1&&C!==null&&ke&&S(n.length)},[r,C,ke,n.length]);let[Ae,B]=(0,J.useState)(null),je=jI(z),Me=ee||je&&(ke||Ae===t);(0,J.useEffect)(()=>{je&&ke&&C!==null?B(t):je||B(null)},[je,ke,C,t]);let[Ne,Pe]=(0,J.useState)(null);(0,J.useEffect)(()=>Pe(null),[t]);let Fe=z.filter(e=>e.kind===`driver`&&e.event.type===`start`).length;(0,J.useEffect)(()=>{Ne&&Fe>Ne.prompts&&Pe(null)},[Ne,Fe]);let Ie=(0,J.useCallback)(e=>Pe(e===null?null:{text:e,prompts:Fe}),[Fe]),[Le,Re]=(0,J.useState)([]);(0,J.useEffect)(()=>Re([]),[t]);let ze=(0,J.useMemo)(()=>{let e=new Set(z.flatMap(e=>e.kind===`driver`&&e.event.type===`steered`&&e.event.id!==void 0?[e.event.id]:[])),t=z.flatMap(e=>e.kind===`driver`&&e.event.type===`start`?[e.event.prompt]:[]);return n=>e.has(n.id)||t.slice(n.prompts).includes(n.text)},[z]),Be=Le.filter(e=>!ze(e));(0,J.useEffect)(()=>{Be.length!==Le.length&&Re(Be)},[Be.length,Le.length]),(0,J.useEffect)(()=>{if(Le.length===0||Me)return;let e=setTimeout(()=>Re([]),OG);return()=>clearTimeout(e)},[Le.length,Me]);let Ve=(0,J.useCallback)(e=>Re(t=>[...t,{...e,prompts:Fe}]),[Fe]),He=(0,J.useRef)(null),Ue=Be.map(({prompts:n,...r})=>({...r,onSendNow:()=>void ou(e,t),onEdit:()=>{Re(e=>e.filter(e=>e.id!==r.id)),au(e,t,r.id),He.current?.(r.text)}})),We=(Ne&&Fe<=Ne.prompts?Ne.text:void 0)??(m&&Fe===0?m:void 0),Ge=Me||We!==void 0,Ke=yH(e,t,je),qe=vH(e,t,r===!1&&!Ge,i?.saving===!0,Ge),Je=qe.handoff!==null&&qe.handoff.exists&&!qe.handoff.empty,Ye=i?.saving&&!Je?{...qe,handoff:null,loaded:!1}:qe,Xe=We??[...z].reverse().find(e=>e.kind===`driver`&&e.event.type===`start`),Ze=hG(typeof Xe==`string`?Xe:Xe?.kind===`driver`&&Xe.event.type===`start`?Xe.event.prompt:void 0)&&(Ge||r===!1&&!Ye.loaded),Qe=ee?void 0:MI(z)??(i?NI(i.status):void 0),$e=r===!1&&Ye.loaded,[et,tt]=(0,J.useState)(null);(0,J.useEffect)(()=>{let e=setTimeout(()=>tt(t),DG);return()=>clearTimeout(e)},[t]);let nt=i?.saving===!0||Ye.loaded&&!Ye.handoff?.prPending,rt=ee||et===t||C!==null&&nt,[it,at]=(0,J.useState)(null),ot=it===t||ee||C!==null||et===t;(0,J.useEffect)(()=>{ot&&at(t)},[ot,t]);let st=rt&&r===!1&&!Ge&&E===0,ct=Ye.handoff,lt=(0,J.useMemo)(()=>{let e=Ke?.branch??ct?.branch,t=Ke?.pr??ct?.pr;return e===void 0?Ke:{...Ke,branch:e,...t?{pr:t}:{}}},[Ke,ct]),ut=lt?.pr,dt=r===!1&&(ct?.landed===!0||(ct?.merged===!0||ut?.state===`MERGED`||ut?.state===`CLOSED`)&&!ct?.pendingFiles?.length&&ct?.movedPastPr!==!0),ft=(0,J.useRef)({agentId:null,say:!1}),pt=ft.current.agentId===t&&ft.current.say,mt=!pt&&(Ke?.pr!==void 0&&Ke.prPending===!0||r===!1&&ct?.prPending===!0),ht=!dt&&(Ze||!mt&&(r===!1?Ye.loaded&&(ut!==void 0||_H(ct))||pt:r===!0&&(ut!==void 0||Ke?.checkout?.dirty===!0)||pt));ft.current={agentId:t,say:ht};let V=i?.earlierPrs,gt=(0,J.useMemo)(()=>[...V??[],...ut&&!V?.some(e=>e.url===ut.url)?[ut]:[]],[V,ut]),_t=(0,Y.jsx)(SH,{runsOn:pe,target:l,remoteKind:i?.remoteKind,elsewhere:ie||i?.otherHost===!0,projectName:c,startedFrom:he,worksOn:lt?.branch??I,repos:i?.repos??a?.repos}),vt=[t,lt?.branch??``,ct?.commits.length??0,ct?.pendingFiles?.length??0,ct?.insertions??0,ct?.deletions??0,ct?.pushed??!1,ut?.number??``,ut?.state??``].join(`|`);return(0,Y.jsx)(OH,{top:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(bH,{projectId:e,agentId:t,events:z,label:o,naming:s,retainedWorktree:F,onWorktreeRemoved:j,onDeleted:_,onProjectRemoved:v,expanded:ge,onToggle:Oe,ready:rt,checkout:Ke}),ge&&(0,Y.jsx)(wG,{events:z,card:i,...Ke?.pr?{pr:Ke.pr}:{}}),(0,Y.jsx)(XW,{target:l,events:z,live:ee}),(0,Y.jsx)($W,{target:l,events:z,projectId:e,agentId:t}),f&&(0,Y.jsx)(ZW,{})]}),bottom:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(DH,{checkout:lt,summary:rt&&($e?(0,Y.jsx)(dG,{handoff:Ye.handoff,subagent:te}):De.map(n=>{let r=n.summary;return r?(0,Y.jsx)(rl,{package:n.package,label:`run summary`,children:(0,Y.jsx)(r,{projectId:e,agentId:t,working:ee})},n.package):null})),actions:Ze?(0,Y.jsx)(gG,{}):st?(0,Y.jsx)(_G,{projectId:e,agentId:t,state:Ye,subagent:te,onAsked:Ie}):void 0,error:rt&&$e?Ye.error:void 0,show:ht,state:vt}),i?.otherHost&&i.host?(0,Y.jsxs)(`div`,{className:`mx-auto w-full max-w-3xl p-2`,children:[_t,(0,Y.jsx)(`p`,{role:`note`,className:`rounded-xl border border-border bg-muted/40 px-3 py-2.5 text-sm text-muted-foreground`,children:`This run is on ${i.host}. Continue it there.`})]}):(0,Y.jsx)(EH,{projectId:e,agentId:t,live:Me,files:d,onAgentStarted:h,onSending:Ie,onQueued:Ve,editInBox:He,model:de,...fe===void 0?{}:{context:(0,Y.jsx)(EG,{used:i?.contextTokens??0,size:fe})},controls:(0,Y.jsx)(TH,{prs:gt}),contextSet:g,publish:i?i.publish:a?.publish,prBase:i?.prBase??a?.prBase,row:_t,agent:i?.agent??a?.agent,gitHost:M,gitAccount:i?.gitAccount??a?.gitAccount,...i?{skillsOn:i.skillsOn,skillsOff:i.skillsOff,projectSkills:i.projectSkills}:{skillsOn:a?.skillsOn,skillsOff:a?.skillsOff,projectSkills:a?.projectSkills}})]}),children:ot?r!==!0&&C===null&&z.length===0?(0,Y.jsx)(kH,{children:`Loading agent…`}):(0,Y.jsx)(kn.Provider,{value:N,children:(0,Y.jsx)(_F.Provider,{value:Ce,children:(0,Y.jsx)(YW,{events:z,projectId:e,agentId:t,onSaid:Ie,writing:Me?p:``,...We===void 0?{}:{sending:We},working:Me||We!==void 0,queued:Ue.length>0?Ue:void 0,waitingOn:!Ge&&r===!1&&Qe?.ok!==!1&&!Qe?.waiting?E:0,...Me?{}:{openAt:`end`,emptyLabel:`This agent has no events.`},...Ge?{}:{stick:!1},tail:(0,Y.jsx)(aG,{target:l,events:z}),subagents:y,doing:D,setup:ae,onOpenSubagent:Ee,onOpenChange:xe,onOpenScreen:Te},t)})}):null})}var NG=2e3,PG=6e4,FG=[];function IG({projectId:e,agentId:t,events:n,subagents:r,live:i,onOpenAgent:a}){let o=_B(Rz(e,t)),s=(0,J.useMemo)(()=>sf(n),[n]),c=o?.key,l=r.find(e=>`run:${e.id}`===c),u=s.find(e=>`call:${e.id}`===c),d=l?uf(l,void 0):u?df(u,i,n[0]?.at??new Date(0).toISOString()):void 0;return d?(0,Y.jsx)(LG,{row:d,projectId:e,events:n,onOpenAgent:a},d.key):(0,Y.jsx)(`p`,{className:`p-3 text-sm text-muted-foreground`,children:`This subagent is not one of this run’s.`})}function LG({row:e,projectId:t,events:n,onOpenAgent:r}){let i=e.agent?.id,{value:a,loaded:o}=Bt(i?()=>Pl(t,i):null,FG,e.working?NG:PG,[t,i,e.working],i?{remember:`subagent-log:${t}:${i}`}:void 0),s=e.call?.id,c=(0,J.useMemo)(()=>s===void 0?BG(a,e.prompt):lf(n,s).map(VG),[s,n,a,e.prompt]),l=c.filter(e=>e.kind===`driver`&&e.event.type===`action`).length;return(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[(0,Y.jsx)(Ni,{children:(0,Y.jsx)(`h2`,{className:`min-w-0 flex-1 truncate pl-2 text-xs font-medium text-foreground`,children:e.name})}),i&&r&&(0,Y.jsx)(Pe,{children:(0,Y.jsx)(B,{variant:`ghost`,size:`sm`,className:`h-7 text-xs text-muted-foreground`,onClick:()=>r(i),children:`Open its page`})}),(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[(0,Y.jsx)(JW,{events:c,working:e.working,stick:e.working,openAt:`start`,head:(0,Y.jsx)(RG,{row:e}),tail:!e.working&&c.length>0?(0,Y.jsx)(zG,{row:e,calls:l}):void 0}),c.length===0&&!(i&&!o)&&(0,Y.jsx)(`p`,{className:`px-3 text-sm text-muted-foreground`,children:e.working?`Nothing said or done yet.`:`It left nothing to show.`})]})]})}function RG({row:e}){let t=nr();return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4 pb-3 font-sans text-sm`,children:[e.prompt&&(0,Y.jsx)(`section`,{"aria-label":`Its prompt`,className:`max-h-64 overflow-auto rounded-xl bg-muted px-3.5 py-2.5 break-words whitespace-pre-wrap text-foreground`,children:e.prompt}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-baseline gap-x-2 text-muted-foreground`,children:[e.model!==void 0&&(0,Y.jsxs)(`span`,{children:[`Model `,mt(t,e.model)]}),!e.working&&e.status!==`done`&&(0,Y.jsx)(`span`,{className:Gd[e.status]??`text-muted-foreground`,children:e.status}),e.working&&(0,Y.jsx)(vF,{since:e.startedAt})]})]})}function zG({row:e,calls:t}){let n=e.toolUses??t;return(0,Y.jsx)(`p`,{className:`py-1 font-sans text-sm text-muted-foreground`,children:[n>0?`${n} tool ${n===1?`call`:`calls`}`:void 0,e.tokens===void 0?void 0:`${zF(e.tokens)} tokens`,e.endedAt===void 0?void 0:ci(Date.parse(e.endedAt)-Date.parse(e.startedAt)),e.cost===void 0?void 0:`$${e.cost.toFixed(2)}`,e.agent?.branch?`on ${e.agent.branch}`:e.agent?.landed?`landed`:void 0].filter(Boolean).join(` · `)})}function BG(e,t){let n=e.findIndex(e=>e.kind===`driver`&&e.event.type===`start`),r=e[n];return r?.kind===`driver`&&r.event.type===`start`&&r.event.prompt===t?e.filter((e,t)=>t!==n):e}function VG(e){if(e.kind!==`driver`||!(`subagent`in e.event))return e;let{subagent:t,...n}=e.event;return{...e,event:n}}function HG({inBar:e=!1}){let{toggleSidebar:t,openMobile:n}=N();return(0,Y.jsx)(B,{variant:`ghost`,size:`icon-sm`,className:q(`z-10 h-7 w-7`,e?`shrink-0`:`absolute top-2 left-2`),"aria-label":`Open the menu`,"aria-expanded":n,onClick:t,children:(0,Y.jsx)(Go,{className:`h-4 w-4`,"aria-hidden":!0})})}function UG({title:e}){return(0,Y.jsxs)(`div`,{className:`sticky top-0 z-20 flex h-11 shrink-0 items-center gap-2 border-b border-border bg-background pr-4 pl-2 text-sm font-medium`,children:[(0,Y.jsx)(HG,{inBar:!0}),(0,Y.jsx)(`span`,{className:`truncate`,children:e})]})}function WG({title:e,detail:t,actionLabel:n,onAction:r}){return(0,Y.jsxs)(`div`,{className:`flex flex-1 flex-col items-center justify-center gap-3 p-8 text-center`,children:[(0,Y.jsx)(`p`,{className:`font-medium`,children:e}),(0,Y.jsx)(`p`,{className:`max-w-md text-sm text-muted-foreground`,children:t}),(0,Y.jsx)(B,{variant:`outline`,onClick:r,children:n})]})}function GG(e,t,n){return`/_screen/${e}?project=${encodeURIComponent(t)}&run=${encodeURIComponent(n)}`}async function KG(e,t,n){let r=await fetch(GG(`stream`,e,t),{signal:n}).catch(()=>void 0);return r?.ok&&r.body?r.body:void 0}function qG(e,t,n){return fetch(GG(`input`,e,t),{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(n)}).then(e=>e.ok,()=>!1)}var JG=[1e3,2e3,4e3,8e3];function YG(e){return JG[Math.min(e,JG.length-1)]}var XG=1500;function ZG(e,t,n){let[r,i]=(0,J.useState)([]),[a,o]=(0,J.useState)(!1),[s,c]=(0,J.useState)(!1),[l,u]=(0,J.useState)(``);return(0,J.useEffect)(()=>{i([]),u(``)},[n]),(0,J.useEffect)(()=>{if(i([]),o(!1),c(!1),u(``),!e)return;let n,r=!1,a=0,s=!0,l,d,f=()=>{r||(o(!0),l=setTimeout(p,YG(a++)))},p=()=>{let l=!s;s=!1,v(e,t??void 0).then(e=>{if(r){e.close();return}n=e,a=0,o(!1);let t=l?[]:void 0,s=``,p=``,m=``,h=()=>{if(r||t===void 0)return;let e=t;t=void 0,i(e)},g=!1;l?d=setTimeout(()=>{t!==void 0&&t.length===0?g=!0:h()},XG):i([]),e.listen(e=>{if(e.kind===`stream-sync`){d&&clearTimeout(d),h();return}if(e.kind===`partial`){let t=e.text===s?``:e.text,n=p;p=t,m===``&&n!==``&&t!==``&&!t.startsWith(n.slice(0,40))&&n!==s&&(m=n),m===``&&u(t);return}e.kind===`driver`&&e.event.type===`text`&&m!==``&&e.event.text.startsWith(m.slice(0,40))?(s=e.event.text,m=``,u(p.startsWith(s.slice(0,40))?``:p)):(e.kind===`driver`&&e.event.type===`text`||e.kind===`end`)&&(s=e.kind===`driver`&&e.event.type===`text`?e.event.text:``,m=``,p=``,u(``)),t?(t.push(e),g&&(g=!1,d=setTimeout(h,XG))):i(t=>[...t,e])}),e.onClose(e=>{t=void 0,d&&clearTimeout(d),e?f():r||c(!0)})},f)};return p(),()=>{r=!0,l&&clearTimeout(l),d&&clearTimeout(d),n?.close()}},[e,t]),{events:(0,J.useMemo)(()=>t?r:II(r),[r,t]),lost:a,done:s,writing:l}}var QG=15e3,$G=new Set,eK=new Set,tK,nK=!1,rK=!1,iK=0;function aK(e){if(nK!==e){nK=e;for(let e of[...eK])e()}}function oK(e){iK++;for(let t of[...$G])t(e,iK)}var sK=()=>typeof document>`u`||document.visibilityState!==`hidden`;function cK(){if(tK||typeof EventSource>`u`||$G.size===0||!sK())return;let e=new EventSource(`/_rpc/changes`);tK=e,e.onopen=()=>{aK(!0),rK&&oK(void 0),rK=!0},e.onerror=()=>aK(!1),e.onmessage=e=>{try{let t=JSON.parse(String(e.data));t.kind===`runs`&&typeof t.projectId==`string`&&oK(t.projectId)}catch{}}}function lK(){tK?.close(),tK=void 0,rK=!1,aK(!1)}typeof document<`u`&&document.addEventListener(`visibilitychange`,()=>sK()?cK():lK());function uK(e,t){let n=(n,r)=>{(n===void 0||e===void 0||n===e)&&t(r)};return $G.add(n),cK(),()=>{$G.delete(n),$G.size===0&&lK()}}function dK(){return(0,J.useSyncExternalStore)(e=>(eK.add(e),()=>eK.delete(e)),()=>nK,()=>!1)}function fK(e){return t=>uK(e,t)}function pK(e){return dK()?Math.max(e,QG):e}var mK=3e4;function hK(e,t=null,n=2e3){let{value:r,reload:i,loaded:a}=Bt(e?()=>kl(e):null,[],pK(n),[e],void 0,fK(e??void 0)),o=Ra().nameRuns!==!1,s=t===null?void 0:r.find(e=>e.id===t),c=e!==null&&t!==null&&(s===void 0||s.status===`running`&&s.branch===void 0||Ld(s,o));return(0,J.useEffect)(()=>{if(!c)return;let e=setInterval(()=>void i(),400),t=setTimeout(()=>clearInterval(e),mK);return()=>{clearInterval(e),clearTimeout(t)}},[c,t,i]),{agents:r,reload:i,loaded:a}}var gK=3e3,_K=new Map;function vK(e,t={}){let n=JSON.stringify([e,t.ids??null,t.since??null]),r=_K.get(n);if(r&&Date.now()-r.at<gK)return r.agents;let i={at:Date.now(),agents:Al(e,t)};return _K.set(n,i),i.agents.catch(()=>void(_K.get(n)===i&&_K.delete(n))),i.agents}function yK(e,t){if(typeof Notification>`u`||Notification.permission!==`granted`)return;let n=e[0];if(!n)return;let r=new Notification(t.title(n,e.length),{body:e.map(t.label).join(`
148
+ `)});r.onclick=()=>{let e=t.clickUrl(n);e?window.open(e,`_blank`,`noopener`):window.focus(),r.close()}}function bK(e,t,n){let r=(0,J.useRef)(void 0);r.current??=new sa(n.keyOf,e=>e.projectId);let i=(0,J.useRef)(void 0);(0,J.useEffect)(()=>{if(e===i.current)return;i.current=e;let a=r.current.observe(e.items,e.whole);t&&a.length>0&&yK(a,n)},[e,t])}var xK={keyOf:aa,title:(e,t)=>t===1?`Human Queue · ${e.projectName}`:`${t} items in your Human Queue`,label:e=>e.kind===`awaiting`?e.question?`${e.title} — ${e.question}`:e.title:e.kind===`uncommitted`?`${e.title} — ${e.files===1?`1 file`:`${e.files??0} files`} not committed`:e.kind===`unpushed`?e.commits===void 0||e.commits===0?`${e.title} — work not pushed`:`${e.title} — ${e.commits===1?`1 commit`:`${e.commits} commits`} not pushed`:`#${e.number} ${e.title}`,clickUrl:e=>e.kind===`pr`?e.url:void 0},SK={keyOf:oa,title:(e,t)=>t===1?`${e.kind===`started`?`Agent started`:`Agent finished`} · ${e.projectName}`:`${t} agent updates`,label:e=>`${e.kind===`started`?`Started`:`Finished`}: ${e.title??`a session`}`,clickUrl:()=>void 0};function CK(e,t){bK(e,t,xK)}function wK(e,t){bK(e,t,SK)}function TK(e,t){return`${e>0?`(${e}) `:``}${t?`${t} — `:``}OpenAgent`}function EK(e,t){(0,J.useEffect)(()=>{typeof document>`u`||(document.title=TK(e,t))},[e,t])}var DK={active:[],queueOpen:0,recent:[]};function OK(){let{value:e,stale:t}=Bt(Ll,DK,pK(5e3),[],{remember:`overview`,stored:!0},fK(void 0));return{active:e.active,stale:t}}var kK=`/logo.svg`,AK=`/logo-animated.svg`;function jK(e){return e?AK:kK}function MK(e){(0,J.useEffect)(()=>{if(typeof document>`u`)return;let t=document.querySelector(`link[rel~="icon"]`);t||(t=document.createElement(`link`),t.rel=`icon`,document.head.appendChild(t));let n=jK(e);t.getAttribute(`href`)!==n&&t.setAttribute(`href`,n)},[e])}var NK=5e3;function PK(){let[e,t]=(0,J.useState)(!0);return(0,J.useEffect)(()=>{let e=!1,n,r=()=>{if(document.visibilityState===`hidden`){n=setTimeout(r,NK);return}gu().then(()=>{e||(t(!0),n=setTimeout(r,NK))},()=>{e||(t(!1),n=setTimeout(r,NK))})};return n=setTimeout(r,NK),()=>{e=!0,n&&clearTimeout(n)}},[]),e}var FK=[],IK=[],LK={items:[],whole:[]},RK={items:[],whole:[]},zK=[],BK=700;function VK(){let e=document.activeElement;return e instanceof HTMLElement&&(e.isContentEditable||e instanceof HTMLTextAreaElement||e instanceof HTMLInputElement&&![`button`,`checkbox`,`radio`,`submit`,`reset`,`range`,`color`,`file`].includes(e.type))}function HK(){let[e,t]=(0,J.useState)(0);(0,J.useEffect)(()=>KF(()=>t(e=>e+1)),[]);let{value:n,loaded:r}=Bt(gu,IK,3e4,[e],{remember:`projects`,stored:!0}),i=Mi(e),{pages:a,loaded:o}=i,s=n.map(e=>e.id).join(`
149
+ `),c=a.map(e=>e.segment).join(`
150
+ `),l=(0,J.useMemo)(()=>ue(s?s.split(`
151
+ `):[],c?c.split(`
152
+ `):[]),[s,c]),u=r&&o,d=(0,J.useMemo)(()=>Bd(n),[n]),{route:f,go:p}=Td(l),{projectId:m,agentId:g}=f,_=m===he,v=f.page??null;(0,J.useEffect)(()=>{u&&p(f,{replace:!0,keepQuery:!0})},[u,l]);let y=f.scope&&n.some(e=>e.id===f.scope)?f.scope:null,b=y===null&&(f.scope!==void 0||v!==null)&&!u,x=(0,J.useMemo)(()=>y?n.filter(e=>e.id===y):n,[n,y]),S=(0,J.useMemo)(()=>y?a.filter(e=>e.projects.includes(y)):a,[a,y]),C=v?S.find(e=>e.segment===v):void 0,w=(e,t)=>p({...e,...y?{scope:e.scope??e.projectId??y}:{}},t),T=e=>{let{scope:t,...n}=f;if(n.projectId!==null){if(e===null)return p(n,{keepQuery:!0});if(n.projectId!==e)return p(n.agentId===null?{projectId:e,agentId:null,scope:e}:{projectId:null,agentId:null,scope:e})}let r=a.find(e=>e.segment===n.page);if(e!==null&&r&&!r.projects.includes(e))return p({projectId:null,agentId:null,scope:e});let{pagePath:i,...o}=n;p({...o,...e===null?{}:{scope:e}},{keepQuery:!i?.length})},[E,D]=(0,J.useState)({tick:0,intent:``,id:null,projectId:null,at:0}),O=u?m??y:null,{agents:k,reload:A,loaded:j}=hK(O,E.id!==null&&E.projectId===O?E.id:null,m===null?1e4:2e3),N=ph(),{context:P,add:F,remove:ee,toggle:te,reset:ne}=N;(0,J.useEffect)(()=>{ne()},[m,g]);let{value:L}=Bt(m&&!_?()=>Hl(m,g??void 0):null,FK,1e4,[m,g]),{value:R,stale:re}=Bt(zl,LK,5e3,[],{remember:`interventions`,stored:!0}),ae=m?n.find(e=>e.id===m):void 0,oe=ae?d.get(ae.id)??ae.name:null,se=y?R.items.filter(e=>e.projectId===y):R.items;EK(se.length,oe??(y?d.get(y)??null:null));let ce=m!==null&&!_&&n.length>0&&!n.some(e=>e.id===m),le=Ra();CK(re?LK:R,Wa(le)&&Ha(le));let de=Ua(le)&&Ha(le),{value:fe}=Bt(de?Bl:null,RK,15e3,[de],void 0,fK(void 0));wK(fe,de);let pe=y===null&&!b,me=pK(1e4),{value:ge,reload:_e,loaded:ve}=Bt(pe?Rl:null,zK,me,[pe],void 0,fK(void 0)),ye=E.id===null?void 0:ge.find(e=>e.agent.id===E.id&&e.projectId===E.projectId),be=pe&&E.id!==null&&Date.now()-E.at<3e4&&(ye===void 0||Ld(ye.agent,le.nameRuns!==!1));(0,J.useEffect)(()=>{if(!be)return;let e=setInterval(()=>void _e(),1e3),t=setTimeout(()=>clearInterval(e),mK);return()=>{clearInterval(e),clearTimeout(t)}},[be,_e]);let xe=(e,t,n,r,i)=>{let a=n===g&&e===m;D(o=>({tick:a?o.tick:o.tick+1,intent:t,id:n,projectId:e,at:Date.now(),...r?{runsOn:r}:{},...i?{picks:i}:{}})),ne(),w({projectId:e,agentId:n}),A(),_e(),!a&&le.nameRuns!==!1&&e!==null&&Ql(e,n).then(e=>{e!==void 0&&D(t=>t.id===n?{...t,title:e}:t)},()=>{})},Se=(e,n,r,i,a)=>{i!==void 0&&i!==m&&t(e=>e+1),xe(i??m,e,n,r,a)},Ce=e=>{w({projectId:m,agentId:e})},we=e=>{w({projectId:e,agentId:null})},Te=(e,t)=>{w({projectId:e,agentId:t})},Ee=e=>{w({projectId:e,agentId:null}),ne()},De=()=>{w({projectId:null,agentId:null})},Oe=(e=``)=>{p({...f,settings:e},{keepQuery:!0})},ke=e=>{let{settingsItem:t,...n}=f;p({...n,settings:e},{keepQuery:!0,replace:!0})},z=()=>{let{settings:e,settingsItem:t,...n}=f;p(n,{keepQuery:!0})},Ae=e=>{w({projectId:null,agentId:null,page:e})},B=lr({openAgent:Te,openPage:(e,t,n)=>w({projectId:null,agentId:null,page:e,...t&&t.length?{pagePath:t}:{},...n?{scope:n}:{}}),pageHref:e=>_d({projectId:null,agentId:null,page:e,...y?{scope:y}:{}},l),openSettings:e=>Oe(e),gitHostPeople:Nu,startRun:async(e,t,n)=>{let r=await lu(e,t,ah(le));return r.ok&&(n?.land??!0?xe(e,t,r.agentId):A()),r},configureRun:(e,t)=>{Jt(t),we(e)},agents:(e,t)=>vK(e,t),machines:async()=>{let e=await hn(),t=ih(e.name);return{...e,...t===void 0?{}:{name:t}}},addMachine:async(e,t)=>{let n=await ad(e,t);return n.ok?{ok:!0}:n},removeMachine:ud,renameMachine:async(e,t)=>{let n=await od(e,t);return n.ok?{ok:!0}:n},renameComputer:async e=>{let t=await sd(e);return t.ok?{ok:!0}:t},letMachineIn:M,machineCode:or,computersThrough:hr,machinePerson:ui,removeMachineDevice:ie,machineAccounts:async(e,t)=>{let n=await Hn(e,t);return n&&n.accounts.map((e,t)=>({id:e.id,name:e.name,own:e.own,...e.from===void 0?{}:{from:e.from},first:e.state===`in-use`||t===0&&n.accounts.length===1}))},removeMachineAccount:h,useLoginsOn:fc,addComputerThrough:async(e,t)=>{let n=await cd(e,t);return n.ok?{ok:!0}:n},watchScreen:KG,sendToScreen:qG}),{events:je,lost:Me,writing:Ne}=ZG(m,g,E.tick),Pe=je.filter(e=>e.kind===`end`).length;(0,J.useEffect)(()=>{Pe>0&&A()},[Pe]);let Fe=OK(),Ie=Fe.active.length>0;MK(Ie);let Le=PK(),Re=g?k.find(e=>e.id===g)??(j?void 0:ge.find(e=>e.projectId===m&&e.agent.id===g)?.agent):void 0,ze=(0,J.useMemo)(()=>g?Zd(k,g):[],[k,g]),Be=()=>{t(e=>e+1),p({projectId:null,agentId:null})},Ve=ae?.machine===void 0?Be:void 0,He=()=>{if(v===`permissions`)return(0,Y.jsx)(sl,{});if(v===`agents`)return(0,Y.jsx)(Cl,{});if(v)return C?(0,Y.jsx)(al,{page:C,projects:x,projectId:y,path:f.pagePath??[]}):u?(0,Y.jsx)(WG,{title:`No such page`,detail:y!==null&&a.some(e=>e.segment===v)?`The project "${n.find(e=>e.id===y)?.name??y}" has no package that adds a page at "${v}".`:f.scope===void 0?`No project has the address "/${v}", and no installed package adds a page there.`:`No installed package adds a page at "${v}".`,actionLabel:`Go to the Overview`,onAction:De}):null;if(!m)return b?null:(0,Y.jsx)(ZV,{onSelectProject:we,onSelectAgent:Te,onAgentStarted:xe,interventions:se,interventionsStale:re,active:Fe,projects:n,scope:y,onProjectAdded:()=>t(e=>e+1)});if(ce)return(0,Y.jsx)(WG,{title:`No such project`,detail:`No project is registered as "${m}". It may have been removed, or the link may be from another machine.`,actionLabel:`Go to the Overview`,onAction:De});if(g===null)return(0,Y.jsx)(HB,{projectId:m,projectName:oe,home:ae?.machine,waiting:se,events:je,onAgentStarted:Se,files:L,context:P,addContext:F,removeContext:ee,toggleContext:te,onOpenAgent:Te,errors:ae?.errors,onProjectRemoved:Be,onSkillsChanged:()=>t(e=>e+1),projects:n,onPickProject:Ee,onProjectAdded:()=>t(e=>e+1)});let e=g===E.id?E.title:void 0;return Re?(0,Y.jsx)(MG,{projectId:m,agentId:g,events:je,live:Re.status===`running`,card:Re,label:Re.parent===void 0?Ld(Re,le.nameRuns!==!1)?e:Id(Re):Qd(Re),naming:Re.parent===void 0&&Ld(Re,le.nameRuns!==!1)&&e===void 0,projectName:oe,files:L,lost:Me&&Le,writing:Ne,startedWith:g===E.id?E.intent:void 0,picks:g===E.id?E.picks:void 0,target:Re.target,remoteLabel:Re.remoteLabel,subagents:ze,onAgentStarted:Se,contextSet:N,onDeleted:()=>{Ce(null),A()},onProjectRemoved:Ve}):g===E.id||!j?(0,Y.jsx)(MG,{projectId:m,agentId:g,events:je,live:g===E.id||null,picks:g===E.id?E.picks:void 0,label:le.nameRuns===!1?E.intent||void 0:e,naming:g===E.id&&le.nameRuns!==!1&&e===void 0,projectName:oe,remoteLabel:g===E.id?E.runsOn:void 0,files:L,lost:Me&&Le,writing:Ne,startedWith:g===E.id?E.intent:void 0,onAgentStarted:Se,contextSet:N,onProjectRemoved:Ve}):(0,Y.jsx)(WG,{title:`This agent is gone`,detail:`There is no record of this agent. Once its checkout is removed, a finished agent is kept only when the project has a logs skill installed.`,actionLabel:`Back to the project`,onAction:()=>Ce(null)})},Ue=sr(),We=Rm(),Ge=Um(),Ke=v?C?.label??``:m===null?`Overview`:null,qe=Ke!==null;return(0,J.useEffect)(()=>{if(qe)return;document.documentElement.dataset.pinned=`true`;let e=window.visualViewport,t=document.documentElement,n=()=>{if(e){if(!VK()){t.style.removeProperty(`--shown-height`),t.style.removeProperty(`--shown-top`),(window.scrollY!==0||e.offsetTop!==0)&&window.scrollTo(0,0);return}t.style.setProperty(`--shown-height`,`${e.height}px`),t.style.setProperty(`--shown-top`,`${e.offsetTop}px`)}},r=0,i=0,a=()=>{n(),r=performance.now()<i?requestAnimationFrame(a):0},o=()=>{i=performance.now()+BK,n(),r===0&&(r=requestAnimationFrame(a))};return n(),e?.addEventListener(`resize`,o),e?.addEventListener(`scroll`,o),document.addEventListener(`focusin`,o),document.addEventListener(`focusout`,o),()=>{delete t.dataset.pinned,t.style.removeProperty(`--shown-height`),t.style.removeProperty(`--shown-top`),cancelAnimationFrame(r),e?.removeEventListener(`resize`,o),e?.removeEventListener(`scroll`,o),document.removeEventListener(`focusin`,o),document.removeEventListener(`focusout`,o)}},[qe]),(0,Y.jsx)(ft.Provider,{value:i,children:(0,Y.jsx)(Gr.Provider,{value:B,children:(0,Y.jsx)(Aa.Provider,{value:m,children:(0,Y.jsx)(Ud.Provider,{value:d,children:(0,Y.jsxs)(I,{open:!Ge,onOpenChange:e=>Hm(!e),className:qe?`min-h-dvh flex-col`:`fixed inset-x-0 top-(--shown-top,0px) h-(--shown-height,100dvh) min-h-0 flex-col overflow-hidden`,style:{"--sidebar-width":`${We}px`,...Le?{}:{"--top-banner":`2.25rem`}},children:[!Le&&(0,Y.jsx)(`div`,{role:`alert`,className:q(`h-(--top-banner) shrink-0 bg-background`,qe&&`sticky top-0 z-30`),children:(0,Y.jsxs)(`div`,{className:`flex h-full items-center gap-2 border-b border-border bg-warning/10 px-4 text-xs text-warning`,children:[(0,Y.jsx)(ls,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),`The daemon is not answering — retrying. Everything on this page is frozen until it returns.`]})}),(0,Y.jsxs)(`div`,{className:q(`relative flex min-h-0 flex-1`,qe?`overflow-x-clip`:`overflow-hidden`),children:[(0,Y.jsx)(Ym,{pageScrolls:qe,projectId:m,scope:y,scopePending:b,listLoaded:y===null?ve:j,onScope:T,homeHref:_d({projectId:null,agentId:null,...y?{scope:y}:{}},l),agents:k,selectedAgentId:g,onSelect:e=>w({projectId:y??m,agentId:e}),recentAgents:ge,onSelectRecent:Te,projects:n,onNewAgentInProject:Ee,onProjectAdded:()=>{t(e=>e+1),A()},startTick:E.tick,startIntent:E.intent,startTitle:E.title,startId:E.id,startProjectName:E.projectId===null?void 0:d.get(E.projectId),working:Ie,onDashboard:De,onSettings:Oe,pages:S,activePage:v,onPage:Ae,interventionCount:se.length}),Ue&&!qe&&(0,Y.jsx)(HG,{}),(0,Y.jsx)(DB,{projectId:m,agentId:g,enabled:!v&&!_,files:L,context:P,toggleContext:te,activity:je.length,subagent:m&&g?(0,Y.jsx)(IG,{projectId:m,agentId:g,events:je,subagents:ze,live:Re?.status===`running`,onOpenAgent:Ce}):void 0,children:(0,Y.jsx)(PB,{children:(0,Y.jsxs)(`main`,{className:`flex min-h-0 min-w-0 flex-1 flex-col`,children:[Ue&&Ke!==null&&(0,Y.jsx)(UG,{title:Ke}),He()]})})})]}),i.everyPage.map(({EveryPage:e,package:t})=>(0,Y.jsx)(rl,{package:t,label:`${t} popup`,children:(0,Y.jsx)(e,{})},t)),f.settings!==void 0&&(0,Y.jsx)(cH,{entry:f.settings,openItem:f.settingsItem,onEntry:ke,onClose:z,scope:y,projects:n})]})})})})})}var UK=document.getElementById(`root`);if(!UK)throw Error(`no #root in index.html`);var WK=(0,Ii.createRoot)(UK);(0,Fi.flushSync)(()=>WK.render((0,Y.jsx)(eo,{children:(0,Y.jsx)(HK,{})})));