@cline/cli-linux-arm64 3.0.54 → 3.0.55-nightly.1787055197

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 (125) hide show
  1. package/bin/cline +0 -0
  2. package/cline-hub/webview/assets/Chat-DAH-JU7t.js +201 -0
  3. package/cline-hub/webview/assets/{DialogTitle-jgZKJpfs.js → DialogTitle-BqajMDIm.js} +1 -1
  4. package/cline-hub/webview/assets/{abnfDiagram-VRR7QNED-BLFmc_AX.js → abnfDiagram-VRR7QNED-Be9ivyLF.js} +1 -1
  5. package/cline-hub/webview/assets/arc-3UKfLtkz.js +1 -0
  6. package/cline-hub/webview/assets/{architectureDiagram-ZJ3FMSHR-DvcvwqFE.js → architectureDiagram-ZJ3FMSHR-BDsKCTs4.js} +1 -1
  7. package/cline-hub/webview/assets/{badge-DJicQweE.js → badge-6HhkS3z9.js} +1 -1
  8. package/cline-hub/webview/assets/{blockDiagram-677ZJIJ3-D2G4QuxG.js → blockDiagram-677ZJIJ3-CHD_J6RY.js} +2 -2
  9. package/cline-hub/webview/assets/bundle-mjs-CyB9GzWm.js +1 -0
  10. package/cline-hub/webview/assets/c4Diagram-LMCZKHZV-ClmFYV3g.js +10 -0
  11. package/cline-hub/webview/assets/channel-BIC0YCzT.js +1 -0
  12. package/cline-hub/webview/assets/{chunk-32BRIVSS-BsAqn4xZ.js → chunk-32BRIVSS-7roN4V45.js} +1 -1
  13. package/cline-hub/webview/assets/chunk-52WLFC77-DEfoFGdq.js +10 -0
  14. package/cline-hub/webview/assets/{chunk-BO2N2NFS-DhZuH4Af.js → chunk-BO2N2NFS-BsZ82u-z.js} +9 -9
  15. package/cline-hub/webview/assets/{chunk-C7G6YPKG-CV2Ol95R.js → chunk-C7G6YPKG-DBhUCKu7.js} +1 -1
  16. package/cline-hub/webview/assets/{chunk-EX3LRPZG-C7pvEKxc.js → chunk-EX3LRPZG-Cy_TQpzv.js} +1 -1
  17. package/cline-hub/webview/assets/{chunk-FWX5IMBZ-wv8Fkt1d.js → chunk-FWX5IMBZ-DO4vTS0i.js} +2 -2
  18. package/cline-hub/webview/assets/{chunk-HOUHSVGY-CFjt2s0d.js → chunk-HOUHSVGY-B04R_umg.js} +1 -1
  19. package/cline-hub/webview/assets/{chunk-ICXQ74PX-COcWu1Sq.js → chunk-ICXQ74PX-BSKRMyFr.js} +1 -1
  20. package/cline-hub/webview/assets/{chunk-MOJQB5TN-D44BZz7X.js → chunk-MOJQB5TN-B_gKeTxM.js} +1 -1
  21. package/cline-hub/webview/assets/{chunk-OGEWGWER-BVna3Z_8.js → chunk-OGEWGWER-CR4zh_DV.js} +1 -1
  22. package/cline-hub/webview/assets/{chunk-PUDLZKDR-CE01riew.js → chunk-PUDLZKDR-C6jX_SVA.js} +1 -1
  23. package/cline-hub/webview/assets/{chunk-Q4XR5HBZ-CtUzoHvJ.js → chunk-Q4XR5HBZ-DkRpWOkn.js} +2 -2
  24. package/cline-hub/webview/assets/chunk-RYQCIY6F-BUc8VYLJ.js +1 -0
  25. package/cline-hub/webview/assets/{chunk-V7JOEXUC-C4XkVjGi.js → chunk-V7JOEXUC-BMNa01wQ.js} +1 -1
  26. package/cline-hub/webview/assets/{chunk-VAUOI2AC-BlqTQL33.js → chunk-VAUOI2AC-DC6y0Pon.js} +1 -1
  27. package/cline-hub/webview/assets/{chunk-VR4S4FIN-CbCTOh7J.js → chunk-VR4S4FIN-NuklvPa4.js} +1 -1
  28. package/cline-hub/webview/assets/{chunk-WYO6CB5R-B91ryJFB.js → chunk-WYO6CB5R-Ht1kfqSA.js} +3 -3
  29. package/cline-hub/webview/assets/{chunk-ZGVPDNZ5-D5I51kcE.js → chunk-ZGVPDNZ5-CeJ5hUbe.js} +2 -2
  30. package/cline-hub/webview/assets/{chunk-ZIRB5QZD-BpeS1aZ7.js → chunk-ZIRB5QZD-O39ZBUk3.js} +4 -4
  31. package/cline-hub/webview/assets/classDiagram-OUVF2IWQ-Dsa9aGWZ.js +1 -0
  32. package/cline-hub/webview/assets/classDiagram-v2-EOCWNBFH-Dsa9aGWZ.js +1 -0
  33. package/cline-hub/webview/assets/{cose-bilkent-JH36ORCC-Do63cWW-.js → cose-bilkent-JH36ORCC-0-dytQ64.js} +1 -1
  34. package/cline-hub/webview/assets/{cynefinDiagram-TSTJHNR4-DxiC1jLj.js → cynefinDiagram-TSTJHNR4-CM3Cb0zD.js} +1 -1
  35. package/cline-hub/webview/assets/{dagre-VKFMJZFB-D4MnrU54.js → dagre-VKFMJZFB-C3zd729J.js} +1 -1
  36. package/cline-hub/webview/assets/{desktop-client-Cc9yU7GV.js → desktop-client-BzJm9_zB.js} +1 -1
  37. package/cline-hub/webview/assets/{diagram-FQU43EPY-D6nNqFiO.js → diagram-FQU43EPY-vHaV1X0k.js} +1 -1
  38. package/cline-hub/webview/assets/{diagram-G47NLZAW-C8pCvnUn.js → diagram-G47NLZAW-3CFUWxkm.js} +1 -1
  39. package/cline-hub/webview/assets/{diagram-NH7WQ7WH-BjRb6vlK.js → diagram-NH7WQ7WH-knhXCIYS.js} +1 -1
  40. package/cline-hub/webview/assets/{diagram-OA4YK3LP-BOaPe4YT.js → diagram-OA4YK3LP-Bj--3hBp.js} +1 -1
  41. package/cline-hub/webview/assets/{diagram-WEI45ONY-C2gh4ORi.js → diagram-WEI45ONY-CU1ul1cq.js} +1 -1
  42. package/cline-hub/webview/assets/{ebnfDiagram-CCIWWBDH-CjkO8TQF.js → ebnfDiagram-CCIWWBDH-CO67IabF.js} +1 -1
  43. package/cline-hub/webview/assets/{erDiagram-Q63AITRT-BMK30ekD.js → erDiagram-Q63AITRT-BYUDNAG5.js} +1 -1
  44. package/cline-hub/webview/assets/{extensions-view-BPiQgdTf.js → extensions-view-BpkrDG6p.js} +1 -1
  45. package/cline-hub/webview/assets/flowDiagram-23GEKE2U-DB8ijrFq.js +1 -0
  46. package/cline-hub/webview/assets/{ganttDiagram-NO4QXBWP-BiXN4AZg.js → ganttDiagram-NO4QXBWP-XEhvpkHf.js} +1 -1
  47. package/cline-hub/webview/assets/{gitGraphDiagram-IHSO6WYX-G9vFn-Jf.js → gitGraphDiagram-IHSO6WYX-2WUvHlRx.js} +1 -1
  48. package/cline-hub/webview/assets/{highlighted-body-OFNGDK62-CgYHG1rO.js → highlighted-body-OFNGDK62-D1t0OvrR.js} +1 -1
  49. package/cline-hub/webview/assets/index-BM98iRf0.js +10 -0
  50. package/cline-hub/webview/assets/index-eMmOF_mm.css +1 -0
  51. package/cline-hub/webview/assets/{infoDiagram-FWYZ7A6U-DKv-n7tl.js → infoDiagram-FWYZ7A6U-BuLkUwbh.js} +1 -1
  52. package/cline-hub/webview/assets/{ishikawaDiagram-FXEZZL3T-CR3RSn8R.js → ishikawaDiagram-FXEZZL3T-Bt1KHIH7.js} +1 -1
  53. package/cline-hub/webview/assets/{journeyDiagram-5HDEW3XC-DLH3FDEU.js → journeyDiagram-5HDEW3XC-BVfSAExa.js} +2 -2
  54. package/cline-hub/webview/assets/{kanban-definition-HUTT4EX6-CfNVdKZg.js → kanban-definition-HUTT4EX6-CdFpXq3T.js} +2 -2
  55. package/cline-hub/webview/assets/label-Bs0iffIj.js +76 -0
  56. package/cline-hub/webview/assets/{line-CJ_JkFXf.js → line-Zi3iUihi.js} +1 -1
  57. package/cline-hub/webview/assets/linear-CmpaHCv3.js +1 -0
  58. package/cline-hub/webview/assets/mermaid-GHXKKRXX-Ckyoy2Mi.js +1 -0
  59. package/cline-hub/webview/assets/mermaid-layout-BadlRzDJ.js +1 -0
  60. package/cline-hub/webview/assets/mermaid-layout-BqskXFQG.js +1 -0
  61. package/cline-hub/webview/assets/mermaid-layout-C2x7inlt.js +321 -0
  62. package/cline-hub/webview/assets/mermaid-layout-CD-JajuE.js +1 -0
  63. package/cline-hub/webview/assets/{mermaid-markup-aLwrmF5_.js → mermaid-markup-4KnljNms.js} +3 -3
  64. package/cline-hub/webview/assets/{mermaid-parser-CeG4Jv6J.js → mermaid-parser-B5dtuYEh.js} +1 -1
  65. package/cline-hub/webview/assets/{mermaid-parser-DEvma7oi.js → mermaid-parser-BICK3FdT.js} +16 -16
  66. package/cline-hub/webview/assets/{mermaid-parser-vz6fNr8n.js → mermaid-parser-BYr1RLu9.js} +1 -1
  67. package/cline-hub/webview/assets/{mermaid-parser-D7YKh_-X.js → mermaid-parser-Bd5X_psc.js} +1 -1
  68. package/cline-hub/webview/assets/{mermaid-parser-C0ihgYQ9.js → mermaid-parser-CUdSKy0R.js} +1 -1
  69. package/cline-hub/webview/assets/mermaid-parser-DL14msmj.js +1 -0
  70. package/cline-hub/webview/assets/mermaid-parser-DMx__WIl.js +1 -0
  71. package/cline-hub/webview/assets/mermaid-parser-Dp5WGUCu.js +1 -0
  72. package/cline-hub/webview/assets/{mermaid-parser-CJzh8iAc.js → mermaid-parser-u_Yu50JG.js} +2 -2
  73. package/cline-hub/webview/assets/{mermaid.core-Be9B_pr2.js → mermaid.core-gn7g72XA.js} +5 -5
  74. package/cline-hub/webview/assets/{mindmap-definition-LN4V7U3C-DUQyLHrD.js → mindmap-definition-LN4V7U3C-BivXsx29.js} +1 -1
  75. package/cline-hub/webview/assets/{ordinal-DtR4qwUh.js → ordinal-BDEzSJ7C.js} +1 -1
  76. package/cline-hub/webview/assets/path-fybaL0A-.js +1 -0
  77. package/cline-hub/webview/assets/{pegDiagram-2B236MQR-DOgBowT1.js → pegDiagram-2B236MQR-B3bct9eT.js} +1 -1
  78. package/cline-hub/webview/assets/{pieDiagram-ENE6RG2P-DRfeiass.js → pieDiagram-ENE6RG2P-DkDm2qZ7.js} +2 -2
  79. package/cline-hub/webview/assets/{quadrantDiagram-ABIIQ3AL-BgPT8pIn.js → quadrantDiagram-ABIIQ3AL-oKoCSLjB.js} +1 -1
  80. package/cline-hub/webview/assets/{railroadDiagram-RFXS5EU6-8wt-q6c9.js → railroadDiagram-RFXS5EU6-vFIfQEnq.js} +1 -1
  81. package/cline-hub/webview/assets/{requirementDiagram-TGXJPOKE-DRTUm7Qo.js → requirementDiagram-TGXJPOKE-XKSjP20t.js} +1 -1
  82. package/cline-hub/webview/assets/{rough.esm-By172zw-.js → rough.esm-Dy-Kn_BL.js} +1 -1
  83. package/cline-hub/webview/assets/{sankeyDiagram-HTMAVEWB-CeY3Y_ll.js → sankeyDiagram-HTMAVEWB-Bj74CCDT.js} +1 -1
  84. package/cline-hub/webview/assets/{sequenceDiagram-DBY2YBRQ-DSUB2OM4.js → sequenceDiagram-DBY2YBRQ-D-rKANAQ.js} +2 -2
  85. package/cline-hub/webview/assets/settings-view-M_JD-cZy.js +1 -0
  86. package/cline-hub/webview/assets/{stateDiagram-2N3HPSRC-B2x_vEZe.js → stateDiagram-2N3HPSRC-B1gVQY9Z.js} +1 -1
  87. package/cline-hub/webview/assets/stateDiagram-v2-6OUMAXLB-BAbYfZMc.js +1 -0
  88. package/cline-hub/webview/assets/{swimlanes-5IMT3BWC-D4vQUhBS.js → swimlanes-5IMT3BWC-C3eLBK2s.js} +1 -1
  89. package/cline-hub/webview/assets/swimlanesDiagram-G3AALYLV-BiyLi762.js +8 -0
  90. package/cline-hub/webview/assets/{switch-1OAUgxzd.js → switch-CsW_9J9M.js} +1 -1
  91. package/cline-hub/webview/assets/{timeline-definition-FHXFAJF6-B-Cz6AFL.js → timeline-definition-FHXFAJF6-B7v7GMSp.js} +2 -2
  92. package/cline-hub/webview/assets/{vennDiagram-L72KCM5P-BHMfdY1b.js → vennDiagram-L72KCM5P-CTNU0xJq.js} +1 -1
  93. package/cline-hub/webview/assets/vscode-2dRY2WFo.js +1 -0
  94. package/cline-hub/webview/assets/{wardleyDiagram-EHGQE667-BgTZ-C-Z.js → wardleyDiagram-EHGQE667-B1h41ZEX.js} +15 -15
  95. package/cline-hub/webview/assets/{xychartDiagram-FW5EYKEG-B9lKc__k.js → xychartDiagram-FW5EYKEG--ZLgcMtO.js} +1 -1
  96. package/cline-hub/webview/index.html +5 -5
  97. package/extensions/plugin-sandbox-bootstrap.js +1 -1
  98. package/package.json +1 -1
  99. package/cline-hub/webview/assets/Chat-Ddr1_y0K.js +0 -197
  100. package/cline-hub/webview/assets/arc-DD7eF3YX.js +0 -1
  101. package/cline-hub/webview/assets/bundle-mjs-CSP5ngA5.js +0 -1
  102. package/cline-hub/webview/assets/c4Diagram-LMCZKHZV-C6Nuiq7M.js +0 -10
  103. package/cline-hub/webview/assets/channel-CSeXS2Ai.js +0 -1
  104. package/cline-hub/webview/assets/chunk-52WLFC77-BWe_4R7D.js +0 -10
  105. package/cline-hub/webview/assets/chunk-RYQCIY6F-AfEdSVyS.js +0 -1
  106. package/cline-hub/webview/assets/classDiagram-OUVF2IWQ-BC75njhg.js +0 -1
  107. package/cline-hub/webview/assets/classDiagram-v2-EOCWNBFH-BC75njhg.js +0 -1
  108. package/cline-hub/webview/assets/flowDiagram-23GEKE2U-BntOZ8ZE.js +0 -1
  109. package/cline-hub/webview/assets/index-D_uZQMMw.js +0 -10
  110. package/cline-hub/webview/assets/index-Dwkfosyp.css +0 -1
  111. package/cline-hub/webview/assets/label-CFn0VYsb.js +0 -1
  112. package/cline-hub/webview/assets/linear-B87ngFcg.js +0 -1
  113. package/cline-hub/webview/assets/mermaid-GHXKKRXX-DWw3cmjX.js +0 -1
  114. package/cline-hub/webview/assets/mermaid-layout-C3UvhD5t.js +0 -321
  115. package/cline-hub/webview/assets/mermaid-layout-CKcc_JPx.js +0 -1
  116. package/cline-hub/webview/assets/mermaid-layout-DI4ft-3R.js +0 -1
  117. package/cline-hub/webview/assets/mermaid-layout-db2zCT1P.js +0 -1
  118. package/cline-hub/webview/assets/mermaid-parser-Bjbk52nf.js +0 -1
  119. package/cline-hub/webview/assets/mermaid-parser-CWbpbwPR.js +0 -1
  120. package/cline-hub/webview/assets/mermaid-parser-N1OWR5wr.js +0 -1
  121. package/cline-hub/webview/assets/path-COt_16Va.js +0 -1
  122. package/cline-hub/webview/assets/settings-view-CBVLcC-5.js +0 -76
  123. package/cline-hub/webview/assets/stateDiagram-v2-6OUMAXLB-BchjBw5_.js +0 -1
  124. package/cline-hub/webview/assets/swimlanesDiagram-G3AALYLV-FXn7KRqH.js +0 -8
  125. package/cline-hub/webview/assets/vscode-tfEHsPTc.js +0 -1
