@theruansilva/omp-web 2.2.1 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/dist/client/assets/{CodeViewer-B61IQaP0.js → CodeViewer-DHlYSlFA.js} +2 -2
  2. package/dist/client/assets/TerminalPanel-B7ErBads.js +126 -0
  3. package/dist/client/assets/{UnifiedDiffViewer-BnFQlZDg.js → UnifiedDiffViewer-Bsxe8vEO.js} +1 -1
  4. package/dist/client/assets/{abnfDiagram-O67JEVCF-BCWHgm_-.js → abnfDiagram-O67JEVCF-Bd6-T6CG.js} +1 -1
  5. package/dist/client/assets/{arc-BUpZciy9.js → arc-Cx4UzFEe.js} +1 -1
  6. package/dist/client/assets/{architectureDiagram-NJMV4G6O-CVWCwiqh.js → architectureDiagram-NJMV4G6O-DNZZOJHJ.js} +1 -1
  7. package/dist/client/assets/{blockDiagram-BEXU5L5S-W5WSJa_J.js → blockDiagram-BEXU5L5S-DLGMX1ky.js} +1 -1
  8. package/dist/client/assets/{c4Diagram-YGBWAQC7-BWpacECA.js → c4Diagram-YGBWAQC7-ZicrYBFE.js} +1 -1
  9. package/dist/client/assets/channel-Cy0oVDAk.js +1 -0
  10. package/dist/client/assets/{chunk-2Q5K7J3B-D0TV4T28.js → chunk-2Q5K7J3B-BTdneniS.js} +1 -1
  11. package/dist/client/assets/{chunk-3FUC2YCW-BlkJ2B9v.js → chunk-3FUC2YCW-DClqbl7t.js} +2 -2
  12. package/dist/client/assets/{chunk-5VM5RSS4-LRh3HbZr.js → chunk-5VM5RSS4-xVtxN_Sa.js} +1 -1
  13. package/dist/client/assets/{chunk-GTNCS2PH-CBiTovUf.js → chunk-GTNCS2PH-Da56Sthk.js} +1 -1
  14. package/dist/client/assets/{chunk-GWA4HPMP-Dnu3R9yI.js → chunk-GWA4HPMP-D40kcLEo.js} +1 -1
  15. package/dist/client/assets/{chunk-JWPE2WC7-C2yjQs6c.js → chunk-JWPE2WC7-CVgZV6Wp.js} +1 -1
  16. package/dist/client/assets/{chunk-NETBCI7D-Dxos4L3P.js → chunk-NETBCI7D-DNI4Nu1k.js} +1 -1
  17. package/dist/client/assets/{chunk-WEXAMYUT-DrLvxPom.js → chunk-WEXAMYUT-IVsvOCJJ.js} +1 -1
  18. package/dist/client/assets/{chunk-XXDRQBXY-Cub_nego.js → chunk-XXDRQBXY-ByZI65OQ.js} +1 -1
  19. package/dist/client/assets/{classDiagram-v2-NBCMYWYE-CIe2lhk7.js → classDiagram-v2-NBCMYWYE-CT9N6_lF.js} +1 -1
  20. package/dist/client/assets/{cose-bilkent-JH36ORCC-DOGZoTZg.js → cose-bilkent-JH36ORCC-CBJJYOd5.js} +1 -1
  21. package/dist/client/assets/{cynefin-OW5HDTMX-DXF0a63d.js → cynefin-OW5HDTMX-BUpMG_46.js} +1 -1
  22. package/dist/client/assets/{cynefinDiagram-VND7K2PF-C_Qmhc8V.js → cynefinDiagram-VND7K2PF-otEJqM7K.js} +1 -1
  23. package/dist/client/assets/{dagre-6A5THRUB-CEhDrD4X.js → dagre-6A5THRUB-qquzH4Ev.js} +1 -1
  24. package/dist/client/assets/{diagram-22UHCM2B-CgN81sDZ.js → diagram-22UHCM2B-HDLtgJRK.js} +1 -1
  25. package/dist/client/assets/{diagram-3UASUU5V-Dk1gOSew.js → diagram-3UASUU5V-Bc2_UO5k.js} +1 -1
  26. package/dist/client/assets/{diagram-ATOU4E4O-C_tcqhr3.js → diagram-ATOU4E4O-DR72H135.js} +1 -1
  27. package/dist/client/assets/{diagram-CDSNMT55-Dj-WM3vk.js → diagram-CDSNMT55-hNm66Cr9.js} +1 -1
  28. package/dist/client/assets/{diagram-MLGK6HIB-CDowox_d.js → diagram-MLGK6HIB-ChaEhVd4.js} +1 -1
  29. package/dist/client/assets/{diagram-MPIPVDR6-CaThzNCZ.js → diagram-MPIPVDR6-gYxYar4V.js} +1 -1
  30. package/dist/client/assets/{ebnfDiagram-ZINNZB2B-BZbLdwcz.js → ebnfDiagram-ZINNZB2B-CRQjE5YW.js} +1 -1
  31. package/dist/client/assets/{elk-276RUBZZ-DGku1nk-.js → elk-276RUBZZ-OZ3Zw5zt.js} +1 -1
  32. package/dist/client/assets/{erDiagram-OPXOYQCR-D0nJ53i7.js → erDiagram-OPXOYQCR-CB71jEyA.js} +1 -1
  33. package/dist/client/assets/{flowDiagram-KWPJA3E3-DeB8-O7Y.js → flowDiagram-KWPJA3E3-CYfjFu_3.js} +1 -1
  34. package/dist/client/assets/{ganttDiagram-FUAMR5RP-CBcW8sXy.js → ganttDiagram-FUAMR5RP-BE7B_UzV.js} +1 -1
  35. package/dist/client/assets/{gitGraphDiagram-X574FWY7-CC-b8FLq.js → gitGraphDiagram-X574FWY7-HBid3FDo.js} +1 -1
  36. package/dist/client/assets/{index-CyN73uMY.js → index-C-cQEbCY.js} +358 -333
  37. package/dist/client/assets/{infoDiagram-VRGFBTTK-DL3QMN01.js → infoDiagram-VRGFBTTK-4JprhzHA.js} +1 -1
  38. package/dist/client/assets/{ishikawaDiagram-OU5B5YK6-Brt56LtP.js → ishikawaDiagram-OU5B5YK6-UAP9bqUn.js} +1 -1
  39. package/dist/client/assets/{journeyDiagram-ZHPQQLJL-Df8VwbDr.js → journeyDiagram-ZHPQQLJL-j9c9R8jU.js} +1 -1
  40. package/dist/client/assets/{kanban-definition-PNTS6WVX-cVbdWfVg.js → kanban-definition-PNTS6WVX-DWQBxist.js} +1 -1
  41. package/dist/client/assets/{linear-DugbH7BO.js → linear-T6d_7ZeJ.js} +1 -1
  42. package/dist/client/assets/{mindmap-definition-NLK3R4M7-BDqwqJMJ.js → mindmap-definition-NLK3R4M7-CvMFAKuS.js} +1 -1
  43. package/dist/client/assets/{pegDiagram-GJSIUBJH-w6CrSKt0.js → pegDiagram-GJSIUBJH-hvF632kF.js} +1 -1
  44. package/dist/client/assets/{pieDiagram-5QR66LMP-D0utByOI.js → pieDiagram-5QR66LMP-BXICkLn_.js} +1 -1
  45. package/dist/client/assets/{quadrantDiagram-O4NWA36T-DIAIplx2.js → quadrantDiagram-O4NWA36T-CnFY0fxq.js} +1 -1
  46. package/dist/client/assets/{railroadDiagram-XR7U4H2S-BX9P-jy7.js → railroadDiagram-XR7U4H2S-BeRVo7yu.js} +1 -1
  47. package/dist/client/assets/{requirementDiagram-PLB6GJNP-C55JlmRI.js → requirementDiagram-PLB6GJNP-DmnKxfFp.js} +1 -1
  48. package/dist/client/assets/{sankeyDiagram-IPEJSGJF-VeHnKI-a.js → sankeyDiagram-IPEJSGJF-Bz1YIaMr.js} +1 -1
  49. package/dist/client/assets/{sequenceDiagram-PO4LG4MO-CTUoXviF.js → sequenceDiagram-PO4LG4MO-4cmBIYSV.js} +1 -1
  50. package/dist/client/assets/{sizeCapture-INFHLROL-DBKjJDUZ.js → sizeCapture-INFHLROL-B6mTYfgL.js} +1 -1
  51. package/dist/client/assets/{stateDiagram-v2-GCMORJYK-DzonJh3D.js → stateDiagram-v2-GCMORJYK-BKkiHc4R.js} +1 -1
  52. package/dist/client/assets/{swimlanes-2SLR337P-Cnsd5mvJ.js → swimlanes-2SLR337P-CBONvDhF.js} +1 -1
  53. package/dist/client/assets/swimlanesDiagram-TC7HE7FX-DUA_t92u.js +8 -0
  54. package/dist/client/assets/{timeline-definition-EJHVYXUP-C9nhaxck.js → timeline-definition-EJHVYXUP-BG9z7YWj.js} +1 -1
  55. package/dist/client/assets/{usecaseDiagram-POWQR4AR-jfXBWSzR.js → usecaseDiagram-POWQR4AR--yXc6tgF.js} +1 -1
  56. package/dist/client/assets/{vendor-editor-core-D-5q2tVX.js → vendor-editor-core-DbsheCh1.js} +30 -29
  57. package/dist/client/assets/vendor-editor-languages-B1l-thbw.js +26 -0
  58. package/dist/client/assets/{vennDiagram-UO4OBE2U-BigR6haV.js → vennDiagram-UO4OBE2U-DYr42cwJ.js} +1 -1
  59. package/dist/client/assets/{wardleyDiagram-VNRHLVJA-BXJexKTM.js → wardleyDiagram-VNRHLVJA-DksCy2aR.js} +1 -1
  60. package/dist/client/assets/{xychartDiagram-PMCCYNJV-HL5cuxsZ.js → xychartDiagram-PMCCYNJV-DPxnNxcI.js} +1 -1
  61. package/dist/client/index.html +3 -3
  62. package/dist/config.js +10 -0
  63. package/dist/config.js.map +1 -1
  64. package/dist/omp-web-plugins/updates/updatesLogic.js +2 -2
  65. package/dist/omp-web-plugins/usage/omp-web-plugin.js +41 -0
  66. package/dist/omp-web-plugins/usage/package.json +9 -0
  67. package/dist/omp-web-plugins/usage/types.js +2 -0
  68. package/dist/omp-web-plugins/usage/usageLogic.js +162 -0
  69. package/dist/omp-web-plugins/usage/usagePanelElement.js +442 -0
  70. package/dist/server/app.js +36 -1
  71. package/dist/server/app.js.map +1 -1
  72. package/dist/server/index.js +11 -3
  73. package/dist/server/index.js.map +1 -1
  74. package/dist/server/machines/machineProxyRoutes.js +16 -1
  75. package/dist/server/machines/machineProxyRoutes.js.map +1 -1
  76. package/dist/server/machines/machineService.js +5 -5
  77. package/dist/server/machines/machineService.js.map +1 -1
  78. package/dist/server/mcpRoutes.js +11 -1
  79. package/dist/server/mcpRoutes.js.map +1 -1
  80. package/dist/server/projects/projectService.js +23 -0
  81. package/dist/server/projects/projectService.js.map +1 -1
  82. package/dist/server/security.js +110 -7
  83. package/dist/server/security.js.map +1 -1
  84. package/dist/server/sessions/authService.js +23 -3
  85. package/dist/server/sessions/authService.js.map +1 -1
  86. package/dist/server/sessions/generativeUiPrompt.js +44 -0
  87. package/dist/server/sessions/generativeUiPrompt.js.map +1 -0
  88. package/dist/server/sessions/piAgentSession.js +46 -1
  89. package/dist/server/sessions/piAgentSession.js.map +1 -1
  90. package/dist/server/sessions/piSessionService.js +3 -1
  91. package/dist/server/sessions/piSessionService.js.map +1 -1
  92. package/dist/server/sessions/sessionCommandService.js +20 -9
  93. package/dist/server/sessions/sessionCommandService.js.map +1 -1
  94. package/dist/server/terminalProxyRoutes.js +16 -1
  95. package/dist/server/terminalProxyRoutes.js.map +1 -1
  96. package/dist/server/usageRoutes.js +202 -0
  97. package/dist/server/usageRoutes.js.map +1 -0
  98. package/dist/server/webSocketBridge.js +15 -0
  99. package/dist/server/webSocketBridge.js.map +1 -1
  100. package/dist/shared/apiTypes.d.ts +2 -0
  101. package/dist/shared/federatedRoutes.js +2 -0
  102. package/dist/shared/federatedRoutes.js.map +1 -1
  103. package/package.json +1 -1
  104. package/dist/client/assets/TerminalPanel-BcxMZQKk.js +0 -126
  105. package/dist/client/assets/channel-ChkqWR3Z.js +0 -1
  106. package/dist/client/assets/swimlanesDiagram-TC7HE7FX-iyBCc4Xc.js +0 -8
  107. package/dist/client/assets/vendor-editor-languages-B6WRt0aC.js +0 -26
