turtlecode 0.3.11 → 0.3.22

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 (122) hide show
  1. package/assets/assets/58eaeb4e52248a5c75936c6f4c33a370-TQ-VM369.svg +137 -0
  2. package/assets/assets/{_basePickBy-CJ0iZZpY.js → _basePickBy-BuV5p9OF.js} +1 -1
  3. package/assets/assets/{_baseUniq-Ff_gEw0V.js → _baseUniq-CgruQt5X.js} +1 -1
  4. package/assets/assets/{arc-BXWqydYn.js → arc-Xo9tWfZy.js} +1 -1
  5. package/assets/assets/{architectureDiagram-2XIMDMQ5-CJbS5v-n.js → architectureDiagram-2XIMDMQ5-Dwwiik2C.js} +1 -1
  6. package/assets/assets/{auth-callback-BLFOO68M.js → auth-callback-DzfbKURp.js} +1 -1
  7. package/assets/assets/{blockDiagram-WCTKOSBZ-D8k7ohbV.js → blockDiagram-WCTKOSBZ-D14iUyJf.js} +1 -1
  8. package/assets/assets/{c4Diagram-IC4MRINW-0bj9OFcQ.js → c4Diagram-IC4MRINW-BTEGwkgT.js} +1 -1
  9. package/assets/assets/channel-lLJpXDom.js +1 -0
  10. package/assets/assets/{chunk-4BX2VUAB-Bsl_oCUb.js → chunk-4BX2VUAB-LvGb37pZ.js} +1 -1
  11. package/assets/assets/{chunk-55IACEB6-BT0s5uc_.js → chunk-55IACEB6-BHYQFK0r.js} +1 -1
  12. package/assets/assets/{chunk-FMBD7UC4-SQz3mX6W.js → chunk-FMBD7UC4-DDPwEL1E.js} +1 -1
  13. package/assets/assets/{chunk-JSJVCQXG-DhvTUdKL.js → chunk-JSJVCQXG-ClUobV2O.js} +1 -1
  14. package/assets/assets/{chunk-KX2RTZJC-CR3J0asp.js → chunk-KX2RTZJC-B8M8Fcgs.js} +1 -1
  15. package/assets/assets/{chunk-NQ4KR5QH-D_SSWx-G.js → chunk-NQ4KR5QH-COObsiDL.js} +1 -1
  16. package/assets/assets/{chunk-QZHKN3VN-BhGlpFzS.js → chunk-QZHKN3VN-3sXsvRQx.js} +1 -1
  17. package/assets/assets/{chunk-WL4C6EOR-Cfh3g_wP.js → chunk-WL4C6EOR-C-KVdAYV.js} +1 -1
  18. package/assets/assets/classDiagram-VBA2DB6C-DjMycBV4.js +1 -0
  19. package/assets/assets/classDiagram-v2-RAHNMMFH-DjMycBV4.js +1 -0
  20. package/assets/assets/clone-g65k7nys.js +1 -0
  21. package/assets/assets/{connection-popover-CA_KV_fa.js → connection-popover-rJ-VRiI0.js} +1 -1
  22. package/assets/assets/{context-popover-B6cmyVJz.js → context-popover-DrTfmTrn.js} +1 -1
  23. package/assets/assets/{cose-bilkent-S5V4N54A-DVq0CNvh.js → cose-bilkent-S5V4N54A-CMC5LmtM.js} +1 -1
  24. package/assets/assets/{cssMode-DHUfA-h9.js → cssMode-CgrXnPhP.js} +2 -2
  25. package/assets/assets/{dagre-KLK3FWXG-CYjfkd42.js → dagre-KLK3FWXG-BQ3EbYun.js} +1 -1
  26. package/assets/assets/{diagram-E7M64L7V-x-iI-6YJ.js → diagram-E7M64L7V-BHeZpgSR.js} +1 -1
  27. package/assets/assets/{diagram-IFDJBPK2-Cecwm9R9.js → diagram-IFDJBPK2-b82YQflr.js} +1 -1
  28. package/assets/assets/{diagram-P4PSJMXO-CyKV1e0e.js → diagram-P4PSJMXO-pi7FLeUK.js} +1 -1
  29. package/assets/assets/{dialog-clone-project-CTom8vZq.js → dialog-clone-project-CTlT0wyo.js} +1 -1
  30. package/assets/assets/dialog-connect-provider-DD-ABicH.js +2 -0
  31. package/assets/assets/{dialog-create-project-BPLZmIBj.js → dialog-create-project-CDuD9Ck4.js} +1 -1
  32. package/assets/assets/{dialog-edit-project-DYofZYDR.js → dialog-edit-project-DsqzrfzM.js} +1 -1
  33. package/assets/assets/dialog-fork-B_U9B5sC.js +1 -0
  34. package/assets/assets/dialog-manage-models-BwT1iDMG.js +1 -0
  35. package/assets/assets/dialog-select-directory-DeBymOq4.js +6 -0
  36. package/assets/assets/dialog-select-file-Bl3u-ykG.js +1 -0
  37. package/assets/assets/dialog-select-mcp-CNXlry4I.js +1 -0
  38. package/assets/assets/dialog-select-model-unpaid-BggTZ1GN.js +2 -0
  39. package/assets/assets/{dialog-select-provider-CvV5EJ9p.js → dialog-select-provider-DCUcnqs5.js} +1 -1
  40. package/assets/assets/dialog-select-server-BFlVrVwv.js +1 -0
  41. package/assets/assets/dialog-settings-BuGykryo.js +1 -0
  42. package/assets/assets/{erDiagram-INFDFZHY-CrbnVRp_.js → erDiagram-INFDFZHY-7SAbu9BD.js} +1 -1
  43. package/assets/assets/{flowDiagram-PKNHOUZH-i7TEJECE.js → flowDiagram-PKNHOUZH-BTJQITbQ.js} +1 -1
  44. package/assets/assets/{freemarker2-D0d_IFPo.js → freemarker2-DaFW-Bnn.js} +2 -2
  45. package/assets/assets/{ganttDiagram-A5KZAMGK-13gHjNi6.js → ganttDiagram-A5KZAMGK-xLMbL7NX.js} +1 -1
  46. package/assets/assets/{ghostty-web-BKP_KJbF.js → ghostty-web-CSMOh6gY.js} +4 -4
  47. package/assets/assets/{gitGraphDiagram-K3NZZRJ6-DxAm2mQu.js → gitGraphDiagram-K3NZZRJ6-CVRO_XHq.js} +1 -1
  48. package/assets/assets/{graph-C2ZN9EV0.js → graph-DApKsqr0.js} +1 -1
  49. package/assets/assets/{handlebars-D91vh_PS.js → handlebars-CUhaHsb1.js} +2 -2
  50. package/assets/assets/home-BqphZDxq.js +1 -0
  51. package/assets/assets/{html-D40RLrB-.js → html-Do7wwNp4.js} +2 -2
  52. package/assets/assets/{htmlMode-C8dl_pDf.js → htmlMode-B3WepnYy.js} +3 -3
  53. package/assets/assets/{index-C0mqcMws.css → index-CUuPDPB8.css} +6 -1
  54. package/assets/assets/index-DMyAFOcC.js +3512 -0
  55. package/assets/assets/{infoDiagram-LFFYTUFH-Bbet4n_c.js → infoDiagram-LFFYTUFH-DifxRd1_.js} +1 -1
  56. package/assets/assets/{ishikawaDiagram-PHBUUO56-DODPmu-a.js → ishikawaDiagram-PHBUUO56-DKeD8kjl.js} +1 -1
  57. package/assets/assets/{javascript-DeDye8d4.js → javascript-Ct4IZjTn.js} +2 -2
  58. package/assets/assets/{journeyDiagram-4ABVD52K-l_4CYJ2r.js → journeyDiagram-4ABVD52K-cHvgdZfH.js} +1 -1
  59. package/assets/assets/{jsonMode-CEB9U1Lv.js → jsonMode-CqBN0SKr.js} +3 -3
  60. package/assets/assets/{kanban-definition-K7BYSVSG-CnZByQ7N.js → kanban-definition-K7BYSVSG-BOdC1ppV.js} +1 -1
  61. package/assets/assets/{layout-CL7ocwjL.js → layout-CjPJwo23.js} +1 -1
  62. package/assets/assets/{liquid-DcoQtc11.js → liquid-Dmi6j_RS.js} +2 -2
  63. package/assets/assets/list-HsPczU9B.js +1 -0
  64. package/assets/assets/{mdx-ZZS-OY0p.js → mdx-CUhMRP6h.js} +2 -2
  65. package/assets/assets/{mermaid.core-CvvapKs3.js → mermaid.core-CVIbZZUN.js} +5 -5
  66. package/assets/assets/{mindmap-definition-YRQLILUH-BvHtH11v.js → mindmap-definition-YRQLILUH-C7HR3zhx.js} +1 -1
  67. package/assets/assets/model-viewer-DDGWhTxL.js +3833 -0
  68. package/assets/assets/{pieDiagram-SKSYHLDU-CW-uoSdh.js → pieDiagram-SKSYHLDU-CrJaz2WI.js} +1 -1
  69. package/assets/assets/{python-C-3-QbwK.js → python-BThAKS5B.js} +2 -2
  70. package/assets/assets/{quadrantDiagram-337W2JSQ-DYJHGct0.js → quadrantDiagram-337W2JSQ-CT_Qyvwc.js} +1 -1
  71. package/assets/assets/{razor-Chr_8CBz.js → razor-DLLQQ61x.js} +2 -2
  72. package/assets/assets/{requirementDiagram-Z7DCOOCP-CPP37j1u.js → requirementDiagram-Z7DCOOCP-DgnbnU65.js} +1 -1
  73. package/assets/assets/{sankeyDiagram-WA2Y5GQK-CR3XkIpv.js → sankeyDiagram-WA2Y5GQK-ET7pXSx4.js} +1 -1
  74. package/assets/assets/select-DxXmJhya.js +1 -0
  75. package/assets/assets/{sequenceDiagram-2WXFIKYE-Bnohd9Fv.js → sequenceDiagram-2WXFIKYE-CUs-VZ-i.js} +1 -1
  76. package/assets/assets/{server-row-CNa7oSJP.js → server-row-CgIAM5UY.js} +1 -1
  77. package/assets/assets/session-fOsXx5rL.js +56 -0
  78. package/assets/assets/{stateDiagram-RAJIS63D-CB0R4FCc.js → stateDiagram-RAJIS63D-DLkjpkxR.js} +1 -1
  79. package/assets/assets/stateDiagram-v2-FVOUBMTO-CNJAyXac.js +1 -0
  80. package/assets/assets/{status-popover-body-uMa8Bn9c.js → status-popover-body-DTO1Nt0V.js} +2 -2
  81. package/assets/assets/{switch-CL32HGHZ.js → switch-D4TikNGe.js} +1 -1
  82. package/assets/assets/{tabs-CZnn31zT.js → tabs-b5kQDmsB.js} +1 -1
  83. package/assets/assets/{tag-BesgAeYC.js → tag-BHNb4BJv.js} +1 -1
  84. package/assets/assets/{timeline-definition-YZTLITO2-CD7NX9rm.js → timeline-definition-YZTLITO2-Bdm1whZ9.js} +1 -1
  85. package/assets/assets/{treemap-KZPCXAKY-Bh6w10Ud.js → treemap-KZPCXAKY-DpDSxMOl.js} +1 -1
  86. package/assets/assets/{trellis-badge-demo-CqiOUgc8.js → trellis-badge-demo-DYt0hA6f.js} +1 -1
  87. package/assets/assets/{tsMode-DYilYoTX.js → tsMode-BPLjiHaS.js} +2 -2
  88. package/assets/assets/{typescript-ph1gaxk6.js → typescript-CLDA3AC1.js} +2 -2
  89. package/assets/assets/{vennDiagram-LZ73GAT5-Duv_AXKw.js → vennDiagram-LZ73GAT5-CJrGY5gu.js} +1 -1
  90. package/assets/assets/xlsx-editor-D4RVmOqB.js +117 -0
  91. package/assets/assets/xlsx-editor-DU1FXj8L.css +1 -0
  92. package/assets/assets/{xml-BNJmaPif.js → xml-BSsdg4yg.js} +2 -2
  93. package/assets/assets/{xychartDiagram-JWTSCODW-DjL-6DIA.js → xychartDiagram-JWTSCODW-Bz5-rqDO.js} +1 -1
  94. package/assets/assets/{yaml-C510_XYu.js → yaml-CX9XdbT4.js} +2 -2
  95. package/assets/draco/gltf/draco_decoder.js +33 -0
  96. package/assets/draco/gltf/draco_decoder.wasm +0 -0
  97. package/assets/draco/gltf/draco_wasm_wrapper.js +116 -0
  98. package/assets/index.html +2 -2
  99. package/package.json +14 -15
  100. package/assets/assets/channel-1twDmWF2.js +0 -1
  101. package/assets/assets/chunk-VVM5DH6Z-DRRCzDvY.js +0 -1
  102. package/assets/assets/classDiagram-VBA2DB6C-BcB4nqxi.js +0 -1
  103. package/assets/assets/classDiagram-v2-RAHNMMFH-BcB4nqxi.js +0 -1
  104. package/assets/assets/clone-CMiPkeXL.js +0 -1
  105. package/assets/assets/dialog-connect-provider-DS4Df_nV.js +0 -2
  106. package/assets/assets/dialog-fork-C4HuDX5_.js +0 -1
  107. package/assets/assets/dialog-manage-models-DIcmdLM_.js +0 -1
  108. package/assets/assets/dialog-select-directory-CnQXgJvA.js +0 -6
  109. package/assets/assets/dialog-select-file-Dy7mFs0P.js +0 -1
  110. package/assets/assets/dialog-select-mcp-BncaZqkj.js +0 -1
  111. package/assets/assets/dialog-select-model-unpaid-plu6lOV5.js +0 -2
  112. package/assets/assets/dialog-select-server-DKKoy9W8.js +0 -1
  113. package/assets/assets/dialog-settings-BzHHLYeu.js +0 -1
  114. package/assets/assets/home-CD0uMsMv.js +0 -1
  115. package/assets/assets/index-Dn8Qszh4.js +0 -2593
  116. package/assets/assets/jobs-popover-Dkvv3LHy.js +0 -1
  117. package/assets/assets/list-dkB1NV7F.js +0 -1
  118. package/assets/assets/select-vXOPytkX.js +0 -1
  119. package/assets/assets/session-TangtQ_5.js +0 -26
  120. package/assets/assets/stateDiagram-v2-FVOUBMTO-BkEbSv0L.js +0 -1
  121. package/assets/assets/trellis-C8s_TygI.js +0 -880
  122. package/assets/assets/trellis-CZsWDIog.css +0 -6
