@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.
- package/README.md +19 -1
- package/dist/built-in.d.ts +9 -0
- package/dist/built-in.d.ts.map +1 -1
- package/dist/built-in.js +19 -1
- package/dist/built-in.js.map +1 -1
- package/dist/cli/skills.d.ts +7 -9
- package/dist/cli/skills.d.ts.map +1 -1
- package/dist/cli/skills.js +25 -22
- package/dist/cli/skills.js.map +1 -1
- package/dist/client.d.ts +3 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +3 -0
- package/dist/client.js.map +1 -1
- package/dist/clone-project.d.ts +10 -8
- package/dist/clone-project.d.ts.map +1 -1
- package/dist/clone-project.js +36 -47
- package/dist/clone-project.js.map +1 -1
- package/dist/cloud-scratch-refs.d.ts +9 -1
- package/dist/cloud-scratch-refs.d.ts.map +1 -1
- package/dist/cloud-scratch-refs.js +9 -2
- package/dist/cloud-scratch-refs.js.map +1 -1
- package/dist/daemon-runtime.d.ts.map +1 -1
- package/dist/daemon-runtime.js +37 -5
- package/dist/daemon-runtime.js.map +1 -1
- package/dist/daemon-services.d.ts.map +1 -1
- package/dist/daemon-services.js +4 -2
- package/dist/daemon-services.js.map +1 -1
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +7 -0
- package/dist/daemon.js.map +1 -1
- package/dist/dashboard/copy-logins.d.ts +1 -1
- package/dist/dashboard/copy-logins.d.ts.map +1 -1
- package/dist/dashboard/copy-logins.js +9 -6
- package/dist/dashboard/copy-logins.js.map +1 -1
- package/dist/dashboard/git-hosts.d.ts +3 -3
- package/dist/dashboard/git-hosts.d.ts.map +1 -1
- package/dist/dashboard/git-hosts.js +3 -2
- package/dist/dashboard/git-hosts.js.map +1 -1
- package/dist/dashboard/index.d.ts +1 -1
- package/dist/dashboard/index.d.ts.map +1 -1
- package/dist/dashboard/logins-sync.d.ts +25 -1
- package/dist/dashboard/logins-sync.d.ts.map +1 -1
- package/dist/dashboard/logins-sync.js +78 -15
- package/dist/dashboard/logins-sync.js.map +1 -1
- package/dist/dashboard/overview.d.ts +4 -2
- package/dist/dashboard/overview.d.ts.map +1 -1
- package/dist/dashboard/overview.js +7 -3
- package/dist/dashboard/overview.js.map +1 -1
- package/dist/dashboard/person.d.ts +13 -12
- package/dist/dashboard/person.d.ts.map +1 -1
- package/dist/dashboard/person.js +7 -21
- package/dist/dashboard/person.js.map +1 -1
- package/dist/dashboard/projects.d.ts.map +1 -1
- package/dist/dashboard/projects.js +5 -1
- package/dist/dashboard/projects.js.map +1 -1
- package/dist/dashboard/repos.d.ts +75 -0
- package/dist/dashboard/repos.d.ts.map +1 -0
- package/dist/dashboard/repos.js +142 -0
- package/dist/dashboard/repos.js.map +1 -0
- package/dist/dashboard/send-skills.d.ts +12 -1
- package/dist/dashboard/send-skills.d.ts.map +1 -1
- package/dist/dashboard/send-skills.js +11 -3
- package/dist/dashboard/send-skills.js.map +1 -1
- package/dist/dashboard/start-branch.d.ts.map +1 -1
- package/dist/dashboard/start-branch.js +5 -3
- package/dist/dashboard/start-branch.js.map +1 -1
- package/dist/dashboard/types.d.ts +26 -15
- package/dist/dashboard/types.d.ts.map +1 -1
- package/dist/dashboard-bundle/assets/host/module-Jq6JDNSB.js +1 -0
- package/dist/dashboard-bundle/assets/main-BIyFp6td.js +152 -0
- package/dist/dashboard-bundle/assets/main-C_ohUWaY.css +2 -0
- package/dist/dashboard-bundle/assets/module-Cqcyno9w.js +19 -0
- package/dist/dashboard-bundle/index.html +19 -4
- package/dist/dashboard-rpc/agents.d.ts +64 -0
- package/dist/dashboard-rpc/agents.d.ts.map +1 -0
- package/dist/dashboard-rpc/agents.js +137 -0
- package/dist/dashboard-rpc/agents.js.map +1 -0
- package/dist/dashboard-rpc/backup.d.ts +36 -0
- package/dist/dashboard-rpc/backup.d.ts.map +1 -0
- package/dist/dashboard-rpc/backup.js +62 -0
- package/dist/dashboard-rpc/backup.js.map +1 -0
- package/dist/dashboard-rpc/copied-logins.d.ts +1 -1
- package/dist/dashboard-rpc/copied-logins.d.ts.map +1 -1
- package/dist/dashboard-rpc/copied-logins.js +7 -7
- package/dist/dashboard-rpc/copied-logins.js.map +1 -1
- package/dist/dashboard-rpc/hosted-repos.d.ts +42 -0
- package/dist/dashboard-rpc/hosted-repos.d.ts.map +1 -0
- package/dist/dashboard-rpc/hosted-repos.js +74 -0
- package/dist/dashboard-rpc/hosted-repos.js.map +1 -0
- package/dist/dashboard-rpc/index.d.ts +3 -2
- package/dist/dashboard-rpc/index.d.ts.map +1 -1
- package/dist/dashboard-rpc/index.js +6 -3
- package/dist/dashboard-rpc/index.js.map +1 -1
- package/dist/dashboard-rpc/logins.d.ts +3 -33
- package/dist/dashboard-rpc/logins.d.ts.map +1 -1
- package/dist/dashboard-rpc/logins.js +8 -51
- package/dist/dashboard-rpc/logins.js.map +1 -1
- package/dist/dashboard-rpc/modules.d.ts +4 -3
- package/dist/dashboard-rpc/modules.d.ts.map +1 -1
- package/dist/dashboard-rpc/modules.js +6 -5
- package/dist/dashboard-rpc/modules.js.map +1 -1
- package/dist/dashboard-rpc/person.d.ts +34 -1
- package/dist/dashboard-rpc/person.d.ts.map +1 -1
- package/dist/dashboard-rpc/person.js +49 -8
- package/dist/dashboard-rpc/person.js.map +1 -1
- package/dist/dashboard-rpc/personal-folder.d.ts +19 -2
- package/dist/dashboard-rpc/personal-folder.d.ts.map +1 -1
- package/dist/dashboard-rpc/personal-folder.js +24 -6
- package/dist/dashboard-rpc/personal-folder.js.map +1 -1
- package/dist/dashboard-rpc/project-agent-data.d.ts +12 -0
- package/dist/dashboard-rpc/project-agent-data.d.ts.map +1 -1
- package/dist/dashboard-rpc/project-agent-data.js +17 -2
- package/dist/dashboard-rpc/project-agent-data.js.map +1 -1
- package/dist/dashboard-rpc/projects.d.ts +63 -10
- package/dist/dashboard-rpc/projects.d.ts.map +1 -1
- package/dist/dashboard-rpc/projects.js +103 -23
- package/dist/dashboard-rpc/projects.js.map +1 -1
- package/dist/dashboard-rpc/reads.d.ts +1 -1
- package/dist/dashboard-rpc/reads.d.ts.map +1 -1
- package/dist/dashboard-rpc/reads.js +6 -2
- package/dist/dashboard-rpc/reads.js.map +1 -1
- package/dist/dashboard-rpc/runs-changed.d.ts.map +1 -1
- package/dist/dashboard-rpc/runs-changed.js +9 -3
- package/dist/dashboard-rpc/runs-changed.js.map +1 -1
- package/dist/dashboard-rpc/send-as.d.ts +42 -0
- package/dist/dashboard-rpc/send-as.d.ts.map +1 -0
- package/dist/dashboard-rpc/send-as.js +78 -0
- package/dist/dashboard-rpc/send-as.js.map +1 -0
- package/dist/dashboard-rpc/skills.d.ts +2 -1
- package/dist/dashboard-rpc/skills.d.ts.map +1 -1
- package/dist/dashboard-rpc/skills.js +6 -4
- package/dist/dashboard-rpc/skills.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/module-types/dashboard/components/ui/confirm-dialog.d.ts +5 -1
- package/dist/module-types/dashboard/components/ui/popup-placement.d.ts +5 -0
- package/dist/module-types/dashboard/components/ui/row-item.d.ts +1 -2
- package/dist/module-types/dashboard/lib/route.d.ts +3 -3
- package/dist/module-types/dashboard/module/index.d.ts +18 -3
- package/dist/module-types/src/built-in.d.ts +9 -0
- package/dist/module-types/src/client.d.ts +3 -0
- package/dist/module-types/src/clone-project.d.ts +10 -8
- package/dist/module-types/src/dashboard/git-hosts.d.ts +3 -3
- package/dist/module-types/src/dashboard/logins-sync.d.ts +25 -1
- package/dist/module-types/src/dashboard/overview.d.ts +4 -2
- package/dist/module-types/src/dashboard/person.d.ts +13 -12
- package/dist/module-types/src/dashboard/repos.d.ts +74 -0
- package/dist/module-types/src/dashboard/send-skills.d.ts +12 -1
- package/dist/module-types/src/dashboard/types.d.ts +26 -15
- package/dist/module-types/src/dashboard-rpc/agents.d.ts +63 -0
- package/dist/module-types/src/dashboard-rpc/backup.d.ts +35 -0
- package/dist/module-types/src/dashboard-rpc/copied-logins.d.ts +1 -1
- package/dist/module-types/src/dashboard-rpc/hosted-repos.d.ts +41 -0
- package/dist/module-types/src/dashboard-rpc/index.d.ts +3 -2
- package/dist/module-types/src/dashboard-rpc/logins.d.ts +3 -33
- package/dist/module-types/src/dashboard-rpc/modules.d.ts +4 -3
- package/dist/module-types/src/dashboard-rpc/person.d.ts +34 -1
- package/dist/module-types/src/dashboard-rpc/personal-folder.d.ts +19 -2
- package/dist/module-types/src/dashboard-rpc/project-agent-data.d.ts +12 -0
- package/dist/module-types/src/dashboard-rpc/projects.d.ts +63 -10
- package/dist/module-types/src/dashboard-rpc/reads.d.ts +1 -1
- package/dist/module-types/src/dashboard-rpc/send-as.d.ts +41 -0
- package/dist/module-types/src/dashboard-rpc/skills.d.ts +2 -1
- package/dist/module-types/src/index.d.ts +1 -1
- package/dist/module-types/src/project-address.d.ts +8 -1
- package/dist/module-types/src/project-hooks.d.ts +12 -2
- package/dist/module-types/src/project-modules.d.ts +6 -0
- package/dist/module-types/src/project-skills/catalogue.d.ts +6 -9
- package/dist/module-types/src/registry.d.ts +13 -0
- package/dist/module-types/src/store/agent-store.d.ts +14 -0
- package/dist/module-types/src/store/branches.d.ts +7 -0
- package/dist/module-types/src/store/git-host.d.ts +1 -3
- package/dist/module-types/src/typed-repository.d.ts +16 -0
- package/dist/project-address.d.ts +8 -1
- package/dist/project-address.d.ts.map +1 -1
- package/dist/project-address.js +11 -4
- package/dist/project-address.js.map +1 -1
- package/dist/project-hooks.d.ts +12 -2
- package/dist/project-hooks.d.ts.map +1 -1
- package/dist/project-hooks.js +9 -2
- package/dist/project-hooks.js.map +1 -1
- package/dist/project-modules.d.ts +6 -0
- package/dist/project-modules.d.ts.map +1 -1
- package/dist/project-modules.js +13 -1
- package/dist/project-modules.js.map +1 -1
- package/dist/project-skills/catalogue.d.ts +6 -9
- package/dist/project-skills/catalogue.d.ts.map +1 -1
- package/dist/project-skills/catalogue.js +9 -8
- package/dist/project-skills/catalogue.js.map +1 -1
- package/dist/registry.d.ts +13 -0
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +43 -2
- package/dist/registry.js.map +1 -1
- package/dist/sessions-home.d.ts +11 -0
- package/dist/sessions-home.d.ts.map +1 -0
- package/dist/sessions-home.js +41 -0
- package/dist/sessions-home.js.map +1 -0
- package/dist/store/agent-store.d.ts +14 -0
- package/dist/store/agent-store.d.ts.map +1 -1
- package/dist/store/agent-store.js.map +1 -1
- package/dist/store/branches.d.ts +7 -0
- package/dist/store/branches.d.ts.map +1 -1
- package/dist/store/branches.js +37 -2
- package/dist/store/branches.js.map +1 -1
- package/dist/store/git-host.d.ts +1 -3
- package/dist/store/git-host.d.ts.map +1 -1
- package/dist/store/git-host.js +0 -14
- package/dist/store/git-host.js.map +1 -1
- package/dist/typed-repository.d.ts +17 -0
- package/dist/typed-repository.d.ts.map +1 -0
- package/dist/typed-repository.js +29 -0
- package/dist/typed-repository.js.map +1 -0
- package/dist/website/assets/entries/{entry-client-routing.C33s8xOY.js → entry-client-routing.CvPemUV2.js} +2 -2
- package/dist/website/assets/entries/{pages_go-to-dashboard.C3OBfFYB.js → pages_go-to-dashboard.CUCqKDCh.js} +1 -1
- package/dist/website/banner/index.html +1 -1
- package/dist/website/go-to-dashboard/index.html +3 -3
- package/dist/website/index.html +1 -1
- package/dist/website/press/index.html +1 -1
- package/package.json +21 -21
- package/dist/dashboard-bundle/assets/host/module-BMyNrbiB.js +0 -1
- package/dist/dashboard-bundle/assets/main-BK8YIg7v.js +0 -152
- package/dist/dashboard-bundle/assets/main-mnNPGbsz.css +0 -2
- package/dist/dashboard-bundle/assets/module-DY3Aigsz.js +0 -19
|
@@ -1,152 +0,0 @@
|
|
|
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{$ as o,$a as s,$i as c,$n as l,$r as u,$t as d,A as f,Aa as p,Ai as m,An as h,Ar as g,At as _,Ba as v,Bi as y,Bn as b,Br as x,Bt as S,C,Ca as w,Ci as T,Cn as E,Cr as D,Ct as O,D as k,Da as A,Di as j,Dn as M,Dr as N,Dt as P,E as F,Ea as ee,Ei as te,En as I,Er as L,Fa as R,Fi as ne,Fn as re,G as ie,Ga as ae,Gi as z,Gn as oe,Gr as B,Gt as se,H as ce,Ha as le,Hi as ue,Hn as de,Hr as fe,Ht as pe,Ia as me,Ii as he,In as ge,Ir as _e,It as ve,J as ye,Ja as be,Ji as xe,Jn as Se,Jr as Ce,Jt as we,K as Te,Ka as Ee,Ki as De,Kn as Oe,Kr as ke,Kt as Ae,La as V,Li as je,Ln as Me,Lr as Ne,Lt as Pe,Ma as Fe,Mi as Ie,Mn as Le,Mr as Re,Mt as ze,Na as Be,Ni as Ve,Nn as He,Nr as Ue,Nt as We,Oa as Ge,Oi as Ke,On as qe,Or as Je,Ot as Ye,Pa as Xe,Pi as Ze,Pn as Qe,Pr as $e,Pt as et,Q as tt,Qa as nt,Qi as rt,Qn as it,Qr as at,Qt as ot,Ra as st,Ri as ct,Rn as lt,Rr as ut,Rt as dt,S as ft,Sa as pt,Si as H,Sn as mt,Sr as ht,St as gt,T as _t,Ta as vt,Ti as yt,Tn as bt,Tr as xt,Tt as St,Ua as Ct,Ui as wt,Un as Tt,Ur as Et,Ut as Dt,Va as U,Vi as Ot,Vn as kt,Vr as At,Vt as jt,Wa as Mt,Wi as Nt,Wn as W,Wr as Pt,Wt 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 G,Yt as Kt,Z as qt,Za as Jt,Zi as Yt,Zn as Xt,Zr as Zt,Zt as Qt,_ as $t,_i as en,_n as tn,_r as nn,_t as rn,aa as an,ai as on,an as sn,ar as cn,at as ln,b as un,ba as dn,bi as fn,bn as pn,br as mn,bt as hn,ca as gn,ci as _n,cn as vn,cr as yn,d as bn,di as xn,dn 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,gn as K,gr as Ln,gt as Rn,h as zn,ha as Bn,hi as Vn,hn as Hn,hr as Un,ht as Wn,i as Gn,ia as Kn,ii as qn,in as Jn,ir as Yn,it as Xn,ja as Zn,ji as Qn,jn as $n,jr as er,jt as tr,ka as nr,ki as rr,kn as ir,kr as ar,kt as or,la as sr,li as cr,ln as lr,lr as ur,lt as dr,m as fr,ma as pr,mi as mr,mn as hr,mr as gr,mt as _r,na as vr,ni as yr,nn as br,no as xr,nr as Sr,oa as Cr,oi as wr,on as Tr,or as Er,ot as Dr,pa as Or,pi as kr,pn as Ar,pr as jr,pt as Mr,q as Nr,qi as Pr,qn as Fr,qr as Ir,qt 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,ua as ni,ui as ri,ur as ii,ut as ai,va as oi,vi as si,vn as ci,vr as li,vt as ui,w as di,wa as fi,wi as pi,wn as mi,wr as hi,wt as gi,x as _i,xa as vi,xi as yi,xn as bi,xr as xi,xt as Si,ya as Ci,yi as wi,yn as Ti,yr as Ei,yt as Di,za as q,zi as Oi,zn as ki,zr as Ai,zt as ji}from"./module-DY3Aigsz.js";import{t as Mi}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 Ni=t(i(),1),Pi=t(a(),1);function Fi(e){return Array.isArray(e)?[...e]:e?[e]:[]}function Ii(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 ${Fi(e.picked).join(`, `)||`(none)`} (${e.by})`;case`driver`:return Li(e.event);case`intent`:return`▶ "${zi(e.text)}"`;case`title`:return`Named the session: ${zi(e.text)}`;case`end`:return e.ok?`✓ finished`:e.stopped?`■ stopped`:e.waiting?`? waiting for an answer`:`✗ failed: ${e.detail??`unknown error`}`}}function Li(e){switch(e.type){case`start`:return` › prompt: ${zi(e.prompt,140)}`;case`steered`:return` › message: ${zi(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` ${zi(e.text)}`;case`action`:return e.detail===void 0?` · ${e.label}`:` · ${e.label} ${zi(e.detail,140)}`;case`output`:return` ${e.failed?`✗`:`→`} ${zi(e.text,140)}`;case`subagent`:return` ${e.status===`ended`?`✓`:e.status===`failed`?`✗`:`·`} subagent ${zi(e.name??e.role??e.id,60)}`;case`thought`:return` 💭 ${zi(e.text,140)}`;case`result`:return` ‹ turn complete`;case`rate-limit`:return` ${Ri(e.limit)}`;case`error`:return` ! agent error: ${e.message}`;case`notice`:return` ~ ${e.message}`;case`question`:return` ? ${zi(e.question.title,140)}`}}function Ri(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 zi(e,t=100){let n=e.replace(/\s+/g,` `).trim();return n.length>t?n.slice(0,t-1)+`…`:n}var Bi=[`openagent`,`neutral`],Vi={openagent:`OpenAgent`,neutral:`Neutral`},Hi={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`]},Ui={openagent:`Blue`,neutral:`The colours’ own`};function Wi(e,t){return Hi[e??`openagent`].includes(t)?t:void 0}var Gi={"ibm-plex-sans":`IBM Plex Sans`,figtree:`Figtree`,inter:`Inter`,geist:`Geist`,"plus-jakarta-sans":`Plus Jakarta Sans`,manrope:`Manrope`},Ki={"jetbrains-mono":`JetBrains Mono`,"geist-mono":`Geist Mono`,"ibm-plex-mono":`IBM Plex Mono`,"fira-code":`Fira Code`,"source-code-pro":`Source Code Pro`},qi={"source-serif-4":`Source Serif 4`,newsreader:`Newsreader`,literata:`Literata`,app:`The page’s font`};function Ji(e){return e.title?.trim()||e.intent?.trim()||e.branch?.trim()||void 0}function Yi(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 Xi=[`B`,`KB`,`MB`,`GB`,`TB`];function Zi(e,t=`–`){if(typeof e!=`number`||!Number.isFinite(e)||e<0)return t;let n=e,r=0;for(;n>=1024&&r<Xi.length-1;)n/=1024,r++;return`${n<10&&r>0?Math.round(n*10)/10:Math.round(n)} ${Xi[r]}`}var Qi=`refs/remotes/origin/`;function $i(e){return`${Qi}${e}`}function ea(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 ta(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 na(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 ra(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 ia(e){return`${e.kind}:${e.projectId}:${e.agentId}`}var aa=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 oa(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 sa(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 ca=[`1/4`,`1/3`,`1/2`,`2/3`,`3/4`,`1`],la=e=>ca.indexOf(e);function ua(e){return ca.filter(t=>la(t)>=la(e.minWidth))}function da(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&&la(e.width)>=la(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),fa=U(`onPreferences`);U(`savePreferences`);var pa=U(`patchPreferences`),ma=U(`onProjectPresets`),ha=U(`saveProjectPresets`),ga=U(`onEditors`),_a={},va=null,ya=null,ba=new Map,xa=new Set,Sa=[],Ca=0,wa=0,Ta=new Set;function Ea(){for(let e of Ta)e()}function Da(e){return Ta.add(e),()=>Ta.delete(e)}var Oa=(0,J.createContext)(null);function ka(){!va&&!ya&&(ya=fa().then(e=>{va??=e}).catch(()=>{va??={}}).finally(()=>{ya=null,Ea()}))}typeof window<`u`&&(window.addEventListener(`focus`,Pa),document.addEventListener(`visibilitychange`,()=>{document.visibilityState===`visible`&&Pa()}));function Aa(e){!e||ba.has(e)||xa.has(e)||(xa.add(e),ma(e).then(t=>{ba.has(e)||ba.set(e,t)}).catch(()=>{ba.has(e)||ba.set(e,[])}).finally(()=>{xa.delete(e),Ea()}))}function ja(){let e=(0,J.useContext)(Oa),t=(0,J.useSyncExternalStore)(Da,()=>e?ba.get(e)??Sa:Sa,()=>Sa);return(0,J.useEffect)(()=>Aa(e),[e]),t}function Ma(e,t){e&&(ba.set(e,t),ha(e,t).catch(()=>{}),Ea())}function Na(e){va={...va??{},...e};let t=++Ca;wa++,pa(e).then(e=>{e.ok&&t===Ca&&(va=e.preferences,Ea())}).catch(()=>{}).finally(()=>wa--),Ea()}function Pa(){let e=Ca;fa().then(t=>{e!==Ca||wa>0||(va=t,Ea())}).catch(()=>{})}function Fa(){return(0,J.useContext)(Oa)}function Ia(){let e=(0,J.useSyncExternalStore)(Da,()=>va??_a,()=>_a);return(0,J.useEffect)(()=>ka(),[]),e}function La(){return(0,J.useSyncExternalStore)(Da,()=>va!==null,()=>!1)}function Ra(e){return e.theme??`system`}function za(e,t){return e===`dark`||e===`system`&&t}function Ba(e){return be(e)}function Va(e){return Ut(e,`newActivity`)}function Ha(e){return Ut(e,`humanIntervention`)}var Ua={app:`ui-sans-serif, system-ui, sans-serif`,code:`ui-monospace, SFMono-Regular, Menlo, monospace`,document:`ui-serif, Georgia, serif`},Wa=new Set([`IBM Plex Sans`,`JetBrains Mono`,`Source Serif 4`]),Ga=`picked-fonts`;function Ka(e){return`https://fonts.googleapis.com/css2?${e.map(e=>`family=${e.replace(/ /g,`+`)}:wght@400;500;600;700`).join(`&`)}&display=swap`}function qa(e,t){t.palette&&t.palette!==`openagent`?e.dataset.palette=t.palette:delete e.dataset.palette;let n=Wi(t.palette,t.accent);n?e.dataset.accent=n:delete e.dataset.accent;let r=t.font?Gi[t.font]:void 0,i=t.codeFont?Ki[t.codeFont]:void 0,a=t.documentFont&&t.documentFont!==`app`?qi[t.documentFont]:void 0;Ja(e,`--font-app`,r,Ua.app),Ja(e,`--font-code`,i,Ua.code),t.documentFont===`app`?e.style.setProperty(`--font-document`,`var(--font-app)`):Ja(e,`--font-document`,a,Ua.document);let o=[r,i,a].filter(e=>e!==void 0&&!Wa.has(e)),s=e.ownerDocument,c=s.getElementById(Ga);if(o.length===0){c?.remove();return}c||(c=s.createElement(`link`),c.id=Ga,c.rel=`stylesheet`,s.head.appendChild(c));let l=Ka(o);c.href!==l&&(c.href=l)}function Ja(e,t,n,r){n?e.style.setProperty(t,`'${n}', ${r}`):e.style.removeProperty(t)}var Y=t(Mi(),1),Ya=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)(V,{variant:`outline`,onClick:this.reset,children:`Try again`}),(0,Y.jsx)(V,{onClick:()=>window.location.reload(),children:`Reload`})]})]}):this.props.children}};function Xa({children:e}){let t=Ia(),n=Ra(t),{palette:r,accent:i,font:a,codeFont:o,documentFont:s}=t;return(0,J.useEffect)(()=>{qa(document.documentElement,{palette:r,accent:i,font:a,codeFont:o,documentFont:s})},[r,i,a,o,s]),(0,J.useEffect)(()=>{let e=document.documentElement,t=window.matchMedia(`(prefers-color-scheme: dark)`),r=()=>e.classList.toggle(`dark`,za(n,t.matches));if(r(),n===`system`)return t.addEventListener(`change`,r),()=>t.removeEventListener(`change`,r)},[n]),(0,Y.jsx)(`div`,{className:`min-h-screen bg-background text-foreground`,children:(0,Y.jsx)(T,{children:(0,Y.jsx)(Ya,{children:e})})})}var Za=U(`onAgents`),Qa=U(`onModuleAgents`),$a=U(`onRetainedWorktrees`),eo=U(`onAgentWorktree`),to=U(`onAgentMainBranch`),no=U(`onAgent`),ro=U(`onAgentsDoing`),io=U(`onDocs`);U(`onQueue`);var ao=U(`onOverview`),oo=U(`onRecentAgents`),so=U(`onInterventions`),co=U(`onActivity`),lo=U(`onDashboard`),uo=U(`onProjectFiles`),fo=U(`onGitHostHome`),po=U(`onRepositoryOffer`),mo=U(`onAgentHandoff`),ho=U(`onBridgeQuestion`),go=U(`onBridgeStatus`),_o=U(`onBridgeToken`),vo=U(`onBridgeAnswer`),yo=U(`onBridgeEvents`),bo=U(`onBridgeBrowser`),xo=U(`onStartedName`),So=U(`sendStop`),Co=U(`sendChoice`),wo=U(`sendBridgeAnswer`),To=U(`sendBridgeAnswerCancel`),Eo=U(`sendBridgeBrowser`),Do=U(`sendMessage`),Oo=U(`withdrawMessage`),ko=U(`sendNow`),Ao=U(`sendRemoveWorktree`),jo=U(`sendDeleteAgent`),Mo=U(`sendStart`),No=U(`sendOpenInApp`),Po=U(`sendOpenPullRequest`),Fo=U(`sendMerge`),Io=U(`sendPush`),Lo=U(`sendMergeBranch`),Ro=U(`sendCreateRepository`),zo=U(`onProjects`),Bo=U(`sendAddProject`),Vo=U(`onCloneTarget`),Ho=U(`sendAddProjectFromAddress`),Uo=U(`sendRemoveProject`),Wo=U(`sendShareRecords`),Go=U(`sendPickProjectDirectory`),Ko=U(`onOnboarding`),qo=U(`onCommands`),Jo=U(`onStartBranches`),Yo=U(`onStartCheck`),Xo=U(`onCloneCheck`),Zo=U(`onGitHostPeople`),Qo=U(`onServerLogins`),$o=U(`sendUseLoginsOn`),es=U(`sendAllowLogins`),ts=U(`sendSettleLogin`),ns=null,rs=new Set,is=!1,as=null,ss=`unread`,cs=null;function ls(){for(let e of rs)e()}function us(e){ns!==e&&(ns=e,ls())}function ds(e){is=!1,as=e,ss=`settled`,cs!==null&&(cs=null,ls()),us(e),Na({runOn:e??``})}function fs(){return ns}function ps(e){return rs.add(e),()=>rs.delete(e)}function ms(){return(0,J.useSyncExternalStore)(ps,fs,()=>null)}function hs(){return(0,J.useSyncExternalStore)(ps,()=>cs,()=>null)}function gs(e,t,n){if(ss===`unread`){if(t===null)return;if(e===void 0){ss=`settled`;return}if(!t.some(t=>t.id===e)){ss=`settled`,cs={why:`gone`},Na({runOn:``}),ls();return}ss=`checking`,as=e,is||us(e)}ss!==`checking`||e===void 0||n[e]===void 0||(ss=`settled`,n[e]!==`online`&&(as=null,cs={why:`offline`,id:e},is||us(null),ls()))}function _s(e){e===void 0?is&&(is=!1,us(as)):(us(e),is=!0)}function vs(e,t,n,r){if(t!==null&&!(n!==null&&n.address===void 0&&t!==r))return e.find(e=>e.id===t)}var ys=[],bs=null,xs=0,Ss=0,Cs=!1,ws=new Set;function Ts(e){return ws.add(e),()=>ws.delete(e)}function Es(){let e=++xs;return Ss++,zr().then(t=>{if(e===xs){bs=t;for(let e of ws)e()}},()=>{}).finally(()=>Ss--)}function Ds(){bs===null&&Ss===0&&Es(),!(Cs||typeof window>`u`)&&(Cs=!0,window.addEventListener(`focus`,()=>void Es()))}async function Os(e,t){let n=await _n(e,t);return n.ok&&await Es(),n}async function ks(e,t){let n=await fn(e,t);return n.ok&&await Es(),n}async function As(e){let t=await wi(e);return t.ok&&await Es(),t.ok?{ok:!0}:t}async function js(e,t){let n=await Gr(e,t);return n.ok&&await Es(),n}async function Ms(e){await mr(e).catch(()=>{}),await Es()}async function Ns(e){let t=await en(e).catch(()=>({ok:!1,error:`The machine could not be removed.`}));await Es();let n=fs();return t.ok&&n!==null&&!(bs??[]).some(e=>e.id===n)&&ds(null),t}function Ps(){let e=(0,J.useSyncExternalStore)(Ts,()=>bs!==null,()=>!1);return(0,J.useEffect)(Ds,[]),e}function Fs(){let e=(0,J.useSyncExternalStore)(Ts,()=>bs??ys,()=>ys);return(0,J.useEffect)(Ds,[]),e}var Is=30,Ls=24,Rs=810,zs=new Map;function Bs({text:e,start:t}){let[n]=(0,J.useState)(()=>{let n=Date.now();for(let[e,t]of zs)n-t>Rs&&zs.delete(e);let r=zs.get(e);return r===void 0?t?(zs.set(e,n),0):Rs:n-r});if(n>=Rs)return e;let r=[...e],i=e=>({animationDelay:`${Math.min(e,Ls)*Is-n}ms`});return(0,Y.jsxs)(Y.Fragment,{children:[r.slice(0,Ls).map((e,t)=>(0,Y.jsx)(`span`,{className:`letter-in`,style:i(t),children:e},t)),r.length>Ls&&(0,Y.jsx)(`span`,{className:`letter-in`,style:i(Ls),children:r.slice(Ls).join(``)})]})}var Vs=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`}]]),Hs=G(`ArrowDown`,[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]),Us=G(`ArrowLeft`,[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]),Ws=G(`ArrowUp`,[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]),Gs=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`}]]),Ks=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`}]]),qs=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`}]]),Js=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`}]]),Ys=G(`ChevronLeft`,[[`path`,{d:`m15 18-6-6 6-6`,key:`1wnfg3`}]]),Xs=G(`ChevronsUpDown`,[[`path`,{d:`m7 15 5 5 5-5`,key:`1hf1tw`}],[`path`,{d:`m7 9 5-5 5 5`,key:`sgt6xg`}]]),Zs=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`}]]),Qs=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`}]]),$s=G(`CircleCheck`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),ec=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`}]]),tc=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`}]]),nc=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`}]]),rc=G(`Code`,[[`polyline`,{points:`16 18 22 12 16 6`,key:`z7tu5w`}],[`polyline`,{points:`8 6 2 12 8 18`,key:`1eg1df`}]]),ic=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`}]]),ac=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`}]]),oc=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`}]]),sc=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`}]]),cc=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`}]]),lc=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`}]]),uc=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`}]]),dc=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`}]]),fc=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`}]]),pc=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`}]]),mc=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`}]]),hc=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`}]]),gc=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`}]]),_c=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`}]]),vc=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`}]]),yc=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`}]]),bc=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`}]]),xc=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`}]]),Sc=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`}]]),Cc=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`}]]),wc=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`}]]),Tc=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`}]]),Ec=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`}]]),Dc=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`}]]),Oc=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`}]]),kc=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`}]]),Ac=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`}]]),jc=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`}]]),Mc=G(`Moon`,[[`path`,{d:`M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z`,key:`a7tn18`}]]),Nc=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`}]]),Pc=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`}]]),Fc=G(`Plus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]),Ic=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`}]]),Lc=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`}]]),Rc=G(`Search`,[[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}],[`path`,{d:`m21 21-4.3-4.3`,key:`1qie3q`}]]),zc=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`}]]),Bc=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`}]]),Vc=G(`SquareCheckBig`,[[`path`,{d:`M21 10.5V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12.5`,key:`1uzm8b`}],[`path`,{d:`m9 11 3 3L22 4`,key:`1pflzl`}]]),Hc=G(`Square`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}]]),Uc=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`}]]),Wc=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`}]]),Gc=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`}]]),Kc=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`}]]),qc=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`}]]);function Jc(e){return Ji(e)??N(e.startedAt)}function Yc(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 Xc={created:`Date created`,updated:`Last updated`,name:`Name`};function Zc(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)=>Jc(e.agent).localeCompare(Jc(t.agent),void 0,{sensitivity:`base`,numeric:!0})||r(e,t)):[...e].sort(r)}function Qc(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:$c(r,e))}return n}function $c(e,t){let n=el(e.path),r=t.map(e=>el(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 el(e){return e.split(/[\\/]/).filter(Boolean)}var tl=(0,J.createContext)(new Map);function nl(){let e=(0,J.useContext)(tl);return(t,n)=>e.get(t)??n}var rl={running:`text-primary`,done:`text-success`,stopped:`text-warning`,failed:`text-danger`},il={running:`bg-primary`,waiting:`bg-warning`,saving:`bg-success`,failed:`bg-danger`},al={stopped:`border-warning/70`,merged:`border-success/70`,done:`border-muted-foreground/60`,unknown:`border-dashed border-muted-foreground/60`},ol={open:{Icon:yc,tone:`text-success`,word:`open`},draft:{Icon:vc,tone:`text-muted-foreground`,word:`draft`},merged:{Icon:gc,tone:`text-merged`,word:`merged`},closed:{Icon:_c,tone:`text-danger`,word:`closed`}};function sl(e){let t=e.toLowerCase();return t===`open`||t===`draft`||t===`merged`||t===`closed`?t:void 0}function cl(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 ll(e,t){return e.filter(e=>e.parent===t).sort((e,t)=>e.id<t.id?-1:+(e.id>t.id))}function ul(e){return Jc(e).split(`
|
|
6
|
-
`)[0].trim()}function dl(e){return e.status===`running`||e.status===`waiting`}var fl=1e4;function pl(e,t){return e.status===`running`||e.saving===!0||e.endedAt!==void 0&&t-Date.parse(e.endedAt)<fl}function ml(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 hl=/^The run (\S+), started for this run, ended (\w+)(?:: (.*?))?\.?$/;function gl(e,t){let[n=``,...r]=e.split(`
|
|
7
|
-
`),i=hl.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 _l(e){return cl(e.id)??e.startedAt}function vl(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 yl(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)&&Tl(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 bl(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 xl(e,t){let n=e.status===`running`;return{key:`run:${e.id}`,name:ul(e),...e.model===void 0?{}:{model:e.model},status:e.status,working:n,startedAt:_l(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 Sl(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 Cl(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 wl(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 Tl(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 El(e,t){return bl(e,t).flatMap(e=>e.kind===`driver`&&e.event.type===`text`?[e.event.text]:[]).at(-1)}function Dl(e){return e.replace(/^Its last words:\n/m,``).trim()}function Ol(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 kl(){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.`})]})}function Al({folder:e,fromAddress:t=!1,onAdded:n,onClose:r}){let[i,a]=(0,J.useState)(e??null),[o,s]=(0,J.useState)(t),[c,l]=(0,J.useState)(``),[u,d]=(0,J.useState)(null),[f,p]=(0,J.useState)(!1),m=(0,J.useId)(),[h,g]=(0,J.useState)(null),[_,v]=(0,J.useState)(null),{busy:y,error:b,reset:x,run:S}=Yn(),C=(0,J.useRef)(null);(0,J.useEffect)(()=>{let e=document.activeElement instanceof HTMLElement?document.activeElement:null;return()=>e?.focus()},[]);let w=async()=>{v(null);let e=await Go().catch(()=>({ok:!1,error:`Could not reach the daemon.`}));if(!e.ok){v(e.error);return}if(!e.path){r();return}x(),a(e.path)};(0,J.useEffect)(()=>{!e&&!t&&w()},[]),(0,J.useEffect)(()=>{if(!h)return;let e=setTimeout(r,h.noRemote||h.path?6e3:2500);return()=>clearTimeout(e)},[h]);let T=async e=>{e.preventDefault();let t=c.trim();if(y||!t)return;let n=await S(()=>Vo(t),`Could not reach the daemon.`);n.ok&&d({typed:t,address:n.value.address,path:n.value.path})},E=async()=>{if(y||!i&&!u)return;let e=await S(()=>u?Ho(u.typed,f):Bo(i,f),`Failed to add the project.`);e.ok&&(g({alreadyActivated:e.value.alreadyActivated,noRemote:e.value.noRemote===!0,...e.value.path?{path:e.value.path}:{}}),n())};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(),r();return}if(e.key!==`Tab`||!C.current)return;let t=[...C.current.querySelectorAll(`button, input, [tabindex]:not([tabindex="-1"])`)].filter(e=>!e.hasAttribute(`disabled`)),n=t[0],i=t[t.length-1];!n||!i||(e.shiftKey&&document.activeElement===n?(e.preventDefault(),i.focus()):!e.shiftKey&&document.activeElement===i&&(e.preventDefault(),n.focus()))},children:[(0,Y.jsx)(`div`,{className:`absolute inset-0`,onClick:r}),(0,Y.jsx)(`div`,{ref:C,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:h?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`p`,{role:`status`,className:`mb-3 text-sm font-medium`,children:h.alreadyActivated?`Already added`:`Project added`}),h.noRemote&&(0,Y.jsx)(`p`,{className:`mb-3 text-xs text-muted-foreground`,children:`This repository has no remote, so the agents’ records stay on this machine.`}),h.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:h.path}),`.`]}),(0,Y.jsx)(`div`,{className:`flex justify-end`,children:(0,Y.jsx)(V,{type:`button`,size:`sm`,autoFocus:!0,onClick:r,children:`Done`})})]}):o&&!u?(0,Y.jsxs)(`form`,{onSubmit:e=>void T(e),children:[(0,Y.jsx)(`p`,{className:`mb-2 text-sm font-medium`,children:`Add project from a GitHub address`}),_&&(0,Y.jsx)(`p`,{className:`mb-2 text-xs text-muted-foreground`,children:_}),(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)(Hr,{id:`add-project-address`,autoFocus:!0,value:c,disabled:y,onChange:e=>l(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.`}),b&&(0,Y.jsx)(`p`,{className:`mb-2 text-xs text-danger`,children:b}),(0,Y.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,Y.jsx)(V,{type:`button`,variant:`ghost`,size:`sm`,onClick:r,children:`Cancel`}),(0,Y.jsx)(V,{type:`submit`,size:`sm`,disabled:y||!c.trim(),children:`Next`})]})]}):_?(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:_}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap justify-end gap-2`,children:[(0,Y.jsx)(V,{type:`button`,variant:`ghost`,size:`sm`,onClick:r,children:`Cancel`}),(0,Y.jsx)(V,{type:`button`,variant:`outline`,size:`sm`,onClick:()=>s(!0),children:`Add from a GitHub address`}),(0,Y.jsx)(V,{type:`button`,size:`sm`,onClick:()=>void w(),children:`Try again`})]})]}):i||u?(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:u?u.address:i})}),u&&(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:u.path}),`.`]}),(0,Y.jsx)(`p`,{className:`mb-3 text-xs text-muted-foreground`,children:`Adding it lets the agent read its files. Hidden instructions in an untrusted repo can hijack the agent (prompt injection), so only add repos you trust.`}),(0,Y.jsx)(`div`,{className:`mb-3`,children:(0,Y.jsx)(kl,{})}),(0,Y.jsxs)(`div`,{className:`mb-3 text-xs`,children:[(0,Y.jsx)(`p`,{id:m,className:`mb-1 font-medium text-foreground`,children:`The agents’ records (what you ask, what each agent answers)`}),(0,Y.jsxs)(ki,{"aria-labelledby":m,value:f?`share`:`keep`,disabled:y,onValueChange:e=>p(e===`share`),className:`gap-1.5`,children:[(0,Y.jsx)(kt,{value:`keep`,className:`flex-nowrap items-start text-xs [&>[data-slot=radio-group-item]]:mt-0.5`,children:(0,Y.jsxs)(`span`,{children:[`Keep them on this machine`,(0,Y.jsx)(`span`,{className:`block text-muted-foreground`,children:`Nothing is pushed.`})]})}),(0,Y.jsx)(kt,{value:`share`,className:`flex-nowrap items-start text-xs [&>[data-slot=radio-group-item]]:mt-0.5`,children:(0,Y.jsxs)(`span`,{children:[`Share them to the repository’s remote`,(0,Y.jsxs)(`span`,{className:`block text-muted-foreground`,children:[`Pushes a branch `,(0,Y.jsx)(`code`,{className:`rounded bg-muted px-1`,children:`agent-data`}),` to origin, and keeps pushing as agents work.`]})]})})]}),(0,Y.jsx)(`p`,{className:`mt-1 text-muted-foreground`,children:`You can change this later in the project’s menu.`})]}),b&&(0,Y.jsx)(`p`,{className:`mb-2 text-xs text-danger`,children:b}),(0,Y.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,Y.jsx)(V,{type:`button`,variant:`ghost`,size:`sm`,disabled:y,onClick:()=>{x(),u?d(null):e?r():w()},children:u?`Change the address`:e?`Cancel`:`Choose again`}),(0,Y.jsx)(V,{type:`button`,size:`sm`,autoFocus:!0,disabled:y,onClick:()=>void E(),children:y?u?`Cloning…`:`Adding…`:u?`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)(V,{type:`button`,variant:`ghost`,size:`sm`,onClick:r,children:`Cancel`})})]})})]})}var jl=new Map;function Ml(e={}){let{locale:t,...n}=e,r={usage:`search`,sensitivity:`base`,ignorePunctuation:!0,...n},i=`${He(t)}|${JSON.stringify(r)}`,a=jl.get(i);if(a)return a;let o=new Intl.Collator(t,r),s={contains(e,t,n){if(!t)return!0;let r=$n(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=$n(e,n);return o.compare(r.slice(0,t.length),t)===0},endsWith(e,t,n){if(!t)return!0;let r=$n(e,n),i=t.length;return r.length>=i&&o.compare(r.slice(r.length-i),t)===0}};return jl.set(i,s),s}var Nl=``;function Pl(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 Fl(e=!0){let t=p(),n=J.useRef(null);return J.useEffect(()=>{if(!e||nr)return;let r=n.current;if(r==null)return;let i=Pl(r);if(i==null)return;let a=i.data,o=`${a}${Nl}`;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}function Il(e){switch(e){case`data-sync`:return`Not syncing with the remote`;case`provider`:return`Unsettled: which package provides the data`}}function Ll({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)(Gc,{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:[Il(e.code),(0,Y.jsxs)(`span`,{className:`font-normal text-muted-foreground`,children:[` · since `,xt(e.since)]})]}),(0,Y.jsx)(`p`,{className:`break-words text-muted-foreground`,children:e.message})]})]},e.code))})}function Rl({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 zl({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 Bl({machineId:e}){let t=Fs().find(t=>t.id===e);if(!t)return null;let n=_e[le(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 `,Ct(t)]})]})}function Vl({projects:e,scope:t,pending:n=!1,onScope:r,onProjectAdded:i}){let[a,o]=(0,J.useState)(null),s=nl(),c=t===null?void 0:e.find(e=>e.id===t),l=c?s(c.id,c.name):`All projects`;return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(Mn,{children:[(0,Y.jsxs)(mt,{"aria-label":`Project: ${n?`loading`:l}`,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:[n?(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:[c?(0,Y.jsx)(Rl,{project:c}):(0,Y.jsx)(Ec,{className:`h-4 w-4 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`flex-1 truncate text-left`,children:l})]}),(0,Y.jsx)(Xs,{className:`h-3.5 w-3.5 shrink-0 opacity-70`,"aria-hidden":!0})]}),(0,Y.jsxs)(hr,{align:`start`,className:`w-[var(--anchor-width)]`,children:[(0,Y.jsxs)(K,{onClick:()=>r(null),children:[(0,Y.jsx)(Ec,{className:`h-3.5 w-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`flex-1`,children:`All projects`}),t===null&&(0,Y.jsx)(Ir,{className:`h-3.5 w-3.5 shrink-0`,"aria-label":`selected`})]}),e.length>0&&(0,Y.jsx)(ci,{}),e.map(e=>(0,Y.jsxs)(K,{onClick:()=>r(e.id),children:[(0,Y.jsx)(Rl,{project:e}),(0,Y.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,Y.jsx)(zl,{name:e.name,label:s(e.id,e.name)}),e.machine!==void 0&&(0,Y.jsx)(Bl,{machineId:e.machine}),e.errors?.map(e=>(0,Y.jsx)(`span`,{title:e.message,className:`block truncate text-xs text-danger`,children:Il(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`})]}),e.id===t&&(0,Y.jsx)(Ir,{className:`h-3.5 w-3.5 shrink-0`,"aria-label":`selected`})]},e.id)),(0,Y.jsx)(ci,{}),(0,Y.jsxs)(K,{onClick:()=>o(`folder`),className:`text-muted-foreground`,children:[(0,Y.jsx)(Fc,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{children:`Add project`})]}),(0,Y.jsxs)(K,{onClick:()=>o(`address`),className:`text-muted-foreground`,children:[(0,Y.jsx)(Fc,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{children:`Add from a GitHub address`})]})]})]}),a&&(0,Y.jsx)(Al,{fromAddress:a===`address`,onAdded:()=>i?.(),onClose:()=>o(null)})]})}function Hl(e,t=!0){return e===`awaiting`?`Needs answer`:e===`uncommitted`?`Needs commit`:e===`unpushed`?t?`Needs PR`:`Needs push`:`Needs merge`}var Ul={awaiting:{Icon:ec,tone:`text-warning`},uncommitted:{Icon:cc,tone:`text-info`},unpushed:{Icon:hc,tone:`text-info`},pr:{Icon:yc,tone:`text-success`}};function Wl(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 Gl(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 Kl({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}=Ul[e.kind],o=Wl(e),s=er(e.createdAt,``),l=(0,Y.jsxs)(Y.Fragment,{children:[r?(0,Y.jsx)(`span`,{title:Hl(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`}),Hl(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)(ut,{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)(Ce,{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)(yi,{children:[(0,Y.jsx)(pi,{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)(H,{children:e.computer?`${Gl(e)} · runs on ${e.computer.name}`:Gl(e)})]})},ra(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 ql=[`#e69875`,`#dbbc7f`,`#a7c080`,`#7fbbb3`,`#d699b6`,`#e67e80`],Jl=[{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 Yl(e){return e?`AI is working for you 🚀`:`AI isn't working for you 💤`}function Xl(e){return e?`AI is working for you`:`AI isn't working for you`}function Zl(e){return ql[(e%ql.length+ql.length)%ql.length]}function Ql(e){return ql.map((t,n)=>Zl(e+n)).concat(Zl(e)).join(`;`)}function $l({className:e,working:t=!1}){let n=Yl(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":Xl(t),children:[(0,Y.jsx)(`title`,{children:n}),t&&(0,Y.jsx)(`defs`,{children:Jl.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:Zl(i),children:(0,Y.jsx)(`animate`,{attributeName:`stop-color`,dur:`6s`,repeatCount:`indefinite`,values:Ql(i)})}),(0,Y.jsx)(`stop`,{offset:`1`,stopColor:Zl(i-1),children:(0,Y.jsx)(`animate`,{attributeName:`stop-color`,dur:`6s`,repeatCount:`indefinite`,values:Ql(i-1)})})]},i))}),Jl.map(({d:e},n)=>(0,Y.jsx)(`path`,{fill:t?`url(#hexknot-${n})`:`var(--logo-${n+1})`,d:e},n))]})}function eu({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)($l,{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 tu(){return document.cookie.split(`;`).some(e=>e.trim().startsWith(`openagent-view=`))}function nu(){if(!tu())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 ru=U(`onPerson`),iu=[{value:`system`,label:`System`,icon:jc},{value:`light`,label:`Light`,icon:Uc},{value:`dark`,label:`Dark`,icon:Mc}];function au(){let e=Ra(Ia()),t=iu.find(t=>t.value===e)??iu[0],n=t.icon;return(0,Y.jsxs)(Ti,{children:[(0,Y.jsxs)(bi,{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)(pn,{children:iu.map(t=>{let n=t.icon;return(0,Y.jsxs)(K,{closeOnClick:!1,onClick:()=>Na({theme:t.value}),children:[(0,Y.jsx)(Ir,{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 ou(){return(0,J.useSyncExternalStore)(su,()=>typeof Notification>`u`?`unsupported`:Notification.permission,()=>`unsupported`)}function su(e){let t=setInterval(e,3e3);return()=>clearInterval(t)}function cu(){let e=Ia(),t=Ba(e),n=Va(e),r=Ha(e),i=ou(),a=i!==`unsupported`,o=i===`denied`,s=t&&i===`granted`;return(0,Y.jsxs)(Ti,{children:[(0,Y.jsxs)(bi,{children:[s?(0,Y.jsx)(Ks,{className:`h-3.5 w-3.5 shrink-0 opacity-70`,"aria-hidden":!0}):(0,Y.jsx)(Gs,{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)(pn,{className:`min-w-[16rem]`,children:[a&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(Hn,{children:[(0,Y.jsx)(tn,{children:`Deliver to`}),(0,Y.jsx)(Ar,{checked:t,disabled:o,onCheckedChange:e=>{Na({notifyBrowser:e}),e&&i==="default"&&Notification.requestPermission()},className:`items-start`,children:(0,Y.jsx)(Dt,{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)(ci,{})]}),(0,Y.jsxs)(Hn,{children:[(0,Y.jsx)(tn,{children:`Notify me about`}),(0,Y.jsx)(Ar,{checked:r,onCheckedChange:e=>Na({notifyHumanIntervention:e}),className:`items-start`,children:(0,Y.jsx)(Dt,{label:`Human Queue`,description:`An agent awaiting you, or a PR to review`})}),(0,Y.jsx)(Ar,{checked:n,onCheckedChange:e=>Na({notifyNewActivity:e}),className:`items-start`,children:(0,Y.jsx)(Dt,{label:`New activity`,description:`An agent started or finished`})})]})]})]})}var lu=U(`onGitHosts`),uu=U(`sendUseGitHostAccount`),du=U(`sendForgetGitHostAccount`),fu=U(`sendGitHostLogin`),pu=U(`sendGitHostInstall`),mu=U(`onAgentState`),hu=U(`sendAgentFix`),gu=U(`onProjectAccounts`),_u=U(`sendProjectAccounts`),vu=`accounts`,yu=2e3,bu=8e3,xu=3e4;function Su(e,t,n,r){let[i,a]=(0,J.useState)(xu),{value:o,reload:s}=xi(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 Cu(e,t=!0){let{value:n,reload:r}=Su(`agent-state:${e??``}`,t?()=>mu(e):null,e=>e?.fixing?yu:e&&!e.ready?bu:xu,[e,t]);return{state:n,reload:r}}function wu(){let{value:e,reload:t}=Su(`git-hosts`,lu,e=>e?.hosts.some(e=>e.provider?.installing||e.provider?.loggingIn)?yu:e?.hosts.some(e=>Eu(e)===`step`||Eu(e)===`not-installed`)?bu:xu,[]);return{view:e,reload:t}}function Tu(e){if(e)return e.ready?`connected`:e.fix?.kind===`install`||/ not found/.test(e.problem??``)?`not-installed`:`step`}function Eu(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 Du={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 Ou({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 ku({state:e}){return e===`connected`?null:(0,Y.jsx)(Ou,{...Du[e]})}function Au({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 ju=72;function Mu({command:e}){let[t,n]=(0,J.useState)(!1),r=e.length>ju;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)(pe,{text:e,label:`Copy the command`})]})}function Nu(e){let t=$r[e.driver];return Tu(e)===`not-installed`?`${t} is not installed.`:/ logged in/.test(e.problem??``)?`${t} is not logged in.`:e.problem??`${t} cannot start.`}function Pu(e){let t=e.provider;return t.installed?t.accounts.length===0?`No ${t.name} account is logged in.`:`${t.name} no longer takes a login: add it again.`:`${t.tool}, the tool for ${t.name}, is not installed.`}function Fu({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)(V,{size:o,onClick:a,children:e}),r&&(0,Y.jsx)(Mu,{command:r}),i&&(0,Y.jsx)(`p`,{role:`alert`,className:`whitespace-pre-line text-xs text-danger`,children:i})]})}function Iu(e){let t=$r[e.driver];return e.fixing===`install`?`Installing ${t}…`:`Say yes in the page this computer's browser opened to log ${t} in.`}function Lu({state:e,onChanged:t,size:n}){let[r,i]=(0,J.useState)();if(e.ready||!e.fix)return null;let a=$r[e.driver],o=async()=>{i(void 0);let n=await hu(e.driver);n.ok||i(n.error),t()};return(0,Y.jsx)(Fu,{size:n,label:e.fix.kind===`install`?`Install ${a}`:`Log in to ${a}`,busy:e.fixing!==void 0,busyWords:Iu(e),command:e.fix.command,...(r??e.failed)===void 0?{}:{failed:r??e.failed},onPress:()=>void o()})}function Ru({code:e,url:t}){return(0,Y.jsxs)(`div`,{role:`status`,className:`space-y-1.5 text-xs`,children:[(0,Y.jsx)(`p`,{className:`text-muted-foreground`,children:`Type this code at the page below, signed in to the account to add:`}),(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsx)(`code`,{className:`rounded bg-muted px-2 py-1 font-mono text-sm font-medium tracking-wider`,children:e}),(0,Y.jsx)(pe,{text:e,label:`Copy the code`}),(0,Y.jsx)(`a`,{href:t,target:`_blank`,rel:`noreferrer`,className:`text-[var(--color-primary)] underline-offset-2 hover:underline`,children:t.replace(/^https:\/\//,``)})]})]})}function zu(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 fu(t);r.ok||n(r.error),await e()}finally{i(!1)}},error:t,busy:r}}function Bu({row:e,onChanged:t,size:n}){let[r,i]=(0,J.useState)(),a=zu(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 pu(e.host);n.ok||i(n.error),await t()};return(0,Y.jsx)(Fu,{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)(Ru,{code:o.loggingIn.code,url:o.loggingIn.url}):o.accounts.length>0?null:(0,Y.jsx)(Fu,{size:n,label:`Log in to ${o.name}`,busy:a.busy,busyWords:`Asking for a code…`,...a.error===void 0?{}:{failed:a.error},onPress:()=>void a.start(e.host)})}function Vu(){let{state:e,reload:t}=Cu(),{view:n,reload:r}=wu(),i=async()=>{await Promise.all([t(),r()])},a=[];if(e&&!e.ready){let n=$r[e.driver];a.push({key:`agent`,name:n,words:Nu(e),entry:vu,fix:(0,Y.jsx)(Lu,{state:e,onChanged:()=>void t()})})}for(let e of n?.hosts??[]){let t=e.provider;!t||Eu(e)===`connected`||a.push({key:`host:${e.host}`,name:t.name,words:Pu(e),entry:vu,fix:(0,Y.jsx)(Bu,{row:e,onChanged:r})})}return{missing:a,reload:i,hosts:n}}function Hu(e){return e.trim().split(/\s+/)[0]??e}function Uu(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 Wu({person:e,dot:t}){let[n,r]=(0,J.useState)(!1),i=e?.avatar&&!n?e.avatar:void 0;return(0,Y.jsxs)(`span`,{"aria-hidden":!0,className:`relative shrink-0`,children:[(0,Y.jsx)(`span`,{className:`flex h-6 w-6 items-center justify-center overflow-hidden rounded-full bg-muted text-[10px] font-medium text-muted-foreground`,children:i?(0,Y.jsx)(`img`,{src:i,alt:``,referrerPolicy:`no-referrer`,className:`h-full w-full object-cover`,onError:()=>r(!0)}):e?Uu(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 Gu({onSettings:e}){let t=mn(()=>ru().catch(()=>null),null,[],{remember:`person`}),{missing:n}=Vu();return(0,Y.jsxs)(Mn,{children:[(0,Y.jsxs)(mt,{"aria-label":`${t?`${t.name}: settings`:`Settings`}${n.length>0?`, 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)(Wu,{person:t,dot:n.length>0}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:t?Hu(t.name):``}),(0,Y.jsx)(zc,{className:`h-4 w-4 shrink-0 text-muted-foreground`,"aria-hidden":!0})]}),(0,Y.jsxs)(hr,{align:`start`,className:`min-w-[14rem]`,children:[t&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Hn,{children:(0,Y.jsxs)(tn,{className:`flex flex-col`,children:[(0,Y.jsx)(`span`,{className:`truncate text-foreground`,children:t.name}),t.login&&(0,Y.jsxs)(`span`,{className:`truncate font-normal`,children:[`@`,t.login]})]})}),(0,Y.jsx)(ci,{})]}),n.length>0&&(0,Y.jsxs)(Y.Fragment,{children:[n.map(t=>(0,Y.jsxs)(K,{onClick:()=>e(t.entry),className:`text-warning`,children:[(0,Y.jsx)(Zs,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`flex-1 truncate`,children:t.words})]},t.key)),(0,Y.jsx)(ci,{})]}),(0,Y.jsx)(au,{}),(0,Y.jsx)(cu,{}),(0,Y.jsx)(ci,{}),(0,Y.jsxs)(K,{onClick:()=>e(),children:[(0,Y.jsx)(zc,{className:`h-3.5 w-3.5 shrink-0 opacity-70`,"aria-hidden":!0}),`Settings`]})]})]})}var Ku=`oa.sidebar-width`,qu=new Set,Ju=e=>Math.round(Math.min(448,Math.max(224,e)));function Yu(){try{let e=Number(localStorage.getItem(Ku));return Number.isFinite(e)&&e>0?Ju(e):256}catch{return 256}}var Xu=Yu();function Zu(e){Xu=e===void 0?256:Ju(e);try{e===void 0?localStorage.removeItem(Ku):localStorage.setItem(Ku,String(Xu))}catch{}for(let e of qu)e()}function Qu(){return(0,J.useSyncExternalStore)(e=>(qu.add(e),()=>qu.delete(e)),()=>Xu)}var $u=`oa.sidebar-hidden`;function ed(){try{return localStorage.getItem($u)===`true`}catch{return!1}}var td=ed();function nd(e){td=e;try{e?localStorage.setItem($u,`true`):localStorage.removeItem($u)}catch{}for(let e of qu)e()}function rd(){return(0,J.useSyncExternalStore)(e=>(qu.add(e),()=>qu.delete(e)),()=>td)}var id=16;function ad(){let e=Qu(),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&&Zu(t.current.width+e.clientX-t.current.x)},onPointerUp:()=>t.current=null,onPointerCancel:()=>t.current=null,onDoubleClick:()=>Zu(void 0),onKeyDown:t=>{t.key===`ArrowLeft`||t.key===`ArrowRight`?(t.preventDefault(),Zu(e+(t.key===`ArrowRight`?id:-16))):t.key===`Enter`&&e!==256&&Zu(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 od(e,t){return`agent-log:${e}:${t}`}function sd(e,t){Ei(od(e,t),()=>no(e,t))}function cd(e,t){return e===null||t.status===`running`?{}:{onNear:()=>sd(e,t.id)}}function ld({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:C=()=>{},pages:w=[],activePage:T=null,onPage:E=()=>{},interventionCount:D=0}){let{isMobile:O,open:k,setOpenMobile:A}=En(),j=e=>(...t)=>{A(!1),e(...t)},N=Ia(),P=nl(),[F,ee]=(0,J.useState)(null);(0,J.useEffect)(()=>{h>0&&ee({intent:g,id:v})},[h]);let te=n===null&&u!==void 0,I=te?u.map(e=>e.agent):s,L=I.some(e=>e.status===`running`),R=F!==null&&I.some(e=>e.id===F.id);(0,J.useEffect)(()=>{R&&ee(null)},[R]),(0,J.useEffect)(()=>{ee(null)},[n]),(0,J.useEffect)(()=>{if(F===null||L)return;let e=setTimeout(()=>ee(null),2e4);return()=>clearTimeout(e)},[F,L]);let ne=F!==null&&!L&&!R,re=c!==null&&!I.some(e=>e.id===c),ie=N.recentsSort??`created`,ae=Zc(te?u.map(e=>({key:`${e.projectId}:${e.agent.id}`,agent:e.agent,project:P(e.projectId,e.projectName),projectId:e.projectId,active:e.projectId===t&&e.agent.id===c,onClick:()=>d?.(e.projectId,e.agent.id),...cd(e.projectId,e.agent)})):s.map(e=>({key:e.id,agent:e,projectId:t,active:e.id===c,onClick:()=>l(e.id),...cd(t,e)})),ie),z=t!==null&&c===null,oe=ml(ae),[B,ce]=(0,J.useState)({}),le=ae.length>0||ne,ue=e=>e.projectId??n,de=ji(ae.map(e=>({projectId:ue(e),person:e.agent.person})),Zo,`sidebar:people`),fe=Nn(),pe=(e,t,n=e.agent.status,r)=>(0,Y.jsx)(hd,{status:n,fold:r,saving:e.agent.saving===!0&&n===e.agent.status,intent:t?ul(e.agent):Jc(e.agent),naming:!t&&Yc(e.agent,N.nameRuns!==!1),driver:e.agent.driver,...e.agent.person&&!t?{person:e.agent.person,account:de(ue(e),e.agent.person)}:{},...e.agent.model?{model:ur(fe?.[xr(e.agent.driver)??`claude-code`],e.agent.model)}:{},...e.project&&!t?{project:e.project}:{},subtitle:er(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:sa(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:j(e.onClick),onNear:e.onNear});if(!O&&!k)return null;let me=e&&!O;return(0,Y.jsxs)(Y.Fragment,{children:[me&&(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`w-(--sidebar-width) shrink-0`}),(0,Y.jsxs)(Ft,{collapsible:O?`offcanvas`:`none`,className:q(`relative w-(--sidebar-width) border-r border-sidebar-border`,me&&`fixed top-(--top-banner,0px) left-0 z-20 h-[calc(100dvh-var(--top-banner,0px))]`),children:[(0,Y.jsxs)(Vt,{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)(eu,{working:b,href:o,onNavigate:j(x)}),(0,Y.jsx)(S,{})]}),(0,Y.jsx)(nu,{}),(0,Y.jsx)(Vl,{projects:f,scope:n,pending:r,onScope:a,onProjectAdded:m})]}),(0,Y.jsxs)(Vt,{className:`gap-0.5 pt-0! pb-2`,children:[(0,Y.jsx)(fd,{scope:n,projects:f,active:z,onNewAgentInProject:p&&j(p),onSelect:j(l),onProjectAdded:m}),(0,Y.jsx)(dd,{active:t===null&&T===null,count:D,onClick:j(x)}),w.map(e=>(0,Y.jsx)(ud,{icon:e.icon??qs,label:e.label,active:T===e.segment,onClick:j(()=>E(e.segment))},e.segment))]}),(0,Y.jsx)(se,{className:`overflow-hidden`,children:(0,Y.jsx)(M,{className:`min-h-0 flex-1`,children:(0,Y.jsxs)(Lr,{className:`pt-3 pr-3`,children:[(0,Y.jsxs)(`div`,{className:`sticky top-0 z-10`,children:[(0,Y.jsxs)(Kt,{className:`rounded-none bg-sidebar font-normal tracking-wide text-muted-foreground`,children:[`Recent agents`,(0,Y.jsx)(pd,{order:ie})]}),(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)(we,{children:[(0,Y.jsxs)(Qt,{className:`gap-0.5`,children:[ne&&(0,Y.jsx)(ot,{children:(0,Y.jsx)(hd,{status:`running`,...N.nameRuns===!1?{intent:F?.intent??void 0}:_===void 0?{intent:void 0,naming:!0}:{intent:_},...te&&y?{project:y}:{},subtitle:`just now`,driver:N.driver,active:re,standIn:!0,onClick:j(()=>l(null))})}),oe.map(({row:e,subagents:t})=>{let n=B[e.key]??t.some(e=>dl(e.agent)||e.active),r=t.filter(e=>e.agent.status===`running`).length,i=Date.now(),a=e.agent.status===`done`&&t.some(e=>pl(e.agent,i));return(0,Y.jsxs)(ot,{children:[pe(e,!1,a?`running`:e.agent.status,t.length>0?{count:t.length,working:r,open:n,onToggle:()=>ce(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:pe(e,!0)},e.key))})]},e.key)})]}),!le&&i&&(0,Y.jsx)(`p`,{className:`whitespace-nowrap px-2 py-1 text-sm text-muted-foreground`,children:`No agents yet.`})]})]})})}),(0,Y.jsx)(Ae,{className:`border-t border-sidebar-border`,children:(0,Y.jsx)(Gu,{onSettings:j(C)})}),!O&&(0,Y.jsx)(ad,{})]})]})}function ud({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 dd({active:e,count:t,onClick:n}){return(0,Y.jsx)(ud,{icon:Dc,label:`Overview`,active:e,onClick:n,children:t>0&&(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{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)(H,{children:[t,` item`,t===1?``:`s`,` in your Human Queue`]})]})})}function fd({scope:e,projects:t,active:n=!1,onNewAgentInProject:r,onSelect:i,onProjectAdded:a}){let[o,s]=(0,J.useState)(!1),c=nl(),l=q(`h-auto w-full justify-start gap-2 px-2 py-1.5 font-normal`,n&&`bg-sidebar-accent text-sidebar-accent-foreground`),u=e=>r?r(e):i(null);if(e!==null||t.length===1){let n=e??t[0].id;return(0,Y.jsxs)(V,{variant:`ghost`,className:l,onClick:()=>u(n),children:[(0,Y.jsx)(Fc,{className:`h-4 w-4 shrink-0`}),(0,Y.jsx)(`span`,{className:`whitespace-nowrap`,children:`New agent`})]})}return t.length===0?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(yi,{children:[(0,Y.jsxs)(pi,{render:(0,Y.jsx)(V,{variant:`ghost`,className:l,onClick:()=>s(!0)}),children:[(0,Y.jsx)(Fc,{className:`h-4 w-4 shrink-0`}),(0,Y.jsx)(`span`,{className:`whitespace-nowrap`,children:`New agent`})]}),(0,Y.jsx)(H,{children:`Add a project to start an agent`})]}),o&&(0,Y.jsx)(Al,{onAdded:()=>a?.(),onClose:()=>s(!1)})]}):(0,Y.jsxs)(Mn,{children:[(0,Y.jsxs)(mt,{"aria-label":`New agent`,className:q(st({variant:`ghost`}),l),children:[(0,Y.jsx)(Fc,{className:`h-4 w-4 shrink-0`}),(0,Y.jsx)(`span`,{className:`whitespace-nowrap`,children:`New agent`}),(0,Y.jsx)(ke,{className:`ml-auto h-3.5 w-3.5 shrink-0 opacity-70`})]}),(0,Y.jsx)(hr,{align:`start`,className:`w-[13.5rem]`,children:t.map(e=>(0,Y.jsxs)(K,{onClick:()=>u(e.id),children:[(0,Y.jsx)(`span`,{"aria-hidden":!0,className:q(`h-2 w-2 shrink-0 rounded-full`,e.activated?`bg-primary`:`bg-muted-foreground`)}),(0,Y.jsx)(`span`,{className:`flex-1 truncate`,children:c(e.id,e.name)})]},e.id))})]})}function pd({order:e}){return(0,Y.jsxs)(Mn,{children:[(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(mt,{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)(Vs,{className:`h-3.5 w-3.5`,"aria-hidden":!0})}),(0,Y.jsxs)(H,{children:[`Sort by: `,Xc[e]]})]}),(0,Y.jsx)(hr,{align:`end`,className:`min-w-40`,children:(0,Y.jsxs)(Hn,{children:[(0,Y.jsx)(tn,{className:`font-normal`,children:`Sort by`}),Object.keys(Xc).map(t=>(0,Y.jsxs)(K,{"aria-current":t===e,onClick:()=>Na({recentsSort:t}),children:[(0,Y.jsx)(Ir,{className:q(`h-3.5 w-3.5 shrink-0`,t===e?`opacity-100`:`opacity-0`),"aria-hidden":!0}),Xc[t]]},t))]})})]})}var md=`size-3.5 text-[7px]`;function hd({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=xr(c),O=_e[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`,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`),I=E?`waiting`:k?`in cloud`:A||(j?`saving…`:e===`unknown`?`status unknown`:e),L=e===`unknown`?`${h??`Its computer`} offline${_?` · last seen ${er(_)}`:``}`:void 0,R=e===`running`||k||j,ne=j?il.saving:E?il.waiting:R?il.running:il[e],re=(A?al[A]:al[e])??al.done,ie=b?.state?ol[b.state]:void 0,ae=b?`PR #${b.number}${ie?` ${ie.word}`:``}`:void 0,z=S?{Icon:cc,said:`${Hl(`uncommitted`)} · ${S} file${S===1?``:`s`}`}:x?{Icon:hc,said:`${Hl(`unpushed`,C)} · ${x} commit${x===1?``:`s`}`}:void 0,oe=w?dt(w,T):void 0,B=[I,...r?[r]:[],i,...oe?[oe]:[],...D?[$r[D]]:[],...v?[`started on ${v}`]:[],...L?[L]:f?[h?`runs on ${h}`:`runs on another machine`]:[],...p?[`a Claude Code cloud session`]:[],...ae?[ae]:[],...z?[z.said]:[]].join(` · `),se=D?[$r[D],...l?[l]:[]].join(` · `):void 0;return(0,Y.jsxs)(V,{variant:`ghost`,"aria-label":`${n?`Naming this session`:F} · ${B}`,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":I,className:q(`inline-block h-2 w-2 shrink-0 rounded-full`,ne??q(`border`,re),R&&`animate-pulse`)}),(0,Y.jsxs)(yi,{disabled:!N,children:[(0,Y.jsx)(pi,{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)(Bs,{text:F,start:u||ee.current})}),(0,Y.jsx)(H,{side:`right`,className:`max-w-96 whitespace-pre-wrap break-words text-sm`,children:F})]}),v&&(0,Y.jsx)(gd,{said:`Started on ${v}`,children:(0,Y.jsx)(Et,{className:`h-3 w-3 text-muted-foreground`})}),f&&(0,Y.jsx)(gd,{said:L??(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)(gd,{said:`Runs as a Claude Code cloud session`,children:(0,Y.jsx)(nc,{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)(ke,{className:q(`h-3 w-3 shrink-0 transition-transform`,y.open||`-rotate-90`),"aria-hidden":!0}),(0,Y.jsx)(Js,{className:`h-3 w-3 shrink-0`,"aria-hidden":!0}),y.count]}),ie&&ae&&(0,Y.jsx)(gd,{said:ae,children:(0,Y.jsx)(ie.Icon,{className:q(`h-3 w-3`,ie.tone)})}),z&&(0,Y.jsx)(gd,{said:z.said,children:(0,Y.jsx)(z.Icon,{className:`h-3 w-3 text-muted-foreground`})}),oe?(0,Y.jsx)(gd,{said:oe,children:(0,Y.jsx)($e,{email:w,picture:T?.avatar,className:md})}):u&&(0,Y.jsx)($e,{className:md}),D&&se&&(0,Y.jsx)(gd,{said:se,children:(0,Y.jsx)(hi,{driver:D,className:`h-3 w-3 text-muted-foreground`})})]})}function gd({said:e,children:t}){return(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(`span`,{role:`img`,"aria-label":e,className:`flex shrink-0 items-center`}),children:t}),(0,Y.jsx)(H,{children:e})]})}function _d(e=typeof window>`u`?``:window.location.hostname){return e===``||Ee(e)?`This machine`:e}function vd(e,t){let n=_d(t);return n===`This machine`?e:n}function yd(e){return{...e.driver?{driver:e.driver}:{},...e.model?{model:e.model}:{},...e.effort?{effort:e.effort}:{},...e.publish?{publish:e.publish}:{}}}function bd(e){let{busy:t,error:n,reset:r,run:i}=Yn(),[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 Mo(t,n,r);if(e.ok||!e.notThere)return e;let i=r.machine;o({scope:l});try{let e=i===void 0?await wd(()=>Vn(t),()=>on(t),u):await wd(()=>In(t,i),()=>wr(t,i),u);if(e===xd||!u())return xd;if(!e.ok)return e}finally{o(null)}return Mo(t,n,r)},a);return d.ok?d.value??void 0:void 0}}}var xd=null,Sd=2e3,Cd=16*6e4;async function wd(e,t,n){let r=Date.now()+Cd,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,Sd)),!n())return xd;i=await t()}return i.ok?{ok:!0}:i}function Td(e){let t=Ia().startFrom?.[e??``],n=xi(e?()=>t?qo(e,t):qo(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 Ed(e){return e.filter(e=>e.waiting===void 0)}var Dd=`all`,Od=`settings`,kd=`item`;function Ad(e,t){let[n=``,r=``]=e.split(`?`),i=new URLSearchParams(r),a=i.get(Od),o=i.get(kd),s=a===null?{}:{settings:a,...o?{settingsItem:o}:{}},[c,...l]=n.split(`/`).filter(Boolean).map(Pd);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&&ve(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&&ve(f)?{projectId:null,agentId:null,page:f,pagePath:p,scope:d,...s}:{projectId:d,agentId:f??null,...i.has(Dd)?{}:{scope:d},...s}}function jd(e,t){let n=!e.page&&e.projectId&&!e.scope?[Dd]:[],r=e.settings===void 0?[]:[`${Od}=${encodeURIComponent(e.settings)}`,...e.settingsItem?[`${kd}=${encodeURIComponent(e.settingsItem)}`]:[]],i=[...n,...r].join(`&`);return Nd(e,t)+(i?`?${i}`:``)}function Md(e,t){let[n=``,r=``]=e.split(`?`),i=new URLSearchParams(t);for(let e of[Dd,Od,kd,...new URLSearchParams(r).keys()])i.delete(e);let a=[i.toString(),r].filter(Boolean).join(`&`);return a?`${n}?${a}`:n}function Nd({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?[et]:[];return`/`+[...s,...c].map(encodeURIComponent).join(`/`)}function Pd(e){try{return decodeURIComponent(e)}catch{return e}}var Fd=new Set;function Id(){for(let e of Fd)e()}function Ld(e){return Fd.size===0&&window.addEventListener(`popstate`,Id),Fd.add(e),()=>{Fd.delete(e),Fd.size===0&&window.removeEventListener(`popstate`,Id)}}var Rd=()=>window.location.pathname+window.location.search;function zd(e){let t=(0,J.useSyncExternalStore)(Ld,Rd,()=>`/`);return{route:Ad(t,e),go:(n,r)=>{let i=r?.keepQuery?Md(jd(n,e),window.location.search):jd(n,e);i!==t&&(r?.replace?window.history.replaceState(null,``,i):window.history.pushState(null,``,i),Id())}}}function Bd(e,t){let n=new URL(window.location.href);n.searchParams.set(Od,e),t?n.searchParams.set(kd,t):n.searchParams.delete(kd),window.history.pushState(null,``,n.pathname+n.search),Id()}function Vd(){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 Hd(e,t){let n=[...t];return n.length?`${e.trimEnd()}\n\nContext: ${n.join(`, `)}`:e}var Ud=`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`,Wd=q(Ud,`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`),Gd=`flex h-8 items-center gap-2`,Kd=`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 qd({children:e,end:t}){return(0,Y.jsxs)(`div`,{className:q(`mb-1`,Gd),children:[(0,Y.jsx)(`div`,{className:Kd,children:e}),t&&(0,Y.jsx)(`div`,{className:`shrink-0`,children:t})]})}function Jd({tip:e,children:t}){return(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{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)(H,{children:e})]})}function Yd({icon:e,children:t}){return(0,Y.jsxs)(`span`,{className:Ud,children:[e,(0,Y.jsx)(`span`,{className:`truncate`,children:t})]})}var Xd={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 Zd({publish:e,picks:t,onPublish:n,target:r,busy:i}){let a=e===`pr`||e===`merge`?r:void 0;return(0,Y.jsxs)(Mn,{children:[(0,Y.jsxs)(yi,{children:[(0,Y.jsxs)(pi,{render:(0,Y.jsx)(mt,{type:`button`,disabled:i,"aria-label":`Auto`,className:q(Wd,`max-w-[20rem]!`)}),children:[(0,Y.jsx)(`span`,{className:`truncate`,children:`Auto: ${Lt[e]}${a?` → ${a.into}`:``}`}),(0,Y.jsx)(ke,{className:`h-3 w-3 shrink-0 opacity-70`,"aria-hidden":!0})]}),(0,Y.jsx)(H,{children:`What the agent does by itself when it finishes.${a?` The pull request goes into ${a.into}.`:``}`})]}),(0,Y.jsxs)(hr,{className:`min-w-[19rem] max-w-[22rem]`,children:[(0,Y.jsxs)(Hn,{children:[(0,Y.jsx)(tn,{className:`font-normal`,children:`When the agent finishes`}),t.map(t=>(0,Y.jsxs)(K,{className:`items-start`,"aria-current":t===e,onClick:()=>n(t),children:[(0,Y.jsx)(Ir,{className:q(`mt-0.5 h-3.5 w-3.5 shrink-0`,t===e?`opacity-100`:`opacity-0`),"aria-hidden":!0}),(0,Y.jsx)(Dt,{label:Lt[t],description:Xd[t]})]},t))]}),a?.picks&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(ci,{}),(0,Y.jsxs)(Hn,{children:[(0,Y.jsx)(tn,{className:`font-normal`,children:`The pull request goes into`}),a.picks.map(e=>(0,Y.jsxs)(K,{"aria-current":e===a.into,onClick:()=>a.onPick?.(e),children:[(0,Y.jsx)(Ir,{className:q(`h-3.5 w-3.5 shrink-0`,e===a.into?`opacity-100`:`opacity-0`),"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`truncate`,children:e})]},e))]})]})]})]})}function Qd({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)(yi,{children:[(0,Y.jsx)(pi,{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)(Ai,{className:`h-3.5 w-3.5`})}),(0,Y.jsxs)(H,{children:[`Remove `,e]})]}),(0,Y.jsx)(`span`,{className:`truncate`,title:e,children:e})]},e))})}function $d({projectId:e,context:t,busy:n,onToggle:r}){let i=mn(zo,[],[]).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)(ef,{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 ef({otherProjects:e,context:t,contextFiles:n,summary:r,busy:i,onToggle:a}){return(0,Y.jsxs)(Mn,{children:[(0,Y.jsxs)(yi,{children:[(0,Y.jsxs)(pi,{render:(0,Y.jsx)(mt,{type:`button`,disabled:i,className:Wd}),children:[(0,Y.jsx)(Ec,{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)(H,{children:`Narrow the run to specific repos and files`})]}),(0,Y.jsxs)(hr,{align:`start`,className:`min-w-[18rem] max-w-[24rem]`,children:[(0,Y.jsxs)(Hn,{children:[(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(tn,{}),children:`Projects`}),(0,Y.jsx)(H,{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)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(Ar,{checked:t.has(e.path),onCheckedChange:()=>a(e.path),disabled:i}),children:(0,Y.jsx)(`span`,{className:`truncate`,children:e.name})}),(0,Y.jsx)(H,{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)(ci,{}),(0,Y.jsxs)(Hn,{children:[(0,Y.jsx)(tn,{children:`Files`}),n.length>0?(0,Y.jsx)(`div`,{className:`px-2 py-1`,children:(0,Y.jsx)(Qd,{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 tf(e){this.content=e}tf.prototype={constructor:tf,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 tf(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 tf(n)},addToStart:function(e,t){return new tf([e,t].concat(this.remove(e).content))},addToEnd:function(e,t){var n=this.remove(e).content.slice();return n.push(e,t),new tf(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 tf(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=tf.from(e),e.size?new tf(e.content.concat(this.subtract(e).content)):this},append:function(e){return e=tf.from(e),e.size?new tf(this.subtract(e).content.concat(e.content)):this},subtract:function(e){var t=this;e=tf.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}},tf.from=function(e){if(e instanceof tf)return e;var t=[];if(e)for(var n in e)t.push(n,e[n]);return new tf(t)};function nf(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&&of(e.charCodeAt(r-1))&&af(e.charCodeAt(r))&&n--,n}if(i.content.size||a.content.size){let e=nf(i.content,a.content,n+1);if(e!=null)return e}n+=i.nodeSize}}function rf(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&&of(e.charCodeAt(i-1))&&af(e.charCodeAt(i))&&(n++,r++),{a:n,b:r}}if(o.content.size||s.content.size){let e=rf(o.content,s.content,n-1,r-1);if(e)return e}n-=c,r-=c}}function af(e){return e>=56320&&e<57344}function of(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 nf(this,e,t)}findDiffEnd(e,t=this.size,n=e.size){return rf(this,e,t,n)}findIndex(e){if(e==0)return cf(0,e);if(e==this.size)return cf(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?cf(t+1,i):cf(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 sf={index:0,offset:0};function cf(e,t){return sf.index=e,sf.offset=t,sf}function lf(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(!lf(e[n],t[n]))return!1}else{for(let n in e)if(!(n in t)||!lf(e[n],t[n]))return!1;for(let n in t)if(!(n in e))return!1}return!0}var uf=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&&lf(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}};uf.none=[];var df=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=pf(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(ff(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 ff(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(ff(a.content,t-i-1,n-i-1)))}function pf(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=pf(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 mf(e,t,n){if(n.openStart>e.depth)throw new df(`Inserted content deeper than insertion position`);if(e.depth-n.openStart!=t.depth-n.openEnd)throw new df(`Inconsistent open depths`);return hf(e,t,n,0)}function hf(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=hf(e,t,n,r+1);return a.copy(a.content.replaceChild(i,o))}else if(!n.content.size)return bf(a,Sf(e,t,r));else if(!n.openStart&&!n.openEnd&&e.depth==r&&t.depth==r){let r=e.parent,i=r.content;return bf(r,i.cut(0,e.parentOffset).append(n.content).append(i.cut(t.parentOffset)))}else{let{start:i,end:o}=Cf(n,e);return bf(a,xf(e,i,o,t,r))}}function gf(e,t){if(!t.type.compatibleContent(e.type))throw new df(`Cannot join `+t.type.name+` onto `+e.type.name)}function _f(e,t,n){let r=e.node(n);return gf(r,t.node(n)),r}function vf(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 yf(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&&(vf(e.nodeAfter,r),a++));for(let e=a;e<o;e++)vf(i.child(e),r);t&&t.depth==n&&t.textOffset&&vf(t.nodeBefore,r)}function bf(e,t){if(!e.type.validContent(t))throw new df(`Invalid content for node `+e.type.name);return e.copy(t)}function xf(e,t,n,r,i){let a=e.depth>i&&_f(e,t,i+1),o=r.depth>i&&_f(n,r,i+1),s=[];return yf(null,e,i,s),a&&o&&t.index(i)==n.index(i)?(gf(a,o),vf(bf(a,xf(e,t,n,r,i+1)),s)):(a&&vf(bf(a,Sf(e,t,i+1)),s),yf(t,n,i,s),o&&vf(bf(o,Sf(n,r,i+1)),s)),yf(r,null,i,s),new X(s)}function Sf(e,t,n){let r=[];return yf(null,e,n,r),e.depth>n&&vf(bf(_f(e,t,n+1),Sf(e,t,n+1)),r),yf(t,null,n,r),new X(r)}function Cf(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 wf=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 uf.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 Of(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=Df.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 Df.set(t,r=new Tf);let i=r.elts[r.i]=e.resolve(t,n);return r.i=(r.i+1)%Ef,i}},Tf=class{constructor(){this.elts=[],this.i=0}},Ef=12,Df=new WeakMap,Of=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)}},kf=Object.create(null),Af=class e{constructor(e,t,n,r=uf.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&&lf(this.attrs,t||e.defaultAttrs||kf)&&uf.sameSet(this.marks,n||uf.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 mf(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 wf.resolveCached(this,e)}resolveNoCache(e){return wf.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()+`)`),Mf(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=uf.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(!uf.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}};Af.prototype.text=void 0;var jf=class e extends Af{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):Mf(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 Mf(e,t){for(let n=e.length-1;n>=0;n--)t=e[n].type.name+`(`+t+`)`;return t}var Nf=class e{constructor(e){this.validEnd=e,this.next=[],this.wrapCache=[]}static parse(t,n){let r=new Pf(t,n);if(r.next==null)return e.empty;let i=Ff(r);r.next&&r.err(`Unexpected trailing text`);let a=Gf(Hf(i));return Kf(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
|
-
`)}};Nf.empty=new Nf(!0);var Pf=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 Ff(e){let t=[];do t.push(If(e));while(e.eat(`|`));return t.length==1?t[0]:{type:`choice`,exprs:t}}function If(e){let t=[];do t.push(Lf(e));while(e.next&&e.next!=`)`&&e.next!=`|`);return t.length==1?t[0]:{type:`seq`,exprs:t}}function Lf(e){let t=Vf(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=zf(e,t);else break;return t}function Rf(e){/\D/.test(e.next)&&e.err(`Expected number, got '`+e.next+`'`);let t=Number(e.next);return e.pos++,t}function zf(e,t){let n=Rf(e),r=n;return e.eat(`,`)&&(r=e.next==`}`?-1:Rf(e)),e.eat(`}`)||e.err(`Unclosed braced range`),{type:`range`,min:n,max:r,expr:t}}function Bf(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 Vf(e){if(e.eat(`(`)){let t=Ff(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=Bf(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 Hf(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 Uf(e,t){return t-e}function Wf(e,t){let n=[];return r(t),n.sort(Uf);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 Gf(e){let t=Object.create(null);return n(Wf(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]);Wf(e,n).forEach(e=>{r||i.push([t,r=[]]),r.indexOf(e)==-1&&r.push(e)})})});let a=t[r.join(`,`)]=new Nf(r.indexOf(e.length-1)>-1);for(let e=0;e<i.length;e++){let r=i[e][1].sort(Uf);a.next.push({type:i[e][0],next:t[r.join(`,`)]||n(r)})}return a}}function Kf(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 qf(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 Jf(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 Yf(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 Xf(e,t){let n=Object.create(null);if(t)for(let r in t)n[r]=new $f(e,r,t[r]);return n}var Zf=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=Xf(e,n.attrs),this.defaultAttrs=qf(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==Nf.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:Jf(this.attrs,e)}create(e=null,t,n){if(this.isText)throw Error(`NodeType.create can't construct text nodes`);return new Af(this,this.computeAttrs(e),X.from(t),uf.setFrom(n))}createChecked(e=null,t,n){return t=X.from(t),this.checkContent(t),new Af(this,this.computeAttrs(e),t,uf.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 Af(this,e,t.append(i),uf.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){Yf(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:uf.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 Qf(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 $f=class{constructor(e,t,n){this.hasDefault=Object.prototype.hasOwnProperty.call(n,`default`),this.default=n.default,this.validate=typeof n.validate==`string`?Qf(e,t,n.validate):n.validate}get isRequired(){return!this.hasDefault}},ep=class e{constructor(e,t,n,r){this.name=e,this.rank=t,this.schema=n,this.spec=r,this.attrs=Xf(e,r.attrs),this.excluded=null;let i=qf(this.attrs);this.instance=i?new uf(this,i):null}create(e=null){return!e&&this.instance?this.instance:new uf(this,Jf(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){Yf(this.attrs,e,`mark`,this.name)}excludes(e){return this.excluded.indexOf(e)>-1}},tp=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=tf.from(e.nodes),t.marks=tf.from(e.marks||{}),this.nodes=Zf.compile(this.spec.nodes,this),this.marks=ep.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]=Nf.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?np(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==``?[]:np(this,n.split(` `))}this.nodeFromJSON=e=>Af.fromJSON(this,e),this.markFromJSON=e=>uf.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 Zf))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 jf(n,n.defaultAttrs,e,uf.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 np(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 rp(e){return e.tag!=null}function ip(e){return e.style!=null}var ap=class e{constructor(e,t){this.schema=e,this.rules=t,this.tags=[],this.styles=[];let n=this.matchedStyles=[];t.forEach(e=>{if(rp(e))this.tags.push(e);else if(ip(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 mp(this,t,!1);return n.addAll(e,uf.none,t.from,t.to),n.finish()}parseSlice(e,t={}){let n=new mp(this,t,!0);return n.addAll(e,uf.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(gp(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=_p(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=_p(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)))}},op={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},sp={head:!0,noscript:!0,object:!0,script:!0,style:!0,title:!0},cp={ol:!0,ul:!0},lp=1,up=2,dp=4;function fp(e,t,n){return t==null?e&&e.whitespace==`pre`?3:n&-5:(t?lp:0)|(t===`full`?up:0)}var pp=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=uf.none,this.match=i||(a&dp?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&lp)){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&&!op.hasOwnProperty(e.parentNode.nodeName.toLowerCase())}},mp=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=fp(null,t.preserveWhitespace,0)|(n?dp:0);i=r?new pp(r.type,r.attrs,uf.none,!0,t.topMatch||r.type.contentMatch,a):n?new pp(null,null,uf.none,!0,null,a):new pp(e.schema.topNodeType,null,uf.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&up?`full`:this.localPreserveWS||(r.options&lp)>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;cp.hasOwnProperty(a)&&this.parser.normalizeLists&&hp(e);let s=this.options.ruleFromNode&&this.options.ruleFromNode(e)||(o=this.parser.matchTag(e,this,n));out:if(s?s.ignore:sp.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(op.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=uf.none;for(let i of r.concat(e.marks))(t.type?t.type.allowsMarkType(i.type):vp(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=fp(e,i,a.options);a.options&dp&&a.content.length==0&&(o|=dp);let s=uf.none;return n=n.filter(t=>(a.type?a.type.allowsMarkType(t.type):vp(t.type,e))?(s=t.addToSet(s),!1):!0),this.nodes.push(new pp(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|=lp);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 hp(e){for(let t=e.firstChild,n=null;t;t=t.nextSibling){let e=t.nodeType==1?t.nodeName.toLowerCase():null;e&&cp.hasOwnProperty(e)&&n?(n.appendChild(t),t=n):e==`li`?n=t:e&&(n=null)}}function gp(e,t){return(e.matches||e.msMatchesSelector||e.webkitMatchesSelector||e.mozMatchesSelector).call(e,t)}function _p(e){let t={};for(let n in e)t[n]=e[n];return t}function vp(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 yp=class e{constructor(e,t){this.nodes=e,this.marks=t}serializeFragment(e,t={},n){n||=xp(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 xp(t).createTextNode(e.text);let{dom:n,contentDOM:r}=Tp(xp(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&&Tp(xp(n),r(e,t),null,e.attrs)}static renderSpec(e,t,n=null,r){return typeof t==`string`?{dom:e.createTextNode(t)}:Tp(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=bp(e.nodes);return t.text||=e=>e.text,t}static marksFromSchema(e){return bp(e.marks)}};function bp(e){let t={};for(let n in e){let r=e[n].spec.toDOM;r&&(t[n]=r)}return t}function xp(e){return e.document||window.document}var Sp=new WeakMap;function Cp(e){let t=Sp.get(e);return t===void 0&&Sp.set(e,t=wp(e)),t}function wp(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 Tp(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=Cp(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}=Tp(e,a,n,r);if(c.appendChild(t),i){if(s)throw RangeError(`Multiple content holes`);s=i}}}return{dom:c,contentDOM:s}}var Ep=65535,Dp=2**16;function Op(e,t){return e+t*Dp}function kp(e){return e&Ep}function Ap(e){return(e-(e&Ep))/Dp}var jp=1,Mp=2,Np=4,Pp=8,Fp=class{constructor(e,t,n){this.pos=e,this.delInfo=t,this.recover=n}get deleted(){return(this.delInfo&Pp)>0}get deletedBefore(){return(this.delInfo&5)>0}get deletedAfter(){return(this.delInfo&6)>0}get deletedAcross(){return(this.delInfo&Np)>0}},Ip=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=kp(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+Ap(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:Op(o/3,e-s),f=e==s?Mp:e==u?jp:Np;return(t<0?e!=s:e!=u)&&(f|=Pp),new Fp(a,f,d)}r+=l-c}return n?e+r:new Fp(e+r,0,null)}touches(e,t){let n=0,r=kp(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])}};Ip.empty=new Ip([]);var Lp=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 Fp(e,r,null)}},Rp=Object.create(null),zp=class{getMap(){return Ip.empty}merge(e){return null}static fromJSON(e,t){if(!t||!t.stepType)throw RangeError(`Invalid input for Step.fromJSON`);let n=Rp[t.stepType];if(!n)throw RangeError(`No step type ${t.stepType} defined`);return n.fromJSON(e,t)}static jsonID(e,t){if(e in Rp)throw RangeError(`Duplicate use of step JSON ID `+e);return Rp[e]=t,t.prototype.jsonID=e,t}},Bp=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 df)return e.fail(t.message);throw t}}};function Vp(e,t,n){let r=[];for(let i=0;i<e.childCount;i++){let a=e.child(i);a.content.size&&(a=a.copy(Vp(a.content,t,a))),a.isInline&&(a=t(a,n,i)),r.push(a)}return X.fromArray(r)}var Hp=class e extends zp{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(Vp(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 Bp.fromReplace(e,this.from,this.to,i)}invert(){return new Up(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))}};zp.jsonID(`addMark`,Hp);var Up=class e extends zp{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(Vp(t.content,e=>e.mark(this.mark.removeFromSet(e.marks)),e),t.openStart,t.openEnd);return Bp.fromReplace(e,this.from,this.to,n)}invert(){return new Hp(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))}};zp.jsonID(`removeMark`,Up);var Wp=class e extends zp{constructor(e,t){super(),this.pos=e,this.mark=t}apply(e){let t=e.nodeAt(this.pos);if(!t)return Bp.fail(`No node at mark step's position`);let n=t.type.create(t.attrs,null,this.mark.addToSet(t.marks));return Bp.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 Gp(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))}};zp.jsonID(`addNodeMark`,Wp);var Gp=class e extends zp{constructor(e,t){super(),this.pos=e,this.mark=t}apply(e){let t=e.nodeAt(this.pos);if(!t)return Bp.fail(`No node at mark step's position`);let n=t.type.create(t.attrs,null,this.mark.removeFromSet(t.marks));return Bp.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 Wp(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))}};zp.jsonID(`removeNodeMark`,Gp);var Kp=class e extends zp{constructor(e,t,n,r=!1){super(),this.from=e,this.to=t,this.slice=n,this.structure=r}apply(e){return this.structure&&Jp(e,this.from,this.to)?Bp.fail(`Structure replace would overwrite content`):Bp.fromReplace(e,this.from,this.to,this.slice)}getMap(){return new Ip([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)}};Kp.MAP_BIAS=1,zp.jsonID(`replace`,Kp);var qp=class e extends zp{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&&(Jp(e,this.from,this.gapFrom)||Jp(e,this.gapTo,this.to)))return Bp.fail(`Structure gap-replace would overwrite content`);let t=e.slice(this.gapFrom,this.gapTo);if(t.openStart||t.openEnd)return Bp.fail(`Gap is not a flat range`);let n=this.slice.insertAt(this.insert,t.content);return n?Bp.fromReplace(e,this.from,this.to,n):Bp.fail(`Content does not fit in gap`)}getMap(){return new Ip([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)}};zp.jsonID(`replaceAround`,qp);function Jp(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 Yp(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 Up(l,d,u[e])));s&&s.to==l?s.to=d:a.push(s=new Hp(l,d,r))}}),i.forEach(t=>e.step(t)),a.forEach(t=>e.step(t))}function Xp(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 ep){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 Up(t.from,t.to,t.style)))}function Zp(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 Kp(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 Up(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 Kp(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 Qp(e,t,n){return(t==0||e.canReplace(t,e.childCount))&&(n==e.childCount||e.canReplace(0,n))}function $p(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||!Qp(a,o,s))break;o&&(r=1),s<a.childCount&&(i=1)}return null}function em(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 qp(c,l,o,s,new Z(u.append(f),d,p),u.size-d,!0))}function tm(e,t,n=null,r=e){let i=rm(e,t),a=i&&im(r,t);return a?i.map(nm).concat({type:t,attrs:n}).concat(a.map(nm)):null}function nm(e){return{type:e,attrs:null}}function rm(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 im(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 am(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 qp(i,a,i,a,new Z(r,0,0),n.length,!0))}function om(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)&&lm(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&&cm(e,t,n,a),Zp(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 qp(c,l,c+1,l-1,new Z(X.from(r.create(o,null,t.marks)),0,0),1,!0)),i===!0&&sm(e,t,n,a),!1}})}function sm(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 cm(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 lm(e,t,n){let r=e.resolve(t),i=r.index();return r.parent.canReplaceWith(i,i+1,n)}function um(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 qp(t,t+a.nodeSize,t+1,t+a.nodeSize-1,new Z(X.from(o),0,0),1,!0))}function dm(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 fm(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 Kp(t,t,new Z(a.append(o),n,n),!0))}function pm(e,t){let n=e.resolve(t),r=n.index();return hm(n.nodeBefore,n.nodeAfter)&&n.parent.canReplace(r,r+1)}function mm(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 hm(e,t){return!!(e&&t&&!e.isLeaf&&mm(e,t))}function gm(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&&hm(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 _m(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);cm(e,r.node(),r.before(),s)}o.inlineContent&&Zp(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 Kp(l,c.map(t+n,-1),Z.empty,!0)),r===!0){let t=e.doc.resolve(l);sm(e,t.node(),t.before(),e.steps.length)}return e}function vm(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 ym(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 bm(e,t,n=t,r=Z.empty){if(t==n&&!r.size)return null;let i=e.resolve(t),a=e.resolve(n);return xm(i,a,r)?new Kp(t,n,r):new Sm(i,a,r).fit()}function xm(e,t,n){return!n.openStart&&!n.openEnd&&e.start()==t.start()&&e.parent.canReplace(e.index(),t.index(),n.content)}var Sm=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 qp(n.pos,e,this.$to.pos,this.$to.end(),s,t):s.size||n.pos!=this.$to.pos?new Kp(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=Tm(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=Tm(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=Tm(e,t);if(r.childCount<=1&&t>0){let i=e.size-t<=t+r.size;this.unplaced=new Z(Cm(e,t-1,1),t-1,i?t-1:n)}else this.unplaced=new Z(Cm(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(Em(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=wm(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(Cm(a.content,e-1,1),e-1,f<0?a.openEnd:e-1):new Z(Cm(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||!Dm(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=Dm(e,t,r,n,i);if(a){for(let n=t-1;n>=0;n--){let{match:t,type:r}=this.frontier[n],i=Dm(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=wm(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=wm(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=wm(this.placed,this.frontier.length,e))}};function Cm(e,t,n){return t==0?e.cutByIndex(n,e.childCount):e.replaceChild(0,e.firstChild.copy(Cm(e.firstChild.content,t-1,n)))}function wm(e,t,n){return t==0?e.append(n):e.replaceChild(e.childCount-1,e.lastChild.copy(wm(e.lastChild.content,t-1,n)))}function Tm(e,t){for(let n=0;n<t;n++)e=e.firstChild.content;return e}function Em(e,t,n){if(t<=0)return e;let r=e.content;return t>1&&(r=r.replaceChild(0,Em(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 Dm(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&&!Om(n,a.content,o)?s:null}function Om(e,t,n){for(let r=n;r<t.childCount;r++)if(!e.allowsMarks(t.child(r).marks))return!0;return!1}function km(e){return e.spec.defining||e.spec.definingForContent}function Am(e,t,n,r){if(!r.size)return e.deleteRange(t,n);let i=e.doc.resolve(t),a=e.doc.resolve(n);if(xm(i,a,r))return e.step(new Kp(t,n,r));let o=Pm(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=km(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(jm(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 jm(e,t,n,r,i){if(t<n){let i=e.firstChild;e=e.replaceChild(0,i.copy(jm(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 Mm(e,t,n,r){if(!r.isInline&&t==n&&e.doc.resolve(t).parent.content.size){let i=vm(e.doc,t,r.type);i!=null&&(t=n=i)}e.replaceRange(t,n,new Z(X.from(r),0,0))}function Nm(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=Pm(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 Pm(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 Fm=class e extends zp{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 Bp.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 Bp.fromReplace(e,this.pos,this.pos+1,new Z(X.from(r),0,+!t.isLeaf))}getMap(){return Ip.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)}};zp.jsonID(`attr`,Fm);var Im=class e extends zp{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 Bp.ok(n)}getMap(){return Ip.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)}};zp.jsonID(`docAttr`,Im);var Lm=class extends Error{};Lm=function e(t){let n=Error.call(this,t);return n.__proto__=e.prototype,n},Lm.prototype=Object.create(Error.prototype),Lm.prototype.constructor=Lm,Lm.prototype.name=`TransformError`;var Rm=class{constructor(e){this.doc=e,this.steps=[],this.docs=[],this.mapping=new Lp}get before(){return this.docs.length?this.docs[0]:this.doc}step(e){let t=this.maybeStep(e);if(t.failed)throw new Lm(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=bm(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 Am(this,e,t,n),this}replaceRangeWith(e,t,n){return Mm(this,e,t,n),this}deleteRange(e,t){return Nm(this,e,t),this}lift(e,t){return em(this,e,t),this}join(e,t=1){return _m(this,e,t),this}wrap(e,t){return am(this,e,t),this}setBlockType(e,t=e,n,r=null){return om(this,e,t,n,r),this}setNodeMarkup(e,t,n=null,r){return um(this,e,t,n,r),this}setNodeAttribute(e,t,n){return this.step(new Fm(e,t,n)),this}setDocAttribute(e,t){return this.step(new Im(e,t)),this}addNodeMark(e,t){return this.step(new Wp(e,t)),this}removeNodeMark(e,t){let n=this.doc.nodeAt(e);if(!n)throw RangeError(`No node at position `+e);if(t instanceof uf)t.isInSet(n.marks)&&this.step(new Gp(e,t));else{let r=n.marks,i,a=[];for(;i=t.isInSet(r);)a.push(new Gp(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 fm(this,e,t,n),this}addMark(e,t,n){return Yp(this,e,t,n),this}removeMark(e,t,n){return Xp(this,e,t,n),this}clearIncompatible(e,t,n){return Zp(this,e,t,n),this}},zm=Object.create(null),Bm=class{constructor(e,t,n){this.$anchor=e,this.$head=t,this.ranges=n||[new Vm(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&&Xm(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),Xm(e,n,t.isInline?-1:1))}}static findFrom(e,t,n=!1){let r=e.parent.inlineContent?new Wm(e):Ym(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?Ym(e.node(0),e.node(r),e.before(r+1),e.index(r),t,n):Ym(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 qm(e.node(0))}static atStart(e){return Ym(e,e,0,0,1)||new qm(e)}static atEnd(e){return Ym(e,e,e.content.size,e.childCount,-1)||new qm(e)}static fromJSON(e,t){if(!t||!t.type)throw RangeError(`Invalid input for Selection.fromJSON`);let n=zm[t.type];if(!n)throw RangeError(`No selection type ${t.type} defined`);return n.fromJSON(e,t)}static jsonID(e,t){if(e in zm)throw RangeError(`Duplicate use of selection JSON ID `+e);return zm[e]=t,t.prototype.jsonID=e,t}getBookmark(){return Wm.between(this.$anchor,this.$head).getBookmark()}};Bm.prototype.visible=!0;var Vm=class{constructor(e,t){this.$from=e,this.$to=t}},Hm=!1;function Um(e){!Hm&&!e.parent.inlineContent&&(Hm=!0,console.warn(`TextSelection endpoint not pointing into a node with inline content (`+e.parent.type.name+`)`))}var Wm=class e extends Bm{constructor(e,t=e){Um(e),Um(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 Bm.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 Gm(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=Bm.findFrom(n,r,!0)||Bm.findFrom(n,-r,!0);if(e)n=e.$head;else return Bm.near(n,r)}return t.parent.inlineContent||(i==0?t=n:(t=(Bm.findFrom(t,-r,!0)||Bm.findFrom(t,r,!0)).$anchor,t.pos<n.pos!=i<0&&(t=n))),new e(t,n)}};Bm.jsonID(`text`,Wm);var Gm=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 Wm.between(e.resolve(this.anchor),e.resolve(this.head))}},Q=class e extends Bm{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?Bm.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 Km(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,Bm.jsonID(`node`,Q);var Km=class e{constructor(e){this.anchor=e}map(t){let{deleted:n,pos:r}=t.mapResult(this.anchor);return n?new Gm(r,r):new e(r)}resolve(e){let t=e.resolve(this.anchor),n=t.nodeAfter;return n&&Q.isSelectable(n)?new Q(t):Bm.near(t)}},qm=class e extends Bm{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=Bm.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 Jm}};Bm.jsonID(`all`,qm);var Jm={map(){return this},resolve(e){return new qm(e)}};function Ym(e,t,n,r,i,a=!1){if(t.inlineContent)return Wm.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=Ym(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 Xm(e,t,n){let r=e.steps.length-1;if(r<t)return;let i=e.steps[r];if(!(i instanceof Kp||i instanceof qp))return;let a=e.mapping.maps[r],o;a.forEach((e,t,n,r)=>{o??=r}),e.setSelection(Bm.near(e.doc.resolve(o),n))}var Zm=1,Qm=2,$m=4,eh=class extends Rm{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|Zm)&-3,this.storedMarks=null,this}get selectionSet(){return(this.updated&Zm)>0}setStoredMarks(e){return this.storedMarks=e,this.updated|=Qm,this}ensureMarks(e){return uf.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&Qm)>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)||uf.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(Bm.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|=$m,this}get scrolledIntoView(){return(this.updated&$m)>0}};function th(e,t){return!t||!e?e:e.bind(t)}var nh=class{constructor(e,t,n){this.name=e,this.init=th(t.init,n),this.apply=th(t.apply,n)}},rh=[new nh(`doc`,{init(e){return e.doc||e.schema.topNodeType.createAndFill()},apply(e){return e.doc}}),new nh(`selection`,{init(e,t){return e.selection||Bm.atStart(t.doc)},apply(e){return e.selection}}),new nh(`storedMarks`,{init(e){return e.storedMarks||null},apply(e,t,n,r){return r.selection.$cursor?e.storedMarks:null}}),new nh(`scrollToSelection`,{init(){return 0},apply(e,t){return e.scrolledIntoView?t+1:t}})],ih=class{constructor(e,t){this.schema=e,this.plugins=[],this.pluginsByKey=Object.create(null),this.fields=rh.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 nh(e.key,e.spec.state,e))})}},ah=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 eh(this)}static create(t){let n=new ih(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 ih(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 ih(t.schema,t.plugins),a=new e(i);return i.fields.forEach(e=>{if(e.name==`doc`)a.doc=Af.fromJSON(t.schema,n.doc);else if(e.name==`selection`)a.selection=Bm.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 oh(e,t,n){for(let r in e){let i=e[r];i instanceof Function?i=i.bind(t):r==`handleDOMEvents`&&(i=oh(i,t,{})),n[r]=i}return n}var sh=class{constructor(e){this.spec=e,this.props={},e.props&&oh(e.props,this,this.props),this.key=e.key?e.key.key:lh(`plugin`)}getState(e){return e[this.key]}},ch=Object.create(null);function lh(e){return e in ch?e+`$`+ ++ch[e]:(ch[e]=0,e+`$`)}var uh=class{constructor(e=`key`){this.key=lh(e)}get(e){return e.config.pluginsByKey[this.key]}getState(e){return e[this.key]}},dh=function(e){for(var t=0;;t++)if(e=e.previousSibling,!e)return t},fh=function(e){let t=e.assignedSlot||e.parentNode;return t&&t.nodeType==11?t.host:t},ph=null,mh=function(e,t,n){let r=ph||=document.createRange();return r.setEnd(e,n??e.nodeValue.length),r.setStart(e,t||0),r},hh=function(){ph=null},gh=function(e,t,n,r){return n&&(vh(e,t,n,r,-1)||vh(e,t,n,r,1))},_h=/^(img|br|input|textarea|hr)$/i;function vh(e,t,n,r,i){for(;;){if(e==n&&t==r)return!0;if(t==(i<0?0:yh(e))){let n=e.parentNode;if(!n||n.nodeType!=1||Ch(e)||_h.test(e.nodeName)||e.contentEditable==`false`)return!1;t=dh(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?yh(e):0}else return!1}}function yh(e){return e.nodeType==3?e.nodeValue.length:e.childNodes.length}function bh(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=yh(e)}else if(e.parentNode&&!Ch(e))t=dh(e),e=e.parentNode;else return null}}function xh(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&&!Ch(e))t=dh(e)+1,e=e.parentNode;else return null}}function Sh(e,t,n){for(let r=t==0,i=t==yh(e);r||i;){if(e==n)return!0;let t=dh(e);if(e=e.parentNode,!e)return!1;r&&=t==0,i&&=t==yh(e)}}function Ch(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 wh=function(e){return e.focusNode&&gh(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset)};function Th(e,t){let n=document.createEvent(`Event`);return n.initEvent(`keydown`,!0,!0),n.keyCode=e,n.key=n.code=t,n}function Eh(e){let t=e.activeElement;for(;t&&t.shadowRoot;)t=t.shadowRoot.activeElement;return t}function Dh(e,t,n){if(e.caretPositionFromPoint)try{let r=e.caretPositionFromPoint(t,n);if(r)return{node:r.offsetNode,offset:Math.min(yh(r.offsetNode),r.offset)}}catch{}if(e.caretRangeFromPoint){let r=e.caretRangeFromPoint(t,n);if(r)return{node:r.startContainer,offset:Math.min(yh(r.startContainer),r.startOffset)}}}var Oh=typeof navigator<`u`?navigator:null,kh=typeof document<`u`?document:null,Ah=Oh&&Oh.userAgent||``,jh=/Edge\/(\d+)/.exec(Ah),Mh=/MSIE \d/.exec(Ah),Nh=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(Ah),Ph=!!(Mh||Nh||jh),Fh=Mh?document.documentMode:Nh?+Nh[1]:jh?+jh[1]:0,Ih=!Ph&&/gecko\/(\d+)/i.test(Ah);Ih&&+(/Firefox\/(\d+)/.exec(Ah)||[0,0])[1];var Lh=!Ph&&/Chrome\/(\d+)/.exec(Ah),Rh=!!Lh,zh=Lh?+Lh[1]:0,Bh=!Ph&&!!Oh&&/Apple Computer/.test(Oh.vendor),Vh=Bh&&(/Mobile\/\w+/.test(Ah)||!!Oh&&Oh.maxTouchPoints>2),Hh=Vh||(Oh?/Mac/.test(Oh.platform):!1),Uh=Oh?/Win/.test(Oh.platform):!1,Wh=/Android \d/.test(Ah),Gh=!!kh&&`webkitFontSmoothing`in kh.documentElement.style,Kh=Gh?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function qh(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 Jh(e,t){return typeof e==`number`?e:e[t]}function Yh(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 Xh(e,t,n){if(!dg(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=fh(o);continue}let e=o,n=e==a.body,s=n?qh(a):Yh(e),c=0,l=0;if(t.top<s.top+Jh(r,`top`)?l=-(s.top-t.top+Jh(i,`top`)):t.bottom>s.bottom-Jh(r,`bottom`)&&(l=t.bottom-t.top>s.bottom-s.top?t.top+Jh(i,`top`)-s.top:t.bottom-s.bottom+Jh(i,`bottom`)),t.left<s.left+Jh(r,`left`)?c=-(s.left-t.left+Jh(i,`left`)):t.right>s.right-Jh(r,`right`)&&(c=t.right-s.right+Jh(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:fh(o)}}function Zh(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:Qh(e.dom)}}function Qh(e){let t=[],n=e.ownerDocument;for(let r=e;r&&(t.push({dom:r,top:r.scrollTop,left:r.scrollLeft}),e!=n);r=fh(r));return t}function $h({refDOM:e,refTop:t,stack:n}){let r=e?e.getBoundingClientRect().top:0;eg(n,r==0?0:r-t)}function eg(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 tg=null;function ng(e){if(e.setActive)return e.setActive();if(tg)return e.focus(tg);let t=Qh(e);e.focus(tg==null?{get preventScroll(){return tg={preventScroll:!0},!0}}:void 0),tg||(tg=!1,eg(t,0))}function rg(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=mh(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?ig(n,i):!n||r&&n.nodeType==1?{node:e,offset:a}:rg(n,i)}function ig(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=fg(r,1);if(n.top!=n.bottom&&ag(t,n)){i={node:e,offset:a+ +(t.left>=(n.left+n.right)/2)};break}}return r.detach(),i||{node:e,offset:0}}function ag(e,t){return e.left>=t.left-1&&e.left<=t.right+1&&e.top>=t.top-1&&e.top<=t.bottom+1}function og(e,t){let n=e.parentNode;return n&&/^li$/i.test(n.nodeName)&&t.left<e.getBoundingClientRect().left?n:e}function sg(e,t,n){let{node:r,offset:i}=rg(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 cg(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 lg(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(ag(t,i))return lg(n,t,i)}}if((a=(a+1)%r)==i)break}return e}function ug(e,t){let n=e.dom.ownerDocument,r,i=0,a=Dh(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(!ag(t,n)||(o=lg(e.dom,t,n),!o))return null}if(Bh)for(let e=o;r&&e;e=fh(e))e.draggable&&(r=void 0);if(o=og(o,t),r){if(Ih&&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;Gh&&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=cg(e,r,i,t))}s??=sg(e,o,t);let c=e.docView.nearestDesc(o,!0);return{pos:s,inside:c?c.posAtStart-c.border:-1}}function dg(e){return e.top<e.bottom||e.left<e.right}function fg(e,t){let n=e.getClientRects();if(n.length){let e=n[t<0?0:n.length-1];if(dg(e))return e}return Array.prototype.find.call(n,dg)||e.getBoundingClientRect()}var pg=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;function mg(e,t,n){let{node:r,offset:i,atom:a}=e.docView.domFromPos(t,n<0?-1:1),o=Gh||Ih;if(r.nodeType==3)if(o&&(pg.test(r.nodeValue)||(n<0?!i:i==r.nodeValue.length))){let e=fg(mh(r,i,i),n);if(Ih&&i&&/\s/.test(r.nodeValue[i-1])&&i<r.nodeValue.length){let t=fg(mh(r,i-1,i-1),-1);if(t.top==e.top){let n=fg(mh(r,i,i+1),-1);if(n.top!=e.top)return hg(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++,hg(fg(mh(r,e,t),a),a<0)}if(!e.state.doc.resolve(t-(a||0)).parent.inlineContent){if(a==null&&i&&(n<0||i==yh(r))){let e=r.childNodes[i-1];if(e.nodeType==1)return gg(e.getBoundingClientRect(),!1)}if(a==null&&i<yh(r)){let e=r.childNodes[i];if(e.nodeType==1)return gg(e.getBoundingClientRect(),!0)}return gg(r.getBoundingClientRect(),n>=0)}if(a==null&&i&&(n<0||i==yh(r))){let e=r.childNodes[i-1],t=e.nodeType==3?mh(e,yh(e)-+!o):e.nodeType==1&&(e.nodeName!=`BR`||!e.nextSibling)?e:null;if(t)return hg(fg(t,1),!1)}if(a==null&&i<yh(r)){let e=r.childNodes[i];for(;e.pmViewDesc&&e.pmViewDesc.ignoreForCoords;)e=e.nextSibling;let t=e?e.nodeType==3?mh(e,0,+!o):e.nodeType==1?e:null:null;if(t)return hg(fg(t,-1),!0)}return hg(fg(r.nodeType==3?mh(r):r,-n),n>=0)}function hg(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 gg(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 _g(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 vg(e,t,n){let r=t.selection,i=n==`up`?r.$from:r.$to;return _g(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=mg(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=mh(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 yg=/[\u0590-\u08ac]/;function bg(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?!yg.test(r.parent.textContent)||!s.modify?n==`left`||n==`backward`?a:o:_g(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 xg=null,Sg=null,Cg=!1;function wg(e,t,n){return xg==t&&Sg==n?Cg:(xg=t,Sg=n,Cg=n==`up`||n==`down`?vg(e,t,n):bg(e,t,n))}var Tg=0,Eg=1,Dg=2,Og=3,kg=class{constructor(e,t,n,r){this.parent=e,this.children=t,this.dom=n,this.contentDOM=r,this.dirty=Tg,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>dh(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 Ig){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 Ag&&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?dh(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?dh(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=dh(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=dh(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((Ih||Bh)&&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:dh(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(Ih&&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&&Bh)&&gh(o.node,o.offset,l.anchorNode,l.anchorOffset)&&gh(s.node,s.offset,l.focusNode,l.focusOffset))return;let d=!1;if((c.extend||e==t)&&!(u&&Ih)){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?Dg:Eg,e==r&&t==o&&(i.contentLost||i.dom.parentNode!=this.contentDOM)?i.dirty=Og:i.markDirty(e-r,t-r);return}else i.dirty=i.dom==i.contentDOM&&i.dom.parentNode==this.contentDOM&&!i.children.length?Dg:Og}n=a}this.dirty=Dg}markParentsDirty(){let e=1;for(let t=this.parent;t;t=t.parent,e++){let n=e==1?Dg:Eg;t.dirty<n&&(t.dirty=n)}}get domAtom(){return!1}get ignoreForCoords(){return!1}get ignoreForSelection(){return!1}isText(e){return!1}},Ag=class extends kg{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==Tg&&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}},jg=class extends kg{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}},Mg=class e extends kg{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=yp.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&Og||this.mark.type.spec.reparseInView?null:{mark:this.mark.type.name,attrs:this.mark.attrs,contentElement:this.contentDOM}}matchesMark(e){return this.dirty!=Og&&this.mark.eq(e)}markDirty(e,t){if(super.markDirty(e,t),this.dirty!=Tg){let e=this.parent;for(;!e.node;)e=e.parent;e.dirty<this.dirty&&(e.dirty=this.dirty),this.dirty=Tg}}slice(t,n,r){let i=e.create(this.parent,this.mark,!0,r),a=this.children,o=this.size;n<o&&(a=$g(a,n,o,r)),t>0&&(a=$g(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()}},Ng=class e extends kg{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=yp.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=Wg(u,r,n),l?c=new Lg(t,n,r,i,u,d||null,f,l):n.isText?new Fg(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==Tg&&e.eq(this.node)&&Gg(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 qg(this,a&&a.node,e);Xg(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?uf.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==Dg)&&(a&&this.protectLocalComposition(e,a),Rg(this.contentDOM,this.children,e),Vh&&Zg(this.dom))}localCompositionInfo(e,t){let{from:n,to:r}=e.state.selection;if(!(e.state.selection instanceof Wm)||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=Qg(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 jg(this,i,t,r);e.input.compositionNodes.push(a),this.children=$g(this.children,n,n+r.length,e,a)}update(e,t,n,r){return this.dirty==Og||!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=Tg}updateOuterDeco(e){if(Gg(e,this.outerDeco))return;let t=this.nodeDOM.nodeType!=1,n=this.dom;this.dom=Hg(this.dom,this.nodeDOM,Vg(this.outerDeco,this.node,t),Vg(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 Pg(e,t,n,r,i){Wg(r,t,e);let a=new Ng(void 0,e,t,n,r,r,r);return a.contentDOM&&a.updateChildren(i,0),a}var Fg=class e extends Ng{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==Og||this.dirty!=Tg&&!this.inParent()||!e.sameMarkup(this.node)?!1:(this.updateOuterDeco(t),(this.dirty!=Tg||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=Tg,!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=Og)}get domAtom(){return!1}isText(e){return this.node.text==e}},Ig=class extends kg{parseRule(){return{ignore:!0}}matchesHack(e){return this.dirty==Tg&&this.dom.nodeName==e}get domAtom(){return!0}get ignoreForCoords(){return this.dom.nodeName==`IMG`}},Lg=class extends Ng{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==Og)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 Rg(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=Kg(r),i=!0;r=r.nextSibling}else i=!0,e.insertBefore(s,r);if(o instanceof Mg){let t=r?r.previousSibling:e.lastChild;Rg(o.contentDOM,o.children,n),r=t?t.nextSibling:e.firstChild}}for(;r;)r=Kg(r),i=!0;i&&n.trackWrites==e&&(n.trackWrites=null)}var zg=function(e){e&&(this.nodeName=e)};zg.prototype=Object.create(null);var Bg=[new zg];function Vg(e,t,n){if(e.length==0)return Bg;let r=n?Bg[0]:new zg,i=[r];for(let a=0;a<e.length;a++){let o=e[a].type.attrs;if(o){o.nodeName&&i.push(r=new zg(o.nodeName));for(let e in o){let a=o[e];a!=null&&(n&&i.length==1&&i.push(r=new zg(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 Hg(e,t,n,r){if(n==Bg&&r==Bg)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=Bg[0],i=t)}Ug(i,o||Bg[0],a)}return i}function Ug(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 Wg(e,t,n){return Hg(e,e,Bg,Vg(t,n,e.nodeType!=1))}function Gg(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 Kg(e){let t=e.nextSibling;return e.parentNode.removeChild(e),t}var qg=class{constructor(e,t,n){this.lock=t,this.view=n,this.index=0,this.stack=[],this.changed=!1,this.top=e,this.preMatch=Jg(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=Tg,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 Mg&&t.dirty!=Og&&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=Mg.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==Og&&a.dom==a.contentDOM&&(a.dirty=Dg),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 Ng){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!=Og&&Gg(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=Dg,u.updateChildren(r,a+1),u.dirty=Tg),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)||!Gg(n,e.outerDeco)||!r.eq(e.innerDeco))return null;let o=Ng.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=Ng.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 Ag(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 Mg;)t=e,e=t.children[t.children.length-1];(!e||!(e instanceof Fg)||/\n$/.test(e.node.text)||this.view.requiresGeckoHackNode&&/\s$/.test(e.node.text))&&((Bh||Rh)&&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 Ig(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 Jg(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 Mg)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 Yg(e,t){return e.type.side-t.type.side}function Xg(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(Yg);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 Zg(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 Qg(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 $g(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 e_(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(wh(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&&Sh(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=d_(e,u,s,n)}return l}function t_(e){return e.editable?e.hasFocus():p_(e)&&document.activeElement&&document.activeElement.contains(e.dom)}function n_(e,t=!1){let n=e.state.selection;if(l_(e,n),!t_(e))return;let r=e.input.mouseDown;if(!t&&Rh&&r){let t=e.domSelectionRange(),n=e.domObserver.currentSelection;if(t.anchorNode&&n.anchorNode&&gh(t.anchorNode,t.anchorOffset,n.anchorNode,n.anchorOffset)&&r.delaySelUpdate()){e.domObserver.setCurSelection();return}}if(e.domObserver.disconnectSelection(),e.cursorWrapper)c_(e);else{let{anchor:r,head:i}=n,a,o;r_&&!(n instanceof Wm)&&(n.$from.parent.inlineContent||(a=i_(e,n.from)),!n.empty&&!n.$from.parent.inlineContent&&(o=i_(e,n.to))),e.docView.setSelection(r,i,e,t),r_&&(a&&o_(a),o&&o_(o)),n.visible?e.dom.classList.remove(`ProseMirror-hideselection`):(e.dom.classList.add(`ProseMirror-hideselection`),`onselectionchange`in document&&s_(e))}e.domObserver.setCurSelection(),e.domObserver.connectSelection()}var r_=Bh||Rh&&zh<63;function i_(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(Bh&&i&&i.contentEditable==`false`)return a_(i);if((!i||i.contentEditable==`false`)&&(!a||a.contentEditable==`false`)){if(i)return a_(i);if(a)return a_(a)}}function a_(e){return e.contentEditable=`true`,Bh&&e.draggable&&(e.draggable=!1,e.wasDraggable=!0),e}function o_(e){e.contentEditable=`false`,e.wasDraggable&&=(e.draggable=!0,null)}function s_(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(()=>{(!t_(e)||e.state.selection.visible)&&e.dom.classList.remove(`ProseMirror-hideselection`)},20))})}function c_(e){let t=e.domSelection();if(!t)return;let n=e.cursorWrapper.dom,r=n.nodeName==`IMG`;r?t.collapse(n.parentNode,dh(n)+1):t.collapse(n,0),!r&&!e.state.selection.visible&&Ph&&Fh<=11&&(n.disabled=!0,n.disabled=!1)}function l_(e,t){if(t instanceof Q){let n=e.docView.descAt(t.from);n!=e.lastSelectedViewDesc&&(u_(e),n&&n.selectNode(),e.lastSelectedViewDesc=n)}else u_(e)}function u_(e){e.lastSelectedViewDesc&&=(e.lastSelectedViewDesc.parent&&e.lastSelectedViewDesc.deselectNode(),void 0)}function d_(e,t,n,r){return e.someProp(`createSelectionBetween`,r=>r(e,t,n))||Wm.between(t,n,r)}function f_(e){return e.editable&&!e.hasFocus()?!1:p_(e)}function p_(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 m_(e){let t=e.docView.domFromPos(e.state.selection.anchor,0),n=e.domSelectionRange();return gh(t.node,t.offset,n.anchorNode,n.anchorOffset)}function h_(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&&Bm.findFrom(a,t)}function g_(e,t){return e.dispatch(e.state.tr.setSelection(t).scrollIntoView()),!0}function __(e,t,n){let r=e.state.selection;if(r instanceof Wm){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 g_(e,new Wm(r.$anchor,a))}else if(!r.empty)return!1;else if(e.endOfTextblock(t>0?`forward`:`backward`)){let n=h_(e.state,t);return n&&n instanceof Q?g_(e,n):!1}else if(!(Hh&&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)?g_(e,new Q(t<0?e.state.doc.resolve(n.pos-i.nodeSize):n)):Gh?g_(e,new Wm(e.state.doc.resolve(t<0?o:o+i.nodeSize))):!1:!1}}else if(r instanceof Q&&r.node.isInline)return g_(e,new Wm(t>0?r.$to:r.$from));else{let n=h_(e.state,t);return n?g_(e,n):!1}}function v_(e){return e.nodeType==3?e.nodeValue.length:e.childNodes.length}function y_(e,t){let n=e.pmViewDesc;return n&&n.size==0&&(t<0||e.nextSibling||e.nodeName!=`BR`)}function b_(e,t){return t<0?x_(e):S_(e)}function x_(e){let t=e.domSelectionRange(),n=t.focusNode,r=t.focusOffset;if(!n)return;let i,a,o=!1;for(Ih&&n.nodeType==1&&r<v_(n)&&y_(n.childNodes[r],-1)&&(o=!0);;)if(r>0){if(n.nodeType!=1)break;{let e=n.childNodes[r-1];if(y_(e,-1))i=n,a=--r;else if(e.nodeType==3)n=e,r=n.nodeValue.length;else break}}else if(C_(n))break;else{let t=n.previousSibling;for(;t&&y_(t,-1);)i=n.parentNode,a=dh(t),t=t.previousSibling;if(t)n=t,r=v_(n);else{if(n=n.parentNode,n==e.dom)break;r=0}}o?E_(e,n,r):i&&E_(e,i,a)}function S_(e){let t=e.domSelectionRange(),n=t.focusNode,r=t.focusOffset;if(!n)return;let i=v_(n),a,o;for(;;)if(r<i){if(n.nodeType!=1)break;let e=n.childNodes[r];if(y_(e,1))a=n,o=++r;else break}else if(C_(n))break;else{let t=n.nextSibling;for(;t&&y_(t,1);)a=t.parentNode,o=dh(t)+1,t=t.nextSibling;if(t)n=t,r=0,i=v_(n);else{if(n=n.parentNode,n==e.dom)break;r=i=0}}a&&E_(e,a,o)}function C_(e){let t=e.pmViewDesc;return t&&t.node&&t.node.isBlock}function w_(e,t){for(;e&&t==e.childNodes.length&&!Ch(e);)t=dh(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 T_(e,t){for(;e&&!t&&!Ch(e);)t=dh(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 E_(e,t,n){if(t.nodeType!=3){let e,r;(r=w_(t,n))?(t=r,n=0):(e=T_(t,n))&&(t=e,n=e.nodeValue.length)}let r=e.domSelection();if(!r)return;if(wh(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&&n_(e)},50)}function D_(e,t){let n=e.state.doc.resolve(t);if(!(Rh||Uh)&&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 O_(e,t,n){let r=e.state.selection;if(r instanceof Wm&&!r.empty||n.indexOf(`s`)>-1||Hh&&n.indexOf(`m`)>-1)return!1;let{$from:i,$to:a}=r;if(!i.parent.inlineContent||e.endOfTextblock(t<0?`up`:`down`)){let n=h_(e.state,t);if(n&&n instanceof Q)return g_(e,n)}if(!i.parent.inlineContent){let n=t<0?i:a,o=r instanceof qm?Bm.near(n,t):Bm.findFrom(n,t);return o?g_(e,o):!1}return!1}function k_(e,t){if(!(e.state.selection instanceof Wm))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 A_(e,t,n){e.domObserver.stop(),t.contentEditable=n,e.domObserver.start()}function j_(e){if(!Bh||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;A_(e,n,`true`),setTimeout(()=>A_(e,n,`false`),20)}return!1}function M_(e){let t=``;return e.ctrlKey&&(t+=`c`),e.metaKey&&(t+=`m`),e.altKey&&(t+=`a`),e.shiftKey&&(t+=`s`),t}function N_(e,t){let n=t.keyCode,r=M_(t);if(n==8||Hh&&n==72&&r==`c`)return k_(e,-1)||b_(e,-1);if(n==46&&!t.shiftKey||Hh&&n==68&&r==`c`)return k_(e,1)||b_(e,1);if(n==13||n==27)return!0;if(n==37||Hh&&n==66&&r==`c`){let t=n==37?D_(e,e.state.selection.from)==`ltr`?-1:1:-1;return __(e,t,r)||b_(e,t)}else if(n==39||Hh&&n==70&&r==`c`){let t=n==39?D_(e,e.state.selection.from)==`ltr`?1:-1:1;return __(e,t,r)||b_(e,t)}else if(n==38||Hh&&n==80&&r==`c`)return O_(e,-1,r)||b_(e,-1);else if(n==40||Hh&&n==78&&r==`c`)return j_(e)||O_(e,1,r)||b_(e,1);else if(r==(Hh?`m`:`c`)&&(n==66||n==73||n==89||n==90))return!0;return!1}function P_(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`)||yp.fromSchema(e.state.schema),s=W_(),c=s.createElement(`div`);c.appendChild(o.serializeFragment(r,{document:s}));let l=c.firstChild,u,d=0;for(;l&&l.nodeType==1&&(u=U_[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 F_(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=yp.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=q_(n),Gh&&J_(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`)||ap.fromSchema(e.state.schema)).parseSlice(o,{preserveWhitespace:!!(c||u),context:i,ruleFromNode(e){return e.nodeName==`BR`&&!e.nextSibling&&e.parentNode&&!I_.test(e.parentNode.nodeName)?{ignore:!0}:null}}),u)s=Y_(H_(s,+u[1],+u[2]),u[4]);else if(s=Z.maxOpen(L_(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=H_(s,e,t)}return e.someProp(`transformPasted`,t=>{s=t(s,e,c)}),s}var I_=/^(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 L_(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&&z_(t,i,e,a[a.length-1],0))a[a.length-1]=n;else{a.length&&(a[a.length-1]=B_(a[a.length-1],i.length));let n=R_(e,t);a.push(n),r=r.matchType(n.type),i=t}}),a)return X.from(a)}return e}function R_(e,t,n=0){for(let r=t.length-1;r>=n;r--)e=t[r].create(null,X.from(e));return e}function z_(e,t,n,r,i){if(i<e.length&&i<t.length&&e[i]==t[i]){let a=z_(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(R_(n,e,i+1))))}}function B_(e,t){if(t==0)return e;let n=e.content.replaceChild(e.childCount-1,B_(e.lastChild,t-1)),r=e.contentMatchAt(e.childCount).fillBefore(X.empty,!0);return e.copy(n.append(r))}function V_(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=V_(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 H_(e,t,n){return t<e.openStart&&(e=new Z(V_(e.content,-1,t,e.openStart,0,e.openEnd),t,e.openEnd)),n<e.openEnd&&(e=new Z(V_(e.content,1,n,e.openEnd,0,0),e.openStart,n)),e}var U_={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 W_(){return document.implementation.createHTMLDocument(`title`)}var G_=null;function K_(e){let t=window.trustedTypes;return t?(G_||=t.defaultPolicy||t.createPolicy(`ProseMirrorClipboard`,{createHTML:e=>e}),G_.createHTML(e)):e}function q_(e){let t=/^(\s*<meta [^>]*>)*/.exec(e);t&&(e=e.slice(t[0].length));let n=W_(),r=n.body,i=/<([a-z][^>\s]+)/i.exec(e),a;if((a=i&&U_[i[1].toLowerCase()])&&(e=a.map(e=>`<`+e+`>`).join(``)+e+a.map(e=>`</`+e+`>`).reverse().join(``)),r.innerHTML=K_(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 J_(e){let t=e.querySelectorAll(Rh?`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 Y_(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 X_={},Z_={},Q_={touchstart:!0,touchmove:!0},$_=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 ev(e){for(let t in X_){let n=X_[t];e.dom.addEventListener(t,e.input.eventHandlers[t]=t=>{av(e,t)&&!iv(e,t)&&(e.editable||!(t.type in Z_))&&n(e,t)},Q_[t]?{passive:!0}:void 0)}Bh&&e.dom.addEventListener(`input`,()=>null),rv(e)}function tv(e,t){e.input.lastSelectionOrigin=t,e.input.lastSelectionTime=Date.now()}function nv(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 rv(e){e.someProp(`handleDOMEvents`,t=>{for(let n in t)e.input.eventHandlers[n]||e.dom.addEventListener(n,e.input.eventHandlers[n]=t=>iv(e,t))})}function iv(e,t){return e.someProp(`handleDOMEvents`,n=>{let r=n[t.type];return r?r(e,t)||t.defaultPrevented:!1})}function av(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 ov(e,t){!iv(e,t)&&X_[t.type]&&(e.editable||!(t.type in Z_))&&X_[t.type](e,t)}Z_.keydown=(e,t)=>{let n=t;if(e.input.shiftKey=n.keyCode==16||n.shiftKey,!Cv(e)&&(e.input.lastKeyCode=n.keyCode,e.input.lastKeyCodeTime=Date.now(),!(Wh&&Rh&&n.keyCode==13)))if(n.keyCode!=229&&e.domObserver.forceFlush(),Vh&&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,Th(13,`Enter`))),e.input.lastIOSEnter=0)},200)}else e.someProp(`handleKeyDown`,t=>t(e,n))||N_(e,n)?n.preventDefault():tv(e,`key`)},Z_.keyup=(e,t)=>{t.keyCode==16&&(e.input.shiftKey=!1)},Z_.keypress=(e,t)=>{let n=t;if(Cv(e)||!n.charCode||n.ctrlKey&&!n.altKey||Hh&&n.metaKey)return;if(e.someProp(`handleKeyPress`,t=>t(e,n))){n.preventDefault();return}let r=e.state.selection;if(!(r instanceof Wm)||!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 sv(e){return{left:e.clientX,top:e.clientY}}function cv(e,t){let n=t.x-e.clientX,r=t.y-e.clientY;return n*n+r*r<100}function lv(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 uv(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 dv(e,t){if(t==-1)return!1;let n=e.state.doc.resolve(t),r=n.nodeAfter;return r&&r.isAtom&&Q.isSelectable(r)?(uv(e,new Q(n),`pointer`),!0):!1}function fv(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:(uv(e,Q.create(e.state.doc,i),`pointer`),!0)}function pv(e,t,n,r,i){return lv(e,`handleClickOn`,t,n,r)||e.someProp(`handleClick`,n=>n(e,t,r))||(i?fv(e,n):dv(e,n))}function mv(e,t,n,r){return lv(e,`handleDoubleClickOn`,t,n,r)||e.someProp(`handleDoubleClick`,n=>n(e,t,r))}function hv(e,t,n,r){return lv(e,`handleTripleClickOn`,t,n,r)||e.someProp(`handleTripleClick`,n=>n(e,t,r))||gv(e,n,r)}function gv(e,t,n){if(n.button!=0)return!1;let r=_v(e,t,!0),i=e.state.doc;return r?(uv(e,r,`pointer`),r instanceof Wm&&i.eq(e.state.doc)&&(e.input.mouseDown=new Sv(e,r)),!0):!1}function _v(e,t,n){let r=e.state.doc;if(t==-1)return r.inlineContent?Wm.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 Wm.create(r,a+1,a+1+t.content.size);if(n&&Q.isSelectable(t))return Q.create(r,a)}return null}function vv(e){return kv(e)}var yv=Hh?`metaKey`:`ctrlKey`;X_.mousedown=(e,t)=>{let n=t;e.input.shiftKey=n.shiftKey;let r=vv(e),i=Date.now(),a=`singleClick`;i-e.input.lastClick.time<500&&cv(n,e.input.lastClick)&&!n[yv]&&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(sv(n));o&&(a==`singleClick`?e.input.mouseDown=new xv(e,o,n,!!r):(a==`doubleClick`?mv:hv)(e,o.pos,o.inside,n)?n.preventDefault():tv(e,`pointer`))};var bv=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}},xv=class extends bv{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[yv],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&&Ih&&!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()),tv(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||n_(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(sv(e))),this.updateAllowDefault(e),this.allowDefault||!t?tv(this.view,`pointer`):pv(this.view,t.pos,t.inside,e,this.selectNode)?e.preventDefault():e.button==0&&(this.flushed||Bh&&this.mightDrag&&!this.mightDrag.node.isAtom||Rh&&!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)?(uv(this.view,Bm.near(this.view.state.doc.resolve(t.pos)),`pointer`),e.preventDefault()):tv(this.view,`pointer`)}move(e){this.updateAllowDefault(e),tv(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}},Sv=class extends bv{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(),tv(this.view,`pointer`);let t=this.view.posAtCoords(sv(e)),n=t&&_v(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];uv(this.view,Wm.create(r,a,o),`pointer`)}};X_.touchstart=e=>{e.input.lastTouch=Date.now(),vv(e),tv(e,`pointer`)},X_.touchmove=e=>{e.input.lastTouch=Date.now(),tv(e,`pointer`)},X_.contextmenu=e=>vv(e);function Cv(e,t){return e.composing?!0:Bh&&Math.abs(Date.now()-e.input.compositionEndedAt)<500?(e.input.compositionEndedAt=-2e8,!0):!1}var wv=Wh?5e3:-1;Z_.compositionstart=Z_.compositionupdate=e=>{if(!e.composing){e.domObserver.flush();let{state:t}=e,n=t.selection.$to;if(t.selection instanceof Wm&&(t.storedMarks||!n.textOffset&&n.parentOffset&&n.nodeBefore.marks.some(e=>e.type.spec.inclusive===!1)||Rh&&Uh&&Tv(e)))e.markCursor=e.state.storedMarks||n.marks(),kv(e,!0),e.markCursor=null;else if(kv(e,!t.selection.empty),Ih&&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}Ev(e,wv)};function Tv(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`}Z_.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++,Ev(e,20))};function Ev(e,t){clearTimeout(e.input.composingTimeout),t>-1&&(e.input.composingTimeout=setTimeout(()=>kv(e),t))}function Dv(e){for(e.composing&&(e.input.composing=!1,e.input.compositionEndedAt=Date.now());e.input.compositionNodes.length>0;)e.input.compositionNodes.pop().markParentsDirty()}function Ov(e){let t=e.domSelectionRange();if(!t.focusNode)return null;let n=bh(t.focusNode,t.focusOffset),r=xh(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 kv(e,t=!1){if(!(Wh&&e.domObserver.flushingSoon>=0)){if(e.domObserver.forceFlush(),Dv(e),t||e.docView&&e.docView.dirty){let n=e_(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 Av(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 jv=Ph&&Fh<15||Vh&&Kh<604;X_.copy=Z_.cut=(e,t)=>{let n=t,r=e.state.selection,i=n.type==`cut`;if(r.empty)return;let a=jv?null:n.clipboardData,{dom:o,text:s}=P_(e,r.content());a?(n.preventDefault(),a.clearData(),a.setData(`text/html`,o.innerHTML),a.setData(`text/plain`,s)):Av(e,o),i&&e.dispatch(e.state.tr.deleteSelection().scrollIntoView().setMeta(`uiEvent`,`cut`))};function Mv(e){return e.openStart==0&&e.openEnd==0&&e.content.childCount==1?e.content.firstChild:null}function Nv(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?Pv(e,r.value,null,i,t):Pv(e,r.textContent,r.innerHTML,i,t)},50)}function Pv(e,t,n,r,i){let a=F_(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=Mv(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 Fv(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,` `):``}Z_.paste=(e,t)=>{let n=t;if(e.composing&&!Wh)return;let r=jv?null:n.clipboardData,i=e.input.shiftKey&&e.input.lastKeyCode!=45;r&&Pv(e,Fv(r),r.getData(`text/html`),i,n)?n.preventDefault():Nv(e,n)};var Iv=class{constructor(e,t,n){this.slice=e,this.move=t,this.node=n}},Lv=Hh?`altKey`:`ctrlKey`;function Rv(e,t){let n;return e.someProp(`dragCopies`,e=>{n||=e(t)}),n==null?!t[Lv]:!n}X_.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(sv(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}=P_(e,(o||e.state.selection).content());(!n.dataTransfer.files.length||!Rh||zh>120)&&n.dataTransfer.clearData(),n.dataTransfer.setData(jv?`Text`:`text/html`,s.innerHTML),n.dataTransfer.effectAllowed=`copyMove`,jv||n.dataTransfer.setData(`text/plain`,c),e.dragging=new Iv(l,Rv(e,n),o)},X_.dragend=e=>{let t=e.dragging;window.setTimeout(()=>{e.dragging==t&&(e.dragging=null)},50)},Z_.dragover=Z_.dragenter=(e,t)=>t.preventDefault(),Z_.drop=(e,t)=>{try{zv(e,t,e.dragging)}finally{e.dragging=null}};function zv(e,t,n){if(!t.dataTransfer)return;let r=e.posAtCoords(sv(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=F_(e,Fv(t.dataTransfer),jv?null:t.dataTransfer.getData(`text/html`),!1,i);let o=!!(n&&Rv(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?ym(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(d_(e,f,c.doc.resolve(t)))}e.focus(),e.dispatch(c.setMeta(`uiEvent`,`drop`))}X_.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())&&n_(e)},20))},X_.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)},X_.beforeinput=(e,t)=>{if(Rh&&Wh&&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,Th(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 Z_)X_[e]=Z_[e];function Bv(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 Vv=class e{constructor(e,t){this.toDOM=e,this.spec=t||Kv,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 Wv(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&&Bv(this.spec,t.spec))}destroy(e){this.spec.destroy&&this.spec.destroy(e)}},Hv=class e{constructor(e,t){this.attrs=e,this.spec=t||Kv}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 Wv(i,a,this)}valid(e,t){return t.from<t.to}eq(t){return this==t||t instanceof e&&Bv(this.attrs,t.attrs)&&Bv(this.spec,t.spec)}static is(t){return t.type instanceof e}destroy(){}},Uv=class e{constructor(e,t){this.attrs=e,this.spec=t||Kv}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 Wv(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&&Bv(this.attrs,t.attrs)&&Bv(this.spec,t.spec)}destroy(){}},Wv=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 Vv(n,r))}static inline(t,n,r,i){return new e(t,n,new Hv(r,i))}static node(t,n,r,i){return new e(t,n,new Uv(r,i))}get spec(){return this.type.spec}get inline(){return this.type instanceof Hv}get widget(){return this.type instanceof Vv}},Gv=[],Kv={},qv=class e{constructor(e,t){this.local=e.length?e:Gv,this.children=t.length?t:Gv}static create(e,t){return t.length?ty(t,e,0,Kv):Jv}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==Jv||e.maps.length==0?this:this.mapInner(e,t,0,0,n||Kv)}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?Xv(this.children,o||[],t,n,r,i,a):o?new e(o.sort(ny),Gv):Jv}add(t,n){return n.length?this==Jv?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=$v(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,ty(s,e,o+1,Kv)),a+=3}});let o=Zv(a?ey(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(ny):this.local,i||this.children)}remove(e){return e.length==0||this==Jv?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==Jv?(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):Jv}forChild(t,n){if(this==Jv)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 Hv){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(ny),Gv);return r?new Yv([t,r]):t}return r||Jv}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 ry(this.localsInner(e))}localsInner(e){if(this==Jv)return Gv;if(e.inlineContent||!this.local.some(Hv.is))return this.local;let t=[];for(let e=0;e<this.local.length;e++)this.local[e].type instanceof Hv||t.push(this.local[e]);return t}forEachSet(e){e(this)}};qv.empty=new qv([],[]),qv.removeOverlap=ry;var Jv=qv.empty,Yv=class e{constructor(e){this.members=e}map(t,n){let r=this.members.map(e=>e.map(t,n,Kv));return e.from(r)}forChild(t,n){if(n.isLeaf)return qv.empty;let r=[];for(let i=0;i<this.members.length;i++){let a=this.members[i].forChild(t,n);a!=Jv&&(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?ry(n?t:t.sort(ny)):Gv}static from(t){switch(t.length){case 0:return Jv;case 1:return t[0];default:return new e(t.every(e=>e instanceof qv)?t:t.reduce((e,t)=>e.concat(t instanceof qv?t:t.members),[]))}}forEachSet(e){for(let t=0;t<this.members.length;t++)this.members[t].forEachSet(e)}};function Xv(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==Jv?(s[t+1]=-2,c=!0):(s[t]=u,s[t+1]=d,s[t+2]=r)}else c=!0}if(c){let c=ty(Qv(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 qv(t.sort(ny),s)}function Zv(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 Wv(i.from+t,i.to+t,i.type))}return n}function Qv(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 $v(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 ey(e){let t=[];for(let n=0;n<e.length;n++)e[n]!=null&&t.push(e[n]);return t}function ty(e,t,n,r){let i=[],a=!1;t.forEach((t,o)=>{let s=$v(e,t,o+n);if(s){a=!0;let e=ty(s,t,n+o+1,r);e!=Jv&&i.push(o,o+t.nodeSize,e)}});let o=Zv(a?ey(e):e,-n).sort(ny);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 qv(o,i):Jv}function ny(e,t){return e.from-t.from||e.to-t.to}function ry(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),iy(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),iy(t,i,r.copy(a.from,r.to)));break}}}return t}function iy(e,t,n){for(;t<e.length&&ny(n,e[t])>0;)t++;e.splice(t,0,n)}function ay(e){let t=[];return e.someProp(`decorations`,n=>{let r=n(e.state);r&&r!=Jv&&t.push(r)}),e.cursorWrapper&&t.push(qv.create(e.state.doc,[e.cursorWrapper.deco])),Yv.from(t)}var oy={childList:!0,characterData:!0,characterDataOldValue:!0,attributes:!0,attributeOldValue:!0,subtree:!0},sy=Ph&&Fh<=11,cy=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}},ly=class{constructor(e,t){this.view=e,this.handleDOMChange=t,this.queue=[],this.flushingSoon=-1,this.observer=null,this.currentSelection=new cy,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]);Ph&&Fh<=11&&t.some(e=>e.type==`childList`&&e.removedNodes.length||e.type==`characterData`&&e.oldValue.length>e.target.nodeValue.length)?this.flushSoon():Bh&&e.composing&&t.some(e=>e.type==`childList`&&e.target.nodeName==`TR`)?(e.input.badSafariComposition=!0,this.flushSoon()):this.flush()}),sy&&(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,oy)),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(f_(this.view)){if(this.suppressingSelectionUpdates)return n_(this.view);if(Ph&&Fh<=11&&!this.view.state.selection.empty){let e=this.view.domSelectionRange();if(e.focusNode&&gh(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=fh(n))t.add(n);for(let r=e.anchorNode;r;r=fh(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)&&f_(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||Rh&&(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(Ih&&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||hy(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&&wh(n)&&(c=e_(e))&&c.eq(Bm.near(e.state.doc.resolve(0),1))?(e.input.lastFocus=0,n_(e),this.currentSelection.set(n),e.scrollToSelection()):(i>-1||r)&&(i>-1&&(e.docView.markDirty(i,a),fy(e)),e.input.badSafariComposition&&(e.input.badSafariComposition=!1,gy(e,s)),this.handleDOMChange(i,a,o,s),e.docView&&e.docView.dirty?e.updateState(e.state):this.currentSelection.eq(n)||n_(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(Ph&&Fh<=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?dh(r)+1:0,o=n.localPosFromDOM(e.target,a,-1),s=i&&i.parentNode==e.target?dh(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}}},uy=new WeakMap,dy=!1;function fy(e){if(!uy.has(e)&&(uy.set(e,null),[`normal`,`nowrap`,`pre-line`].indexOf(getComputedStyle(e.dom).whiteSpace)!==-1)){if(e.requiresGeckoHackNode=Ih,dy)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.`),dy=!0}}function py(e,t){let n=t.startContainer,r=t.startOffset,i=t.endContainer,a=t.endOffset,o=e.domAtPos(e.state.selection.anchor);return gh(o.node,o.offset,i,a)&&([n,r,i,a]=[i,a,n,r]),{anchorNode:n,anchorOffset:r,focusNode:i,focusOffset:a}}function my(e,t){if(t.getComposedRanges){let n=t.getComposedRanges(e.root)[0];if(n)return py(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?py(e,n):null}function hy(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 gy(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 _y(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}],wh(c)||l.push({node:c.focusNode,offset:c.focusOffset})),Rh&&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`)||ap.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:vy,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 vy(e){let t=e.pmViewDesc;if(t)return t.parseRule();if(e.nodeName==`BR`&&e.parentNode){if(Bh&&/^(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||Bh&&/^(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 yy=/^(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 by(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=e_(e,t);if(n&&!e.state.selection.eq(n)){if(Rh&&Wh&&e.input.lastKeyCode===13&&Date.now()-100<e.input.lastKeyCodeTime&&e.someProp(`handleKeyDown`,t=>t(e,Th(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=_y(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=Ty(d.content,l.doc.content,l.from,f,p);if(m&&e.input.domChangeCount++,(Vh&&e.input.lastIOSEnter>Date.now()-225||Wh)&&i.some(e=>e.nodeType==1&&!yy.test(e.nodeName))&&(!m||m.endA>=m.endB)&&e.someProp(`handleKeyDown`,t=>t(e,Th(13,`Enter`)))){e.input.lastIOSEnter=0;return}if(!m)if(r&&c instanceof Wm&&!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=xy(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 Wm&&(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)),Ph&&Fh<=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((Vh&&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,Th(13,`Enter`)))){e.input.lastIOSEnter=0;return}if(e.state.selection.anchor>m.start&&Cy(u,m.start,m.endA,h,g)&&e.someProp(`handleKeyDown`,t=>t(e,Th(8,`Backspace`)))){Wh&&Rh&&e.domObserver.suppressSelectionUpdates();return}Rh&&m.endB==m.start&&(e.input.lastChromeDelete=Date.now()),Wh&&!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,Th(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=xy(e,n.doc,l.sel);t&&!(Rh&&e.composing&&t.empty&&(m.start!=m.endB||e.input.lastChromeDelete<Date.now()-100)&&(t.head==y||t.head==n.mapping.map(b)-1)||Ph&&t.empty&&t.head==y)&&n.setSelection(t)}return a&&n.setMeta(`composition`,a),n.scrollIntoView()},S;if(v)if(h.pos==g.pos){Ph&&Fh<=11&&h.parentOffset==0&&(e.domObserver.suppressSelectionUpdates(),setTimeout(()=>n_(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=Sy(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 xy(e,t,n){return Math.max(n.anchor,n.head)>t.content.size?null:d_(e,t.resolve(n.anchor),t.resolve(n.head))}function Sy(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 Cy(e,t,n,r,i){if(n-t<=i.pos-r.pos||wy(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(wy(a,!0,!0));return!o.parent.isTextblock||o.pos>n||wy(o,!0,!1)<n?!1:r.parent.content.cut(r.parentOffset).eq(o.parent.content)}function wy(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 Ty(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 Ey=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 $_,this.prevDirectPlugins=[],this.pluginViews=[],this.requiresGeckoHackNode=!1,this.dragging=null,this._props=t,this.state=t.state,this.directPlugins=t.plugins||[],this.directPlugins.forEach(Ny),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=ky(this),Oy(this),this.nodeViews=jy(this),this.docView=Pg(this.state.doc,Dy(this),ay(this),this.dom,this),this.domObserver=new ly(this,(e,t,n,r)=>by(this,e,t,n,r)),this.domObserver.start(),ev(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&&rv(this);let t=this._props;this._props=e,e.plugins&&(e.plugins.forEach(Ny),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&&(Dv(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=jy(this);My(e,this.nodeViews)&&(this.nodeViews=e,r=!0)}(a||t.handleDOMEvents!=this._props.handleDOMEvents)&&rv(this),this.editable=ky(this),Oy(this);let o=ay(this),s=Dy(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&&Zh(this);if(i){this.domObserver.stop();let t=l&&(Ph||Rh)&&!this.composing&&!n.selection.empty&&!e.selection.empty&&Ay(n.selection,e.selection);if(l){let n=Rh?this.trackWrites=this.domSelectionRange().focusNode:null;this.composing&&(this.input.compositionNode=Ov(this)),(r||!this.docView.update(e.doc,s,o,this))&&(this.docView.updateOuterDeco(s),this.docView.destroy(),this.docView=Pg(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())&&m_(this)&&i.delaySelUpdate())?n_(this,t):(l_(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&&$h(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&&Xh(this,t.getBoundingClientRect(),e)}else Xh(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 Iv(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(Ph){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&&ng(this.dom),n_(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 ug(this,e)}coordsAtPos(e,t=1){return mg(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 wg(this,t||this.state,e)}pasteHTML(e,t){return Pv(this,``,e,!1,t||new ClipboardEvent(`paste`))}pasteText(e,t){return Pv(this,e,null,!0,t||new ClipboardEvent(`paste`))}serializeForClipboard(e){return P_(this,e)}destroy(){this.docView&&(nv(this),this.destroyPluginViews(),this.mounted?(this.docView.update(this.state.doc,[],ay(this),this),this.dom.textContent=``):this.dom.parentNode&&this.dom.parentNode.removeChild(this.dom),this.docView.destroy(),this.docView=null,hh())}get isDestroyed(){return this.docView==null}dispatchEvent(e){return ov(this,e)}domSelectionRange(){let e=this.domSelection();return e?Bh&&this.root.nodeType===11&&Eh(this.dom.ownerDocument)==this.dom&&my(this,e)||e:{focusNode:null,focusOffset:0,anchorNode:null,anchorOffset:0}}domSelection(){return this.root.getSelection()}};Ey.prototype.dispatch=function(e){let t=this._props.dispatchTransaction;t?t.call(this,e):this.updateState(this.state.apply(e))};function Dy(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`,[Wv.node(0,e.state.doc.content.size,t)]}function Oy(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:Wv.widget(e.state.selection.from,t,{raw:!0,marks:e.markCursor})}}else e.cursorWrapper=null}function ky(e){return!e.someProp(`editable`,t=>t(e.state)===!1)}function Ay(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 jy(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 My(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 Ny(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 Py={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:`'`},Fy={48:`)`,49:`!`,50:`@`,51:`#`,52:`$`,53:`%`,54:`^`,55:`&`,56:`*`,57:`(`,59:`:`,61:`+`,173:`_`,186:`:`,187:`+`,188:`<`,189:`_`,190:`>`,191:`?`,192:`~`,219:`{`,220:`|`,221:`}`,222:`"`},Iy=typeof navigator<`u`&&/Mac/.test(navigator.platform),Ly=typeof navigator<`u`&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent),Ry=0;Ry<10;Ry++)Py[48+Ry]=Py[96+Ry]=String(Ry);for(var Ry=1;Ry<=24;Ry++)Py[Ry+111]=`F`+Ry;for(var Ry=65;Ry<=90;Ry++)Py[Ry]=String.fromCharCode(Ry+32),Fy[Ry]=String.fromCharCode(Ry);for(var zy in Py)Fy.hasOwnProperty(zy)||(Fy[zy]=Py[zy]);function By(e){var t=!(Iy&&e.metaKey&&e.shiftKey&&!e.ctrlKey&&!e.altKey||Ly&&e.shiftKey&&e.key&&e.key.length==1||e.key==`Unidentified`)&&e.key||(e.shiftKey?Fy:Py)[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 Vy=typeof navigator<`u`&&/Mac|iP(hone|[oa]d)/.test(navigator.platform),Hy=typeof navigator<`u`&&/Win/.test(navigator.platform);function Uy(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))Vy?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 Wy(e){let t=Object.create(null);for(let n in e)t[Uy(n)]=e[n];return t}function Gy(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 Ky(e){return new sh({props:{handleKeyDown:qy(e)}})}function qy(e){let t=Wy(e);return function(e,n){let r=By(n),i,a=t[Gy(r,n)];if(a&&a(e.state,e.dispatch,e))return!0;if(r.length==1&&r!=` `){if(n.shiftKey){let i=t[Gy(r,n,!1)];if(i&&i(e.state,e.dispatch,e))return!0}if((n.altKey||n.metaKey||n.ctrlKey)&&!(Hy&&n.ctrlKey&&n.altKey)&&(i=Py[n.keyCode])&&i!=r){let r=t[Gy(i,n)];if(r&&r(e.state,e.dispatch,e))return!0}}return!1}}var Jy=(e,t)=>e.selection.empty?!1:(t&&t(e.tr.deleteSelection().scrollIntoView()),!0);function Yy(e,t){let{$cursor:n}=e.selection;return!n||(t?!t.endOfTextblock(`backward`,e):n.parentOffset>0)?null:n}var Xy=(e,t,n)=>{let r=Yy(e,n);if(!r)return!1;let i=nb(r);if(!i){let n=r.blockRange(),i=n&&$p(n);return i==null?!1:(t&&t(e.tr.lift(n,i).scrollIntoView()),!0)}let a=i.nodeBefore;if(bb(e,i,t,-1))return!0;if(r.parent.content.size==0&&(eb(a,`end`)||Q.isSelectable(a)))for(let n=r.depth;;n--){let o=bm(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(eb(a,`end`)?Bm.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},Zy=(e,t,n)=>{let r=Yy(e,n);if(!r)return!1;let i=nb(r);return i?$y(e,i,t):!1},Qy=(e,t,n)=>{let r=rb(e,n);if(!r)return!1;let i=ob(r);return i?$y(e,i,t):!1};function $y(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=bm(e.doc,i,o,Z.empty);if(!s||s.from!=i||s instanceof Kp&&s.slice.size>=o-i)return!1;if(n){let t=e.tr.step(s);t.setSelection(Wm.create(t.doc,i)),n(t.scrollIntoView())}return!0}function eb(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 tb=(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=nb(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 nb(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 rb(e,t){let{$cursor:n}=e.selection;return!n||(t?!t.endOfTextblock(`forward`,e):n.parentOffset<n.parent.content.size)?null:n}var ib=(e,t,n)=>{let r=rb(e,n);if(!r)return!1;let i=ob(r);if(!i)return!1;let a=i.nodeAfter;if(bb(e,i,t,1))return!0;if(r.parent.content.size==0&&(eb(a,`start`)||Q.isSelectable(a))){let n=bm(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(eb(a,`start`)?Bm.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},ab=(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=ob(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 ob(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 sb=(e,t)=>{let n=e.selection,r=n instanceof Q,i;if(r){if(n.node.isTextblock||!pm(e.doc,n.from))return!1;i=n.from}else if(i=gm(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},cb=(e,t)=>{let n=e.selection,r;if(n instanceof Q){if(n.node.isTextblock||!pm(e.doc,n.to))return!1;r=n.to}else if(r=gm(e.doc,n.to,1),r==null)return!1;return t&&t(e.tr.join(r).scrollIntoView()),!0},lb=(e,t)=>{let{$from:n,$to:r}=e.selection,i=n.blockRange(r),a=i&&$p(i);return a==null?!1:(t&&t(e.tr.lift(i,a).scrollIntoView()),!0)},ub=(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 db(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 fb=(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=db(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(Bm.near(i.doc.resolve(r),1)),t(i.scrollIntoView())}return!0},pb=(e,t)=>{let n=e.selection,{$from:r,$to:i}=n;if(n instanceof qm||r.parent.inlineContent||i.parent.inlineContent)return!1;let a=db(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(Wm.create(o.doc,n+1)),t(o.scrollIntoView())}return!0},mb=(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(dm(e.doc,r))return t&&t(e.tr.split(r).scrollIntoView()),!0}let r=n.blockRange(),i=r&&$p(r);return i==null?!1:(t&&t(e.tr.lift(r,i).scrollIntoView()),!0)};function hb(e){return(t,n)=>{let{$from:r,$to:i}=t.selection;if(t.selection instanceof Q&&t.selection.node.isBlock)return!r.parentOffset||!dm(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=db(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 Wm||t.selection instanceof qm)&&u.deleteSelection();let d=u.mapping.map(r.pos),f=dm(u.doc,d,a.length,a);if(f||=(a[0]=s?{type:s}:null,dm(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 gb=hb(),_b=(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)},vb=(e,t)=>(t&&t(e.tr.setSelection(new qm(e.doc))),!0);function yb(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||pm(e.doc,t.pos))?!1:(n&&n(e.tr.join(t.pos).scrollIntoView()),!0)}function bb(e,t,n,r){let i=t.nodeBefore,a=t.nodeAfter,o,s,c=i.type.spec.isolating||a.type.spec.isolating;if(!c&&yb(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 qp(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&&pm(c.doc,l.pos)&&c.join(l.pos),n(c.scrollIntoView())}return!0}let u=a.type.spec.isolating||r>0&&c?null:Bm.findFrom(t,1),d=u&&u.$from.blockRange(u.$to),f=d&&$p(d);if(f!=null&&f>=t.depth)return n&&n(e.tr.lift(d,f).scrollIntoView()),!0;if(l&&eb(a,`start`,!0)&&eb(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 qp(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 xb(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(Wm.create(t.doc,e<0?i.start(a):i.end(a)))),!0):!1}}var Sb=xb(-1),Cb=xb(1);function wb(e,t=null){return function(n,r){let{$from:i,$to:a}=n.selection,o=i.blockRange(a),s=o&&tm(o,e,t);return s?(r&&r(n.tr.wrap(o,s).scrollIntoView()),!0):!1}}function Tb(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 Eb(...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 Db=Eb(Jy,Xy,tb),Ob=Eb(Jy,ib,ab),kb={Enter:Eb(ub,pb,mb,gb),"Mod-Enter":fb,Backspace:Db,"Mod-Backspace":Db,"Shift-Backspace":Db,Delete:Ob,"Mod-Delete":Ob,"Mod-a":vb},Ab={"Ctrl-h":kb.Backspace,"Alt-Backspace":kb[`Mod-Backspace`],"Ctrl-d":kb.Delete,"Ctrl-Alt-Backspace":kb[`Mod-Delete`],"Alt-Delete":kb[`Mod-Delete`],"Alt-d":kb[`Mod-Delete`],"Ctrl-a":Sb,"Ctrl-e":Cb};for(let e in kb)Ab[e]=kb[e];typeof navigator<`u`?/Mac|iP(hone|[oa]d)/.test(navigator.platform):typeof os<`u`&&os.platform&&os.platform();function jb(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 Mb(s,o,e,t)?(r&&r(s.scrollIntoView()),!0):!1}}function Mb(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 Of(e,e,t.depth),t.endIndex<t.parent.childCount&&(t=new Of(t.$from,o.resolve(t.$to.end(t.depth)),t.depth)),i=!0}let s=tm(a,n,r,t);return s?(e&&Nb(e,t,s,i,n),!0):!1}function Nb(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 qp(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&&dm(e.doc,c,s)&&(e.split(c,s),c+=2*s),c+=l.child(n).nodeSize;return e}function Pb(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?Fb(t,n,e,a):Ib(t,n,a):!0:!1}}function Fb(e,t,n,r){let i=e.tr,a=r.end,o=r.$to.end(r.depth);a<o&&(i.step(new qp(a-1,o,a,o,new Z(X.from(n.create(null,r.parent.copy())),1,0),1,!0)),r=new Of(i.doc.resolve(r.$from.pos),i.doc.resolve(o),r.depth));let s=$p(r);if(s==null)return!1;i.lift(r,s);let c=i.doc.resolve(i.mapping.map(a,-1)-1);return pm(i.doc,c.pos)&&c.nodeBefore.type==c.nodeAfter.type&&i.join(c.pos),t(i.scrollIntoView()),!0}function Ib(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 qp(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 Lb(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 qp(l-(r?3:1),u,l,u,o,1,!0)).scrollIntoView())}return!0}}function Rb(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 zb=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:Rb({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}},Bb=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 Vb(e){return{baseExtensions:e.filter(e=>e.type===`extension`),nodeExtensions:e.filter(e=>e.type===`node`),markExtensions:e.filter(e=>e.type===`mark`)}}function Hb(e){let t=[],{nodeExtensions:n,markExtensions:r}=Vb(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 Ub(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 Wb(...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 Gb(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)=>Wb(e,t),{})}function Kb(e){return typeof e==`function`}function qb(e,t=void 0,...n){return Kb(e)?t?e.bind(t)(...n):e(...n):e}function Jb(e={}){return Object.keys(e).length===0&&e.constructor===Object}function Yb(e){return typeof e==`string`?e.match(/^[+-]?(?:\d*\.)?\d+$/)?Number(e):e===`true`||e!==`false`&&e:e}function Xb(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):Yb(n.getAttribute(t.name));return r==null?e:{...e,[t.name]:r}},{});return{...r,...i}}}}function Zb(e){return Object.fromEntries(Object.entries(e).filter(([e,t])=>e===`attrs`&&Jb(t)?!1:t!=null))}function Qb(e,t){let n=Hb(e),{nodeExtensions:r,markExtensions:i}=Vb(e);return new tp({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=Zb({...e.reduce((e,t)=>{let n=$(t,`extendNodeSchema`,a);return{...e,...n?n(r):{}}},{}),content:qb($(r,`content`,a)),marks:qb($(r,`marks`,a)),group:qb($(r,`group`,a)),inline:qb($(r,`inline`,a)),atom:qb($(r,`atom`,a)),selectable:qb($(r,`selectable`,a)),draggable:qb($(r,`draggable`,a)),code:qb($(r,`code`,a)),whitespace:qb($(r,`whitespace`,a)),linebreakReplacement:qb($(r,`linebreakReplacement`,a)),defining:qb($(r,`defining`,a)),isolating:qb($(r,`isolating`,a)),attrs:Object.fromEntries(i.map(e=>[e.name,{default:e?.attribute?.default}]))}),s=qb($(r,`parseHTML`,a));s&&(o.parseDOM=s.map(e=>Xb(e,i)));let c=$(r,`renderHTML`,a);c&&(o.toDOM=e=>c({node:e,HTMLAttributes:Gb(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=Zb({...e.reduce((e,t)=>{let n=$(t,`extendMarkSchema`,a);return{...e,...n?n(r):{}}},{}),inclusive:qb($(r,`inclusive`,a)),excludes:qb($(r,`excludes`,a)),group:qb($(r,`group`,a)),spanning:qb($(r,`spanning`,a)),code:qb($(r,`code`,a)),attrs:Object.fromEntries(i.map(e=>[e.name,{default:e?.attribute?.default}]))}),s=qb($(r,`parseHTML`,a));s&&(o.parseDOM=s.map(e=>Xb(e,i)));let c=$(r,`renderHTML`,a);return c&&(o.toDOM=e=>c({mark:e,HTMLAttributes:Gb(e,i)})),[r.name,o]}))})}function $b(e,t){return t.nodes[e]||t.marks[e]||null}function ex(e,t){return Array.isArray(t)?t.some(t=>(typeof t==`string`?t:t.name)===e.name):t}function tx(e,t){let n=yp.fromSchema(t).serializeFragment(e),r=document.implementation.createHTMLDocument().createElement(`div`);return r.appendChild(n),r.innerHTML}var nx=(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 rx(e){return Object.prototype.toString.call(e)===`[object RegExp]`}var ix=class{constructor(e){this.find=e.find,this.handler=e.handler}},ax=(e,t)=>{if(rx(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 ox(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=nx(c)+i;return a.forEach(e=>{if(l)return;let a=ax(u,e.find);if(!a)return;let c=s.state.tr,d=Rb({state:s.state,transaction:c}),f={from:n-(a[0].length-i.length),to:r},{commands:p,chain:m,can:h}=new zb({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 sx(e){let{editor:t,rules:n}=e,r=new sh({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:tx(X.from(e),a.schema);let{from:i}=s,o=i+e.length;ox({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 ox({editor:t,from:i,to:a,text:o,rules:n,plugin:r})},handleDOMEvents:{compositionend:e=>(setTimeout(()=>{let{$cursor:i}=e.state.selection;i&&ox({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?ox({editor:t,from:a.pos,to:a.pos,text:`
|
|
18
|
-
`,rules:n,plugin:r}):!1}},isInputRules:!0});return r}function cx(e){return Object.prototype.toString.call(e).slice(8,-1)}function lx(e){return cx(e)===`Object`&&e.constructor===Object&&Object.getPrototypeOf(e)===Object.prototype}function ux(e,t){let n={...e};return lx(e)&&lx(t)&&Object.keys(t).forEach(r=>{lx(t[r])&&lx(e[r])?n[r]=ux(e[r],t[r]):n[r]=t[r]}),n}var dx=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=qb($(this,`addOptions`,{name:this.name}))),this.storage=qb($(this,`addStorage`,{name:this.name,options:this.options}))||{}}static create(t={}){return new e(t)}configure(e={}){let t=this.extend({...this.config,addOptions:()=>ux(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=qb($(n,`addOptions`,{name:n.name})),n.storage=qb($(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 fx(e){return typeof e==`number`}var px=class{constructor(e){this.find=e.find,this.handler=e.handler}},mx=(e,t,n)=>{if(rx(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 hx(e){let{editor:t,state:n,from:r,to:i,rule:a,pasteEvent:o,dropEvent:s}=e,{commands:c,chain:l,can:u}=new zb({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);mx(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 gx=null,_x=e=>{var t;let n=new ClipboardEvent(`paste`,{clipboardData:new DataTransfer});return(t=n.clipboardData)==null||t.setData(`text/html`,e),n};function vx(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=Rb({state:e,transaction:c});if(!(!hx({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 sh({view(e){let n=n=>{r=e.dom.parentElement?.contains(n.target)?e.dom.parentElement:null,r&&(gx=t)},i=()=>{gx&&=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=gx;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:tx(X.from(t),r.schema);let{from:n}=d,i=n+t.length,a=_x(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(!(!fx(p)||!m||p===m.b))return c({rule:e,state:r,from:p,to:m,pasteEvt:o})}}))}function yx(e){let t=e.filter((t,n)=>e.indexOf(t)!==n);return Array.from(new Set(t))}var bx=class e{constructor(t,n){this.splittableMarks=[],this.editor=n,this.extensions=e.resolve(t),this.schema=Qb(this.extensions,n),this.setupExtensions()}static resolve(t){let n=e.sort(e.flatten(t)),r=yx(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:$b(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:$b(e.name,this.schema)},a=[],o=$(e,`addKeyboardShortcuts`,n),s={};if(e.type===`mark`&&$(e,`exitable`,n)&&(s.ArrowRight=()=>dx.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=Ky(s);a.push(c);let l=$(e,`addInputRules`,n);ex(e,t.options.enableInputRules)&&l&&r.push(...l());let u=$(e,`addPasteRules`,n);ex(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[sx({editor:t,rules:r}),...vx({editor:t,rules:i}),...a]}get attributes(){return Hb(this.extensions)}get nodeViews(){let{editor:e}=this,{nodeExtensions:t}=Vb(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:Ub(t.name,this.schema)});return r?[t.name,(i,a,o,s,c)=>{let l=Gb(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:$b(e.name,this.schema)};e.type===`mark`&&(qb($(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)})}},xx=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=qb($(this,`addOptions`,{name:this.name}))),this.storage=qb($(this,`addStorage`,{name:this.name,options:this.options}))||{}}static create(t={}){return new e(t)}configure(e={}){let t=this.extend({...this.config,addOptions:()=>ux(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=qb($(n,`addOptions`,{name:n.name})),n.storage=qb($(n,`addStorage`,{name:n.name,options:n.options})),n}};function Sx(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 Cx(e){return Object.fromEntries(Object.entries(e.nodes).filter(([,e])=>e.spec.toText).map(([e,t])=>[e,t.spec.toText]))}var wx=xx.create({name:`clipboardTextSerializer`,addOptions(){return{blockSeparator:void 0}},addProseMirrorPlugins(){return[new sh({key:new uh(`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=Cx(n);return Sx(r,{from:o,to:s},{...this.options.blockSeparator===void 0?{}:{blockSeparator:this.options.blockSeparator},textSerializers:c})}}})]}}),Tx=()=>({editor:e,view:t})=>(requestAnimationFrame(()=>{var n;e.isDestroyed||(t.dom.blur(),(n=window==null?void 0:window.getSelection())==null||n.removeAllRanges())}),!0),Ex=(e=!1)=>({commands:t})=>t.setContent(``,e),Dx=()=>({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=$p(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},Ox=e=>t=>e(t),kx=()=>({state:e,dispatch:t})=>pb(e,t),Ax=(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 Wm(r.doc.resolve(Math.max(o-1,0)))),!0},jx=()=>({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},Mx=e=>({tr:t,state:n,dispatch:r})=>{let i=Ub(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},Nx=e=>({tr:t,dispatch:n})=>{let{from:r,to:i}=e;return n&&t.delete(r,i),!0},Px=()=>({state:e,dispatch:t})=>Jy(e,t),Fx=()=>({commands:e})=>e.keyboardShortcut(`Enter`),Ix=()=>({state:e,dispatch:t})=>fb(e,t);function Lx(e,t,n={strict:!0}){let r=Object.keys(t);return!r.length||r.every(r=>n.strict?t[r]===e[r]:rx(t[r])?t[r].test(e[r]):t[r]===e[r])}function Rx(e,t,n={}){return e.find(e=>e.type===t&&Lx(Object.fromEntries(Object.keys(n).map(t=>[t,e.attrs[t]])),n))}function zx(e,t,n={}){return!!Rx(e,t,n)}function Bx(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,!Rx([...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&&zx([...e.parent.child(i-1).marks],t,n);)--i,a-=e.parent.child(i).nodeSize;for(;o<e.parent.childCount&&zx([...e.parent.child(o).marks],t,n);)s+=e.parent.child(o).nodeSize,o+=1;return{from:a,to:s}}function Vx(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 Hx=(e,t={})=>({tr:n,state:r,dispatch:i})=>{let a=Vx(e,r.schema),{doc:o,selection:s}=n,{$from:c,from:l,to:u}=s;if(i){let e=Bx(c,a,t);if(e&&e.from<=l&&e.to>=u){let t=Wm.create(o,e.from,e.to);n.setSelection(t)}}return!0},Ux=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 Wx(e){return e instanceof Wm}function Gx(e=0,t=0,n=0){return Math.min(Math.max(e,t),n)}function Kx(e,t=null){if(!t)return null;let n=Bm.atStart(e),r=Bm.atEnd(e);if(t===`start`||t===!0)return n;if(t===`end`)return r;let i=n.from,a=r.to;return t===`all`?Wm.create(e,Gx(0,i,a),Gx(e.content.size,i,a)):Wm.create(e,Gx(t,i,a),Gx(t,i,a))}function qx(){return navigator.platform===`Android`||/android/i.test(navigator.userAgent)}function Jx(){return[`iPad Simulator`,`iPhone Simulator`,`iPod Simulator`,`iPad`,`iPhone`,`iPod`].includes(navigator.platform)||navigator.userAgent.includes(`Mac`)&&`ontouchend`in document}function Yx(){return typeof navigator<`u`&&/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}var Xx=(e=null,t={})=>({editor:n,view:r,tr:i,dispatch:a})=>{t={scrollIntoView:!0,...t};let o=()=>{(Jx()||qx())&&r.dom.focus(),requestAnimationFrame(()=>{n.isDestroyed||(r.focus(),Yx()&&!Jx()&&!qx()&&r.dom.focus({preventScroll:!0}))})};if(r.hasFocus()&&e===null||e===!1)return!0;if(a&&e===null&&!Wx(n.state.selection))return o(),!0;let s=Kx(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},Zx=(e,t)=>n=>e.every((e,r)=>t(e,{...n,index:r})),Qx=(e,t)=>({tr:n,commands:r})=>r.insertContentAt({from:n.selection.from,to:n.selection.to},e,t),$x=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&&$x(r)}return e};function eS(e){let t=`<body>${e}</body>`,n=new window.DOMParser().parseFromString(t,`text/html`).body;return $x(n)}function tS(e,t,n){if(e instanceof Af||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),tS(``,t,n)}if(i){if(n.errorOnInvalidContent){let r=!1,i=``,a=new tp({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?ap.fromSchema(a).parseSlice(eS(e),n.parseOptions):ap.fromSchema(a).parse(eS(e),n.parseOptions),n.errorOnInvalidContent&&r)throw Error(`[tiptap error]: Invalid HTML content`,{cause:Error(`Invalid element found: ${i}`)})}let r=ap.fromSchema(t);return n.slice?r.parseSlice(eS(e),n.parseOptions).content:r.parse(eS(e),n.parseOptions)}return tS(``,t,n)}function nS(e,t,n){let r=e.steps.length-1;if(r<t)return;let i=e.steps[r];if(!(i instanceof Kp||i instanceof qp))return;let a=e.mapping.maps[r],o=0;a.forEach((e,t,n,r)=>{o===0&&(o=r)}),e.setSelection(Bm.near(e.doc.resolve(o),n))}var rS=e=>!(`type`in e),iS=(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{tS(t,a.schema,{parseOptions:s,errorOnInvalidContent:!0})}catch(e){o(e)}try{i=tS(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((rS(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&&nS(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},aS=()=>({state:e,dispatch:t})=>sb(e,t),oS=()=>({state:e,dispatch:t})=>cb(e,t),sS=()=>({state:e,dispatch:t})=>Xy(e,t),cS=()=>({state:e,dispatch:t})=>ib(e,t),lS=()=>({state:e,dispatch:t,tr:n})=>{try{let r=gm(e.doc,e.selection.$from.pos,-1);return r==null?!1:(n.join(r,2),t&&t(n),!0)}catch{return!1}},uS=()=>({state:e,dispatch:t,tr:n})=>{try{let r=gm(e.doc,e.selection.$from.pos,1);return r==null?!1:(n.join(r,2),t&&t(n),!0)}catch{return!1}},dS=()=>({state:e,dispatch:t})=>Zy(e,t),fS=()=>({state:e,dispatch:t})=>Qy(e,t);function pS(){return typeof navigator<`u`&&/Mac/.test(navigator.platform)}function mS(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))Jx()||pS()?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 hS=e=>({editor:t,view:n,tr:r,dispatch:i})=>{let a=mS(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 gS(e,t,n={}){let{from:r,to:i,empty:a}=e.selection,o=t?Ub(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=>Lx(e.node.attrs,n,{strict:!1}));return a?!!l.length:l.reduce((e,t)=>e+t.to-t.from,0)>=c}var _S=(e,t={})=>({state:n,dispatch:r})=>gS(n,Ub(e,n.schema),t)?lb(n,r):!1,vS=()=>({state:e,dispatch:t})=>mb(e,t),yS=e=>({state:t,dispatch:n})=>Pb(Ub(e,t.schema))(t,n),bS=()=>({state:e,dispatch:t})=>ub(e,t);function xS(e,t){return t.nodes[e]?`node`:t.marks[e]?`mark`:null}function SS(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 CS=(e,t)=>({tr:n,state:r,dispatch:i})=>{let a=null,o=null,s=xS(typeof e==`string`?e:e.name,r.schema);return s?(s===`node`&&(a=Ub(e,r.schema)),s===`mark`&&(o=Vx(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,SS(e.attrs,t)),o&&e.marks.length&&e.marks.forEach(i=>{o===i.type&&n.addMark(r,r+e.nodeSize,o.create(SS(i.attrs,t)))})})}),!0):!1},wS=()=>({tr:e,dispatch:t})=>(t&&e.scrollIntoView(),!0),TS=()=>({tr:e,dispatch:t})=>{if(t){let t=new qm(e.doc);e.setSelection(t)}return!0},ES=()=>({state:e,dispatch:t})=>tb(e,t),DS=()=>({state:e,dispatch:t})=>ab(e,t),OS=()=>({state:e,dispatch:t})=>_b(e,t),kS=()=>({state:e,dispatch:t})=>Cb(e,t),AS=()=>({state:e,dispatch:t})=>Sb(e,t);function jS(e,t,n={},r={}){return tS(e,t,{slice:!1,parseOptions:n,errorOnInvalidContent:r.errorOnInvalidContent})}var MS=(e,t=!1,n={},r={})=>({editor:i,tr:a,dispatch:o,commands:s})=>{let{doc:c}=a;if(n.preserveWhitespace!==`full`){let s=jS(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 NS(e,t){let n=Vx(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 PS(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 FS(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 IS(e){return t=>FS(t.$from,e)}function LS(e,t){return Sx(e,{from:0,to:e.content.size},t)}function RS(e,t){let n=Ub(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 zS(e,t){let n=xS(typeof t==`string`?t:t.name,e.schema);return n===`node`?RS(e,t):n===`mark`?NS(e,t):{}}function BS(e,t,n){let r=[];return e===t?n.resolve(e).marks().forEach(t=>{let i=Bx(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 VS(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 HS(e,t,n={}){let{empty:r,ranges:i}=e.selection,a=t?Vx(t,e.schema):null;if(r)return!!(e.storedMarks||e.selection.$from.marks()).filter(e=>!a||a.name===e.type.name).find(e=>Lx(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=>Lx(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 US(e,t,n={}){if(!t)return gS(e,null,n)||HS(e,null,n);let r=xS(t,e.schema);return r===`node`?gS(e,t,n):r===`mark`&&HS(e,t,n)}function WS(e,t){let{nodeExtensions:n}=Vb(t),r=n.find(t=>t.name===e);if(!r)return!1;let i=qb($(r,`group`,{name:r.name,options:r.options,storage:r.storage}));return typeof i==`string`&&i.split(` `).includes(`list`)}function GS(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&&(GS(e,{ignoreWhitespace:n,checkChildren:t})||(r=!1))}),r}return!1}function KS(e){return e instanceof Q}function qS(e,t,n){let{selection:r}=t,i=null;if(Wx(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 JS=(e,t={})=>({tr:n,state:r,dispatch:i})=>{let{selection:a}=n,{empty:o,ranges:s}=a,c=Vx(e,r.schema);if(i)if(o){let e=NS(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 qS(r,n,c)},YS=(e,t)=>({tr:n})=>(n.setMeta(e,t),!0),XS=(e,t={})=>({state:n,dispatch:r,chain:i})=>{let a=Ub(e,n.schema),o;return n.selection.$anchor.sameParent(n.selection.$head)&&(o=n.selection.$anchor.parent.attrs),a.isTextblock?i().command(({commands:e})=>Tb(a,{...o,...t})(n)?!0:e.clearNodes()).command(({state:e})=>Tb(a,{...o,...t})(e,r)).run():(console.warn(`[tiptap warn]: Currently "setNode()" only supports text block nodes.`),!1)},ZS=e=>({tr:t,dispatch:n})=>{if(n){let{doc:n}=t,r=Gx(e,0,n.content.size),i=Q.create(n,r);t.setSelection(i)}return!0},QS=e=>({tr:t,dispatch:n})=>{if(n){let{doc:n}=t,{from:r,to:i}=typeof e==`number`?{from:e,to:e}:e,a=Wm.atStart(n).from,o=Wm.atEnd(n).to,s=Gx(r,a,o),c=Gx(i,a,o),l=Wm.create(n,s,c);t.setSelection(l)}return!0},$S=e=>({state:t,dispatch:n})=>Lb(Ub(e,t.schema))(t,n);function eC(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 tC=({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=VS(l,s.node().type.name,s.node().attrs);if(a instanceof Q&&a.node.isBlock)return!s.parentOffset||!dm(o,s.pos)?!1:(r&&(e&&eC(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:PS(s.node(-1).contentMatchAt(s.indexAfter(-1))),p=d&&f?[{type:f,attrs:u}]:void 0,m=dm(t.doc,t.mapping.map(s.pos),1,p);if(!p&&!m&&dm(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 Wm&&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&&eC(n,i.extensionManager.splittableMarks),t.scrollIntoView()}return m},nC=(e,t={})=>({tr:n,state:r,dispatch:i,editor:a})=>{let o=Ub(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={...VS(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(Wm.near(n.doc.resolve(u))),n.scrollIntoView()}return!0}let f=c.pos===s.end()?u.contentMatchAt(0).defaultType:null,p={...VS(d,u.type.name,u.attrs),...t},m={...VS(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(!dm(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},rC=(e,t)=>{let n=IS(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&&pm(e.doc,n.pos)&&e.join(n.pos),!0},iC=(e,t)=>{let n=IS(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&&pm(e.doc,r)&&e.join(r),!0},aC=Object.freeze({__proto__:null,blur:Tx,clearContent:Ex,clearNodes:Dx,command:Ox,createParagraphNear:kx,cut:Ax,deleteCurrentNode:jx,deleteNode:Mx,deleteRange:Nx,deleteSelection:Px,enter:Fx,exitCode:Ix,extendMarkRange:Hx,first:Ux,focus:Xx,forEach:Zx,insertContent:Qx,insertContentAt:iS,joinBackward:sS,joinDown:oS,joinForward:cS,joinItemBackward:lS,joinItemForward:uS,joinTextblockBackward:dS,joinTextblockForward:fS,joinUp:aS,keyboardShortcut:hS,lift:_S,liftEmptyBlock:vS,liftListItem:yS,newlineInCode:bS,resetAttributes:CS,scrollIntoView:wS,selectAll:TS,selectNodeBackward:ES,selectNodeForward:DS,selectParentNode:OS,selectTextblockEnd:kS,selectTextblockStart:AS,setContent:MS,setMark:JS,setMeta:YS,setNode:XS,setNodeSelection:ZS,setTextSelection:QS,sinkListItem:$S,splitBlock:tC,splitListItem:nC,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=Ub(e,o.schema),m=Ub(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=IS(e=>WS(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(WS(x.node.type.name,d)&&p.validContent(x.node.content)&&s)return c().command(()=>(a.setNodeMarkup(x.pos,p),!0)).command(()=>rC(a,p)).command(()=>iC(a,p)).run()}return!n||!b||!s?c().command(()=>u().wrapInList(p,r)?!0:l.clearNodes()).wrapInList(p,r).command(()=>rC(a,p)).command(()=>iC(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(()=>rC(a,p)).command(()=>iC(a,p)).run()},toggleMark:(e,t={},n={})=>({state:r,commands:i})=>{let{extendEmptyMarkRange:a=!1}=n,o=Vx(e,r.schema);return HS(r,o,t)?i.unsetMark(o,{extendEmptyMarkRange:a}):i.setMark(o,t)},toggleNode:(e,t,n={})=>({state:r,commands:i})=>{let a=Ub(e,r.schema),o=Ub(t,r.schema),s=gS(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=Ub(e,n.schema);return gS(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=Vx(e,r.schema),{$from:c,empty:l,ranges:u}=o;if(!i)return!0;if(l&&a){let{from:e,to:t}=o,r=Bx(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=xS(typeof e==`string`?e:e.name,r.schema);return s?(s===`node`&&(a=Ub(e,r.schema)),s===`mark`&&(o=Vx(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})=>wb(Ub(e,n.schema),t)(n,r),wrapInList:(e,t={})=>({state:n,dispatch:r})=>jb(Ub(e,n.schema),t)(n,r)}),oC=xx.create({name:`commands`,addCommands(){return{...aC}}}),sC=xx.create({name:`drop`,addProseMirrorPlugins(){return[new sh({key:new uh(`tiptapDrop`),props:{handleDrop:(e,t,n,r)=>{this.editor.emit(`drop`,{editor:this.editor,event:t,slice:n,moved:r})}}})]}}),cC=xx.create({name:`editable`,addProseMirrorPlugins(){return[new sh({key:new uh(`editable`),props:{editable:()=>this.editor.options.editable}})]}}),lC=new uh(`focusEvents`),uC=xx.create({name:`focusEvents`,addProseMirrorPlugins(){let{editor:e}=this;return[new sh({key:lC,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}}}})]}}),dC=xx.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:Bm.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 Jx()||pS()?i:r},addProseMirrorPlugins(){return[new sh({key:new uh(`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=Bm.atStart(t.doc).from,l=Bm.atEnd(t.doc).to;if(a||!(o===c&&s===l)||!GS(n.doc))return;let u=n.tr,d=Rb({state:n,transaction:u}),{commands:f}=new zb({editor:this.editor,state:d});if(f.clearNodes(),u.steps.length)return u}})]}}),fC=xx.create({name:`paste`,addProseMirrorPlugins(){return[new sh({key:new uh(`tiptapPaste`),props:{handlePaste:(e,t,n)=>{this.editor.emit(`paste`,{editor:this.editor,event:t,slice:n})}}})]}}),pC=xx.create({name:`tabindex`,addProseMirrorPlugins(){return[new sh({key:new uh(`tabindex`),props:{attributes:()=>this.editor.isEditable?{tabindex:`0`}:{}}})]}}),mC=Object.freeze({__proto__:null,ClipboardTextSerializer:wx,Commands:oC,Drop:sC,Editable:cC,FocusEvents:uC,Keymap:dC,Paste:fC,Tabindex:pC,focusEventsPluginKey:lC}),hC=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)}},gC=`.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 _C(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 vC=class extends Bb{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=_C(gC,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=Kb(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?[cC,wx.configure({blockSeparator:this.options.coreExtensionOptions?.clipboardTextSerializer?.blockSeparator}),oC,uC,dC,pC,sC,fC].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 bx(e,this)}createCommandManager(){this.commandManager=new zb({editor:this})}createSchema(){this.schema=this.extensionManager.schema}createView(){let e;try{e=jS(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=jS(this.options.content,this.schema,this.options.parseOptions,{errorOnInvalidContent:!1})}let t=Kx(e,this.options.autofocus);this.view=new Ey(this.options.element,{...this.options.editorProps,attributes:{role:`textbox`,...this.options.editorProps?.attributes},dispatchTransaction:this.dispatchTransaction.bind(this),state:ah.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 zS(this.state,e)}isActive(e,t){let n=typeof e==`string`?e:null,r=typeof e==`string`?t:e;return US(this.state,n,r)}getJSON(){return this.state.doc.toJSON()}getHTML(){return tx(this.state.doc.content,this.schema)}getText(e){let{blockSeparator:t=`
|
|
95
|
-
|
|
96
|
-
`,textSerializers:n={}}=e||{};return LS(this.state.doc,{blockSeparator:t,textSerializers:{...Cx(this.schema),...n}})}get isEmpty(){return GS(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 hC(this.state.doc.resolve(e),this)}get $doc(){return this.$pos(0)}};function yC(e){return new ix({find:e.find,handler:({state:t,range:n,match:r})=>{let i=qb(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(BS(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 bC(e){return new ix({find:e.find,handler:({state:t,range:n,match:r})=>{let i=qb(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 xC(e){return new ix({find:e.find,handler:({state:t,range:n,match:r})=>{let i=t.doc.resolve(n.from),a=qb(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 SC(e){return new ix({find:e.find,handler:({state:t,range:n,match:r,chain:i})=>{let a=qb(e.getAttributes,void 0,r)||{},o=t.tr.delete(n.from,n.to),s=o.doc.resolve(n.from).blockRange(),c=s&&tm(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&&pm(o.doc,n.from-1)&&(!e.joinPredicate||e.joinPredicate(r,l))&&o.join(n.from-1)}})}var CC=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=qb($(this,`addOptions`,{name:this.name}))),this.storage=qb($(this,`addStorage`,{name:this.name,options:this.options}))||{}}static create(t={}){return new e(t)}configure(e={}){let t=this.extend({...this.config,addOptions:()=>ux(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=qb($(n,`addOptions`,{name:n.name})),n.storage=qb($(n,`addStorage`,{name:n.name,options:n.options})),n}};function wC(e){return new px({find:e.find,handler:({state:t,range:n,match:r,pasteEvent:i})=>{let a=qb(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(BS(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 TC(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 EC(e){return e.replace(/[-/\\^$*+?.()|[\]{}]/g,`\\$&`)}function DC(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}var OC={exports:{}},kC={},AC;function jC(){if(AC)return kC;AC=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 kC.useSyncExternalStore=e.useSyncExternalStore===void 0?u:e.useSyncExternalStore,kC}OC.exports=jC();var MC=OC.exports,NC=(...e)=>t=>{e.forEach(e=>{typeof e==`function`?e(t):e&&(e.current=t)})},PC=({contentComponent:e})=>{let t=MC.useSyncExternalStore(e.subscribe,e.getSnapshot,e.getServerSnapshot);return J.createElement(J.Fragment,null,Object.values(t))};function FC(){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]:Ni.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 IC=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=FC(),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:NC(t,this.editorContentRef),...n}),e?.contentComponent&&J.createElement(PC,{contentComponent:e.contentComponent}))}},LC=(0,J.forwardRef)((e,t)=>{let n=J.useMemo(()=>Math.floor(Math.random()*4294967295).toString(),[e.editor]);return J.createElement(IC,{key:n,innerRef:t,...e})}),RC=J.memo(LC),zC=DC(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}),BC={exports:{}},VC={},HC;function UC(){if(HC)return VC;HC=1;var e=J.default,t=MC;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 VC.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},VC}BC.exports=UC();var WC=BC.exports,GC=typeof window<`u`?J.useLayoutEffect:J.useEffect,KC=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 qC(e){let[t]=(0,J.useState)(()=>new KC(e.editor)),n=WC.useSyncExternalStoreWithSelector(t.subscribe,t.getSnapshot,t.getServerSnapshot,e.selector,e.equalityFn??zC);return GC(()=>t.watch(e.editor),[e.editor,t]),(0,J.useDebugValue)(n),n}var JC=typeof window>`u`,YC=JC||!!(typeof window<`u`&&window.next),XC=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?JC||YC?null:this.createEditor():(this.options.current.immediatelyRender,this.options.current.immediatelyRender?this.createEditor():null)}createEditor(){return new vC({...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 ZC(e={},t=[]){let n=(0,J.useRef)(e);n.current=e;let[r]=(0,J.useState)(()=>new XC(n)),i=MC.useSyncExternalStore(r.subscribe,r.getEditor,r.getServerSnapshot);return(0,J.useDebugValue)(i),(0,J.useEffect)(r.onRender(t)),qC({editor:i,selector:({transactionNumber:t})=>e.shouldRerenderOnTransaction===!1?null:e.immediatelyRender&&t===0?0:t+1}),i}(0,J.createContext)({editor:null}).Consumer;var QC=(0,J.createContext)({onDragStart:void 0}),$C=()=>(0,J.useContext)(QC);J.forwardRef((e,t)=>{let{onDragStart:n}=$C(),r=e.as||`div`;return J.createElement(r,{...e,ref:t,"data-node-view-wrapper":``,onDragStart:n,style:{whiteSpace:`normal`,...e.style}})});var ew=/^\s*>\s$/,tw=CC.create({name:`blockquote`,addOptions(){return{HTMLAttributes:{}}},content:`block+`,group:`block`,defining:!0,parseHTML(){return[{tag:`blockquote`}]},renderHTML({HTMLAttributes:e}){return[`blockquote`,Wb(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[SC({find:ew,type:this.type})]}}),nw=/(?:^|\s)(\*\*(?!\s+\*\*)((?:[^*]+))\*\*(?!\s+\*\*))$/,rw=/(?:^|\s)(\*\*(?!\s+\*\*)((?:[^*]+))\*\*(?!\s+\*\*))/g,iw=/(?:^|\s)(__(?!\s+__)((?:[^_]+))__(?!\s+__))$/,aw=/(?:^|\s)(__(?!\s+__)((?:[^_]+))__(?!\s+__))/g,ow=dx.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`,Wb(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[yC({find:nw,type:this.type}),yC({find:iw,type:this.type})]},addPasteRules(){return[wC({find:rw,type:this.type}),wC({find:aw,type:this.type})]}}),sw=`listItem`,cw=`textStyle`,lw=/^\s*([-+*])\s$/,uw=CC.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`,Wb(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(sw,this.editor.getAttributes(cw)).run():e.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-8":()=>this.editor.commands.toggleBulletList()}},addInputRules(){let e=SC({find:lw,type:this.type});return(this.options.keepMarks||this.options.keepAttributes)&&(e=SC({find:lw,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:()=>this.editor.getAttributes(cw),editor:this.editor})),[e]}}),dw=/(^|[^`])`([^`]+)`(?!`)/,fw=/(^|[^`])`([^`]+)`(?!`)/g,pw=dx.create({name:`code`,addOptions(){return{HTMLAttributes:{}}},excludes:`_`,code:!0,exitable:!0,parseHTML(){return[{tag:`code`}]},renderHTML({HTMLAttributes:e}){return[`code`,Wb(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[yC({find:dw,type:this.type})]},addPasteRules(){return[wC({find:fw,type:this.type})]}}),mw=/^```([a-z]+)?[\s\n]$/,hw=/^~~~([a-z]+)?[\s\n]$/,gw=CC.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`,Wb(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(Bm.near(r.resolve(o))),!0)):e.commands.exitCode()}}},addInputRules(){return[xC({find:mw,type:this.type,getAttributes:e=>({language:e[1]})}),xC({find:hw,type:this.type,getAttributes:e=>({language:e[1]})})]},addProseMirrorPlugins(){return[new sh({key:new uh(`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(Wm.near(a.doc.resolve(Math.max(0,a.selection.from-2)))),a.setMeta(`paste`,!0),e.dispatch(a),!0}}})]}}),_w=CC.create({name:`doc`,topNode:!0,content:`block+`});function vw(e={}){return new sh({view(t){return new yw(t,e)}})}var yw=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=ym(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)}},bw=xx.create({name:`dropCursor`,addOptions(){return{color:`currentColor`,width:1,class:void 0}},addProseMirrorPlugins(){return[vw(this.options)]}}),xw=class e extends Bm{constructor(e){super(e,e)}map(t,n){let r=t.resolve(n.map(this.head));return e.valid(r)?new e(r):Bm.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 Sw(this.anchor)}static valid(e){let t=e.parent;if(t.inlineContent||!ww(e)||!Tw(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}}};xw.prototype.visible=!1,xw.findFrom=xw.findGapCursorFrom,Bm.jsonID(`gapcursor`,xw);var Sw=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 xw.valid(t)?new xw(t):Bm.near(t)}};function Cw(e){return e.isAtom||e.spec.isolating||e.spec.createGapCursor}function ww(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||Cw(e.type))return!0;if(e.inlineContent)return!1}}return!0}function Tw(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||Cw(e.type))return!0;if(e.inlineContent)return!1}}return!0}function Ew(){return new sh({props:{decorations:jw,createSelectionBetween(e,t,n){return t.pos==n.pos&&xw.valid(n)?new xw(n):null},handleClick:kw,handleKeyDown:Dw,handleDOMEvents:{beforeinput:Aw}}})}var Dw=qy({ArrowLeft:Ow(`horiz`,-1),ArrowRight:Ow(`horiz`,1),ArrowUp:Ow(`vert`,-1),ArrowDown:Ow(`vert`,1)});function Ow(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 Wm){if(!i.endOfTextblock(n)||o.depth==0)return!1;s=!1,o=e.doc.resolve(t>0?o.after():o.before())}let c=xw.findGapCursorFrom(o,t,s);return c?(r&&r(e.tr.setSelection(new xw(c))),!0):!1}}function kw(e,t,n){if(!e||!e.editable)return!1;let r=e.state.doc.resolve(t);if(!xw.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 xw(r))),!0)}function Aw(e,t){if(t.inputType!=`insertCompositionText`||!(e.state.selection instanceof xw))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(Wm.near(a.doc.resolve(n.pos+1))),e.dispatch(a),!1}function jw(e){if(!(e.selection instanceof xw))return null;let t=document.createElement(`div`);return t.className=`ProseMirror-gapcursor`,qv.create(e.doc,[Wv.widget(e.selection.head,t,{key:`gapcursor`})])}var Mw=xx.create({name:`gapCursor`,addProseMirrorPlugins(){return[Ew()]},extendNodeSchema(e){return{allowGapCursor:qb($(e,`allowGapCursor`,{name:e.name,options:e.options,storage:e.storage}))??null}}}),Nw=CC.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`,Wb(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()}}}),Pw=CC.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]}`,Wb(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=>xC({find:RegExp(`^(#{${Math.min(...this.options.levels)},${e}})\\s$`),type:this.type,getAttributes:{level:e}}))}}),Fw=200,Iw=function(){};Iw.prototype.append=function(e){return e.length?(e=Iw.from(e),!this.length&&e||e.length<Fw&&this.leafAppend(e)||this.length<Fw&&e.leafPrepend(this)||this.appendInner(e)):this},Iw.prototype.prepend=function(e){return e.length?Iw.from(e).append(this):this},Iw.prototype.appendInner=function(e){return new Rw(this,e)},Iw.prototype.slice=function(e,t){return e===void 0&&(e=0),t===void 0&&(t=this.length),e>=t?Iw.empty:this.sliceInner(Math.max(0,e),Math.min(this.length,t))},Iw.prototype.get=function(e){if(!(e<0||e>=this.length))return this.getInner(e)},Iw.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)},Iw.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},Iw.from=function(e){return e instanceof Iw?e:e&&e.length?new Lw(e):Iw.empty};var Lw=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<=Fw)return new t(this.values.concat(e.flatten()))},t.prototype.leafPrepend=function(e){if(this.length+e.length<=Fw)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}(Iw);Iw.empty=new Lw([]);var Rw=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}(Iw),zw=500,Bw=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 Hw(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 Hw(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 Hw(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>Ww&&(s=Vw(s,l),o-=l),new e(s.append(a),o)}remapping(e,t){let n=new Lp;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 Hw(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 Hw(i,o,l))}else r.push(new Hw(i))},i);let l=[];for(let e=n;e<o;e++)l.push(new Hw(a.maps[e]));let u=this.items.slice(0,i).append(l).append(r),d=new e(u,s);return d.emptyItemCount()>zw&&(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 Hw(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(Iw.from(i.reverse()),a)}};Bw.empty=new Bw(Iw.empty,0);function Vw(e,t){let n;return e.forEach((e,r)=>{if(e.selection&&t--==0)return n=r,!1}),e.slice(n)}var Hw=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)}}},Uw=class{constructor(e,t,n,r,i){this.done=e,this.undone=t,this.prevRanges=n,this.prevTime=r,this.prevComposition=i}},Ww=20;function Gw(e,t,n,r){let i=n.getMeta($w),a;if(i)return i.historyState;n.getMeta(eT)&&(e=new Uw(e.done,e.undone,null,0,-1));let o=n.getMeta(`appendedTransaction`);if(n.steps.length==0)return e;if(o&&o.getMeta($w))return o.getMeta($w).redo?new Uw(e.done.addTransform(n,void 0,r,Qw(t)),e.undone,qw(n.mapping.maps),e.prevTime,e.prevComposition):new Uw(e.done,e.undone.addTransform(n,void 0,r,Qw(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||!Kw(n,e.prevRanges)),s=o?Jw(e.prevRanges,n.mapping):qw(n.mapping.maps);return new Uw(e.done.addTransform(n,a?t.selection.getBookmark():void 0,r,Qw(t)),Bw.empty,s,n.time,i??e.prevComposition)}else if(a=n.getMeta(`rebased`))return new Uw(e.done.rebased(n,a),e.undone.rebased(n,a),Jw(e.prevRanges,n.mapping),e.prevTime,e.prevComposition);else return new Uw(e.done.addMaps(n.mapping.maps),e.undone.addMaps(n.mapping.maps),Jw(e.prevRanges,n.mapping),e.prevTime,e.prevComposition)}function Kw(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 qw(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 Jw(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 Yw(e,t,n){let r=Qw(t),i=$w.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 Uw(n?s:a.remaining,n?a.remaining:s,null,0,-1);return a.transform.setSelection(o).setMeta($w,{redo:n,historyState:c})}var Xw=!1,Zw=null;function Qw(e){let t=e.plugins;if(Zw!=t){Xw=!1,Zw=t;for(let e=0;e<t.length;e++)if(t[e].spec.historyPreserveItems){Xw=!0;break}}return Xw}var $w=new uh(`history`),eT=new uh(`closeHistory`);function tT(e={}){return e={depth:e.depth||100,newGroupDelay:e.newGroupDelay||500},new sh({key:$w,state:{init(){return new Uw(Bw.empty,Bw.empty,null,0,-1)},apply(t,n,r){return Gw(n,r,t,e)}},config:e,props:{handleDOMEvents:{beforeinput(e,t){let n=t.inputType,r=n==`historyUndo`?rT:n==`historyRedo`?iT:null;return!r||!e.editable?!1:(t.preventDefault(),r(e.state,e.dispatch))}}}})}function nT(e,t){return(n,r)=>{let i=$w.getState(n);if(!i||(e?i.undone:i.done).eventCount==0)return!1;if(r){let a=Yw(i,n,e);a&&r(t?a.scrollIntoView():a)}return!0}}var rT=nT(!1,!0),iT=nT(!0,!0),aT=xx.create({name:`history`,addOptions(){return{depth:100,newGroupDelay:500}},addCommands(){return{undo:()=>({state:e,dispatch:t})=>rT(e,t),redo:()=>({state:e,dispatch:t})=>iT(e,t)}},addProseMirrorPlugins(){return[tT(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()}}}),oT=CC.create({name:`horizontalRule`,addOptions(){return{HTMLAttributes:{}}},group:`block`,parseHTML(){return[{tag:`hr`}]},renderHTML({HTMLAttributes:e}){return[`hr`,Wb(this.options.HTMLAttributes,e)]},addCommands(){return{setHorizontalRule:()=>({chain:e,state:t})=>{if(!TC(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}):KS(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(Wm.create(e.doc,t.pos+1)):t.nodeAfter.isBlock?e.setSelection(Q.create(e.doc,t.pos)):e.setSelection(Wm.create(e.doc,t.pos));else{let r=t.parent.type.contentMatch.defaultType?.create();r&&(e.insert(n,r),e.setSelection(Wm.create(e.doc,n+1)))}e.scrollIntoView()}return!0}).run()}}},addInputRules(){return[bC({find:/^(?:---|—-|___\s|\*\*\*\s)$/,type:this.type})]}}),sT=/(?:^|\s)(\*(?!\s+\*)((?:[^*]+))\*(?!\s+\*))$/,cT=/(?:^|\s)(\*(?!\s+\*)((?:[^*]+))\*(?!\s+\*))/g,lT=/(?:^|\s)(_(?!\s+_)((?:[^_]+))_(?!\s+_))$/,uT=/(?:^|\s)(_(?!\s+_)((?:[^_]+))_(?!\s+_))/g,dT=dx.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`,Wb(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[yC({find:sT,type:this.type}),yC({find:lT,type:this.type})]},addPasteRules(){return[wC({find:cT,type:this.type}),wC({find:uT,type:this.type})]}}),fT=CC.create({name:`listItem`,addOptions(){return{HTMLAttributes:{},bulletListTypeName:`bulletList`,orderedListTypeName:`orderedList`}},content:`paragraph block*`,defining:!0,parseHTML(){return[{tag:`li`}]},renderHTML({HTMLAttributes:e}){return[`li`,Wb(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)}}}),pT=`listItem`,mT=`textStyle`,hT=/^(\d+)\.\s$/,gT=CC.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`,Wb(this.options.HTMLAttributes,n),0]:[`ol`,Wb(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(pT,this.editor.getAttributes(mT)).run():e.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-7":()=>this.editor.commands.toggleOrderedList()}},addInputRules(){let e=SC({find:hT,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=SC({find:hT,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:e=>({start:+e[1],...this.editor.getAttributes(mT)}),joinPredicate:(e,t)=>t.childCount+t.attrs.start===+e[1],editor:this.editor})),[e]}}),_T=CC.create({name:`paragraph`,priority:1e3,addOptions(){return{HTMLAttributes:{}}},group:`block`,content:`inline*`,parseHTML(){return[{tag:`p`}]},renderHTML({HTMLAttributes:e}){return[`p`,Wb(this.options.HTMLAttributes,e),0]},addCommands(){return{setParagraph:()=>({commands:e})=>e.setNode(this.name)}},addKeyboardShortcuts(){return{"Mod-Alt-0":()=>this.editor.commands.setParagraph()}}}),vT=/(?:^|\s)(~~(?!\s+~~)((?:[^~]+))~~(?!\s+~~))$/,yT=/(?:^|\s)(~~(?!\s+~~)((?:[^~]+))~~(?!\s+~~))/g,bT=dx.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`,Wb(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[yC({find:vT,type:this.type})]},addPasteRules(){return[wC({find:yT,type:this.type})]}}),xT=CC.create({name:`text`,group:`inline`}),ST=xx.create({name:`starterKit`,addExtensions(){let e=[];return this.options.bold!==!1&&e.push(ow.configure(this.options.bold)),this.options.blockquote!==!1&&e.push(tw.configure(this.options.blockquote)),this.options.bulletList!==!1&&e.push(uw.configure(this.options.bulletList)),this.options.code!==!1&&e.push(pw.configure(this.options.code)),this.options.codeBlock!==!1&&e.push(gw.configure(this.options.codeBlock)),this.options.document!==!1&&e.push(_w.configure(this.options.document)),this.options.dropcursor!==!1&&e.push(bw.configure(this.options.dropcursor)),this.options.gapcursor!==!1&&e.push(Mw.configure(this.options.gapcursor)),this.options.hardBreak!==!1&&e.push(Nw.configure(this.options.hardBreak)),this.options.heading!==!1&&e.push(Pw.configure(this.options.heading)),this.options.history!==!1&&e.push(aT.configure(this.options.history)),this.options.horizontalRule!==!1&&e.push(oT.configure(this.options.horizontalRule)),this.options.italic!==!1&&e.push(dT.configure(this.options.italic)),this.options.listItem!==!1&&e.push(fT.configure(this.options.listItem)),this.options.orderedList!==!1&&e.push(gT.configure(this.options.orderedList)),this.options.paragraph!==!1&&e.push(_T.configure(this.options.paragraph)),this.options.strike!==!1&&e.push(bT.configure(this.options.strike)),this.options.text!==!1&&e.push(xT.configure(this.options.text)),e}}),CT={};function wT(e){let t=CT[e];if(t)return t;t=CT[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 TT(e,t){typeof t!=`string`&&(t=TT.defaultChars);let n=wT(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})}TT.defaultChars=`;/?:@&=+$,#`,TT.componentChars=``;var ET={};function DT(e){let t=ET[e];if(t)return t;t=ET[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 OT(e,t,n){typeof t!=`string`&&(n=t,t=OT.defaultChars),n===void 0&&(n=!0);let r=DT(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}OT.defaultChars=`;/?:@&=+$,-_.!~*'()#`,OT.componentChars=`-_.!~*'()`;function kT(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 AT(){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 jT=/^([a-z0-9.+-]+:)/i,MT=/:[0-9]*$/,NT=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,PT=[`%`,`/`,`?`,`;`,`#`,`'`,`{`,`}`,`|`,`\\`,`^`,"`",`<`,`>`,`"`,"`",` `,`\r`,`
|
|
101
|
-
`,` `],FT=[`/`,`?`,`#`],IT=255,LT=/^[+a-z0-9A-Z_-]{0,63}$/,RT=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,zT={javascript:!0,"javascript:":!0},BT={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0};function VT(e,t){if(e&&e instanceof AT)return e;let n=new AT;return n.parse(e,t),n}AT.prototype.parse=function(e,t){let n,r,i,a=e;if(a=a.trim(),!t&&e.split(`#`).length===1){let e=NT.exec(a);if(e)return this.pathname=e[1],e[2]&&(this.search=e[2]),this}let o=jT.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&&zT[o])&&(a=a.substr(2),this.slashes=!0)),!zT[o]&&(i||o&&!BT[o])){let e=-1;for(let t=0;t<FT.length;t++)r=a.indexOf(FT[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<PT.length;t++)r=a.indexOf(PT[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(LT)){let r=``;for(let e=0,t=n.length;e<t;e++)n.charCodeAt(e)>127?r+=`x`:r+=n[e];if(!r.match(LT)){let r=e.slice(0,t),i=e.slice(t+1),o=n.match(RT);o&&(r.push(o[1]),i.unshift(o[2])),i.length&&(a=i.join(`.`)+a),this.hostname=r.join(`.`);break}}}}this.hostname.length>IT&&(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),BT[n]&&this.hostname&&!this.pathname&&(this.pathname=``),this},AT.prototype.parseHost=function(e){let t=MT.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 HT=e({decode:()=>TT,encode:()=>OT,format:()=>kT,parse:()=>VT}),UT=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,WT=/[\0-\x1F\x7F-\x9F]/,GT=/[\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]/,KT=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\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]/,qT=/[\$\+<->\^`\|~\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]/,JT=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/,YT=e({Any:()=>UT,Cc:()=>WT,Cf:()=>GT,P:()=>KT,S:()=>qT,Z:()=>JT}),XT=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୕ୖ୪௫ఄ಄ದൡඅ櫬Āoungruent;扢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;怳Ādpuct;戏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ǣጓ\0y;䐎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Ā;tbrk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯᝳ;䎲;愶een;扬r;쀀𝔟gcostuvwឍឝឳេ៕៛ƀ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Ā;elƀ;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\0aĀ;t䀬;䁀ƀ;fl戁îᅠeĀmxent»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ↄⅪ←ٖ↛ǰ↉\0proø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;䅓Ācrir;榿;쀀𝔬ͯ\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\0m;櫳;櫽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))),ZT=new Uint16Array(`Ȁaglq \x1Bɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢`.split(``).map(e=>e.charCodeAt(0))),QT=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]]),$T=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 eE(e){return e>=55296&&e<=57343||e>1114111?65533:QT.get(e)??e}var tE;(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`})(tE||={});var nE=32,rE;(function(e){e[e.VALUE_LENGTH=49152]=`VALUE_LENGTH`,e[e.BRANCH_LENGTH=16256]=`BRANCH_LENGTH`,e[e.JUMP_TABLE=127]=`JUMP_TABLE`})(rE||={});function iE(e){return e>=tE.ZERO&&e<=tE.NINE}function aE(e){return e>=tE.UPPER_A&&e<=tE.UPPER_F||e>=tE.LOWER_A&&e<=tE.LOWER_F}function oE(e){return e>=tE.UPPER_A&&e<=tE.UPPER_Z||e>=tE.LOWER_A&&e<=tE.LOWER_Z||iE(e)}function sE(e){return e===tE.EQUALS||oE(e)}var cE;(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`})(cE||={});var lE;(function(e){e[e.Legacy=0]=`Legacy`,e[e.Strict=1]=`Strict`,e[e.Attribute=2]=`Attribute`})(lE||={});var uE=class{constructor(e,t,n){this.decodeTree=e,this.emitCodePoint=t,this.errors=n,this.state=cE.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=lE.Strict}startEntity(e){this.decodeMode=e,this.state=cE.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,t){switch(this.state){case cE.EntityStart:return e.charCodeAt(t)===tE.NUM?(this.state=cE.NumericStart,this.consumed+=1,this.stateNumericStart(e,t+1)):(this.state=cE.NamedEntity,this.stateNamedEntity(e,t));case cE.NumericStart:return this.stateNumericStart(e,t);case cE.NumericDecimal:return this.stateNumericDecimal(e,t);case cE.NumericHex:return this.stateNumericHex(e,t);case cE.NamedEntity:return this.stateNamedEntity(e,t)}}stateNumericStart(e,t){return t>=e.length?-1:(e.charCodeAt(t)|nE)===tE.LOWER_X?(this.state=cE.NumericHex,this.consumed+=1,this.stateNumericHex(e,t+1)):(this.state=cE.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(iE(r)||aE(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(iE(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===tE.SEMI)this.consumed+=1;else if(this.decodeMode===lE.Strict)return 0;return this.emitCodePoint(eE(this.result),this.consumed),this.errors&&(e!==tE.SEMI&&this.errors.missingSemicolonAfterCharacterReference(),this.errors.validateNumericCharacterReference(this.result)),this.consumed}stateNamedEntity(e,t){let{decodeTree:n}=this,r=n[this.treeIndex],i=(r&rE.VALUE_LENGTH)>>14;for(;t<e.length;t++,this.excess++){let a=e.charCodeAt(t);if(this.treeIndex=fE(n,r,this.treeIndex+Math.max(1,i),a),this.treeIndex<0)return this.result===0||this.decodeMode===lE.Attribute&&(i===0||sE(a))?0:this.emitNotTerminatedNamedEntity();if(r=n[this.treeIndex],i=(r&rE.VALUE_LENGTH)>>14,i!==0){if(a===tE.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==lE.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]&rE.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]&~rE.VALUE_LENGTH:r[e+1],n),t===3&&this.emitCodePoint(r[e+2],n),n}end(){var e;switch(this.state){case cE.NamedEntity:return this.result!==0&&(this.decodeMode!==lE.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case cE.NumericDecimal:return this.emitNumericEntity(0,2);case cE.NumericHex:return this.emitNumericEntity(0,3);case cE.NumericStart:return(e=this.errors)==null||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case cE.EntityStart:return 0}}};function dE(e){let t=``,n=new uE(e,e=>t+=$T(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 fE(e,t,n,r){let i=(t&rE.BRANCH_LENGTH)>>7,a=t&rE.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 pE=dE(XT);dE(ZT);function mE(e,t=lE.Legacy){return pE(e,t)}function hE(e){return pE(e,lE.Strict)}var gE=e({arrayReplaceAt:()=>SE,asciiTrim:()=>GE,assign:()=>xE,escapeHtml:()=>FE,escapeRE:()=>LE,fromCodePoint:()=>wE,has:()=>bE,isMdAsciiPunct:()=>HE,isPunctChar:()=>BE,isPunctCharCode:()=>VE,isSpace:()=>RE,isString:()=>vE,isValidEntityCode:()=>CE,isWhiteSpace:()=>zE,lib:()=>KE,normalizeReference:()=>UE,unescapeAll:()=>AE,unescapeMd:()=>kE});function _E(e){return Object.prototype.toString.call(e)}function vE(e){return _E(e)===`[object String]`}var yE=Object.prototype.hasOwnProperty;function bE(e,t){return yE.call(e,t)}function xE(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 SE(e,t,n){return[].concat(e.slice(0,t),n,e.slice(t+1))}function CE(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 wE(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 TE=/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g,EE=RegExp(TE.source+`|&([a-z#][a-z0-9]{1,31});`,`gi`),DE=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i;function OE(e,t){if(t.charCodeAt(0)===35&&DE.test(t)){let n=t[1].toLowerCase()===`x`?parseInt(t.slice(2),16):parseInt(t.slice(1),10);return CE(n)?wE(n):e}let n=mE(e);return n===e?e:n}function kE(e){return e.indexOf(`\\`)<0?e:e.replace(TE,`$1`)}function AE(e){return e.indexOf(`\\`)<0&&e.indexOf(`&`)<0?e:e.replace(EE,function(e,t,n){return t||OE(e,n)})}var jE=/[&<>"]/,ME=/[&<>"]/g,NE={"&":`&`,"<":`<`,">":`>`,'"':`"`};function PE(e){return NE[e]}function FE(e){return jE.test(e)?e.replace(ME,PE):e}var IE=/[.?*+^$[\]\\(){}|-]/g;function LE(e){return e.replace(IE,`\\$&`)}function RE(e){switch(e){case 9:case 32:return!0}return!1}function zE(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 BE(e){return KT.test(e)||qT.test(e)}function VE(e){return BE(wE(e))}function HE(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 UE(e){return e=e.trim().replace(/\s+/g,` `),e.toLowerCase().toUpperCase()}function WE(e){return e===32||e===9||e===10||e===13}function GE(e){let t=0;for(;t<e.length&&WE(e.charCodeAt(t));t++);let n=e.length-1;for(;n>=t&&WE(e.charCodeAt(n));n--);return e.slice(t,n+1)}var KE={mdurl:HT,ucmicro:YT};function qE(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 JE(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=AE(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=AE(e.slice(t,i)),a.pos=i,a.ok=!0,a)}function YE(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+=AE(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+=AE(e.slice(t,a)),o}var XE=e({parseLinkDestination:()=>JE,parseLinkLabel:()=>qE,parseLinkTitle:()=>YE}),ZE={};ZE.code_inline=function(e,t,n,r,i){let a=e[t];return`<code`+i.renderAttrs(a)+`>`+FE(a.content)+`</code>`},ZE.code_block=function(e,t,n,r,i){let a=e[t];return`<pre`+i.renderAttrs(a)+`><code>`+FE(e[t].content)+`</code></pre>
|
|
102
|
-
`},ZE.fence=function(e,t,n,r,i){let a=e[t],o=a.info?AE(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)||FE(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`},ZE.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)},ZE.hardbreak=function(e,t,n){return n.xhtmlOut?`<br />
|
|
104
|
-
`:`<br>
|
|
105
|
-
`},ZE.softbreak=function(e,t,n){return n.breaks?n.xhtmlOut?`<br />
|
|
106
|
-
`:`<br>
|
|
107
|
-
`:`
|
|
108
|
-
`},ZE.text=function(e,t){return FE(e[t].content)},ZE.html_block=function(e,t){return e[t].content},ZE.html_inline=function(e,t){return e[t].content};function QE(){this.rules=xE({},ZE)}QE.prototype.renderAttrs=function(e){let t,n,r;if(!e.attrs)return``;for(r=``,t=0,n=e.attrs.length;t<n;t++)r+=` `+FE(e.attrs[t][0])+`="`+FE(e.attrs[t][1])+`"`;return r},QE.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},QE.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},QE.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},QE.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 $E(){this.__rules__=[],this.__cache__=null}$E.prototype.__find__=function(e){for(let t=0;t<this.__rules__.length;t++)if(this.__rules__[t].name===e)return t;return-1},$E.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))})})},$E.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},$E.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},$E.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},$E.prototype.push=function(e,t,n){let r=n||{};this.__rules__.push({name:e,enabled:!0,fn:t,alt:r.alt||[]}),this.__cache__=null},$E.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},$E.prototype.enableOnly=function(e,t){Array.isArray(e)||(e=[e]),this.__rules__.forEach(function(e){e.enabled=!1}),this.enable(e,t)},$E.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},$E.prototype.getRules=function(e){return this.__cache__===null&&this.__compile__(),this.__cache__[e]||[]};function eD(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}eD.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},eD.prototype.attrPush=function(e){this.attrs?this.attrs.push(e):this.attrs=[e]},eD.prototype.attrSet=function(e,t){let n=this.attrIndex(e),r=[e,t];n<0?this.attrPush(r):this.attrs[n]=r},eD.prototype.attrGet=function(e){let t=this.attrIndex(e),n=null;return t>=0&&(n=this.attrs[t][1]),n},eD.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 tD(e,t,n){this.src=e,this.env=n,this.tokens=[],this.inlineMode=!1,this.md=t}tD.prototype.Token=eD;var nD=/\r\n?|\n/g,rD=/\0/g;function iD(e){let t;t=e.src.replace(nD,`
|
|
112
|
-
`),t=t.replace(rD,`�`),e.src=t}function aD(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 oD(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 sD(e){return/^<a[>\s]/i.test(e)}function cD(e){return/^<\/a\s*>/i.test(e)}function lD(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`&&(sD(o.content)&&i>0&&i--,cD(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=SE(r,a,c)}}}}var uD=/\+-|\.\.|\?\?\?\?|!!!!|,,|--/,dD=/\((c|tm|r)\)/i,fD=/\((c|tm|r)\)/gi,pD={c:`©`,r:`®`,tm:`™`};function mD(e,t){return pD[t.toLowerCase()]}function hD(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(fD,mD)),r.type===`link_open`&&r.info===`auto`&&t--,r.type===`link_close`&&r.info===`auto`&&t++}}function gD(e){let t=0;for(let n=e.length-1;n>=0;n--){let r=e[n];r.type===`text`&&!t&&uD.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 _D(e){let t;if(e.md.options.typographer)for(t=e.tokens.length-1;t>=0;t--)e.tokens[t].type===`inline`&&(dD.test(e.tokens[t].content)&&hD(e.tokens[t].children),uD.test(e.tokens[t].content)&&gD(e.tokens[t].children))}var vD=/['"]/,yD=/['"]/g,bD=`’`;function xD(e,t,n,r){e[t]||(e[t]=[]),e[t].push({pos:n,ch:r})}function SD(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 CD(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;){yD.lastIndex=l;let o=yD.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=HE(m)||VE(m),_=HE(h)||VE(h),v=zE(m),y=zE(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&&xD(i,a,o.index,bD);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]),xD(i,a,o.index,c),xD(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&&xD(i,a,o.index,bD)}}Object.keys(i).forEach(function(t){e[t].content=SD(e[t].content,i[t])})}function wD(e){if(e.md.options.typographer)for(let t=e.tokens.length-1;t>=0;t--)e.tokens[t].type!==`inline`||!vD.test(e.tokens[t].content)||CD(e.tokens[t].children,e)}function TD(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 ED=[[`normalize`,iD],[`block`,aD],[`inline`,oD],[`linkify`,lD],[`replacements`,_D],[`smartquotes`,wD],[`text_join`,TD]];function DD(){this.ruler=new $E;for(let e=0;e<ED.length;e++)this.ruler.push(ED[e][0],ED[e][1])}DD.prototype.process=function(e){let t=this.ruler.getRules(``);for(let n=0,r=t.length;n<r;n++)t[n](e)},DD.prototype.State=tD;function OD(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(RE(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}OD.prototype.push=function(e,t,n){let r=new eD(e,t,n);return r.block=!0,n<0&&this.level--,r.level=this.level,n>0&&this.level++,this.tokens.push(r),r},OD.prototype.isEmpty=function(e){return this.bMarks[e]+this.tShift[e]>=this.eMarks[e]},OD.prototype.skipEmptyLines=function(e){for(let t=this.lineMax;e<t&&!(this.bMarks[e]+this.tShift[e]<this.eMarks[e]);e++);return e},OD.prototype.skipSpaces=function(e){for(let t=this.src.length;e<t&&RE(this.src.charCodeAt(e));e++);return e},OD.prototype.skipSpacesBack=function(e,t){if(e<=t)return e;for(;e>t;)if(!RE(this.src.charCodeAt(--e)))return e+1;return e},OD.prototype.skipChars=function(e,t){for(let n=this.src.length;e<n&&this.src.charCodeAt(e)===t;e++);return e},OD.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},OD.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(RE(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(``)},OD.prototype.Token=eD;var kD=65536;function AD(e,t){let n=e.bMarks[t]+e.tShift[t],r=e.eMarks[t];return e.src.slice(n,r)}function jD(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 MD(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&&!RE(s)||o===45&&RE(s))return!1;for(;a<e.eMarks[i];){let t=e.src.charCodeAt(a);if(t!==124&&t!==45&&t!==58&&!RE(t))return!1;a++}let c=AD(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=AD(e,t).trim(),c.indexOf(`|`)===-1||e.sCount[t]-e.blkIndent>=4)return!1;l=jD(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=AD(e,i).trim(),!c)||e.sCount[i]-e.blkIndent>=4||(l=jD(c),l.length&&l[0]===``&&l.shift(),l.length&&l[l.length-1]===``&&l.pop(),y+=d-l.length,y>kD))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 ND(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 PD(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 FD(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(RE(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 ID(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&&!RE(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 LD(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&&!RE(e.src.charCodeAt(r))?-1:r}function RD(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),!RE(a))?-1:i}function zD(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 BD(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=RD(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=LD(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=RD(e,c),p<0)break;o=e.bMarks[c]+e.tShift[c]}else if(p=LD(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&&zD(e,h),!0}function VD(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(!RE(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(!RE(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&&RE(c.charCodeAt(i));)i++;if(i<a&&c.charCodeAt(i)!==10&&g)for(g=``,i=f,o=p;i<a&&RE(c.charCodeAt(i));)i++;if(i<a&&c.charCodeAt(i)!==10)return!1;let _=UE(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 HD=`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(`.`),UD=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]*?\\]\\]>)`),WD=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*>)`),GD=[[/^<(script|pre|style|textarea)(?=(\s|>|$))/i,/<\/(script|pre|style|textarea)>/i,!0],[/^<!--/,/-->/,!0],[/^<\?/,/\?>/,!0],[/^<![A-Z]/,/>/,!0],[/^<!\[CDATA\[/,/\]\]>/,!0],[RegExp(`^</?(`+HD.join(`|`)+`)(?=(\\s|/?>|$))`,`i`),/^$/,!0],[RegExp(WD.source+`\\s*$`),/^$/,!1]];function KD(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<GD.length&&!GD[s][0].test(o);s++);if(s===GD.length)return!1;if(r)return GD[s][2];let c=t+1,l=GD[s][1].test(``);if(!GD[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),GD[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 qD(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&&!RE(o))return!1;if(r)return!0;a=e.skipSpacesBack(a,i);let c=e.skipCharsBack(a,35,i);c>i&&RE(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=GE(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 JD(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=GE(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 YD(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=GE(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 XD=[[`table`,MD,[`paragraph`,`reference`]],[`code`,ND],[`fence`,PD,[`paragraph`,`reference`,`blockquote`,`list`]],[`blockquote`,FD,[`paragraph`,`reference`,`blockquote`,`list`]],[`hr`,ID,[`paragraph`,`reference`,`blockquote`,`list`]],[`list`,BD,[`paragraph`,`reference`,`blockquote`]],[`reference`,VD],[`html_block`,KD,[`paragraph`,`reference`,`blockquote`]],[`heading`,qD,[`paragraph`,`reference`,`blockquote`]],[`lheading`,JD],[`paragraph`,YD]];function ZD(){this.ruler=new $E;for(let e=0;e<XD.length;e++)this.ruler.push(XD[e][0],XD[e][1],{alt:(XD[e][2]||[]).slice()})}ZD.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)}},ZD.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)},ZD.prototype.State=OD;function QD(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}QD.prototype.pushPending=function(){let e=new eD(`text`,``,0);return e.content=this.pending,e.level=this.pendingLevel,this.tokens.push(e),this.pending=``,e},QD.prototype.push=function(e,t,n){this.pending&&this.pushPending();let r=new eD(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},QD.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=HE(i)||VE(i),l=HE(s)||VE(s),u=zE(i),d=zE(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}},QD.prototype.Token=eD;function $D(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 eO(e,t){let n=e.pos;for(;n<e.posMax&&!$D(e.src.charCodeAt(n));)n++;return n===e.pos?!1:(t||(e.pending+=e.src.slice(e.pos,n)),e.pos=n,!0)}var tO=/(?:^|[^a-z0-9.+-])([a-z][a-z0-9.+-]*)$/i;function nO(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(tO);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 rO(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&&RE(e.src.charCodeAt(n));)n++;return e.pos=n,!0}var iO=[];for(let e=0;e<256;e++)iO.push(0);`\\!"#$%&'()*+,./:;<=>?@[]^_\`{|}~-`.split(``).forEach(function(e){iO[e.charCodeAt(0)]=1});function aO(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),RE(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&&iO[i]!==0?t.content=a:t.content=o,t.markup=o,t.info=`escape`}return e.pos=n+1,!0}function oO(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 sO(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 cO(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 lO(e){let t=e.tokens_meta,n=e.tokens_meta.length;cO(e,e.delimiters);for(let r=0;r<n;r++)t[r]&&t[r].delimiters&&cO(e,t[r].delimiters)}var uO={tokenize:sO,postProcess:lO};function dO(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 fO(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 pO(e){let t=e.tokens_meta,n=e.tokens_meta.length;fO(e,e.delimiters);for(let r=0;r<n;r++)t[r]&&t[r].delimiters&&fO(e,t[r].delimiters)}var mO={tokenize:dO,postProcess:pO};function hO(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),!(!RE(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),!(!RE(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),!(!RE(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[UE(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 gO(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),!(!RE(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),!(!RE(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),!(!RE(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[UE(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 _O=/^([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])?)*)$/,vO=/^([a-zA-Z][a-zA-Z0-9+.-]{1,31}):([^<>\x00-\x20]*)$/;function yO(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(vO.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(_O.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 bO(e){return/^<a[>\s]/i.test(e)}function xO(e){return/^<\/a\s*>/i.test(e)}function SO(e){let t=e|32;return t>=97&&t<=122}function CO(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&&!SO(i))return!1;let a=e.src.slice(r).match(UD);if(!a)return!1;if(!t){let t=e.push(`html_inline`,``,0);t.content=a[0],bO(t.content)&&e.linkLevel++,xO(t.content)&&e.linkLevel--}return e.pos+=a[0].length,!0}var wO=/^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));/i,TO=/^&([a-z][a-z0-9]{1,31});/i;function EO(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(wO);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=CE(t)?wE(t):wE(65533),n.markup=r[0],n.info=`entity`}return e.pos+=r[0].length,!0}}else{let r=e.src.slice(n).match(TO);if(r){let n=hE(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 DO(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 OO(e){let t=e.tokens_meta,n=e.tokens_meta.length;DO(e.delimiters);for(let e=0;e<n;e++)t[e]&&t[e].delimiters&&DO(t[e].delimiters)}function kO(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 AO=[[`text`,eO],[`linkify`,nO],[`newline`,rO],[`escape`,aO],[`backticks`,oO],[`strikethrough`,uO.tokenize],[`emphasis`,mO.tokenize],[`link`,hO],[`image`,gO],[`autolink`,yO],[`html_inline`,CO],[`entity`,EO]],jO=[[`balance_pairs`,OO],[`strikethrough`,uO.postProcess],[`emphasis`,mO.postProcess],[`fragments_join`,kO]];function MO(){this.ruler=new $E;for(let e=0;e<AO.length;e++)this.ruler.push(AO[e][0],AO[e][1]);this.ruler2=new $E;for(let e=0;e<jO.length;e++)this.ruler2.push(jO[e][0],jO[e][1])}MO.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},MO.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()},MO.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)},MO.prototype.State=QD;function NO(e){let t={};e||={},t.src_Any=UT.source,t.src_Cc=WT.source,t.src_Z=JT.source,t.src_P=KT.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 PO(e){return Array.prototype.slice.call(arguments,1).forEach(function(t){t&&Object.keys(t).forEach(function(n){e[n]=t[n]})}),e}function FO(e){return Object.prototype.toString.call(e)}function IO(e){return FO(e)===`[object String]`}function LO(e){return FO(e)===`[object Object]`}function RO(e){return FO(e)===`[object RegExp]`}function zO(e){return FO(e)===`[object Function]`}function BO(e){return e.replace(/[.?*+^$[\]\\(){}|-]/g,`\\$&`)}var VO={fuzzyLink:!0,fuzzyEmail:!0,fuzzyIP:!1};function HO(e){return Object.keys(e||{}).reduce(function(e,t){return e||VO.hasOwnProperty(t)},!1)}var UO={"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}}},WO=`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]`,GO=`biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф`.split(`|`);function KO(e){return function(t,n){let r=t.slice(n);return e.test(r)?r.match(e)[0].length:0}}function qO(){return function(e,t){t.normalize(e)}}function JO(e){let t=e.re=NO(e.__opts__),n=e.__tlds__.slice();e.onCompile(),e.__tlds_replaced__||n.push(WO),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,LO(n)){RO(n.validate)?r.validate=KO(n.validate):zO(n.validate)?r.validate=n.validate:a(t,n),zO(n.normalize)?r.normalize=n.normalize:n.normalize?a(t,n):r.normalize=qO();return}if(IO(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:qO()};let o=Object.keys(e.__compiled__).filter(function(t){return t.length>0&&e.__compiled__[t]}).map(BO).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 YO(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 XO(e,t){if(!(this instanceof XO))return new XO(e,t);t||HO(e)&&(t=e,e={}),this.__opts__=PO({},VO,t),this.__schemas__=PO({},UO,e),this.__compiled__={},this.__tlds__=GO,this.__tlds_replaced__=!1,this.re={},JO(this)}XO.prototype.add=function(e,t){return this.__schemas__[e]=t,JO(this),this},XO.prototype.set=function(e){return this.__opts__=PO(this.__opts__,e),this},XO.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)},XO.prototype.pretest=function(e){return this.re.pretest.test(e)},XO.prototype.testSchemaAt=function(e,t,n){return this.__compiled__[t.toLowerCase()]?this.__compiled__[t.toLowerCase()].validate(e,n,this):0},XO.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 YO(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},XO.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 YO(e,t[2],t.index+t[1].length,t.index+t[0].length+n);return this.__compiled__[r.schema].normalize(r,this),r},XO.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(),JO(this),this):(this.__tlds__=e.slice(),this.__tlds_replaced__=!0,JO(this),this)},XO.prototype.normalize=function(e){e.schema||(e.url=`http://${e.url}`),e.schema===`mailto:`&&!/^mailto:/i.test(e.url)&&(e.url=`mailto:${e.url}`)},XO.prototype.onCompile=function(){};var ZO=2147483647,QO=36,$O=1,ek=26,tk=38,nk=700,rk=72,ik=128,ak=`-`,ok=/^xn--/,sk=/[^\0-\x7F]/,ck=/[\x2E\u3002\uFF0E\uFF61]/g,lk={overflow:`Overflow: input needs wider integers to process`,"not-basic":`Illegal input >= 0x80 (not a basic code point)`,"invalid-input":`Invalid input`},uk=QO-$O,dk=Math.floor,fk=String.fromCharCode;function pk(e){throw RangeError(lk[e])}function mk(e,t){let n=[],r=e.length;for(;r--;)n[r]=t(e[r]);return n}function hk(e,t){let n=e.split(`@`),r=``;n.length>1&&(r=n[0]+`@`,e=n[1]),e=e.replace(ck,`.`);let i=mk(e.split(`.`),t).join(`.`);return r+i}function gk(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 _k=e=>String.fromCodePoint(...e),vk=function(e){return e>=48&&e<58?26+(e-48):e>=65&&e<91?e-65:e>=97&&e<123?e-97:QO},yk=function(e,t){return e+22+75*(e<26)-((t!=0)<<5)},bk=function(e,t,n){let r=0;for(e=n?dk(e/nk):e>>1,e+=dk(e/t);e>455;r+=QO)e=dk(e/uk);return dk(r+36*e/(e+tk))},xk=function(e){let t=[],n=e.length,r=0,i=ik,a=rk,o=e.lastIndexOf(ak);o<0&&(o=0);for(let n=0;n<o;++n)e.charCodeAt(n)>=128&&pk(`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=QO;;i+=QO){s>=n&&pk(`invalid-input`);let o=vk(e.charCodeAt(s++));o>=QO&&pk(`invalid-input`),o>dk((ZO-r)/t)&&pk(`overflow`),r+=o*t;let c=i<=a?$O:i>=a+ek?ek:i-a;if(o<c)break;let l=QO-c;t>dk(ZO/l)&&pk(`overflow`),t*=l}let c=t.length+1;a=bk(r-o,c,o==0),dk(r/c)>ZO-i&&pk(`overflow`),i+=dk(r/c),r%=c,t.splice(r++,0,i)}return String.fromCodePoint(...t)},Sk=function(e){let t=[];e=gk(e);let n=e.length,r=ik,i=0,a=rk;for(let n of e)n<128&&t.push(fk(n));let o=t.length,s=o;for(o&&t.push(ak);s<n;){let n=ZO;for(let t of e)t>=r&&t<n&&(n=t);let c=s+1;n-r>dk((ZO-i)/c)&&pk(`overflow`),i+=(n-r)*c,r=n;for(let n of e)if(n<r&&++i>ZO&&pk(`overflow`),n===r){let e=i;for(let n=QO;;n+=QO){let r=n<=a?$O:n>=a+ek?ek:n-a;if(e<r)break;let i=e-r,o=QO-r;t.push(fk(yk(r+i%o,0))),e=dk(i/o)}t.push(fk(yk(e,0))),a=bk(i,c,s===o),i=0,++s}++i,++r}return t.join(``)},Ck={version:`2.3.1`,ucs2:{decode:gk,encode:_k},decode:xk,encode:Sk,toASCII:function(e){return hk(e,function(e){return sk.test(e)?`xn--`+Sk(e):e})},toUnicode:function(e){return hk(e,function(e){return ok.test(e)?xk(e.slice(4).toLowerCase()):e})}},wk={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`]}}}},Tk=/^(vbscript|javascript|file|data):/,Ek=/^data:image\/(gif|png|jpeg|webp);/;function Dk(e){let t=e.trim().toLowerCase();return!Tk.test(t)||Ek.test(t)}var Ok=[`http:`,`https:`,`mailto:`];function kk(e){let t=VT(e,!0);if(t.hostname&&(!t.protocol||Ok.indexOf(t.protocol)>=0))try{t.hostname=Ck.toASCII(t.hostname)}catch{}return OT(kT(t))}function Ak(e){let t=VT(e,!0);if(t.hostname&&(!t.protocol||Ok.indexOf(t.protocol)>=0))try{t.hostname=Ck.toUnicode(t.hostname)}catch{}return TT(kT(t),TT.defaultChars+`%`)}function jk(e,t){if(!(this instanceof jk))return new jk(e,t);t||vE(e)||(t=e||{},e=`default`),this.inline=new MO,this.block=new ZD,this.core=new DD,this.renderer=new QE,this.linkify=new XO,this.validateLink=Dk,this.normalizeLink=kk,this.normalizeLinkText=Ak,this.utils=gE,this.helpers=xE({},XE),this.options={},this.configure(e),t&&this.set(t)}jk.prototype.set=function(e){return xE(this.options,e),this},jk.prototype.configure=function(e){let t=this;if(vE(e)){let t=e;if(e=wk[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},jk.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},jk.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},jk.prototype.use=function(e){let t=[this].concat(Array.prototype.slice.call(arguments,1));return e.apply(e,t),this},jk.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},jk.prototype.render=function(e,t){return t||={},this.renderer.render(this.parse(e,t),this.options,t)},jk.prototype.parseInline=function(e,t){let n=new this.core.State(e,this,t);return n.inlineMode=!0,this.core.process(n),n.tokens},jk.prototype.renderInline=function(e,t){return t||={},this.renderer.render(this.parseInline(e,t),this.options,t)};var Mk=new tp({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 Nk(e,t){if(e.isText&&t.isText&&uf.sameSet(e.marks,t.marks))return e.withText(e.text+t.text)}var Pk=class{constructor(e,t){this.schema=e,this.tokenHandlers=t,this.stack=[{type:e.topNodeType,attrs:null,content:[],marks:uf.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=Nk(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:uf.none})}closeNode(){let e=this.stack.pop();return this.addNode(e.type,e.attrs,e.content)}};function Fk(e,t,n,r){return e.getAttrs?e.getAttrs(t,n,r):e.attrs instanceof Function?e.attrs(t):e.attrs}function Ik(e,t){return e.noCloseToken||t==`code_inline`||t==`code_block`||t==`fence`}function Lk(e){return e[e.length-1]==`
|
|
114
|
-
`?e.slice(0,e.length-1):e}function Rk(){}function zk(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);Ik(i,r)?n[r]=(e,n,r,a)=>{e.openNode(t,Fk(i,n,r,a)),e.addText(Lk(n.content)),e.closeNode()}:(n[r+`_open`]=(e,n,r,a)=>e.openNode(t,Fk(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,Fk(i,n,r,a))}else if(i.mark){let t=e.marks[i.mark];Ik(i,r)?n[r]=(e,n,r,a)=>{e.openMark(t.create(Fk(i,n,r,a))),e.addText(Lk(n.content)),e.closeMark(t)}:(n[r+`_open`]=(e,n,r,a)=>e.openMark(t.create(Fk(i,n,r,a))),n[r+`_close`]=e=>e.closeMark(t))}else if(i.ignore)Ik(i,r)?n[r]=Rk:(n[r+`_open`]=Rk,n[r+`_close`]=Rk);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 Bk=class{constructor(e,t,n){this.schema=e,this.tokenizer=t,this.tokens=n,this.tokenHandlers=zk(e,n)}parse(e,t={}){let n=new Pk(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 Vk(e,t){for(;++t<e.length;)if(e[t].type!=`list_item_open`)return e[t].hidden;return!1}new Bk(Mk,jk(`commonmark`,{html:!1}),{blockquote:{block:`blockquote`},paragraph:{block:`paragraph`},list_item:{block:`list_item`},bullet_list:{block:`bullet_list`,getAttrs:(e,t,n)=>({tight:Vk(t,n)})},ordered_list:{block:`ordered_list`,getAttrs:(e,t,n)=>({order:+e.attrGet(`start`)||1,tight:Vk(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 Hk={open:``,close:``,mixable:!0},Uk=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 Kk(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(`]/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=Gk(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 Wk(n.child(r),-1)},close(e,t,n,r){return Wk(n.child(r-1),1)},escape:!1}});function Wk(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 Gk(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 Kk=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=Hk}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++}}},qk=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),Jk=Object.defineProperty,Yk=(e,t,n)=>t in e?Jk(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Xk=(e,t,n)=>(Yk(e,typeof t==`symbol`?t:t+``,n),n),Zk=xx.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))}}}}}),Qk=jk();function $k(e,t){return Qk.inline.State.prototype.scanDelims.call({src:e,posMax:e.length}),new Qk.inline.State(e,null,null,[]).scanDelims(t,!0)}function eA(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 tA(e,t,n,r){let i=n,a=e;for(;i<r&&!$k(a,i).can_open;)a=eA(a,t,i,1),i++;return{text:a,from:i,to:r}}function nA(e,t,n,r){let i=r,a=e;for(;i>n&&!$k(a,i).can_close;)a=eA(a,t,i,-1),i--;return{text:a,from:n,to:i}}function rA(e,t,n,r){let i={text:e,from:n,to:r};return i=tA(i.text,t,i.from,i.to),i=nA(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 iA=class extends Kk{constructor(e,t,n){super(e,t,n??{}),Xk(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=rA(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}}},aA=dx.create({name:`markdownHTMLMark`,addStorage(){return{markdown:{serialize:{open(e,t){return this.editor.storage.markdown.options.html?oA(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?oA(t)?.[1]??``:``}},parse:{}}}}});function oA(e){let t=e.type.schema,n=t.text(` `,[e]),r=tx(X.from(n),t).match(/^(<.*?>) (<\/.*?>)$/);return r?[r[1],r[2]]:null}function sA(e){let t=`<body>${e}</body>`;return new window.DOMParser().parseFromString(t,`text/html`).body}function cA(e){return e?.replace(/</g,`<`).replace(/>/g,`>`)}function lA(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 uA(e){let t=e.parentNode;for(;e.firstChild;)t.insertBefore(e.firstChild,e);t.removeChild(e)}var dA=CC.create({name:`markdownHTMLNode`,addStorage(){return{markdown:{serialize(e,t,n){this.editor.storage.markdown.options.html?e.write(fA(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 fA(e,t){let n=e.type.schema,r=tx(X.from(e),n);return e.isBlock&&(t instanceof X||t.type.name===n.topNodeType.name)?pA(r):r}function pA(e){let t=sA(e).firstElementChild;return t.innerHTML=t.innerHTML.trim()?`
|
|
123
|
-
${t.innerHTML}
|
|
124
|
-
`:`
|
|
125
|
-
`,t.outerHTML}var mA=CC.create({name:`blockquote`}).extend({addStorage(){return{markdown:{serialize:Uk.nodes.blockquote,parse:{}}}}}),hA=CC.create({name:`bulletList`}).extend({addStorage(){return{markdown:{serialize(e,t){return e.renderList(t,` `,()=>(this.editor.storage.markdown.options.bulletListMarker||`-`)+` `)},parse:{}}}}}),gA=CC.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>`)}}}}}}),_A=CC.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?dA.storage.markdown.serialize.call(this,e,t,n):`\\
|
|
127
|
-
`);return}},parse:{}}}}}),vA=CC.create({name:`heading`}).extend({addStorage(){return{markdown:{serialize:Uk.nodes.heading,parse:{}}}}}),yA=CC.create({name:`horizontalRule`}).extend({addStorage(){return{markdown:{serialize:Uk.nodes.horizontal_rule,parse:{}}}}}),bA=CC.create({name:`image`}).extend({addStorage(){return{markdown:{serialize:Uk.nodes.image,parse:{}}}}}),xA=CC.create({name:`listItem`}).extend({addStorage(){return{markdown:{serialize:Uk.nodes.list_item,parse:{}}}}}),SA=CC.create({name:`orderedList`});function CA(e,t,n){let r=0;for(;n-r>0&&t.child(n-r-1).type.name===e.type.name;r++);return r}var wA=SA.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=CA(t,n,r)%2?`) `:`. `;e.renderList(t,o,t=>{let n=String(i+t);return e.repeat(` `,a-n.length)+n+s})},parse:{}}}}}),TA=CC.create({name:`paragraph`}).extend({addStorage(){return{markdown:{serialize:Uk.nodes.paragraph,parse:{}}}}});function EA(e){var t;return(e==null||(t=e.content)==null?void 0:t.content)??[]}var DA=CC.create({name:`table`}).extend({addStorage(){return{markdown:{serialize(e,t,n){if(!kA(t)){dA.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 OA(e){return e.attrs.colspan>1||e.attrs.rowspan>1}function kA(e){let t=EA(e),n=t[0],r=t.slice(1);return!(EA(n).some(e=>e.type.name!==`tableHeader`||OA(e)||e.childCount>1)||r.some(e=>EA(e).some(e=>e.type.name===`tableHeader`||OA(e)||e.childCount>1)))}var AA=[mA,hA,gA,_A,vA,yA,dA,bA,xA,wA,TA,DA,CC.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())})}}}}}}),CC.create({name:`taskList`}).extend({addStorage(){return{markdown:{serialize:hA.storage.markdown.serialize,parse:{setup(e){e.use(qk.default)},updateDOM(e){[...e.querySelectorAll(`.contains-task-list`)].forEach(e=>{e.setAttribute(`data-type`,`taskList`)})}}}}}}),CC.create({name:`text`}).extend({addStorage(){return{markdown:{serialize(e,t){e.text(cA(t.text))},parse:{}}}}}),dx.create({name:`bold`}).extend({addStorage(){return{markdown:{serialize:Uk.marks.strong,parse:{}}}}}),dx.create({name:`code`}).extend({addStorage(){return{markdown:{serialize:Uk.marks.code,parse:{}}}}}),aA,dx.create({name:`italic`}).extend({addStorage(){return{markdown:{serialize:Uk.marks.em,parse:{}}}}}),dx.create({name:`link`}).extend({addStorage(){return{markdown:{serialize:Uk.marks.link,parse:{}}}}}),dx.create({name:`strike`}).extend({addStorage(){return{markdown:{serialize:{open:`~~`,close:`~~`,expelEnclosingWhitespace:!0},parse:{}}}}})];function jA(e){let t=e.storage?.markdown,n=AA.find(t=>t.name===e.name)?.storage.markdown;return t||n?{...n,...t}:null}var MA=class{constructor(e){Xk(this,`editor`,null),this.editor=e}serialize(e){let t=new iA(this.nodes,this.marks,{hardBreakNodeName:_A.name});return t.renderContent(e),t.out}get nodes(){return{...Object.fromEntries(Object.keys(this.editor.schema.nodes).map(e=>[e,this.serializeNode(dA)])),...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(aA)])),...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=jA(e))==null||(t=t.serialize)==null?void 0:t.bind({editor:this.editor,options:e.options})}serializeMark(e){let t=jA(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}},NA=class{constructor(e,t){Xk(this,`editor`,null),Xk(this,`md`,null);let{html:n,linkify:r,breaks:i}=t;this.editor=e,this.md=this.withPatchedRenderer(jk({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=jA(e))==null||(t=t.parse)==null||(t=t.setup)==null?void 0:t.call({editor:this.editor,options:e.options},this.md)});let n=sA(this.md.render(e));return this.editor.extensionManager.extensions.forEach(e=>{var t;return(t=jA(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`)&&lA(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}uA(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}},PA=xx.create({name:`markdownClipboard`,addOptions(){return{transformPastedText:!1,transformCopiedText:!1}},addProseMirrorPlugins(){return[new sh({key:new uh(`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 ap.fromSchema(this.editor.schema).parseSlice(sA(r),{preserveWhitespace:!0,context:t})},clipboardTextSerializer:e=>this.options.transformCopiedText?this.editor.storage.markdown.serializer.serialize(e.content):null}})]}}),FA=xx.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=mC.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 NA(this.editor,this.options),serializer:new MA(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[Zk.configure({tight:this.options.tightLists,tightClass:this.options.tightListClass}),PA.configure({transformPastedText:this.options.transformPastedText,transformCopiedText:this.options.transformCopiedText})]}}),IA=CC.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`,Wb(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 LA(e){let{char:t,allowSpaces:n,allowToIncludeChar:r,allowedPrefixes:i,startOfLine:a,$position:o}=e,s=n&&!r,c=EC(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 RA=new uh(`suggestion`);function zA({pluginKey:e=RA,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=LA}){let g,_=p?.(),v=new sh({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),qv.create(e.doc,[Wv.inline(n.from,n.to,{nodeName:s,class:o.join(` `),"data-decoration-id":r,"data-decoration-content":l})])}}});return v}function BA(e){return`prompt-suggestion-option-${e}`}var VA=(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?BA(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`,bt),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`,bt),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:BA(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 HA(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 UA(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)(VA,{items:c,command:l,emptyNote:u,onActiveChange:s,ref:e=>{r=e}}))},l=()=>{t&&HA(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,Pi.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 WA(e){return xx.create({name:`suggestion-${e.key}`,addProseMirrorPlugins(){return[zA({editor:this.editor,char:e.char,pluginKey:new uh(e.key),items:({query:t})=>e.items(t.toLowerCase()),command:({editor:t,range:n,props:r})=>e.onSelect(r,{editor:t,range:n}),render:()=>UA(e)})]}})}function GA(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 KA(e,t){e.commands.setContent(t),e.commands.focus(`end`),/\s$/.test(t)&&e.commands.insertContent({type:`text`,text:` `})}var qA=(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),N=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},P=(e,t)=>{let n=!e.isEmpty;return KA(e,t),N(e),v(e.isEmpty),k.current(e.storage.markdown.getMarkdown()),n},F=ZC({immediatelyRender:!1,extensions:[ST,FA.configure({html:!1,linkify:!1,breaks:!0,transformPastedText:!0}),IA,WA({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=P(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=P(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=P(t,r.prompt);T.current?.(r.label,e)}return}e.id===`new-preset`&&(t.chain().focus().deleteRange(n).run(),w.current?.())}}),WA({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&&(GA(t,n,{kind:`project`,label:`@${r.name}`,text:`@${r.name}`}),E.current?.(r.path))}}),WA({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);GA(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})=>{N(e),v(e.isEmpty),k.current(e.storage.markdown.getMarkdown())}});(0,J.useImperativeHandle)(g,()=>({clear:()=>{F?.commands.clearContent(),F&&N(F),v(!0),k.current(``)},focus:()=>F?.commands.focus(`end`),loadTemplate:e=>F?P(F,e):!1})),(0,J.useEffect)(()=>{F?.setEditable(!f,!1)},[F,f]);let ee=(0,J.useRef)(!1);(0,J.useEffect)(()=>{!F||ee.current||!m||(ee.current=!0,P(F,m))},[F,m]);let te=h?`px-2 py-1.5`:`px-3 py-2.5`,I=h?`inset-x-2 top-1.5`:`inset-x-3 top-2.5`;return(0,Y.jsxs)(`div`,{className:`relative`,children:[(0,Y.jsx)(M,{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)(RC,{editor:F,className:`w-full bg-transparent text-sm pointer-coarse:text-base ${te}`})}),_&&(0,Y.jsx)(`span`,{className:`pointer-events-none absolute truncate text-sm text-muted-foreground pointer-coarse:text-base ${I}`,children:p})]})}),JA=80;function YA(){return typeof crypto<`u`&&crypto.randomUUID?crypto.randomUUID():`p-${Date.now()}`}function XA({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:YA(),label:e,prompt:t},n?l:`user`)};return(0,Y.jsx)(ze,{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)(Hr,{type:`text`,value:a,maxLength:JA,placeholder:`Name`,disabled:t,autoFocus:!0,onChange:e=>o(e.target.value),className:`h-8 bg-background px-2`}),(0,Y.jsx)(We,{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)(V,{type:`button`,variant:`ghost`,size:`sm`,onClick:i,children:`Cancel`}),(0,Y.jsx)(V,{type:`button`,size:`sm`,disabled:t||!a.trim()||!s.trim(),onClick:d,children:`Save prompt`})]})]})})}function ZA({preset:e,busy:t,onLoad:n,onDelete:r}){return(0,Y.jsxs)(K,{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)(yi,{children:[(0,Y.jsx)(pi,{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)(Ai,{className:`h-3.5 w-3.5`,"aria-hidden":!0})}),(0,Y.jsxs)(H,{children:[`Delete "`,e.label,`"`]})]})]})}function QA({commands:e,customPresets:t,projectPresets:n,busy:r,onLoad:i,onNew:a,onDelete:o,onDeleteProject:s}){return(0,Y.jsxs)(Mn,{children:[(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(mt,{type:`button`,disabled:r,"aria-label":`Commands`,className:q(st({variant:`ghost`,size:`icon-sm`}),`h-8 w-8`)}),children:(0,Y.jsx)(Fc,{className:`h-4 w-4`,"aria-hidden":!0})}),(0,Y.jsx)(H,{children:`Run a command or load a saved prompt. In the box: / commands · @ projects · # files`})]}),(0,Y.jsxs)(hr,{align:`start`,className:`min-w-[16rem] max-w-[20rem]`,children:[(0,Y.jsxs)(Hn,{children:[(0,Y.jsx)(tn,{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)(Dt,{label:`/${e.name}`,...e.waiting===void 0?{}:{description:`waiting to reach ${e.waiting}`}});return e.description?(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(K,{...t}),children:n}),(0,Y.jsx)(H,{className:`max-w-[22rem]`,children:e.description})]},e.name):(0,Y.jsx)(K,{...t,children:n},e.name)})]}),t.length>0&&(0,Y.jsxs)(Hn,{children:[(0,Y.jsx)(ci,{}),(0,Y.jsx)(tn,{children:`Your saved prompts`}),t.map(e=>(0,Y.jsx)(ZA,{preset:e,busy:r,onLoad:i,onDelete:o},e.id))]}),n.length>0&&(0,Y.jsxs)(Hn,{children:[(0,Y.jsx)(ci,{}),(0,Y.jsx)(tn,{children:`Project saved prompts`}),n.map(e=>(0,Y.jsx)(ZA,{preset:e,busy:r,onLoad:i,onDelete:s},e.id))]}),a&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(ci,{}),(0,Y.jsxs)(K,{disabled:r,onClick:a,children:[(0,Y.jsx)(Fc,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),`Save prompt…`]})]})]})]})}var $A=`the CLI's own default`,ej={xhigh:`Extra high`};function tj(e){return ej[e]??e.charAt(0).toUpperCase()+e.slice(1)}function nj(e,t){return e.find(e=>e.value===t)??e[0]}function rj(e,t){if(t)return e?.models.find(e=>e.value===t)?.label??t}function ij({drivers:e,driver:t,model:n,onChange:r,effort:i,busy:a}){let o=nj(e,t),s=rj(o,n),c=i?.levels??[],l=i?.level===void 0?void 0:tj(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)(Mn,{children:[(0,Y.jsxs)(yi,{children:[(0,Y.jsxs)(pi,{render:(0,Y.jsx)(mt,{type:`button`,disabled:a,"aria-label":u,className:q(Wd,`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)(ke,{className:`h-3 w-3 shrink-0 opacity-70`})]}),(0,Y.jsx)(H,{children:u})]}),(0,Y.jsxs)(hr,{align:`end`,children:[e.map(e=>(0,Y.jsxs)(Ti,{children:[(0,Y.jsxs)(bi,{children:[(0,Y.jsx)(Ir,{className:q(`h-3.5 w-3.5 shrink-0`,e.value===t?`opacity-100`:`opacity-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)(pn,{className:`min-w-[15rem]`,children:[e.models.length===0&&e.modelsNote&&(0,Y.jsx)(K,{disabled:!0,children:e.modelsNote}),e.models.map(i=>(0,Y.jsxs)(K,{onClick:()=>r(e.value,i.value),children:[(0,Y.jsx)(Ir,{className:q(`h-3.5 w-3.5 shrink-0`,e.value===t&&i.value===n?`opacity-100`:`opacity-0`)}),i.label]},i.value)),e.accounts]})]},e.value)),c.length>0&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(ci,{}),(0,Y.jsxs)(Hn,{children:[(0,Y.jsx)(tn,{children:`Effort`}),(0,Y.jsxs)(K,{onClick:()=>i.onChange(void 0),children:[(0,Y.jsx)(Ir,{className:q(`h-3.5 w-3.5 shrink-0`,i?.level===void 0?`opacity-100`:`opacity-0`)}),`The agent’s default`]}),c.map(e=>(0,Y.jsxs)(K,{onClick:()=>i.onChange(e),children:[(0,Y.jsx)(Ir,{className:q(`h-3.5 w-3.5 shrink-0`,i?.level===e?`opacity-100`:`opacity-0`)}),tj(e)]},e))]})]})]})]})}function aj(e){let{kind:t,place:n}=le(e);return t===`shared`?`${n}. Runs use your own logins.`:n}function oj({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)(ke,{className:`h-3 w-3 shrink-0 opacity-70`,"aria-hidden":!0})]})}function sj({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=_d(),a=r?Ct(r):i,o=!r,s=o?Et:_e[le(r).kind];return(0,Y.jsxs)(Mn,{children:[(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(mt,{type:`button`,disabled:t,"aria-label":`Run on`,className:n?Wd:q(st({variant:`ghost`,size:`icon-sm`}),`relative h-8 w-8`)}),children:n?(0,Y.jsx)(oj,{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)(H,{children:`Run on — ${r?.label??i}`})]}),(0,Y.jsxs)(hr,{align:n?`start`:`end`,className:`min-w-[19rem] max-w-[22rem]`,children:[(0,Y.jsxs)(K,{className:q(`items-start gap-2`,e.onlyThere&&`opacity-60`),disabled:e.onlyThere,onClick:()=>e.onSelectLocal(),children:[(0,Y.jsx)(Ir,{className:q(`mt-0.5 h-3.5 w-3.5 shrink-0`,o?`opacity-100`:`opacity-0`)}),(0,Y.jsx)(Et,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Y.jsx)(Dt,{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.`})]}),e.machines.map(t=>{let n=e.status[t.id],i=n===`offline`,a=aj(t),o=e.home===void 0?a:t.id===e.home?`${a}. Has this project.`:`${a}. Cloned there first, then runs there.`,s=i?Mt(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)(K,{className:q(`items-start gap-2`,(i||c)&&`opacity-60`),disabled:c,onClick:()=>e.onSelect(t),children:[(0,Y.jsx)(Ir,{className:q(`mt-0.5 h-3.5 w-3.5 shrink-0`,r?.id===t.id?`opacity-100`:`opacity-0`)}),(0,Y.jsx)(Ne,{kind:le(t).kind,online:n===`online`,className:`mt-0.5`}),(0,Y.jsx)(Dt,{label:Ct(t),description:s})]},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)(K,{className:`items-start`,disabled:t,onClick:()=>e.onAddMachine(),children:[(0,Y.jsx)(Fc,{className:`mt-0.5 h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(Dt,{label:`Add a machine…`,description:`Connect a computer, or join with a code.`})]})]})]})}var cj=1e4;function lj(e){let t=e.map(e=>e.id).join(`|`),n=xi((0,J.useMemo)(()=>t?()=>qn():null,[t]),{},cj,[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 uj=U(`onAgentAccounts`),dj=U(`sendUseAgentAccountFirst`);function fj({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 pj=3e4;function mj(e){let{value:t}=xi(()=>uj(e),void 0,pj,[e],{remember:`agent-accounts:${e}`});return{view:t}}function hj(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 gj(e){return new Date(e).toLocaleTimeString(void 0,{hour:`numeric`,minute:`2-digit`})}function _j(e){return e.windows[e.windows.length-1]}function vj(e){let t=_j(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 ${gj(e.asOf)}`}`}var yj=(e,t)=>`machine-agent-accounts:${e}:${t}`;function bj(e){for(let t of[`claude`,`codex`])Ei(yj(e,t),()=>Zt(e,t))}function xj(e,t,n=!0){let r=xi(n&&t===void 0?()=>uj(e):null,void 0,pj,[e,n,t===void 0],{remember:`agent-accounts:${e}`}),i=xi(n&&t!==void 0?()=>Zt(t,e):null,void 0,pj,[e,n,t],t===void 0?void 0:{remember:yj(t,e)});return t===void 0?{view:r.value,unanswered:!1,pick:t=>dj(e,t).then(r.reload)}:{view:i.value??void 0,unanswered:i.value===null,pick:n=>ri(t,e,n).then(i.reload)}}function Sj(e){let t=e.accounts.filter(e=>!e.loggedOut);return t.length>0?t:e.accounts}function Cj(e){let t=e&&Sj(e)[0];if(!t)return;let n=_j(t);return{name:t.name,percent:t.state===`limited`?` · limited`:n===void 0?``:` · ${Math.round(n.percent)}%`}}function wj({view:e,on:t,onPick:n,onAdd:r}){return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(ci,{}),(0,Y.jsxs)(Hn,{children:[(0,Y.jsx)(tn,{children:t===void 0?`Accounts`:`Accounts on ${t}`}),Sj(e).map((e,t)=>(0,Y.jsxs)(K,{closeOnClick:!1,onClick:()=>n(e.id),children:[(0,Y.jsx)(Ir,{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`:_j(e)===void 0?``:`${Math.round(_j(e).percent)}%`})]},e.id)),(0,Y.jsxs)(K,{onClick:r,children:[(0,Y.jsx)(Fc,{className:`h-3.5 w-3.5 shrink-0 opacity-70`,"aria-hidden":!0}),`Add account…`]})]})]})}function Tj(){let{view:e}=mj(`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)(fj,{percent:_j(t)?.percent}),(0,Y.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:t.state===`limited`&&t.limitedUntil!==void 0?`limited, free in ${hj(t.limitedUntil,e.now)}`:vj(t)??``})]},t.id))})}var Ej=2e3,Dj=3e4,Oj=(0,J.createContext)({view:void 0,reload:async()=>{}});function kj(){return(0,J.useContext)(Oj)}function Aj({children:e}){let[t,n]=(0,J.useState)(!1),{value:r,reload:i}=xi(Qo,void 0,t?Ej:Dj,[t],`previous`),a=r?.servers.some(e=>e.allowing)??!1;return(0,J.useEffect)(()=>{a!==t&&n(a)},[a,t]),(0,Y.jsx)(Oj.Provider,{value:{view:r,reload:i},children:e})}function jj(){let{view:e,reload:t}=kj(),n=e?.servers??[];return n.length===0?null:(0,Y.jsxs)(gt,{children:[(0,Y.jsx)(gi,{children:(0,Y.jsx)(St,{className:`text-base`,children:(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-2`,children:[(0,Y.jsx)(At,{className:`h-4 w-4 text-muted-foreground`,"aria-hidden":!0}),`On your servers`]})})}),(0,Y.jsx)(O,{className:`flex flex-col gap-4`,children:n.map(n=>(0,Y.jsx)(Uj,{server:n,computer:e.computer,onChanged:t},n.machineId))})]})}var Mj=e=>e.logins.filter(e=>e.state===`allow`||e.state===`switched`);function Nj(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=Mj(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)(Rj,{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)(pe,{text:e.allowing.url,label:`Copy link`})]})}:e.reachable?u.length>0?{tone:`ask`,body:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Rj,{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)(V,{size:`sm`,disabled:r,onClick:()=>void s(()=>es(e.machineId)),children:u.length===1?`Allow 1 login`:`Allow ${u.length} logins`}),(0,Y.jsx)(zj,{error:c})]})}:d<e.logins.length?{tone:`ask`,body:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Rj,{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)(zj,{error:c})]})}:{tone:`quiet`,body:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Rj,{title:e.label,words:`Uses your logins: all ${e.logins.length} there`}),(0,Y.jsx)(zj,{error:c})]})}:{tone:`quiet`,body:(0,Y.jsx)(Rj,{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)(Rj,{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)(V,{size:`sm`,disabled:r,onClick:()=>void s(()=>$o(e.machineId)),children:`Use them`}),(0,Y.jsx)(zj,{error:c})]})}}function Pj({machineId:e,onAccounts:t}){return(0,Y.jsx)(Aj,{children:(0,Y.jsx)(Fj,{machineId:e,onAccounts:t})})}function Fj({machineId:e,onAccounts:t}){let{view:n,reload:r}=kj(),i=n?.servers.find(t=>t.machineId===e);return n?i?(0,Y.jsx)(Ij,{server:i,computer:n.computer,onChanged:r}):(0,Y.jsx)(V,{size:`sm`,variant:`outline`,onClick:t,children:`Open Accounts`}):null}function Ij({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:Nj(e,t,n).body})}function Lj({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 Rj({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 zj({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 Bj={claude:ht,codex:D,git:hc};function Vj({row:e,name:t,on:n,words:r,tone:i=`text-muted-foreground`,children:a}){let o=Bj[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 Hj(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`}}function Uj({server:e,computer:t,onChanged:n}){let{tone:r,body:i}=Nj(e,t,n),[a,o]=(0,J.useState)(),[s,c]=(0,J.useState)(),l=async(e,t,r)=>{o({source:e,press:t}),c(void 0);try{let e=await r();e.ok||c(e.error),await n()}finally{o(void 0)}},u=e.on&&e.reachable?e.logins:[],d=(t,n)=>void l(t.source,n?`keep`:`off`,()=>ts(e.machineId,{kind:t.kind,...t.host===void 0?{}:{host:t.host},source:t.source},n)),f=t=>void l(t,`allow`,()=>es(e.machineId));return(0,Y.jsxs)(`section`,{"aria-label":`Your logins on ${e.label}`,className:`space-y-1.5`,children:[(0,Y.jsx)(Lj,{tone:r,children:i}),(u.length>0||e.left.length>0)&&(0,Y.jsxs)(`ul`,{children:[u.map(n=>{let r=a?.press===`allow`&&a.source===n.source||e.allowing?.name===n.name,i=a?.press===`off`&&a.source===n.source;return(0,Y.jsxs)(Vj,{row:n,name:n.name,on:e.label,...Hj(n,t),children:[n.state===`allow`&&(0,Y.jsxs)(V,{size:`xs`,disabled:a!==void 0||r,onClick:()=>f(n.source),children:[r&&(0,Y.jsx)(fe,{className:`size-3 animate-spin`,"aria-hidden":!0}),r?`Allowing…`:`Allow`]}),n.state===`there`&&n.anew&&(0,Y.jsxs)(V,{size:`xs`,variant:`ghost`,className:`text-muted-foreground`,disabled:a!==void 0,title:`${e.label} no longer has it; it waits for your yes again.`,onClick:()=>d(n,!1),children:[i&&(0,Y.jsx)(fe,{className:`size-3 animate-spin`,"aria-hidden":!0}),i?`Taking off…`:`Take off`]}),n.state===`switched`&&!e.allowing&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(V,{size:`xs`,disabled:a!==void 0,title:`Opens your browser once.`,onClick:()=>f(n.source),children:`Use ${n.name} there`}),(0,Y.jsx)(V,{size:`xs`,variant:`ghost`,disabled:a!==void 0,onClick:()=>d(n,!0),children:`Keep ${n.was}`})]})]},`${n.kind} ${n.host??``} ${n.source}`)}),e.left.map(n=>(0,Y.jsxs)(Vj,{row:n,name:n.name,on:e.label,words:`No longer on ${t}`,children:[(0,Y.jsx)(V,{size:`xs`,variant:`ghost`,disabled:a!==void 0,onClick:()=>d(n,!0),children:`Keep it there`}),(0,Y.jsx)(V,{size:`xs`,variant:`ghost`,className:`text-muted-foreground`,disabled:a!==void 0,onClick:()=>d(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 Wj(){let{view:e,reload:t}=wu();return(0,Y.jsxs)(gt,{children:[(0,Y.jsx)(gi,{children:(0,Y.jsx)(St,{className:`text-base`,children:(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-2`,children:[(0,Y.jsx)(hc,{className:`h-4 w-4 text-muted-foreground`,"aria-hidden":!0}),`Git hosts`]})})}),(0,Y.jsx)(O,{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.`}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`The accounts runs open pull requests and push with. A switch here changes what runs use; the terminal keeps its own.`}),(e?.hosts??[]).map(e=>e.provider?(0,Y.jsx)(qj,{row:e,onChanged:t},e.host):(0,Y.jsx)(Kj,{row:e},e.host))]})})]})}function Gj(e){return e.projects.length>0?`used by ${e.projects.join(`, `)}`:`no project on it yet`}function Kj({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}),` · ${Gj(e)} · no package for it yet`]})}function qj({row:e,onChanged:t}){let n=e.provider,r=Eu(e),[i,a]=(0,J.useState)(),o=zu(t),s=kj(),[c,l]=(0,J.useState)(),[u,d]=(0,J.useState)(),f=async(e,n,r)=>{d({login:e,press:n}),a(void 0);try{let e=await r();e.ok||a(e.error),await Promise.all([t(),s.reload()])}finally{d(void 0)}},p=(e,t)=>u?.login===e&&u.press===t,m=i??o.error;return(0,Y.jsxs)(`section`,{"aria-label":n.name,className:`space-y-1`,children:[(0,Y.jsxs)(`header`,{className:`flex flex-wrap items-center gap-x-2 gap-y-1`,children:[(0,Y.jsx)(Au,{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:`${e.host} · ${Gj(e)}`}),(0,Y.jsx)(ku,{state:r})]}),n.accounts.length>0&&(0,Y.jsx)(`ul`,{className:`space-y-1`,children:n.accounts.map(t=>{let r=c===t.login;return(0,Y.jsxs)(`li`,{"aria-label":`@${t.login}`,children:[(0,Y.jsxs)(`button`,{type:`button`,"aria-label":`Details of @${t.login}`,"aria-expanded":r,onClick:()=>l(r?void 0:t.login),className:`group -mx-2 flex w-[calc(100%+1rem)] min-w-0 items-center gap-2.5 rounded-md px-2 py-1 text-left transition-colors hover:bg-muted focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-primary)]`,children:[(0,Y.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,Y.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5 text-sm`,children:[(0,Y.jsxs)(`span`,{className:`min-w-0 truncate font-medium`,children:[`@`,t.login]}),t.runs&&(0,Y.jsx)(`span`,{className:`shrink-0 text-xs text-success`,children:`in use for runs`})]}),(0,Y.jsx)(`span`,{className:q(`block truncate text-xs`,t.ok?`text-muted-foreground`:`text-warning`),children:t.ok?t.from===void 0?t.terminal?`the terminal's account`:`logged in to ${n.tool}`:`from ${t.from}`:`${n.name} no longer takes this login: add it again`})]}),!t.runs&&(0,Y.jsx)(oc,{className:q(`size-4 shrink-0 text-muted-foreground transition-opacity`,r?`opacity-100`:`opacity-0 group-hover:opacity-100 group-focus-visible:opacity-100`),"aria-hidden":!0})]}),r&&(0,Y.jsx)(`div`,{className:`-ml-2 flex items-center gap-1 pb-1.5 pt-1`,children:t.runs?(0,Y.jsx)(`p`,{className:`pl-2 text-xs text-muted-foreground`,children:`Runs use this account. To take it off, pick another first.`}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(V,{size:`xs`,variant:`ghost`,disabled:u!==void 0||!t.ok,onClick:()=>void f(t.login,`use`,()=>uu(e.host,t.login)),children:[p(t.login,`use`)&&(0,Y.jsx)(fe,{className:`size-3 animate-spin`,"aria-hidden":!0}),p(t.login,`use`)?`Switching…`:`Use for runs`]}),(0,Y.jsxs)(V,{size:`xs`,variant:`ghost`,className:`hover:text-danger`,disabled:u!==void 0,"aria-label":`Remove @${t.login}`,title:`${n.tool} on this computer forgets it. The login is not ended: it goes on working wherever else it is.`,onClick:()=>void f(t.login,`remove`,()=>du(e.host,t.login)),children:[p(t.login,`remove`)&&(0,Y.jsx)(fe,{className:`size-3 animate-spin`,"aria-hidden":!0}),p(t.login,`remove`)?`Removing…`:`Remove`]})]})})]},t.login)})}),!n.installed||n.accounts.length===0?(0,Y.jsxs)(`div`,{className:`space-y-2 pt-1`,children:[(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:Pu(e)}),(0,Y.jsx)(Bu,{row:e,onChanged:t})]}):n.loggingIn?(0,Y.jsx)(Ru,{code:n.loggingIn.code,url:n.loggingIn.url}):(0,Y.jsxs)(V,{size:`xs`,variant:`ghost`,className:`-ml-2 font-normal`,disabled:o.busy,title:`Logs another account in to ${n.tool} with a code you type at ${n.name}. The terminal's account stays as it is.`,onClick:()=>void o.start(e.host),children:[o.busy?(0,Y.jsx)(fe,{className:`size-3.5 animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(Fc,{className:`size-3.5`,"aria-hidden":!0}),`Add account`]}),m!==void 0&&(0,Y.jsx)(`p`,{role:`alert`,className:`text-xs text-danger`,children:m})]})}var Jj=e=>`machine-git-hosts:${e}`;function Yj(e){Ei(Jj(e),()=>at(e))}function Xj(e){let t=wu(),n=xi(e===void 0?null:()=>at(e),void 0,3e4,[e],e===void 0?void 0:{remember:Jj(e)});return e===void 0?{view:t.view,pick:(e,n)=>uu(e,n).then(t.reload)}:{view:n.value??void 0,pick:(t,r)=>jn(e,t,r).then(n.reload)}}function Zj(e,t){let{view:n}=Xj(t),r=e?.split(`/`)[0];return n?.hosts.find(e=>e.host===r)?.provider?.accounts.find(e=>e.runs)?.login}function Qj({address:e,machineId:t,on:n,busy:r,onAdd:i}){let{view:a,pick:o}=Xj(t),s=e?.split(`/`)[0],c=s===void 0?void 0:a?.hosts.find(e=>e.host===s),l=c?.provider;if(!c||!l)return null;let u=l.accounts.find(e=>e.runs);if(!u)return(0,Y.jsxs)(`button`,{type:`button`,disabled:r,onClick:i,className:q(Wd,`text-warning`),children:[(0,Y.jsx)(Au,{svg:l.logo,className:`size-3.5`}),(0,Y.jsx)(`span`,{className:`truncate`,children:l.installed?`Log in to ${l.name}`:`${l.tool} not installed`})]});let d=`Runs push and open pull requests as @${u.login}${n===void 0?``:` on ${n}`}`;return(0,Y.jsxs)(Mn,{children:[(0,Y.jsxs)(yi,{children:[(0,Y.jsxs)(pi,{render:(0,Y.jsx)(mt,{type:`button`,disabled:r,"aria-label":`${l.name} account: @${u.login}`,className:Wd}),children:[(0,Y.jsx)(Au,{svg:l.logo,className:`size-3.5`}),(0,Y.jsxs)(`span`,{className:`max-w-32 truncate`,children:[`@`,u.login]}),(0,Y.jsx)(ke,{className:`h-3 w-3 shrink-0 opacity-70`,"aria-hidden":!0})]}),(0,Y.jsx)(H,{children:d})]}),(0,Y.jsxs)(hr,{align:`end`,className:`min-w-[14rem]`,children:[(0,Y.jsxs)(Hn,{children:[(0,Y.jsx)(tn,{children:`${l.name} account${n===void 0?``:` on ${n}`}`}),l.accounts.map(e=>(0,Y.jsxs)(K,{closeOnClick:!1,disabled:!e.ok,onClick:()=>void o(c.host,e.login),children:[(0,Y.jsx)(Ir,{className:q(`h-3.5 w-3.5 shrink-0`,e.runs?`opacity-100`:`opacity-0`),"aria-hidden":!0}),(0,Y.jsxs)(`span`,{className:`flex-1 truncate`,children:[`@`,e.login]}),e.terminal&&(0,Y.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`terminal`})]},e.login))]}),(0,Y.jsx)(ci,{}),(0,Y.jsxs)(K,{onClick:i,children:[(0,Y.jsx)(Fc,{className:`h-3.5 w-3.5 shrink-0 opacity-70`,"aria-hidden":!0}),`Add account…`]})]})]})}function $j({home:e,account:t}){let{view:n}=wu();if(!e||!n)return null;let r=n.hosts.find(t=>t.host===e.url.split(`/`)[2])?.provider?.logo;return(0,Y.jsx)(Jd,{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:Wd,children:[(0,Y.jsx)(Au,{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)(ke,{className:`h-3 w-3 shrink-0 opacity-70`,"aria-hidden":!0})]})})}var eM={"claude-code":{icon:(0,Y.jsx)(ht,{className:`h-4 w-4`})},codex:{icon:(0,Y.jsx)(D,{className:`h-4 w-4`})}},tM=(0,J.forwardRef)(function({files:e,addContext:t,removeContext:n,startsAt:r,startsAtEnd:i,controls:a,sessionModel:o,sessionContext:s,onSubmit:c,onPromptChange:l,onPreset:u,busy:d,submitLabel:f,submitBusyLabel:p,placeholder:m,compact:h=!1,showDriverModel:g=!0,inAgent:_=!1,sessionRow:v,canSubmit:y=!0,idleControl:b,home:x},S){let[C,w]=(0,J.useState)(``),[T,E]=(0,J.useState)(!1),D=(0,J.useRef)(null),O=Fs(),k=lj(O),A=mn(zo,[],[]),j=(0,J.useMemo)(()=>A.filter(e=>e.machine===void 0),[A]),M=Ia(),N=M.model??``,P=M.driver??`claude-code`,F=M.customPresets??[],ee=ja(),te=Fa(),I=Td(te),L=I?.commands??[],R=x===void 0&&I!==null&&I.address===void 0,ne=x!==void 0&&I!==null&&I.address===void 0,re=ms(),ie=La(),ae=Ps();(0,J.useEffect)(()=>{_||gs(M.runOn,ie&&ae?O:null,k)},[_,M.runOn,ie,ae,O,k]),(0,J.useEffect)(()=>{if(!_)for(let e of O)k[e.id]===`online`&&(ii(e.id),bj(e.id),Yj(e.id))},[_,O,k]);let z=hs(),oe=z?.why===`offline`?O.find(e=>e.id===z.id):void 0,B=vs(O,re,I,x),{models:se,theirs:ce}=jr(_?void 0:B?.id),le=_||!g?void 0:B?.id,ue=xj(`claude`,le,!_&&g),de=xj(`codex`,le,!_&&g),pe=e=>{let{view:t,pick:n}=e===`codex`?de:ue,r=se?.[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=B?Ct(B):void 0;return{account:Cj(t),accounts:(0,Y.jsx)(wj,{view:t,on:a,onPick:e=>void n(e),onAdd:()=>B?Bd(`devices`,B.id):Bd(vu)})}},me=!!B&&k[B.id]===`offline`,[he,ge]=(0,J.useState)(null),_e=B?.owner,ve=!_&&!!B&&_e!==void 0&&!B.told&&he!==B.id;(0,J.useImperativeHandle)(S,()=>({clear:()=>{D.current?.clear(),w(``)},focus:()=>D.current?.focus(),edit:e=>{D.current?.loadTemplate(e),w(e),D.current?.focus()}}));let[ye,be]=(0,J.useState)(void 0);(0,J.useEffect)(()=>{if(h||_)return;let e=tr();e&&be(e)},[h,_]);let xe=(0,J.useRef)(!1),Se=(e,t=!1)=>{e?.preventDefault();let n=C.trim();!n||d||xe.current||me||ve||!y||(xe.current=!0,Promise.resolve(c(n,{later:t})).finally(()=>{xe.current=!1}))},Ce=(e,t)=>{let n=D.current?.loadTemplate(e)??!1;u?.(t,n)},we=(0,Y.jsx)(qA,{ref:D,compact:h,onChange:e=>{w(e),l?.(e)},onSubmit:e=>Se(void 0,e),...u?{onPreset:u}:{},...t?{onMentionProject:t,onMentionFile:t}:{},...n?{onMentionRemoved:n}:{},projects:j,files:e,commands:Ed(L),customPresets:F,projectPresets:ee,...h?{}:{onNewPreset:()=>E(!0)},disabled:d,...m?{placeholder:m}:{},...ye?{initialText:ye}:{}}),Te=g&&(0,Y.jsx)(ij,{drivers:Er(se,ce&&B?Ct(B):void 0).map(e=>({...e,...eM[e.value],...pe(e.value)})),driver:P,model:N,onChange:(e,t)=>Na({driver:e,model:t}),effort:{levels:yn(se,P,N),level:M.effort||void 0,onChange:e=>Na({effort:e??``})},busy:d}),Ee=!h&&(0,Y.jsx)(QA,{commands:L,customPresets:F,projectPresets:ee,busy:d,onLoad:Ce,onNew:()=>E(!0),onDelete:e=>Na({customPresets:F.filter(t=>t.id!==e)}),onDeleteProject:e=>Ma(te,ee.filter(t=>t.id!==e))}),De=_?null:(0,Y.jsx)(sj,{busy:d,inRow:!h,connection:{machines:O,selectedMachineId:re,onlyHere:R,home:x,onlyThere:ne,onSelect:e=>ds(e.id),onSelectLocal:()=>ds(null),onAddMachine:()=>Bd(`devices`),status:k}}),Oe=!!C.trim(),ke=(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(V,{type:`submit`,size:`icon-sm`,onClick:Se,disabled:d||!Oe||me||ve||!y,"aria-hidden":!Oe,tabIndex:Oe?void 0:-1,"aria-label":f,className:q(`h-8 w-8 shrink-0 transition-[margin,opacity,transform] duration-150 ease-out`,Oe?q(`ml-0 translate-x-0 opacity-100`,d?`disabled:opacity-100`:`disabled:opacity-40`):q(`pointer-events-none translate-x-2 opacity-0 disabled:opacity-0`,h?`-ml-[2.375rem]`:`-ml-8`))}),children:d?(0,Y.jsx)(fe,{className:`h-4 w-4 animate-spin`}):(0,Y.jsx)(Ws,{className:`h-4 w-4`})}),(0,Y.jsx)(H,{children:d?p:`${f} (Enter · Shift+Enter for a new line)`})]}),Ae=!Oe&&b?b:ke,je=me&&(0,Y.jsx)(`p`,{role:`alert`,className:`mt-2 text-xs text-danger`,children:`${B?Ct(B):`The selected machine`} is offline. Pick another place to run, then start.`}),Me=_d()===`This machine`?`this machine`:_d(),Ne=!_&&!h&&z&&!B&&(0,Y.jsx)(`p`,{role:`status`,className:`mt-2 text-xs text-muted-foreground`,children:z.why===`gone`?`The computer you last picked to run on is no longer saved, so runs start on ${Me}.`:`${oe?Ct(oe):`The computer you last picked`} is offline, so runs start on ${Me}. Pick it again once it is on.`}),Pe=ve&&(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 @${_e}'s server.`}),` `,(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:`@${_e} can see what is on it. Runs there start once you say OK.`})]}),(0,Y.jsx)(V,{type:`button`,size:`xs`,variant:`outline`,onClick:()=>{ge(B.id),Ms(B.id)},children:`OK`})]});return h?(0,Y.jsxs)(`div`,{className:`flex items-start gap-1.5`,children:[(0,Y.jsx)(`div`,{className:`min-w-0 flex-1`,children:we}),Te,De,Ae]}):(0,Y.jsxs)(Y.Fragment,{children:[_?v:(0,Y.jsxs)(qd,{end:i,children:[De,r]}),Pe,(0,Y.jsxs)(`div`,{className:`flex items-end rounded-xl border border-border bg-card focus-within:border-muted-foreground/40`,children:[Ee&&(0,Y.jsx)(`div`,{className:`-mr-2 flex shrink-0 items-center p-1`,children:Ee}),(0,Y.jsx)(`div`,{className:`min-w-0 flex-1`,children:we}),(0,Y.jsx)(`div`,{className:`flex shrink-0 items-center p-1`,children:Ae})]}),(0,Y.jsxs)(`div`,{className:q(`mt-1`,Gd),children:[(0,Y.jsx)(`div`,{className:Kd,children:a}),(0,Y.jsx)(`div`,{className:`shrink-0`,children:Te||(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]})})]}),je,Ne,T&&(0,Y.jsx)(XA,{currentPrompt:C,busy:d,canSaveToProject:te!==null,onCancel:()=>{E(!1),D.current?.focus()},onSave:(e,t)=>{t===`project`?Ma(te,[...ee,e]):Na({customPresets:[...F,e]}),E(!1),D.current?.focus()}})]})});function nM(e,t,n,r,i,a,o,s,c,l=2){let u=De(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 Pr(n.current,u)?void 0:u}var rM=J.createContext(void 0),iM=J.createContext(void 0),aM=J.createContext(void 0),oM=J.createContext(!1),sM=J.createContext(``);function cM(){let e=J.useContext(rM);if(!e)throw Error(Zn(22));return e}function lM(){let e=J.useContext(iM);if(!e)throw Error(Zn(23));return e}function uM(){let e=J.useContext(aM);if(!e)throw Error(Zn(24));return e}function dM(){return J.useContext(sM)}function fM(){return J.useContext(oM)}var pM={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?ir(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=>Mr(t,e,n)):Mr(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 mM(e){return e==null?void 0:`${e}-popup`}function hM(e,t){return(n,r)=>n!=null&&e.contains(n,r,t)}var gM=Ml;function _M(e,t=!1){let{overflowY:n}=w(e);return n!==`auto`&&n!==`scroll`?!1:t?e.clientHeight>0:e.scrollHeight>e.clientHeight}var vM=Symbol(`none`),yM={value:vM,index:-1};function bM(e,t,n){let r=e.get(t);if(r!==void 0||n===_r)return r;for(let[r,i]of e)if(Mr(r,t,n))return i}function xM(e){let{id:t,onOpenChangeComplete:n,defaultSelectedValue:r=null,selectedValue:i,onSelectedValueChange:a,defaultInputValue:o,inputValue:s,open:l,defaultOpen:u=!1,selectionMode:d,onItemHighlighted:f,name:p,form:m,disabled:g=!1,readOnly:_=!1,required:v=!1,inputRef:b,grid:x=!1,items:S,filteredItems:C,filter:w,filterQuery:T,openOnInputClick:E=!0,autoHighlight:D=!1,keepHighlight:O=!1,highlightItemOnHover:k=!0,loopFocus:A=!0,itemToStringLabel:j,itemToStringValue:M,isItemEqualToValue:N=_r,virtualized:P=!1,inline:F=!1,fillInputOnItemPress:ee=!0,modal:te=!1,limit:I=-1,autoComplete:L=`list`,formAutoComplete:ie,locale:ae,submitOnItemClick:oe=!1}=e,{clearErrors:B}=Fr(),{setDirty:se,validityData:ce,setFilled:le,name:ue,disabled:fe,setTouched:pe,setFocused:_e,validationMode:ve,validation:ye}=it(),be=rr(),Se=de({id:t}),Ce=gM({locale:ae}),we=Array.isArray(S)?null:S;if(we&&typeof we.label!=`function`)throw Error(Zn(100));let Te=we?we.data:S,Ee=we?.value,De=Ee?void 0:Te,ke=J.useMemo(()=>{if(!C||!Ee)return;let e=qe(C),t=e.map(Ee),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 bM(n,r,i)}}},[C,Ee]),Ae=J.useMemo(()=>we?e=>we.label(e,N,e=>{let t=ke?.findItem(e,N);return t==null?$n(e,j):we.itemLabel(t)}):j,[we,j,ke,N]),V=J.useMemo(()=>we?Object.assign(e=>we.itemLabel(e),{selected:e=>$n(e,Ae)}):j,[we,Ae,j]);function Me(e){return $n(e,Ae)}let[Ne,Pe]=J.useState(!1),[Re,ze]=J.useState(null),He=J.useRef(Re),Ue=J.useRef([]),We=J.useRef([]),Ge=J.useRef(null),Ke=J.useRef(null),Je=J.useRef(null),Ye=J.useRef(null),Qe=J.useRef(null),$e=J.useRef(!1),et=J.useRef(null),tt=J.useRef(null),nt=J.useRef(null),at=J.useRef(yM),ot=J.useRef(null),st=J.useRef([]),ct=J.useRef(null),lt=fe||g,ut=ue??p,dt=d===`multiple`,ft=d===`single`,H=s!==void 0||o!==void 0,mt=Te!==void 0,ht=C!==void 0,gt;gt=D===`always`?`always`:D?`input-change`:!1;let[_t,yt]=Sr({controlled:i,default:dt?r??Be:r,name:`Combobox`,state:`selectedValue`}),bt=J.useMemo(()=>w===null?()=>!0:w===void 0?hM(Ce,V):w,[w,Ce,V]),xt=me(()=>H?o??``:ft?Me(_t):``).current,[St,Ct]=Sr({controlled:s,default:xt,name:`Combobox`,state:`inputValue`}),[wt,Tt]=Sr({controlled:l,default:u,name:`Combobox`,state:`open`}),Et=h(Te),Dt=!wt&&Re!==null?Re:String(St).trim(),U=ft?Me(_t):``,Ot=ft&&!Ne&&Dt!==``&&U.length===Dt.length&&Ce.contains(U,Dt),kt=Ot?``:T??Dt,At=mt&&ht&&Ot&&(!we||we.hasValue(_t,N)),jt=J.useMemo(()=>Te?qe(Te):Be,[Te]),Mt=J.useMemo(()=>{if(C&&!At)return C;if(!Te)return Be;if(Et){let e=Te,t=[],n=0;for(let r of e){if(I>-1&&n>=I)break;let e=I>-1?I-n:1/0,i=kt===``?r.items.slice(0,e):[];if(kt!==``)for(let t of r.items){if(i.length>=e)break;bt(t,kt,V)&&i.push(t)}if(i.length>0){let e={...r,items:i};t.push(e),n+=i.length}}return t}if(kt===``)return I>-1?jt.slice(0,I):jt;let e=[];for(let t of jt){if(I>-1&&e.length>=I)break;bt(t,kt,V)&&e.push(t)}return e},[C,At,Te,Et,kt,I,bt,V,jt]),Nt=J.useMemo(()=>{if(ke&&Mt===C)return ke.values;let e=qe(Mt);return Ee?e.map(e=>Ee(e)):e},[Mt,C,ke,Ee]),W=me(()=>{let e=null;return F&&wt&&mt&&d!==`none`&&(e=Rn(Nt,_t,N,dt)),new Ze({id:Se,labelId:void 0,selectedValue:_t,open:wt,items:De,selectionMode:d,name:ut,form:m,disabled:lt,readOnly:_,required:v,grid:x,virtualized:P,openOnInputClick:E,itemToStringLabel:Ae,isItemEqualToValue:N,modal:te,autoHighlight:gt,submitOnItemClick:oe,hasInputValue:H,mounted:!1,forceMounted:!1,transitionStatus:`idle`,inline:F,activeIndex:null,selectedIndex:e,popupProps:{},listProps:{},inputProps:{},triggerProps:{},itemRoot:{props:Xe,id:Se,selectionMode:d,disabled:lt,readOnly:_,isItemEqualToValue:N},positionerElement:null,listElement:null,popupId:void 0,triggerElement:null,inputElement:null,inputGroupElement:null,popupSide:null,openMethod:null,inputInsidePopup:!0,inputOwnsFormValue:d===`none`},{onOpenChangeComplete:R,setOpen:R,setInputValue:R,setSelectedValue:R,setIndices:R,handleSelection:R,forceMount:R,requestSubmit:R,listRef:Ue,labelsRef:We,popupRef:Ge,emptyRef:Qe,inputRef:Ke,startDismissRef:Je,endDismissRef:Ye,chipsContainerRef:et,clearRef:tt,valuesRef:st,pointerDownItemRef:ct,selectionEventRef:nt},pM)}).current,Pt=d===`none`?St:_t,Ft=J.useMemo(()=>d===`none`?Pt:Array.isArray(_t)?_t.map(e=>Le(e,M)):Le(_t,M),[Pt,M,d,_t]),It=Yt(f),Lt=Yt(n),Rt=W.useState(`activeIndex`),zt=W.useState(`selectedIndex`),Bt=W.useState(`positionerElement`),Vt=W.useState(`listElement`),Ht=W.useState(`triggerElement`),Ut=W.useState(`inputElement`),G=W.useState(`inputGroupElement`),Kt=W.useState(`inline`),qt=W.useState(`inputInsidePopup`),Jt=W.useState(`inputOwnsFormValue`),Xt=ft&&!qt&&St===U,Zt=rt(Ht),{openMethod:Qt,triggerProps:$t}=ge(wt),en=Yt(()=>Ft);Gt(qt?Zt:Ke,Se,Pt,en,!lt,p);let tn=Yt(()=>{Te?We.current=Nt.map(Me):W.set(`forceMounted`,!0)}),nn=Yt((e,t,n,r)=>{if(t===-1){if(at.current===yM)return;at.current=yM}else at.current={value:e,index:t};It(e,Or(n,r,{index:t}))}),on=Yt(e=>{let t={};e.activeIndex!==void 0&&(t.activeIndex=e.activeIndex),e.selectedIndex!==void 0&&(t.selectedIndex=e.selectedIndex),W.update(t);let n=e.activeIndex;if(n===void 0)return;let r=e.type||`none`;n===null?nn(void 0,-1,r,e.event):nn(st.current[n],n,r,e.event)}),sn=Yt((t,n)=>{if(e.onInputValueChange?.(t,n),!n.isCanceled){if($e.current=n.reason===Cr,n.reason===`input-change`){wt&&Re!==null&&ze(null);let e=n.event,r=e.inputType;if(e.type===`compositionend`||r!=null&&r!==``&&r!==`insertReplacementText`){let e=t.trim()!==``;e&&Pe(!0),ot.current={hasQuery:e};let n=W.state.listElement;if(!W.state.virtualized&&n){let e=Ge.current;for(let t of fi(n.firstElementChild??n)){if(!vt(t)||(e?!vi(e,t):t.getAttribute(`role`)===`dialog`))break;if(_M(t)){t.scrollTop=0;break}}}e&>&&W.state.activeIndex==null&&(wt||Kt)&&W.set(`activeIndex`,0)}}else n.reason===`input-clear`&&t===``&&W.state.inputInsidePopup&&(ot.current={hasQuery:!1,selection:!0});Ct(t)}}),cn=Yt(e=>{let t=!e&&qt&&!Kt&&St!==``&&(String(St).trim()===Re||St===U);!e&&(t||St===``||Xt)&&Pe(!1),ze(null),t&&sn(``,An(Cr))}),[ln,un]=J.useState(!1),fn=Yt((t,n)=>{if(wt===t)return;n.reason===`escape-key`&&mt&&Nt.length===0&&!Qe.current&&n.allowPropagation();let r=n,i=he(r);if(e.onOpenChange?.(t,r),ot.current?.hasQuery&&n.reason===`input-change`===n.isCanceled&&(ot.current=null),!n.isCanceled&&(t&&Re!==null&&cn(n.reason===an),!t&&Ne&&(ft?(Kt||ze(Dt),Dt===``&&Pe(!1)):dt&&(Kt||ze(Dt),qt&&on({activeIndex:null}),(!qt||Kt)&&sn(``,An(Cr,n.event,void 0,{isItemPress:n.reason===gn})))),t||un(i()),Tt(t),!t&&qt&&(n.reason===`focus-out`||n.reason===`outside-press`)&&(pe(!0),_e(!1),ve===`onBlur`))){let e=d===`none`?St:_t;ye.commit(e)}}),pn=Yt((e,t)=>{a?.(e,t),!t.isCanceled&&(yt(e),(d===`none`&&Ge.current&&ee||ft&&!W.state.inputInsidePopup)&&sn(Me(e),An(t.reason,t.event)))}),mn=Yt((e,t)=>{let n=pt(e),r=nt.current??e;nt.current=null;let i=An(gn,r),a=dn(n,`a`)?.getAttribute(`href`);if(a){a.startsWith(`#`)&&fn(!1,i);return}if(dt){let e=Array.isArray(_t)?_t:[],n=hn(e,t,N),r=n?ui(e,t,N):[...e,t];if(pn(r,i),i.isCanceled||!(Ke.current&&Ke.current.value.trim()!==``))return;if(W.state.inputInsidePopup){sn(``,An(Cr,i.event,void 0,{isItemPress:!0}));let e=ot.current;e&&!n&&(e.toggledValue=t)}else fn(!1,i)}else{if(pn(t,i),i.isCanceled)return;fn(!1,i)}}),_n=Yt(()=>{let e=ye.inputRef.current?.form??W.state.inputElement?.form;e&&typeof e.requestSubmit==`function`&&e.requestSubmit()}),vn=Yt(()=>{if(Lt?.(!1),Pe(!1),ze(null),on(d===`none`?{activeIndex:null,selectedIndex:null}:{activeIndex:null}),dt&&Ke.current&&Ke.current.value!==``&&!$e.current&&sn(``,An(Cr)),ft)if(W.state.inputInsidePopup)Ke.current&&Ke.current.value!==``&&sn(``,An(Cr));else{let e=Me(_t);Ke.current&&Ke.current.value!==e&&sn(e,An(e===``?Cr:ni))}}),yn=J.useMemo(()=>Kt&&Bt?{current:dn(Bt,`[role="dialog"]`)}:Ge,[Kt,Bt]),{mounted:bn,transitionStatus:xn,forceUnmount:Sn}=je({open:wt,ref:yn,preventUnmountOnClose:ln,setPreventUnmountOnClose:un,onUnmount:vn});J.useImperativeHandle(e.actionsRef,()=>({unmount:Sn,close:()=>fn(!1,An(Kn))}),[Sn,fn]),Fe(function(){let e=He.current!==null&&Re===null;if(He.current=Re,wt&&(!e||!mt)||(wt||(ct.current=null),d===`none`))return;let t=mt?Nt:st.current;on({selectedIndex:Rn(t,_t,N,dt)})},[wt,Re,_t,d,dt,mt,Nt,N,on]),Fe(()=>{Te&&(st.current=Nt,Ue.current.length=Nt.length)},[Te,Nt]),Fe(()=>{!wt&&ot.current?.hasQuery&&(ot.current=null)},[wt]),Fe(()=>{if(!wt&&Kt&&yn.current){ot.current=null;return}let e=mt||ht?Nt:st.current,t=ot.current;if(t){let n=wt||Kt||W.state.positionerElement?.hidden===!1;if(t.hasQuery){let t=Ke.current;!gt||String(St).trim()===``||Kt&>!==`always`&&(!t||Ci(t.ownerDocument)!==t)?ot.current=null:n&&(e[0]!==void 0||!mt&&!ht)&&(W.set(`activeIndex`,0),ot.current=null)}else if(String(St).trim()===``&&(ot.current=null,n)){let e=t.selection;gt===`always`&&!e&&W.state.selectionMode===`none`&&W.set(`activeIndex`,0),queueMicrotask(()=>{if(!W.state.open&&(!W.state.inline||yn.current)||Ke.current&&Ke.current.value.trim()!==``)return;let n=W.state.selectedValue,r=W.state.selectionMode===`multiple`;if(r&&Array.isArray(n)?n.length>0:W.state.selectionMode!==`none`&&n!=null){let e=mt||ht?Nt:st.current,i=Wn(e,t.toggledValue,W.state.isItemEqualToValue);W.set(`activeIndex`,i===-1?Rn(e,n,W.state.isItemEqualToValue,r):i)}else e?W.set(`activeIndex`,null):gt===`always`&&W.set(`activeIndex`,0)})}}if(!wt&&!Kt)return;let n=W.state.activeIndex;if(n==null){if(gt===`always`&&e.length>0){W.set(`activeIndex`,0);return}nn(void 0,-1,ni);return}if(n>=e.length){nn(void 0,-1,ni),W.set(`activeIndex`,null);return}let r=e[n],i=at.current.value,a=i!==vM&&Mr(r,i,W.state.isItemEqualToValue);(at.current.index!==n||!a)&&nn(r,n,ni)},[Rt,gt,nn,ht,mt,Nt,Kt,wt,yn,W,St]),Fe(()=>{if(d===`none`){le(String(St)!==``);return}le(dt?Array.isArray(_t)&&_t.length>0:_t!=null)},[le,d,St,_t,dt]),J.useEffect(()=>{mt&>&&Nt.length===0&&on({activeIndex:null})},[mt,gt,Nt.length,on]);function Cn(){wt&&Dt!==``&&Dt!==String(xt)&&!Xt&&Pe(!0)}function wn(){wt&&Re!==null&&cn(!1)}let Tn=!1;function En(){!Tn&&St!==U&&(Tn=!0,sn(U,An(ni)))}function Dn(){d!==`none`&&(B(ut),se(rn(_t,ce.initialValue,N)),ye.change(_t),ft&&!H&&!qt&&En())}function On(){ft&&!H&&!qt&&!Ne&&En()}function kn(){d===`none`&&(B(ut),se(St!==ce.initialValue),ye.change(St))}Oe(Dt,Cn),Oe(wt,wn),Oe(_t,Dn),Oe(U,On),Oe(Te,On),Oe(St,kn);let jn=Ve({open:Kt?!0:wt,onOpenChange:fn,elements:{reference:qt?Ht:Ut,floating:Bt}}),Mn=x?`grid`:`listbox`,Nn=wt||Kt,Pn=Nn?`true`:`false`,Fn=J.useMemo(()=>{let e=Ut?.tagName===`INPUT`,t=Ut==null||e,n=t||Nn,r=t?{autoComplete:`off`,spellCheck:`false`,autoCorrect:`off`,autoCapitalize:`none`}:{};return n&&(r.role=`combobox`,r[`aria-expanded`]=Pn,r[`aria-haspopup`]=Mn,r[`aria-controls`]=Nn?Vt?.id:void 0,r[`aria-autocomplete`]=_?`none`:L),{reference:r,floating:{role:`presentation`}}},[Ut,Nn,Pn,Mn,Vt?.id,L,_]),In=y(jn,{enabled:!lt&&E,event:`mousedown-only`,toggle:!1,touchOpenDelay:qt?0:100,reason:Wr}),K=Oi(jn,{enabled:!lt&&!Kt,outsidePressEvent:{mouse:`sloppy`,touch:`intentional`},bubbles:Kt?!0:void 0,outsidePress(e){let t=pt(e);return!vi(Ht,t)&&!vi(tt.current,t)&&!vi(et.current,t)&&!vi(G,t)}}),Ln=Ie(jn,{enabled:!lt,id:Se,listRef:Ue,activeIndex:Rt,selectedIndex:zt,virtual:!0,loopFocus:A,allowEscape:A&&!gt,focusItemOnOpen:Ne||d===`none`&&!gt?!1:`auto`,focusItemOnHover:k,resetOnPointerLeave:!O,orientation:x?`horizontal`:void 0,rtl:be===`rtl`,disabledIndices:Be,grid:x?nM:void 0,onNavigate(e,t){!t&&!wt&&!(Kt&&e===null)||xn===`ending`||on({activeIndex:e,type:re(t),event:t?.nativeEvent})}}),zn=J.useMemo(()=>z(Ln.reference,{onKeyDown(e){x&&W.state.activeIndex==null&&(e.key===`ArrowLeft`||e.key===`ArrowRight`)&&e.preventBaseUIHandler()}},K.reference,In.reference,Fn.reference),[Ln.reference,K.reference,In.reference,Fn.reference,x,W]),Bn=J.useMemo(()=>z(ne,K.floating),[K.floating]),Vn=J.useMemo(()=>z(Ln.floating,Fn.floating),[Ln.floating,Fn.floating]),Hn=J.useMemo(()=>{let e=Ln.item;return{props:e?{...e,onFocus:void 0}:Xe,id:Se,selectionMode:d,disabled:lt,readOnly:_,isItemEqualToValue:N}},[Ln.item,Se,d,lt,_,N]);W.useContextCallback(`setOpen`,fn),W.useContextCallback(`setInputValue`,sn),W.useContextCallback(`setSelectedValue`,pn),W.useContextCallback(`setIndices`,on),W.useContextCallback(`handleSelection`,mn),W.useContextCallback(`forceMount`,tn),W.useContextCallback(`requestSubmit`,_n),W.useContextCallback(`onOpenChangeComplete`,n),Si(()=>{W.update({inline:F,popupProps:Bn,listProps:Vn,inputProps:zn,triggerProps:$t,itemRoot:Hn})});let Un={id:Se,selectedValue:_t,open:wt,mounted:bn,transitionStatus:xn,items:De,inline:F,popupProps:Bn,listProps:Vn,inputProps:zn,triggerProps:$t,itemRoot:Hn,openMethod:Qt,selectionMode:d,name:ut,form:m,disabled:lt,readOnly:_,required:v,grid:x,virtualized:P,openOnInputClick:E,itemToStringLabel:Ae,modal:te,autoHighlight:gt,isItemEqualToValue:N,submitOnItemClick:oe,hasInputValue:H};Fe(()=>{W.update({...Un,inputOwnsFormValue:d===`none`&&(F||!W.state.inputInsidePopup)})},[W,...Object.values(Un)]);let Gn=c(b,ye.inputRef),qn=J.useMemo(()=>({query:Dt,hasItems:mt,filteredItems:Mt,flatFilteredValues:Nt}),[Dt,mt,Mt,Nt]),Jn=J.useMemo(()=>Array.isArray(Pt)?``:Le(Pt,M),[Pt,M]),Yn=dt&&Array.isArray(_t)&&_t.length>0,Xn=dt||d===`none`&&Jt?void 0:ut,Qn=J.useMemo(()=>!dt||!Array.isArray(_t)||!ut?null:_t.map(e=>{let t=Le(e,M);return(0,Y.jsx)(`input`,{type:`hidden`,form:m,name:ut,value:t,disabled:lt},t)}),[dt,_t,m,ut,M,lt]),er=(0,Y.jsxs)(J.Fragment,{children:[e.children,(0,Y.jsx)(`input`,{...ye.getValidationProps(lt,{onFocus(){if(qt){Ht?.focus();return}(Ke.current||Ht)?.focus()},onChange(e){if(e.nativeEvent.defaultPrevented||lt||_)return;let t=e.currentTarget.value,n=t.toLowerCase(),r=An(ni,e.nativeEvent),i=()=>st.current.findIndex(e=>Le(e,M).toLowerCase()===n||Me(e).toLowerCase()===n);function a(){if(dt)return;if(d===`none`){sn(t,r);return}let e=i();e===-1&&(e=st.current.findIndex((e,t)=>{let r=We.current[t];return r!=null&&r.toLowerCase()===n}));let a=e===-1?void 0:st.current[e];a!=null&&pn?.(a,r)}ft&&(tn(),Te&&i()===-1&&W.set(`forceMounted`,!0)),queueMicrotask(a)}}),id:Se&&Xn==null?`${Se}-hidden-input`:void 0,form:m,name:Xn,autoComplete:ie,disabled:lt,required:v&&!Yn,readOnly:_,value:Jn,ref:Gn,style:Xn?Wt:xe,tabIndex:-1,"aria-hidden":!0,suppressHydrationWarning:!0}),Qn]});return(0,Y.jsx)(rM.Provider,{value:W,children:(0,Y.jsx)(iM.Provider,{value:jn,children:(0,Y.jsx)(oM.Provider,{value:mt,children:(0,Y.jsx)(aM.Provider,{value:qn,children:(0,Y.jsx)(sM.Provider,{value:St,children:er})})})})})}function SM(e){let{multiple:t=!1,defaultValue:n,value:r,onValueChange:i,autoComplete:a,...o}=e;return(0,Y.jsx)(xM,{...o,selectionMode:t?`multiple`:`single`,selectedValue:r,defaultSelectedValue:n,onSelectedValueChange:i,formAutoComplete:a})}var CM=`data-popup-side`,wM=`data-list-empty`,TM={...Bn,...On,popupSide:e=>e?{[CM]:e}:null,listEmpty:e=>e?{[wM]:``}:null},EM=J.createContext(void 0);function DM(){return J.useContext(EM)}var OM=J.createContext(void 0);function kM(e){let t=J.useContext(OM);if(t===void 0&&!e)throw Error(Zn(21));return t}var AM=J.forwardRef(function(e,t){let n=cM(),{buttonRef:r,getButtonProps:i}=oe({native:!1}),a=c(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 jM(e){let t=e.useState(`mounted`),n=e.useState(`popupSide`),r=e.useState(`positionerElement`);return t&&r?n:null}function MM(){return uM().filteredItems.length===0}function NM(e){return e===`rtl`?[`ArrowRight`,`ArrowLeft`]:[`ArrowLeft`,`ArrowRight`]}function PM(e,t,n){let r=e.context.listRef.current[t];r&&(e.context.selectionEventRef.current=n,r.click(),e.context.selectionEventRef.current=null)}var FM=J.forwardRef(function(e,t){let{render:n,className:r,disabled:i=!1,id:a,style:o,...s}=e,{state:c,disabled:u,setTouched:d,validationMode:f,validation:p}=it(),{labelId:h}=Se(),g=DM(),_=!!kM(!0),v=cM(),y=dM(),b=rr(),x=v.useState(`required`),S=v.useState(`disabled`),C=v.useState(`readOnly`),w=v.useState(`name`),T=v.useState(`form`),E=v.useState(`selectionMode`),D=v.useState(`autoHighlight`),O=v.useState(`inputProps`),k=v.useState(`triggerProps`),j=v.useState(`open`),M=v.useState(`mounted`),N=v.useState(`selectedValue`),P=v.useState(`id`),F=v.useState(`inline`),te=v.useState(`modal`),I=!!D,L=jM(v),R=u||S||i,ne=MM(),ie=Tt(R,v.context.inputRef),ae=_||F,z=!ae||te,oe=m(a??(ae?void 0:P)),B=_?l:c,[se,ce]=J.useState(null),le=J.useRef(!1),ue=J.useRef(null);Fe(()=>{j||(ue.current=null)},[j]);let de=E===`none`&&!_,fe=Yt(e=>{let t=_||v.state.inline;t&&!v.state.hasInputValue&&v.context.setInputValue(``,An(ni)),v.update({inputElement:e,inputInsidePopup:t,inputOwnsFormValue:de})}),pe=_?s:p.getValidationProps(R,s);function me(e){v.context.setIndices({activeIndex:null,selectedIndex:null,type:re(e),event:e})}let he={...B,open:j,disabled:R,readOnly:C,popupSide:L,listEmpty:ne};function ge(e){if(!g)return;let t,n=g.chipsRef.current.length,[r]=NM(b);return e.key===r&&(e.currentTarget.selectionStart??0)===0&&N.length>0&&(e.preventDefault(),t=n>0?n-1:void 0),t}let _e=Nt(`input`,e,{state:he,ref:[t,v.context.inputRef,fe],props:[O,k,{value:se??y,"aria-readonly":C||void 0,"aria-required":x||void 0,"aria-labelledby":h,disabled:R,readOnly:C,required:E===`none`?x:void 0,form:T,...de&&w&&{name:w},id:oe,onFocus(){if(ie(!0),!F)return;let e=ue.current;ue.current=null,!(e==null||!Object.hasOwn(v.context.valuesRef.current,e))&&v.context.setIndices({activeIndex:e})},onBlur(){d(!0),ie(!1);let e=v.state.activeIndex;if(F&&e!==null&&D!==`always`&&(ue.current=e,v.context.setIndices({activeIndex:null})),f===`onBlur`){let e=E===`none`?y:N;p.commit(e)}},onCompositionStart(e){Ge||(le.current=!0,ce(e.currentTarget.value))},onCompositionEnd(e){le.current=!1;let t=e.currentTarget.value;ce(null),v.context.setInputValue(t,An(an,e.nativeEvent))},onChange(e){let t=e.nativeEvent,n=t.inputType,r=!n||n===`insertReplacementText`,i=le.current||!r;function a(e){C||R||!e||!i||(v.context.setOpen(!0,An(an,t)),I||me(t))}if(le.current){let n=e.currentTarget.value;ce(n),n===``&&!v.state.openOnInputClick&&!v.state.inputInsidePopup&&v.context.setOpen(!1,An(Cr,t));let r=n.trim(),i=I&&r!==``;a(r),j&&v.state.activeIndex!==null&&!i&&me(t);return}let o=An(an,t);if(v.context.setInputValue(e.currentTarget.value,o),o.isCanceled)return;let s=e.currentTarget.value===``,c=An(Cr,t);s&&!v.state.inputInsidePopup&&(E===`single`&&v.context.setSelectedValue(null,c),v.state.openOnInputClick||v.context.setOpen(!1,c)),a(e.currentTarget.value.trim()),j&&v.state.activeIndex!==null&&!I&&me(t)},onKeyDown(e){if(e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)return;if(R||C){C&&e.key===`Enter`&&j&&v.state.activeIndex!==null&&ee(e);return}let t=e.currentTarget,n=t.scrollWidth-t.clientWidth,r=b===`rtl`;if(e.key===`Home`){ee(e);let n=A&&r?t.value.length:0;t.setSelectionRange(n,n),t.scrollLeft=0;return}if(e.key===`End`){ee(e);let i=A&&r?0:t.value.length;t.setSelectionRange(i,i),t.scrollLeft=r?-n:n;return}if(!M&&e.key===`Escape`){let t=E===`multiple`&&Array.isArray(N)?N.length===0:N===null,n=An(vr,e.nativeEvent),r=E===`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(N)&&N.length>0){let t=g.chipsRef.current.length,n=t>0?t-1:N.length-1,r=N.filter((e,t)=>t!==n);me(e.nativeEvent),v.context.setSelectedValue(r,An(ni,e.nativeEvent));return}let i=ge(e);if(i!==void 0&&g?.chipsRef.current[i]?.focus(),e.which!==229&&e.key===`Enter`&&j){let t=v.state.activeIndex,n=e.nativeEvent;if(t===null){if(F)return;v.context.setOpen(!1,An(ni,n));return}ee(e),PM(v,t,n)}}},pe],stateAttributesMapping:TM}),ve=_?(0,Y.jsx)(Xt.Provider,{value:zt,children:_e}):_e;return(0,Y.jsxs)(J.Fragment,{children:[j&&z&&(0,Y.jsx)(AM,{ref:v.context.startDismissRef}),ve]})}),IM=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:u,setTouched:d,validationMode:f,validation:m}=it(),{labelId:h}=Se(),g=cM(),_=g.useState(`selectionMode`),v=g.useState(`disabled`),b=g.useState(`readOnly`),x=g.useState(`required`),S=g.useState(`positionerElement`),C=g.useState(`listElement`),w=g.useState(`popupId`),T=g.useState(`triggerProps`),E=g.useState(`inputInsidePopup`),D=g.useState(`id`),O=g.useState(`labelId`),k=g.useState(`open`),A=g.useState(`selectedValue`),j=g.useState(`activeIndex`),M=g.useState(`selectedIndex`),N=g.useState(`hasSelectedValue`),P=lM(),F=dM(),te=p(),I=u||v||a,L=MM(),R=jM(g),ne=J.useRef(null),re=Tt(I,ne);de({id:E?o:void 0});let ie=E?o??D:o,ae=Pn(h,O),z;k&&E?z=w??mM(D):k&&(z=C?.id);let B=J.useRef(``);function se(e){B.current=e.pointerType}let{reference:ce}=Qn(P,{enabled:!k&&!b&&!v&&_===`single`,listRef:g.context.labelsRef,activeIndex:j,selectedIndex:M,onMatch(e){let t=g.context.valuesRef.current[e];t!==void 0&&g.context.setSelectedValue(t,An(ni))}}),{reference:le}=y(P,{enabled:!v,event:`mousedown`}),{buttonRef:ue,getButtonProps:fe}=oe({native:i,disabled:I}),pe={...l,readOnly:b,open:k,disabled:I,popupSide:R,listEmpty:L,placeholder:_!==`none`&&!N};return Nt(`button`,e,{ref:[t,ue,ne,Yt(e=>{g.set(`triggerElement`,e)})],state:pe,props:[T,le,ce,{id:ie,tabIndex:E?0:-1,role:E?`combobox`:void 0,"aria-expanded":k,"aria-haspopup":E?`dialog`:`listbox`,"aria-controls":z,"aria-required":E&&x||void 0,"aria-readonly":E&&b||void 0,"aria-labelledby":ae,onPointerDown:se,onPointerEnter:se,onFocus(){re(!0),!I&&te.start(0,g.context.forceMount)},onBlur(e){if(!vi(S,e.relatedTarget)&&(d(!0),re(!1),f===`onBlur`)){let e=_===`none`?F:A;m.commit(e)}},onMouseDown(e){if(I||(E||P.set(`domReferenceElement`,e.currentTarget),g.context.forceMount(),B.current!==`touch`&&(g.context.inputRef.current?.focus(),E||e.preventDefault()),k))return;let t=Rt(e.currentTarget);function n(e){let t=g.state.triggerElement;if(!t)return;let n=pt(e),r=g.state.positionerElement,i=g.state.listElement;vi(t,n)||vi(r,n)||vi(i,n)||Qe(e,t)||g.context.setOpen(!1,An(wn,e))}E&&t.addEventListener(`mouseup`,n,{once:!0})},onKeyDown(e){(e.key===`ArrowDown`||e.key===`ArrowUp`)&&(ee(e),g.context.setOpen(!0,An(sr,e.nativeEvent)),g.context.inputRef.current?.focus())}},m.getValidationProps(I,c),fe],stateAttributesMapping:TM})}),LM=J.createContext(null);function RM(){return J.useContext(LM)}function zM(e){let{children:t}=e,{filteredItems:n}=uM(),r=RM(),i=r?r.items:n;return(0,Y.jsx)(J.Fragment,{children:i.map(t)})}var BM=J.forwardRef(function(e,t){var n;let{render:r,className:i,style:a,children:o,...s}=e,c=cM(),l=lM(),u=!!kM(!0),{filteredItems:d,hasItems:f}=uM(),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=Yt(e=>{c.set(`positionerElement`,e)}),S=Yt(e=>{c.set(`listElement`,e)}),C=J.useMemo(()=>typeof o==`function`?n||=(0,Y.jsx)(zM,{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;ee(e),PM(c,t,e.nativeEvent)}}},s]});if(_)return E;let D=f&&!v?void 0:c.context.labelsRef;return(0,Y.jsx)(ei,{elementsRef:c.context.listRef,labelsRef:D,children:E})}),VM=J.createContext(void 0);function HM(){let e=J.useContext(VM);if(e===void 0)throw Error(Zn(20));return e}var UM=J.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e,i=cM(),a=i.useState(`mounted`),o=i.useState(`forceMounted`);return a||n||o?(0,Y.jsx)(VM.Provider,{value:n,children:(0,Y.jsx)(ue,{ref:t,...r})}):null}),WM=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=wt,style:g,..._}=e,v=cM(),y=lM(),b=HM(),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=MM(),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});Me(S&&x,w===`touch`,T,E);let N={open:S,side:M.side,align:M.align,anchorHidden:M.anchorHidden,empty:j};Fe(()=>{v.set(`popupSide`,M.side)},[v,M.side]);let P=Yt(e=>{v.set(`positionerElement`,e)}),F=te(e,N,{styles:M.positionerStyles,transitionStatus:A,props:_,refs:[t,P],hidden:!C,inert:!S});return(0,Y.jsxs)(OM.Provider,{value:M,children:[C&&x&&(0,Y.jsx)(lt,{inert:yt(!S),cutout:O??D??E}),F]})}),GM={...pr,...oi},KM=J.forwardRef(function(e,t){let{render:n,className:r,style:i,initialFocus:a,finalFocus:o,...s}=e,c=cM(),l=kM(),u=lM(),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=MM(),x=s.id??(g?mM(y):void 0);Fe(()=>(c.set(`popupId`,c.context.popupRef.current?.id||x),()=>{c.set(`popupId`,void 0)}),[c,x]),ct({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=pt(e.nativeEvent);p!==`touch`&&(vi(c.state.listElement,t)||t===e.currentTarget)&&c.context.inputRef.current?.focus()}},j(h),s],stateAttributesMapping:GM}),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)(Ot,{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)(AM,{ref:c.context.endDismissRef})]})})}),qM=J.createContext(void 0),JM=J.createContext(!1);function YM(){return J.useContext(JM)}function XM(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=W({guess:!0,index:l,textRef:p}),h=cM(),g=YM(),_=fM(),{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;Fe(()=>{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]),Fe(()=>{if(!D||_)return;let e=h.context.valuesRef.current;return e[E]=c,()=>{delete e[E]}},[D,_,E,c,h]),Fe(()=>{if(!D||_)return;let e=h.state.selectedValue,t=h.state.selectedIndex;h.state.selectionMode===`multiple`&&Array.isArray(e)?t=Di(E,c,h.context.valuesRef.current,e,C,t):Mr(c,e,C)&&(t=E),h.set(`selectedIndex`,t)},[D,_,h,E,c,C]);let{getButtonProps:N,buttonRef:P}=oe({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?(Ni.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)}},I=Nt(`div`,t,{ref:[P,n,m.ref,A],state:F,props:[v,te,f,N]}),L=J.useMemo(()=>({selected:M,textRef:p}),[M,p]);return(0,Y.jsx)(qM.Provider,{value:L,children:I})}function ZM(e){let{componentProps:t,forwardedRef:n}=e,r=cM().useState(`isItemEqualToValue`),{flatFilteredValues:i}=uM();return(0,Y.jsx)(XM,{componentProps:t,forwardedRef:n,virtualized:!0,indexFromFilter:Wn(i,t.value??null,r)})}var QM=J.memo(J.forwardRef(function(e,t){let n=cM().useState(`virtualized`);return n&&e.index==null?(0,Y.jsx)(ZM,{componentProps:e,forwardedRef:t}):(0,Y.jsx)(XM,{componentProps:e,forwardedRef:t,virtualized:n,indexFromFilter:void 0})})),$M=J.forwardRef(function(e,t){let{render:n,className:r,style:i,children:a,...o}=e,{filteredItems:s}=uM(),c=cM(),l=Fl(),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]})}),eN=200;function tN(e,t,n){return e?.kind===`local`?`${n} (local)`:e?.kind===`published`?e.branch:t}function nN(e,t,n){return e?.kind===`local`?{base:n}:e?.kind===`published`&&e.branch!==t?{base:$i(e.branch)}:{}}function rN(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 iN({label:e,className:t,...n}){return(0,Y.jsxs)(`button`,{type:`button`,...n,className:q(Wd,`max-w-[16rem]!`,t),children:[(0,Y.jsx)(hc,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`truncate`,children:e}),(0,Y.jsx)(ke,{className:`h-3 w-3 shrink-0 opacity-70`,"aria-hidden":!0})]})}var aN=(e,t)=>e.value===t.value;function oN({projectId:e,main:t,local:n,pick:r,onPick:i,busy:a}){let o=tN(r,t,n),[s,c]=(0,J.useState)(!1),l=mn(s?()=>Jo(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)(SM,{items:d,limit:eN,value:f,isItemEqualToValue:aN,open:s,onOpenChange:c,onValueChange:e=>{e&&i(e.pick)},children:[(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(IM,{disabled:a,"aria-label":`The agent starts from`,className:I,render:(0,Y.jsx)(iN,{label:o})})}),(0,Y.jsx)(H,{children:`The agent starts from ${o}`})]}),(0,Y.jsx)(UM,{children:(0,Y.jsx)(WM,{sideOffset:6,align:`start`,className:`z-50 outline-none`,children:(0,Y.jsxs)(KM,{"aria-label":`The agent starts from`,className:q(mi,`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)(Rc,{className:`h-3.5 w-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Y.jsx)(FM,{"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)(M,{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)($M,{className:`px-2 py-1.5 text-xs text-muted-foreground empty:hidden`,children:`No branch by that name.`}),(0,Y.jsx)(BM,{children:e=>(0,Y.jsxs)(QM,{value:e,className:q(E,`items-start`),children:[(0,Y.jsx)(Ir,{className:q(`mt-0.5 h-3.5 w-3.5 shrink-0`,e.value===f.value?`opacity-100`:`opacity-0`),"aria-hidden":!0}),e.description===void 0?(0,Y.jsx)(`span`,{className:`min-w-0 leading-tight [overflow-wrap:anywhere]`,children:e.label}):(0,Y.jsx)(Dt,{label:e.label,description:e.description})]},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>eN?(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]})})]})})})]})}function sN(e,t){let n=t?.replace(/\/+$/,``);return n&&e.startsWith(`${n}/`)?e.slice(n.length+1):e}function cN(e,t){let n=t?.replace(/\/+$/,``);return n===void 0||!e.startsWith(`/`)||e.startsWith(`${n}/`)}function lN(e){return e.kind===`driver`&&e.event.type===`output`?e.event.changed??[]:[]}function uN(e){return e.kind===`driver`&&e.event.type===`start`}function dN(e,t){let n=new Map;for(let r of e){if(!cN(r.path,t))continue;let e=sN(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 fN(e,t){let n=new Map,r=[];for(let i of e){if(uN(i)){r.length>0&&n.set(i,dN(r,t)),r=[];continue}r.push(...lN(i))}return{ended:n,last:dN(r,t)}}function pN(e){return{added:e.reduce((e,t)=>e+t.added,0),removed:e.reduce((e,t)=>e+t.removed,0)}}var mN={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 hN(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 gN(e){return e.split(`, `).map(e=>e.replace(/\/+$/,``).split(`/`).pop()||e).join(`, `)}function _N(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 vN(e,t,n){let r=mN[e],i=_N(e),a={verb:r?.verb??i?.verb??hN(e),doing:r?.doing??i?.doing??hN(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?gN(t):r?.slash?`/${t.replace(/^\//,``)}`:t,r?.file&&!t.includes(`, `)&&(a.path=t)),n!==void 0&&n.length>0){let e=dN(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=pN(e)}return a}var yN=(e,t,n)=>e===1?t:`${e} ${n}`;function bN(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 ${yN(s,`a command`,`commands`)}${n(`command`)}`}),i>0&&a.push({words:`read ${yN(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=dN(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 ${yN(r.length,`a file`,`files`)}`}):(t>0&&a.push({words:`created ${yN(t,`a file`,`files`)}`}),e.length>t&&a.push({words:`edited ${yN(e.length-t,`a file`,`files`)}`})),e.length>0&&(o.size=pN(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 ${yN(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 xN(e){return e.parts.map(e=>e.target===void 0?e.words:`${e.words} ${e.target}`).join(`, `)}function SN(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`)&&(kN.has(i.slice(0,-3))||kN.has(`${i.slice(0,-3)}e`)||kN.has(i.slice(0,-4))))return e.trim();if(!kN.has(i))return;let a=r.replace(/\b(and|then)(\s+)([A-Za-z][A-Za-z-]*)/g,(e,t,n,r)=>kN.has(r.toLowerCase())?`${t}${n}${ON(r)}`:e);return ON(n)+a}function CN(e){let t=/^([A-Za-z][A-Za-z-]*)(.*)$/s.exec(e.trim());if(!t)return;let[,n,r]=t,i=wN(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=wN(r.toLowerCase());return i===void 0?e:`${t}${n}${DN(r,TN(i))}`});return DN(n,TN(i))+a}function wN(e){if(kN.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&&kN.has(e))}function TN(e){let t=EN[e];return t===void 0?AN.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 EN={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 DN(e,t){return e[0]===e[0].toUpperCase()?t.charAt(0).toUpperCase()+t.slice(1):t}function ON(e){let t=e.toLowerCase(),n=AN.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 kN=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(` `)),AN=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 jN({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 MN({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 NN({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)(lc,{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)(jN,{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)(jN,{added:e.reduce((e,t)=>e+t.added,0),removed:e.reduce((e,t)=>e+t.removed,0)})})]})]})}var PN=`cubic-bezier(0.2, 0, 0, 1)`;function FN({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 ${PN}`,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 IN=(0,J.createContext)(void 0);function LN({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:g(r)})}function RN(){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 zN(e){let t=e.trim().split(`
|
|
130
|
-
`).find(e=>e.trim()!==``)?.trim()??`Thought`;return t.length>90?`${t.slice(0,90).trimEnd()}…`:t}var BN=`max-h-64 overflow-auto whitespace-pre-wrap break-all font-mono text-[13px] leading-[19px]`,VN=new Set([`Agent`,`Task`]);function HN(e){let[t,n]=(0,J.useState)(!1),{words:r,label:i,opens:a}=GN(e,!1,(0,J.useContext)(IN));return a?(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[(0,Y.jsx)(UN,{open:t,label:i,onToggle:()=>n(e=>!e),className:`max-w-full gap-1.5 hover:text-foreground`,children:r}),t&&(0,Y.jsx)(KN,{...e})]}):(0,Y.jsx)(`div`,{className:`flex min-w-0 items-center gap-1.5`,children:r})}function UN({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)(ZN,{open:e})})]})}function WN({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 GN({label:e,detail:t,whole:n,summary:r,output:i},a,o){let s=vN(e,t,i?.changed),c=s.kind===`command`?r:VN.has(e)&&a?t===void 0?void 0:SN(t):void 0,l=c===void 0?void 0:a?SN(c)??c:CN(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)(WN,{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)(MN,{...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 KN({label:e,detail:t,whole:n,output:r,card:i=!1}){let a=vN(e,t,r?.changed),o=a.kind===`read`&&a.path!==void 0&&r!==void 0?qN(r.text):void 0;return o?(0,Y.jsx)(JN,{path:a.path,read:o}):(0,Y.jsx)(XN,{label:e,call:a,whole:n,output:r,card:i})}function qN(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 JN({path:e,read:t}){let n=(0,J.useContext)(IN),r=dr(t.lines.map(e=>e.text).join(`
|
|
133
|
-
`),Jr(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)(YN,{pieces:r[t]}):e.text||` `})]},e.number))}),t.rest!==``&&(0,Y.jsx)(`pre`,{className:q(BN,`text-muted-foreground`),children:t.rest})]})}function YN({pieces:e}){return e.length===0?` `:(0,Y.jsx)(Dr,{pieces:e})}function XN({label:e,call:t,whole:n,output:r,card:i}){let a=n??t.detail,o=t.kind===`command`&&a!==void 0,s=dr(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(BN,`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)(Dr,{pieces:e}),t<s.length-1?`
|
|
134
|
-
`:null]},t)):a]}),(0,Y.jsx)(pe,{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(BN,`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 ZN({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 QN({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)(RN,{})})}function $N({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)(QN,{leaving:r})}function eP({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:zN(e)}),(0,Y.jsx)(ZN,{open:t})]}),t&&(0,Y.jsx)(`div`,{className:`mt-1 italic`,children:(0,Y.jsx)(Xn,{text:e,compact:!0})})]})}function tP({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)(QN,{}),e!==void 0&&(0,Y.jsx)(`span`,{className:`text-shimmer`,children:e}),t!==void 0&&(0,Y.jsx)(LN,{since:t}),n!==void 0&&(0,Y.jsx)(rP,{tokens:n})]})}var nP=360;function rP({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)/nP)),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:`·`}),iP(t),` tokens`]})}function iP(e){return e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function aP({steps:e,lead:t,live:n}){let[r,i]=(0,J.useState)(!1),a=(0,J.useContext)(IN),o=Ia().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=bN(s.map(e=>({...vN(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?GN(n.call,!0):void 0,d=l?GN(l,!1,a):void 0,f=u?.label??d?.label??xN(c),p=u?(0,Y.jsx)(FN,{id:`live:${n.call.id??`${n.call.label} ${n.call.detail??``}`}`,children:u.words}):d?(0,Y.jsx)(FN,{id:`one`,children:d.words}):(0,Y.jsxs)(FN,{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)(MN,{...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)($N,{live:n!==void 0}),m?(0,Y.jsxs)(UN,{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)(LN,{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)(LN,{since:n.since})]})]}),r&&(d&&l?.type===`action`?(0,Y.jsx)(KN,{...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)(HN,{...e}):(0,Y.jsx)(eP,{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)(KN,{...n.call})]})]}))]})}var oP=U(`onProjectSkills`),sP=U(`sendChangeSkills`),cP=U(`sendProjectSkills`),lP=new Set;function uP(){for(let e of lP)e()}function dP(e){return lP.add(e),()=>lP.delete(e)}var fP=`skills`,pP=e=>e.standing!==`absent`,mP=e=>e.groups.flatMap(e=>e.skills),hP=(e,t,n)=>`${e} ${e===1?t:n}`;function gP({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 _P=e=>e.length===1?`is`:`are`,vP=e=>e.length===1?`it`:`them`,yP={newer:`a newer version is there`,changed:`changed by hand`,own:`your own text`},bP=e=>e.remote?`Send to ${e.remote}`:`Commit`;function xP({projectId:e,onChanged:t}){let{value:n,reload:r}=xi(()=>oP(e).catch(()=>null),null,15e3,[e],`previous`),[i,a]=(0,J.useState)(null),{error:o,run:s}=Yn();if((0,J.useEffect)(()=>dP(()=>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}=SP(n),g=()=>l(`update`,()=>CP(e,n,s)),_=()=>l(`send`,()=>s(()=>cP(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)(gP,{names:u}),` `,u.length===1?`has a newer version`:`have newer versions`,`.`]}),(0,Y.jsx)(V,{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)(gP,{names:f}),` `,_P(f),` `,n.remote?`on this computer only`:`not committed`,`, so your agents do not have `,vP(f),` yet.`,n.local&&n.remote&&` Or pick My local branch when you start an agent.`]}),(0,Y.jsx)(V,{type:`button`,variant:`outline`,size:`xs`,className:`shrink-0`,disabled:i!==null,onClick:()=>void _(),children:i===`send`?`Sending…`:bP(n)})]}),m&&(0,Y.jsxs)(`span`,{className:`flex items-center justify-between gap-3`,children:[(0,Y.jsxs)(`span`,{children:[(0,Y.jsx)(gP,{names:d}),` `,_P(d),` in pull request #`,n.request.number,`. Your agents get `,vP(d),` once it is merged.`]}),(0,Y.jsxs)(`a`,{href:n.request.url,target:`_blank`,rel:`noreferrer`,className:st({variant:`outline`,size:`xs`,className:`shrink-0`}),children:[`Open #`,n.request.number]})]}),h&&(0,Y.jsxs)(`span`,{children:[(0,Y.jsx)(gP,{names:d}),` `,_P(d),` on the branch `,n.branch,` on `,n.remote,`. Merge it into `,n.startBranch??`the default branch`,`, and your agents get `,vP(d),`.`]}),o&&(0,Y.jsx)(`span`,{className:`text-danger`,children:o})]})}function SP(e){let t=mP(e).filter(e=>e.standing===`newer`).map(e=>e.name),n=mP(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=mP(e).filter(pP).map(e=>e.name);return{newer:t,waiting:n,here:r,sending:i,inRequest:a,onBranch:o,held:s.length,heldNames:s}}async function CP(e,t,n){let{newer:r}=SP(t),i=await n(()=>sP(e,{write:r}),`Could not update the skills.`);return!i.ok||!t.git?i:n(()=>cP(e,r),`Could not send the skills.`)}function wP(e){let t=mP(e).filter(pP);return t.length>0?new Set(t.map(e=>e.name)):new Set(e.groups.filter(e=>e.ticked).flatMap(e=>e.skills.map(e=>e.name)))}function TP({projectId:e}){let[t,n]=(0,J.useState)(0),r=mn(()=>oP(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)(Sn,{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)(EP,{projectId:e,skills:r,onDone:()=>n(e=>e+1)},t)}function EP({projectId:e,skills:t,onDone:n}){let[r,i]=(0,J.useState)(()=>wP(t)),[a,o]=(0,J.useState)(null),[s,c]=(0,J.useState)(null),{busy:l,error:u,reset:d,run:f}=Yn(),p=(e,t)=>i(n=>{let r=new Set(n);return t?r.add(e):r.delete(e),r}),m=mP(t).filter(e=>r.has(e.name)&&!pP(e)).map(e=>e.name),h=mP(t).filter(e=>!r.has(e.name)&&pP(e)).map(e=>e.name),g=m.length===0&&h.length===0,_=async t=>{c(null);let n=await f(()=>cP(e,t),`Could not send the skills.`);n.ok&&c(n.value),uP()},v=async()=>{let n=await f(()=>sP(e,{write:m,remove:h}),`Could not change the skills.`);if(!n.ok)return;o(n.value),uP();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 `,hP(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 `,hP(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)(V,{type:`button`,size:`sm`,disabled:l,onClick:()=>void _([...a.written,...a.removed]),children:l?`Sending…`:`Send again`}),(0,Y.jsx)(V,{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=[yP[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)(ln,{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?`${hP(m.length,`skill`,`skills`)} to write`:``,h.length>0?`${hP(h.length,`skill`,`skills`)} to delete`:``].filter(Boolean).join(`, `)+`.`}),(0,Y.jsx)(V,{type:`button`,variant:`outline`,size:`sm`,disabled:l||g,onClick:()=>{i(wP(t)),d()},children:`Cancel`}),(0,Y.jsx)(V,{type:`button`,size:`sm`,disabled:l||g,onClick:()=>void v(),children:l?`Saving…`:y})]})]})]})}var DP=`Starting session`,OP=8e3,kP=6e4,AP=8e3;function jP({projectId:e,projectName:t,onAgentStarted:n,files:r,context:i,addContext:a,removeContext:o,toggleContext:c,home:l}){let[d,f]=(0,J.useState)(null),[p,m]=(0,J.useState)(null),{busy:h,cloning:g,error:_,reset:v,start:y}=bd(e),b=(0,J.useRef)(null),x=Ia(),S=Td(e),C=Fs(),w=ms();(0,J.useEffect)(()=>_s(l),[e,l]);let T=vs(C,w,S,l),E=l!==void 0&&T?.id===l,D=T!==void 0&&!E,O=l!==void 0&&T===void 0,k=S!==null&&!S.startHook&&!D&&!O,A=D?!0:S?.gitHost??!0,j=D?!0:S?.remote??!0,M=s(x.publish,A,j),N=D||O?void 0:S?.startFrom,P=x.startFrom?.[e],F=La(),ee=t=>{let{[e]:n,...r}=x.startFrom??{};Na({startFrom:t?{...r,[e]:t}:r}),_&&v()},[te,I]=(0,J.useState)(null),L=mn(S?.prBase&&N&&P?.kind===`local`?()=>Jo(e).then(e=>e?.branches,()=>void 0):null,void 0,[e,S?.prBase,N!==void 0,P?.kind]),R=S?.prBase&&N?rN(P,N.main,N.local,L):void 0,ne=R!==void 0&&te!==R?R:void 0,re=R!==void 0&&N?{into:ne??N.main,picks:[R,N.main],onPick:e=>I(e===R?null:R)}:void 0,ie=x.driver,[z,oe]=(0,J.useState)(0),B=S?.address,se=mn(T?null:O?B===void 0?null:()=>Xo(B,ie):()=>Yo(e,ie),null,[e,ie,T===void 0,O,B,z]),[ce,le]=(0,J.useState)(kP),ue=xi(T?()=>Zr(e,T.id,ie):null,null,ce,[e,ie,T?.id]).value,de=T?ue:se;(0,J.useEffect)(()=>{let e=ue&&ue.problems.length>0?OP:kP;e!==ce&&le(e)},[ue,ce]);let fe=!T&&de?.fix!==void 0,{state:pe,reload:me}=Cu(Vr(ie)?ie:void 0,fe),he=$r[Vr(ie)?ie:`claude-code`],ge=xi(T?.owner===void 0?null:()=>u(T.id),null,AP,[T?.id]).value,_e=T?.owner!==void 0&&ge?.ok?[`GitHub`,`Claude`].filter(e=>ge.logins[e===`GitHub`?`github`:`claude`]===void 0):[],ve=T?Ct(T):void 0,ye=(0,J.useRef)(void 0);(0,J.useEffect)(()=>{let e=fe?pe?.ready:void 0;ye.current===!1&&e===!0&&oe(e=>e+1),ye.current=e},[fe,pe?.ready]);let be=Zj(B,T?.id);return(0,Y.jsxs)(`form`,{onSubmit:e=>e.preventDefault(),className:`relative mx-auto w-full max-w-3xl p-2`,children:[(0,Y.jsx)(tM,{ref:b,home:l,files:r,addContext:a,removeContext:o,startsAt:t?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Yd,{icon:(0,Y.jsx)(mc,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),children:t}),N&&F&&(0,Y.jsx)(oN,{projectId:e,main:N.main,local:N.local,pick:P,onPick:ee,busy:h})]}):null,startsAtEnd:j&&(0,Y.jsx)(Qj,{address:B,machineId:T?.id,on:ve,busy:h,onAdd:()=>T?Bd(`devices`,T.id):Bd(`accounts`)}),controls:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)($d,{projectId:e,context:i,busy:h,onToggle:c}),(0,Y.jsx)(Zd,{publish:M,picks:nt(A,j),onPublish:e=>Na({publish:e}),target:re,busy:h}),(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>Bd(fP,e),className:Wd,children:[(0,Y.jsx)(Ic,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`truncate`,children:`Skills`})]})]}),onSubmit:async t=>{if(h)return;f(DP),m(T?Ct(T):O?MP():null);let r=await y(e,Hd(t,i),{...yd(x),...N?nN(P,N.main,N.local):{},...ne===void 0?{}:{prBase:ne},...T?{machine:T.id}:{}});if(f(null),r){let e=N?P?.kind===`local`?N.local:P?.kind===`published`?P.branch:N.main:void 0;n?.(t,r.agentId,T?.label,r.projectId,{...e===void 0?{}:{branch:e},...be===void 0?{}:{gitAccount:be},publish:M,...ne===void 0?{}:{prBase:ne},...x.driver?{driver:x.driver}:{},...x.model?{model:x.model}:{},...x.effort?{effort:x.effort}:{}}),b.current?.clear()}},onPromptChange:e=>{!e.trim()&&d&&f(null),_&&v()},onPreset:(e,t)=>{v(),f(t?`${e} loaded over your draft — undo (⌘Z) brings the draft back`:`${e} loaded — review or edit, then Start`)},busy:h,canSubmit:!k,submitLabel:`Start agent`,submitBusyLabel:`Starting…`}),(0,Y.jsxs)(`div`,{className:`absolute inset-x-2 bottom-full flex flex-col gap-1.5 pb-1`,children:[_&&_e.length===0&&!de?.problems.length&&(0,Y.jsx)(NP,{...PP(_)}),T&&_e.length>0&&(0,Y.jsx)(NP,{title:`Your ${_e.join(` and `)} ${_e.length===1?`login is`:`logins are`} not on ${ve} yet.`,detail:`Runs there use your own logins. Log ${_e.length===1?`it`:`them`} in on its page, or start your first run there from your page on ${ae(T.url)??`its server`}, which copies yours.`,actions:(0,Y.jsx)(V,{type:`button`,size:`xs`,onClick:()=>Bd(`devices`,T.id),children:`Log in on ${ve}`})}),de?.problems.map(e=>e===de.fix?.problem?T?de.fix.kind===`log-in`?(0,Y.jsx)(NP,{title:`${he} is not logged in on ${ve}.`,actions:(0,Y.jsx)(Pj,{machineId:T.id,onAccounts:()=>Bd(vu)})},e):(0,Y.jsx)(NP,{title:`${he} is not installed on ${ve}.`,detail:`Update ${ve} to get it.`,actions:(0,Y.jsx)(V,{type:`button`,size:`xs`,onClick:()=>Bd(`devices`,T.id),children:`Update ${ve}`})},e):(0,Y.jsx)(NP,{...pe&&!pe.ready?{title:Nu(pe),actions:(0,Y.jsx)(Lu,{state:pe,onChanged:()=>void me(),size:`xs`})}:PP(e)},e):(0,Y.jsx)(NP,{...PP(e)},e)),de?.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)),k&&(0,Y.jsx)(NP,{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`}),`.`]})}),d===DP&&!_&&(0,Y.jsxs)(`p`,{role:`status`,className:`flex items-center gap-2 px-1.5 text-sm text-muted-foreground`,children:[(0,Y.jsx)(RN,{}),(0,Y.jsx)(`span`,{className:`text-shimmer`,children:g&&p?`Cloning ${t??`this project`} on ${p}, the first time only`:d})]})]}),d!==DP&&d&&!_&&(0,Y.jsx)(`p`,{role:`status`,className:`mt-2 text-xs text-muted-foreground`,children:d})]})}function MP(){let e=_d();return e===`This machine`?`this computer`:e}function NP({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)(Zs,{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 PP(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 FP=U(`onProjectAgentData`),IP=U(`onPersonalFolder`),LP=U(`sendSyncPersonalFolder`),RP=U(`sendStopSyncingPersonalFolder`),zP=`agent-data`,BP=1e4;function VP(){let{value:e,reload:t}=xi(IP,null,BP,[]),[n,r]=(0,J.useState)(!1),[i,a]=(0,J.useState)(``),{busy:o,error:s,reset:c,run:l}=Yn();if(!e)return null;let u=e,d=()=>void l(()=>LP(i),`Could not sync with that repository.`).then(async e=>{e.ok&&(r(!1),a(``),await t())}),f=()=>void l(()=>RP(),`Could not stop syncing.`).then(async e=>{e.ok&&await t()}),p=u.projects.length>0?` · ${u.projects.join(`, `)}`:``,m=u.unsent>0?` ${u.unsent} ${u.unsent===1?`change`:`changes`} not sent yet.`:``,h=u.remoteUrl?(0,Y.jsx)(`a`,{href:u.remoteUrl,target:`_blank`,rel:`noreferrer`,className:`underline underline-offset-2 hover:text-foreground`,children:u.remote}):u.remote,g=u.remote?(0,Y.jsxs)(Y.Fragment,{children:[`Synced with `,h,`.`,m]}):`Only on this computer.`;return(0,Y.jsx)(Nr,{description:`Everything your agents keep: what each was asked and answered, the tickets, the queue and plans.`,children:(0,Y.jsxs)(`div`,{className:`py-3 first:pt-0 last:pb-0`,children:[(0,Y.jsx)(Te,{label:`Your folder`,description:(0,Y.jsxs)(Y.Fragment,{children:[u.path,p,`. `,g]}),control:u.remote?(0,Y.jsx)(V,{variant:`outline`,size:`sm`,disabled:o,onClick:f,children:`Stop syncing`}):!n&&(0,Y.jsx)(V,{variant:`outline`,size:`sm`,onClick:()=>r(!0),children:`Sync with a repository`})}),n&&!u.remote&&(0,Y.jsxs)(`form`,{className:`mt-3 space-y-2`,onSubmit:e=>{e.preventDefault(),d()},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)(Hr,{"aria-label":`Repository address`,placeholder:`github.com/you/agent`,value:i,autoFocus:!0,disabled:o,onChange:e=>{a(e.target.value),c()},className:`h-8`}),(0,Y.jsx)(V,{type:`submit`,size:`sm`,disabled:o||i.trim()===``,children:o?`Syncing…`:`Sync`}),(0,Y.jsx)(V,{type:`button`,variant:`ghost`,size:`sm`,disabled:o,onClick:()=>{r(!1),a(``),c()},children:`Cancel`})]})]}),s&&(0,Y.jsx)(`p`,{className:`mt-2 text-xs text-danger`,children:s})]})})}var HP=`project-agent-data`,UP=1e4,WP={runs:e=>`${e} ${e===1?`run`:`runs`}`,tickets:e=>`${e} ${e===1?`ticket`:`tickets`}`,queue:e=>`${e} queued`};function GP({projectId:e}){let{value:t,loaded:n,reload:r}=xi(()=>FP(e),null,UP,[e]),[i,a]=(0,J.useState)(!1),{busy:o,error:s,run:c}=Yn();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 l=(0,Y.jsxs)(Y.Fragment,{children:[`your folder`,` `,(0,Y.jsx)(`button`,{type:`button`,className:`underline underline-offset-2 hover:text-foreground`,onClick:()=>Bd(zP),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`]}),u=t.place===`repository`?(0,Y.jsx)(Y.Fragment,{children:`In this project’s repository, on the branch agent-data. Everyone who can read the repository can read it.`}):(0,Y.jsxs)(Y.Fragment,{children:[`In `,l,`.`]}),d=t.kept.filter(e=>e.count>0);return(0,Y.jsxs)(Nr,{description:`Where this project’s agent data is, and what the skills keep there.`,children:[(0,Y.jsx)(ye,{label:`Kept in`,description:u,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||o||(n===`repository`?a(!0):c(()=>Wo(e,!1),`Could not move the agent data.`).then(()=>r()))}}),s&&(0,Y.jsx)(`p`,{className:`py-3 text-xs text-danger`,children:s}),(0,Y.jsx)(Te,{label:`What is kept`,description:d.length>0?d.map(e=>`${WP[e.kind](e.count)} (${e.skill})`).join(` · `):`Nothing yet.`,control:null}),(0,Y.jsx)(kn,{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.`]}),confirmLabel:`Move and push`,confirmBusyLabel:`Moving…`,fallbackError:`Could not move the agent data.`,destructive:!1,onConfirm:()=>Wo(e,!0),onSuccess:()=>void r()})]})}function KP(e){let t=ZP(e);return t.length>0&&!t.some(e=>e.kind===`end`)}function qP(e){let t=ZP(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 JP(e){if(e!==`running`)return{ok:e===`done`,stopped:e===`stopped`,...e===`waiting`?{waiting:!0}:{}}}function YP(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 XP(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 ZP(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 QP(e){let t=e?.sessionLink,n=e?.sessionId;return!t||!n||!t.includes(n)?null:{href:t,label:`Open session (${n}) ↗`}}function $P(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 eF(){return mn(()=>ga(),[],[])}function tF(e){let t=eF();return e&&!t.some(t=>t.bin===e)?[...t,{bin:e,label:e}]:t}function nF({busy:e}){let t=Ia().editor,n=tF(t);return(0,Y.jsxs)(Hn,{children:[(0,Y.jsx)(tn,{children:`Preferred editor`}),(0,Y.jsxs)(K,{disabled:e,closeOnClick:!1,onClick:()=>Na({editor:``}),className:`items-start`,children:[(0,Y.jsx)(Ir,{className:q(`mt-0.5 h-3.5 w-3.5 shrink-0`,t?`opacity-0`:`opacity-100`)}),(0,Y.jsx)(Dt,{label:`Default`,description:`$OPENAGENT_EDITOR, or code`})]}),n.map(n=>(0,Y.jsxs)(K,{disabled:e,closeOnClick:!1,onClick:()=>Na({editor:n.bin}),className:`items-start`,children:[(0,Y.jsx)(Ir,{className:q(`mt-0.5 h-3.5 w-3.5 shrink-0`,t===n.bin?`opacity-100`:`opacity-0`)}),(0,Y.jsx)(Dt,{label:n.label,description:n.bin})]},n.bin))]})}var rF=`font-medium text-foreground`;function iF({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}=Yn();(0,J.useEffect)(()=>{t&&(a(!1),d())},[t,d]);let f=()=>{n(!1),queueMicrotask(r)};return(0,Y.jsx)(ti,{open:t,onOpenChange:e=>{c||o||n(e)},children:(0,Y.jsxs)(sn,{children:[(0,Y.jsx)(lr,{className:`fixed inset-0 z-50 bg-black/40 backdrop-blur-[1px]`}),(0,Y.jsx)(Tr,{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)(Br,{className:`text-sm font-semibold`,children:`Project removed`}),(0,Y.jsx)(Kr,{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)(aF,{title:`Deleted`,empty:`Nothing: there was nothing of OpenAgent’s to delete.`,lines:o.removed}),o.kept.length>0&&(0,Y.jsx)(aF,{title:`Kept`,lines:o.kept.map(e=>`${e.path}: ${e.reason}`)}),o.failed.length>0&&(0,Y.jsx)(aF,{title:`Could not be cleaned`,lines:o.failed,danger:!0}),(0,Y.jsx)(`div`,{className:`mt-4 flex justify-end`,children:(0,Y.jsx)(V,{size:`sm`,onClick:f,children:`Done`})})]}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Br,{className:`text-sm font-semibold`,children:`Remove this project?`}),(0,Y.jsxs)(Kr,{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:rF,children:`.openagent`}),`, `,(0,Y.jsx)(`span`,{className:rF,children:`.branches`}),`,`,` `,(0,Y.jsx)(`span`,{className:rF,children:`.agent-runner`}),`), and the agents’ records (in `,(0,Y.jsx)(`span`,{className:rF,children:`~/.openagent`}),`, or on the branch `,(0,Y.jsx)(`span`,{className:rF,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)(ln,{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:rF,children:`.branches`}),`, the folders`,` `,(0,Y.jsx)(`span`,{className:rF,children:`.openagent`}),` (with `,(0,Y.jsx)(`span`,{className:rF,children:`hooks.yml`}),`, the project’s start lines) and`,` `,(0,Y.jsx)(`span`,{className:rF,children:`.agent-runner`}),`, the agents’ records in `,(0,Y.jsx)(`span`,{className:rF,children:`~/.openagent`}),`, and the local branch `,(0,Y.jsx)(`span`,{className:rF,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:rF,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:rF,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:rF,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)(vn,{render:(0,Y.jsx)(V,{variant:`outline`,size:`sm`,disabled:c,children:`Cancel`})}),(0,Y.jsx)(V,{variant:`destructive`,size:`sm`,disabled:c,onClick:()=>{u(()=>Uo(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 aF({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 oF({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=KP(n),p=ta(n),m=QP(p),h=f||a,g=$P(p),[_,v]=(0,J.useState)(!1),y=(0,J.useRef)(void 0);(0,J.useEffect)(()=>()=>clearTimeout(y.current),[]);let b=()=>{g&&navigator.clipboard?.writeText(g).then(()=>{v(!0),clearTimeout(y.current),y.current=setTimeout(()=>v(!1),1500)})},[x,S]=(0,J.useState)(0),C=mn(()=>fo(e),null,[e,x],{remember:`git-host-home:${e}`}),w=mn(d?null:()=>po(e),null,[e,d,x]),[T,E]=(0,J.useState)(!1),[D,O]=(0,J.useState)(!1),{busy:k,error:A,run:j}=Yn(),[M,N]=(0,J.useState)(!1);(0,J.useEffect)(()=>N(!1),[t]);let P=k||M&&f,[F,ee]=(0,J.useState)(!1),te=n=>j(()=>No(e,n,t??void 0),`Failed to open.`),I=()=>void j(()=>So(e,t??void 0),`Could not stop the session.`).then(e=>{e.ok&&N(!0)}),L=()=>{t&&j(()=>Ao(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 ne=r?.trim()||t,re=d?`Session actions`:`Project actions`,ie=a&&!f&&!!t,ae=!!s&&!f&&!!t,z=C&&(0,Y.jsxs)(K,{render:(0,Y.jsx)(`a`,{href:C.url,target:`_blank`,rel:`noreferrer`}),children:[(0,Y.jsx)(sc,{className:`h-3.5 w-3.5 shrink-0`}),` Open on `,C.name]});return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(Mn,{children:[d?(0,Y.jsxs)(mt,{type:`button`,"aria-label":re,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)(Bs,{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)(ke,{className:`h-3 w-3 shrink-0 text-muted-foreground`,"aria-hidden":!0})]}):(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(mt,{type:`button`,"aria-label":re,className:q(st({variant:`outline`,size:`icon-sm`}),`shrink-0`)}),children:(0,Y.jsx)(ac,{className:`h-3.5 w-3.5`})}),(0,Y.jsx)(H,{children:re})]}),(0,Y.jsxs)(hr,{align:d?`start`:`end`,className:`min-w-[14rem]`,children:[l&&(0,Y.jsxs)(K,{onClick:l.onToggle,children:[(0,Y.jsx)(wc,{className:`h-3.5 w-3.5 shrink-0`}),` `,l.open?`Hide details`:`Show details`]}),!d&&z,w&&(0,Y.jsxs)(K,{onClick:()=>E(!0),children:[(0,Y.jsx)(tc,{className:`h-3.5 w-3.5 shrink-0`}),` Create a repository on `,w.name,`…`]}),!d&&(0,Y.jsxs)(K,{onClick:()=>Bd(`project-agent-data`,e),children:[(0,Y.jsx)(ic,{className:`h-3.5 w-3.5 shrink-0`}),` Agent data…`]}),(0,Y.jsxs)(K,{disabled:k,onClick:()=>void te(`files`),title:t&&!h?`This session no longer has its own checkout`:void 0,children:[(0,Y.jsx)(dc,{className:`h-3.5 w-3.5 shrink-0`}),` `,t?h?`Open session's folder`:`Open project folder`:`Open folder`]}),(0,Y.jsxs)(Ti,{children:[(0,Y.jsxs)(bi,{disabled:k,children:[(0,Y.jsx)(rc,{className:`h-3.5 w-3.5 shrink-0`}),` Open in editor`]}),(0,Y.jsxs)(pn,{className:`min-w-[15rem]`,children:[(0,Y.jsxs)(K,{disabled:k,onClick:()=>void te(`editor`),children:[(0,Y.jsx)(rc,{className:`h-3.5 w-3.5 shrink-0`}),` `,t?`Open this session's checkout`:`Open in your editor`]}),(0,Y.jsx)(ci,{}),(0,Y.jsx)(nF,{busy:k})]})]}),d&&z,m&&(0,Y.jsxs)(K,{render:(0,Y.jsx)(`a`,{href:m.href,target:`_blank`,rel:`noreferrer`}),children:[(0,Y.jsx)(sc,{className:`h-3.5 w-3.5 shrink-0`}),` `,m.label.replace(` ↗`,``)]}),g&&p?.sessionId&&(0,Y.jsxs)(K,{closeOnClick:!1,onClick:b,title:g,children:[_?(0,Y.jsx)(Ir,{className:`h-3.5 w-3.5 shrink-0 text-success`}):(0,Y.jsx)(Pt,{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||ie||ae)&&(0,Y.jsx)(ci,{}),f&&(0,Y.jsxs)(K,{disabled:P,onClick:()=>void I(),children:[(0,Y.jsx)(Hc,{className:`h-3 w-3 shrink-0 fill-current`}),` `,P?`Stopping…`:`Stop agent`]}),ie&&(0,Y.jsxs)(K,{disabled:k,onClick:()=>L(),children:[(0,Y.jsx)(pc,{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})]}),ae&&(0,Y.jsxs)(K,{onClick:()=>ee(!0),className:`text-danger`,children:[(0,Y.jsx)(Wc,{className:`h-3.5 w-3.5 shrink-0`}),` Delete session`]}),c&&!d&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(ci,{}),(0,Y.jsxs)(K,{onClick:()=>O(!0),className:`text-danger`,children:[(0,Y.jsx)(Wc,{className:`h-3.5 w-3.5 shrink-0`}),` Remove project…`]})]}),A&&(0,Y.jsx)(`p`,{className:`px-2 py-1.5 text-xs text-danger`,children:A})]})]}),w&&(0,Y.jsx)(kn,{open:T,onOpenChange:E,title:`Create a private repository on ${w.name}?`,body:(0,Y.jsxs)(Y.Fragment,{children:[`This creates the private repository `,(0,Y.jsx)(`span`,{className:`font-medium text-foreground`,children:w.repository}),` on your`,` `,w.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:()=>Ro(e),onSuccess:()=>S(e=>e+1)}),c&&!d&&(0,Y.jsx)(iF,{projectId:e,open:D,onOpenChange:O,onRemoved:c}),s&&t&&(0,Y.jsx)(kn,{open:F,onOpenChange:ee,title:`Delete this agent?`,body:(0,Y.jsxs)(Y.Fragment,{children:[`Deleting `,(0,Y.jsx)(`span`,{className:`font-medium text-foreground`,children:ne}),` 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:()=>jo(e,t),onSuccess:s})]})}function sF({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)(V,{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)(M,{className:`min-h-0 flex-auto`,children:(0,Y.jsx)(`div`,{className:`p-4`,children:(0,Y.jsx)(Xn,{text:i.content,document:!0})})})]})}var cF=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 lF({package:e,label:t,children:n}){let r=Ye(e),i=(0,J.useMemo)(()=>Rr(r),[r]);return(0,Y.jsx)(Yr.Provider,{value:i,children:(0,Y.jsx)(cF,{label:t,children:n})})}function uF(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 dF({page:e,projects:t,projectId:n,path:r}){let i=e.Page;return(0,Y.jsx)(lF,{package:e.package,label:`${e.label} page`,children:(0,Y.jsx)(i,{projects:uF(e.projects,t),projectId:n,path:r})},e.segment)}function fF(e){let t=(0,J.useId)();return`${e??t}`}var pF=typeof window<`u`?J.useLayoutEffect:J.useEffect;function mF(e){let t=(0,J.useRef)(e);return pF(()=>{t.current=e},[e]),(0,J.useCallback)((...e)=>t.current?.(...e),[t])}function hF(...e){return mF(t=>{e.forEach(e=>{if(e)switch(typeof e){case`function`:e(t);break;case`object`:e.current=t;break}})})}function gF(e,t){return t?e*2+1:e+1}function _F(e,t){return t?e*2-1:e}function vF(e,t,n){let r=gF(e,n);return t===void 0?`${r} / -1`:`${r} / span ${_F(t,n)}`}function yF(e){return`${e*2} / span 1`}function bF({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=gF(n,r),o=gF(i-1,r)+1;return r&&(n>0&&a--,i<e&&o++),`${a} / ${o}`}function xF(e,t){return Number.isInteger(e)&&e>=1&&e<t}function SF(e,t=`Assertion error`){if(!e)throw Error(t)}var CF=(0,J.createContext)(null);function wF(){let e=(0,J.useContext)(CF);return SF(e,`Grid Context not found; did you render a Cell or Gridline outside of a Grid?`),e}function TF({children:e,className:t,column:n,columnSpan:r=1,elementRef:i,id:a,row:o,rowSpan:s=1,style:c,...l}){let u=fF(a),{gutters:d,registerCell:f}=wF(),p=(0,J.useRef)(null),m=hF(p,i);return pF(()=>{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:vF(n,r,d.column),gridRow:vF(o,s,d.row)},children:e})}TF.displayName=`Cell`;var EF;function DF(){return EF===void 0&&(EF=typeof matchMedia==`function`&&!!matchMedia(`(pointer:coarse)`).matches),EF}function OF({expandHitTargets:e,axis:t,rect:n}){let r=e?DF()?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 kF({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 AF({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=OF({expandHitTargets:r,axis:i,rect:l}),o?h.push(g(c.index,l,a)):kF({axis:e,cells:t,index:c.index,rect:l}).forEach(e=>{h.push(g(c.index,e,a))})}let y=(n,a)=>{kF({axis:e,cells:t,index:n,rect:OF({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 jF(e){let t=parseFloat(e??``);return Number.isFinite(t)?t:0}function MF({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)=>jF(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`?jF(c?.paddingLeft)+jF(c?.paddingRight)+jF(c?.borderLeftWidth)+jF(c?.borderRightWidth):jF(c?.paddingTop)+jF(c?.paddingBottom)+jF(c?.borderTopWidth)+jF(c?.borderBottomWidth),f=jF(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 NF(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 PF=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)}}},FF={cursorFlags:0,state:`inactive`},IF=new PF;function LF(){return FF}function RF(e){return IF.addListener(`change`,e)}function zF(e,t=[],n,r=!1){let i=FF,a={...FF};a.cursorFlags=e,a.state===`active`&&(a.didPointerMove||=r,a.previews=t,n&&(a.previewLayoutMap=n)),FF=a,IF.emit(`change`,{prev:i,next:a})}function BF(e){let t=FF;FF=e,t.state===`active`&&e.state!==`active`&&t.didPointerMove&&t.hitRegions.forEach(({separator:e})=>{e&&e.element.ownerDocument.activeElement===e.element&&e.element.blur()}),IF.emit(`change`,{prev:t,next:e})}function VF(e){FF.state!==`active`||!FF.previews.some(t=>t.separator===e)||BF({...FF,previews:FF.previews.map(t=>t.separator===e?{...t}:t)})}function HF(e){if(FF.state===`inactive`)return!1;let t=FF.hitRegions.filter(t=>t.axis!==e),n=FF.state===`active`&&FF.previews.some(t=>t.axis===e);if(t.length===FF.hitRegions.length&&!n)return!1;if(t.length===0)BF({cursorFlags:0,state:`inactive`});else if(FF.state===`active`){let n=new Map(FF.initialLayoutMap),r=new Map(FF.previewLayoutMap);n.delete(e),r.delete(e),BF({...FF,cursorFlags:0,hitRegions:t,initialLayoutMap:n,previewLayoutMap:r,previews:FF.previews.filter(t=>t.axis!==e)})}else BF({...FF,hitRegions:t});return!0}var UF=e=>e,WF=()=>{},GF=1,KF=2,qF=4,JF=8,YF=3,XF=12,ZF;function QF(){return ZF===void 0&&(ZF=!1,typeof window<`u`&&(window.navigator.userAgent.includes(`Chrome`)||window.navigator.userAgent.includes(`Firefox`))&&(ZF=!0)),ZF}function $F({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&&QF()){let t=(e&GF)!==0,n=(e&KF)!==0,r=(e&qF)!==0,i=(e&JF)!==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 QF()?r>0&&i>0?`move`:r>0?`ew-resize`:`ns-resize`:r>0&&i>0?`grab`:r>0?`col-resize`:`row-resize`}}var eI=new WeakMap;function tI(e){if(!e.defaultView||!e.adoptedStyleSheets)return;let{prevStyle:t,styleSheet:n}=eI.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=LF();switch(r.state){case`active`:case`hover`:{let e=$F({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}eI.set(e,{prevStyle:t,styleSheet:n})}function nI({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 rI(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 iI(e,t){return Array.from(t).sort((t,n)=>{let r=e===`horizontal`?aI(t,n):oI(t,n);return r===0?rI(t.element,n.element):r})}function aI(e,t){let n=e.element.offsetLeft-t.element.offsetLeft;return n===0?e.element.offsetWidth-t.element.offsetWidth:n}function oI(e,t){let n=e.element.offsetTop-t.element.offsetTop;return n===0?e.element.offsetHeight-t.element.offsetHeight:n}function sI(e){return typeof e==`object`&&!!e&&`nodeType`in e&&e.nodeType===Node.ELEMENT_NODE}function cI(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 lI({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}=cI(r,n),s=e===`horizontal`?t:o;s<a&&(a=s,i=n)}return SF(i,`No rect found`),i}function uI({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=iI(i,Array.from(r.children).filter(sI).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,lI({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=OF({expandHitTargets:e,axis:t,rect:`width`in i?i:i.element.getBoundingClientRect()});(n||!l&&!(r<=d||r>p))&&(f??=nI({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 dI(e,t){let n=getComputedStyle(e);return t*parseFloat(n.fontSize)}function fI(e,t){let n=getComputedStyle(e.ownerDocument.documentElement);return t*parseFloat(n.fontSize)}function pI(e){return e/100*window.innerHeight}function mI(e){return e/100*window.innerWidth}function hI({axisSize:e,itemElement:t,styleProp:n}){let r,[i,a]=NF(n);switch(a){case`%`:r=i/100*e;break;case`px`:r=i;break;case`rem`:r=fI(t,i);break;case`em`:r=dI(t,i);break;case`vh`:r=pI(i);break;case`vw`:r=mI(i);break}return r}function gI(e){return parseFloat(e.toFixed(3))}function _I(e){let{items:t}=e,n=nI({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=gI(hI({axisSize:n,itemElement:t,styleProp:r.collapsedSize})/n*100));let a;r.collapsedThreshold!==void 0&&(a=gI(hI({axisSize:n,itemElement:t,styleProp:r.collapsedThreshold})/n*100));let o;r.defaultSize!==void 0&&(o=gI(hI({axisSize:n,itemElement:t,styleProp:r.defaultSize})/n*100));let s=0;r.minSize!==void 0&&(s=gI(hI({axisSize:n,itemElement:t,styleProp:r.minSize})/n*100));let c=100;return r.maxSize!==void 0&&(c=gI(hI({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 vI=new Map,yI=new PF;function bI(e){vI=new Map(vI),vI.delete(e)}function xI(e,t){for(let[t]of vI)if(t.id===e)return t}function SI(e,t){for(let[t,n]of vI)if(t.id===e)return n;if(t)throw Error(`Could not find data for Group with id ${e}`)}function CI(){return vI}function wI(e,t){return yI.addListener(`axisChange`,n=>{n.axis.id===e&&t(n)})}function TI(e,t,n){let r=vI.get(e);vI=new Map(vI),vI.set(e,t),yI.emit(`axisChange`,{axis:e,isUserInteraction:n?.isUserInteraction===!0,prev:r,next:t})}function EI(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 DI(e,t,n=0){return Math.abs(gI(e)-gI(t))<=n}function OI(e,t){return DI(e,t)?0:e>t?1:-1}function kI({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(OI(r,l)<0)if(o){let e=a??(l-i)/2,t=OI(n,i)<=0,o=t?i+e:l-e,s=OI(r,o);r=OI(r,i)<=0||s<0||a!==void 0&&t&&s===0?i:l}else r=l;return r=Math.min(c,r),r=gI(r),r}function AI({delta:e,initialLayout:t,itemConstraints:n,pivotIndices:r,prevLayout:i,trigger:a}){if(DI(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;SF(u!=null,`Invalid first pivot index`),SF(d!=null,`Invalid second pivot index`);let f=0;switch(a){case`keyboard`:{let t=e<0?d:u,r=n[t];SF(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(SF(n!=null,`Previous layout not found for panel index ${t}`),DI(n,i)){let t=o-n;OI(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}{let t=e<0?u:d,r=n[t];SF(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(SF(n!=null,`Previous layout not found for panel index ${t}`),DI(n,o)){let t=n-i;OI(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}break;default:{let t=e<0?d:u,r=n[t];SF(r,`Panel constraints not found for index ${t}`);let i=s[t],{collapsedSize:a,collapsedThreshold:o,collapsible:c,minSize:l}=r;if(c&&OI(i,l)<0){let t=l-a,n=o??t/2;if(OI(i+Math.abs(e),l)<0){let r=OI(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];SF(e!=null,`Previous layout not found for panel index ${r}`);let a=kI({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];SF(i!=null,`Previous layout not found for panel index ${t}`);let a=i-r,c=kI({overrideDisabledItems:o,itemConstraints:n[t],prevSize:i,size:a});if(!DI(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(EI(c,l))return i;{let t=e<0?d:u,r=s[t];SF(r!=null,`Previous layout not found for panel index ${t}`);let i=r+f,a=kI({overrideDisabledItems:o,itemConstraints:n[t],prevSize:r,size:i});if(l[t]=a,!DI(a,i)){let t=i-a,r=e<0?d:u;for(;r>=0&&r<n.length;){let i=l[r];SF(i!=null,`Previous layout not found for panel index ${r}`);let a=i+t,s=kI({overrideDisabledItems:o,itemConstraints:n[r],prevSize:i,size:a});if(DI(i,s)||(t-=s-i,l[r]=s),DI(t,0))break;e>0?r--:r++}}}return DI(Object.values(l).reduce((e,t)=>t+e,0),100,.1)?l.reduce((e,t,r)=>(e[n[r].itemId]=t,e),{}):i}function jI(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(t[n]===void 0||OI(e[n],t[n])!==0)return!1;return!0}function MI({commit:e,document:t,event:n,hitRegions:r,initialLayoutMap:i,mountedAxes:a,pointerDownAtPoint:o,prevCursorFlags:s}){let c=0,l=LF(),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=AI({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&&!jI(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(jI(i,n)&&m!==0&&!p)switch(l){case`horizontal`:c|=m<0?GF:KF;break;case`vertical`:c|=m<0?qF:JF;break}(r.resizePreviewMode!==`separator`||e)&&!jI(i,b)&&TI(t.axis,{defaultLayoutDeferred:_,derivedItemConstraints:v,axisSize:y,layout:i,requestedAxisSize:y,requestedLayout:i,separatorToItems:x})}});let f=0;n.movementX===0?f|=s&YF:f|=c&YF,n.movementY===0?f|=s&XF:f|=c&XF;let p=l.state===`active`&&(n.clientX!==l.pointerDownAtPoint.x||n.clientY!==l.pointerDownAtPoint.y);zF(f,u,d,p),tI(t)}function NI(e,t){let n=LF(),r=CI(),i=!1;switch(n.state){case`active`:MI({commit:!0,document:e,event:t,hitRegions:n.hitRegions,initialLayoutMap:n.initialLayoutMap,mountedAxes:r,pointerDownAtPoint:n.pointerDownAtPoint,prevCursorFlags:n.cursorFlags}),BF({cursorFlags:0,state:`inactive`}),n.hitRegions.length>0&&(tI(e),i=!0,n.hitRegions.forEach(e=>{if(!r.has(e.axis))return;let t=SI(e.axis.id,!0);TI(e.axis,t,{isUserInteraction:!0})}))}return i}function PI(e){e.defaultPrevented||NI(e.currentTarget,e)}function FI(e,t,n){let r,i={x:1/0,y:1/0};for(let a of t){let t=cI(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 II(e){return typeof e==`object`&&!!e&&`nodeType`in e&&e.nodeType===Node.DOCUMENT_FRAGMENT_NODE}function LI(e,t){if(e===t)throw Error(`Cannot compare node with itself`);let n={a:UI(e),b:UI(t)},r;for(;n.a.at(-1)===n.b.at(-1);)r=n.a.pop(),n.b.pop();SF(r,`Stacking order can only be calculated for elements with a common ancestor`);let i={a:HI(VI(n.a)),b:HI(VI(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 RI=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function zI(e){let t=getComputedStyle(WI(e)??e).display;return t===`flex`||t===`inline-flex`}function BI(e){let t=getComputedStyle(e);return!!(t.position===`fixed`||t.zIndex!==`auto`&&(t.position!==`static`||zI(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`||RI.test(t.willChange)||t.webkitOverflowScrolling===`touch`)}function VI(e){let t=e.length;for(;t--;){let n=e[t];if(SF(n,`Missing node`),BI(n))return n}return null}function HI(e){return e&&Number(getComputedStyle(e).zIndex)||0}function UI(e){let t=[];for(;e;)t.push(e),e=WI(e);return t}function WI(e){let{parentNode:t}=e;return II(t)?t.host:t}function GI(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 KI(e){try{return e.matches(`:modal`)}catch{return!1}}function qI({axisElement:e,hitRegion:t,pointerEventTarget:n}){if(sI(n)){let t=n.closest(`dialog`);if(t&&!t.contains(e)&&KI(t))return!1}if(!sI(n)||n.contains(e)||e.contains(n))return!0;if(LI(n,e)>0){let r=n;for(;r;){if(r.contains(e))return!0;if(GI(r.getBoundingClientRect(),t))return!1;r=r.parentElement}}return!0}function JI(e,t){let n=[];return t.forEach((t,r)=>{if(r.disabled)return;let i=uI({axis:r}),a=FI(r.orientation,i,{x:e.clientX,y:e.clientY});a&&a.distance.x<=0&&a.distance.y<=0&&qI({axisElement:r.element,hitRegion:a.hitRegion.rect,pointerEventTarget:e.target})&&n.push(a.hitRegion)}),n}function YI({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(!DI(i,100)&&r.length>0)for(let e=0;e<t.length;e++){let t=r[e];SF(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];SF(i!=null,`No layout data found for index ${e}`);let o=r[e];SF(o!=null,`No layout data found for index ${e}`);let s=kI({overrideDisabledItems:!0,itemConstraints:t[e],prevSize:i,size:o});o!=s&&(a+=o-s,r[e]=s)}if(!DI(a,0))for(let e=0;e<t.length;e++){let n=r[e];SF(n!=null,`No layout data found for index ${e}`);let i=n+a,o=kI({overrideDisabledItems:!0,itemConstraints:t[e],prevSize:n,size:i});if(n!==o&&(a-=o-n,r[e]=o,DI(a,0)))break}return r.reduce((e,n,r)=>(e[t[r].itemId]=n,e),{})}function XI({axisId:e,itemId:t}){let n=()=>{let t=CI();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&&DI(n.collapsedSize,r[n.itemId])}))){let e=n.slice(0,s).reduce((e,t)=>e+r[t.id],0);return{...r,[t]:gI(100-e)}}return AI({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=YI({layout:o({nextSize:e,items:i.items,prevLayout:c,derivedItemConstraints:r}),itemConstraints:r});jI(c,u)||TI(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&&DI(t,n)},resize:e=>{let{axis:t}=n(),{element:r}=i(),a=nI({axis:t}),o=gI(hI({axisSize:a,itemElement:r,styleProp:e})/a*100);s(o)}}}function ZI(e){e.defaultPrevented||JI(e,CI()).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=XI({axisId:t.axis.id,itemId:n.id});i&&r!==void 0&&(i.resize(r),e.preventDefault())}}})}function QI(e){let t=CI();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 $I({axisId:e}){let t=()=>{let t=CI();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=YI({layout:e,itemConstraints:r});return n?o:(jI(o,c)||TI(i,{defaultLayoutDeferred:n,derivedItemConstraints:r,axisSize:a,layout:c,requestedAxisSize:a,requestedLayout:c,separatorToItems:s}),c)}}}function eL(e,t){let n=QI(e),r=SI(n.id,!0),i=n.separators.find(t=>t.element===e);SF(i,`Matching separator not found`);let a=r.separatorToItems.get(i);SF(a,`Matching panels not found`);let o=a.map(e=>n.items.indexOf(e)),s=$I({axisId:n.id}).getLayout(),c=YI({layout:AI({delta:t,initialLayout:s,itemConstraints:r.derivedItemConstraints,pivotIndices:o,prevLayout:s,trigger:`keyboard`}),itemConstraints:r.derivedItemConstraints});jI(s,c)||TI(n,{defaultLayoutDeferred:r.defaultLayoutDeferred,derivedItemConstraints:r.derivedItemConstraints,axisSize:r.axisSize,layout:c,requestedAxisSize:r.axisSize,requestedLayout:c,separatorToItems:r.separatorToItems},{isUserInteraction:!0})}function tL(e){if(e.defaultPrevented)return;let t=e.currentTarget,n=QI(t);if(!(n.disabled||n.separators.find(e=>e.element===t)?.disabled))switch(e.key){case`ArrowDown`:e.preventDefault(),n.orientation===`vertical`&&eL(t,5);break;case`ArrowLeft`:e.preventDefault(),n.orientation===`horizontal`&&eL(t,-5);break;case`ArrowRight`:e.preventDefault(),n.orientation===`horizontal`&&eL(t,5);break;case`ArrowUp`:e.preventDefault(),n.orientation===`vertical`&&eL(t,-5);break;case`End`:e.preventDefault(),eL(t,100);break;case`Enter`:{e.preventDefault();let{derivedItemConstraints:r,layout:i,separatorToItems:a}=SI(n.id,!0),o=n.separators.find(e=>e.element===t);SF(o,`Matching separator not found`);let s=a.get(o);SF(s,`Matching panels not found`);let c=s[0],l=r.find(e=>e.itemId===c.id);if(SF(l,`Panel metadata not found`),l.collapsible){let e=i[c.id];eL(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);SF(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(),eL(t,-100);break}}function nL(e,t){let{element:n,orientation:r,items:i}=e,a=n.getBoundingClientRect(),o=r===`horizontal`;return uI({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 DI(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 rL(e){if(e.defaultPrevented||e.pointerType===`mouse`&&e.button>0)return;let t=CI(),n=JI(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`?nL(e,n):[]);BF({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 iL(e){let t=CI(),n=LF();switch(n.state){case`active`:MI({commit:!1,document:e.currentTarget,event:e,hitRegions:n.hitRegions,initialLayoutMap:n.initialLayoutMap,mountedAxes:t,prevCursorFlags:n.cursorFlags})}}function aL(e){if(e.defaultPrevented)return;let t=LF(),n=CI();switch(t.state){case`active`:if(e.buttons===0){t.previewLayoutMap.forEach((e,t)=>{let r=n.get(t);t.resizePreviewMode===`separator`&&r&&!jI(e,r.layout)&&TI(t,{...r,layout:e,requestedAxisSize:r.axisSize,requestedLayout:e})}),BF({cursorFlags:0,state:`inactive`}),t.hitRegions.forEach(e=>{if(!n.has(e.axis))return;let t=SI(e.axis.id,!0);TI(e.axis,t,{isUserInteraction:!0})}),tI(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)}MI({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=JI(e,n);r.length===0?t.state!==`inactive`&&BF({cursorFlags:0,state:`inactive`}):BF({cursorFlags:0,hitRegions:r,state:`hover`}),tI(e.currentTarget);break}}}function oL(e){if(e.relatedTarget instanceof HTMLIFrameElement)switch(LF().state){case`hover`:BF({cursorFlags:0,state:`inactive`})}}function sL(e){e.defaultPrevented||e.pointerType===`mouse`&&e.button>0||NI(e.currentTarget,e)&&e.preventDefault()}function cL(e){let t=0,n=0,r={};for(let i of e)if(i.defaultSize!==void 0){t++;let e=gI(i.defaultSize);n+=e,r[i.itemId]=e}else r[i.itemId]=void 0;let i=e.length-t;if(i!==0){let t=gI((100-n)/i);for(let n of e)n.defaultSize===void 0&&(r[n.itemId]=t)}return r}function lL(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 uL({axis:e,itemConstraints:t}){let n=e.items.map(({id:e})=>e).join(`,`),r=e.mutableState.defaultLayout;return e.mutableState.layouts[n]??(r&&lL(e.items,r)?r:cL(t))}function dL({itemIds:e,layout:t}){return YI({layout:t,itemConstraints:e.map(e=>({collapsedSize:0,collapsible:!1,defaultSize:void 0,disabled:void 0,itemId:e,maxSize:100,minSize:0}))})}function fL(e,t,n){if(!n[0])return;let r=e.items.find(e=>e.element===t);if(!r||!r.onResize)return;let i=nI({axis:e}),a=e.orientation===`horizontal`?r.element.offsetWidth:r.element.offsetHeight,o=r.mutableValues.prevSize,s={asPercentage:gI(a/i*100),inPixels:a};r.mutableValues.prevSize=s,r.onResize(s,r.id,o)}function pL(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 mL(e,t){return e.length===t.length&&e.every((e,n)=>pL(e,t[n]))}function hL({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=gI(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]=gI((r[e]??0)/a*l);else{let e=gI(l/c.length);for(let t of c)u[t]=e}return u}var gL=new Map;function _L(e){let t=!0;SF(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=nI({axis:e});if(t===0)return;let n=SI(e.id);if(!n)return;let r=_I(e),i=n.requestedAxisSize,a=n.requestedLayout;n.defaultLayoutDeferred&&(i=t,a=dL({itemIds:e.items.map(({id:e})=>e),layout:uL({axis:e,itemConstraints:r})}));let o=YI({layout:hL({axis:e,nextAxisSize:t,prevAxisSize:i,prevLayout:a}),itemConstraints:r});if(!n.defaultLayoutDeferred&&jI(n.layout,o)&&mL(n.derivedItemConstraints,r)&&n.axisSize===t)continue;TI(e,{defaultLayoutDeferred:!1,derivedItemConstraints:r,axisSize:t,layout:o,requestedAxisSize:i,requestedLayout:a,separatorToItems:n.separatorToItems})}}else fL(e,i,n)}});a.observe(e.element),e.items.forEach(e=>{SF(!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=nI({axis:e}),s=_I(e),c=uL({axis:e,itemConstraints:s}),l=YI({layout:c,itemConstraints:s}),u=e.element.ownerDocument;gL.set(u,(gL.get(u)??0)+1);let d=new Map;return uI({axis:e,includeDisabled:!0}).forEach(e=>{e.separator&&d.set(e.separator,e.items)}),TI(e,{defaultLayoutDeferred:o===0,derivedItemConstraints:s,axisSize:o,layout:l,requestedAxisSize:o,requestedLayout:dL({itemIds:e.items.map(({id:e})=>e),layout:c}),separatorToItems:d}),e.separators.forEach(e=>{SF(!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`,tL)}),gL.get(u)===1&&(u.addEventListener(`contextmenu`,PI,!0),u.addEventListener(`dblclick`,ZI,!0),u.addEventListener(`pointerdown`,rL,!0),u.addEventListener(`pointerleave`,iL),u.addEventListener(`pointermove`,aL),u.addEventListener(`pointerout`,oL),u.addEventListener(`pointerup`,sL,!0)),function(){t=!1,gL.set(u,Math.max(0,(gL.get(u)??0)-1)),bI(e),HF(e)&&tI(u),e.separators.forEach(e=>{e.element.removeEventListener(`keydown`,tL)}),gL.get(u)||(u.removeEventListener(`contextmenu`,PI,!0),u.removeEventListener(`dblclick`,ZI,!0),u.removeEventListener(`pointerdown`,rL,!0),u.removeEventListener(`pointerleave`,iL),u.removeEventListener(`pointermove`,aL),u.removeEventListener(`pointerout`,oL),u.removeEventListener(`pointerup`,sL,!0)),a.disconnect()}}function vL({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=DI(e.collapsedSize,n[e.itemId]),a=DI(e.collapsedSize,r[e.itemId]);i&&!a&&(t.mutableState.expandedItemSizes[e.itemId]=r[e.itemId])}})}function yL(){let[e,t]=(0,J.useState)({});return[e,(0,J.useCallback)(()=>t({}),[])]}function bL(e){let t=(0,J.useRef)({...e});return pF(()=>{for(let n in e)t.current[n]=e[n]},[e]),t.current}var xL=(0,J.createContext)(null);function SL({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=YI({layout:AI({delta:l-o,initialLayout:e,itemConstraints:t,pivotIndices:u,prevLayout:e}),itemConstraints:t})[n],i=YI({layout:AI({delta:c-o,initialLayout:e,itemConstraints:t,pivotIndices:u,prevLayout:e}),itemConstraints:t})[n]}return{valueControls:n,valueMax:i,valueMin:a,valueNow:o}}function CL({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=bL({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=hF(T,c),O=n===`horizontal`?`vertical`:`horizontal`;pF(()=>{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=RF(e=>{S(e.next.state!==`inactive`&&e.next.hitRegions.some(e=>e.separator===n||(u?.(e)??!1))?e.next.state:`inactive`)}),a=wI(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({...SL({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]),pF(()=>{let e=E.current;e&&VF(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 wL({axis:e,children:t,className:n,crossSpan:r,crossStart:i,disabled:a,elementRef:o,index:s,style:c}){let l=fF(void 0),{getDisableCursor:u,getResizeAxisId:d,gutters:f,registerSeparator:p,separatorPlacements:m,trackCounts:h,updateSeparatorProps:g}=wF(),_=d(e),v=e===`column`?`row`:`column`,y=h[v],b=!!a||!xF(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=yF(s),T=bF({crossCount:y,crossSpan:r,crossStart:i,hasGutters:f[v]});return(0,Y.jsx)(CL,{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 TL(e){let{children:t,className:n,disabled:r,elementRef:i,style:a}=e;return e.type===`column`?(0,Y.jsx)(wL,{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)(wL,{axis:`row`,className:n,crossSpan:e.columnSpan,crossStart:e.column??0,disabled:r,elementRef:i,index:e.row,style:a,children:t})}TL.displayName=`Gridline`;var EL=[`column`,`row`],DL={columns:{},rows:{}};function OL({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=fF(c),g=(0,J.useCallback)(e=>e===`column`?`${h}:columns`:`${h}:rows`,[h]),_=kL(n,`columns`),v=kL(f,`rows`),y=e=>e===`column`?_:v,b=(0,J.useRef)({onLayoutChange:DL,onLayoutChanged:DL}),x=mF(e=>{NL(b.current.onLayoutChange,e)||(b.current.onLayoutChange=e,l?.(e))}),S=mF((e,t,n)=>{NL(b.current.onLayoutChanged,e)||(b.current.onLayoutChanged=e,u?.(e,{isUserInteraction:t,requestedLayout:n}))}),C=(0,J.useRef)(null),w=hF(C,o),[T,E]=yL(),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;AL(e,O);let k=bL({defaultLayout:r,disableCursor:i,resizeTargetMinimumSize:d}),A=mF(()=>!!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)([]);pF(()=>{let e=C.current;if(e===null)return;let t=D.current,n=ML({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=EL.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&&xF(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 MF({axis:n,element:e,gutterSizes:r.filter(e=>e!==void 0),hasGutters:u,layout:SI(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})=>AF({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=>_L(e)),s=()=>{let[e,t]=i.map(e=>SI(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=>wI(e.id,t=>{let{defaultLayoutDeferred:n,derivedItemConstraints:r,layout:a,requestedLayout:o}=t.next;if(n||r.length===0)return;vL({derivedItemConstraints:r,axis:e,layout:a,prevLayout:t.prev?.layout,requestedLayout:o});let c=s();if(c){let e=LF(),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]=EL.map(g);return!xI(e)||!xI(t)?{columns:{},rows:{}}:{columns:$I({axisId:e}).getLayout(),rows:$I({axisId:t}).getLayout()}},t=e=>e.map(e=>`"${e}"`).join(`, `),n=(e,n)=>{let r=g(e),i=()=>{let i=xI(r);return SF(i,`Grid "${h}" has not been mounted`),SF(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))}`),XI({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 SF(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 SF(i,`Grid "${h}" does not contain a ${e} at index ${t}; it has ${r.length} ${e}s`),n(e,i.id)},setLayout:t=>(EL.forEach(e=>{let n=t[e===`column`?`columns`:`rows`],r=g(e);n&&xI(r)&&$I({axisId:r}).setLayout(n)}),e())}},[_,g,h,v]);let te=()=>EL.map(e=>{let t=SI(g(e)),n=y(e);return(t&&!t.defaultLayoutDeferred?n.map(e=>`minmax(0, ${t.layout[e.id]??1}fr)`):jL(n,r?.[e===`column`?`columns`:`rows`])).join(O[e]?` auto `:` `)}).join(`|`),[I,L]=(0,J.useSyncExternalStore)((0,J.useCallback)(e=>{let t=EL.map(t=>wI(g(t),e));return()=>t.forEach(e=>e())},[g]),te,te).split(`|`);return(0,Y.jsx)(CF.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:I,gridTemplateRows:L,touchAction:`none`},children:(0,Y.jsx)(xL.Provider,{value:null,children:e})})})}OL.displayName=`Grid`;function kL(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 SF(r.length>0,`Grid must have at least one track; "${t}" is ${n}`),r},[n])}function AL(e,t){J.Children.forEach(e,e=>{if((0,J.isValidElement)(e))if(e.type===TL){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&&AL(e.props.children,t)})}function jL(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:NF(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 ML({cells:e,separatorPlacements:t,trackCounts:n}){let r=[];for(let t of e)EL.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 xF(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 NL(e,t){return jI(e.columns,t.columns)&&jI(e.rows,t.rows)}function PL(e){for(let t=1;t<e.length;t++)if(rI(e[t-1],e[t])>0)return!1;return!0}function FL({separator:e}){let{element:t}=e,n=(0,J.useRef)(null);return pF(()=>{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 IL(){let e=(0,J.useContext)(xL);return SF(e,`Group Context not found; did you render a Panel or Separator outside of a Group?`),e}function LL(e){let{registerOverlay:t}=IL(),n=(0,J.useRef)(e);pL(n.current,e)||(n.current=e);let r=n.current;return pF(()=>t(r),[t,r]),null}LL.displayName=`SeparatorOverlay`;function RL({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 zL({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===LL&&(c=s.props,s=void 0),s??(c?s=(0,Y.jsx)(RL,{...c,active:t.active,orientation:n.orientation}):a&&(s=(0,Y.jsx)(FL,{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 BL(e){return Array.from(e).sort(rI)}function VL(e,t){let n=(0,J.useRef)({getLayout:()=>({}),setLayout:UF});(0,J.useImperativeHandle)(t,()=>n.current,[]),pF(()=>{Object.assign(n.current,$I({axisId:e}))})}function HL({groupId:e,resizePreviewMode:t}){let[n,r]=(0,J.useState)([]),i=(0,J.useRef)(n);return pF(()=>{let n=n=>{let a=xI(e),o=t===`separator`&&n.state===`active`?n.previews.filter(e=>e.axis===a&&(e.active||!DI(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(LF());return}let a=RF(({next:e})=>n(e));return n(LF()),a},[e,t]),n}function UL({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=mF(e=>{jI(h.current.onLayoutChange,e)||(h.current.onLayoutChange=e,c?.(e))}),_=mF((e,t,n)=>{jI(h.current.onLayoutChanged,e)||(h.current.onLayoutChanged=e,l?.(e,{isUserInteraction:t,requestedLayout:n}))}),v=fF(s),[y,b]=(0,J.useState)(),x=HL({groupId:v,resizePreviewMode:d}),S=(0,J.useRef)(null),[C,w]=yL(),T=(0,J.useRef)([]),E=(0,J.useRef)({lastExpandedPanelSizes:{},layouts:{},panels:[],separators:[]}),D=hF(S,a);VL(v,o);let O=mF((e,t)=>{let r=SI(e);if(r)return{flexGrow:r.layout[t]??1};if(n?.[t])return{flexGrow:n?.[t]}}),k=bL({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=iI(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=iI(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=xI(v),i=SI(v);r&&i&&TI(r,{...i,derivedItemConstraints:_I(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 pF(()=>{let e=S.current;if(e===null)return;let t=E.current;t.panels=iI(u,t.panels),t.separators=iI(u,t.separators),T.current=BL([...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=_L(r),{defaultLayoutDeferred:o,derivedItemConstraints:s,layout:c,requestedLayout:l}=SI(r.id,!0);!o&&s.length>0&&(g(c),_(c,!1,l));let f=wI(v,e=>{let{defaultLayoutDeferred:t,derivedItemConstraints:n,layout:i,requestedLayout:a}=e.next;if(t||n.length===0)return;vL({derivedItemConstraints:n,axis:r,layout:i,prevLayout:e.prev?.layout,requestedLayout:a});let o=LF(),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]),pF(()=>{PL(T.current)||w()}),(0,J.useEffect)(()=>{let e=j.current;e&&(e.mutableState.defaultLayout=n,e.mutableState.disableCursor=!!r)}),(0,Y.jsx)(xL.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)(zL,{overlay:y,preview:e},e.key))]})})}UL.displayName=`Group`;function WL(e,t){let{id:n}=IL(),r=(0,J.useRef)({collapse:WF,expand:WF,getSize:()=>({asPercentage:0,inPixels:0}),isCollapsed:()=>!1,resize:WF});(0,J.useImperativeHandle)(t,()=>r.current,[]),pF(()=>{Object.assign(r.current,XI({axisId:n,itemId:e}))})}function GL({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,_=fF(l),v=bL({disabled:o}),y=(0,J.useRef)(null),b=hF(y,s),{getPanelStyles:x,id:S,orientation:C,registerPanel:w,updatePanelProps:T}=IL(),E=f!==null,D=mF((e,t,n)=>{f?.(e,l,n)});pF(()=>{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]),WL(_,p);let O=()=>{let e=x(S,_);if(e)return JSON.stringify(e)},k=(0,J.useSyncExternalStore)(e=>wI(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:{...KL,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})})}GL.displayName=`Panel`;var KL={minHeight:0,maxHeight:`100%`,height:`auto`,minWidth:0,maxWidth:`100%`,width:`auto`,border:`none`,borderWidth:0,padding:0,margin:0},qL={flexBasis:`auto`},JL={flexGrow:0,flexShrink:0};function YL({children:e,className:t,disabled:n,disableDoubleClick:r,elementRef:i,id:a,preview:o,style:s,...c}){let l=fF(a),{disableCursor:u,id:d,orientation:f,registerSeparator:p,updateSeparatorProps:m}=IL();return(0,Y.jsx)(CL,{attributes:c,axisId:d,axisOrientation:f,className:t,disableCursor:u,disabled:n,disableDoubleClick:r,elementRef:i,id:l,preview:o,registerSeparator:p,requiredStyle:JL,style:s,styleDefaults:qL,updateSeparatorProps:m,children:e})}YL.displayName=`Separator`;function XL({className:e,...t}){return(0,Y.jsx)(UL,{"data-slot":`resizable-panel-group`,className:q(`flex h-full w-full`,e),...t})}function ZL(e){return(0,Y.jsx)(GL,{"data-slot":`resizable-panel`,...e})}function QL({className:e,...t}){return(0,Y.jsx)(YL,{"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 $L=`oa.panes`,eR=200,tR=new Set,nR=[];function rR(e,t){return t?`${e}/${t}`:`new`}var iR=e=>typeof e==`object`&&!!e&&!Array.isArray(e);function aR(e){if(!iR(e))return{};let t={};for(let[n,r]of Object.entries(e))iR(r)&&Object.values(r).every(e=>typeof e==`number`)&&(t[n]=r);return t}function oR(e){let t;try{t=JSON.parse(e??`null`)}catch{t=null}let n={};if(iR(t)&&iR(t.pages))for(let[e,r]of Object.entries(t.pages))iR(r)&&(n[e]={open:Array.isArray(r.open)?r.open.filter(e=>typeof e==`string`):[],sizes:aR(r.sizes)});return{pages:n,last:iR(t)?aR(t.last):{}}}var sR,cR;function lR(){let e=cR??null;if(cR===void 0)try{e=globalThis.localStorage?.getItem($L)??null}catch{e=null}return sR?.raw!==e&&(sR={raw:e,kept:oR(e)}),sR.kept}function uR(e,t,n){let r=lR(),{[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-eR)))delete s[e];let l=JSON.stringify({pages:s,last:n??r.last});try{globalThis.localStorage?.setItem($L,l),cR=void 0}catch{cR=l}for(let e of tR)e()}function dR(e){return tR.add(e),()=>tR.delete(e)}function fR(e,t,n){!n&&yR.get(e)===t&&yR.delete(e),uR(e,e=>e.open.includes(t)===n?e:{...e,open:n?[...e.open,t]:e.open.filter(e=>e!==t)})}function pR(e){yR.delete(e),uR(e,e=>({...e,open:[]}))}function mR(e){return(0,J.useSyncExternalStore)(dR,()=>lR().pages[e]?.open??nR,()=>nR)}function hR(e,t){let n=lR();return n.pages[e]?.sizes[t]??n.last[t]}var gR=0;function _R(e,t){return lR().pages[e]?.sizes[t]?e:`~${gR}`}function vR(e,t,n){gR++,uR(e,e=>({...e,sizes:{...e.sizes,[t]:n}}),{...lR().last,[t]:n})}var yR=new Map;function bR(e,t){t===void 0?yR.delete(e):yR.set(e,t);for(let e of tR)e()}function xR(e){return(0,J.useSyncExternalStore)(dR,()=>yR.get(e),()=>void 0)}var SR=new Map,CR=new Map,wR=new Map,TR=new Map,ER=new Set,DR=0;function OR(e){return ER.add(e),()=>ER.delete(e)}function kR(e,t){SR.set(e,t===void 0?{at:++DR}:{path:t,at:++DR});for(let e of ER)e()}function AR(e){return(0,J.useSyncExternalStore)(OR,()=>SR.get(e),()=>void 0)}function jR(e,t){CR.set(e,{path:t,at:++DR});for(let e of ER)e()}function MR(e){return(0,J.useSyncExternalStore)(OR,()=>CR.get(e),()=>void 0)}function NR(e){wR.set(e,++DR);for(let e of ER)e()}function PR(e){return(0,J.useSyncExternalStore)(OR,()=>wR.get(e),()=>void 0)}function FR(e,t){TR.set(e,{key:t,at:++DR});for(let e of ER)e()}function IR(e){return(0,J.useSyncExternalStore)(OR,()=>TR.get(e),()=>void 0)}var LR=e=>`${e.package}/${e.id}`,RR=`docs`,zR=`subagent`,BR=`workspace`,VR=`chat`,HR=`panes`,UR=50,WR=(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}),GR=0;function KR({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}=xi(l?()=>io(l):null,[],4e3,[l],l?{remember:`docs:${l}`}:void 0),{panels:f}=Fn(),p=rR(l??``,t),m=IR(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:LR(e),label:e.label,icon:e.icon,panel:e})),t=[...u.length>0?[{id:RR,label:`Docs`,icon:lc}]:[],...h?[{id:zR,label:`Subagent`,icon:Js,hidden:!0}]:[]];return[...e,...t]},[f,l,u.length,h]),_=mR(p),v=(0,J.useMemo)(()=>_.flatMap(e=>g.find(t=>t.id===e)??[]),[_,g]),y=xR(p);(0,J.useEffect)(()=>()=>{Qr()&&pR(p)},[p]);let b=AR(p),x=g.find(e=>e.panel?.changes)?.id,S=b?.at;(0,J.useEffect)(()=>{S===void 0||x===void 0||S<=GR||(GR=S,fR(p,x,!0))},[S,x,p]);let C=MR(p),w=g.find(e=>e.panel?.files)?.id,T=C?.at;(0,J.useEffect)(()=>{T===void 0||w===void 0||T<=GR||(GR=T,fR(p,w,!0))},[T,w,p]);let E=PR(p),D=g.find(e=>e.panel?.screen)?.id;(0,J.useEffect)(()=>{E===void 0||D===void 0||E<=GR||(GR=E,fR(p,D,!0))},[E,D,p]);let O=m?.at;(0,J.useEffect)(()=>{O===void 0||!h||O<=GR||(GR=O,fR(p,zR,!0))},[O,h,p]);let k=(0,J.useMemo)(()=>new Set(r.filter(e=>i.has(e))),[r,i]),A=(0,J.useMemo)(()=>({files:k,toggle:a}),[k,a]),j=(0,J.useMemo)(()=>l?{projectId:l,...t?{agentId:t,...o===void 0?{}:{activity:o}}:{},context:A}:void 0,[l,t,o,A]),M=(0,J.useMemo)(()=>({page:p,enabled:l!==null,panes:g,open:v,expanded:v.some(e=>e.id===y)?y:void 0,panelProps:j,reveal:b,show:C,docs:u,docsLoaded:d,subagent:s??null}),[p,l,g,v,y,j,b,C,u,d,s]);return(0,Y.jsx)(WR.Provider,{value:M,children:c})}function qR(){let{open:e}=(0,J.useContext)(WR);return br()&&e.length>0}function JR(){let{page:e,panes:t,open:n}=(0,J.useContext)(WR),r=t.filter(e=>!e.hidden);return qR()||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)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(V,{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:()=>fR(e,t.id,!r)}),children:(0,Y.jsx)(t.icon,{className:`h-4 w-4`})}),(0,Y.jsx)(H,{children:t.label})]},t.id)})})}function YR(){let{page:e,panes:t,open:n}=(0,J.useContext)(WR);return qR()?(0,Y.jsxs)(Mn,{children:[(0,Y.jsx)(mt,{"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)(ac,{className:`h-4 w-4`,"aria-hidden":!0})}),(0,Y.jsx)(hr,{align:`start`,className:`min-w-[12rem]`,children:t.filter(e=>!e.hidden||n.includes(e)).map(t=>(0,Y.jsxs)(Ar,{closeOnClick:!0,checked:n.includes(t),onCheckedChange:n=>fR(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 XR({pane:e}){let{page:t,expanded:n,panelProps:r,reveal:i,show:a,docs:o,docsLoaded:s,subagent:c}=(0,J.useContext)(WR),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)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(V,{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:()=>bR(t,l?void 0:e.id)}),children:l?(0,Y.jsx)(Ac,{className:`h-3.5 w-3.5`}):(0,Y.jsx)(Oc,{className:`h-3.5 w-3.5`})}),(0,Y.jsx)(H,{children:l?`Back to its place`:`Fill the page`})]}),(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(V,{variant:`ghost`,size:`icon-sm`,className:`shrink-0 text-muted-foreground`,"aria-label":`Close ${e.label}`,onClick:()=>fR(t,e.id,!1)}),children:(0,Y.jsx)(Ai,{className:`h-4 w-4`})}),(0,Y.jsx)(H,{children:`Close`})]})]}),(0,Y.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden`,children:e.id===zR?(0,Y.jsx)(F.Provider,{value:m,children:c}):e.panel&&r?(0,Y.jsx)(lF,{package:e.panel.package,label:`${e.label} pane`,children:(0,Y.jsx)(F.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)(sF,{docs:o,loaded:s})})]})})}var ZR=e=>e.map(e=>e.id).join(`+`);function QR(){let{page:e,open:t,expanded:n}=(0,J.useContext)(WR),r=ZR(t),i=hR(e,r),a=_R(e,r),o=e=>`${e.id}@${a}`;return(0,Y.jsx)(XL,{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)&&vR(e,r,Object.fromEntries(a))},children:t.flatMap((e,n)=>[...n>0?[(0,Y.jsx)(QL,{"aria-label":`The height of ${t[n-1].label} and ${e.label}`},`above-${e.id}`)]:[],(0,Y.jsx)(ZL,{id:o(e),defaultSize:`${i?.[e.id]??100/t.length}%`,minSize:96,style:{overflow:`hidden`},children:(0,Y.jsx)(XR,{pane:e})},e.id)])})}function $R({children:e}){let{page:t,enabled:n,open:r,expanded:i}=(0,J.useContext)(WR),a=br(),o=r.length>0&&!a;if(!n)return e;let s=hR(t,BR)?.[HR]??UR,c=`${HR}@${_R(t,BR)}`;return(0,Y.jsxs)(`div`,{className:`relative flex min-w-0 flex-1`,children:[(0,Y.jsxs)(XL,{orientation:`horizontal`,disabled:i!==void 0,onLayoutChanged:(e,{isUserInteraction:n})=>{let[r,i]=[e[VR],e[c]];n&&r!==void 0&&i!==void 0&&vR(t,BR,{[VR]:r,[HR]:i})},children:[(0,Y.jsx)(ZL,{id:VR,minSize:320,className:`flex min-w-0 flex-col`,style:{overflow:`hidden`},children:e}),o&&(0,Y.jsx)(QL,{"aria-label":`The width of the chat and the panes`}),o&&(0,Y.jsx)(ZL,{id:c,defaultSize:`${s}%`,minSize:288,style:{overflow:`hidden`},children:(0,Y.jsx)(QR,{})})]}),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)(XR,{pane:e})},e.id))})]})}var ez=[];function tz({projectId:e,onProjectRemoved:t}){return(0,Y.jsx)(oF,{projectId:e,events:ez,onProjectRemoved:t})}function nz({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)(jt,{}),(0,Y.jsx)(YR,{}),(0,Y.jsx)(`div`,{className:`grow shrink-0`}),(0,Y.jsx)(tz,{projectId:e,onProjectRemoved:t}),(0,Y.jsx)(JR,{})]})}function rz({events:e,headline:t=!1}){let n=iz(e);if(n.length===0)return null;let r=n[n.length-1];return(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsxs)(`span`,{role:`alert`,className:`flex shrink-0 items-center gap-1.5 text-danger`,children:[(0,Y.jsx)(Gc,{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)(H,{className:`whitespace-pre-line`,children:n.map(e=>e.headline).join(`
|
|
135
|
-
`)})]})}function iz(e){let t=ea(e),n=qP(e),r=n&&!n.ok&&!n.stopped&&!n.waiting?n.detail:void 0;return r?t.filter(e=>!r.includes(e.headline)):t}function az(e){if(e.length===0)return null;let t=qP(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`}:KP(e)?{dot:`animate-pulse bg-warning`,label:`building…`,tone:`text-muted-foreground`}:{dot:`bg-muted-foreground`,label:`finished`,tone:`text-muted-foreground`}}function oz({events:e}){let t=ta(e),n=az(e),r=iz(e),i=QP(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)(rz,{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 sz({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}){return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(nz,{projectId:e,onProjectRemoved:m===void 0?f:void 0}),(0,Y.jsx)(Ll,{errors:d}),(0,Y.jsx)(M,{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)(oz,{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)(Kl,{items:n,onOpenAgent:u},e)]}),(0,Y.jsx)(xP,{projectId:e,onChanged:p},e)]})}),(0,Y.jsx)(jP,{projectId:e,projectName:t,onAgentStarted:i,files:a,context:o,addContext:s,removeContext:c,toggleContext:l,home:m})]})}var cz=U(`onQuota`),lz=3e4;function uz(){return xi(cz,void 0,lz,[],{remember:`quota`,stored:!0}).value}function dz(e){return new Intl.DateTimeFormat(`en-US`,{weekday:`short`}).format(e).slice(0,2).toUpperCase()}function fz(e,t,n=dz){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 pz=5;function mz(e,t,n=pz){return e>=100?`full`:e>t+n?`over`:e>=t-n?`near`:`under`}function hz(e,t){return Math.min(Math.max(e+t,0),100)}function gz(e,t,n){return(e-t)/100*n}function _z(e,t){return Math.min(Math.max(e,0),100)/100*t}function vz(e,t){if(!(t<=0))return e/t*100}function yz(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 bz={under:`bg-primary`,near:`bg-info`,over:`bg-warning`,full:`bg-danger`},xz={under:`text-primary`,near:`text-info`,over:`text-warning`,full:`text-danger`},Sz=` — `;function Cz(e){return e.find(e=>e.kind===`week`)}function wz(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 Tz({swatch:e,children:t}){return(0,Y.jsxs)(`span`,{className:`flex items-center gap-1`,children:[e,t]})}function Ez({boundary:e,percentUsed:t,offset:n,onChangeOffset:r,others:i}){let a=fz(e.startsAt,e.resetsAt),o=mz(t,e.percent),s=n!==void 0,c=hz(e.percent,n??0),l=yz(t,s?c:t),u=s&&l.end>l.start,d=gz(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=gz(t,e.percent,m),g=h>=0,_=_z(t,m),v=vz(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`,bz[o]),style:{width:`${l.start}%`}}),u&&(0,Y.jsx)(`div`,{className:q(`absolute inset-y-0 opacity-35`,bz[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)(yi,{children:[(0,Y.jsxs)(pi,{render:(0,Y.jsx)(`span`,{className:`cursor-default`}),children:[`You are `,(0,Y.jsx)(`span`,{className:q(`font-medium`,xz[o]),children:Je(Math.abs(h))}),` `,g?`over`:`under`,` the week's pace`]}),(0,Y.jsxs)(H,{className:`max-w-64`,children:[`You are `,ar(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)(yi,{children:[(0,Y.jsxs)(pi,{render:(0,Y.jsx)(`span`,{className:`cursor-default`}),children:[(0,Y.jsx)(`span`,{className:`font-medium text-foreground`,children:Je(_)}),` spent`]}),(0,Y.jsxs)(H,{className:`max-w-64`,children:[ar(_),` 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)(yi,{children:[(0,Y.jsxs)(pi,{render:(0,Y.jsx)(`span`,{className:`cursor-default`}),children:[(0,Y.jsxs)(`span`,{className:q(`font-medium`,xz[o]),children:[Math.round(v),`%`]}),` of pace`]}),(0,Y.jsxs)(H,{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)(yi,{children:[(0,Y.jsxs)(pi,{render:(0,Y.jsx)(`span`,{className:`cursor-default`}),children:[`Resets `,Re(e.resetsAt)]}),(0,Y.jsx)(H,{children:Ue(e.resetsAt)})]}),`.`,i.length>1?(0,Y.jsxs)(Y.Fragment,{children:[` `,(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(`span`,{className:`cursor-default`}),children:`Show all limits`}),(0,Y.jsx)(H,{children:(0,Y.jsx)(`table`,{className:`border-collapse text-left`,children:(0,Y.jsx)(`tbody`,{children:i.map(e=>(0,Y.jsx)(Oz,{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)(Tz,{swatch:(0,Y.jsx)(`span`,{className:q(`h-2 w-2 rounded-sm`,bz[o]),"aria-hidden":!0}),children:`Used`}),s&&(0,Y.jsx)(Tz,{swatch:(0,Y.jsx)(`span`,{className:q(`h-2 w-2 rounded-sm opacity-35`,bz[o]),"aria-hidden":!0}),children:`Budget for Autonomous AI`}),(0,Y.jsx)(Tz,{swatch:(0,Y.jsx)(`span`,{className:`h-2 w-0.5 bg-foreground`,"aria-hidden":!0}),children:(0,Y.jsxs)(yi,{children:[(0,Y.jsxs)(pi,{render:(0,Y.jsx)(`span`,{className:`inline-flex cursor-default items-center gap-0.5`}),children:[`Quota boundary`,(0,Y.jsx)(ec,{className:`h-3 w-3`,"aria-hidden":!0})]}),(0,Y.jsxs)(H,{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)(yi,{children:[(0,Y.jsxs)(pi,{render:(0,Y.jsx)(`span`,{className:`inline-flex cursor-default items-center gap-1 text-warning`}),children:[(0,Y.jsx)(Gc,{className:`h-3 w-3`,"aria-hidden":!0}),`Eager consumption`,(0,Y.jsx)(ec,{className:`h-3 w-3`,"aria-hidden":!0})]}),(0,Y.jsxs)(H,{children:[`Autonomous AI will spend tokens `,ar(d),` faster than the week's pace allows`]})]}),s&&(0,Y.jsxs)(yi,{children:[(0,Y.jsxs)(pi,{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)(H,{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 Dz({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?`${Sz}resets ${e.resetsAtText}`:``]})]})}function Oz({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?`${Sz}resets ${e.resetsAtText}`:``]})]})}function kz(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 Az=500;function jz(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))})},Az)},i]}function Mz({limit:e,projects:t,boundary:n,percentUsed:r,others:i}){let a=Gn(),o=t.map(e=>e.id).join(`,`),{value:s}=xi(()=>e.read(a,t),void 0,1e4,[e.package,o],{remember:`usage-limit:${e.package}:${o}`,stored:!0}),[c,l,u]=jz(s,n=>e.save(a,t,n));return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Ez,{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 Nz({projects:e}){let t=uz(),{usageLimit:n}=Fn(),r=(mj(`claude`).view?.accounts??[]).filter(e=>!e.own),i=t&&!(t.windows.length===0&&r.length>0)?kz(t):void 0,a=t?.unavailable!==void 0&&t.windows.length>0?t.readAt:void 0,o=t?Cz(t.windows):void 0,s=t?.windows??[];return(0,Y.jsxs)(gt,{children:[(0,Y.jsx)(gi,{children:(0,Y.jsx)(St,{className:`text-base`,children:`Usage`})}),(0,Y.jsxs)(O,{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)(lF,{package:n.package,label:`usage limit`,children:(0,Y.jsx)(Mz,{limit:n,projects:uF(n.projects,e),boundary:t.boundary,percentUsed:o.percentUsed,others:s})}):(0,Y.jsx)(Ez,{boundary:t.boundary,percentUsed:o.percentUsed,others:s}):t&&t.windows.length?(0,Y.jsx)(`p`,{role:`alert`,className:`text-sm text-danger`,children:wz(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)(Dz,{window:e},e.label))}):null,(0,Y.jsx)(Tj,{}),i?(0,Y.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[i,a===void 0?``:` Last read ${er(new Date(a).toISOString())}.`]}):null]})]})}var Pz=`/update-tickets`;function Fz({busy:e,onStart:t,onConfigure:n,lastImportedAt:r,disabled:i,variant:a,size:o=`sm`,className:s}){return(0,Y.jsx)($t,{...a?{variant:a}:{},size:o,...i===void 0?{}:{disabled:i},...s?{className:s}:{},icon:(0,Y.jsx)(Lc,{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:Pz,configureDescription:`Opens the launcher with the update prompt, so you can set the model and where it runs.`})}var Iz=`Hide; Settings › Appearance brings it back`,Lz=e=>e.replace(/[\\/]+$/,``).split(/[\\/]/).pop()||e;function Rz(){let[e,t]=(0,J.useState)(!1);return(0,Y.jsxs)(`div`,{className:`space-y-1`,children:[(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Agents work in the project's folder, each in its own copy and on its own branch. Your files and your branch stay as they are.`}),(0,Y.jsxs)(`button`,{type:`button`,"aria-expanded":e,className:`flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground`,onClick:()=>t(!e),children:[(0,Y.jsx)(B,{"aria-hidden":!0,className:e?`h-3 w-3 rotate-90`:`h-3 w-3`}),`What adding a project does`]}),e&&(0,Y.jsx)(`div`,{className:`pl-4`,children:(0,Y.jsx)(kl,{})})]})}function zz({onAgentStarted:e,onSelectProject:t}){let{value:n,reload:r}=xi(lo,null,1e4,[]),{value:i,reload:a}=xi(Ko,null,3e4,[]),o=Ia(),s=ou(),{start:c,busy:l,error:u}=bd(),{missing:d}=Vu(),[f,p]=(0,J.useState)(null),m=i?.cwdProjectId??n?.projects[0]?.projectId??null,h=n?.totals.projects??0,g=n?.projects.some(e=>e.hasTickets)??!1,_=s===`granted`&&Ba(o),v=()=>{Na({notifyBrowser:!0}),s==="default"&&Notification.requestPermission()},y=async()=>{if(!m)return;let t=await c(m,Pz,yd(o));t&&e(m,Pz,t.agentId)},b=i?.cwd&&!i.cwdProjectId?i.cwd:void 0,x=[...d.length>0?[{key:`ready`,label:`Get ready`,description:`What runs need on this computer. Each is one press, with no admin.`,done:!1,action:(0,Y.jsx)(`ul`,{className:`space-y-3`,children:d.map(e=>(0,Y.jsxs)(`li`,{className:`space-y-1.5`,children:[(0,Y.jsx)(`p`,{className:`text-xs font-medium`,children:e.words}),e.fix]},e.key))})}]:[],{key:`project`,label:`Add a project`,description:n&&h===0?(0,Y.jsx)(Rz,{}):`A project is a git repo OpenAgent may work in.`,done:h>0,action:(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[b&&(0,Y.jsxs)(`div`,{className:`min-w-0 space-y-1`,children:[(0,Y.jsxs)(V,{size:`sm`,onClick:()=>p({folder:b}),children:[(0,Y.jsx)(fc,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),`Add “${Lz(b)}”`]}),(0,Y.jsx)(`p`,{className:`truncate font-mono text-[11px] text-muted-foreground`,title:b,children:`The folder OpenAgent runs in: ${b}`})]}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[i?.canPickFolder!==!1&&(0,Y.jsx)(V,{size:`sm`,variant:b?`outline`:`default`,onClick:()=>p({}),children:b?`Choose another folder…`:`Choose a folder…`}),(0,Y.jsx)(V,{size:`sm`,variant:`outline`,onClick:()=>p({fromAddress:!0}),children:`Add from a GitHub address`})]})]})},...(n?.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:(n?.totals.openTodos??0)>0}]:[],...n?.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:g,optional:!0,action:(0,Y.jsxs)(`div`,{className:`flex flex-col items-start gap-1`,children:[(0,Y.jsx)(Fz,{variant:`default`,busy:l,disabled:!m,onStart:()=>void y(),onConfigure:()=>m&&t(m)}),!m&&(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:`Add browser notifications`,description:`Desktop pings while the dashboard is open, so a session waiting on you does not sit unnoticed.`,done:_,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)(V,{size:`sm`,variant:`outline`,onClick:v,children:`Enable`})}],S=x.filter(e=>e.done).length;return(0,Y.jsxs)(gt,{children:[(0,Y.jsxs)(gi,{className:`flex flex-row items-start justify-between gap-3`,children:[(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(St,{className:`text-base`,children:`Onboarding`}),(0,Y.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[S,` of `,x.length,` set up.`]}),(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`mt-2 h-1 w-40 overflow-hidden rounded-full bg-muted-foreground/15`,children:(0,Y.jsx)(`div`,{className:`h-full rounded-full bg-[var(--color-primary)]`,style:{width:`${S/Math.max(1,x.length)*100}%`}})})]}),(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(V,{variant:`ghost`,size:`sm`,onClick:()=>Na({onboardingDismissed:!0}),"aria-label":Iz}),children:(0,Y.jsx)(Ai,{className:`h-4 w-4`,"aria-hidden":!0})}),(0,Y.jsx)(H,{children:Iz})]})]}),(0,Y.jsx)(O,{children:(0,Y.jsx)(`ul`,{className:`divide-y divide-border`,children:x.map(e=>(0,Y.jsxs)(`li`,{className:`flex items-start gap-3 py-4 first:pt-0 last:pb-0`,children:[e.done?(0,Y.jsx)(Vc,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--color-primary)]`,"aria-label":`Done`}):(0,Y.jsx)(Hc,{className:`mt-0.5 h-4 w-4 shrink-0 text-muted-foreground`,"aria-label":`Not done`}),(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-2`,children:[(0,Y.jsxs)(`div`,{children:[(0,Y.jsxs)(`p`,{className:e.done?`text-sm text-muted-foreground line-through`:`text-sm font-medium`,children:[e.label,e.optional&&(0,Y.jsx)(`span`,{className:`ml-2 rounded-full border border-border px-1.5 py-0.5 align-middle text-[10px] font-normal uppercase tracking-wide text-muted-foreground`,children:`Optional`})]}),typeof e.description==`string`?(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e.description}):(0,Y.jsx)(`div`,{className:`mt-1`,children:e.description})]}),!e.done&&e.action&&(0,Y.jsx)(`div`,{className:`max-w-full`,children:e.action})]})]},e.key))})}),f&&(0,Y.jsx)(Al,{folder:f.folder,fromAddress:f.fromAddress===!0,onAdded:()=>{r(),a()},onClose:()=>p(null)})]})}var Bz=60*6e4,Vz=[];function Hz(){let{value:e,reload:t}=xi(gr,Vz,Bz,[]);return e.length===0?null:(0,Y.jsx)(`div`,{className:`space-y-2`,children:e.map(e=>(0,Y.jsx)(Uz,{update:e,onUpdated:t},e.agent))})}function Uz({update:e,onUpdated:t}){let{busy:n,error:r,run:i}=Yn(),a=$r[e.agent],o=async()=>{(await i(()=>Ln(e.agent),`${a} could not be updated.`)).ok&&(li(`models`),Ei(`models`,Un),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)(Qs,{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)(V,{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 Wz({working:e,onSelectAgent:t}){return(0,Y.jsxs)(gt,{children:[(0,Y.jsx)(gi,{children:(0,Y.jsxs)(St,{className:`flex items-center gap-2 text-base`,children:[(0,Y.jsx)(Js,{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)(O,{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)(Gz,{label:Kz(e),cloud:e.cloud,computer:e.computer,at:e.updatedAt,projectName:e.projectName,onOpen:()=>t(e.projectId,e.agentId)},`${e.projectId}:${e.agentId}`))})})]})}function Gz({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)(ut,{computer:n}),r&&(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(`span`,{className:`shrink-0 whitespace-nowrap text-xs tabular-nums text-muted-foreground/80`}),children:xt(r)}),(0,Y.jsx)(H,{children:L(r)})]})]})})}function Kz(e){return e.intent?.trim()||e.scope?.trim()||e.projectName}function qz(e){let{cards:t}=Fn();return t.flatMap(t=>{let n=t.Card,r=t.computer?uF(e.map(e=>e.id),e):uF(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)(lF,{package:t.package,label:`${t.id} card`,children:(0,Y.jsx)(n,{projects:r})})}]})}var Jz=`@openagt/skill-logs`,Yz=5;function Xz(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 Zz=[];function Qz({projects:e,onSelectProject:t}){let n=e.map(e=>e.id).join(`,`),{value:r,loaded:i,reload:a}=xi(()=>Promise.all(e.map(async e=>{let[t,n]=await Promise.all([oP(e.id).catch(()=>null),ie(e.id,Jz,[`skills`,`--local`,`--days`,`30`]).then(e=>e.ok&&Array.isArray(e.output)?e.output:[],()=>[])]);return{project:e,skills:t,used:n}})),Zz,6e4,[n],{remember:`skills-card:${n}`,stored:!0});(0,J.useEffect)(()=>dP(()=>void a()),[a]);let o=Xz(r),s=new Set(o.map(e=>e.skill)),c=[...new Set(r.flatMap(e=>e.skills?SP(e.skills).heldNames:[]))].filter(e=>!s.has(e)).sort(),l=r.filter(e=>e.skills&&SP(e.skills).newer.length>0),[u,d]=(0,J.useState)(!1),f=Yn(),p=async()=>{d(!0);try{for(let e of l)if(!(await CP(e.project.id,e.skills,f.run)).ok)break;await a()}finally{d(!1)}};return(0,Y.jsxs)(gt,{children:[(0,Y.jsxs)(gi,{children:[(0,Y.jsxs)(St,{className:`flex items-center gap-2 text-base`,children:[(0,Y.jsx)(Ic,{className:`h-4 w-4 text-muted-foreground`,"aria-hidden":!0}),`Skills`,l.length>1&&(0,Y.jsx)(V,{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)(O,{children:i?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`ul`,{className:`space-y-2`,children:r.map(e=>(0,Y.jsx)($z,{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)(eB,{used:o,unused:c})]}):(0,Y.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Loading…`})})]})}function $z({read:e,reload:t,onOpen:n}){let{project:r,skills:i}=e,[a,o]=(0,J.useState)(!1),{error:s,run:c}=Yn(),l=async e=>{o(!0);try{(await e()).ok&&await t()}finally{o(!1)}},u=i?SP(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)(V,{variant:`outline`,size:`xs`,onClick:()=>Bd(fP,r.id),title:`Open the project's Skills page`,children:`Add`})]}):u.newer.length>0?(0,Y.jsx)(V,{variant:`outline`,size:`xs`,disabled:a,onClick:()=>void l(()=>CP(r.id,i,c)),title:`Newer versions: ${u.newer.join(`, `)}`,children:a?`Updating…`:`Update ${u.newer.length}`}):u.sending?(0,Y.jsx)(V,{variant:`outline`,size:`xs`,disabled:a,onClick:()=>void l(()=>c(()=>cP(r.id),`Could not send the skills.`)),title:`Not where agents start from yet: ${u.here.join(`, `)}`,children:a?`Sending…`:bP(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)($s,{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 eB({used:e,unused:t}){if(e.length===0)return null;let n=e[0].uses,r=e.length-Yz;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,Yz).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 tB={"1/4":`@2xl:col-span-6 @5xl:col-span-3`,"1/3":`@2xl:col-span-6 @5xl:col-span-4`,"1/2":`@2xl:col-span-6`,"2/3":`@2xl:col-span-6 @5xl:col-span-8`,"3/4":`@2xl:col-span-6 @5xl:col-span-9`,1:``};function nB({cards:e}){return(0,Y.jsx)(aB,{children:e.map(({card:e,width:t})=>(0,Y.jsx)(iB,{card:e,className:q(`col-span-12 flex min-w-0 flex-col *:flex-1`,tB[t])},e.id))})}var rB=new Set;function iB({card:e,className:t}){let[n,r]=(0,J.useState)(rB),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)(nn.Provider,{value:i,children:e.node})})}function aB({children:e,onDragOver:t,onDrop:n}){return(0,Y.jsx)(`div`,{className:`@container`,children:(0,Y.jsx)(`div`,{className:`grid grid-cols-12 gap-4`,onDragOver:t,onDrop:n,children:e})})}var oB={"1/4":`¼`,"1/3":`⅓`,"1/2":`½`,"2/3":`⅔`,"3/4":`¾`,1:`Full`},sB=(e,t)=>e===`end`||t===`end`?e===t:e.id===t.id&&e.side===t.side,cB=e=>`card-${e.replace(/[^a-zA-Z0-9_-]/g,`-`)}`;function lB({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 uB({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||!sB(a,e))&&o(e)},l=e=>Na({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,Ni.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)(Sc,{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)(Fc,{className:`h-3.5 w-3.5`,"aria-hidden":!0})})]},e.id))})]}),(0,Y.jsxs)(aB,{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(`col-span-12 flex min-h-40 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 col-span-12 flex min-w-0 cursor-grab flex-col rounded-lg outline-1 outline-offset-2 outline-border outline-dashed`,tB[t],r?.id===e.id&&`opacity-40`),style:{viewTransitionName:cB(e.id)},children:[r&&a!==void 0&&(a===`end`?e.id===v&&(0,Y.jsx)(lB,{side:`after`}):a.id===e.id&&(0,Y.jsx)(lB,{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)(dB,{label:e.label,widths:ua(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 dB({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)(Sc,{className:`h-4 w-4`,"aria-hidden":!0})}),(0,Y.jsxs)(`span`,{className:`hidden pointer-coarse:flex`,children:[(0,Y.jsx)(fB,{label:`Move ${e} earlier`,disabled:r,onClick:()=>a(-1),children:(0,Y.jsx)(Ys,{className:`h-4 w-4`,"aria-hidden":!0})}),(0,Y.jsx)(fB,{label:`Move ${e} later`,disabled:i,onClick:()=>a(1),children:(0,Y.jsx)(B,{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:oB[e]},e))}),(0,Y.jsx)(fB,{label:`Take ${e} off the page`,onClick:s,children:(0,Y.jsx)(Ai,{className:`h-3.5 w-3.5`,"aria-hidden":!0})})]})}function fB({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})}function pB({onSelectProject:e,onSelectAgent:t,onAgentStarted:n,interventions:r,interventionsStale:i,active:a,projects:o,scope:s}){let c=Ia().onboardingDismissed??!1,l=a.active.filter(e=>s===null||e.projectId===s),u=s===null?o:o.filter(e=>e.id===s),d=qz(u),f=r.filter(e=>e.kind===`awaiting`).length,p=[{id:`needs-you`,stale:i,label:`Needs you`,order:1,width:`1/3`,minWidth:`1/4`,node:(0,Y.jsx)(_i,{label:`Needs you`,value:r.length,tone:`text-warning`,note:r.length===0?`Nothing waits on you`:f>0?f===1?`1 question to answer`:`${f} questions to answer`:`Work to review or publish`,onClick:()=>C(un)})},{id:`working-now`,stale:a.stale,label:`Working now`,order:2,width:`1/3`,minWidth:`1/4`,node:(0,Y.jsx)(_i,{label:`Working now`,value:l.length,live:l.length>0,note:l.length===0?`No agent is at work`:l.length===1?`1 agent at work`:`${l.length} agents at work`,...l.length>0?{onClick:()=>C(ft)}:{}})},{id:`usage`,label:`Usage`,order:5,width:`1`,minWidth:`1/2`,node:(0,Y.jsx)(Nz,{projects:o})},{id:`human-queue`,stale:i,label:`Human Queue`,order:6,width:`1`,minWidth:`1/2`,node:(0,Y.jsx)(`div`,{id:un,className:`flex scroll-mt-6 flex-col *:flex-1`,children:(0,Y.jsx)(mB,{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:ft,className:`flex scroll-mt-6 flex-col *:flex-1`,children:(0,Y.jsx)(Wz,{working:l,onSelectAgent:t})})},{id:`skills`,label:`Skills`,order:8,width:`1/3`,minWidth:`1/4`,node:(0,Y.jsx)(Qz,{projects:u,onSelectProject:e})},...d];p.sort((e,t)=>e.order-t.order);let m=s??`*`,h=Ia().overviewLayouts,g=La(),_=da(p,h,m),[v,y]=(0,J.useState)(!1),b=s===null?void 0:o.find(e=>e.id===s)?.name,x=h?.[m]!==void 0;return(0,Y.jsx)(di,{title:`Overview`,description:`What needs you, the agents at work, and what comes next.`,actions:v?(0,Y.jsxs)(Y.Fragment,{children:[x&&(0,Y.jsx)(V,{variant:`ghost`,size:`sm`,onClick:()=>{let{[m]:e,...t}=h??{};Na({overviewLayouts:t})},children:m===`*`?`Reset to the default layout`:`Use the all-projects layout`}),(0,Y.jsx)(V,{size:`sm`,onClick:()=>y(!1),children:`Done`})]}):(0,Y.jsxs)(V,{variant:`ghost`,size:`sm`,className:`gap-1.5 text-muted-foreground`,onClick:()=>y(!0),children:[(0,Y.jsx)(Bc,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),`Customize`]}),bar:v&&(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:b===void 0?`Arranging the layout for all projects.`:`Arranging the layout for ${b}.`}),` `,b===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:[!c&&!v&&(0,Y.jsx)(zz,{onAgentStarted:n,onSelectProject:e}),!v&&(0,Y.jsx)(Hz,{}),g?v?(0,Y.jsx)(uB,{arranged:_,layouts:h,layoutKey:m}):_.some(({hidden:e})=>!e)?(0,Y.jsx)(nB,{cards:_.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 mB({items:e,onSelectProject:t,onSelectAgent:n}){let r=hB.map(t=>({...t,items:e.filter(e=>e.kind===t.value)})).filter(e=>e.items.length>0);return(0,Y.jsxs)(gt,{children:[(0,Y.jsxs)(gi,{children:[(0,Y.jsxs)(St,{className:`flex items-center gap-2 text-base`,children:[(0,Y.jsx)(Cc,{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)(O,{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)(Kl,{grouped:!0,items:e.items,onOpenAgent:n,onOpenProject:t})]},e.value))})})]})}var hB=[{value:`awaiting`,label:`Questions`},{value:`pr`,label:`Pull requests`},{value:`unpushed`,label:`To publish`},{value:`uncommitted`,label:`To commit`}];function gB({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 go().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 _o().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)(V,{variant:`outline`,size:`sm`,onClick:()=>a(e=>!e),children:i?`Hide`:`Reveal`}),(0,Y.jsx)(pe,{text:n,label:`Copy the bridge token`})]})]}):null}var _B=`@openagt/skill-account-rotation`;function vB(){return(0,Y.jsx)(Aj,{children:(0,Y.jsxs)(`div`,{className:`space-y-4`,children:[(0,Y.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Runs use these accounts. When one hits its limit, the next free one takes the run over where it stopped.`}),(0,Y.jsx)(xB,{}),(0,Y.jsx)(bB,{driver:`claude-code`,title:`Claude Code`,Logo:ht}),(0,Y.jsx)(bB,{driver:`codex`,title:`Codex`,Logo:D}),(0,Y.jsx)(yB,{}),(0,Y.jsx)(jj,{}),(0,Y.jsx)(Wj,{})]})})}function yB(){let{cards:e,loaded:t}=Fn(),n=e.find(e=>e.package===_B&&e.id===`accounts`);return n?(0,Y.jsx)(lF,{package:n.package,label:`accounts card`,children:(0,Y.jsx)(n.Card,{projects:[]})}):t?(0,Y.jsx)(gt,{children:(0,Y.jsx)(O,{className:`pt-6 text-sm text-muted-foreground`,children:`The accounts card did not load.`})}):(0,Y.jsx)(Sn,{className:`h-32 w-full`})}function bB({driver:e,title:t,Logo:n}){let{state:r,reload:i}=Cu(e);return!r||r.ready||r.fix===void 0&&Tu(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)(ku,{state:Tu(r)})]}),(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:Nu(r)}),(0,Y.jsx)(Lu,{state:r,onChanged:()=>void i()})]})}function xB(){let e=mj(`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 SB=`project-accounts`,CB=e=>`project-accounts:${e}`;function wB(e){Ei(CB(e),()=>gu(e))}function TB(e){let{value:t,reload:n}=xi(e?()=>gu(e):null,null,3e4,[e],e?{remember:CB(e)}:void 0);return{view:t&&(t.gitHost||t.claude||t.codex)?t:null,reload:n}}var EB=``,DB=`some`;function OB({projectId:e}){let{view:t,reload:n}=TB(e),[r,i]=(0,J.useState)(),a=async t=>{i(void 0);let r=await _u(e,t);r.ok||i(r.error),await n()};if(!t)return(0,Y.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`This computer has one account of each kind: this project's runs use those.`});let o=t.gitHost;return(0,Y.jsxs)(Nr,{description:`The accounts this project's runs work as, when not this computer's. Kept on this computer only, never in the repository.`,children:[o&&(0,Y.jsx)(ye,{label:o.name,description:`Which account this project's runs push and open a ${o.requestWord} as.${o.computer===void 0?``:` This computer's runs use @${o.computer}.`}`,value:o.project??EB,options:[{value:EB,label:`Same as this computer`},...o.accounts.map(e=>({value:e,label:`@${e}`}))],onChange:e=>void a({gitHost:e===EB?null:e})}),t.claude&&(0,Y.jsx)(kB,{label:`Claude`,accounts:t.claude,onChange:e=>void a({claude:e})}),t.codex&&(0,Y.jsx)(kB,{label:`Codex`,accounts:t.codex,onChange:e=>void a({codex:e})}),r!==void 0&&(0,Y.jsx)(`p`,{role:`alert`,className:`pt-2 text-xs text-danger`,children:r})]})}function kB({label:e,accounts:t,onChange:n}){let r=new Set(t.project??[]);return(0,Y.jsxs)(`div`,{className:`py-3`,children:[(0,Y.jsx)(ye,{label:e,description:`Which ${e} accounts this project's runs use, in the order Settings › Accounts has them.`,value:t.project?DB:EB,options:[{value:EB,label:`Same as this computer`},{value:DB,label:`Only some of them`}],onChange:e=>n(e===EB?null:t.accounts.map(e=>e.id))}),t.project&&(0,Y.jsx)(`ul`,{className:`mt-2 space-y-2 pl-1`,children:t.accounts.map(e=>(0,Y.jsx)(`li`,{children:(0,Y.jsxs)(`label`,{className:`flex items-center gap-2 text-sm`,children:[(0,Y.jsx)(ln,{checked:r.has(e.id),onCheckedChange:i=>{let a=t.accounts.map(e=>e.id).filter(t=>t===e.id?i:r.has(t));n(a.length>0?a:null)}}),e.name]})},e.id))})]})}function AB({words:e,projects:t,onPick:n}){let r=nl();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)(mc,{"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)(B,{"aria-hidden":!0,className:`h-4 w-4 shrink-0 text-muted-foreground`})]})},e.id))})]})}function jB({enabled:e}){let[t,n]=(0,J.useState)(null);if((0,J.useEffect)(()=>{if(!e){n(null);return}let t=!0,r=()=>void bo().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 Eo(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)(V,{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)(V,{variant:`outline`,size:`sm`,onClick:()=>r(`hide`),children:`Hide the window`}):(0,Y.jsx)(V,{variant:`outline`,size:`sm`,onClick:()=>r(`show`),children:t.signIn?`Show the window to sign in`:`Show the window`}),(0,Y.jsx)(V,{variant:`outline`,size:`sm`,onClick:()=>r(`restart`),children:`Restart`})]})]})]})}var MB=``;function NB({entry:e,openItem:t,onEntry:n,onClose:r,scope:i,projects:a}){let{settings:o}=Fn(),s=br(),c=s&&e===``,l=(0,J.useRef)(null),[u,d]=(0,J.useState)((e===`skills`||e===`project-agent-data`?t:void 0)??i??MB),f=a.find(e=>e.id===u)??null,p=nl(),m=FB(),[h,g]=(0,J.useState)(),_=(n,r)=>{let i=n.Section;return{id:n.id,title:n.title,icon:n.icon,body:(0,Y.jsx)(lF,{package:n.package,label:`${n.title} settings`,children:(0,Y.jsx)(i,{projects:uF(n.projects,r),...t!==void 0&&n.id===e?{item:t}:{}})})}},v=[...m,...o.filter(e=>e.computer).map(e=>_(e,[]))],y=o.filter(e=>!e.computer&&(f?e.projects.includes(f.id):e.projects.length>0)),{view:b}=TB(f?.id);(0,J.useEffect)(()=>{for(let e of a)wB(e.id)},[a]);let x=[...f&&b?[{id:SB,title:`Accounts`,icon:Tc,body:(0,Y.jsx)(OB,{projectId:f.id})}]:[],...a.length>0?[{id:fP,title:`Skills`,icon:Ic,body:f?(0,Y.jsx)(TP,{projectId:f.id}):(0,Y.jsx)(AB,{words:`Skills are written into a project’s own repository, one project at a time. Pick a project.`,projects:a,onPick:d})},{id:HP,title:`Agent data`,icon:ic,body:f?(0,Y.jsx)(GP,{projectId:f.id}):(0,Y.jsx)(AB,{words:`Each project keeps its agent data in one place, your folder or its own repository. Pick a project.`,projects:a,onPick:d})}]:[],...y.map(e=>_(e,f?[f]:a))],S=[...v,...x].find(t=>t.id===e)??v[0],C=x.includes(S),w=C&&!f?uF(y.find(e=>e.id===S.id)?.projects??[],a):[],T=e=>{let t=e.icon;return(0,Y.jsx)(`li`,{children:(0,Y.jsxs)(`button`,{type:`button`,"aria-current":e===S?`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)(Jn,{open:!0,onOpenChange:e=>!e&&r(),children:(0,Y.jsxs)(sn,{children:[(0,Y.jsx)(lr,{className:`fixed inset-0 z-50 bg-black/40 backdrop-blur-[1px]`}),(0,Y.jsxs)(Tr,{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)(Br,{className:`text-base font-semibold`,children:`Settings`}),(0,Y.jsx)(vn,{"aria-label":`Close settings`,className:`rounded p-1 text-muted-foreground outline-none hover:text-foreground`,children:(0,Y.jsx)(Ai,{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:v.map(T)})}),(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)(PB,{projects:a,value:f?.id??MB,onChange:d})]}),x.length>0?(0,Y.jsx)(`ul`,{className:`flex flex-col gap-1`,children:x.map(T)}):(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 ${S.title}`,onClick:h.back,className:`-ml-1 rounded p-1 text-muted-foreground outline-none hover:text-foreground`,children:(0,Y.jsx)(Us,{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)(Us,{className:`size-4`,"aria-hidden":!0})}),(0,Y.jsxs)(Br,{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)(B,{className:`size-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0})]}),C&&(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)(B,{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:S.title}),(0,Y.jsx)(B,{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:S.title})]}),(0,Y.jsx)(vn,{"aria-label":`Close settings`,className:`rounded p-1 text-muted-foreground outline-none hover:text-foreground`,children:(0,Y.jsx)(Ai,{className:`size-4`,"aria-hidden":!0})})]}),(0,Y.jsx)(M,{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:[w.length>0&&(0,Y.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Saved to `,w.length===1?`one project`:`${w.length} projects`,`: `,w.map(e=>p(e.id,e.name)).join(`, `),`.`]}),(0,Y.jsx)(`div`,{children:(0,Y.jsx)(bn.Provider,{value:g,children:S.body})},`${S.id}/${f?.id??MB}`)]})})]})]})]})})}function PB({projects:e,value:t,onChange:n}){let r=nl(),i=[{value:MB,label:`All projects`},...e.map(e=>({value:e.id,label:r(e.id,e.name)}))];return(0,Y.jsxs)(Ht,{items:i,value:t,onValueChange:e=>n(String(e??MB)),children:[(0,Y.jsx)(tt,{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)(o,{})}),(0,Y.jsx)(It,{children:i.map(e=>(0,Y.jsx)(qt,{value:e.value,children:e.label},e.value))})]})}function FB(){let e=Ia(),t=eF(),n=Ra(e),r=Er(Nn()),i=e.driver??Dn[0],a=e.model??``,o=ou()===`denied`,s=e.palette??`openagent`;return[{id:`appearance`,title:`Appearance`,icon:Nc,body:(0,Y.jsxs)(Nr,{children:[(0,Y.jsx)(ye,{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=>Na({theme:e})}),(0,Y.jsx)(ye,{label:`Colours`,description:`OpenAgent’s own Everforest colours, or neutral greys.`,value:s,options:Bi.map(e=>({value:e,label:Vi[e]})),onChange:e=>Na({palette:e,accent:``})}),(0,Y.jsx)(ye,{label:`Primary colour`,description:`Buttons, links and what is picked, in the colours’ own hues.`,value:Wi(s,e.accent)??``,options:[{value:``,label:Ui[s]},...Hi[s].map(e=>({value:e,label:e.charAt(0).toUpperCase()+e.slice(1)}))],onChange:e=>Na({accent:e})}),(0,Y.jsx)(ye,{label:`Font`,description:`The font of the page and the chat.`,value:e.font??`ibm-plex-sans`,options:Object.entries(Gi).map(([e,t])=>({value:e,label:t})),onChange:e=>Na({font:e})}),(0,Y.jsx)(ye,{label:`Code font`,description:`Code blocks, the files an agent read, the Files pane.`,value:e.codeFont??`jetbrains-mono`,options:Object.entries(Ki).map(([e,t])=>({value:e,label:t})),onChange:e=>Na({codeFont:e})}),(0,Y.jsx)(ye,{label:`File preview font`,description:`A Markdown file read in the Files pane.`,value:e.documentFont??`source-serif-4`,options:Object.entries(qi).map(([e,t])=>({value:e,label:t})),onChange:e=>Na({documentFont:e})}),(0,Y.jsx)(ye,{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=>Na({editor:e})}),(0,Y.jsx)(LB,{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=>Na({onboardingDismissed:!e})})]})},{id:`notifications`,title:`Notifications`,icon:Ks,body:(0,Y.jsxs)(Nr,{children:[(0,Y.jsx)(LB,{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=>Na({notifyBrowser:e})}),(0,Y.jsx)(LB,{label:`Human Queue`,description:`An agent awaiting your answer, or a PR ready to review.`,checked:e.notifyHumanIntervention??!0,onChange:e=>Na({notifyHumanIntervention:e})}),(0,Y.jsx)(LB,{label:`New activity`,description:`Also ping when an agent starts or finishes.`,checked:e.notifyNewActivity??!1,onChange:e=>Na({notifyNewActivity:e})})]})},{id:`agent`,title:`Agent`,icon:Js,body:(0,Y.jsxs)(Nr,{children:[(0,Y.jsx)(ye,{label:`Agent`,description:`Which coding agent runs the work.`,value:i,options:r,onChange:e=>Na({driver:e,model:``})}),(0,Y.jsx)(ye,{label:`Model`,description:`The models the agent lists. Its own default when none is picked.`,value:a,options:RB(r.find(e=>e.value===i),a),onChange:e=>Na({model:e})}),(0,Y.jsx)(LB,{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=>Na({nameRuns:e})}),(0,Y.jsx)(LB,{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=>Na({showThinking:e})})]})},{id:vu,title:`Accounts`,icon:x,body:(0,Y.jsx)(vB,{})},{id:zP,title:`Agent data`,icon:uc,body:(0,Y.jsx)(VP,{})},{id:`claude-web`,title:`Claude web`,icon:xc,body:(0,Y.jsxs)(Nr,{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)(LB,{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=>Na({bridge:e})}),(e.bridge??!1)&&(0,Y.jsx)(IB,{daemonBrowser:e.bridgeBrowser??!1,onChange:e=>Na({bridgeBrowser:e})})]})}]}function IB({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)(b,{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)(ki,{"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)(jB,{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)(gB,{enabled:!0,onChange:()=>{}}))]})]})}function LB({label:e,description:t,checked:n,onChange:r,disabled:i=!1}){return(0,Y.jsx)(Te,{label:e,description:t,dimmed:i,control:(0,Y.jsx)(ce,{checked:n,disabled:i,onCheckedChange:e=>r(e===!0),"aria-label":e})})}function RB(e,t){let n=e?.models??[];return[{value:``,label:$A},...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 zB=15e3,BB=1e4,VB=1e3;function HB(e){return e?e.landed?!0:e.exists?!e.empty||e.commits.length>0||!!e.pendingFiles?.length:!e.unchanged:!1}function UB(e,t,n=!0,r=!1,i=!1){let a=t?`handoff:${e}:${t}`:void 0;(0,J.useEffect)(()=>{i&&a!==void 0&&li(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),BB);return()=>clearTimeout(e)},[o]);let[l,u]=(0,J.useState)(zB),{value:d,reload:f,loaded:p}=xi(n&&t?()=>mo(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?VB:zB),[d?.prPending,o]),(0,J.useEffect)(()=>{o&&HB(d)&&s(!1)},[o,d]);let{busy:m,error:h,run:g}=Yn(),[_,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 WB(e,t,n){let[r,i]=(0,J.useState)(1e4),[a,o]=(0,J.useState)(!1),{value:s,reload:c}=xi(()=>eo(e,t),null,r,[e,t,r],{remember:`worktree:${e}:${t}`});(0,J.useEffect)(()=>i(s?.prPending?300:a?VB:1e4),[s?.prPending,a]),(0,J.useEffect)(()=>{if(!a)return;let e=setTimeout(()=>o(!1),BB);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 GB({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?Zi(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)(jt,{}),(0,Y.jsx)(YR,{}),(0,Y.jsx)(oF,{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)(rz,{events:n}),(0,Y.jsx)(tz,{projectId:e,onProjectRemoved:o}),(0,Y.jsx)(JR,{})]})}function KB(e,t){return e===`web`?nc:e===`actions`?qc:t?_e[t]:Et}function qB({runsOn:e,target:t,remoteKind:n,elsewhere:r,projectName:i,startedFrom:a,worksOn:o,gitHost:s,gitAccount:c}){let l=a&&(o&&o!==a?`Started from ${a}, works on ${o}`:`Started from ${a}`);return(0,Y.jsxs)(qd,{end:(0,Y.jsx)($j,{home:s,account:c}),children:[(0,Y.jsx)(Jd,{tip:`Runs on — ${e}`,children:(0,Y.jsx)(`button`,{type:`button`,disabled:!0,className:Wd,children:(0,Y.jsx)(oj,{icon:KB(t,n),elsewhere:r,label:e})})}),i&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Jd,{tip:i,children:(0,Y.jsxs)(`button`,{type:`button`,disabled:!0,className:Wd,children:[(0,Y.jsx)(mc,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`truncate`,children:i})]})}),l&&(0,Y.jsx)(Jd,{tip:l,children:(0,Y.jsx)(iN,{label:a,disabled:!0})})]})]})}function JB(e){return e?.base===void 0&&e?.baseCommit!==void 0}function YB(e,t){return e?.base??(JB(e)?t??void 0:void 0)}function XB({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:sl(e.state),n=t?ol[t]:void 0,r=n?.Icon??yc;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 ZB({projectId:e,agentId:t,live:n,files:r,onAgentStarted:i,onSending:a,onQueued:o,editInBox:s,model:c,context:l,controls:u,contextSet:d,publish:f,prBase:p,row:m}){let h=(0,J.useRef)(null);(0,J.useEffect)(()=>{if(s)return s.current=e=>h.current?.edit(e),()=>{s.current=null}},[s]);let{busy:g,error:_,run:v}=Yn(),{busy:y,error:b,run:x}=Yn(),[S,C]=(0,J.useState)(!1);(0,J.useEffect)(()=>C(!1),[t]),(0,J.useEffect)(()=>{n||C(!1)},[n]);let w=y||S&&n,T=Td(e),E=Jt(f)?f:`nothing`,[D,O]=(0,J.useState)(null);(0,J.useEffect)(()=>O(null),[t]),(0,J.useEffect)(()=>{D===E&&O(null)},[D,E]);let k=async(r,s)=>{let c=n;c||a?.(r);let l=crypto.randomUUID();return(await v(()=>c?Do(e,r,t,D,{id:l,...s?{later:s}:{}}):Do(e,r,t,...D===null?[]:[D]),`Could not send. Your text is kept, try again.`)).ok?(c||O(null),c?o?.({id:l,text:r,later:s}):i?.(r,t),!0):(c||a?.(null),!1)},A=async(e,{later:t}={later:!1})=>{g||(await k(d?Hd(e,d.context):e,t)&&(h.current?.clear(),d?.reset()),h.current?.focus())},j=()=>void x(()=>So(e,t).then(()=>!0),`Could not stop the agent.`).then(e=>{e&&C(!0)});(0,J.useEffect)(()=>{if(!n)return;let e=e=>{e.key!==`Escape`||w||document.querySelector(`[role="dialog"], [role="menu"], [role="listbox"], .ProseMirror[aria-expanded="true"]`)||j()};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)});let M=n?(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(V,{type:`button`,variant:`ghost`,size:`icon-sm`,onClick:j,disabled:w,"aria-label":`Stop agent`,className:`h-8 w-8 shrink-0 disabled:opacity-100`}),children:w?(0,Y.jsx)(fe,{className:`h-4 w-4 animate-spin`}):(0,Y.jsx)(Hc,{className:`h-3.5 w-3.5 rounded-[3px] fill-current`})}),(0,Y.jsx)(H,{className:`flex items-center gap-1.5`,children:w?`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,N=_??b;return(0,Y.jsxs)(`div`,{className:`mx-auto w-full max-w-3xl p-2`,children:[N&&(0,Y.jsx)(`p`,{role:`alert`,className:`mb-1 px-2 text-xs text-danger`,children:N}),(0,Y.jsx)(tM,{ref:h,files:r,onSubmit:A,busy:g,submitLabel:`Send`,submitBusyLabel:n?`Sending…`:`Continuing…`,showDriverModel:!1,inAgent:!0,sessionRow:m,sessionModel:c,sessionContext:l,...d?{addContext:d.add,removeContext:d.remove}:{},controls:(0,Y.jsxs)(Y.Fragment,{children:[d&&(0,Y.jsx)($d,{projectId:e,context:d.context,busy:g,onToggle:d.toggle}),(0,Y.jsx)(Zd,{publish:D??E,picks:nt(T?.gitHost??!0,T?.remote??!0),onPublish:e=>O(e===E?null:e),target:p===void 0?void 0:{into:p},busy:g}),u]}),idleControl:M,placeholder:n?`⏎ to send, ⌘⏎ to queue for later`:`Message the agent to continue it…`})]})}function QB({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)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(`span`,{className:`truncate`}),children:o}),(0,Y.jsx)(H,{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)(yi,{children:[(0,Y.jsxs)(pi,{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)(H,{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)(Ai,{className:`h-3.5 w-3.5`})})]}),r&&(0,Y.jsx)(`p`,{role:`alert`,className:`pb-2 text-xs text-danger`,children:r})]})})}function $B({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 eV({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 tV=`await-choices`,nV=e=>typeof e==`string`?e.trim():``;function rV(e,t){let n=RegExp("```"+t+"\\s+([\\s\\S]*?)```",`g`);return[...e.matchAll(n)].map(e=>e[1]??``)}function iV(e){for(let t of rV(e,tV).reverse()){let e=aV(t);if(e)return e}}function aV(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=nV(e?.label);if(!n)return;let i=nV(e?.detail);r.push({id:nV(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=nV(n.recommended),a=i?(r.find(e=>e.id===i)??r.find(e=>e.label===i))?.id:void 0,o=nV(n.file),s=nV(n.header);return{title:nV(n.title)||`Which option?`,...s?{header:s}:{},options:r,...a?{recommended:a}:{},...n.multi===!0?{multi:!0}:{},...o?{file:o}:{}}}function oV(e,t){return`You paused to ask: "${e}". The user chose: ${t}. Continue with that decision.`}function sV(e){return`You paused to ask: "${e}". The user skipped it. Continue without an answer.`}function cV(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 lV(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 uV(e.event);default:return}}function uV(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 dV({choice:e,pick:t}){let[n,r]=(0,J.useState)(!1),i=new Set(Fi(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 fV=Symbol(`other`),pV=typeof navigator<`u`&&/Mac|iPhone|iPad/.test(navigator.platform)?`⌘`:`Ctrl`;function mV({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)(Ir,{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 hV({projectId:e,agentId:t,choice:n,active:r=!1,onSaid:i,send:a}){let{busy:o,error:s,run:c}=Yn(),[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(()=>Co(e,n.id,r,t),oV(n.title,i.length?i.join(`, `):`(none)`))},C=n=>x(()=>Do(e,n,t),n),w=n.multi?_:d===fV,T=!w||b!==``,E=()=>{if(!(o||!T)){if(n.multi)return _?C(oV(n.title,[...n.options.filter(e=>p.has(e.id)).map(e=>e.label),b].join(`, `))):S([...p]);if(d===fV)return C(oV(n.title,b));d!==void 0&&S(d)}},D=()=>{o||(n.multi?v(e=>!e):f(fV))},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)(mV,{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)(mV,{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(sV(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:pV}),(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 gV({label:e,value:t}){return(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Y.jsx)($s,{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 _V(e,t){return e.workspace===void 0&&e.branch===void 0&&e.driver===void 0&&(!t||e.elsewhere===!0)}function vV({setup:e,live:t,working:n=!1,added:r,nested:i=!1}){let[a,o]=(0,J.useState)(!1),s=xr(e.driver),c=Nn(),l=s?$r[s]:e.driver,u=e.model&&ur(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&&_V(e,n))return null;let p=d===void 0&&f,m=(0,Y.jsx)(FN,{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)($N,{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)(LN,{since:t.since}),p&&(0,Y.jsx)(ZN,{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)(gV,{label:`Made the checkout`,value:e.workspace}),e.branch!==void 0&&(0,Y.jsx)(gV,{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)(gV,{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 yV=2500;function bV(e){return e===`waiting`?`text-muted-foreground`:rl[e]??`text-muted-foreground`}function xV({row:e,onOpen:t}){let n=Nn();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:cn(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`,bV(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)(LN,{since:e.startedAt}):e.endedAt===void 0?null:g(Date.parse(e.endedAt)-Date.parse(e.startedAt)),e.cost!==void 0&&` · $${e.cost.toFixed(2)}`]})]})}function SV({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`,bV(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)(B,{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)(Xn,{text:t})})]})]})}function CV({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),yV);return()=>clearInterval(e)},[a.length]);let c=e.length===1&&!t?e[0]:void 0;if(c?.kind===`message`)return(0,Y.jsx)(SV,{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)(xV,{row:c.row,onOpen:n})});let l=a[o%Math.max(a.length,1)],u=wl(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)(B,{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)(xV,{row:e.row,onOpen:n}):(0,Y.jsx)(SV,{name:e.row.name,text:e.text})},`${e.kind}-${e.row.key}`))]})]})}function wV({defaultTagName:e,props:t,render:n,state:r={},stateAttributesMapping:i}){let a=TV(EV(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={...TV(a,o),ref:kV(a.ref,o.ref)};return J.cloneElement(n,s)}function TV(...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]=kV(i,r):OV(n)&&typeof i==`function`&&typeof r==`function`?t[n]=DV(r,i):t[n]=r}}return t}function EV(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 DV(e,t){return function(n){e(n),n.defaultPrevented||t(n)}}function OV(e){return/^on[A-Z]/.test(e)}function kV(...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 AV=8,jV=64,MV=0,NV=.5,PV=180,FV=new Set([`ArrowDown`,`ArrowUp`,`End`,`Home`,`PageDown`,`PageUp`,` `]),IV={start:!1,end:!1},LV={currentAnchorId:null,visibleMessageIds:[]};function RV({content:e,scrollEdgeThreshold:t,spacer:n,viewport:r}){if(!r||!e)return IV;let i=XV({content:e,spacer:n,viewport:r});return{start:r.scrollTop>t,end:i-r.scrollTop-r.clientHeight>t}}function zV({content:e,scrollMargin:t,scrollPreviousItemPeek:n,spacer:r,viewport:i,visibleMessageIds:a}){if(!e||!i)return LV;let o=i.getBoundingClientRect(),s=o.top+t+n,c=typeof IntersectionObserver>`u`,l=[],u=null;for(let t of BV(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+NV&&(u=e)}return l.length===0&&u===null?LV:{currentAnchorId:u,visibleMessageIds:l}}function BV(e,t){return Array.from(e.children).filter(e=>e instanceof HTMLElement&&e!==t)}function VV(e,t){for(let n=t;n<e.length;n++){let t=e[n];if(t?.dataset.scrollAnchor===`true`)return t}return null}function HV(e,t){for(let n of e)if(n.dataset.scrollAnchor===`true`&&!t.has(n))return n;return null}function UV(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 WV(e){for(let t=e.length-1;t>=0;t--){let n=e[t];if(n?.dataset.scrollAnchor===`true`)return n}return null}function GV({content:e,spacer:t,viewport:n}){let r=n.getBoundingClientRect();for(let n of BV(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 KV({align:e,element:t,scrollMargin:n,spacer:r,viewport:i}){let a=qV(t,i),o=t.getBoundingClientRect().height,s=$V(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 qV(e,t){let n=e.getBoundingClientRect(),r=t.getBoundingClientRect();return n.top-r.top+t.scrollTop}function JV(e,t){return e.getBoundingClientRect().top-t.getBoundingClientRect().top}function YV({content:e,scrollTop:t,spacer:n,viewport:r}){let i=XV({content:e,spacer:n,viewport:r});return t+r.clientHeight-i}function XV({content:e,spacer:t,viewport:n}){let r=BV(e,t),i=QV(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 ZV(e){return Math.max(0,e.scrollHeight-e.clientHeight)}function QV(e){let t=window.getComputedStyle(e);return{end:tH(t.paddingBlockEnd||t.paddingBottom),start:tH(t.paddingBlockStart||t.paddingTop)}}function $V(e){let t=e?.parentElement;return t?QV(t):{end:0,start:0}}function eH(e){if(!e)return 0;let t=window.getComputedStyle(e);return tH(t.rowGap===`normal`?t.gap:t.rowGap)}function tH(e){if(!e)return 0;let t=Number.parseFloat(e);return Number.isFinite(t)?t:0}function nH({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()},PV))},[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)<=NV){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(ZV(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=KV({align:t,element:e,scrollMargin:o?a+g.current:a,spacer:y.current,viewport:l}),d=YV({content:s,scrollTop:u,spacer:y.current,viewport:l});return S(d),m.current={element:e,viewportTop:JV(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 rH(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 iH(e,t){return rH(e,t)}function aH(){return rH(LV,sH)}function oH(e,t){return e.start===t.start&&e.end===t.end}function sH(e,t){return e.currentAnchorId!==t.currentAnchorId||e.visibleMessageIds.length!==t.visibleMessageIds.length?!1:e.visibleMessageIds.every((e,n)=>e===t.visibleMessageIds[n])}function cH({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=iH(IV,oH)),j.current===null&&(j.current=aH()),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 lH(e,t){return J.useCallback(n=>{e.current=n,n&&t()},[e,t])}function uH({autoScroll:e=!1,defaultScrollPosition:t=`end`,scrollEdgeThreshold:n=AV,scrollPreviousItemPeek:r=jV,scrollMargin:i=MV}){let a=cH({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))},[]),I=J.useCallback(e=>{let t=A.current?.scrollTop??0,n=t<m.current-NV;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`)},[]),L=J.useCallback(()=>{let e=RV({content:u.current,scrollEdgeThreshold:S.current,spacer:D.current,viewport:A.current});I(e);let t=g.current===`following-bottom`?{...e,end:!1}:e;te(t),k.setSnapshot(t)},[I,k,te]),R=J.useCallback(()=>{O.current===null&&(O.current=window.requestAnimationFrame(()=>{O.current=null,L()}))},[L]),ne=J.useCallback(()=>{N.hasListeners()&&j.current===null&&(j.current=window.requestAnimationFrame(()=>{j.current=null,N.hasListeners()&&N.setSnapshot(zV({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:z,scrollToMessage:oe,scrollToStart:B}=nH({refs:a,commitScrollState:L,scheduleStateCommit:R,scheduleVisibilitySync:ne}),se=J.useCallback(()=>{let e=y.current,t=A.current;if(!e||!t||!e.element.isConnected)return!1;let n=JV(e.element,t)-e.viewportTop;return Math.abs(n)<=NV?!1:(t.scrollTop+=n,e.viewportTop=JV(e.element,t),R(),ne(),!0)},[R,ne]),ce=J.useCallback(()=>{let e=u.current,t=A.current;if(!e||!t){y.current=null;return}let n=GV({content:e,spacer:D.current,viewport:t});y.current=n?{element:n,viewportTop:JV(n,t)}:null},[]),le=J.useCallback(()=>{_.current===null&&(_.current=window.requestAnimationFrame(()=>{_.current=null,re()&&ce()}))},[ce,re]),ue=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?WV(BV(t,D.current)):null;if(!t||!n||!r)e=z({behavior:`auto`});else{let i=qV(r,n);e=XV({content:t,spacer:D.current,viewport:n})-i<=n.clientHeight?z({behavior:`auto`}):ae(r,{align:`start`},{keepPreviousPeek:!0})}}else e=t===`end`?z({behavior:`auto`}):B({behavior:`auto`});return e?(d.current=!0,!0):!1},[t,ae,z,B]),de=J.useCallback(()=>{let e=u.current;if(!e)return;let t=BV(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(ue()||t.length>0&&s.current&&z({behavior:`auto`}))return;L(),ne();return}let e=r?t.indexOf(r):-1;if(b.current&&e>0){se();return}if(t.length>n){let e=VV(t,n);if(e){if(s.current&&g.current===`following-bottom`&&UV(t,n)){z({behavior:`auto`});return}ae(e,{align:`start`},{keepPreviousPeek:!0}),F.current.add(e);return}}if(t.length===n){let e=HV(t,F.current);if(e){ae(e,{align:`start`},{keepPreviousPeek:!0}),F.current.add(e);return}}g.current===`following-bottom`&&s.current?z({behavior:`auto`}):(L(),ne())})(),ce()},[ue,ce,L,re,se,ne,ae,z]),fe=J.useCallback(()=>{if(g.current===`following-bottom`&&s.current){z({behavior:`auto`});return}let e=E.current;if(ie()){s.current&&e>0&&E.current===0&&z({behavior:`auto`});return}R(),ne()},[ie,R,ne,z]),pe=J.useCallback(()=>{let e=A.current;if(!(!e||!N.hasListeners())){if(typeof IntersectionObserver>`u`){ne();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))}ne()},{root:e,rootMargin:`${-(C.current+w.current)}px 0px 0px 0px`,threshold:[0,.01,.5,1]}),h.current.forEach(e=>{M.current?.observe(e)}),ne()}},[ne,N]),me=J.useCallback(()=>{j.current!==null&&(window.cancelAnimationFrame(j.current),j.current=null),M.current?.disconnect(),M.current=null,P.current.clear(),N.setSnapshot(LV)},[N]),he=J.useCallback((e,t,n)=>{if(t){h.current.set(e,t),M.current?.observe(t),ne(),v.current?.messageId===e&&le();return}n&&h.current.get(e)===n&&(h.current.delete(e),P.current.delete(e),M.current?.unobserve(n),ne())},[le,ne]),ge=J.useCallback(()=>{(g.current===`following-bottom`||g.current===`anchored-to-message`||g.current===`settling-jump`)&&(o.current=null,g.current=`free-scrolling`)},[]),_e=J.useCallback(()=>te(k.getSnapshot()),[k,te]),ve=lH(x,_e),ye=lH(A,_e),be=J.useCallback(e=>{u.current=e},[]),xe=J.useCallback(e=>{D.current=e,T.current=eH(e?.parentElement??null)},[]),Se=J.useCallback(()=>{L(),ne(),ce()},[ce,L,ne]),Ce=J.useMemo(()=>({handleContentChange:de,handleResize:fe,observeVisibility:pe,preserveScrollOnPrependRef:b,scrollToEnd:z,scrollToMessage:oe,scrollToStart:B,setContentElement:be,setRootElement:ve,setSpacerElement:xe,setViewportElement:ye,stateStore:k,syncAfterScroll:Se,unobserveVisibility:me,userScrollIntent:ge,viewportRef:A,visibilityStore:N}),[de,fe,pe,z,oe,B,be,ve,xe,ye,k,Se,me,ge,N]);return J.useLayoutEffect(()=>{ue()},[ue]),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){z({behavior:`auto`});return}L()},[e,L,z]),{context:Ce,registerMessage:he}}function dH(e){let t=J.useRef(e);return t.current=e,t}var fH=J.createContext(null),pH=J.createContext(null);function mH(){let e=J.useContext(fH);if(!e)throw Error(`useMessageScroller must be used within a MessageScroller.`);return e}function hH(){let e=J.useContext(pH);if(!e)throw Error(`MessageScrollerItem must be used within a MessageScroller.`);return e}function gH(){let{scrollToEnd:e,scrollToMessage:t,scrollToStart:n}=mH();return J.useMemo(()=>({scrollToEnd:e,scrollToMessage:t,scrollToStart:n}),[e,t,n])}function _H({autoScroll:e=!1,children:t,defaultScrollPosition:n=`end`,scrollEdgeThreshold:r,scrollPreviousItemPeek:i,scrollMargin:a}){let{context:o,registerMessage:s}=uH({autoScroll:e,defaultScrollPosition:n,scrollEdgeThreshold:r,scrollPreviousItemPeek:i,scrollMargin:a});return(0,Y.jsx)(fH.Provider,{value:o,children:(0,Y.jsx)(pH.Provider,{value:s,children:t})})}function vH({children:e,...t}){let{setRootElement:n}=mH();return(0,Y.jsx)(`div`,{ref:n,...t,children:e})}function yH({"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}=mH();f.current=o;let _=J.useCallback(e=>{p(e),kV(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){FV.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 bH({"aria-relevant":e,children:t,ref:n,role:r,spacerClassName:i,...a}){let{handleContentChange:o,handleResize:s,setContentElement:c,setSpacerElement:l}=mH(),u=J.useRef(null),d=J.useCallback(e=>{u.current=e,c(e),kV(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 xH({messageId:e,ref:t,scrollAnchor:n=!1,...r}){let i=hH(),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),kV(t)?.(n)},[e,t,i]),"data-message-id":e,"data-scroll-anchor":n?`true`:`false`,...r})}function SH({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}=mH(),d=dH(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 wV({defaultTagName:`button`,props:TV({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 CH={Provider:_H,Root:vH,Viewport:yH,Content:bH,Item:xH,Button:SH},wH=CH.Provider;function TH({className:e,...t}){return(0,Y.jsx)(CH.Root,{"data-slot":`message-scroller`,className:q(`group/message-scroller relative flex size-full min-h-0 flex-col overflow-hidden`,e),...t})}function EH({className:e,...t}){return(0,Y.jsx)(CH.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 DH({className:e,...t}){return(0,Y.jsx)(CH.Content,{"data-slot":`message-scroller-content`,className:q(`flex h-max min-h-full flex-col`,e),...t})}function OH({className:e,scrollAnchor:t=!1,...n}){return(0,Y.jsx)(CH.Item,{"data-slot":`message-scroller-item`,scrollAnchor:t,className:q(`min-w-0 shrink-0`,e),...n})}function kH({direction:e=`end`,className:t,children:n,...r}){return(0,Y.jsx)(CH.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)(Hs,{className:`size-5`,strokeWidth:1.5,"aria-hidden":!0}):(0,Y.jsx)(Ws,{className:`size-5`,strokeWidth:1.5,"aria-hidden":!0}))})}function AH(e){return e.kind===`driver`?e.event.type===`start`?e.event.prompt:e.event.type===`text`?e.event.text:null:null}function jH(e){return e.kind===`driver`?e.event.type===`start`||e.event.type===`steered`?`you`:`agent`:e.kind}function MH(e){return e.kind===`driver`&&e.event.type===`steered`?e.event.text:void 0}function NH(e,t){return e===void 0||t===void 0?e??t:Date.parse(e)>=Date.parse(t)?e:t}function PH(e){return e.kind===`driver`&&e.event.type===`start`}function FH(e){return e.kind===`driver`?e.event.type===`error`:e.kind===`error`||e.kind===`end`&&!e.ok&&!e.stopped&&!e.waiting}function IH(e){return FH(e)?`text-danger`:``}function LH(e){return FH(e)?`bg-danger/10`:``}function RH(e){let t=e.findIndex(PH);return t<=0?e:[e[t],...e.slice(0,t),...e.slice(t+1)]}function zH(e){return new Date(e).toLocaleTimeString()}function BH({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)(ZN,{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 VH(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=>PH(e)?[cV(e.event.prompt)?.question]:[]));for(let t of e)t.kind===`choice`&&a.has(t.title)&&n.add(t);let o=new Set(na(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(PH)&&t.set(s.e,{choice:c,passed:!0})}return{rows:t,hidden:n}}function HH(e){for(let t=e.length-1;t>=0;t--){let n=e[t];if(n.kind===`choice`||n.kind===`end`||PH(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=iV(n.event.text);if(r===void 0)return e;let i={kind:`choice`,id:tV,...r};return[...e.slice(0,t+1),i,...e.slice(t+1)]}return e}function UH(e){return new Set(e.filter(e=>e.kind===`end`&&(e.ok||e.waiting||e.stopped)))}function WH(e){let t=new Set,n;for(let r of e)PH(r)?n=void 0:r.kind===`driver`&&r.event.type===`text`?n=r:r.kind===`choice`&&n&&t.add(n);return t}function GH(e){return e.replace(/```await-choices\b[\s\S]*?(```|$)/g,``).trim()}function KH({text:e}){let{shown:t}=ai(e,!0,!1);return(0,Y.jsx)(`div`,{className:`min-w-0 flex-1 font-sans text-foreground`,children:(0,Y.jsx)(Xn,{text:t,fade:!0})})}function qH({text:e}){let{shown:t,done:n}=ai(e,!1);return(0,Y.jsx)(`div`,{className:`min-w-0 flex-1 font-sans text-foreground`,children:(0,Y.jsx)(Xn,{text:t,fade:!n})})}function JH({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)(Ir,{className:`h-3.5 w-3.5`,"aria-hidden":!0}):(0,Y.jsx)(Pt,{className:`h-3.5 w-3.5`,"aria-hidden":!0})})}function YH({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)(JH,{text:e}),t!==void 0&&(0,Y.jsx)(`time`,{dateTime:t,title:new Date(t).toLocaleString(),className:`px-1 text-[11px]`,children:xt(t)})]})}var XH=8,ZH=600;function QH(e){return e.length>ZH||e.trim().split(`
|
|
137
|
-
`).length>XH}function $H({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 eU=`group/row -mx-1.5 mt-2 flex items-start gap-2 rounded-sm px-1.5`;function tU({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)(NN,{files:e,onOpen:t}),n&&(0,Y.jsx)(YH,{text:n.text,at:n.at})]})}function nU({text:e,at:t,waiting:n,attached:r,fresh:i=!1}){let[a,o]=(0,J.useState)(!1),s=QH(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)(Xn,{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)(rU,{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:xt(t)}),(0,Y.jsx)(JH,{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)(Pc,{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 rU({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)(B,{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 iU(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 aU(e){return e.kind===`driver`&&(e.event.type===`action`||e.event.type===`thought`)?{...e.event}:void 0}function oU(e){return e.kind===`driver`&&e.event.type===`output`?e.event:void 0}function sU(e,t=!1){let n=e[e.length-1],r=t&&n!==void 0?aU(n):void 0;if(r?.type===`action`)return{...sU(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=oU(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=aU(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 cU({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 lU({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)(B,{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 uU=`ml-auto shrink-0 pt-0.5 text-[10px] tabular-nums text-muted-foreground opacity-0 transition-opacity group-hover/row:opacity-100`,dU=`subagent`,fU=8,pU=[],mU=[],hU={};function gU(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 _U(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<=fU&&(n.scrollTop=n.scrollHeight)});return o.observe(r),o.observe(n),()=>o.disconnect()},[e,t])}function vU({sent:e}){let{scrollToEnd:t}=gH(),n=(0,J.useRef)(e);return(0,J.useLayoutEffect)(()=>{e>n.current&&t({behavior:`smooth`}),n.current=e},[e,t]),null}function yU({events:e,writing:t=``,sending:n,working:r=!1,queued:i=mU,waitingOn:a=0,stick:o=!0,openAt:s,head:c,tail:l,projectId:u,agentId:d,onSaid:f,subagents:p=pU,doing:m=hU,setup:h,onOpenSubagent:g,onOpenChange:_,onOpenScreen:v}){let y=(0,J.useMemo)(()=>HH(e),[e]),b=(0,J.useMemo)(()=>u?VH(y):void 0,[u,y]),x=(0,J.useMemo)(()=>Yi(y),[y]),S=(0,J.useMemo)(()=>UH(y),[y]),C=h?.workspace,w=(0,J.useMemo)(()=>fN(y,C),[y,C]),T=(0,J.useMemo)(()=>new Map(y.map((e,t)=>[e,String(t)])),[y]),E=(0,J.useMemo)(()=>WH(y),[y]),D=(0,J.useMemo)(()=>vl(y),[y]),O=(0,J.useMemo)(()=>yl(y),[y]),k=RH(y).filter(e=>gU(e)&&!b?.hidden.has(e)&&!x.hidden.has(e)&&!O.has(e)),A=n===void 0?void 0:cV(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=AH(e);return t!==null&&E.has(e)?GH(t):t},te=GH(t),I=Cn()||te!==``,L=P.filter(e=>!S.has(e)&&ee(e)!==``),{rows:R,steps:ne,current:re}=sU(L,r&&!te),ie=L.length>0&&PH(L[L.length-1]),ae=-1,z;F.forEach((e,t)=>{e.kind===`driver`&&(e.event.type===`result`?(ae=t,z=void 0):PH(e)?(ae=-1,z=void 0):ae>=0&&z===void 0&&iU(e)&&(z=e.at))});let oe=Ol(y),B=ae>=0&&z===void 0&&ae>F.findIndex(PH)&&!F.slice(ae+1).some(PH)||oe.waiting,se=(0,J.useRef)(void 0);M!==void 0&&(se.current=M);let ce=[...L].reverse().find(PH),le=se.current!==void 0&&ce!==void 0&&ce!==N&&F.find(e=>PH(e)&&e!==N&&e.at!==void 0&&e.at>se.current)===ce,ue=NH(z,oe.wokeAt)??(le||N!==void 0&&ce===N?se.current:ce?.at)??L[L.length-1]?.at,de=new Map;for(let e of R){let t=e.kind===`driver`&&e.event.type===`start`?gl(e.event.prompt,p):void 0;t&&de.set(e,t)}let fe=e=>T.get(e)??`sending`,pe=e=>de.has(e)?dU:jH(e),me=[...p.map(e=>xl(e,m[e.id])),...D.map(e=>Sl(e,r,y[0]?.at??new Date(0).toISOString()))],he=new Map(D.flatMap(e=>{let t=El(y,e.id);return t===void 0?[]:[[`call:${e.id}`,t]]})),ge=-1;F.forEach((e,t)=>{PH(e)&&(ge=t)});let _e=F.slice(ge+1).some(e=>e.kind===`driver`&&e.event.type===`text`&&e.event.subagent===void 0)?F.slice(ge+1).flatMap(e=>e.kind===`driver`&&e.event.type===`tokens`?[e.event.tokens]:[]).at(-1):void 0,ve=y.some(e=>e.kind===`session-update`),ye=re===void 0?void 0:L[L.length-1],be=R[R.length-1],xe=ye===void 0?void 0:be!==void 0&&ne.has(be)?be:ye,Se=ye!==void 0&&xe===ye?[...R,ye]:R;ye!==void 0&&xe===ye&&ne.set(ye,[]);let Ce=Cl(R,me,he,e=>PH(e)||e.kind===`driver`&&e.event.type===`text`),we=e=>{let t=Ce.get(e);if(!t)return null;let n=t[0];return(0,Y.jsx)(OH,{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)(CV,{steps:t,lead:je&&e===Te?Ae:void 0,onOpen:g})},`subagent-${n.kind}-${n.row.key}`)},Te=h===void 0?-1:R.length>0&&PH(R[0])?1:0,Ee=h!==void 0&&r&&!te&&ie&&!ve&&L.filter(PH).length===1,De=y.find(PH),Oe=De?.kind===`driver`&&De.event.type===`start`?De.event.added:void 0,ke=h!==void 0&&(0,Y.jsx)(vV,{setup:h,working:r,added:Oe,...Ee?{live:{since:ue}}:{}}),Ae=h!==void 0&&(0,Y.jsx)(vV,{setup:h,working:r,added:Oe,nested:!0}),V=ke!==!1&&!_V(h,r)&&!Ee&&Te>=0,je=V&&Ce.has(Te),Me=V&&!je&&R[Te]!==void 0&&ne.has(R[Te]),Ne=ke&&!Me&&!je&&(0,Y.jsx)(OH,{messageId:`setup`,className:`-mx-1.5 flex items-start gap-2 rounded-sm px-1.5 empty:hidden`,children:ke},`setup`),Pe=(0,J.useRef)(null),Fe=(0,J.useRef)(null);_U(Pe,Fe);let Ie=new Map,Le=new Map,Re,ze=[];for(let e of R){let t=ee(e),n=b?.rows.get(e);if(PH(e)){if(de.has(e)||t!==null&&cV(t))continue;Re&&(w.ended.has(e)?Le.set(e,{text:Re.text,at:Re.row.at}):Ie.set(Re.row,Re.text)),Re=void 0,ze=[]}else t===null?n&&(Re={row:e,text:ze.length>0?ze.join(`
|
|
138
|
-
|
|
139
|
-
`):n.choice.title}):(ze.push(t),Re={row:e,text:ze.join(`
|
|
140
|
-
|
|
141
|
-
`)})}Re&&!r&&n===void 0&&(w.last.length>0?Le.set(null,{text:Re.text,at:Re.row.at}):Ie.set(Re.row,Re.text));let Be=[...R].reverse().find(e=>b?.rows.has(e)&&b.rows.get(e)?.pick===void 0&&!b.rows.get(e)?.passed);return(0,Y.jsxs)(wH,{autoScroll:o,defaultScrollPosition:s??(o?`end`:`start`),children:[(0,Y.jsx)(vU,{sent:(n===void 0||j?0:1)+i.length}),(0,Y.jsxs)(TH,{className:`isolate flex-1`,children:[(0,Y.jsx)(EH,{ref:Pe,"aria-label":`Agent output`,className:`scroll-pb-(--chat-bottom)`,children:(0,Y.jsxs)(DH,{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:Fe,"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)(OH,{messageId:`head`,className:`-mx-1.5 rounded-sm px-1.5`,children:c}),Se.map((e,t,n)=>{let r=MH(e),i=r??ee(e),a=b?.rows.get(e),o=t>0?n[t-1]:void 0,s=de.get(e),c=!o||(Ce.has(t)?!s:pe(o)!==pe(e)),l=e.at,p=PH(e)&&!s||r!==void 0,m=lV(e),h=p&&i!==null?cV(i):void 0,g=e===j;return(0,Y.jsxs)(J.Fragment,{children:[w.ended.has(e)&&(0,Y.jsx)(OH,{messageId:`changes-${fe(e)}`,className:eU,children:(0,Y.jsx)(tU,{files:w.ended.get(e),onOpen:_,footer:Le.get(e)})}),fe(e)===`sending`&&w.last.length>0&&(0,Y.jsx)(OH,{messageId:`changes-last`,className:eU,children:(0,Y.jsx)(tU,{files:w.last,onOpen:_})}),t===Te&&Ne,we(t),(0,Y.jsxs)(OH,{messageId:fe(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?``:LH(e)}`,children:[h?(0,Y.jsx)($H,{...h}):g&&A?(0,Y.jsx)($H,{...A}):p&&i!==null?(0,Y.jsx)(nU,{text:i,at:l,attached:e.kind===`driver`&&e.event.type===`start`?e.event.attached:void 0,fresh:fe(e)===`sending`}):s?(0,Y.jsx)(SV,{name:xl(s.agent,void 0).name,text:Dl(s.rest),status:s.status,detail:s.detail}):i===null?ne.has(e)?(0,Y.jsx)(aP,{steps:ne.get(e),lead:Me&&t===Te?Ae:void 0,live:e===xe&&re!==void 0?{call:re,since:ue}:void 0}):a?.passed?(0,Y.jsx)(BH,{choice:a.choice,footer:Ie.has(e)?(0,Y.jsx)(YH,{text:Ie.get(e),at:l}):void 0}):a&&a.pick===void 0&&u!==void 0&&d!==void 0?I?null:(0,Y.jsxs)(`div`,{className:`mt-1 flex min-w-0 flex-1 flex-col gap-1.5`,children:[(0,Y.jsx)(hV,{projectId:u,agentId:d,choice:a.choice,active:e===Be,onSaid:f},`${d}:${a.choice.id}`),Ie.has(e)&&(0,Y.jsx)(YH,{text:Ie.get(e),at:l})]}):a?.pick===void 0?m?(0,Y.jsx)(cU,{words:m,tone:IH(e)}):e.kind===`screen`?(0,Y.jsx)(lU,{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 ${IH(e)||`text-foreground`}`,children:(Ii(e)??``).trim()}):(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1 font-sans`,children:[(0,Y.jsx)(dV,{choice:a.choice,pick:a.pick}),Ie.has(e)&&(0,Y.jsx)(YH,{text:Ie.get(e),at:l})]}):Ie.has(e)?(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1.5`,children:[(0,Y.jsx)(qH,{text:i}),(0,Y.jsx)(YH,{text:Ie.get(e),at:l})]}):(0,Y.jsx)(qH,{text:i}),!p&&!s&&i===null&&c&&l!==void 0&&!Ie.has(e)&&!ne.has(e)&&(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(`span`,{className:uU}),children:zH(l)}),(0,Y.jsx)(H,{children:new Date(l).toLocaleString()})]})]})]},fe(e))}),Se.length===Te&&Ne,we(Se.length),te&&(0,Y.jsx)(OH,{messageId:`writing`,className:`-mx-1.5 flex items-start gap-2 rounded-sm px-1.5`,children:(0,Y.jsx)(KH,{text:te})}),!r&&n===void 0&&w.last.length>0&&(0,Y.jsx)(OH,{messageId:`changes-last`,className:eU,children:(0,Y.jsx)(tU,{files:w.last,onOpen:_,footer:Le.get(null)})}),R.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&&!Ee&&!B&&re===void 0&&(0,Y.jsx)(tP,{since:ue,tokens:_e})}),!r&&a>0&&(0,Y.jsx)(OH,{messageId:`waiting-on`,className:`-mx-1.5 flex items-center gap-2 rounded-sm px-1.5`,children:(0,Y.jsx)(tP,{word:`Waiting for ${a} ${a===1?`subagent`:`subagents`}`})}),i.map(({id:e,text:t,...n})=>(0,Y.jsx)(OH,{messageId:`queued-${e}`,className:`-mx-1.5 flex items-start gap-2 rounded-sm px-1.5`,children:(0,Y.jsx)(nU,{text:t,waiting:n,fresh:!0})},`queued-${e}`)),l]})}),(0,Y.jsx)(kH,{className:`data-[direction=end]:bottom-[calc(var(--chat-bottom,0px)+1.25rem)]`})]})]})}function bU({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)(eV,{children:c}):(0,Y.jsx)(yU,{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 xU({target:e,events:t,live:n}){if(e!==`actions`)return null;let r=YP(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)(bc,{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)(sc,{className:`h-3.5 w-3.5`,"aria-hidden":!0})]})]})}function SU(){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)(Gc,{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 CU=4e3;function wU({target:e,events:t,projectId:n,agentId:r}){let i=e===`web`?XP(t):void 0,a=FU(i?.id),o=PU(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)(nc,{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)(pe,{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)(sc,{className:`h-3.5 w-3.5`,"aria-hidden":!0})]})]})]}),a&&i&&(!o||o.state===`failed`)&&(0,Y.jsx)(EU,{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)(DU,{answer:o,url:i.url,sessionId:i.id})]}):null}function TU(e){return async t=>{let n=await wo(e,Array.isArray(t)?t:[t]);if(!n.ok)throw Error(n.error??`could not queue the answer`)}}function EU({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)(Gc,{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)(hV,{projectId:r,agentId:i,choice:oa(e),send:TU(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)(sc,{className:`h-3 w-3`,"aria-hidden":!0})]})]})}function DU({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)(fe,{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 To(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)(Ir,{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)(sc,{className:`h-3 w-3`,"aria-hidden":!0})]})]})})}var OU=[/^Arrow keys move the tile/i,/^Show message actions$/i,/^(Claude\s+)?(Fable|Opus|Sonnet|Haiku)(\s+\d[\d.]*)?$/i];function kU(e){return e.split(`
|
|
142
|
-
`).filter(e=>!OU.some(t=>t.test(e.trim()))).join(`
|
|
143
|
-
`).replace(/\n{3,}/g,`
|
|
144
|
-
|
|
145
|
-
`).trim()}function AU({target:e,events:t}){let n=e===`web`?XP(t):void 0,r=NU(n?.id).map(e=>({...e,text:kU(e.text)})).filter(e=>e.text),i=MU(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)(nc,{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 ›`}),` `,jU(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)(fe,{className:`h-3.5 w-3.5 shrink-0 animate-spin text-primary`,"aria-hidden":!0}),`Connecting to the cloud session…`]})]})}function jU(e){return e.split(`
|
|
146
|
-
`).find(e=>e.trim())??``}function MU(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 NU(e){let[t,n]=(0,J.useState)([]);return(0,J.useEffect)(()=>{if(!e){n([]);return}let t=!0,r=()=>{yo(e).then(e=>{t&&n(e)}).catch(()=>{})};r();let i=setInterval(r,CU);return()=>{t=!1,clearInterval(i)}},[e]),t}function PU(e){let[t,n]=(0,J.useState)(void 0);return(0,J.useEffect)(()=>{if(!e){n(void 0);return}let t=!0,r=()=>{vo(e).then(e=>{t&&n(e??void 0)}).catch(()=>{})};r();let i=setInterval(r,CU);return()=>{t=!1,clearInterval(i)}},[e]),t}function FU(e){let[t,n]=(0,J.useState)(void 0);return(0,J.useEffect)(()=>{if(!e){n(void 0);return}let t=!0,r=()=>{ho(e).then(e=>{t&&n(e??void 0)}).catch(()=>{})};r();let i=setInterval(r,CU);return()=>{t=!1,clearInterval(i)}},[e]),t}function IU({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)(f,{added:e.insertions,removed:e.deletions,zeros:!0,className:`text-[11px] font-medium`})})}var LU=`Commit your work.`,RU=`bg-background/60 hover:bg-background`;function zU(e){return e!==void 0&&!/^[0-9a-f]{40}$/.test(e)?e.replace(/^origin\//,``):`the main branch`}function BU(e){return e===LU}function VU(){return(0,Y.jsx)(KU,{children:`Committing…`})}function HU({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)(KU,{children:`landed`}):a.empty?(0,Y.jsx)(WU,{paths:a.pendingFiles??[]}):(0,Y.jsx)(KU,{children:`not landed`});if(a.landed)return(0,Y.jsx)(KU,{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)(WU,{paths:l,committed:!a.empty}),(0,Y.jsx)(V,{size:`xs`,variant:`ghost`,className:RU,disabled:o,onClick:()=>{i?.(LU),c(`commit`,()=>Do(e,LU,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`,()=>Io(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)(KU,{children:`not in the PR yet`}),(0,Y.jsx)(V,{size:`xs`,variant:`ghost`,className:RU,disabled:o,onClick:u,children:s===`push`?`Updating PR…`:`Update PR`})]}):(0,Y.jsx)(V,{size:`xs`,variant:`ghost`,className:RU,disabled:o,onClick:()=>c(`merge`,()=>Fo(e,t),`Could not merge the pull request.`),children:s===`merge`?`Merging…`:`Merge PR`})}if(!a.exists)return a.unchanged?null:(0,Y.jsx)(KU,{children:`Branch gone — nothing to open a PR from.`});if(a.empty)return a.commits.length>0?(0,Y.jsxs)(KU,{children:[`Nothing to `,a.hasRemote?`publish`:`merge`,`: the commits cancel out.`]}):null;if(a.merged)return(0,Y.jsxs)(KU,{children:[`Merged into `,zU(a.base),`.`]});if(!a.hasRemote)return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(KU,{children:[`Not in `,zU(a.base),` yet.`]}),(0,Y.jsx)(V,{size:`xs`,variant:`ghost`,className:RU,disabled:o,onClick:()=>c(`merge-branch`,()=>Lo(e,t),`Could not merge the branch.`),children:s===`merge-branch`?`Merging…`:`Merge`})]});if(!a.gitHost)return a.pushed?(0,Y.jsx)(KU,{children:`Pushed — no git host package to open a pull request with.`}):(0,Y.jsx)(Y.Fragment,{children:(0,Y.jsx)(V,{size:`xs`,variant:`ghost`,className:RU,disabled:o,onClick:u,children:s===`push`?`Publishing…`:`Publish branch`})});let d=n=>c(`pr`,()=>Po(e,t,{draft:n}),`Could not open the pull request.`);return(0,Y.jsxs)(Y.Fragment,{children:[a.carries&&(0,Y.jsx)(UU,{carries:a.carries}),(0,Y.jsxs)(`span`,{className:`inline-flex`,children:[(0,Y.jsx)(V,{size:`xs`,variant:`ghost`,className:q(RU,`rounded-r-none pr-1.5`),disabled:o,onClick:()=>d(!1),children:s===`pr`?`Opening PR…`:s===`push`?`Publishing…`:`Open PR`}),(0,Y.jsxs)(Mn,{children:[(0,Y.jsx)(mt,{type:`button`,"aria-label":`Other choices`,disabled:o,className:q(st({size:`xs`,variant:`ghost`}),RU,`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)(ke,{className:`h-3.5 w-3.5`})}),(0,Y.jsxs)(hr,{align:`end`,className:`min-w-[10rem]`,children:[(0,Y.jsxs)(K,{onClick:()=>d(!0),children:[(0,Y.jsx)(vc,{className:`h-3.5 w-3.5`}),`Create draft PR`]}),!a.pushed&&(0,Y.jsxs)(K,{onClick:u,children:[(0,Y.jsx)(Kc,{className:`h-3.5 w-3.5`}),`Publish branch`]})]})]})]})]})}function UU({carries:e}){let t=zU(e.base),n=`${e.files} file${e.files===1?``:`s`}`;return(0,Y.jsxs)(KU,{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 WU({paths:e,committed:t=!1}){return e.length===0?null:(0,Y.jsxs)(KU,{title:e.join(`
|
|
147
|
-
`),children:[t?``:`Nothing committed — `,GU(e),` left uncommitted.`]})}function GU(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 KU({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 qU(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 JU({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 YU({events:e,card:t,pr:n}){let r=xr(t?.driver),i=r?$r[r]:t?.driver,a=Nn(),o=t?.model&&ur(r?a?.[r]:void 0,t.model),{costUsd:s,turns:c}=qU(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)(JU,{label:`Agent`,value:i}),o&&(0,Y.jsx)(JU,{label:`Model`,value:o}),s!==void 0&&(0,Y.jsx)(JU,{label:`Spent`,value:`$${s.toFixed(2)}`}),c>0&&(0,Y.jsx)(JU,{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 XU(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 ZU({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=`${XU(e)} of ${XU(t)} used · ${i}% of the context left`;return(0,Y.jsxs)(yi,{children:[(0,Y.jsx)(pi,{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)(H,{children:a})]})}var QU=1e3,$U=5e3,eW=2e3,tW=[],nW={};function rW({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=tW}){let[b,x]=(0,J.useState)(0),S=mn(r===!1?()=>no(e,t):null,null,[e,t,r,b],{remember:od(e,t)}),C=y.filter(e=>e.status===`running`).map(e=>e.id).join(`,`),w=Date.now(),T=y.filter(e=>pl(e,w)).length,{value:E}=xi(C?()=>ro(e,C.split(`,`)):null,nW,eW,[e,C],`previous`),D=mn(r===!1?()=>$a(e):null,[],[e,t,r],{remember:`retained:${e}`}),[O,k]=(0,J.useState)(!1),A=(0,J.useCallback)(()=>k(!0),[]),j=mn(()=>fo(e),null,[e],{remember:`git-host-home:${e}`}),M=j?.name===`GitHub`?j.url:void 0;(0,J.useEffect)(()=>{k(!1),x(0)},[t]);let N=r===!1&&!O&&D.includes(t),P=r===!0,F=i?.parent!==void 0,{workspace:ee,branch:te,base:I,driver:L,model:R}=i??{},ne=l!==void 0&&l!==`local`||u!==void 0,re=(0,J.useMemo)(()=>({workspace:ee,branch:te,base:I,driver:L,model:R,elsewhere:ne}),[ee,te,I,L,R,ne]),ie=xr(L??a?.driver),ae=Nn(),z=R??a?.model,oe=z?ur(ie?ae?.[ie]:void 0,z):void 0,B=i?.effort??a?.effort,se=[oe,B?tj(B):void 0].filter(Boolean).join(` `)||void 0,ce=qr(ae,ie,R),le=u??(l===`web`?`Cloud`:l===`actions`?`GitHub Actions`:l===`remote`?`Another machine`:i?.otherHost&&i.host?i.host:_d()),ue=JB(i),de=YB(i,mn(ue?()=>to(e,t):null,null,[e,t,ue],{remember:`main-branch:${e}:${t}`}))??a?.branch,[fe,pe]=(0,J.useState)(!1),{runSlots:me,panels:he}=Fn(),ge=he.some(t=>t.changes&&t.projects.includes(e)),_e=(0,J.useMemo)(()=>ge?n=>kR(rR(e,t),n):void 0,[ge,e,t]),ve=he.some(t=>t.files&&t.projects.includes(e)),ye=(0,J.useMemo)(()=>ve?n=>jR(rR(e,t),n):void 0,[ve,e,t]),be=he.some(t=>t.screen&&t.projects.includes(e)),xe=(0,J.useMemo)(()=>be?()=>NR(rR(e,t)):void 0,[be,e,t]),Se=(0,J.useMemo)(()=>n=>FR(rR(e,t),n),[e,t]),Ce=me.filter(t=>t.projects.includes(e)),we=(0,J.useCallback)(()=>pe(e=>!e),[]),Te=(!S?.length||n.length===0||JSON.stringify(n[0])===JSON.stringify(S[0]))&&n.length>(S?.length??0),Ee=P?n:S?.length&&!Te?S:n;(0,J.useEffect)(()=>{r===!1&&S!==null&&Te&&x(n.length)},[r,S,Te,n.length]);let[De,Oe]=(0,J.useState)(null),ke=KP(Ee),Ae=P||ke&&(Te||De===t);(0,J.useEffect)(()=>{ke&&Te&&S!==null?Oe(t):ke||Oe(null)},[ke,Te,S,t]);let[V,je]=(0,J.useState)(null);(0,J.useEffect)(()=>je(null),[t]);let Me=Ee.filter(e=>e.kind===`driver`&&e.event.type===`start`).length;(0,J.useEffect)(()=>{V&&Me>V.prompts&&je(null)},[V,Me]);let Ne=(0,J.useCallback)(e=>je(e===null?null:{text:e,prompts:Me}),[Me]),[Pe,Fe]=(0,J.useState)([]);(0,J.useEffect)(()=>Fe([]),[t]);let Ie=(0,J.useMemo)(()=>{let e=new Set(Ee.flatMap(e=>e.kind===`driver`&&e.event.type===`steered`&&e.event.id!==void 0?[e.event.id]:[])),t=Ee.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)},[Ee]),Le=Pe.filter(e=>!Ie(e));(0,J.useEffect)(()=>{Le.length!==Pe.length&&Fe(Le)},[Le.length,Pe.length]),(0,J.useEffect)(()=>{if(Pe.length===0||Ae)return;let e=setTimeout(()=>Fe([]),$U);return()=>clearTimeout(e)},[Pe.length,Ae]);let Re=(0,J.useCallback)(e=>Fe(t=>[...t,{...e,prompts:Me}]),[Me]),ze=(0,J.useRef)(null),Be=Le.map(({prompts:n,...r})=>({...r,onSendNow:()=>void ko(e,t),onEdit:()=>{Fe(e=>e.filter(e=>e.id!==r.id)),Oo(e,t,r.id),ze.current?.(r.text)}})),Ve=(V&&Me<=V.prompts?V.text:void 0)??(m&&Me===0?m:void 0),He=Ae||Ve!==void 0,Ue=WB(e,t,ke),We=UB(e,t,r===!1&&!He,i?.saving===!0,He),Ge=We.handoff!==null&&We.handoff.exists&&!We.handoff.empty,Ke=i?.saving&&!Ge?{...We,handoff:null,loaded:!1}:We,qe=Ve??[...Ee].reverse().find(e=>e.kind===`driver`&&e.event.type===`start`),Je=BU(typeof qe==`string`?qe:qe?.kind===`driver`&&qe.event.type===`start`?qe.event.prompt:void 0)&&(He||r===!1&&!Ke.loaded),Ye=P?void 0:qP(Ee)??(i?JP(i.status):void 0),Xe=r===!1&&Ke.loaded,[Ze,Qe]=(0,J.useState)(null);(0,J.useEffect)(()=>{let e=setTimeout(()=>Qe(t),QU);return()=>clearTimeout(e)},[t]);let $e=i?.saving===!0||Ke.loaded&&!Ke.handoff?.prPending,et=P||Ze===t||S!==null&&$e,[tt,nt]=(0,J.useState)(null),rt=tt===t||P||S!==null||Ze===t;(0,J.useEffect)(()=>{rt&&nt(t)},[rt,t]);let it=et&&r===!1&&!He&&T===0,at=Ke.handoff,ot=(0,J.useMemo)(()=>{let e=Ue?.branch??at?.branch,t=Ue?.pr??at?.pr;return e===void 0?Ue:{...Ue,branch:e,...t?{pr:t}:{}}},[Ue,at]),st=ot?.pr,ct=r===!1&&(at?.landed===!0||(at?.merged===!0||st?.state===`MERGED`||st?.state===`CLOSED`)&&!at?.pendingFiles?.length&&at?.movedPastPr!==!0),lt=(0,J.useRef)({agentId:null,say:!1}),ut=lt.current.agentId===t&<.current.say,dt=!ut&&(Ue?.pr!==void 0&&Ue.prPending===!0||r===!1&&at?.prPending===!0),ft=!ct&&(Je||!dt&&(r===!1?Ke.loaded&&(st!==void 0||HB(at))||ut:r===!0&&(st!==void 0||Ue?.checkout?.dirty===!0)||ut));lt.current={agentId:t,say:ft};let pt=i?.earlierPrs,H=(0,J.useMemo)(()=>[...pt??[],...st&&!pt?.some(e=>e.url===st.url)?[st]:[]],[pt,st]),mt=(0,Y.jsx)(qB,{runsOn:le,target:l,remoteKind:i?.remoteKind,elsewhere:ne||i?.otherHost===!0,projectName:c,startedFrom:de,worksOn:ot?.branch??te,gitHost:j,gitAccount:i?.gitAccount??a?.gitAccount}),ht=[t,ot?.branch??``,at?.commits.length??0,at?.pendingFiles?.length??0,at?.insertions??0,at?.deletions??0,at?.pushed??!1,st?.number??``,st?.state??``].join(`|`);return(0,Y.jsx)($B,{top:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(GB,{projectId:e,agentId:t,events:Ee,label:o,naming:s,retainedWorktree:N,onWorktreeRemoved:A,onDeleted:_,onProjectRemoved:v,expanded:fe,onToggle:we,ready:et,checkout:Ue}),fe&&(0,Y.jsx)(YU,{events:Ee,card:i,...Ue?.pr?{pr:Ue.pr}:{}}),(0,Y.jsx)(xU,{target:l,events:Ee,live:P}),(0,Y.jsx)(wU,{target:l,events:Ee,projectId:e,agentId:t}),f&&(0,Y.jsx)(SU,{})]}),bottom:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(QB,{checkout:ot,summary:et&&(Xe?(0,Y.jsx)(IU,{handoff:Ke.handoff,subagent:F}):Ce.map(n=>{let r=n.summary;return r?(0,Y.jsx)(lF,{package:n.package,label:`run summary`,children:(0,Y.jsx)(r,{projectId:e,agentId:t,working:P})},n.package):null})),actions:Je?(0,Y.jsx)(VU,{}):it?(0,Y.jsx)(HU,{projectId:e,agentId:t,state:Ke,subagent:F,onAsked:Ne}):void 0,error:et&&Xe?Ke.error:void 0,show:ft,state:ht}),i?.otherHost&&i.host?(0,Y.jsxs)(`div`,{className:`mx-auto w-full max-w-3xl p-2`,children:[mt,(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)(ZB,{projectId:e,agentId:t,live:Ae,files:d,onAgentStarted:h,onSending:Ne,onQueued:Re,editInBox:ze,model:se,...ce===void 0?{}:{context:(0,Y.jsx)(ZU,{used:i?.contextTokens??0,size:ce})},controls:(0,Y.jsx)(XB,{prs:H}),contextSet:g,publish:i?i.publish:a?.publish,prBase:i?.prBase??a?.prBase,row:mt})]}),children:rt?r!==!0&&S===null&&Ee.length===0?(0,Y.jsx)(eV,{children:`Loading agent…`}):(0,Y.jsx)(Ur.Provider,{value:M,children:(0,Y.jsx)(IN.Provider,{value:ye,children:(0,Y.jsx)(bU,{events:Ee,projectId:e,agentId:t,onSaid:Ne,writing:Ae?p:``,...Ve===void 0?{}:{sending:Ve},working:Ae||Ve!==void 0,queued:Be.length>0?Be:void 0,waitingOn:!He&&r===!1&&Ye?.ok!==!1&&!Ye?.waiting?T:0,...Ae?{}:{openAt:`end`,emptyLabel:`This agent has no events.`},...He?{}:{stick:!1},tail:(0,Y.jsx)(AU,{target:l,events:Ee}),subagents:y,doing:E,setup:re,onOpenSubagent:Se,onOpenChange:_e,onOpenScreen:xe},t)})}):null})}var iW=2e3,aW=6e4,oW=[];function sW({projectId:e,agentId:t,events:n,subagents:r,live:i,onOpenAgent:a}){let o=IR(rR(e,t)),s=(0,J.useMemo)(()=>vl(n),[n]),c=o?.key,l=r.find(e=>`run:${e.id}`===c),u=s.find(e=>`call:${e.id}`===c),d=l?xl(l,void 0):u?Sl(u,i,n[0]?.at??new Date(0).toISOString()):void 0;return d?(0,Y.jsx)(cW,{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 cW({row:e,projectId:t,events:n,onOpenAgent:r}){let i=e.agent?.id,{value:a,loaded:o}=xi(i?()=>no(t,i):null,oW,e.working?iW:aW,[t,i,e.working],i?{remember:`subagent-log:${t}:${i}`}:void 0),s=e.call?.id,c=(0,J.useMemo)(()=>s===void 0?dW(a,e.prompt):bl(n,s).map(fW),[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)(k,{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)(_t,{children:(0,Y.jsx)(V,{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)(yU,{events:c,working:e.working,stick:e.working,openAt:`start`,head:(0,Y.jsx)(lW,{row:e}),tail:!e.working&&c.length>0?(0,Y.jsx)(uW,{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 lW({row:e}){let t=Nn();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 `,cn(t,e.model)]}),!e.working&&e.status!==`done`&&(0,Y.jsx)(`span`,{className:rl[e.status]??`text-muted-foreground`,children:e.status}),e.working&&(0,Y.jsx)(LN,{since:e.startedAt})]})]})}function uW({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:`${iP(e.tokens)} tokens`,e.endedAt===void 0?void 0:g(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 dW(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 fW(e){if(e.kind!==`driver`||!(`subagent`in e.event))return e;let{subagent:t,...n}=e.event;return{...e,event:n}}function pW({inBar:e=!1}){let{toggleSidebar:t,openMobile:n}=En();return(0,Y.jsx)(V,{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)(kc,{className:`h-4 w-4`,"aria-hidden":!0})})}function mW({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)(pW,{inBar:!0}),(0,Y.jsx)(`span`,{className:`truncate`,children:e})]})}function hW({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)(V,{variant:`outline`,onClick:r,children:n})]})}function gW(e,t,n){return`/_screen/${e}?project=${encodeURIComponent(t)}&run=${encodeURIComponent(n)}`}async function _W(e,t,n){let r=await fetch(gW(`stream`,e,t),{signal:n}).catch(()=>void 0);return r?.ok&&r.body?r.body:void 0}function vW(e,t,n){return fetch(gW(`input`,e,t),{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(n)}).then(e=>e.ok,()=>!1)}var yW=[1e3,2e3,4e3,8e3];function bW(e){return yW[Math.min(e,yW.length-1)]}var xW=1500;function SW(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,bW(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()},xW):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,xW))):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:ZP(r),[r,t]),lost:a,done:s,writing:l}}var CW=15e3,wW=new Set,TW=new Set,EW,DW=!1,OW=!1,kW=0;function AW(e){if(DW!==e){DW=e;for(let e of[...TW])e()}}function jW(e){kW++;for(let t of[...wW])t(e,kW)}var MW=()=>typeof document>`u`||document.visibilityState!==`hidden`;function NW(){if(EW||typeof EventSource>`u`||wW.size===0||!MW())return;let e=new EventSource(`/_rpc/changes`);EW=e,e.onopen=()=>{AW(!0),OW&&jW(void 0),OW=!0},e.onerror=()=>AW(!1),e.onmessage=e=>{try{let t=JSON.parse(String(e.data));t.kind===`runs`&&typeof t.projectId==`string`&&jW(t.projectId)}catch{}}}function PW(){EW?.close(),EW=void 0,OW=!1,AW(!1)}typeof document<`u`&&document.addEventListener(`visibilitychange`,()=>MW()?NW():PW());function FW(e,t){let n=(n,r)=>{(n===void 0||e===void 0||n===e)&&t(r)};return wW.add(n),NW(),()=>{wW.delete(n),wW.size===0&&PW()}}function IW(){return(0,J.useSyncExternalStore)(e=>(TW.add(e),()=>TW.delete(e)),()=>DW,()=>!1)}function LW(e){return t=>FW(e,t)}function RW(e){return IW()?Math.max(e,CW):e}var zW=3e4;function BW(e,t=null,n=2e3){let{value:r,reload:i,loaded:a}=xi(e?()=>Za(e):null,[],RW(n),[e],void 0,LW(e??void 0)),o=Ia().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||Yc(s,o));return(0,J.useEffect)(()=>{if(!c)return;let e=setInterval(()=>void i(),400),t=setTimeout(()=>clearInterval(e),zW);return()=>{clearInterval(e),clearTimeout(t)}},[c,t,i]),{agents:r,reload:i,loaded:a}}var VW=3e3,HW=new Map;function UW(e,t={}){let n=JSON.stringify([e,t.ids??null,t.since??null]),r=HW.get(n);if(r&&Date.now()-r.at<VW)return r.agents;let i={at:Date.now(),agents:Qa(e,t)};return HW.set(n,i),i.agents.catch(()=>void(HW.get(n)===i&&HW.delete(n))),i.agents}function WW(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 GW(e,t,n){let r=(0,J.useRef)(void 0);r.current??=new aa(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&&WW(a,n)},[e,t])}var KW={keyOf:ra,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},qW={keyOf:ia,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 JW(e,t){GW(e,t,KW)}function YW(e,t){GW(e,t,qW)}function XW(e,t){return`${e>0?`(${e}) `:``}${t?`${t} — `:``}OpenAgent`}function ZW(e,t){(0,J.useEffect)(()=>{typeof document>`u`||(document.title=XW(e,t))},[e,t])}var QW={active:[],queueOpen:0,recent:[]};function $W(){let{value:e,stale:t}=xi(ao,QW,RW(5e3),[],{remember:`overview`,stored:!0},LW(void 0));return{active:e.active,stale:t}}var eG=`/logo.svg`,tG=`/logo-animated.svg`;function nG(e){return e?tG:eG}function rG(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=nG(e);t.getAttribute(`href`)!==n&&t.setAttribute(`href`,n)},[e])}var iG=5e3;function aG(){let[e,t]=(0,J.useState)(!0);return(0,J.useEffect)(()=>{let e=!1,n,r=()=>{if(document.visibilityState===`hidden`){n=setTimeout(r,iG);return}zo().then(()=>{e||(t(!0),n=setTimeout(r,iG))},()=>{e||(t(!1),n=setTimeout(r,iG))})};return n=setTimeout(r,iG),()=>{e=!0,n&&clearTimeout(n)}},[]),e}var oG=[],sG=[],cG={items:[],whole:[]},lG={items:[],whole:[]},uG=[],dG=700;function fG(){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 pG(){let[e,t]=(0,J.useState)(0);(0,J.useEffect)(()=>dP(()=>t(e=>e+1)),[]);let{value:n,loaded:r}=xi(zo,sG,3e4,[e],{remember:`projects`,stored:!0}),i=zn(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)(()=>Pe(s?s.split(`
|
|
151
|
-
`):[],c?c.split(`
|
|
152
|
-
`):[]),[s,c]),u=r&&o,f=(0,J.useMemo)(()=>Qc(n),[n]),{route:p,go:m}=zd(l),{projectId:h,agentId:g}=p,v=p.page??null;(0,J.useEffect)(()=>{u&&m(p,{replace:!0,keepQuery:!0})},[u,l]);let y=p.scope&&n.some(e=>e.id===p.scope)?p.scope:null;(0,J.useEffect)(()=>{y&&wB(y)},[y]);let b=y===null&&(p.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)=>m({...e,...y?{scope:e.scope??e.projectId??y}:{}},t),T=e=>{let{scope:t,...n}=p;if(n.projectId!==null){if(e===null)return m(n,{keepQuery:!0});if(n.projectId!==e)return m(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 m({projectId:null,agentId:null,scope:e});let{pagePath:i,...o}=n;m({...o,...e===null?{}:{scope:e}},{keepQuery:!i?.length})},[E,D]=(0,J.useState)({tick:0,intent:``,id:null,projectId:null,at:0}),O=u?h??y:null,{agents:k,reload:A,loaded:j}=BW(O,E.id!==null&&E.projectId===O?E.id:null,h===null?1e4:2e3),M=Vd(),{context:N,add:F,remove:ee,toggle:te,reset:I}=M;(0,J.useEffect)(()=>{I()},[h,g]);let{value:L}=xi(h?()=>uo(h,g??void 0):null,oG,1e4,[h,g]),{value:R,stale:ne}=xi(so,cG,5e3,[],{remember:`interventions`,stored:!0}),re=h?n.find(e=>e.id===h):void 0,ie=re?f.get(re.id)??re.name:null,ae=y?R.items.filter(e=>e.projectId===y):R.items;ZW(ae.length,ie??(y?f.get(y)??null:null));let z=h!==null&&n.length>0&&!n.some(e=>e.id===h),oe=Ia();JW(ne?cG:R,Ha(oe)&&Ba(oe));let B=Va(oe)&&Ba(oe),{value:se}=xi(B?co:null,lG,15e3,[B],void 0,LW(void 0));YW(se,B);let ce=y===null&&!b,le=RW(1e4),{value:ue,reload:de,loaded:fe}=xi(ce?oo:null,uG,le,[ce],void 0,LW(void 0)),pe=E.id===null?void 0:ue.find(e=>e.agent.id===E.id&&e.projectId===E.projectId),me=ce&&E.id!==null&&Date.now()-E.at<3e4&&(pe===void 0||Yc(pe.agent,oe.nameRuns!==!1));(0,J.useEffect)(()=>{if(!me)return;let e=setInterval(()=>void de(),1e3),t=setTimeout(()=>clearInterval(e),zW);return()=>{clearInterval(e),clearTimeout(t)}},[me,de]);let he=(e,t,n,r,i)=>{let a=n===g&&e===h;D(o=>({tick:a?o.tick:o.tick+1,intent:t,id:n,projectId:e,at:Date.now(),...r?{runsOn:r}:{},...i?{picks:i}:{}})),I(),w({projectId:e,agentId:n}),A(),de(),!a&&oe.nameRuns!==!1&&e!==null&&xo(e,n).then(e=>{e!==void 0&&D(t=>t.id===n?{...t,title:e}:t)},()=>{})},ge=(e,n,r,i,a)=>{i!==void 0&&i!==h&&t(e=>e+1),he(i??h,e,n,r,a)},_e=e=>{w({projectId:h,agentId:e})},ve=e=>{w({projectId:e,agentId:null})},ye=(e,t)=>{w({projectId:e,agentId:t})},be=e=>{w({projectId:e,agentId:null}),I()},xe=()=>{w({projectId:null,agentId:null})},Se=(e=``)=>{m({...p,settings:e},{keepQuery:!0})},Ce=e=>{let{settingsItem:t,...n}=p;m({...n,settings:e},{keepQuery:!0,replace:!0})},we=()=>{let{settings:e,settingsItem:t,...n}=p;m(n,{keepQuery:!0})},Te=e=>{w({projectId:null,agentId:null,page:e})},Ee=or({openAgent:ye,openPage:(e,t,n)=>w({projectId:null,agentId:null,page:e,...t&&t.length?{pagePath:t}:{},...n?{scope:n}:{}}),pageHref:e=>jd({projectId:null,agentId:null,page:e,...y?{scope:y}:{}},l),openSettings:e=>Se(e),gitHostPeople:Zo,startRun:async(e,t,n)=>{let r=await Mo(e,t,yd(oe));return r.ok&&(n?.land??!0?he(e,t,r.agentId):A()),r},configureRun:(e,t)=>{_(t),ve(e)},agents:(e,t)=>UW(e,t),machines:async()=>{let e=await yr(),t=vd(e.name);return{...e,...t===void 0?{}:{name:t}}},addMachine:async(e,t)=>{let n=await Os(e,t);return n.ok?{ok:!0}:n},removeMachine:Ns,renameMachine:async(e,t)=>{let n=await ks(e,t);return n.ok?{ok:!0}:n},renameComputer:async e=>{let t=await As(e);return t.ok?{ok:!0}:t},letMachineIn:cr,machineCode:xn,computersThrough:Bt,machinePerson:Tn,removeMachineDevice:si,machineAccounts:async(e,t)=>{let n=await Zt(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:kr,useLoginsOn:$o,addComputerThrough:async(e,t)=>{let n=await js(e,t);return n.ok?{ok:!0}:n},watchScreen:_W,sendToScreen:vW}),{events:De,lost:Oe,writing:ke}=SW(h,g,E.tick),Ae=De.filter(e=>e.kind===`end`).length;(0,J.useEffect)(()=>{Ae>0&&A()},[Ae]);let V=$W(),je=V.active.length>0;rG(je);let Me=aG(),Ne=g?k.find(e=>e.id===g)??(j?void 0:ue.find(e=>e.projectId===h&&e.agent.id===g)?.agent):void 0,Fe=(0,J.useMemo)(()=>g?ll(k,g):[],[k,g]),Ie=()=>{t(e=>e+1),m({projectId:null,agentId:null})},Le=re?.machine===void 0?Ie:void 0,Re=()=>{if(v)return C?(0,Y.jsx)(dF,{page:C,projects:x,projectId:y,path:p.pagePath??[]}):u?(0,Y.jsx)(hW,{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}".`:p.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:xe}):null;if(!h)return b?null:(0,Y.jsx)(pB,{onSelectProject:ve,onSelectAgent:ye,onAgentStarted:he,interventions:ae,interventionsStale:ne,active:V,projects:n,scope:y});if(z)return(0,Y.jsx)(hW,{title:`No such project`,detail:`No project is registered as "${h}". It may have been removed, or the link may be from another machine.`,actionLabel:`Go to the Overview`,onAction:xe});if(g===null)return(0,Y.jsx)(sz,{projectId:h,projectName:ie,home:re?.machine,waiting:ae,events:De,onAgentStarted:ge,files:L,context:N,addContext:F,removeContext:ee,toggleContext:te,onOpenAgent:ye,errors:re?.errors,onProjectRemoved:Ie,onSkillsChanged:()=>t(e=>e+1)});let e=g===E.id?E.title:void 0;return Ne?(0,Y.jsx)(rW,{projectId:h,agentId:g,events:De,live:Ne.status===`running`,card:Ne,label:Ne.parent===void 0?Yc(Ne,oe.nameRuns!==!1)?e:Jc(Ne):ul(Ne),naming:Ne.parent===void 0&&Yc(Ne,oe.nameRuns!==!1)&&e===void 0,projectName:ie,files:L,lost:Oe&&Me,writing:ke,startedWith:g===E.id?E.intent:void 0,picks:g===E.id?E.picks:void 0,target:Ne.target,remoteLabel:Ne.remoteLabel,subagents:Fe,onAgentStarted:ge,contextSet:M,onDeleted:()=>{_e(null),A()},onProjectRemoved:Le}):g===E.id||!j?(0,Y.jsx)(rW,{projectId:h,agentId:g,events:De,live:g===E.id||null,picks:g===E.id?E.picks:void 0,label:oe.nameRuns===!1?E.intent||void 0:e,naming:g===E.id&&oe.nameRuns!==!1&&e===void 0,projectName:ie,remoteLabel:g===E.id?E.runsOn:void 0,files:L,lost:Oe&&Me,writing:ke,startedWith:g===E.id?E.intent:void 0,onAgentStarted:ge,contextSet:M,onProjectRemoved:Le}):(0,Y.jsx)(hW,{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:()=>_e(null)})},ze=br(),Be=Qu(),Ve=rd(),He=v?C?.label??``:h===null?`Overview`:null,Ue=He!==null;return(0,J.useEffect)(()=>{if(Ue)return;document.documentElement.dataset.pinned=`true`;let e=window.visualViewport,t=document.documentElement,n=()=>{if(e){if(!fG()){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()+dG,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)}},[Ue]),(0,Y.jsx)(fr.Provider,{value:i,children:(0,Y.jsx)(P.Provider,{value:Ee,children:(0,Y.jsx)(Oa.Provider,{value:h,children:(0,Y.jsx)(tl.Provider,{value:f,children:(0,Y.jsxs)(d,{open:!Ve,onOpenChange:e=>nd(!e),className:Ue?`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":`${Be}px`,...Me?{}:{"--top-banner":`2.25rem`}},children:[!Me&&(0,Y.jsx)(`div`,{role:`alert`,className:q(`h-(--top-banner) shrink-0 bg-background`,Ue&&`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)(Gc,{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`,Ue?`overflow-x-clip`:`overflow-hidden`),children:[(0,Y.jsx)(ld,{pageScrolls:Ue,projectId:h,scope:y,scopePending:b,listLoaded:y===null?fe:j,onScope:T,homeHref:jd({projectId:null,agentId:null,...y?{scope:y}:{}},l),agents:k,selectedAgentId:g,onSelect:e=>w({projectId:y??h,agentId:e}),recentAgents:ue,onSelectRecent:ye,projects:n,onNewAgentInProject:be,onProjectAdded:()=>{t(e=>e+1),A()},startTick:E.tick,startIntent:E.intent,startTitle:E.title,startId:E.id,startProjectName:E.projectId===null?void 0:f.get(E.projectId),working:je,onDashboard:xe,onSettings:Se,pages:S,activePage:v,onPage:Te,interventionCount:ae.length}),ze&&!Ue&&(0,Y.jsx)(pW,{}),(0,Y.jsx)(KR,{projectId:h,agentId:g,enabled:!v,files:L,context:N,toggleContext:te,activity:De.length,subagent:h&&g?(0,Y.jsx)(sW,{projectId:h,agentId:g,events:De,subagents:Fe,live:Ne?.status===`running`,onOpenAgent:_e}):void 0,children:(0,Y.jsx)($R,{children:(0,Y.jsxs)(`main`,{className:`flex min-h-0 min-w-0 flex-1 flex-col`,children:[ze&&He!==null&&(0,Y.jsx)(mW,{title:He}),Re()]})})})]}),i.everyPage.map(({EveryPage:e,package:t})=>(0,Y.jsx)(lF,{package:t,label:`${t} popup`,children:(0,Y.jsx)(e,{})},t)),p.settings!==void 0&&(0,Y.jsx)(NB,{entry:p.settings,openItem:p.settingsItem,onEntry:Ce,onClose:we,scope:y,projects:n})]})})})})})}var mG=document.getElementById(`root`);if(!mG)throw Error(`no #root in index.html`);var hG=(0,Pi.createRoot)(mG);(0,Ni.flushSync)(()=>hG.render((0,Y.jsx)(Xa,{children:(0,Y.jsx)(pG,{})})));
|