@@ -1,4 +1,4 @@
1
- import{w as r,J as u,Q as h,A as m,R as g,S as f,U as v}from"./vendor-editor-core-D-5q2tVX.js";import{g as b,r as w,p as y,h as x,c as C,m as j,j as k,a as d}from"./vendor-editor-languages-B6WRt0aC.js";import{aH as E,aI as H,aJ as _,aK as p,aL as O,aM as S}from"./index-CyN73uMY.js";var P=Object.defineProperty,T=Object.getOwnPropertyDescriptor,i=(e,o,n,s)=>{for(var t=s>1?void 0:s?T(o,n):o,c=e.length-1,l;c>=0;c--)(l=e[c])&&(t=(s?l(o,n,t):l(t))||t);return s&&t&&P(o,n,t),t};let a=class extends E{constructor(){super(...arguments),this.content=""}firstUpdated(){this.recreateEditor()}updated(e){(e.has("content")||e.has("language"))&&this.recreateEditor()}disconnectedCallback(){this.view?.destroy(),this.view=void 0,super.disconnectedCallback()}render(){return H`<div class="host"></div>`}recreateEditor(){this.editorHost&&(this.view?.destroy(),this.view=new r({parent:this.editorHost,state:u.create({doc:this.content,extensions:[h(),m.of(g),f(v,{fallback:!0}),u.readOnly.of(!0),r.editable.of(!1),r.lineWrapping,A,...M(this.language),...R(this.language)]})}))}};a.styles=_`
1
+ import{n as r,J as u,Q as h,A as m,R as g,S as f,U as v}from"./vendor-editor-core-DbsheCh1.js";import{g as b,r as y,p as w,h as x,c as C,m as j,j as k,a as d}from"./vendor-editor-languages-B1l-thbw.js";import{aH as E,aI as H,aJ as _,aK as p,aL as O,aM as S}from"./index-C-cQEbCY.js";var P=Object.defineProperty,T=Object.getOwnPropertyDescriptor,i=(e,o,n,s)=>{for(var t=s>1?void 0:s?T(o,n):o,c=e.length-1,l;c>=0;c--)(l=e[c])&&(t=(s?l(o,n,t):l(t))||t);return s&&t&&P(o,n,t),t};let a=class extends E{constructor(){super(...arguments),this.content=""}firstUpdated(){this.recreateEditor()}updated(e){(e.has("content")||e.has("language"))&&this.recreateEditor()}disconnectedCallback(){this.view?.destroy(),this.view=void 0,super.disconnectedCallback()}render(){return H`<div class="host"></div>`}recreateEditor(){this.editorHost&&(this.view?.destroy(),this.view=new r({parent:this.editorHost,state:u.create({doc:this.content,extensions:[h(),m.of(g),f(v,{fallback:!0}),u.readOnly.of(!0),r.editable.of(!1),r.lineWrapping,A,...M(this.language),...R(this.language)]})}))}};a.styles=_`
2
2
  :host { display: block; min-height: 0; height: 100%; }
3
3
  .host { height: 100%; min-height: 0; overflow: auto; }