@@ -1,4 +1,4 @@
1
- import{_ as w,E as ee,G as te,I as de,d as he,l as J,aV as P,b as pe,a as ue,p as fe,q as me,g as ge,s as ye,F as Se,aW as ve,y as xe}from"./mermaid.core-CvvapKs3.js";import{s as be}from"./chunk-KX2RTZJC-CR3J0asp.js";import{p as we}from"./chunk-4BX2VUAB-Bsl_oCUb.js";import{p as Ce}from"./treemap-KZPCXAKY-Bh6w10Ud.js";import{s as Y}from"./transform-BwXaE9hv.js";import{b as H}from"./defaultLocale-DX6XiGOO.js";import{o as Z}from"./ordinal-Cboi1Yqb.js";import"./index-Dn8Qszh4.js";import"./_baseUniq-Ff_gEw0V.js";import"./_basePickBy-CJ0iZZpY.js";import"./clone-CMiPkeXL.js";import"./init-Gi6I4Gst.js";function Te(e){var a=0,n=e.children,l=n&&n.length;if(!l)a=1;else for(;--l>=0;)a+=n[l].value;e.value=a}function Le(){return this.eachAfter(Te)}function $e(e,a){let n=-1;for(const l of this)e.call(a,l,++n,this);return this}function Ae(e,a){for(var n=this,l=[n],o,i,d=-1;n=l.pop();)if(e.call(a,n,++d,this),o=n.children)for(i=o.length-1;i>=0;--i)l.push(o[i]);return this}function Fe(e,a){for(var n=this,l=[n],o=[],i,d,h,m=-1;n=l.pop();)if(o.push(n),i=n.children)for(d=0,h=i.length;d<h;++d)l.push(i[d]);for(;n=o.pop();)e.call(a,n,++m,this);return this}function ke(e,a){let n=-1;for(const l of this)if(e.call(a,l,++n,this))return l}function Ne(e){return this.eachAfter(function(a){for(var n=+e(a.data)||0,l=a.children,o=l&&l.length;--o>=0;)n+=l[o].value;a.value=n})}function Me(e){return this.eachBefore(function(a){a.children&&a.children.sort(e)})}function _e(e){for(var a=this,n=ze(a,e),l=[a];a!==n;)a=a.parent,l.push(a);for(var o=l.length;e!==n;)l.splice(o,0,e),e=e.parent;return l}function ze(e,a){if(e===a)return e;var n=e.ancestors(),l=a.ancestors(),o=null;for(e=n.pop(),a=l.pop();e===a;)o=e,e=n.pop(),a=l.pop();return o}function Ve(){for(var e=this,a=[e];e=e.parent;)a.push(e);return a}function De(){return Array.from(this)}function Pe(){var e=[];return this.eachBefore(function(a){a.children||e.push(a)}),e}function Be(){var e=this,a=[];return e.each(function(n){n!==e&&a.push({source:n.parent,target:n})}),a}function*Ee(){var e=this,a,n=[e],l,o,i;do for(a=n.reverse(),n=[];e=a.pop();)if(yield e,l=e.children)for(o=0,i=l.length;o<i;++o)n.push(l[o]);while(n.length)}function K(e,a){e instanceof Map?(e=[void 0,e],a===void 0&&(a=Ie)):a===void 0&&(a=We);for(var n=new j(e),l,o=[n],i,d,h,m;l=o.pop();)if((d=a(l.data))&&(m=(d=Array.from(d)).length))for(l.children=d,h=m-1;h>=0;--h)o.push(i=d[h]=new j(d[h])),i.parent=l,i.depth=l.depth+1;return n.eachBefore(Oe)}function Re(){return K(this).eachBefore(He)}function We(e){return e.children}function Ie(e){return Array.isArray(e)?e[1]:null}function He(e){e.data.value!==void 0&&(e.value=e.data.value),e.data=e.data.data}function Oe(e){var a=0;do e.height=a;while((e=e.parent)&&e.height<++a)}function j(e){this.data=e,this.depth=this.height=0,this.parent=null}j.prototype=K.prototype={constructor:j,count:Le,each:$e,eachAfter:Fe,eachBefore:Ae,find:ke,sum:Ne,sort:Me,path:_e,ancestors:Ve,descendants:De,leaves:Pe,links:Be,copy:Re,[Symbol.iterator]:Ee};function Ge(e){if(typeof e!="function")throw new Error;return e}function O(){return 0}function G(e){return function(){return e}}function qe(e){e.x0=Math.round(e.x0),e.y0=Math.round(e.y0),e.x1=Math.round(e.x1),e.y1=Math.round(e.y1)}function Xe(e,a,n,l,o){for(var i=e.children,d,h=-1,m=i.length,c=e.value&&(l-a)/e.value;++h<m;)d=i[h],d.y0=n,d.y1=o,d.x0=a,d.x1=a+=d.value*c}function Ye(e,a,n,l,o){for(var i=e.children,d,h=-1,m=i.length,c=e.value&&(o-n)/e.value;++h<m;)d=i[h],d.x0=a,d.x1=l,d.y0=n,d.y1=n+=d.value*c}var je=(1+Math.sqrt(5))/2;function Ue(e,a,n,l,o,i){for(var d=[],h=a.children,m,c,p=0,b=0,r=h.length,x,S,v=a.value,u,g,N,k,V,E,M;p<r;){x=o-n,S=i-l;do u=h[b++].value;while(!u&&b<r);for(g=N=u,E=Math.max(S/x,x/S)/(v*e),M=u*u*E,V=Math.max(N/M,M/g);b<r;++b){if(u+=c=h[b].value,c<g&&(g=c),c>N&&(N=c),M=u*u*E,k=Math.max(N/M,M/g),k>V){u-=c;break}V=k}d.push(m={value:u,dice:x<S,children:h.slice(p,b)}),m.dice?Xe(m,n,l,o,v?l+=S*u/v:i):Ye(m,n,l,v?n+=x*u/v:o,i),v-=u,p=b}return d}const Ze=(function e(a){function n(l,o,i,d,h){Ue(a,l,o,i,d,h)}return n.ratio=function(l){return e((l=+l)>1?l:1)},n})(je);function Je(){var e=Ze,a=!1,n=1,l=1,o=[0],i=O,d=O,h=O,m=O,c=O;function p(r){return r.x0=r.y0=0,r.x1=n,r.y1=l,r.eachBefore(b),o=[0],a&&r.eachBefore(qe),r}function b(r){var x=o[r.depth],S=r.x0+x,v=r.y0+x,u=r.x1-x,g=r.y1-x;u<S&&(S=u=(S+u)/2),g<v&&(v=g=(v+g)/2),r.x0=S,r.y0=v,r.x1=u,r.y1=g,r.children&&(x=o[r.depth+1]=i(r)/2,S+=c(r)-x,v+=d(r)-x,u-=h(r)-x,g-=m(r)-x,u<S&&(S=u=(S+u)/2),g<v&&(v=g=(v+g)/2),e(r,S,v,u,g))}return p.round=function(r){return arguments.length?(a=!!r,p):a},p.size=function(r){return arguments.length?(n=+r[0],l=+r[1],p):[n,l]},p.tile=function(r){return arguments.length?(e=Ge(r),p):e},p.padding=function(r){return arguments.length?p.paddingInner(r).paddingOuter(r):p.paddingInner()},p.paddingInner=function(r){return arguments.length?(i=typeof r=="function"?r:G(+r),p):i},p.paddingOuter=function(r){return arguments.length?p.paddingTop(r).paddingRight(r).paddingBottom(r).paddingLeft(r):p.paddingTop()},p.paddingTop=function(r){return arguments.length?(d=typeof r=="function"?r:G(+r),p):d},p.paddingRight=function(r){return arguments.length?(h=typeof r=="function"?r:G(+r),p):h},p.paddingBottom=function(r){return arguments.length?(m=typeof r=="function"?r:G(+r),p):m},p.paddingLeft=function(r){return arguments.length?(c=typeof r=="function"?r:G(+r),p):c},p}var ae=class{constructor(){this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.setAccTitle=pe,this.getAccTitle=ue,this.setDiagramTitle=fe,this.getDiagramTitle=me,this.getAccDescription=ge,this.setAccDescription=ye}static{w(this,"TreeMapDB")}getNodes(){return this.nodes}getConfig(){const e=Se,a=te();return ee({...e.treemap,...a.treemap??{}})}addNode(e,a){this.nodes.push(e),this.levels.set(e,a),a===0&&(this.outerNodes.push(e),this.root??=e)}getRoot(){return{name:"",children:this.outerNodes}}addClass(e,a){const n=this.classes.get(e)??{id:e,styles:[],textStyles:[]},l=a.replace(/\\,/g,"§§§").replace(/,/g,";").replace(/§§§/g,",").split(";");l&&l.forEach(o=>{ve(o)&&(n?.textStyles?n.textStyles.push(o):n.textStyles=[o]),n?.styles?n.styles.push(o):n.styles=[o]}),this.classes.set(e,n)}getClasses(){return this.classes}getStylesForClass(e){return this.classes.get(e)?.styles??[]}clear(){xe(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}};function ne(e){if(!e.length)return[];const a=[],n=[];return e.forEach(l=>{const o={name:l.name,children:l.type==="Leaf"?void 0:[]};for(o.classSelector=l?.classSelector,l?.cssCompiledStyles&&(o.cssCompiledStyles=l.cssCompiledStyles),l.type==="Leaf"&&l.value!==void 0&&(o.value=l.value);n.length>0&&n[n.length-1].level>=l.level;)n.pop();if(n.length===0)a.push(o);else{const i=n[n.length-1].node;i.children?i.children.push(o):i.children=[o]}l.type!=="Leaf"&&n.push({node:o,level:l.level})}),a}w(ne,"buildHierarchy");var Ke=w((e,a)=>{we(e,a);const n=[];for(const i of e.TreemapRows??[])i.$type==="ClassDefStatement"&&a.addClass(i.className??"",i.styleText??"");for(const i of e.TreemapRows??[]){const d=i.item;if(!d)continue;const h=i.indent?parseInt(i.indent):0,m=Qe(d),c=d.classSelector?a.getStylesForClass(d.classSelector):[],p=c.length>0?c:void 0,b={level:h,name:m,type:d.$type,value:d.value,classSelector:d.classSelector,cssCompiledStyles:p};n.push(b)}const l=ne(n),o=w((i,d)=>{for(const h of i)a.addNode(h,d),h.children&&h.children.length>0&&o(h.children,d+1)},"addNodesRecursively");o(l,0)},"populate"),Qe=w(e=>e.name?String(e.name):"","getItemName"),le={parser:{yy:void 0},parse:w(async e=>{try{const n=await Ce("treemap",e);J.debug("Treemap AST:",n);const l=le.parser?.yy;if(!(l instanceof ae))throw new Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Ke(n,l)}catch(a){throw J.error("Error parsing treemap:",a),a}},"parse")},et=10,B=10,q=25,tt=w((e,a,n,l)=>{const o=l.db,i=o.getConfig(),d=i.padding??et,h=o.getDiagramTitle(),m=o.getRoot(),{themeVariables:c}=te();if(!m)return;const p=h?30:0,b=de(a),r=i.nodeWidth?i.nodeWidth*B:960,x=i.nodeHeight?i.nodeHeight*B:500,S=r,v=x+p;b.attr("viewBox",`0 0 ${S} ${v}`),he(b,v,S,i.useMaxWidth);let u;try{const t=i.valueFormat||",";if(t==="$0,0")u=w(s=>"$"+H(",")(s),"valueFormat");else if(t.startsWith("$")&&t.includes(",")){const s=/\.\d+/.exec(t),f=s?s[0]:"";u=w(C=>"$"+H(","+f)(C),"valueFormat")}else if(t.startsWith("$")){const s=t.substring(1);u=w(f=>"$"+H(s||"")(f),"valueFormat")}else u=H(t)}catch(t){J.error("Error creating format function:",t),u=H(",")}const g=Z().range(["transparent",c.cScale0,c.cScale1,c.cScale2,c.cScale3,c.cScale4,c.cScale5,c.cScale6,c.cScale7,c.cScale8,c.cScale9,c.cScale10,c.cScale11]),N=Z().range(["transparent",c.cScalePeer0,c.cScalePeer1,c.cScalePeer2,c.cScalePeer3,c.cScalePeer4,c.cScalePeer5,c.cScalePeer6,c.cScalePeer7,c.cScalePeer8,c.cScalePeer9,c.cScalePeer10,c.cScalePeer11]),k=Z().range([c.cScaleLabel0,c.cScaleLabel1,c.cScaleLabel2,c.cScaleLabel3,c.cScaleLabel4,c.cScaleLabel5,c.cScaleLabel6,c.cScaleLabel7,c.cScaleLabel8,c.cScaleLabel9,c.cScaleLabel10,c.cScaleLabel11]);h&&b.append("text").attr("x",S/2).attr("y",p/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(h);const V=b.append("g").attr("transform",`translate(0, ${p})`).attr("class","treemapContainer"),E=K(m).sum(t=>t.value??0).sort((t,s)=>(s.value??0)-(t.value??0)),Q=Je().size([r,x]).paddingTop(t=>t.children&&t.children.length>0?q+B:0).paddingInner(d).paddingLeft(t=>t.children&&t.children.length>0?B:0).paddingRight(t=>t.children&&t.children.length>0?B:0).paddingBottom(t=>t.children&&t.children.length>0?B:0).round(!0)(E),re=Q.descendants().filter(t=>t.children&&t.children.length>0),R=V.selectAll(".treemapSection").data(re).enter().append("g").attr("class","treemapSection").attr("transform",t=>`translate(${t.x0},${t.y0})`);R.append("rect").attr("width",t=>t.x1-t.x0).attr("height",q).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",.6).attr("stroke-width",.6).attr("style",t=>t.depth===0?"display: none;":""),R.append("clipPath").attr("id",(t,s)=>`clip-section-${a}-${s}`).append("rect").attr("width",t=>Math.max(0,t.x1-t.x0-12)).attr("height",q),R.append("rect").attr("width",t=>t.x1-t.x0).attr("height",t=>t.y1-t.y0).attr("class",(t,s)=>`treemapSection section${s}`).attr("fill",t=>g(t.data.name)).attr("fill-opacity",.6).attr("stroke",t=>N(t.data.name)).attr("stroke-width",2).attr("stroke-opacity",.4).attr("style",t=>{if(t.depth===0)return"display: none;";const s=P({cssCompiledStyles:t.data.cssCompiledStyles});return s.nodeStyles+";"+s.borderStyles.join(";")}),R.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",q/2).attr("dominant-baseline","middle").text(t=>t.depth===0?"":t.data.name).attr("font-weight","bold").attr("style",t=>{if(t.depth===0)return"display: none;";const s="dominant-baseline: middle; font-size: 12px; fill:"+k(t.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",f=P({cssCompiledStyles:t.data.cssCompiledStyles});return s+f.labelStyles.replace("color:","fill:")}).each(function(t){if(t.depth===0)return;const s=Y(this),f=t.data.name;s.text(f);const C=t.x1-t.x0,L=6;let $;i.showValues!==!1&&t.value?$=C-10-30-10-L:$=C-L-6;const A=Math.max(15,$),y=s.node();if(y.getComputedTextLength()>A){let T=f;for(;T.length>0;){if(T=f.substring(0,T.length-1),T.length===0){s.text("..."),y.getComputedTextLength()>A&&s.text("");break}if(s.text(T+"..."),y.getComputedTextLength()<=A)break}}}),i.showValues!==!1&&R.append("text").attr("class","treemapSectionValue").attr("x",t=>t.x1-t.x0-10).attr("y",q/2).attr("text-anchor","end").attr("dominant-baseline","middle").text(t=>t.value?u(t.value):"").attr("font-style","italic").attr("style",t=>{if(t.depth===0)return"display: none;";const s="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+k(t.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",f=P({cssCompiledStyles:t.data.cssCompiledStyles});return s+f.labelStyles.replace("color:","fill:")});const se=Q.leaves(),X=V.selectAll(".treemapLeafGroup").data(se).enter().append("g").attr("class",(t,s)=>`treemapNode treemapLeafGroup leaf${s}${t.data.classSelector?` ${t.data.classSelector}`:""}x`).attr("transform",t=>`translate(${t.x0},${t.y0})`);X.append("rect").attr("width",t=>t.x1-t.x0).attr("height",t=>t.y1-t.y0).attr("class","treemapLeaf").attr("fill",t=>t.parent?g(t.parent.data.name):g(t.data.name)).attr("style",t=>P({cssCompiledStyles:t.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",.3).attr("stroke",t=>t.parent?g(t.parent.data.name):g(t.data.name)).attr("stroke-width",3),X.append("clipPath").attr("id",(t,s)=>`clip-${a}-${s}`).append("rect").attr("width",t=>Math.max(0,t.x1-t.x0-4)).attr("height",t=>Math.max(0,t.y1-t.y0-4)),X.append("text").attr("class","treemapLabel").attr("x",t=>(t.x1-t.x0)/2).attr("y",t=>(t.y1-t.y0)/2).attr("style",t=>{const s="text-anchor: middle; dominant-baseline: middle; font-size: 38px;fill:"+k(t.data.name)+";",f=P({cssCompiledStyles:t.data.cssCompiledStyles});return s+f.labelStyles.replace("color:","fill:")}).attr("clip-path",(t,s)=>`url(#clip-${a}-${s})`).text(t=>t.data.name).each(function(t){const s=Y(this),f=t.x1-t.x0,C=t.y1-t.y0,L=s.node(),$=4,D=f-2*$,A=C-2*$;if(D<10||A<10){s.style("display","none");return}let y=parseInt(s.style("font-size"),10);const _=8,F=28,T=.6,z=6,W=2;for(;L.getComputedTextLength()>D&&y>_;)y--,s.style("font-size",`${y}px`);let I=Math.max(z,Math.min(F,Math.round(y*T))),U=y+W+I;for(;U>A&&y>_&&(y--,I=Math.max(z,Math.min(F,Math.round(y*T))),!(I<z&&y===_));)s.style("font-size",`${y}px`),U=y+W+I;s.style("font-size",`${y}px`),(L.getComputedTextLength()>D||y<_||A<y)&&s.style("display","none")}),i.showValues!==!1&&X.append("text").attr("class","treemapValue").attr("x",s=>(s.x1-s.x0)/2).attr("y",function(s){return(s.y1-s.y0)/2}).attr("style",s=>{const f="text-anchor: middle; dominant-baseline: hanging; font-size: 28px;fill:"+k(s.data.name)+";",C=P({cssCompiledStyles:s.data.cssCompiledStyles});return f+C.labelStyles.replace("color:","fill:")}).attr("clip-path",(s,f)=>`url(#clip-${a}-${f})`).text(s=>s.value?u(s.value):"").each(function(s){const f=Y(this),C=this.parentNode;if(!C){f.style("display","none");return}const L=Y(C).select(".treemapLabel");if(L.empty()||L.style("display")==="none"){f.style("display","none");return}const $=parseFloat(L.style("font-size")),D=28,A=.6,y=6,_=2,F=Math.max(y,Math.min(D,Math.round($*A)));f.style("font-size",`${F}px`);const z=(s.y1-s.y0)/2+$/2+_;f.attr("y",z);const W=s.x1-s.x0,oe=s.y1-s.y0-4,ce=W-8;f.node().getComputedTextLength()>ce||z+F>oe||F<y?f.style("display","none"):f.style("display",null)});const ie=i.diagramPadding??8;be(b,ie,"flowchart",i?.useMaxWidth||!1)},"draw"),at=w(function(e,a){return a.db.getClasses()},"getClasses"),nt={draw:tt,getClasses:at},lt={sectionStrokeColor:"black",sectionStrokeWidth:"1",sectionFillColor:"#efefef",leafStrokeColor:"black",leafStrokeWidth:"1",leafFillColor:"#efefef",labelColor:"black",labelFontSize:"12px",valueFontSize:"10px",valueColor:"black",titleColor:"black",titleFontSize:"14px"},rt=w(({treemap:e}={})=>{const a=ee(lt,e);return`
1
+ import{_ as w,E as ee,G as te,I as de,d as he,l as J,aV as P,b as pe,a as ue,p as fe,q as me,g as ge,s as ye,F as Se,aW as ve,y as xe}from"./mermaid.core-CVIbZZUN.js";import{s as be}from"./chunk-KX2RTZJC-B8M8Fcgs.js";import{p as we}from"./chunk-4BX2VUAB-LvGb37pZ.js";import{p as Ce}from"./treemap-KZPCXAKY-DpDSxMOl.js";import{s as Y}from"./transform-BwXaE9hv.js";import{b as H}from"./defaultLocale-DX6XiGOO.js";import{o as Z}from"./ordinal-Cboi1Yqb.js";import"./index-DMyAFOcC.js";import"./_baseUniq-CgruQt5X.js";import"./_basePickBy-BuV5p9OF.js";import"./clone-g65k7nys.js";import"./init-Gi6I4Gst.js";function Te(e){var a=0,n=e.children,l=n&&n.length;if(!l)a=1;else for(;--l>=0;)a+=n[l].value;e.value=a}function Le(){return this.eachAfter(Te)}function $e(e,a){let n=-1;for(const l of this)e.call(a,l,++n,this);return this}function Ae(e,a){for(var n=this,l=[n],o,i,d=-1;n=l.pop();)if(e.call(a,n,++d,this),o=n.children)for(i=o.length-1;i>=0;--i)l.push(o[i]);return this}function Fe(e,a){for(var n=this,l=[n],o=[],i,d,h,m=-1;n=l.pop();)if(o.push(n),i=n.children)for(d=0,h=i.length;d<h;++d)l.push(i[d]);for(;n=o.pop();)e.call(a,n,++m,this);return this}function ke(e,a){let n=-1;for(const l of this)if(e.call(a,l,++n,this))return l}function Ne(e){return this.eachAfter(function(a){for(var n=+e(a.data)||0,l=a.children,o=l&&l.length;--o>=0;)n+=l[o].value;a.value=n})}function Me(e){return this.eachBefore(function(a){a.children&&a.children.sort(e)})}function _e(e){for(var a=this,n=ze(a,e),l=[a];a!==n;)a=a.parent,l.push(a);for(var o=l.length;e!==n;)l.splice(o,0,e),e=e.parent;return l}function ze(e,a){if(e===a)return e;var n=e.ancestors(),l=a.ancestors(),o=null;for(e=n.pop(),a=l.pop();e===a;)o=e,e=n.pop(),a=l.pop();return o}function Ve(){for(var e=this,a=[e];e=e.parent;)a.push(e);return a}function De(){return Array.from(this)}function Pe(){var e=[];return this.eachBefore(function(a){a.children||e.push(a)}),e}function Be(){var e=this,a=[];return e.each(function(n){n!==e&&a.push({source:n.parent,target:n})}),a}function*Ee(){var e=this,a,n=[e],l,o,i;do for(a=n.reverse(),n=[];e=a.pop();)if(yield e,l=e.children)for(o=0,i=l.length;o<i;++o)n.push(l[o]);while(n.length)}function K(e,a){e instanceof Map?(e=[void 0,e],a===void 0&&(a=Ie)):a===void 0&&(a=We);for(var n=new j(e),l,o=[n],i,d,h,m;l=o.pop();)if((d=a(l.data))&&(m=(d=Array.from(d)).length))for(l.children=d,h=m-1;h>=0;--h)o.push(i=d[h]=new j(d[h])),i.parent=l,i.depth=l.depth+1;return n.eachBefore(Oe)}function Re(){return K(this).eachBefore(He)}function We(e){return e.children}function Ie(e){return Array.isArray(e)?e[1]:null}function He(e){e.data.value!==void 0&&(e.value=e.data.value),e.data=e.data.data}function Oe(e){var a=0;do e.height=a;while((e=e.parent)&&e.height<++a)}function j(e){this.data=e,this.depth=this.height=0,this.parent=null}j.prototype=K.prototype={constructor:j,count:Le,each:$e,eachAfter:Fe,eachBefore:Ae,find:ke,sum:Ne,sort:Me,path:_e,ancestors:Ve,descendants:De,leaves:Pe,links:Be,copy:Re,[Symbol.iterator]:Ee};function Ge(e){if(typeof e!="function")throw new Error;return e}function O(){return 0}function G(e){return function(){return e}}function qe(e){e.x0=Math.round(e.x0),e.y0=Math.round(e.y0),e.x1=Math.round(e.x1),e.y1=Math.round(e.y1)}function Xe(e,a,n,l,o){for(var i=e.children,d,h=-1,m=i.length,c=e.value&&(l-a)/e.value;++h<m;)d=i[h],d.y0=n,d.y1=o,d.x0=a,d.x1=a+=d.value*c}function Ye(e,a,n,l,o){for(var i=e.children,d,h=-1,m=i.length,c=e.value&&(o-n)/e.value;++h<m;)d=i[h],d.x0=a,d.x1=l,d.y0=n,d.y1=n+=d.value*c}var je=(1+Math.sqrt(5))/2;function Ue(e,a,n,l,o,i){for(var d=[],h=a.children,m,c,p=0,b=0,r=h.length,x,S,v=a.value,u,g,N,k,V,E,M;p<r;){x=o-n,S=i-l;do u=h[b++].value;while(!u&&b<r);for(g=N=u,E=Math.max(S/x,x/S)/(v*e),M=u*u*E,V=Math.max(N/M,M/g);b<r;++b){if(u+=c=h[b].value,c<g&&(g=c),c>N&&(N=c),M=u*u*E,k=Math.max(N/M,M/g),k>V){u-=c;break}V=k}d.push(m={value:u,dice:x<S,children:h.slice(p,b)}),m.dice?Xe(m,n,l,o,v?l+=S*u/v:i):Ye(m,n,l,v?n+=x*u/v:o,i),v-=u,p=b}return d}const Ze=(function e(a){function n(l,o,i,d,h){Ue(a,l,o,i,d,h)}return n.ratio=function(l){return e((l=+l)>1?l:1)},n})(je);function Je(){var e=Ze,a=!1,n=1,l=1,o=[0],i=O,d=O,h=O,m=O,c=O;function p(r){return r.x0=r.y0=0,r.x1=n,r.y1=l,r.eachBefore(b),o=[0],a&&r.eachBefore(qe),r}function b(r){var x=o[r.depth],S=r.x0+x,v=r.y0+x,u=r.x1-x,g=r.y1-x;u<S&&(S=u=(S+u)/2),g<v&&(v=g=(v+g)/2),r.x0=S,r.y0=v,r.x1=u,r.y1=g,r.children&&(x=o[r.depth+1]=i(r)/2,S+=c(r)-x,v+=d(r)-x,u-=h(r)-x,g-=m(r)-x,u<S&&(S=u=(S+u)/2),g<v&&(v=g=(v+g)/2),e(r,S,v,u,g))}return p.round=function(r){return arguments.length?(a=!!r,p):a},p.size=function(r){return arguments.length?(n=+r[0],l=+r[1],p):[n,l]},p.tile=function(r){return arguments.length?(e=Ge(r),p):e},p.padding=function(r){return arguments.length?p.paddingInner(r).paddingOuter(r):p.paddingInner()},p.paddingInner=function(r){return arguments.length?(i=typeof r=="function"?r:G(+r),p):i},p.paddingOuter=function(r){return arguments.length?p.paddingTop(r).paddingRight(r).paddingBottom(r).paddingLeft(r):p.paddingTop()},p.paddingTop=function(r){return arguments.length?(d=typeof r=="function"?r:G(+r),p):d},p.paddingRight=function(r){return arguments.length?(h=typeof r=="function"?r:G(+r),p):h},p.paddingBottom=function(r){return arguments.length?(m=typeof r=="function"?r:G(+r),p):m},p.paddingLeft=function(r){return arguments.length?(c=typeof r=="function"?r:G(+r),p):c},p}var ae=class{constructor(){this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.setAccTitle=pe,this.getAccTitle=ue,this.setDiagramTitle=fe,this.getDiagramTitle=me,this.getAccDescription=ge,this.setAccDescription=ye}static{w(this,"TreeMapDB")}getNodes(){return this.nodes}getConfig(){const e=Se,a=te();return ee({...e.treemap,...a.treemap??{}})}addNode(e,a){this.nodes.push(e),this.levels.set(e,a),a===0&&(this.outerNodes.push(e),this.root??=e)}getRoot(){return{name:"",children:this.outerNodes}}addClass(e,a){const n=this.classes.get(e)??{id:e,styles:[],textStyles:[]},l=a.replace(/\\,/g,"§§§").replace(/,/g,";").replace(/§§§/g,",").split(";");l&&l.forEach(o=>{ve(o)&&(n?.textStyles?n.textStyles.push(o):n.textStyles=[o]),n?.styles?n.styles.push(o):n.styles=[o]}),this.classes.set(e,n)}getClasses(){return this.classes}getStylesForClass(e){return this.classes.get(e)?.styles??[]}clear(){xe(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}};function ne(e){if(!e.length)return[];const a=[],n=[];return e.forEach(l=>{const o={name:l.name,children:l.type==="Leaf"?void 0:[]};for(o.classSelector=l?.classSelector,l?.cssCompiledStyles&&(o.cssCompiledStyles=l.cssCompiledStyles),l.type==="Leaf"&&l.value!==void 0&&(o.value=l.value);n.length>0&&n[n.length-1].level>=l.level;)n.pop();if(n.length===0)a.push(o);else{const i=n[n.length-1].node;i.children?i.children.push(o):i.children=[o]}l.type!=="Leaf"&&n.push({node:o,level:l.level})}),a}w(ne,"buildHierarchy");var Ke=w((e,a)=>{we(e,a);const n=[];for(const i of e.TreemapRows??[])i.$type==="ClassDefStatement"&&a.addClass(i.className??"",i.styleText??"");for(const i of e.TreemapRows??[]){const d=i.item;if(!d)continue;const h=i.indent?parseInt(i.indent):0,m=Qe(d),c=d.classSelector?a.getStylesForClass(d.classSelector):[],p=c.length>0?c:void 0,b={level:h,name:m,type:d.$type,value:d.value,classSelector:d.classSelector,cssCompiledStyles:p};n.push(b)}const l=ne(n),o=w((i,d)=>{for(const h of i)a.addNode(h,d),h.children&&h.children.length>0&&o(h.children,d+1)},"addNodesRecursively");o(l,0)},"populate"),Qe=w(e=>e.name?String(e.name):"","getItemName"),le={parser:{yy:void 0},parse:w(async e=>{try{const n=await Ce("treemap",e);J.debug("Treemap AST:",n);const l=le.parser?.yy;if(!(l instanceof ae))throw new Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Ke(n,l)}catch(a){throw J.error("Error parsing treemap:",a),a}},"parse")},et=10,B=10,q=25,tt=w((e,a,n,l)=>{const o=l.db,i=o.getConfig(),d=i.padding??et,h=o.getDiagramTitle(),m=o.getRoot(),{themeVariables:c}=te();if(!m)return;const p=h?30:0,b=de(a),r=i.nodeWidth?i.nodeWidth*B:960,x=i.nodeHeight?i.nodeHeight*B:500,S=r,v=x+p;b.attr("viewBox",`0 0 ${S} ${v}`),he(b,v,S,i.useMaxWidth);let u;try{const t=i.valueFormat||",";if(t==="$0,0")u=w(s=>"$"+H(",")(s),"valueFormat");else if(t.startsWith("$")&&t.includes(",")){const s=/\.\d+/.exec(t),f=s?s[0]:"";u=w(C=>"$"+H(","+f)(C),"valueFormat")}else if(t.startsWith("$")){const s=t.substring(1);u=w(f=>"$"+H(s||"")(f),"valueFormat")}else u=H(t)}catch(t){J.error("Error creating format function:",t),u=H(",")}const g=Z().range(["transparent",c.cScale0,c.cScale1,c.cScale2,c.cScale3,c.cScale4,c.cScale5,c.cScale6,c.cScale7,c.cScale8,c.cScale9,c.cScale10,c.cScale11]),N=Z().range(["transparent",c.cScalePeer0,c.cScalePeer1,c.cScalePeer2,c.cScalePeer3,c.cScalePeer4,c.cScalePeer5,c.cScalePeer6,c.cScalePeer7,c.cScalePeer8,c.cScalePeer9,c.cScalePeer10,c.cScalePeer11]),k=Z().range([c.cScaleLabel0,c.cScaleLabel1,c.cScaleLabel2,c.cScaleLabel3,c.cScaleLabel4,c.cScaleLabel5,c.cScaleLabel6,c.cScaleLabel7,c.cScaleLabel8,c.cScaleLabel9,c.cScaleLabel10,c.cScaleLabel11]);h&&b.append("text").attr("x",S/2).attr("y",p/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(h);const V=b.append("g").attr("transform",`translate(0, ${p})`).attr("class","treemapContainer"),E=K(m).sum(t=>t.value??0).sort((t,s)=>(s.value??0)-(t.value??0)),Q=Je().size([r,x]).paddingTop(t=>t.children&&t.children.length>0?q+B:0).paddingInner(d).paddingLeft(t=>t.children&&t.children.length>0?B:0).paddingRight(t=>t.children&&t.children.length>0?B:0).paddingBottom(t=>t.children&&t.children.length>0?B:0).round(!0)(E),re=Q.descendants().filter(t=>t.children&&t.children.length>0),R=V.selectAll(".treemapSection").data(re).enter().append("g").attr("class","treemapSection").attr("transform",t=>`translate(${t.x0},${t.y0})`);R.append("rect").attr("width",t=>t.x1-t.x0).attr("height",q).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",.6).attr("stroke-width",.6).attr("style",t=>t.depth===0?"display: none;":""),R.append("clipPath").attr("id",(t,s)=>`clip-section-${a}-${s}`).append("rect").attr("width",t=>Math.max(0,t.x1-t.x0-12)).attr("height",q),R.append("rect").attr("width",t=>t.x1-t.x0).attr("height",t=>t.y1-t.y0).attr("class",(t,s)=>`treemapSection section${s}`).attr("fill",t=>g(t.data.name)).attr("fill-opacity",.6).attr("stroke",t=>N(t.data.name)).attr("stroke-width",2).attr("stroke-opacity",.4).attr("style",t=>{if(t.depth===0)return"display: none;";const s=P({cssCompiledStyles:t.data.cssCompiledStyles});return s.nodeStyles+";"+s.borderStyles.join(";")}),R.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",q/2).attr("dominant-baseline","middle").text(t=>t.depth===0?"":t.data.name).attr("font-weight","bold").attr("style",t=>{if(t.depth===0)return"display: none;";const s="dominant-baseline: middle; font-size: 12px; fill:"+k(t.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",f=P({cssCompiledStyles:t.data.cssCompiledStyles});return s+f.labelStyles.replace("color:","fill:")}).each(function(t){if(t.depth===0)return;const s=Y(this),f=t.data.name;s.text(f);const C=t.x1-t.x0,L=6;let $;i.showValues!==!1&&t.value?$=C-10-30-10-L:$=C-L-6;const A=Math.max(15,$),y=s.node();if(y.getComputedTextLength()>A){let T=f;for(;T.length>0;){if(T=f.substring(0,T.length-1),T.length===0){s.text("..."),y.getComputedTextLength()>A&&s.text("");break}if(s.text(T+"..."),y.getComputedTextLength()<=A)break}}}),i.showValues!==!1&&R.append("text").attr("class","treemapSectionValue").attr("x",t=>t.x1-t.x0-10).attr("y",q/2).attr("text-anchor","end").attr("dominant-baseline","middle").text(t=>t.value?u(t.value):"").attr("font-style","italic").attr("style",t=>{if(t.depth===0)return"display: none;";const s="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+k(t.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",f=P({cssCompiledStyles:t.data.cssCompiledStyles});return s+f.labelStyles.replace("color:","fill:")});const se=Q.leaves(),X=V.selectAll(".treemapLeafGroup").data(se).enter().append("g").attr("class",(t,s)=>`treemapNode treemapLeafGroup leaf${s}${t.data.classSelector?` ${t.data.classSelector}`:""}x`).attr("transform",t=>`translate(${t.x0},${t.y0})`);X.append("rect").attr("width",t=>t.x1-t.x0).attr("height",t=>t.y1-t.y0).attr("class","treemapLeaf").attr("fill",t=>t.parent?g(t.parent.data.name):g(t.data.name)).attr("style",t=>P({cssCompiledStyles:t.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",.3).attr("stroke",t=>t.parent?g(t.parent.data.name):g(t.data.name)).attr("stroke-width",3),X.append("clipPath").attr("id",(t,s)=>`clip-${a}-${s}`).append("rect").attr("width",t=>Math.max(0,t.x1-t.x0-4)).attr("height",t=>Math.max(0,t.y1-t.y0-4)),X.append("text").attr("class","treemapLabel").attr("x",t=>(t.x1-t.x0)/2).attr("y",t=>(t.y1-t.y0)/2).attr("style",t=>{const s="text-anchor: middle; dominant-baseline: middle; font-size: 38px;fill:"+k(t.data.name)+";",f=P({cssCompiledStyles:t.data.cssCompiledStyles});return s+f.labelStyles.replace("color:","fill:")}).attr("clip-path",(t,s)=>`url(#clip-${a}-${s})`).text(t=>t.data.name).each(function(t){const s=Y(this),f=t.x1-t.x0,C=t.y1-t.y0,L=s.node(),$=4,D=f-2*$,A=C-2*$;if(D<10||A<10){s.style("display","none");return}let y=parseInt(s.style("font-size"),10);const _=8,F=28,T=.6,z=6,W=2;for(;L.getComputedTextLength()>D&&y>_;)y--,s.style("font-size",`${y}px`);let I=Math.max(z,Math.min(F,Math.round(y*T))),U=y+W+I;for(;U>A&&y>_&&(y--,I=Math.max(z,Math.min(F,Math.round(y*T))),!(I<z&&y===_));)s.style("font-size",`${y}px`),U=y+W+I;s.style("font-size",`${y}px`),(L.getComputedTextLength()>D||y<_||A<y)&&s.style("display","none")}),i.showValues!==!1&&X.append("text").attr("class","treemapValue").attr("x",s=>(s.x1-s.x0)/2).attr("y",function(s){return(s.y1-s.y0)/2}).attr("style",s=>{const f="text-anchor: middle; dominant-baseline: hanging; font-size: 28px;fill:"+k(s.data.name)+";",C=P({cssCompiledStyles:s.data.cssCompiledStyles});return f+C.labelStyles.replace("color:","fill:")}).attr("clip-path",(s,f)=>`url(#clip-${a}-${f})`).text(s=>s.value?u(s.value):"").each(function(s){const f=Y(this),C=this.parentNode;if(!C){f.style("display","none");return}const L=Y(C).select(".treemapLabel");if(L.empty()||L.style("display")==="none"){f.style("display","none");return}const $=parseFloat(L.style("font-size")),D=28,A=.6,y=6,_=2,F=Math.max(y,Math.min(D,Math.round($*A)));f.style("font-size",`${F}px`);const z=(s.y1-s.y0)/2+$/2+_;f.attr("y",z);const W=s.x1-s.x0,oe=s.y1-s.y0-4,ce=W-8;f.node().getComputedTextLength()>ce||z+F>oe||F<y?f.style("display","none"):f.style("display",null)});const ie=i.diagramPadding??8;be(b,ie,"flowchart",i?.useMaxWidth||!1)},"draw"),at=w(function(e,a){return a.db.getClasses()},"getClasses"),nt={draw:tt,getClasses:at},lt={sectionStrokeColor:"black",sectionStrokeWidth:"1",sectionFillColor:"#efefef",leafStrokeColor:"black",leafStrokeWidth:"1",leafFillColor:"#efefef",labelColor:"black",labelFontSize:"12px",valueFontSize:"10px",valueColor:"black",titleColor:"black",titleFontSize:"14px"},rt=w(({treemap:e}={})=>{const a=ee(lt,e);return`
2
2
  .treemapNode.section {
3
3
  stroke: ${a.sectionStrokeColor};
4
4
  stroke-width: ${a.sectionStrokeWidth};
@@ -1,4 +1,4 @@
1
- import{s as k,g as I,q as R,p as E,a as F,b as _,_ as l,I as D,y as G,E as f,F as z,G as C,l as P,$ as W,d as B}from"./mermaid.core-CvvapKs3.js";import{p as V}from"./chunk-4BX2VUAB-Bsl_oCUb.js";import{p as H}from"./treemap-KZPCXAKY-Bh6w10Ud.js";import"./index-Dn8Qszh4.js";import"./transform-BwXaE9hv.js";import"./_baseUniq-Ff_gEw0V.js";import"./_basePickBy-CJ0iZZpY.js";import"./clone-CMiPkeXL.js";var x={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},w={axes:[],curves:[],options:x},m=structuredClone(w),j=z.radar,q=l(()=>f({...j,...C().radar}),"getConfig"),b=l(()=>m.axes,"getAxes"),N=l(()=>m.curves,"getCurves"),U=l(()=>m.options,"getOptions"),X=l(a=>{m.axes=a.map(t=>({name:t.name,label:t.label??t.name}))},"setAxes"),Y=l(a=>{m.curves=a.map(t=>({name:t.name,label:t.label??t.name,entries:Z(t.entries)}))},"setCurves"),Z=l(a=>{if(a[0].axis==null)return a.map(e=>e.value);const t=b();if(t.length===0)throw new Error("Axes must be populated before curves for reference entries");return t.map(e=>{const r=a.find(s=>s.axis?.$refText===e.name);if(r===void 0)throw new Error("Missing entry for axis "+e.label);return r.value})},"computeCurveEntries"),J=l(a=>{const t=a.reduce((e,r)=>(e[r.name]=r,e),{});m.options={showLegend:t.showLegend?.value??x.showLegend,ticks:t.ticks?.value??x.ticks,max:t.max?.value??x.max,min:t.min?.value??x.min,graticule:t.graticule?.value??x.graticule}},"setOptions"),K=l(()=>{G(),m=structuredClone(w)},"clear"),$={getAxes:b,getCurves:N,getOptions:U,setAxes:X,setCurves:Y,setOptions:J,getConfig:q,clear:K,setAccTitle:_,getAccTitle:F,setDiagramTitle:E,getDiagramTitle:R,getAccDescription:I,setAccDescription:k},Q=l(a=>{V(a,$);const{axes:t,curves:e,options:r}=a;$.setAxes(t),$.setCurves(e),$.setOptions(r)},"populate"),tt={parse:l(async a=>{const t=await H("radar",a);P.debug(t),Q(t)},"parse")},et=l((a,t,e,r)=>{const s=r.db,o=s.getAxes(),i=s.getCurves(),n=s.getOptions(),c=s.getConfig(),d=s.getDiagramTitle(),u=D(t),p=at(u,c),g=n.max??Math.max(...i.map(y=>Math.max(...y.entries))),h=n.min,v=Math.min(c.width,c.height)/2;rt(p,o,v,n.ticks,n.graticule),st(p,o,v,c),M(p,o,i,h,g,n.graticule,c),T(p,i,n.showLegend,c),p.append("text").attr("class","radarTitle").text(d).attr("x",0).attr("y",-c.height/2-c.marginTop)},"draw"),at=l((a,t)=>{const e=t.width+t.marginLeft+t.marginRight,r=t.height+t.marginTop+t.marginBottom,s={x:t.marginLeft+t.width/2,y:t.marginTop+t.height/2};return B(a,r,e,t.useMaxWidth??!0),a.attr("viewBox",`0 0 ${e} ${r}`),a.append("g").attr("transform",`translate(${s.x}, ${s.y})`)},"drawFrame"),rt=l((a,t,e,r,s)=>{if(s==="circle")for(let o=0;o<r;o++){const i=e*(o+1)/r;a.append("circle").attr("r",i).attr("class","radarGraticule")}else if(s==="polygon"){const o=t.length;for(let i=0;i<r;i++){const n=e*(i+1)/r,c=t.map((d,u)=>{const p=2*u*Math.PI/o-Math.PI/2,g=n*Math.cos(p),h=n*Math.sin(p);return`${g},${h}`}).join(" ");a.append("polygon").attr("points",c).attr("class","radarGraticule")}}},"drawGraticule"),st=l((a,t,e,r)=>{const s=t.length;for(let o=0;o<s;o++){const i=t[o].label,n=2*o*Math.PI/s-Math.PI/2;a.append("line").attr("x1",0).attr("y1",0).attr("x2",e*r.axisScaleFactor*Math.cos(n)).attr("y2",e*r.axisScaleFactor*Math.sin(n)).attr("class","radarAxisLine"),a.append("text").text(i).attr("x",e*r.axisLabelFactor*Math.cos(n)).attr("y",e*r.axisLabelFactor*Math.sin(n)).attr("class","radarAxisLabel")}},"drawAxes");function M(a,t,e,r,s,o,i){const n=t.length,c=Math.min(i.width,i.height)/2;e.forEach((d,u)=>{if(d.entries.length!==n)return;const p=d.entries.map((g,h)=>{const v=2*Math.PI*h/n-Math.PI/2,y=A(g,r,s,c),S=y*Math.cos(v),O=y*Math.sin(v);return{x:S,y:O}});o==="circle"?a.append("path").attr("d",L(p,i.curveTension)).attr("class",`radarCurve-${u}`):o==="polygon"&&a.append("polygon").attr("points",p.map(g=>`${g.x},${g.y}`).join(" ")).attr("class",`radarCurve-${u}`)})}l(M,"drawCurves");function A(a,t,e,r){const s=Math.min(Math.max(a,t),e);return r*(s-t)/(e-t)}l(A,"relativeRadius");function L(a,t){const e=a.length;let r=`M${a[0].x},${a[0].y}`;for(let s=0;s<e;s++){const o=a[(s-1+e)%e],i=a[s],n=a[(s+1)%e],c=a[(s+2)%e],d={x:i.x+(n.x-o.x)*t,y:i.y+(n.y-o.y)*t},u={x:n.x-(c.x-i.x)*t,y:n.y-(c.y-i.y)*t};r+=` C${d.x},${d.y} ${u.x},${u.y} ${n.x},${n.y}`}return`${r} Z`}l(L,"closedRoundCurve");function T(a,t,e,r){if(!e)return;const s=(r.width/2+r.marginRight)*3/4,o=-(r.height/2+r.marginTop)*3/4,i=20;t.forEach((n,c)=>{const d=a.append("g").attr("transform",`translate(${s}, ${o+c*i})`);d.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${c}`),d.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(n.label)})}l(T,"drawLegend");var nt={draw:et},ot=l((a,t)=>{let e="";for(let r=0;r<a.THEME_COLOR_LIMIT;r++){const s=a[`cScale${r}`];e+=`
1
+ import{s as k,g as I,q as R,p as E,a as F,b as _,_ as l,I as D,y as G,E as f,F as z,G as C,l as P,$ as W,d as B}from"./mermaid.core-CVIbZZUN.js";import{p as V}from"./chunk-4BX2VUAB-LvGb37pZ.js";import{p as H}from"./treemap-KZPCXAKY-DpDSxMOl.js";import"./index-DMyAFOcC.js";import"./transform-BwXaE9hv.js";import"./_baseUniq-CgruQt5X.js";import"./_basePickBy-BuV5p9OF.js";import"./clone-g65k7nys.js";var x={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},w={axes:[],curves:[],options:x},m=structuredClone(w),j=z.radar,q=l(()=>f({...j,...C().radar}),"getConfig"),b=l(()=>m.axes,"getAxes"),N=l(()=>m.curves,"getCurves"),U=l(()=>m.options,"getOptions"),X=l(a=>{m.axes=a.map(t=>({name:t.name,label:t.label??t.name}))},"setAxes"),Y=l(a=>{m.curves=a.map(t=>({name:t.name,label:t.label??t.name,entries:Z(t.entries)}))},"setCurves"),Z=l(a=>{if(a[0].axis==null)return a.map(e=>e.value);const t=b();if(t.length===0)throw new Error("Axes must be populated before curves for reference entries");return t.map(e=>{const r=a.find(s=>s.axis?.$refText===e.name);if(r===void 0)throw new Error("Missing entry for axis "+e.label);return r.value})},"computeCurveEntries"),J=l(a=>{const t=a.reduce((e,r)=>(e[r.name]=r,e),{});m.options={showLegend:t.showLegend?.value??x.showLegend,ticks:t.ticks?.value??x.ticks,max:t.max?.value??x.max,min:t.min?.value??x.min,graticule:t.graticule?.value??x.graticule}},"setOptions"),K=l(()=>{G(),m=structuredClone(w)},"clear"),$={getAxes:b,getCurves:N,getOptions:U,setAxes:X,setCurves:Y,setOptions:J,getConfig:q,clear:K,setAccTitle:_,getAccTitle:F,setDiagramTitle:E,getDiagramTitle:R,getAccDescription:I,setAccDescription:k},Q=l(a=>{V(a,$);const{axes:t,curves:e,options:r}=a;$.setAxes(t),$.setCurves(e),$.setOptions(r)},"populate"),tt={parse:l(async a=>{const t=await H("radar",a);P.debug(t),Q(t)},"parse")},et=l((a,t,e,r)=>{const s=r.db,o=s.getAxes(),i=s.getCurves(),n=s.getOptions(),c=s.getConfig(),d=s.getDiagramTitle(),u=D(t),p=at(u,c),g=n.max??Math.max(...i.map(y=>Math.max(...y.entries))),h=n.min,v=Math.min(c.width,c.height)/2;rt(p,o,v,n.ticks,n.graticule),st(p,o,v,c),M(p,o,i,h,g,n.graticule,c),T(p,i,n.showLegend,c),p.append("text").attr("class","radarTitle").text(d).attr("x",0).attr("y",-c.height/2-c.marginTop)},"draw"),at=l((a,t)=>{const e=t.width+t.marginLeft+t.marginRight,r=t.height+t.marginTop+t.marginBottom,s={x:t.marginLeft+t.width/2,y:t.marginTop+t.height/2};return B(a,r,e,t.useMaxWidth??!0),a.attr("viewBox",`0 0 ${e} ${r}`),a.append("g").attr("transform",`translate(${s.x}, ${s.y})`)},"drawFrame"),rt=l((a,t,e,r,s)=>{if(s==="circle")for(let o=0;o<r;o++){const i=e*(o+1)/r;a.append("circle").attr("r",i).attr("class","radarGraticule")}else if(s==="polygon"){const o=t.length;for(let i=0;i<r;i++){const n=e*(i+1)/r,c=t.map((d,u)=>{const p=2*u*Math.PI/o-Math.PI/2,g=n*Math.cos(p),h=n*Math.sin(p);return`${g},${h}`}).join(" ");a.append("polygon").attr("points",c).attr("class","radarGraticule")}}},"drawGraticule"),st=l((a,t,e,r)=>{const s=t.length;for(let o=0;o<s;o++){const i=t[o].label,n=2*o*Math.PI/s-Math.PI/2;a.append("line").attr("x1",0).attr("y1",0).attr("x2",e*r.axisScaleFactor*Math.cos(n)).attr("y2",e*r.axisScaleFactor*Math.sin(n)).attr("class","radarAxisLine"),a.append("text").text(i).attr("x",e*r.axisLabelFactor*Math.cos(n)).attr("y",e*r.axisLabelFactor*Math.sin(n)).attr("class","radarAxisLabel")}},"drawAxes");function M(a,t,e,r,s,o,i){const n=t.length,c=Math.min(i.width,i.height)/2;e.forEach((d,u)=>{if(d.entries.length!==n)return;const p=d.entries.map((g,h)=>{const v=2*Math.PI*h/n-Math.PI/2,y=A(g,r,s,c),S=y*Math.cos(v),O=y*Math.sin(v);return{x:S,y:O}});o==="circle"?a.append("path").attr("d",L(p,i.curveTension)).attr("class",`radarCurve-${u}`):o==="polygon"&&a.append("polygon").attr("points",p.map(g=>`${g.x},${g.y}`).join(" ")).attr("class",`radarCurve-${u}`)})}l(M,"drawCurves");function A(a,t,e,r){const s=Math.min(Math.max(a,t),e);return r*(s-t)/(e-t)}l(A,"relativeRadius");function L(a,t){const e=a.length;let r=`M${a[0].x},${a[0].y}`;for(let s=0;s<e;s++){const o=a[(s-1+e)%e],i=a[s],n=a[(s+1)%e],c=a[(s+2)%e],d={x:i.x+(n.x-o.x)*t,y:i.y+(n.y-o.y)*t},u={x:n.x-(c.x-i.x)*t,y:n.y-(c.y-i.y)*t};r+=` C${d.x},${d.y} ${u.x},${u.y} ${n.x},${n.y}`}return`${r} Z`}l(L,"closedRoundCurve");function T(a,t,e,r){if(!e)return;const s=(r.width/2+r.marginRight)*3/4,o=-(r.height/2+r.marginTop)*3/4,i=20;t.forEach((n,c)=>{const d=a.append("g").attr("transform",`translate(${s}, ${o+c*i})`);d.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${c}`),d.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(n.label)})}l(T,"drawLegend");var nt={draw:et},ot=l((a,t)=>{let e="";for(let r=0;r<a.THEME_COLOR_LIMIT;r++){const s=a[`cScale${r}`];e+=`
2
2
  .radarCurve-${r} {
3
3
  color: ${s};
4
4
  fill: ${s};
@@ -1,4 +1,4 @@
1
- import{_ as b,E as m,I as $,d as B,l as u,b as C,a as S,p as D,q as T,g as E,s as F,F as P,G as z,y as A}from"./mermaid.core-CvvapKs3.js";import{p as W}from"./chunk-4BX2VUAB-Bsl_oCUb.js";import{p as _}from"./treemap-KZPCXAKY-Bh6w10Ud.js";import"./index-Dn8Qszh4.js";import"./transform-BwXaE9hv.js";import"./_baseUniq-Ff_gEw0V.js";import"./_basePickBy-CJ0iZZpY.js";import"./clone-CMiPkeXL.js";var N=P.packet,w=class{constructor(){this.packet=[],this.setAccTitle=C,this.getAccTitle=S,this.setDiagramTitle=D,this.getDiagramTitle=T,this.getAccDescription=E,this.setAccDescription=F}static{b(this,"PacketDB")}getConfig(){const t=m({...N,...z().packet});return t.showBits&&(t.paddingY+=10),t}getPacket(){return this.packet}pushWord(t){t.length>0&&this.packet.push(t)}clear(){A(),this.packet=[]}},I=1e4,L=b((t,e)=>{W(t,e);let r=-1,o=[],n=1;const{bitsPerRow:l}=e.getConfig();for(let{start:a,end:i,bits:d,label:c}of t.blocks){if(a!==void 0&&i!==void 0&&i<a)throw new Error(`Packet block ${a} - ${i} is invalid. End must be greater than start.`);if(a??=r+1,a!==r+1)throw new Error(`Packet block ${a} - ${i??a} is not contiguous. It should start from ${r+1}.`);if(d===0)throw new Error(`Packet block ${a} is invalid. Cannot have a zero bit field.`);for(i??=a+(d??1)-1,d??=i-a+1,r=i,u.debug(`Packet block ${a} - ${r} with label ${c}`);o.length<=l+1&&e.getPacket().length<I;){const[p,s]=M({start:a,end:i,bits:d,label:c},n,l);if(o.push(p),p.end+1===n*l&&(e.pushWord(o),o=[],n++),!s)break;({start:a,end:i,bits:d,label:c}=s)}}e.pushWord(o)},"populate"),M=b((t,e,r)=>{if(t.start===void 0)throw new Error("start should have been set during first phase");if(t.end===void 0)throw new Error("end should have been set during first phase");if(t.start>t.end)throw new Error(`Block start ${t.start} is greater than block end ${t.end}.`);if(t.end+1<=e*r)return[t,void 0];const o=e*r-1,n=e*r;return[{start:t.start,end:o,label:t.label,bits:o-t.start},{start:n,end:t.end,label:t.label,bits:t.end-n}]},"getNextFittingBlock"),v={parser:{yy:void 0},parse:b(async t=>{const e=await _("packet",t),r=v.parser?.yy;if(!(r instanceof w))throw new Error("parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");u.debug(e),L(e,r)},"parse")},Y=b((t,e,r,o)=>{const n=o.db,l=n.getConfig(),{rowHeight:a,paddingY:i,bitWidth:d,bitsPerRow:c}=l,p=n.getPacket(),s=n.getDiagramTitle(),h=a+i,g=h*(p.length+1)-(s?0:a),k=d*c+2,f=$(e);f.attr("viewBox",`0 0 ${k} ${g}`),B(f,g,k,l.useMaxWidth);for(const[x,y]of p.entries())G(f,y,x,l);f.append("text").text(s).attr("x",k/2).attr("y",g-h/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),G=b((t,e,r,{rowHeight:o,paddingX:n,paddingY:l,bitWidth:a,bitsPerRow:i,showBits:d})=>{const c=t.append("g"),p=r*(o+l)+l;for(const s of e){const h=s.start%i*a+1,g=(s.end-s.start+1)*a-n;if(c.append("rect").attr("x",h).attr("y",p).attr("width",g).attr("height",o).attr("class","packetBlock"),c.append("text").attr("x",h+g/2).attr("y",p+o/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(s.label),!d)continue;const k=s.end===s.start,f=p-2;c.append("text").attr("x",h+(k?g/2:0)).attr("y",f).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",k?"middle":"start").text(s.start),k||c.append("text").attr("x",h+g).attr("y",f).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(s.end)}},"drawWord"),O={draw:Y},j={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},q=b(({packet:t}={})=>{const e=m(j,t);return`
1
+ import{_ as b,E as m,I as $,d as B,l as u,b as C,a as S,p as D,q as T,g as E,s as F,F as P,G as z,y as A}from"./mermaid.core-CVIbZZUN.js";import{p as W}from"./chunk-4BX2VUAB-LvGb37pZ.js";import{p as _}from"./treemap-KZPCXAKY-DpDSxMOl.js";import"./index-DMyAFOcC.js";import"./transform-BwXaE9hv.js";import"./_baseUniq-CgruQt5X.js";import"./_basePickBy-BuV5p9OF.js";import"./clone-g65k7nys.js";var N=P.packet,w=class{constructor(){this.packet=[],this.setAccTitle=C,this.getAccTitle=S,this.setDiagramTitle=D,this.getDiagramTitle=T,this.getAccDescription=E,this.setAccDescription=F}static{b(this,"PacketDB")}getConfig(){const t=m({...N,...z().packet});return t.showBits&&(t.paddingY+=10),t}getPacket(){return this.packet}pushWord(t){t.length>0&&this.packet.push(t)}clear(){A(),this.packet=[]}},I=1e4,L=b((t,e)=>{W(t,e);let r=-1,o=[],n=1;const{bitsPerRow:l}=e.getConfig();for(let{start:a,end:i,bits:d,label:c}of t.blocks){if(a!==void 0&&i!==void 0&&i<a)throw new Error(`Packet block ${a} - ${i} is invalid. End must be greater than start.`);if(a??=r+1,a!==r+1)throw new Error(`Packet block ${a} - ${i??a} is not contiguous. It should start from ${r+1}.`);if(d===0)throw new Error(`Packet block ${a} is invalid. Cannot have a zero bit field.`);for(i??=a+(d??1)-1,d??=i-a+1,r=i,u.debug(`Packet block ${a} - ${r} with label ${c}`);o.length<=l+1&&e.getPacket().length<I;){const[p,s]=M({start:a,end:i,bits:d,label:c},n,l);if(o.push(p),p.end+1===n*l&&(e.pushWord(o),o=[],n++),!s)break;({start:a,end:i,bits:d,label:c}=s)}}e.pushWord(o)},"populate"),M=b((t,e,r)=>{if(t.start===void 0)throw new Error("start should have been set during first phase");if(t.end===void 0)throw new Error("end should have been set during first phase");if(t.start>t.end)throw new Error(`Block start ${t.start} is greater than block end ${t.end}.`);if(t.end+1<=e*r)return[t,void 0];const o=e*r-1,n=e*r;return[{start:t.start,end:o,label:t.label,bits:o-t.start},{start:n,end:t.end,label:t.label,bits:t.end-n}]},"getNextFittingBlock"),v={parser:{yy:void 0},parse:b(async t=>{const e=await _("packet",t),r=v.parser?.yy;if(!(r instanceof w))throw new Error("parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");u.debug(e),L(e,r)},"parse")},Y=b((t,e,r,o)=>{const n=o.db,l=n.getConfig(),{rowHeight:a,paddingY:i,bitWidth:d,bitsPerRow:c}=l,p=n.getPacket(),s=n.getDiagramTitle(),h=a+i,g=h*(p.length+1)-(s?0:a),k=d*c+2,f=$(e);f.attr("viewBox",`0 0 ${k} ${g}`),B(f,g,k,l.useMaxWidth);for(const[x,y]of p.entries())G(f,y,x,l);f.append("text").text(s).attr("x",k/2).attr("y",g-h/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),G=b((t,e,r,{rowHeight:o,paddingX:n,paddingY:l,bitWidth:a,bitsPerRow:i,showBits:d})=>{const c=t.append("g"),p=r*(o+l)+l;for(const s of e){const h=s.start%i*a+1,g=(s.end-s.start+1)*a-n;if(c.append("rect").attr("x",h).attr("y",p).attr("width",g).attr("height",o).attr("class","packetBlock"),c.append("text").attr("x",h+g/2).attr("y",p+o/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(s.label),!d)continue;const k=s.end===s.start,f=p-2;c.append("text").attr("x",h+(k?g/2:0)).attr("y",f).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",k?"middle":"start").text(s.start),k||c.append("text").attr("x",h+g).attr("y",f).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(s.end)}},"drawWord"),O={draw:Y},j={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},q=b(({packet:t}={})=>{const e=m(j,t);return`
2
2
  .packetByte {
3
3
  font-size: ${e.byteFontSize};
4
4
  }
@@ -1 +1 @@
1
- import{c as x,y as v,f as $,H as w,m as i,l,I as _,p as k,n as m,B as f,G as C,t as y}from"./index-Dn8Qszh4.js";var D=y('<form class="flex flex-col gap-4 p-6 pt-0"><div class="flex items-center gap-2 text-12-regular text-text-weak"><span></span></div><div class="flex justify-end gap-2">'),S=y('<p class="text-12-regular text-red-500">');function z(b){const u=x(),g=v(),r=$(),[t,a]=w({url:"",busy:!1,error:""});async function p(){const e=t.url.trim();if(!(!e||t.busy)){a("busy",!0),a("error","");try{const n=await g.fetch(`${g.url}/global/clone`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({url:e})}),s=await n.json();if(!n.ok){a("error",s.error||r.t("dialog.clone.error"));return}b.onSelect(s.path),u.close()}catch{a("error",r.t("dialog.clone.error"))}finally{a("busy",!1)}}}function h(e){e.preventDefault(),p()}return i(C,{get title(){return r.t("dialog.clone.title")},class:"w-full max-w-[440px] mx-auto",get children(){var e=D(),n=e.firstChild,s=n.firstChild,c=n.nextSibling;return e.addEventListener("submit",h),l(n,i(_,{name:"branch",size:"small",class:"shrink-0 text-icon-weak"}),s),l(s,()=>r.t("dialog.clone.description")),l(e,i(k,{autofocus:!0,type:"url",placeholder:"https://github.com/owner/repo",get value(){return t.url},onChange:o=>a("url",o),onKeyDown:o=>{o.key==="Enter"&&(o.preventDefault(),p())}}),c),l(e,(()=>{var o=m(()=>!!t.error);return()=>o()&&(()=>{var d=S();return l(d,()=>t.error),d})()})(),c),l(c,i(f,{type:"button",variant:"ghost",size:"large",onClick:()=>u.close(),get children(){return r.t("common.cancel")}}),null),l(c,i(f,{type:"submit",variant:"primary",size:"large",get disabled(){return!t.url.trim()||t.busy},get children(){return m(()=>!!t.busy)()?r.t("common.loading"):r.t("dialog.clone.action")}}),null),e}})}export{z as DialogCloneProject};
1
+ import{c as x,y as v,f as $,H as w,m as i,l,I as _,p as k,n as m,B as f,G as C,t as y}from"./index-DMyAFOcC.js";var D=y('<form class="flex flex-col gap-4 p-6 pt-0"><div class="flex items-center gap-2 text-12-regular text-text-weak"><span></span></div><div class="flex justify-end gap-2">'),S=y('<p class="text-12-regular text-red-500">');function z(b){const u=x(),g=v(),r=$(),[t,a]=w({url:"",busy:!1,error:""});async function p(){const e=t.url.trim();if(!(!e||t.busy)){a("busy",!0),a("error","");try{const n=await g.fetch(`${g.url}/global/clone`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({url:e})}),s=await n.json();if(!n.ok){a("error",s.error||r.t("dialog.clone.error"));return}b.onSelect(s.path),u.close()}catch{a("error",r.t("dialog.clone.error"))}finally{a("busy",!1)}}}function h(e){e.preventDefault(),p()}return i(C,{get title(){return r.t("dialog.clone.title")},class:"w-full max-w-[440px] mx-auto",get children(){var e=D(),n=e.firstChild,s=n.firstChild,c=n.nextSibling;return e.addEventListener("submit",h),l(n,i(_,{name:"branch",size:"small",class:"shrink-0 text-icon-weak"}),s),l(s,()=>r.t("dialog.clone.description")),l(e,i(k,{autofocus:!0,type:"url",placeholder:"https://github.com/owner/repo",get value(){return t.url},onChange:o=>a("url",o),onKeyDown:o=>{o.key==="Enter"&&(o.preventDefault(),p())}}),c),l(e,(()=>{var o=m(()=>!!t.error);return()=>o()&&(()=>{var d=S();return l(d,()=>t.error),d})()})(),c),l(c,i(f,{type:"button",variant:"ghost",size:"large",onClick:()=>u.close(),get children(){return r.t("common.cancel")}}),null),l(c,i(f,{type:"submit",variant:"primary",size:"large",get disabled(){return!t.url.trim()||t.busy},get children(){return m(()=>!!t.busy)()?r.t("common.loading"):r.t("dialog.clone.action")}}),null),e}})}export{z as DialogCloneProject};
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dialog-select-provider-DCUcnqs5.js","assets/index-DMyAFOcC.js","assets/index-CUuPDPB8.css","assets/list-HsPczU9B.js","assets/tag-BHNb4BJv.js"])))=>i.map(i=>d[i]);
2
+ import{v as re,b as ve,ag as he,aE as fe,a1 as me,l as i,t as x,c as ge,u as xe,y as ye,f as be,ab as _e,P as we,i as _,z as $e,H as M,O as ke,m as r,aF as L,aG as f,n as Y,aH as Z,I as Se,q as Ce,Q as Ie,G as De,p as O,B as G,o as ze,aI as Pe,J as Ee,_ as Ke}from"./index-DMyAFOcC.js";import{L as ee}from"./list-HsPczU9B.js";import{P as Le}from"./tag-BHNb4BJv.js";var Te=x("<a>");function R(h){const T=ve(),[b,S]=he(h,["href","children","class"]);return(()=>{var n=Te();return n.$$click=j=>{b.href&&(j.preventDefault(),T.openLink(b.href))},fe(n,me({get href(){return b.href},get class(){return`text-text-strong underline ${b.class??""}`}},S),!1,!0),i(n,()=>b.children),n})()}re(["click"]);var Fe=x('<div class="w-full flex flex-col gap-1.5"><div class="text-14-regular text-text-base"></div><div>'),Me=x('<form class="flex flex-col items-start gap-4">'),Oe=x('<div class="w-full flex items-center gap-x-2"><div class="w-4 h-2 rounded-[1px] bg-input-base shadow-xs-border-base flex items-center justify-center"><div class="w-2.5 h-0.5 ml-0 bg-icon-strong-base hidden"data-slot=list-item-extra-icon></div></div><span></span><span class="text-14-regular text-text-weak">'),te=x('<div class="text-14-regular text-text-base">'),je=x("<div>"),Ae=x('<div class="w-full flex items-center gap-x-2"><div class="w-4 h-2 rounded-[1px] bg-input-base shadow-xs-border-base flex items-center justify-center"><div class="w-2.5 h-0.5 ml-0 bg-icon-strong-base hidden"data-slot=list-item-extra-icon></div></div><span>'),Ve=x('<div class="flex flex-col gap-4"><div class="text-14-regular text-text-base"></div><div class="text-14-regular text-text-base"></div><div class="text-14-regular text-text-base">'),qe=x('<div class="flex flex-col gap-6"><form class="flex flex-col items-start gap-4">'),Be=x('<div class="flex flex-col gap-6"><div class="text-14-regular text-text-base"></div><form class="flex flex-col items-start gap-4">'),Ze=x('<div class="flex flex-col gap-6"><div class="text-14-regular text-text-base"></div><div class="text-14-regular text-text-base flex items-center gap-4"><span>'),H=x('<div class="text-14-regular text-text-base"><div class="flex items-center gap-x-2"><span>'),Ge=x('<div class="flex flex-col gap-6 px-2.5 pb-3"><div class="px-2.5 flex gap-4 items-center"><div class="text-16-medium text-text-strong"></div></div><div class="px-2.5 pb-10 flex flex-col gap-6"><div tabindex=0>');function Re(h){const T=ge(),b=xe(),S=ye(),n=be(),j=_e(),J=()=>{Ke(()=>import("./dialog-select-provider-DCUcnqs5.js").then(e=>e.d),__vite__mapDeps([0,1,2,3,4])).then(e=>{T.show(()=>r(e.DialogSelectProvider,{}))})},C={value:!0},w={current:void 0};we(()=>{C.value=!1,w.current!==void 0&&(clearTimeout(w.current),w.current=void 0)});const $=_(()=>j.all().find(e=>e.id===h.provider)??b.data.provider.all.find(e=>e.id===h.provider)),A=_(()=>[{type:"api",label:n.t("provider.connect.method.apiKey")}]),[Q]=$e(()=>h.provider,async()=>{const e=b.data.provider_auth[h.provider];if(e)return e;const t=await S.client.provider.auth();return C.value?(b.set("provider_auth",t.data??{}),t.data?.[h.provider]??A()):A()},{initialValue:void 0}),N=_(()=>Q.loading&&!b.data.provider_auth[h.provider]),D=_(()=>Q.latest??b.data.provider_auth[h.provider]??A()),[d,ne]=M({methodIndex:void 0,authorization:void 0,state:"pending",error:void 0});function k(e){ne(Pe(t=>{if(e.type==="method.select"){t.methodIndex=e.index,t.authorization=void 0,t.state=void 0,t.error=void 0;return}if(e.type==="method.reset"){t.methodIndex=void 0,t.authorization=void 0,t.state=void 0,t.error=void 0;return}if(e.type==="auth.prompt"){t.state="prompt",t.error=void 0;return}if(e.type==="auth.pending"){t.state="pending",t.error=void 0;return}if(e.type==="auth.complete"){t.state="complete",t.authorization=e.authorization,t.error=void 0;return}t.state="error",t.error=e.error}))}const z=_(()=>d.methodIndex!==void 0?D().at(d.methodIndex):void 0),oe=e=>e?e.type==="api"?n.t("provider.connect.method.apiKey"):e.label??"":"";function F(e,t){if(e&&typeof e=="object"&&"data"in e){const o=e.data;if(typeof o?.message=="string"&&o.message)return o.message}if(e&&typeof e=="object"&&"error"in e){const o=F(e.error,"");if(o)return o}if(e&&typeof e=="object"&&"message"in e){const o=e.message;if(typeof o=="string"&&o)return o}return e instanceof Error&&e.message?e.message:typeof e=="string"&&e?e:t}async function V(e,t){w.current!==void 0&&(clearTimeout(w.current),w.current=void 0);const o=D()[e];if(k({type:"method.select",index:e}),o.type==="oauth"){if(o.prompts?.length&&!t){k({type:"auth.prompt"});return}k({type:"auth.pending"});const c=Date.now();await S.client.provider.oauth.authorize({providerID:h.provider,method:e,inputs:t},{throwOnError:!0}).then(a=>{if(!C.value)return;const u=1e3-(Date.now()-c);if(u>0){w.current!==void 0&&clearTimeout(w.current),w.current=setTimeout(()=>{w.current=void 0,C.value&&k({type:"auth.complete",authorization:a.data})},u);return}k({type:"auth.complete",authorization:a.data})}).catch(a=>{C.value&&k({type:"auth.error",error:F(a,n.t("common.requestFailed"))})})}}function ie(){const[e,t]=M({value:{},index:0}),o=_(()=>{const l=z();return l?.type!=="oauth"?[]:l.prompts??[]}),c=(l,p)=>{if(!l.when)return!0;const g=p[l.when.key];return g===void 0?!1:l.when.op==="eq"?g===l.when.value:g!==l.when.value},a=_(()=>{const l=o(),p=l.findIndex((g,K)=>K>=e.index&&c(g,e.value));if(p!==-1)return{index:p,prompt:l[p]}}),s=_(()=>{const l=a();return!l||l.prompt.type!=="text"?!1:(e.value[l.prompt.key]??"").trim().length>0});async function u(l,p){if(d.methodIndex===void 0)return;const g=o().findIndex((K,y)=>y>l&&c(K,p));if(g!==-1){t("index",g);return}await V(d.methodIndex,p)}async function v(l){l.preventDefault();const p=a();!p||p.prompt.type!=="text"||s()&&await u(p.index,e.value)}const m=()=>a(),P=_(()=>{const l=m()?.prompt;if(!(!l||l.type!=="text"))return l}),E=_(()=>{const l=m()?.prompt;if(!(!l||l.type!=="select"))return l});return(()=>{var l=Me();return l.addEventListener("submit",v),i(l,r(L,{get children(){return[r(f,{get when(){return m()?.prompt.type==="text"},get children(){return[r(O,{type:"text",get label(){return P()?.message??""},get placeholder(){return P()?.placeholder},get value(){return Y(()=>!!P())()?e.value[P().key]??"":""},onChange:p=>{const g=P();g&&t("value",g.key,p)}}),r(G,{class:"w-auto",type:"submit",size:"large",variant:"primary",get disabled(){return!s()},get children(){return n.t("common.continue")}})]}}),r(f,{get when(){return m()?.prompt.type==="select"},get children(){var p=Fe(),g=p.firstChild,K=g.nextSibling;return i(g,()=>E()?.message),i(K,r(ee,{get items(){return E()?.options??[]},key:y=>y.value,get current(){return E()?.options.find(y=>y.value===e.value[E().key])},onSelect:y=>{if(!y)return;const I=E();if(!I)return;const B={...e.value,[I.key]:y.value};t("value",I.key,y.value),u(m().index,B)},children:y=>(()=>{var I=Oe(),B=I.firstChild,X=B.nextSibling,pe=X.nextSibling;return i(X,()=>y.label),i(pe,()=>y.hint),I})()})),p}})]}})),l})()}let U;function ae(e){e.key==="Enter"&&e.target instanceof HTMLInputElement||e.key!=="Escape"&&U?.onKeyDown(e)}let W=!1;ke(()=>{W||N()||D().length===1&&(W=!0,V(0))});async function q(){await S.client.global.dispose(),T.close(),Ee({variant:"success",icon:"circle-check",title:n.t("provider.connect.toast.connected.title",{provider:$().name}),description:n.t("provider.connect.toast.connected.description",{provider:$().name})})}function le(){if(D().length===1){J();return}if(d.authorization){k({type:"method.reset"});return}if(d.methodIndex!==void 0){k({type:"method.reset"});return}J()}function se(){return[(()=>{var e=te();return i(e,()=>n.t("provider.connect.selectMethod",{provider:$().name})),e})(),(()=>{var e=je();return i(e,r(ee,{ref:t=>{U=t},items:D,key:t=>t?.label,onSelect:async(t,o)=>{t&&V(o)},children:t=>(()=>{var o=Ae(),c=o.firstChild,a=c.nextSibling;return i(a,()=>oe(t)),o})()})),e})()]}function ce(){const[e,t]=M({value:"",error:void 0});async function o(c){c.preventDefault();const a=c.currentTarget,u=new FormData(a).get("apiKey");if(!u?.trim()){t("error",n.t("provider.connect.apiKey.required"));return}t("error",void 0),await S.client.auth.set({providerID:h.provider,auth:{type:"api",key:u}}),await q()}return(()=>{var c=qe(),a=c.firstChild;return i(c,r(L,{get children(){return[r(f,{get when(){return $().id==="opencode"},get children(){var s=Ve(),u=s.firstChild,v=u.nextSibling,m=v.nextSibling;return i(u,()=>n.t("provider.connect.opencodeZen.line1")),i(v,()=>n.t("provider.connect.opencodeZen.line2")),i(m,()=>n.t("provider.connect.opencodeZen.visit.prefix"),null),i(m,r(R,{href:"https://opencode.ai/zen",tabIndex:-1,get children(){return n.t("provider.connect.opencodeZen.visit.link")}}),null),i(m,()=>n.t("provider.connect.opencodeZen.visit.suffix"),null),s}}),r(f,{when:!0,get children(){var s=te();return i(s,()=>n.t("provider.connect.apiKey.description",{provider:$().name})),s}})]}}),a),a.addEventListener("submit",o),i(a,r(O,{autofocus:!0,type:"text",get label(){return n.t("provider.connect.apiKey.label",{provider:$().name})},get placeholder(){return n.t("provider.connect.apiKey.placeholder")},name:"apiKey",get value(){return e.value},onChange:s=>t("value",s),get validationState(){return e.error?"invalid":void 0},get error(){return e.error}}),null),i(a,r(G,{class:"w-auto",type:"submit",size:"large",variant:"primary",get children(){return n.t("common.continue")}}),null),c})()}function ue(){const[e,t]=M({value:"",error:void 0});async function o(c){c.preventDefault();const a=c.currentTarget,u=new FormData(a).get("code");if(!u?.trim()){t("error",n.t("provider.connect.oauth.code.required"));return}t("error",void 0);const v=await S.client.provider.oauth.callback({providerID:h.provider,method:d.methodIndex,code:u}).then(m=>m.error?{ok:!1,error:m.error}:{ok:!0}).catch(m=>({ok:!1,error:m}));if(v.ok){await q();return}t("error",F(v.error,n.t("provider.connect.oauth.code.invalid")))}return(()=>{var c=Be(),a=c.firstChild,s=a.nextSibling;return i(a,()=>n.t("provider.connect.oauth.code.visit.prefix"),null),i(a,r(R,{get href(){return d.authorization.url},get children(){return n.t("provider.connect.oauth.code.visit.link")}}),null),i(a,()=>n.t("provider.connect.oauth.code.visit.suffix",{provider:$().name}),null),s.addEventListener("submit",o),i(s,r(O,{autofocus:!0,type:"text",get label(){return n.t("provider.connect.oauth.code.label",{method:z()?.label??""})},get placeholder(){return n.t("provider.connect.oauth.code.placeholder")},name:"code",get value(){return e.value},onChange:u=>t("value",u),get validationState(){return e.error?"invalid":void 0},get error(){return e.error}}),null),i(s,r(G,{class:"w-auto",type:"submit",size:"large",variant:"primary",get children(){return n.t("common.continue")}}),null),c})()}function de(){const e=_(()=>{const t=d.authorization?.instructions;return t?.includes(":")?t.split(":")[1]?.trim():t});return ze(()=>{(async()=>{const t=await S.client.provider.oauth.callback({providerID:h.provider,method:d.methodIndex}).then(o=>o.error?{ok:!1,error:o.error}:{ok:!0}).catch(o=>({ok:!1,error:o}));if(C.value){if(!t.ok){const o=F(t.error,n.t("common.requestFailed"));k({type:"auth.error",error:o});return}await q()}})()}),(()=>{var t=Ze(),o=t.firstChild,c=o.nextSibling,a=c.firstChild;return i(o,()=>n.t("provider.connect.oauth.auto.visit.prefix"),null),i(o,r(R,{get href(){return d.authorization.url},get children(){return n.t("provider.connect.oauth.auto.visit.link")}}),null),i(o,()=>n.t("provider.connect.oauth.auto.visit.suffix",{provider:$().name}),null),i(t,r(O,{get label(){return n.t("provider.connect.oauth.auto.confirmationCode")},class:"font-mono",get value(){return e()},readOnly:!0,copyable:!0}),c),i(c,r(Z,{}),a),i(a,()=>n.t("provider.connect.status.waiting")),t})()}return r(De,{get title(){return r(Ie,{tabIndex:-1,icon:"arrow-left",variant:"ghost",onClick:le,get"aria-label"(){return n.t("common.goBack")}})},get children(){var e=Ge(),t=e.firstChild,o=t.firstChild,c=t.nextSibling,a=c.firstChild;return i(t,r(Le,{get id(){return h.provider},class:"size-5 shrink-0 icon-strong-base"}),o),i(o,r(L,{get children(){return[r(f,{get when(){return Y(()=>h.provider==="anthropic")()&&z()?.label?.toLowerCase().includes("max")},get children(){return n.t("provider.connect.title.anthropicProMax")}}),r(f,{when:!0,get children(){return n.t("provider.connect.title",{provider:$().name})}})]}})),a.$$keydown=ae,i(a,r(L,{get children(){return[r(f,{get when(){return N()},get children(){var s=H(),u=s.firstChild,v=u.firstChild;return i(u,r(Z,{}),v),i(v,()=>n.t("provider.connect.status.inProgress")),s}}),r(f,{get when(){return d.methodIndex===void 0},get children(){return r(se,{})}}),r(f,{get when(){return d.state==="pending"},get children(){var s=H(),u=s.firstChild,v=u.firstChild;return i(u,r(Z,{}),v),i(v,()=>n.t("provider.connect.status.inProgress")),s}}),r(f,{get when(){return d.state==="prompt"},get children(){return r(ie,{})}}),r(f,{get when(){return d.state==="error"},get children(){var s=H(),u=s.firstChild,v=u.firstChild;return i(u,r(Se,{name:"circle-ban-sign",class:"text-icon-critical-base"}),v),i(v,()=>n.t("provider.connect.status.failed",{error:d.error??""})),s}}),r(f,{get when(){return z()?.type==="api"},get children(){return r(ce,{})}}),r(f,{get when(){return z()?.type==="oauth"},get children(){return r(L,{get children(){return[r(f,{get when(){return d.authorization?.method==="code"},get children(){return r(ue,{})}}),r(f,{get when(){return d.authorization?.method==="auto"},get children(){return r(de,{})}})]}})}})]}})),Ce(()=>a.autofocus=d.methodIndex===void 0?!0:void 0),e}})}re(["keydown"]);const Ne=Object.freeze(Object.defineProperty({__proto__:null,DialogConnectProvider:Re},Symbol.toStringTag,{value:"Module"}));export{Re as D,R as L,Ne as d};
@@ -1 +1 @@
1
- import{c as _,y as D,u as j,f as z,H as B,h as $,m as t,l as n,I as k,B as p,p as T,S as H,G as E,t as G,J as O}from"./index-Dn8Qszh4.js";var J=G('<form class="flex flex-col gap-4 p-6 pt-0"><div class="flex items-center gap-2 text-12-regular text-text-weak"><span class=truncate>/</span></div><div class="flex flex-col gap-2"><div class="flex items-center gap-2 text-12-regular text-text-weaker"><div class="flex-1 h-px bg-border-base"></div><span>or create blank</span><div class="flex-1 h-px bg-border-base"></div></div></div><div class="flex justify-end gap-2">'),K=G('<div class="flex flex-col gap-4 p-6 pt-0"><div class="flex items-center gap-2 text-12-regular text-text-weak"><span class=truncate>/</span></div><div class="flex justify-end gap-2">');function N(c){const h=_(),u=D(),C=j(),s=z(),m=()=>C.data.path.home||"",f=()=>m()+"/.turtlecode",[o,g]=B({name:"",busy:!1}),[w,d]=$(!1);function y(){d(!0)}async function r(){const e=o.name.trim();if(!e||o.busy)return;const a=`${f()}/${e}`;g("busy",!0);try{await u.fetch(`${u.url}/global/mkdir`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:a})}).then(l=>{if(!l.ok)throw new Error(`mkdir failed: ${l.status}`);return l.json()}),c.onSelect(c.multiple?[a]:a),h.close()}catch{O({variant:"error",title:s.t("dialog.directory.create.error")})}finally{g("busy",!1)}}function i(e){e.preventDefault(),r()}return t(E,{get title(){return s.t("dialog.directory.create")},class:"w-full max-w-[400px] mx-auto min-h-fit!",get children(){return[(()=>{var e=J(),a=e.firstChild,l=a.firstChild,x=l.firstChild,b=a.nextSibling,P=b.firstChild,S=b.nextSibling;return e.addEventListener("submit",i),n(a,t(k,{name:"folder-add-left",size:"small",class:"shrink-0 text-icon-weak"}),l),n(l,f,x),n(b,t(p,{type:"button",variant:"secondary",size:"large",class:"w-full",onClick:y,get children(){return[t(k,{name:"github",size:"small",class:"mr-2"}),"Clone from GitHub"]}}),P),n(b,t(T,{autofocus:!0,type:"text",get placeholder(){return s.t("dialog.directory.create.placeholder")},get value(){return o.name},onChange:v=>g("name",v),onKeyDown:v=>{v.key==="Enter"&&(v.preventDefault(),r())}}),null),n(S,t(p,{type:"button",variant:"ghost",size:"large",onClick:()=>h.close(),get children(){return s.t("common.cancel")}}),null),n(S,t(p,{type:"submit",variant:"primary",size:"large",get disabled(){return!o.name.trim()||o.busy},get children(){return s.t("dialog.directory.create.action")}}),null),e})(),t(H,{get when(){return w()},get children(){return t(I,{onSelect:e=>{d(!1),c.onSelect(e)},onClose:()=>d(!1)})}})]}})}function I(c){const h=_(),[u,C]=$(""),[s,m]=$(!1),f=z(),o=D(),g=j(),w=()=>g.data.path.home||"",d=()=>w()+"/.turtlecode";async function y(){const r=u().trim();if(!r||s())return;const i=r.split("/").pop()?.replace(/\.git$/,"")||"repo",e=`${d()}/${i}`;m(!0);try{await o.fetch(`${o.url}/global/clone`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({url:r,target:e})}).then(a=>{if(!a.ok)throw new Error(`clone failed: ${a.status}`);return a.json()}),c.onSelect(e),h.close()}catch{O({variant:"error",title:f.t("dialog.directory.create.error")})}finally{m(!1)}}return t(E,{title:"Clone from GitHub",class:"w-full max-w-[400px] mx-auto min-h-fit!",get children(){var r=K(),i=r.firstChild,e=i.firstChild,a=e.firstChild,l=i.nextSibling;return n(i,t(k,{name:"folder-add-left",size:"small",class:"shrink-0 text-icon-weak"}),e),n(e,d,a),n(r,t(T,{autofocus:!0,type:"text",placeholder:"https://github.com/user/repo",get value(){return u()},onChange:C,onKeyDown:x=>{x.key==="Enter"&&(x.preventDefault(),y())}}),l),n(l,t(p,{type:"button",variant:"ghost",size:"large",get onClick(){return c.onClose},get children(){return f.t("common.cancel")}}),null),n(l,t(p,{type:"button",variant:"primary",size:"large",get disabled(){return!u().trim()||s()},onClick:y,children:"Clone"}),null),r}})}export{N as DialogCreateProject};
1
+ import{c as _,y as D,u as j,f as z,H as B,h as $,m as t,l as n,I as k,B as p,p as T,S as H,G as E,t as G,J as O}from"./index-DMyAFOcC.js";var J=G('<form class="flex flex-col gap-4 p-6 pt-0"><div class="flex items-center gap-2 text-12-regular text-text-weak"><span class=truncate>/</span></div><div class="flex flex-col gap-2"><div class="flex items-center gap-2 text-12-regular text-text-weaker"><div class="flex-1 h-px bg-border-base"></div><span>or create blank</span><div class="flex-1 h-px bg-border-base"></div></div></div><div class="flex justify-end gap-2">'),K=G('<div class="flex flex-col gap-4 p-6 pt-0"><div class="flex items-center gap-2 text-12-regular text-text-weak"><span class=truncate>/</span></div><div class="flex justify-end gap-2">');function N(c){const h=_(),u=D(),C=j(),s=z(),m=()=>C.data.path.home||"",f=()=>m()+"/.turtlecode",[o,g]=B({name:"",busy:!1}),[w,d]=$(!1);function y(){d(!0)}async function r(){const e=o.name.trim();if(!e||o.busy)return;const a=`${f()}/${e}`;g("busy",!0);try{await u.fetch(`${u.url}/global/mkdir`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:a})}).then(l=>{if(!l.ok)throw new Error(`mkdir failed: ${l.status}`);return l.json()}),c.onSelect(c.multiple?[a]:a),h.close()}catch{O({variant:"error",title:s.t("dialog.directory.create.error")})}finally{g("busy",!1)}}function i(e){e.preventDefault(),r()}return t(E,{get title(){return s.t("dialog.directory.create")},class:"w-full max-w-[400px] mx-auto min-h-fit!",get children(){return[(()=>{var e=J(),a=e.firstChild,l=a.firstChild,x=l.firstChild,b=a.nextSibling,P=b.firstChild,S=b.nextSibling;return e.addEventListener("submit",i),n(a,t(k,{name:"folder-add-left",size:"small",class:"shrink-0 text-icon-weak"}),l),n(l,f,x),n(b,t(p,{type:"button",variant:"secondary",size:"large",class:"w-full",onClick:y,get children(){return[t(k,{name:"github",size:"small",class:"mr-2"}),"Clone from GitHub"]}}),P),n(b,t(T,{autofocus:!0,type:"text",get placeholder(){return s.t("dialog.directory.create.placeholder")},get value(){return o.name},onChange:v=>g("name",v),onKeyDown:v=>{v.key==="Enter"&&(v.preventDefault(),r())}}),null),n(S,t(p,{type:"button",variant:"ghost",size:"large",onClick:()=>h.close(),get children(){return s.t("common.cancel")}}),null),n(S,t(p,{type:"submit",variant:"primary",size:"large",get disabled(){return!o.name.trim()||o.busy},get children(){return s.t("dialog.directory.create.action")}}),null),e})(),t(H,{get when(){return w()},get children(){return t(I,{onSelect:e=>{d(!1),c.onSelect(e)},onClose:()=>d(!1)})}})]}})}function I(c){const h=_(),[u,C]=$(""),[s,m]=$(!1),f=z(),o=D(),g=j(),w=()=>g.data.path.home||"",d=()=>w()+"/.turtlecode";async function y(){const r=u().trim();if(!r||s())return;const i=r.split("/").pop()?.replace(/\.git$/,"")||"repo",e=`${d()}/${i}`;m(!0);try{await o.fetch(`${o.url}/global/clone`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({url:r,target:e})}).then(a=>{if(!a.ok)throw new Error(`clone failed: ${a.status}`);return a.json()}),c.onSelect(e),h.close()}catch{O({variant:"error",title:f.t("dialog.directory.create.error")})}finally{m(!1)}}return t(E,{title:"Clone from GitHub",class:"w-full max-w-[400px] mx-auto min-h-fit!",get children(){var r=K(),i=r.firstChild,e=i.firstChild,a=e.firstChild,l=i.nextSibling;return n(i,t(k,{name:"folder-add-left",size:"small",class:"shrink-0 text-icon-weak"}),e),n(e,d,a),n(r,t(T,{autofocus:!0,type:"text",placeholder:"https://github.com/user/repo",get value(){return u()},onChange:C,onKeyDown:x=>{x.key==="Enter"&&(x.preventDefault(),y())}}),l),n(l,t(p,{type:"button",variant:"ghost",size:"large",get onClick(){return c.onClose},get children(){return f.t("common.cancel")}}),null),n(l,t(p,{type:"button",variant:"primary",size:"large",get disabled(){return!u().trim()||s()},onClick:y,children:"Clone"}),null),r}})}export{N as DialogCreateProject};
@@ -1 +1 @@
1
- import{c as te,y as re,u as ae,f as oe,i as A,A as ie,H as ne,L as le,m as l,l as o,p as F,S as I,q as L,$ as j,a0 as P,a1 as R,a2 as G,I as K,j as se,F as ce,V as M,B as T,n as de,G as ue,t as p,v as ve}from"./index-Dn8Qszh4.js";var ge=p('<img class="size-full object-cover">'),fe=p('<div class="flex flex-col gap-2"><label class="text-12-medium text-text-weak"></label><div class="flex gap-1.5">'),me=p('<form class="flex flex-col gap-6 p-6 pt-0"><div class="flex flex-col gap-4"><div class="flex flex-col gap-2"><label class="text-12-medium text-text-weak"></label><div class="flex gap-3 items-start"><div class=relative><div class="relative size-16 rounded-md transition-colors cursor-pointer"></div><div class="absolute inset-0 size-16 bg-surface-raised-stronger-non-alpha/90 rounded-[6px] z-10 pointer-events-none flex items-center justify-center transition-opacity"></div><div class="absolute inset-0 size-16 bg-surface-raised-stronger-non-alpha/90 rounded-[6px] z-10 pointer-events-none flex items-center justify-center transition-opacity"></div></div><input id=icon-upload type=file accept=image/* class=hidden><div class="flex flex-col gap-1.5 text-12-regular text-text-weak self-center"><span></span><span></span></div></div></div></div><div class="flex justify-end gap-2">'),pe=p('<div class="size-full flex items-center justify-center">'),be=p("<button type=button>");const xe=["pink","mint","orange","purple","cyan","lime"];function je(s){const y=te(),B=re(),_=ae(),i=oe(),w=A(()=>ie(s.project.worktree)),k=A(()=>s.project.name||w()),[e,c]=ne({name:k(),color:s.project.icon?.color||"pink",iconUrl:s.project.icon?.override||"",startup:s.project.commands?.start??"",dragOver:!1,iconHover:!1});let U;function z(r){if(!r.type.startsWith("image/"))return;const a=new FileReader;a.onload=g=>{c("iconUrl",g.target?.result),c("iconHover",!1)},a.readAsDataURL(r)}function N(r){r.preventDefault(),c("dragOver",!1);const a=r.dataTransfer?.files[0];a&&z(a)}function V(r){r.preventDefault(),c("dragOver",!0)}function q(){c("dragOver",!1)}function W(r){const g=r.target.files?.[0];g&&z(g)}function Y(){c("iconUrl","")}const b=le(()=>({mutationFn:async()=>{const r=e.name.trim()===w()?"":e.name.trim(),a=e.startup.trim();if(s.project.id&&s.project.id!=="global"){await B.client.project.update({projectID:s.project.id,directory:s.project.worktree,name:r,icon:{color:e.color,override:e.iconUrl},commands:{start:a}}),_.project.icon(s.project.worktree,e.iconUrl||void 0),y.close();return}_.project.meta(s.project.worktree,{name:r,icon:{color:e.color,override:e.iconUrl||void 0},commands:{start:a||void 0}}),y.close()}}));function J(r){r.preventDefault(),!b.isPending&&b.mutate()}return l(ue,{get title(){return i.t("dialog.project.edit.title")},class:"w-full max-w-[480px] mx-auto",get children(){var r=me(),a=r.firstChild,g=a.firstChild,C=g.firstChild,Q=C.nextSibling,x=Q.firstChild,f=x.firstChild,h=f.nextSibling,$=h.nextSibling,S=x.nextSibling,X=S.nextSibling,D=X.firstChild,Z=D.nextSibling,E=a.nextSibling;return r.addEventListener("submit",J),o(a,l(F,{autofocus:!0,type:"text",get label(){return i.t("dialog.project.edit.name")},get placeholder(){return w()},get value(){return e.name},onChange:t=>c("name",t)}),g),o(C,()=>i.t("dialog.project.edit.icon")),x.addEventListener("mouseleave",()=>c("iconHover",!1)),x.addEventListener("mouseenter",()=>c("iconHover",!0)),f.$$click=()=>{e.iconUrl&&e.iconHover?Y():U?.click()},f.addEventListener("dragleave",q),f.addEventListener("dragover",V),f.addEventListener("drop",N),o(f,l(I,{get when(){return e.iconUrl},get fallback(){return(()=>{var t=pe();return o(t,l(P,R({get fallback(){return e.name||k()}},()=>G(e.color),{class:"size-full text-[32px]"}))),t})()},get children(){var t=ge();return L(d=>{var m=e.iconUrl,n=i.t("dialog.project.edit.icon.alt");return m!==d.e&&j(t,"src",d.e=m),n!==d.t&&j(t,"alt",d.t=n),d},{e:void 0,t:void 0}),t}})),o(h,l(K,{name:"cloud-upload",size:"large",class:"text-icon-on-interactive-base drop-shadow-sm"})),o($,l(K,{name:"trash",size:"large",class:"text-icon-on-interactive-base drop-shadow-sm"})),S.addEventListener("change",W),se(t=>{U=t},S),o(D,()=>i.t("dialog.project.edit.icon.hint")),o(Z,()=>i.t("dialog.project.edit.icon.recommended")),o(a,l(I,{get when(){return!e.iconUrl},get children(){var t=fe(),d=t.firstChild,m=d.nextSibling;return o(d,()=>i.t("dialog.project.edit.color")),o(m,l(ce,{each:xe,children:n=>(()=>{var v=be();return v.$$click=()=>c("color",n),o(v,l(P,R({get fallback(){return e.name||k()}},()=>G(n),{class:"size-full rounded"}))),L(u=>{var H=i.t("dialog.project.edit.color.select",{color:n}),O=e.color===n,ee={"flex items-center justify-center size-10 p-0.5 rounded-lg overflow-hidden transition-colors cursor-default":!0,"bg-transparent border-2 border-icon-strong-base hover:bg-surface-base-hover":e.color===n,"bg-transparent border border-transparent hover:bg-surface-base-hover hover:border-border-weak-base":e.color!==n};return H!==u.e&&j(v,"aria-label",u.e=H),O!==u.t&&j(v,"aria-pressed",u.t=O),u.a=M(v,ee,u.a),u},{e:void 0,t:void 0,a:void 0}),v})()})),t}}),null),o(a,l(F,{multiline:!0,get label(){return i.t("dialog.project.edit.worktree.startup")},get description(){return i.t("dialog.project.edit.worktree.startup.description")},get placeholder(){return i.t("dialog.project.edit.worktree.startup.placeholder")},get value(){return e.startup},onChange:t=>c("startup",t),spellcheck:!1,class:"max-h-14 w-full overflow-y-auto font-mono text-xs"}),null),o(E,l(T,{type:"button",variant:"ghost",size:"large",onClick:()=>y.close(),get children(){return i.t("common.cancel")}}),null),o(E,l(T,{type:"submit",variant:"primary",size:"large",get disabled(){return b.isPending},get children(){return de(()=>!!b.isPending)()?i.t("common.saving"):i.t("common.save")}}),null),L(t=>{var d={"border-text-interactive-base bg-surface-info-base/20":e.dragOver,"border-border-base hover:border-border-strong":!e.dragOver,"overflow-hidden":!!e.iconUrl},m=!!(e.iconHover&&!e.iconUrl),n=!(e.iconHover&&!e.iconUrl),v=!!(e.iconHover&&e.iconUrl),u=!(e.iconHover&&e.iconUrl);return t.e=M(f,d,t.e),m!==t.t&&h.classList.toggle("opacity-100",t.t=m),n!==t.a&&h.classList.toggle("opacity-0",t.a=n),v!==t.o&&$.classList.toggle("opacity-100",t.o=v),u!==t.i&&$.classList.toggle("opacity-0",t.i=u),t},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),r}})}ve(["click"]);export{je as DialogEditProject};
1
+ import{c as te,y as re,u as ae,f as oe,i as A,A as ie,H as ne,L as le,m as l,l as o,p as F,S as I,q as L,$ as j,a0 as P,a1 as R,a2 as G,I as K,j as se,F as ce,V as M,B as T,n as de,G as ue,t as p,v as ve}from"./index-DMyAFOcC.js";var ge=p('<img class="size-full object-cover">'),fe=p('<div class="flex flex-col gap-2"><label class="text-12-medium text-text-weak"></label><div class="flex gap-1.5">'),me=p('<form class="flex flex-col gap-6 p-6 pt-0"><div class="flex flex-col gap-4"><div class="flex flex-col gap-2"><label class="text-12-medium text-text-weak"></label><div class="flex gap-3 items-start"><div class=relative><div class="relative size-16 rounded-md transition-colors cursor-pointer"></div><div class="absolute inset-0 size-16 bg-surface-raised-stronger-non-alpha/90 rounded-[6px] z-10 pointer-events-none flex items-center justify-center transition-opacity"></div><div class="absolute inset-0 size-16 bg-surface-raised-stronger-non-alpha/90 rounded-[6px] z-10 pointer-events-none flex items-center justify-center transition-opacity"></div></div><input id=icon-upload type=file accept=image/* class=hidden><div class="flex flex-col gap-1.5 text-12-regular text-text-weak self-center"><span></span><span></span></div></div></div></div><div class="flex justify-end gap-2">'),pe=p('<div class="size-full flex items-center justify-center">'),be=p("<button type=button>");const xe=["pink","mint","orange","purple","cyan","lime"];function je(s){const y=te(),B=re(),_=ae(),i=oe(),w=A(()=>ie(s.project.worktree)),k=A(()=>s.project.name||w()),[e,c]=ne({name:k(),color:s.project.icon?.color||"pink",iconUrl:s.project.icon?.override||"",startup:s.project.commands?.start??"",dragOver:!1,iconHover:!1});let U;function z(r){if(!r.type.startsWith("image/"))return;const a=new FileReader;a.onload=g=>{c("iconUrl",g.target?.result),c("iconHover",!1)},a.readAsDataURL(r)}function N(r){r.preventDefault(),c("dragOver",!1);const a=r.dataTransfer?.files[0];a&&z(a)}function V(r){r.preventDefault(),c("dragOver",!0)}function q(){c("dragOver",!1)}function W(r){const g=r.target.files?.[0];g&&z(g)}function Y(){c("iconUrl","")}const b=le(()=>({mutationFn:async()=>{const r=e.name.trim()===w()?"":e.name.trim(),a=e.startup.trim();if(s.project.id&&s.project.id!=="global"){await B.client.project.update({projectID:s.project.id,directory:s.project.worktree,name:r,icon:{color:e.color,override:e.iconUrl},commands:{start:a}}),_.project.icon(s.project.worktree,e.iconUrl||void 0),y.close();return}_.project.meta(s.project.worktree,{name:r,icon:{color:e.color,override:e.iconUrl||void 0},commands:{start:a||void 0}}),y.close()}}));function J(r){r.preventDefault(),!b.isPending&&b.mutate()}return l(ue,{get title(){return i.t("dialog.project.edit.title")},class:"w-full max-w-[480px] mx-auto",get children(){var r=me(),a=r.firstChild,g=a.firstChild,C=g.firstChild,Q=C.nextSibling,x=Q.firstChild,f=x.firstChild,h=f.nextSibling,$=h.nextSibling,S=x.nextSibling,X=S.nextSibling,D=X.firstChild,Z=D.nextSibling,E=a.nextSibling;return r.addEventListener("submit",J),o(a,l(F,{autofocus:!0,type:"text",get label(){return i.t("dialog.project.edit.name")},get placeholder(){return w()},get value(){return e.name},onChange:t=>c("name",t)}),g),o(C,()=>i.t("dialog.project.edit.icon")),x.addEventListener("mouseleave",()=>c("iconHover",!1)),x.addEventListener("mouseenter",()=>c("iconHover",!0)),f.$$click=()=>{e.iconUrl&&e.iconHover?Y():U?.click()},f.addEventListener("dragleave",q),f.addEventListener("dragover",V),f.addEventListener("drop",N),o(f,l(I,{get when(){return e.iconUrl},get fallback(){return(()=>{var t=pe();return o(t,l(P,R({get fallback(){return e.name||k()}},()=>G(e.color),{class:"size-full text-[32px]"}))),t})()},get children(){var t=ge();return L(d=>{var m=e.iconUrl,n=i.t("dialog.project.edit.icon.alt");return m!==d.e&&j(t,"src",d.e=m),n!==d.t&&j(t,"alt",d.t=n),d},{e:void 0,t:void 0}),t}})),o(h,l(K,{name:"cloud-upload",size:"large",class:"text-icon-on-interactive-base drop-shadow-sm"})),o($,l(K,{name:"trash",size:"large",class:"text-icon-on-interactive-base drop-shadow-sm"})),S.addEventListener("change",W),se(t=>{U=t},S),o(D,()=>i.t("dialog.project.edit.icon.hint")),o(Z,()=>i.t("dialog.project.edit.icon.recommended")),o(a,l(I,{get when(){return!e.iconUrl},get children(){var t=fe(),d=t.firstChild,m=d.nextSibling;return o(d,()=>i.t("dialog.project.edit.color")),o(m,l(ce,{each:xe,children:n=>(()=>{var v=be();return v.$$click=()=>c("color",n),o(v,l(P,R({get fallback(){return e.name||k()}},()=>G(n),{class:"size-full rounded"}))),L(u=>{var H=i.t("dialog.project.edit.color.select",{color:n}),O=e.color===n,ee={"flex items-center justify-center size-10 p-0.5 rounded-lg overflow-hidden transition-colors cursor-default":!0,"bg-transparent border-2 border-icon-strong-base hover:bg-surface-base-hover":e.color===n,"bg-transparent border border-transparent hover:bg-surface-base-hover hover:border-border-weak-base":e.color!==n};return H!==u.e&&j(v,"aria-label",u.e=H),O!==u.t&&j(v,"aria-pressed",u.t=O),u.a=M(v,ee,u.a),u},{e:void 0,t:void 0,a:void 0}),v})()})),t}}),null),o(a,l(F,{multiline:!0,get label(){return i.t("dialog.project.edit.worktree.startup")},get description(){return i.t("dialog.project.edit.worktree.startup.description")},get placeholder(){return i.t("dialog.project.edit.worktree.startup.placeholder")},get value(){return e.startup},onChange:t=>c("startup",t),spellcheck:!1,class:"max-h-14 w-full overflow-y-auto font-mono text-xs"}),null),o(E,l(T,{type:"button",variant:"ghost",size:"large",onClick:()=>y.close(),get children(){return i.t("common.cancel")}}),null),o(E,l(T,{type:"submit",variant:"primary",size:"large",get disabled(){return b.isPending},get children(){return de(()=>!!b.isPending)()?i.t("common.saving"):i.t("common.save")}}),null),L(t=>{var d={"border-text-interactive-base bg-surface-info-base/20":e.dragOver,"border-border-base hover:border-border-strong":!e.dragOver,"overflow-hidden":!!e.iconUrl},m=!!(e.iconHover&&!e.iconUrl),n=!(e.iconHover&&!e.iconUrl),v=!!(e.iconHover&&e.iconUrl),u=!(e.iconHover&&e.iconUrl);return t.e=M(f,d,t.e),m!==t.t&&h.classList.toggle("opacity-100",t.t=m),n!==t.a&&h.classList.toggle("opacity-0",t.a=n),v!==t.o&&$.classList.toggle("opacity-100",t.o=v),u!==t.i&&$.classList.toggle("opacity-0",t.i=u),t},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),r}})}ve(["click"]);export{je as DialogEditProject};
@@ -0,0 +1 @@
1
+ import{a8 as v,d as D,a3 as S,a4 as k,a9 as _,c as $,f as w,i as P,m as d,l as u,G as F,r as L,J as p,t as I}from"./index-DMyAFOcC.js";import{L as T}from"./list-HsPczU9B.js";import{e as b}from"./session-fOsXx5rL.js";import"./tabs-b5kQDmsB.js";import"./select-DxXmJhya.js";import"./tag-BHNb4BJv.js";import"./transform-BwXaE9hv.js";var q=I('<div class="w-full flex items-center gap-2"><span class="truncate flex-1 min-w-0 text-left font-normal"></span><span class="text-text-weak shrink-0 font-normal">');function C(i){return i.toLocaleTimeString(void 0,{timeStyle:"short"})}const z=()=>{const i=v(),g=D(),c=S(),l=k(),f=_(),h=$(),r=w(),x=P(()=>{const t=i.id;if(!t)return[];const a=c.data.message[t]??[],o=[];for(const s of a){if(s.role!=="user")continue;const e=(c.data.part[s.id]??[]).find(n=>n.type==="text"&&!n.synthetic&&!n.ignored);e&&o.push({id:s.id,text:e.text.replace(/\n/g," ").slice(0,200),time:C(new Date(s.time.created))})}return o.reverse()}),y=t=>{if(!t)return;const a=i.id;if(!a)return;const o=c.data.part[t.id]??[],s=b(o,{directory:l.directory,attachmentName:r.t("common.attachment")}),m=L(l.directory);l.client.session.fork({sessionID:a,messageID:t.id}).then(e=>{if(!e.data){p({title:r.t("common.requestFailed")});return}h.close(),f.set(s,void 0,{dir:m,id:e.data.id}),g(`/${m}/session/${e.data.id}`)}).catch(e=>{const n=e instanceof Error?e.message:String(e);p({title:r.t("common.requestFailed"),description:n})})};return d(F,{get title(){return r.t("command.session.fork")},get children(){return d(T,{class:"flex-1 min-h-0 [&_[data-slot=list-scroll]]:flex-1 [&_[data-slot=list-scroll]]:min-h-0",get search(){return{placeholder:r.t("common.search.placeholder"),autofocus:!0}},get emptyMessage(){return r.t("dialog.fork.empty")},key:t=>t.id,items:x,filterKeys:["text"],onSelect:y,children:t=>(()=>{var a=q(),o=a.firstChild,s=o.nextSibling;return u(o,()=>t.text),u(s,()=>t.time),a})()})}})};export{z as DialogFork};
@@ -0,0 +1 @@
1
+ import{aa as y,f as D,c as b,m as o,l as n,Z as I,B as k,G as $,t as g,ac as C,v as P}from"./index-DMyAFOcC.js";import{L}from"./list-HsPczU9B.js";import{S as c}from"./switch-D4TikNGe.js";import{D as _}from"./dialog-select-provider-DCUcnqs5.js";import"./tag-BHNb4BJv.js";import"./dialog-connect-provider-DD-ABicH.js";var B=g("<span>"),S=g('<div class="w-full flex items-center justify-between gap-x-3"><span></span><div>');const G=()=>{const t=y(),d=D(),u=b(),v=()=>{u.show(()=>o(_,{}))},s=e=>C.indexOf(e),m=e=>t.model.list().filter(r=>r.provider.id===e),h=e=>m(e).every(r=>t.model.visible({modelID:r.id,providerID:r.provider.id})),f=(e,r)=>{m(e).forEach(i=>{t.model.setVisibility({modelID:i.id,providerID:i.provider.id},r)})};return o($,{get title(){return d.t("dialog.model.manage")},get description(){return d.t("dialog.model.manage.description")},get action(){return o(k,{class:"h-7 -my-1 text-14-medium",icon:"plus-small",tabIndex:-1,onClick:v,get children(){return d.t("command.provider.connect")}})},get children(){return o(L,{get search(){return{placeholder:d.t("dialog.model.search.placeholder"),autofocus:!0}},get emptyMessage(){return d.t("dialog.model.empty")},key:e=>`${e?.provider?.id}:${e?.id}`,get items(){return t.model.list()},filterKeys:["provider.name","name","id"],sortBy:(e,r)=>e.name.localeCompare(r.name),groupBy:e=>e.provider.id,groupHeader:e=>{const r=e.items[0].provider;return[(()=>{var i=B();return n(i,()=>r.name),i})(),o(I,{placement:"top",get value(){return d.t("dialog.model.manage.provider.toggle",{provider:r.name})},get children(){return o(c,{class:"-mr-1",get checked(){return h(r.id)},onChange:i=>f(r.id,i),hideLabel:!0,get children(){return r.name}})}})]},sortGroupsBy:(e,r)=>{const i=s(e.items[0].provider.id),l=s(r.items[0].provider.id),a=i>=0,p=l>=0;return a&&!p?-1:!a&&p?1:i-l},onSelect:e=>{if(!e)return;const r={modelID:e.id,providerID:e.provider.id};t.model.setVisibility(r,!t.model.visible(r))},children:e=>(()=>{var r=S(),i=r.firstChild,l=i.nextSibling;return n(i,()=>e.name),l.$$click=a=>a.stopPropagation(),n(l,o(c,{get checked(){return!!t.model.visible({modelID:e.id,providerID:e.provider.id})},onChange:a=>{t.model.setVisibility({modelID:e.id,providerID:e.provider.id},a)}})),r})()})}})};P(["click"]);export{G as DialogManageModels};
@@ -0,0 +1,6 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dialog-create-project-CDuD9Ck4.js","assets/index-DMyAFOcC.js","assets/index-CUuPDPB8.css","assets/dialog-clone-project-CTlT0wyo.js"])))=>i.map(i=>d[i]);
2
+ import{u as J,y as Q,a as U,c as X,f as tt,h as et,i as C,z as rt,A as D,m as _,l as b,I as M,C as Z,E as nt,_ as B,G as st,t as T}from"./index-DMyAFOcC.js";import{L as ot,f as at}from"./list-HsPczU9B.js";var G=T('<div class="w-full flex items-center justify-between rounded-md"><div class="flex items-center gap-x-3 grow min-w-0"><span class="text-14-regular text-text-interactive-base">'),it=T('<div class="w-full flex items-center justify-between rounded-md"><div class="flex items-center gap-x-3 grow min-w-0"><div class="flex items-center text-14-regular min-w-0"><span class="text-text-strong whitespace-nowrap">~</span><span class="text-text-weak whitespace-nowrap">/'),ct=T('<div class="w-full flex items-center justify-between rounded-md"><div class="flex items-center gap-x-3 grow min-w-0"><div class="flex items-center text-14-regular min-w-0"><span class="text-text-weak whitespace-nowrap overflow-hidden overflow-ellipsis truncate min-w-0"></span><span class="text-text-strong whitespace-nowrap"></span><span class="text-text-weak whitespace-nowrap">/');const O="__clone__";function H(n){return((n??"").split(/\r?\n/)[0]??"").replace(/[\u0000-\u001F\u007F]/g,"").trim()}function lt(n){const t=n.replaceAll("\\","/");return t.startsWith("//")&&!t.startsWith("///")?"//"+t.slice(2).replace(/\/+/g,"/"):t.replace(/\/+/g,"/")}function x(n){const t=lt(n);return/^[A-Za-z]:$/.test(t)?t+"/":t}function p(n){const t=x(n);return t==="/"||t==="//"||/^[A-Za-z]:\/$/.test(t)?t:t.replace(/\/+$/,"")}function ut(n,t){const o=p(n??""),i=p(t).replace(/^\/+/,"");return o?i?o.endsWith("/")?o+i:o+"/"+i:o:i}function F(n){const t=x(n);return t.startsWith("//")?"//":t.startsWith("/")?"/":/^[A-Za-z]:\//.test(t)?t.slice(0,3):""}function ft(n){const t=p(n);if(t==="/"||t==="//"||/^[A-Za-z]:\/$/.test(t))return t;const o=t.lastIndexOf("/");return o<=0?"/":o===2&&/^[A-Za-z]:/.test(t)?t.slice(0,3):t.slice(0,o)}function dt(n){const t=x(n.trim());return t?t.startsWith("~")?"tilde":F(t)?"absolute":"relative":"relative"}function N(n,t){const o=p(n);if(!t)return"";const i=p(t),g=o.toLowerCase(),l=i.toLowerCase();return g===l?"~":g.startsWith(l+"/")?"~"+o.slice(i.length):""}function V(n,t,o){const i=p(n);return dt(t)==="absolute"?i:N(i,o)||i}function q(n,t,o){const i=p(n),g=N(i,t),l=c=>c?c.endsWith("/")?c:c+"/":"",w=Array.from(new Set([i,l(i),g,l(g),D(i)].filter(Boolean))).join(`
3
+ `);return{absolute:i,search:w,group:o}}function ht(n){const t=new Set;return n.filter(o=>t.has(o.absolute)?!1:(t.add(o.absolute),!0))}function pt(n){const t=new Map;let o=0;const i=w=>{const c=n.start();if(!c)return;const a=x(w);if(!a)return{directory:p(c),path:""};const y=n.home();if(a==="~")return{directory:p(y||c),path:""};if(a.startsWith("~/"))return{directory:p(y||c),path:a.slice(2)};const u=F(a);return u?{directory:p(u),path:a.slice(u.length)}:{directory:p(c),path:a}},g=async w=>{const c=p(w),a=t.get(c);if(a)return a;const y=n.sdk.client.file.list({directory:c,path:""}).then(u=>u.data??[]).catch(()=>[]).then(u=>u.filter(d=>d.type==="directory").map(d=>({name:d.name,absolute:p(x(d.absolute))})));return t.set(c,y),y},l=async(w,c,a)=>{const y=await g(w);return c?at.go(c,y,{key:"name",limit:a}).map(u=>u.obj.absolute):y.slice(0,a).map(u=>u.absolute)};return async w=>{const c=++o,a=()=>c===o,y=H(w),u=i(y);if(!u)return[];const d=x(y),W=d.startsWith("~")||!!F(d)||d.includes("/"),z=x(u.path),L=()=>n.sdk.client.find.files({directory:u.directory,query:z,type:"directory",limit:50}).then(m=>m.data??[]).catch(()=>[]);if(!W){const m=await L();return a()?m.map(I=>ut(u.directory,I)).slice(0,50):[]}const v=z.replace(/^\/+/,"").split("/"),R=v.slice(0,v.length-1).filter(m=>m&&m!=="."),S=v[v.length-1]??"",E=12,P=4;let e=[u.directory];for(const m of R){if(!a())return[];if(m===".."){e=e.map(ft);continue}const I=(await Promise.all(e.map(Y=>l(Y,m,P)))).flat();if(!a())return[];if(e=Array.from(new Set(I)).slice(0,E),e.length===0)return[]}const f=(await Promise.all(e.map(m=>l(m,S,50)))).flat();if(!a())return[];const r=Array.from(new Set(f)),s=d.startsWith("~")?p(u.directory):"";if(!!d.endsWith("/")||!S)return(s?Array.from(new Set([s,...r])):r).slice(0,50);const $=S.toLowerCase(),k=r.filter(m=>D(m).toLowerCase()===$)[0];if(!k)return r.slice(0,50);const j=await l(k,"",30);if(!a())return[];const K=Array.from(new Set([...r,...j]));return(s?Array.from(new Set([s,...K])):K).slice(0,50)}}function yt(n){const t=J(),o=Q(),i=U(),g=X(),l=tt(),[w,c]=et("");let a;const y=C(()=>!(t.data.path.home||t.data.path.directory)),[u]=rt(()=>y()?!0:void 0,async()=>o.client.path.get().then(e=>e.data).catch(()=>{}),{initialValue:void 0}),d=C(()=>t.data.path.home||u.latest?.home||""),W=C(()=>d()+"/.turtlecode"),z=C(()=>W()),L=pt({sdk:o,home:d,start:z}),v=C(()=>{const e=i.projects.list(),f=new Map;for(const r of e){let s=0;const h=[r.worktree,...r.sandboxes??[]];for(const $ of h){const A=t.child($,{bootstrap:!1})[0].session;for(const k of A){if(k.time.archived)continue;const j=k.time.updated??k.time.created;j>s&&(s=j)}}f.set(r.worktree,s)}return e.map((r,s)=>({project:r,at:f.get(r.worktree)??0,index:s})).sort((r,s)=>s.at-r.at||r.index-s.index).slice(0,5).map(({project:r})=>{const s=q(r.worktree,d(),"recent"),h=r.name||D(r.worktree);return{...s,search:`${s.search}
4
+ ${h}`}})}),R={absolute:"__create__",search:l.t("dialog.directory.create")+`
5
+ new blank project`,group:"create"},S={absolute:O,search:l.t("dialog.clone.title")+`
6
+ clone github import`,group:"create"},E=async e=>{const r=(await L(e)).map(s=>q(s,d(),"folders"));return[R,S,...ht([...v(),...r])]};function P(e){n.onSelect(n.multiple?[e]:e),g.close()}return _(st,{get title(){return n.title??l.t("command.project.open")},get children(){return _(ot,{get search(){return{placeholder:l.t("dialog.directory.search.placeholder"),autofocus:!0}},get emptyMessage(){return l.t("dialog.directory.empty")},get loadingMessage(){return l.t("common.loading")},items:E,key:e=>e.absolute,filterKeys:["search"],groupBy:e=>e.group,sortGroupsBy:(e,f)=>e.category===f.category?0:e.category==="create"?-1:f.category==="create"?1:e.category==="recent"?-1:1,groupHeader:e=>{if(e.category!=="create")return e.category==="recent"?l.t("home.recentProjects"):l.t("command.project.open")},ref:e=>a=e,onFilter:e=>c(H(e)),onKeyEvent:(e,f)=>{if(e.key!=="Tab"||e.shiftKey||!f)return;e.preventDefault(),e.stopPropagation();const r=V(f.absolute,w(),d());a?.setFilter(r.endsWith("/")?r:r+"/")},onSelect:e=>{if(e){if(e.absolute==="__create__"){g.close(),setTimeout(()=>{B(()=>import("./dialog-create-project-CDuD9Ck4.js"),__vite__mapDeps([0,1,2])).then(f=>{g.show(()=>_(f.DialogCreateProject,{get multiple(){return n.multiple},get onSelect(){return n.onSelect}}),()=>n.onSelect(null))})});return}if(e.absolute===O){g.close(),setTimeout(()=>{B(()=>import("./dialog-clone-project-CTlT0wyo.js"),__vite__mapDeps([3,1,2])).then(f=>{g.show(()=>_(f.DialogCloneProject,{onSelect:r=>r&&P(r)}),()=>n.onSelect(null))})});return}P(e.absolute)}},children:e=>{if(e.absolute==="__create__")return(()=>{var r=G(),s=r.firstChild,h=s.firstChild;return b(s,_(M,{name:"plus",size:"small",class:"shrink-0 size-4 text-icon-interactive-base"}),h),b(h,()=>l.t("dialog.directory.create")),r})();if(e.absolute===O)return(()=>{var r=G(),s=r.firstChild,h=s.firstChild;return b(s,_(M,{name:"branch",size:"small",class:"shrink-0 size-4 text-icon-interactive-base"}),h),b(h,()=>l.t("dialog.clone.title")),r})();const f=V(e.absolute,w(),d());return f==="~"?(()=>{var r=it(),s=r.firstChild,h=s.firstChild;return b(s,_(Z,{get node(){return{path:e.absolute,type:"directory"}},class:"shrink-0 size-4"}),h),r})():(()=>{var r=ct(),s=r.firstChild,h=s.firstChild,$=h.firstChild,A=$.nextSibling;return b(s,_(Z,{get node(){return{path:e.absolute,type:"directory"}},class:"shrink-0 size-4"}),h),b($,()=>nt(f)),b(A,()=>D(f)),r})()}})}})}export{yt as DialogSelectDirectory};
@@ -0,0 +1 @@
1
+ import{l as g,q as T,V as Q,t as S,aK as U,f as X,a as Z,aL as ee,c as te,d as ne,y as se,u as re,aM as ae,h as oe,i as b,P as ie,m as y,aN as ce,aF as le,aG as j,S as C,aO as de,I as ue,C as fe,E as ge,A as K,G as he,r as pe}from"./index-DMyAFOcC.js";import{L as me}from"./list-HsPczU9B.js";import{c as we}from"./session-fOsXx5rL.js";import"./tabs-b5kQDmsB.js";import"./select-DxXmJhya.js";import"./tag-BHNb4BJv.js";import"./transform-BwXaE9hv.js";var ye=S("<span data-component=keybind>");function ve(t){return(()=>{var n=ye();return g(n,()=>t.children),T(a=>Q(n,{...t.classList??{},[t.class??""]:!!t.class},a)),n})()}function be(t,n){const a=new Date(t),r=new Date().getTime()-a.getTime(),c=Math.floor(r/1e3),u=Math.floor(c/60),o=Math.floor(u/60),f=Math.floor(o/24);return c<60?n("common.time.justNow"):u<60?n("common.time.minutesAgo.short",{count:u}):o<24?n("common.time.hoursAgo.short",{count:o}):n("common.time.daysAgo.short",{count:f})}var P=S('<span class="text-14-regular text-text-weak truncate">'),xe=S('<div class="w-full flex items-center justify-between gap-4"><div class="flex items-center gap-2 min-w-0"><span class="text-14-regular text-text-strong whitespace-nowrap">'),$e=S('<span class="text-12-regular text-text-weak whitespace-nowrap ml-2">'),ke=S('<div class="w-full flex items-center justify-between rounded-md pl-1"><div class="flex items-center gap-x-3 grow min-w-0"><div class="flex items-center gap-2 min-w-0"><span class="text-14-regular text-text-strong truncate">'),Se=S('<div class="w-full flex items-center justify-between rounded-md pl-1"><div class="flex items-center gap-x-3 grow min-w-0"><div class="flex items-center text-14-regular"><span class="text-text-weak whitespace-nowrap overflow-hidden overflow-ellipsis truncate min-w-0"></span><span class="text-text-strong whitespace-nowrap">');const E=5,_e=["session.new","workspace.new","session.previous","session.next","terminal.toggle","review.toggle"],A=t=>{const n=new Set,a=[];for(const h of t)n.has(h.id)||(n.add(h.id),a.push(h));return a},N=(t,n)=>({id:"command:"+t.id,type:"command",title:t.title,description:t.description,keybind:t.keybind,category:n,option:t}),D=(t,n)=>({id:"file:"+t,type:"file",title:t,category:n,path:t}),Me=(t,n)=>({id:`session:${t.directory}:${t.id}`,type:"session",title:t.title,description:t.description,category:n,directory:t.directory,sessionID:t.id,archived:t.archived,updated:t.updated});function Ce(t){const n=b(()=>t.filesOnly()?[]:t.command.options.filter(r=>!r.disabled&&!r.id.startsWith("suggested.")&&r.id!=="file.open")),a=b(()=>{const r=t.language.t("palette.group.commands");return n().map(c=>N(c,r))}),h=b(()=>{const r=n(),c=new Map(_e.map((i,l)=>[i,l])),u=r.filter(i=>c.has(i.id)),o=u.length?u:r.slice(0,E),f=u.length?[...o].sort((i,l)=>(c.get(i.id)??0)-(c.get(l.id)??0)):o,v=t.language.t("palette.group.commands");return f.map(i=>N(i,v))});return{allowed:n,list:a,picks:h}}function De(t){const n=we({tabs:t.tabs,pathFromTab:t.file.pathFromTab,normalizeTab:r=>r.startsWith("file://")?t.file.tab(r):r}),a=b(()=>{const r=n.openedTabs(),c=n.activeFileTab(),u=c?[c,...r.filter(i=>i!==c)]:r,o=new Set,f=t.language.t("palette.group.files"),v=[];for(const i of u){const l=t.file.pathFromTab(i);l&&(o.has(l)||(o.add(l),v.push(D(l,f))))}return v.slice(0,E)}),h=b(()=>{const r=t.language.t("palette.group.files");return t.file.tree.children("").filter(o=>o.type==="file").map(o=>o.path).sort((o,f)=>o.localeCompare(f)).slice(0,E).map(o=>D(o,r))});return{recent:a,root:h}}function Fe(t){const n={token:0,inflight:void 0,cached:void 0};return{sessions:h=>{if(!h.trim())return n.token+=1,n.inflight=void 0,n.cached=void 0,[];if(n.cached)return n.cached;if(n.inflight)return n.inflight;const c=n.token,u=t.workspaces();return u.length===0?[]:(n.inflight=Promise.all(u.map(o=>{const f=t.label(o);return t.globalSDK.client.session.list({directory:o,roots:!0}).then(v=>(v.data??[]).filter(i=>!!i?.id).map(i=>({id:i.id,title:i.title??t.language.t("command.session.new"),description:f,directory:o,archived:i.time?.archived,updated:i.time?.updated}))).catch(()=>[])})).then(o=>{if(n.token!==c)return[];const f=new Set,v=t.language.t("command.category.session"),i=o.flat().filter(l=>{const $=`${l.directory}:${l.id}`;return f.has($)?!1:(f.add($),!0)}).map(l=>Me(l,v));return n.cached=i,i}).catch(()=>[]).finally(()=>{n.inflight=void 0}),n.inflight)}}}function Pe(t){const n=U(),a=X(),h=Z(),r=ee(),c=te(),u=ne(),o=se(),f=re(),{params:v,tabs:i,view:l}=ae(),$=()=>t.mode==="files",k={cleanup:void 0,committed:!1},[q,G]=oe(!1),I=Ce({filesOnly:$,command:n,language:a}),_=De({file:r,tabs:i,language:a}),L=b(()=>ce(v.dir)??""),O=b(()=>{const e=L();if(e)return h.projects.list().find(s=>s.worktree===e||s.sandboxes?.includes(e))}),z=b(()=>{const e=L(),s=O();if(!s)return e?[e]:[];const d=[s.worktree,...s.sandboxes??[]];return e&&!d.includes(e)?[...d,e]:d}),R=b(()=>f.data.path.home),H=e=>{const s=O(),d=s&&e===s.worktree?a.t("workspace.type.local"):a.t("workspace.type.sandbox"),[m]=f.child(e,{bootstrap:!1}),p=R(),w=p?e.replace(p,"~"):e,x=m.vcs?.branch??K(e);return`${d} : ${x||w}`},{sessions:W}=Fe({workspaces:z,label:H,globalSDK:o,language:a}),B=async e=>{const s=e.trim();if(G(s.length>0),!s&&$()){const x=r.tree.state("")?.loaded,F=x?Promise.resolve():r.tree.list(""),M=A([..._.recent(),..._.root()]);return x||M.length>0?M:(await F,A([..._.recent(),..._.root()]))}if(!s)return[...I.picks(),..._.recent()];if($()){const x=await r.searchFiles(s),F=a.t("palette.group.files");return x.map(M=>D(M,F))}const[d,m]=await Promise.all([r.searchFiles(s),Promise.resolve(W(s))]),p=a.t("palette.group.files"),w=d.map(x=>D(x,p));return[...I.list(),...m,...w]},V=e=>{k.cleanup?.(),e&&e.type==="command"&&(k.cleanup=e.option?.onHighlight?.())},Y=e=>{const s=r.tab(e);i().open(s),r.load(e),l().reviewPanel.opened()||l().reviewPanel.open(),h.fileTree.setTab("all"),t.onOpenFile?.(e),i().setActive(s)},J=e=>{if(e){if(k.committed=!0,k.cleanup=void 0,c.close(),e.type==="command"){e.option?.onSelect?.("palette");return}if(e.type==="session"){if(!e.directory||!e.sessionID)return;u(`/${pe(e.directory)}/session/${e.sessionID}`);return}e.path&&Y(e.path)}};return ie(()=>{k.committed||k.cleanup?.()}),y(he,{class:"pt-3 pb-0 !max-h-[480px]",transition:!0,get children(){return y(me,{get search(){return{placeholder:$()?a.t("session.header.searchFiles"):a.t("palette.search.placeholder"),autofocus:!0,hideIcon:!0}},get emptyMessage(){return a.t("palette.empty")},get loadingMessage(){return a.t("common.loading")},items:B,key:e=>e.id,filterKeys:["title","description","category"],get groupBy(){return q()?e=>e.category:()=>""},onMove:V,onSelect:J,children:e=>y(le,{get fallback(){return(()=>{var s=Se(),d=s.firstChild,m=d.firstChild,p=m.firstChild,w=p.nextSibling;return g(d,y(fe,{get node(){return{path:e.path??"",type:"file"}},class:"shrink-0 size-4"}),m),g(p,()=>ge(e.path??"")),g(w,()=>K(e.path??"")),s})()},get children(){return[y(j,{get when(){return e.type==="command"},get children(){var s=xe(),d=s.firstChild,m=d.firstChild;return g(m,()=>e.title),g(d,y(C,{get when(){return e.description},get children(){var p=P();return g(p,()=>e.description),p}}),null),g(s,y(C,{get when(){return e.keybind},get children(){return y(ve,{class:"rounded-[4px]",get children(){return de(e.keybind??"",a.t)}})}}),null),s}}),y(j,{get when(){return e.type==="session"},get children(){var s=ke(),d=s.firstChild,m=d.firstChild,p=m.firstChild;return g(d,y(ue,{name:"bubble-5",size:"small",class:"shrink-0 text-icon-weak"}),m),g(p,()=>e.title),g(m,y(C,{get when(){return e.description},get children(){var w=P();return g(w,()=>e.description),T(()=>w.classList.toggle("opacity-70",!!e.archived)),w}}),null),g(s,y(C,{get when(){return e.updated},get children(){var w=$e();return g(w,()=>be(new Date(e.updated).toISOString(),a.t)),w}}),null),T(()=>p.classList.toggle("opacity-70",!!e.archived)),s}})]}})})}})}export{Pe as DialogSelectFile};
@@ -0,0 +1 @@
1
+ import{a3 as P,a4 as M,f as D,H as E,O as $,a7 as j,J as F,i as h,L as K,m as u,v as O,l as c,S as v,n as b,G as q,t as m}from"./index-DMyAFOcC.js";import{L as B}from"./list-HsPczU9B.js";import{S as G}from"./switch-D4TikNGe.js";var H=m('<span class="text-11-regular text-text-weaker">'),J=m('<span class="text-11-regular text-text-weak">'),T=m('<span class="text-11-regular text-text-weaker truncate">'),z=m('<div class="w-full flex items-center justify-between gap-x-3"><div class="flex flex-col gap-0.5 min-w-0"><div class="flex items-center gap-2"><span class=truncate></span></div></div><div>');const A={connected:"mcp.status.connected",failed:"mcp.status.failed",needs_auth:"mcp.status.needs_auth",disabled:"mcp.status.disabled"},R=()=>{const s=P(),d=M(),l=D(),[_,o]=E({done:!1,loading:!1});$(j(()=>s.data.mcp_ready,(e,t)=>{!e&&t&&o("done",!1)},{defer:!0})),$(()=>{if(!(_.done||_.loading)){if(s.data.mcp_ready){o("done",!0);return}o("loading",!0),d.client.mcp.status().then(e=>{s.set("mcp",e.data??{}),s.set("mcp_ready",!0),o("done",!0)}).catch(e=>{o("done",!0),F({variant:"error",title:l.t("common.requestFailed"),description:e instanceof Error?e.message:String(e)})}).finally(()=>{o("loading",!1)})}});const p=h(()=>Object.entries(s.data.mcp??{}).map(([e,t])=>({name:e,status:t.status})).sort((e,t)=>e.name.localeCompare(t.name))),n=K(()=>({mutationFn:async e=>{s.data.mcp[e]?.status==="connected"?await d.client.mcp.disconnect({name:e}):await d.client.mcp.connect({name:e});const i=await d.client.mcp.status();i.data&&s.set("mcp",i.data)}})),S=h(()=>p().filter(e=>e.status==="connected").length),k=h(()=>p().length);return u(q,{get title(){return l.t("dialog.mcp.title")},get description(){return l.t("dialog.mcp.description",{enabled:S(),total:k()})},get children(){return u(B,{get search(){return{placeholder:l.t("common.search.placeholder"),autofocus:!0}},get emptyMessage(){return l.t("dialog.mcp.empty")},key:e=>e?.name??"",items:p,filterKeys:["name","status"],sortBy:(e,t)=>e.name.localeCompare(t.name),onSelect:e=>{!e||n.isPending||n.mutate(e.name)},children:e=>{const t=()=>s.data.mcp[e.name],i=()=>t()?.status,w=()=>{const r=i()?A[i()]:void 0;if(r)return l.t(r)},x=()=>{const r=t();return r?.status==="failed"?r.error:void 0},C=()=>i()==="connected";return(()=>{var r=z(),g=r.firstChild,f=g.firstChild,L=f.firstChild,y=g.nextSibling;return c(L,()=>e.name),c(f,u(v,{get when(){return w()},get children(){var a=H();return c(a,w),a}}),null),c(f,u(v,{get when(){return b(()=>!!n.isPending)()&&n.variables===e.name},get children(){var a=J();return c(a,()=>l.t("common.loading.ellipsis")),a}}),null),c(g,u(v,{get when(){return x()},get children(){var a=T();return c(a,x),a}}),null),y.$$click=a=>a.stopPropagation(),c(y,u(G,{get checked(){return C()},get disabled(){return b(()=>!!n.isPending)()&&n.variables===e.name},onChange:()=>{n.isPending||n.mutate(e.name)}})),r})()}})}})};O(["click"]);export{R as DialogSelectMcp};
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dialog-connect-provider-DD-ABicH.js","assets/index-DMyAFOcC.js","assets/index-CUuPDPB8.css","assets/list-HsPczU9B.js","assets/tag-BHNb4BJv.js","assets/dialog-select-provider-DCUcnqs5.js"])))=>i.map(i=>d[i]);
2
+ import{aa as k,c as S,ab as E,f as I,m as t,l as r,S as c,Z as L,n as T,ac as g,B as M,G as O,t as u,_ as w,v as A}from"./index-DMyAFOcC.js";import{L as $}from"./list-HsPczU9B.js";import{T as m,P as B}from"./tag-BHNb4BJv.js";import{M as R}from"./session-fOsXx5rL.js";import"./tabs-b5kQDmsB.js";import"./select-DxXmJhya.js";import"./transform-BwXaE9hv.js";var G=u('<div class="flex flex-col gap-3 px-2.5"><div class="text-14-medium text-text-base px-2.5">'),K=u('<div class="px-1.5 pb-1.5"><div class="w-full rounded-sm border border-border-weak-base bg-surface-raised-base"><div class="w-full flex flex-col items-start gap-4 px-1.5 pt-4 pb-4"><div class="px-2 text-14-medium text-text-base"></div><div class=w-full>'),V=u('<div class="w-full flex items-center gap-x-2.5"><span>'),h=u('<div class="text-14-regular text-text-weak">'),j=u('<div class="w-full flex items-center gap-x-3"><span>');const J=b=>{const v=b.model??k().model,f=S(),y=E(),i=I(),D=l=>{w(()=>import("./dialog-connect-provider-DD-ABicH.js").then(s=>s.d),__vite__mapDeps([0,1,2,3,4])).then(s=>{f.show(()=>t(s.DialogConnectProvider,{provider:l}))})},C=()=>{w(()=>import("./dialog-select-provider-DCUcnqs5.js").then(l=>l.d),__vite__mapDeps([5,1,2,3,4,0])).then(l=>{f.show(()=>t(l.DialogSelectProvider,{}))})};let _;const P=l=>{l.key!=="Escape"&&_?.onKeyDown(l)};return t(O,{get title(){return i.t("dialog.model.select.title")},class:"overflow-y-auto [&_[data-slot=dialog-body]]:overflow-visible [&_[data-slot=dialog-body]]:flex-none",get children(){return[(()=>{var l=G(),s=l.firstChild;return l.$$keydown=P,r(s,()=>i.t("dialog.model.unpaid.freeModels.title")),r(l,t($,{class:"[&_[data-slot=list-scroll]]:overflow-visible",ref:e=>_=e,get items(){return v.list},get current(){return v.current()},key:e=>`${e.provider.id}:${e.id}`,itemWrapper:(e,d)=>t(L,{class:"w-full",placement:"right-start",gutter:12,get value(){return t(R,{model:e,get latest(){return e.latest},get free(){return T(()=>e.provider.id==="opencode")()&&(!e.cost||e.cost.input===0)}})},children:d}),onSelect:e=>{v.set(e?{modelID:e.id,providerID:e.provider.id}:void 0,{recent:!0}),f.close()},children:e=>(()=>{var d=V(),p=d.firstChild;return r(p,()=>e.name),r(d,t(m,{get children(){return i.t("model.tag.free")}}),null),r(d,t(c,{get when(){return e.latest},get children(){return t(m,{get children(){return i.t("model.tag.latest")}})}}),null),d})()}),null),l})(),(()=>{var l=K(),s=l.firstChild,e=s.firstChild,d=e.firstChild,p=d.nextSibling;return r(d,()=>i.t("dialog.model.unpaid.addMore.title")),r(p,t($,{class:"w-full px-0",key:o=>o?.id,get items(){return y.popular},activeIcon:"plus-small",sortBy:(o,n)=>g.includes(o.id)&&g.includes(n.id)?g.indexOf(o.id)-g.indexOf(n.id):o.name.localeCompare(n.name),onSelect:o=>{o&&D(o.id)},children:o=>(()=>{var n=j(),x=n.firstChild;return r(n,t(B,{"data-slot":"list-item-extra-icon",get id(){return o.id}}),x),r(x,()=>o.name),r(n,t(c,{get when(){return o.id==="opencode"},get children(){var a=h();return r(a,()=>i.t("dialog.provider.opencode.tagline")),a}}),null),r(n,t(c,{get when(){return o.id==="opencode"},get children(){return t(m,{get children(){return i.t("dialog.provider.tag.recommended")}})}}),null),r(n,t(c,{get when(){return o.id==="opencode-go"},get children(){return[(()=>{var a=h();return r(a,()=>i.t("dialog.provider.opencodeGo.tagline")),a})(),t(m,{get children(){return i.t("dialog.provider.tag.recommended")}})]}}),null),r(n,t(c,{get when(){return o.id==="anthropic"},get children(){var a=h();return r(a,()=>i.t("dialog.provider.anthropic.note")),a}}),null),n})()}),null),r(p,t(M,{variant:"ghost",class:"w-full justify-start px-[11px] py-3.5 gap-4.5 text-14-medium",icon:"dot-grid",onClick:C,get children(){return i.t("dialog.provider.viewAll")}}),null),l})()]}})};A(["keydown"]);export{J as DialogSelectModelUnpaid};
@@ -1 +1 @@
1
- import{c as Z,u as le,y as ne,f as ee,H as se,L as de,J as A,m as o,l as a,p as k,F as V,Q as G,q as J,$ as N,B as T,n as ce,G as re,t as B,aJ as H,aH as q,a9 as ue,S as U,aa as K}from"./index-Dn8Qszh4.js";import{L as ve}from"./list-dkB1NV7F.js";import{P as te,T as j}from"./tag-BesgAeYC.js";import{L as me,D as pe}from"./dialog-connect-provider-DS4Df_nV.js";const ge=/^[a-z0-9][a-z0-9-_]*$/,he="@ai-sdk/openai-compatible";function fe(n){const h=n.form.providerID.trim(),s=n.form.name.trim(),y=n.form.baseURL.trim(),r=n.form.apiKey.trim(),d=r.match(/^\{env:([^}]+)\}$/)?.[1]?.trim(),v=r&&!d?r:void 0,t=h?ge.test(h)?void 0:n.t("provider.custom.error.providerID.format"):n.t("provider.custom.error.providerID.required"),u=s?void 0:n.t("provider.custom.error.name.required"),g=y?/^https?:\/\//.test(y)?void 0:n.t("provider.custom.error.baseURL.format"):n.t("provider.custom.error.baseURL.required"),x=n.disabledProviders.includes(h),_=t?void 0:n.existingProviderIDs.has(h)&&!x?n.t("provider.custom.error.providerID.exists"):void 0,w=new Set,I=n.form.models.map(l=>{const p=l.id.trim(),f=p?w.has(p)?n.t("provider.custom.error.duplicate"):(()=>{w.add(p)})():n.t("provider.custom.error.required"),P=l.name.trim()?void 0:n.t("provider.custom.error.required");return{id:f,name:P}}),M=I.every(l=>!l.id&&!l.name),z=Object.fromEntries(n.form.models.map(l=>[l.id.trim(),{name:l.name.trim()}])),D=new Set,L=n.form.headers.map(l=>{const p=l.key.trim(),f=l.value.trim();if(!p&&!f)return{};const P=p?D.has(p.toLowerCase())?n.t("provider.custom.error.duplicate"):(()=>{D.add(p.toLowerCase())})():n.t("provider.custom.error.required"),E=f?void 0:n.t("provider.custom.error.required");return{key:P,value:E}}),e=L.every(l=>!l.key&&!l.value),i=Object.fromEntries(n.form.headers.map(l=>({key:l.key.trim(),value:l.value.trim()})).filter(l=>!!l.key&&!!l.value).map(l=>[l.key,l.value])),m={providerID:t??_,name:u,baseURL:g};return!t&&!_&&!u&&!g&&M&&e?{err:m,models:I,headers:L,result:{providerID:h,name:s,key:v,config:{npm:he,name:s,...d?{env:[d]}:{},options:{baseURL:y,...Object.keys(i).length?{headers:i}:{}},models:z}}}:{err:m,models:I,headers:L}}let be=0;const oe=()=>`row-${be++}`,Q=()=>({row:oe(),id:"",name:"",err:{}}),W=()=>({row:oe(),key:"",value:"",err:{}});var ye=B('<div class="flex flex-col gap-6 px-2.5 pb-3 overflow-y-auto max-h-[60vh]"><div class="px-2.5 flex gap-4 items-center"><div class="text-16-medium text-text-strong"></div></div><form class="px-2.5 pb-6 flex flex-col gap-6"><p class="text-14-regular text-text-base"></p><div class="flex flex-col gap-4"></div><div class="flex flex-col gap-3"><label class="text-12-medium text-text-weak"></label></div><div class="flex flex-col gap-3"><label class="text-12-medium text-text-weak">'),X=B('<div class="flex gap-2 items-start"><div class=flex-1></div><div class=flex-1>');function xe(n){const h=Z(),s=le(),y=ne(),r=ee(),[d,v]=se({providerID:"",name:"",baseURL:"",apiKey:"",models:[Q()],headers:[W()],err:{}}),t=()=>{if(n.back==="close"){h.close();return}h.show(()=>o(ae,{}))},u=()=>{v("models",q(e=>{e.push(Q())}))},g=e=>{d.models.length<=1||v("models",q(i=>{i.splice(e,1)}))},x=()=>{v("headers",q(e=>{e.push(W())}))},_=e=>{d.headers.length<=1||v("headers",q(i=>{i.splice(e,1)}))},w=(e,i)=>{v(e,i),e!=="apiKey"&&v("err",e,void 0)},I=(e,i,m)=>{H(()=>{v("models",e,i,m),v("models",e,"err",i,void 0)})},M=(e,i,m)=>{H(()=>{v("headers",e,i,m),v("headers",e,"err",i,void 0)})},z=()=>{const e=fe({form:d,t:r.t,disabledProviders:s.data.config.disabled_providers??[],existingProviderIDs:new Set(s.data.provider.all.map(i=>i.id))});return H(()=>{v("err",e.err),e.models.forEach((i,m)=>v("models",m,"err",i)),e.headers.forEach((i,m)=>v("headers",m,"err",i))}),e.result},D=de(()=>({mutationFn:async e=>{const m=(s.data.config.disabled_providers??[]).filter($=>$!==e.providerID);return e.key&&await y.client.auth.set({providerID:e.providerID,auth:{type:"api",key:e.key}}),await s.updateConfig({provider:{[e.providerID]:e.config},disabled_providers:m}),e},onSuccess:e=>{h.close(),A({variant:"success",icon:"circle-check",title:r.t("provider.connect.toast.connected.title",{provider:e.name}),description:r.t("provider.connect.toast.connected.description",{provider:e.name})})},onError:e=>{const i=e instanceof Error?e.message:String(e);A({title:r.t("common.requestFailed"),description:i})}})),L=e=>{if(e.preventDefault(),D.isPending)return;const i=z();i&&D.mutate(i)};return o(re,{get title(){return o(G,{tabIndex:-1,icon:"arrow-left",variant:"ghost",onClick:t,get"aria-label"(){return r.t("common.goBack")}})},transition:!0,get children(){var e=ye(),i=e.firstChild,m=i.firstChild,$=i.nextSibling,l=$.firstChild,p=l.nextSibling,f=p.nextSibling,P=f.firstChild,E=f.nextSibling,ie=E.firstChild;return a(i,o(te,{id:"synthetic",class:"size-5 shrink-0 icon-strong-base"}),m),a(m,()=>r.t("provider.custom.title")),$.addEventListener("submit",L),a(l,()=>r.t("provider.custom.description.prefix"),null),a(l,o(me,{href:"https://opencode.ai/docs/providers/#custom-provider",tabIndex:-1,get children(){return r.t("provider.custom.description.link")}}),null),a(l,()=>r.t("provider.custom.description.suffix"),null),a(p,o(k,{autofocus:!0,get label(){return r.t("provider.custom.field.providerID.label")},get placeholder(){return r.t("provider.custom.field.providerID.placeholder")},get description(){return r.t("provider.custom.field.providerID.description")},get value(){return d.providerID},onChange:c=>w("providerID",c),get validationState(){return d.err.providerID?"invalid":void 0},get error(){return d.err.providerID}}),null),a(p,o(k,{get label(){return r.t("provider.custom.field.name.label")},get placeholder(){return r.t("provider.custom.field.name.placeholder")},get value(){return d.name},onChange:c=>w("name",c),get validationState(){return d.err.name?"invalid":void 0},get error(){return d.err.name}}),null),a(p,o(k,{get label(){return r.t("provider.custom.field.baseURL.label")},get placeholder(){return r.t("provider.custom.field.baseURL.placeholder")},get value(){return d.baseURL},onChange:c=>w("baseURL",c),get validationState(){return d.err.baseURL?"invalid":void 0},get error(){return d.err.baseURL}}),null),a(p,o(k,{get label(){return r.t("provider.custom.field.apiKey.label")},get placeholder(){return r.t("provider.custom.field.apiKey.placeholder")},get description(){return r.t("provider.custom.field.apiKey.description")},get value(){return d.apiKey},onChange:c=>w("apiKey",c)}),null),a(P,()=>r.t("provider.custom.models.label")),a(f,o(V,{get each(){return d.models},children:(c,C)=>(()=>{var b=X(),R=b.firstChild,F=R.nextSibling;return a(R,o(k,{get label(){return r.t("provider.custom.models.id.label")},hideLabel:!0,get placeholder(){return r.t("provider.custom.models.id.placeholder")},get value(){return c.id},onChange:S=>I(C(),"id",S),get validationState(){return c.err.id?"invalid":void 0},get error(){return c.err.id}})),a(F,o(k,{get label(){return r.t("provider.custom.models.name.label")},hideLabel:!0,get placeholder(){return r.t("provider.custom.models.name.placeholder")},get value(){return c.name},onChange:S=>I(C(),"name",S),get validationState(){return c.err.name?"invalid":void 0},get error(){return c.err.name}})),a(b,o(G,{type:"button",icon:"trash",variant:"ghost",class:"mt-1.5",onClick:()=>g(C()),get disabled(){return d.models.length<=1},get"aria-label"(){return r.t("provider.custom.models.remove")}}),null),J(()=>N(b,"data-row",c.row)),b})()}),null),a(f,o(T,{type:"button",size:"small",variant:"ghost",icon:"plus-small",onClick:u,class:"self-start",get children(){return r.t("provider.custom.models.add")}}),null),a(ie,()=>r.t("provider.custom.headers.label")),a(E,o(V,{get each(){return d.headers},children:(c,C)=>(()=>{var b=X(),R=b.firstChild,F=R.nextSibling;return a(R,o(k,{get label(){return r.t("provider.custom.headers.key.label")},hideLabel:!0,get placeholder(){return r.t("provider.custom.headers.key.placeholder")},get value(){return c.key},onChange:S=>M(C(),"key",S),get validationState(){return c.err.key?"invalid":void 0},get error(){return c.err.key}})),a(F,o(k,{get label(){return r.t("provider.custom.headers.value.label")},hideLabel:!0,get placeholder(){return r.t("provider.custom.headers.value.placeholder")},get value(){return c.value},onChange:S=>M(C(),"value",S),get validationState(){return c.err.value?"invalid":void 0},get error(){return c.err.value}})),a(b,o(G,{type:"button",icon:"trash",variant:"ghost",class:"mt-1.5",onClick:()=>_(C()),get disabled(){return d.headers.length<=1},get"aria-label"(){return r.t("provider.custom.headers.remove")}}),null),J(()=>N(b,"data-row",c.row)),b})()}),null),a(E,o(T,{type:"button",size:"small",variant:"ghost",icon:"plus-small",onClick:x,class:"self-start",get children(){return r.t("provider.custom.headers.add")}}),null),a($,o(T,{class:"w-auto self-start",type:"submit",size:"large",variant:"primary",get disabled(){return D.isPending},get children(){return ce(()=>!!D.isPending)()?r.t("common.saving"):r.t("common.submit")}}),null),e}})}var Y=B('<div class="text-14-regular text-text-weak">'),ke=B('<div class="px-1.25 w-full flex items-center gap-x-3"><span>');const O="_custom",ae=()=>{const n=Z(),h=ue(),s=ee(),y=()=>s.t("dialog.provider.group.popular"),r=()=>s.t("dialog.provider.group.other"),d=()=>s.t("settings.providers.tag.custom"),v=t=>{if(t==="anthropic")return s.t("dialog.provider.anthropic.note");if(t==="openai")return s.t("dialog.provider.openai.note");if(t.startsWith("github-copilot"))return s.t("dialog.provider.copilot.note");if(t==="opencode-go")return s.t("dialog.provider.opencodeGo.tagline")};return o(re,{get title(){return s.t("command.provider.connect")},transition:!0,get children(){return o(ve,{get search(){return{placeholder:s.t("dialog.provider.search.placeholder"),autofocus:!0}},get emptyMessage(){return s.t("dialog.provider.empty")},activeIcon:"plus-small",key:t=>t?.id,items:()=>(s.locale(),[{id:O,name:d()},...h.all()]),filterKeys:["id","name"],groupBy:t=>K.includes(t.id)?y():r(),sortBy:(t,u)=>t.id===O?-1:u.id===O?1:K.includes(t.id)&&K.includes(u.id)?K.indexOf(t.id)-K.indexOf(u.id):t.name.localeCompare(u.name),sortGroupsBy:(t,u)=>{const g=y();return t.category===g&&u.category!==g?-1:u.category===g&&t.category!==g?1:0},onSelect:t=>{if(t){if(t.id===O){n.show(()=>o(xe,{back:"providers"}));return}n.show(()=>o(pe,{get provider(){return t.id}}))}},children:t=>(()=>{var u=ke(),g=u.firstChild;return a(u,o(te,{"data-slot":"list-item-extra-icon",get id(){return t.id}}),g),a(g,()=>t.name),a(u,o(U,{get when(){return t.id==="opencode"},get children(){var x=Y();return a(x,()=>s.t("dialog.provider.opencode.tagline")),x}}),null),a(u,o(U,{get when(){return t.id===O},get children(){return o(j,{get children(){return s.t("settings.providers.tag.custom")}})}}),null),a(u,o(U,{get when(){return t.id==="opencode"},get children(){return o(j,{get children(){return s.t("dialog.provider.tag.recommended")}})}}),null),a(u,o(U,{get when(){return v(t.id)},children:x=>(()=>{var _=Y();return a(_,x),_})()}),null),a(u,o(U,{get when(){return t.id==="opencode-go"},get children(){return o(j,{get children(){return s.t("dialog.provider.tag.recommended")}})}}),null),u})()})}})},Se=Object.freeze(Object.defineProperty({__proto__:null,DialogSelectProvider:ae},Symbol.toStringTag,{value:"Module"}));export{ae as D,xe as a,Se as d};
1
+ import{c as Z,u as le,y as ne,f as ee,H as se,L as de,J as A,m as o,l as a,p as k,F as V,Q as G,q as J,$ as N,B as T,n as ce,G as re,t as B,aJ as j,aI as q,ab as ue,S as U,ac as K}from"./index-DMyAFOcC.js";import{L as ve}from"./list-HsPczU9B.js";import{P as te,T as H}from"./tag-BHNb4BJv.js";import{L as me,D as pe}from"./dialog-connect-provider-DD-ABicH.js";const ge=/^[a-z0-9][a-z0-9-_]*$/,he="@ai-sdk/openai-compatible";function fe(n){const h=n.form.providerID.trim(),s=n.form.name.trim(),y=n.form.baseURL.trim(),r=n.form.apiKey.trim(),d=r.match(/^\{env:([^}]+)\}$/)?.[1]?.trim(),v=r&&!d?r:void 0,t=h?ge.test(h)?void 0:n.t("provider.custom.error.providerID.format"):n.t("provider.custom.error.providerID.required"),u=s?void 0:n.t("provider.custom.error.name.required"),g=y?/^https?:\/\//.test(y)?void 0:n.t("provider.custom.error.baseURL.format"):n.t("provider.custom.error.baseURL.required"),x=n.disabledProviders.includes(h),_=t?void 0:n.existingProviderIDs.has(h)&&!x?n.t("provider.custom.error.providerID.exists"):void 0,w=new Set,S=n.form.models.map(l=>{const p=l.id.trim(),f=p?w.has(p)?n.t("provider.custom.error.duplicate"):(()=>{w.add(p)})():n.t("provider.custom.error.required"),P=l.name.trim()?void 0:n.t("provider.custom.error.required");return{id:f,name:P}}),M=S.every(l=>!l.id&&!l.name),z=Object.fromEntries(n.form.models.map(l=>[l.id.trim(),{name:l.name.trim()}])),D=new Set,L=n.form.headers.map(l=>{const p=l.key.trim(),f=l.value.trim();if(!p&&!f)return{};const P=p?D.has(p.toLowerCase())?n.t("provider.custom.error.duplicate"):(()=>{D.add(p.toLowerCase())})():n.t("provider.custom.error.required"),E=f?void 0:n.t("provider.custom.error.required");return{key:P,value:E}}),e=L.every(l=>!l.key&&!l.value),i=Object.fromEntries(n.form.headers.map(l=>({key:l.key.trim(),value:l.value.trim()})).filter(l=>!!l.key&&!!l.value).map(l=>[l.key,l.value])),m={providerID:t??_,name:u,baseURL:g};return!t&&!_&&!u&&!g&&M&&e?{err:m,models:S,headers:L,result:{providerID:h,name:s,key:v,config:{npm:he,name:s,...d?{env:[d]}:{},options:{baseURL:y,...Object.keys(i).length?{headers:i}:{}},models:z}}}:{err:m,models:S,headers:L}}let be=0;const oe=()=>`row-${be++}`,Q=()=>({row:oe(),id:"",name:"",err:{}}),W=()=>({row:oe(),key:"",value:"",err:{}});var ye=B('<div class="flex flex-col gap-6 px-2.5 pb-3 overflow-y-auto max-h-[60vh]"><div class="px-2.5 flex gap-4 items-center"><div class="text-16-medium text-text-strong"></div></div><form class="px-2.5 pb-6 flex flex-col gap-6"><p class="text-14-regular text-text-base"></p><div class="flex flex-col gap-4"></div><div class="flex flex-col gap-3"><label class="text-12-medium text-text-weak"></label></div><div class="flex flex-col gap-3"><label class="text-12-medium text-text-weak">'),X=B('<div class="flex gap-2 items-start"><div class=flex-1></div><div class=flex-1>');function xe(n){const h=Z(),s=le(),y=ne(),r=ee(),[d,v]=se({providerID:"",name:"",baseURL:"",apiKey:"",models:[Q()],headers:[W()],err:{}}),t=()=>{if(n.back==="close"){h.close();return}h.show(()=>o(ae,{}))},u=()=>{v("models",q(e=>{e.push(Q())}))},g=e=>{d.models.length<=1||v("models",q(i=>{i.splice(e,1)}))},x=()=>{v("headers",q(e=>{e.push(W())}))},_=e=>{d.headers.length<=1||v("headers",q(i=>{i.splice(e,1)}))},w=(e,i)=>{v(e,i),e!=="apiKey"&&v("err",e,void 0)},S=(e,i,m)=>{j(()=>{v("models",e,i,m),v("models",e,"err",i,void 0)})},M=(e,i,m)=>{j(()=>{v("headers",e,i,m),v("headers",e,"err",i,void 0)})},z=()=>{const e=fe({form:d,t:r.t,disabledProviders:s.data.config.disabled_providers??[],existingProviderIDs:new Set(s.data.provider.all.map(i=>i.id))});return j(()=>{v("err",e.err),e.models.forEach((i,m)=>v("models",m,"err",i)),e.headers.forEach((i,m)=>v("headers",m,"err",i))}),e.result},D=de(()=>({mutationFn:async e=>{const m=(s.data.config.disabled_providers??[]).filter($=>$!==e.providerID);return e.key&&await y.client.auth.set({providerID:e.providerID,auth:{type:"api",key:e.key}}),await s.updateConfig({provider:{[e.providerID]:e.config},disabled_providers:m}),e},onSuccess:e=>{h.close(),A({variant:"success",icon:"circle-check",title:r.t("provider.connect.toast.connected.title",{provider:e.name}),description:r.t("provider.connect.toast.connected.description",{provider:e.name})})},onError:e=>{const i=e instanceof Error?e.message:String(e);A({title:r.t("common.requestFailed"),description:i})}})),L=e=>{if(e.preventDefault(),D.isPending)return;const i=z();i&&D.mutate(i)};return o(re,{get title(){return o(G,{tabIndex:-1,icon:"arrow-left",variant:"ghost",onClick:t,get"aria-label"(){return r.t("common.goBack")}})},transition:!0,get children(){var e=ye(),i=e.firstChild,m=i.firstChild,$=i.nextSibling,l=$.firstChild,p=l.nextSibling,f=p.nextSibling,P=f.firstChild,E=f.nextSibling,ie=E.firstChild;return a(i,o(te,{id:"synthetic",class:"size-5 shrink-0 icon-strong-base"}),m),a(m,()=>r.t("provider.custom.title")),$.addEventListener("submit",L),a(l,()=>r.t("provider.custom.description.prefix"),null),a(l,o(me,{href:"https://opencode.ai/docs/providers/#custom-provider",tabIndex:-1,get children(){return r.t("provider.custom.description.link")}}),null),a(l,()=>r.t("provider.custom.description.suffix"),null),a(p,o(k,{autofocus:!0,get label(){return r.t("provider.custom.field.providerID.label")},get placeholder(){return r.t("provider.custom.field.providerID.placeholder")},get description(){return r.t("provider.custom.field.providerID.description")},get value(){return d.providerID},onChange:c=>w("providerID",c),get validationState(){return d.err.providerID?"invalid":void 0},get error(){return d.err.providerID}}),null),a(p,o(k,{get label(){return r.t("provider.custom.field.name.label")},get placeholder(){return r.t("provider.custom.field.name.placeholder")},get value(){return d.name},onChange:c=>w("name",c),get validationState(){return d.err.name?"invalid":void 0},get error(){return d.err.name}}),null),a(p,o(k,{get label(){return r.t("provider.custom.field.baseURL.label")},get placeholder(){return r.t("provider.custom.field.baseURL.placeholder")},get value(){return d.baseURL},onChange:c=>w("baseURL",c),get validationState(){return d.err.baseURL?"invalid":void 0},get error(){return d.err.baseURL}}),null),a(p,o(k,{get label(){return r.t("provider.custom.field.apiKey.label")},get placeholder(){return r.t("provider.custom.field.apiKey.placeholder")},get description(){return r.t("provider.custom.field.apiKey.description")},get value(){return d.apiKey},onChange:c=>w("apiKey",c)}),null),a(P,()=>r.t("provider.custom.models.label")),a(f,o(V,{get each(){return d.models},children:(c,C)=>(()=>{var b=X(),R=b.firstChild,F=R.nextSibling;return a(R,o(k,{get label(){return r.t("provider.custom.models.id.label")},hideLabel:!0,get placeholder(){return r.t("provider.custom.models.id.placeholder")},get value(){return c.id},onChange:I=>S(C(),"id",I),get validationState(){return c.err.id?"invalid":void 0},get error(){return c.err.id}})),a(F,o(k,{get label(){return r.t("provider.custom.models.name.label")},hideLabel:!0,get placeholder(){return r.t("provider.custom.models.name.placeholder")},get value(){return c.name},onChange:I=>S(C(),"name",I),get validationState(){return c.err.name?"invalid":void 0},get error(){return c.err.name}})),a(b,o(G,{type:"button",icon:"trash",variant:"ghost",class:"mt-1.5",onClick:()=>g(C()),get disabled(){return d.models.length<=1},get"aria-label"(){return r.t("provider.custom.models.remove")}}),null),J(()=>N(b,"data-row",c.row)),b})()}),null),a(f,o(T,{type:"button",size:"small",variant:"ghost",icon:"plus-small",onClick:u,class:"self-start",get children(){return r.t("provider.custom.models.add")}}),null),a(ie,()=>r.t("provider.custom.headers.label")),a(E,o(V,{get each(){return d.headers},children:(c,C)=>(()=>{var b=X(),R=b.firstChild,F=R.nextSibling;return a(R,o(k,{get label(){return r.t("provider.custom.headers.key.label")},hideLabel:!0,get placeholder(){return r.t("provider.custom.headers.key.placeholder")},get value(){return c.key},onChange:I=>M(C(),"key",I),get validationState(){return c.err.key?"invalid":void 0},get error(){return c.err.key}})),a(F,o(k,{get label(){return r.t("provider.custom.headers.value.label")},hideLabel:!0,get placeholder(){return r.t("provider.custom.headers.value.placeholder")},get value(){return c.value},onChange:I=>M(C(),"value",I),get validationState(){return c.err.value?"invalid":void 0},get error(){return c.err.value}})),a(b,o(G,{type:"button",icon:"trash",variant:"ghost",class:"mt-1.5",onClick:()=>_(C()),get disabled(){return d.headers.length<=1},get"aria-label"(){return r.t("provider.custom.headers.remove")}}),null),J(()=>N(b,"data-row",c.row)),b})()}),null),a(E,o(T,{type:"button",size:"small",variant:"ghost",icon:"plus-small",onClick:x,class:"self-start",get children(){return r.t("provider.custom.headers.add")}}),null),a($,o(T,{class:"w-auto self-start",type:"submit",size:"large",variant:"primary",get disabled(){return D.isPending},get children(){return ce(()=>!!D.isPending)()?r.t("common.saving"):r.t("common.submit")}}),null),e}})}var Y=B('<div class="text-14-regular text-text-weak">'),ke=B('<div class="px-1.25 w-full flex items-center gap-x-3"><span>');const O="_custom",ae=()=>{const n=Z(),h=ue(),s=ee(),y=()=>s.t("dialog.provider.group.popular"),r=()=>s.t("dialog.provider.group.other"),d=()=>s.t("settings.providers.tag.custom"),v=t=>{if(t==="anthropic")return s.t("dialog.provider.anthropic.note");if(t==="openai")return s.t("dialog.provider.openai.note");if(t.startsWith("github-copilot"))return s.t("dialog.provider.copilot.note");if(t==="opencode-go")return s.t("dialog.provider.opencodeGo.tagline")};return o(re,{get title(){return s.t("command.provider.connect")},transition:!0,get children(){return o(ve,{get search(){return{placeholder:s.t("dialog.provider.search.placeholder"),autofocus:!0}},get emptyMessage(){return s.t("dialog.provider.empty")},activeIcon:"plus-small",key:t=>t?.id,items:()=>(s.locale(),[{id:O,name:d()},...h.all()]),filterKeys:["id","name"],groupBy:t=>K.includes(t.id)?y():r(),sortBy:(t,u)=>t.id===O?-1:u.id===O?1:K.includes(t.id)&&K.includes(u.id)?K.indexOf(t.id)-K.indexOf(u.id):t.name.localeCompare(u.name),sortGroupsBy:(t,u)=>{const g=y();return t.category===g&&u.category!==g?-1:u.category===g&&t.category!==g?1:0},onSelect:t=>{if(t){if(t.id===O){n.show(()=>o(xe,{back:"providers"}));return}n.show(()=>o(pe,{get provider(){return t.id}}))}},children:t=>(()=>{var u=ke(),g=u.firstChild;return a(u,o(te,{"data-slot":"list-item-extra-icon",get id(){return t.id}}),g),a(g,()=>t.name),a(u,o(U,{get when(){return t.id==="opencode"},get children(){var x=Y();return a(x,()=>s.t("dialog.provider.opencode.tagline")),x}}),null),a(u,o(U,{get when(){return t.id===O},get children(){return o(H,{get children(){return s.t("settings.providers.tag.custom")}})}}),null),a(u,o(U,{get when(){return t.id==="opencode"},get children(){return o(H,{get children(){return s.t("dialog.provider.tag.recommended")}})}}),null),a(u,o(U,{get when(){return v(t.id)},children:x=>(()=>{var _=Y();return a(_,x),_})()}),null),a(u,o(U,{get when(){return t.id==="opencode-go"},get children(){return o(H,{get children(){return s.t("dialog.provider.tag.recommended")}})}}),null),u})()})}})},Ie=Object.freeze(Object.defineProperty({__proto__:null,DialogSelectProvider:ae},Symbol.toStringTag,{value:"Module"}));export{ae as D,xe as a,Ie as d};
@@ -0,0 +1 @@
1
+ import{d as me,c as he,e as fe,b as Y,f as R,K as Z,H as pe,L as O,M as z,N as h,i as C,O as Q,P as Se,l as S,m as a,Q as V,n as w,S as $,I as we,R as p,B as W,G as ye,z as be,U as ke,t as F,p as N,J as Ce}from"./index-DMyAFOcC.js";import{L as xe}from"./list-HsPczU9B.js";import{S as Pe,a as _e}from"./server-row-CgIAM5UY.js";var De=F('<div class=px-5><div class="bg-surface-base rounded-md p-5 flex flex-col gap-3"><div class="flex-1 min-w-0 [&amp;_[data-slot=input-wrapper]]:relative"></div><div class="grid grid-cols-2 gap-2 min-w-0">'),$e=F('<div class="flex items-center gap-2 -ml-2"><span>'),Ie=F('<div class="flex flex-col gap-2"><div class="px-5 pb-5">'),Ee=F('<div class="flex items-center gap-3 min-w-0 flex-1 w-full group/item"><div class="flex flex-col h-full items-start w-5"></div><div class="flex items-center justify-center gap-4 pl-4">'),Ae=F('<span class="text-text-base bg-surface-base text-14-regular px-1.5 rounded-xs">');const K="opencode";function X(i,l){Ce({variant:"error",title:i.t("common.requestFailed"),description:l instanceof Error?l.message:String(l)})}function Fe(){const i=R(),l=Y(),[o,u]=be(async()=>{try{const g=await l.getDefaultServer?.();return g||null}catch(g){return X(i,g),null}},{initialValue:null}),s=C(()=>!!l.getDefaultServer&&!!l.setDefaultServer);return{defaultKey:o,canDefault:s,setDefault:async g=>{try{await l.setDefaultServer?.(g),u.mutate(g)}catch(x){X(i,x)}}}}function Me(){const i=Z(),l=u=>{const s=z(u);if(!s)return!1;const m=s.replace(/^https?:\/\//,"").split("/")[0];return m?m.includes("localhost")||m.startsWith("127.0.0.1")?!0:m.includes(".")||m.includes(":"):!1};return{previewStatus:async(u,s,m,g)=>{if(g(void 0),!l(u))return;const x=z(u);if(!x)return;const y={url:x};s&&(y.username=s),m&&(y.password=m);const A=await i(y);g(A.healthy)}}}function Ne(i){const l=R(),o=u=>{if(u.stopPropagation(),u.key==="Escape"){u.preventDefault(),i.onBack();return}u.key!=="Enter"||u.isComposing||(u.preventDefault(),i.onSubmit())};return(()=>{var u=De(),s=u.firstChild,m=s.firstChild,g=m.nextSibling;return S(m,a(N,{type:"text",get label(){return l.t("dialog.server.add.url")},get placeholder(){return i.placeholder},get value(){return i.value},autofocus:!0,get validationState(){return i.error?"invalid":"valid"},get error(){return i.error},get disabled(){return i.busy},get onChange(){return i.onChange},onKeyDown:o})),S(s,a(N,{type:"text",get label(){return l.t("dialog.server.add.name")},get placeholder(){return l.t("dialog.server.add.namePlaceholder")},get value(){return i.name},get disabled(){return i.busy},get onChange(){return i.onNameChange},onKeyDown:o}),g),S(g,a(N,{type:"text",get label(){return l.t("dialog.server.add.username")},get placeholder(){return l.t("dialog.server.add.usernamePlaceholder")},get value(){return i.username},get disabled(){return i.busy},get onChange(){return i.onUsernameChange},onKeyDown:o}),null),S(g,a(N,{type:"password",get label(){return l.t("dialog.server.add.password")},get placeholder(){return l.t("dialog.server.add.passwordPlaceholder")},get value(){return i.password},get disabled(){return i.busy},get onChange(){return i.onPasswordChange},onKeyDown:o}),null),u})()}function Be(){const i=me(),l=he(),o=fe(),u=Y(),s=R(),{defaultKey:m,canDefault:g,setDefault:x}=Fe(),{previewStatus:y}=Me(),A=Z(),[r,d]=pe({status:{},addServer:{url:"",name:"",username:K,password:"",error:"",showForm:!1,status:void 0},editServer:{id:void 0,value:"",name:"",username:"",password:"",error:"",status:void 0}}),M=()=>{d("addServer",{url:"",name:"",username:K,password:"",error:"",showForm:!1,status:void 0})},I=()=>{d("editServer",{id:void 0,value:"",name:"",username:"",password:"",error:"",status:void 0})},P=O(()=>({mutationFn:async e=>{const t=z(e);if(!t){M();return}const n={type:"http",http:{url:t}};if(r.addServer.name.trim()&&(n.displayName=r.addServer.name.trim()),r.addServer.password&&(n.http.password=r.addServer.password),r.addServer.password&&r.addServer.username&&(n.http.username=r.addServer.username),!(await A(n.http)).healthy){d("addServer",{error:s.t("dialog.server.add.error")});return}M(),await q(n,!0)}})),_=O(()=>({mutationFn:async e=>{if(e.original.type!=="http")return;const t=z(e.value);if(!t){I();return}const n=r.editServer.name.trim()||void 0,v=r.editServer.username||void 0,c=r.editServer.password||void 0,b=e.original.displayName;if(t===e.original.http.url&&n===b&&v===e.original.http.username&&c===e.original.http.password){I();return}const k={type:"http",displayName:n,http:{url:t,username:v,password:c}};if(!(await A(k.http)).healthy){d("editServer",{error:s.t("dialog.server.add.error")});return}t===e.original.http.url?o.add(k):ee(e.original,k),I()}})),ee=(e,t)=>{const n=o.key,v=o.add(t);if(!v)return;const c=n===h.key(e)?h.key(v):n;c&&o.setActive(c),o.remove(h.key(e))},E=C(()=>{const e=o.current,t=o.list;return e?t.includes(e)?[e,...t.filter(n=>n!==e)]:[e,...t]:t}),H=C(()=>E().find(e=>h.key(e)===o.key)??E()[0]),re=C(()=>{const e=E();if(!e.length)return e;const t=H(),n=new Map(e.map((c,b)=>[c,b])),v=c=>c?.healthy===!0?0:c?.healthy===!1?2:1;return e.slice().sort((c,b)=>{if(c===t)return-1;if(b===t)return 1;const k=v(r.status[h.key(c)])-v(r.status[h.key(b)]);return k!==0?k:(n.get(c)??0)-(n.get(b)??0)})});async function T(){const e={};await Promise.all(E().map(async t=>{e[h.key(t)]=await A(t.http)})),d("status",ke(e))}Q(()=>{E(),T();const e=setInterval(T,1e4);Se(()=>clearInterval(e))});async function q(e,t){if(!(!t&&r.status[h.key(e)]?.healthy===!1)){if(l.close(),t&&e.type==="http"){o.add(e),i("/");return}i("/"),queueMicrotask(()=>o.setActive(h.key(e)))}}const te=e=>{P.isPending||(d("addServer",{url:e,error:""}),y(e,r.addServer.username,r.addServer.password,t=>d("addServer",{status:t})))},ae=e=>{P.isPending||d("addServer",{name:e,error:""})},ne=e=>{P.isPending||(d("addServer",{username:e,error:""}),y(r.addServer.url,e,r.addServer.password,t=>d("addServer",{status:t})))},se=e=>{P.isPending||(d("addServer",{password:e,error:""}),y(r.addServer.url,r.addServer.username,e,t=>d("addServer",{status:t})))},ie=e=>{_.isPending||(d("editServer",{value:e,error:""}),y(e,r.editServer.username,r.editServer.password,t=>d("editServer",{status:t})))},de=e=>{_.isPending||d("editServer",{name:e,error:""})},le=e=>{_.isPending||(d("editServer",{username:e,error:""}),y(r.editServer.value,e,r.editServer.password,t=>d("editServer",{status:t})))},oe=e=>{_.isPending||(d("editServer",{password:e,error:""}),y(r.editServer.value,r.editServer.username,e,t=>d("editServer",{status:t})))},L=C(()=>r.editServer.id?"edit":r.addServer.showForm?"add":"list"),j=C(()=>{if(r.editServer.id)return E().find(e=>e.type==="http"&&e.http.url===r.editServer.id)}),G=()=>{M(),I()},ue=()=>{I(),d("addServer",{showForm:!0,url:"",name:"",username:K,password:"",error:"",status:void 0})},ce=e=>{M(),d("editServer",{id:e.http.url,value:e.http.url,name:e.displayName??"",username:e.http.username??"",password:e.http.password??"",error:"",status:r.status[h.key(e)]?.healthy})},J=()=>{if(L()==="add"){if(P.isPending)return;d("addServer",{error:""}),P.mutate(r.addServer.url);return}const e=j();e&&(_.isPending||(d("editServer",{error:""}),_.mutate({original:e,value:r.editServer.value})))},U=C(()=>L()!=="list"),f=C(()=>L()==="add"),B=C(()=>f()?P.isPending:_.isPending),ge=C(()=>U()?(()=>{var e=$e(),t=e.firstChild;return S(e,a(V,{icon:"arrow-left",variant:"ghost",onClick:G,get"aria-label"(){return s.t("common.goBack")}}),t),S(t,(()=>{var n=w(()=>!!f());return()=>n()?s.t("dialog.server.add.title"):s.t("dialog.server.edit.title")})()),e})():s.t("dialog.server.title"));Q(()=>{r.editServer.id&&(j()||I())});async function ve(e){o.remove(e),await u.getDefaultServer?.()===e&&u.setDefaultServer?.(null)}return a(ye,{get title(){return ge()},get children(){var e=Ie(),t=e.firstChild;return S(e,a($,{get when(){return!U()},get fallback(){return a(Ne,{get value(){return w(()=>!!f())()?r.addServer.url:r.editServer.value},get name(){return w(()=>!!f())()?r.addServer.name:r.editServer.name},get username(){return w(()=>!!f())()?r.addServer.username:r.editServer.username},get password(){return w(()=>!!f())()?r.addServer.password:r.editServer.password},get placeholder(){return s.t("dialog.server.add.placeholder")},get busy(){return B()},get error(){return w(()=>!!f())()?r.addServer.error:r.editServer.error},get status(){return w(()=>!!f())()?r.addServer.status:r.editServer.status},get onChange(){return f()?te:ie},get onNameChange(){return f()?ae:de},get onUsernameChange(){return f()?ne:le},get onPasswordChange(){return f()?se:oe},onSubmit:J,onBack:G})},get children(){return a(xe,{get search(){return{placeholder:s.t("dialog.server.search.placeholder"),autofocus:!1}},noInitialSelection:!0,get emptyMessage(){return s.t("dialog.server.empty")},items:re,key:n=>n.http.url,onSelect:n=>{n&&q(n)},divider:!0,class:"px-5 [&_[data-slot=list-search-wrapper]]:w-full [&_[data-slot=list-scroll]]h-[300px] [&_[data-slot=list-scroll]]:overflow-y-auto [&_[data-slot=list-items]]:bg-surface-base [&_[data-slot=list-items]]:rounded-md [&_[data-slot=list-item]]:min-h-14 [&_[data-slot=list-item]]:p-3 [&_[data-slot=list-item]]:!bg-transparent",children:n=>{const v=h.key(n);return(()=>{var c=Ee(),b=c.firstChild,k=b.nextSibling;return S(b,a(Pe,{get health(){return r.status[v]}})),S(c,a(_e,{conn:n,get dimmed(){return r.status[v]?.healthy===!1},get status(){return r.status[v]},class:"flex items-center gap-3 min-w-0 flex-1",get badge(){return a($,{get when(){return m.latest===h.key(n)},get children(){var D=Ae();return S(D,()=>s.t("dialog.server.status.default")),D}})},showCredentials:!0}),k),S(k,a($,{get when(){return h.key(H())===v},get children(){return a(we,{name:"check",class:"h-6"})}}),null),S(k,a($,{get when(){return n.type==="http"},get children(){return a(p,{get children(){return[a(p.Trigger,{as:V,icon:"dot-grid",variant:"ghost",class:"shrink-0 size-8 hover:bg-surface-base-hover data-[expanded]:bg-surface-base-active",onClick:D=>D.stopPropagation(),onPointerDown:D=>D.stopPropagation()}),a(p.Portal,{get children(){return a(p.Content,{class:"mt-1",get children(){return[a(p.Item,{onSelect:()=>{n.type==="http"&&ce(n)},get children(){return a(p.ItemLabel,{get children(){return s.t("dialog.server.menu.edit")}})}}),a($,{get when(){return w(()=>!!g())()&&m.latest!==v},get children(){return a(p.Item,{onSelect:()=>x(v),get children(){return a(p.ItemLabel,{get children(){return s.t("dialog.server.menu.default")}})}})}}),a($,{get when(){return w(()=>!!g())()&&m.latest===v},get children(){return a(p.Item,{onSelect:()=>x(null),get children(){return a(p.ItemLabel,{get children(){return s.t("dialog.server.menu.defaultRemove")}})}})}}),a(p.Separator,{}),a(p.Item,{onSelect:()=>ve(h.key(n)),class:"text-text-on-critical-base hover:bg-surface-critical-weak",get children(){return a(p.ItemLabel,{get children(){return s.t("dialog.server.menu.delete")}})}})]}})}})]}})}}),null),c})()}})}}),t),S(t,a($,{get when(){return U()},get fallback(){return a(W,{variant:"secondary",icon:"plus-small",size:"large",onClick:ue,class:"py-1.5 pl-1.5 pr-3 flex items-center gap-1.5",get children(){return s.t("dialog.server.add.button")}})},get children(){return a(W,{variant:"primary",size:"large",onClick:J,get disabled(){return B()},class:"px-3 py-1.5",get children(){return w(()=>!!B())()?s.t("dialog.server.add.checking"):w(()=>!!f())()?s.t("dialog.server.add.button"):s.t("common.save")}})}})),e}})}export{Be as DialogSelectServer};
@@ -0,0 +1 @@
1
+ import{l as s,t as p,bp as Se,f as ee,b as he,bq as me,o as ve,H as ce,i as O,m as t,z as Ce,Z as Pe,I as V,S as C,n as B,p as se,br as Te,bs as Ee,bt as ze,bu as Fe,a1 as ie,B as J,bv as je,bw as Ae,bx as De,J as R,by as Ke,v as be,aK as Oe,P as xe,Q as $e,F as q,$ as Le,q as H,V as Ie,bz as We,aO as Me,c as Ne,y as Ge,u as Re,ab as Ve,ac as ne,bA as Be,a4 as qe,h as ue,O as Ue,bB as He,bC as Ye,bD as Je,bE as Qe,s as Ze,bF as Xe,bG as et,bH as tt,bI as rt,G as st}from"./index-DMyAFOcC.js";import{T as L}from"./tabs-b5kQDmsB.js";import{S as U}from"./select-DxXmJhya.js";import{S as M}from"./switch-D4TikNGe.js";import{L as nt,D as it}from"./dialog-connect-provider-DD-ABicH.js";import{f as lt,u as at}from"./list-HsPczU9B.js";import{P as re,T as te}from"./tag-BHNb4BJv.js";import{a as ot,D as ct}from"./dialog-select-provider-DCUcnqs5.js";var dt=p('<div class="bg-surface-base px-4 rounded-lg">');const N=r=>(()=>{var e=dt();return s(e,()=>r.children),e})();var ut=p("<div data-action=settings-feed-reasoning-summaries>"),gt=p("<div data-action=settings-feed-shell-tool-parts-expanded>"),pt=p("<div data-action=settings-feed-edit-tool-parts-expanded>"),ft=p('<div class="flex flex-col gap-1">'),ge=p('<div class="w-full sm:w-[220px]">'),Z=p('<div class="flex flex-col gap-1"><h3 class="text-14-medium text-text-strong pb-2">'),ht=p("<div data-action=settings-notifications-agent>"),mt=p("<div data-action=settings-notifications-permissions>"),vt=p("<div data-action=settings-notifications-errors>"),bt=p("<div data-action=settings-updates-startup>"),xt=p("<div data-action=settings-release-notes>"),$t=p('<div class="flex flex-col h-full overflow-y-auto no-scrollbar px-4 pb-10 sm:px-10 sm:pb-10"><div class="sticky top-0 z-10 bg-[linear-gradient(to_bottom,var(--surface-stronger-non-alpha)_calc(100%_-_24px),transparent)]"><div class="flex flex-col gap-1 pt-6 pb-8"><h2 class="text-16-medium text-text-strong"></h2></div></div><div class="flex flex-col gap-8 w-full">'),_t=p("<div data-action=settings-wayland>"),wt=p("<span class=text-text-weak>"),yt=p('<div class="flex items-center gap-2"><span>'),kt=p('<div class="flex flex-wrap items-center gap-4 py-3 border-b border-border-weak-base last:border-none sm:flex-nowrap"><div class="flex min-w-0 flex-1 flex-col gap-0.5"><span class="text-14-medium text-text-strong"></span><span class="text-12-regular text-text-weak"></span></div><div class="flex w-full justify-end sm:w-auto sm:shrink-0">');let G={cleanup:void 0,timeout:void 0,run:0};const _e=()=>{G.run+=1,G.cleanup&&G.cleanup(),clearTimeout(G.timeout),G.cleanup=void 0},pe=r=>{if(_e(),!r)return;const e=++G.run;G.timeout=setTimeout(()=>{Ke(r).then(l=>{if(G.run!==e){l?.();return}G.cleanup=l})},100)},St=()=>{const r=Se(),e=ee(),l=he(),n=me();ve(()=>{r.loadThemes()});const[o,f]=ce({checking:!1}),y=O(()=>l.platform==="desktop"&&l.os==="linux"),x=()=>{l.checkUpdate&&(f("checking",!0),l.checkUpdate().then(c=>{if(!c.updateAvailable){R({variant:"success",icon:"circle-check",title:e.t("settings.updates.toast.latest.title"),description:e.t("settings.updates.toast.latest.description",{version:l.version??""})});return}const a=l.update&&l.restart?[{label:e.t("toast.update.action.installRestart"),onClick:async()=>{await l.update(),await l.restart()}},{label:e.t("toast.update.action.notYet"),onClick:"dismiss"}]:[{label:e.t("toast.update.action.notYet"),onClick:"dismiss"}];R({persistent:!0,icon:"download",title:e.t("toast.update.title"),description:e.t("toast.update.description",{version:c.version??""}),actions:a})}).catch(c=>{const a=c instanceof Error?c.message:String(c);R({title:e.t("common.requestFailed"),description:a})}).finally(()=>f("checking",!1)))},b=O(()=>r.ids().map(c=>({id:c,name:r.name(c)}))),$=O(()=>[{value:"system",label:e.t("theme.scheme.system")},{value:"light",label:e.t("theme.scheme.light")},{value:"dark",label:e.t("theme.scheme.dark")}]),P=O(()=>[{value:"queue",label:e.t("settings.general.row.followup.option.queue")},{value:"steer",label:e.t("settings.general.row.followup.option.steer")}]),F=O(()=>e.locales.map(c=>({value:c,label:e.label(c)}))),A={id:"none",label:"sound.option.none"},D=[A,...De],v=()=>Ae(n.appearance.font()),h=()=>je(n.appearance.uiFont()),d=(c,a,i,u)=>({options:D,current:c()?D.find(g=>g.id===a())??A:A,value:g=>g.id,label:g=>e.t(g.label),onHighlight:g=>{g&&pe(g.id==="none"?void 0:g.id)},onSelect:g=>{if(g){if(g.id==="none"){i(!1),_e();return}i(!0),u(g.id),pe(g.id)}},variant:"secondary",size:"small",triggerVariant:"settings"}),m=()=>(()=>{var c=ft();return s(c,t(N,{get children(){return[t(E,{get title(){return e.t("settings.general.row.language.title")},get description(){return e.t("settings.general.row.language.description")},get children(){return t(U,{"data-action":"settings-language",get options(){return F()},get current(){return F().find(a=>a.value===e.locale())},value:a=>a.value,label:a=>a.label,onSelect:a=>a&&e.setLocale(a.value),variant:"secondary",size:"small",triggerVariant:"settings"})}}),t(E,{get title(){return e.t("settings.general.row.reasoningSummaries.title")},get description(){return e.t("settings.general.row.reasoningSummaries.description")},get children(){var a=ut();return s(a,t(M,{get checked(){return n.general.showReasoningSummaries()},onChange:i=>n.general.setShowReasoningSummaries(i)})),a}}),t(E,{get title(){return e.t("settings.general.row.shellToolPartsExpanded.title")},get description(){return e.t("settings.general.row.shellToolPartsExpanded.description")},get children(){var a=gt();return s(a,t(M,{get checked(){return n.general.shellToolPartsExpanded()},onChange:i=>n.general.setShellToolPartsExpanded(i)})),a}}),t(E,{get title(){return e.t("settings.general.row.editToolPartsExpanded.title")},get description(){return e.t("settings.general.row.editToolPartsExpanded.description")},get children(){var a=pt();return s(a,t(M,{get checked(){return n.general.editToolPartsExpanded()},onChange:i=>n.general.setEditToolPartsExpanded(i)})),a}}),t(E,{get title(){return e.t("settings.general.row.followup.title")},get description(){return e.t("settings.general.row.followup.description")},get children(){return t(U,{"data-action":"settings-followup",get options(){return P()},get current(){return P().find(a=>a.value===n.general.followup())},value:a=>a.value,label:a=>a.label,onSelect:a=>a&&n.general.setFollowup(a.value),variant:"secondary",size:"small",triggerVariant:"settings",triggerStyle:{"min-width":"180px"}})}})]}})),c})(),k=()=>(()=>{var c=Z(),a=c.firstChild;return s(a,()=>e.t("settings.general.section.appearance")),s(c,t(N,{get children(){return[t(E,{get title(){return e.t("settings.general.row.colorScheme.title")},get description(){return e.t("settings.general.row.colorScheme.description")},get children(){return t(U,{"data-action":"settings-color-scheme",get options(){return $()},get current(){return $().find(i=>i.value===r.colorScheme())},value:i=>i.value,label:i=>i.label,onSelect:i=>i&&r.setColorScheme(i.value),onHighlight:i=>{if(i)return r.previewColorScheme(i.value),()=>r.cancelPreview()},variant:"secondary",size:"small",triggerVariant:"settings",triggerStyle:{"min-width":"220px"}})}}),t(E,{get title(){return e.t("settings.general.row.theme.title")},get description(){return[B(()=>e.t("settings.general.row.theme.description"))," ",t(nt,{href:"https://opencode.ai/docs/themes/",get children(){return e.t("common.learnMore")}})]},get children(){return t(U,{"data-action":"settings-theme",get options(){return b()},get current(){return b().find(i=>i.id===r.themeId())},value:i=>i.id,label:i=>i.name,onSelect:i=>{i&&r.setTheme(i.id)},onHighlight:i=>{if(i)return r.previewTheme(i.id),()=>r.cancelPreview()},variant:"secondary",size:"small",triggerVariant:"settings"})}}),t(E,{get title(){return e.t("settings.general.row.uiFont.title")},get description(){return e.t("settings.general.row.uiFont.description")},get children(){var i=ge();return s(i,t(se,{"data-action":"settings-ui-font",get label(){return e.t("settings.general.row.uiFont.title")},hideLabel:!0,type:"text",get value(){return h()},onChange:u=>n.appearance.setUIFont(u),placeholder:Te,spellcheck:!1,autocorrect:"off",autocomplete:"off",autocapitalize:"off",class:"text-12-regular",get style(){return{"font-family":Ee(n.appearance.uiFont())}}})),i}}),t(E,{get title(){return e.t("settings.general.row.font.title")},get description(){return e.t("settings.general.row.font.description")},get children(){var i=ge();return s(i,t(se,{"data-action":"settings-code-font",get label(){return e.t("settings.general.row.font.title")},hideLabel:!0,type:"text",get value(){return v()},onChange:u=>n.appearance.setFont(u),placeholder:ze,spellcheck:!1,autocorrect:"off",autocomplete:"off",autocapitalize:"off",class:"text-12-regular",get style(){return{"font-family":Fe(n.appearance.font())}}})),i}})]}}),null),c})(),j=()=>(()=>{var c=Z(),a=c.firstChild;return s(a,()=>e.t("settings.general.section.notifications")),s(c,t(N,{get children(){return[t(E,{get title(){return e.t("settings.general.notifications.agent.title")},get description(){return e.t("settings.general.notifications.agent.description")},get children(){var i=ht();return s(i,t(M,{get checked(){return n.notifications.agent()},onChange:u=>n.notifications.setAgent(u)})),i}}),t(E,{get title(){return e.t("settings.general.notifications.permissions.title")},get description(){return e.t("settings.general.notifications.permissions.description")},get children(){var i=mt();return s(i,t(M,{get checked(){return n.notifications.permissions()},onChange:u=>n.notifications.setPermissions(u)})),i}}),t(E,{get title(){return e.t("settings.general.notifications.errors.title")},get description(){return e.t("settings.general.notifications.errors.description")},get children(){var i=vt();return s(i,t(M,{get checked(){return n.notifications.errors()},onChange:u=>n.notifications.setErrors(u)})),i}})]}}),null),c})(),S=()=>(()=>{var c=Z(),a=c.firstChild;return s(a,()=>e.t("settings.general.section.sounds")),s(c,t(N,{get children(){return[t(E,{get title(){return e.t("settings.general.sounds.agent.title")},get description(){return e.t("settings.general.sounds.agent.description")},get children(){return t(U,ie({"data-action":"settings-sounds-agent"},()=>d(()=>n.sounds.agentEnabled(),()=>n.sounds.agent(),i=>n.sounds.setAgentEnabled(i),i=>n.sounds.setAgent(i))))}}),t(E,{get title(){return e.t("settings.general.sounds.permissions.title")},get description(){return e.t("settings.general.sounds.permissions.description")},get children(){return t(U,ie({"data-action":"settings-sounds-permissions"},()=>d(()=>n.sounds.permissionsEnabled(),()=>n.sounds.permissions(),i=>n.sounds.setPermissionsEnabled(i),i=>n.sounds.setPermissions(i))))}}),t(E,{get title(){return e.t("settings.general.sounds.errors.title")},get description(){return e.t("settings.general.sounds.errors.description")},get children(){return t(U,ie({"data-action":"settings-sounds-errors"},()=>d(()=>n.sounds.errorsEnabled(),()=>n.sounds.errors(),i=>n.sounds.setErrorsEnabled(i),i=>n.sounds.setErrors(i))))}})]}}),null),c})(),_=()=>(()=>{var c=Z(),a=c.firstChild;return s(a,()=>e.t("settings.general.section.updates")),s(c,t(N,{get children(){return[t(E,{get title(){return e.t("settings.updates.row.startup.title")},get description(){return e.t("settings.updates.row.startup.description")},get children(){var i=bt();return s(i,t(M,{get checked(){return n.updates.startup()},get disabled(){return!l.checkUpdate},onChange:u=>n.updates.setStartup(u)})),i}}),t(E,{get title(){return e.t("settings.general.row.releaseNotes.title")},get description(){return e.t("settings.general.row.releaseNotes.description")},get children(){var i=xt();return s(i,t(M,{get checked(){return n.general.releaseNotes()},onChange:u=>n.general.setReleaseNotes(u)})),i}}),t(E,{get title(){return e.t("settings.updates.row.check.title")},get description(){return e.t("settings.updates.row.check.description")},get children(){return t(J,{size:"small",variant:"secondary",get disabled(){return o.checking||!l.checkUpdate},onClick:x,get children(){return B(()=>!!o.checking)()?e.t("settings.updates.action.checking"):e.t("settings.updates.action.checkNow")}})}})]}}),null),c})();return(()=>{var c=$t(),a=c.firstChild,i=a.firstChild,u=i.firstChild,g=a.nextSibling;return s(u,()=>e.t("settings.tab.general")),s(g,t(m,{}),null),s(g,t(k,{}),null),s(g,t(j,{}),null),s(g,t(S,{}),null),s(g,t(_,{}),null),s(g,t(C,{get when(){return y()},children:w=>{const[z,K]=Ce(()=>l.getDisplayBackend?.(),{initialValue:void 0}),I=()=>z.loading?void 0:z.latest,T=W=>l.setDisplayBackend?.(W?"wayland":"auto").finally(()=>K.refetch());return(()=>{var W=Z(),ye=W.firstChild;return s(ye,()=>e.t("settings.general.section.display")),s(W,t(N,{get children(){return t(E,{get title(){return(()=>{var Y=yt(),ke=Y.firstChild;return s(ke,()=>e.t("settings.general.row.wayland.title")),s(Y,t(Pe,{get value(){return e.t("settings.general.row.wayland.tooltip")},placement:"top",get children(){var de=wt();return s(de,t(V,{name:"help",size:"small"})),de}}),null),Y})()},get description(){return e.t("settings.general.row.wayland.description")},get children(){var Y=_t();return s(Y,t(M,{get checked(){return I()==="wayland"},onChange:T})),Y}})}}),null),W})()}}),null),c})()},E=r=>(()=>{var e=kt(),l=e.firstChild,n=l.firstChild,o=n.nextSibling,f=l.nextSibling;return s(n,()=>r.title),s(o,()=>r.description),s(f,()=>r.children),e})();var Ct=p('<span class="text-14-regular text-text-strong mt-1">"<!>"'),Pt=p('<div class="flex flex-col items-center justify-center py-12 text-center"><span class="text-14-regular text-text-weak">'),Tt=p('<div class="flex flex-col h-full overflow-y-auto no-scrollbar px-4 pb-10 sm:px-10 sm:pb-10"><div class="sticky top-0 z-10 bg-[linear-gradient(to_bottom,var(--surface-stronger-non-alpha)_calc(100%_-_24px),transparent)]"><div class="flex flex-col gap-4 pt-6 pb-6 max-w-[720px]"><div class="flex items-center justify-between gap-4"><h2 class="text-16-medium text-text-strong"></h2></div><div class="flex items-center gap-2 px-3 h-9 rounded-lg bg-surface-base"></div></div></div><div class="flex flex-col gap-8 max-w-[720px]">'),Et=p('<div class="flex flex-col gap-1"><h3 class="text-14-medium text-text-strong pb-2">'),zt=p('<div class="flex items-center justify-between gap-4 py-3 border-b border-border-weak-base last:border-none"><span class="text-14-regular text-text-strong"></span><button type=button>');const le=typeof navigator=="object"&&/(Mac|iPod|iPhone|iPad)/.test(navigator.platform),Q="command.palette",Ft="mod+shift+p",X=["General","Session","Navigation","Model and agent","Terminal","Prompt","Editor","File","View","App"],jt={General:"settings.shortcuts.group.general",Session:"settings.shortcuts.group.session",Navigation:"settings.shortcuts.group.navigation","Model and agent":"settings.shortcuts.group.modelAndAgent",Terminal:"settings.shortcuts.group.terminal",Prompt:"settings.shortcuts.group.prompt",Editor:"settings.shortcuts.group.editor",File:"settings.shortcuts.group.file",View:"settings.shortcuts.group.view",App:"settings.shortcuts.group.app"};function ae(r){return r===Q?"General":r.startsWith("terminal.")?"Terminal":r.startsWith("model.")||r.startsWith("agent.")||r.startsWith("mcp.")?"Model and agent":r.startsWith("file.")||r.startsWith("fileTree.")||r.startsWith("folder.")?"File":r.startsWith("prompt.")?"Prompt":r.startsWith("editor.")?"Editor":r.startsWith("view.")?"View":r.startsWith("app.")?"App":r.startsWith("tab.")?"Navigation":r.startsWith("session.")||r.startsWith("message.")||r.startsWith("permissions.")||r.startsWith("steps.")||r.startsWith("review.")?"Session":"General"}function At(r){return r==="Shift"||r==="Control"||r==="Alt"||r==="Meta"}function Dt(r){return r===","?"comma":r==="+"?"plus":r===" "?"space":r.toLowerCase()}function Kt(r){if(At(r.key))return;const e=[];(le?r.metaKey:r.ctrlKey)&&e.push("mod"),le&&r.ctrlKey&&e.push("ctrl"),!le&&r.metaKey&&e.push("meta"),r.altKey&&e.push("alt"),r.shiftKey&&e.push("shift");const n=Dt(r.key);if(n)return e.push(n),e.join("+")}function oe(r){if(!r)return[];const e=[];for(const l of We(r)){const n=[];l.ctrl&&n.push("ctrl"),l.alt&&n.push("alt"),l.shift&&n.push("shift"),l.meta&&n.push("meta"),l.key&&n.push(l.key),n.length!==0&&e.push(n.join("+"))}return e}function Ot(r){return!r||typeof r!="object"||Array.isArray(r)?{}:r}function Lt(r,e,l){const n=new Map;n.set(Q,{title:l,group:"General"});for(const o of r.catalog)o.id.startsWith("suggested.")||n.set(o.id,{title:o.title,group:ae(o.id)});for(const o of r.options)o.id.startsWith("suggested.")||n.set(o.id,{title:o.title,group:ae(o.id)});for(const[o,f]of Object.entries(e))typeof f=="string"&&(n.has(o)||n.set(o,{title:o,group:ae(o)}));return n}function It(r){const e=new Map;for(const l of X)e.set(l,[]);for(const[l,n]of r){const o=e.get(n.group);o&&o.push(l)}for(const l of X){const n=e.get(l);n&&n.sort((o,f)=>(r.get(o)?.title??"").localeCompare(r.get(f)?.title??""))}return e}function Wt(r,e,l,n){const o=r.toLowerCase().trim();if(!o)return l;const f=new Map;for(const b of X)f.set(b,[]);const y=Array.from(e.entries()).map(([b,$])=>({id:b,title:$.title,group:$.group,keybind:n(b)})),x=lt.go(o,y,{keys:["title","keybind"],threshold:-1e4});for(const b of x){const $=f.get(b.obj.group);$&&$.push(b.obj.id)}return f}function Mt(r){ve(()=>{const e=l=>{const n=r.active();if(!n)return;if(l.preventDefault(),l.stopPropagation(),l.stopImmediatePropagation(),l.key==="Escape"){r.stop();return}if((l.key==="Backspace"||l.key==="Delete")&&!l.ctrlKey&&!l.metaKey&&!l.altKey&&!l.shiftKey){r.set(n,"none"),r.stop();return}const f=Kt(l);if(!f)return;const y=new Map;for(const x of oe(f))for(const b of r.used().get(x)??[])b.id!==n&&y.set(b.id,b.title);if(y.size>0){R({title:r.language.t("settings.shortcuts.conflict.title"),description:r.language.t("settings.shortcuts.conflict.description",{keybind:Me(f,r.language.t),titles:[...y.values()].join(", ")})});return}r.set(n,f),r.stop()};document.addEventListener("keydown",e,!0),xe(()=>document.removeEventListener("keydown",e,!0))})}const Nt=()=>{const r=Oe(),e=ee(),l=me(),[n,o]=ce({active:null,filter:""}),f=()=>{n.active&&(o("active",null),r.keybinds(!0))},y=m=>{if(n.active===m){f();return}n.active&&f(),o("active",m),r.keybinds(!1)},x=O(()=>Ot(l.current.keybinds)),b=O(()=>Object.values(x()).some(m=>typeof m=="string")),$=()=>{f(),l.keybinds.resetAll(),R({title:e.t("settings.shortcuts.reset.toast.title"),description:e.t("settings.shortcuts.reset.toast.description")})},P=O(()=>(e.locale(),Lt(r,x(),e.t("command.palette")))),F=m=>P().get(m)?.title??"",A=O(()=>It(P())),D=O(()=>Wt(n.filter,P(),A(),m=>r.keybind(m)||"")),v=O(()=>{for(const m of X)if((D().get(m)??[]).length>0)return!0;return!1}),h=O(()=>{const m=new Map,k=(_,c)=>{const a=m.get(_);if(!a){m.set(_,[c]);return}a.push(c)},j=l.keybinds.get(Q)??Ft;for(const _ of oe(j))k(_,{id:Q,title:F(Q)});const S=_=>{const c=l.keybinds.get(_);if(typeof c=="string")return c;const a=r.options.find(u=>u.id===_);return a?.keybind?a.keybind:r.catalog.find(u=>u.id===_)?.keybind};for(const _ of P().keys())if(_!==Q)for(const c of oe(S(_)))k(c,{id:_,title:F(_)});return m});return Mt({active:()=>n.active,stop:f,set:(m,k)=>l.keybinds.set(m,k),used:h,language:e}),xe(()=>{n.active&&r.keybinds(!0)}),(()=>{var m=Tt(),k=m.firstChild,j=k.firstChild,S=j.firstChild,_=S.firstChild,c=S.nextSibling,a=k.nextSibling;return s(_,()=>e.t("settings.shortcuts.title")),s(S,t(J,{size:"small",variant:"secondary",onClick:$,get disabled(){return!b()},get children(){return e.t("settings.shortcuts.reset.button")}}),null),s(c,t(V,{name:"magnifying-glass",class:"text-icon-weak-base flex-shrink-0"}),null),s(c,t(se,{variant:"ghost",type:"text",get value(){return n.filter},onChange:i=>o("filter",i),get placeholder(){return e.t("settings.shortcuts.search.placeholder")},spellcheck:!1,autocorrect:"off",autocomplete:"off",autocapitalize:"off",class:"flex-1"}),null),s(c,t(C,{get when(){return n.filter},get children(){return t($e,{icon:"circle-x",variant:"ghost",onClick:()=>o("filter","")})}}),null),s(a,t(q,{each:X,children:i=>t(C,{get when(){return(D().get(i)??[]).length>0},get children(){var u=Et(),g=u.firstChild;return s(g,()=>e.t(jt[i])),s(u,t(N,{get children(){return t(q,{get each(){return D().get(i)??[]},children:w=>(()=>{var z=zt(),K=z.firstChild,I=K.nextSibling;return s(K,()=>F(w)),I.$$click=()=>y(w),Le(I,"data-keybind-id",w),s(I,t(C,{get when(){return n.active===w},get fallback(){return r.keybind(w)||e.t("settings.shortcuts.unassigned")},get children(){return e.t("settings.shortcuts.pressKeys")}})),H(T=>Ie(I,{"h-8 px-3 rounded-md text-12-regular":!0,"bg-surface-base text-text-subtle hover:bg-surface-raised-base-hover active:bg-surface-raised-base-active":n.active!==w,"border border-border-weak-base bg-surface-inset-base text-text-weak":n.active===w},T)),z})()})}}),null),u}})}),null),s(a,t(C,{get when(){return B(()=>!!n.filter)()&&!v()},get children(){var i=Pt(),u=i.firstChild;return s(u,()=>e.t("settings.shortcuts.search.empty")),s(i,t(C,{get when(){return n.filter},get children(){var g=Ct(),w=g.firstChild,z=w.nextSibling;return z.nextSibling,s(g,()=>n.filter,z),g}}),null),i}}),null),m})()};be(["click"]);var Gt=p('<div class="flex items-center justify-between gap-4 min-h-16 border-b border-border-weak-base last:border-none flex-wrap py-3"data-component=custom-provider-section><div class="flex flex-col min-w-0"><div class="flex flex-wrap items-center gap-x-3 gap-y-1"><span class="text-14-medium text-text-strong"></span></div><span class="text-12-regular text-text-weak pl-8">'),Rt=p('<div class="flex flex-col h-full overflow-y-auto no-scrollbar px-4 pb-10 sm:px-10 sm:pb-10"><div class="sticky top-0 z-10 bg-[linear-gradient(to_bottom,var(--surface-stronger-non-alpha)_calc(100%_-_24px),transparent)]"><div class="flex flex-col gap-1 pt-6 pb-8 max-w-[720px]"><h2 class="text-16-medium text-text-strong"></h2></div></div><div class="flex flex-col gap-8 max-w-[720px]"><div class="flex flex-col gap-1"data-component=connected-providers-section><h3 class="text-14-medium text-text-strong pb-2"></h3></div><div class="flex flex-col gap-1"><h3 class="text-14-medium text-text-strong pb-2">'),Vt=p('<div class="py-4 text-14-regular text-text-weak">'),Bt=p('<div class="group flex flex-wrap items-center justify-between gap-4 min-h-16 py-3 border-b border-border-weak-base last:border-none"><div class="flex items-center gap-3 min-w-0"><span class="text-14-medium text-text-strong truncate">'),qt=p('<span class="text-14-regular text-text-base opacity-0 group-hover:opacity-100 transition-opacity duration-200 pr-3 cursor-default">'),Ut=p('<div class="flex flex-wrap items-center justify-between gap-4 min-h-16 py-3 border-b border-border-weak-base last:border-none"><div class="flex flex-col min-w-0"><div class="flex items-center gap-x-3"><span class="text-14-medium text-text-strong">'),Ht=p('<span class="text-12-regular text-text-weak pl-8">');const Yt=[{match:r=>r==="opencode",key:"dialog.provider.opencode.note"},{match:r=>r==="opencode-go",key:"dialog.provider.opencodeGo.tagline"},{match:r=>r==="anthropic",key:"dialog.provider.anthropic.note"},{match:r=>r.startsWith("github-copilot"),key:"dialog.provider.copilot.note"},{match:r=>r==="openai",key:"dialog.provider.openai.note"},{match:r=>r==="google",key:"dialog.provider.google.note"},{match:r=>r==="openrouter",key:"dialog.provider.openrouter.note"},{match:r=>r==="vercel",key:"dialog.provider.vercel.note"}],Jt=()=>{const r=Ne(),e=ee(),l=Ge(),n=Re(),o=Ve(),f=O(()=>o.connected().filter(v=>v.id!=="opencode"||Object.values(v.models).find(h=>h.cost?.input))),y=O(()=>{const v=new Set(f().map(d=>d.id)),h=o.popular().filter(d=>!v.has(d.id)).slice();return h.sort((d,m)=>ne.indexOf(d.id)-ne.indexOf(m.id)),h}),x=v=>{if(!("source"in v))return;const h=v.source;if(h==="env"||h==="api"||h==="config"||h==="custom")return h},b=v=>{const h=x(v);return h==="env"?e.t("settings.providers.tag.environment"):h==="api"?e.t("provider.connect.method.apiKey"):h==="config"?F(v.id)?e.t("settings.providers.tag.custom"):e.t("settings.providers.tag.config"):h==="custom"?e.t("settings.providers.tag.custom"):e.t("settings.providers.tag.other")},$=v=>x(v)!=="env",P=v=>Yt.find(h=>h.match(v))?.key,F=v=>{const h=n.data.config.provider?.[v];return!(!h||h.npm!=="@ai-sdk/openai-compatible"||!h.models||Object.keys(h.models).length===0)},A=async(v,h)=>{const d=n.data.config.disabled_providers??[],m=d.includes(v)?d:[...d,v];n.set("config","disabled_providers",m),await n.updateConfig({disabled_providers:m}).then(()=>{R({variant:"success",icon:"circle-check",title:e.t("provider.disconnect.toast.disconnected.title",{provider:h}),description:e.t("provider.disconnect.toast.disconnected.description",{provider:h})})}).catch(k=>{n.set("config","disabled_providers",d);const j=k instanceof Error?k.message:String(k);R({title:e.t("common.requestFailed"),description:j})})},D=async(v,h)=>{if(F(v)){await l.client.auth.remove({providerID:v}).catch(()=>{}),await A(v,h);return}await l.client.auth.remove({providerID:v}).then(async()=>{await l.client.global.dispose(),R({variant:"success",icon:"circle-check",title:e.t("provider.disconnect.toast.disconnected.title",{provider:h}),description:e.t("provider.disconnect.toast.disconnected.description",{provider:h})})}).catch(d=>{const m=d instanceof Error?d.message:String(d);R({title:e.t("common.requestFailed"),description:m})})};return(()=>{var v=Rt(),h=v.firstChild,d=h.firstChild,m=d.firstChild,k=h.nextSibling,j=k.firstChild,S=j.firstChild,_=j.nextSibling,c=_.firstChild;return s(m,()=>e.t("settings.providers.title")),s(S,()=>e.t("settings.providers.section.connected")),s(j,t(N,{get children(){return t(C,{get when(){return f().length>0},get fallback(){return(()=>{var a=Vt();return s(a,()=>e.t("settings.providers.connected.empty")),a})()},get children(){return t(q,{get each(){return f()},children:a=>(()=>{var i=Bt(),u=i.firstChild,g=u.firstChild;return s(u,t(re,{get id(){return a.id},class:"size-5 shrink-0 icon-strong-base"}),g),s(g,()=>a.name),s(u,t(te,{get children(){return b(a)}}),null),s(i,t(C,{get when(){return $(a)},get fallback(){return(()=>{var w=qt();return s(w,()=>e.t("settings.providers.connected.environmentDescription")),w})()},get children(){return t(J,{size:"large",variant:"ghost",onClick:()=>void D(a.id,a.name),get children(){return e.t("common.disconnect")}})}}),null),i})()})}})}}),null),s(c,()=>e.t("settings.providers.section.popular")),s(_,t(N,{get children(){return[t(q,{get each(){return y()},children:a=>(()=>{var i=Ut(),u=i.firstChild,g=u.firstChild,w=g.firstChild;return s(g,t(re,{get id(){return a.id},class:"size-5 shrink-0 icon-strong-base"}),w),s(w,()=>a.name),s(g,t(C,{get when(){return a.id==="opencode"},get children(){return t(te,{get children(){return e.t("dialog.provider.tag.recommended")}})}}),null),s(g,t(C,{get when(){return a.id==="opencode-go"},get children(){return t(te,{get children(){return e.t("dialog.provider.tag.recommended")}})}}),null),s(u,t(C,{get when(){return P(a.id)},children:z=>(()=>{var K=Ht();return s(K,()=>e.t(z())),K})()}),null),s(i,t(J,{size:"large",variant:"secondary",icon:"plus-small",onClick:()=>{r.show(()=>t(it,{get provider(){return a.id}}))},get children(){return e.t("common.connect")}}),null),i})()}),(()=>{var a=Gt(),i=a.firstChild,u=i.firstChild,g=u.firstChild,w=u.nextSibling;return s(u,t(re,{id:"synthetic",class:"size-5 shrink-0 icon-strong-base"}),g),s(g,()=>e.t("provider.custom.title")),s(u,t(te,{get children(){return e.t("settings.providers.tag.custom")}}),null),s(w,()=>e.t("settings.providers.custom.description")),s(a,t(J,{size:"large",variant:"secondary",icon:"plus-small",onClick:()=>{r.show(()=>t(ot,{back:"close"}))},get children(){return e.t("common.connect")}}),null),a})()]}}),null),s(_,t(J,{variant:"ghost",class:"px-0 py-0 mt-5 text-14-medium text-text-interactive-base text-left justify-start hover:bg-transparent active:bg-transparent",onClick:()=>{r.show(()=>t(ct,{}))},get children(){return e.t("dialog.provider.viewAll")}}),null),v})()};var we=p('<div class="flex flex-col items-center justify-center py-12 text-center"><span class="text-14-regular text-text-weak">'),Qt=p('<span class="text-14-regular text-text-strong mt-1">&quot;<!>&quot;'),Zt=p('<div class="flex flex-col h-full overflow-y-auto no-scrollbar px-4 pb-10 sm:px-10 sm:pb-10"><div class="sticky top-0 z-10 bg-[linear-gradient(to_bottom,var(--surface-stronger-non-alpha)_calc(100%_-_24px),transparent)]"><div class="flex flex-col gap-4 pt-6 pb-6 max-w-[720px]"><h2 class="text-16-medium text-text-strong"></h2><div class="flex items-center gap-2 px-3 h-9 rounded-lg bg-surface-base"></div></div></div><div class="flex flex-col gap-8 max-w-[720px]">'),Xt=p('<div class="flex flex-col gap-1"><div class="flex items-center gap-2 pb-2"><span class="text-14-medium text-text-strong">'),er=p('<div class="flex flex-wrap items-center justify-between gap-4 py-3 border-b border-border-weak-base last:border-none"><div class=min-w-0><span class="text-14-regular text-text-strong truncate block"></span></div><div class=flex-shrink-0>');const tr=r=>(()=>{var e=we(),l=e.firstChild;return s(l,()=>r.label),e})(),rr=r=>(()=>{var e=we(),l=e.firstChild;return s(l,()=>r.message),s(e,t(C,{get when(){return r.filter},get children(){var n=Qt(),o=n.firstChild,f=o.nextSibling;return f.nextSibling,s(n,()=>r.filter,f),n}}),null),e})(),sr=()=>{const r=ee(),e=Be(),l=at({items:n=>e.list(),key:n=>`${n.provider.id}:${n.id}`,filterKeys:["provider.name","name","id"],sortBy:(n,o)=>n.name.localeCompare(o.name),groupBy:n=>n.provider.id,sortGroupsBy:(n,o)=>{const f=ne.indexOf(n.category),y=ne.indexOf(o.category),x=f>=0,b=y>=0;if(x&&!b)return-1;if(!x&&b)return 1;if(x&&b)return f-y;const $=n.items[0].provider.name,P=o.items[0].provider.name;return $.localeCompare(P)}});return(()=>{var n=Zt(),o=n.firstChild,f=o.firstChild,y=f.firstChild,x=y.nextSibling,b=o.nextSibling;return s(y,()=>r.t("settings.models.title")),s(x,t(V,{name:"magnifying-glass",class:"text-icon-weak-base flex-shrink-0"}),null),s(x,t(se,{variant:"ghost",type:"text",get value(){return l.filter()},get onChange(){return l.onInput},get placeholder(){return r.t("dialog.model.search.placeholder")},spellcheck:!1,autocorrect:"off",autocomplete:"off",autocapitalize:"off",class:"flex-1"}),null),s(x,t(C,{get when(){return l.filter()},get children(){return t($e,{icon:"circle-x",variant:"ghost",get onClick(){return l.clear}})}}),null),s(b,t(C,{get when(){return!l.grouped.loading},get fallback(){return t(tr,{get label(){return`${r.t("common.loading")}${r.t("common.loading.ellipsis")}`}})},get children(){return t(C,{get when(){return l.flat().length>0},get fallback(){return t(rr,{get message(){return r.t("dialog.model.empty")},get filter(){return l.filter()}})},get children(){return t(q,{get each(){return l.grouped.latest},children:$=>(()=>{var P=Xt(),F=P.firstChild,A=F.firstChild;return s(F,t(re,{get id(){return $.category},class:"size-5 shrink-0 icon-strong-base"}),A),s(A,()=>$.items[0].provider.name),s(P,t(N,{get children(){return t(q,{get each(){return $.items},children:D=>{const v={providerID:D.provider.id,modelID:D.id};return(()=>{var h=er(),d=h.firstChild,m=d.firstChild,k=d.nextSibling;return s(m,()=>D.name),s(k,t(M,{get checked(){return e.visible(v)},onChange:j=>{e.setVisibility(v,j)},hideLabel:!0,get children(){return D.name}})),h})()}})}}),null),P})()})}})}})),n})()};var fe=p("<div class=settings-services-list>"),nr=p("<div class=settings-services-drafts-title>New services (add to opencode.jsonc)"),ir=p('<div class=settings-services-hint>Copy the configuration above into your <code>opencode.jsonc</code> under the <code>"preview"</code> key.'),lr=p("<div class=settings-services-empty>No preview services configured. Click <strong>Auto-detect</strong> to scan your project or <strong>Add</strong> to configure manually."),ar=p("<div class=settings-services><div class=settings-services-header><div><div class=settings-services-title>Preview Services</div><div class=settings-services-desc>Configure dev servers and preview services for this project.</div></div><div class=settings-services-actions><button class=settings-services-btn></button><button class=settings-services-btn>Add"),or=p("<span class=settings-services-port>:"),cr=p("<button class=settings-services-icon-btn title=Stop>"),dr=p("<button class=settings-services-icon-btn title=Start>"),ur=p("<div class=settings-services-item><span class=settings-services-dot></span><span class=settings-services-name></span><span class=settings-services-cmd></span><div class=settings-services-item-actions>"),gr=p('<div class=settings-services-draft><input class="settings-services-input settings-services-input--name"placeholder=name><select class=settings-services-select><option value=web>web</option><option value=api>api</option><option value=terminal>terminal</option></select><input class="settings-services-input settings-services-input--port"placeholder=port type=number><input class="settings-services-input settings-services-input--cmd"placeholder=command><button class="settings-services-icon-btn settings-services-rm">');function pr(){const r=qe(),e=O(()=>`?directory=${encodeURIComponent(r.directory)}`),[l,n]=ue([]),[o,f]=ce([]),[y,x]=ue(!1),b=async()=>{try{const d=await r.fetch(`${r.url}/preview/services${e()}`);d.ok&&n(await d.json())}catch{}};Ue(()=>{b()});const $=async d=>{await r.fetch(`${r.url}/preview/services/${d}/start${e()}`,{method:"POST"}),await b()},P=async d=>{await r.fetch(`${r.url}/preview/services/${d}/stop${e()}`,{method:"POST"}),await b()},F=async()=>{x(!0);try{const d=await r.fetch(`${r.url}/preview/infer${e()}`,{method:"POST"});if(d.ok){const m=await d.json(),k=new Set(l().map(S=>S.name)),j=m.filter(S=>!k.has(S.name)).map(S=>({name:S.name,port:String(S.port),type:S.type,command:S.command}));f([...o,...j])}}finally{x(!1)}},A=()=>f([...o,{name:"",port:"3000",type:"web",command:""}]),D=d=>f(o.filter((m,k)=>k!==d)),v=d=>d==="web"?et:d==="api"?tt:rt,h=d=>d==="running"?"var(--color-green-500)":d==="starting"?"var(--color-yellow-500)":d==="error"?"var(--color-red-500)":"var(--text-weaker)";return(()=>{var d=ar(),m=d.firstChild,k=m.firstChild,j=k.nextSibling,S=j.firstChild,_=S.nextSibling,c=_.firstChild;return S.$$click=()=>void F(),s(S,t(He,{class:"size-3.5"}),null),s(S,()=>y()?"Scanning…":"Auto-detect",null),_.$$click=A,s(_,t(Ye,{class:"size-3.5"}),c),s(d,t(C,{get when(){return l().length>0},get children(){var a=fe();return s(a,t(q,{get each(){return l()},children:i=>{const u=v(i.type);return(()=>{var g=ur(),w=g.firstChild,z=w.nextSibling,K=z.nextSibling,I=K.nextSibling;return s(g,t(u,{class:"size-3.5 text-icon-weak"}),z),s(z,()=>i.name),s(g,t(C,{get when(){return i.port},get children(){var T=or();return T.firstChild,s(T,()=>i.port,null),T}}),K),s(K,()=>i.command),s(I,t(C,{get when(){return i.status==="running"},get children(){var T=cr();return T.$$click=()=>void P(i.name),s(T,t(Je,{class:"size-3.5"})),T}}),null),s(I,t(C,{get when(){return i.status==="stopped"},get children(){var T=dr();return T.$$click=()=>void $(i.name),s(T,t(Qe,{class:"size-3.5"})),T}}),null),H(T=>Ze(w,"background",h(i.status))),g})()}})),a}}),null),s(d,t(C,{get when(){return o.length>0},get children(){return[nr(),(()=>{var a=fe();return s(a,t(q,{each:o,children:(i,u)=>(()=>{var g=gr(),w=g.firstChild,z=w.nextSibling,K=z.nextSibling,I=K.nextSibling,T=I.nextSibling;return w.$$input=W=>f(u(),"name",W.currentTarget.value),z.addEventListener("change",W=>f(u(),"type",W.currentTarget.value)),K.$$input=W=>f(u(),"port",W.currentTarget.value),I.$$input=W=>f(u(),"command",W.currentTarget.value),T.$$click=()=>D(u()),s(T,t(Xe,{class:"size-3.5"})),H(()=>w.value=i.name),H(()=>z.value=i.type),H(()=>K.value=i.port),H(()=>I.value=i.command),g})()})),a})(),ir()]}}),null),s(d,t(C,{get when(){return B(()=>l().length===0)()&&o.length===0},get children(){return lr()}}),null),H(()=>S.disabled=y()),d})()}be(["click","input"]);var fr=p('<div class="flex flex-col justify-between h-full w-full"><div class="flex flex-col gap-3 w-full pt-3"><div class="flex flex-col gap-3"><div class="flex flex-col gap-1.5"><div class="flex flex-col gap-1.5 w-full"></div></div><div class="flex flex-col gap-1.5"><div class="flex flex-col gap-1.5 w-full"></div></div></div></div><div class="flex flex-col gap-1 pl-1 py-1 text-12-medium text-text-weak"><span></span><span class=text-11-regular>v');const yr=r=>{const e=ee(),l=he();return t(st,{size:"x-large",transition:!0,get children(){return t(L,{orientation:"vertical",variant:"settings",get defaultValue(){return r.tab??"general"},class:"h-full settings-dialog",get children(){return[t(L.List,{get children(){var n=fr(),o=n.firstChild,f=o.firstChild,y=f.firstChild,x=y.firstChild,b=y.nextSibling,$=b.firstChild,P=o.nextSibling,F=P.firstChild,A=F.nextSibling;return A.firstChild,s(y,t(L.SectionTitle,{get children(){return e.t("settings.section.desktop")}}),x),s(x,t(L.Trigger,{value:"general",get children(){return[t(V,{name:"sliders"}),B(()=>e.t("settings.tab.general"))]}}),null),s(x,t(L.Trigger,{value:"shortcuts",get children(){return[t(V,{name:"keyboard"}),B(()=>e.t("settings.tab.shortcuts"))]}}),null),s(b,t(L.SectionTitle,{get children(){return e.t("settings.section.server")}}),$),s($,t(L.Trigger,{value:"providers",get children(){return[t(V,{name:"providers"}),B(()=>e.t("settings.providers.title"))]}}),null),s($,t(L.Trigger,{value:"models",get children(){return[t(V,{name:"models"}),B(()=>e.t("settings.models.title"))]}}),null),s($,t(L.Trigger,{value:"services",get children(){return[t(V,{name:"terminal"}),"Services"]}}),null),s(F,()=>e.t("app.name.desktop")),s(A,()=>l.version,null),n}}),t(L.Content,{value:"general",class:"no-scrollbar",get children(){return t(St,{})}}),t(L.Content,{value:"shortcuts",class:"no-scrollbar",get children(){return t(Nt,{})}}),t(L.Content,{value:"providers",class:"no-scrollbar",get children(){return t(Jt,{})}}),t(L.Content,{value:"models",class:"no-scrollbar",get children(){return t(sr,{})}}),t(L.Content,{value:"services",class:"no-scrollbar",get children(){return t(pr,{})}})]}})}})};export{yr as DialogSettings};