@ahpd/web 0.2.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (145) hide show
  1. package/README.md +14 -2
  2. package/dist/app/assets/AudioPage-DAAck9ph.js +1 -0
  3. package/dist/app/assets/Composer-Dp_Z0bXp.js +2 -0
  4. package/dist/app/assets/ContextMenu-BV1gdog0.js +1 -0
  5. package/dist/app/assets/CopyButton-DWmFc5fw.js +1 -0
  6. package/dist/app/assets/{DataTable-Bv6EG42F.js → DataTable-8woVlU4S.js} +1 -1
  7. package/dist/app/assets/Details-ByJkvhJN.js +1 -0
  8. package/dist/app/assets/DiffPage-Ck21x0bd.js +3 -0
  9. package/dist/app/assets/Edit-rv9ZDDDu.js +1 -0
  10. package/dist/app/assets/Explorer-CDm6vvt6.js +1 -0
  11. package/dist/app/assets/Explorer-CNz5U5q-.js +1 -0
  12. package/dist/app/assets/{Explorer-Cxl5QGRN.js → Explorer-DS_lqr3R.js} +1 -1
  13. package/dist/app/assets/{Explorer-C4zxSdMF.js → Explorer-DoNVPZ-C.js} +1 -1
  14. package/dist/app/assets/Explorer-VoN5CYd5.js +1 -0
  15. package/dist/app/assets/{ExplorerList-Bdp0sfLW.js → ExplorerList-DfesRs43.js} +1 -1
  16. package/dist/app/assets/FilePage-CAUDXIh9.js +3 -0
  17. package/dist/app/assets/Filter-D1FpBH5R.js +1 -0
  18. package/dist/app/assets/HostSwitcher-BuSTjyO6.js +1 -0
  19. package/dist/app/assets/ImagePage-cy_jkGi1.js +1 -0
  20. package/dist/app/assets/{Info-levnJ1pH.js → Info-DqnamTeq.js} +1 -1
  21. package/dist/app/assets/LocaleToggle-B91QrqGs.js +1 -0
  22. package/dist/app/assets/{LogPage-QIumryht.js → LogPage-CKm7_URt.js} +1 -1
  23. package/dist/app/assets/LoginForm-rBz-5JFG.js +1 -0
  24. package/dist/app/assets/Markdown-_Awuh7Ku.js +4 -0
  25. package/dist/app/assets/MarkdownPage-DgalhN_B.js +1 -0
  26. package/dist/app/assets/MountTitle-Bx_Vo8tF.js +1 -0
  27. package/dist/app/assets/New-D6QCCHrx.js +3 -0
  28. package/dist/app/assets/Page-CnfUTsQD.js +2 -0
  29. package/dist/app/assets/Page-DGp_WebG.js +1 -0
  30. package/dist/app/assets/Page-Dqf45zd4.js +1 -0
  31. package/dist/app/assets/Pagination-fEfxXCWD.js +1 -0
  32. package/dist/app/assets/PortaLock-BFpTWuKB.js +2 -0
  33. package/dist/app/assets/{SchemaForm-D6mGj6Xh.js → SchemaForm-DKxGZpnK.js} +1 -1
  34. package/dist/app/assets/Settings-ALaVSuhU.js +1 -0
  35. package/dist/app/assets/{SigillumGate-DoeGhrpT.js → SigillumGate-Bq_GLDvI.js} +1 -1
  36. package/dist/app/assets/SingleLayout-BzRi_cEY.js +1 -0
  37. package/dist/app/assets/SpatialLayout-Cote5YNZ.js +1 -0
  38. package/dist/app/assets/SplitLayout-CK5SuMF1.js +1 -0
  39. package/dist/app/assets/StackLayout-BUdng0sD.js +1 -0
  40. package/dist/app/assets/Start-D5KBqSwf.js +1 -0
  41. package/dist/app/assets/Start-Dtuu25RL.css +1 -0
  42. package/dist/app/assets/StatusDot-CC7gdsot.js +1 -0
  43. package/dist/app/assets/TabLayout-ByKrZ0yM.js +1 -0
  44. package/dist/app/assets/TabPanelLayout-B4DWG6Zm.js +1 -0
  45. package/dist/app/assets/{TerminalPage-C58xO7du.js → TerminalPage-CDtmKMSK.js} +3 -3
  46. package/dist/app/assets/{ThemeModeToggle-CAippEfJ.js → ThemeModeToggle-C0j9D4s0.js} +1 -1
  47. package/dist/app/assets/{ThemePicker-CvnWboZg.js → ThemePicker-DEUED0NH.js} +1 -1
  48. package/dist/app/assets/{Tree-Bb5NwYJ1.js → Tree-fxC7yDSR.js} +1 -1
  49. package/dist/app/assets/VideoPage-Cz7g_2E1.js +1 -0
  50. package/dist/app/assets/WindowControls-BWi1hOPh.js +1 -0
  51. package/dist/app/assets/{actions-BQzD99j0.js → actions-BzJiPQuh.js} +1 -1
  52. package/dist/app/assets/changeset-eZAmDe3s.js +1 -0
  53. package/dist/app/assets/{channel-Cqz_LUS2.js → channel-UD2KGCy_.js} +1 -1
  54. package/dist/app/assets/{clicks-IyfKhKFh.js → clicks-DIh3kBLi.js} +1 -1
  55. package/dist/app/assets/clike-pnxEhJ5P.js +1 -0
  56. package/dist/app/assets/composer-commands-B8AF8OGi.js +2 -0
  57. package/dist/app/assets/data-hUAVersf.js +2 -0
  58. package/dist/app/assets/dist-1MAn9CBM.js +1 -0
  59. package/dist/app/assets/dist-33oU5N7i.js +1 -0
  60. package/dist/app/assets/dist-B4E-6SqB.js +1 -0
  61. package/dist/app/assets/dist-BDH0Q8eg.js +13 -0
  62. package/dist/app/assets/dist-BdNRSgzN.js +2 -0
  63. package/dist/app/assets/dist-BfGIsxxP.js +1 -0
  64. package/dist/app/assets/dist-Bq_hlZV8.js +1 -0
  65. package/dist/app/assets/dist-BwHJSc3S.js +6 -0
  66. package/dist/app/assets/dist-C5-Hv917.js +1 -0
  67. package/dist/app/assets/dist-CxEuuaKq.js +1 -0
  68. package/dist/app/assets/dist-DUFzb_Eu.js +23 -0
  69. package/dist/app/assets/dist-DX2Uz40S.js +9 -0
  70. package/dist/app/assets/dist-Db_OB0lX.js +11 -0
  71. package/dist/app/assets/dist-IR189dk6.js +1 -0
  72. package/dist/app/assets/dist-rmKzqdIO.js +1 -0
  73. package/dist/app/assets/dist-uvIW_qsj.js +1 -0
  74. package/dist/app/assets/dockerfile-BDePf5PZ.js +1 -0
  75. package/dist/app/assets/emojis-7RT6GvLa.js +1 -0
  76. package/dist/app/assets/folder-path-CTpCmycG.js +1 -0
  77. package/dist/app/assets/index-B1VQ36Tb.css +1 -0
  78. package/dist/app/assets/index-yhQX4tVS.js +14 -0
  79. package/dist/app/assets/lua-DPCEkfD_.js +1 -0
  80. package/dist/app/assets/media-Coozt7AL.js +1 -0
  81. package/dist/app/assets/{notify-Bb548jAB.js → notify-BQ9fSOfy.js} +1 -1
  82. package/dist/app/assets/registry-iidw4F1W.js +1 -0
  83. package/dist/app/assets/ruby-ChfNwlCY.js +1 -0
  84. package/dist/app/assets/sessions-8PScJEDe.js +2 -0
  85. package/dist/app/assets/shell-DwuoZtxw.js +1 -0
  86. package/dist/app/assets/swift-DKB6_1j6.js +1 -0
  87. package/dist/app/assets/terminal-BPj7jGw5.js +1 -0
  88. package/dist/app/assets/text-BdULOY8N.js +1 -0
  89. package/dist/app/assets/toml-BPTmHmyx.js +1 -0
  90. package/dist/app/assets/useCloseGuard-B4qJKmaF.js +1 -0
  91. package/dist/app/assets/useStoreLabel-BuZT1So6.js +1 -0
  92. package/dist/app/assets/viewers-MssMDn0e.js +1 -0
  93. package/dist/app/assets/words-CyqfIDyJ.js +2 -0
  94. package/dist/app/assets/words-T8-D0K4W.js +1 -0
  95. package/dist/app/index.html +17 -9
  96. package/dist/embed/index.d.ts +61 -0
  97. package/dist/embed/index.js +11 -0
  98. package/dist/plugin/index.js +14 -1
  99. package/dist/plugin/index.js.map +1 -1
  100. package/dist/plugin/static.js +3 -2
  101. package/dist/plugin/static.js.map +1 -1
  102. package/package.json +29 -3
  103. package/dist/app/assets/Composer-DpjCaX5G.js +0 -2
  104. package/dist/app/assets/ContextMenu-qqlGWvJT.js +0 -1
  105. package/dist/app/assets/Details-Cymq_tLr.js +0 -1
  106. package/dist/app/assets/DiffPage-CrT1Faon.js +0 -1
  107. package/dist/app/assets/Edit-KxWRJB1t.js +0 -1
  108. package/dist/app/assets/Explorer-D9lzbmtd.js +0 -1
  109. package/dist/app/assets/Explorer-h1FYBfP3.js +0 -1
  110. package/dist/app/assets/Explorer-kMkPIrYG.js +0 -1
  111. package/dist/app/assets/FilePage-CWjlubpU.js +0 -1
  112. package/dist/app/assets/Filter-y-cAyV5s.js +0 -1
  113. package/dist/app/assets/LocaleToggle-DtU53oIZ.js +0 -1
  114. package/dist/app/assets/LoginForm-CoxoSwG-.js +0 -1
  115. package/dist/app/assets/Markdown-BaxWPZc1.js +0 -4
  116. package/dist/app/assets/MarkdownPage-CNUmYD-d.js +0 -1
  117. package/dist/app/assets/MountTitle-hWvATFel.js +0 -1
  118. package/dist/app/assets/New-CWi2ZODd.js +0 -3
  119. package/dist/app/assets/Page-BXwzlAyC.js +0 -2
  120. package/dist/app/assets/Page-BlQx3M_Q.js +0 -1
  121. package/dist/app/assets/Page-DXYj-sYk.js +0 -1
  122. package/dist/app/assets/Pagination-FSzhBpDU.js +0 -1
  123. package/dist/app/assets/PortaLock-Dvr-6D1r.js +0 -2
  124. package/dist/app/assets/Settings--Ciusotp.js +0 -1
  125. package/dist/app/assets/SingleLayout-CmIAtyIo.js +0 -1
  126. package/dist/app/assets/SpatialLayout-CacNe1y4.js +0 -1
  127. package/dist/app/assets/SplitLayout-BANKBMIh.js +0 -1
  128. package/dist/app/assets/StackLayout-Cz4zMN4f.js +0 -1
  129. package/dist/app/assets/StatusDot-BwqhMthP.js +0 -1
  130. package/dist/app/assets/TabLayout-BaH8UNpt.js +0 -1
  131. package/dist/app/assets/TabPanelLayout-DkFUNHcz.js +0 -1
  132. package/dist/app/assets/changeset-BY8dw-V-.js +0 -1
  133. package/dist/app/assets/composer-commands-Bpp7NX4E.js +0 -2
  134. package/dist/app/assets/data-Fkj0LNnG.js +0 -2
  135. package/dist/app/assets/diff-eyYjrmkY.js +0 -3
  136. package/dist/app/assets/emojis-BOylxma2.js +0 -1
  137. package/dist/app/assets/index-BkzdJo_Y.js +0 -14
  138. package/dist/app/assets/index-CPXMK2aI.css +0 -1
  139. package/dist/app/assets/sessions-CEccRVtA.js +0 -2
  140. package/dist/app/assets/terminal-kD0C2LuZ.js +0 -1
  141. package/dist/app/assets/text-CmjM0Nin.js +0 -1
  142. package/dist/app/assets/useI18n-Bfix5MNN.js +0 -1
  143. package/dist/app/assets/useStoreLabel-m9cem_OG.js +0 -1
  144. package/dist/app/assets/words-BMjqrsOT.js +0 -1
  145. package/dist/app/assets/words-BknpHIF3.js +0 -1