4
- `;i([p()],a.prototype,"content",2);i([p()],a.prototype,"language",2);i([O(".host")],a.prototype,"editorHost",2);a=i([S("code-viewer")],a);const A=r.theme({"&":{height:"100%",color:"var(--pi-text)",backgroundColor:"var(--pi-bg)",fontSize:"12px"},".cm-scroller":{fontFamily:"ui-monospace, SFMono-Regular, Menlo, Consolas, monospace",lineHeight:"1.45"},".cm-gutters":{backgroundColor:"var(--pi-bg)",color:"var(--pi-dim)",borderRight:"1px solid var(--pi-border-muted)"},".cm-activeLineGutter":{backgroundColor:"transparent"},".cm-activeLine":{backgroundColor:"transparent"},".cm-content":{caretColor:"transparent"},"&.cm-focused":{outline:"none"}}),L=r.theme({".cm-content":{textAlign:"start"},".cm-line":{unicodeBidi:"plaintext"}});function M(e){return e==="markdown"?[r.contentAttributes.of({dir:"auto"}),L]:[]}function R(e){if(e===void 0)return[];switch(e){case"typescript":return[d({typescript:!0})];case"javascript":return[d()];case"json":return[k()];case"markdown":return[j()];case"css":return[C()];case"html":return[x()];case"python":return[y()];case"rust":return[w()];case"go":return[b()];default:return[]}}export{a as CodeViewer};
4
+ `;i([p()],a.prototype,"content",2);i([p()],a.prototype,"language",2);i([O(".host")],a.prototype,"editorHost",2);a=i([S("code-viewer")],a);const A=r.theme({"&":{height:"100%",color:"var(--pi-text)",backgroundColor:"var(--pi-bg)",fontSize:"12px"},".cm-scroller":{fontFamily:"ui-monospace, SFMono-Regular, Menlo, Consolas, monospace",lineHeight:"1.45"},".cm-gutters":{backgroundColor:"var(--pi-bg)",color:"var(--pi-dim)",borderRight:"1px solid var(--pi-border-muted)"},".cm-activeLineGutter":{backgroundColor:"transparent"},".cm-activeLine":{backgroundColor:"transparent"},".cm-content":{caretColor:"transparent"},"&.cm-focused":{outline:"none"}}),L=r.theme({".cm-content":{textAlign:"start"},".cm-line":{unicodeBidi:"plaintext"}});function M(e){return e==="markdown"?[r.contentAttributes.of({dir:"auto"}),L]:[]}function R(e){if(e===void 0)return[];switch(e){case"typescript":return[d({typescript:!0})];case"javascript":return[d()];case"json":return[k()];case"markdown":return[j()];case"css":return[C()];case"html":return[x()];case"python":return[w()];case"rust":return[y()];case"go":return[b()];default:return[]}}export{a as CodeViewer};
@@ -0,0 +1,126 @@
1
+ import{aJ as E,aK as m,aH as K,aI as d,aM as R,bj as h,bk as D,bl as w,bm as _,bn as N,aL as F,bo as u}from"./index-C-cQEbCY.js";import{D as S,o as T}from"./vendor-terminal-DjQ08hXu.js";import"./vendor-editor-core-DbsheCh1.js";import"./vendor-editor-languages-B1l-thbw.js";const M="omp-web.terminal.softKeys",z="(pointer: coarse), (max-width: 760px)";function H(e,t){return e??t}function V(e){if(e==="true")return!0;if(e==="false")return!1}function P(){return typeof window<"u"&&"matchMedia"in window?window.matchMedia(z):void 0}function $(e){return e?.matches===!0}function B(e=P()){return H(L(),$(e))}function j(){return L()!==void 0}function L(e=O()){if(e!==void 0)try{return V(e.getItem(M))}catch{return}}function U(e,t=O()){if(t!==void 0)try{t.setItem(M,String(e))}catch{}}function O(){if(!(typeof window>"u"))try{return window.localStorage}catch{return}}const q=[{id:"escape",label:"Esc",ariaLabel:"Escape",title:"Send Escape"},{id:"tab",label:"Tab",ariaLabel:"Tab",title:"Send Tab"},{id:"enter",label:"↵",ariaLabel:"Enter",title:"Send Enter"},{id:"ctrl-c",label:"Ctrl+C",ariaLabel:"Control C",title:"Interrupt the foreground process"},{id:"ctrl-d",label:"Ctrl+D",ariaLabel:"Control D",title:"Send EOF / close input"},{id:"ctrl-z",label:"Ctrl+Z",ariaLabel:"Control Z",title:"Suspend the foreground process"},{id:"ctrl-l",label:"Ctrl+L",ariaLabel:"Control L",title:"Clear / redraw the terminal"},{id:"ctrl-r",label:"Ctrl+R",ariaLabel:"Control R",title:"Reverse search history"},{id:"ctrl-u",label:"Ctrl+U",ariaLabel:"Control U",title:"Delete to the start of the line"},{id:"ctrl-w",label:"Ctrl+W",ariaLabel:"Control W",title:"Delete the previous word"},{id:"arrow-left",label:"←",ariaLabel:"Left arrow",title:"Move left"},{id:"arrow-up",label:"↑",ariaLabel:"Up arrow",title:"Move up / previous command"},{id:"arrow-down",label:"↓",ariaLabel:"Down arrow",title:"Move down / next command"},{id:"arrow-right",label:"→",ariaLabel:"Right arrow",title:"Move right"},{id:"home",label:"Home",ariaLabel:"Home",title:"Move to the start"},{id:"end",label:"End",ariaLabel:"End",title:"Move to the end"},{id:"page-up",label:"PgUp",ariaLabel:"Page up",title:"Page up"},{id:"page-down",label:"PgDn",ariaLabel:"Page down",title:"Page down"},{id:"delete",label:"Del",ariaLabel:"Delete",title:"Delete forward"},{id:"backspace",label:"⌫",ariaLabel:"Backspace",title:"Backspace"},{id:"meta-backward-word",label:"M-B",ariaLabel:"Meta B",title:"Move backward one word"},{id:"meta-forward-word",label:"M-F",ariaLabel:"Meta F",title:"Move forward one word"}],c="\x1B",Y="";function W(e,t){switch(e){case"escape":return c;case"tab":return" ";case"enter":return"\r";case"ctrl-c":return p("c");case"ctrl-d":return p("d");case"ctrl-z":return p("z");case"ctrl-l":return p("l");case"ctrl-r":return p("r");case"ctrl-u":return p("u");case"ctrl-w":return p("w");case"arrow-left":return b("D",t);case"arrow-up":return b("A",t);case"arrow-down":return b("B",t);case"arrow-right":return b("C",t);case"home":return x("H",t);case"end":return x("F",t);case"page-up":return`${c}[5~`;case"page-down":return`${c}[6~`;case"delete":return`${c}[3~`;case"backspace":return Y;case"meta-backward-word":return`${c}b`;case"meta-forward-word":return`${c}f`}}function p(e){return String.fromCharCode(e.toUpperCase().charCodeAt(0)-64)}function b(e,t){return t?.applicationCursorKeysMode===!0?`${c}O${e}`:`${c}[${e}`}function x(e,t){return t?.applicationCursorKeysMode===!0?`${c}O${e}`:`${c}[${e}`}var X=Object.defineProperty,J=Object.getOwnPropertyDescriptor,y=(e,t,i,n)=>{for(var r=n>1?void 0:n?J(t,i):t,o=e.length-1,l;o>=0;o--)(l=e[o])&&(r=(n?l(t,i,r):l(r))||r);return n&&r&&X(t,i,r),r};const Z=8,G=500;let f=class extends K{constructor(){super(...arguments),this.refocusOnClick=!0,this.onInput=()=>{},this.lastPointerFinishedAt=0}sendSoftKey(e,t){this.onInput(W(e.id,this.modes),t)}onSoftKeyPointerDown(e,t){e.pointerType==="mouse"&&e.button!==0||(e.preventDefault(),this.pointerStart={pointerId:e.pointerId,key:t,clientX:e.clientX,clientY:e.clientY})}onSoftKeyPointerMove(e){const t=this.pointerStart;t?.pointerId===e.pointerId&&I(t,e)&&this.finishSoftKeyPointer()}onSoftKeyPointerUp(e,t){const i=this.pointerStart;i?.pointerId===e.pointerId&&(e.preventDefault(),this.finishSoftKeyPointer(),!(i.key.id!==t.id||I(i,e))&&this.sendSoftKey(t,{refocus:e.pointerType==="mouse"}))}onSoftKeyPointerCancel(e){this.pointerStart?.pointerId===e.pointerId&&this.finishSoftKeyPointer()}finishSoftKeyPointer(){this.pointerStart=void 0,this.lastPointerFinishedAt=Date.now()}onSoftKeyClick(e,t){if(Date.now()-this.lastPointerFinishedAt<G){e.preventDefault();return}this.sendSoftKey(t,{refocus:this.refocusOnClick})}render(){return d`
2
+ <div class="terminal-soft-keys" role="toolbar" aria-label="Terminal soft keys">
3
+ ${q.map(e=>d`
4
+ <button
5
+ type="button"
6
+ class="soft-key"
7
+ title=${e.title}
8
+ aria-label=${e.ariaLabel}
9
+ @pointerdown=${t=>{this.onSoftKeyPointerDown(t,e)}}
10
+ @pointermove=${t=>{this.onSoftKeyPointerMove(t)}}
11
+ @pointerup=${t=>{this.onSoftKeyPointerUp(t,e)}}
12
+ @pointercancel=${t=>{this.onSoftKeyPointerCancel(t)}}
13
+ @click=${t=>{this.onSoftKeyClick(t,e)}}
14
+ >${e.label}</button>
15
+ `)}
16
+ </div>
17
+ `}};f.styles=E`
18
+ :host { flex: 0 0 auto; display: block; }
19
+ .terminal-soft-keys { display: flex; gap: 6px; align-items: center; padding: 6px; border-bottom: 1px solid var(--pi-border-muted); background: var(--pi-bg); overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none; touch-action: pan-x; }
20
+ .terminal-soft-keys::-webkit-scrollbar { display: none; }
21
+ button { display: inline-flex; align-items: center; gap: 6px; flex: 0 0 auto; max-width: none; min-height: 34px; border: 1px solid var(--pi-border); border-radius: 7px; background: var(--pi-surface); color: var(--pi-text); padding: 6px 9px; font: 12px ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; cursor: pointer; touch-action: pan-x; -webkit-touch-callout: none; user-select: none; }
22
+ button:disabled { opacity: .5; cursor: not-allowed; }
23
+ `;y([m({attribute:!1})],f.prototype,"modes",2);y([m({type:Boolean})],f.prototype,"refocusOnClick",2);y([m({attribute:!1})],f.prototype,"onInput",2);f=y([R("terminal-soft-keys")],f);function I(e,t){return Math.hypot(t.clientX-e.clientX,t.clientY-e.clientY)>Z}var Q=Object.defineProperty,ee=Object.getOwnPropertyDescriptor,a=(e,t,i,n)=>{for(var r=n>1?void 0:n?ee(t,i):t,o=e.length-1,l;o>=0;o--)(l=e[o])&&(r=(n?l(t,i,r):l(r))||r);return n&&r&&Q(t,i,r),r};const te={cursorBlink:!0,convertEol:!0,fontFamily:"ui-monospace, SFMono-Regular, Menlo, Consolas, monospace",fontSize:13},ie={cols:100,rows:30},ne=1e3;let s=class extends K{constructor(){super(...arguments),this.machineId="local",this.autoStart=!1,this.onSelectTerminal=()=>{},this.terminals=[],this.commandRuns=[],this.loading=!1,this.visible=!1,this.cancellingRunIds=[],this.continuingTerminalIds=[],this.defaultSoftKeysEnvironment=!1,this.softKeysEnabled=B(),this.suppressTerminalInput=!1,this.pendingMessages=[],this.softKeysDefaultEnvironmentMedia=P(),this.softKeysPreferenceStored=j(),this.onSoftKeysDefaultEnvironmentChange=()=>{this.syncDefaultSoftKeysEnvironment()}}connectedCallback(){super.connectedCallback(),this.syncDefaultSoftKeysEnvironment(),this.softKeysDefaultEnvironmentMedia?.addEventListener("change",this.onSoftKeysDefaultEnvironmentChange),this.themeObserver=new MutationObserver(()=>{this.applyTerminalTheme()}),this.themeObserver.observe(document.documentElement,{attributes:!0,attributeFilter:["class","style","data-theme"]})}firstUpdated(){this.intersectionObserver=new IntersectionObserver(e=>{this.visible=e[0]?.isIntersecting===!0}),this.intersectionObserver.observe(this)}disconnectedCallback(){this.intersectionObserver?.disconnect(),this.intersectionObserver=void 0,this.themeObserver?.disconnect(),this.themeObserver=void 0,this.softKeysDefaultEnvironmentMedia?.removeEventListener("change",this.onSoftKeysDefaultEnvironmentChange),this.updateCommandRunPolling(!1),this.disposeTerminalView(),super.disconnectedCallback()}syncDefaultSoftKeysEnvironment(){const e=$(this.softKeysDefaultEnvironmentMedia),t=this.softKeysEnabled;this.defaultSoftKeysEnvironment=e,this.softKeysPreferenceStored||(this.softKeysEnabled=e),this.softKeysEnabled!==t&&this.scheduleFitAndNotify()}scheduleFitAndNotify(){this.updateComplete.then(()=>{this.fitAndNotify()})}willUpdate(e){const t=this.workspace===void 0?void 0:JSON.stringify([this.machineId,this.workspace.path]);if(t!==this.observedWorkspaceScope){this.observedWorkspaceScope=t,this.loadedCwd=void 0,this.autoStartConsumedCwd=void 0,this.terminals=[],this.commandRuns=[],this.selectedId=void 0,this.cancellingRunIds=[],this.continuingTerminalIds=[],this.updateCommandRunPolling(!1),this.disposeTerminalView();return}if(e.has("selectedTerminalId")){if(e.get("selectedTerminalId")!==void 0&&this.selectedTerminalId===void 0){this.loadedCwd=void 0,this.selectTerminalIdInView(void 0);return}this.applyRequestedTerminalSelection()}}updated(e){this.visible?this.hasPendingCommandRuns()&&this.updateCommandRunPolling(!0):this.updateCommandRunPolling(!1),this.loadVisibleWorkspaceTerminals(),e.has("selectedTerminalId")&&this.shouldReloadForRequestedTerminal()&&this.loadTerminals(),this.ensureTerminalView()}loadVisibleWorkspaceTerminals(){const e=this.workspace?.path;!this.visible||e===void 0||e===this.loadedCwd||(this.loadedCwd=e,this.loadTerminals())}async loadTerminals(){this.loading=!0,this.error=void 0;try{const e=this.workspace;if(e===void 0)return;const t=this.consumeAutoStart(),[i,n]=await Promise.all([h.terminals(e.projectId,e.id,this.machineId),h.listCommandRuns({projectId:e.projectId,workspaceId:e.id},this.machineId)]);this.terminals=i,this.commandRuns=n,this.selectPreferredLoadedTerminal({replaceUrl:!0}),this.updateCommandRunPolling(this.hasPendingCommandRuns(n)),i.length===0&&t&&await this.startTerminal()}catch(e){this.error=e instanceof Error?e.message:String(e)}finally{this.loading=!1}}applyRequestedTerminalSelection(){this.selectedTerminalId!==void 0&&!this.terminals.some(e=>e.id===this.selectedTerminalId)||this.selectPreferredLoadedTerminal({replaceUrl:!0})}consumeAutoStart(){const e=this.workspace?.path;return!this.autoStart||e===void 0||this.autoStartConsumedCwd===e?!1:(this.autoStartConsumedCwd=e,!0)}shouldReloadForRequestedTerminal(){const e=this.workspace?.path;return this.visible&&e!==void 0&&e===this.loadedCwd&&this.selectedTerminalId!==void 0&&!this.loading&&!this.terminals.some(t=>t.id===this.selectedTerminalId)}selectPreferredLoadedTerminal(e){let t=D(this.terminals,{targetTerminalId:this.selectedTerminalId});t===void 0&&this.selectedTerminalId!==void 0&&(t=w(this.terminals)),this.selectTerminalIdInView(t?.id),(t?.id!==this.selectedTerminalId||t===void 0&&this.selectedTerminalId!==void 0)&&this.onSelectTerminal(t?.id,{replace:e?.replaceUrl===!0})}selectTerminalIdInView(e){this.selectedId!==e&&(this.selectedId=e,this.disposeTerminalView())}async startTerminal(){if(this.workspace!==void 0){this.error=void 0;try{const e=this.measureTerminalSize()??ie,t=await h.startTerminal(this.workspace.projectId,this.workspace.id,e,this.machineId);this.terminals=[...this.terminals,t],this.selectTerminal(t.id)}catch(e){this.error=e instanceof Error?e.message:String(e)}}}async closeTerminal(e,t){t.stopPropagation();try{if(this.workspace===void 0)return;await h.closeTerminal(this.workspace.projectId,this.workspace.id,e,this.machineId);const i=this.terminals.filter(n=>n.id!==e);if(this.terminals=i,this.selectedId===e||this.selectedTerminalId===e){const n=w(i)?.id;this.selectTerminalIdInView(n),this.onSelectTerminal(n,{replace:!0})}}catch(i){this.error=i instanceof Error?i.message:String(i)}}selectTerminal(e){this.selectedId!==e&&this.selectTerminalIdInView(e),this.onSelectTerminal(e)}selectedTerminalInfo(){return this.terminals.find(e=>e.id===this.selectedId)}selectedCommandRun(){const e=this.selectedTerminalInfo()?.commandRunId;if(e!==void 0)return this.commandRuns.find(t=>t.id===e)}async loadCommandRuns(){const e=this.workspace;if(e!==void 0)try{const t=await h.listCommandRuns({projectId:e.projectId,workspaceId:e.id},this.machineId);this.commandRuns=t,this.cancellingRunIds=this.cancellingRunIds.filter(i=>t.some(n=>n.id===i&&v(n))),this.updateCommandRunPolling(this.hasPendingCommandRuns(t))}catch(t){this.error=t instanceof Error?t.message:String(t)}}updateCommandRunPolling(e){if(e&&this.commandRunPollTimer===void 0){this.commandRunPollTimer=window.setInterval(()=>{this.loadCommandRuns()},ne);return}!e&&this.commandRunPollTimer!==void 0&&(window.clearInterval(this.commandRunPollTimer),this.commandRunPollTimer=void 0)}hasPendingCommandRuns(e=this.commandRuns){return e.some(v)}async cancelCommandRun(e){if(!(!v(e)||this.cancellingRunIds.includes(e.id))){this.error=void 0,this.cancellingRunIds=[...this.cancellingRunIds,e.id];try{await h.cancelCommandRun(e.id,this.machineId),await this.loadCommandRuns()}catch(t){this.error=t instanceof Error?t.message:String(t)}finally{this.cancellingRunIds=this.cancellingRunIds.filter(t=>t!==e.id)}}}async continueTerminal(e){if(!(this.workspace===void 0||this.continuingTerminalIds.includes(e))){this.error=void 0,this.continuingTerminalIds=[...this.continuingTerminalIds,e];try{const t=await h.continueTerminal(this.workspace.projectId,this.workspace.id,e,this.machineId);this.terminals=this.terminals.map(i=>i.id===e?t:i),this.socket===void 0&&this.disposeTerminalView(),this.fitAndNotify(),this.terminal?.focus()}catch(t){this.error=t instanceof Error?t.message:String(t)}finally{this.continuingTerminalIds=this.continuingTerminalIds.filter(t=>t!==e)}}}ensureTerminalView(){const e=this.workspace,t=this.terminalHostElement();if(!this.visible||this.terminal!==void 0||this.selectedId===void 0||t===void 0||e===void 0)return;const i=new S(C(this)),n=new T;i.loadAddon(n),i.open(t),this.terminal=i,this.fitAddon=n,this.resizeObserver=new ResizeObserver(()=>{this.fitAndNotify()}),this.resizeObserver.observe(t),i.onData(o=>{this.suppressTerminalInput||this.sendTerminalInput(o)}),i.textarea!==void 0&&(i.textarea.setAttribute("autocomplete","off"),i.textarea.setAttribute("enterkeyhint","enter"),i.textarea.addEventListener("beforeinput",o=>{(o.inputType==="insertLineBreak"||o.inputType==="insertParagraph")&&(o.preventDefault(),this.sendTerminalInput("\r"))}));const r=this.fitTerminal();this.connectSocket(e.projectId,e.id,this.selectedId,i,r),requestAnimationFrame(()=>{this.fitAndNotify()}),i.focus()}connectSocket(e,t,i,n,r){const o=_(e,t,i,r,this.machineId);o.binaryType="arraybuffer",this.socket=o,o.addEventListener("open",()=>{for(;this.pendingMessages.length>0;){const l=this.pendingMessages.shift();l!==void 0&&this.send(l)}this.fitAndNotify()}),o.addEventListener("message",l=>{this.handleSocketMessage(l.data,i,n)}),o.addEventListener("close",()=>{this.socket===o&&(this.socket=void 0)})}async handleSocketMessage(e,t,i){try{const n=oe(await ae(e));n.type==="output"&&this.writeTerminalOutput(i,n.data,n.replay===!0),n.type==="exit"&&(i.writeln(`\r
24
+ [process exited${n.exitCode===void 0?"":` with code ${String(n.exitCode)}`}]`),this.terminals=this.terminals.map(r=>r.id===t?{...r,exited:!0,...n.exitCode===void 0?{}:{exitCode:n.exitCode}}:r),this.loadCommandRuns()),n.type==="error"&&i.writeln(`\r
25
+ [terminal error: ${n.message}]`)}catch(n){i.writeln(`\r
26
+ [terminal error: ${n instanceof Error?n.message:String(n)}]`)}}writeTerminalOutput(e,t,i){if(!i){e.write(t);return}this.suppressTerminalInput=!0,e.write(t,()=>{this.suppressTerminalInput=!1})}fitAndNotify(){const e=this.fitTerminal();e!==void 0&&this.send({type:"resize",...e})}fitTerminal(){if(this.fitAddon===void 0||this.terminal===void 0)return;const e=this.fitAddon.proposeDimensions(),t=k(e);if(t!==void 0)return this.fitAddon.fit(),t}measureTerminalSize(){const e=this.fitTerminal();if(e!==void 0)return e;const t=this.terminalHostElement();if(this.terminal!==void 0||t===void 0)return;const i=new S(C(this)),n=new T;i.loadAddon(n),i.open(t);const r=k(n.proposeDimensions());return i.dispose(),r}terminalHostElement(){const e=this.terminalHost;return e instanceof HTMLDivElement?e:void 0}applyTerminalTheme(){this.terminal!==void 0&&(this.terminal.options.theme=A(this))}sendTerminalInput(e){const t=se(e);t!==""&&this.send({type:"input",data:t})}sendSoftKeyInput(e,t){this.sendTerminalInput(e),t.refocus&&this.focusTerminal()}focusTerminal(){const e=this.terminal;e!==void 0&&(e.focus(),requestAnimationFrame(()=>{e.focus()}))}send(e){if(this.socket?.readyState===WebSocket.OPEN){this.socket.send(JSON.stringify(e));return}this.socket?.readyState===WebSocket.CONNECTING&&this.pendingMessages.push(e)}disposeTerminalView(){this.resizeObserver?.disconnect(),this.resizeObserver=void 0,this.socket?.close(),this.socket=void 0,this.pendingMessages=[],this.terminal?.dispose(),this.terminal=void 0,this.fitAddon=void 0}renderCommandRunNotice(){const e=this.selectedCommandRun();if(e===void 0)return null;const t=this.selectedTerminalInfo();if(v(e)){const i=this.cancellingRunIds.includes(e.id);return d`
27
+ <section class="command-run-notice running">
28
+ <div>
29
+ <strong>${e.title}</strong>
30
+ <p>Command is running. Press <kbd>Ctrl</kbd>+<kbd>C</kbd> or use the button to cancel.</p>
31
+ <code>${e.command}</code>
32
+ </div>
33
+ <button class="danger" ?disabled=${i} @click=${()=>{this.cancelCommandRun(e)}}>${i?"Cancel sent…":"Cancel command"}</button>
34
+ </section>
35
+ `}if(t?.exited===!0){const i=this.continuingTerminalIds.includes(t.id);return d`
36
+ <section class=${`command-run-notice ${e.status}`}>
37
+ <div>
38
+ <strong>${re(e)}</strong>
39
+ <p>Output is preserved. Continue in a shell to inspect or run follow-up commands.</p>
40
+ <code>${e.command}</code>
41
+ </div>
42
+ <button ?disabled=${i} @click=${()=>{this.continueTerminal(t.id)}}>${i?"Starting shell…":"Continue in shell"}</button>
43
+ </section>
44
+ `}return null}selectedTerminalAcceptsInput(){const e=this.selectedTerminalInfo();return e!==void 0&&!e.exited}shouldShowSoftKeys(){return this.selectedTerminalAcceptsInput()&&this.softKeysEnabled}shouldShowSoftKeysToggle(){return this.selectedTerminalAcceptsInput()}toggleSoftKeys(){this.softKeysEnabled=!this.softKeysEnabled,this.softKeysPreferenceStored=!0,U(this.softKeysEnabled),this.scheduleFitAndNotify()}renderSoftKeysToggle(){return this.shouldShowSoftKeysToggle()?d`
45
+ <button
46
+ type="button"
47
+ class=${this.softKeysEnabled?"soft-keys-toggle selected":"soft-keys-toggle"}
48
+ title=${this.softKeysEnabled?"Hide terminal soft keys":"Show terminal soft keys"}
49
+ aria-label=${this.softKeysEnabled?"Hide terminal soft keys":"Show terminal soft keys"}
50
+ aria-pressed=${String(this.softKeysEnabled)}
51
+ @click=${()=>{this.toggleSoftKeys()}}
52
+ >
53
+ <svg class="keyboard-icon" viewBox="0 0 24 24" aria-hidden="true" focusable="false">
54
+ <rect x="3" y="5" width="18" height="14" rx="2"></rect>
55
+ <path d="M7 9h.01M10 9h.01M13 9h.01M16 9h.01M7 12h.01M10 12h.01M13 12h.01M16 12h.01M8 16h8"></path>
56
+ </svg>
57
+ <span>Keys</span>
58
+ </button>
59
+ `:null}renderSoftKeys(){return d`
60
+ <terminal-soft-keys
61
+ .modes=${this.terminal?.modes}
62
+ .refocusOnClick=${!this.defaultSoftKeysEnvironment}
63
+ .onInput=${(e,t)=>{this.sendSoftKeyInput(e,t)}}
64
+ ></terminal-soft-keys>
65
+ `}render(){return d`
66
+ <section class="terminal-shell">
67
+ <div class="terminal-tabs">
68
+ ${this.renderSoftKeysToggle()}
69
+ ${this.terminals.map(e=>d`
70
+ <button class=${this.selectedId===e.id?"selected":""} @click=${()=>{this.selectTerminal(e.id)}}>
71
+ <span>${e.name}${e.exited?" · exited":""}</span>
72
+ <small @click=${t=>{this.closeTerminal(e.id,t)}}>×</small>
73
+ </button>
74
+ `)}
75
+ <button class="new" ?disabled=${this.workspace===void 0} @click=${()=>{this.startTerminal()}}>+ Shell</button>
76
+ </div>
77
+ ${this.error===void 0?null:d`<p class="error">${this.error}</p>`}
78
+ ${this.renderCommandRunNotice()}
79
+ ${this.shouldShowSoftKeys()?this.renderSoftKeys():null}
80
+ ${this.loading?d`<p class="muted">Loading terminals…</p>`:null}
81
+ <div class="terminal-host"></div>
82
+ </section>
83
+ `}};s.styles=E`
84
+ :host { flex: 1 1 auto; min-height: 0; display: flex; }
85
+ .terminal-shell { flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column; overflow: hidden; background: var(--pi-terminal-bg); }
86
+ .terminal-tabs { flex: 0 0 auto; display: flex; gap: 6px; align-items: center; padding: 6px; border-bottom: 1px solid var(--pi-border-muted); background: var(--pi-bg); overflow: auto; }
87
+ button { display: inline-flex; align-items: center; gap: 6px; min-width: 0; max-width: 180px; border: 1px solid var(--pi-border); border-radius: 7px; background: var(--pi-surface); color: var(--pi-text); padding: 5px 7px; cursor: pointer; }
88
+ button.selected { border-color: var(--pi-accent); background: var(--pi-selection-bg); }
89
+ button.new { flex: 0 0 auto; color: var(--pi-muted); }
90
+ .soft-keys-toggle { flex: 0 0 auto; }
91
+ .soft-keys-toggle .keyboard-icon { flex: 0 0 auto; width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; pointer-events: none; }
92
+ button span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
93
+ button small { color: var(--pi-muted); font-size: 14px; line-height: 1; }
94
+ button small:hover { color: var(--pi-danger); }
95
+ button.danger { color: var(--pi-danger); }
96
+ button:disabled { opacity: .5; cursor: not-allowed; }
97
+ .command-run-notice { flex: 0 0 auto; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 8px 10px; border-bottom: 1px solid var(--pi-border-muted); background: var(--pi-surface); color: var(--pi-text); }
98
+ .command-run-notice.running { border-color: var(--pi-warning-border); }
99
+ .command-run-notice.succeeded { border-color: var(--pi-success-border); }
100
+ .command-run-notice.failed { border-color: var(--pi-danger); }
101
+ .command-run-notice p { margin: 3px 0; color: var(--pi-muted); }
102
+ .command-run-notice code { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--pi-text-secondary); font: 12px ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
103
+ .command-run-notice kbd { border: 1px solid var(--pi-border); border-radius: 4px; background: var(--pi-bg); padding: 0 4px; font: 11px ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
104
+ .command-run-notice button { justify-self: end; max-width: none; }
105
+ .terminal-host { flex: 1 1 auto; min-height: 0; padding: 6px; box-sizing: border-box; overflow: hidden; }
106
+ .terminal-host .xterm { height: 100%; cursor: text; position: relative; user-select: none; }
107
+ .terminal-host .xterm.focus, .terminal-host .xterm:focus { outline: none; }
108
+ .terminal-host .xterm-helpers { position: absolute; top: 0; z-index: 5; }
109
+ /* Hide the helper textarea without using !important on the positional properties (left/top/width/height/z-index). xterm sets those inline during IME/dead-key composition (e.g. "~" on a Swedish layout) so the composition is positioned at the cursor and committed correctly; forcing them here would pin the textarea off-screen with zero size and break composition. */
110
+ .terminal-host .xterm-helper-textarea { position: absolute; left: -9999em; top: 0; width: 0; height: 0; padding: 0 !important; border: 0 !important; margin: 0 !important; opacity: 0 !important; z-index: -5; white-space: nowrap !important; overflow: hidden !important; resize: none !important; outline: 0 !important; appearance: none !important; }
111
+ /* The composition view shows pending dead-key/IME input. Without these rules it renders as a static block in the top-left corner instead of overlaying the cursor. */
112
+ .terminal-host .composition-view { position: absolute; display: none; white-space: nowrap; z-index: 1; background: var(--pi-terminal-bg, #000); color: var(--pi-terminal-text, #fff); }
113
+ .terminal-host .composition-view.active { display: block; }
114
+ .terminal-host .xterm-viewport { position: absolute; inset: 0; overflow-y: scroll; cursor: default; background-color: var(--pi-terminal-bg); }
115
+ .terminal-host .xterm-screen { position: relative; }
116
+ .terminal-host .xterm-screen canvas { position: absolute; left: 0; top: 0; }
117
+ .terminal-host .xterm-char-measure-element { display: inline-block; visibility: hidden; position: absolute; top: 0; left: -9999em; line-height: normal; }
118
+ .terminal-host .xterm-accessibility:not(.debug), .terminal-host .xterm-message { position: absolute; inset: 0; z-index: 10; color: transparent; pointer-events: none; }
119
+ .terminal-host .xterm-accessibility-tree:not(.debug) *::selection { color: transparent; }
120
+ .terminal-host .xterm-accessibility-tree { font-family: monospace; user-select: text; white-space: pre; }
121
+ .terminal-host .xterm-accessibility-tree > div { transform-origin: left; width: fit-content; }
122
+ .terminal-host .live-region { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
123
+ .error { flex: 0 0 auto; margin: 0; padding: 8px; color: var(--pi-danger); border-bottom: 1px solid var(--pi-border); background: var(--pi-surface); }
124
+ .muted { margin: 10px; color: var(--pi-muted); }
125
+ .xterm { height: 100%; }
126
+ `;a([m({attribute:!1})],s.prototype,"workspace",2);a([m()],s.prototype,"machineId",2);a([m({attribute:!1})],s.prototype,"selectedTerminalId",2);a([m({type:Boolean})],s.prototype,"autoStart",2);a([m({attribute:!1})],s.prototype,"onSelectTerminal",2);a([F(".terminal-host")],s.prototype,"terminalHost",2);a([u()],s.prototype,"terminals",2);a([u()],s.prototype,"commandRuns",2);a([u()],s.prototype,"selectedId",2);a([u()],s.prototype,"loading",2);a([u()],s.prototype,"error",2);a([u()],s.prototype,"visible",2);a([u()],s.prototype,"cancellingRunIds",2);a([u()],s.prototype,"continuingTerminalIds",2);a([u()],s.prototype,"defaultSoftKeysEnvironment",2);a([u()],s.prototype,"softKeysEnabled",2);s=a([R("terminal-panel")],s);function v(e){return e.status==="queued"||e.status==="running"}function re(e){return e.status==="succeeded"?`Command succeeded${e.exitCode===void 0?"":` with exit code ${String(e.exitCode)}`}`:`Command failed${e.exitCode===void 0?"":` with exit code ${String(e.exitCode)}`}`}function oe(e){const t=JSON.parse(e);if(!N(t))return{type:"error",message:"Invalid terminal message"};const i=t;return i.type==="output"&&typeof i.data=="string"?{type:"output",data:i.data,...typeof i.replay=="boolean"?{replay:i.replay}:{}}:i.type==="exit"?{type:"exit",...typeof i.exitCode=="number"?{exitCode:i.exitCode}:{}}:i.type==="error"&&typeof i.message=="string"?{type:"error",message:i.message}:{type:"error",message:"Invalid terminal message"}}function se(e){return e.replaceAll("\x1B[I","").replaceAll("\x1B[O","")}async function ae(e){return typeof e=="string"?e:e instanceof ArrayBuffer?new TextDecoder().decode(e):e instanceof Blob?await e.text():String(e)}function C(e){return{...te,theme:A(e)}}function A(e){return{background:g(e,"--pi-terminal-bg","#05070a"),foreground:g(e,"--pi-terminal-text","#e6edf3"),cursor:g(e,"--pi-accent","#58a6ff"),selectionBackground:g(e,"--pi-terminal-selection","#264f78")}}function g(e,t,i){const n=getComputedStyle(e).getPropertyValue(t).trim();return n===""?i:n}function k(e){if(!(e===void 0||!le(e.cols,e.rows)))return{cols:Math.floor(e.cols),rows:Math.floor(e.rows)}}function le(e,t){return Number.isFinite(e)&&Number.isFinite(t)&&e>0&&t>0}export{s as TerminalPanel,se as filterTerminalInput};
@@ -1,4 +1,4 @@
1
- import{aH as A,aI as P,aJ as V,aK as z,aM as F}from"./index-CyN73uMY.js";import"./vendor-editor-core-D-5q2tVX.js";import"./vendor-editor-languages-B6WRt0aC.js";class U{diff(e,t,i={}){let o;typeof i=="function"?(o=i,i={}):"callback"in i&&(o=i.callback);const r=this.castInput(e,i),s=this.castInput(t,i),u=this.removeEmpty(this.tokenize(r,i)),l=this.removeEmpty(this.tokenize(s,i));return this.diffWithOptionsObj(u,l,i,o)}diffWithOptionsObj(e,t,i,o){var r;const s=c=>{if(c=this.postProcess(c,i),o){setTimeout(function(){o(c)},0);return}else return c},u=t.length,l=e.length;let d=1,a=u+l;i.maxEditLength!=null&&(a=Math.min(a,i.maxEditLength));const g=(r=i.timeout)!==null&&r!==void 0?r:1/0,v=Date.now()+g,f=[{oldPos:-1,lastComponent:void 0}];let h=this.extractCommon(f[0],t,e,0,i);if(f[0].oldPos+1>=l&&h+1>=u)return s(this.buildValues(f[0].lastComponent,t,e));let w=-1/0,y=1/0;const $=()=>{for(let c=Math.max(w,-d);c<=Math.min(y,d);c+=2){let p;const x=f[c-1],b=f[c+1];x&&(f[c-1]=void 0);let D=!1;if(b){const S=b.oldPos-c;D=b&&0<=S&&S<u}const k=x&&x.oldPos+1<l;if(!D&&!k){f[c]=void 0;continue}if(!k||D&&x.oldPos<b.oldPos?p=this.addToPath(b,!0,!1,0,i):p=this.addToPath(x,!1,!0,1,i),h=this.extractCommon(p,t,e,c,i),p.oldPos+1>=l&&h+1>=u)return s(this.buildValues(p.lastComponent,t,e))||!0;f[c]=p,p.oldPos+1>=l&&(y=Math.min(y,c-1)),h+1>=u&&(w=Math.max(w,c+1))}d++};if(o)(function c(){setTimeout(function(){if(d>a||Date.now()>v)return o(void 0);$()||c()},0)})();else for(;d<=a&&Date.now()<=v;){const c=$();if(c)return c}}addToPath(e,t,i,o,r){const s=e.lastComponent;return s&&!r.oneChangePerToken&&s.added===t&&s.removed===i?{oldPos:e.oldPos+o,lastComponent:{count:s.count+1,added:t,removed:i,previousComponent:s.previousComponent}}:{oldPos:e.oldPos+o,lastComponent:{count:1,added:t,removed:i,previousComponent:s}}}extractCommon(e,t,i,o,r){const s=t.length,u=i.length;let l=e.oldPos,d=l-o,a=0;for(;d+1<s&&l+1<u&&this.equals(i[l+1],t[d+1],r);)d++,l++,a++,r.oneChangePerToken&&(e.lastComponent={count:1,previousComponent:e.lastComponent,added:!1,removed:!1});return a&&!r.oneChangePerToken&&(e.lastComponent={count:a,previousComponent:e.lastComponent,added:!1,removed:!1}),e.oldPos=l,d}equals(e,t,i){return i.comparator?i.comparator(e,t):e===t||!!i.ignoreCase&&e.toLowerCase()===t.toLowerCase()}removeEmpty(e){const t=[];for(let i=0;i<e.length;i++)e[i]&&t.push(e[i]);return t}castInput(e,t){return e}tokenize(e,t){return Array.from(e)}join(e){return e.join("")}postProcess(e,t){return e}get useLongestToken(){return!1}buildValues(e,t,i){const o=[];let r;for(;e;)o.push(e),r=e.previousComponent,delete e.previousComponent,e=r;o.reverse();const s=o.length;let u=0,l=0,d=0;for(;u<s;u++){const a=o[u];if(a.removed)a.value=this.join(i.slice(d,d+a.count)),d+=a.count;else{if(!a.added&&this.useLongestToken){let g=t.slice(l,l+a.count);g=g.map(function(v,f){const h=i[d+f];return h.length>v.length?h:v}),a.value=this.join(g)}else a.value=this.join(t.slice(l,l+a.count));l+=a.count,a.added||(d+=a.count)}}return o}}class R extends U{}const q=new R;function j(n,e,t){return q.diff(n,e,t)}const B=/^@@ -(\d+)(?:,\d+)? \+(\d+)(?:,\d+)? @@/,C=5e3,H=20,J=.2,E=.25;function K(n){const e=G(n);return X(e),e}function G(n){const e=Q(n),t=[];let i,o;for(const r of e){const s=B.exec(r);if(s!==null){i=Number(s[1]),o=Number(s[2]),t.push(m("hunk","",r));continue}if(i!==void 0&&o!==void 0){if(r.startsWith("+")){t.push(m("add","+",r.slice(1),{newLineNumber:o})),o++;continue}if(r.startsWith("-")){t.push(m("remove","-",r.slice(1),{oldLineNumber:i})),i++;continue}if(r.startsWith(" ")){t.push(m("context"," ",r.slice(1),{oldLineNumber:i,newLineNumber:o})),i++,o++;continue}if(r.startsWith("\\")){t.push(m("marker","",r));continue}}i=void 0,o=void 0,t.push(m("meta","",r))}return t}function Q(n){if(n==="")return[];const e=n.replace(/\r\n/g,`
1
+ import{aH as A,aI as P,aJ as V,aK as z,aM as F}from"./index-C-cQEbCY.js";import"./vendor-editor-core-DbsheCh1.js";import"./vendor-editor-languages-B1l-thbw.js";class U{diff(e,t,i={}){let o;typeof i=="function"?(o=i,i={}):"callback"in i&&(o=i.callback);const r=this.castInput(e,i),s=this.castInput(t,i),u=this.removeEmpty(this.tokenize(r,i)),l=this.removeEmpty(this.tokenize(s,i));return this.diffWithOptionsObj(u,l,i,o)}diffWithOptionsObj(e,t,i,o){var r;const s=c=>{if(c=this.postProcess(c,i),o){setTimeout(function(){o(c)},0);return}else return c},u=t.length,l=e.length;let d=1,a=u+l;i.maxEditLength!=null&&(a=Math.min(a,i.maxEditLength));const g=(r=i.timeout)!==null&&r!==void 0?r:1/0,v=Date.now()+g,f=[{oldPos:-1,lastComponent:void 0}];let h=this.extractCommon(f[0],t,e,0,i);if(f[0].oldPos+1>=l&&h+1>=u)return s(this.buildValues(f[0].lastComponent,t,e));let w=-1/0,y=1/0;const $=()=>{for(let c=Math.max(w,-d);c<=Math.min(y,d);c+=2){let p;const x=f[c-1],b=f[c+1];x&&(f[c-1]=void 0);let D=!1;if(b){const S=b.oldPos-c;D=b&&0<=S&&S<u}const k=x&&x.oldPos+1<l;if(!D&&!k){f[c]=void 0;continue}if(!k||D&&x.oldPos<b.oldPos?p=this.addToPath(b,!0,!1,0,i):p=this.addToPath(x,!1,!0,1,i),h=this.extractCommon(p,t,e,c,i),p.oldPos+1>=l&&h+1>=u)return s(this.buildValues(p.lastComponent,t,e))||!0;f[c]=p,p.oldPos+1>=l&&(y=Math.min(y,c-1)),h+1>=u&&(w=Math.max(w,c+1))}d++};if(o)(function c(){setTimeout(function(){if(d>a||Date.now()>v)return o(void 0);$()||c()},0)})();else for(;d<=a&&Date.now()<=v;){const c=$();if(c)return c}}addToPath(e,t,i,o,r){const s=e.lastComponent;return s&&!r.oneChangePerToken&&s.added===t&&s.removed===i?{oldPos:e.oldPos+o,lastComponent:{count:s.count+1,added:t,removed:i,previousComponent:s.previousComponent}}:{oldPos:e.oldPos+o,lastComponent:{count:1,added:t,removed:i,previousComponent:s}}}extractCommon(e,t,i,o,r){const s=t.length,u=i.length;let l=e.oldPos,d=l-o,a=0;for(;d+1<s&&l+1<u&&this.equals(i[l+1],t[d+1],r);)d++,l++,a++,r.oneChangePerToken&&(e.lastComponent={count:1,previousComponent:e.lastComponent,added:!1,removed:!1});return a&&!r.oneChangePerToken&&(e.lastComponent={count:a,previousComponent:e.lastComponent,added:!1,removed:!1}),e.oldPos=l,d}equals(e,t,i){return i.comparator?i.comparator(e,t):e===t||!!i.ignoreCase&&e.toLowerCase()===t.toLowerCase()}removeEmpty(e){const t=[];for(let i=0;i<e.length;i++)e[i]&&t.push(e[i]);return t}castInput(e,t){return e}tokenize(e,t){return Array.from(e)}join(e){return e.join("")}postProcess(e,t){return e}get useLongestToken(){return!1}buildValues(e,t,i){const o=[];let r;for(;e;)o.push(e),r=e.previousComponent,delete e.previousComponent,e=r;o.reverse();const s=o.length;let u=0,l=0,d=0;for(;u<s;u++){const a=o[u];if(a.removed)a.value=this.join(i.slice(d,d+a.count)),d+=a.count;else{if(!a.added&&this.useLongestToken){let g=t.slice(l,l+a.count);g=g.map(function(v,f){const h=i[d+f];return h.length>v.length?h:v}),a.value=this.join(g)}else a.value=this.join(t.slice(l,l+a.count));l+=a.count,a.added||(d+=a.count)}}return o}}class R extends U{}const q=new R;function j(n,e,t){return q.diff(n,e,t)}const B=/^@@ -(\d+)(?:,\d+)? \+(\d+)(?:,\d+)? @@/,C=5e3,H=20,J=.2,E=.25;function K(n){const e=G(n);return X(e),e}function G(n){const e=Q(n),t=[];let i,o;for(const r of e){const s=B.exec(r);if(s!==null){i=Number(s[1]),o=Number(s[2]),t.push(m("hunk","",r));continue}if(i!==void 0&&o!==void 0){if(r.startsWith("+")){t.push(m("add","+",r.slice(1),{newLineNumber:o})),o++;continue}if(r.startsWith("-")){t.push(m("remove","-",r.slice(1),{oldLineNumber:i})),i++;continue}if(r.startsWith(" ")){t.push(m("context"," ",r.slice(1),{oldLineNumber:i,newLineNumber:o})),i++,o++;continue}if(r.startsWith("\\")){t.push(m("marker","",r));continue}}i=void 0,o=void 0,t.push(m("meta","",r))}return t}function Q(n){if(n==="")return[];const e=n.replace(/\r\n/g,`
2
2
  `).replace(/\r/g,`
3
3
  `).split(`
4
4
  `);return e.at(-1)===""&&e.pop(),e}function m(n,e,t,i={}){return{kind:n,prefix:e,text:t,spans:t===""?[]:[{text:t,changed:!1}],...i}}function X(n){let e=0;for(;e<n.length;){if(n[e]?.kind!=="remove"){e++;continue}const i=e;for(;n[e]?.kind==="remove";)e++;const o=e;for(;n[e]?.kind==="add";)e++;if(o===e)continue;const r=n.slice(i,o),s=n.slice(o,e);Y(r,s)}}function Y(n,e){if(!(n.length+e.length>H))for(const t of Z(n,e)){const i=te(t.removed.text,t.added.text);i!==void 0&&(t.removed.spans=i.removed,t.added.spans=i.added)}}function Z(n,e){if(n.length===e.length)return n.map((o,r)=>({removed:o,added:e[r]})).filter(T);if(n.length===1)return ee(n[0],e);if(e.length===1)return ne(n,e[0]);const t=[],i=Math.min(n.length,e.length);for(let o=0;o<i;o++){const r=n[o],s=e[o];r===void 0||s===void 0||O(r.text,s.text)>=E&&t.push({removed:r,added:s})}return t}function T(n){return n.added!==void 0}function ee(n,e){if(n===void 0)return[];const t=N(n.text,e);return t===void 0?[]:[{removed:n,added:t}]}function ne(n,e){if(e===void 0)return[];const t=N(e.text,n);return t===void 0?[]:[{removed:t,added:e}]}function N(n,e){let t,i=E;for(const o of e){const r=O(n,o.text);r<=i||(t=o,i=r)}return t}function te(n,e){if(n===e||n.length>C||e.length>C)return;const t=j(n,e),i=_(t,n,e);if(Math.max(n.length,e.length)>=20&&i<J)return;const o=[],r=[];for(const s of t)s.value!==""&&(s.added?r.push({text:s.value,changed:!0}):s.removed?o.push({text:s.value,changed:!0}):(o.push({text:s.value,changed:!1}),r.push({text:s.value,changed:!1})));if(!(!o.some(s=>s.changed)&&!r.some(s=>s.changed)))return{removed:M(o),added:M(r)}}function O(n,e){return n===e?1:n.length>C||e.length>C?0:_(j(n,e),n,e)}function _(n,e,t){const i=Math.max(e.length,t.length);return i===0?1:n.reduce((r,s)=>s.added||s.removed?r:r+s.value.length,0)/i}function M(n){const e=[];for(const t of n){const i=e[e.length-1];i?.changed===t.changed?i.text+=t.text:e.push({...t})}return e}var ie=Object.defineProperty,oe=Object.getOwnPropertyDescriptor,W=(n,e,t,i)=>{for(var o=i>1?void 0:i?oe(e,t):e,r=n.length-1,s;r>=0;r--)(s=n[r])&&(o=(i?s(e,t,o):s(o))||o);return i&&o&&ie(e,t,o),o};let L=class extends A{constructor(){super(...arguments),this.diff=""}render(){const n=K(this.diff);return n.length===0?P`<p class="empty">No diff.</p>`:P`
@@ -1 +1 @@
1
- import{g as p,r as u,d as a}from"./chunk-GTNCS2PH-CBiTovUf.js";import{p as f}from"./chunk-JWPE2WC7-C2yjQs6c.js";import{_ as n,l as o}from"./index-CyN73uMY.js";import{M as c,b as d}from"./cynefin-OW5HDTMX-DXF0a63d.js";import"./vendor-editor-core-D-5q2tVX.js";import"./vendor-editor-languages-B6WRt0aC.js";var v=d().RailroadAbnf.parser.LangiumParser,i=n(e=>{const r=e.alternatives.map(g);return r.length===1?r[0]:{type:"choice",alternatives:r}},"transformAlternation"),g=n(e=>{const r=e.elements.map(y);return r.length===1?r[0]:{type:"sequence",elements:r}},"transformConcatenation"),b=n(e=>{if(e.includes("*")){const[t,s]=e.split("*"),l=t?parseInt(t,10):0,m=s?parseInt(s,10):1/0;return{min:l,max:m}}const r=parseInt(e,10);return{min:r,max:r}},"parseRepeat"),y=n(e=>{const r=A(e.primary);if(!e.repeat)return r;const{min:t,max:s}=b(e.repeat);return t===0&&s===1?{type:"optional",element:r}:{type:"repetition",element:r,min:t,max:s}},"transformElement"),A=n(e=>{switch(e.$type){case"AbnfStringLiteral":return{type:"terminal",value:e.value};case"AbnfNumVal":return{type:"terminal",value:e.value};case"AbnfRuleName":return{type:"nonterminal",name:e.name};case"AbnfGroup":return i(e.element);case"AbnfOptionalGroup":return{type:"optional",element:i(e.element)};default:throw new Error(`Unsupported ABNF primary node: ${e.$type}`)}},"transformPrimary"),P=n(e=>({name:e.name,definition:i(e.definition)}),"transformRule"),h=n(e=>{f(e,a),e.title&&a.setTitle(e.title),e.rules.map(r=>a.addRule(P(r)))},"populateDb"),R={parse:n(e=>{a.clear(),o.debug("[ABNF Parser] Starting Langium parse");const r=v.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new c(r);const t=r.value;o.debug("[ABNF Parser] Parsed rules:",t.rules.length),h(t),o.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:a}},F={parser:R,db:a,renderer:u,styles:p};export{F as diagram};
1
+ import{g as p,r as u,d as a}from"./chunk-GTNCS2PH-Da56Sthk.js";import{p as f}from"./chunk-JWPE2WC7-CVgZV6Wp.js";import{_ as n,l as o}from"./index-C-cQEbCY.js";import{M as c,b as d}from"./cynefin-OW5HDTMX-BUpMG_46.js";import"./vendor-editor-core-DbsheCh1.js";import"./vendor-editor-languages-B1l-thbw.js";var v=d().RailroadAbnf.parser.LangiumParser,i=n(e=>{const r=e.alternatives.map(g);return r.length===1?r[0]:{type:"choice",alternatives:r}},"transformAlternation"),g=n(e=>{const r=e.elements.map(y);return r.length===1?r[0]:{type:"sequence",elements:r}},"transformConcatenation"),b=n(e=>{if(e.includes("*")){const[t,s]=e.split("*"),l=t?parseInt(t,10):0,m=s?parseInt(s,10):1/0;return{min:l,max:m}}const r=parseInt(e,10);return{min:r,max:r}},"parseRepeat"),y=n(e=>{const r=A(e.primary);if(!e.repeat)return r;const{min:t,max:s}=b(e.repeat);return t===0&&s===1?{type:"optional",element:r}:{type:"repetition",element:r,min:t,max:s}},"transformElement"),A=n(e=>{switch(e.$type){case"AbnfStringLiteral":return{type:"terminal",value:e.value};case"AbnfNumVal":return{type:"terminal",value:e.value};case"AbnfRuleName":return{type:"nonterminal",name:e.name};case"AbnfGroup":return i(e.element);case"AbnfOptionalGroup":return{type:"optional",element:i(e.element)};default:throw new Error(`Unsupported ABNF primary node: ${e.$type}`)}},"transformPrimary"),P=n(e=>({name:e.name,definition:i(e.definition)}),"transformRule"),h=n(e=>{f(e,a),e.title&&a.setTitle(e.title),e.rules.map(r=>a.addRule(P(r)))},"populateDb"),R={parse:n(e=>{a.clear(),o.debug("[ABNF Parser] Starting Langium parse");const r=v.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new c(r);const t=r.value;o.debug("[ABNF Parser] Parsed rules:",t.rules.length),h(t),o.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:a}},F={parser:R,db:a,renderer:u,styles:p};export{F as diagram};
@@ -1 +1 @@
1
- import{a6 as ln,a7 as an,a8 as g,a9 as tn,aa as G,ab as j,ac as _,ad as un,ae as rn,af as K,ag as o,ah as z,ai as sn,aj as on,ak as fn}from"./index-CyN73uMY.js";function cn(l){return l.innerRadius}function gn(l){return l.outerRadius}function yn(l){return l.startAngle}function dn(l){return l.endAngle}function mn(l){return l&&l.padAngle}function pn(l,h,E,q,v,A,B,a){var I=E-l,i=q-h,n=B-v,d=a-A,u=d*I-n*i;if(!(u*u<g))return u=(n*(h-A)-d*(l-v))/u,[l+u*I,h+u*i]}function V(l,h,E,q,v,A,B){var a=l-E,I=h-q,i=(B?A:-A)/K(a*a+I*I),n=i*I,d=-i*a,u=l+n,s=h+d,f=E+n,c=q+d,C=(u+f)/2,t=(s+c)/2,m=f-u,y=c-s,R=m*m+y*y,T=v-A,P=u*c-f*s,O=(y<0?-1:1)*K(fn(0,T*T*R-P*P)),S=(P*y-m*O)/R,k=(-P*m-y*O)/R,w=(P*y+m*O)/R,p=(-P*m+y*O)/R,x=S-C,e=k-t,r=w-C,F=p-t;return x*x+e*e>r*r+F*F&&(S=w,k=p),{cx:S,cy:k,x01:-n,y01:-d,x11:S*(v/T-1),y11:k*(v/T-1)}}function hn(){var l=cn,h=gn,E=z(0),q=null,v=yn,A=dn,B=mn,a=null,I=ln(i);function i(){var n,d,u=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-an,c=A.apply(this,arguments)-an,C=un(c-f),t=c>f;if(a||(a=n=I()),s<u&&(d=s,s=u,u=d),!(s>g))a.moveTo(0,0);else if(C>tn-g)a.moveTo(s*G(f),s*j(f)),a.arc(0,0,s,f,c,!t),u>g&&(a.moveTo(u*G(c),u*j(c)),a.arc(0,0,u,c,f,t));else{var m=f,y=c,R=f,T=c,P=C,O=C,S=B.apply(this,arguments)/2,k=S>g&&(q?+q.apply(this,arguments):K(u*u+s*s)),w=_(un(s-u)/2,+E.apply(this,arguments)),p=w,x=w,e,r;if(k>g){var F=sn(k/u*j(S)),L=sn(k/s*j(S));(P-=F*2)>g?(F*=t?1:-1,R+=F,T-=F):(P=0,R=T=(f+c)/2),(O-=L*2)>g?(L*=t?1:-1,m+=L,y-=L):(O=0,m=y=(f+c)/2)}var H=s*G(m),J=s*j(m),M=u*G(T),N=u*j(T);if(w>g){var Q=s*G(y),U=s*j(y),W=u*G(R),X=u*j(R),D;if(C<rn)if(D=pn(H,J,W,X,Q,U,M,N)){var Y=H-D[0],Z=J-D[1],$=Q-D[0],b=U-D[1],nn=1/j(on((Y*$+Z*b)/(K(Y*Y+Z*Z)*K($*$+b*b)))/2),en=K(D[0]*D[0]+D[1]*D[1]);p=_(w,(u-en)/(nn-1)),x=_(w,(s-en)/(nn+1))}else p=x=0}O>g?x>g?(e=V(W,X,H,J,s,x,t),r=V(Q,U,M,N,s,x,t),a.moveTo(e.cx+e.x01,e.cy+e.y01),x<w?a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,s,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),!t),a.arc(r.cx,r.cy,x,o(r.y11,r.x11),o(r.y01,r.x01),!t))):(a.moveTo(H,J),a.arc(0,0,s,m,y,!t)):a.moveTo(H,J),!(u>g)||!(P>g)?a.lineTo(M,N):p>g?(e=V(M,N,Q,U,u,-p,t),r=V(H,J,W,X,u,-p,t),a.lineTo(e.cx+e.x01,e.cy+e.y01),p<w?a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,u,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),t),a.arc(r.cx,r.cy,p,o(r.y11,r.x11),o(r.y01,r.x01),!t))):a.arc(0,0,u,T,R,t)}if(a.closePath(),n)return a=null,n+""||null}return i.centroid=function(){var n=(+l.apply(this,arguments)+ +h.apply(this,arguments))/2,d=(+v.apply(this,arguments)+ +A.apply(this,arguments))/2-rn/2;return[G(d)*n,j(d)*n]},i.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:z(+n),i):l},i.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:z(+n),i):h},i.cornerRadius=function(n){return arguments.length?(E=typeof n=="function"?n:z(+n),i):E},i.padRadius=function(n){return arguments.length?(q=n==null?null:typeof n=="function"?n:z(+n),i):q},i.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:z(+n),i):v},i.endAngle=function(n){return arguments.length?(A=typeof n=="function"?n:z(+n),i):A},i.padAngle=function(n){return arguments.length?(B=typeof n=="function"?n:z(+n),i):B},i.context=function(n){return arguments.length?(a=n??null,i):a},i}export{hn as d};
1
+ import{a6 as ln,a7 as an,a8 as g,a9 as tn,aa as G,ab as j,ac as _,ad as un,ae as rn,af as K,ag as o,ah as z,ai as sn,aj as on,ak as fn}from"./index-C-cQEbCY.js";function cn(l){return l.innerRadius}function gn(l){return l.outerRadius}function yn(l){return l.startAngle}function dn(l){return l.endAngle}function mn(l){return l&&l.padAngle}function pn(l,h,E,q,v,A,B,a){var I=E-l,i=q-h,n=B-v,d=a-A,u=d*I-n*i;if(!(u*u<g))return u=(n*(h-A)-d*(l-v))/u,[l+u*I,h+u*i]}function V(l,h,E,q,v,A,B){var a=l-E,I=h-q,i=(B?A:-A)/K(a*a+I*I),n=i*I,d=-i*a,u=l+n,s=h+d,f=E+n,c=q+d,C=(u+f)/2,t=(s+c)/2,m=f-u,y=c-s,R=m*m+y*y,T=v-A,P=u*c-f*s,O=(y<0?-1:1)*K(fn(0,T*T*R-P*P)),S=(P*y-m*O)/R,k=(-P*m-y*O)/R,w=(P*y+m*O)/R,p=(-P*m+y*O)/R,x=S-C,e=k-t,r=w-C,F=p-t;return x*x+e*e>r*r+F*F&&(S=w,k=p),{cx:S,cy:k,x01:-n,y01:-d,x11:S*(v/T-1),y11:k*(v/T-1)}}function hn(){var l=cn,h=gn,E=z(0),q=null,v=yn,A=dn,B=mn,a=null,I=ln(i);function i(){var n,d,u=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-an,c=A.apply(this,arguments)-an,C=un(c-f),t=c>f;if(a||(a=n=I()),s<u&&(d=s,s=u,u=d),!(s>g))a.moveTo(0,0);else if(C>tn-g)a.moveTo(s*G(f),s*j(f)),a.arc(0,0,s,f,c,!t),u>g&&(a.moveTo(u*G(c),u*j(c)),a.arc(0,0,u,c,f,t));else{var m=f,y=c,R=f,T=c,P=C,O=C,S=B.apply(this,arguments)/2,k=S>g&&(q?+q.apply(this,arguments):K(u*u+s*s)),w=_(un(s-u)/2,+E.apply(this,arguments)),p=w,x=w,e,r;if(k>g){var F=sn(k/u*j(S)),L=sn(k/s*j(S));(P-=F*2)>g?(F*=t?1:-1,R+=F,T-=F):(P=0,R=T=(f+c)/2),(O-=L*2)>g?(L*=t?1:-1,m+=L,y-=L):(O=0,m=y=(f+c)/2)}var H=s*G(m),J=s*j(m),M=u*G(T),N=u*j(T);if(w>g){var Q=s*G(y),U=s*j(y),W=u*G(R),X=u*j(R),D;if(C<rn)if(D=pn(H,J,W,X,Q,U,M,N)){var Y=H-D[0],Z=J-D[1],$=Q-D[0],b=U-D[1],nn=1/j(on((Y*$+Z*b)/(K(Y*Y+Z*Z)*K($*$+b*b)))/2),en=K(D[0]*D[0]+D[1]*D[1]);p=_(w,(u-en)/(nn-1)),x=_(w,(s-en)/(nn+1))}else p=x=0}O>g?x>g?(e=V(W,X,H,J,s,x,t),r=V(Q,U,M,N,s,x,t),a.moveTo(e.cx+e.x01,e.cy+e.y01),x<w?a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,s,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),!t),a.arc(r.cx,r.cy,x,o(r.y11,r.x11),o(r.y01,r.x01),!t))):(a.moveTo(H,J),a.arc(0,0,s,m,y,!t)):a.moveTo(H,J),!(u>g)||!(P>g)?a.lineTo(M,N):p>g?(e=V(M,N,Q,U,u,-p,t),r=V(H,J,W,X,u,-p,t),a.lineTo(e.cx+e.x01,e.cy+e.y01),p<w?a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,u,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),t),a.arc(r.cx,r.cy,p,o(r.y11,r.x11),o(r.y01,r.x01),!t))):a.arc(0,0,u,T,R,t)}if(a.closePath(),n)return a=null,n+""||null}return i.centroid=function(){var n=(+l.apply(this,arguments)+ +h.apply(this,arguments))/2,d=(+v.apply(this,arguments)+ +A.apply(this,arguments))/2-rn/2;return[G(d)*n,j(d)*n]},i.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:z(+n),i):l},i.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:z(+n),i):h},i.cornerRadius=function(n){return arguments.length?(E=typeof n=="function"?n:z(+n),i):E},i.padRadius=function(n){return arguments.length?(q=n==null?null:typeof n=="function"?n:z(+n),i):q},i.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:z(+n),i):v},i.endAngle=function(n){return arguments.length?(A=typeof n=="function"?n:z(+n),i):A},i.padAngle=function(n){return arguments.length?(B=typeof n=="function"?n:z(+n),i):B},i.context=function(n){return arguments.length?(a=n??null,i):a},i}export{hn as d};