@@ -0,0 +1 @@
1
+ import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{a as t,i as n,r}from"./bundle-mjs-CyB9GzWm.js";import{$n as i,$t as a,B as o,Bn as s,Bt as c,C as l,Cn as u,Ct as d,Dt as f,E as p,En as m,Et as h,F as g,G as _,Gn as v,H as y,I as b,J as x,L as S,Lt as C,M as w,O as T,Pt as E,Q as D,Qn as O,R as k,Rn as A,S as j,Sn as M,St as N,Tt as P,U as F,Un as I,V as ee,Vn as L,W as te,X as ne,Xn as re,Xt as ie,Yn as R,Yt as ae,Z as z,_ as oe,an as se,ar as ce,b as B,bn as le,c as V,cr as ue,d as de,dn as fe,dr as pe,en as me,f as he,fn as ge,g as _e,gt as ve,h as ye,hn as be,in as xe,ir as Se,it as Ce,j as we,k as Te,l as Ee,ln as H,m as De,nr as Oe,on as ke,or as Ae,p as je,pn as Me,q as Ne,sr as Pe,tn as Fe,u as Ie,un as Le,v as Re,vn as ze,vt as Be,w as U,wn as Ve,xn as He,y as Ue,yn as We,z as Ge,zn as Ke,zt as qe}from"./vscode-2dRY2WFo.js";import{A as Je,B as Ye,C as Xe,D as Ze,E as Qe,H as $e,L as et,M as tt,O as nt,P as rt,R as it,S as at,T as ot,U as st,V as ct,_ as lt,a as ut,b as dt,c as ft,d as pt,f as mt,g as ht,h as gt,i as _t,j as vt,k as yt,l as bt,n as xt,p as St,r as Ct,s as W,t as G,u as wt,v as Tt,w as Et,x as Dt,y as Ot,z as K}from"./label-Bs0iffIj.js";import{a as q,i as kt,n as At,o as jt,r as Mt,t as Nt}from"./switch-CsW_9J9M.js";import{a as J,i as Pt,n as Ft,r as It,t as Y}from"./desktop-client-BzJm9_zB.js";import{l as Lt}from"./DialogTitle-BqajMDIm.js";import{O as Rt,_ as zt,a as Bt,b as Vt,c as Ht,g as X,h as Ut,i as Wt,m as Gt,n as Kt,o as qt,r as Jt,s as Yt,t as Xt,v as Zt,w as Qt,x as $t,y as en}from"./index-BM98iRf0.js";var tn=S(`arrow-left`,[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]),nn=S(`building`,[[`path`,{d:`M12 10h.01`,key:`1nrarc`}],[`path`,{d:`M12 14h.01`,key:`1etili`}],[`path`,{d:`M12 6h.01`,key:`1vi96p`}],[`path`,{d:`M16 10h.01`,key:`1m94wz`}],[`path`,{d:`M16 14h.01`,key:`1gbofw`}],[`path`,{d:`M16 6h.01`,key:`1x0f13`}],[`path`,{d:`M8 10h.01`,key:`19clt8`}],[`path`,{d:`M8 14h.01`,key:`6423bh`}],[`path`,{d:`M8 6h.01`,key:`1dz90k`}],[`path`,{d:`M9 22v-3a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v3`,key:`cabbwy`}],[`rect`,{x:`4`,y:`2`,width:`16`,height:`20`,rx:`2`,key:`1uxh74`}]]),rn=S(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),an=S(`circle-alert`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`12`,x2:`12`,y1:`8`,y2:`12`,key:`1pkeuh`}],[`line`,{x1:`12`,x2:`12.01`,y1:`16`,y2:`16`,key:`4dfq90`}]]),on=S(`circle-plus`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M8 12h8`,key:`1wcyev`}],[`path`,{d:`M12 8v8`,key:`napkw2`}]]),sn=S(`credit-card`,[[`rect`,{width:`20`,height:`14`,x:`2`,y:`5`,rx:`2`,key:`ynyp8z`}],[`line`,{x1:`2`,x2:`22`,y1:`10`,y2:`10`,key:`1b3vmo`}]]),cn=S(`eye-off`,[[`path`,{d:`M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49`,key:`ct8e1f`}],[`path`,{d:`M14.084 14.158a3 3 0 0 1-4.242-4.242`,key:`151rxh`}],[`path`,{d:`M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143`,key:`13bj9a`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]),ln=S(`eye`,[[`path`,{d:`M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0`,key:`1nclc0`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),un=S(`file`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}]]),dn=S(`log-in`,[[`path`,{d:`m10 17 5-5-5-5`,key:`1bsop3`}],[`path`,{d:`M15 12H3`,key:`6jk70r`}],[`path`,{d:`M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4`,key:`u53s6r`}]]),fn=S(`log-out`,[[`path`,{d:`m16 17 5-5-5-5`,key:`1bji2h`}],[`path`,{d:`M21 12H9`,key:`dn1m92`}],[`path`,{d:`M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4`,key:`1uf3rs`}]]),pn=S(`minus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}]]),mn=S(`pause`,[[`rect`,{x:`14`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`kaeet6`}],[`rect`,{x:`5`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`1wsw3u`}]]),hn=S(`receipt`,[[`path`,{d:`M12 17V7`,key:`pyj7ub`}],[`path`,{d:`M16 8h-6a2 2 0 0 0 0 4h4a2 2 0 0 1 0 4H8`,key:`1elt7d`}],[`path`,{d:`M4 3a1 1 0 0 1 1-1 1.3 1.3 0 0 1 .7.2l.933.6a1.3 1.3 0 0 0 1.4 0l.934-.6a1.3 1.3 0 0 1 1.4 0l.933.6a1.3 1.3 0 0 0 1.4 0l.933-.6a1.3 1.3 0 0 1 1.4 0l.934.6a1.3 1.3 0 0 0 1.4 0l.933-.6A1.3 1.3 0 0 1 19 2a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1 1.3 1.3 0 0 1-.7-.2l-.933-.6a1.3 1.3 0 0 0-1.4 0l-.934.6a1.3 1.3 0 0 1-1.4 0l-.933-.6a1.3 1.3 0 0 0-1.4 0l-.933.6a1.3 1.3 0 0 1-1.4 0l-.934-.6a1.3 1.3 0 0 0-1.4 0l-.933.6a1.3 1.3 0 0 1-.7.2 1 1 0 0 1-1-1z`,key:`ycz6yz`}]]),Z=e(t(),1),gn=Z.createContext({disabled:!1});function _n(){return Z.useContext(gn)}var Q=r();function vn(e){let t=e instanceof Error?e.message:String(e);return t.includes(`unsupported desktop command: cline_account`)?Error(`The desktop sidecar is running an older build that does not support account commands. Restart the sidecar or reload the app, then try again.`):e instanceof Error?e:Error(t)}function yn(e){let t=e.toLowerCase();return t.includes(`no cline account auth token found`)||t.includes(`requires re-authentication`)||t.includes(`auth token`)||t.includes(`unauthorized`)}async function bn(){return await Y.invoke(`cline_account`,{action:`clineAccount`,operation:`fetchMe`})}async function xn(){return await Y.invoke(`cline_account`,{action:`clineAccount`,operation:`fetchBalance`})}async function Sn(){return await Y.invoke(`cline_account`,{action:`clineAccount`,operation:`fetchUserOrganizations`})}async function Cn(e){return await Y.invoke(`cline_account`,{action:`clineAccount`,operation:`fetchOrganizationBalance`,organizationId:e})}async function wn(){return await Y.invoke(`cline_account`,{action:`clineAccount`,operation:`fetchUsageTransactions`})}async function Tn(e,t){return await Y.invoke(`cline_account`,{action:`clineAccount`,operation:`fetchOrganizationUsageTransactions`,organizationId:e,...t?.trim()?{memberId:t.trim()}:{}})}async function En(){return await Y.invoke(`cline_account`,{action:`clineAccount`,operation:`fetchPaymentTransactions`})}function Dn(){let[e,t]=(0,Z.useState)(`overview`),[n,r]=(0,Z.useState)(null),[i,a]=(0,Z.useState)(null),[o,s]=(0,Z.useState)(null),[c,l]=(0,Z.useState)(null),[u,d]=(0,Z.useState)([]),[f,p]=(0,Z.useState)(!0),[m,h]=(0,Z.useState)(null),[g,_]=(0,Z.useState)([]),[v,y]=(0,Z.useState)(!1),[b,x]=(0,Z.useState)(null),[S,C]=(0,Z.useState)(!1),w=(0,Z.useRef)(0),[T,E]=(0,Z.useState)([]),[D,O]=(0,Z.useState)(!1),[A,j]=(0,Z.useState)(null),[M,N]=(0,Z.useState)(!1),P=u.find(e=>e.active)??null,F=(0,Z.useCallback)(()=>{a(null),s(null),l(null),d([]),_([]),C(!1),x(null),E([]),N(!1),j(null)},[]),I=(0,Z.useCallback)(async()=>{p(!0),h(null);try{let[e,t,n]=await Promise.all([bn(),xn(),Sn()]),r=n.find(e=>e.active)??null,i=r?await Cn(r.organizationId):null;a(e),s(t),l(i),d(n)}catch(e){F();let t=vn(e).message;h(t)}finally{p(!1)}},[F]);(0,Z.useEffect)(()=>{I()},[I]);let ee=async()=>{r(`sign-in`),h(null);try{await Y.invoke(`run_provider_oauth_login`,{provider:`cline`}),await I(),t(`overview`)}catch(e){let t=vn(e).message;h(t),F()}finally{r(null)}},L=async()=>{r(`sign-out`);try{await Y.invoke(`save_provider_settings`,{provider:`cline`,api_key:``,settings:{auth:{accessToken:``,refreshToken:``,accountId:``}}}),F(),t(`overview`),h(`No Cline account auth token found`)}catch(e){let t=vn(e).message;h(t)}finally{r(null)}},te=(0,Z.useCallback)(async()=>{let e=w.current;y(!0),x(null);try{let t=P?await Tn(P.organizationId,P.memberId):await wn();if(w.current!==e)return;_(t),C(!0)}catch(t){if(w.current!==e)return;let n=vn(t).message;x(n)}finally{w.current===e&&y(!1)}},[P]);(0,Z.useEffect)(()=>{w.current+=1,_([]),C(!1),x(null)},[P?.organizationId]),(0,Z.useEffect)(()=>{e===`usage`&&!S&&te()},[e,S,te]);let ne=(0,Z.useCallback)(async()=>{O(!0),j(null);try{let e=await En();E(e),N(!0)}catch(e){let t=vn(e).message;j(t)}finally{O(!1)}},[]);(0,Z.useEffect)(()=>{e===`billing`&&!M&&ne()},[e,M,ne]);let re=e=>new Date(e).toLocaleDateString(`en-US`,{month:`short`,day:`numeric`,year:`numeric`}),ie=e=>new Date(e).toLocaleTimeString(`en-US`,{hour:`numeric`,minute:`2-digit`}),R=(e,t=2)=>new Intl.NumberFormat(`en-US`,{minimumFractionDigits:t,maximumFractionDigits:t}).format(e/1e6),ae=P?c?.balance??o?.balance??null:o?.balance??null,z=[`overview`,`usage`,`billing`],oe=(e,t)=>(0,Q.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-3 py-12 text-center`,children:[(0,Q.jsx)(an,{className:`h-8 w-8 text-destructive`}),(0,Q.jsx)(`p`,{className:`text-sm text-muted-foreground max-w-md`,children:e}),(0,Q.jsxs)(`button`,{type:`button`,onClick:t,className:`flex items-center gap-2 rounded-lg border border-border px-3.5 py-2 text-sm font-medium text-muted-foreground hover:bg-accent hover:text-foreground transition-colors`,children:[(0,Q.jsx)(Pt,{className:`h-4 w-4`}),`Retry`]})]}),se=()=>(0,Q.jsx)(`div`,{className:`rounded-lg border border-border bg-card p-6`,children:(0,Q.jsxs)(`div`,{className:`mx-auto flex max-w-xl flex-col items-center gap-4 py-8 text-center`,children:[(0,Q.jsx)(`div`,{className:`flex size-12 items-center justify-center rounded-lg bg-primary/10 text-primary`,children:(0,Q.jsx)(Rt,{className:`h-6 w-6`})}),(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`h3`,{className:`text-lg font-semibold text-foreground`,children:`Sign in to Cline`}),(0,Q.jsx)(`p`,{className:`mt-2 text-sm text-muted-foreground`,children:`Connect your Cline account to review credits, usage, billing, and organization details from Cline Hub.`})]}),(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center justify-center gap-2`,children:[(0,Q.jsxs)(U,{disabled:n!==null,onClick:()=>void ee(),type:`button`,children:[n===`sign-in`?(0,Q.jsx)(q,{className:`h-4 w-4 animate-spin`}):(0,Q.jsx)(dn,{className:`h-4 w-4`}),n===`sign-in`?`Signing in`:`Sign in`]}),(0,Q.jsxs)(`a`,{className:`inline-flex h-9 items-center gap-2 rounded-lg border border-border px-3.5 text-sm font-medium text-muted-foreground transition-colors hover:bg-accent hover:text-foreground`,href:`https://app.cline.bot`,rel:`noopener noreferrer`,target:`_blank`,children:[`Create account`,(0,Q.jsx)(J,{className:`h-4 w-4`})]})]})]})}),ce=()=>(0,Q.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,Q.jsx)(q,{className:`h-6 w-6 animate-spin text-muted-foreground`})});return(0,Q.jsxs)(qt,{children:[(0,Q.jsx)(Yt,{description:`Review account, usage, billing, and organization details.`,title:`Account`}),(0,Q.jsx)(`div`,{className:`mb-6 flex items-center gap-0 border-b border-border`,children:z.map(n=>{let r=!i&&n!==`overview`;return(0,Q.jsxs)(`button`,{disabled:r,type:`button`,onClick:()=>t(n),className:k(`relative px-4 py-2.5 text-sm font-medium capitalize transition-colors`,e===n?`text-foreground`:`text-muted-foreground hover:text-foreground`,r&&`cursor-not-allowed opacity-45 hover:text-muted-foreground`),children:[n,e===n&&(0,Q.jsx)(`span`,{className:`absolute inset-x-0 -bottom-px h-0.5 bg-foreground`})]},n)})}),e===`overview`&&(0,Q.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[f&&ce(),m&&(yn(m)?se():oe(m,I)),!f&&!m&&i&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`div`,{className:`rounded-lg border border-border p-5`,children:(0,Q.jsxs)(`div`,{className:`flex items-start gap-4`,children:[(0,Q.jsx)(`div`,{className:`flex h-16 w-16 shrink-0 items-center justify-center rounded-full bg-primary/20 text-2xl font-bold text-primary`,children:i.displayName?.charAt(0)??i.email?.charAt(0)??`?`}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`h3`,{className:`text-base font-semibold text-foreground`,children:i.displayName||i.email}),(0,Q.jsx)(`p`,{className:`mt-0.5 text-sm text-muted-foreground`,children:i.email}),(0,Q.jsxs)(`p`,{className:`mt-2 text-xs text-muted-foreground`,children:[`Member since `,re(i.createdAt)]})]}),(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,Q.jsxs)(`a`,{href:`https://app.cline.bot/dashboard`,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex h-8 items-center gap-1.5 rounded-md border border-border px-2.5 text-xs font-medium text-muted-foreground transition-colors hover:bg-accent hover:text-foreground`,children:[`Open dashboard`,(0,Q.jsx)(J,{className:`h-3.5 w-3.5`})]}),(0,Q.jsxs)(U,{className:`h-8 rounded-md px-2.5 text-xs`,disabled:n!==null,onClick:()=>void L(),type:`button`,variant:`outline`,children:[n===`sign-out`?(0,Q.jsx)(q,{className:`h-3.5 w-3.5 animate-spin`}):(0,Q.jsx)(fn,{className:`h-3.5 w-3.5`}),n===`sign-out`?`Signing out`:`Sign out`]})]})]})}),ae!==null&&(0,Q.jsxs)(`div`,{className:`rounded-lg border border-border p-5`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between mb-4`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Q.jsx)(sn,{className:`h-5 w-5 text-primary`}),(0,Q.jsx)(`h3`,{className:`text-sm font-semibold text-foreground`,children:P?`${P.name} Balance`:`Credits Balance`})]}),(0,Q.jsxs)(`a`,{href:`https://app.cline.bot/dashboard/organization?tab=credits&redirect=true`,target:`_blank`,rel:`noopener noreferrer`,className:`flex items-center gap-1.5 rounded-md px-2.5 py-1.5 text-xs font-medium text-muted-foreground hover:bg-accent hover:text-foreground transition-colors`,children:[(0,Q.jsx)(K,{className:`h-3.5 w-3.5`}),`Credit`]})]}),(0,Q.jsx)(`div`,{className:`flex items-baseline gap-2`,children:(0,Q.jsxs)(`span`,{className:`text-3xl font-bold text-foreground`,children:[`$`,R(ae)]})}),P&&o&&(0,Q.jsxs)(`p`,{className:`mt-2 text-xs text-muted-foreground`,children:[`Personal account: `,R(o.balance),` `,`credits`]})]}),(0,Q.jsxs)(`div`,{className:`rounded-lg border border-border p-5`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between mb-4`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Q.jsx)(nn,{className:`h-5 w-5 text-muted-foreground`}),(0,Q.jsx)(`h3`,{className:`text-sm font-semibold text-foreground`,children:`Organizations`})]}),(0,Q.jsxs)(`a`,{href:`https://app.cline.bot/onboarding?step=1`,target:`_blank`,rel:`noopener noreferrer`,className:`flex items-center gap-1.5 rounded-md px-2.5 py-1.5 text-xs font-medium text-muted-foreground hover:bg-accent hover:text-foreground transition-colors`,children:[(0,Q.jsx)(K,{className:`h-3.5 w-3.5`}),`Create`]})]}),u.length===0?(0,Q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No organizations yet.`}):(0,Q.jsx)(`div`,{className:`flex flex-col gap-2`,children:u.map(e=>(0,Q.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg border border-border px-4 py-3 transition-colors hover:bg-accent/20`,children:[(0,Q.jsx)(`div`,{className:`flex h-9 w-9 shrink-0 items-center justify-center rounded-lg bg-secondary text-sm font-bold text-foreground`,children:e.name.charAt(0)}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`p`,{className:`text-sm font-medium text-foreground`,children:e.name}),(0,Q.jsx)(`p`,{className:`text-xs text-muted-foreground capitalize`,children:e.roles.join(`, `)})]}),e.active&&(0,Q.jsx)(`span`,{className:`rounded-full bg-primary/20 px-2 py-0.5 text-xs font-medium text-primary`,children:`Active`})]},e.organizationId))})]})]})]}),e===`usage`&&(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`p`,{className:`mb-6 text-sm text-muted-foreground`,children:P?`Recent API usage and token consumption for ${P.name}.`:`Recent API usage and token consumption across all providers.`}),v&&ce(),b&&oe(b,te),!v&&!b&&S&&(g.length===0?(0,Q.jsx)(`p`,{className:`py-8 text-center text-sm text-muted-foreground`,children:`No usage transactions yet.`}):(0,Q.jsxs)(`div`,{className:`rounded-lg border border-border overflow-hidden`,children:[(0,Q.jsxs)(`div`,{className:`grid grid-cols-[1fr_auto_auto_auto] gap-4 border-b border-border bg-secondary/50 px-4 py-2.5 text-xs font-medium text-muted-foreground`,children:[(0,Q.jsx)(`span`,{children:`Model`}),(0,Q.jsx)(`span`,{className:`text-right`,children:`Tokens`}),(0,Q.jsx)(`span`,{className:`text-right`,children:`Credits`}),(0,Q.jsx)(`span`,{className:`text-right`,children:`Time`})]}),(0,Q.jsx)(`div`,{className:`divide-y divide-border`,children:g.map(e=>(0,Q.jsxs)(`div`,{className:`grid grid-cols-[1fr_auto_auto_auto] gap-4 px-4 py-3 text-sm transition-colors hover:bg-accent/20`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[(0,Q.jsx)(`p`,{className:`font-medium text-foreground truncate`,children:e.aiModelName}),(0,Q.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e.aiInferenceProviderName})]}),(0,Q.jsx)(`div`,{className:`text-right text-muted-foreground`,children:e.totalTokens.toLocaleString()}),(0,Q.jsx)(`div`,{className:`text-right text-foreground font-medium`,children:R(e.creditsUsed)}),(0,Q.jsxs)(`div`,{className:`text-right text-xs text-muted-foreground`,children:[(0,Q.jsx)(`p`,{children:re(e.createdAt)}),(0,Q.jsx)(`p`,{children:ie(e.createdAt)})]})]},e.id))})]}))]}),e===`billing`&&(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`p`,{className:`mb-6 text-sm text-muted-foreground`,children:`Payment history and credit purchases.`}),D&&ce(),A&&oe(A,ne),!D&&!A&&M&&(T.length===0?(0,Q.jsx)(`p`,{className:`py-8 text-center text-sm text-muted-foreground`,children:`No payment transactions yet.`}):(0,Q.jsxs)(`div`,{className:`rounded-lg border border-border overflow-hidden`,children:[(0,Q.jsxs)(`div`,{className:`grid grid-cols-[1fr_auto_auto] gap-4 border-b border-border bg-secondary/50 px-4 py-2.5 text-xs font-medium text-muted-foreground`,children:[(0,Q.jsx)(`span`,{children:`Date`}),(0,Q.jsx)(`span`,{className:`text-right`,children:`Amount`}),(0,Q.jsx)(`span`,{className:`text-right`,children:`Credits`})]}),(0,Q.jsx)(`div`,{className:`divide-y divide-border`,children:T.map(e=>(0,Q.jsxs)(`div`,{className:`grid grid-cols-[1fr_auto_auto] gap-4 px-4 py-3 text-sm transition-colors hover:bg-accent/20`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Q.jsx)(hn,{className:`h-4 w-4 text-muted-foreground`}),(0,Q.jsx)(`span`,{className:`text-foreground`,children:re(e.paidAt)})]}),(0,Q.jsxs)(`div`,{className:`text-right text-foreground font-medium`,children:[`$`,(e.amountCents/100).toFixed(2)]}),(0,Q.jsxs)(`div`,{className:`text-right text-primary font-medium`,children:[`+`,R(e.credits)]})]},`${e.paidAt}-${e.amountCents}-${e.credits}`))})]}))]})]})}var On=[`streaming`,`tools`,`reasoning`,`vision`,`prompt-cache`];function kn({onBack:e,onSave:t,existingProviderIds:n}){let[r,i]=(0,Z.useState)({providerId:``,name:``,models:[],defaultModel:``,apiKey:``,baseUrl:``,modelsSourceUrl:``,headers:{},timeoutMs:``,capabilities:[`streaming`,`tools`]}),[a,o]=(0,Z.useState)(``),[s,c]=(0,Z.useState)(!1),[l,u]=(0,Z.useState)(!1),[d,f]=(0,Z.useState)(!1),[p,m]=(0,Z.useState)(null),h=(0,Z.useMemo)(()=>r.providerId.trim().toLowerCase().replace(/\s+/g,`-`),[r.providerId]),_=n.includes(h),v=r.models.length>0,y=r.modelsSourceUrl.trim().length>0,b=h.length>0&&r.name.trim().length>0&&r.baseUrl.trim().length>0&&(v||y)&&!_,x=e=>{if((e.key===`Enter`||e.key===`,`)&&a.trim()){e.preventDefault();let t=a.trim().replace(/,/g,``);t&&!r.models.includes(t)&&i(e=>({...e,models:[...e.models,t],defaultModel:e.defaultModel||t})),o(``)}else e.key===`Backspace`&&!a&&r.models.length>0&&i(e=>({...e,models:e.models.slice(0,-1)}))},S=e=>{i(t=>{let n=t.models.filter(t=>t!==e);return{...t,models:n,defaultModel:t.defaultModel===e?n[0]??``:t.defaultModel}})},C=e=>{i(t=>({...t,capabilities:t.capabilities.includes(e)?t.capabilities.filter(t=>t!==e):[...t.capabilities,e]}))},w=()=>{i(e=>({...e,headers:{...e.headers,"":``}}))},T=(e,t,n)=>{let a=Object.entries(r.headers),o={};a.forEach(([e,r],i)=>{o[i===n?t:e]=r}),e!==t&&delete o[e],i(e=>({...e,headers:o}))},E=(e,t)=>{i(n=>({...n,headers:{...n.headers,[e]:t}}))},D=e=>{let t={...r.headers};delete t[e],i(e=>({...e,headers:t}))},O=async()=>{if(!(!b||d)){f(!0),m(null);try{await t({providerId:h,name:r.name.trim(),baseUrl:r.baseUrl.trim(),apiKey:r.apiKey.trim()||void 0,headers:Object.fromEntries(Object.entries(r.headers).map(([e,t])=>[e.trim(),t]).filter(([e])=>e.length>0)),timeoutMs:r.timeoutMs.trim().length>0?Number.parseInt(r.timeoutMs.trim(),10):void 0,models:r.models,defaultModelId:r.defaultModel||r.models[0],modelsSourceUrl:r.modelsSourceUrl.trim()||void 0,capabilities:r.capabilities.length>0?r.capabilities:void 0})}catch(e){m(e instanceof Error?e.message:String(e))}finally{f(!1)}}};return(0,Q.jsxs)(qt,{contentClassName:`max-w-4xl`,children:[(0,Q.jsx)(Yt,{description:`Add an OpenAI-compatible provider and choose its available models.`,title:`Add Provider`,actions:(0,Q.jsxs)(U,{onClick:e,variant:`secondary`,className:`rounded-md p-1.5 transition-colors`,"aria-label":`Back to providers`,children:[(0,Q.jsx)(tn,{className:`h-4 w-4`}),`Providers`]})}),(0,Q.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,Q.jsxs)(`div`,{className:`rounded-lg border border-border p-5`,children:[(0,Q.jsx)(`h3`,{className:`mb-4 text-sm font-semibold text-foreground`,children:`OpenAI-Compatible Provider`}),(0,Q.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 md:grid-cols-2`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(G,{className:`mb-2 block text-xs font-medium text-muted-foreground`,children:`Provider ID`}),(0,Q.jsx)(`input`,{type:`text`,value:r.providerId,onChange:e=>i(t=>({...t,providerId:e.target.value})),placeholder:`my-provider`,className:`w-full rounded-lg border border-border bg-input px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground/50 outline-none focus:ring-1 focus:ring-ring`}),(0,Q.jsx)(`p`,{className:`mt-1.5 text-xs text-muted-foreground`,children:`Lowercase ID used in provider registry.`}),_?(0,Q.jsx)(`p`,{className:`mt-1 text-xs text-destructive`,children:`This provider ID already exists.`}):null]}),(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(G,{className:`mb-2 block text-xs font-medium text-muted-foreground`,children:`Provider Name`}),(0,Q.jsx)(`input`,{type:`text`,value:r.name,onChange:e=>i(t=>({...t,name:e.target.value})),placeholder:`My Provider`,className:`w-full rounded-lg border border-border bg-input px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground/50 outline-none focus:ring-1 focus:ring-ring`})]})]})]}),(0,Q.jsxs)(`div`,{className:`rounded-lg border border-border p-5`,children:[(0,Q.jsx)(G,{className:`mb-2 block text-xs font-medium text-muted-foreground`,children:`Base URL`}),(0,Q.jsx)(`input`,{type:`url`,value:r.baseUrl,onChange:e=>i(t=>({...t,baseUrl:e.target.value})),placeholder:`https://api.example.com/v1`,className:`w-full rounded-lg border border-border bg-input px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground/50 outline-none focus:ring-1 focus:ring-ring`})]}),(0,Q.jsxs)(`div`,{className:`rounded-lg border border-border p-5`,children:[(0,Q.jsx)(G,{className:`mb-2 block text-xs font-medium text-muted-foreground`,children:`Model Source URL (Optional)`}),(0,Q.jsx)(`input`,{type:`url`,value:r.modelsSourceUrl,onChange:e=>i(t=>({...t,modelsSourceUrl:e.target.value})),placeholder:`https://api.example.com/v1/models`,className:`w-full rounded-lg border border-border bg-input px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground/50 outline-none focus:ring-1 focus:ring-ring`}),(0,Q.jsx)(`p`,{className:`mt-1.5 text-xs text-muted-foreground`,children:"Supported JSON: OpenAI `/models` shape with a `data` array, or a direct model array."})]}),(0,Q.jsxs)(`div`,{className:`rounded-lg border border-border p-5`,children:[(0,Q.jsx)(G,{className:`mb-2 block text-xs font-medium text-muted-foreground`,children:`Models`}),(0,Q.jsxs)(`div`,{className:`flex min-h-11 flex-wrap content-start gap-1.5 rounded-lg border border-border bg-input px-3 py-2 focus-within:ring-1 focus-within:ring-ring`,children:[r.models.map(e=>(0,Q.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-md bg-primary/10 px-2 py-1 text-xs font-medium text-primary`,children:[(0,Q.jsx)(`span`,{className:`font-mono`,children:e}),(0,Q.jsx)(U,{onClick:()=>S(e),className:`text-primary/60 hover:text-primary transition-colors`,"aria-label":`Remove ${e}`,children:(0,Q.jsx)(it,{className:`h-3 w-3`})})]},e)),(0,Q.jsx)(`input`,{type:`text`,value:a,onChange:e=>o(e.target.value),onKeyDown:x,placeholder:r.models.length===0?`Type model ID and press Enter`:``,className:`min-w-35 flex-1 bg-transparent text-sm text-foreground placeholder:text-muted-foreground/50 outline-none`})]}),(0,Q.jsx)(`p`,{className:`mt-1.5 text-xs text-muted-foreground`,children:`Add at least one model or set a Model Source URL.`})]}),r.models.length>1?(0,Q.jsxs)(`div`,{className:`rounded-lg border border-border p-5`,children:[(0,Q.jsx)(G,{className:`mb-2 block text-xs font-medium text-muted-foreground`,children:`Default Model`}),(0,Q.jsx)(`select`,{value:r.defaultModel,onChange:e=>i(t=>({...t,defaultModel:e.target.value})),className:`w-full rounded-lg border border-border bg-input px-3 py-2 text-sm text-foreground outline-none focus:ring-1 focus:ring-ring`,children:r.models.map(e=>(0,Q.jsx)(`option`,{value:e,children:e},e))})]}):null,(0,Q.jsxs)(`div`,{className:`rounded-lg border border-border p-5`,children:[(0,Q.jsx)(G,{className:`mb-2 block text-xs font-medium text-muted-foreground`,children:`API Key (Optional)`}),(0,Q.jsxs)(`div`,{className:`relative`,children:[(0,Q.jsx)(`input`,{type:s?`text`:`password`,value:r.apiKey,onChange:e=>i(t=>({...t,apiKey:e.target.value})),placeholder:`sk-...`,className:`w-full rounded-lg border border-border bg-input px-3 py-2 pr-20 font-mono text-sm text-foreground placeholder:text-muted-foreground/50 outline-none focus:ring-1 focus:ring-ring`}),(0,Q.jsxs)(`div`,{className:`absolute right-2 top-1/2 flex -translate-y-1/2 items-center gap-1`,children:[(0,Q.jsx)(U,{onClick:()=>c(!s),variant:`ghost`,className:`rounded-md p-1 transition-colors`,"aria-label":s?`Hide API key`:`Show API key`,children:s?(0,Q.jsx)(cn,{className:`h-4 w-4`}):(0,Q.jsx)(ln,{className:`h-4 w-4`})}),(0,Q.jsx)(U,{onClick:()=>navigator.clipboard.writeText(r.apiKey),variant:`ghost`,className:`rounded-md p-1 transition-colors`,"aria-label":`Copy API key`,children:(0,Q.jsx)(jt,{className:`h-4 w-4`})})]})]})]}),(0,Q.jsxs)(`div`,{className:`rounded-lg border border-border p-5`,children:[(0,Q.jsx)(G,{className:`mb-3 block text-xs font-medium text-muted-foreground`,children:`Capabilities`}),(0,Q.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:On.map(e=>(0,Q.jsx)(U,{onClick:()=>C(e),className:k(`rounded-lg border px-3 py-1.5 text-xs font-medium transition-all`,r.capabilities.includes(e)?`border-primary/40 bg-primary/10 text-primary`:`border-border bg-card text-muted-foreground hover:border-muted-foreground/50 hover:text-foreground`),children:e.replace(/-/g,` `)},e))})]}),(0,Q.jsxs)(`div`,{className:`rounded-lg border border-border overflow-hidden`,children:[(0,Q.jsxs)(U,{onClick:()=>u(!l),className:`flex w-full items-center justify-between px-5 py-4 text-sm font-medium transition-colors text-foreground/40`,variant:`ghost`,children:[`Advanced Settings`,(0,Q.jsx)($e,{className:k(`h-4 w-4 text-muted-foreground transition-transform`,l&&`rotate-180`)})]}),l?(0,Q.jsxs)(`div`,{className:`border-t border-border px-5 py-5 flex flex-col gap-5`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(G,{className:`mb-2 block text-xs font-medium text-muted-foreground`,children:`Timeout (ms)`}),(0,Q.jsx)(`input`,{type:`number`,value:r.timeoutMs,onChange:e=>i(t=>({...t,timeoutMs:e.target.value})),placeholder:`30000`,className:`w-full rounded-lg border border-border bg-input px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground/50 outline-none focus:ring-1 focus:ring-ring`})]}),(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(G,{className:`mb-2 block text-xs font-medium text-muted-foreground`,children:`Custom Headers`}),(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[Object.entries(r.headers).map(([e,t],n)=>(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(`input`,{type:`text`,value:e,onChange:t=>T(e,t.target.value,n),placeholder:`Header name`,className:`flex-1 rounded-lg border border-border bg-input px-3 py-2 font-mono text-xs text-foreground placeholder:text-muted-foreground/50 outline-none focus:ring-1 focus:ring-ring`}),(0,Q.jsx)(`input`,{type:`text`,value:t,onChange:t=>E(e,t.target.value),placeholder:`Value`,className:`flex-1 rounded-lg border border-border bg-input px-3 py-2 font-mono text-xs text-foreground placeholder:text-muted-foreground/50 outline-none focus:ring-1 focus:ring-ring`}),(0,Q.jsx)(U,{onClick:()=>D(e),className:`rounded-md p-2 text-muted-foreground hover:text-destructive transition-colors`,"aria-label":`Remove header`,children:(0,Q.jsx)(g,{className:`h-4 w-4`})})]},e)),(0,Q.jsxs)(U,{onClick:w,className:`flex items-center gap-1.5 rounded-md px-2 py-1.5 text-xs font-medium text-muted-foreground hover:text-foreground transition-colors w-fit`,children:[(0,Q.jsx)(K,{className:`h-3 w-3`}),`Add Header`]})]})]})]}):null]}),p?(0,Q.jsx)(`p`,{className:`text-sm text-destructive`,children:p}):null,(0,Q.jsxs)(`div`,{className:`flex items-center justify-end gap-3 pt-2`,children:[(0,Q.jsx)(U,{onClick:e,className:`rounded-lg border border-border px-4 py-2 text-sm font-medium text-muted-foreground hover:bg-accent hover:text-foreground transition-colors`,children:`Cancel`}),(0,Q.jsx)(U,{onClick:()=>void O(),disabled:!b||d,className:k(`rounded-lg px-4 py-2 text-sm font-medium transition-colors`,b&&!d?`bg-primary text-primary-foreground hover:bg-primary/90`:`bg-muted text-muted-foreground cursor-not-allowed`),children:d?`Saving...`:`Add Provider`})]})]})]})}function An(e,t){return t.find(t=>t.id===e.type)?.name??e.type}function jn(e){return e.botUsername?`@${e.botUsername}`:e.userName?e.userName:e.applicationId?e.applicationId:`pid ${e.pid}`}function Mn(e){if(!e)return`-`;let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function Nn(e){let t=e.label.toLowerCase(),n=`flag`in e?e.flag.toLowerCase():e.key.toLowerCase();return t.includes(`token`)||t.includes(`secret`)||t.includes(`key`)||n.includes(`token`)||n.includes(`secret`)||n.includes(`key`)}function Pn(e){return e.label.toLowerCase().includes(`json`)||e.flag.includes(`credentials`)}function Fn(e,t){let n=e.includeWhen;if(!n)return!0;let r=t[n.flag]??``;return!(n.equals!==void 0&&r!==n.equals||n.notEquals!==void 0&&r===n.notEquals)}function In(e){let t={};for(let n of e?.fields??[])n.initialValue&&(t[n.flag]=n.initialValue);return t}function Ln(e){let t=e[0];return{channelId:t?.id??``,values:In(t),securityEnabled:!1,securityValues:{}}}function Rn(){let[e,t]=(0,Z.useState)([]),[n,r]=(0,Z.useState)([]),[i,a]=(0,Z.useState)(!0),[o,s]=(0,Z.useState)(null),[c,l]=(0,Z.useState)(null),[u,d]=(0,Z.useState)(!1),[f,p]=(0,Z.useState)({channelId:``,values:{},securityEnabled:!1,securityValues:{}}),[m,h]=(0,Z.useState)(null),[_,v]=(0,Z.useState)(null),y=(0,Z.useMemo)(()=>e.find(e=>e.id===f.channelId),[e,f.channelId]),b=(0,Z.useMemo)(()=>{let e={...In(y),...f.values};return(y?.fields??[]).filter(t=>Fn(t,e))},[y,f.values]),x=(0,Z.useCallback)(e=>{t(e.available),r(e.active),p(t=>t.channelId?t:Ln(e.available))},[]),S=(0,Z.useCallback)(async()=>{a(!0),l(null);try{let e=await Y.invoke(`list_connector_channels`);x(e)}catch(e){let t=e instanceof Error?e.message:String(e);l(t)}finally{a(!1)}},[x]);(0,Z.useEffect)(()=>{let e=window.setTimeout(()=>{S()},0);return()=>window.clearTimeout(e)},[S]);let C=()=>{p(Ln(e)),h(null),d(!0)},w=(e,t)=>{p(n=>({...n,values:{...n.values,[e]:t}}))},T=(e,t)=>{p(n=>({...n,securityValues:{...n.securityValues,[e]:t}}))},E=async()=>{if(!y){h(`Choose a channel`);return}for(let e of y.fields)if(b.includes(e)&&e.required&&!f.values[e.flag]?.trim()){h(`${e.label} is required`);return}if(f.securityEnabled&&y.security){for(let e of y.security.fields)if(!f.securityValues[e.key]?.trim()){h(e.requiredMessage);return}}s(y.id),h(null),l(null);try{let e=await Y.invoke(`start_connector_channel`,{channel:y.id,values:f.values,security:{enabled:f.securityEnabled,values:f.securityValues}});x(e),d(!1)}catch(e){let t=e instanceof Error?e.message:String(e);h(t)}finally{s(null)}},D=async e=>{s(e.type),l(null);try{let t=await Y.invoke(`stop_connector_channel`,{channel:e.type});x(t),v(null)}catch(e){let t=e instanceof Error?e.message:String(e);l(t)}finally{s(null)}};return(0,Q.jsxs)(qt,{children:[(0,Q.jsx)(Yt,{description:`${n.length} connected. Start and manage connector channels for Cline Hub.`,title:`Channels`,meta:(0,Q.jsx)(Wt,{children:`cline connect`}),actions:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(U,{disabled:i,onClick:()=>void S(),size:`sm`,type:`button`,variant:`outline`,children:(0,Q.jsx)(Pt,{className:k(`size-4`,i&&`animate-spin`)})}),(0,Q.jsxs)(U,{disabled:e.length===0,onClick:C,size:`sm`,type:`button`,children:[(0,Q.jsx)(K,{className:`size-4`}),`Add Channel`]})]})}),c?(0,Q.jsx)(`div`,{className:`rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive`,children:c}):null,i?(0,Q.jsx)(Bt,{children:`Loading channels...`}):n.length===0?(0,Q.jsx)(Bt,{children:`No channels connected.`}):(0,Q.jsx)(`section`,{className:`overflow-hidden rounded-lg border bg-card`,children:(0,Q.jsx)(`div`,{className:`grid gap-2 p-2.5`,children:n.map(t=>(0,Q.jsxs)(`div`,{className:`grid gap-3 border bg-[color-mix(in_oklch,var(--background)_70%,var(--card))] p-3 md:grid-cols-[minmax(0,1fr)_auto] md:items-center`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(ct,{className:`size-2 fill-emerald-300 text-emerald-300`}),(0,Q.jsx)(`p`,{className:`truncate text-[13px] font-semibold leading-tight`,children:An(t,e)}),(0,Q.jsx)(`span`,{className:`rounded-md border bg-background px-1.5 py-0.5 text-[11px] text-muted-foreground`,children:jn(t)})]}),(0,Q.jsxs)(`div`,{className:`mt-2 flex flex-wrap gap-1.5 text-[11px] text-muted-foreground`,children:[(0,Q.jsxs)(`span`,{className:`rounded-md border bg-background px-1.5 py-0.5`,children:[`pid=`,t.pid]}),(0,Q.jsx)(`span`,{className:`max-w-full break-all rounded-md border bg-background px-1.5 py-0.5`,title:t.hubUrl,children:t.hubUrl}),t.baseUrl?(0,Q.jsx)(`span`,{className:`max-w-full break-all rounded-md border bg-background px-1.5 py-0.5`,title:t.baseUrl,children:t.baseUrl}):null,(0,Q.jsx)(`span`,{className:`rounded-md border bg-background px-1.5 py-0.5`,children:Mn(t.startedAt)}),t.connectionMode?(0,Q.jsx)(`span`,{className:`rounded-md border bg-background px-1.5 py-0.5`,children:t.connectionMode}):null]})]}),(0,Q.jsxs)(U,{disabled:o===t.type,onClick:()=>v(t),size:`sm`,type:`button`,variant:`outline`,children:[(0,Q.jsx)(g,{className:`size-4`}),`Remove...`]})]},t.id))})}),(0,Q.jsx)(ft,{open:u,onOpenChange:d,children:(0,Q.jsxs)(bt,{className:`max-h-[86vh] overflow-y-auto sm:max-w-xl`,children:[(0,Q.jsxs)(mt,{children:[(0,Q.jsx)(St,{children:`Add Channel`}),(0,Q.jsx)(wt,{children:`Start a connector channel for Cline Hub.`})]}),(0,Q.jsxs)(`div`,{className:`grid gap-4 py-2`,children:[(0,Q.jsxs)(`div`,{className:`grid gap-2`,children:[(0,Q.jsx)(G,{children:`Channel`}),(0,Q.jsxs)(gt,{onValueChange:t=>{t&&p({channelId:t,values:In(e.find(e=>e.id===t)),securityEnabled:!1,securityValues:{}})},value:f.channelId,children:[(0,Q.jsx)(Tt,{children:(0,Q.jsx)(Ot,{placeholder:`Select channel`})}),(0,Q.jsx)(ht,{children:e.map(e=>(0,Q.jsx)(lt,{value:e.id,children:e.name},e.id))})]})]}),b.map(e=>(0,Q.jsxs)(`div`,{className:`grid gap-2`,children:[(0,Q.jsxs)(G,{children:[e.label,e.required?(0,Q.jsx)(`span`,{className:`text-destructive`,children:` *`}):null]}),e.options?(0,Q.jsxs)(gt,{onValueChange:t=>{t&&w(e.flag,t)},value:f.values[e.flag]??e.initialValue??``,children:[(0,Q.jsx)(Tt,{children:(0,Q.jsx)(Ot,{placeholder:e.placeholder})}),(0,Q.jsx)(ht,{children:e.options.map(e=>(0,Q.jsx)(lt,{value:e.value,children:e.label},e.value))})]}):Pn(e)?(0,Q.jsx)(W,{onChange:t=>w(e.flag,t.target.value),placeholder:e.placeholder,rows:5,value:f.values[e.flag]??``}):(0,Q.jsx)(V,{onChange:t=>w(e.flag,t.target.value),placeholder:e.placeholder,type:Nn(e)?`password`:`text`,value:f.values[e.flag]??``})]},e.flag)),y?.security?(0,Q.jsxs)(`div`,{className:`grid gap-3 rounded-lg border p-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,Q.jsx)(G,{className:`text-sm`,children:`Restrict access`}),(0,Q.jsx)(Nt,{checked:f.securityEnabled,onCheckedChange:e=>p(t=>({...t,securityEnabled:e}))})]}),f.securityEnabled?y.security.fields.map(e=>(0,Q.jsxs)(`div`,{className:`grid gap-2`,children:[(0,Q.jsx)(G,{children:e.label}),(0,Q.jsx)(V,{onChange:t=>T(e.key,t.target.value),placeholder:e.placeholder,type:Nn(e)?`password`:`text`,value:f.securityValues[e.key]??``})]},e.key)):null]}):null,m?(0,Q.jsx)(`div`,{className:`rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive`,children:m}):null]}),(0,Q.jsxs)(pt,{children:[(0,Q.jsx)(U,{disabled:o!==null,onClick:()=>d(!1),type:`button`,variant:`outline`,children:`Cancel`}),(0,Q.jsx)(U,{disabled:o!==null||!y,onClick:()=>void E(),type:`button`,children:o?`Starting...`:`Add Channel`})]})]})}),(0,Q.jsx)(Gt,{open:_!==null,onOpenChange:e=>{e||v(null)},children:(0,Q.jsxs)(zt,{children:[(0,Q.jsxs)(Vt,{children:[(0,Q.jsx)($t,{children:`Remove Channel`}),(0,Q.jsxs)(Zt,{children:[`Confirm that you want to stop the active`,` `,_?An(_,e):`channel`,` `,`channel for `,_?jn(_):``,`.`]})]}),(0,Q.jsxs)(en,{children:[(0,Q.jsx)(X,{disabled:o!==null,children:`Cancel`}),(0,Q.jsx)(Ut,{disabled:o!==null||!_,onClick:()=>{_&&D(_)},variant:`destructive`,children:`Remove`})]})]})})]})}function zn(e){return e.split(`,`).map(e=>e.trim()).filter(e=>e.length>0)}function Bn(e){let t=zn(e);if(t.length===0)return;let n={};for(let e of t){let t=e.indexOf(`=`);if(t<=0)continue;let r=e.slice(0,t).trim(),i=e.slice(t+1).trim();r&&(n[r]=i)}return Object.keys(n).length>0?n:void 0}function Vn(e){return e?Object.entries(e).map(([e,t])=>`${e}=${t}`).join(`, `):``}function Hn(e){return e?Object.keys(e).map(e=>`${e}=[REDACTED]`).join(`, `):``}function Un(e){return!e||Object.keys(e).length===0?[{id:crypto.randomUUID(),key:``,value:``}]:Object.entries(e).map(([e,t])=>({id:crypto.randomUUID(),key:e,value:t}))}function Wn(e){return{name:e?.name??``,previousName:e?.name??``,transportType:e?.transportType??`stdio`,command:e?.command??``,argsText:e?.args?.join(`, `)??``,cwd:e?.cwd??``,envEntries:Un(e?.env),url:e?.url??``,headersText:Vn(e?.headers),disabled:e?.disabled??!1,metadataText:e?.metadata===void 0?``:JSON.stringify(e.metadata,null,2)}}function Gn(){let[e,t]=(0,Z.useState)([]),[n,r]=(0,Z.useState)(``),[i,a]=(0,Z.useState)(!1),[o,s]=(0,Z.useState)(!0),[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(null),[f,p]=(0,Z.useState)(null),[m,h]=(0,Z.useState)(!1),[_,v]=(0,Z.useState)(`create`),[y,b]=(0,Z.useState)(()=>Wn()),[x,S]=(0,Z.useState)(null),[C,w]=(0,Z.useState)(null),T=(0,Z.useCallback)(e=>{t(e.servers),r(e.settingsPath),a(e.hasSettingsFile)},[]),E=(0,Z.useCallback)(async()=>{s(!0),d(null);try{let e=await Y.invoke(`list_mcp_servers`);T(e)}catch(e){let t=e instanceof Error?e.message:String(e);d(t)}finally{s(!1)}},[T]);(0,Z.useEffect)(()=>{let e=window.setTimeout(()=>{E()},0);return()=>window.clearTimeout(e)},[E]);let D=async(e,t)=>{p(e.name),d(null);try{let n=await Y.invoke(`set_mcp_server_disabled`,{name:e.name,disabled:t});T(n)}catch(e){let t=e instanceof Error?e.message:String(e);d(t)}finally{p(null)}},O=async e=>{p(e.previousName??e.name),d(null);try{let t=await Y.invoke(`upsert_mcp_server`,{input:e});T(t)}catch(e){let t=e instanceof Error?e.message:String(e);throw d(t),e}finally{p(null)}},A=async e=>{p(e),d(null);try{let t=await Y.invoke(`delete_mcp_server`,{name:e});T(t)}catch(e){let t=e instanceof Error?e.message:String(e);d(t)}finally{p(null)}},j=(0,Z.useCallback)(e=>{let t=e.name.trim();if(!t)throw Error(`Server name is required.`);let n=e.envEntries.reduce((e,t)=>{let n=t.key.trim();return n&&(e[n]=t.value),e},{}),r=e.metadataText.trim(),i=r.length>0?JSON.parse(r):void 0;if(e.transportType===`stdio`){let r=e.command.trim();if(!r)throw Error(`Command is required for stdio transport.`);let a=zn(e.argsText);return{name:t,previousName:e.previousName.trim()||void 0,transportType:e.transportType,command:r,args:a.length>0?a:void 0,cwd:e.cwd.trim()||void 0,env:Object.keys(n).length>0?n:void 0,disabled:e.disabled,metadata:i}}let a=e.url.trim();if(!a)throw Error(`URL is required for sse and streamableHttp transport.`);return{name:t,previousName:e.previousName.trim()||void 0,transportType:e.transportType,url:a,headers:Bn(e.headersText),disabled:e.disabled,metadata:i}},[]),M=()=>{v(`create`),b(Wn()),S(null),h(!0)},N=e=>{v(`edit`),b(Wn(e)),S(null),h(!0)},P=async()=>{S(null);try{let e=j(y);await O(e),h(!1)}catch(e){S(e instanceof Error?e.message:String(e))}},F=async()=>{l(!0),d(null);try{let e=await Y.invoke(`open_mcp_settings_file`);e.trim().length>0&&(r(e),a(!0))}catch(e){let t=e instanceof Error?e.message:String(e);d(t)}finally{l(!1)}},I=(0,Z.useMemo)(()=>[...e].sort((e,t)=>e.name.toLowerCase().localeCompare(t.name.toLowerCase())),[e]),ee=(e,t,n)=>{b(r=>({...r,envEntries:r.envEntries.map(r=>r.id===e?{...r,[t]:n}:r)}))},L=()=>{b(e=>({...e,envEntries:[...e.envEntries,{id:crypto.randomUUID(),key:``,value:``}]}))},te=e=>{b(t=>({...t,envEntries:t.envEntries.length===1?[{id:crypto.randomUUID(),key:``,value:``}]:t.envEntries.filter(t=>t.id!==e)}))};return(0,Q.jsxs)(qt,{children:[(0,Q.jsx)(Yt,{description:i?`Editing this list updates cline_mcp_settings.json.`:`No MCP settings file found yet. Add a server to create it.`,title:`MCP Servers`,meta:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(Wt,{children:`cline config mcp`}),(0,Q.jsx)(`span`,{className:`rounded-md border border-border bg-background px-2 py-0.5 text-xs text-muted-foreground`,children:`From settings file`})]}),actions:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(U,{variant:`outline`,size:`sm`,onClick:()=>void E(),disabled:o,children:(0,Q.jsx)(Pt,{className:k(`h-4 w-4`,o&&`animate-spin`)})}),(0,Q.jsxs)(U,{size:`sm`,onClick:M,children:[(0,Q.jsx)(K,{className:`h-4 w-4`}),`Add MCP Server`]})]})}),(0,Q.jsxs)(`div`,{className:`mb-1 flex flex-wrap items-center gap-2 text-sm text-muted-foreground`,children:[(0,Q.jsx)(`span`,{children:`MCP settings path:`}),(0,Q.jsx)(U,{variant:`link`,className:`h-auto p-0 font-mono text-xs`,onClick:()=>void F(),disabled:c,children:n||`Open settings file`})]}),u&&(0,Q.jsx)(`div`,{className:`mb-4 rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive`,children:u}),o?(0,Q.jsx)(`div`,{className:`rounded-lg border border-border px-5 py-4 text-sm text-muted-foreground`,children:`Loading MCP servers...`}):I.length===0?(0,Q.jsx)(`div`,{className:`rounded-lg border border-border px-5 py-4 text-sm text-muted-foreground`,children:`No MCP servers configured.`}):(0,Q.jsx)(`div`,{className:`flex flex-col gap-3`,children:I.map(e=>{let t=f===e.name;return(0,Q.jsxs)(`div`,{className:`rounded-lg border border-border px-5 py-4 transition-colors hover:bg-accent/20`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Q.jsx)(ct,{className:k(`h-2.5 w-2.5 shrink-0`,e.disabled?`fill-muted-foreground/40 text-muted-foreground/40`:`fill-primary text-primary`)}),(0,Q.jsx)(`h3`,{className:`text-sm font-semibold text-foreground`,children:e.name}),(0,Q.jsx)(`span`,{className:`rounded-md border border-border px-2 py-0.5 text-xs text-muted-foreground`,children:e.transportType}),(0,Q.jsx)(`div`,{className:`flex-1`}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,Q.jsx)(U,{variant:`ghost`,size:`icon-sm`,"aria-label":`Edit ${e.name}`,onClick:()=>N(e),disabled:t,children:(0,Q.jsx)(Lt,{className:`h-3.5 w-3.5`})}),(0,Q.jsx)(U,{variant:`ghost`,size:`icon-sm`,"aria-label":`Delete ${e.name}`,onClick:()=>w(e),disabled:t,children:(0,Q.jsx)(g,{className:`h-3.5 w-3.5`})}),(0,Q.jsx)(Nt,{checked:!e.disabled,onCheckedChange:t=>D(e,!t),disabled:t,"aria-label":`Enable ${e.name}`})]})]}),(0,Q.jsxs)(`div`,{className:`mt-2.5 ml-5.5 flex flex-col gap-1 text-xs text-muted-foreground`,children:[e.command&&(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground/70`,children:`Command:`}),` `,e.command]}),e.args&&e.args.length>0&&(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground/70`,children:`Args:`}),` `,e.args.join(`, `)]}),e.cwd&&(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground/70`,children:`CWD:`}),` `,e.cwd]}),e.url&&(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground/70`,children:`URL:`}),` `,e.url]}),e.env&&Object.keys(e.env).length>0&&(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground/70`,children:`Env:`}),` `,Hn(e.env)]}),e.headers&&Object.keys(e.headers).length>0&&(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground/70`,children:`Headers:`}),` `,Vn(e.headers)]})]})]},e.name)})}),(0,Q.jsx)(ft,{open:m,onOpenChange:e=>{h(e),e||S(null)},children:(0,Q.jsxs)(bt,{className:`max-h-[90vh] overflow-y-auto sm:max-w-2xl`,children:[(0,Q.jsxs)(mt,{children:[(0,Q.jsx)(St,{children:_===`edit`?`Edit MCP Server`:`Add MCP Server`}),(0,Q.jsxs)(wt,{children:[`Update the MCP server stored in`,` `,(0,Q.jsx)(`code`,{className:`font-mono`,children:n||`cline_mcp_settings.json`}),`.`]})]}),(0,Q.jsxs)(`div`,{className:`grid gap-4`,children:[(0,Q.jsxs)(`div`,{className:`grid gap-2`,children:[(0,Q.jsx)(G,{htmlFor:`mcp-name`,children:`Server name`}),(0,Q.jsx)(V,{id:`mcp-name`,value:y.name,onChange:e=>b(t=>({...t,name:e.target.value})),placeholder:`github`})]}),(0,Q.jsxs)(`div`,{className:`grid gap-2`,children:[(0,Q.jsx)(G,{children:`Transport type`}),(0,Q.jsxs)(gt,{value:y.transportType,onValueChange:e=>b(t=>({...t,transportType:e})),children:[(0,Q.jsx)(Tt,{className:`w-full`,children:(0,Q.jsx)(Ot,{placeholder:`Select transport`})}),(0,Q.jsxs)(ht,{children:[(0,Q.jsx)(lt,{value:`stdio`,children:`stdio`}),(0,Q.jsx)(lt,{value:`sse`,children:`sse`}),(0,Q.jsx)(lt,{value:`streamableHttp`,children:`streamableHttp`})]})]})]}),y.transportType===`stdio`?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`div`,{className:`grid gap-2`,children:[(0,Q.jsx)(G,{htmlFor:`mcp-command`,children:`Command`}),(0,Q.jsx)(V,{id:`mcp-command`,value:y.command,onChange:e=>b(t=>({...t,command:e.target.value})),placeholder:`npx`})]}),(0,Q.jsxs)(`div`,{className:`grid gap-2`,children:[(0,Q.jsx)(G,{htmlFor:`mcp-args`,children:`Args`}),(0,Q.jsx)(W,{id:`mcp-args`,value:y.argsText,onChange:e=>b(t=>({...t,argsText:e.target.value})),placeholder:`-y, @modelcontextprotocol/server-github`})]}),(0,Q.jsxs)(`div`,{className:`grid gap-2`,children:[(0,Q.jsx)(G,{htmlFor:`mcp-cwd`,children:`Working directory`}),(0,Q.jsx)(V,{id:`mcp-cwd`,value:y.cwd,onChange:e=>b(t=>({...t,cwd:e.target.value})),placeholder:`/path/to/project`})]}),(0,Q.jsxs)(`div`,{className:`grid gap-2`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,Q.jsx)(G,{children:`Environment variables`}),(0,Q.jsx)(U,{type:`button`,variant:`ghost`,size:`sm`,onClick:L,children:(0,Q.jsx)(K,{className:`h-3.5 w-3.5`})})]}),(0,Q.jsx)(`div`,{className:`flex flex-col gap-2`,children:y.envEntries.map(e=>(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(U,{type:`button`,variant:`ghost`,size:`icon-sm`,onClick:()=>te(e.id),"aria-label":`Remove env var ${e.key||`row`}`,children:(0,Q.jsx)(pn,{className:`h-3.5 w-3.5`})}),(0,Q.jsx)(V,{value:e.key,onChange:t=>ee(e.id,`key`,t.target.value),placeholder:`KEY`}),(0,Q.jsx)(V,{type:`password`,value:e.value,onChange:t=>ee(e.id,`value`,t.target.value),placeholder:`VALUE`})]},e.id))})]})]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`div`,{className:`grid gap-2`,children:[(0,Q.jsx)(G,{htmlFor:`mcp-url`,children:`Server URL`}),(0,Q.jsx)(V,{id:`mcp-url`,value:y.url,onChange:e=>b(t=>({...t,url:e.target.value})),placeholder:`https://example.com/mcp`})]}),(0,Q.jsxs)(`div`,{className:`grid gap-2`,children:[(0,Q.jsx)(G,{htmlFor:`mcp-headers`,children:`Headers`}),(0,Q.jsx)(W,{id:`mcp-headers`,value:y.headersText,onChange:e=>b(t=>({...t,headersText:e.target.value})),placeholder:`Authorization=Bearer token`})]})]}),(0,Q.jsxs)(`div`,{className:`grid gap-2`,children:[(0,Q.jsx)(G,{htmlFor:`mcp-metadata`,children:`Metadata JSON`}),(0,Q.jsx)(W,{id:`mcp-metadata`,value:y.metadataText,onChange:e=>b(t=>({...t,metadataText:e.target.value})),placeholder:`{"key":"value"}`})]}),(0,Q.jsxs)(`div`,{className:`flex items-center justify-between rounded-md border border-border px-3 py-2`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`p`,{className:`text-sm font-medium text-foreground`,children:`Enabled`}),(0,Q.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Disable the server without removing it from settings.`})]}),(0,Q.jsx)(Nt,{checked:!y.disabled,onCheckedChange:e=>b(t=>({...t,disabled:!e})),"aria-label":`Enable MCP server`})]}),x?(0,Q.jsx)(`div`,{className:`rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive`,children:x}):null]}),(0,Q.jsxs)(pt,{children:[(0,Q.jsx)(U,{variant:`outline`,onClick:()=>h(!1),disabled:f!==null,children:`Cancel`}),(0,Q.jsx)(U,{onClick:()=>void P(),disabled:f!==null,children:f===null?_===`edit`?`Save changes`:`Add server`:`Saving...`})]})]})}),(0,Q.jsx)(Gt,{open:C!==null,onOpenChange:e=>{e||w(null)},children:(0,Q.jsxs)(zt,{children:[(0,Q.jsxs)(Vt,{children:[(0,Q.jsx)($t,{children:`Delete MCP Server`}),(0,Q.jsx)(Zt,{children:C?`Delete MCP server "${C.name}" from settings?`:`Delete this MCP server from settings?`})]}),(0,Q.jsxs)(en,{children:[(0,Q.jsx)(X,{disabled:f!==null,children:`Cancel`}),(0,Q.jsx)(Ut,{disabled:f!==null||!C,onClick:()=>{C&&(A(C.name),w(null))},children:`Delete`})]})]})})]})}function Kn(e){let t={...e.configValues??{}};e.apiKey!==void 0&&t.apiKey===void 0&&(t.apiKey=e.apiKey),e.baseUrl!==void 0&&t.baseUrl===void 0&&(t.baseUrl=e.baseUrl);for(let n of e.configFields??[])t[n.path]===void 0&&n.defaultValue!==void 0&&(t[n.path]=n.defaultValue);return t}function qn(e){return e==null?``:String(e)}function Jn(e,t){if(e.type===`boolean`)return!!t;if(typeof t==`boolean`)return t;if(e.type===`select`){let n=e.options?.find(e=>String(e.value)===t);if(n)return n.value}let n=t.trim();if(n.length===0)return null;if(e.type===`number`){let e=Number(n);return Number.isFinite(e)?e:null}return n}function Yn({providers:e,onToggle:t,onConfigure:n,onAddProvider:r,selectedProviderId:i,variant:a=`page`}){let[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(``),u=e.filter(e=>e.enabled).length,d=c.trim().toLowerCase(),f=d?e.filter(e=>e.name.toLowerCase().includes(d)):e,p=a===`panel`;return(0,Q.jsx)(Ht,{className:`h-full`,children:(0,Q.jsxs)(`div`,{className:k(`py-10 max-[720px]:px-4 max-[720px]:py-5`,p?`px-8`:`px-18 max-[1200px]:px-8`),children:[(0,Q.jsxs)(`div`,{className:k(`mb-8 flex items-start justify-between gap-6 max-[860px]:flex-col max-[860px]:items-stretch`,p?`max-w-none`:`max-w-[42rem]`),children:[(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[(0,Q.jsx)(`h1`,{className:k(`truncate font-semibold leading-[1.15] tracking-normal text-foreground`,p?`text-[24px]`:`text-[32px]`),children:`Model Providers`}),(0,Q.jsxs)(`p`,{className:`mt-3 text-[15px] leading-6 text-muted-foreground`,children:[`Configure model providers and choose which ones are available.`,` `,e.length,` available · `,u,` `,`enabled`]})]}),(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 max-[860px]:justify-start`,children:[(0,Q.jsx)(U,{"aria-label":`Search providers`,className:`size-8 rounded-md`,onClick:()=>s(e=>!e),size:`icon-sm`,type:`button`,variant:o?`default`:`secondary`,children:(0,Q.jsx)(Mt,{className:`size-4`})}),(0,Q.jsxs)(U,{className:`h-8 rounded-md bg-foreground px-3 text-sm text-background hover:bg-foreground/90`,onClick:r,type:`button`,children:[(0,Q.jsx)(on,{className:`size-4`}),`Add provider`]})]})]}),o?(0,Q.jsx)(`div`,{className:k(`mb-4`,p?`max-w-none`:`max-w-[42rem]`),children:(0,Q.jsxs)(`div`,{className:`flex h-9 items-center gap-2 rounded border bg-background px-3`,children:[(0,Q.jsx)(Mt,{className:`size-4 shrink-0 text-muted-foreground`}),(0,Q.jsx)(V,{"aria-label":`Search model providers`,autoFocus:!0,className:`h-7 border-0 bg-transparent px-0 text-sm`,onChange:e=>l(e.target.value),placeholder:`Search providers`,value:c})]})}):null,(0,Q.jsxs)(`div`,{className:k(`overflow-hidden`,p?`max-w-none`:`max-w-[42rem]`),children:[f.length===0?(0,Q.jsxs)(`div`,{className:`border-b px-2 py-6 text-[15px] text-muted-foreground`,children:[`No providers match "`,c.trim(),`".`]}):null,f.map(e=>(0,Q.jsxs)(`div`,{className:k(`flex min-h-11 items-center gap-4 border-b px-2 py-2 transition-colors hover:bg-accent/30`,i===e.id&&`bg-accent/45`),children:[(0,Q.jsxs)(`button`,{className:`flex min-w-0 flex-1 items-center gap-3 text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,onClick:()=>n(e.id),type:`button`,children:[(0,Q.jsx)(`p`,{className:`min-w-0 flex-1 truncate text-[17px] font-semibold text-foreground`,children:e.name}),(0,Q.jsx)(`p`,{className:`shrink-0 text-[15px] text-muted-foreground`,children:e.models===null?`Models load on demand`:`${e.models} model${e.models===1?``:`s`}`})]}),(0,Q.jsx)(Nt,{"aria-label":`Toggle ${e.name}`,checked:e.enabled,onCheckedChange:()=>t(e.id)}),(0,Q.jsx)(`button`,{"aria-label":`Configure ${e.name}`,className:`grid size-7 shrink-0 place-items-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,onClick:()=>n(e.id),type:`button`,children:(0,Q.jsx)(rn,{className:`size-4`})})]},e.id))]})]})})}function Xn({provider:e,onBack:t,onUpdate:n,onLoadModels:r,modelsLoading:i=!1,modelsError:a,onOAuthLogin:o,oauthLoginPending:s=!1,variant:c=`page`}){let[l,u]=(0,Z.useState)({}),[d,f]=(0,Z.useState)(()=>Kn(e)),[p,m]=(0,Z.useState)(null),[h,g]=(0,Z.useState)(null),_=(0,Z.useRef)(void 0),v=e.configFields??[],y=qn(d.apiKey),b=e.modelList??[],x=p?.providerId===e.id?p.value:``,S=h?.providerId===e.id?h.modelId:null,C=x.trim().toLowerCase(),w=C?b.filter(e=>e.name.toLowerCase().includes(C)||e.id.toLowerCase().includes(C)):b,T=c===`panel`;(0,Z.useEffect)(()=>()=>{_.current!==void 0&&window.clearTimeout(_.current)},[]);let E=(e,t)=>{let r=Jn(e,t),i={...d,[e.path]:r};f(i);let a={configValues:{[e.path]:r}};e.path===`apiKey`&&(a.apiKey=qn(r)),e.path===`baseUrl`&&(a.baseUrl=qn(r)),n(a)},D=t=>{typeof navigator>`u`||!navigator.clipboard?.writeText||navigator.clipboard.writeText(t).then(()=>{g({modelId:t,providerId:e.id}),_.current!==void 0&&window.clearTimeout(_.current),_.current=window.setTimeout(()=>g(null),1600)})};return(0,Q.jsx)(Ht,{className:`h-full`,children:(0,Q.jsxs)(`div`,{className:k(`py-10 max-[720px]:px-4 max-[720px]:py-5`,T?`px-6`:`px-18 max-[1200px]:px-8`),children:[(0,Q.jsxs)(`div`,{className:`mb-8 flex items-center gap-3`,children:[(0,Q.jsx)(U,{"aria-label":T?`Close provider details`:`Back to providers`,className:`rounded-md p-1.5 text-muted-foreground hover:bg-accent hover:text-foreground transition-colors`,onClick:t,variant:`ghost`,children:T?(0,Q.jsx)(it,{className:`h-4 w-4`}):(0,Q.jsx)(tn,{className:`h-4 w-4`})}),(0,Q.jsx)(`h1`,{className:k(`truncate font-semibold leading-[1.15] tracking-normal text-foreground`,T?`text-[24px]`:`text-[32px]`),children:e.name})]}),v.length>0?(0,Q.jsx)(`section`,{className:k(`mb-8`,T?`max-w-none`:`max-w-[86rem]`),children:(0,Q.jsx)(`div`,{className:`flex flex-col`,children:v.map(e=>{let t=d[e.path],n=qn(t),r=e.type===`password`||e.secret,i=l[e.path]??!1;return(0,Q.jsxs)(`div`,{className:`grid min-h-18 grid-cols-[minmax(12rem,0.55fr)_minmax(16rem,0.45fr)] items-center gap-6 border-b py-4 max-[900px]:grid-cols-1 max-[900px]:gap-3`,children:[(0,Q.jsxs)(`header`,{children:[(0,Q.jsx)(`h3`,{className:`text-[17px] font-semibold text-foreground`,children:e.label}),e.description?(0,Q.jsx)(`p`,{className:`mt-1 text-[15px] leading-relaxed text-muted-foreground`,children:e.description}):null]}),e.type===`boolean`?(0,Q.jsxs)(`div`,{className:`flex items-center justify-end`,children:[(0,Q.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:e.label}),(0,Q.jsx)(Nt,{checked:!!t,onCheckedChange:t=>E(e,t)})]}):e.type===`select`?(0,Q.jsxs)(`select`,{className:`h-9 w-full rounded border border-border bg-background px-3 text-sm text-foreground outline-none focus:ring-1 focus:ring-ring`,onChange:t=>E(e,t.target.value),value:n,children:[(0,Q.jsx)(`option`,{value:``,children:`Not set`}),e.options?.map(e=>(0,Q.jsx)(`option`,{value:String(e.value),children:e.label},String(e.value)))]}):(0,Q.jsxs)(`div`,{className:`flex h-9 items-center gap-2 rounded border border-border bg-background px-3`,children:[e.type===`url`?(0,Q.jsx)(Qt,{className:`h-4 w-4 shrink-0 text-muted-foreground`}):null,(0,Q.jsx)(V,{className:`h-7 flex-1 border-0 bg-transparent px-0 text-sm text-foreground outline-none placeholder:text-muted-foreground`,onBlur:()=>E(e,n),onChange:t=>f(n=>({...n,[e.path]:t.target.value})),placeholder:e.placeholder,spellCheck:!1,type:r&&!i?`password`:e.type===`number`?`number`:e.type===`url`?`url`:`text`,value:n}),r?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(U,{"aria-label":i?`Hide secret`:`Show secret`,className:`rounded-md p-1 text-muted-foreground hover:text-foreground transition-colors`,onClick:()=>u(t=>({...t,[e.path]:!i})),variant:`ghost`,children:i?(0,Q.jsx)(cn,{className:`h-4 w-4`}):(0,Q.jsx)(ln,{className:`h-4 w-4`})}),(0,Q.jsx)(U,{"aria-label":`Copy ${e.label}`,className:`rounded-md p-1 text-muted-foreground hover:text-foreground transition-colors`,onClick:()=>navigator.clipboard.writeText(n),variant:`ghost`,children:(0,Q.jsx)(jt,{className:`h-4 w-4`})})]}):null]})]},e.path)})})}):null,!y&&!e.oauthAccessTokenPresent&&o?(0,Q.jsx)(`div`,{className:`mb-8`,children:(0,Q.jsxs)(U,{className:`inline-flex items-center gap-2 w-full`,disabled:s,onClick:o,variant:`default`,children:[s?(0,Q.jsx)(q,{className:`h-4 w-4 animate-spin`}):null,(0,Q.jsx)(`span`,{children:`Login via Browser`})]})}):null,e.oauthAccessTokenPresent?(0,Q.jsx)(`p`,{className:`mb-8 text-xs text-muted-foreground`,children:`OAuth is connected. Manual credentials remain available when this provider supports them.`}):null,(0,Q.jsxs)(`section`,{className:k(`overflow-hidden rounded-lg border`,T?`max-w-none`:`max-w-[46rem]`),children:[(0,Q.jsxs)(`div`,{className:`flex h-12 items-center justify-between bg-muted/40 px-4`,children:[(0,Q.jsx)(`h2`,{className:`text-[17px] font-medium text-muted-foreground`,children:`Models`}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,Q.jsx)(Mt,{className:`size-4 text-muted-foreground`}),(0,Q.jsx)(U,{"aria-label":`Refresh models`,className:`rounded-md p-1.5 text-muted-foreground hover:bg-accent hover:text-foreground transition-colors`,disabled:i,onClick:r,variant:`ghost`,children:(0,Q.jsx)(Pt,{className:k(`size-3`,i&&`animate-spin`)})})]})]}),a?(0,Q.jsx)(`div`,{className:`rounded-lg border border-border px-4 py-8 text-center`,children:(0,Q.jsx)(`p`,{className:`text-sm text-destructive`,children:a})}):b.length>0?(0,Q.jsxs)(`div`,{className:`space-y-3`,children:[(0,Q.jsxs)(`div`,{className:`mx-4 mt-4 flex items-center gap-2 rounded border border-border bg-background px-3 py-2`,children:[(0,Q.jsx)(Mt,{className:`size-4 shrink-0 text-muted-foreground`}),(0,Q.jsx)(V,{"aria-label":`Search models`,className:`h-7 flex-1 border-0 text-sm text-foreground placeholder:text-muted-foreground`,onChange:t=>m({providerId:e.id,value:t.target.value}),placeholder:`Search models by name or ID`,spellCheck:!1,value:x})]}),w.length>0?(0,Q.jsx)(`div`,{className:`max-h-125 overflow-y-scroll border-t`,children:w.map(e=>(0,Q.jsxs)(`div`,{className:`group flex min-h-16 items-center gap-3 border-b px-4 py-3 transition-colors hover:bg-accent/30`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1 font-mono`,children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5 px-1 text-sm text-foreground`,children:[(0,Q.jsx)(`span`,{className:`truncate`,children:e.name}),e.supportsAttachments&&(0,Q.jsx)(`div`,{title:`File Support`,children:(0,Q.jsx)(un,{className:`h-3.5 w-3.5 text-muted-foreground`})}),e.supportsVision&&(0,Q.jsx)(`div`,{title:`Image Support`,children:(0,Q.jsx)(Ye,{className:`h-3.5 w-3.5 text-muted-foreground`})})]}),(0,Q.jsxs)(`button`,{"aria-label":`Copy model ID ${e.id}`,className:`mt-1 flex max-w-full items-center gap-1.5 px-1 text-left text-xs text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,onClick:()=>D(e.id),title:`Copy model ID`,type:`button`,children:[(0,Q.jsx)(`span`,{className:`min-w-0 truncate`,children:e.id}),(0,Q.jsx)(jt,{className:`size-3 shrink-0`}),S===e.id?(0,Q.jsx)(`span`,{className:`shrink-0 text-foreground`,children:`Copied`}):null]})]}),(0,Q.jsx)(`div`,{className:`flex items-center gap-0.5 opacity-0 group-hover:opacity-100 transition-opacity`,children:(0,Q.jsx)(U,{"aria-label":`Favorite ${e.name}`,className:`rounded-md p-1 text-muted-foreground hover:text-foreground transition-colors`,variant:`ghost`,children:(0,Q.jsx)(It,{className:`h-3.5 w-3.5`})})})]},e.id))}):(0,Q.jsx)(`div`,{className:`rounded-lg border border-border px-4 py-8 text-center`,children:(0,Q.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[`No models match "`,x.trim(),`".`]})})]}):(0,Q.jsx)(`div`,{className:`rounded-lg border border-border px-4 py-8 text-center`,children:(0,Q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:i?`Loading models...`:`No models available. Click refresh to load models.`})})]})]})})}function Zn(e){if(!e)return null;for(let t of e.elements){let e=t.tagName;if(e===`BUTTON`||e===`INPUT`){let e=t;if(e.type===`submit`)return e}}return null}function Qn(e){return{checked(t){return e.indeterminate?{}:t?{"data-checked":``}:{"data-unchecked":``}},...oe}}var $n=Z.createContext(void 0);function er(){return Z.useContext($n)}var tr=Z.createContext(void 0);function nr(){let e=Z.useContext(tr);if(e===void 0)throw Error(Se(14));return e}var rr=`data-parent`,ir=Z.forwardRef(function(e,t){let{checked:n,className:r,defaultChecked:i=!1,"aria-labelledby":o,disabled:s=!1,form:u,id:d,indeterminate:f=!1,inputRef:p,name:m,onCheckedChange:h,parent:g=!1,readOnly:_=!1,render:v,required:y=!1,uncheckedValue:b,value:x,nativeButton:S=!1,style:C,...E}=e,{clearErrors:D}=he(),{disabled:O,name:k,setDirty:A,setFilled:j,setFocused:M,setTouched:N,state:P,validationMode:F,validityData:ee,validation:L}=ye(),ne=_n(),{labelId:re,controlId:ie,registerControlId:R,getDescriptionProps:ae}=de(),z=er(),oe=z?.allValues===void 0?void 0:z.parent,se=oe!==void 0,B=O||ne.disabled||z?.disabled||s,le=k??m,V=x??le,fe=te(),ge=te(),_e=d||ie;se&&(g?_e=ge:V===void 0?_e||=ge:_e=`${oe.id}-${V}`);let ve={};se&&(g?ve=oe.getParentProps():V!==void 0&&(ve=oe.getChildProps(V)));let{checked:be=n,indeterminate:xe=f,onCheckedChange:Se,...Ce}=ve,Te=z?.value,De=Z.useRef(null),Oe=pe(()=>Symbol()),Ae=Z.useRef(!1),{getButtonProps:je,buttonRef:Me}=we({disabled:B,native:S}),Ne=z?.validation??L,[Fe,Ie]=l({controlled:V!==void 0&&Te!==void 0&&!g?Te.includes(V):be,default:i,name:`Checkbox`,state:`checked`}),Le=se?!!be:Fe,Re=se&&xe||f;ce(()=>{R!==ue&&(Ae.current=!0,R(Oe.current,_e))},[_e,R,Oe]),Z.useEffect(()=>{let e=Oe.current;return()=>{!Ae.current||R===ue||(Ae.current=!1,R(e,void 0))}},[R,Oe]),Ee(De,fe,Fe,void 0,!z&&!B,m);let ze=Z.useRef(null),Be=Ne.registerInput,U=z?V:void 0,He=Z.useCallback(e=>Be(e,{controlRef:De,value:U}),[Be,U]),Ue=ke(p,ze,g?void 0:He),We=At(o,re,ze,!S,_e??void 0);ce(()=>{ze.current&&(ze.current.indeterminate=Re,Fe&&j(!0))},[Fe,Re,j]),T(Fe,()=>{z||(D(le),j(Fe),A(Fe!==ee.initialValue),Ne.change(Fe))});let Ge=c({checked:Fe,disabled:B,form:u,name:g?void 0:le,id:S?void 0:_e??void 0,required:y,ref:Ue,style:le?me:a,tabIndex:-1,type:`checkbox`,"aria-hidden":!0,onChange(e){if(e.nativeEvent.defaultPrevented)return;if(_){e.preventDefault();return}let t=e.currentTarget.checked,n=H(Ve,e.nativeEvent);if(h?.(t,n),!n.isCanceled&&(Se?.(t,n),!n.isCanceled&&(Ie(t),V!==void 0&&z!==void 0&&!g&&!se))){let e=t?[...z.value,V]:z.value.filter(e=>e!==V);z.setValue(e,n)}},onClick(e){e.stopPropagation()},onFocus(){De.current?.focus()}},x===void 0?Pe:{value:(z?Fe&&x:x)||``},ae,e=>Ne.getValidationProps(B,e));Z.useEffect(()=>{if(!oe||V===void 0)return;let e=oe.disabledStatesRef.current;return e.set(V,B),()=>{e.delete(V)}},[oe,B,V]);let Ke=Z.useMemo(()=>({...P,checked:Le,disabled:B,readOnly:_,required:y,indeterminate:Re}),[P,Le,B,_,y,Re]),Je=Qn(Ke),Ye=qe(`span`,e,{state:Ke,ref:[Me,De,t],props:[{id:S?_e??void 0:fe,role:`checkbox`,"aria-checked":Re?`mixed`:Le,"aria-readonly":_||void 0,"aria-required":y||void 0,"aria-labelledby":We,[rr]:g?``:void 0,onFocus(){B||M(!0)},onBlur(){let e=ze.current;e&&(N(!0),M(!1),F===`onBlur`&&Ne.commit(z?Te:e.checked))},onKeyDown(e){if(e.key!==`Enter`||(e.preventBaseUIHandler(),e.defaultPrevented))return;let t=ze.current?.form??null,n=e.currentTarget,r=e.nativeEvent,i=e.preventDefault,a=r.preventDefault,o=!1;e.preventDefault=()=>{o=!0,i.call(e)},r.preventDefault=()=>{o=!0,a.call(r)},a.call(r),I(n).queueMicrotask(()=>{e.preventDefault=i,r.preventDefault=a,o||Zn(t)?.click()})},onClick(e){if(_||B)return;e.preventDefault();let t=ze.current;t&&w(t,e)}},E,Ce,je,ae,e=>Ne.getValidationProps(B,e)],stateAttributesMapping:Je});return(0,Q.jsxs)(tr.Provider,{value:Ke,children:[Ye,!Fe&&!z&&le&&!g&&b!==void 0&&(0,Q.jsx)(`input`,{type:`hidden`,form:u,name:le,value:b,disabled:B}),(0,Q.jsx)(`input`,{...Ge,suppressHydrationWarning:!0})]})}),ar=Z.forwardRef(function(e,t){let{render:n,className:r,style:i,keepMounted:a=!1,...o}=e,s=nr(),c=s.checked||s.indeterminate,{mounted:l,transitionStatus:u,setMounted:d}=Be(c),f=Z.useRef(null),p={...s,transitionStatus:u};ve({open:c,ref:f,onComplete(){c||d(!1)}});let m={...Qn(s),...ne},h=a||l,g=qe(`span`,e,{ref:[t,f],state:p,stateAttributesMapping:m,props:o});return h?g:null});function or({className:e,...t}){return(0,Q.jsx)(ir,{"data-slot":`checkbox`,className:k(`peer relative flex size-4 shrink-0 cursor-pointer items-center justify-center rounded-lg border border-input transition-colors outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-disabled:cursor-not-allowed aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground dark:data-checked:bg-primary`,e),...t,children:(0,Q.jsx)(ar,{"data-slot":`checkbox-indicator`,className:`grid place-content-center text-current transition-none [&>svg]:size-3.5`,children:(0,Q.jsx)(b,{})})})}function sr(e,t,n,r,i,a,o,s,c,l=2){let u=ae(n.current,{event:e,orientation:r,loopFocus:i,rtl:a,cols:l,disabledIndices:o,minIndex:s,maxIndex:c,prevIndex:t>c?s:t,stopEvent:!0});return ie(n.current,u)?void 0:u}var cr=Z.createContext(void 0),lr=Z.createContext(void 0),ur=Z.createContext(void 0),dr=Z.createContext(!1),fr=Z.createContext(``);function pr(){let e=Z.useContext(cr);if(!e)throw Error(Se(22));return e}function mr(){let e=Z.useContext(lr);if(!e)throw Error(Se(23));return e}function hr(){let e=Z.useContext(ur);if(!e)throw Error(Se(24));return e}function gr(){return Z.useContext(fr)}function _r(){return Z.useContext(dr)}var $={id:e=>e.id,labelId:e=>e.labelId,items:e=>e.items,selectedValue:e=>e.selectedValue,hasSelectionChips:e=>{let t=e.selectedValue;return Array.isArray(t)&&t.length>0},hasSelectedValue:e=>{let{selectedValue:t,selectionMode:n}=e;return t==null?!1:n===`multiple`&&Array.isArray(t)?t.length>0:!0},hasNullItemLabel:(e,t)=>t?at(e.items):!1,open:e=>e.open,mounted:e=>e.mounted,forceMounted:e=>e.forceMounted,inline:e=>e.inline,activeIndex:e=>e.activeIndex,selectedIndex:e=>e.selectedIndex,isActive:(e,t)=>e.activeIndex===t,isSelected:(e,t)=>{let n=e.isItemEqualToValue,r=e.selectedValue;return Array.isArray(r)?r.some(e=>Qe(t,e,n)):Qe(t,r,n)},transitionStatus:e=>e.transitionStatus,popupProps:e=>e.popupProps,listProps:e=>e.listProps,inputProps:e=>e.inputProps,triggerProps:e=>e.triggerProps,itemProps:e=>e.itemProps,positionerElement:e=>e.positionerElement,listElement:e=>e.listElement,popupId:e=>e.popupId,triggerElement:e=>e.triggerElement,inputElement:e=>e.inputElement,inputGroupElement:e=>e.inputGroupElement,popupSide:e=>e.popupSide,openMethod:e=>e.openMethod,inputInsidePopup:e=>e.inputInsidePopup,inputOwnsFormValue:e=>e.inputOwnsFormValue,selectionMode:e=>e.selectionMode,name:e=>e.name,form:e=>e.form,disabled:e=>e.disabled,readOnly:e=>e.readOnly,required:e=>e.required,grid:e=>e.grid,virtualized:e=>e.virtualized,itemToStringLabel:e=>e.itemToStringLabel,isItemEqualToValue:e=>e.isItemEqualToValue,modal:e=>e.modal,autoHighlight:e=>e.autoHighlight};function vr(e){return e==null?void 0:`${e}-popup`}function yr(e,t){return(n,r)=>n!=null&&e.contains(n,r,t)}function br(e){return Array.isArray(e)?e.map(e=>br(e)).join(`,`):e==null?``:String(e)}var xr=new Map;function Sr(e={}){let t={usage:`search`,sensitivity:`base`,ignorePunctuation:!0,...e},n=`${br(e.locale)}|${JSON.stringify(t)}`,r=xr.get(n);if(r)return r;let i=new Intl.Collator(e.locale,t),a={contains(e,t,n){if(!t)return!0;let r=Et(e,n);for(let e=0;e<=r.length-t.length;e+=1)if(i.compare(r.slice(e,e+t.length),t)===0)return!0;return!1},startsWith(e,t,n){if(!t)return!0;let r=Et(e,n);return i.compare(r.slice(0,t.length),t)===0},endsWith(e,t,n){if(!t)return!0;let r=Et(e,n),a=t.length;return r.length>=a&&i.compare(r.slice(r.length-a),t)===0}};return xr.set(n,a),a}var Cr=Sr;function wr(e,t=!1){let{overflowY:n}=s(e);return n!==`auto`&&n!==`scroll`?!1:t?e.clientHeight>0:e.scrollHeight>e.clientHeight}var Tr=Symbol(`none`),Er={value:Tr,index:-1};function Dr(e){let{id:t,onOpenChangeComplete:n,defaultSelectedValue:r=null,selectedValue:i,onSelectedValueChange:o,defaultInputValue:s,inputValue:u,open:f,defaultOpen:g=!1,selectionMode:_,onItemHighlighted:y,name:b,form:x,disabled:S=!1,readOnly:C=!1,required:w=!1,inputRef:E,grid:O=!1,items:k,filteredItems:j,filter:I,openOnInputClick:ee=!0,autoHighlight:te=!1,keepHighlight:ne=!1,highlightItemOnHover:re=!0,loopFocus:ie=!0,itemToStringLabel:R,itemToStringValue:ae,isItemEqualToValue:z=Ze,virtualized:oe=!1,inline:B=!1,fillInputOnItemPress:V=!0,modal:de=!1,limit:fe=-1,autoComplete:ge=`list`,formAutoComplete:_e,locale:be,submitOnItemClick:Se=!1}=e,{clearErrors:we}=he(),{setDirty:Te,validityData:De,setFilled:Oe,name:je,disabled:Me,setTouched:Ne,setFocused:Fe,validationMode:Re,validation:ze}=ye(),U=F(),Ue=Ie({id:t}),Ge=Cr({locale:be}),[qe,Ye]=Z.useState(!1),[$e,et]=Z.useState(null),nt=Z.useRef([]),rt=Z.useRef([]),it=Z.useRef(null),at=Z.useRef(null),ct=Z.useRef(null),lt=Z.useRef(null),ut=Z.useRef(null),dt=Z.useRef(!0),ft=Z.useRef(!1),pt=Z.useRef(null),mt=Z.useRef(null),ht=Z.useRef(null),gt=Z.useRef(Er),_t=Z.useRef(null),bt=Z.useRef([]),xt=Z.useRef(null),St=Me||S,Ct=je??b,W=_===`multiple`,G=_===`single`,wt=u!==void 0||s!==void 0,Tt=k!==void 0,Ot=j!==void 0,K;K=te===`always`?`always`:te?`input-change`:!1;let[q,kt]=l({controlled:i,default:W?r??Ae:r,name:`Combobox`,state:`selectedValue`}),At=Z.useMemo(()=>I===null?()=>!0:I===void 0?yr(Ge,R):I,[I,Ge,R]),jt=pe(()=>wt?s??``:G?Et(q,R):``).current,[Mt,Nt]=l({controlled:u,default:jt,name:`Combobox`,state:`inputValue`}),[J,Pt]=l({controlled:f,default:g,name:`Combobox`,state:`open`}),Ft=Xe(k),It=$e??String(Mt).trim(),Y=G?Et(q,R):``,Lt=G&&!qe&&It!==``&&Y.length===It.length&&Ge.contains(Y,It),Rt=Lt?``:It,zt=Tt&&Ot&&Lt,Bt=Z.useMemo(()=>k?Ft?k.flatMap(e=>e.items):k:Ae,[k,Ft]),Vt=Z.useMemo(()=>{if(j&&!zt)return j;if(!k)return Ae;if(Ft){let e=k,t=[],n=0;for(let r of e){if(fe>-1&&n>=fe)break;let e=fe>-1?fe-n:1/0,i=Rt===``?r.items.slice(0,e):[];if(Rt!==``)for(let t of r.items){if(i.length>=e)break;At(t,Rt,R)&&i.push(t)}if(i.length>0){let e={...r,items:i};t.push(e),n+=i.length}}return t}if(Rt===``)return fe>-1?Bt.slice(0,fe):Bt;let e=[];for(let t of Bt){if(fe>-1&&e.length>=fe)break;At(t,Rt,R)&&e.push(t)}return e},[j,zt,k,Ft,Rt,fe,At,R,Bt]),Ht=Z.useMemo(()=>Ft?Vt.flatMap(e=>e.items):Vt,[Vt,Ft]),X=pe(()=>{let e=null;return B&&J&&Tt&&_!==`none`&&(e=yt(Ht,q,z,W)),new N({id:Ue,labelId:void 0,selectedValue:q,open:J,items:k,selectionMode:_,listRef:nt,labelsRef:rt,popupRef:it,emptyRef:ut,inputRef:at,startDismissRef:ct,endDismissRef:lt,keyboardActiveRef:dt,chipsContainerRef:pt,clearRef:mt,valuesRef:bt,pointerDownItemRef:xt,selectionEventRef:ht,name:Ct,form:x,disabled:St,readOnly:C,required:w,grid:O,virtualized:oe,openOnInputClick:ee,itemToStringLabel:R,isItemEqualToValue:z,modal:de,autoHighlight:K,submitOnItemClick:Se,hasInputValue:wt,mounted:!1,forceMounted:!1,transitionStatus:`idle`,inline:B,activeIndex:null,selectedIndex:e,popupProps:{},listProps:{},inputProps:{},triggerProps:{},itemProps:Pe,positionerElement:null,listElement:null,popupId:void 0,triggerElement:null,inputElement:null,inputGroupElement:null,popupSide:null,openMethod:null,inputInsidePopup:!0,inputOwnsFormValue:_===`none`,onOpenChangeComplete:ue,setOpen:ue,setInputValue:ue,setSelectedValue:ue,setIndices:ue,handleSelection:ue,forceMount:ue,requestSubmit:ue})}).current,Ut=_===`none`?Mt:q,Wt=Z.useMemo(()=>_===`none`?Ut:Array.isArray(q)?q.map(e=>ot(e,ae)):ot(q,ae),[Ut,ae,_,q]),Gt=xe(y),Kt=xe(n),qt=d(X,$.activeIndex),Jt=d(X,$.selectedIndex),Yt=d(X,$.positionerElement),Xt=d(X,$.listElement),Zt=d(X,$.triggerElement),Qt=d(X,$.inputElement),$t=d(X,$.inputGroupElement),en=d(X,$.inline),tn=d(X,$.inputInsidePopup),nn=d(X,$.inputOwnsFormValue),rn=se(Zt),{mounted:an,setMounted:on,transitionStatus:sn}=Be(J),{openMethod:cn,triggerProps:ln}=p(J),un=xe(()=>Wt);Ee(tn?rn:at,Ue,Ut,un,!St,b);let dn=xe(()=>{k?rt.current=Ht.map(e=>Et(e,R)):X.set(`forceMounted`,!0)}),fn=xe((e,t,n)=>{if(t===-1){if(gt.current===Er)return;gt.current=Er}else gt.current={value:e,index:t};Gt(e,Le(n,void 0,{index:t}))}),pn=xe(e=>{X.update(e);let t=e.activeIndex;if(t===void 0)return;let n=e.type||`none`;t===null?fn(void 0,-1,n):fn(bt.current[t],t,n)}),mn=xe((t,n)=>{if(ft.current=n.reason===We,e.onInputValueChange?.(t,n),!n.isCanceled){if(n.reason===`input-change`){J&&$e!==null&&et(null);let e=n.event,r=e.inputType;if(e.type===`compositionend`||r!=null&&r!==``&&r!==`insertReplacementText`){let e=t.trim()!==``;e&&Ye(!0),_t.current={hasQuery:e};let n=X.state.listElement;if(!X.state.virtualized&&n){let e=it.current;for(let t of L(n.firstElementChild??n)){if(!v(t)||(e?!A(e,t):t.getAttribute(`role`)===`dialog`))break;if(wr(t)){t.scrollTop=0;break}}}e&&K&&X.state.activeIndex==null&&(J||en)&&X.set(`activeIndex`,0)}}else n.reason===`input-clear`&&t===``&&X.state.inputInsidePopup&&(_t.current={hasQuery:!1,selection:!0});Nt(t)}}),hn=xe((t,n)=>{if(J!==t&&(n.reason===`escape-key`&&Tt&&Ht.length===0&&!ut.current&&n.allowPropagation(),e.onOpenChange?.(t,n),!n.isCanceled&&(t&&tn&&!en&&$e!==null&&(Ye(!1),et(null),Mt!==``&&n.reason!==`input-change`&&mn(``,H(We,n.event))),!t&&qe&&(G?(en||et(It),It===``&&Ye(!1)):W&&(en||et(It),tn&&pn({activeIndex:null}),(!tn||en)&&mn(``,H(We,n.event)))),Pt(t),!t&&tn&&(n.reason===`focus-out`||n.reason===`outside-press`)&&(Ne(!0),Fe(!1),Re===`onBlur`)))){let e=_===`none`?Mt:q;ze.commit(e)}}),gn=xe((e,t)=>{o?.(e,t),!t.isCanceled&&(kt(e),(_===`none`&&it.current&&V||G&&!X.state.inputInsidePopup)&&mn(Et(e,R),H(t.reason,t.event)))}),_n=xe((e,t)=>{let n=Ke(e),r=ht.current??e;ht.current=null;let i=H(He,r),a=n?.closest(`a`)?.getAttribute(`href`);if(a){a.startsWith(`#`)&&hn(!1,i);return}if(W){let e=Array.isArray(q)?q:[],n=vt(e,t,z)?Je(e,t,z):[...e,t];if(gn(n,i),i.isCanceled||!(at.current&&at.current.value.trim()!==``))return;X.state.inputInsidePopup?mn(``,H(We,i.event)):hn(!1,i)}else{if(gn(t,i),i.isCanceled)return;hn(!1,i)}}),vn=xe(()=>{let e=ze.inputRef.current?.form??X.state.inputElement?.form;e&&typeof e.requestSubmit==`function`&&e.requestSubmit()}),yn=xe(()=>{if(on(!1),Kt?.(!1),Ye(!1),et(null),pn(_===`none`?{activeIndex:null,selectedIndex:null}:{activeIndex:null}),W&&at.current&&at.current.value!==``&&!ft.current&&mn(``,H(We)),G){if(X.state.inputInsidePopup)at.current&&at.current.value!==``&&mn(``,H(We));else{let e=Et(q,R);at.current&&at.current.value!==e&&mn(e,H(e===``?We:Ve))}}}),bn=Z.useMemo(()=>en&&Yt?{current:Yt.closest(`[role="dialog"]`)}:it,[en,Yt]);ve({enabled:!e.actionsRef,open:J,ref:bn,onComplete(){J||yn()}}),Z.useImperativeHandle(e.actionsRef,()=>({unmount:yn}),[yn]),ce(function(){if(J||(xt.current=null,_===`none`))return;let e=Tt?Bt:bt.current;pn({selectedIndex:yt(e,q,z,W)})},[J,q,_,W,Tt,Bt,z,pn]),ce(()=>{k&&(bt.current=Ht,nt.current.length=Ht.length)},[k,Ht]),ce(()=>{let e=_t.current;if(e){let t=J||en||X.state.positionerElement?.hidden===!1;if(e.hasQuery)K&&t&&X.set(`activeIndex`,0),_t.current=null;else if(String(Mt).trim()===``&&(_t.current=null,t)){let t=e.selection;K===`always`&&!t&&X.state.selectionMode===`none`&&X.set(`activeIndex`,0),queueMicrotask(()=>{if(!X.state.open&&!X.state.inline||at.current&&at.current.value.trim()!==``)return;let e=X.state.selectedValue,n=X.state.selectionMode===`multiple`,r=n&&Array.isArray(e)?e[e.length-1]:e,i=X.state.selectionMode!==`none`&&r!=null;if(i||t){let t=Tt||Ot?Ht:bt.current;X.set(`activeIndex`,i?yt(t,e,X.state.isItemEqualToValue,n):null)}else K===`always`&&X.set(`activeIndex`,0)})}}if(!J&&!en)return;let t=Tt||Ot?Ht:bt.current,n=X.state.activeIndex;if(n==null){if(K===`always`&&t.length>0){X.set(`activeIndex`,0);return}fn(void 0,-1,Ve);return}if(n>=t.length){fn(void 0,-1,Ve),X.set(`activeIndex`,null);return}let r=t[n],i=gt.current.value,a=i!==Tr&&Qe(r,i,X.state.isItemEqualToValue);(gt.current.index!==n||!a)&&fn(r,n,Ve)},[qt,K,fn,Ot,Tt,Ht,en,J,X,Mt]),ce(()=>{if(_===`none`){Oe(String(Mt)!==``);return}Oe(W?Array.isArray(q)&&q.length>0:q!=null)},[Oe,_,Mt,q,W]),Z.useEffect(()=>{Tt&&K&&Ht.length===0&&pn({activeIndex:null})},[Tt,K,Ht.length,pn]);function xn(e){let t=De.initialValue;return Array.isArray(e)&&Array.isArray(t)?!Dt(e,t,(e,t)=>Qe(e,t,z)):e!==t}T(It,()=>{!J||It===``||It===String(jt)||Ye(!0)});function Sn(){let e=Et(q,R);Mt!==e&&mn(e,H(Ve))}T(q,()=>{_!==`none`&&(we(Ct),Te(xn(q)),ze.change(q),G&&!wt&&!tn&&Sn())}),T(Mt,()=>{_===`none`&&(we(Ct),Te(Mt!==De.initialValue),ze.change(Mt))}),T(k,()=>{!G||wt||tn||qe||Sn()});let Cn=st({open:en?!0:J,onOpenChange:hn,elements:{reference:tn?Zt:Qt,floating:Yt}}),wn=O?`grid`:`listbox`,Tn=J||en,En=Tn?`true`:`false`,Dn=Z.useMemo(()=>{let e=Qt?.tagName===`INPUT`,t=Qt==null||e,n=t||Tn,r=t?{autoComplete:`off`,spellCheck:`false`,autoCorrect:`off`,autoCapitalize:`none`}:{};return n&&(r.role=`combobox`,r[`aria-expanded`]=En,r[`aria-haspopup`]=wn,r[`aria-controls`]=Tn?Xt?.id:void 0,r[`aria-autocomplete`]=ge),{reference:r,floating:{role:`presentation`}}},[Qt,Tn,En,wn,Xt?.id,ge]),On=h(Cn,{enabled:!C&&!St&&ee,event:`mousedown-only`,toggle:!1,touchOpenDelay:tn?0:100,reason:le}),kn=P(Cn,{enabled:!C&&!St&&!en,outsidePressEvent:{mouse:`sloppy`,touch:`intentional`},bubbles:en?!0:void 0,outsidePress(e){let t=Ke(e);return!A(Zt,t)&&!A(mt.current,t)&&!A(pt.current,t)&&!A($t,t)}}),An=D(Cn,{enabled:!C&&!St,id:Ue,listRef:nt,activeIndex:qt,selectedIndex:Jt,virtual:!0,loopFocus:ie,allowEscape:ie&&!K,focusItemOnOpen:qe||_===`none`&&!K?!1:`auto`,focusItemOnHover:re,resetOnPointerLeave:!ne,orientation:O?`horizontal`:void 0,rtl:U===`rtl`,disabledIndices:Ae,grid:O?sr:void 0,onNavigate(e,t){!t&&!J||sn===`ending`||pn(t?{activeIndex:e,type:dt.current?M:m}:{activeIndex:e})}}),jn=Z.useMemo(()=>c(An.reference,{onKeyDown(e){O&&X.state.activeIndex==null&&(e.key===`ArrowLeft`||e.key===`ArrowRight`)&&e.preventBaseUIHandler()}},kn.reference,On.reference,Dn.reference),[An.reference,kn.reference,On.reference,Dn.reference,O,X]),Mn=Z.useMemo(()=>c(Ce,kn.floating),[kn.floating]),Nn=Z.useMemo(()=>c(An.floating,Dn.floating),[An.floating,Dn.floating]),Pn=Z.useMemo(()=>{let e=An.item;return e?{...e,onFocus:void 0}:Pe},[An.item]);tt(()=>{X.update({inline:B,popupProps:Mn,listProps:Nn,inputProps:jn,triggerProps:ln,itemProps:Pn,setOpen:hn,setInputValue:mn,setSelectedValue:gn,setIndices:pn,handleSelection:_n,forceMount:dn,requestSubmit:vn,onOpenChangeComplete:Kt})}),ce(()=>{X.update({id:Ue,selectedValue:q,open:J,mounted:an,transitionStatus:sn,items:k,inline:B,popupProps:Mn,listProps:Nn,inputProps:jn,triggerProps:ln,openMethod:cn,itemProps:Pn,selectionMode:_,name:Ct,form:x,disabled:St,readOnly:C,required:w,grid:O,virtualized:oe,openOnInputClick:ee,itemToStringLabel:R,modal:de,autoHighlight:K,isItemEqualToValue:z,submitOnItemClick:Se,hasInputValue:wt,inputOwnsFormValue:_===`none`&&(B||!X.state.inputInsidePopup)})},[X,Ue,q,J,an,sn,k,Mn,Nn,jn,Pn,cn,ln,_,Ct,St,C,w,O,oe,ee,R,de,z,Se,wt,B,K,x]);let Fn=ke(E,ze.inputRef),In=Z.useMemo(()=>({query:It,hasItems:Tt,filteredItems:Vt,flatFilteredItems:Ht}),[It,Tt,Vt,Ht]),Ln=Z.useMemo(()=>Array.isArray(Ut)?``:ot(Ut,ae),[Ut,ae]),Rn=W&&Array.isArray(q)&&q.length>0,zn=W||_===`none`&&nn?void 0:Ct,Bn=Z.useMemo(()=>!W||!Array.isArray(q)||!Ct?null:q.map(e=>{let t=ot(e,ae);return(0,Q.jsx)(`input`,{type:`hidden`,form:x,name:Ct,value:t,disabled:St},t)}),[W,q,x,Ct,ae,St]),Vn=(0,Q.jsxs)(Z.Fragment,{children:[e.children,(0,Q.jsx)(`input`,{...ze.getValidationProps(St,{onFocus(){if(tn){Zt?.focus();return}(at.current||Zt)?.focus()},onChange(e){if(e.nativeEvent.defaultPrevented||St||C)return;let t=e.currentTarget.value,n=t.toLowerCase(),r=H(Ve,e.nativeEvent),i=()=>bt.current.findIndex(e=>ot(e,ae).toLowerCase()===n||Et(e,R).toLowerCase()===n);function a(){if(W)return;if(_===`none`){mn(t,r);return}let e=i();e===-1&&(e=bt.current.findIndex((e,t)=>{let r=rt.current[t];return r!=null&&r.toLowerCase()===n}));let a=e===-1?void 0:bt.current[e];a!=null&&gn?.(a,r)}G&&(dn(),k&&i()===-1&&X.set(`forceMounted`,!0)),queueMicrotask(a)}}),id:Ue&&zn==null?`${Ue}-hidden-input`:void 0,form:x,name:zn,autoComplete:_e,disabled:St,required:w&&!Rn,readOnly:C,value:Ln,ref:Fn,style:zn?me:a,tabIndex:-1,"aria-hidden":!0,suppressHydrationWarning:!0}),Bn]});return(0,Q.jsx)(cr.Provider,{value:X,children:(0,Q.jsx)(lr.Provider,{value:Cn,children:(0,Q.jsx)(dr.Provider,{value:Tt,children:(0,Q.jsx)(ur.Provider,{value:In,children:(0,Q.jsx)(fr.Provider,{value:Mt,children:Vn})})})})})}var Or={...Ne,...oe,popupSide:e=>e?{"data-popup-side":e}:null,listEmpty:e=>e?{"data-list-empty":``}:null};function kr(e){let t=d(e,$.mounted),n=d(e,$.popupSide),r=d(e,$.positionerElement);return t&&r?n:null}function Ar(){return hr().filteredItems.length===0}function jr(e){return e===`rtl`?[`ArrowRight`,`ArrowLeft`]:[`ArrowLeft`,`ArrowRight`]}function Mr(e,t){let n=e>=t-1?t-2:e;return n>=0?n:void 0}function Nr(e,t,n){let r=e.state.listRef.current[t];r&&(e.state.selectionEventRef.current=n,r.click(),e.state.selectionEventRef.current=null)}var Pr=Z.forwardRef(function(e,t){let{render:n,className:r,nativeButton:i=!0,disabled:a=!1,id:o,style:s,...c}=e,{state:l,disabled:f,setTouched:p,setFocused:m,validationMode:g,validation:_}=ye(),{labelId:v}=de(),y=pr(),b=d(y,$.selectionMode),x=d(y,$.disabled),S=d(y,$.readOnly),C=d(y,$.required),w=d(y,$.positionerElement),T=d(y,$.listElement),E=d(y,$.popupId),D=d(y,$.triggerProps),O=d(y,$.inputInsidePopup),k=d(y,$.id),j=d(y,$.labelId),M=d(y,$.open),N=d(y,$.selectedValue),P=d(y,$.activeIndex),F=d(y,$.selectedIndex),I=d(y,$.hasSelectedValue),ee=mr(),L=gr(),te=Oe(),ne=f||x||a,re=Ar(),ie=kr(y);Ie({id:O?o:void 0});let ae=O?o??k:o,oe=dt(v,j),se;M&&O?se=E??vr(k):M&&(se=T?.id);let ce=Z.useRef(``);function B(e){ce.current=e.pointerType}let{reference:le}=z(ee,{enabled:!M&&!S&&!x&&b===`single`,listRef:y.state.labelsRef,activeIndex:P,selectedIndex:F,onMatch(e){let t=y.state.valuesRef.current[e];t!==void 0&&y.state.setSelectedValue(t,H(Ve))}}),{reference:V}=h(ee,{enabled:!S&&!x,event:`mousedown`}),{buttonRef:ue,getButtonProps:pe}=we({native:i,disabled:ne}),me={...l,open:M,disabled:ne,popupSide:ie,listEmpty:re,placeholder:b!==`none`&&!I},he=xe(e=>{y.set(`triggerElement`,e)});return qe(`button`,e,{ref:[t,ue,he],state:me,props:[D,V,le,{id:ae,tabIndex:O?0:-1,role:O?`combobox`:void 0,"aria-expanded":M,"aria-haspopup":O?`dialog`:`listbox`,"aria-controls":se,"aria-required":O&&C||void 0,"aria-labelledby":oe,onPointerDown:B,onPointerEnter:B,onFocus(){m(!0),!(ne||S)&&te.start(0,y.state.forceMount)},onBlur(e){if(!A(w,e.relatedTarget)&&(p(!0),m(!1),g===`onBlur`)){let e=b===`none`?L:N;_.commit(e)}},onMouseDown(e){if(ne||S||(O||ee.set(`domReferenceElement`,e.currentTarget),y.state.forceMount(),ce.current!==`touch`&&(y.state.inputRef.current?.focus(),O||e.preventDefault()),M))return;let t=Fe(e.currentTarget);function n(e){let t=y.state.triggerElement;if(!t)return;let n=Ke(e),r=y.state.positionerElement,i=y.state.listElement;A(t,n)||A(r,n)||A(i,n)||Re(e,t)||y.state.setOpen(!1,H(fe,e))}O&&t.addEventListener(`mouseup`,n,{once:!0})},onKeyDown(e){S||(e.key===`ArrowDown`||e.key===`ArrowUp`)&&(R(e),y.state.setOpen(!0,H(u,e.nativeEvent)),y.state.inputRef.current?.focus())}},_.getValidationProps(ne,c),pe],stateAttributesMapping:Or})}),Fr=Z.createContext(void 0);function Ir(){return Z.useContext(Fr)}var Lr=Z.createContext(void 0);function Rr(e){let t=Z.useContext(Lr);if(t===void 0&&!e)throw Error(Se(21));return t}var zr=Z.forwardRef(function(e,t){let n=pr(),{buttonRef:r,getButtonProps:i}=we({native:!1}),a=ke(t,r);function o(e){n.state.setOpen(!1,H(Me,e.nativeEvent,e.currentTarget))}let s=i({onClick:o});return(0,Q.jsx)(`span`,{ref:a,...s,"aria-label":`Dismiss`,tabIndex:void 0,style:me})}),Br=Z.forwardRef(function(e,t){let{render:n,className:r,disabled:i=!1,id:a,style:o,...s}=e,{state:c,disabled:l,setTouched:u,setFocused:f,validationMode:p,validation:h}=ye(),{labelId:g}=de(),_=Ir(),v=!!Rr(!0),y=pr(),b=gr(),x=F(),S=d(y,$.required),C=d(y,$.disabled),w=d(y,$.readOnly),T=d(y,$.name),E=d(y,$.form),D=d(y,$.selectionMode),k=d(y,$.autoHighlight),A=d(y,$.inputProps),j=d(y,$.triggerProps),N=d(y,$.open),P=d(y,$.mounted),I=d(y,$.selectedValue),ee=d(y,$.id),L=d(y,$.inline),ne=d(y,$.modal),ie=!!k,ae=kr(y),z=l||C||i,oe=Ar(),se=v||L,ce=!se||ne,B=te(a??(se?void 0:ee)),le=v?_e:c,[V,ue]=Z.useState(null),fe=Z.useRef(!1),pe=Z.useRef(null),me=Z.useRef(!1),he=D===`none`&&!v,ge=xe(e=>{let t=v||y.state.inline;t&&!y.state.hasInputValue&&y.state.setInputValue(``,H(Ve)),y.update({inputElement:e,inputInsidePopup:t,inputOwnsFormValue:he})}),ve=v?s:h.getValidationProps(z,s);function Se(){y.state.setIndices({activeIndex:null,selectedIndex:null,type:y.state.keyboardActiveRef.current?M:m})}function Ce(){y.state.keyboardActiveRef.current=!1}let we={...le,open:N,disabled:z,readOnly:w,popupSide:ae,listEmpty:oe};function Te(e){if(!_)return;let t,{highlightedChipIndex:n}=_,r=_.chipsRef.current.length,[i,a]=jr(x);return n===void 0?(e.key===i&&(e.currentTarget.selectionStart??0)===0&&I.length>0&&(e.preventDefault(),t=r>0?r-1:void 0),t):(e.key===i?(e.preventDefault(),t=n>0?n-1:void 0):e.key===a?(e.preventDefault(),t=n<r-1?n+1:void 0):(e.key===`Backspace`||e.key===`Delete`)&&(e.preventDefault(),t=Mr(n,I.length),Se()),t)}let Ee=qe(`input`,e,{state:we,ref:[t,y.state.inputRef,ge],props:[A,j,{value:V??b,"aria-readonly":w||void 0,"aria-required":S||void 0,"aria-labelledby":g,disabled:z,readOnly:w,required:D===`none`?S:void 0,form:E,...he&&T&&{name:T},id:B,onFocus(){if(f(!0),!L||!me.current)return;me.current=!1;let e=pe.current;e==null||!Object.hasOwn(y.state.valuesRef.current,e)||y.state.setIndices({activeIndex:e})},onBlur(){u(!0),f(!1);let e=y.state.activeIndex;if(L&&e!==null&&k!==`always`&&(pe.current=e,me.current=!0,y.state.setIndices({activeIndex:null})),p===`onBlur`){let e=D===`none`?b:I;h.commit(e)}},onCompositionStart(e){O||(fe.current=!0,ue(e.currentTarget.value))},onCompositionEnd(e){fe.current=!1;let t=e.currentTarget.value;ue(null),y.state.setInputValue(t,H(ze,e.nativeEvent))},onChange(e){let t=e.nativeEvent,n=t.inputType,r=!n||n===`insertReplacementText`,i=fe.current||!r;function a(e){w||z||!e||!i||(y.state.setOpen(!0,H(ze,t)),ie||Se())}if(fe.current){let n=e.currentTarget.value;ue(n),n===``&&!y.state.openOnInputClick&&!y.state.inputInsidePopup&&y.state.setOpen(!1,H(We,t));let r=n.trim(),i=ie&&r!==``;a(r),N&&y.state.activeIndex!==null&&!i&&Se();return}let o=H(ze,t);if(y.state.setInputValue(e.currentTarget.value,o),o.isCanceled)return;let s=e.currentTarget.value===``,c=H(We,t);s&&!y.state.inputInsidePopup&&(D===`single`&&y.state.setSelectedValue(null,c),y.state.openOnInputClick||y.state.setOpen(!1,c)),a(e.currentTarget.value.trim()),N&&y.state.activeIndex!==null&&!ie&&Se()},onKeyDown(e){if(z||w||e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)return;y.state.keyboardActiveRef.current=!0;let t=e.currentTarget,n=t.scrollWidth-t.clientWidth,r=x===`rtl`;if(e.key===`Home`){R(e);let n=re&&r?t.value.length:0;t.setSelectionRange(n,n),t.scrollLeft=0;return}if(e.key===`End`){R(e);let i=re&&r?0:t.value.length;t.setSelectionRange(i,i),t.scrollLeft=r?-n:n;return}if(!P&&e.key===`Escape`){let t=D===`multiple`&&Array.isArray(I)?I.length===0:I===null,n=H(be,e.nativeEvent),r=D===`multiple`?[]:null;y.state.setInputValue(``,n),y.state.setSelectedValue(r,n),!t&&!y.state.inline&&!n.isPropagationAllowed&&e.stopPropagation();return}if(_&&e.key===`Backspace`&&t.value===``&&_.highlightedChipIndex===void 0&&Array.isArray(I)&&I.length>0){let t=_.chipsRef.current.length,n=t>0?t-1:I.length-1,r=I.filter((e,t)=>t!==n);Se(),y.state.setSelectedValue(r,H(Ve,e.nativeEvent));return}let i=_?.highlightedChipIndex!==void 0,a=Te(e);if(_?.setHighlightedChipIndex(a),a===void 0?i&&y.state.inputRef.current?.focus():_?.chipsRef.current[a]?.focus(),e.which!==229&&e.key===`Enter`&&N){let t=y.state.activeIndex,n=e.nativeEvent;if(t===null){if(L)return;y.state.setOpen(!1,H(Ve,n));return}R(e),Nr(y,t,n)}},onPointerMove:Ce,onPointerDown:Ce},ve],stateAttributesMapping:Or}),Oe=v?(0,Q.jsx)(De.Provider,{value:je,children:Ee}):Ee;return(0,Q.jsxs)(Z.Fragment,{children:[N&&ce&&(0,Q.jsx)(zr,{ref:y.state.startDismissRef}),Oe]})}),Vr={...ne,...x},Hr=Z.forwardRef(function(e,t){let{render:n,className:r,disabled:i=!1,nativeButton:a=!0,keepMounted:o=!1,style:s,...c}=e,{disabled:l}=ye(),u=pr(),f=d(u,$.selectionMode),p=d(u,$.disabled),h=d(u,$.readOnly),g=d(u,$.open),_=d(u,$.selectedValue),v=d(u,$.hasSelectionChips),y=gr(),b=!1;b=f===`none`?y!==``:f===`single`?_!=null:v;let x=l||p||i,{buttonRef:S,getButtonProps:C}=we({native:a,disabled:x}),{mounted:w,transitionStatus:T,setMounted:E}=Be(b),D={disabled:x,visible:b,open:g,transitionStatus:T};ve({open:b,ref:u.state.clearRef,onComplete(){b||E(!1)}});let O=qe(`button`,e,{state:D,ref:[t,S,u.state.clearRef],props:[{tabIndex:-1,children:`x`,onMouseDown(e){e.preventDefault()},onClick(e){if(x||h)return;let t=u.state.keyboardActiveRef.current?M:m;u.state.setInputValue(``,H(ge,e.nativeEvent)),f===`none`?u.state.setIndices({activeIndex:null,type:t}):(u.state.setSelectedValue(Array.isArray(_)?[]:null,H(ge,e.nativeEvent)),u.state.setIndices({activeIndex:null,selectedIndex:null,type:t})),u.state.inputRef.current?.focus()}},c,C],stateAttributesMapping:Vr});return o||w?O:null}),Ur=Z.createContext(null);function Wr(){return Z.useContext(Ur)}function Gr(e){let{children:t}=e,{filteredItems:n}=hr(),r=Wr(),i=r?r.items:n;return(0,Q.jsx)(Z.Fragment,{children:i.map(t)})}var Kr=Z.forwardRef(function(e,t){var n;let{render:r,className:i,style:a,children:o,...s}=e,c=pr(),l=mr(),u=!!Rr(!0),{filteredItems:f,hasItems:p}=hr(),m=d(c,$.selectionMode),h=d(c,$.grid),g=d(c,$.listProps),_=d(c,$.virtualized),v=d(c,$.forceMounted),y=m===`multiple`,b=f.length===0,x=xe(e=>{c.set(`positionerElement`,e)}),S=xe(e=>{c.set(`listElement`,e)}),C=Z.useMemo(()=>typeof o==`function`?n||=(0,Q.jsx)(Gr,{children:o}):o,[o]),w={empty:b},T=l.useState(`floatingId`),E=qe(`div`,e,{state:w,ref:[t,S,u?null:x],props:[g,{children:C,tabIndex:-1,id:T,role:h?`grid`:`listbox`,"aria-multiselectable":y?`true`:void 0,onKeyDown(e){if(!(c.state.disabled||c.state.readOnly)&&e.key===`Enter`){let t=c.state.activeIndex;if(t==null)return;R(e),Nr(c,t,e.nativeEvent)}},onKeyDownCapture(){c.state.keyboardActiveRef.current=!0},onPointerMoveCapture(){c.state.keyboardActiveRef.current=!1}},s]});if(_)return E;let D=p&&!v?void 0:c.state.labelsRef;return(0,Q.jsx)(B,{elementsRef:c.state.listRef,labelsRef:D,children:E})}),qr=`⁠`;function Jr(e){let t=e.ownerDocument.createTreeWalker(e,NodeFilter.SHOW_TEXT),n=null;for(;t.nextNode();){let e=t.currentNode;e.nodeValue!==``&&(n=e)}return n}function Yr(){let e=Oe(),t=Z.useRef(null);return Z.useEffect(()=>{if(i)return;let n=t.current;if(n==null)return;let r=Jr(n);if(r==null)return;let a=r.data,o=`${a}${qr}`;return r.nodeValue=o,e.start(200,()=>{r.nodeValue===o&&(r.nodeValue=a)}),()=>{e.clear(),r.nodeValue===o&&(r.nodeValue=a)}},[t,e]),t}var Xr=Z.createContext(void 0);function Zr(){let e=Z.useContext(Xr);if(e===void 0)throw Error(Se(20));return e}var Qr=Z.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e,i=pr(),a=d(i,$.mounted),o=d(i,$.forceMounted);return a||n||o?(0,Q.jsx)(Xr.Provider,{value:n,children:(0,Q.jsx)(E,{ref:t,...r})}):null}),$r=Z.forwardRef(function(e,t){let{render:n,className:r,anchor:i,positionMethod:a,side:s,align:c,sideOffset:l,alignOffset:u,collisionBoundary:f=`clipping-ancestors`,collisionPadding:p,arrowPadding:m,sticky:h,disableAnchorTracking:g=!1,collisionAvoidance:_=C,style:v,...b}=e,x=pr(),S=mr(),w=Zr(),T=d(x,$.modal),E=d(x,$.open),D=d(x,$.mounted),O=d(x,$.openMethod),k=d(x,$.positionerElement),A=d(x,$.triggerElement),j=d(x,$.inputElement),M=d(x,$.inputGroupElement),N=d(x,$.inputInsidePopup),P=d(x,$.transitionStatus),F=Ar(),I=y({anchor:i??(N?A:M??j),floatingRootContext:S,positionMethod:a,mounted:D,side:s,sideOffset:l,align:c,alignOffset:u,arrowPadding:m,collisionBoundary:f,collisionPadding:p,sticky:h,disableAnchorTracking:g,keepMounted:w,collisionAvoidance:_,lazyFlip:!0});Ue(E&&T,O===`touch`,k,A);let ee={open:E,side:I.side,align:I.align,anchorHidden:I.anchorHidden,empty:F};ce(()=>{x.set(`popupSide`,I.side)},[x,I.side]);let L=xe(e=>{x.set(`positionerElement`,e)}),te=o(e,ee,{styles:I.positionerStyles,transitionStatus:P,props:b,refs:[t,L],hidden:!D,inert:!E});return(0,Q.jsxs)(Lr.Provider,{value:I,children:[D&&T&&(0,Q.jsx)(Te,{inert:Ge(!E),cutout:M??j??A}),te]})}),ei={..._,...ne},ti=Z.forwardRef(function(e,t){let{render:n,className:r,style:i,initialFocus:a,finalFocus:o,...s}=e,c=pr(),l=Rr(),u=mr(),p=d(c,$.mounted),m=d(c,$.open),h=d(c,$.openMethod),g=d(c,$.popupProps),_=d(c,$.transitionStatus),v=d(c,$.inputInsidePopup),y=d(c,$.inputElement),b=d(c,$.modal),x=d(c,$.id),S=Ar(),C=s.id??(v?vr(x):void 0);ce(()=>(c.set(`popupId`,c.state.popupRef.current?.id||C),()=>{c.set(`popupId`,void 0)}),[c,C]),ve({open:m,ref:c.state.popupRef,onComplete(){m&&c.state.onOpenChangeComplete(!0)}});let w={open:m,side:l.side,align:l.align,anchorHidden:l.anchorHidden,transitionStatus:_,empty:S},T=qe(`div`,e,{state:w,ref:[t,c.state.popupRef],props:[g,{id:C,role:v?`dialog`:`presentation`,onFocus(e){let t=Ke(e.nativeEvent);h!==`touch`&&(A(c.state.listElement,t)||t===e.currentTarget)&&c.state.inputRef.current?.focus()}},ee(_),s],stateAttributesMapping:ei}),E=a===void 0?v?e=>e===`touch`?c.state.popupRef.current:y:!1:a,D;D=o??(v?void 0:!1);let O=!v||b;return(0,Q.jsx)(f,{context:u,disabled:!p,modal:O,openInteractionType:h,initialFocus:E,returnFocus:D,getInsideElements:()=>[c.state.startDismissRef.current,c.state.endDismissRef.current],children:(0,Q.jsxs)(Z.Fragment,{children:[T,O&&(0,Q.jsx)(zr,{ref:c.state.endDismissRef})]})})}),ni=Z.createContext(void 0);function ri(){let e=Z.useContext(ni);if(!e)throw Error(Se(19));return e}var ii=Z.createContext(!1);function ai(){return Z.useContext(ii)}var oi=e(n(),1);function si(e){let{componentProps:t,forwardedRef:n,virtualized:r,indexFromFilter:i}=e,{render:a,className:o,style:s,value:c=null,index:l,disabled:u=!1,nativeButton:f=!1,...p}=t,m=Z.useRef(null),h=j({guess:!0,index:l,textRef:m}),g=pr(),_=ai(),v=_r(),y=d(g,$.selectionMode),b=d(g,$.disabled),x=d(g,$.readOnly),S=d(g,$.isItemEqualToValue),C=b||u,w=y!==`none`,T=l??i??h.index,E=T!==-1,D=d(g,$.id),O=d(g,$.isActive,T),k=d(g,$.isSelected,c),A=d(g,$.itemProps),M=Z.useRef(null),N=D!=null&&E?`${D}-${T}`:void 0,P=k&&w;ce(()=>{if(!(E&&(r||l!=null)))return;let e=g.state.listRef.current;return e[T]=M.current,()=>{delete e[T]}},[E,r,T,l,g]),ce(()=>{if(!E||v)return;let e=g.state.valuesRef.current;return e[T]=c,()=>{delete e[T]}},[E,v,T,c,g]),ce(()=>{if(!E||v)return;let e=g.state.selectedValue,t=Array.isArray(e)?e[e.length-1]:e;Qe(c,t,S)&&g.set(`selectedIndex`,T)},[E,v,g,T,c,S]);let{getButtonProps:F,buttonRef:I}=we({disabled:C,focusableWhenDisabled:!0,native:f,composite:!0}),ee={disabled:C,selected:P,highlighted:O};function L(e){function t(){g.state.handleSelection(e,c)}g.state.submitOnItemClick?(oi.flushSync(t),g.state.requestSubmit()):t()}let te={id:N,role:_?`gridcell`:`option`,"aria-selected":w?P:void 0,tabIndex:void 0,onPointerDownCapture(e){e.isPrimary&&(g.state.pointerDownItemRef.current=e.currentTarget),e.preventDefault()},onMouseDown(e){e.preventDefault()},onClick(e){C||x||L(e.nativeEvent)},onMouseUp(e){let t=g.state.pointerDownItemRef.current===e.currentTarget;g.state.pointerDownItemRef.current=null,!(C||x||e.button!==0||t||!O)&&L(e.nativeEvent)}},ne=qe(`div`,t,{ref:[I,n,h.ref,M],state:ee,props:[A,te,p,F]}),re=Z.useMemo(()=>({selected:P,textRef:m}),[P,m]);return(0,Q.jsx)(ni.Provider,{value:re,children:ne})}function ci(e){let{componentProps:t,forwardedRef:n}=e,r=pr(),i=d(r,$.isItemEqualToValue),{flatFilteredItems:a}=hr(),o=nt(a,t.value??null,i);return(0,Q.jsx)(si,{componentProps:t,forwardedRef:n,virtualized:!0,indexFromFilter:o})}var li=Z.memo(Z.forwardRef(function(e,t){let n=pr(),r=d(n,$.virtualized);return r&&e.index==null?(0,Q.jsx)(ci,{componentProps:e,forwardedRef:t}):(0,Q.jsx)(si,{componentProps:e,forwardedRef:t,virtualized:r,indexFromFilter:void 0})})),ui=Z.forwardRef(function(e,t){let{render:n,className:r,style:i,children:a,...o}=e,{filteredItems:s}=hr(),c=pr(),l=Yr(),u=s.length===0?a:null;return qe(`div`,e,{ref:[t,c.state.emptyRef,l],props:[{children:u,role:`status`,"aria-live":`polite`,"aria-atomic":!0},o]})});function di(e){let{multiple:t=!1,defaultValue:n,value:r,onValueChange:i,autoComplete:a,...o}=e;return(0,Q.jsx)(Dr,{...o,selectionMode:t?`multiple`:`single`,selectedValue:r,defaultSelectedValue:n,onSelectedValueChange:i,formAutoComplete:a})}var fi=Z.forwardRef(function(e,t){let{selected:n}=ri();return e.keepMounted||n?(0,Q.jsx)(pi,{...e,ref:t}):null}),pi=Z.memo(Z.forwardRef((e,t)=>{let{render:n,className:r,style:i,keepMounted:a,...o}=e,{selected:s}=ri(),c=Z.useRef(null),{transitionStatus:l,setMounted:u}=Be(s),d=qe(`span`,e,{ref:[t,c],state:{selected:s,transitionStatus:l},props:[{"aria-hidden":!0,children:`✔️`},o],stateAttributesMapping:ne});return ve({open:s,ref:c,onComplete(){s||u(!1)}}),d})),mi=di;function hi({className:e,children:t,...n}){return(0,Q.jsxs)(Pr,{"data-slot":`combobox-trigger`,className:k(`cursor-pointer data-disabled:cursor-not-allowed [&_svg:not([class*='size-'])]:size-4`,e),...n,children:[t,(0,Q.jsx)($e,{className:`pointer-events-none size-4 text-muted-foreground`})]})}function gi({className:e,...t}){return(0,Q.jsx)(Hr,{"data-slot":`combobox-clear`,render:(0,Q.jsx)(_t,{variant:`ghost`,size:`icon-xs`}),className:k(e),...t,children:(0,Q.jsx)(it,{className:`pointer-events-none`})})}function _i({className:e,children:t,disabled:n=!1,showTrigger:r=!0,showClear:i=!1,...a}){return(0,Q.jsxs)(xt,{className:k(`w-auto`,e),children:[(0,Q.jsx)(Br,{render:(0,Q.jsx)(ut,{disabled:n}),...a}),(0,Q.jsxs)(Ct,{align:`inline-end`,children:[r&&(0,Q.jsx)(_t,{size:`icon-xs`,variant:`ghost`,render:(0,Q.jsx)(hi,{}),"data-slot":`input-group-button`,className:`group-has-data-[slot=combobox-clear]/input-group:hidden data-pressed:bg-transparent`,disabled:n}),i&&(0,Q.jsx)(gi,{disabled:n})]}),t]})}function vi({className:e,side:t=`bottom`,sideOffset:n=6,align:r=`start`,alignOffset:i=0,anchor:a,...o}){return(0,Q.jsx)(Qr,{children:(0,Q.jsx)($r,{side:t,sideOffset:n,align:r,alignOffset:i,anchor:a,className:`pointer-events-auto isolate z-[60]`,children:(0,Q.jsx)(ti,{"data-slot":`combobox-content`,"data-chips":!!a,className:k(`group/combobox-content relative max-h-(--available-height) w-(--anchor-width) max-w-(--available-width) min-w-[calc(var(--anchor-width)+--spacing(7))] origin-(--transform-origin) overflow-hidden rounded-lg bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[chips=true]:min-w-(--anchor-width) data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 *:data-[slot=input-group]:m-1 *:data-[slot=input-group]:mb-0 *:data-[slot=input-group]:h-8 *:data-[slot=input-group]:border-input/30 *:data-[slot=input-group]:bg-input/30 *:data-[slot=input-group]:shadow-none data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95`,e),...o})})})}function yi({className:e,...t}){return(0,Q.jsx)(Kr,{"data-slot":`combobox-list`,className:k(`no-scrollbar max-h-[min(calc(--spacing(72)---spacing(9)),calc(var(--available-height)---spacing(9)))] scroll-py-1 overflow-y-auto overscroll-contain p-1 data-empty:p-0`,e),...t})}function bi({className:e,children:t,...n}){return(0,Q.jsxs)(li,{"data-slot":`combobox-item`,className:k(`relative flex w-full cursor-pointer items-center gap-2 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-highlighted:bg-accent data-highlighted:text-accent-foreground not-data-[variant=destructive]:data-highlighted:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:cursor-not-allowed data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,e),...n,children:[t,(0,Q.jsx)(fi,{render:(0,Q.jsx)(`span`,{className:`pointer-events-none absolute right-2 flex size-4 items-center justify-center`}),children:(0,Q.jsx)(b,{className:`pointer-events-none`})})]})}function xi({className:e,...t}){return(0,Q.jsx)(ui,{"data-slot":`combobox-empty`,className:k(`hidden w-full justify-center py-2 text-center text-sm text-muted-foreground group-data-empty/combobox-content:flex`,e),...t})}var Si=`cline.code.model-selection.v1`;function Ci(e){return!e||typeof e!=`object`||Array.isArray(e)?{}:Object.fromEntries(Object.entries(e).filter(([e,t])=>typeof e==`string`&&typeof t==`string`&&t.trim().length>0))}function wi(e){let t={lastProvider:``,lastModelByProvider:{}};if(!e)return t;try{let n=JSON.parse(e);if(!n||typeof n!=`object`||Array.isArray(n))return t;let r=n;return`lastProvider`in r||`lastModelByProvider`in r?{lastProvider:typeof r.lastProvider==`string`?r.lastProvider.trim():``,lastModelByProvider:Ci(r.lastModelByProvider)}:{lastProvider:``,lastModelByProvider:Ci(n)}}catch{return t}}function Ti(){return typeof window>`u`?{lastProvider:``,lastModelByProvider:{}}:wi(window.localStorage.getItem(Si))}var Ei={openai:`openai-native`,google:`gemini`};function Di(e){let t=e.trim();return t?Ei[t]??t:``}function Oi(e){return(e??[]).map(e=>e.id)}function ki(e){return(e??[]).filter(e=>e.supportsReasoning).map(e=>e.id)}function Ai(e){return{providers:e,enabledProviderIds:e.filter(e=>e.enabled).map(e=>e.id),providerModels:Object.fromEntries(e.map(e=>[e.id,Oi(e.modelList)])),providerReasoningModels:Object.fromEntries(e.map(e=>[e.id,ki(e.modelList)]))}}async function ji(){return Ai((await Y.invoke(`list_provider_catalog`)).providers??[])}async function Mi(e){return(await Y.invoke(`list_provider_models`,{provider:e})).models??[]}var Ni=3e4,Pi=null;async function Fi(){let e=await Y.invoke(`list_routine_schedules`);return{schedules:e.schedules??[],activeExecutions:e.activeExecutions??[],upcomingRuns:e.upcomingRuns??[],lastExecutions:e.lastExecutions??[]}}var Ii={cline:[rt],anthropic:[`claude-sonnet-4-6`],"openai-native":[`gpt-5.3-codex`],openrouter:[`anthropic/claude-sonnet-4.6`],gemini:[`gemini-2.5-pro`]},Li=[{label:`Mon`,value:`MON`},{label:`Tue`,value:`TUE`},{label:`Wed`,value:`WED`},{label:`Thu`,value:`THU`},{label:`Fri`,value:`FRI`},{label:`Sat`,value:`SAT`},{label:`Sun`,value:`SUN`}];function Ri(e){if(e==null)return`-`;if(typeof e==`number`){if(!Number.isFinite(e))return`-`;let t=new Date(e);return Number.isNaN(t.getTime())?`-`:t.toLocaleString()}let t=e.trim();if(t.length===0)return`-`;let n=new Date(t);return Number.isNaN(n.getTime())?t:n.toLocaleString()}function zi(e){let t=e.metadata?.[et];return typeof t==`number`&&Number.isFinite(t)?t:void 0}function Bi(e){let t=e.modelSelection?.providerId?.trim()||e.provider?.trim(),n=e.modelSelection?.modelId?.trim()||e.model?.trim();return t&&n?`${t}/${n}`:n||t||`-`}function Vi(e){return{provider:e.modelSelection?.providerId?.trim()||e.provider?.trim()||`cline`,model:e.modelSelection?.modelId?.trim()||e.model?.trim()||`anthropic/claude-sonnet-5`}}function Hi(e){if(!e)return`-`;let t=e.status?.trim()||`unknown`,n=Ri(e.endedAt??e.startedAt??e.triggeredAt);return n===`-`?t:`${t} at ${n}`}function Ui(e){return typeof e==`string`?e.trim():``}function Wi(e){let t=Ui(e);if(!t)return;let n=Number.parseInt(t,10);if(!(!Number.isFinite(n)||n<=0))return n}function Gi(e){if(typeof e!=`string`)return;let t=e.split(`,`).map(e=>e.trim()).filter(e=>e.length>0);return t.length>0?t:void 0}function Ki(e){let t=new Set(e);return Li.map(e=>e.value).filter(e=>t.has(e))}function qi(e,t,n){let r=Ki(e);if(r.length===0)return``;let i=Number.parseInt(t,10),a=Number.parseInt(n,10),o=Number.isFinite(i)?Math.min(Math.max(i,0),23):9,s=Number.isFinite(a)?Math.min(Math.max(a,0),59):0;return r.length===Li.length?`${s} ${o} * * *`:`${s} ${o} * * ${r.join(`,`)}`}function Ji(e){let t=e?.trim().toUpperCase();if(!t||t===`*`)return Li.map(e=>e.value);let n=new Set;for(let e of t.split(`,`)){let t=e.trim();if(!t)continue;let r=/^([A-Z]{3})-([A-Z]{3})$/.exec(t);if(r){let e=Li.findIndex(e=>e.value===r[1]),t=Li.findIndex(e=>e.value===r[2]);if(e>=0&&t>=e)for(let r=e;r<=t;r+=1)n.add(Li[r].value);continue}Li.some(e=>e.value===t)&&n.add(t)}return Ki([...n])}function Yi(e){let t=e.trim().split(/\s+/),n=Number.parseInt(t[0]??``,10),r=Number.parseInt(t[1]??``,10),i=Ji(t[4]);return{scheduleHour:Number.isInteger(r)&&r>=0&&r<=23?String(r):`9`,scheduleMinute:Number.isInteger(n)&&n>=0&&n<=59?String(n):`0`,scheduleDays:i.length>0?i:[`MON`,`TUE`,`WED`,`THU`,`FRI`]}}function Xi(){let[e,t]=(0,Z.useState)(()=>Pi?.schedules??[]),[n,r]=(0,Z.useState)(()=>Pi?.activeExecutions??[]),[i,a]=(0,Z.useState)(()=>Pi?.upcomingRuns??[]),[o,s]=(0,Z.useState)(()=>Pi?.lastExecutions??[]),[c,l]=(0,Z.useState)(()=>!Pi),[u,d]=(0,Z.useState)(null),[f,p]=(0,Z.useState)(null),[m,h]=(0,Z.useState)(null),[_,v]=(0,Z.useState)(!1),[y,b]=(0,Z.useState)(null),[x,S]=(0,Z.useState)(!1),[C,w]=(0,Z.useState)(null),[T,E]=(0,Z.useState)(Ii),[D,O]=(0,Z.useState)(()=>Object.keys(Ii)),[A]=(0,Z.useState)(()=>Ti()),j=Di(A.lastProvider),[M,N]=(0,Z.useState)({name:``,scheduleHour:`9`,scheduleMinute:`0`,scheduleDays:[`MON`,`TUE`,`WED`,`THU`,`FRI`],prompt:`Review PRs opened yesterday and summarize issues.`,provider:`cline`,model:rt,workspaceRoot:``,systemPrompt:``,timeoutSeconds:``,tags:``,enabled:!0}),P=(0,Z.useMemo)(()=>{if(D.length===0)return T;let e={};for(let t of D)e[t]=T[t]??[];return e},[D,T]),F=(0,Z.useMemo)(()=>Object.keys(P),[P]),I=(0,Z.useMemo)(()=>P[M.provider]??[],[M.provider,P]),ee=(0,Z.useMemo)(()=>qi(M.scheduleDays,M.scheduleHour,M.scheduleMinute),[M.scheduleDays,M.scheduleHour,M.scheduleMinute]);(0,Z.useEffect)(()=>{let e=!1;async function t(){try{let t=await ji();if(e)return;E(t.providerModels),O(e=>{let n=new Set(t.enabledProviderIds),r=Di(M.provider);r&&n.add(r);for(let r of e)r in t.providerModels&&n.add(r);return Array.from(n)})}catch{}}return t(),()=>{e=!0}},[M.provider]),(0,Z.useEffect)(()=>{let e=Di(M.provider);if(!e||(T[e]??[]).length>0)return;let t=!1;async function n(){try{let n=await Mi(e);if(t||n.length===0)return;E(t=>({...t,[e]:n.map(e=>e.id)})),O(t=>t.includes(e)?t:[...t,e])}catch{}}return n(),()=>{t=!0}},[M.provider,T]),(0,Z.useEffect)(()=>{if(F.length===0)return;let e=null,t=Di(M.provider);if(F.includes(t)){let n=P[t]??[];if(n.length===0||n.includes(M.model))return;let r=A.lastModelByProvider[t]??A.lastModelByProvider[A.lastProvider];e={provider:t,model:r&&n.includes(r)?r:n[0]}}else{let t=j&&F.includes(j)?j:F[0],n=P[t]??[],r=A.lastModelByProvider[t]??A.lastModelByProvider[A.lastProvider];e={provider:t,model:r&&n.includes(r)?r:n[0]??``}}let n=window.setTimeout(()=>{N(t=>({...t,...e}))},0);return()=>window.clearTimeout(n)},[F,M.model,M.provider,A.lastModelByProvider,A.lastProvider,j,P]);let L=(0,Z.useCallback)(async e=>{let n=Date.now();if(!e?.force&&Pi&&n-Pi.fetchedAt<Ni){t(Pi.schedules),r(Pi.activeExecutions),a(Pi.upcomingRuns),s(Pi.lastExecutions),d(null),l(!1);return}e?.showLoading!==!1&&l(!0),d(null);try{let e=await Fi(),i=e.schedules,o=e.activeExecutions,c=e.upcomingRuns,l=e.lastExecutions;t(i),r(o),a(c),s(l),Pi={schedules:i,activeExecutions:o,upcomingRuns:c,lastExecutions:l,fetchedAt:n}}catch(e){let t=e instanceof Error?e.message:String(e);d(t)}finally{l(!1)}},[]);(0,Z.useEffect)(()=>{let e=window.setTimeout(()=>{L()},0);return()=>window.clearTimeout(e)},[L]);let te=async(e,t)=>{p(e.scheduleId),d(null);try{t?await Y.invoke(`resume_routine_schedule`,{schedule_id:e.scheduleId}):await Y.invoke(`pause_routine_schedule`,{schedule_id:e.scheduleId}),await L({force:!0,showLoading:!1})}catch(e){let t=e instanceof Error?e.message:String(e);d(t)}finally{p(null)}},ne=async e=>{p(e),d(null);try{await Y.invoke(`trigger_routine_schedule`,{schedule_id:e}),await L({force:!0,showLoading:!1}),window.setTimeout(()=>{L({force:!0,showLoading:!1})},1e3)}catch(e){let t=e instanceof Error?e.message:String(e);d(t)}finally{p(null)}},re=async e=>{p(e),d(null);try{await Y.invoke(`delete_routine_schedule`,{schedule_id:e}),h(null),await L({force:!0,showLoading:!1})}catch(e){let t=e instanceof Error?e.message:String(e);d(t)}finally{p(null)}},ie=async()=>{b(null),d(null),w(null);let e={workspaceRoot:``,cwd:``};try{e=await Y.invoke(`get_process_context`)}catch{}let t=j&&F.includes(j)?j:F[0]??`cline`,n=P[t]??[],r=A.lastModelByProvider[t]??A.lastModelByProvider[A.lastProvider],i=r&&n.includes(r)?r:n[0]??M.model;N({name:``,scheduleHour:`9`,scheduleMinute:`0`,scheduleDays:[`MON`,`TUE`,`WED`,`THU`,`FRI`],prompt:`Review PRs opened yesterday and summarize issues.`,provider:t,model:i,workspaceRoot:e.workspaceRoot||e.cwd,systemPrompt:``,timeoutSeconds:``,tags:``,enabled:!0}),v(!0)},R=e=>{if(e.cronPattern===`0`)return;let{provider:t,model:n}=Vi(e),r=Yi(e.cronPattern);b(e),d(null),w(null),O(e=>e.includes(t)?e:[...e,t]),E(e=>e[t]?.includes(n)?e:{...e,[t]:[...e[t]??[],n]}),N({name:e.name,...r,prompt:e.prompt,provider:t,model:n,workspaceRoot:e.workspaceRoot??``,systemPrompt:e.systemPrompt??``,timeoutSeconds:typeof e.timeoutSeconds==`number`?String(e.timeoutSeconds):``,tags:e.tags?.join(`,`)??``,enabled:e.enabled}),v(!0)},ae=async()=>{let e=Ui(M.name);if(!e){w(`Routine name is required.`);return}let t=qi(M.scheduleDays,M.scheduleHour,M.scheduleMinute);if(!t){w(`Select at least one day and a valid time.`);return}let n=Ui(M.prompt);if(!n){w(`Prompt is required.`);return}let r=Ui(M.workspaceRoot);if(!r){w(`Workspace root is required.`);return}w(null),S(!0);try{let i=Di(Ui(M.provider))||F[0]||`cline`,a=Ui(M.model)||(P[i]??[])[0]||`anthropic/claude-sonnet-5`,o=Ui(M.systemPrompt),s=Wi(M.timeoutSeconds),c=Gi(M.tags),l=y?`update_routine_schedule`:`create_routine_schedule`;await Y.invoke(l,{...y?{schedule_id:y.scheduleId}:void 0,name:e,cron_pattern:t,prompt:n,provider:i,model:a,mode:y?.mode??`yolo`,workspace_root:r,cwd:y?y.cwd??null:r,system_prompt:y?o||null:o||void 0,timeout_seconds:y?s??null:s,max_parallel:1,enabled:M.enabled,tags:c??[]}),await L({force:!0,showLoading:!1}),v(!1),b(null)}catch(e){let t=e instanceof Error?e.message:String(e);w(t)}finally{S(!1)}},z=(0,Z.useMemo)(()=>{let e=new Map;for(let t of n)t.scheduleId&&(e.has(t.scheduleId)||e.set(t.scheduleId,t));return e},[n]),oe=(0,Z.useMemo)(()=>{let e=new Map;for(let t of o)t.scheduleId&&(e.has(t.scheduleId)||e.set(t.scheduleId,t));return e},[o]),se=(0,Z.useMemo)(()=>[...e].sort((e,t)=>e.name.toLowerCase().localeCompare(t.name.toLowerCase())),[e]);return(0,Q.jsxs)(qt,{children:[(0,Q.jsx)(Yt,{description:`Scheduled jobs are run through the hub.`,title:`Schedules`,meta:(0,Q.jsx)(Wt,{children:`cline schedule`}),actions:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(U,{variant:`outline`,size:`sm`,onClick:()=>void L(),disabled:c,children:(0,Q.jsx)(Pt,{className:k(`h-4 w-4`,c&&`animate-spin`)})}),(0,Q.jsxs)(U,{size:`sm`,onClick:()=>void ie(),children:[(0,Q.jsx)(K,{className:`h-4 w-4`}),`New Schedule`]})]})}),u&&(0,Q.jsx)(`div`,{className:`mb-4 rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive`,children:u}),c?(0,Q.jsx)(Bt,{children:`Loading schedules...`}):se.length===0?(0,Q.jsx)(Bt,{children:`No schedules found. Create a schedule to run routines on a recurring basis.`}):(0,Q.jsx)(`div`,{className:`flex flex-col gap-3`,children:se.map(e=>{let t=f===e.scheduleId,n=z.get(e.scheduleId),r=oe.get(e.scheduleId),a=i.find(t=>t.scheduleId===e.scheduleId);return(0,Q.jsxs)(`div`,{className:`rounded-lg border border-border px-5 py-4 transition-colors hover:bg-accent/20`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Q.jsx)(ct,{className:k(`h-2.5 w-2.5 shrink-0`,e.enabled?`fill-primary text-primary`:`fill-muted-foreground/40 text-muted-foreground/40`)}),(0,Q.jsx)(`h3`,{className:`text-sm font-semibold text-foreground`,children:e.name}),(0,Q.jsx)(`span`,{className:`rounded-md border border-border px-2 py-0.5 text-xs text-muted-foreground`,children:e.mode}),(0,Q.jsx)(`span`,{className:`rounded-md border border-border px-2 py-0.5 text-xs text-muted-foreground`,children:e.cronPattern===`0`?`Once · ${Ri(zi(e))}`:e.cronPattern}),(0,Q.jsx)(`div`,{className:`flex-1`}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,Q.jsx)(U,{variant:`ghost`,size:`icon-sm`,"aria-label":`View ${e.name}`,onClick:()=>{window.alert(JSON.stringify(e,null,2))},children:(0,Q.jsx)(ln,{className:`h-3.5 w-3.5`})}),(0,Q.jsx)(U,{variant:`ghost`,size:`icon-sm`,"aria-label":`Edit ${e.name}`,onClick:()=>R(e),disabled:t||e.cronPattern===`0`,children:(0,Q.jsx)(Lt,{className:`h-3.5 w-3.5`})}),(0,Q.jsx)(U,{variant:`ghost`,size:`icon-sm`,"aria-label":`Run ${e.name} now`,onClick:()=>void ne(e.scheduleId),disabled:t,children:(0,Q.jsx)(Ft,{className:`h-3.5 w-3.5`})}),(0,Q.jsx)(U,{variant:`ghost`,size:`icon-sm`,"aria-label":e.enabled?`Pause ${e.name}`:`Resume ${e.name}`,onClick:()=>void te(e,!e.enabled),disabled:t,children:e.enabled?(0,Q.jsx)(mn,{className:`h-3.5 w-3.5`}):(0,Q.jsx)(kt,{className:`h-3.5 w-3.5`})}),(0,Q.jsx)(U,{variant:`ghost`,size:`icon-sm`,"aria-label":`Delete ${e.name}`,onClick:()=>h(e),disabled:t,children:(0,Q.jsx)(g,{className:`h-3.5 w-3.5`})}),(0,Q.jsx)(Nt,{checked:e.enabled,onCheckedChange:t=>void te(e,t),disabled:t,"aria-label":`Enable ${e.name}`})]})]}),(0,Q.jsxs)(`div`,{className:`mt-2.5 ml-5.5 flex flex-col gap-1 text-xs text-muted-foreground`,children:[(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground/70`,children:`ID:`}),` `,e.scheduleId]}),(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground/70`,children:`Prompt:`}),` `,e.prompt]}),(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground/70`,children:`Model:`}),` `,Bi(e)]}),e.workspaceRoot&&(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground/70`,children:`Workspace:`}),` `,e.workspaceRoot]}),e.cwd&&(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground/70`,children:`CWD:`}),` `,e.cwd]}),(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground/70`,children:`Last run:`}),` `,Ri(e.lastRunAt)]}),(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground/70`,children:`Last result:`}),` `,Hi(r)]}),r?.sessionId&&(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground/70`,children:`Last session:`}),` `,r.sessionId]}),r?.errorMessage&&(0,Q.jsxs)(`p`,{className:`text-destructive`,children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground/70`,children:`Last error:`}),` `,r.errorMessage]}),(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground/70`,children:`Next run:`}),` `,Ri(e.nextRunAt||a?.nextRunAt)]}),n&&(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground/70`,children:`Active:`}),` `,n.executionId,` since`,` `,Ri(n.startedAt)]}),e.tags&&e.tags.length>0&&(0,Q.jsxs)(`p`,{children:[(0,Q.jsx)(`span`,{className:`text-muted-foreground/70`,children:`Tags:`}),` `,e.tags.join(`, `)]})]})]},e.scheduleId)})}),(0,Q.jsx)(Gt,{open:!!m,onOpenChange:e=>{e||h(null)},children:(0,Q.jsxs)(zt,{children:[(0,Q.jsxs)(Vt,{children:[(0,Q.jsx)($t,{children:`Delete Routine`}),(0,Q.jsxs)(Zt,{children:[`This will delete "`,m?.name??`this routine`,`" and remove future scheduled runs.`]})]}),(0,Q.jsxs)(en,{children:[(0,Q.jsx)(X,{disabled:m?f===m.scheduleId:!1,children:`Cancel`}),(0,Q.jsx)(Ut,{disabled:!m||f===m.scheduleId,onClick:()=>{m&&re(m.scheduleId)},variant:`destructive`,children:`Delete`})]})]})}),(0,Q.jsx)(ft,{open:_,onOpenChange:e=>{v(e),e||(w(null),b(null))},children:(0,Q.jsxs)(bt,{className:`max-h-[90vh] overflow-y-auto sm:max-w-2xl`,children:[(0,Q.jsxs)(mt,{children:[(0,Q.jsx)(St,{children:`Schedule`}),(0,Q.jsx)(wt,{children:y?`Update this scheduler routine.`:`Create a scheduler routine.`})]}),(0,Q.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 sm:grid-cols-2`,children:[(0,Q.jsxs)(`div`,{className:`sm:col-span-2`,children:[(0,Q.jsx)(G,{htmlFor:`routine-name`,children:`Name`}),(0,Q.jsx)(V,{id:`routine-name`,value:M.name,onChange:e=>N(t=>({...t,name:e.target.value})),placeholder:`Daily code review`})]}),(0,Q.jsxs)(`div`,{className:`sm:col-span-2 space-y-3`,children:[(0,Q.jsx)(G,{children:`Schedule`}),(0,Q.jsxs)(`div`,{className:`grid grid-cols-1 gap-3 rounded-md border border-border p-3 sm:grid-cols-2`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(G,{htmlFor:`routine-hour`,children:`Hour`}),(0,Q.jsxs)(gt,{value:M.scheduleHour,onValueChange:e=>N(t=>({...t,scheduleHour:e??t.scheduleHour})),children:[(0,Q.jsx)(Tt,{className:`w-full`,id:`routine-hour`,children:(0,Q.jsx)(Ot,{placeholder:`Hour`})}),(0,Q.jsx)(ht,{children:Array.from({length:24},(e,t)=>t).map(e=>(0,Q.jsx)(lt,{value:`${e}`,children:e.toString().padStart(2,`0`)},`hour-${e}`))})]})]}),(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(G,{htmlFor:`routine-minute`,children:`Minute`}),(0,Q.jsxs)(gt,{value:M.scheduleMinute,onValueChange:e=>N(t=>({...t,scheduleMinute:e??t.scheduleMinute})),children:[(0,Q.jsx)(Tt,{className:`w-full`,id:`routine-minute`,children:(0,Q.jsx)(Ot,{placeholder:`Minute`})}),(0,Q.jsx)(ht,{children:Array.from({length:60},(e,t)=>t).map(e=>(0,Q.jsx)(lt,{value:`${e}`,children:e.toString().padStart(2,`0`)},`minute-${e}`))})]})]}),(0,Q.jsxs)(`div`,{className:`sm:col-span-2`,children:[(0,Q.jsx)(G,{children:`Days of week`}),(0,Q.jsx)(`div`,{className:`mt-2 grid grid-cols-2 gap-2 sm:grid-cols-4`,children:Li.map(e=>{let t=`routine-day-${e.value.toLowerCase()}`,n=M.scheduleDays.includes(e.value);return(0,Q.jsxs)(G,{className:`flex items-center gap-2 rounded-md border border-border px-2 py-1.5 text-sm`,htmlFor:t,children:[(0,Q.jsx)(or,{checked:n,id:t,onCheckedChange:t=>N(n=>{let r=new Set(n.scheduleDays);return t===!0?r.add(e.value):r.delete(e.value),{...n,scheduleDays:Ki([...r])}})}),e.label]},e.value)})})]}),(0,Q.jsxs)(`div`,{className:`sm:col-span-2 rounded-md border border-border bg-muted/30 px-2 py-1.5 text-xs text-muted-foreground`,children:[`Cron:`,` `,(0,Q.jsx)(`span`,{className:`font-mono text-foreground`,children:ee||`Select one or more days`})]})]})]}),(0,Q.jsxs)(`div`,{className:`sm:col-span-2`,children:[(0,Q.jsx)(G,{htmlFor:`routine-prompt`,children:`Prompt`}),(0,Q.jsx)(W,{id:`routine-prompt`,value:M.prompt,onChange:e=>N(t=>({...t,prompt:e.target.value})),rows:4})]}),(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(G,{children:`Provider`}),(0,Q.jsxs)(mi,{items:F,onValueChange:e=>{if(!e)return;let t=P[e]??[],n=A.lastModelByProvider[e],r=n&&t.includes(n)?n:t[0]??``;N(t=>({...t,provider:e,model:r}))},value:M.provider,children:[(0,Q.jsx)(_i,{className:`h-9 w-full`,readOnly:!0,showClear:!1,showTrigger:!0}),(0,Q.jsxs)(vi,{children:[(0,Q.jsx)(xi,{children:`No providers found.`}),(0,Q.jsx)(yi,{children:e=>(0,Q.jsx)(bi,{value:e,children:e},e)})]})]})]}),(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(G,{children:`Model`}),(0,Q.jsxs)(mi,{items:I,onValueChange:e=>{e&&N(t=>({...t,model:e}))},value:M.model,children:[(0,Q.jsx)(_i,{className:`h-9 w-full`,readOnly:!0,showClear:!1,showTrigger:!0}),(0,Q.jsxs)(vi,{children:[(0,Q.jsx)(xi,{children:`No models found.`}),(0,Q.jsx)(yi,{children:e=>(0,Q.jsx)(bi,{value:e,children:e},e)})]})]})]}),(0,Q.jsxs)(`div`,{className:`sm:col-span-2`,children:[(0,Q.jsx)(G,{htmlFor:`routine-workspace`,children:`Workspace root`}),(0,Q.jsx)(V,{id:`routine-workspace`,value:M.workspaceRoot,onChange:e=>N(t=>({...t,workspaceRoot:e.target.value}))})]}),(0,Q.jsxs)(`div`,{className:`sm:col-span-2`,children:[(0,Q.jsx)(G,{htmlFor:`routine-system-prompt`,children:`System prompt (optional)`}),(0,Q.jsx)(W,{id:`routine-system-prompt`,value:M.systemPrompt,onChange:e=>N(t=>({...t,systemPrompt:e.target.value})),rows:3})]}),(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(G,{htmlFor:`routine-timeout`,children:`Timeout seconds (optional)`}),(0,Q.jsx)(V,{id:`routine-timeout`,value:M.timeoutSeconds,onChange:e=>N(t=>({...t,timeoutSeconds:e.target.value})),placeholder:`3600`})]}),(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(G,{htmlFor:`routine-tags`,children:`Tags (comma-separated, optional)`}),(0,Q.jsx)(V,{id:`routine-tags`,value:M.tags,onChange:e=>N(t=>({...t,tags:e.target.value})),placeholder:`automation,review`})]})]}),C&&(0,Q.jsx)(`div`,{className:`rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive`,children:C}),(0,Q.jsxs)(pt,{children:[(0,Q.jsx)(U,{variant:`outline`,onClick:()=>v(!1),disabled:x,children:`Cancel`}),(0,Q.jsx)(U,{onClick:()=>void ae(),disabled:x,children:x?y?`Saving...`:`Creating...`:y?`Save Changes`:`Create Schedule`})]})]})})]})}function Zi(e,t,n){let r=t.split(`.`).filter(Boolean);if(r.length===0)return;let i=e;for(let e of r.slice(0,-1)){let t=i[e];(!t||typeof t!=`object`||Array.isArray(t))&&(i[e]={}),i=i[e]}let a=r.at(-1);a&&(i[a]=n)}function Qi(e){let t={};for(let[n,r]of Object.entries(e))Zi(t,n,r);return t}var $i=[`General`,`Providers`,`MCP`,`Channels`,`Schedules`,`Account`],ea=6e4,ta=null;function na({chrome:e=`full`,initialSection:t=`General`,onClose:n,onNavigateSection:r}){let[i,a]=(0,Z.useState)(t),[o,s]=(0,Z.useState)(!0),[c,l]=(0,Z.useState)(()=>ta?.providers??[]),[u,d]=(0,Z.useState)(()=>!ta),[f,p]=(0,Z.useState)(null),[m,h]=(0,Z.useState)({}),[g,_]=(0,Z.useState)({}),[v,y]=(0,Z.useState)(null),[b,x]=(0,Z.useState)(null),[S,C]=(0,Z.useState)(!1),w=(0,Z.useCallback)(e=>{l(t=>{let n=typeof e==`function`?e(t):e;return ta={providers:n,fetchedAt:Date.now()},n})},[]),T=(0,Z.useCallback)(async()=>{if(ta&&Date.now()-ta.fetchedAt<ea){l(ta.providers),d(!1),p(null);return}d(!0),p(null);try{let e=await Y.invoke(`list_provider_catalog`);w(e.providers)}catch(e){let t=e instanceof Error?e.message:String(e);p(t),l([])}finally{d(!1)}},[w]);(0,Z.useEffect)(()=>{if(i!==`Providers`)return;let e=window.setTimeout(()=>{T()},0);return()=>window.clearTimeout(e)},[i,T]);let E=(0,Z.useCallback)(async(e,t)=>{try{await Y.invoke(`save_provider_settings`,{provider:e,enabled:t.enabled,api_key:t.apiKey,base_url:t.baseUrl,settings:t.configValues?Qi(t.configValues):void 0})}catch(t){let n=t instanceof Error?t.message:String(t);window.alert(`Failed to save provider settings for ${e}: ${n}`)}},[]),D=(0,Z.useCallback)(e=>{w(t=>t.map(t=>{if(t.id!==e)return t;let n=!t.enabled;return E(e,{enabled:n}),{...t,enabled:n}}))},[E,w]),O=(0,Z.useCallback)((e,t)=>{w(n=>n.map(n=>n.id===e?{...n,...t,configValues:t.configValues?{...n.configValues??{},...t.configValues}:n.configValues}:n)),E(e,{apiKey:t.apiKey,baseUrl:t.baseUrl,configValues:t.configValues})},[E,w]),A=(0,Z.useCallback)(async e=>{h(t=>({...t,[e]:!0})),_(t=>({...t,[e]:null}));try{let t=await Y.invoke(`list_provider_models`,{provider:e});w(n=>n.map(n=>n.id===e?{...n,modelList:t.models,models:t.models.length}:n))}catch(t){let n=t instanceof Error?t.message:String(t);_(t=>({...t,[e]:n}))}finally{h(t=>({...t,[e]:!1}))}},[w]),j=c.filter(e=>e.enabled),M=b?c.find(e=>e.id===b)??null:null,N=e=>e.capabilities?.includes(`oauth`)??!1,P=async e=>{y(e);try{let t=await Y.invoke(`run_provider_oauth_login`,{provider:e});w(n=>n.map(n=>n.id===e?{...n,enabled:!0,oauthAccessTokenPresent:t.accessToken.trim().length>0}:n)),x(e)}catch(t){let n=t instanceof Error?t.message:String(t);window.alert(`Failed to sign in to ${e}: ${n}`)}finally{y(null)}},F=e=>{a(`Providers`),r?.(`Providers`),x(e)};(0,Z.useEffect)(()=>{if(!b)return;let e=c.find(e=>e.id===b);if(!e||(e.modelList?.length??0)>0)return;let t=window.setTimeout(()=>{A(b)},0);return()=>window.clearTimeout(t)},[A,c,b]);let I=()=>{r?.(`Providers`),x(null),C(!1)},ee=(0,Z.useCallback)(async e=>{await Y.invoke(`add_provider`,{provider_id:e.providerId,name:e.name,base_url:e.baseUrl,api_key:e.apiKey,headers:e.headers,timeout_ms:e.timeoutMs,models:e.models,default_model_id:e.defaultModelId,models_source_url:e.modelsSourceUrl,capabilities:e.capabilities}),await T(),C(!1),x(e.providerId)},[T]),L=()=>{r?.(`Providers`),x(null),C(!0)},te=e=>{a(e),r?.(e),x(null),C(!1)},ne=S?(0,Q.jsx)(kn,{existingProviderIds:c.map(e=>e.id),onBack:I,onSave:ee}):u?(0,Q.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,Q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Loading providers...`})}):f?(0,Q.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,Q.jsxs)(`p`,{className:`max-w-xl px-4 text-center text-sm text-destructive`,children:[`Failed to load providers: `,f]})}):M?(0,Q.jsxs)(`div`,{className:`grid h-full grid-cols-[minmax(24rem,0.95fr)_minmax(28rem,1.05fr)] overflow-hidden max-[1100px]:grid-cols-1 max-[1100px]:grid-rows-[minmax(24rem,0.9fr)_minmax(26rem,1fr)]`,children:[(0,Q.jsx)(Yn,{onAddProvider:L,onConfigure:F,onToggle:D,providers:c,selectedProviderId:M.id,variant:`panel`}),(0,Q.jsx)(`aside`,{className:`min-h-0 overflow-hidden border-l bg-background max-[1100px]:border-l-0 max-[1100px]:border-t`,children:(0,Q.jsx)(Xn,{modelsError:g[M.id]??null,modelsLoading:m[M.id]??!1,oauthLoginPending:v===M.id,onBack:I,onLoadModels:()=>void A(M.id),onOAuthLogin:N(M)?()=>void P(M.id):void 0,onUpdate:e=>O(M.id,e),provider:M,variant:`panel`})})]}):(0,Q.jsx)(Yn,{onAddProvider:L,onConfigure:F,onToggle:D,providers:c}),re=i===`Providers`?ne:i===`MCP`?(0,Q.jsx)(Gn,{}):i===`Channels`?(0,Q.jsx)(Rn,{}):i===`Schedules`?(0,Q.jsx)(Xi,{}):i===`Account`?(0,Q.jsx)(Dn,{}):i===`General`?(0,Q.jsx)(ra,{}):(0,Q.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,Q.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[i,` settings coming soon.`]})});return e===`content`?(0,Q.jsx)(`div`,{className:`h-full overflow-hidden bg-background`,children:re}):(0,Q.jsxs)(`div`,{className:`flex h-full flex-col overflow-hidden bg-background`,children:[(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between border-b border-border px-6 py-3`,children:[(0,Q.jsx)(`h1`,{className:`text-lg font-semibold text-foreground`,children:`Settings`}),(0,Q.jsx)(U,{"aria-label":`Close settings`,className:`justify-start`,onClick:n,variant:`ghost`,children:(0,Q.jsx)(it,{className:`size-3`})})]}),(0,Q.jsxs)(`div`,{className:`flex flex-1 overflow-hidden`,children:[(0,Q.jsx)(`nav`,{className:`w-56 shrink-0 border-r border-border`,children:(0,Q.jsx)(Ht,{className:`h-full`,children:(0,Q.jsx)(`div`,{className:`flex flex-col gap-0.5 p-3`,children:$i.map(e=>e===`Providers`?(0,Q.jsxs)(`div`,{children:[(0,Q.jsxs)(U,{className:k(`flex w-full items-center justify-between rounded-md px-3 py-2 text-sm transition-colors`,i===`Providers`?`bg-accent text-accent-foreground font-medium`:`text-muted-foreground hover:bg-accent/50 hover:text-foreground`),onClick:()=>{te(`Providers`),s(e=>!e)},variant:`ghost`,children:[(0,Q.jsx)(`span`,{children:`Providers`}),o?(0,Q.jsx)($e,{className:`size-3`}):(0,Q.jsx)(rn,{className:`size-3`})]}),o&&(0,Q.jsx)(`div`,{className:`ml-3 mt-0.5 flex flex-col gap-0.5 border-l border-border pl-2`,children:j.map(e=>(0,Q.jsx)(U,{className:k(`justify-start`,b===e.id?`bg-accent/80 text-foreground`:`text-muted-foreground hover:text-foreground hover:bg-accent/30`),disabled:v===e.id,onClick:()=>F(e.id),variant:`ghost`,children:(0,Q.jsx)(`span`,{className:`truncate`,children:e.name})},e.id))})]},e):(0,Q.jsx)(U,{className:k(`justify-start`,i===e&&!b?`bg-accent text-accent-foreground font-medium`:`text-muted-foreground hover:bg-accent/50 hover:text-foreground`),onClick:()=>{te(e)},variant:`ghost`,children:e},e))})})}),(0,Q.jsx)(`div`,{className:`flex-1 overflow-hidden`,children:re})]})]})}function ra(){let[e,t]=(0,Z.useState)(()=>typeof window>`u`?`light`:Xt()??Kt()),[n,r]=(0,Z.useState)(!1),[i,a]=(0,Z.useState)(!0),[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(null),[u,d]=(0,Z.useState)(!0),[f,p]=(0,Z.useState)(!0),[m,h]=(0,Z.useState)(!1),[g,_]=(0,Z.useState)(null),v=(0,Z.useCallback)(async()=>{a(!0),l(null),p(!0),_(null);try{let e=await Y.invoke(`get_global_settings`);r(e.telemetryOptOut),d(e.autoUpdateEnabled)}catch(e){let t=e instanceof Error?e.message:String(e);l(t),_(t)}finally{a(!1),p(!1)}},[]);(0,Z.useEffect)(()=>{let e=window.setTimeout(()=>{v()},0);return()=>window.clearTimeout(e)},[v]);let y=async e=>{let t=n;r(e),s(!0),l(null);try{let t=await Y.invoke(`set_telemetry_opt_out`,{telemetry_opt_out:e});r(t.telemetryOptOut)}catch(e){let n=e instanceof Error?e.message:String(e);r(t),l(n)}finally{s(!1)}},b=async e=>{let t=u;d(e),h(!0),_(null);try{let t=await Y.invoke(`set_auto_update_enabled`,{auto_update_enabled:e});d(t.autoUpdateEnabled)}catch(e){let n=e instanceof Error?e.message:String(e);d(t),_(n)}finally{h(!1)}};return(0,Q.jsxs)(qt,{children:[(0,Q.jsx)(Yt,{description:`Manage Hub preferences for this browser and CLI environment.`,title:`Settings`}),(0,Q.jsxs)(`section`,{className:`max-w-[86rem]`,children:[(0,Q.jsxs)(`div`,{className:`flex min-h-20 items-center justify-between gap-5 border-b max-[720px]:flex-col max-[720px]:items-stretch max-[720px]:py-4`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`p`,{className:`text-[17px] font-semibold text-foreground`,children:`Dark mode`}),(0,Q.jsx)(`p`,{className:`mt-1 text-[15px] text-muted-foreground`,children:`Keep the Hub interface in dark mode on this browser.`})]}),(0,Q.jsx)(Nt,{"aria-label":`Dark mode`,checked:e===`dark`,onCheckedChange:e=>{t(Jt(e?`dark`:`light`)),window.dispatchEvent(new Event(`cline-hub-theme-change`))}})]}),(0,Q.jsxs)(`div`,{className:`flex min-h-20 items-center justify-between gap-5 border-b max-[720px]:flex-col max-[720px]:items-stretch max-[720px]:py-4`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`p`,{className:`text-[17px] font-semibold text-foreground`,children:`Auto update`}),(0,Q.jsx)(`p`,{className:`mt-1 text-[15px] text-muted-foreground`,children:`Automatically install CLI updates on startup.`}),g?(0,Q.jsxs)(`p`,{className:`mt-2 text-xs text-destructive`,children:[`Failed to update auto update setting: `,g]}):null]}),(0,Q.jsx)(Nt,{"aria-label":`Auto update`,checked:u,disabled:f||m,onCheckedChange:e=>void b(e)})]}),(0,Q.jsxs)(`div`,{className:`flex min-h-20 items-center justify-between gap-5 border-b max-[720px]:flex-col max-[720px]:items-stretch max-[720px]:py-4`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`p`,{className:`text-[17px] font-semibold text-foreground`,children:`Telemetry`}),(0,Q.jsx)(`p`,{className:`mt-1 text-[15px] text-muted-foreground`,children:`Enable error and usage report to help us improve Cline.`}),c?(0,Q.jsxs)(`p`,{className:`mt-2 text-xs text-destructive`,children:[`Failed to update telemetry setting: `,c]}):null]}),(0,Q.jsx)(Nt,{"aria-label":`Telemetry`,checked:!n,disabled:i||o,onCheckedChange:e=>void y(!e)})]})]})]})}export{na as SettingsView};
@@ -1 +1 @@
1
- import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as t,p as n}from"./src-BY_WSiz7.js";import{O as r,c as i,s as a,x as o}from"./chunk-WYO6CB5R-B91ryJFB.js";import{et as s,g as c}from"./chunk-ICXQ74PX-COcWu1Sq.js";import{t as l}from"./line-CJ_JkFXf.js";import"./chunk-HOUHSVGY-CFjt2s0d.js";import"./chunk-Q4XR5HBZ-CtUzoHvJ.js";import{i as u,t as d}from"./mermaid-layout-CKcc_JPx.js";import"./chunk-7BUUIJ7U-Bb538aSH.js";import"./chunk-OGEWGWER-BVna3Z_8.js";import"./chunk-32BRIVSS-BsAqn4xZ.js";import"./chunk-XXDRQBXY-DR-hrsFH.js";import"./chunk-VR4S4FIN-CbCTOh7J.js";import"./chunk-C7G6YPKG-CV2Ol95R.js";import"./chunk-ZGVPDNZ5-D5I51kcE.js";import"./chunk-52WLFC77-BWe_4R7D.js";import"./chunk-FWX5IMBZ-wv8Fkt1d.js";import{i as f,n as p,t as m}from"./chunk-EX3LRPZG-C7pvEKxc.js";var h=e(e=>e.append(`circle`).attr(`class`,`start-state`).attr(`r`,o().state.sizeUnit).attr(`cx`,o().state.padding+o().state.sizeUnit).attr(`cy`,o().state.padding+o().state.sizeUnit),`drawStartState`),g=e(e=>e.append(`line`).style(`stroke`,`grey`).style(`stroke-dasharray`,`3`).attr(`x1`,o().state.textHeight).attr(`class`,`divider`).attr(`x2`,o().state.textHeight*2).attr(`y1`,0).attr(`y2`,0),`drawDivider`),_=e((e,t)=>{let n=e.append(`text`).attr(`x`,2*o().state.padding).attr(`y`,o().state.textHeight+2*o().state.padding).attr(`font-size`,o().state.fontSize).attr(`class`,`state-title`).text(t.id),r=n.node().getBBox();return e.insert(`rect`,`:first-child`).attr(`x`,o().state.padding).attr(`y`,o().state.padding).attr(`width`,r.width+2*o().state.padding).attr(`height`,r.height+2*o().state.padding).attr(`rx`,o().state.radius),n},`drawSimpleState`),v=e((t,n)=>{let r=e(function(e,t,n){let r=e.append(`tspan`).attr(`x`,2*o().state.padding).text(t);n||r.attr(`dy`,o().state.textHeight)},`addTspan`),i=t.append(`text`).attr(`x`,2*o().state.padding).attr(`y`,o().state.textHeight+1.3*o().state.padding).attr(`font-size`,o().state.fontSize).attr(`class`,`state-title`).text(n.descriptions[0]).node().getBBox(),a=i.height,s=t.append(`text`).attr(`x`,o().state.padding).attr(`y`,a+o().state.padding*.4+o().state.dividerMargin+o().state.textHeight).attr(`class`,`state-description`),c=!0,l=!0;n.descriptions.forEach(function(e){c||(r(s,e,l),l=!1),c=!1});let u=t.append(`line`).attr(`x1`,o().state.padding).attr(`y1`,o().state.padding+a+o().state.dividerMargin/2).attr(`y2`,o().state.padding+a+o().state.dividerMargin/2).attr(`class`,`descr-divider`),d=s.node().getBBox(),f=Math.max(d.width,i.width);return u.attr(`x2`,f+3*o().state.padding),t.insert(`rect`,`:first-child`).attr(`x`,o().state.padding).attr(`y`,o().state.padding).attr(`width`,f+2*o().state.padding).attr(`height`,d.height+a+2*o().state.padding).attr(`rx`,o().state.radius),t},`drawDescrState`),y=e((e,t,n)=>{let r=o().state.padding,i=2*o().state.padding,a=e.node().getBBox(),s=a.width,c=a.x,l=e.append(`text`).attr(`x`,0).attr(`y`,o().state.titleShift).attr(`font-size`,o().state.fontSize).attr(`class`,`state-title`).text(t.id),u=l.node().getBBox().width+i,d=Math.max(u,s);d===s&&(d+=i);let f,p=e.node().getBBox();t.doc,f=c-r,u>s&&(f=(s-d)/2+r),Math.abs(c-p.x)<r&&u>s&&(f=c-(u-s)/2);let m=1-o().state.textHeight;return e.insert(`rect`,`:first-child`).attr(`x`,f).attr(`y`,m).attr(`class`,n?`alt-composit`:`composit`).attr(`width`,d).attr(`height`,p.height+o().state.textHeight+o().state.titleShift+1).attr(`rx`,`0`),l.attr(`x`,f+r),u<=s&&l.attr(`x`,c+(d-i)/2-u/2+r),e.insert(`rect`,`:first-child`).attr(`x`,f).attr(`y`,o().state.titleShift-o().state.textHeight-o().state.padding).attr(`width`,d).attr(`height`,o().state.textHeight*3).attr(`rx`,o().state.radius),e.insert(`rect`,`:first-child`).attr(`x`,f).attr(`y`,o().state.titleShift-o().state.textHeight-o().state.padding).attr(`width`,d).attr(`height`,p.height+3+2*o().state.textHeight).attr(`rx`,o().state.radius),e},`addTitleAndBox`),b=e(e=>(e.append(`circle`).attr(`class`,`end-state-outer`).attr(`r`,o().state.sizeUnit+o().state.miniPadding).attr(`cx`,o().state.padding+o().state.sizeUnit+o().state.miniPadding).attr(`cy`,o().state.padding+o().state.sizeUnit+o().state.miniPadding),e.append(`circle`).attr(`class`,`end-state-inner`).attr(`r`,o().state.sizeUnit).attr(`cx`,o().state.padding+o().state.sizeUnit+2).attr(`cy`,o().state.padding+o().state.sizeUnit+2)),`drawEndState`),x=e((e,t)=>{let n=o().state.forkWidth,r=o().state.forkHeight;if(t.parentId){let e=n;n=r,r=e}return e.append(`rect`).style(`stroke`,`black`).style(`fill`,`black`).attr(`width`,n).attr(`height`,r).attr(`x`,o().state.padding).attr(`y`,o().state.padding)},`drawForkJoinState`),S=e((e,t,n,r)=>{let i=0,s=r.append(`text`);s.style(`text-anchor`,`start`),s.attr(`class`,`noteText`);let c=e.replace(/\r\n/g,`<br/>`);c=c.replace(/\n/g,`<br/>`);let l=c.split(a.lineBreakRegex),u=1.25*o().state.noteMargin;for(let e of l){let r=e.trim();if(r.length>0){let e=s.append(`tspan`);if(e.text(r),u===0){let t=e.node().getBBox();u+=t.height}i+=u,e.attr(`x`,t+o().state.noteMargin),e.attr(`y`,n+i+1.25*o().state.noteMargin)}}return{textWidth:s.node().getBBox().width,textHeight:i}},`_drawLongText`),C=e((e,t)=>{t.attr(`class`,`state-note`);let n=t.append(`rect`).attr(`x`,0).attr(`y`,o().state.padding),{textWidth:r,textHeight:i}=S(e,0,0,t.append(`g`));return n.attr(`height`,i+2*o().state.noteMargin),n.attr(`width`,r+o().state.noteMargin*2),n},`drawNote`),w=e(function(e,t){let n=t.id,r={id:n,label:t.id,width:0,height:0},i=e.append(`g`).attr(`id`,n).attr(`class`,`stateGroup`);t.type===`start`&&h(i),t.type===`end`&&b(i),(t.type===`fork`||t.type===`join`)&&x(i,t),t.type===`note`&&C(t.note.text,i),t.type===`divider`&&g(i),t.type==="default"&&t.descriptions.length===0&&_(i,t),t.type==="default"&&t.descriptions.length>0&&v(i,t);let a=i.node().getBBox();return r.width=a.width+2*o().state.padding,r.height=a.height+2*o().state.padding,r},`drawState`),T=0,E=e(function(n,i,u){let d=e(function(e){switch(e){case m.relationType.AGGREGATION:return`aggregation`;case m.relationType.EXTENSION:return`extension`;case m.relationType.COMPOSITION:return`composition`;case m.relationType.DEPENDENCY:return`dependency`}},`getRelationType`);i.points=i.points.filter(e=>!Number.isNaN(e.y));let f=i.points,p=l().x(function(e){return e.x}).y(function(e){return e.y}).curve(s),h=n.append(`path`).attr(`d`,p(f)).attr(`id`,`edge`+T).attr(`class`,`transition`),g=``;if(o().state.arrowMarkerAbsolute&&(g=r(!0)),h.attr(`marker-end`,`url(`+g+`#`+d(m.relationType.DEPENDENCY)+`End)`),u.title!==void 0){let e=n.append(`g`).attr(`class`,`stateLabel`),{x:r,y:s}=c.calcLabelPosition(i.points),l=a.getRows(u.title),d=0,f=[],p=0,m=0;for(let n=0;n<=l.length;n++){let i=e.append(`text`).attr(`text-anchor`,`middle`).text(l[n]).attr(`x`,r).attr(`y`,s+d),a=i.node().getBBox();p=Math.max(p,a.width),m=Math.min(m,a.x),t.info(a.x,r,s+d),d===0&&(d=i.node().getBBox().height,t.info(`Title height`,d,s)),f.push(i)}let h=d*l.length;if(l.length>1){let e=(l.length-1)*d*.5;f.forEach((t,n)=>t.attr(`y`,s+n*d-e)),h=d*l.length}let g=e.node().getBBox();e.insert(`rect`,`:first-child`).attr(`class`,`box`).attr(`x`,r-p/2-o().state.padding/2).attr(`y`,s-h/2-o().state.padding/2-3.5).attr(`width`,p+o().state.padding).attr(`height`,h+o().state.padding),t.info(g)}T++},`drawEdge`),D,O={},k=e(function(){},`setConf`),A=e(function(e){e.append(`defs`).append(`marker`).attr(`id`,`dependencyEnd`).attr(`refX`,19).attr(`refY`,7).attr(`markerWidth`,20).attr(`markerHeight`,28).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 19,7 L9,13 L14,7 L9,1 Z`)},`insertMarkers`),j=e(function(e,r,a,s){D=o().state;let c=o().securityLevel,l;c===`sandbox`&&(l=n(`#i`+r));let u=n(c===`sandbox`?l.nodes()[0].contentDocument.body:`body`),d=c===`sandbox`?l.nodes()[0].contentDocument:document;t.debug(`Rendering diagram `+e);let f=u.select(`[id='${r}']`);A(f),N(s.db.getRootDoc(),f.append(`g`).attr(`id`,r+`-root`),void 0,!1,u,d,s);let p=D.padding,m=f.node().getBBox(),h=m.width+p*2,g=m.height+p*2,_=h*1.75;i(f,g,_,D.useMaxWidth),f.attr(`viewBox`,`${m.x-D.padding} ${m.y-D.padding} `+h+` `+g)},`draw`),M=e(e=>e?e.length*D.fontSizeFactor:1,`getLabelWidth`),N=e((e,n,r,i,o,s,c)=>{let l=new u({compound:!0,multigraph:!0}),f,p=!0;for(f=0;f<e.length;f++)if(e[f].stmt===`relation`){p=!1;break}r?l.setGraph({rankdir:`LR`,multigraph:!0,compound:!0,ranker:`tight-tree`,ranksep:p?1:D.edgeLengthFactor,nodeSep:p?1:50,isMultiGraph:!0}):l.setGraph({rankdir:`TB`,multigraph:!0,compound:!0,ranksep:p?1:D.edgeLengthFactor,nodeSep:p?1:50,ranker:`tight-tree`,isMultiGraph:!0}),l.setDefaultEdgeLabel(function(){return{}});let m=c.db.getStates(),h=c.db.getRelations(),g=Object.keys(m);for(let e of g){let t=m[e];r&&(t.parentId=r);let a;if(t.doc){let e=n.append(`g`).attr(`id`,t.id).attr(`class`,`stateGroup`);a=N(t.doc,e,t.id,!i,o,s,c);{e=y(e,t,i);let n=e.node().getBBox();a.width=n.width,a.height=n.height+D.padding/2,O[t.id]={y:D.compositTitleSize}}}else a=w(n,t,l);if(t.note){let e=w(n,{descriptions:[],id:t.id+`-note`,note:t.note,type:`note`},l);t.note.position===`left of`?(l.setNode(a.id+`-note`,e),l.setNode(a.id,a)):(l.setNode(a.id,a),l.setNode(a.id+`-note`,e)),l.setParent(a.id,a.id+`-group`),l.setParent(a.id+`-note`,a.id+`-group`)}else l.setNode(a.id,a)}t.debug(`Count=`,l.nodeCount(),l);let _=0;h.forEach(function(e){_++,t.debug(`Setting edge`,e),l.setEdge(e.id1,e.id2,{relation:e,width:M(e.title),height:D.labelHeight*a.getRows(e.title).length,labelpos:`c`},`id`+_)}),d(l),t.debug(`Graph after layout`,l.nodes());let v=n.node();l.nodes().forEach(function(e){e!==void 0&&l.node(e)!==void 0?(t.warn(`Node `+e+`: `+JSON.stringify(l.node(e))),o.select(`#`+v.id+` #`+e).attr(`transform`,`translate(`+(l.node(e).x-l.node(e).width/2)+`,`+(l.node(e).y+(O[e]?O[e].y:0)-l.node(e).height/2)+` )`),o.select(`#`+v.id+` #`+e).attr(`data-x-shift`,l.node(e).x-l.node(e).width/2),s.querySelectorAll(`#`+v.id+` #`+e+` .divider`).forEach(e=>{let t=e.parentElement,n=0,r=0;t&&(t.parentElement&&(n=t.parentElement.getBBox().width),r=parseInt(t.getAttribute(`data-x-shift`),10),Number.isNaN(r)&&(r=0)),e.setAttribute(`x1`,0-r+8),e.setAttribute(`x2`,n-r-8)})):t.debug(`No Node `+e+`: `+JSON.stringify(l.node(e)))});let b=v.getBBox();l.edges().forEach(function(e){e!==void 0&&l.edge(e)!==void 0&&(t.debug(`Edge `+e.v+` -> `+e.w+`: `+JSON.stringify(l.edge(e))),E(n,l.edge(e),l.edge(e).relation))}),b=v.getBBox();let x={id:r||`root`,label:r||`root`,width:0,height:0};return x.width=b.width+2*D.padding,x.height=b.height+2*D.padding,t.debug(`Doc rendered`,x,l),x},`renderDoc`),P={parser:p,get db(){return new m(1)},renderer:{setConf:k,draw:j},styles:f,init:e(e=>{e.state||={},e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},`init`)};export{P as diagram};
1
+ import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as t,p as n}from"./src-BY_WSiz7.js";import{O as r,c as i,s as a,x as o}from"./chunk-WYO6CB5R-Ht1kfqSA.js";import{et as s,g as c}from"./chunk-ICXQ74PX-BSKRMyFr.js";import{t as l}from"./line-Zi3iUihi.js";import"./chunk-HOUHSVGY-B04R_umg.js";import"./chunk-Q4XR5HBZ-DkRpWOkn.js";import{i as u,t as d}from"./mermaid-layout-BadlRzDJ.js";import"./chunk-7BUUIJ7U-Bb538aSH.js";import"./chunk-OGEWGWER-CR4zh_DV.js";import"./chunk-32BRIVSS-7roN4V45.js";import"./chunk-XXDRQBXY-DR-hrsFH.js";import"./chunk-VR4S4FIN-NuklvPa4.js";import"./chunk-C7G6YPKG-DBhUCKu7.js";import"./chunk-ZGVPDNZ5-CeJ5hUbe.js";import"./chunk-52WLFC77-DEfoFGdq.js";import"./chunk-FWX5IMBZ-DO4vTS0i.js";import{i as f,n as p,t as m}from"./chunk-EX3LRPZG-Cy_TQpzv.js";var h=e(e=>e.append(`circle`).attr(`class`,`start-state`).attr(`r`,o().state.sizeUnit).attr(`cx`,o().state.padding+o().state.sizeUnit).attr(`cy`,o().state.padding+o().state.sizeUnit),`drawStartState`),g=e(e=>e.append(`line`).style(`stroke`,`grey`).style(`stroke-dasharray`,`3`).attr(`x1`,o().state.textHeight).attr(`class`,`divider`).attr(`x2`,o().state.textHeight*2).attr(`y1`,0).attr(`y2`,0),`drawDivider`),_=e((e,t)=>{let n=e.append(`text`).attr(`x`,2*o().state.padding).attr(`y`,o().state.textHeight+2*o().state.padding).attr(`font-size`,o().state.fontSize).attr(`class`,`state-title`).text(t.id),r=n.node().getBBox();return e.insert(`rect`,`:first-child`).attr(`x`,o().state.padding).attr(`y`,o().state.padding).attr(`width`,r.width+2*o().state.padding).attr(`height`,r.height+2*o().state.padding).attr(`rx`,o().state.radius),n},`drawSimpleState`),v=e((t,n)=>{let r=e(function(e,t,n){let r=e.append(`tspan`).attr(`x`,2*o().state.padding).text(t);n||r.attr(`dy`,o().state.textHeight)},`addTspan`),i=t.append(`text`).attr(`x`,2*o().state.padding).attr(`y`,o().state.textHeight+1.3*o().state.padding).attr(`font-size`,o().state.fontSize).attr(`class`,`state-title`).text(n.descriptions[0]).node().getBBox(),a=i.height,s=t.append(`text`).attr(`x`,o().state.padding).attr(`y`,a+o().state.padding*.4+o().state.dividerMargin+o().state.textHeight).attr(`class`,`state-description`),c=!0,l=!0;n.descriptions.forEach(function(e){c||(r(s,e,l),l=!1),c=!1});let u=t.append(`line`).attr(`x1`,o().state.padding).attr(`y1`,o().state.padding+a+o().state.dividerMargin/2).attr(`y2`,o().state.padding+a+o().state.dividerMargin/2).attr(`class`,`descr-divider`),d=s.node().getBBox(),f=Math.max(d.width,i.width);return u.attr(`x2`,f+3*o().state.padding),t.insert(`rect`,`:first-child`).attr(`x`,o().state.padding).attr(`y`,o().state.padding).attr(`width`,f+2*o().state.padding).attr(`height`,d.height+a+2*o().state.padding).attr(`rx`,o().state.radius),t},`drawDescrState`),y=e((e,t,n)=>{let r=o().state.padding,i=2*o().state.padding,a=e.node().getBBox(),s=a.width,c=a.x,l=e.append(`text`).attr(`x`,0).attr(`y`,o().state.titleShift).attr(`font-size`,o().state.fontSize).attr(`class`,`state-title`).text(t.id),u=l.node().getBBox().width+i,d=Math.max(u,s);d===s&&(d+=i);let f,p=e.node().getBBox();t.doc,f=c-r,u>s&&(f=(s-d)/2+r),Math.abs(c-p.x)<r&&u>s&&(f=c-(u-s)/2);let m=1-o().state.textHeight;return e.insert(`rect`,`:first-child`).attr(`x`,f).attr(`y`,m).attr(`class`,n?`alt-composit`:`composit`).attr(`width`,d).attr(`height`,p.height+o().state.textHeight+o().state.titleShift+1).attr(`rx`,`0`),l.attr(`x`,f+r),u<=s&&l.attr(`x`,c+(d-i)/2-u/2+r),e.insert(`rect`,`:first-child`).attr(`x`,f).attr(`y`,o().state.titleShift-o().state.textHeight-o().state.padding).attr(`width`,d).attr(`height`,o().state.textHeight*3).attr(`rx`,o().state.radius),e.insert(`rect`,`:first-child`).attr(`x`,f).attr(`y`,o().state.titleShift-o().state.textHeight-o().state.padding).attr(`width`,d).attr(`height`,p.height+3+2*o().state.textHeight).attr(`rx`,o().state.radius),e},`addTitleAndBox`),b=e(e=>(e.append(`circle`).attr(`class`,`end-state-outer`).attr(`r`,o().state.sizeUnit+o().state.miniPadding).attr(`cx`,o().state.padding+o().state.sizeUnit+o().state.miniPadding).attr(`cy`,o().state.padding+o().state.sizeUnit+o().state.miniPadding),e.append(`circle`).attr(`class`,`end-state-inner`).attr(`r`,o().state.sizeUnit).attr(`cx`,o().state.padding+o().state.sizeUnit+2).attr(`cy`,o().state.padding+o().state.sizeUnit+2)),`drawEndState`),x=e((e,t)=>{let n=o().state.forkWidth,r=o().state.forkHeight;if(t.parentId){let e=n;n=r,r=e}return e.append(`rect`).style(`stroke`,`black`).style(`fill`,`black`).attr(`width`,n).attr(`height`,r).attr(`x`,o().state.padding).attr(`y`,o().state.padding)},`drawForkJoinState`),S=e((e,t,n,r)=>{let i=0,s=r.append(`text`);s.style(`text-anchor`,`start`),s.attr(`class`,`noteText`);let c=e.replace(/\r\n/g,`<br/>`);c=c.replace(/\n/g,`<br/>`);let l=c.split(a.lineBreakRegex),u=1.25*o().state.noteMargin;for(let e of l){let r=e.trim();if(r.length>0){let e=s.append(`tspan`);if(e.text(r),u===0){let t=e.node().getBBox();u+=t.height}i+=u,e.attr(`x`,t+o().state.noteMargin),e.attr(`y`,n+i+1.25*o().state.noteMargin)}}return{textWidth:s.node().getBBox().width,textHeight:i}},`_drawLongText`),C=e((e,t)=>{t.attr(`class`,`state-note`);let n=t.append(`rect`).attr(`x`,0).attr(`y`,o().state.padding),{textWidth:r,textHeight:i}=S(e,0,0,t.append(`g`));return n.attr(`height`,i+2*o().state.noteMargin),n.attr(`width`,r+o().state.noteMargin*2),n},`drawNote`),w=e(function(e,t){let n=t.id,r={id:n,label:t.id,width:0,height:0},i=e.append(`g`).attr(`id`,n).attr(`class`,`stateGroup`);t.type===`start`&&h(i),t.type===`end`&&b(i),(t.type===`fork`||t.type===`join`)&&x(i,t),t.type===`note`&&C(t.note.text,i),t.type===`divider`&&g(i),t.type==="default"&&t.descriptions.length===0&&_(i,t),t.type==="default"&&t.descriptions.length>0&&v(i,t);let a=i.node().getBBox();return r.width=a.width+2*o().state.padding,r.height=a.height+2*o().state.padding,r},`drawState`),T=0,E=e(function(n,i,u){let d=e(function(e){switch(e){case m.relationType.AGGREGATION:return`aggregation`;case m.relationType.EXTENSION:return`extension`;case m.relationType.COMPOSITION:return`composition`;case m.relationType.DEPENDENCY:return`dependency`}},`getRelationType`);i.points=i.points.filter(e=>!Number.isNaN(e.y));let f=i.points,p=l().x(function(e){return e.x}).y(function(e){return e.y}).curve(s),h=n.append(`path`).attr(`d`,p(f)).attr(`id`,`edge`+T).attr(`class`,`transition`),g=``;if(o().state.arrowMarkerAbsolute&&(g=r(!0)),h.attr(`marker-end`,`url(`+g+`#`+d(m.relationType.DEPENDENCY)+`End)`),u.title!==void 0){let e=n.append(`g`).attr(`class`,`stateLabel`),{x:r,y:s}=c.calcLabelPosition(i.points),l=a.getRows(u.title),d=0,f=[],p=0,m=0;for(let n=0;n<=l.length;n++){let i=e.append(`text`).attr(`text-anchor`,`middle`).text(l[n]).attr(`x`,r).attr(`y`,s+d),a=i.node().getBBox();p=Math.max(p,a.width),m=Math.min(m,a.x),t.info(a.x,r,s+d),d===0&&(d=i.node().getBBox().height,t.info(`Title height`,d,s)),f.push(i)}let h=d*l.length;if(l.length>1){let e=(l.length-1)*d*.5;f.forEach((t,n)=>t.attr(`y`,s+n*d-e)),h=d*l.length}let g=e.node().getBBox();e.insert(`rect`,`:first-child`).attr(`class`,`box`).attr(`x`,r-p/2-o().state.padding/2).attr(`y`,s-h/2-o().state.padding/2-3.5).attr(`width`,p+o().state.padding).attr(`height`,h+o().state.padding),t.info(g)}T++},`drawEdge`),D,O={},k=e(function(){},`setConf`),A=e(function(e){e.append(`defs`).append(`marker`).attr(`id`,`dependencyEnd`).attr(`refX`,19).attr(`refY`,7).attr(`markerWidth`,20).attr(`markerHeight`,28).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 19,7 L9,13 L14,7 L9,1 Z`)},`insertMarkers`),j=e(function(e,r,a,s){D=o().state;let c=o().securityLevel,l;c===`sandbox`&&(l=n(`#i`+r));let u=n(c===`sandbox`?l.nodes()[0].contentDocument.body:`body`),d=c===`sandbox`?l.nodes()[0].contentDocument:document;t.debug(`Rendering diagram `+e);let f=u.select(`[id='${r}']`);A(f),N(s.db.getRootDoc(),f.append(`g`).attr(`id`,r+`-root`),void 0,!1,u,d,s);let p=D.padding,m=f.node().getBBox(),h=m.width+p*2,g=m.height+p*2,_=h*1.75;i(f,g,_,D.useMaxWidth),f.attr(`viewBox`,`${m.x-D.padding} ${m.y-D.padding} `+h+` `+g)},`draw`),M=e(e=>e?e.length*D.fontSizeFactor:1,`getLabelWidth`),N=e((e,n,r,i,o,s,c)=>{let l=new u({compound:!0,multigraph:!0}),f,p=!0;for(f=0;f<e.length;f++)if(e[f].stmt===`relation`){p=!1;break}r?l.setGraph({rankdir:`LR`,multigraph:!0,compound:!0,ranker:`tight-tree`,ranksep:p?1:D.edgeLengthFactor,nodeSep:p?1:50,isMultiGraph:!0}):l.setGraph({rankdir:`TB`,multigraph:!0,compound:!0,ranksep:p?1:D.edgeLengthFactor,nodeSep:p?1:50,ranker:`tight-tree`,isMultiGraph:!0}),l.setDefaultEdgeLabel(function(){return{}});let m=c.db.getStates(),h=c.db.getRelations(),g=Object.keys(m);for(let e of g){let t=m[e];r&&(t.parentId=r);let a;if(t.doc){let e=n.append(`g`).attr(`id`,t.id).attr(`class`,`stateGroup`);a=N(t.doc,e,t.id,!i,o,s,c);{e=y(e,t,i);let n=e.node().getBBox();a.width=n.width,a.height=n.height+D.padding/2,O[t.id]={y:D.compositTitleSize}}}else a=w(n,t,l);if(t.note){let e=w(n,{descriptions:[],id:t.id+`-note`,note:t.note,type:`note`},l);t.note.position===`left of`?(l.setNode(a.id+`-note`,e),l.setNode(a.id,a)):(l.setNode(a.id,a),l.setNode(a.id+`-note`,e)),l.setParent(a.id,a.id+`-group`),l.setParent(a.id+`-note`,a.id+`-group`)}else l.setNode(a.id,a)}t.debug(`Count=`,l.nodeCount(),l);let _=0;h.forEach(function(e){_++,t.debug(`Setting edge`,e),l.setEdge(e.id1,e.id2,{relation:e,width:M(e.title),height:D.labelHeight*a.getRows(e.title).length,labelpos:`c`},`id`+_)}),d(l),t.debug(`Graph after layout`,l.nodes());let v=n.node();l.nodes().forEach(function(e){e!==void 0&&l.node(e)!==void 0?(t.warn(`Node `+e+`: `+JSON.stringify(l.node(e))),o.select(`#`+v.id+` #`+e).attr(`transform`,`translate(`+(l.node(e).x-l.node(e).width/2)+`,`+(l.node(e).y+(O[e]?O[e].y:0)-l.node(e).height/2)+` )`),o.select(`#`+v.id+` #`+e).attr(`data-x-shift`,l.node(e).x-l.node(e).width/2),s.querySelectorAll(`#`+v.id+` #`+e+` .divider`).forEach(e=>{let t=e.parentElement,n=0,r=0;t&&(t.parentElement&&(n=t.parentElement.getBBox().width),r=parseInt(t.getAttribute(`data-x-shift`),10),Number.isNaN(r)&&(r=0)),e.setAttribute(`x1`,0-r+8),e.setAttribute(`x2`,n-r-8)})):t.debug(`No Node `+e+`: `+JSON.stringify(l.node(e)))});let b=v.getBBox();l.edges().forEach(function(e){e!==void 0&&l.edge(e)!==void 0&&(t.debug(`Edge `+e.v+` -> `+e.w+`: `+JSON.stringify(l.edge(e))),E(n,l.edge(e),l.edge(e).relation))}),b=v.getBBox();let x={id:r||`root`,label:r||`root`,width:0,height:0};return x.width=b.width+2*D.padding,x.height=b.height+2*D.padding,t.debug(`Doc rendered`,x,l),x},`renderDoc`),P={parser:p,get db(){return new m(1)},renderer:{setConf:k,draw:j},styles:f,init:e(e=>{e.state||={},e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},`init`)};export{P as diagram};
@@ -0,0 +1 @@
1
+ import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import"./src-BY_WSiz7.js";import"./chunk-WYO6CB5R-Ht1kfqSA.js";import"./chunk-ICXQ74PX-BSKRMyFr.js";import"./chunk-HOUHSVGY-B04R_umg.js";import"./chunk-Q4XR5HBZ-DkRpWOkn.js";import"./chunk-7BUUIJ7U-Bb538aSH.js";import"./chunk-OGEWGWER-CR4zh_DV.js";import"./chunk-32BRIVSS-7roN4V45.js";import"./chunk-XXDRQBXY-DR-hrsFH.js";import"./chunk-VR4S4FIN-NuklvPa4.js";import"./chunk-C7G6YPKG-DBhUCKu7.js";import"./chunk-ZGVPDNZ5-CeJ5hUbe.js";import"./chunk-52WLFC77-DEfoFGdq.js";import"./chunk-FWX5IMBZ-DO4vTS0i.js";import{i as t,n,r,t as i}from"./chunk-EX3LRPZG-Cy_TQpzv.js";var a={parser:n,get db(){return new i(2)},renderer:r,styles:t,init:e(e=>{e.state||={},e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},`init`)};export{a as diagram};