@@ -0,0 +1 @@
1
+ import{t as e}from"./react-CybPckBe.js";import{l as t}from"./notify-BQ9fSOfy.js";import{n}from"./ScenaProvider-6A3TJumQ.js";import{at as r,j as i,v as a}from"./data-hUAVersf.js";import{n as o,o as s}from"./words-T8-D0K4W.js";import{t as c}from"./emojis-7RT6GvLa.js";import{t as l}from"./channel-UD2KGCy_.js";var u=e();function d(e){return typeof e==`object`&&e?e:{}}function f(e,t){let n=d(e);return`ahpd.${t}`in n?n[`ahpd.${t}`]:n[t]}function p(e){return(e??[]).filter(e=>!e.uriTemplate.includes(`{`)).map(e=>({label:e.label,uri:e.uriTemplate,kind:String(e.changeKind),...e.description===void 0?{}:{description:e.description},review:e.capabilities?.review!==void 0}))}var m=e=>e[0];function h(e){let{before:t,after:n,diff:r}=e.edit,i=n?.uri??t?.uri??e.id,a=o(i),s=a.lastIndexOf(`/`);return{id:e.id,file:i,name:s<0?a:a.slice(s+1),dir:s<0?``:a.slice(0,s),status:t===void 0?`added`:n===void 0?`deleted`:`modified`,...r?.added===void 0?{}:{added:r.added},...r?.removed===void 0?{}:{removed:r.removed},reviewed:e.reviewed===!0,staged:f(e._meta,`staged`)===!0,unstaged:f(e._meta,`unstaged`)===!0,...t?.content.uri===void 0?{}:{before:t.content.uri},...n?.content.uri===void 0?{}:{after:n.content.uri}}}function g(e,t){if(t===null)return e;let n=o(t).replace(/\/+$/,``);return e===n?`.`:e.startsWith(`${n}/`)?e.slice(n.length+1):e}function _(e){return e.status===`added`?!e.staged&&e.unstaged?`U`:`A`:e.status===`deleted`?`D`:`M`}function v(e,t){return(t===`review`?[{key:`unreviewed`,label:`Not reviewed`,changes:e.filter(e=>!e.reviewed)},{key:`reviewed`,label:`Reviewed`,changes:e.filter(e=>e.reviewed)}]:t===`staging`?[{key:`staged`,label:`Staged`,changes:e.filter(e=>e.staged)},{key:`unstaged`,label:`Changes`,changes:e.filter(e=>!e.staged||e.unstaged)}]:[{key:`all`,label:`Changes`,changes:[...e]}]).filter(e=>e.changes.length>0)}function y(e,t){let n={path:``,name:``,folders:[],changes:[]};for(let r of e){let e=g(r.dir,t),i=n;for(let t of e===`.`?[]:e.split(`/`).filter(e=>e!==``)){let e=i.path===``?t:`${i.path}/${t}`,n=i.folders.find(t=>t.path===e);n===void 0&&(n={path:e,name:t,folders:[],changes:[]},i.folders.push(n)),i=n}i.changes.push(r)}let r=e=>{let t=e;for(;t.changes.length===0&&t.folders.length===1&&t.folders[0]!==void 0;){let e=t.folders[0];t={...e,name:`${t.name}/${e.name}`}}return{...t,folders:t.folders.map(r)}};return{...n,folders:n.folders.map(r)}}function b(e){return typeof e==`object`&&e?e:{}}function x(e){return typeof e==`string`&&e!==``?e:null}function S(e){let t=b(b(e).content);return{uri:x(t.uri),contentType:x(t.contentType)}}function C(e){if(!e.startsWith(`data:`))return null;let t=e.indexOf(`,`);if(t<0)return null;let n=e.slice(5,t).split(`;`),r=e.slice(t+1);try{let e=n.includes(`base64`)?new TextDecoder().decode(Uint8Array.from(atob(r.replace(/\s+/g,``)),e=>e.charCodeAt(0))):decodeURIComponent(r);return{contentType:n[0]===``?null:n[0]??null,text:e}}catch{return null}}var w={title:``,description:``,branchName:null,baseBranchName:null,repository:null,context:void 0};function T(e){if(b(e).external===!0)return null;let{uri:t,contentType:n}=S(e);if(t===null)return null;let r=C(t);if(r===null||n!==null&&!n.includes(`json`)&&r.contentType?.includes(`json`)!==!0)return null;let i;try{i=JSON.parse(r.text)}catch{return null}let a=b(i),o=x(a.title);return o===null||!(`context`in a)?null:{title:o,description:x(a.description)??x(a.body)??``,branchName:x(a.branchName),baseBranchName:x(a.baseBranchName),repository:x(a.repository),context:a.context}}function E(e){return b(e).external===!0?S(e).uri:null}function D(e,t){return{"vscode.pullRequest":{title:e.title,description:e.description,draft:t,...e.context===void 0?{}:{expectedContext:e.context}}}}function O(e){return{"ahpd.commit":{message:e}}}function k(e){return e.id===`commit`?`commit`:e.id===`create-pr`||e.id===`prepare-pull-request`?`pull-request`:null}var A=(e,t)=>e.scopes.map(String).includes(t),j={add:`+`,remove:`−`,discard:`↶`,check:c.check,trash:c.trash,"git-commit":c.commit,"git-pull-request":c.pullRequest,"git-pull-request-create":c.pullRequest};function M(e){let t=e.icon??``;return t===`git-commit`?`blue`:t.startsWith(`git-pull-request`)?`yellow`:e.confirmation===void 0?null:`red`}var N=e=>j[e.icon??``]??e.label.charAt(0);function P(e,t,n,r){e.commands.execute(`ahp.openDiff`,{file:t.file,...t.before===void 0?{}:{before:t.before},...t.after===void 0?{}:{after:t.after},...n===void 0?{}:{changeset:n,change:t.id,review:r}})}function F(e){let o=n(),c=l(e,r),[d,f]=(0,u.useState)(null),[p,m]=(0,u.useState)(null);(0,u.useEffect)(()=>{f(null),m(null)},[e]);let g=(0,u.useMemo)(()=>(c.state?.files??[]).map(h),[c.state?.files]),_=c.state?.operations??[],v=async(t,n,r)=>{if(e!==void 0){f(null);try{let a=await i(`invokeChangesetOperation`,{channel:e,operationId:t.id,...n===void 0?{}:{target:{kind:`resource`,resource:n.file}},...r===void 0?{}:{_meta:r}});return a?.message!==void 0&&f({tone:`info`,text:s(a.message)}),{followUp:a?.followUp}}catch(e){f({tone:`danger`,text:e instanceof Error?e.message:String(e)});return}}},y=e=>{let t=E(e);if(t!==null){window.open(t,`_blank`,`noopener`);return}let n=e?.content?.uri;typeof n==`string`&&!n.startsWith(`data:`)&&o.commands.execute(`ahp.openFile`,{uri:n})},b=async e=>{let t=_.find(e=>e.id===`create-pr`)??(e.id===`create-pr`?e:null),n=_.find(e=>e.id===`prepare-pull-request`)??(e.id===`prepare-pull-request`?e:null);if(m({kind:`pull-request`,create:t,draft:w,preparing:n!==null}),n===null)return;let r=await v(n);if(r===void 0){m(null);return}let i=T(r.followUp);f(null),m(e=>e?.kind===`pull-request`?{...e,preparing:!1,draft:i??e.draft}:e)};return{state:c.state,error:c.error,files:g,operations:_,said:d,form:p,run:async(n,r)=>{if(e===void 0)return;let i=r===void 0?k(n):null;if(i===`commit`){m({kind:`commit`,operation:n});return}let a=s(n.confirmation);if(a!==``&&!await t({title:a,confirmLabel:n.label,tone:`danger`}))return;if(i===`pull-request`){await b(n);return}let o=await v(n,r);o!==void 0&&y(o.followUp)},commit:e=>{if(p?.kind!==`commit`)return;let{operation:t}=p;m(null),v(t,void 0,O(e)).then(e=>{e!==void 0&&y(e.followUp)})},pullRequest:(e,t)=>{if(p?.kind!==`pull-request`||p.create===null)return;let{create:n}=p;m(null),v(n,void 0,D(e,t)).then(e=>{e!==void 0&&y(e.followUp)})},closeForm:()=>m(null),review:(t,n)=>{e!==void 0&&t.length>0&&a(e,{type:`changeset/filesReviewChanged`,files:t.map(e=>e.id),reviewed:n})}}}export{F as a,v as c,p as d,M as i,_ as l,P as n,m as o,A as r,y as s,N as t,g as u};
@@ -1 +1 @@
1
- import{t as e}from"./react-CybPckBe.js";import{t}from"./useStore-BQkzWMs-.js";import{_ as n,h as r,m as i}from"./data-Fkj0LNnG.js";var a=e();function o(e,o){(0,a.useEffect)(()=>e===void 0?void 0:n(e,o),[e,o]);let s=t(r(e??``)),c=t(i(e??``));return{state:e===void 0?void 0:s,error:c??null}}export{o as t};
1
+ import{t as e}from"./react-CybPckBe.js";import{t}from"./useStore-BQkzWMs-.js";import{b as n,h as r,m as i}from"./data-hUAVersf.js";var a=e();function o(e,o){(0,a.useEffect)(()=>e===void 0?void 0:n(e,o),[e,o]);let s=t(r(e??``)),c=t(i(e??``));return{state:e===void 0?void 0:s,error:c??null}}export{o as t};
@@ -1 +1 @@
1
- import{v as e}from"./data-Fkj0LNnG.js";function t(e){let t=[];for(let n of e.split(`/`))n!==``&&n!==`.`&&(n===`..`?t.pop():t.push(n));return`${e.startsWith(`/`)?`/`:``}${t.join(`/`)}`}function n(e,n){let r=e.trim();if(r===``||r.startsWith(`#`))return null;let i=/^([a-z][a-z0-9+.-]*):(?!\d)/i.exec(r);if(i!==null&&i[1]?.toLowerCase()!==`file`)return null;let a=r.indexOf(`#`),o=a<0?r:r.slice(0,a),s=a<0?``:r.slice(a+1),c=/^L(\d+)(?:-L?(\d+))?$/i.exec(s),l;try{l=decodeURIComponent(o.replace(/^file:\/\//i,``).replace(/\?.*$/,``))}catch{return null}let u=c===null?/^(.+?):(\d+)(?::\d+)?$/.exec(l):null;if(u!==null&&(l=u[1]??l),l===``)return null;if(!l.startsWith(`/`)){if(n===null)return null;l=`${n.replace(/^file:\/\//i,``).replace(/\/+$/,``)}/${l}`}l=t(l);let d=l.split(`/`).pop()??l;if(d===``)return null;let f=c===null?u===null?null:Number(u[2]):Number(c[1]),p=c===null||c[2]===void 0?null:Number(c[2]);return{uri:`file://${l}`,name:d,line:f,end:p!==null&&f!==null&&p>f?p:null}}function r(e,t){let r=e.trim();if(r.length<2||r.length>240||/[\s"'`<>(){}[\],;=*|$]/.test(r)||r.startsWith(`-`))return null;let i=/^(.*?):(\d+)(?::\d+)?$/.exec(r),a=i===null?r:i[1]??r;return!(a.includes(`/`)||/^[\w.@+-]+\.[\w]+$/.test(a))||/^\d+$/.test(a)||/^[a-z][a-z0-9+.-]*:/i.test(a)||/^\d+(\.\d+)+$/.test(a)?null:n(i===null?a:`${a}#L${i[2]}`,t)}async function i(t,n,r){let i=await e(n.uri);i===`directory`?t.commands.execute(`ahp.revealFolder`,{uri:n.uri}):(i!==null||r===`open`)&&t.commands.execute(`ahp.openFile`,{uri:n.uri,line:n.line,end:n.end})}function a(e,t){return a=>{let o=a.target,s=o.closest(`a`);if(s!==null){let r=s.getAttribute(`href`)??``;if(r.startsWith(`#`))return;a.preventDefault();let o=n(r,t);o===null?/^(https?|mailto):/i.test(r)&&window.open(r,`_blank`,`noopener`):i(e,o,`open`);return}let c=o.closest(`code`);if(c===null||c.closest(`pre`)!==null)return;let l=r(c.textContent??``,t);l!==null&&i(e,l,`skip`)}}export{r as n,n as r,a as t};
1
+ import{x as e}from"./data-hUAVersf.js";function t(e){let t=[];for(let n of e.split(`/`))n!==``&&n!==`.`&&(n===`..`?t.pop():t.push(n));return`${e.startsWith(`/`)?`/`:``}${t.join(`/`)}`}function n(e,n){let r=e.trim();if(r===``||r.startsWith(`#`))return null;let i=/^([a-z][a-z0-9+.-]*):(?!\d)/i.exec(r);if(i!==null&&i[1]?.toLowerCase()!==`file`)return null;let a=r.indexOf(`#`),o=a<0?r:r.slice(0,a),s=a<0?``:r.slice(a+1),c=/^L(\d+)(?:-L?(\d+))?$/i.exec(s),l;try{l=decodeURIComponent(o.replace(/^file:\/\//i,``).replace(/\?.*$/,``))}catch{return null}let u=c===null?/^(.+?):(\d+)(?::\d+)?$/.exec(l):null;if(u!==null&&(l=u[1]??l),l===``)return null;if(!l.startsWith(`/`)){if(n===null)return null;l=`${n.replace(/^file:\/\//i,``).replace(/\/+$/,``)}/${l}`}l=t(l);let d=l.split(`/`).pop()??l;if(d===``)return null;let f=c===null?u===null?null:Number(u[2]):Number(c[1]),p=c===null||c[2]===void 0?null:Number(c[2]);return{uri:`file://${l}`,name:d,line:f,end:p!==null&&f!==null&&p>f?p:null}}function r(e,t){let r=e.trim();if(r.length<2||r.length>240||/[\s"'`<>(){}[\],;=*|$]/.test(r)||r.startsWith(`-`))return null;let i=/^(.*?):(\d+)(?::\d+)?$/.exec(r),a=i===null?r:i[1]??r;return!(a.includes(`/`)||/^[\w.@+-]+\.[\w]+$/.test(a))||/^\d+$/.test(a)||/^[a-z][a-z0-9+.-]*:/i.test(a)||/^\d+(\.\d+)+$/.test(a)?null:n(i===null?a:`${a}#L${i[2]}`,t)}async function i(t,n,r){let i=await e(n.uri);i===`directory`?t.commands.execute(`ahp.revealFolder`,{uri:n.uri}):(i!==null||r===`open`)&&t.commands.execute(`ahp.openFile`,{uri:n.uri,line:n.line,end:n.end})}function a(e,t){return a=>{let o=a.target,s=o.closest(`a`);if(s!==null){let r=s.getAttribute(`href`)??``;if(r.startsWith(`#`))return;a.preventDefault();let o=n(r,t);o===null?/^(https?|mailto):/i.test(r)&&window.open(r,`_blank`,`noopener`):i(e,o,`open`);return}let c=o.closest(`code`);if(c===null||c.closest(`pre`)!==null)return;let l=r(c.textContent??``,t);l!==null&&i(e,l,`skip`)}}export{r as n,n as r,a as t};
@@ -0,0 +1 @@
1
+ function e(e,t,n,r,i,a){this.indented=e,this.column=t,this.type=n,this.info=r,this.align=i,this.prev=a}function t(t,n,r,i){var a=t.indented;return t.context&&t.context.type==`statement`&&r!=`statement`&&(a=t.context.indented),t.context=new e(a,n,r,i,null,t.context)}function n(e){var t=e.context.type;return(t==`)`||t==`]`||t==`}`)&&(e.indented=e.context.indented),e.context=e.context.prev}function r(e,t,n){if(t.prevToken==`variable`||t.prevToken==`type`||/\S(?:[^- ]>|[*\]])\s*$|\*$/.test(e.string.slice(0,n))||t.typeAtEndOfLine&&e.column()==e.indentation())return!0}function i(e){for(;;){if(!e||e.type==`top`)return!0;if(e.type==`}`&&e.prev.info!=`namespace`)return!1;e=e.prev}}function a(a){var o=a.statementIndentUnit,c=a.dontAlignCalls,l=a.keywords||{},u=a.types||{},d=a.builtin||{},f=a.blockKeywords||{},p=a.defKeywords||{},m=a.atoms||{},h=a.hooks||{},g=a.multiLineStrings,_=a.indentStatements!==!1,v=a.indentSwitch!==!1,y=a.namespaceSeparator,b=a.isPunctuationChar||/[\[\]{}\(\),;\:\.]/,x=a.numberStart||/[\d\.]/,S=a.number||/^(?:0x[a-f\d]+|0b[01]+|(?:\d+\.?\d*|\.\d+)(?:e[-+]?\d+)?)(u|ll?|l|f)?/i,C=a.isOperatorChar||/[+\-*&%=<>!?|\/]/,w=a.isIdentifierChar||/[\w\$_\xa1-\uffff]/,T=a.isReservedIdentifier||!1,E,D;function O(e,t){var n=e.next();if(h[n]){var r=h[n](e,t);if(r!==!1)return r}if(n==`"`||n==`'`)return t.tokenize=k(n),t.tokenize(e,t);if(x.test(n)){if(e.backUp(1),e.match(S))return`number`;e.next()}if(b.test(n))return E=n,null;if(n==`/`){if(e.eat(`*`))return t.tokenize=A,A(e,t);if(e.eat(`/`))return e.skipToEnd(),`comment`}if(C.test(n)){for(;!e.match(/^\/[\/*]/,!1)&&e.eat(C););return`operator`}if(e.eatWhile(w),y)for(;e.match(y);)e.eatWhile(w);var i=e.current();return s(l,i)?(s(f,i)&&(E=`newstatement`),s(p,i)&&(D=!0),`keyword`):s(u,i)?`type`:s(d,i)||T&&T(i)?(s(f,i)&&(E=`newstatement`),`builtin`):s(m,i)?`atom`:`variable`}function k(e){return function(t,n){for(var r=!1,i,a=!1;(i=t.next())!=null;){if(i==e&&!r){a=!0;break}r=!r&&i==`\\`}return(a||!(r||g))&&(n.tokenize=null),`string`}}function A(e,t){for(var n=!1,r;r=e.next();){if(r==`/`&&n){t.tokenize=null;break}n=r==`*`}return`comment`}function j(e,t){a.typeFirstDefinitions&&e.eol()&&i(t.context)&&(t.typeAtEndOfLine=r(e,t,e.pos))}return{name:a.name,startState:function(t){return{tokenize:null,context:new e(-t,0,`top`,null,!1),indented:0,startOfLine:!0,prevToken:null}},token:function(e,o){var s=o.context;if(e.sol()&&(s.align??(s.align=!1),o.indented=e.indentation(),o.startOfLine=!0),e.eatSpace())return j(e,o),null;E=D=null;var c=(o.tokenize||O)(e,o);if(c==`comment`||c==`meta`)return c;if(s.align??(s.align=!0),E==`;`||E==`:`||E==`,`&&e.match(/^\s*(?:\/\/.*)?$/,!1))for(;o.context.type==`statement`;)n(o);else if(E==`{`)t(o,e.column(),`}`);else if(E==`[`)t(o,e.column(),`]`);else if(E==`(`)t(o,e.column(),`)`);else if(E==`}`){for(;s.type==`statement`;)s=n(o);for(s.type==`}`&&(s=n(o));s.type==`statement`;)s=n(o)}else E==s.type?n(o):_&&((s.type==`}`||s.type==`top`)&&E!=`;`||s.type==`statement`&&E==`newstatement`)&&t(o,e.column(),`statement`,e.current());if(c==`variable`&&(o.prevToken==`def`||a.typeFirstDefinitions&&r(e,o,e.start)&&i(o.context)&&e.match(/^\s*\(/,!1))&&(c=`def`),h.token){var l=h.token(e,o,c);l!==void 0&&(c=l)}return c==`def`&&a.styleDefs===!1&&(c=`variable`),o.startOfLine=!1,o.prevToken=D?`def`:c||E,j(e,o),c},indent:function(e,t,n){if(e.tokenize!=O&&e.tokenize!=null||e.typeAtEndOfLine&&i(e.context))return null;var r=e.context,s=t&&t.charAt(0),l=s==r.type;if(r.type==`statement`&&s==`}`&&(r=r.prev),a.dontIndentStatements)for(;r.type==`statement`&&a.dontIndentStatements.test(r.info);)r=r.prev;if(h.indent){var u=h.indent(e,r,t,n.unit);if(typeof u==`number`)return u}var d=r.prev&&r.prev.info==`switch`;if(a.allmanIndentation&&/[{(]/.test(s)){for(;r.type!=`top`&&r.type!=`}`;)r=r.prev;return r.indented}return r.type==`statement`?r.indented+(s==`{`?0:o||n.unit):r.align&&(!c||r.type!=`)`)?r.column+ +!l:r.type==`)`&&!l?r.indented+(o||n.unit):r.indented+(l?0:n.unit)+(!l&&d&&!/^(?:case|default)\b/.test(t)?n.unit:0)},languageData:{indentOnInput:v?/^\s*(?:case .*?:|default:|\{\}?|\})$/:/^\s*[{}]$/,commentTokens:{line:`//`,block:{open:`/*`,close:`*/`}},autocomplete:Object.keys(l).concat(Object.keys(u)).concat(Object.keys(d)).concat(Object.keys(m)),...a.languageData}}}function o(e){for(var t={},n=e.split(` `),r=0;r<n.length;++r)t[n[r]]=!0;return t}function s(e,t){return typeof e==`function`?e(t):e.propertyIsEnumerable(t)}var c=`auto if break case register continue return default do sizeof static else struct switch extern typedef union for goto while enum const volatile inline restrict asm fortran`,l=`alignas alignof and and_eq audit axiom bitand bitor catch class compl concept constexpr const_cast decltype delete dynamic_cast explicit export final friend import module mutable namespace new noexcept not not_eq operator or or_eq override private protected public reinterpret_cast requires static_assert static_cast template this thread_local throw try typeid typename using virtual xor xor_eq`,u=`bycopy byref in inout oneway out self super atomic nonatomic retain copy readwrite readonly strong weak assign typeof nullable nonnull null_resettable _cmd @interface @implementation @end @protocol @encode @property @synthesize @dynamic @class @public @package @private @protected @required @optional @try @catch @finally @import @selector @encode @defs @synchronized @autoreleasepool @compatibility_alias @available`,d=`FOUNDATION_EXPORT FOUNDATION_EXTERN NS_INLINE NS_FORMAT_FUNCTION NS_RETURNS_RETAINEDNS_ERROR_ENUM NS_RETURNS_NOT_RETAINED NS_RETURNS_INNER_POINTER NS_DESIGNATED_INITIALIZER NS_ENUM NS_OPTIONS NS_REQUIRES_NIL_TERMINATION NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_END NS_SWIFT_NAME NS_REFINED_FOR_SWIFT`,f=o(`int long char short double float unsigned signed void bool`),p=o(`SEL instancetype id Class Protocol BOOL`);function m(e){return s(f,e)||/.+_t$/.test(e)}function h(e){return m(e)||s(p,e)}var g=`case do else for if switch while struct enum union`,_=`struct enum union`;function v(e,t){if(!t.startOfLine)return!1;for(var n,r=null;n=e.peek();){if(n==`\\`&&e.match(/^.$/)){r=v;break}if(n==`/`&&e.match(/^\/[\/\*]/,!1))break;e.next()}return t.tokenize=r,`meta`}function y(e,t){return t.prevToken==`type`&&`type`}function b(e){return!e||e.length<2||e[0]!=`_`?!1:e[1]==`_`||e[1]!==e[1].toLowerCase()}function x(e){return e.eatWhile(/[\w\.']/),`number`}function S(e,t){if(e.backUp(1),e.match(/^(?:R|u8R|uR|UR|LR)/)){var n=e.match(/^"([^\s\\()]{0,16})\(/);return n?(t.cpp11RawStringDelim=n[1],t.tokenize=T,T(e,t)):!1}return e.match(/^(?:u8|u|U|L)/)?e.match(/^["']/,!1)?`string`:!1:(e.next(),!1)}function C(e){var t=/(\w+)::~?(\w+)$/.exec(e);return t&&t[1]==t[2]}function w(e,t){for(var n;(n=e.next())!=null;)if(n==`"`&&!e.eat(`"`)){t.tokenize=null;break}return`string`}function T(e,t){var n=t.cpp11RawStringDelim.replace(/[^\w\s]/g,`\\$&`);return e.match(RegExp(`.*?\\)`+n+`"`))?t.tokenize=null:e.skipToEnd(),`string`}a({name:`c`,keywords:o(c),types:m,blockKeywords:o(g),defKeywords:o(_),typeFirstDefinitions:!0,atoms:o(`NULL true false`),isReservedIdentifier:b,hooks:{"#":v,"*":y}}),a({name:`cpp`,keywords:o(c+` `+l),types:m,blockKeywords:o(g+` class try catch`),defKeywords:o(_+` class namespace`),typeFirstDefinitions:!0,atoms:o(`true false NULL nullptr`),dontIndentStatements:/^template$/,isIdentifierChar:/[\w\$_~\xa1-\uffff]/,isReservedIdentifier:b,hooks:{"#":v,"*":y,u:S,U:S,L:S,R:S,0:x,1:x,2:x,3:x,4:x,5:x,6:x,7:x,8:x,9:x,token:function(e,t,n){if(n==`variable`&&e.peek()==`(`&&(t.prevToken==`;`||t.prevToken==null||t.prevToken==`}`)&&C(e.current()))return`def`}},namespaceSeparator:`::`}),a({name:`java`,keywords:o(`abstract assert break case catch class const continue default do else enum extends final finally for goto if implements import instanceof interface native new package private protected public return static strictfp super switch synchronized this throw throws transient try volatile while @interface`),types:o(`var byte short int long float double boolean char void Boolean Byte Character Double Float Integer Long Number Object Short String StringBuffer StringBuilder Void`),blockKeywords:o(`catch class do else finally for if switch try while`),defKeywords:o(`class interface enum @interface`),typeFirstDefinitions:!0,atoms:o(`true false null`),number:/^(?:0x[a-f\d_]+|0b[01_]+|(?:[\d_]+\.?\d*|\.\d+)(?:e[-+]?[\d_]+)?)(u|ll?|l|f)?/i,hooks:{"@":function(e){return!e.match(`interface`,!1)&&(e.eatWhile(/[\w\$_]/),`meta`)},'"':function(e,t){return e.match(/""$/)?(t.tokenize=D,t.tokenize(e,t)):!1}}});var E=a({name:`csharp`,keywords:o(`abstract as async await base break case catch checked class const continue default delegate do else enum event explicit extern finally fixed for foreach goto if implicit in init interface internal is lock namespace new operator out override params private protected public readonly record ref required return sealed sizeof stackalloc static struct switch this throw try typeof unchecked unsafe using virtual void volatile while add alias ascending descending dynamic from get global group into join let orderby partial remove select set value var yield`),types:o(`Action Boolean Byte Char DateTime DateTimeOffset Decimal Double Func Guid Int16 Int32 Int64 Object SByte Single String Task TimeSpan UInt16 UInt32 UInt64 bool byte char decimal double short int long object sbyte float string ushort uint ulong`),blockKeywords:o(`catch class do else finally for foreach if struct switch try while`),defKeywords:o(`class interface namespace record struct var`),typeFirstDefinitions:!0,atoms:o(`true false null`),hooks:{"@":function(e,t){return e.eat(`"`)?(t.tokenize=w,w(e,t)):(e.eatWhile(/[\w\$_]/),`meta`)}}});function D(e,t){for(var n=!1;!e.eol();){if(!n&&e.match(`"""`)){t.tokenize=null;break}n=e.next()==`\\`&&!n}return`string`}function O(e){return function(t,n){for(var r;r=t.next();)if(r==`*`&&t.eat(`/`)){if(e==1){n.tokenize=null;break}return n.tokenize=O(e-1),n.tokenize(t,n)}else if(r==`/`&&t.eat(`*`))return n.tokenize=O(e+1),n.tokenize(t,n);return`comment`}}a({name:`scala`,keywords:o(`abstract case catch class def do else extends final finally for forSome if implicit import lazy match new null object override package private protected return sealed super this throw trait try type val var while with yield _ assert assume require print println printf readLine readBoolean readByte readShort readChar readInt readLong readFloat readDouble`),types:o(`AnyVal App Application Array BufferedIterator BigDecimal BigInt Char Console Either Enumeration Equiv Error Exception Fractional Function IndexedSeq Int Integral Iterable Iterator List Map Numeric Nil NotNull Option Ordered Ordering PartialFunction PartialOrdering Product Proxy Range Responder Seq Serializable Set Specializable Stream StringBuilder StringContext Symbol Throwable Traversable TraversableOnce Tuple Unit Vector Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void`),multiLineStrings:!0,blockKeywords:o(`catch class enum do else finally for forSome if match switch try while`),defKeywords:o(`class enum def object package trait type val var`),atoms:o(`true false null`),indentStatements:!1,indentSwitch:!1,isOperatorChar:/[+\-*&%=<>!?|\/#:@]/,hooks:{"@":function(e){return e.eatWhile(/[\w\$_]/),`meta`},'"':function(e,t){return e.match(`""`)?(t.tokenize=D,t.tokenize(e,t)):!1},"'":function(e){return e.match(/^(\\[^'\s]+|[^\\'])'/)?`character`:(e.eatWhile(/[\w\$_\xa1-\uffff]/),`atom`)},"=":function(t,n){var r=n.context;return r.type==`}`&&r.align&&t.eat(`>`)?(n.context=new e(r.indented,r.column,r.type,r.info,null,r.prev),`operator`):!1},"/":function(e,t){return e.eat(`*`)?(t.tokenize=O(1),t.tokenize(e,t)):!1}},languageData:{closeBrackets:{brackets:[`(`,`[`,`{`,`'`,`"`,`"""`]}}});function k(e){return function(t,n){for(var r=!1,i,a=!1;!t.eol();){if(!e&&!r&&t.match(`"`)){a=!0;break}if(e&&t.match(`"""`)){a=!0;break}i=t.next(),!r&&i==`$`&&t.match(`{`)&&t.skipTo(`}`),r=!r&&i==`\\`&&!e}return(a||!e)&&(n.tokenize=null),`string`}}var A=a({name:`kotlin`,keywords:o(`package as typealias class interface this super val operator var fun for is in This throw return annotation break continue object if else while do try when !in !is as? file import where by get set abstract enum open inner override private public internal protected catch finally out final vararg reified dynamic companion constructor init sealed field property receiver param sparam lateinit data inline noinline tailrec external annotation crossinline const operator infix suspend actual expect setparam`),types:o(`Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void Annotation Any BooleanArray ByteArray Char CharArray DeprecationLevel DoubleArray Enum FloatArray Function Int IntArray Lazy LazyThreadSafetyMode LongArray Nothing ShortArray Unit`),intendSwitch:!1,indentStatements:!1,multiLineStrings:!0,number:/^(?:0x[a-f\d_]+|0b[01_]+|(?:[\d_]+(\.\d+)?|\.\d+)(?:e[-+]?[\d_]+)?)(ul?|l|f)?/i,blockKeywords:o(`catch class do else finally for if where try while enum`),defKeywords:o(`class val var object interface fun`),atoms:o(`true false null this`),hooks:{"@":function(e){return e.eatWhile(/[\w\$_]/),`meta`},"*":function(e,t){return t.prevToken==`.`?`variable`:`operator`},'"':function(e,t){return t.tokenize=k(e.match(`""`)),t.tokenize(e,t)},"/":function(e,t){return e.eat(`*`)?(t.tokenize=O(1),t.tokenize(e,t)):!1},indent:function(e,t,n,r){var i=n&&n.charAt(0);if((e.prevToken==`}`||e.prevToken==`)`)&&n==``)return e.indented;if(e.prevToken==`operator`&&n!=`}`&&e.context.type!=`}`||e.prevToken==`variable`&&i==`.`||(e.prevToken==`}`||e.prevToken==`)`)&&i==`.`)return r*2+t.indented;if(t.align&&t.type==`}`)return t.indented+(e.context.type==(n||``).charAt(0)?0:r)}},languageData:{closeBrackets:{brackets:[`(`,`[`,`{`,`'`,`"`,`"""`]}}});a({name:`shader`,keywords:o(`sampler1D sampler2D sampler3D samplerCube sampler1DShadow sampler2DShadow const attribute uniform varying break continue discard return for while do if else struct in out inout`),types:o(`float int bool void vec2 vec3 vec4 ivec2 ivec3 ivec4 bvec2 bvec3 bvec4 mat2 mat3 mat4`),blockKeywords:o(`for while do if else struct`),builtin:o(`radians degrees sin cos tan asin acos atan pow exp log exp2 sqrt inversesqrt abs sign floor ceil fract mod min max clamp mix step smoothstep length distance dot cross normalize ftransform faceforward reflect refract matrixCompMult lessThan lessThanEqual greaterThan greaterThanEqual equal notEqual any all not texture1D texture1DProj texture1DLod texture1DProjLod texture2D texture2DProj texture2DLod texture2DProjLod texture3D texture3DProj texture3DLod texture3DProjLod textureCube textureCubeLod shadow1D shadow2D shadow1DProj shadow2DProj shadow1DLod shadow2DLod shadow1DProjLod shadow2DProjLod dFdx dFdy fwidth noise1 noise2 noise3 noise4`),atoms:o(`true false gl_FragColor gl_SecondaryColor gl_Normal gl_Vertex gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_FogCoord gl_PointCoord gl_Position gl_PointSize gl_ClipVertex gl_FrontColor gl_BackColor gl_FrontSecondaryColor gl_BackSecondaryColor gl_TexCoord gl_FogFragCoord gl_FragCoord gl_FrontFacing gl_FragData gl_FragDepth gl_ModelViewMatrix gl_ProjectionMatrix gl_ModelViewProjectionMatrix gl_TextureMatrix gl_NormalMatrix gl_ModelViewMatrixInverse gl_ProjectionMatrixInverse gl_ModelViewProjectionMatrixInverse gl_TextureMatrixTranspose gl_ModelViewMatrixInverseTranspose gl_ProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixInverseTranspose gl_TextureMatrixInverseTranspose gl_NormalScale gl_DepthRange gl_ClipPlane gl_Point gl_FrontMaterial gl_BackMaterial gl_LightSource gl_LightModel gl_FrontLightModelProduct gl_BackLightModelProduct gl_TextureColor gl_EyePlaneS gl_EyePlaneT gl_EyePlaneR gl_EyePlaneQ gl_FogParameters gl_MaxLights gl_MaxClipPlanes gl_MaxTextureUnits gl_MaxTextureCoords gl_MaxVertexAttribs gl_MaxVertexUniformComponents gl_MaxVaryingFloats gl_MaxVertexTextureImageUnits gl_MaxTextureImageUnits gl_MaxFragmentUniformComponents gl_MaxCombineTextureImageUnits gl_MaxDrawBuffers`),indentSwitch:!1,hooks:{"#":v}}),a({name:`nesc`,keywords:o(c+` as atomic async call command component components configuration event generic implementation includes interface module new norace nx_struct nx_union post provides signal task uses abstract extends`),types:m,blockKeywords:o(g),atoms:o(`null true false`),hooks:{"#":v}}),a({name:`objectivec`,keywords:o(c+` `+u),types:h,builtin:o(d),blockKeywords:o(g+` @synthesize @try @catch @finally @autoreleasepool @synchronized`),defKeywords:o(_+` @interface @implementation @protocol @class`),dontIndentStatements:/^@.*$/,typeFirstDefinitions:!0,atoms:o(`YES NO NULL Nil nil true false nullptr`),isReservedIdentifier:b,hooks:{"#":v,"*":y}}),a({name:`objectivecpp`,keywords:o(c+` `+u+` `+l),types:h,builtin:o(d),blockKeywords:o(g+` @synthesize @try @catch @finally @autoreleasepool @synchronized class try catch`),defKeywords:o(_+` @interface @implementation @protocol @class class namespace`),dontIndentStatements:/^@.*$|^template$/,typeFirstDefinitions:!0,atoms:o(`YES NO NULL Nil nil true false nullptr`),isReservedIdentifier:b,hooks:{"#":v,"*":y,u:S,U:S,L:S,R:S,0:x,1:x,2:x,3:x,4:x,5:x,6:x,7:x,8:x,9:x,token:function(e,t,n){if(n==`variable`&&e.peek()==`(`&&(t.prevToken==`;`||t.prevToken==null||t.prevToken==`}`)&&C(e.current()))return`def`}},namespaceSeparator:`::`}),a({name:`squirrel`,keywords:o(`base break clone continue const default delete enum extends function in class foreach local resume return this throw typeof yield constructor instanceof static`),types:m,blockKeywords:o(`case catch class else for foreach if switch try while`),defKeywords:o(`function local class`),typeFirstDefinitions:!0,atoms:o(`true false null`),hooks:{"#":v}});var j=null;function M(e){return function(t,n){for(var r=!1,i,a=!1;!t.eol();){if(!r&&t.match(`"`)&&(e==`single`||t.match(`""`))){a=!0;break}if(!r&&t.match("``")){j=M(e),a=!0;break}i=t.next(),r=e==`single`&&!r&&i==`\\`}return a&&(n.tokenize=null),`string`}}a({name:`ceylon`,keywords:o(`abstracts alias assembly assert assign break case catch class continue dynamic else exists extends finally for function given if import in interface is let module new nonempty object of out outer package return satisfies super switch then this throw try value void while`),types:function(e){var t=e.charAt(0);return t===t.toUpperCase()&&t!==t.toLowerCase()},blockKeywords:o(`case catch class dynamic else finally for function if interface module new object switch try while`),defKeywords:o(`class dynamic function interface module object package value`),builtin:o(`abstract actual aliased annotation by default deprecated doc final formal late license native optional sealed see serializable shared suppressWarnings tagged throws variable`),isPunctuationChar:/[\[\]{}\(\),;\:\.`]/,isOperatorChar:/[+\-*&%=<>!?|^~:\/]/,numberStart:/[\d#$]/,number:/^(?:#[\da-fA-F_]+|\$[01_]+|[\d_]+[kMGTPmunpf]?|[\d_]+\.[\d_]+(?:[eE][-+]?\d+|[kMGTPmunpf]|)|)/i,multiLineStrings:!0,typeFirstDefinitions:!0,atoms:o(`true false null larger smaller equal empty finished`),indentSwitch:!1,styleDefs:!1,hooks:{"@":function(e){return e.eatWhile(/[\w\$_]/),`meta`},'"':function(e,t){return t.tokenize=M(e.match(`""`)?`triple`:`single`),t.tokenize(e,t)},"`":function(e,t){return!j||!e.match("`")?!1:(t.tokenize=j,j=null,t.tokenize(e,t))},"'":function(e){return e.match(/^(\\[^'\s]+|[^\\'])'/)?`string.special`:(e.eatWhile(/[\w\$_\xa1-\uffff]/),`atom`)},token:function(e,t,n){if((n==`variable`||n==`type`)&&t.prevToken==`.`)return`variableName.special`}},languageData:{closeBrackets:{brackets:[`(`,`[`,`{`,`'`,`"`,`"""`]}}});function N(e){(e.interpolationStack||=[]).push(e.tokenize)}function P(e){return(e.interpolationStack||=[]).pop()}function F(e){return e.interpolationStack?e.interpolationStack.length:0}function I(e,t,n,r){var i=!1;if(t.eat(e)){if(t.eat(e))i=!0;else return`string`}function a(t,n){for(var a=!1;!t.eol();){if(!r&&!a&&t.peek()==`$`)return N(n),n.tokenize=L,`string`;var o=t.next();if(o==e&&!a&&(!i||t.match(e+e))){n.tokenize=null;break}a=!r&&!a&&o==`\\`}return`string`}return n.tokenize=a,a(t,n)}function L(e,t){return e.eat(`$`),t.tokenize=e.eat(`{`)?null:R,null}function R(e,t){return e.eatWhile(/[\w_]/),t.tokenize=P(t),`variable`}a({name:`dart`,keywords:o(`this super static final const abstract class extends external factory implements mixin get native set typedef with enum throw rethrow assert break case continue default in return new deferred async await covariant try catch finally do else for if switch while import library export part of show hide is as extension on yield late required sealed base interface when inline`),blockKeywords:o(`try catch finally do else for if switch while`),builtin:o(`void bool num int double dynamic var String Null Never`),atoms:o(`true false null`),number:/^(?:0x[a-f\d_]+|(?:[\d_]+\.?[\d_]*|\.[\d_]+)(?:e[-+]?[\d_]+)?)/i,hooks:{"@":function(e){return e.eatWhile(/[\w\$_\.]/),`meta`},"'":function(e,t){return I(`'`,e,t,!1)},'"':function(e,t){return I(`"`,e,t,!1)},r:function(e,t){var n=e.peek();return n==`'`||n==`"`?I(e.next(),e,t,!0):!1},"}":function(e,t){return F(t)>0&&(t.tokenize=P(t),null)},"/":function(e,t){return e.eat(`*`)?(t.tokenize=O(1),t.tokenize(e,t)):!1},token:function(e,t,n){if(n==`variable`&&RegExp(`^[_$]*[A-Z][a-zA-Z0-9_$]*$`,`g`).test(e.current()))return`type`}}});export{E as csharp,A as kotlin};
@@ -0,0 +1,2 @@
1
+ import{u as e}from"./useStore-BQkzWMs-.js";import"./data-hUAVersf.js";import{n as t}from"./words-T8-D0K4W.js";import{t as n}from"./emojis-7RT6GvLa.js";var r=e=>typeof e==`object`&&e?e:{},i=e=>typeof e==`string`?e:void 0;function a(e){let t=``;for(let n=0;n<e.length;n+=32768)t+=String.fromCharCode(...e.subarray(n,n+32768));return btoa(t)}function o(e,t,n){return{type:`embeddedResource`,label:e,data:t,contentType:n,displayKind:n.startsWith(`image/`)?`image`:`document`}}function s(e,n){let r=t(e).replace(/\/+$/,``);return{type:`resource`,label:r.slice(r.lastIndexOf(`/`)+1)||r,uri:e,displayKind:n?`directory`:`document`}}function c(e){return{type:`chat`,label:e.title===``?`Untitled`:e.title,resource:e.defaultChat}}async function l(e){let t=[],n=[];for(let r of e){if(r.size>5242880){n.push(r.name);continue}try{t.push(o(r.name,a(new Uint8Array(await r.arrayBuffer())),r.type||`application/octet-stream`))}catch{n.push(r.name)}}return{attached:t,refused:n}}function u(e){let t=r(e);return t.type===`chat`?n.sessions:t.displayKind===`directory`?n.folder:t.type===`embeddedResource`?n.attach:n.file}function d(e,t){let n=r(e);return{...n,_meta:{...r(n._meta),token:t}}}function f(e,t){let n=r(e),i=r(t);return n.type===i.type?typeof n.uri==`string`?n.uri===i.uri:typeof n.resource==`string`?n.resource===i.resource:n.label===i.label&&n.data===i.data:!1}var p=e=>i(r(e).label)??`Attachment`;function m(e,n){let a=i(r(e).uri);if(a===void 0)return;let o=t(a),s=n===void 0?void 0:t(n).replace(/\/+$/,``);return s!==void 0&&o.startsWith(`${s}/`)?o.slice(s.length+1):o}function h(e,t){let n=e.slice(0,t),r=n.match(/\r\n|\r|\n/g),i=Math.max(n.lastIndexOf(`
2
+ `),n.lastIndexOf(`\r`))+1;return{line:r===null?0:r.length,character:t-i}}function g(e,t){return t.map(t=>{let n=r(t),{token:i,...a}=r(n._meta),{_meta:o,...s}=n,c={...s};if(Object.keys(a).length>0&&(c._meta=a),typeof i==`string`){delete c.range;let t=e.indexOf(i);t>=0&&(c.range={start:h(e,t),end:h(e,t+i.length)})}return c})}var _=`ahp:input/`,v=`ahp:new/`,y=e=>`$/ahp/composers/${encodeURIComponent(e)}`,b=new Map;function x(e,t){return b.set(e,t),()=>{b.get(e)===t&&b.delete(e)}}var S=e=>e.dataContext===void 0?void 0:b.get(e.dataContext),C=new Map;function w(e,t){let n=C.get(t.id);n===void 0?C.set(t.id,{count:1,registration:e.commands.register(t)}):n.count+=1;let r=!1;return{dispose(){if(r)return;r=!0;let e=C.get(t.id);e!==void 0&&(--e.count,!(e.count>0)&&(C.delete(t.id),e.registration.dispose()))}}}var T=e=>`/${e.trim().toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-|-$/g,``)}`;function E(e){if(e==null)return`default`;if(Array.isArray(e))return e.length===0?`none`:e.length<=2&&e.every(e=>typeof e==`string`)?e.join(`, `):`${e.length} items`;if(typeof e==`object`){let t=Object.entries(e).filter(([,e])=>e!==void 0&&!(Array.isArray(e)&&e.length===0));return t.length===0?`none`:t.map(([e,t])=>`${e} ${E(t)}`).join(`, `)}return String(e)}function D(e){let{schema:t,value:n}=e,r=n??t.default;if(t.type===`boolean`)return r===!0?`on`:`off`;let i=t.enum?.findIndex(e=>e===r)??-1;return i>=0?t.enumLabels?.[i]??String(r):E(r)}var O=e=>e.type===`boolean`||(e.enum?.length??0)>0,k=e=>O(e.schema)||D(e)!==`none`,A=e=>`ahp.composer.option.${e}`;function j(e,t){let n=T(t.title||e);return{id:A(e),title:t.title||e,...t.description===void 0?{}:{description:t.description},category:`Settings`,shortcut:n,slots:[_],run:t=>{let r=S(t),i=r?.options().find(t=>t.key===e);if(r===void 0||i===void 0)return;if(i.schema.type===`boolean`){r.setOption(e,!(i.value??i.schema.default??!1)),t.host?.closeMenu();return}let a=i.value??i.schema.default,o=(i.schema.enum??[]).map((t,n)=>({title:i.schema.enumLabels?.[n]??String(t),...i.schema.enumDescriptions?.[n]===void 0?{}:{description:i.schema.enumDescriptions[n]},active:t===a,onSelect:n=>{r.setOption(e,t),n.closeMenu()}}));t.host?.pushList({title:i.schema.title||e,items:o,sentinel:n})}}}function M(t,n){return e(...n.filter(e=>O(e.schema)).map(e=>w(t,j(e.key,e.schema))))}function N(t){return e(w(t,{id:`ahp.composer.model`,title:`Model`,description:`The model the next message is sent to`,category:`Settings`,shortcut:`/model`,slots:[_],disabled:e=>(S(e)?.models().length??0)===0,run:e=>{let t=S(e);if(t===void 0)return;let n=t.model(),r=e=>n=>{t.setModel(e),n.closeMenu()};e.host?.pushList({title:`Model`,sentinel:`/model`,items:[{title:`Agent default`,active:n===void 0,onSelect:r(void 0)},...t.models().map(e=>({title:e.name,description:e.id,active:e.id===n,onSelect:r(e.id)}))]})}}),w(t,{id:`ahp.composer.attach`,title:`Add context`,description:`Attach a file, a session, or a file from this computer`,category:`Session`,shortcut:`/attach`,slots:[_,v],run:e=>{let t=S(e);if(t===void 0)return;let r=e=>t=>{t.closeMenu(),e()},i=(e.store.get(`$/ahp/sessions`)??[]).filter(e=>e.resource!==t.session()&&e.defaultChat!==void 0);e.host?.pushList({title:`Add context`,sentinel:`/attach`,items:[{title:`${n.file} Files and folders`,description:`On the server's machine`,onSelect:r(()=>t.type(`@`))},{title:`${n.attach} Upload`,description:`From this computer, up to 5 MB each`,onSelect:r(()=>t.upload())},{title:`${n.sessions} Sessions`,description:i.length===0?`No other session`:`Another session's chat`,disabled:i.length===0,onSelect:e=>e.pushList({title:`Sessions`,items:i.map(e=>({title:e.title===``?`Untitled`:e.title,onSelect:r(()=>t.attach(c(e)))}))})},{title:`Commands`,description:`What the agent and this page can do`,onSelect:r(()=>t.type(`/`))}]})}}),w(t,{id:`ahp.composer.stop`,title:`Stop`,description:`Stop the turn that is running`,category:`Session`,shortcut:`/stop`,slots:[_],disabled:e=>S(e)?.running()!==!0,run:e=>{S(e)?.stop(),e.host?.closeMenu()}}),w(t,{id:`ahp.composer.new`,title:`New session`,description:`Start another session`,category:`Session`,shortcut:`/new`,slots:[_],run:e=>{e.host?.closeMenu(),e.scena.commands.execute(`ahp.newSession`)}}))}export{g as _,A as a,N as c,u as d,p as f,f as g,s as h,y as i,M as l,l as m,v as n,D as o,m as p,x as r,O as s,_ as t,k as u,d as v};
@@ -0,0 +1,2 @@
1
+ import{t as e}from"./react-CybPckBe.js";var t=class{buffer=[];base=0;cursors=new Set;closed=!1;bufferLimit;constructor(e=4096){this.bufferLimit=e}get isClosed(){return this.closed}get hasReaders(){return this.cursors.size>0}publish(e){if(this.closed)return;if(this.buffer.push(e),this.buffer.length>this.bufferLimit){let e=this.buffer.length-this.bufferLimit;this.buffer.splice(0,e),this.base+=e;for(let e of this.cursors)e.position<this.base&&(e.position=this.base)}let t=this.base+this.buffer.length-1;for(let e of this.cursors)if(e.waiter&&e.position<=t){let t=e.position-this.base,n=this.buffer[t];e.position+=1;let r=e.waiter;e.waiter=null,r.resolve({value:n,done:!1})}this.trim()}close(){if(!this.closed){this.closed=!0;for(let e of this.cursors)if(e.waiter&&e.position-this.base>=this.buffer.length){let t=e.waiter;e.waiter=null,t.resolve({value:void 0,done:!0})}}}reader(){let e={position:this.base+this.buffer.length,waiter:null,detached:this.closed};this.closed||this.cursors.add(e);let t=this,n=()=>{e.detached||(e.detached=!0,t.cursors.delete(e),t.trim())};return{[Symbol.asyncIterator](){return this},next(){if(e.detached)return Promise.resolve({value:void 0,done:!0});let n=e.position-t.base;if(n>=0&&n<t.buffer.length){let r=t.buffer[n];return e.position+=1,t.trim(),Promise.resolve({value:r,done:!1})}return t.closed?Promise.resolve({value:void 0,done:!0}):new Promise(t=>{e.waiter={resolve:t}})},return(){return n(),Promise.resolve({value:void 0,done:!0})}}}[Symbol.asyncIterator](){return this.reader()}trim(){if(this.cursors.size===0){let e=this.buffer.length;e>0&&(this.buffer=[],this.base+=e);return}let e=1/0;for(let t of this.cursors)t.position<e&&(e=t.position);let t=e-this.base;t>0&&(this.buffer.splice(0,t),this.base+=t)}},n=class extends Error{constructor(e,t){super(e,t),this.name=`AhpClientError`}},r=class extends n{code;data;constructor(e,t,n){super(`RPC error ${e}: ${t}`),this.name=`RpcError`,this.code=e,this.data=n}},i=class extends n{method;timeoutMs;constructor(e,t){super(`Request "${e}" timed out after ${t}ms`),this.name=`RpcTimeoutError`,this.method=e,this.timeoutMs=t}},a=class extends n{kind;constructor(e,t,n){super(t,n),this.name=`TransportError`,this.kind=e}},o=class extends n{constructor(e=`client shut down`){super(e),this.name=`ClientClosedError`}};function s(e,t){let n=Math.max(1,Math.floor(t));switch(e.kind){case`immediate`:return 0;case`constant`:return Math.max(0,e.delayMs);case`exponential`:{let t=Math.max(1,e.multiplier),r=n-1,i=e.initialMs*t**+r;return Math.min(Math.max(0,i),e.maxMs)}}}function c(e,t,n){let r=s(e.backoff,t);if(e.jitter<=0||r===0)return r;let i=Math.min(1,Math.max(0,e.jitter)),a=1+(Math.min(1,Math.max(0,n))*2-1)*i;return Math.max(0,r*a)}function l(e,t){return e.maxAttempts!==null&&t>e.maxAttempts}function u(){return{backoff:{kind:`exponential`,initialMs:250,maxMs:3e4,multiplier:2},jitter:.25,maxAttempts:null,resetOnSuccess:!0}}function d(){return u()}var f=`ahp-root://`;function p(e){return{id:e.id,label:e.label,clientId:e.clientId??null,initialSubscriptions:e.initialSubscriptions?[...e.initialSubscriptions]:[f],clientConfig:e.clientConfig??{},transportFactory:e.transportFactory,reconnectPolicy:e.reconnectPolicy??d()}}function m(e,t){return{hostId:e,channel:t.channel,event:t.event}}var h=class extends n{constructor(e,t){super(e,t),this.name=`HostMultiError`}},g=class extends h{hostId;constructor(e){super(`no host registered with id "${e}"`),this.name=`UnknownHostError`,this.hostId=e}},_=class extends h{hostId;constructor(e){super(`a host with id "${e}" is already registered`),this.name=`DuplicateHostError`,this.hostId=e}},v=class extends h{hostId;handleGeneration;currentGeneration;constructor(e,t,n){super(`host "${e}" reconnected (generation ${t} -> ${n}); request a fresh client handle`),this.name=`HostReconnectedError`,this.hostId=e,this.handleGeneration=t,this.currentGeneration=n}},y=class extends h{hostId;constructor(e){super(`host "${e}" runtime is no longer active`),this.name=`HostShutDownError`,this.hostId=e}},ee=class extends h{hostId;constructor(e){super(`host "${e}" is not currently connected`),this.name=`HostNotConnectedError`,this.hostId=e}},te=class extends h{hostId;constructor(e,t,n){super(`client id store error for host "${e}": ${t}`,n),this.name=`ClientIdStoreError`,this.hostId=e}};function ne(){let e=globalThis.crypto;if(e&&typeof e.randomUUID==`function`)return e.randomUUID();let t=new Uint8Array(16);if(e&&typeof e.getRandomValues==`function`)e.getRandomValues(t);else for(let e=0;e<16;e++)t[e]=Math.floor(Math.random()*256);t[6]=t[6]&15|64,t[8]=t[8]&63|128;let n=Array.from(t,e=>e.toString(16).padStart(2,`0`)).join(``);return`${n.slice(0,8)}-${n.slice(8,12)}-${n.slice(12,16)}-${n.slice(16,20)}-${n.slice(20)}`}var re=class{hostId;generation;source;client;constructor(e,t,n){this.source=e,this.hostId=e.hostId,this.generation=t,this.client=n}checkAlive(){if(this.source.shutdownReason!==null)throw new y(this.hostId);if(this.source.generation!==this.generation)throw new v(this.hostId,this.generation,this.source.generation)}dispatch(e,t,n){return this.checkAlive(),this.client.dispatch(e,t,n)}async request(e,t){return this.checkAlive(),this.client.request(e,t)}rawClient(){return this.checkAlive(),this.client}},ie;(function(e){e.Replay=`replay`,e.Snapshot=`snapshot`})(ie||={});var ae;(function(e){e.Base64=`base64`,e.Utf8=`utf-8`})(ae||={});var oe;(function(e){e.Truncate=`truncate`,e.Append=`append`,e.Insert=`insert`})(oe||={});var se;(function(e){e.File=`file`,e.Directory=`directory`,e.Symlink=`symlink`})(se||={});var b;(function(e){e.RootAgentsChanged=`root/agentsChanged`,e.RootActiveSessionsChanged=`root/activeSessionsChanged`,e.SessionReady=`session/ready`,e.SessionCreationFailed=`session/creationFailed`,e.SessionChatAdded=`session/chatAdded`,e.SessionChatRemoved=`session/chatRemoved`,e.SessionChatUpdated=`session/chatUpdated`,e.SessionChatsReordered=`session/chatsReordered`,e.SessionDefaultChatChanged=`session/defaultChatChanged`,e.ChatTurnStarted=`chat/turnStarted`,e.ChatDelta=`chat/delta`,e.ChatResponsePart=`chat/responsePart`,e.ChatToolCallStart=`chat/toolCallStart`,e.ChatToolCallDelta=`chat/toolCallDelta`,e.ChatToolCallReady=`chat/toolCallReady`,e.ChatToolCallConfirmed=`chat/toolCallConfirmed`,e.ChatToolCallComplete=`chat/toolCallComplete`,e.ChatToolCallResultConfirmed=`chat/toolCallResultConfirmed`,e.ChatToolCallContentChanged=`chat/toolCallContentChanged`,e.ChatToolCallAuthRequired=`chat/toolCallAuthRequired`,e.ChatToolCallAuthResolved=`chat/toolCallAuthResolved`,e.ChatTurnComplete=`chat/turnComplete`,e.ChatTurnCancelled=`chat/turnCancelled`,e.ChatError=`chat/error`,e.ChatTurnResume=`chat/turnResume`,e.ChatActivityChanged=`chat/activityChanged`,e.ChatBackgroundWorkSet=`chat/backgroundWorkSet`,e.ChatBackgroundWorkRemoved=`chat/backgroundWorkRemoved`,e.ChatMovableChanged=`chat/movableChanged`,e.ChatChangesetsChanged=`chat/changesetsChanged`,e.ChatCanvasesChanged=`chat/canvasesChanged`,e.CanvasStateChanged=`canvas/stateChanged`,e.ChatWorkingDirectorySet=`chat/workingDirectorySet`,e.ChatWorkingDirectoryRemoved=`chat/workingDirectoryRemoved`,e.SessionTitleChanged=`session/titleChanged`,e.ChatUsage=`chat/usage`,e.ChatReasoning=`chat/reasoning`,e.SessionServerToolsChanged=`session/serverToolsChanged`,e.SessionActiveClientSet=`session/activeClientSet`,e.SessionActiveClientRemoved=`session/activeClientRemoved`,e.SessionWorkingDirectorySet=`session/workingDirectorySet`,e.SessionWorkingDirectoryRemoved=`session/workingDirectoryRemoved`,e.SessionWorkingDirectoryReplaced=`session/workingDirectoryReplaced`,e.SessionInputNeededSet=`session/inputNeededSet`,e.SessionInputNeededRemoved=`session/inputNeededRemoved`,e.ChatPendingMessageSet=`chat/pendingMessageSet`,e.ChatPendingMessageRemoved=`chat/pendingMessageRemoved`,e.ChatQueuedMessagesReordered=`chat/queuedMessagesReordered`,e.ChatDraftChanged=`chat/draftChanged`,e.ChatIsReadChanged=`chat/isReadChanged`,e.ChatIsArchivedChanged=`chat/isArchivedChanged`,e.ChatInputRequested=`chat/inputRequested`,e.ChatInputAnswerChanged=`chat/inputAnswerChanged`,e.ChatInputCompleted=`chat/inputCompleted`,e.SessionCustomizationsChanged=`session/customizationsChanged`,e.SessionCustomizationToggled=`session/customizationToggled`,e.SessionCustomizationUpdated=`session/customizationUpdated`,e.SessionCustomizationRemoved=`session/customizationRemoved`,e.SessionMcpServerStateChanged=`session/mcpServerStateChanged`,e.SessionMcpServerStartRequested=`session/mcpServerStartRequested`,e.SessionMcpServerStopRequested=`session/mcpServerStopRequested`,e.SessionMcpServerBackgroundRequested=`session/mcpServerBackgroundRequested`,e.ChatTruncated=`chat/truncated`,e.ChatTurnsLoaded=`chat/turnsLoaded`,e.SessionIsReadChanged=`session/isReadChanged`,e.SessionIsArchivedChanged=`session/isArchivedChanged`,e.SessionActivityChanged=`session/activityChanged`,e.SessionChangesetsChanged=`session/changesetsChanged`,e.SessionConfigChanged=`session/configChanged`,e.SessionMetaChanged=`session/metaChanged`,e.ChangesetStatusChanged=`changeset/statusChanged`,e.ChangesetFileSet=`changeset/fileSet`,e.ChangesetFileRemoved=`changeset/fileRemoved`,e.ChangesetFilesReviewChanged=`changeset/filesReviewChanged`,e.ChangesetContentChanged=`changeset/contentChanged`,e.ChangesetOperationsChanged=`changeset/operationsChanged`,e.ChangesetOperationStatusChanged=`changeset/operationStatusChanged`,e.ChangesetCleared=`changeset/cleared`,e.AnnotationsSet=`annotations/set`,e.AnnotationsUpdated=`annotations/updated`,e.AnnotationsRemoved=`annotations/removed`,e.AnnotationsEntrySet=`annotations/entrySet`,e.AnnotationsEntryRemoved=`annotations/entryRemoved`,e.RootTerminalsChanged=`root/terminalsChanged`,e.RootConfigChanged=`root/configChanged`,e.TerminalData=`terminal/data`,e.TerminalInput=`terminal/input`,e.TerminalResized=`terminal/resized`,e.TerminalClaimed=`terminal/claimed`,e.TerminalTitleChanged=`terminal/titleChanged`,e.TerminalCwdChanged=`terminal/cwdChanged`,e.TerminalExited=`terminal/exited`,e.TerminalCleared=`terminal/cleared`,e.TerminalCommandDetectionAvailable=`terminal/commandDetectionAvailable`,e.TerminalCommandExecuted=`terminal/commandExecuted`,e.TerminalCommandFinished=`terminal/commandFinished`,e.ResourceWatchChanged=`resourceWatch/changed`,e.AutomationCreateRequested=`automation/createRequested`,e.AutomationUpdateRequested=`automation/updateRequested`,e.AutomationSet=`automation/set`,e.AutomationRemoved=`automation/removed`,e.AutomationRunLifecycleChanged=`automationRun/lifecycleChanged`,e.AutomationRunSessionSet=`automationRun/sessionSet`,e.AutomationRunSessionRemoved=`automationRun/sessionRemoved`,e.AutomationRunPrimarySessionChanged=`automationRun/primarySessionChanged`,e.AutomationRunCancelRequested=`automationRun/cancelRequested`})(b||={});var ce=`1.0.0`,le=Object.freeze([`1.0.0`,`0.9.0`]);b.RootAgentsChanged,b.RootActiveSessionsChanged,b.SessionReady,b.SessionCreationFailed,b.SessionChatAdded,b.SessionChatRemoved,b.SessionChatUpdated,b.SessionChatsReordered,b.SessionDefaultChatChanged,b.SessionTitleChanged,b.SessionServerToolsChanged,b.SessionActiveClientSet,b.SessionActiveClientRemoved,b.SessionWorkingDirectorySet,b.SessionWorkingDirectoryRemoved,b.SessionWorkingDirectoryReplaced,b.SessionInputNeededSet,b.SessionInputNeededRemoved,b.SessionCustomizationsChanged,b.SessionCustomizationToggled,b.SessionCustomizationUpdated,b.SessionCustomizationRemoved,b.SessionMcpServerStateChanged,b.SessionMcpServerStartRequested,b.SessionMcpServerStopRequested,b.SessionMcpServerBackgroundRequested,b.SessionIsReadChanged,b.SessionIsArchivedChanged,b.SessionActivityChanged,b.SessionChangesetsChanged,b.SessionConfigChanged,b.SessionMetaChanged,b.ChatTurnStarted,b.ChatDelta,b.ChatResponsePart,b.ChatToolCallStart,b.ChatToolCallDelta,b.ChatToolCallReady,b.ChatToolCallConfirmed,b.ChatToolCallComplete,b.ChatToolCallResultConfirmed,b.ChatToolCallContentChanged,b.ChatToolCallAuthRequired,b.ChatToolCallAuthResolved,b.ChatTurnComplete,b.ChatTurnCancelled,b.ChatError,b.ChatTurnResume,b.ChatActivityChanged,b.ChatBackgroundWorkSet,b.ChatBackgroundWorkRemoved,b.ChatMovableChanged,b.ChatChangesetsChanged,b.ChatCanvasesChanged,b.CanvasStateChanged,b.ChatWorkingDirectorySet,b.ChatWorkingDirectoryRemoved,b.ChatUsage,b.ChatReasoning,b.ChatPendingMessageSet,b.ChatPendingMessageRemoved,b.ChatQueuedMessagesReordered,b.ChatDraftChanged,b.ChatIsReadChanged,b.ChatIsArchivedChanged,b.ChatInputRequested,b.ChatInputAnswerChanged,b.ChatInputCompleted,b.ChatTruncated,b.ChatTurnsLoaded,b.ChangesetStatusChanged,b.ChangesetFileSet,b.ChangesetFileRemoved,b.ChangesetFilesReviewChanged,b.ChangesetContentChanged,b.ChangesetOperationsChanged,b.ChangesetOperationStatusChanged,b.ChangesetCleared,b.AnnotationsSet,b.AnnotationsUpdated,b.AnnotationsRemoved,b.AnnotationsEntrySet,b.AnnotationsEntryRemoved,b.RootTerminalsChanged,b.RootConfigChanged,b.TerminalData,b.TerminalInput,b.TerminalResized,b.TerminalClaimed,b.TerminalTitleChanged,b.TerminalCwdChanged,b.TerminalExited,b.TerminalCleared,b.TerminalCommandDetectionAvailable,b.TerminalCommandExecuted,b.TerminalCommandFinished,b.ResourceWatchChanged,b.AutomationCreateRequested,b.AutomationUpdateRequested,b.AutomationSet,b.AutomationRemoved,b.AutomationRunLifecycleChanged,b.AutomationRunSessionSet,b.AutomationRunSessionRemoved,b.AutomationRunPrimarySessionChanged,b.AutomationRunCancelRequested;var ue={ParseError:-32700,InvalidRequest:-32600,MethodNotFound:-32601,InvalidParams:-32602,InternalError:-32603},de={SessionNotFound:-32001,ProviderNotFound:-32002,SessionAlreadyExists:-32003,TurnInProgress:-32004,UnsupportedProtocolVersion:-32005,AuthRequired:-32007,NotFound:-32008,PermissionDenied:-32009,AlreadyExists:-32010,Conflict:-32011};function fe(e){return JSON.stringify(e)}function pe(e){try{return JSON.parse(e)}catch(e){throw new a(`protocol`,`invalid JSON: ${e.message}`,{cause:e})}}var me=3e4,he=4096;function ge(){}var _e=class{uri;inner;constructor(e,t){this.uri=e,this.inner=t}next(){return this.inner.next()}return(){return this.inner.return?this.inner.return():Promise.resolve({value:void 0,done:!0})}[Symbol.asyncIterator](){return this}async close(){await this.return()}};function ve(e){return(async(t,n)=>{let i=e[t];if(!i)throw new r(ue.MethodNotFound,`no handler for server method "${t}"`);return i(n)})}var ye=class{transport;requestTimeoutMs;subscriptionBuffer;pending=new Map;subscriptions=new Map;allEvents=new t;stateQueue=new t;nextRequestId=1;nextClientSeq=1;state={status:`idle`};receiveLoop=null;serverRequestHandler=null;constructor(e,t={}){this.transport=e;let n=t.requestTimeoutMs??me;this.requestTimeoutMs=n>0?n:0;let r=t.subscriptionBuffer??he;this.subscriptionBuffer=r>=1?Math.floor(r):1}get connectionState(){return this.state}stateChanges(){return this.stateQueue.reader()}events(){return this.allEvents.reader()}setServerRequestHandler(e){this.serverRequestHandler=e}setResourceRequestHandlers(e){this.setServerRequestHandler(e?ve(e):null)}connect(){this.receiveLoop||=(this.setState({status:`connected`}),this.driveTransport())}async shutdown(){if(this.state.status!==`closing`&&this.state.status!==`closed`){this.setState({status:`closing`}),this.tearDown({type:`shutdown`});try{await this.transport.close()}catch{}if(this.receiveLoop)try{await this.receiveLoop}catch{}}}async initialize(e){let t={channel:`ahp-root://`,clientId:e.clientId,protocolVersions:[...e.protocolVersions],...e.initialSubscriptions&&e.initialSubscriptions.length>0?{initialSubscriptions:[...e.initialSubscriptions]}:{},...e.locale===void 0?{}:{locale:e.locale}};return this.request(`initialize`,t)}async reconnect(e){let t={channel:`ahp-root://`,clientId:e.clientId,lastSeenServerSeq:e.lastSeenServerSeq,subscriptions:[...e.subscriptions]};return this.request(`reconnect`,t)}async subscribe(e,t={}){let n=this.attachSubscription(e);try{let r={channel:e,...t.delivery?{delivery:t.delivery}:{},...t.view?{view:t.view}:{}};return{result:await this.request(`subscribe`,r),subscription:n}}catch(e){throw await n.close(),e}}attachSubscription(e){this.assertOpen();let n=this.subscriptions.get(e);return n||(n=new t(this.subscriptionBuffer),this.subscriptions.set(e,n)),new _e(e,n.reader())}async unsubscribe(e){if(this.isClosed())return;let t=this.subscriptions.get(e);t&&(this.subscriptions.delete(e),t.close());let n={channel:e};return this.notify(`unsubscribe`,n),Promise.resolve()}dispatch(e,t,n){this.assertOpen();let r=n??this.nextClientSeq;(n===void 0||r+1>this.nextClientSeq)&&(this.nextClientSeq=r+1);let i={channel:e,clientSeq:r,action:t};return this.notify(`dispatchAction`,i),{clientSeq:r}}async ping(){await this.request(`ping`,{channel:`ahp-root://`})}async resourceRead(e){return this.request(`resourceRead`,{...e,channel:`ahp-root://`})}async resourceWrite(e){return this.request(`resourceWrite`,{...e,channel:`ahp-root://`})}async resourceList(e){return this.request(`resourceList`,{...e,channel:`ahp-root://`})}async resourceCopy(e){return this.request(`resourceCopy`,{...e,channel:`ahp-root://`})}async resourceDelete(e){return this.request(`resourceDelete`,{...e,channel:`ahp-root://`})}async resourceMove(e){return this.request(`resourceMove`,{...e,channel:`ahp-root://`})}async resourceResolve(e){return this.request(`resourceResolve`,{...e,channel:`ahp-root://`})}async resourceMkdir(e){return this.request(`resourceMkdir`,{...e,channel:`ahp-root://`})}async resourceRequest(e){return this.request(`resourceRequest`,{...e,channel:`ahp-root://`})}async createResourceWatch(e){return this.request(`createResourceWatch`,{...e,channel:`ahp-root://`})}async completions(e){return this.request(`completions`,e)}async sessionConfigCompletions(e){return this.request(`sessionConfigCompletions`,{...e,channel:`ahp-root://`})}async request(e,t){this.assertOpen();let n=this.nextRequestId++,r={jsonrpc:`2.0`,id:n,method:e,params:t};return new Promise((t,a)=>{let o={resolve:e=>t(e),reject:a,method:e,timer:null};this.pending.set(n,o),this.requestTimeoutMs>0&&(o.timer=setTimeout(()=>{this.pending.delete(n)&&a(new i(e,this.requestTimeoutMs))},this.requestTimeoutMs)),this.sendMessage(r).catch(e=>{this.pending.delete(n)&&(o.timer&&clearTimeout(o.timer),a(e))})})}notify(e,t){this.assertOpen();let n={jsonrpc:`2.0`,method:e,params:t};this.sendMessage(n).catch(ge)}isClosed(){return this.state.status===`closing`||this.state.status===`closed`}assertOpen(){if(this.isClosed())throw new o}async sendMessage(e){try{await this.transport.send(e)}catch(e){let t=e instanceof a?e:new a(`io`,`transport send failed: ${e.message}`,{cause:e});throw this.tearDown({type:`transport`,error:t}),t}}setState(e){this.state=e,this.stateQueue.publish(e)}tearDown(e){if(this.state.status===`closed`)return;this.setState({status:`closed`,reason:e});let t=e.type===`shutdown`?new o:e.error;for(let[e,n]of this.pending){n.timer&&clearTimeout(n.timer);try{n.reject(t)}catch{}this.pending.delete(e)}for(let e of this.subscriptions.values())e.close();this.subscriptions.clear(),this.allEvents.close(),this.stateQueue.close()}async driveTransport(){try{for(;this.state.status===`connected`;){let e=await this.transport.recv();if(e===null){this.tearDown({type:`transport`,error:new a(`closed`,`transport closed`)});return}this.handleFrame(e)}}catch(e){let t=e instanceof a?e:new a(`io`,`transport recv failed: ${e.message}`,{cause:e});this.tearDown({type:`transport`,error:t})}}handleFrame(e){let t;try{switch(e.kind){case`parsed`:t=e.message;break;case`text`:t=pe(e.text);break;case`binary`:t=pe(new TextDecoder(`utf-8`).decode(e.data))}}catch(e){console.warn(`AhpClient: malformed inbound frame: ${e.message}`);return}this.dispatchInbound(t)}dispatchInbound(e){if(`id`in e&&`result`in e){let t=e,n=this.pending.get(t.id);n&&(this.pending.delete(t.id),n.timer&&clearTimeout(n.timer),n.resolve(t.result));return}if(`id`in e&&`error`in e){let t=e,n=this.pending.get(t.id);n&&(this.pending.delete(t.id),n.timer&&clearTimeout(n.timer),n.reject(new r(t.error.code,t.error.message,t.error.data)));return}if(`id`in e&&`method`in e){this.handleServerRequest(e);return}if(`method`in e){this.handleNotification(e);return}}async handleServerRequest(e){if(this.serverRequestHandler){try{let t=this.serverRequestHandler,n=await t(e.method,e.params),r={jsonrpc:`2.0`,id:e.id,result:n};this.sendMessage(r).catch(ge)}catch(t){let n=t instanceof r?t.code:ue.InternalError,i=t instanceof Error?t.message:String(t),a=t instanceof r?t.data:void 0,o={jsonrpc:`2.0`,id:e.id,error:a===void 0?{code:n,message:i}:{code:n,message:i,data:a}};this.sendMessage(o).catch(ge)}return}let t={jsonrpc:`2.0`,id:e.id,error:{code:ue.MethodNotFound,message:`no handler for server method "${e.method}"`}};this.sendMessage(t).catch(ge)}handleNotification(e){switch((e.params??{}).channel,e.method){case`action`:{let t=e.params;this.fanOut(t.channel,{type:`action`,params:t});break}case`root/sessionAdded`:{let t=e.params;this.fanOut(t.channel,{type:`sessionAdded`,params:t});break}case`root/sessionRemoved`:{let t=e.params;this.fanOut(t.channel,{type:`sessionRemoved`,params:t});break}case`root/sessionSummaryChanged`:{let t=e.params;this.fanOut(t.channel,{type:`sessionSummaryChanged`,params:t});break}case`auth/required`:{let t=e.params;this.fanOut(t.channel,{type:`authRequired`,params:t});break}}}fanOut(e,t){let n=this.subscriptions.get(e);n&&n.publish(t),this.allEvents.publish({channel:e,event:t})}};b.RootAgentsChanged,b.RootActiveSessionsChanged,b.RootTerminalsChanged,b.RootConfigChanged,b.SessionReady,b.SessionCreationFailed,b.SessionChatAdded,b.SessionChatRemoved,b.SessionChatUpdated,b.SessionChatsReordered,b.SessionDefaultChatChanged,b.SessionTitleChanged,b.SessionServerToolsChanged,b.SessionActiveClientSet,b.SessionActiveClientRemoved,b.SessionWorkingDirectorySet,b.SessionWorkingDirectoryRemoved,b.SessionWorkingDirectoryReplaced,b.SessionInputNeededSet,b.SessionInputNeededRemoved,b.SessionCustomizationsChanged,b.SessionCustomizationToggled,b.SessionCustomizationUpdated,b.SessionCustomizationRemoved,b.SessionMcpServerStateChanged,b.SessionMcpServerStartRequested,b.SessionMcpServerStopRequested,b.SessionMcpServerBackgroundRequested,b.SessionIsReadChanged,b.SessionIsArchivedChanged,b.SessionActivityChanged,b.SessionChangesetsChanged,b.SessionConfigChanged,b.SessionMetaChanged,b.ChatTurnStarted,b.ChatDelta,b.ChatResponsePart,b.ChatToolCallStart,b.ChatToolCallDelta,b.ChatToolCallReady,b.ChatToolCallConfirmed,b.ChatToolCallComplete,b.ChatToolCallResultConfirmed,b.ChatToolCallContentChanged,b.ChatToolCallAuthRequired,b.ChatToolCallAuthResolved,b.ChatTurnComplete,b.ChatTurnCancelled,b.ChatError,b.ChatTurnResume,b.ChatActivityChanged,b.ChatBackgroundWorkSet,b.ChatBackgroundWorkRemoved,b.ChatMovableChanged,b.ChatChangesetsChanged,b.ChatCanvasesChanged,b.CanvasStateChanged,b.ChatWorkingDirectorySet,b.ChatWorkingDirectoryRemoved,b.ChatUsage,b.ChatReasoning,b.ChatPendingMessageSet,b.ChatPendingMessageRemoved,b.ChatQueuedMessagesReordered,b.ChatDraftChanged,b.ChatIsReadChanged,b.ChatIsArchivedChanged,b.ChatInputRequested,b.ChatInputAnswerChanged,b.ChatInputCompleted,b.ChatTruncated,b.ChatTurnsLoaded,b.ChangesetStatusChanged,b.ChangesetFileSet,b.ChangesetFileRemoved,b.ChangesetFilesReviewChanged,b.ChangesetContentChanged,b.ChangesetOperationsChanged,b.ChangesetOperationStatusChanged,b.ChangesetCleared,b.AnnotationsSet,b.AnnotationsUpdated,b.AnnotationsRemoved,b.AnnotationsEntrySet,b.AnnotationsEntryRemoved,b.TerminalData,b.TerminalInput,b.TerminalResized,b.TerminalClaimed,b.TerminalTitleChanged,b.TerminalCwdChanged,b.TerminalExited,b.TerminalCleared,b.TerminalCommandDetectionAvailable,b.TerminalCommandExecuted,b.TerminalCommandFinished,b.ResourceWatchChanged,b.AutomationCreateRequested,b.AutomationUpdateRequested,b.AutomationSet,b.AutomationRemoved,b.AutomationRunLifecycleChanged,b.AutomationRunSessionSet,b.AutomationRunSessionRemoved,b.AutomationRunPrimarySessionChanged,b.AutomationRunCancelRequested;function x(e,t){let n=`Unhandled action type: ${JSON.stringify(e)}`;(t??console.warn)(n)}function be(e,t,n){switch(t.type){case b.RootAgentsChanged:return{...e,agents:t.agents};case b.RootActiveSessionsChanged:return{...e,activeSessions:t.activeSessions};case b.RootTerminalsChanged:return{...e,terminals:t.terminals};case b.RootConfigChanged:return e.config?{...e,config:{...e.config,values:t.replace?{...t.config}:{...e.config.values,...t.config}}}:e;default:return x(t,n),e}}function xe(e,t){return{id:e.id,label:e.label,clientId:t,state:{status:`disconnected`},lastError:null,lastConnectedAt:null,protocolVersion:null,serverSeq:0,defaultDirectory:null,automations:null,rootState:{agents:[]},subscriptions:[...e.initialSubscriptions],completionTriggerCharacters:[],sessionSummaries:new Map,generation:0,currentClient:null,shutdownReason:null}}function Se(e){return{id:e.id,label:e.label,clientId:e.clientId,state:e.state,lastError:e.lastError,lastConnectedAt:e.lastConnectedAt,protocolVersion:e.protocolVersion,serverSeq:e.serverSeq,defaultDirectory:e.defaultDirectory,automations:e.automations,agents:[...e.rootState.agents],activeSessions:e.rootState.activeSessions??null,terminals:e.rootState.terminals?[...e.rootState.terminals]:null,subscriptions:[...e.subscriptions],completionTriggerCharacters:[...e.completionTriggerCharacters],sessionSummaries:Array.from(e.sessionSummaries.values()),generation:e.generation}}var S=Symbol(`aborted`);function C(e,t){return e.then(void 0,()=>void 0),t.aborted?Promise.resolve(S):new Promise((n,r)=>{let i=()=>{t.removeEventListener(`abort`,i),n(S)};t.addEventListener(`abort`,i,{once:!0}),e.then(e=>{t.removeEventListener(`abort`,i),n(e)},e=>{t.removeEventListener(`abort`,i),r(e)})})}function Ce(e,...t){return e<=0?Promise.resolve(!0):t.some(e=>e.aborted)?Promise.resolve(!1):new Promise(n=>{let r=[],i=setTimeout(()=>{for(let e of r)e();n(!0)},e);for(let e of t){let t=()=>{clearTimeout(i);for(let e of r)e();n(!1)};e.addEventListener(`abort`,t,{once:!0}),r.push(()=>e.removeEventListener(`abort`,t))}})}function we(...e){return e.some(e=>e.aborted)?Promise.resolve():new Promise(t=>{let n=[];for(let r of e){let e=()=>{for(let e of n)e();t()};r.addEventListener(`abort`,e,{once:!0}),n.push(()=>r.removeEventListener(`abort`,e))}})}function Te(...e){let t=new AbortController;if(e.some(e=>e.aborted))return t.abort(),{signal:t.signal,dispose:()=>void 0};let n=[],r=()=>{for(let e of n)e();n.length=0,t.abort()};for(let t of e)t.addEventListener(`abort`,r,{once:!0}),n.push(()=>t.removeEventListener(`abort`,r));return{signal:t.signal,dispose:()=>{for(let e of n)e();n.length=0}}}var Ee={agents:[]},De=class{config;shared;handleSource;fanOut;hostEvents;shutdownController=new AbortController;manualReconnectController=new AbortController;supervisorPromise=null;reconnectAck=null;constructor(e,t,n,r){this.config=e,this.fanOut=n,this.hostEvents=r,this.shared=xe(e,t),this.handleSource={hostId:this.shared.id,generation:this.shared.generation,currentClient:this.shared.currentClient,shutdownReason:this.shared.shutdownReason}}start(){this.supervisorPromise===null&&(this.hostEvents.publish({type:`added`,hostId:this.shared.id}),this.supervisorPromise=this.runSupervisor().catch(e=>{console.error(`HostRuntime[${this.shared.id}] supervisor crashed:`,e)}))}async reconnect(){if(this.shared.shutdownReason!==null)return;let e=this.reconnectAck??this.makeReconnectAck();this.reconnectAck=e,this.manualReconnectController.abort(),await e.promise}async shutdown(e=`removed`){if(this.shared.shutdownReason!==null){this.supervisorPromise&&await this.supervisorPromise;return}this.shared.shutdownReason=e,this.handleSource.shutdownReason=e,this.shutdownController.abort(),this.reconnectAck?.resolve(),this.supervisorPromise&&await this.supervisorPromise}async subscribe(e){if(this.shared.shutdownReason!==null)throw new y(this.shared.id);let t=this.shared.currentClient;if(!t)throw this.trackSubscription(e),new ee(this.shared.id);let{result:n}=await t.subscribe(e);return this.trackSubscription(e),n}async unsubscribe(e){if(this.shared.shutdownReason!==null){this.untrackSubscription(e);return}let t=this.shared.currentClient;this.untrackSubscription(e),t&&await t.unsubscribe(e)}dispatch(e,t,n){if(this.shared.shutdownReason!==null)throw new y(this.shared.id);let r=this.shared.currentClient;if(!r)throw new ee(this.shared.id);return r.dispatch(e,t,n)}async runSupervisor(){let e=this.config.reconnectPolicy,t=0;for(;this.shared.shutdownReason===null;){t+=1,this.transitionTo(t===1?{status:`connecting`}:{status:`reconnecting`,attempt:t-1},null);let n=this.reconnectAck;this.reconnectAck=null,n?.resolve();let r=null;try{r=await this.connectOnce()}catch(e){if(this.shared.shutdownReason!==null)break;if(this.manualReconnectController.signal.aborted){this.resetManualReconnectController(),t=0;continue}let n=Oe(e);this.shared.lastError=n,console.warn(`HostRuntime[${this.shared.id}] connect attempt ${t} failed:`,n)}if(r===null){if(this.shared.shutdownReason!==null)break;if(l(e,t)){let e=this.shared.lastError??Error(`connect failed`);if(this.transitionTo({status:`failed`,error:e},e),!await this.waitForManualReconnectOrShutdown())break;this.resetManualReconnectController(),t=0;continue}if(!await Ce(c(e,t,Math.random()),this.shutdownController.signal,this.manualReconnectController.signal)){if(this.shared.shutdownReason!==null)break;this.resetManualReconnectController(),t=0}continue}e.resetOnSuccess&&(t=0);let i=await this.runConnection(r.events);if(await this.tearDownClient(),i===`shutdown`)break;if(i===`manualReconnect`){this.resetManualReconnectController(),t=0;continue}}this.handleSource.currentClient=null,this.handleSource.generation=this.shared.generation}async connectOnce(){let e=this.shutdownController.signal,t=this.manualReconnectController.signal,n=Te(e,t),i=n.signal;try{let e=await C(this.config.transportFactory(this.shared.id,i),i);if(e===S)throw Error(`connect aborted`);let t=new ye(e,this.config.clientConfig);t.connect();let n=t.events(),a=!1;try{let e={serverSeq:this.shared.serverSeq,subscriptions:[...this.shared.subscriptions]},o=e.serverSeq>0&&e.subscriptions.length>0,s=null,c=null,l=e.serverSeq,u=null,d=null,p=this.shared.automations,m=[];if(o)try{let n=await C(t.reconnect({clientId:this.shared.clientId,lastSeenServerSeq:e.serverSeq,subscriptions:e.subscriptions}),i);if(n===S)throw Error(`reconnect aborted`);s=n}catch(n){if(this.shared.shutdownReason!==null||i.aborted||!(n instanceof r))throw n;let a=await C(t.initialize({clientId:this.shared.clientId,protocolVersions:[ce],initialSubscriptions:e.subscriptions}),i);if(a===S)throw Error(`initialize aborted`);c=a.snapshots,l=a.serverSeq,u=a.protocolVersion,d=a.defaultDirectory??null,p=a.automations??null,m=a.completionTriggerCharacters??[]}else{let n=await C(t.initialize({clientId:this.shared.clientId,protocolVersions:[ce],initialSubscriptions:e.subscriptions}),i);if(n===S)throw Error(`initialize aborted`);c=n.snapshots,l=n.serverSeq,u=n.protocolVersion,d=n.defaultDirectory??null,p=n.automations??null,m=n.completionTriggerCharacters??[]}let h=null;try{let e=await C(t.request(`listSessions`,{channel:f}),i);e!==S&&(h=e)}catch{}if(i.aborted)throw Error(`connect aborted`);let g=null,_=[],v=null;if(s!==null){if(s.type===ie.Replay){for(let e of s.actions)_.push(e);if(s.missing.length>0){let e=new Set(s.missing);g=this.shared.subscriptions.filter(t=>!e.has(t))}}else{let t=new Set(s.snapshots.map(e=>e.resource)),n=new Set(e.subscriptions);v=this.shared.subscriptions.filter(e=>t.has(e)||!n.has(e));for(let e of s.snapshots)e.fromSeq>l&&(l=e.fromSeq),e.resource===`ahp-root://`&&(this.shared.rootState=e.state??Ee)}}if(this.shared.generation+=1,this.shared.currentClient=t,this.shared.lastConnectedAt=Date.now(),this.shared.lastError=null,this.shared.serverSeq<l&&(this.shared.serverSeq=l),c!==null){let e=c.find(e=>e.resource===f);e&&(this.shared.rootState=e.state??Ee),u&&(this.shared.protocolVersion=u),this.shared.defaultDirectory=d,this.shared.automations=p,this.shared.completionTriggerCharacters=[...m]}if(h!==null){this.shared.sessionSummaries.clear();for(let e of h.items)this.shared.sessionSummaries.set(e.resource,e)}g===null?v!==null&&(this.shared.subscriptions=v):this.shared.subscriptions=g,this.handleSource.generation=this.shared.generation,this.handleSource.currentClient=t;for(let e of _)this.applyEnvelopeLocally(e),this.fanOut.publish({hostId:this.shared.id,channel:e.channel,event:{type:`action`,params:e}});return this.transitionTo({status:`connected`},null),this.hostEvents.publish({type:`connected`,hostId:this.shared.id,generation:this.shared.generation}),a=!0,{client:t,events:n}}finally{if(!a)try{await t.shutdown()}catch{}}}finally{n.dispose()}}async runConnection(e){let t=this.shutdownController.signal,n=this.manualReconnectController.signal;for(;;){if(t.aborted)return`shutdown`;if(n.aborted)return`manualReconnect`;let r=e.next(),i=we(t,n),a=await Promise.race([r.then(e=>({kind:`event`,value:e})),i.then(()=>({kind:`aborted`}))]);if(a.kind===`aborted`)return t.aborted?`shutdown`:`manualReconnect`;let o=a.value;if(o.done)return`disconnected`;this.handleEvent(o.value)}}async waitForManualReconnectOrShutdown(){return await we(this.shutdownController.signal,this.manualReconnectController.signal),!this.shutdownController.signal.aborted}async tearDownClient(){let e=this.shared.currentClient;if(this.shared.currentClient=null,this.handleSource.currentClient=null,e)try{await e.shutdown()}catch{}}handleEvent(e){switch(e.event.type){case`action`:this.applyEnvelopeLocally(e.event.params);break;case`sessionAdded`:{let t=e.event.params.summary;this.shared.sessionSummaries.set(t.resource,t);break}case`sessionRemoved`:this.shared.sessionSummaries.delete(e.event.params.session);break;case`sessionSummaryChanged`:ke(this.shared.sessionSummaries,e.event.params)}this.fanOut.publish(m(this.shared.id,e))}applyEnvelopeLocally(e){e.serverSeq>this.shared.serverSeq&&(this.shared.serverSeq=e.serverSeq),e.channel===`ahp-root://`&&(this.shared.rootState=be(this.shared.rootState,e.action))}trackSubscription(e){this.shared.subscriptions.includes(e)||this.shared.subscriptions.push(e)}untrackSubscription(e){this.shared.subscriptions=this.shared.subscriptions.filter(t=>t!==e)}transitionTo(e,t){this.shared.state=e,t!==null&&(this.shared.lastError=t),this.hostEvents.publish({type:`stateChanged`,hostId:this.shared.id,state:e,lastError:t??this.shared.lastError})}resetManualReconnectController(){this.manualReconnectController=new AbortController}makeReconnectAck(){let e;return{promise:new Promise(t=>{e=t}),resolve:e}}};function Oe(e){return e instanceof Error?e:Error(String(e))}function ke(e,t){let n=e.get(t.session);if(!n)return;let r={...n},i=t.changes;i.title!==void 0&&(r.title=i.title),i.status!==void 0&&(r.status=i.status),i.activity!==void 0&&(r.activity=i.activity),i.origin!==void 0&&(r.origin=i.origin),i.modifiedAt!==void 0&&(r.modifiedAt=i.modifiedAt),i.project!==void 0&&(r.project=i.project),i.workingDirectories!==void 0&&(r.workingDirectories=i.workingDirectories),i._meta!==void 0&&(r._meta=i._meta),i.chats!==void 0&&(r.chats=i.chats),e.set(t.session,r)}var Ae=class{inner=new Map;load(e){return Promise.resolve(this.inner.get(e)??null)}store(e,t){return this.inner.set(e,t),Promise.resolve()}},je=1024,Me=class e{hosts=new Map;pendingHostIds=new Set;fanOut;hostEventsQueue;clientIdStore;shutdownController=new AbortController;shutDown=!1;constructor(e={}){this.clientIdStore=e.clientIdStore??new Ae;let n=e.eventBuffer??je;this.fanOut=new t(n),this.hostEventsQueue=new t(n)}static async single(t,n={}){let r=new e(n);return{multi:r,host:await r.addHost(t)}}async addHost(e){this.assertOpen();let t=e.id;if(this.hosts.has(t)||this.pendingHostIds.has(t))throw new _(t);this.pendingHostIds.add(t);try{let n=p(e),r=await this.resolveClientId(t,n.clientId);if(this.assertOpen(),this.hosts.has(t))throw new _(t);let i=new De(n,r,this.fanOut,this.hostEventsQueue);return this.hosts.set(t,i),i.start(),Se(i.shared)}finally{this.pendingHostIds.delete(t)}}async removeHost(e){let t=this.hosts.get(e);if(!t)throw new g(e);this.hosts.delete(e),await t.shutdown(`removed`),this.hostEventsQueue.publish({type:`removed`,hostId:e})}async reconnectHost(e){let t=this.hosts.get(e);if(!t)throw new g(e);await t.reconnect()}async reconnectAllUnavailable(){let e=[];for(let[t,n]of this.hosts){let r=n.shared.state.status;r!==`connected`&&r!==`connecting`&&e.push({id:t,runtime:n})}if(e.length===0)return new Map;let t=new Map;return await Promise.all(e.map(async({id:e,runtime:n})=>{try{await n.reconnect()}catch(n){t.set(e,n instanceof Error?n:Error(String(n)))}})),t}host(e){let t=this.hosts.get(e);return t?Se(t.shared):void 0}hostsSnapshot(){return Array.from(this.hosts.values(),e=>Se(e.shared))}client(e){let t=this.hosts.get(e);if(!t)return;let n=t.shared.currentClient;if(n)return new re(t.handleSource,t.shared.generation,n)}async subscribe(e,t){let n=this.hosts.get(e);if(!n)throw new g(e);return n.subscribe(t)}async unsubscribe(e,t){let n=this.hosts.get(e);if(!n)throw new g(e);await n.unsubscribe(t)}dispatch(e,t,n,r){let i=this.hosts.get(e);if(!i)throw new g(e);return i.dispatch(t,n,r)}events(){return this.fanOut.reader()}hostEvents(){return this.hostEventsQueue.reader()}aggregatedSessions(){let e=[];for(let t of this.hosts.values()){let{id:n,label:r,sessionSummaries:i}=t.shared;for(let t of i.values())e.push({hostId:n,hostLabel:r,summary:t})}return e.sort((e,t)=>e.summary.modifiedAt<t.summary.modifiedAt?1:e.summary.modifiedAt>t.summary.modifiedAt?-1:0),e}aggregatedAgents(){let e=[];for(let t of this.hosts.values()){let{id:n,label:r,rootState:i}=t.shared;for(let t of i.agents)e.push({hostId:n,hostLabel:r,agent:t})}return e}async shutdown(){if(this.shutDown)return;this.shutDown=!0,this.shutdownController.abort();let e=Array.from(this.hosts.values());this.hosts.clear(),await Promise.all(e.map(e=>e.shutdown(`shutdown`))),this.fanOut.close(),this.hostEventsQueue.close()}assertOpen(){if(this.shutDown)throw new y(`<multi-host client>`)}async resolveClientId(e,t){let n=this.shutdownController.signal;if(t!==null){try{await this.clientIdStore.store(e,t,n)}catch(t){throw new te(e,t.message??String(t),{cause:t})}return t}let r;try{r=await this.clientIdStore.load(e,n)}catch(t){throw new te(e,t.message??String(t),{cause:t})}let i=r??ne();try{await this.clientIdStore.store(e,i,n)}catch(t){throw new te(e,t.message??String(t),{cause:t})}return i}},Ne;(function(e){e.Computing=`computing`,e.Recomputing=`recomputing`,e.Ready=`ready`,e.Error=`error`})(Ne||={});var Pe;(function(e){e.Idle=`idle`,e.Running=`running`,e.Error=`error`,e.Disabled=`disabled`})(Pe||={});var Fe;(function(e){e.Changeset=`changeset`,e.Resource=`resource`,e.Range=`range`})(Fe||={});function Ie(e,t,n){switch(t.type){case b.ChangesetStatusChanged:{if(t.status===Ne.Error)return{...e,status:t.status,error:t.error};let{error:n,...r}=e;return{...r,status:t.status}}case b.ChangesetFileSet:{let n=e.files.findIndex(e=>e.id===t.file.id);if(n<0)return{...e,files:[...e.files,t.file]};let r=[...e.files];return r[n]=t.file,{...e,files:r}}case b.ChangesetFileRemoved:{let n=e.files.findIndex(e=>e.id===t.fileId);if(n<0)return e;let r=[...e.files];return r.splice(n,1),{...e,files:r}}case b.ChangesetFilesReviewChanged:{let n=!1,r=new Set(t.files),i=e.files.map(e=>!r.has(e.id)||e.reviewed===t.reviewed?e:(n=!0,{...e,reviewed:t.reviewed}));return n?{...e,files:i}:e}case b.ChangesetContentChanged:return t.operations===void 0?{...e,files:t.files}:{...e,files:t.files,operations:t.operations};case b.ChangesetOperationsChanged:if(t.operations===void 0){let{operations:t,...n}=e;return n}return{...e,operations:t.operations};case b.ChangesetOperationStatusChanged:{if(e.operations===void 0)return e;let n=e.operations.findIndex(e=>e.id===t.operationId);if(n<0)return e;let r=e.operations[n],i;if(t.status===Pe.Error)i={...r,status:t.status,error:t.error};else{let{error:e,...n}=r;i={...n,status:t.status}}let a=[...e.operations];return a[n]=i,{...e,operations:a}}case b.ChangesetCleared:return e.files.length===0?e:{...e,files:[]};default:return x(t,n),e}}var Le;(function(e){e.Creating=`creating`,e.Ready=`ready`,e.Failed=`failed`})(Le||={});var w;(function(e){e[e.Idle=1]=`Idle`,e[e.Error=2]=`Error`,e[e.InProgress=8]=`InProgress`,e[e.InputNeeded=24]=`InputNeeded`,e[e.IsRead=32]=`IsRead`,e[e.IsArchived=64]=`IsArchived`})(w||={});var Re;(function(e){e.Automation=`automation`})(Re||={});var ze;(function(e){e.ChatInput=`chatInput`,e.ToolConfirmation=`toolConfirmation`,e.ToolClientExecution=`toolClientExecution`,e.ToolAuthentication=`toolAuthentication`})(ze||={});var T;(function(e){e.Plugin=`plugin`,e.Directory=`directory`,e.Agent=`agent`,e.Skill=`skill`,e.Prompt=`prompt`,e.Rule=`rule`,e.Hook=`hook`,e.McpServer=`mcpServer`})(T||={});var Be;(function(e){e.Global=`global`,e.Workspace=`workspace`,e.Session=`session`})(Be||={});var Ve;(function(e){e.Loading=`loading`,e.Loaded=`loaded`,e.Degraded=`degraded`,e.Error=`error`})(Ve||={});var He;(function(e){e.Starting=`starting`,e.Ready=`ready`,e.AuthRequired=`authRequired`,e.Error=`error`,e.Stopped=`stopped`})(He||={});var Ue;(function(e){e.Required=`required`,e.Expired=`expired`,e.InsufficientScope=`insufficientScope`})(Ue||={});function We(e,t,n){return n?e|t:e&~t}function Ge(e){return e.kind!==ze.ToolClientExecution}function Ke(e,t){return t.some(Ge)?e&-32|w.InputNeeded:e&~(w.InputNeeded&~w.InProgress)}function E(e,t,n){let r=e.customizations;if(!r)return e;let i=r.findIndex(e=>e.id===t);if(i>=0){let t=r[i];if(t.type!==T.McpServer)return e;let a=r.slice();return a[i]=n(t),{...e,customizations:a}}let a=!1,o=r.map(e=>{if(e.type===T.McpServer)return e;let r=e.children;if(!r)return e;let i=r.findIndex(e=>e.id===t);if(i<0)return e;let o=r[i];if(o.type!==T.McpServer)return e;a=!0;let s=r.slice();return s[i]=n(o),{...e,children:s}});return a?{...e,customizations:o}:e}function qe(e,t){switch(e.type){case T.Plugin:case T.McpServer:{if(t.length>0)return{...e,enablement:[...t]};let{enablement:n,...r}=e;return r}default:return{...e,enabled:t[0]?.enabled??!0}}}function Je(e,t,n){switch(t.type){case b.SessionReady:return{...e,lifecycle:Le.Ready};case b.SessionCreationFailed:return{...e,lifecycle:Le.Failed,creationError:t.error};case b.SessionChatAdded:{let n=e.chats,r=n.findIndex(e=>e.resource===t.summary.resource);if(r<0)return{...e,chats:[...n,t.summary]};let i=n.slice();return i[r]=t.summary,{...e,chats:i}}case b.SessionChatRemoved:{let n=e.chats,r=n.findIndex(e=>e.resource===t.chat);if(r<0)return e;let i=n.slice();i.splice(r,1);let a={...e,chats:i};return e.defaultChat===t.chat&&delete a.defaultChat,a}case b.SessionChatUpdated:{let n=e.chats,r=n.findIndex(e=>e.resource===t.chat);if(r<0)return e;let{resource:i,...a}=t.changes,o=n.slice();return o[r]={...n[r],...a},{...e,chats:o}}case b.SessionChatsReordered:{let n=e.chats;if(t.chats.length!==n.length||new Set(t.chats).size!==n.length)return e;let r=new Map(n.map(e=>[e.resource,e])),i=[];for(let n of t.chats){let t=r.get(n);if(!t)return e;i.push(t)}return i.every((e,t)=>e===n[t])?e:{...e,chats:i}}case b.SessionDefaultChatChanged:return{...e,defaultChat:t.defaultChat};case b.SessionTitleChanged:return{...e,title:t.title};case b.SessionIsReadChanged:return{...e,status:We(e.status,w.IsRead,t.isRead)};case b.SessionIsArchivedChanged:return{...e,status:We(e.status,w.IsArchived,t.isArchived)};case b.SessionActivityChanged:return{...e,activity:t.activity};case b.SessionChangesetsChanged:{let{changesets:n,...r}=e;return t.changesets?{...r,changesets:t.changesets}:r}case b.SessionConfigChanged:return e.config?{...e,config:{...e.config,values:t.replace?{...t.config}:{...e.config.values,...t.config}}}:e;case b.SessionMetaChanged:return{...e,_meta:t._meta};case b.SessionServerToolsChanged:return{...e,serverTools:t.tools};case b.SessionActiveClientSet:{let n=e.activeClients,r=n.findIndex(e=>e.clientId===t.activeClient.clientId);if(r<0)return{...e,activeClients:[...n,t.activeClient]};let i=n.slice();return i[r]=t.activeClient,{...e,activeClients:i}}case b.SessionActiveClientRemoved:{let n=e.activeClients,r=n.findIndex(e=>e.clientId===t.clientId);if(r<0)return e;let i=n.slice();return i.splice(r,1),{...e,activeClients:i}}case b.SessionWorkingDirectorySet:{let n=e.workingDirectories??[];return n.includes(t.directory)?e:{...e,workingDirectories:[...n,t.directory]}}case b.SessionWorkingDirectoryRemoved:{let n=e.workingDirectories;if(!n)return e;let r=n.indexOf(t.directory);if(r<0)return e;let i=n.slice();return i.splice(r,1),{...e,workingDirectories:i}}case b.SessionWorkingDirectoryReplaced:{let n=e.workingDirectories;if(!n)return e;let r=n.indexOf(t.directory);if(r<0)return e;let i=n.indexOf(t.replacement);return i>=0&&i<r?{...e,workingDirectories:n.filter((e,t)=>t!==r)}:{...e,workingDirectories:n.map((e,n)=>n===r?t.replacement:e).filter((e,n)=>n===r||e!==t.replacement)}}case b.SessionInputNeededSet:{let n=e.inputNeeded??[],r=n.findIndex(e=>e.id===t.request.id),i=r<0?[...n,t.request]:n.slice();return r>=0&&(i[r]=t.request),{...e,inputNeeded:i,status:Ke(e.status,i)}}case b.SessionInputNeededRemoved:{let n=e.inputNeeded;if(!n)return e;let r=n.findIndex(e=>e.id===t.id);if(r<0)return e;let i=n.slice();i.splice(r,1);let a={...e,status:Ke(e.status,i)};return i.length>0?a.inputNeeded=i:delete a.inputNeeded,a}case b.SessionCustomizationsChanged:return{...e,customizations:t.customizations};case b.SessionCustomizationToggled:{let n=e.customizations;if(!n)return e;let r=n.findIndex(e=>e.id===t.id);if(r>=0){let i=n.slice();return i[r]=qe(n[r],t.enablement),{...e,customizations:i}}for(let r=0;r<n.length;r++){let i=n[r];if(i.type===T.McpServer)continue;let a=i.children;if(!a)continue;let o=a.findIndex(e=>e.id===t.id);if(o<0)continue;let s=a.slice();s[o]=qe(a[o],t.enablement);let c=n.slice();return c[r]={...i,children:s},{...e,customizations:c}}return e}case b.SessionCustomizationUpdated:{let n=e.customizations??[],r=n.findIndex(e=>e.id===t.customization.id);if(r<0)return{...e,customizations:[...n,t.customization]};let i=[...n];return i[r]=t.customization,{...e,customizations:i}}case b.SessionCustomizationRemoved:{let n=e.customizations;if(!n)return e;let r=n.findIndex(e=>e.id===t.id);if(r>=0){let t=n.slice();return t.splice(r,1),{...e,customizations:t}}let i=!1,a=n.map(e=>{if(e.type===T.McpServer)return e;let n=e.children;if(!n)return e;let r=n.findIndex(e=>e.id===t.id);if(r<0)return e;i=!0;let a=n.slice();return a.splice(r,1),{...e,children:a}});return i?{...e,customizations:a}:e}case b.SessionMcpServerStateChanged:return E(e,t.id,e=>({...e,state:t.state,channel:t.channel}));case b.SessionMcpServerStartRequested:return E(e,t.id,e=>({...e,state:{kind:He.Starting},channel:void 0}));case b.SessionMcpServerBackgroundRequested:return E(e,t.id,e=>e.state.kind===He.Starting&&e.state.blocking?{...e,state:{...e.state,blocking:!1}}:e);case b.SessionMcpServerStopRequested:return E(e,t.id,e=>({...e,state:{kind:He.Stopped},channel:void 0}));default:return x(t,n),e}}var Ye;(function(e){e.Running=`running`,e.Exited=`exited`})(Ye||={});var Xe;(function(e){e.Client=`client`,e.Session=`session`})(Xe||={});function Ze(e,t,n){switch(t.type){case b.TerminalData:{let n=[...e.content],r=n.length>0?n[n.length-1]:void 0;return r&&r.type===`command`&&!r.isComplete?n[n.length-1]={...r,output:r.output+t.data}:r&&r.type===`unclassified`?n[n.length-1]={...r,value:r.value+t.data}:n.push({type:`unclassified`,value:t.data}),{...e,content:n}}case b.TerminalInput:return e;case b.TerminalResized:return{...e,cols:t.cols,rows:t.rows};case b.TerminalClaimed:return{...e,claim:t.claim};case b.TerminalTitleChanged:return{...e,title:t.title};case b.TerminalCwdChanged:return{...e,cwd:t.cwd};case b.TerminalExited:return{...e,lifecycle:{status:Ye.Exited,exitCode:t.exitCode}};case b.TerminalCleared:return{...e,content:[]};case b.TerminalCommandDetectionAvailable:return{...e,supportsCommandDetection:!0};case b.TerminalCommandExecuted:{let n={type:`command`,commandId:t.commandId,commandLine:t.commandLine,output:``,timestamp:t.timestamp,isComplete:!1};return{...e,content:[...e.content,n],supportsCommandDetection:!0}}case b.TerminalCommandFinished:{let n=e.content.map(e=>e.type===`command`&&e.commandId===t.commandId?{...e,isComplete:!0,exitCode:t.exitCode,durationMs:t.durationMs}:e);return{...e,content:n}}default:return x(t,n),e}}function Qe(e,t,n){switch(t.type){case b.AutomationCreateRequested:case b.AutomationUpdateRequested:return e;case b.AutomationSet:{let n=e.entries.findIndex(e=>e.resource===t.automation.resource);if(n<0)return{...e,entries:[...e.entries,t.automation]};let r=e.entries.slice();return r[n]=t.automation,{...e,entries:r}}case b.AutomationRemoved:{let n=e.entries.findIndex(e=>e.resource===t.resource);if(n<0)return e;let r=e.entries.slice();return r.splice(n,1),{...e,entries:r}}default:return x(t,n),e}}var $e=class e{socket;inbox=[];waiters=[];closeInfo=null;error=null;closed=!1;static connect(t,n={}){return new Promise((r,i)=>{let o=globalThis.WebSocket;if(!o){i(new a(`io`,`global WebSocket is not available; install or polyfill it`));return}let s;try{s=n.protocols===void 0?new o(t):new o(t,n.protocols)}catch(e){i(new a(`io`,`failed to construct WebSocket: ${e.message}`,{cause:e}));return}let c=()=>{s.removeEventListener(`open`,l),s.removeEventListener(`error`,u),s.removeEventListener(`close`,d)},l=()=>{c(),r(new e(s))},u=()=>{c(),i(new a(`io`,`websocket failed to open`))},d=e=>{c(),i(new a(`closed`,`websocket closed before open (code=${e.code})`))};s.addEventListener(`open`,l),s.addEventListener(`error`,u),s.addEventListener(`close`,d)})}static fromSocket(t){if(t.readyState!==t.OPEN)throw new a(`io`,`socket is not OPEN`);return new e(t)}constructor(e){this.socket=e,e.binaryType=`arraybuffer`,e.addEventListener(`message`,e=>{let t=e.data;if(typeof t==`string`)this.deliver({kind:`text`,text:t});else if(t instanceof ArrayBuffer)this.deliver({kind:`binary`,data:new Uint8Array(t)});else if(t instanceof Uint8Array)this.deliver({kind:`binary`,data:t});else{let e=new a(`protocol`,`unsupported WebSocket message payload (expected string or ArrayBuffer)`);this.error=e,this.drainWithError(e)}}),e.addEventListener(`error`,()=>{this.error=new a(`io`,`websocket error`),this.drainWithError(this.error)}),e.addEventListener(`close`,e=>{if(this.closeInfo={code:e.code,reason:e.reason,wasClean:e.wasClean},this.closed=!0,e.wasClean)this.drainWithNull();else{let t=new a(`closed`,`websocket closed abnormally (code=${e.code})`);this.error=t,this.drainWithError(t)}})}get bufferedAmount(){return this.socket.bufferedAmount}get lastClose(){return this.closeInfo}send(e){if(this.closed)throw new a(`closed`,`transport closed`);if(this.error)throw this.error;let t=typeof e==`string`?e:fe(e);try{this.socket.send(t)}catch(e){throw new a(`io`,`websocket send failed: ${e.message}`,{cause:e})}}recv(){if(this.error)return Promise.reject(this.error);if(this.inbox.length>0){let e=this.inbox.shift()??null;return Promise.resolve(e)}return this.closed?Promise.resolve(null):new Promise((e,t)=>{this.waiters.push({resolve:e,reject:t})})}close(){if(this.socket.readyState===this.socket.OPEN||this.socket.readyState===this.socket.CONNECTING)try{this.socket.close()}catch{}return Promise.resolve()}deliver(e){if(this.waiters.length>0){let t=this.waiters.shift();t&&t.resolve(e);return}this.inbox.push(e)}drainWithError(e){let t=this.waiters;this.waiters=[];for(let n of t)n.reject(e)}drainWithNull(){let e=this.waiters;this.waiters=[];for(let t of e)t.resolve(null)}},et=`ahpd-web.token`;function tt(){try{let e=window.localStorage.getItem(et)?.trim();return e===void 0||e===``?null:e}catch{return null}}function nt(e){try{e===null?window.localStorage.removeItem(et):window.localStorage.setItem(et,e)}catch{}}var D=!1;function rt(){return D}async function it(){try{let e=await fetch(`./ahpw.json`,{headers:{accept:`application/json`},cache:`no-store`});if(!e.ok||!(e.headers.get(`content-type`)??``).includes(`application/json`))return!1;D=(await e.json()).tokenHeld===!0}catch{D=!1}return D}var O=globalThis.ahpwEmbedder,at;(function(e){e.Enabled=`enabled`,e.Disabled=`disabled`,e.Unconfigured=`unconfigured`})(at||={});var ot;(function(e){e.Shell=`shell`,e.Subagent=`subagent`})(ot||={});var st;(function(e){e.User=`user`,e.Fork=`fork`,e.SideChat=`sideChat`,e.Tool=`tool`})(st||={});var ct;(function(e){e.Full=`full`,e.ReadOnly=`read-only`,e.Hidden=`hidden`})(ct||={});var lt;(function(e){e.Steering=`steering`,e.Queued=`queued`})(lt||={});var ut;(function(e){e.Accept=`accept`,e.Decline=`decline`,e.Cancel=`cancel`})(ut||={});var dt;(function(e){e.Text=`text`,e.Number=`number`,e.Integer=`integer`,e.Boolean=`boolean`,e.SingleSelect=`single-select`,e.MultiSelect=`multi-select`})(dt||={});var ft;(function(e){e.Text=`text`,e.Number=`number`,e.Boolean=`boolean`,e.Selected=`selected`,e.SelectedMany=`selected-many`})(ft||={});var pt;(function(e){e.Draft=`draft`,e.Submitted=`submitted`,e.Skipped=`skipped`})(pt||={});var k;(function(e){e.Complete=`complete`,e.Cancelled=`cancelled`,e.Error=`error`})(k||={});var mt;(function(e){e.Simple=`simple`,e.EmbeddedResource=`embeddedResource`,e.Resource=`resource`,e.Annotations=`annotations`,e.Chat=`chat`})(mt||={});var ht;(function(e){e.User=`user`,e.Agent=`agent`,e.Tool=`tool`,e.Automation=`automation`,e.SystemNotification=`systemNotification`})(ht||={});var A;(function(e){e.Markdown=`markdown`,e.ContentRef=`contentRef`,e.ToolCall=`toolCall`,e.Reasoning=`reasoning`,e.SystemNotification=`systemNotification`,e.InputRequest=`inputRequest`,e.Error=`error`})(A||={});var j;(function(e){e.Streaming=`streaming`,e.PendingConfirmation=`pending-confirmation`,e.Running=`running`,e.AuthRequired=`auth-required`,e.PendingResultConfirmation=`pending-result-confirmation`,e.Completed=`completed`,e.Cancelled=`cancelled`})(j||={});var gt;(function(e){e.NotNeeded=`not-needed`,e.UserAction=`user-action`,e.Setting=`setting`})(gt||={});var _t;(function(e){e.Judge=`judge`})(_t||={});var vt;(function(e){e.Loading=`loading`,e.Complete=`complete`})(vt||={});var yt;(function(e){e.Denied=`denied`,e.Skipped=`skipped`,e.ResultDenied=`result-denied`})(yt||={});var bt;(function(e){e.Approve=`approve`,e.Deny=`deny`})(bt||={});var M;(function(e){e.Client=`client`,e.MCP=`mcp`})(M||={});var xt;(function(e){e.Text=`text`,e.EmbeddedResource=`embeddedResource`,e.Resource=`resource`,e.FileEdit=`fileEdit`,e.Terminal=`terminal`,e.Subagent=`subagent`})(xt||={});var St;(function(e){e.Added=`added`,e.Updated=`updated`,e.Deleted=`deleted`})(St||={});var Ct;(function(e){e.Update=`update`,e.Remove=`remove`,e.Run=`run`})(Ct||={});var wt;(function(e){e.Skip=`skip`,e.RunOnce=`runOnce`})(wt||={});var Tt;(function(e){e.Schedule=`schedule`,e.Event=`event`})(Tt||={});var Et;(function(e){e.AfterRuns=`afterRuns`,e.AfterDate=`afterDate`})(Et||={});var Dt;(function(e){e.Pending=`pending`,e.Running=`running`,e.Completed=`completed`,e.Failed=`failed`,e.Cancelled=`cancelled`})(Dt||={});var Ot;(function(e){e.Manual=`manual`,e.Trigger=`trigger`})(Ot||={});var kt;(function(e){e.UserMessage=`userMessage`})(kt||={});var At;(function(e){e.Fork=`fork`,e.SideChat=`sideChat`})(At||={});var jt;(function(e){e.Session=`session`,e.NewSession=`newSession`})(jt||={});var Mt;(function(e){e.Resource=`resource`,e.Range=`range`})(Mt||={});var Nt;(function(e){e.Required=`required`,e.Expired=`expired`})(Nt||={});function Pt(e,t){return new Date(Date.parse(e)+t).toISOString()}function Ft(e){return{toolCallId:e.toolCallId,toolName:e.toolName,displayName:e.displayName,intention:e.intention,contributor:e.contributor,_meta:e._meta}}function N(e,t){return{...Ft(e),_meta:t??e._meta}}function It(e,t,n){return t?e?.kind===M.Client?t.kind===M.Client&&t.clientId===e.clientId?t:(n?.(`Ignoring contributor change for client tool call from '${e.clientId}'`),e):t.kind===M.Client?(n?.(`Ignoring late client contributor '${t.clientId}' because client execution ownership must be established at tool call start`),e):t:e}function Lt(e,t){if(t&&e)return e.find(e=>e.id===t)}function Rt(e){return e.activeTurn?e.activeTurn.responseParts.some(e=>e.kind===A.ToolCall&&(e.toolCall.status===j.PendingConfirmation||e.toolCall.status===j.PendingResultConfirmation||e.toolCall.status===j.AuthRequired)):!1}function zt(e){return e.activeTurn?.responseParts.some(e=>e.kind===A.InputRequest&&e.response===void 0)??!1}function Bt(e,t){let n=e.findIndex(e=>e.kind===A.InputRequest&&e.response===void 0&&e.request.id===t);if(n<0)return;let r=e[n];return r.kind===A.InputRequest?{index:n,part:r}:void 0}function Vt(e){let t=e.responseParts[e.responseParts.length-1];return t?.kind===A.Error&&t.resumable===!0}function Ht(e){return e.kind===A.Error}function P(e,t,n){return n?e|t:e&~t}function F(e,t){let n;return n=t||(zt(e)||Rt(e)?w.InputNeeded:e.activeTurn?w.InProgress:w.Idle),e.status&-32|n}function I(e){let t=F(e);return t===e.status?e:{...e,status:t}}function Ut(e,t,n,r,i,a){if(!e.activeTurn||e.activeTurn.id!==t)return e;let o=e.activeTurn,s=o.responseParts.map(e=>{if(e.kind!==A.ToolCall)return e;let t=e.toolCall;return t.status===j.Completed||t.status===j.Cancelled?e:{kind:A.ToolCall,toolCall:{status:j.Cancelled,...Ft(t),invocationMessage:t.status===j.Streaming?t.invocationMessage??``:t.invocationMessage,toolInput:t.status===j.Streaming?void 0:t.toolInput,reason:yt.Skipped}}});a&&s.push(a);let c={id:o.id,startedAt:o.startedAt,duration:Math.max(0,r),message:o.message,responseParts:s,usage:o.usage,state:n},l={...e,turns:[...e.turns,c],activeTurn:void 0,modifiedAt:Pt(o.startedAt,c.duration??0)};return{...l,status:F(l,i)}}function Wt(e,t){let n=e.activeTurn;if(!n)return e;let r=Bt(n.responseParts,t.id),i=[...n.responseParts],a={kind:A.InputRequest,request:t};r?(a.request={...t,answers:t.answers??r.part.request.answers},i[r.index]=a):i.push(a);let o={...e,activeTurn:{...n,responseParts:i}};return{...o,status:P(F(o),w.IsRead,!1)}}function L(e,t,n,r){let i=e.activeTurn;if(!i||i.id!==t)return e;let a=!1,o=i.responseParts.map(e=>{if(e.kind===A.ToolCall&&e.toolCall.toolCallId===n){let t=r(e.toolCall);return t===e.toolCall?e:(a=!0,{...e,toolCall:t})}return e});return a?{...e,activeTurn:{...i,responseParts:o}}:e}function Gt(e,t,n,r){let i=e.activeTurn;if(!i||i.id!==t)return e;let a=!1,o=i.responseParts.map(e=>!a&&(e.kind===A.ToolCall?e.toolCall.toolCallId:`id`in e?e.id:void 0)===n?(a=!0,r(e)):e);return a?{...e,activeTurn:{...i,responseParts:o}}:e}function Kt(e,t,n){switch(t.type){case b.ChatTurnStarted:{let n={...e,activeTurn:{id:t.turnId,startedAt:t.startedAt,message:t.message,responseParts:[],usage:void 0}};if(n={...n,status:P(F(n),w.IsRead,!1),modifiedAt:t.startedAt},t.queuedMessageId&&(n.steeringMessage?.id===t.queuedMessageId&&(n={...n,steeringMessage:void 0}),n.queuedMessages)){let e=n.queuedMessages.filter(e=>e.id!==t.queuedMessageId);n={...n,queuedMessages:e.length>0?e:void 0}}return n}case b.ChatDelta:return Gt(e,t.turnId,t.partId,e=>e.kind===A.Markdown?{...e,content:e.content+t.content}:e);case b.ChatResponsePart:return!e.activeTurn||e.activeTurn.id!==t.turnId||Ht(t.part)?e:{...e,activeTurn:{...e.activeTurn,responseParts:[...e.activeTurn.responseParts,t.part]}};case b.ChatTurnComplete:return Ut(e,t.turnId,k.Complete,t.duration);case b.ChatTurnCancelled:return Ut(e,t.turnId,k.Cancelled,t.duration);case b.ChatError:return Ut(e,t.turnId,k.Error,t.duration,w.Error,t.part);case b.ChatTurnResume:{if(e.activeTurn)return e;let n=e.turns.length-1,r=e.turns[n];if(!r||r.id!==t.turnId||r.state!==k.Error||!Vt(r))return e;let i=e.turns.slice();i.splice(n,1);let a={...e,turns:i,activeTurn:{id:r.id,startedAt:r.startedAt??e.modifiedAt,message:r.message,responseParts:r.responseParts,usage:r.usage}};return{...a,status:P(F(a),w.IsRead,!1)}}case b.ChatActivityChanged:return{...e,activity:t.activity};case b.ChatBackgroundWorkSet:{let n=e.backgroundWork??[],r=n.findIndex(e=>e.id===t.work.id),i=n.slice();return r<0?i.push(t.work):i[r]=t.work,{...e,backgroundWork:i}}case b.ChatBackgroundWorkRemoved:{let n=e.backgroundWork??[],r=n.findIndex(e=>e.id===t.id);if(r<0)return e;let i=n.slice();return i.splice(r,1),{...e,backgroundWork:i}}case b.ChatMovableChanged:return{...e,movable:t.movable};case b.ChatChangesetsChanged:{let{changesets:n,...r}=e;return t.changesets?{...r,changesets:t.changesets}:r}case b.ChatCanvasesChanged:{let{canvases:n,...r}=e;return t.canvases?{...r,canvases:t.canvases}:r}case b.ChatWorkingDirectorySet:{let n=e.workingDirectories??[];return n.includes(t.directory)?e:{...e,workingDirectories:[...n,t.directory]}}case b.ChatWorkingDirectoryRemoved:{let n=e.workingDirectories;if(!n)return e;let r=n.indexOf(t.directory);if(r<0)return e;let i=n.slice();return i.splice(r,1),{...e,workingDirectories:i}}case b.ChatToolCallStart:return!e.activeTurn||e.activeTurn.id!==t.turnId?e:{...e,activeTurn:{...e.activeTurn,responseParts:[...e.activeTurn.responseParts,{kind:A.ToolCall,toolCall:{toolCallId:t.toolCallId,toolName:t.toolName,displayName:t.displayName,intention:t.intention,contributor:t.contributor,_meta:t._meta,status:j.Streaming}}]}};case b.ChatToolCallDelta:return L(e,t.turnId,t.toolCallId,e=>e.status===j.Streaming?{...e,...t._meta===void 0?{}:{_meta:t._meta},...t.content===void 0?{}:{partialInput:(e.partialInput??``)+t.content},invocationMessage:t.invocationMessage??e.invocationMessage}:e);case b.ChatToolCallReady:return I(L(e,t.turnId,t.toolCallId,e=>{if(e.status!==j.Streaming&&e.status!==j.Running&&e.status!==j.PendingConfirmation)return e;let r={...N(e,t._meta),contributor:It(e.contributor,t.contributor,n),intention:t.intention??e.intention},i=t.toolInput??(e.status===j.Streaming?void 0:e.toolInput);if(t.confirmed)return{status:j.Running,...r,invocationMessage:t.invocationMessage,toolInput:i,confirmed:t.confirmed};let a=e.status===j.PendingConfirmation?e:void 0,o=t.options??a?.options;return{status:j.PendingConfirmation,...r,invocationMessage:t.invocationMessage,toolInput:i,confirmationTitle:t.confirmationTitle??a?.confirmationTitle,riskAssessment:t.riskAssessment??a?.riskAssessment,edits:t.edits??a?.edits,editable:t.editable??a?.editable,...o?{options:o}:{}}}));case b.ChatToolCallConfirmed:return I(L(e,t.turnId,t.toolCallId,e=>{if(e.status!==j.PendingConfirmation)return e;let n=N(e,t._meta),r=Lt(e.options,t.selectedOptionId);if(t.approved){let i=t.editedToolInput!==void 0&&typeof e.toolInput==`string`?t.editedToolInput:e.toolInput;return{status:j.Running,...n,invocationMessage:e.invocationMessage,toolInput:i,confirmed:t.confirmed,...r?{selectedOption:r}:{}}}return{status:j.Cancelled,...n,invocationMessage:e.invocationMessage,toolInput:e.toolInput,reason:t.reason,reasonMessage:t.reasonMessage,userSuggestion:t.userSuggestion,...r?{selectedOption:r}:{}}}));case b.ChatToolCallComplete:return I(L(e,t.turnId,t.toolCallId,e=>{if(e.status!==j.Running&&e.status!==j.PendingConfirmation&&e.status!==j.AuthRequired||e.status===j.AuthRequired&&t.result.success)return e;let n=N(e,t._meta),r=e.status===j.Running||e.status===j.AuthRequired?e.confirmed:gt.NotNeeded,i=e.status===j.Running||e.status===j.AuthRequired?e.selectedOption:void 0,a=e.status===j.AuthRequired?e.content:void 0;return t.requiresResultConfirmation&&e.status!==j.AuthRequired?{status:j.PendingResultConfirmation,...n,invocationMessage:e.invocationMessage,toolInput:e.toolInput,confirmed:r,...i?{selectedOption:i}:{},...a?{content:a}:{},...t.result}:{status:j.Completed,...n,invocationMessage:e.invocationMessage,toolInput:e.toolInput,confirmed:r,...i?{selectedOption:i}:{},...a?{content:a}:{},...t.result}}));case b.ChatToolCallResultConfirmed:return I(L(e,t.turnId,t.toolCallId,e=>{if(e.status!==j.PendingResultConfirmation)return e;let n=N(e,t._meta);return t.approved?{status:j.Completed,...n,invocationMessage:e.invocationMessage,toolInput:e.toolInput,confirmed:e.confirmed,...e.selectedOption?{selectedOption:e.selectedOption}:{},success:e.success,pastTenseMessage:e.pastTenseMessage,content:e.content,structuredContent:e.structuredContent,error:e.error}:{status:j.Cancelled,...n,invocationMessage:e.invocationMessage,toolInput:e.toolInput,reason:yt.ResultDenied,...e.selectedOption?{selectedOption:e.selectedOption}:{}}}));case b.ChatToolCallContentChanged:return L(e,t.turnId,t.toolCallId,e=>e.status===j.Running?{...e,...t._meta===void 0?{}:{_meta:t._meta},content:t.content}:e);case b.ChatToolCallAuthRequired:return I(L(e,t.turnId,t.toolCallId,e=>{if(e.status!==j.Running||!e.contributor||e.contributor.kind!==M.MCP)return e;let n=N(e,t._meta);return{status:j.AuthRequired,...n,contributor:e.contributor,invocationMessage:e.invocationMessage,toolInput:e.toolInput,confirmed:e.confirmed,...e.selectedOption?{selectedOption:e.selectedOption}:{},...e.content?{content:e.content}:{},auth:t.auth}}));case b.ChatToolCallAuthResolved:return I(L(e,t.turnId,t.toolCallId,e=>{if(e.status!==j.AuthRequired)return e;let n=N(e,t._meta);return{status:j.Running,...n,invocationMessage:e.invocationMessage,toolInput:e.toolInput,confirmed:e.confirmed,...e.selectedOption?{selectedOption:e.selectedOption}:{},...e.content?{content:e.content}:{}}}));case b.ChatUsage:return!e.activeTurn||e.activeTurn.id!==t.turnId?e:{...e,activeTurn:{...e.activeTurn,usage:t.usage}};case b.ChatReasoning:return Gt(e,t.turnId,t.partId,e=>e.kind===A.Reasoning?{...e,content:e.content+t.content}:e);case b.ChatTruncated:{let n;if(t.turnId===void 0)n=[];else{let r=e.turns.findIndex(e=>e.id===t.turnId);if(r<0)return e;n=e.turns.slice(0,r+1)}let r={...e,turns:n,activeTurn:void 0};return t.turnId===void 0&&delete r.turnsNextCursor,{...r,status:F(r)}}case b.ChatTurnsLoaded:{let n=new Set(e.turns.map(e=>e.id)),r=t.turns.filter(e=>!n.has(e.id));return{...e,turns:[...r,...e.turns],turnsNextCursor:t.turnsNextCursor}}case b.ChatInputRequested:return Wt(e,t.request);case b.ChatInputAnswerChanged:{let n=e.activeTurn,r=n?Bt(n.responseParts,t.requestId):void 0;if(!n||!r)return e;let{index:i,part:a}=r,o=a.request,s={...o.answers??{}};t.answer===void 0?delete s[t.questionId]:s[t.questionId]=t.answer;let c=[...n.responseParts];return c[i]={...a,request:{...o,answers:Object.keys(s).length>0?s:void 0}},{...e,activeTurn:{...n,responseParts:c}}}case b.ChatInputCompleted:{let n=e.activeTurn,r=n?Bt(n.responseParts,t.requestId):void 0;if(!n||!r)return e;let{index:i,part:a}=r,o={...a.request.answers??{},...t.answers??{}},s=[...n.responseParts];s[i]={...a,request:{...a.request,answers:Object.keys(o).length>0?o:void 0},response:t.response};let c={...e,activeTurn:{...n,responseParts:s}};return{...c,status:F(c)}}case b.ChatPendingMessageSet:{let n={id:t.id,message:t.message};if(t.kind===lt.Steering)return{...e,steeringMessage:n};let r=e.queuedMessages??[],i=r.findIndex(e=>e.id===t.id);if(i>=0){let t=[...r];return t[i]=n,{...e,queuedMessages:t}}return{...e,queuedMessages:[...r,n]}}case b.ChatPendingMessageRemoved:{if(t.kind===lt.Steering)return!e.steeringMessage||e.steeringMessage.id!==t.id?e:{...e,steeringMessage:void 0};let n=e.queuedMessages;if(!n)return e;let r=n.filter(e=>e.id!==t.id);return r.length===n.length?e:{...e,queuedMessages:r.length>0?r:void 0}}case b.ChatQueuedMessagesReordered:{let n=e.queuedMessages;if(!n)return e;let r=new Map(n.map(e=>[e.id,e])),i=new Set,a=t.order.filter(e=>r.has(e)&&!i.has(e)?(i.add(e),!0):!1).map(e=>r.get(e));for(let e of n)i.has(e.id)||a.push(e);return{...e,queuedMessages:a}}case b.ChatDraftChanged:return{...e,draft:t.draft};case b.ChatIsReadChanged:return{...e,status:P(e.status,w.IsRead,t.isRead)};case b.ChatIsArchivedChanged:return{...e,status:P(e.status,w.IsArchived,t.isArchived)};default:return x(t,n),e}}var qt=`0.10.0`,Jt=Object.freeze(le.flatMap(e=>e===`1.0.0`?[e,qt]:e===`0.10.0`?[]:[e]));function Yt(e){let t=Xt(typeof e==`string`?Zt(e):e);if(t?.method!==`initialize`)return e;let n={...Xt(t.params),protocolVersions:[...Jt]},r={...t,params:n};return typeof e==`string`?JSON.stringify(r):r}function Xt(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:null}function Zt(e){try{return JSON.parse(e)}catch{return null}}function Qt(e){return{send:t=>e.send(Yt(t)),close:()=>e.close(),recv:()=>e.recv()}}function $t(e){let t=tn(tn(tn(typeof e==`string`?nn(e):e)?.result)?.serverInfo);return t===null||typeof t.name!=`string`||t.name===``?null:{name:t.name,version:typeof t.version==`string`&&t.version!==``?t.version:null}}var en=e=>e.version===null?e.name:`${e.name} ${e.version}`;function tn(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:null}function nn(e){try{return JSON.parse(e)}catch{return null}}function rn(e,t){return{send:t=>e.send(t),close:()=>e.close(),async recv(){let n=await e.recv(),r=n?.kind===`text`?$t(n.text):n?.kind===`parsed`?$t(n.message):null;return r!==null&&t(r),n}}}var an=`/ahp`;function on(e,t,n){let r=t.protocol===`https:`?`wss:`:`ws:`,i=n?an:`/`;return`${r}//${t.host}${i}${e===null?``:`?tkn=${encodeURIComponent(e)}`}`}function sn(e,t){return t===null||t===``?e:`${e}${e.includes(`?`)?`&`:`?`}tkn=${encodeURIComponent(t)}`}var cn=new Map;function ln(e,t){let n=new Map(e);return t.type===`sessionAdded`?n.delete(t.params.summary.resource):t.type===`sessionRemoved`?n.delete(t.params.session):n.set(t.params.session,{...e.get(t.params.session),...t.params.changes}),n}function un(e){return new Map(e.map(e=>[e.resource,e]))}function dn(e,t){let n=t.get(e.resource);return n===void 0?e:{...e,...n}}var fn=2,pn=8,mn=24,hn=32,gn=64;function _n(e){return(e&mn)===mn?`input`:(e&pn)===0?(e&fn)===0?`idle`:`error`:`running`}function vn(e){return(e&hn)!==0}function yn(e){return(e&gn)!==0}var bn={input:`Needs you`,running:`Running`,error:`Failed`,idle:`Idle`},xn={input:`warning`,running:`info`,error:`danger`,idle:`default`};function Sn(e){let t=0,n=0;for(let r of e){if(yn(r))continue;let e=_n(r);e===`idle`&&!vn(r)&&(t+=1),(e===`running`||e===`input`)&&(n+=1)}return{unread:t,working:n}}var Cn=e(),wn=[`connection`,`session`,`terminal`,`traffic`],Tn=[`debug`,`info`,`warn`,`error`],En=2e3,Dn=1024,R=[],z=[],B=null,On=0,kn=new Set,An=!1;function jn(){B=null,!An&&(An=!0,setTimeout(()=>{An=!1;for(let e of kn)e()},50))}function V(e){On+=1;let t={...e,id:`l${On}`,at:e.at??Date.now()};t.scope===`traffic`?z=z.length>=1024?[...z.slice(z.length-Dn+1),t]:[...z,t]:R=R.length>=2e3?[...R.slice(R.length-En+1),t]:[...R,t],jn()}function Mn(){R=[],z=[],jn()}function Nn(){return B===null&&(B=[...R,...z].sort((e,t)=>e.at-t.at||Number(e.id.slice(1))-Number(t.id.slice(1)))),B}function Pn(e){return kn.add(e),()=>{kn.delete(e)}}function Fn(){return(0,Cn.useSyncExternalStore)(Pn,Nn,Nn)}function In(e,t){let n=Tn.indexOf(t.minLevel),r=t.query.split(/\s+/).filter(e=>e!==``&&e!==`!`),i=r.filter(e=>!e.startsWith(`!`)).map(e=>e.toLowerCase()),a=r.filter(e=>e.startsWith(`!`)).map(e=>e.slice(1).toLowerCase());return e.filter(e=>{if(t.scopes.length>0&&!t.scopes.includes(e.scope)||Tn.indexOf(e.level)<n)return!1;if(i.length===0&&a.length===0)return!0;let r=e.text.toLowerCase();return i.every(e=>r.includes(e))&&!a.some(e=>r.includes(e))})}var Ln=/\b[a-z][a-z0-9+.-]*:\/{1,3}[^\s"'`<>()[\]{},]+/gi;function Rn(e){let t=[],n=0;for(let r of e.matchAll(Ln)){let i=r.index,a=r[0].replace(/[.:;]+$/,``);i>n&&t.push({kind:`text`,text:e.slice(n,i)}),t.push({kind:`uri`,text:a}),n=i+a.length}return n<e.length&&t.push({kind:`text`,text:e.slice(n)}),t}function zn(e){let t=new Date(e),n=e=>String(e).padStart(2,`0`);return`${n(t.getHours())}:${n(t.getMinutes())}:${n(t.getSeconds())}.${String(t.getMilliseconds()).padStart(3,`0`)}`}var Bn=e=>`${new Date(e.at).toISOString().replace(`T`,` `).replace(`Z`,``)} [${e.level}] [${e.scope}] ${e.text}`,Vn=e=>e.map(Bn).join(`
2
+ `),Hn=65536;function H(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:{}}function U(e){return typeof e==`string`&&e!==``?e:null}var Un=new Map,Wn=null;function Gn(e){if(!e.startsWith(`ahp-chat:`))return null;let t=e.split(`/`).pop()??``;try{let e=atob(t.replace(/-/g,`+`).replace(/_/g,`/`));return/^[a-z][a-z0-9+.-]*:/i.test(e)?e:null}catch{return null}}function Kn(e,t){let n=`${e} ${U(t.resource)??``} ${U(t.channel)??``}`.toLowerCase();return n.includes(`terminal`)?`terminal`:n.includes(`session`)||n.includes(`chat`)||U(t.session)!==null?`session`:`connection`}function qn(e,t){let n=e===`sent`?`→`:`←`,r=U(t.method),i=H(t.params);if(r===`action`)return`${n} ${U(H(i.action).type)??`action`} ${U(i.channel)??``}`.trim();if(r!==null){let e=U(i.resource)??U(i.channel)??U(i.session)??``;return`${n} ${r}${t.id===void 0?``:` #${String(t.id)}`} ${e}`.trim()}return t.error===void 0?`${n} result #${String(t.id)}`:`${n} error #${String(t.id)} ${U(H(t.error).message)??``}`.trim()}function Jn(e){let t=H(e.action),n=U(t.type)??``,r=U(e.channel)??``,i=Gn(r)??(r.includes(`session`)?r:null),a=(t,n,r)=>V({scope:t,level:n,text:r,detail:e}),o=U(e.rejectionReason);if(o!==null){a(n.startsWith(`terminal/`)?`terminal`:`session`,`warn`,`${n} rejected: ${o} · ${r}`);return}switch(n){case`session/ready`:a(`session`,`info`,`ready ${i??r}`);return;case`session/creationFailed`:a(`session`,`error`,`creation failed: ${U(H(t.error).message)??U(t.message)??``} ${i??r}`);return;case`session/titleChanged`:a(`session`,`info`,`title "${U(t.title)??``}" ${i??r}`);return;case`chat/turnStarted`:a(`session`,`info`,`turn started ${i??r}`);return;case`chat/turnComplete`:a(`session`,`info`,`turn complete ${i??r}`);return;case`chat/turnCancelled`:a(`session`,`warn`,`turn cancelled ${i??r}`);return;case`chat/error`:a(`session`,`error`,`${U(H(t.error).message)??U(t.message)??`error`} ${i??r}`);return;case`terminal/commandExecuted`:a(`terminal`,`info`,`$ ${U(t.commandLine)??``} · ${r}`);return;case`terminal/commandFinished`:{let e=typeof t.exitCode==`number`?t.exitCode:null;a(`terminal`,e!==null&&e!==0?`warn`:`info`,`command finished${e===null?``:` · exit ${e}`} · ${r}`);return}case`terminal/exited`:{let e=typeof t.exitCode==`number`?t.exitCode:null;a(`terminal`,`info`,`exited${e===null?``:` ${e}`} · ${r}`);return}case`terminal/claimed`:{let e=H(t.claim);a(`terminal`,`info`,`claimed by ${U(e.session)??(e.kind===`client`?`client ${U(e.clientId)??``}`:``)} · ${r}`);return}case`root/terminalsChanged`:{let e=new Map;for(let n of Array.isArray(t.terminals)?t.terminals:[]){let t=H(n),r=U(t.resource);r!==null&&e.set(r,U(t.title)??``)}let n=Wn;if(Wn=e,n===null)return;for(let[t,r]of e)n.has(t)||a(`terminal`,`info`,`opened ${r===``?``:`${r} `}${t}`);for(let[t,r]of n)e.has(t)||a(`terminal`,`info`,`closed ${r===``?``:`${r} `}${t}`);return}}}var Yn=`••••••`;function Xn(e){let t=H(e.params);return e.method!==`authenticate`||typeof t.token!=`string`?e:{...e,params:{...t,token:Yn}}}function Zn(e,t){let n;try{n=H(JSON.parse(t))}catch{V({scope:`traffic`,level:`debug`,text:`${e===`sent`?`→`:`←`} ${t.slice(0,120)}`,detail:t.slice(0,Hn)});return}let r=Xn(n);r!==n&&(n=r,t=JSON.stringify(r)),V({scope:`traffic`,level:`debug`,text:qn(e,n),detail:t.length>Hn?t.slice(0,Hn):t});let i=n.id===void 0||n.id===null?null:String(n.id),a=U(n.method);if(e===`sent`){i!==null&&a!==null&&Un.set(i,{method:a,params:H(n.params)});return}if(a===`action`){Jn(H(n.params));return}if(i===null||a!==null)return;let o=Un.get(i);if(Un.delete(i),n.error===void 0)return;let s=H(n.error),c=o===void 0?`#${i}`:`${o.method} ${U(o.params.resource)??U(o.params.channel)??``}`.trim();V({scope:o===void 0?`connection`:Kn(o.method,o.params),level:`error`,text:`${c} refused: ${U(s.message)??`error`}${typeof s.code==`number`?` (${s.code})`:``}`,detail:{request:o??null,error:n.error}})}function Qn(){Un.clear()}function $n(e){return{send:t=>(Zn(`sent`,typeof t==`string`?t:JSON.stringify(t)),e.send(t)),close:()=>e.close(),async recv(){let t=await e.recv();return t?.kind===`text`?Zn(`received`,t.text):t?.kind===`parsed`&&Zn(`received`,JSON.stringify(t.message)),t}}}var W=`$/ahp/connection`,er=`$/ahp/sessions`,tr=`$/ahp/agents`,nr=`$/ahp/defaultDirectory`,rr=e=>`$/ahp/channels/${encodeURIComponent(e)}`,ir=`$/ahp/automationCaps`,ar=`$/ahp/sessionCounts/unread`,or=`$/ahp/sessionCounts/working`,sr=`$/ahp/host`,cr=`$/ahp/server`,lr=`$/ahp/terminals/detached`,ur=e=>`$/ahp/titles/${encodeURIComponent(e)}`,dr=e=>`$/ahp/channelErrors/${encodeURIComponent(e)}`,G=f,fr=`ahp-automations://`,K=`daemon`;function pr(e){return[...e].sort((e,t)=>t.modifiedAt.localeCompare(e.modifiedAt))}var mr=2e3,q,J,Y=cn,X=new Map,hr=e=>e instanceof Error?e.message:String(e);async function gr(e){let t=q,n=J;if(t!==void 0&&n!==void 0)try{let r=await t.subscribe(K,e);if(!X.has(e))return;r.snapshot!==void 0&&(Q.delete(rr(e)),n.set(rr(e),r.snapshot.state)),n.set(dr(e),null)}catch(t){n.set(dr(e),hr(t))}}function _r(e,t){let n=X.get(e);n===void 0?(X.set(e,{count:1,reducer:t}),q?.host(K)?.state.status===`connected`&&gr(e)):(n.count+=1,clearTimeout(n.release),delete n.release);let r=!1;return()=>{if(r)return;r=!0;let t=X.get(e);t!==void 0&&(--t.count,!(t.count>0||e===G)&&(t.release=setTimeout(()=>{X.get(e)!==t||t.count>0||(X.delete(e),q?.unsubscribe(K,e).catch(()=>void 0))},mr)))}}async function vr(e){X.has(e)&&await gr(e)}async function yr(){let e=J;if(e===void 0)return;let t=await Z(`listSessions`,{channel:G});Y=un(t.items),e.set(er,pr(t.items));for(let n of t.items)e.set(ur(n.resource),n.title===``?`Untitled`:n.title)}async function br(e){let t=q;if(t===void 0)throw Error(`Not connected to the server.`);let n=await t.subscribe(K,e);return X.has(e)||t.unsubscribe(K,e).catch(()=>void 0),n.snapshot?.state}async function xr(e){let t=await Z(`resourceRead`,{channel:G,uri:e,encoding:`utf-8`});return{text:String(t.encoding)===`utf-8`?t.data:null,...t.contentType===void 0?{}:{contentType:t.contentType}}}async function Sr(e,t){let n=await Z(`resourceRead`,{channel:G,uri:e,encoding:`base64`});if(String(n.encoding)!==`base64`)return new Blob([n.data],{type:t});let r=atob(n.data),i=new Uint8Array(r.length);for(let e=0;e<r.length;e++)i[e]=r.charCodeAt(e);return new Blob([i],{type:t})}async function Cr(e){return(await Z(`resourceResolve`,{channel:G,uri:e})).size}async function wr(e,t,n){await Z(`resourceWrite`,{channel:G,uri:e,data:t,encoding:`utf-8`,...n===void 0?{}:{ifMatch:n}})}async function Tr(e){return(await Z(`resourceResolve`,{channel:G,uri:e})).etag}async function Er(e){try{return(await Z(`resourceResolve`,{channel:G,uri:e})).type}catch{return null}}async function Dr(e){return await Z(`resourceRead`,{channel:G,uri:e,encoding:`base64`})}async function Or(e,t,n,r=!1){await Z(`resourceWrite`,{channel:G,uri:e,data:t,encoding:n,...r?{createOnly:r}:{}})}async function kr(e){await Z(`resourceMkdir`,{channel:G,uri:e})}async function Ar(e,t){await Z(`resourceMove`,{channel:G,source:e,destination:t,failIfExists:!0})}async function jr(e,t){await Z(`resourceCopy`,{channel:G,source:e,destination:t,failIfExists:!0})}async function Mr(e,t){await Z(`resourceDelete`,{channel:G,uri:e,recursive:t})}function Nr(e,t){q?.dispatch(K,e,t)}async function Z(e,t){let n=q?.client(K)?.rawClient();if(n===void 0)throw Error(`Not connected to the server.`);return n.request(e,t)}function Pr(e,t,n){e.get(t)!==n&&e.set(t,n)}function Fr(e,t){let n=pr(t.aggregatedSessions().map(e=>dn(e.summary,Y)));e.set(er,n);for(let t of n)Pr(e,ur(t.resource),t.title===``?`Untitled`:t.title);let r=Sn(n.map(e=>e.status));Pr(e,ar,r.unread),Pr(e,or,r.working);let i=t.host(K);e.set(tr,i?.agents??[]),e.set(nr,i?.defaultDirectory??null),e.set(ir,i?.automations??null);for(let t of i?.terminals??[])Pr(e,ur(t.resource),t.title===``?`Terminal`:t.title);e.set(sr,i===void 0?null:{label:i.label,clientId:i.clientId,protocolVersion:i.protocolVersion,serverSeq:i.serverSeq,connectedAt:i.lastConnectedAt,activeSessions:i.activeSessions,terminals:i.terminals??[],subscriptions:i.subscriptions.length})}function Ir(e){e.status!==`connected`&&Qn(),e.status===`failed`?V({scope:`connection`,level:`error`,text:`failed: ${e.error.message}`}):e.status===`reconnecting`?V({scope:`connection`,level:`warn`,text:`reconnecting (attempt ${e.attempt})`}):V({scope:`connection`,level:`info`,text:e.status})}async function Lr(e,t){let n=0;for await(let r of t.hostEvents()){if(r.type===`stateChanged`){let t=r.state;Ir(t),e.set(W,{status:t.status,error:t.status===`failed`?t.error.message:r.lastError?.message??null,generation:n,...t.status===`reconnecting`?{attempt:t.attempt}:{}})}if(r.type===`connected`){n=r.generation,Y=cn,e.set(W,{status:`connected`,error:null,generation:n}),Fr(e,t);for(let e of X.keys())gr(e)}}}var Q=new Map,$=!1,Rr;function zr(e,t){if(Rr=void 0,J===e){for(let[t,n]of Q)e.set(t,n);Q.clear(),$&&($=!1,Fr(e,t))}}function Br(e,t){Rr===void 0&&(Rr=document.hidden?window.setTimeout(()=>zr(e,t),100):window.requestAnimationFrame(()=>zr(e,t)))}async function Vr(e,t){for await(let n of t.events()){let r=n.event;if(r.type===`sessionAdded`||r.type===`sessionRemoved`||r.type===`sessionSummaryChanged`){Y=ln(Y,r),$=!0,Br(e,t);continue}if(r.type!==`action`)continue;let{channel:i,action:a}=r.params;i===G&&($=!0,Br(e,t));let o=X.get(i);if(o===void 0)continue;let s=rr(i),c=Q.has(s)?Q.get(s):e.get(s);if(c!==void 0)try{Q.set(s,o.reducer(c,a)),Br(e,t)}catch{}}}async function Hr(){if(O!==void 0){let e=await O.host();return Ur=e.url,$e.connect(sn(e.url,await O.token()))}return $e.connect(on(rt()?null:tt(),window.location,!1))}var Ur=null;async function Wr(e,t){try{await t.addHost({id:K,label:O===void 0?window.location.host:(await O.host()).name,transportFactory:async()=>rn(Qt($n(await Hr())),t=>e.set(cr,t))})}catch(t){e.set(W,{status:`failed`,error:hr(t),generation:0})}}async function Gr(){let e=q,t=J;if(e!==void 0&&t!==void 0){if(e.host(K)===void 0){await Wr(t,e);return}t.set(W,{...t.get(W),status:`connecting`}),await e.reconnectHost(K).catch(()=>void 0)}}var Kr;async function qr(e){if(O===void 0||Ur===null)return;let t=await O.host().catch(()=>null);t!==null&&e.some(e=>e.id===t.id&&e.url!==Ur)&&await Gr()}function Jr(){if(document.visibilityState!==`visible`)return;let e=q?.host(K)?.state.status;(e===void 0||e===`reconnecting`||e===`failed`||e===`disconnected`)&&Gr()}var Yr={namespace:`ahp`,load:`eager`,provider:{async load(e){let t=new Me;q=t,J=e,e.set(W,{status:`connecting`,error:null,generation:0}),Lr(e,t),Vr(e,t),window.addEventListener(`online`,Jr),document.addEventListener(`visibilitychange`,Jr),O!==void 0&&(Kr=O.onHosts(e=>void qr(e))),await Wr(e,t)},async unload(e){window.removeEventListener(`online`,Jr),document.removeEventListener(`visibilitychange`,Jr),Kr?.(),Kr=void 0,Ur=null;let t=q;q=void 0,J=void 0,Y=cn;for(let e of X.values())clearTimeout(e.release);X.clear(),Q.clear(),$=!1,e.clearNamespace(`ahp`),await t?.shutdown()}}};export{it as $,yr as A,In as B,Ar as C,xr as D,br as E,wr as F,bn as G,Vn as H,Tn as I,yn as J,xn as K,wn as L,Cr as M,ur as N,Gr as O,Or as P,O as Q,Mn as R,kr as S,Sr as T,Rn as U,Bn as V,Fn as W,en as X,vn as Y,Kt as Z,Mr as _,lr as a,Ie as at,_r as b,er as c,fr as d,tt as et,G as f,jr as g,rr as h,nr as i,Je as it,Z as j,vr as k,ar as l,dr as m,ir as n,Qe as nt,sr as o,be as ot,Yr as p,_n as q,W as r,Ze as rt,cr as s,de as st,tr as t,nt as tt,or as u,Nr as v,Dr as w,Er as x,Tr as y,zn as z};
@@ -0,0 +1 @@
1
+ import{Ct as e,S as t,g as n,o as r,p as i,r as a,v as o,wt as s}from"./dist-BDH0Q8eg.js";import{n as c,r as l,t as u}from"./dist-Bq_hlZV8.js";var d=63,f=64,p=1,m=2,h=3,g=4,_=5,v=6,y=7,b=65,x=66,ee=8,S=9,C=10,w=11,T=12,E=13,D=19,O=20,k=29,A=33,te=34,ne=47,re=0,j=1,M=2,N=3,P=4,F=class{constructor(e,t,n){this.parent=e,this.depth=t,this.type=n,this.hash=(e?e.hash+e.hash<<8:0)+t+(t<<4)+n}};F.top=new F(null,-1,re);function I(e,t){for(let n=0,r=t-e.pos-1;;r--,n++){let t=e.peek(r);if(R(t)||t==-1)return n}}function L(e){return e==32||e==9}function R(e){return e==10||e==13}function z(e){return L(e)||R(e)}function B(e){return e<0||z(e)}var V=new u({start:F.top,reduce(e,t){return e.type==N&&(t==O||t==te)?e.parent:e},shift(e,t,n,r){if(t==h)return new F(e,I(r,r.pos),j);if(t==b||t==_)return new F(e,I(r,r.pos),M);if(t==d)return e.parent;if(t==D||t==A)return new F(e,0,N);if(t==E&&e.type==P)return e.parent;if(t==ne){let t=/[1-9]/.exec(r.read(r.pos,n.pos));if(t)return new F(e,e.depth+ +t[0],P)}return e},hash(e){return e.hash}});function H(e,t,n=0){return e.peek(n)==t&&e.peek(n+1)==t&&e.peek(n+2)==t&&B(e.peek(n+3))}var U=new c((e,t)=>{if(e.next==-1&&t.canShift(f))return e.acceptToken(f);let n=e.peek(-1);if((R(n)||n<0)&&t.context.type!=N){if(H(e,45)){if(t.canShift(d))e.acceptToken(d);else return e.acceptToken(p,3)}if(H(e,46)){if(t.canShift(d))e.acceptToken(d);else return e.acceptToken(m,3)}let n=0;for(;e.next==32;)n++,e.advance();(n<t.context.depth||n==t.context.depth&&t.context.type==j&&(e.next!=45||!B(e.peek(1))))&&e.next!=-1&&!R(e.next)&&e.next!=35&&e.acceptToken(d,-n)}},{contextual:!0}),W=new c((e,t)=>{if(t.context.type==N){e.next==63&&(e.advance(),B(e.next)&&e.acceptToken(y));return}if(e.next==45)e.advance(),B(e.next)&&e.acceptToken(t.context.type==j&&t.context.depth==I(e,e.pos-1)?g:h);else if(e.next==63)e.advance(),B(e.next)&&e.acceptToken(t.context.type==M&&t.context.depth==I(e,e.pos-1)?v:_);else{let n=e.pos;for(;;)if(L(e.next)){if(e.pos==n)return;e.advance()}else if(e.next==33)J(e);else if(e.next==38)Y(e);else if(e.next==42){Y(e);break}else if(e.next==39||e.next==34){if(X(e,!0))break;return}else if(e.next==91||e.next==123){if(!ie(e))return;break}else{$(e,!0,!1,0);break}for(;L(e.next);)e.advance();if(e.next==58){if(e.pos==n&&t.canShift(k))return;B(e.peek(1))&&e.acceptTokenTo(t.context.type==M&&t.context.depth==I(e,n)?x:b,n)}}},{contextual:!0});function G(e){return e>32&&e<127&&e!=34&&e!=37&&e!=44&&e!=60&&e!=62&&e!=92&&e!=94&&e!=96&&e!=123&&e!=124&&e!=125}function K(e){return e>=48&&e<=57||e>=97&&e<=102||e>=65&&e<=70}function q(e,t){return e.next==37?(e.advance(),K(e.next)&&e.advance(),K(e.next)&&e.advance(),!0):G(e.next)||t&&e.next==44?(e.advance(),!0):!1}function J(e){if(e.advance(),e.next==60){for(e.advance();;)if(!q(e,!0)){e.next==62&&e.advance();break}}else for(;q(e,!1););}function Y(e){for(e.advance();!B(e.next)&&Z(e.next)!=`f`;)e.advance()}function X(e,t){let n=e.next,r=!1,i=e.pos;for(e.advance();;){let a=e.next;if(a<0)break;if(e.advance(),a==n){if(a==39){if(e.next==39)e.advance();else break}else break}else if(a==92&&n==34)e.next>=0&&e.advance();else if(R(a)){if(t)return!1;r=!0}else if(t&&e.pos>=i+1024)return!1}return!r}function ie(e){for(let t=[],n=e.pos+1024;;)if(e.next==91||e.next==123)t.push(e.next),e.advance();else if(e.next==39||e.next==34){if(!X(e,!0))return!1}else if(e.next==93||e.next==125){if(t[t.length-1]!=e.next-2)return!1;if(t.pop(),e.advance(),!t.length)return!0}else if(e.next<0||e.pos>n||R(e.next))return!1;else e.advance()}var ae=`iiisiiissisfissssssssssssisssiiissssssssssssssssssssssssssfsfssissssssssssssssssssssssssssfif`;function Z(e){return e<33?`u`:e>125?`s`:ae[e-33]}function Q(e,t){let n=Z(e);return n!=`u`&&!(t&&n==`f`)}function $(e,t,n,r){if(Z(e.next)==`s`||(e.next==63||e.next==58||e.next==45)&&Q(e.peek(1),n))e.advance();else return!1;let i=e.pos;for(;;){let a=e.next,o=0,s=r+1;for(;z(a);){if(R(a)){if(t)return!1;s=0}else s++;a=e.peek(++o)}if(!(a>=0&&(a==58?Q(e.peek(o+1),n):a==35?e.peek(o-1)!=32:Q(a,n)))||!n&&s<=r||s==0&&!n&&(H(e,45,o)||H(e,46,o)))break;if(t&&Z(a)==`f`)return!1;for(let t=o;t>=0;t--)e.advance();if(t&&e.pos>i+1024)return!1}return!0}var oe=new c((e,t)=>{if(e.next==33)J(e),e.acceptToken(T);else if(e.next==38||e.next==42){let t=e.next==38?C:w;Y(e),e.acceptToken(t)}else e.next==39||e.next==34?(X(e,!1),e.acceptToken(S)):$(e,!1,t.context.type==N,t.context.depth)&&e.acceptToken(ee)}),se=new c((e,t)=>{let n=t.context.type==P?t.context.depth:-1,r=e.pos;scan:for(;;){let i=0,a=e.next;for(;a==32;)a=e.peek(++i);if(!i&&(H(e,45,i)||H(e,46,i))||!R(a)&&(n<0&&(n=Math.max(t.context.depth+1,i)),i<n))break;for(;;){if(e.next<0)break scan;let t=R(e.next);if(e.advance(),t)continue scan;r=e.pos}}e.acceptTokenTo(E,r)}),ce=e({DirectiveName:s.keyword,DirectiveContent:s.attributeValue,"DirectiveEnd DocEnd":s.meta,QuotedLiteral:s.string,BlockLiteralHeader:s.special(s.string),BlockLiteralContent:s.content,Literal:s.content,"Key/Literal Key/QuotedLiteral":s.definition(s.propertyName),"Anchor Alias":s.labelName,Tag:s.typeName,Comment:s.lineComment,": , -":s.separator,"?":s.punctuation,"[ ]":s.squareBracket,"{ }":s.brace}),le=l.deserialize({version:14,states:"5lQ!ZQgOOO#PQfO'#CpO#uQfO'#DOOOQR'#Dv'#DvO$qQgO'#DRO%gQdO'#DUO%nQgO'#DUO&ROaO'#D[OOQR'#Du'#DuO&{QgO'#D^O'rQgO'#D`OOQR'#Dt'#DtO(iOqO'#DbOOQP'#Dj'#DjO(zQaO'#CmO)YQgO'#CmOOQP'#Cm'#CmQ)jQaOOQ)uQgOOQ]QgOOO*PQdO'#CrO*nQdO'#CtOOQO'#Dw'#DwO+]Q`O'#CxO+hQdO'#CwO+rQ`O'#CwOOQO'#Cv'#CvO+wQdO'#CvOOQO'#Cq'#CqO,UQ`O,59[O,^QfO,59[OOQR,59[,59[OOQO'#Cx'#CxO,eQ`O'#DPO,pQdO'#DPOOQO'#Dx'#DxO,zQdO'#DxO-XQ`O,59jO-aQfO,59jOOQR,59j,59jOOQR'#DS'#DSO-hQcO,59mO-sQgO'#DVO.TQ`O'#DVO.YQcO,59pOOQR'#DX'#DXO#|QfO'#DWO.hQcO'#DWOOQR,59v,59vO.yOWO,59vO/OOaO,59vO/WOaO,59vO/cQgO'#D_OOQR,59x,59xO0VQgO'#DaOOQR,59z,59zOOQP,59|,59|O0yOaO,59|O1ROaO,59|O1aOqO,59|OOQP-E7h-E7hO1oQgO,59XOOQP,59X,59XO2PQaO'#DeO2_QgO'#DeO2oQgO'#DkOOQP'#Dk'#DkQ)jQaOOO3PQdO'#CsOOQO,59^,59^O3kQdO'#CuOOQO,59`,59`OOQO,59c,59cO4VQdO,59cO4aQdO'#CzO4kQ`O'#CzOOQO,59b,59bOOQU,5:Q,5:QOOQR1G.v1G.vO4pQ`O1G.vOOQU-E7d-E7dO4xQdO,59kOOQO,59k,59kO5SQdO'#DQO5^Q`O'#DQOOQO,5:d,5:dOOQU,5:R,5:ROOQR1G/U1G/UO5cQ`O1G/UOOQU-E7e-E7eO5kQgO'#DhO5xQcO1G/XOOQR1G/X1G/XOOQR,59q,59qO6TQgO,59qO6eQdO'#DiO6lQgO'#DiO7PQcO1G/[OOQR1G/[1G/[OOQR,59r,59rO#|QfO,59rOOQR1G/b1G/bO7_OWO1G/bO7dOaO1G/bOOQR,59y,59yOOQR,59{,59{OOQP1G/h1G/hO7lOaO1G/hO7tOaO1G/hO8POaO1G/hOOQP1G.s1G.sO8_QgO,5:POOQP,5:P,5:POOQP,5:V,5:VOOQP-E7i-E7iOOQO,59_,59_OOQO,59a,59aOOQO1G.}1G.}OOQO,59f,59fO8oQdO,59fOOQR7+$b7+$bP,XQ`O'#DfOOQO1G/V1G/VOOQO,59l,59lO8yQdO,59lOOQR7+$p7+$pP9TQ`O'#DgOOQR'#DT'#DTOOQR,5:S,5:SOOQR-E7f-E7fOOQR7+$s7+$sOOQR1G/]1G/]O9YQgO'#DYO9jQ`O'#DYOOQR,5:T,5:TO#|QfO'#DZO9oQcO'#DZOOQR-E7g-E7gOOQR7+$v7+$vOOQR1G/^1G/^OOQR7+$|7+$|O:QOWO7+$|OOQP7+%S7+%SO:VOaO7+%SO:_OaO7+%SOOQP1G/k1G/kOOQO1G/Q1G/QOOQO1G/W1G/WOOQR,59t,59tO:jQgO,59tOOQR,59u,59uO#|QfO,59uOOQR<<Hh<<HhOOQP<<Hn<<HnO:zOaO<<HnOOQR1G/`1G/`OOQR1G/a1G/aOOQPAN>YAN>Y",stateData:";S~O!fOS!gOS^OS~OP_OQbORSOTUOWROXROYYOZZO[XOcPOqQO!PVO!V[O!cTO~O`cO~P]OVkOWROXROYeOZfO[dOcPOmhOqQO~OboO~P!bOVtOWROXROYeOZfO[dOcPOmrOqQO~OpwO~P#WORSOTUOWROXROYYOZZO[XOcPOqQO!PVO!cTO~OSvP!avP!bvP~P#|OWROXROYeOZfO[dOcPOqQO~OmzO~P%OOm!OOUzP!azP!bzP!dzP~P#|O^!SO!b!QO!f!TO!g!RO~ORSOTUOWROXROcPOqQO!PVO!cTO~OY!UOP!QXQ!QX!V!QX!`!QXS!QX!a!QX!b!QXU!QXm!QX!d!QX~P&aO[!WOP!SXQ!SX!V!SX!`!SXS!SX!a!SX!b!SXU!SXm!SX!d!SX~P&aO^!ZO!W![O!b!YO!f!]O!g!YO~OP!_O!V[OQaX!`aX~OPaXQaX!VaX!`aX~P#|OP!bOQ!cO!V[O~OP_O!V[O~P#|OWROXROY!fOcPOqQObfXmfXofXpfX~OWROXRO[!hOcPOqQObhXmhXohXphX~ObeXmlXoeX~ObkXokX~P%OOm!kO~Om!lObnPonP~P%OOb!pOo!oO~Ob!pO~P!bOm!sOosXpsX~OosXpsX~P%OOm!uOotPptP~P%OOo!xOp!yO~Op!yO~P#WOS!|O!a#OO!b#OO~OUyX!ayX!byX!dyX~P#|Om#QO~OU#SO!a#UO!b#UO!d#RO~Om#WOUzX!azX!bzX!dzX~O]#XO~O!b#XO!g#YO~O^#ZO!b#XO!g#YO~OP!RXQ!RX!V!RX!`!RXS!RX!a!RX!b!RXU!RXm!RX!d!RX~P&aOP!TXQ!TX!V!TX!`!TXS!TX!a!TX!b!TXU!TXm!TX!d!TX~P&aO!b#^O!g#^O~O^#_O!b#^O!f#`O!g#^O~O^#_O!W#aO!b#^O!g#^O~OPaaQaa!Vaa!`aa~P#|OP#cO!V[OQ!XX!`!XX~OP!XXQ!XX!V!XX!`!XX~P#|OP_O!V[OQ!_X!`!_X~P#|OWROXROcPOqQObgXmgXogXpgX~OWROXROcPOqQObiXmiXoiXpiX~Obkaoka~P%OObnXonX~P%OOm#kO~Ob#lOo!oO~Oosapsa~P%OOotXptX~P%OOm#pO~Oo!xOp#qO~OSwP!awP!bwP~P#|OS!|O!a#vO!b#vO~OUya!aya!bya!dya~P#|Om#xO~P%OOm#{OU}P!a}P!b}P!d}P~P#|OU#SO!a$OO!b$OO!d#RO~O]$QO~O!b$QO!g$RO~O!b$SO!g$SO~O^$TO!b$SO!g$SO~O^$TO!b$SO!f$UO!g$SO~OP!XaQ!Xa!V!Xa!`!Xa~P#|Obnaona~P%OOotapta~P%OOo!xO~OU|X!a|X!b|X!d|X~P#|Om$ZO~Om$]OU}X!a}X!b}X!d}X~O]$^O~O!b$_O!g$_O~O^$`O!b$_O!g$_O~OU|a!a|a!b|a!d|a~P#|O!b$cO!g$cO~O",goto:",]!mPPPPPPPPPPPPPPPPP!nPP!v#v#|$`#|$c$f$j$nP%VPPP!v%Y%^%a%{&O%a&R&U&X&_&b%aP&e&{&e'O'RPP']'a'g'm's'y(XPPPPPPPP(_)e*X+c,VUaObcR#e!c!{ROPQSTUXY_bcdehknrtvz!O!U!W!_!b!c!f!h!k!l!s!u!|#Q#R#S#W#c#k#p#x#{$Z$]QmPR!qnqfPQThknrtv!k!l!s!u#R#k#pR!gdR!ieTlPnTjPnSiPnSqQvQ{TQ!mkQ!trQ!vtR#y#RR!nkTsQvR!wt!RWOSUXY_bcz!O!U!W!_!b!c!|#Q#S#W#c#x#{$Z$]RySR#t!|R|TR|UQ!PUR#|#SR#z#RR#z#SyZOSU_bcz!O!_!b!c!|#Q#S#W#c#x#{$Z$]R!VXR!XYa]O^abc!a!c!eT!da!eQnPR!rnQvQR!{vQ!}yR#u!}Q#T|R#}#TW^Obc!cS!^^!aT!aa!eQ!eaR#f!eW`Obc!cQxSS}U#SQ!`_Q#PzQ#V!OQ#b!_Q#d!bQ#s!|Q#w#QQ$P#WQ$V#cQ$Y#xQ$[#{Q$a$ZR$b$]xZOSU_bcz!O!_!b!c!|#Q#S#W#c#x#{$Z$]Q!VXQ!XYQ#[!UR#]!W!QWOSUXY_bcz!O!U!W!_!b!c!|#Q#S#W#c#x#{$Z$]pfPQThknrtv!k!l!s!u#R#k#pQ!gdQ!ieQ#g!fR#h!hSgPn^pQTkrtv#RQ!jhQ#i!kQ#j!lQ#n!sQ#o!uQ$W#kR$X#pQuQR!zv",nodeNames:`⚠ DirectiveEnd DocEnd - - ? ? ? Literal QuotedLiteral Anchor Alias Tag BlockLiteralContent Comment Stream BOM Document ] [ FlowSequence Item Tagged Anchored Anchored Tagged FlowMapping Pair Key : Pair , } { FlowMapping Pair Pair BlockSequence Item Item BlockMapping Pair Pair Key Pair Pair BlockLiteral BlockLiteralHeader Tagged Anchored Anchored Tagged Directive DirectiveName DirectiveContent Document`,maxTerm:74,context:V,nodeProps:[[`isolate`,-3,8,9,14,``],[`openedBy`,18,`[`,32,`{`],[`closedBy`,19,`]`,33,`}`]],propSources:[ce],skippedNodes:[0],repeatNodeCount:6,tokenData:"-Y~RnOX#PXY$QYZ$]Z]#P]^$]^p#Ppq$Qqs#Pst$btu#Puv$yv|#P|}&e}![#P![!]'O!]!`#P!`!a'i!a!}#P!}#O*g#O#P#P#P#Q+Q#Q#o#P#o#p+k#p#q'i#q#r,U#r;'S#P;'S;=`#z<%l?HT#P?HT?HU,o?HUO#PQ#UU!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PQ#kTOY#PZs#Pt;'S#P;'S;=`#z<%lO#PQ#}P;=`<%l#P~$VQ!f~XY$Qpq$Q~$bO!g~~$gS^~OY$bZ;'S$b;'S;=`$s<%lO$b~$vP;=`<%l$bR%OX!WQOX%kXY#PZ]%k]^#P^p%kpq#hq;'S%k;'S;=`&_<%lO%kR%rX!WQ!VPOX%kXY#PZ]%k]^#P^p%kpq#hq;'S%k;'S;=`&_<%lO%kR&bP;=`<%l%kR&lUoP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR'VUmP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR'p[!PP!WQOY#PZp#Ppq#hq{#P{|(f|}#P}!O(f!O!R#P!R![)p![;'S#P;'S;=`#z<%lO#PR(mW!PP!WQOY#PZp#Ppq#hq!R#P!R![)V![;'S#P;'S;=`#z<%lO#PR)^U!PP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR)wY!PP!WQOY#PZp#Ppq#hq{#P{|)V|}#P}!O)V!O;'S#P;'S;=`#z<%lO#PR*nUcP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR+XUbP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR+rUqP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR,]UpP!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#PR,vU`P!WQOY#PZp#Ppq#hq;'S#P;'S;=`#z<%lO#P",tokenizers:[U,W,oe,se,0,1],topRules:{Stream:[0,15]},tokenPrec:0}),ue=a.define({name:`yaml`,parser:le.configure({props:[t.add({Stream:e=>{for(let t=e.node.resolve(e.pos,-1);t&&t.to>=e.pos;t=t.parent){if(t.name==`BlockLiteralContent`&&t.from<t.to)return e.baseIndentFor(t);if(t.name==`BlockLiteral`)return e.baseIndentFor(t)+e.unit;if(t.name==`BlockSequence`||t.name==`BlockMapping`)return e.column(t.firstChild.from,1);if(t.name==`QuotedLiteral`)return null;if(t.name==`Literal`){let n=e.column(t.from,1);if(n==e.lineIndent(t.from,1))return n;if(t.to>e.pos)return null}}return null},FlowMapping:i({closing:`}`}),FlowSequence:i({closing:`]`})}),o.add({"FlowMapping FlowSequence":n,"Item Pair BlockLiteral":(e,t)=>({from:t.doc.lineAt(e.from).to,to:e.to})})]}),languageData:{commentTokens:{line:`#`},indentOnInput:/^\s*[\]\}]$/}});function de(){return new r(ue)}s.meta;export{de as yaml};
@@ -0,0 +1 @@
1
+ import{Ct as e,S as t,d as n,g as r,o as i,r as a,v as o,wt as s}from"./dist-BDH0Q8eg.js";import{r as c}from"./dist-Bq_hlZV8.js";var l=e({String:s.string,Number:s.number,"True False":s.bool,PropertyName:s.propertyName,Null:s.null,", :":s.separator,"[ ]":s.squareBracket,"{ }":s.brace}),u=c.deserialize({version:14,states:"$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#ClOOQO'#Cr'#CrQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CtOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59W,59WO!iQPO,59WOVQPO,59QOqQPO'#CmO!nQPO,59`OOQO1G.k1G.kOVQPO'#CnO!vQPO,59aOOQO1G.r1G.rOOQO1G.l1G.lOOQO,59X,59XOOQO-E6k-E6kOOQO,59Y,59YOOQO-E6l-E6l",stateData:`#O~OeOS~OQSORSOSSOTSOWQO_ROgPO~OVXOgUO~O^[O~PVO[^O~O]_OVhX~OVaO~O]bO^iX~O^dO~O]_OVha~O]bO^ia~O`,goto:"!kjPPPPPPkPPkqwPPPPk{!RPPP!XP!e!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R",nodeNames:`⚠ JsonText True False Null Number String } { Object Property PropertyName : , ] [ Array`,maxTerm:25,nodeProps:[[`isolate`,-2,6,11,``],[`openedBy`,7,`{`,14,`[`],[`closedBy`,8,`}`,15,`]`]],propSources:[l],skippedNodes:[0],repeatNodeCount:2,tokenData:"(|~RaXY!WYZ!W]^!Wpq!Wrs!]|}$u}!O$z!Q!R%T!R![&c![!]&t!}#O&y#P#Q'O#Y#Z'T#b#c'r#h#i(Z#o#p(r#q#r(w~!]Oe~~!`Wpq!]qr!]rs!xs#O!]#O#P!}#P;'S!];'S;=`$o<%lO!]~!}Og~~#QXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#m~#pR!Q![#y!c!i#y#T#Z#y~#|R!Q![$V!c!i$V#T#Z$V~$YR!Q![$c!c!i$c#T#Z$c~$fR!Q![!]!c!i!]#T#Z!]~$rP;=`<%l!]~$zO]~~$}Q!Q!R%T!R![&c~%YRT~!O!P%c!g!h%w#X#Y%w~%fP!Q![%i~%nRT~!Q![%i!g!h%w#X#Y%w~%zR{|&T}!O&T!Q![&Z~&WP!Q![&Z~&`PT~!Q![&Z~&hST~!O!P%c!Q![&c!g!h%w#X#Y%w~&yO[~~'OO_~~'TO^~~'WP#T#U'Z~'^P#`#a'a~'dP#g#h'g~'jP#X#Y'm~'rOR~~'uP#i#j'x~'{P#`#a(O~(RP#`#a(U~(ZOS~~(^P#f#g(a~(dP#i#j(g~(jP#X#Y(m~(rOQ~~(wOW~~(|OV~",tokenizers:[0],topRules:{JsonText:[0,1]},tokenPrec:0}),d=a.define({name:`json`,parser:u.configure({props:[t.add({Object:n({except:/^\s*\}/}),Array:n({except:/^\s*\]/})}),o.add({"Object Array":r})]}),languageData:{closeBrackets:{brackets:[`[`,`{`,`"`]},indentOnInput:/^\s*[\}\]]$/}});function f(){return new i(d)}export{f as json};
@@ -0,0 +1 @@
1
+ import{A as e,Ct as t,N as n,Nt as r,S as i,it as a,o,r as s,u as c,v as l,wt as u}from"./dist-BDH0Q8eg.js";import{n as d,r as ee,t as te}from"./dist-Bq_hlZV8.js";import{n as f,t as ne}from"./dist-BfGIsxxP.js";import{a as re,i as ie,n as ae,o as oe,r as p}from"./dist-DUFzb_Eu.js";var se=55,ce=1,le=56,ue=2,de=57,fe=3,m=4,pe=5,h=6,g=7,me=8,he=9,ge=10,_e=11,ve=12,ye=13,_=58,be=14,xe=15,v=59,y=21,Se=23,b=24,Ce=25,x=27,S=28,we=29,Te=32,Ee=35,De=37,Oe=38,ke=0,Ae=1,je={area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,menuitem:!0},Me={dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},C={dd:{dd:!0,dt:!0},dt:{dd:!0,dt:!0},li:{li:!0},option:{option:!0,optgroup:!0},optgroup:{optgroup:!0},p:{address:!0,article:!0,aside:!0,blockquote:!0,dir:!0,div:!0,dl:!0,fieldset:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,menu:!0,nav:!0,ol:!0,p:!0,pre:!0,section:!0,table:!0,ul:!0},rp:{rp:!0,rt:!0},rt:{rp:!0,rt:!0},tbody:{tbody:!0,tfoot:!0},td:{td:!0,th:!0},tfoot:{tbody:!0},th:{td:!0,th:!0},thead:{tbody:!0,tfoot:!0},tr:{tr:!0}};function Ne(e){return e==45||e==46||e==58||e>=65&&e<=90||e==95||e>=97&&e<=122||e>=161}var w=null,T=null,E=0;function D(e,t){let n=e.pos+t;if(E==n&&T==e)return w;let r=e.peek(t),i=``;for(;Ne(r);)i+=String.fromCharCode(r),r=e.peek(++t);return T=e,E=n,w=i?i.toLowerCase():r==Pe||r==Fe?void 0:null}var O=60,k=62,A=47,Pe=63,Fe=33,Ie=45;function j(e,t){this.name=e,this.parent=t}var Le=[h,ge,g,me,he],Re=new te({start:null,shift(e,t,n,r){return Le.indexOf(t)>-1?new j(D(r,1)||``,e):e},reduce(e,t){return t==y&&e?e.parent:e},reuse(e,t,n,r){let i=t.type.id;return i==h||i==De?new j(D(r,1)||``,e):e},strict:!1}),ze=new d((e,t)=>{if(e.next!=O){e.next<0&&t.context&&e.acceptToken(_);return}e.advance();let n=e.next==A;n&&e.advance();let r=D(e,0);if(r===void 0)return;if(!r)return e.acceptToken(n?xe:be);let i=t.context?t.context.name:null;if(n){if(r==i)return e.acceptToken(_e);if(i&&Me[i])return e.acceptToken(_,-2);if(t.dialectEnabled(ke))return e.acceptToken(ve);for(let e=t.context;e;e=e.parent)if(e.name==r)return;e.acceptToken(ye)}else{if(r==`script`)return e.acceptToken(g);if(r==`style`)return e.acceptToken(me);if(r==`textarea`)return e.acceptToken(he);if(je.hasOwnProperty(r))return e.acceptToken(ge);i&&C[i]&&C[i][r]?e.acceptToken(_,-1):e.acceptToken(h)}},{contextual:!0}),Be=new d(e=>{for(let t=0,n=0;;n++){if(e.next<0){n&&e.acceptToken(v);break}if(e.next==Ie)t++;else if(e.next==k&&t>=2){n>=3&&e.acceptToken(v,-2);break}else t=0;e.advance()}});function Ve(e){for(;e;e=e.parent)if(e.name==`svg`||e.name==`math`)return!0;return!1}var He=new d((e,t)=>{if(e.next==A&&e.peek(1)==k){let n=t.dialectEnabled(Ae)||Ve(t.context);e.acceptToken(n?pe:m,2)}else e.next==k&&e.acceptToken(m,1)});function M(e,t,n){let r=2+e.length;return new d(i=>{for(let a=0,o=0,s=0;;s++){if(i.next<0){s&&i.acceptToken(t);break}if(a==0&&i.next==O||a==1&&i.next==A||a>=2&&a<r&&i.next==e.charCodeAt(a-2))a++,o++;else if(a==r&&i.next==k){s>o?i.acceptToken(t,-o):i.acceptToken(n,-(o-2));break}else if((i.next==10||i.next==13)&&s){i.acceptToken(t,1);break}else a=o=0;i.advance()}})}var Ue=M(`script`,se,ce),We=M(`style`,le,ue),Ge=M(`textarea`,de,fe),Ke=t({"Text RawText IncompleteTag IncompleteCloseTag":u.content,"StartTag StartCloseTag SelfClosingEndTag EndTag":u.angleBracket,TagName:u.tagName,"MismatchedCloseTag/TagName":[u.tagName,u.invalid],AttributeName:u.attributeName,"AttributeValue UnquotedAttributeValue":u.attributeValue,Is:u.definitionOperator,"EntityReference CharacterReference":u.character,Comment:u.blockComment,ProcessingInst:u.processingInstruction,DoctypeDecl:u.documentMeta}),qe=ee.deserialize({version:14,states:",xOVO!rOOO!ZQ#tO'#CrO!`Q#tO'#C{O!eQ#tO'#DOO!jQ#tO'#DRO!oQ#tO'#DTO!tOaO'#CqO#PObO'#CqO#[OdO'#CqO$kO!rO'#CqOOO`'#Cq'#CqO$rO$fO'#DUO$zQ#tO'#DWO%PQ#tO'#DXOOO`'#Dl'#DlOOO`'#DZ'#DZQVO!rOOO%UQ&rO,59^O%aQ&rO,59gO%lQ&rO,59jO%wQ&rO,59mO&SQ&rO,59oOOOa'#D_'#D_O&_OaO'#CyO&jOaO,59]OOOb'#D`'#D`O&rObO'#C|O&}ObO,59]OOOd'#Da'#DaO'VOdO'#DPO'bOdO,59]OOO`'#Db'#DbO'jO!rO,59]O'qQ#tO'#DSOOO`,59],59]OOOp'#Dc'#DcO'vO$fO,59pOOO`,59p,59pO(OQ#|O,59rO(TQ#|O,59sOOO`-E7X-E7XO(YQ&rO'#CtOOQW'#D['#D[O(hQ&rO1G.xOOOa1G.x1G.xOOO`1G/Z1G/ZO(sQ&rO1G/ROOOb1G/R1G/RO)OQ&rO1G/UOOOd1G/U1G/UO)ZQ&rO1G/XOOO`1G/X1G/XO)fQ&rO1G/ZOOOa-E7]-E7]O)qQ#tO'#CzOOO`1G.w1G.wOOOb-E7^-E7^O)vQ#tO'#C}OOOd-E7_-E7_O){Q#tO'#DQOOO`-E7`-E7`O*QQ#|O,59nOOOp-E7a-E7aOOO`1G/[1G/[OOO`1G/^1G/^OOO`1G/_1G/_O*VQ,UO,59`OOQW-E7Y-E7YOOOa7+$d7+$dOOO`7+$u7+$uOOOb7+$m7+$mOOOd7+$p7+$pOOO`7+$s7+$sO*bQ#|O,59fO*gQ#|O,59iO*lQ#|O,59lOOO`1G/Y1G/YO*qO7[O'#CwO+SOMhO'#CwOOQW1G.z1G.zOOO`1G/Q1G/QOOO`1G/T1G/TOOO`1G/W1G/WOOOO'#D]'#D]O+eO7[O,59cOOQW,59c,59cOOOO'#D^'#D^O+vOMhO,59cOOOO-E7Z-E7ZOOQW1G.}1G.}OOOO-E7[-E7[",stateData:`,c~O!_OS~OUSOVPOWQOXROYTO[]O][O^^O_^Oa^Ob^Oc^Od^Oy^O|_O!eZO~OgaO~OgbO~OgcO~OgdO~OgeO~O!XfOPmP![mP~O!YiOQpP![pP~O!ZlORsP![sP~OUSOVPOWQOXROYTOZqO[]O][O^^O_^Oa^Ob^Oc^Od^Oy^O!eZO~O![rO~P#gO!]sO!fuO~OgvO~OgwO~OS|OT}OiyO~OS!POT}OiyO~OS!ROT}OiyO~OS!TOT}OiyO~OS}OT}OiyO~O!XfOPmX![mX~OP!WO![!XO~O!YiOQpX![pX~OQ!ZO![!XO~O!ZlORsX![sX~OR!]O![!XO~O![!XO~P#gOg!_O~O!]sO!f!aO~OS!bO~OS!cO~Oj!dOShXThXihX~OS!fOT!gOiyO~OS!hOT!gOiyO~OS!iOT!gOiyO~OS!jOT!gOiyO~OS!gOT!gOiyO~Og!kO~Og!lO~Og!mO~OS!nO~Ol!qO!a!oO!c!pO~OS!rO~OS!sO~OS!tO~Ob!uOc!uOd!uO!a!wO!b!uO~Ob!xOc!xOd!xO!c!wO!d!xO~Ob!uOc!uOd!uO!a!{O!b!uO~Ob!xOc!xOd!xO!c!{O!d!xO~OT~cbd!ey|!e~`,goto:"%q!aPPPPPPPPPPPPPPPPPPPPP!b!hP!nPP!zP!}#Q#T#Z#^#a#g#j#m#s#y!bP!b!bP$P$V$m$s$y%P%V%]%cPPPPPPPP%iX^OX`pXUOX`pezabcde{!O!Q!S!UR!q!dRhUR!XhXVOX`pRkVR!XkXWOX`pRnWR!XnXXOX`pQrXR!XpXYOX`pQ`ORx`Q{aQ!ObQ!QcQ!SdQ!UeZ!e{!O!Q!S!UQ!v!oR!z!vQ!y!pR!|!yQgUR!VgQjVR!YjQmWR![mQpXR!^pQtZR!`tS_O`ToXp",nodeNames:`⚠ StartCloseTag StartCloseTag StartCloseTag EndTag SelfClosingEndTag StartTag StartTag StartTag StartTag StartTag StartCloseTag StartCloseTag StartCloseTag IncompleteTag IncompleteCloseTag Document Text EntityReference CharacterReference InvalidEntity Element OpenTag TagName Attribute AttributeName Is AttributeValue UnquotedAttributeValue ScriptText CloseTag OpenTag StyleText CloseTag OpenTag TextareaText CloseTag OpenTag CloseTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag CloseTag DoctypeDecl`,maxTerm:68,context:Re,nodeProps:[[`closedBy`,-10,1,2,3,7,8,9,10,11,12,13,`EndTag`,6,`EndTag SelfClosingEndTag`,-4,22,31,34,37,`CloseTag`],[`openedBy`,4,`StartTag StartCloseTag`,5,`StartTag`,-4,30,33,36,38,`OpenTag`],[`group`,-10,14,15,18,19,20,21,40,41,42,43,`Entity`,17,`Entity TextContent`,-3,29,32,35,`TextContent Entity`],[`isolate`,-11,22,30,31,33,34,36,37,38,39,42,43,`ltr`,-3,27,28,40,``]],propSources:[Ke],skippedNodes:[0],repeatNodeCount:9,tokenData:"!<p!aR!YOX$qXY,QYZ,QZ[$q[]&X]^,Q^p$qpq,Qqr-_rs3_sv-_vw3}wxHYx}-_}!OH{!O!P-_!P!Q$q!Q![-_![!]Mz!]!^-_!^!_!$S!_!`!;x!`!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4U-_4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!Z$|caPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr$qrs&}sv$qvw+Pwx(tx!^$q!^!_*V!_!a&X!a#S$q#S#T&X#T;'S$q;'S;=`+z<%lO$q!R&bXaP!b`!dpOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&Xq'UVaP!dpOv&}wx'kx!^&}!^!_(V!_;'S&};'S;=`(n<%lO&}P'pTaPOv'kw!^'k!_;'S'k;'S;=`(P<%lO'kP(SP;=`<%l'kp([S!dpOv(Vx;'S(V;'S;=`(h<%lO(Vp(kP;=`<%l(Vq(qP;=`<%l&}a({WaP!b`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t`)jT!b`Or)esv)ew;'S)e;'S;=`)y<%lO)e`)|P;=`<%l)ea*SP;=`<%l(t!Q*^V!b`!dpOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!Q*vP;=`<%l*V!R*|P;=`<%l&XW+UYlWOX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+PW+wP;=`<%l+P!Z+}P;=`<%l$q!a,]`aP!b`!dp!_^OX&XXY,QYZ,QZ]&X]^,Q^p&Xpq,Qqr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!_-ljiSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q[/ebiSlWOX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+PS0rXiSqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0mS1bP;=`<%l0m[1hP;=`<%l/^!V1vciSaP!b`!dpOq&Xqr1krs&}sv1kvw0mwx(tx!P1k!P!Q&X!Q!^1k!^!_*V!_!a&X!a#s1k#s$f&X$f;'S1k;'S;=`3R<%l?Ah1k?Ah?BY&X?BY?Mn1k?MnO&X!V3UP;=`<%l1k!_3[P;=`<%l-_!Z3hV!ahaP!dpOv&}wx'kx!^&}!^!_(V!_;'S&};'S;=`(n<%lO&}!_4WiiSlWd!ROX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst>]tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^/^!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!Z5zblWOX5uXZ7SZ[5u[^7S^p5uqr5urs7Sst+Ptw5uwx7Sx!]5u!]!^7w!^!a7S!a#S5u#S#T7S#T;'S5u;'S;=`8n<%lO5u!R7VVOp7Sqs7St!]7S!]!^7l!^;'S7S;'S;=`7q<%lO7S!R7qOb!R!R7tP;=`<%l7S!Z8OYlWb!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!Z8qP;=`<%l5u!_8{iiSlWOX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst/^tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^:j!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!_:sbiSlWb!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!V<QciSOp7Sqr;{rs7Sst0mtw;{wx7Sx!P;{!P!Q7S!Q!];{!]!^=]!^!a7S!a#s;{#s$f7S$f;'S;{;'S;=`>P<%l?Ah;{?Ah?BY7S?BY?Mn;{?MnO7S!V=dXiSb!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!V>SP;=`<%l;{!_>YP;=`<%l8t!_>dhiSlWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^/^!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!Z@TalWOX@OXZAYZ[@O[^AY^p@Oqr@OrsAYsw@OwxAYx!]@O!]!^Az!^!aAY!a#S@O#S#TAY#T;'S@O;'S;=`Bq<%lO@O!RA]UOpAYq!]AY!]!^Ao!^;'SAY;'S;=`At<%lOAY!RAtOc!R!RAwP;=`<%lAY!ZBRYlWc!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!ZBtP;=`<%l@O!_COhiSlWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^Dj!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!_DsbiSlWc!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!VFQbiSOpAYqrE{rsAYswE{wxAYx!PE{!P!QAY!Q!]E{!]!^GY!^!aAY!a#sE{#s$fAY$f;'SE{;'S;=`G|<%l?AhE{?Ah?BYAY?BY?MnE{?MnOAY!VGaXiSc!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!VHPP;=`<%lE{!_HVP;=`<%lBw!ZHcW!cxaP!b`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t!aIYliSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OKQ!O!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!aK_kiSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!`&X!`!aMS!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!TM_XaP!b`!dp!fQOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!aNZ!ZiSgQaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OMz!O!PMz!P!Q$q!Q![Mz![!]Mz!]!^-_!^!_*V!_!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f$}-_$}%OMz%O%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4UMz4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Je-_$Je$JgMz$Jg$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!a!$PP;=`<%lMz!R!$ZY!b`!dpOq*Vqr!$yrs(Vsv*Vwx)ex!a*V!a!b!4t!b;'S*V;'S;=`*s<%lO*V!R!%Q]!b`!dpOr*Vrs(Vsv*Vwx)ex}*V}!O!%y!O!f*V!f!g!']!g#W*V#W#X!0`#X;'S*V;'S;=`*s<%lO*V!R!&QX!b`!dpOr*Vrs(Vsv*Vwx)ex}*V}!O!&m!O;'S*V;'S;=`*s<%lO*V!R!&vV!b`!dp!ePOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!'dX!b`!dpOr*Vrs(Vsv*Vwx)ex!q*V!q!r!(P!r;'S*V;'S;=`*s<%lO*V!R!(WX!b`!dpOr*Vrs(Vsv*Vwx)ex!e*V!e!f!(s!f;'S*V;'S;=`*s<%lO*V!R!(zX!b`!dpOr*Vrs(Vsv*Vwx)ex!v*V!v!w!)g!w;'S*V;'S;=`*s<%lO*V!R!)nX!b`!dpOr*Vrs(Vsv*Vwx)ex!{*V!{!|!*Z!|;'S*V;'S;=`*s<%lO*V!R!*bX!b`!dpOr*Vrs(Vsv*Vwx)ex!r*V!r!s!*}!s;'S*V;'S;=`*s<%lO*V!R!+UX!b`!dpOr*Vrs(Vsv*Vwx)ex!g*V!g!h!+q!h;'S*V;'S;=`*s<%lO*V!R!+xY!b`!dpOr!+qrs!,hsv!+qvw!-Swx!.[x!`!+q!`!a!/j!a;'S!+q;'S;=`!0Y<%lO!+qq!,mV!dpOv!,hvx!-Sx!`!,h!`!a!-q!a;'S!,h;'S;=`!.U<%lO!,hP!-VTO!`!-S!`!a!-f!a;'S!-S;'S;=`!-k<%lO!-SP!-kO|PP!-nP;=`<%l!-Sq!-xS!dp|POv(Vx;'S(V;'S;=`(h<%lO(Vq!.XP;=`<%l!,ha!.aX!b`Or!.[rs!-Ssv!.[vw!-Sw!`!.[!`!a!.|!a;'S!.[;'S;=`!/d<%lO!.[a!/TT!b`|POr)esv)ew;'S)e;'S;=`)y<%lO)ea!/gP;=`<%l!.[!R!/sV!b`!dp|POr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!0]P;=`<%l!+q!R!0gX!b`!dpOr*Vrs(Vsv*Vwx)ex#c*V#c#d!1S#d;'S*V;'S;=`*s<%lO*V!R!1ZX!b`!dpOr*Vrs(Vsv*Vwx)ex#V*V#V#W!1v#W;'S*V;'S;=`*s<%lO*V!R!1}X!b`!dpOr*Vrs(Vsv*Vwx)ex#h*V#h#i!2j#i;'S*V;'S;=`*s<%lO*V!R!2qX!b`!dpOr*Vrs(Vsv*Vwx)ex#m*V#m#n!3^#n;'S*V;'S;=`*s<%lO*V!R!3eX!b`!dpOr*Vrs(Vsv*Vwx)ex#d*V#d#e!4Q#e;'S*V;'S;=`*s<%lO*V!R!4XX!b`!dpOr*Vrs(Vsv*Vwx)ex#X*V#X#Y!+q#Y;'S*V;'S;=`*s<%lO*V!R!4{Y!b`!dpOr!4trs!5ksv!4tvw!6Vwx!8]x!a!4t!a!b!:]!b;'S!4t;'S;=`!;r<%lO!4tq!5pV!dpOv!5kvx!6Vx!a!5k!a!b!7W!b;'S!5k;'S;=`!8V<%lO!5kP!6YTO!a!6V!a!b!6i!b;'S!6V;'S;=`!7Q<%lO!6VP!6lTO!`!6V!`!a!6{!a;'S!6V;'S;=`!7Q<%lO!6VP!7QOyPP!7TP;=`<%l!6Vq!7]V!dpOv!5kvx!6Vx!`!5k!`!a!7r!a;'S!5k;'S;=`!8V<%lO!5kq!7yS!dpyPOv(Vx;'S(V;'S;=`(h<%lO(Vq!8YP;=`<%l!5ka!8bX!b`Or!8]rs!6Vsv!8]vw!6Vw!a!8]!a!b!8}!b;'S!8];'S;=`!:V<%lO!8]a!9SX!b`Or!8]rs!6Vsv!8]vw!6Vw!`!8]!`!a!9o!a;'S!8];'S;=`!:V<%lO!8]a!9vT!b`yPOr)esv)ew;'S)e;'S;=`)y<%lO)ea!:YP;=`<%l!8]!R!:dY!b`!dpOr!4trs!5ksv!4tvw!6Vwx!8]x!`!4t!`!a!;S!a;'S!4t;'S;=`!;r<%lO!4t!R!;]V!b`!dpyPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!;uP;=`<%l!4t!V!<TXjSaP!b`!dpOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X",tokenizers:[Ue,We,Ge,He,ze,Be,0,1,2,3,4,5],topRules:{Document:[0,16]},dialects:{noMatch:0,selfClosing:515},tokenPrec:517});function N(e,t){let n=Object.create(null);for(let r of e.getChildren(b)){let e=r.getChild(Ce),i=r.getChild(x)||r.getChild(S);e&&(n[t.read(e.from,e.to)]=i?i.type.id==x?t.read(i.from+1,i.to-1):t.read(i.from,i.to):``)}return n}function P(e,t){let n=e.getChild(Se);return n?t.read(n.from,n.to):` `}function F(e,t,n){let r;for(let i of n)if(!i.attrs||i.attrs(r||=N(e.node.parent.firstChild,t)))return{parser:i.parser,bracketed:!0};return null}function I(e=[],t=[]){let n=[],i=[],a=[],o=[];for(let t of e)(t.tag==`script`?n:t.tag==`style`?i:t.tag==`textarea`?a:o).push(t);let s=t.length?Object.create(null):null;for(let e of t)(s[e.name]||(s[e.name]=[])).push(e);return r((e,t)=>{let r=e.type.id;if(r==we)return F(e,t,n);if(r==Te)return F(e,t,i);if(r==Ee)return F(e,t,a);if(r==y&&o.length){let n=e.node,r=n.firstChild,i=r&&P(r,t),a;if(i){for(let e of o)if(e.tag==i&&(!e.attrs||e.attrs(a||=N(r,t)))){let t=n.lastChild,i=t.type.id==Oe?t.from:n.to;if(i>r.to)return{parser:e.parser,overlay:[{from:r.to,to:i}]}}}}if(s&&r==b){let n=e.node,r;if(r=n.firstChild){let e=s[t.read(r.from,r.to)];if(e)for(let r of e){if(r.tagName&&r.tagName!=P(n.parent,t))continue;let e=n.lastChild;if(e.type.id==x){let t=e.from+1,n=e.lastChild,i=e.to-(n&&n.isError?0:1);if(i>t)return{parser:r.parser,overlay:[{from:t,to:i}],bracketed:!0}}else if(e.type.id==S)return{parser:r.parser,overlay:[{from:e.from,to:e.to}]}}}}return null})}var L=[`_blank`,`_self`,`_top`,`_parent`],R=[`ascii`,`utf-8`,`utf-16`,`latin1`,`latin1`],z=[`get`,`post`,`put`,`delete`],B=[`application/x-www-form-urlencoded`,`multipart/form-data`,`text/plain`],V=[`true`,`false`],H={},Je={a:{attrs:{href:null,ping:null,type:null,media:null,target:L,hreflang:null}},abbr:H,address:H,area:{attrs:{alt:null,coords:null,href:null,target:null,ping:null,media:null,hreflang:null,type:null,shape:[`default`,`rect`,`circle`,`poly`]}},article:H,aside:H,audio:{attrs:{src:null,mediagroup:null,crossorigin:[`anonymous`,`use-credentials`],preload:[`none`,`metadata`,`auto`],autoplay:[`autoplay`],loop:[`loop`],controls:[`controls`]}},b:H,base:{attrs:{href:null,target:L}},bdi:H,bdo:H,blockquote:{attrs:{cite:null}},body:H,br:H,button:{attrs:{form:null,formaction:null,name:null,value:null,autofocus:[`autofocus`],disabled:[`autofocus`],formenctype:B,formmethod:z,formnovalidate:[`novalidate`],formtarget:L,type:[`submit`,`reset`,`button`]}},canvas:{attrs:{width:null,height:null}},caption:H,center:H,cite:H,code:H,col:{attrs:{span:null}},colgroup:{attrs:{span:null}},command:{attrs:{type:[`command`,`checkbox`,`radio`],label:null,icon:null,radiogroup:null,command:null,title:null,disabled:[`disabled`],checked:[`checked`]}},data:{attrs:{value:null}},datagrid:{attrs:{disabled:[`disabled`],multiple:[`multiple`]}},datalist:{attrs:{data:null}},dd:H,del:{attrs:{cite:null,datetime:null}},details:{attrs:{open:[`open`]}},dfn:H,div:H,dl:H,dt:H,em:H,embed:{attrs:{src:null,type:null,width:null,height:null}},eventsource:{attrs:{src:null}},fieldset:{attrs:{disabled:[`disabled`],form:null,name:null}},figcaption:H,figure:H,footer:H,form:{attrs:{action:null,name:null,"accept-charset":R,autocomplete:[`on`,`off`],enctype:B,method:z,novalidate:[`novalidate`],target:L}},h1:H,h2:H,h3:H,h4:H,h5:H,h6:H,head:{children:[`title`,`base`,`link`,`style`,`meta`,`script`,`noscript`,`command`]},header:H,hgroup:H,hr:H,html:{attrs:{manifest:null}},i:H,iframe:{attrs:{src:null,srcdoc:null,name:null,width:null,height:null,sandbox:[`allow-top-navigation`,`allow-same-origin`,`allow-forms`,`allow-scripts`],seamless:[`seamless`]}},img:{attrs:{alt:null,src:null,ismap:null,usemap:null,width:null,height:null,crossorigin:[`anonymous`,`use-credentials`]}},input:{attrs:{alt:null,dirname:null,form:null,formaction:null,height:null,list:null,max:null,maxlength:null,min:null,name:null,pattern:null,placeholder:null,size:null,src:null,step:null,value:null,width:null,accept:[`audio/*`,`video/*`,`image/*`],autocomplete:[`on`,`off`],autofocus:[`autofocus`],checked:[`checked`],disabled:[`disabled`],formenctype:B,formmethod:z,formnovalidate:[`novalidate`],formtarget:L,multiple:[`multiple`],readonly:[`readonly`],required:[`required`],type:[`hidden`,`text`,`search`,`tel`,`url`,`email`,`password`,`datetime`,`date`,`month`,`week`,`time`,`datetime-local`,`number`,`range`,`color`,`checkbox`,`radio`,`file`,`submit`,`image`,`reset`,`button`]}},ins:{attrs:{cite:null,datetime:null}},kbd:H,keygen:{attrs:{challenge:null,form:null,name:null,autofocus:[`autofocus`],disabled:[`disabled`],keytype:[`RSA`]}},label:{attrs:{for:null,form:null}},legend:H,li:{attrs:{value:null}},link:{attrs:{href:null,type:null,hreflang:null,media:null,sizes:[`all`,`16x16`,`16x16 32x32`,`16x16 32x32 64x64`]}},map:{attrs:{name:null}},mark:H,menu:{attrs:{label:null,type:[`list`,`context`,`toolbar`]}},meta:{attrs:{content:null,charset:R,name:[`viewport`,`application-name`,`author`,`description`,`generator`,`keywords`],"http-equiv":[`content-language`,`content-type`,`default-style`,`refresh`]}},meter:{attrs:{value:null,min:null,low:null,high:null,max:null,optimum:null}},nav:H,noscript:H,object:{attrs:{data:null,type:null,name:null,usemap:null,form:null,width:null,height:null,typemustmatch:[`typemustmatch`]}},ol:{attrs:{reversed:[`reversed`],start:null,type:[`1`,`a`,`A`,`i`,`I`]},children:[`li`,`script`,`template`,`ul`,`ol`]},optgroup:{attrs:{disabled:[`disabled`],label:null}},option:{attrs:{disabled:[`disabled`],label:null,selected:[`selected`],value:null}},output:{attrs:{for:null,form:null,name:null}},p:H,param:{attrs:{name:null,value:null}},pre:H,progress:{attrs:{value:null,max:null}},q:{attrs:{cite:null}},rp:H,rt:H,ruby:H,samp:H,script:{attrs:{type:[`text/javascript`],src:null,async:[`async`],defer:[`defer`],charset:R}},section:H,select:{attrs:{form:null,name:null,size:null,autofocus:[`autofocus`],disabled:[`disabled`],multiple:[`multiple`]}},slot:{attrs:{name:null}},small:H,source:{attrs:{src:null,type:null,media:null}},span:H,strong:H,style:{attrs:{type:[`text/css`],media:null,scoped:null}},sub:H,summary:H,sup:H,table:H,tbody:H,td:{attrs:{colspan:null,rowspan:null,headers:null}},template:H,textarea:{attrs:{dirname:null,form:null,maxlength:null,name:null,placeholder:null,rows:null,cols:null,autofocus:[`autofocus`],disabled:[`disabled`],readonly:[`readonly`],required:[`required`],wrap:[`soft`,`hard`]}},tfoot:H,th:{attrs:{colspan:null,rowspan:null,headers:null,scope:[`row`,`col`,`rowgroup`,`colgroup`]}},thead:H,time:{attrs:{datetime:null}},title:H,tr:H,track:{attrs:{src:null,label:null,default:null,kind:[`subtitles`,`captions`,`descriptions`,`chapters`,`metadata`],srclang:null}},ul:{children:[`li`,`script`,`template`,`ul`,`ol`]},var:H,video:{attrs:{src:null,poster:null,width:null,height:null,crossorigin:[`anonymous`,`use-credentials`],preload:[`auto`,`metadata`,`none`],autoplay:[`autoplay`],mediagroup:[`movie`],muted:[`muted`],controls:[`controls`]}},wbr:H},U={accesskey:null,class:null,contenteditable:V,contextmenu:null,dir:[`ltr`,`rtl`,`auto`],draggable:[`true`,`false`,`auto`],dropzone:[`copy`,`move`,`link`,`string:`,`file:`],hidden:[`hidden`],id:null,inert:[`inert`],itemid:null,itemprop:null,itemref:null,itemscope:[`itemscope`],itemtype:null,lang:[`ar`,`bn`,`de`,`en-GB`,`en-US`,`es`,`fr`,`hi`,`id`,`ja`,`pa`,`pt`,`ru`,`tr`,`zh`],spellcheck:V,autocorrect:V,autocapitalize:V,style:null,tabindex:null,title:null,translate:[`yes`,`no`],rel:[`stylesheet`,`alternate`,`author`,`bookmark`,`help`,`license`,`next`,`nofollow`,`noreferrer`,`prefetch`,`prev`,`search`,`tag`],role:`alert application article banner button cell checkbox complementary contentinfo dialog document feed figure form grid gridcell heading img list listbox listitem main navigation region row rowgroup search switch tab table tabpanel textbox timer`.split(` `),"aria-activedescendant":null,"aria-atomic":V,"aria-autocomplete":[`inline`,`list`,`both`,`none`],"aria-busy":V,"aria-checked":[`true`,`false`,`mixed`,`undefined`],"aria-controls":null,"aria-describedby":null,"aria-disabled":V,"aria-dropeffect":null,"aria-expanded":[`true`,`false`,`undefined`],"aria-flowto":null,"aria-grabbed":[`true`,`false`,`undefined`],"aria-haspopup":V,"aria-hidden":V,"aria-invalid":[`true`,`false`,`grammar`,`spelling`],"aria-label":null,"aria-labelledby":null,"aria-level":null,"aria-live":[`off`,`polite`,`assertive`],"aria-multiline":V,"aria-multiselectable":V,"aria-owns":null,"aria-posinset":null,"aria-pressed":[`true`,`false`,`mixed`,`undefined`],"aria-readonly":V,"aria-relevant":null,"aria-required":V,"aria-selected":[`true`,`false`,`undefined`],"aria-setsize":null,"aria-sort":[`ascending`,`descending`,`none`,`other`],"aria-valuemax":null,"aria-valuemin":null,"aria-valuenow":null,"aria-valuetext":null},W=`beforeunload copy cut dragstart dragover dragleave dragenter dragend drag paste focus blur change click load mousedown mouseenter mouseleave mouseup keydown keyup resize scroll unload`.split(` `).map(e=>`on`+e);for(let e of W)U[e]=null;var G=class{constructor(e,t){this.tags={...Je,...e},this.globalAttrs={...U,...t},this.allTags=Object.keys(this.tags),this.globalAttrNames=Object.keys(this.globalAttrs)}};G.default=new G;function K(e,t,n=e.length){if(!t)return``;let r=t.firstChild,i=r&&r.getChild(`TagName`);return i?e.sliceString(i.from,Math.min(i.to,n)):``}function q(e,t=!1){for(;e;e=e.parent)if(e.name==`Element`){if(t)t=!1;else return e}return null}function J(e,t,n){return n.tags[K(e,q(t))]?.children||n.allTags}function Y(e,t){let n=[];for(let r=q(t);r&&!r.type.isTop;r=q(r.parent)){let i=K(e,r);if(i&&r.lastChild.name==`CloseTag`)break;i&&n.indexOf(i)<0&&(t.name==`EndTag`||t.from>=r.firstChild.to)&&n.push(i)}return n}var X=/^[:\-\.\w\u00b7-\uffff]*$/;function Ye(e,t,n,r,i){let a=/\s*>/.test(e.sliceDoc(i,i+5))?``:`>`,o=q(n,n.name==`StartTag`||n.name==`TagName`);return{from:r,to:i,options:J(e.doc,o,t).map(e=>({label:e,type:`type`})).concat(Y(e.doc,n).map((e,t)=>({label:`/`+e,apply:`/`+e+a,type:`type`,boost:99-t}))),validFor:/^\/?[:\-\.\w\u00b7-\uffff]*$/}}function Xe(e,t,n,r){let i=/\s*>/.test(e.sliceDoc(r,r+5))?``:`>`;return{from:n,to:r,options:Y(e.doc,t).map((e,t)=>({label:e,apply:e+i,type:`type`,boost:99-t})),validFor:X}}function Ze(e,t,n,r){let i=[],a=0;for(let r of J(e.doc,n,t))i.push({label:`<`+r,type:`type`});for(let t of Y(e.doc,n))i.push({label:`</`+t+`>`,type:`type`,boost:99-a++});return{from:r,to:r,options:i,validFor:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}function Qe(e,t,n,r,i){let a=q(n),o=a?t.tags[K(e.doc,a)]:null,s=o&&o.attrs?Object.keys(o.attrs):[];return{from:r,to:i,options:(o&&o.globalAttrs===!1?s:s.length?s.concat(t.globalAttrNames):t.globalAttrNames).map(e=>({label:e,type:`property`})),validFor:X}}function $e(e,t,n,r,i){let a=n.parent?.getChild(`AttributeName`),o=[],s;if(a){let c=e.sliceDoc(a.from,a.to),l=t.globalAttrs[c];if(!l){let r=q(n),i=r?t.tags[K(e.doc,r)]:null;l=i?.attrs&&i.attrs[c]}if(l){let t=e.sliceDoc(r,i).toLowerCase(),n=`"`,a=`"`;/^['"]/.test(t)?(s=t[0]==`"`?/^[^"]*$/:/^[^']*$/,n=``,a=e.sliceDoc(i,i+1)==t[0]?``:t[0],t=t.slice(1),r++):s=/^[^\s<>='"]*$/;for(let e of l)o.push({label:e,apply:n+e+a,type:`constant`})}}return{from:r,to:i,options:o,validFor:s}}function Z(t,n){let{state:r,pos:i}=n,a=e(r).resolveInner(i,-1),o=a.resolve(i);for(let e=i,t;o==a&&(t=a.childBefore(e));){let n=t.lastChild;if(!n||!n.type.isError||n.from<n.to)break;o=a=t,e=n.from}return a.name==`TagName`?a.parent&&/CloseTag$/.test(a.parent.name)?Xe(r,a,a.from,i):Ye(r,t,a,a.from,i):a.name==`StartTag`||a.name==`IncompleteTag`?Ye(r,t,a,i,i):a.name==`StartCloseTag`||a.name==`IncompleteCloseTag`?Xe(r,a,i,i):a.name==`OpenTag`||a.name==`SelfClosingTag`||a.name==`AttributeName`?Qe(r,t,a,a.name==`AttributeName`?a.from:i,i):a.name==`Is`||a.name==`AttributeValue`||a.name==`UnquotedAttributeValue`?$e(r,t,a,a.name==`Is`?i:a.from,i):n.explicit&&(o.name==`Element`||o.name==`Text`||o.name==`Document`)?Ze(r,t,a,i):null}function et(e){return Z(G.default,e)}function tt(e){let{extraTags:t,extraGlobalAttributes:n}=e,r=n||t?new G(t,n):G.default;return e=>Z(r,e)}var nt=p.parser.configure({top:`SingleExpression`}),rt=[{tag:`script`,attrs:e=>e.type==`text/typescript`||e.lang==`ts`,parser:oe.parser},{tag:`script`,attrs:e=>e.type==`text/babel`||e.type==`text/jsx`,parser:ie.parser},{tag:`script`,attrs:e=>e.type==`text/typescript-jsx`,parser:re.parser},{tag:`script`,attrs(e){return/^(importmap|speculationrules|application\/(.+\+)?json)$/i.test(e.type)},parser:nt},{tag:`script`,attrs(e){return!e.type||/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(e.type)},parser:p.parser},{tag:`style`,attrs(e){return(!e.lang||e.lang==`css`)&&(!e.type||/^(text\/)?(x-)?(stylesheet|css)$/i.test(e.type))},parser:f.parser}],it=[{name:`style`,parser:f.parser.configure({top:`Styles`})}].concat(W.map(e=>({name:e,parser:p.parser}))),at=s.define({name:`html`,parser:qe.configure({props:[i.add({Element(e){let t=/^(\s*)(<\/)?/.exec(e.textAfter);return e.node.to<=e.pos+t[0].length?e.continue():e.lineIndent(e.node.from)+(t[2]?0:e.unit)},"OpenTag CloseTag SelfClosingTag"(e){return e.column(e.node.from)+e.unit},Document(e){if(e.pos+/\s*/.exec(e.textAfter)[0].length<e.node.to)return e.continue();let t=null,n;for(let n=e.node;;){let e=n.lastChild;if(!e||e.name!=`Element`||e.to!=n.to)break;t=n=e}return t&&!((n=t.lastChild)&&(n.name==`CloseTag`||n.name==`SelfClosingTag`))?e.lineIndent(t.from)+e.unit:null}}),l.add({Element(e){let t=e.firstChild,n=e.lastChild;return!t||t.name!=`OpenTag`?null:{from:t.to,to:n.name==`CloseTag`?n.from:e.to}}}),c.add({"OpenTag CloseTag":e=>e.getChild(`TagName`)})]}),languageData:{commentTokens:{block:{open:`<!--`,close:`-->`}},indentOnInput:/^\s*<\/\w+\W$/,wordChars:`-_`}}),Q=at.configure({wrap:I(rt,it)});function ot(e={}){let t=``,n;e.matchClosingTags===!1&&(t=`noMatch`),e.selfClosingTags===!0&&(t=(t?t+` `:``)+`selfClosing`),(e.nestedLanguages&&e.nestedLanguages.length||e.nestedAttributes&&e.nestedAttributes.length)&&(n=I((e.nestedLanguages||[]).concat(rt),(e.nestedAttributes||[]).concat(it)));let r=n?at.configure({wrap:n,dialect:t}):t?Q.configure({dialect:t}):Q;return new o(r,[Q.data.of({autocomplete:tt(e)}),e.autoCloseTags===!1?[]:ct,ae().support,ne().support])}var $=new Set(`area base br col command embed frame hr img input keygen link meta param source track wbr menuitem`.split(` `));function st(e,t,n){for(;;){if(t.lastChild?.name!=`CloseTag`)return!1;let r=t.parent;if(!r||K(e,r)!=n)return!0;t=r}}var ct=n.inputHandler.of((t,n,r,i,o)=>{if(t.composing||t.state.readOnly||n!=r||i!=`>`&&i!=`/`||!Q.isActiveAt(t.state,n,-1))return!1;let s=o(),{state:c}=s,l=c.changeByRange(t=>{let n=c.doc.sliceString(t.from-1,t.to)==i,{head:r}=t,o=e(c).resolveInner(r,-1),s;if(n&&i==`>`&&o.name==`EndTag`){let e=o.parent;if((s=K(c.doc,e.parent,r))&&!$.has(s)&&!st(c.doc,e.parent,s))return{range:t,changes:{from:r,to:r+ +(c.doc.sliceString(r,r+1)===`>`),insert:`</${s}>`}}}else if(n&&i==`/`&&o.name==`IncompleteCloseTag`){let e=o.parent;if(o.from==r-2&&e.lastChild?.name!=`CloseTag`&&(s=K(c.doc,e,r))&&!$.has(s)){let e=r+ +(c.doc.sliceString(r,r+1)===`>`),t=`${s}>`;return{range:a.cursor(r+t.length,-1),changes:{from:r,to:e,insert:t}}}}return{range:t}});return!l.changes.empty&&(t.dispatch([s,c.update(l,{userEvent:`input.complete`,scrollIntoView:!0})]),!0)});export{ot as html,et as htmlCompletionSource};