@qredence/fleet 0.6.3 → 0.6.4

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 (313) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/web/client/assets/{DialogTitle-DiAm7YNe.js → DialogTitle-BwQ9k-MZ.js} +1 -1
  3. package/dist/web/client/assets/agent-disclosure-YgLa4c2y.js +1 -0
  4. package/dist/web/client/assets/{alert-dialog-CYE37KMM.js → alert-dialog-BfK7648p.js} +1 -1
  5. package/dist/web/client/assets/analytics-stub-BY-GADyA.js +1 -0
  6. package/dist/web/client/assets/arrow-up-DCwrqIrK.js +1 -0
  7. package/dist/web/client/assets/artifacts-panel-DDlPULVv.js +1 -0
  8. package/dist/web/client/assets/bot-DETalD3q.js +1 -0
  9. package/dist/web/client/assets/{button-Dl0ce3Y5.js → button-BrwYi6QP.js} +1 -1
  10. package/dist/web/client/assets/{card-DCEnYd2G.js → card-BScRdZNS.js} +1 -1
  11. package/dist/web/client/assets/chat-command-palette-DdPlRVuL.js +1 -0
  12. package/dist/web/client/assets/chat-helpers-Bj7_hES7.js +1 -0
  13. package/dist/web/client/assets/check-BTwIaCtI.js +1 -0
  14. package/dist/web/client/assets/chevron-down-Bse1ggZM.js +1 -0
  15. package/dist/web/client/assets/chevron-right-BPCB1mOg.js +1 -0
  16. package/dist/web/client/assets/chunk-YOKDWASO-C8deEx7Z.js +143 -0
  17. package/dist/web/client/assets/circle-check-DBhaebaM.js +1 -0
  18. package/dist/web/client/assets/citations-DOkXsdCi.js +1 -0
  19. package/dist/web/client/assets/clsx-DB0hHKMi.js +1 -0
  20. package/dist/web/client/assets/{collapsible-CUxOjhDJ.js → collapsible-DsbKpD_Y.js} +1 -1
  21. package/dist/web/client/assets/{command-Cw4X8Bpk.js → command-DSxdh_1v.js} +1 -1
  22. package/dist/web/client/assets/composer-intent-C5pz72T6.js +62 -0
  23. package/dist/web/client/assets/create-project-dialog-CaXurRpm.js +1 -0
  24. package/dist/web/client/assets/{createBaseUIEventDetails-B58Jldei.js → createBaseUIEventDetails-DklXWq23.js} +1 -1
  25. package/dist/web/client/assets/createLucideIcon-CQY2ECfR.js +1 -0
  26. package/dist/web/client/assets/{dialog-BzcIOvFC.js → dialog-B9nXTto4.js} +1 -1
  27. package/dist/web/client/assets/{dist-DbHxXSgQ.js → dist-BJJVCio8.js} +1 -1
  28. package/dist/web/client/assets/dist-BogNzeK9.js +1 -0
  29. package/dist/web/client/assets/{ease-CMumuPlX.js → ease-2UPBQU5v.js} +1 -1
  30. package/dist/web/client/assets/eye-iNSvs0UA.js +1 -0
  31. package/dist/web/client/assets/file-text-cqOanUYv.js +1 -0
  32. package/dist/web/client/assets/folder-COBtkKZa.js +1 -0
  33. package/dist/web/client/assets/{fork-picker-dialog-BYRr-xTy.js → fork-picker-dialog-DEdHU89A.js} +1 -1
  34. package/dist/web/client/assets/gauge-0Nn96wfZ.js +1 -0
  35. package/dist/web/client/assets/git-branch-DZEh2mM2.js +1 -0
  36. package/dist/web/client/assets/globals-B-fD_O7k.css +2 -0
  37. package/dist/web/client/assets/hard-drive-B3opVeEB.js +1 -0
  38. package/dist/web/client/assets/{highlighted-body-KPVGNVTW-CgT7gqvs.js → highlighted-body-KPVGNVTW-CZcNaoxi.js} +1 -1
  39. package/dist/web/client/assets/horizontal-resize-5AxYvGLA.js +1 -0
  40. package/dist/web/client/assets/index-BJIGh8ag.js +12 -0
  41. package/dist/web/client/assets/{input-CxZp56Im.js → input-BceH49B1.js} +1 -1
  42. package/dist/web/client/assets/{input-group-D7lAfKHR.js → input-group-DThl_vkS.js} +1 -1
  43. package/dist/web/client/assets/ipython-tool-CuSGRhXl.js +3 -0
  44. package/dist/web/client/assets/is-ref-object-CEXqIz6L.js +1 -0
  45. package/dist/web/client/assets/loader-circle-BmKYM_C4.js +1 -0
  46. package/dist/web/client/assets/markdown-C-Y9gskI.js +2 -0
  47. package/dist/web/client/assets/{markdown-code-CDTRq-HZ.js → markdown-code-BqFVdovL.js} +1 -1
  48. package/dist/web/client/assets/mermaid-HWGCJPDP-CVNXPao6.js +1 -0
  49. package/dist/web/client/assets/{message-queue-Dl8wbCOu.js → message-queue-CPYj2iaw.js} +1 -1
  50. package/dist/web/client/assets/{model-selector-list-CHD8lMAl.js → model-selector-list-DDsuJCgB.js} +1 -1
  51. package/dist/web/client/assets/{notify-DjVixft7.js → notify-GSsGEKtR.js} +1 -1
  52. package/dist/web/client/assets/{openui-renderer-C4e9FOVR.js → openui-renderer-l1qI5JDt.js} +41 -41
  53. package/dist/web/client/assets/package-BkC-HSi-.js +1 -0
  54. package/dist/web/client/assets/pencil-Cbgq3ybX.js +1 -0
  55. package/dist/web/client/assets/plug-wCz-036u.js +1 -0
  56. package/dist/web/client/assets/prompt-input-a7UP_MAw.js +1 -0
  57. package/dist/web/client/assets/{prompt-suggestions-BNyTcyWg.js → prompt-suggestions-ULqmPijZ.js} +1 -1
  58. package/dist/web/client/assets/provider-catalog-L0c-bZv6.js +1 -0
  59. package/dist/web/client/assets/provider-label-Buq3HZrP.js +1 -0
  60. package/dist/web/client/assets/react-Cvdyeg_0.js +1 -0
  61. package/dist/web/client/assets/react-dom-B7th3XGm.js +1 -0
  62. package/dist/web/client/assets/refresh-cw-CqPE3kNY.js +1 -0
  63. package/dist/web/client/assets/{repl-panel-L9dmPqio.js → repl-panel-UQN9UFG7.js} +1 -1
  64. package/dist/web/client/assets/resource-helpers-CKbSmzpw.js +2 -0
  65. package/dist/web/client/assets/{resources-panel-mT-aMCvV.js → resources-panel-kp_UjnpX.js} +1 -1
  66. package/dist/web/client/assets/right-panel-context-DHKWoetk.js +1 -0
  67. package/dist/web/client/assets/right-panel-registry-BqtgZw7Z.js +2 -0
  68. package/dist/web/client/assets/rotate-ccw-DLkfsmG9.js +1 -0
  69. package/dist/web/client/assets/routes-C37r2W1K.js +16 -0
  70. package/dist/web/client/assets/safe-external-url-BnEhm9A0.js +1 -0
  71. package/dist/web/client/assets/search-Cb6fFWew.js +1 -0
  72. package/dist/web/client/assets/{session-reasoning-panel-8D2P7iaJ.js → session-reasoning-panel-BAtKTsjn.js} +1 -1
  73. package/dist/web/client/assets/session-tool-renderer-pGdW2MnV.js +1389 -0
  74. package/dist/web/client/assets/{session-tree-panel-CM4_wwrM.js → session-tree-panel-DF3kuF0P.js} +1 -1
  75. package/dist/web/client/assets/settings-dialog-BRWheaBZ.js +2 -0
  76. package/dist/web/client/assets/{skeleton-C3mo31Qu.js → skeleton-D5Y9nBfp.js} +1 -1
  77. package/dist/web/client/assets/{skeleton-loaders-BMa_G4yX.js → skeleton-loaders-DOKGa7CW.js} +1 -1
  78. package/dist/web/client/assets/sparkles-C4VQyMox.js +1 -0
  79. package/dist/web/client/assets/spinner-C3sPnLdu.js +1 -0
  80. package/dist/web/client/assets/square-BbTF3gLc.js +1 -0
  81. package/dist/web/client/assets/square-terminal-BLq2bQVF.js +1 -0
  82. package/dist/web/client/assets/{subagent-chat-panel-BESrXxAR.js → subagent-chat-panel-B6d4Z3bV.js} +1 -1
  83. package/dist/web/client/assets/subagent-transcript-CQuPs6N4.js +1 -0
  84. package/dist/web/client/assets/{subagents-panel-8aKOwWLs.js → subagents-panel-ajf--C_-.js} +1 -1
  85. package/dist/web/client/assets/sun-C7zg8Oas.js +1 -0
  86. package/dist/web/client/assets/{surfaces-CpfsGAIA.js → surfaces-BULKVm-B.js} +1 -1
  87. package/dist/web/client/assets/switch-CoSNSJEY.js +1 -0
  88. package/dist/web/client/assets/terminal-Ceucj7us.js +1 -0
  89. package/dist/web/client/assets/toast-CS0pnDlS.js +1 -0
  90. package/dist/web/client/assets/tokens-BcUIpW6Y.js +1 -0
  91. package/dist/web/client/assets/tool-result-C-vs_tjQ.js +4 -0
  92. package/dist/web/client/assets/tool-timeline-B4ci1oJg.js +1 -0
  93. package/dist/web/client/assets/triangle-alert-BuzmrrqI.js +1 -0
  94. package/dist/web/client/assets/types-Cr5Z97oW.js +1 -0
  95. package/dist/web/client/assets/{ui-preferences-aG2U2jjW.js → ui-preferences-1YaENqef.js} +1 -1
  96. package/dist/web/client/assets/{use-presence-7I2qv4qI.js → use-presence-D2YmRKr3.js} +1 -1
  97. package/dist/web/client/assets/{use-reduced-motion-BOcG709U.js → use-reduced-motion-CaQBb3Qc.js} +2 -2
  98. package/dist/web/client/assets/{useBaseUiId-D9ZGPZ6f.js → useBaseUiId-BlzQUkVG.js} +1 -1
  99. package/dist/web/client/assets/{useControlled-CgAAWIy9.js → useControlled-CkQSkSv1.js} +1 -1
  100. package/dist/web/client/assets/utils-Dpy9ZFOr.js +1 -0
  101. package/dist/web/client/assets/virtualized-turn-list-Bcq088gZ.js +6 -0
  102. package/dist/web/client/assets/workspace-panel-CjKMroC6.js +1 -0
  103. package/dist/web/client/assets/{workspace-path-nav-DqPbETfJ.js → workspace-path-nav-DmxBrMV6.js} +2 -2
  104. package/dist/web/client/assets/wrench-BYnD147U.js +1 -0
  105. package/dist/web/client/assets/x-DEU6H3M-.js +1 -0
  106. package/dist/web/client/bundle-budget.json +6 -6
  107. package/dist/web/server/_tanstack-start-manifest_v-BZR0i182-OLTGGEDQ.js +96 -0
  108. package/dist/web/server/{artifacts-panel-CwLVBqyi-CDORJY75.js → artifacts-panel-BySfu7im-AKBWHYJS.js} +73 -66
  109. package/dist/web/server/{chat-command-palette-DUha04ia-5OV7WVJZ.js → chat-command-palette-BLGKnp-w-OKFIKD3T.js} +52 -45
  110. package/dist/web/server/{chunk-ADYZWC5L.js → chunk-22XP6PHK.js} +50 -11
  111. package/dist/web/server/{chunk-T2UTBHJ4.js → chunk-2GQATGF4.js} +51 -39
  112. package/dist/web/server/{chunk-XEG4JTND.js → chunk-2HOITUWV.js} +5 -5
  113. package/dist/web/server/{chunk-NZ6KQT2X.js → chunk-2XQYM4KB.js} +2 -2
  114. package/dist/web/server/{chunk-K6PTNSCW.js → chunk-36BG6OPK.js} +2 -2
  115. package/dist/web/server/chunk-3OOZPQZF.js +51 -0
  116. package/dist/web/server/{chunk-DP26GVWH.js → chunk-3YYNG52U.js} +5772 -4758
  117. package/dist/web/server/{chunk-TU2WNRAL.js → chunk-47TH5VUT.js} +15 -13
  118. package/dist/web/server/{chunk-O2IC376F.js → chunk-4B2PJSK5.js} +107 -1787
  119. package/dist/web/server/chunk-4IVORBQD.js +39 -0
  120. package/dist/web/server/{chunk-B2LF64HM.js → chunk-4LBXVBM7.js} +5 -5
  121. package/dist/web/server/{chunk-DKD32TRM.js → chunk-5FIJPXUA.js} +3343 -14
  122. package/dist/web/server/{chunk-YDDDSVNB.js → chunk-5VPNOUVY.js} +7 -5
  123. package/dist/web/server/chunk-7LUHWO5G.js +28 -0
  124. package/dist/web/server/chunk-7SZKAHLD.js +25 -0
  125. package/dist/web/server/{chunk-UE32PAV2.js → chunk-ACZS5EEZ.js} +4 -4
  126. package/dist/web/server/{chunk-CAPTFJOC.js → chunk-AWVHN432.js} +4 -4
  127. package/dist/web/server/{chunk-SDV3P3IW.js → chunk-BMXYQRMJ.js} +96 -78
  128. package/dist/web/server/{chunk-OVJYUWSQ.js → chunk-C2YGLMFE.js} +1 -1
  129. package/dist/web/server/{chunk-7HXCGBUP.js → chunk-CIE2PLNB.js} +5 -5
  130. package/dist/web/server/chunk-CMOAC245.js +28 -0
  131. package/dist/web/server/{chunk-7FK6YEMA.js → chunk-CRCVWYBA.js} +2 -9
  132. package/dist/web/server/chunk-DIVIHC5K.js +100 -0
  133. package/dist/web/server/{chunk-XJ6TGSUB.js → chunk-EKVRPCBJ.js} +1 -1
  134. package/dist/web/server/{chunk-ZNFXBGLK.js → chunk-ERYPONRF.js} +1 -1
  135. package/dist/web/server/chunk-F3OV445J.js +25 -0
  136. package/dist/web/server/{chunk-5727TXOK.js → chunk-F5DJQ3PQ.js} +36 -36
  137. package/dist/web/server/{chunk-XSOUURPF.js → chunk-FAJILEF2.js} +142 -110
  138. package/dist/web/server/{chunk-UM3RHJNZ.js → chunk-FF2M3MLP.js} +2 -2
  139. package/dist/web/server/{chunk-IPV4GLJL.js → chunk-FHZAFF2A.js} +7 -24
  140. package/dist/web/server/chunk-FOMB2JR7.js +26 -0
  141. package/dist/web/server/{chunk-5RTGRTPD.js → chunk-FVWPODLT.js} +7 -6
  142. package/dist/web/server/chunk-G3WQTXJY.js +25 -0
  143. package/dist/web/server/{chunk-YCCF676T.js → chunk-GLNLSEZJ.js} +7 -7
  144. package/dist/web/server/chunk-GNDXVFJY.js +28 -0
  145. package/dist/web/server/{chunk-HGVJEUV4.js → chunk-GR765UTQ.js} +4 -4
  146. package/dist/web/server/{chunk-RXUMFFUV.js → chunk-GSG3K6RA.js} +2 -2
  147. package/dist/web/server/chunk-HFN4TNR3.js +31 -0
  148. package/dist/web/server/{chunk-ETCO5KZK.js → chunk-I36LJXNY.js} +5 -5
  149. package/dist/web/server/{chunk-3Q3QKLHC.js → chunk-IIPUA4LB.js} +248 -212
  150. package/dist/web/server/{chunk-7PQTPSEE.js → chunk-INWLYZZ6.js} +1 -1
  151. package/dist/web/server/chunk-JCK6B7ZW.js +1677 -0
  152. package/dist/web/server/chunk-JEQQEY6O.js +30 -0
  153. package/dist/web/server/{chunk-V5IFFLZQ.js → chunk-JLGBOCFM.js} +145 -111
  154. package/dist/web/server/chunk-JVXQQYXB.js +154 -0
  155. package/dist/web/server/{chunk-KZ35W5M7.js → chunk-JZ2WBCIH.js} +664 -659
  156. package/dist/web/server/chunk-KABZXD6N.js +152 -0
  157. package/dist/web/server/{chunk-FTLJ66KU.js → chunk-L2SVMQWB.js} +12 -43
  158. package/dist/web/server/chunk-LOFZS555.js +28 -0
  159. package/dist/web/server/{chunk-MJXXVQNA.js → chunk-LQRH6BP6.js} +25 -18
  160. package/dist/web/server/{chunk-WU6X3GPJ.js → chunk-MTVGA2MH.js} +72 -52
  161. package/dist/web/server/{chunk-DLA5TLKX.js → chunk-NHZRY22Z.js} +110 -39
  162. package/dist/web/server/chunk-NZ5YXXQ5.js +39 -0
  163. package/dist/web/server/chunk-ONWT54IL.js +148 -0
  164. package/dist/web/server/{chunk-E5HALE4M.js → chunk-OYWUPJ72.js} +2 -2
  165. package/dist/web/server/{chunk-YVGCPUAW.js → chunk-PISNXFEK.js} +3 -3
  166. package/dist/web/server/{chunk-33QA7BQJ.js → chunk-PYTU4DGR.js} +16 -10
  167. package/dist/web/server/{chunk-7E76R7MB.js → chunk-QHCQDVCQ.js} +1 -2
  168. package/dist/web/server/{chunk-FMAYMBRS.js → chunk-QN7KFCUW.js} +4318 -3649
  169. package/dist/web/server/chunk-QWWG3YC6.js +25 -0
  170. package/dist/web/server/chunk-RPGWRA2X.js +39 -0
  171. package/dist/web/server/chunk-RPWKCJHL.js +18 -0
  172. package/dist/web/server/chunk-RWYAKZCZ.js +39 -0
  173. package/dist/web/server/chunk-SGMJ5CGW.js +36 -0
  174. package/dist/web/server/{chunk-BQROC4PL.js → chunk-TNZKPEE6.js} +13 -7
  175. package/dist/web/server/chunk-TSOBRZPG.js +41 -0
  176. package/dist/web/server/{chunk-RJNGEU6C.js → chunk-UIUZ4ETR.js} +2 -2
  177. package/dist/web/server/{chunk-TLNZNR7C.js → chunk-UUDBEYKV.js} +2 -2
  178. package/dist/web/server/{chunk-HQ5TEXHT.js → chunk-UXS5E6OE.js} +4 -4
  179. package/dist/web/server/chunk-V7PDLH3T.js +73 -0
  180. package/dist/web/server/chunk-VCQ65B3G.js +28 -0
  181. package/dist/web/server/{chunk-TR2GA5OF.js → chunk-VHLBXWEN.js} +55 -40
  182. package/dist/web/server/{chunk-S2IBIJIG.js → chunk-WU6KNEGU.js} +46 -31
  183. package/dist/web/server/chunk-X37KO4BO.js +29 -0
  184. package/dist/web/server/chunk-X5AQ7KHU.js +22 -0
  185. package/dist/web/server/chunk-XZCIEF54.js +28 -0
  186. package/dist/web/server/{chunk-7NZ3FJDA.js → chunk-YBCP4V6T.js} +2 -2
  187. package/dist/web/server/{chunk-7UTDOTOU.js → chunk-YKJJDQAK.js} +28 -100
  188. package/dist/web/server/chunk-Z4OTKGMN.js +25 -0
  189. package/dist/web/server/chunk-ZJIELDZL.js +39 -0
  190. package/dist/web/server/{chunk-UDD5W4CR.js → chunk-ZMF45HAO.js} +58 -45
  191. package/dist/web/server/chunk-ZNED4KTU.js +105 -0
  192. package/dist/web/server/chunk-ZNI5AL4B.js +30 -0
  193. package/dist/web/server/create-project-dialog-CigfFgAj-QS27NAJH.js +295 -0
  194. package/dist/web/server/{fork-picker-dialog-DeMiLZtS-WTRTTP64.js → fork-picker-dialog-B5J-S5Nm-QOMVVHI7.js} +11 -11
  195. package/dist/web/server/{highlighted-body-KPVGNVTW-Ct6g7FVa-YZHVMLW4.js → highlighted-body-KPVGNVTW-D4Xsgab0-BZNKZ2YE.js} +3 -3
  196. package/dist/web/server/{markdown-BzNejPoZ-6ITTDAV6.js → markdown-DaTMVcnu-37DWI2JW.js} +4 -4
  197. package/dist/web/server/{markdown-code-DAwXuW6m-HHVELO6I.js → markdown-code-Cvz3a-x3-WAD4KC4A.js} +5 -5
  198. package/dist/web/server/{mermaid-HWGCJPDP-Ca26PwPZ-5EWRESLM.js → mermaid-HWGCJPDP-CDDePcVz-4BWFRGWL.js} +2 -2
  199. package/dist/web/server/{message-queue-Demph1x4-GGXJUUKO.js → message-queue-BsrLcNPX-CUCBSF6U.js} +15 -14
  200. package/dist/web/server/{model-selector-list-BeGQHwKV-UJYFO4KX.js → model-selector-list-Csw4nOra-IOMN5JMO.js} +23 -23
  201. package/dist/web/server/openui-renderer-TbIFXEW2-BET2OXM2.js +39 -0
  202. package/dist/web/server/{prompt-suggestions-yPZqX__K-3VGJC4IF.js → prompt-suggestions-D6RXFQF4-7WHYRNMN.js} +5 -5
  203. package/dist/web/server/{repl-panel-CgUF1qUw-3DFD2V53.js → repl-panel-CBwh0VGD-USDEOGGJ.js} +8 -9
  204. package/dist/web/server/{resources-panel-ChUliWV--JITAGS6Q.js → resources-panel-rn64m-sL-7QXEGRNX.js} +9 -10
  205. package/dist/web/server/{router-DfG45nTQ-3VXEUYG5.js → router-RPObiwZR-AFMFSYSZ.js} +2608 -164
  206. package/dist/web/server/{routes-B9F9UfF1-UN2IVBMJ.js → routes-Dn-deuPY-MDXEQXRU.js} +1967 -2337
  207. package/dist/web/server/server.js +6 -6
  208. package/dist/web/server/{session-insights-panel-xgrkX1Rp-FDNURBXZ.js → session-insights-panel-DKkakWj6-ITHKDXF4.js} +1 -1
  209. package/dist/web/server/{session-reasoning-panel-m1RgcIph-NUXGXVKE.js → session-reasoning-panel-CXMCAM8C-HZMR5JCO.js} +9 -10
  210. package/dist/web/server/session-tool-renderer-jldnNioy-5ATOVAG5.js +46 -0
  211. package/dist/web/server/{session-tree-panel-rS0t1wbf-HNA6AJBY.js → session-tree-panel-WaHHv775-HRUHFSFO.js} +11 -11
  212. package/dist/web/server/{settings-dialog-CqkrDSnm-LFEKSS7Y.js → settings-dialog-CzeangBl-YKL7CLPF.js} +550 -377
  213. package/dist/web/server/{start-DVUbMfrb-ELVIFRUY.js → start-QK6aG02q-RXFV6K5L.js} +1 -1
  214. package/dist/web/server/{subagent-chat-panel-Cf7QdDqH-DPPSVLSY.js → subagent-chat-panel-Fa31QewE-YDPOKN74.js} +49 -47
  215. package/dist/web/server/{subagents-panel-_JsUw-6t-MZWM5P45.js → subagents-panel-DjOcQxp4-GZYOZOYC.js} +46 -45
  216. package/dist/web/server/tool-timeline-CfuizRid-L3Y3OSCH.js +15 -0
  217. package/dist/web/server/{workspace-panel-BHEB9nRM-Y6KGIVGP.js → workspace-panel-BU50q4Bu-JHTQPR6R.js} +109 -93
  218. package/package.json +1 -1
  219. package/dist/web/client/assets/agent-disclosure-CMrxF7L-.js +0 -1
  220. package/dist/web/client/assets/analytics-stub-C2vgmGm_.js +0 -1
  221. package/dist/web/client/assets/artifacts-panel-ClDpGWOU.js +0 -1
  222. package/dist/web/client/assets/bot-DbB9BKL0.js +0 -1
  223. package/dist/web/client/assets/bundle-mjs-cJTHqqzI.js +0 -1
  224. package/dist/web/client/assets/chat-BVMnC5Qh.js +0 -52
  225. package/dist/web/client/assets/chat-command-palette-YuyaJNbi.js +0 -1
  226. package/dist/web/client/assets/check-B3LlvM65.js +0 -1
  227. package/dist/web/client/assets/chevron-down-DUUprRP5.js +0 -1
  228. package/dist/web/client/assets/chevron-right-NVqQIoiO.js +0 -1
  229. package/dist/web/client/assets/chunk-YOKDWASO-Bte3iwlH.js +0 -143
  230. package/dist/web/client/assets/citations-DXqV2NLy.js +0 -1
  231. package/dist/web/client/assets/createLucideIcon-_dfI7Arx.js +0 -1
  232. package/dist/web/client/assets/dist-52wg4XPY.js +0 -1
  233. package/dist/web/client/assets/eye-CDHqtVoE.js +0 -1
  234. package/dist/web/client/assets/file-text-TmalmYrb.js +0 -1
  235. package/dist/web/client/assets/folder-vuNT4shY.js +0 -1
  236. package/dist/web/client/assets/gauge-BsDqNM1A.js +0 -1
  237. package/dist/web/client/assets/git-branch-CTq9aACS.js +0 -1
  238. package/dist/web/client/assets/globals-BtCXZXL_.css +0 -2
  239. package/dist/web/client/assets/hard-drive-BT7UxHQu.js +0 -1
  240. package/dist/web/client/assets/horizontal-resize-VLjLByUV.js +0 -1
  241. package/dist/web/client/assets/index-B9aXxpOv.js +0 -12
  242. package/dist/web/client/assets/ipython-tool-CkHaO3PW.js +0 -3
  243. package/dist/web/client/assets/is-ref-object-BcRWZ4l7.js +0 -1
  244. package/dist/web/client/assets/loader-circle-B5GIZGxd.js +0 -1
  245. package/dist/web/client/assets/markdown-BHkByC9K.js +0 -2
  246. package/dist/web/client/assets/mermaid-HWGCJPDP-CY3N5ECk.js +0 -1
  247. package/dist/web/client/assets/package-BKBPgwMP.js +0 -1
  248. package/dist/web/client/assets/pencil-CdO6qfv3.js +0 -1
  249. package/dist/web/client/assets/plug-BRROUIw-.js +0 -1
  250. package/dist/web/client/assets/prompt-input-WaGSKZCU.js +0 -1
  251. package/dist/web/client/assets/provider-catalog-ClVvphe0.js +0 -1
  252. package/dist/web/client/assets/provider-label-CwZ-KDxk.js +0 -1
  253. package/dist/web/client/assets/react-CwJFpaho.js +0 -1
  254. package/dist/web/client/assets/react-dom-DX3XddaT.js +0 -1
  255. package/dist/web/client/assets/refresh-cw-l9WPHRkq.js +0 -1
  256. package/dist/web/client/assets/resource-helpers-BuWybA8l.js +0 -2
  257. package/dist/web/client/assets/right-panel-context-CS8tJMzE.js +0 -1
  258. package/dist/web/client/assets/right-panel-registry-BnYCffmM.js +0 -2
  259. package/dist/web/client/assets/rotate-ccw-CfGhzOv7.js +0 -1
  260. package/dist/web/client/assets/routes-DUontXSG.js +0 -16
  261. package/dist/web/client/assets/safe-external-url-BbAom7Bm.js +0 -1
  262. package/dist/web/client/assets/search-BjcXAUrI.js +0 -1
  263. package/dist/web/client/assets/session-tool-renderer-Bd3dsE2D.js +0 -1395
  264. package/dist/web/client/assets/settings-dialog-DMTD9m6z.js +0 -2
  265. package/dist/web/client/assets/sparkles-BY5MFyk6.js +0 -1
  266. package/dist/web/client/assets/square-DQaQu9bp.js +0 -1
  267. package/dist/web/client/assets/square-terminal-BsopiuN7.js +0 -1
  268. package/dist/web/client/assets/subagent-transcript-CAqFJfMj.js +0 -1
  269. package/dist/web/client/assets/sun-D0llhiMU.js +0 -1
  270. package/dist/web/client/assets/switch-D3FhZU-S.js +0 -1
  271. package/dist/web/client/assets/terminal-BQAKkBY6.js +0 -1
  272. package/dist/web/client/assets/toast-lnCWGgSE.js +0 -1
  273. package/dist/web/client/assets/tokens-Ch5WqXC_.js +0 -1
  274. package/dist/web/client/assets/tool-result-B_yb2JoE.js +0 -4
  275. package/dist/web/client/assets/tool-timeline-VnMRQoLS.js +0 -1
  276. package/dist/web/client/assets/triangle-alert-GAYh_5d3.js +0 -1
  277. package/dist/web/client/assets/utils-Brtgag-m.js +0 -1
  278. package/dist/web/client/assets/virtualized-turn-list-mL3ONUUA.js +0 -6
  279. package/dist/web/client/assets/workspace-panel-CKF5JQl2.js +0 -1
  280. package/dist/web/client/assets/wrench-Myc12BTA.js +0 -1
  281. package/dist/web/client/assets/x-BGsDD848.js +0 -1
  282. package/dist/web/server/_tanstack-start-manifest_v-Cm8xE-Rb-TMLYN3GY.js +0 -93
  283. package/dist/web/server/chunk-2ST2ULW7.js +0 -24
  284. package/dist/web/server/chunk-3C4CFCIS.js +0 -19
  285. package/dist/web/server/chunk-3IHTZSBY.js +0 -22
  286. package/dist/web/server/chunk-4QD4PCVP.js +0 -19
  287. package/dist/web/server/chunk-4ZIEVI5O.js +0 -63
  288. package/dist/web/server/chunk-7CNGNFFK.js +0 -23
  289. package/dist/web/server/chunk-AHTO6GDS.js +0 -33
  290. package/dist/web/server/chunk-CHEC7TWB.js +0 -22
  291. package/dist/web/server/chunk-D7ELZVTI.js +0 -33
  292. package/dist/web/server/chunk-GS2IZGRC.js +0 -19
  293. package/dist/web/server/chunk-H5D5DX3K.js +0 -75
  294. package/dist/web/server/chunk-HFQZLPU2.js +0 -29
  295. package/dist/web/server/chunk-JBLHIEVG.js +0 -22
  296. package/dist/web/server/chunk-JDCCC7A7.js +0 -3382
  297. package/dist/web/server/chunk-JIULUYHT.js +0 -24
  298. package/dist/web/server/chunk-KBWUBWVJ.js +0 -60
  299. package/dist/web/server/chunk-LJ6Y7DBH.js +0 -128
  300. package/dist/web/server/chunk-M5RSPNYN.js +0 -22
  301. package/dist/web/server/chunk-O2DUZJYK.js +0 -19
  302. package/dist/web/server/chunk-OKL5ZRVB.js +0 -33
  303. package/dist/web/server/chunk-OMPXUTMX.js +0 -33
  304. package/dist/web/server/chunk-OOXWPL22.js +0 -22
  305. package/dist/web/server/chunk-SFTKGQ7H.js +0 -33
  306. package/dist/web/server/chunk-TNL4YV63.js +0 -29
  307. package/dist/web/server/chunk-UCA4WN66.js +0 -45
  308. package/dist/web/server/chunk-WWJF4RO2.js +0 -19
  309. package/dist/web/server/chunk-X7D6GFQU.js +0 -34
  310. package/dist/web/server/chunk-XA42CHF2.js +0 -22
  311. package/dist/web/server/openui-renderer-B4z18Brm-HSMKJ47D.js +0 -39
  312. package/dist/web/server/session-tool-renderer-CT65wuet-RQBMXHEZ.js +0 -46
  313. package/dist/web/server/tool-timeline-QL9k5dzA-RLU26HXT.js +0 -16
@@ -1,2 +0,0 @@
1
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-CwJFpaho.js";import{t as n}from"./jsx-runtime-NZYk81nU.js";import{$ as r,K as i,Y as a,q as o,t as s}from"./button-Dl0ce3Y5.js";import{t as c}from"./utils-Brtgag-m.js";import{P as l,T as u,et as d,nt as f,rt as p}from"./createBaseUIEventDetails-B58Jldei.js";import{r as m}from"./toast-lnCWGgSE.js";import{A as h,a as g,c as _,i as v,o as y,p as b,r as x,u as S,y as C}from"./provider-catalog-ClVvphe0.js";import{t as w}from"./useBaseUiId-D9ZGPZ6f.js";import{t as T}from"./createLucideIcon-_dfI7Arx.js";import{a as E,c as D,i as O,n as k,o as A,r as j,s as M,t as N}from"./provider-label-CwZ-KDxk.js";import{t as P}from"./check-B3LlvM65.js";import{t as F}from"./chevron-right-NVqQIoiO.js";import{t as I}from"./loader-circle-B5GIZGxd.js";import{i as L,r as R,t as z}from"./sparkles-BY5MFyk6.js";import{t as B}from"./eye-CDHqtVoE.js";import{t as V}from"./hard-drive-BT7UxHQu.js";import{i as H,n as U,r as W,t as G}from"./sun-D0llhiMU.js";import{t as ee}from"./pencil-CdO6qfv3.js";import{t as te}from"./plug-BRROUIw-.js";import{a as K,n as ne,r as re}from"./right-panel-context-CS8tJMzE.js";import{t as ie}from"./refresh-cw-l9WPHRkq.js";import{t as ae}from"./rotate-ccw-CfGhzOv7.js";import{t as q}from"./search-BjcXAUrI.js";import{a as oe,n as se,r as ce}from"./ui-preferences-aG2U2jjW.js";import{t as J}from"./notify-DjVixft7.js";import{c as le,f as ue,l as de,o as fe}from"./tokens-Ch5WqXC_.js";import{t as pe}from"./input-CxZp56Im.js";import{a as me,i as he,n as ge,o as _e,r as ve,s as ye,t as be}from"./alert-dialog-CYE37KMM.js";import{a as xe,n as Se,o as Ce,r as we,t as Te}from"./dialog-BzcIOvFC.js";import{a as Y,c as Ee,i as De,n as X,r as Oe,s as ke,t as Ae}from"./switch-D3FhZU-S.js";import{a as je,i as Me,n as Ne,r as Pe,t as Fe}from"./input-group-D7lAfKHR.js";var Ie=T(`box`,[[`path`,{d:`M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z`,key:`hh9hay`}],[`path`,{d:`m3.3 7 8.7 5 8.7-5`,key:`g66t2b`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}]]),Le=T(`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`}]]),Re=T(`key-round`,[[`path`,{d:`M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z`,key:`1s6t7t`}],[`circle`,{cx:`16.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`w0ekpg`}]]),ze=T(`layers`,[[`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z`,key:`zw3jo`}],[`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`,key:`1wduqc`}],[`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`,key:`kqbvx6`}]]),Be=T(`lock`,[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 10 0v4`,key:`fwvmzm`}]]),Ve=T(`message-square`,[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}]]),He=T(`paintbrush`,[[`path`,{d:`m14.622 17.897-10.68-2.913`,key:`vj2p1u`}],[`path`,{d:`M18.376 2.622a1 1 0 1 1 3.002 3.002L17.36 9.643a.5.5 0 0 0 0 .707l.944.944a2.41 2.41 0 0 1 0 3.408l-.944.944a.5.5 0 0 1-.707 0L8.354 7.348a.5.5 0 0 1 0-.707l.944-.944a2.41 2.41 0 0 1 3.408 0l.944.944a.5.5 0 0 0 .707 0z`,key:`18tc5c`}],[`path`,{d:`M9 8c-1.804 2.71-3.97 3.46-6.583 3.948a.507.507 0 0 0-.302.819l7.32 8.883a1 1 0 0 0 1.185.204C12.735 20.405 16 16.792 16 15`,key:`ytzfxy`}]]),Ue=T(`save`,[[`path`,{d:`M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z`,key:`1c8476`}],[`path`,{d:`M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7`,key:`1ydtos`}],[`path`,{d:`M7 3v4a1 1 0 0 0 1 1h7`,key:`t51u73`}]]),We=T(`star`,[[`path`,{d:`M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z`,key:`r04s7s`}]]),Ge=T(`tag`,[[`path`,{d:`M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z`,key:`vktsd0`}],[`circle`,{cx:`7.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`kqv944`}]]),Ke=T(`users`,[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`path`,{d:`M16 3.128a4 4 0 0 1 0 7.744`,key:`16gr8j`}],[`path`,{d:`M22 21v-2a4 4 0 0 0-3-3.87`,key:`kshegd`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}]]),Z=e(t(),1),Q=n(),qe=new Set([`off`,`minimal`,`low`,`medium`,`high`,`xhigh`,`max`]),Je=new Map,Ye=500;function Xe(e){let t=Je.get(e);if(t)return t;let n=RegExp(`^${e.split(``).map(e=>e===`*`?`.*`:e===`?`?`.`:tt(e)).join(``)}$`);return Je.size>=Ye&&Je.clear(),Je.set(e,n),n}function Ze(e,t){return t===void 0||t.length!==0&&t.some(t=>Qe(e,t))}function Qe(e,t){let n=$e(t.trim()).toLowerCase(),r=[e.id,e.modelId,e.name,e.key,e.provider&&e.modelId?`${e.provider}/${e.modelId}`:void 0,e.provider&&e.id?`${e.provider}/${e.id}`:void 0].filter(e=>typeof e==`string`).map(e=>e.toLowerCase());if(!et(n))return r.includes(n);let i=Xe(n);return r.some(e=>i.test(e))}function $e(e){let t=e.lastIndexOf(`:`);if(t===-1)return e;let n=e.slice(t+1);return qe.has(n)?e.slice(0,t):e}function et(e){return e.includes(`*`)||e.includes(`?`)}function tt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function nt(e,t){return`${e}/${t}`}function rt({className:e,...t}){return(0,Q.jsx)(`nav`,{"aria-label":`breadcrumb`,"data-slot":`breadcrumb`,className:c(e),...t})}function it({className:e,...t}){return(0,Q.jsx)(`ol`,{"data-slot":`breadcrumb-list`,className:c(`flex flex-wrap items-center gap-1.5 text-sm wrap-break-word text-muted-foreground`,e),...t})}function at({className:e,...t}){return(0,Q.jsx)(`li`,{"data-slot":`breadcrumb-item`,className:c(`inline-flex items-center gap-1`,e),...t})}function ot({className:e,...t}){return(0,Q.jsx)(`span`,{"data-slot":`breadcrumb-page`,"aria-current":`page`,className:c(`font-normal text-foreground`,e),...t})}function st({children:e,className:t,...n}){return(0,Q.jsx)(`li`,{"data-slot":`breadcrumb-separator`,role:`presentation`,"aria-hidden":`true`,className:c(`[&>svg]:size-3.5`,t),...n,children:e??(0,Q.jsx)(F,{})})}var ct=Z.createContext(void 0);function lt(){let e=Z.useContext(ct);if(e===void 0)throw Error(f(53));return e}function ut(e,t,n){if(!e)return 0;let r=getComputedStyle(e),i=`${t}${n===`x`?`Inline`:`Block`}`,a=parseFloat(r[`${i}Start`]);return n===`x`&&t===`margin`?a*2:a+parseFloat(r[`${i}End`])}var dt=`data-has-overflow-x`,ft=`data-has-overflow-y`,pt=`data-overflow-x-start`,mt=`data-overflow-x-end`,ht=`data-overflow-y-start`,gt=`data-overflow-y-end`,_t=e=>t=>t?{[e]:``}:null,vt={hasOverflowX:_t(dt),hasOverflowY:_t(ft),overflowXStart:_t(pt),overflowXEnd:_t(mt),overflowYStart:_t(ht),overflowYEnd:_t(gt),cornerHidden:()=>null},yt=`--scroll-area-corner-height`,bt=`--scroll-area-corner-width`,xt=`data-orientation`,St={x:0,y:0},Ct={width:0,height:0},wt={xStart:!1,xEnd:!1,yStart:!1,yEnd:!1},Tt={x:!0,y:!0,corner:!0},Et=Z.forwardRef(function(e,t){let{render:n,className:a,overflowEdgeThreshold:o,style:s,...c}=e,{xStart:l,xEnd:f,yStart:p,yEnd:m}=Dt(o),h=w(),g=r(),v=r(),{nonce:y,disableStyleElements:b}=_(),[x,C]=Z.useState(!1),[T,E]=Z.useState(!1),[D,O]=Z.useState(!1),[k,A]=Z.useState(!1),[j,M]=Z.useState(!1),[N,P]=Z.useState(Ct),[F,I]=Z.useState(Ct),[L,R]=Z.useState(wt),[z,B]=Z.useState(Tt),V=Z.useRef(null),H=Z.useRef(null),U=Z.useRef(null),W=Z.useRef(null),G=Z.useRef(null),ee=Z.useRef(null),te=Z.useRef(null),K=Z.useRef(null),ne=Z.useRef(0),re=Z.useRef(0),ie=Z.useRef(0),ae=Z.useRef(0),q=Z.useRef(`vertical`),oe=Z.useRef(St),se=Z.useRef(null);function ce(e){let t=e?O:E,n=e?g:v;t(!0),n.start(500,()=>{t(!1)})}let J=d(e=>{let t=e.x-oe.current.x,n=e.y-oe.current.y;oe.current=e,n!==0&&ce(!0),t!==0&&ce(!1)}),le=d(()=>{let e=H.current;e&&se.current===null&&(se.current=e.style.scrollSnapType,e.style.scrollSnapType=`none`)}),ue=d(e=>{if(e.button!==0||K.current!==null&&(q.current===`vertical`?G.current:ee.current)?.hasPointerCapture(K.current))return;K.current=e.pointerId,ne.current=e.clientY,re.current=e.clientX,q.current=e.currentTarget.getAttribute(xt);let t=H.current;t&&(ie.current=t.scrollTop,ae.current=t.scrollLeft,le()),(q.current===`vertical`?G.current:ee.current)?.setPointerCapture(e.pointerId)}),de=d(e=>{if(e.pointerId!==K.current)return;K.current=null,(q.current===`vertical`?O:E)(!1),se.current!==null&&(H.current&&(H.current.style.scrollSnapType=se.current),se.current=null);let t=q.current===`vertical`?G.current:ee.current;t?.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId)}),fe=d(e=>{if(e.pointerId!==K.current)return;if(e.buttons%2==0){de(e);return}let t=H.current;if(!t)return;let n=q.current===`vertical`,r=n?G.current:ee.current,i=n?U.current:W.current;if(!r||!i)return;let a=n?`y`:`x`,o=ut(i,`padding`,a),s=ut(r,`margin`,a),c=n?r.offsetHeight:r.offsetWidth,l=(n?i.offsetHeight:i.offsetWidth)-c-o-s,u=n?e.clientY-ne.current:e.clientX-re.current,d=l<=0?0:u/l,f=n?t.scrollHeight:t.scrollWidth,p=n?t.clientHeight:t.clientWidth,m=(n?ie.current:ae.current)+d*(f-p);n?t.scrollTop=m:t.scrollLeft=m,e.preventDefault(),ce(n)});function pe(e){A(e.pointerType===`touch`)}function me(e){if(pe(e),e.pointerType!==`touch`){let t=i(V.current,e.target);C(t)}}let he=Z.useMemo(()=>({scrolling:T||D,hasOverflowX:!z.x,hasOverflowY:!z.y,overflowXStart:L.xStart,overflowXEnd:L.xEnd,overflowYStart:L.yStart,overflowYEnd:L.yEnd,cornerHidden:z.corner}),[T,D,z.x,z.y,z.corner,L]),ge={role:`presentation`,onPointerEnter:me,onPointerMove:me,onPointerDown:pe,onPointerLeave(){C(!1)},style:{position:`relative`,[yt]:`${N.height}px`,[bt]:`${N.width}px`}},_e=u(`div`,e,{state:he,ref:[t,V],props:[ge,c],stateAttributesMapping:vt}),ve=Z.useMemo(()=>({handlePointerDown:ue,handlePointerMove:fe,handlePointerUp:de,handleScroll:J,disableViewportSnap:le,cornerSize:N,setCornerSize:P,thumbSize:F,setThumbSize:I,hasMeasuredScrollbar:j,setHasMeasuredScrollbar:M,touchModality:k,cornerRef:te,scrollingX:T,scrollingY:D,hovering:x,setHovering:C,viewportRef:H,scrollbarYRef:U,scrollbarXRef:W,thumbYRef:G,thumbXRef:ee,rootId:h,hiddenState:z,setHiddenState:B,overflowEdges:L,setOverflowEdges:R,viewportState:he,overflowEdgeThreshold:{xStart:l,xEnd:f,yStart:p,yEnd:m}}),[ue,fe,de,J,le,N,F,j,k,T,D,x,h,z,L,he,l,f,p,m]);return(0,Q.jsxs)(ct.Provider,{value:ve,children:[!b&&S.getElement(y),_e]})});function Dt(e){let t=typeof e==`number`?{xStart:e,xEnd:e,yStart:e,yEnd:e}:e;return{xStart:Math.max(0,t?.xStart||0),xEnd:Math.max(0,t?.xEnd||0),yStart:Math.max(0,t?.yStart||0),yEnd:Math.max(0,t?.yEnd||0)}}var Ot=Z.createContext(void 0),kt=`--scroll-area-overflow-x-start`,At=`--scroll-area-overflow-x-end`,jt=`--scroll-area-overflow-y-start`,Mt=`--scroll-area-overflow-y-end`,Nt=`--scroll-area-thumb-height`,Pt=`--scroll-area-thumb-width`,Ft=[kt,At,jt,Mt],It=!1;function Lt(){It||a||(typeof CSS<`u`&&`registerProperty`in CSS&&Ft.forEach(e=>{try{CSS.registerProperty({name:e,syntax:`<length>`,inherits:!1,initialValue:`0px`})}catch{}}),It=!0)}var Rt=Z.forwardRef(function(e,t){let{render:n,className:i,style:a,...o}=e,{viewportRef:s,scrollbarYRef:c,scrollbarXRef:l,thumbYRef:f,thumbXRef:m,cornerRef:h,cornerSize:g,setCornerSize:_,setThumbSize:v,rootId:y,setHiddenState:x,hiddenState:w,setHasMeasuredScrollbar:T,handleScroll:E,touchModality:D,setHovering:O,setOverflowEdges:k,overflowEdgeThreshold:A,viewportState:j}=lt(),M=C(),N=Z.useRef(!0),P=Z.useRef([NaN,NaN,NaN,NaN]),F=r(),I=r(),L=d(()=>{let e=s.current,t=c.current,n=l.current,r=f.current,i=m.current,a=h.current;if(!e)return;let o=e.scrollHeight,u=e.scrollWidth,d=e.clientHeight,p=e.clientWidth,y=e.scrollTop,S=e.scrollLeft,C=P.current,w=Number.isNaN(C[0]);if(C[0]=d,C[1]=o,C[2]=p,C[3]=u,w&&T(!0),o===0||u===0)return;let E=zt(e),D=E.y,O=E.x,j=p/u,N=d/o,F=Math.max(0,u-p),I=Math.max(0,o-d),L=0,R=0;O||(L=b(M===`rtl`?-S:S,F),R=F-L);let z=D?0:b(y,I),B=D?0:I-z,V=O?0:p,H=D?0:d,U=0,W=0;!O&&!D&&(U=t?.offsetWidth||0,W=n?.offsetHeight||0);let G=g.width===0&&g.height===0,ee=G?U:0,te=G?W:0,K=ut(n,`padding`,`x`),ne=ut(t,`padding`,`y`),re=ut(i,`margin`,`x`),ie=ut(r,`margin`,`y`),ae=V-K-re,q=H-ne-ie,oe=n?Math.min(n.offsetWidth-ee,ae):ae,se=t?Math.min(t.offsetHeight-te,q):q,ce=Math.max(16,oe*j),J=Math.max(16,se*N);if(v(e=>Bt(e,{width:ce,height:J})),t&&r){let e=Vt(r,Nt,y,I,o,J,t.offsetHeight-J-ne-ie);r.style.transform=`translate3d(0,${e}px,0)`}if(n&&i){let e=n.offsetWidth-ce-K-re,t=Vt(i,Pt,M===`rtl`?-S:S,F,u,ce,e);i.style.transform=`translate3d(${M===`rtl`?-t:t}px,0,0)`}let le=[L,R,z,B];Ft.forEach((t,n)=>{e.style.setProperty(t,`${le[n]}px`)}),a&&_(e=>Bt(e,{width:U,height:W})),x(e=>Bt(e,E));let ue={xStart:!O&&L>A.xStart,xEnd:!O&&R>A.xEnd,yStart:!D&&z>A.yStart,yEnd:!D&&B>A.yEnd};k(e=>Bt(e,ue))});p(()=>{Lt()},[]),p(()=>{queueMicrotask(L)},[L,w,M,A.xStart,A.xEnd,A.yStart,A.yEnd]),p(()=>{s.current?.matches(`:hover`)&&O(!0)},[s,O]),p(()=>{let e=s.current;if(typeof ResizeObserver>`u`||!e)return;let t=!1,n=new ResizeObserver(()=>{if(!t){t=!0;let n=P.current;if(n[0]===e.clientHeight&&n[1]===e.scrollHeight&&n[2]===e.clientWidth&&n[3]===e.scrollWidth)return}L()});return n.observe(e),I.start(0,()=>{let t=e.getAnimations({subtree:!0});t.length!==0&&Promise.allSettled(t.map(e=>e.finished)).then(L).catch(()=>{})}),()=>{n.disconnect(),I.clear()}},[L,s,I]);function R(){N.current=!1}let z={role:`presentation`,...y&&{"data-id":`${y}-viewport`},tabIndex:w.x&&w.y?-1:0,className:S.className,style:{overflow:`scroll`},onScroll(){s.current&&(L(),(D||!N.current)&&E({x:s.current.scrollLeft,y:s.current.scrollTop}),F.start(100,()=>{N.current=!0}))},onWheel:R,onPointerMove:R,onPointerEnter:R,onKeyDown:R},B=u(`div`,e,{ref:[t,s],state:j,props:[z,o],stateAttributesMapping:vt}),V=Z.useMemo(()=>({computeThumbPosition:L}),[L]);return(0,Q.jsx)(Ot.Provider,{value:V,children:B})});function zt(e){let t=e.clientHeight>=e.scrollHeight,n=e.clientWidth>=e.scrollWidth;return{y:t,x:n,corner:t||n}}function Bt(e,t){for(let n in t)if(e[n]!==t[n])return t;return e}function Vt(e,t,n,r,i,a,o){let s=h(n,0,r),c=n-s,l=Math.max(16,a*i/(i+Math.abs(c)));return e.style.setProperty(t,c?`${l}px`:``),(r?s/r*o:0)+(c>0?a-l:0)}var Ht=Z.createContext(void 0);function Ut(){let e=Z.useContext(Ht);if(e===void 0)throw Error(f(54));return e}var Wt=Z.forwardRef(function(e,t){let{render:n,className:r,orientation:a=`vertical`,keepMounted:s=!1,style:c,...d}=e,{hovering:f,scrollingX:p,scrollingY:m,hiddenState:h,scrollbarYRef:g,scrollbarXRef:_,viewportRef:v,thumbYRef:y,thumbXRef:b,handlePointerDown:x,handlePointerUp:S,handleScroll:w,disableViewportSnap:T,rootId:E,thumbSize:D,hasMeasuredScrollbar:O,viewportState:k}=lt(),A=a===`vertical`,j={...k,hovering:f,scrolling:A?m:p,orientation:a},M=C(),N=!O&&!s,P=A?h.y:h.x,F=s||!P;Z.useEffect(()=>{if(!F)return;let e=v.current,t=A?g.current:_.current;if(!t)return;function n(t){if(!e||t.ctrlKey)return;let n=!A,r=n?`scrollLeft`:`scrollTop`,i=n?t.deltaX:t.deltaY;if(i===0)return;let a=n?e.scrollWidth-e.clientWidth:e.scrollHeight-e.clientHeight,o=n&&M===`rtl`?-a:0,s=n&&M===`rtl`?0:a,c=e[r];c<=o&&i<0||c>=s&&i>0||(t.preventDefault(),e[r]=Math.min(s,Math.max(o,c+i)),w({x:e.scrollLeft,y:e.scrollTop}))}return l(t,`wheel`,n,{passive:!1})},[M,w,A,_,g,F,v]);let I={...E&&{"data-id":`${E}-scrollbar`},"aria-hidden":!0,onPointerDown(e){if(e.button!==0)return;let t=o(e.nativeEvent),n=A?y.current:b.current;if(n&&i(n,t))return;let r=v.current;if(!r)return;let a=A?g.current:_.current;if(!n||!a)return;let s=A?`y`:`x`,c=ut(n,`margin`,s),l=ut(a,`padding`,s),u=A?n.offsetHeight:n.offsetWidth,d=a.getBoundingClientRect(),f=A?e.clientY-d.top-u/2-l+c/2:e.clientX-d.left-u/2-l+c/2,p=A?r.scrollHeight:r.scrollWidth,m=A?r.clientHeight:r.clientWidth,h=(A?a.offsetHeight:a.offsetWidth)-u-l-c;if(h<=0)return;let S=f/h,C=p-m;T(),A?r.scrollTop=S*C:r.scrollLeft=M===`rtl`?-(1-S)*C:S*C,w({x:r.scrollLeft,y:r.scrollTop}),x(e)},onMouseDown(e){e.preventDefault()},onPointerUp:S,onPointerCancel:S,style:{position:`absolute`,touchAction:`none`,WebkitUserSelect:`none`,userSelect:`none`,visibility:N?`hidden`:void 0,...A?{top:0,bottom:`var(${yt})`,insetInlineEnd:0,[Nt]:`${D.height}px`}:{insetInlineStart:0,insetInlineEnd:`var(${bt})`,bottom:0,[Pt]:`${D.width}px`}}},L=u(`div`,e,{ref:[t,A?g:_],state:j,props:[I,d],stateAttributesMapping:vt});return F?(0,Q.jsx)(Ht.Provider,{value:a,children:L}):null}),Gt=Z.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,{thumbYRef:o,thumbXRef:s,handlePointerDown:c,handlePointerMove:l,handlePointerUp:d,scrollingX:f,scrollingY:p,hasMeasuredScrollbar:m}=lt(),h=Ut(),g=h===`vertical`;return u(`div`,e,{ref:[t,g?o:s],state:{scrolling:g?p:f,orientation:h},props:[{onPointerDown:c,onPointerMove:l,onPointerUp:d,onPointerCancel:d,style:{visibility:m?void 0:`hidden`,...g?{height:`var(--scroll-area-thumb-height)`}:{width:`var(--scroll-area-thumb-width)`}}},a]})}),Kt=Z.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,{cornerRef:o,cornerSize:s,hiddenState:c}=lt(),l=u(`div`,e,{ref:[t,o],props:[{"aria-hidden":!0,style:{position:`absolute`,bottom:0,insetInlineEnd:0,width:s.width,height:s.height}},a]});return c.corner?null:l});function qt({className:e,children:t,...n}){return(0,Q.jsxs)(Et,{"data-slot":`scroll-area`,className:c(`relative`,e),...n,children:[(0,Q.jsx)(Rt,{"data-slot":`scroll-area-viewport`,className:`size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1`,children:t}),(0,Q.jsx)(Jt,{}),(0,Q.jsx)(Kt,{})]})}function Jt({className:e,orientation:t=`vertical`,...n}){return(0,Q.jsx)(Wt,{"data-slot":`scroll-area-scrollbar`,"data-orientation":t,orientation:t,className:c(`flex touch-none p-px transition-colors select-none data-horizontal:h-2.5 data-horizontal:flex-col data-horizontal:border-t data-horizontal:border-t-transparent data-vertical:h-full data-vertical:w-2.5 data-vertical:border-l data-vertical:border-l-transparent`,e),...n,children:(0,Q.jsx)(Gt,{"data-slot":`scroll-area-thumb`,className:`relative flex-1 rounded-full bg-border`})})}function Yt({className:e,interactive:t,padding:n,tone:r,...i}){return(0,Q.jsx)(`div`,{className:c(ue({interactive:t,padding:n,tone:r}),e),...i})}function $({icon:e,title:t,subtitle:n,trailing:r,className:i,interactive:a=!0,tone:o=`default`}){return(0,Q.jsxs)(Yt,{tone:o,padding:`md`,interactive:a,className:c(`items-center gap-3`,i),children:[e?(0,Q.jsx)(`div`,{className:`flex size-8 shrink-0 items-center justify-center rounded-md border border-border/40 bg-background/60 text-foreground/70`,children:e}):null,(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`div`,{className:`truncate text-sm font-medium text-foreground`,children:t}),n?(0,Q.jsx)(`div`,{className:`mt-0.5 truncate text-xs text-muted-foreground`,children:n}):null]}),r?(0,Q.jsx)(`div`,{className:`flex shrink-0 items-center gap-1.5`,children:r}):null]})}function Xt({actions:e,children:t,description:n,title:r}){return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Q.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`h3`,{className:`text-lg font-medium text-balance`,children:r}),(0,Q.jsx)(`p`,{className:`mt-1 text-sm text-pretty text-muted-foreground`,children:n})]}),e?(0,Q.jsx)(`div`,{className:`flex shrink-0 items-center gap-1.5 pt-0.5`,children:e}):null]}),(0,Q.jsx)(`div`,{className:`flex flex-col gap-3`,children:t})]})}function Zt({dirty:e,disabled:t,onRevert:n,onSave:r,saving:i}){return(0,Q.jsxs)(Q.Fragment,{children:[e?(0,Q.jsx)(s,{type:`button`,variant:`ghost`,size:`icon-sm`,className:`text-muted-foreground transition-transform active:scale-[0.96]`,disabled:t||i,onClick:n,"aria-label":`Revert changes`,children:(0,Q.jsx)(ae,{})}):null,(0,Q.jsxs)(s,{type:`button`,variant:`outline`,size:`sm`,className:c(fe,`transition-transform active:scale-[0.96]`,e&&`border-primary/30 text-primary`),disabled:!e||t||i,onClick:r,children:[i?(0,Q.jsx)(I,{className:`animate-spin`,"data-icon":`inline-start`}):(0,Q.jsx)(Ue,{"data-icon":`inline-start`}),`Commit`]})]})}var Qt=1500,$t=`Unknown or expired OAuth login`;function en(e){return new Promise(t=>{setTimeout(t,e)})}function tn({onConfigured:e,onOAuthLogin:t,providerId:n}){let[r,i]=(0,Z.useState)(null),[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(``),l=(0,Z.useRef)(null),u=(0,Z.useRef)(0),d=(0,Z.useRef)(!1),f=(0,Z.useRef)(t),p=(0,Z.useRef)(e),m=(0,Z.useRef)(n);(0,Z.useEffect)(()=>{f.current=t,p.current=e,m.current=n},[e,t,n]);let h=(0,Z.useCallback)(async e=>{if(!(!e||!f.current))try{await f.current({providerId:m.current,loginId:e,cancel:!0})}catch{}},[]),g=(0,Z.useCallback)(()=>{l.current=null,d.current=!1,i(null),c(``),o(!1)},[]);(0,Z.useEffect)(()=>()=>{u.current+=1;let e=l.current;l.current=null,h(e)},[h]);let _=(0,Z.useCallback)((e,t)=>{if(t!==u.current){e.status===`waiting`&&e.loginId&&h(e.loginId);return}if(e.status===`success`){l.current=null,i(null),c(``),o(!1),J.success(`Provider credentials applied to your active sessions.`),p.current?.();return}if(e.status===`error`){if(e.error===$t&&l.current===null)return;let t=l.current;l.current=null,t&&e.error!==`Login cancelled`&&h(t),i(e),o(!1);return}e.loginId&&(l.current=e.loginId),i(e)},[h]),v=(0,Z.useCallback)(async()=>{if(!f.current||d.current)return;d.current=!0;let e=u.current;o(!0);let t=l.current;if(l.current=null,i(null),await h(t),e!==u.current){d.current=!1;return}try{let t=await f.current({providerId:m.current});_(t,e)}catch(t){if(e!==u.current)return;i({status:`error`,error:t instanceof Error?t.message:`Failed to start OAuth sign-in`})}finally{d.current=!1,e===u.current&&o(!1)}},[_,h]),y=(0,Z.useCallback)(async()=>{let e=l.current;if(!f.current||!e)return;let t=u.current;o(!0);try{let n=await f.current({providerId:m.current,loginId:e,promptAnswer:s});c(``),_(n,t)}catch(e){if(t!==u.current)return;J.error(e instanceof Error?e.message:`Failed to continue OAuth sign-in`)}finally{t===u.current&&o(!1)}},[_,s]),b=(0,Z.useCallback)(async()=>{u.current+=1;let e=l.current;g(),await h(e)},[h,g]);return(0,Z.useEffect)(()=>{if(!f.current||r?.status!==`waiting`||!r.loginId)return;let e=u.current,t=r.loginId,n=!1;return(async()=>{for(;!n;){try{let r=await f.current({providerId:m.current,loginId:t});if(n||e!==u.current||(_(r,e),r.status!==`waiting`))return}catch(r){if(n||e!==u.current||l.current!==t)return;l.current=null,h(t),i({status:`error`,error:r instanceof Error?r.message:`OAuth sign-in failed`});return}if(await en(Qt),n||e!==u.current||l.current!==t)return}})(),()=>{n=!0}},[_,h,r?.loginId,r?.status]),{busy:a,cancel:b,canStart:!!t,login:r,promptAnswer:s,setPromptAnswer:c,start:v,submitPrompt:y}}function nn({onConfigured:e,onOAuthLogin:t,provider:n}){let{busy:r,cancel:i,canStart:a,login:o,promptAnswer:c,setPromptAnswer:l,start:u,submitPrompt:d}=tn({onConfigured:e,onOAuthLogin:t,providerId:n.id}),f=o?.status===`waiting`,p=o?.status===`error`?o.error:void 0,m=f?o?.authUrl:void 0,h=f?o?.userCode:void 0,g=f?o?.instructions:void 0,_=f?o?.prompt:void 0,v=n.authType===`oauth`;return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[n.isConfigured&&v&&!f?(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-sm`,children:[(0,Q.jsx)(P,{className:`size-3.5 text-muted-foreground`}),(0,Q.jsx)(`span`,{children:`Connected`})]}):null,f?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsxs)(`p`,{className:`text-sm`,children:[`Sign in with `,n.name,` to store OAuth credentials for this account.`]}),h?(0,Q.jsxs)(`p`,{className:`text-sm`,children:[`Enter this code: `,(0,Q.jsx)(`span`,{className:`font-mono text-foreground`,children:h})]}):null,g&&!h?(0,Q.jsx)(`p`,{className:`text-xs text-pretty text-muted-foreground`,children:g}):null,m?(0,Q.jsxs)(s,{type:`button`,size:`sm`,onClick:()=>{window.open(m,`_blank`,`noopener,noreferrer`)},children:[(0,Q.jsx)(L,{"data-icon":`inline-start`}),`Open sign-in page`]}):_?null:(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,Q.jsx)(O,{className:`size-3`}),`Waiting for sign-in…`]}),_?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsx)(`p`,{className:`text-xs text-pretty text-muted-foreground`,children:_.message}),(0,Q.jsx)(pe,{value:c,placeholder:_.placeholder,onChange:e=>l(e.target.value),"aria-label":_.message}),(0,Q.jsx)(`div`,{className:`flex justify-end`,children:(0,Q.jsxs)(s,{type:`button`,size:`sm`,disabled:r||!_.allowEmpty&&!c.trim(),onClick:()=>{d()},children:[r?(0,Q.jsx)(O,{"data-icon":`inline-start`}):null,`Continue`]})})]}):null,(0,Q.jsx)(`div`,{className:`flex justify-end`,children:(0,Q.jsx)(s,{type:`button`,variant:`ghost`,size:`sm`,disabled:r,onClick:()=>{i()},children:`Cancel sign-in`})})]}):(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[p?(0,Q.jsx)(ke,{className:`px-3 py-2`,children:(0,Q.jsx)(Ee,{className:`text-xs text-pretty`,children:p})}):(0,Q.jsx)(`p`,{className:`text-xs text-pretty text-muted-foreground`,children:v&&n.isConfigured?`Sign in again with ${n.name} to refresh OAuth credentials.`:v?`Sign in with ${n.name}. No API key is stored; credentials are saved to auth.json.`:`Sign in with ${n.name} to use OAuth credentials; API-key editing remains available above.`}),(0,Q.jsx)(`div`,{className:`flex justify-end`,children:(0,Q.jsxs)(s,{type:`button`,size:`sm`,disabled:r||!a,onClick:()=>{u()},children:[r?(0,Q.jsx)(O,{"data-icon":`inline-start`}):null,`Sign in with `,n.name]})})]})]})}function rn(e){switch(e.status){case`connected`:return`Connected`;case`anonymous`:return`Available without sign-in`;case`needs_auth`:return`Sign-in required`;case`disabled`:return`Disabled`;default:return e.status}}function an(e){let t=e.transport===`http`?e.url:e.commandPreview;return[e.source===`builtin`?`Built-in`:`User`,e.transport===`http`?`HTTP`:`stdio`,rn(e),t].filter(e=>!!e).join(` · `)}function on({connections:e,isLoading:t,isPending:n,onOAuth:r,onRemove:i,onUpsert:a}){let[o,c]=(0,Z.useState)(!1),[l,u]=(0,Z.useState)(`http`),[d,f]=(0,Z.useState)(``),[p,m]=(0,Z.useState)(``),[h,g]=(0,Z.useState)(!0),[_,v]=(0,Z.useState)(``),[b,x]=(0,Z.useState)(``),[S,C]=(0,Z.useState)(``),[w,T]=(0,Z.useState)(``),[D,k]=(0,Z.useState)(``),[A,j]=(0,Z.useState)(null),M=()=>{f(``),m(``),g(!0),v(``),x(``),C(``),T(``),k(``),u(`http`),c(!1)},N=async()=>{if(!a)return;let e=d.trim();try{if(l===`http`)await a({name:e,transport:`http`,url:p.trim(),...h?{oauth:!0}:{},..._.trim()?{bearerTokenEnvVar:_.trim()}:{},force:!0});else{let t=S.split(/\s+/).map(e=>e.trim()).filter(Boolean),n=D.split(`
2
- `).map(e=>e.trim()).filter(Boolean).flatMap(e=>{let t=e.indexOf(`=`);if(t<=0)return[];let n=e.slice(0,t).trim(),r=e.slice(t+1).trim();return!n||!r?[]:[{child:n,source:r}]});await a({name:e,transport:`stdio`,command:b.trim(),...t.length>0?{args:t}:{},...w.trim()?{cwd:w.trim()}:{},...n.length>0?{env:n}:{},force:!0})}J.success(`MCP connection saved`),M()}catch(e){J.error(e instanceof Error?e.message:`Could not save MCP connection`)}},P=async e=>{if(i)try{await i({name:e}),J.success(`Removed ${e}`),j(null)}catch(e){J.error(e instanceof Error?e.message:`Could not remove MCP connection`)}},F=async e=>{if(r)try{await r({name:e,action:`logout`}),J.success(`Signed out of ${e}`)}catch(e){J.error(e instanceof Error?e.message:`Could not sign out`)}},I=(0,Z.useMemo)(()=>{if(r)return e=>async t=>{let n=!t.loginId&&!t.cancel;return await r({name:e.name,action:n&&e.status===`connected`?`reconnect`:`login`,loginId:t.loginId,promptAnswer:t.promptAnswer,cancel:t.cancel})}},[r]);return(0,Q.jsxs)(Xt,{title:`MCP`,description:`Connect built-in and user MCP servers. Tokens stay on the server; this list only shows status and environment-variable names.`,actions:(0,Q.jsxs)(s,{type:`button`,size:`sm`,variant:`outline`,disabled:n||o,onClick:()=>c(!0),children:[(0,Q.jsx)(K,{"data-icon":`inline-start`}),`Add server`]}),children:[t?(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,Q.jsx)(O,{className:`size-3.5`}),`Loading MCP connections…`]}):null,o?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3 rounded-xl border p-4`,children:[(0,Q.jsxs)(X,{children:[(0,Q.jsx)(Y,{children:`Name`}),(0,Q.jsx)(pe,{value:d,onChange:e=>f(e.target.value),"aria-label":`MCP server name`})]}),(0,Q.jsxs)(X,{children:[(0,Q.jsx)(Y,{children:`Transport`}),(0,Q.jsx)(y,{value:l,onValueChange:e=>u(e),options:[{label:`HTTP`,value:`http`},{label:`stdio`,value:`stdio`}]})]}),l===`http`?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(X,{children:[(0,Q.jsx)(Y,{children:`URL`}),(0,Q.jsx)(pe,{value:p,onChange:e=>m(e.target.value),"aria-label":`MCP server URL`})]}),(0,Q.jsxs)(X,{orientation:`horizontal`,className:`items-center justify-between`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(Y,{children:`OAuth`}),(0,Q.jsx)(Oe,{children:`Use the browser sign-in flow for this server.`})]}),(0,Q.jsx)(Ae,{checked:h,onCheckedChange:e=>g(e),"aria-label":`Use OAuth`})]}),h?null:(0,Q.jsxs)(X,{children:[(0,Q.jsx)(Y,{children:`Bearer token environment variable`}),(0,Q.jsx)(pe,{value:_,onChange:e=>v(e.target.value),"aria-label":`Bearer token environment variable`,placeholder:`MCP_BEARER_TOKEN`})]})]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(X,{children:[(0,Q.jsx)(Y,{children:`Command`}),(0,Q.jsx)(pe,{value:b,onChange:e=>x(e.target.value),"aria-label":`MCP command`})]}),(0,Q.jsxs)(X,{children:[(0,Q.jsx)(Y,{children:`Arguments`}),(0,Q.jsx)(pe,{value:S,onChange:e=>C(e.target.value),"aria-label":`MCP command arguments`})]}),(0,Q.jsxs)(X,{children:[(0,Q.jsx)(Y,{children:`Working directory`}),(0,Q.jsx)(pe,{value:w,onChange:e=>T(e.target.value),"aria-label":`MCP working directory`}),(0,Q.jsx)(Oe,{children:`Must stay inside the current workspace.`})]}),(0,Q.jsxs)(X,{children:[(0,Q.jsx)(Y,{children:`Environment mappings`}),(0,Q.jsx)(je,{value:D,onChange:e=>k(e.target.value),"aria-label":`MCP environment mappings`,placeholder:`CHILD=SOURCE`}),(0,Q.jsx)(Oe,{children:`One CHILD=SOURCE pair per line. Only variable names are stored.`})]})]}),(0,Q.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,Q.jsx)(s,{type:`button`,size:`sm`,variant:`ghost`,onClick:M,children:`Cancel`}),(0,Q.jsxs)(s,{type:`button`,size:`sm`,disabled:n||!d.trim(),onClick:()=>void N(),children:[n?(0,Q.jsx)(O,{"data-icon":`inline-start`}):null,`Save`]})]})]}):null,!t&&e.length===0&&!o?(0,Q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No MCP connections yet.`}):null,(0,Q.jsx)(`div`,{className:`flex flex-col gap-2`,children:e.map(e=>(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsx)($,{icon:(0,Q.jsx)(te,{className:`size-4`}),title:e.label,subtitle:an(e),trailing:(0,Q.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[e.usesOAuth&&e.status!==`needs_auth`?(0,Q.jsx)(s,{type:`button`,size:`sm`,variant:`ghost`,disabled:n||!r,onClick:()=>{F(e.name)},children:`Sign out`}):null,e.source===`user`?A===e.name?(0,Q.jsx)(s,{type:`button`,size:`sm`,variant:`destructive`,disabled:n,onClick:()=>{P(e.name)},children:`Confirm remove`}):(0,Q.jsx)(s,{type:`button`,size:`sm`,variant:`ghost`,disabled:n||!i,"aria-label":`Remove ${e.name}`,onClick:()=>j(e.name),children:(0,Q.jsx)(E,{className:`size-3.5`})}):null]})}),e.error?(0,Q.jsx)(ke,{className:`px-3 py-2`,children:(0,Q.jsx)(Ee,{className:`text-xs text-pretty`,children:e.error})}):null,e.usesOAuth&&I?(0,Q.jsx)(nn,{provider:{id:e.name,name:e.label,isConfigured:e.status===`connected`,envVarName:``,authType:`oauth`,supportsOAuth:!0},onOAuthLogin:I(e)}):null]},`${e.source}:${e.name}`))})]})}function sn(e,t){return`${e}/${t}`}function cn(e,t){return Ze({id:e.id,name:e.name,provider:e.provider,modelId:e.modelId},t)}function ln({currentPatterns:e,enabled:t,model:n,models:r}){if(e===void 0&&t)return;let i=e??[],a=new Set(r.map(e=>un(e))),o=new Set;for(let t of r)cn(t,e)&&o.add(un(t));return t?o.add(un(n)):o.delete(un(n)),[...i.filter(e=>a.has(e)?!1:t||!Qe(n,e)),...o]}function un(e){return nt(e.provider,e.modelId)}function dn(e){return[e.name,e.modelId,e.provider,e.id].join(` `).toLowerCase()}function fn({configuredProviderIds:e,discoverableProviderIds:t,discoveringProviderId:n,enabledModels:r,modelOptions:i,onAddModels:a,onDiscoverProvider:o,onOpenChange:l,open:u,providerLabel:d=N}){let[f,p]=(0,Z.useState)(``),[m,h]=(0,Z.useState)(new Set),g=f.trim().toLowerCase(),_=(0,Z.useMemo)(()=>i.filter(t=>!e.has(t.provider)||cn(t,r)?!1:!g||dn(t).includes(g)),[e,r,i,g]),v=(0,Z.useMemo)(()=>{let e=new Map;for(let t of _){let n=e.get(t.provider);n?n.push(t):e.set(t.provider,[t])}return[...e.entries()]},[_]),y=(0,Z.useMemo)(()=>{let n=t??e;return Array.from(n).filter(t=>e.has(t)).sort((e,t)=>d(e).localeCompare(d(t)))},[e,t,d]),b=(0,Z.useMemo)(()=>{let e=new Map;for(let t of i)cn(t,r)&&e.set(t.provider,(e.get(t.provider)??0)+1);return e},[r,i]),x=e=>{h(t=>{let n=new Set(t);return n.has(e.id)?n.delete(e.id):n.add(e.id),n})};return(0,Q.jsx)(Te,{open:u,onOpenChange:l,children:(0,Q.jsxs)(Se,{className:`max-w-lg`,children:[(0,Q.jsxs)(xe,{children:[(0,Q.jsx)(Ce,{children:`Add models`}),(0,Q.jsxs)(we,{children:[`Pick models discovered from your configured providers. For OpenAI Chat Completions, refresh runs`,` `,(0,Q.jsxs)(`span`,{className:`font-medium`,children:[`GET `,`{baseUrl}/models`]}),`.`]})]}),(0,Q.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:y.map(e=>{let t=n===e,r=b.get(e)??0;return(0,Q.jsxs)(s,{type:`button`,variant:`outline`,size:`sm`,disabled:n!==null,onClick:()=>{o(e)},children:[t?(0,Q.jsx)(O,{"data-icon":`inline-start`}):(0,Q.jsx)(ie,{"data-icon":`inline-start`}),d(e),r>0?(0,Q.jsxs)(`span`,{className:`tabular-nums text-muted-foreground`,children:[`· `,r,` active`]}):null]},e)})}),(0,Q.jsxs)(Fe,{children:[(0,Q.jsx)(Ne,{align:`inline-start`,children:(0,Q.jsx)(q,{})}),(0,Q.jsx)(Me,{"aria-label":`Search discovered models`,value:f,onChange:e=>p(e.target.value),placeholder:`Search discovered models…`})]}),(0,Q.jsx)(`div`,{className:`max-h-72 overflow-y-auto`,children:v.length===0?(0,Q.jsx)(`p`,{className:`py-6 text-center text-xs text-pretty text-muted-foreground`,children:_.length===0&&!g?`All discovered models are already in your list, or none are available yet.`:`No models match your search.`}):(0,Q.jsx)(`div`,{className:`flex flex-col gap-3`,children:v.map(([e,t])=>(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Q.jsxs)(`div`,{className:`px-2 text-caption font-medium tracking-wide text-muted-foreground uppercase`,children:[d(e),(b.get(e)??0)>0?(0,Q.jsxs)(`span`,{className:`ml-1 font-normal normal-case tabular-nums`,children:[`· `,b.get(e),` active`]}):null]}),t.map(e=>{let t=m.has(e.id);return(0,Q.jsxs)(`button`,{type:`button`,className:c(`flex w-full items-center gap-3 rounded-lg px-2 py-2 text-left transition-[background-color,transform] duration-150`,`hover:bg-muted/60 focus-visible:ring-2 focus-visible:ring-ring focus-visible:outline-none active:scale-[0.96]`,t&&`bg-muted/70`),"aria-pressed":t,onClick:()=>x(e),children:[(0,Q.jsx)(`div`,{className:`flex size-8 shrink-0 items-center justify-center rounded-[4px] border border-border/40 bg-background/60`,children:(0,Q.jsx)(k,{provider:e.provider,className:`text-foreground/70`})}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`div`,{className:`truncate text-sm font-medium`,children:e.name}),(0,Q.jsx)(`div`,{className:`truncate text-xs text-muted-foreground`,children:e.modelId})]}),(0,Q.jsx)(`span`,{className:c(`size-4 rounded border border-border/60`,t&&`border-foreground bg-foreground`),"aria-hidden":!0})]},e.id)})]},e))})}),(0,Q.jsxs)(`div`,{className:`flex items-center justify-end gap-1.5`,children:[(0,Q.jsx)(s,{type:`button`,variant:`ghost`,size:`sm`,onClick:()=>l(!1),children:`Cancel`}),(0,Q.jsxs)(s,{type:`button`,size:`sm`,disabled:m.size===0,onClick:()=>{let e=_.filter(e=>m.has(e.id));e.length>0&&a(e),l(!1)},children:[`Add `,m.size>0?(0,Q.jsxs)(`span`,{className:`tabular-nums`,children:[`(`,m.size,`)`]}):null]})]})]})})}function pn({draft:e,discoveringProviderId:t,modelDirty:n,modelFilter:r,modelOptions:i,onAddModels:a,onDiscoverProvider:o,onModelFilterChange:l,onRemoveModel:u,onSetDefaultModel:d,onRevert:f,onSave:p,providers:m,saving:h,settingsLoading:g}){let[_,v]=(0,Z.useState)(!1),y=!e||g,b=r.trim().toLowerCase(),x=(0,Z.useMemo)(()=>{let t=new Set;for(let e of m)e.isConfigured&&t.add(e.id);for(let n of i)cn(n,e?.enabledModels)&&t.add(n.provider);return t},[e?.enabledModels,i,m]),S=(0,Z.useMemo)(()=>{let e=new Set;for(let t of m)t.discoverable===!0&&x.has(t.id)&&e.add(t.id);return e},[x,m]),C=(0,Z.useMemo)(()=>t=>!!e?.defaultProvider&&!!e?.defaultModel&&t.provider===e.defaultProvider&&t.modelId===e.defaultModel,[e?.defaultModel,e?.defaultProvider]),w=(0,Z.useMemo)(()=>{let e=new Map;for(let t of m)(t.displayName||t.name)&&e.set(t.id,t.displayName??t.name??t.id);return t=>e.get(t)??N(t)},[m]),T=(0,Z.useMemo)(()=>i.filter(t=>cn(t,e?.enabledModels)?!b||[t.name,t.modelId,t.provider,t.id].join(` `).toLowerCase().includes(b):!1),[e?.enabledModels,i,b]),D=(0,Z.useMemo)(()=>{let e=new Map;for(let t of T){let n=e.get(t.provider);n?n.push(t):e.set(t.provider,[t])}return[...e.entries()]},[T]),O=i.length===0?`No models discovered yet. Configure a provider, then add models.`:T.length===0&&!b?`Add models from your configured providers to make them available in chat.`:T.length===0?`No models match your search.`:null,A=()=>{v(!0)};return(0,Q.jsxs)(Xt,{title:`LLM Models`,description:(0,Q.jsxs)(Q.Fragment,{children:[`Models available in chat. Discover from configured providers, add the ones you want, and remove any you do not need — changes save automatically. `,(0,Q.jsx)(`span`,{className:`tabular-nums`,children:T.length}),` in list`,i.length>0?(0,Q.jsxs)(Q.Fragment,{children:[` `,`· `,(0,Q.jsx)(`span`,{className:`tabular-nums`,children:i.length}),` discovered`]}):null,`.`]}),actions:(0,Q.jsx)(Zt,{dirty:n,disabled:y,onRevert:f,onSave:p,saving:h}),children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsxs)(Fe,{className:`flex-1`,children:[(0,Q.jsx)(Ne,{align:`inline-start`,children:(0,Q.jsx)(q,{})}),(0,Q.jsx)(Me,{"aria-label":`Search listed models`,value:r,onChange:e=>l(e.target.value),placeholder:`Search listed models…`,disabled:y||T.length===0})]}),(0,Q.jsxs)(s,{type:`button`,variant:`outline`,size:`sm`,disabled:y,onClick:A,children:[(0,Q.jsx)(K,{"data-icon":`inline-start`}),`Add models`]})]}),(0,Q.jsx)(`div`,{className:`flex flex-col gap-3`,"data-testid":`runtime-models-list`,children:O?(0,Q.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-8`,children:[(0,Q.jsx)(`p`,{className:`px-1 text-center text-xs text-pretty text-muted-foreground`,children:O}),b?null:(0,Q.jsxs)(s,{type:`button`,variant:`outline`,size:`sm`,disabled:y,onClick:A,children:[(0,Q.jsx)(K,{"data-icon":`inline-start`}),`Add models`]})]}):D.map(([e,t])=>(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,Q.jsx)(`div`,{className:`px-1 text-xs font-medium text-muted-foreground`,children:w(e)}),t.map(e=>(0,Q.jsx)($,{icon:(0,Q.jsx)(k,{provider:e.provider}),title:e.name,subtitle:`${w(e.provider)} · ${e.modelId}`,trailing:(0,Q.jsxs)(`div`,{className:`flex items-center`,children:[C(e)?(0,Q.jsx)(`span`,{className:`px-2 text-xs font-medium text-muted-foreground`,children:`Default`}):d?(0,Q.jsxs)(s,{type:`button`,variant:`ghost`,size:`sm`,className:c(de,`h-7 px-2 text-xs text-muted-foreground transition-[background-color,color,transform] duration-150 active:scale-[0.96]`),disabled:y,"aria-label":`Set ${e.name} as default`,onClick:()=>d(e),children:[(0,Q.jsx)(We,{"data-icon":`inline-start`}),`Set default`]}):null,(0,Q.jsxs)(s,{type:`button`,variant:`ghost`,size:`sm`,className:c(de,`h-7 px-2 text-xs text-muted-foreground transition-[background-color,color,transform] duration-150 hover:text-destructive active:scale-[0.96]`),disabled:y,"aria-label":`Remove ${e.name}`,onClick:()=>u(e),children:[(0,Q.jsx)(E,{"data-icon":`inline-start`}),`Remove`]})]})},e.id))]},e))}),(0,Q.jsx)(fn,{open:_,configuredProviderIds:x,discoverableProviderIds:S,discoveringProviderId:t,enabledModels:e?.enabledModels,modelOptions:i,onAddModels:a,onDiscoverProvider:o,onOpenChange:v,providerLabel:w})]})}var mn=[{value:`system`,label:`System`,icon:W},{value:`light`,label:`Light`,icon:G},{value:`dark`,label:`Dark`,icon:U}];function hn({onThemePreferenceChange:e,themePreference:t}){return(0,Q.jsxs)(X,{orientation:`horizontal`,className:`items-center justify-between gap-6 rounded-xl border p-4`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[(0,Q.jsx)(Y,{children:`Theme`}),(0,Q.jsx)(Oe,{children:`Match the system theme or pick light or dark.`})]}),(0,Q.jsx)(`div`,{className:`shrink-0`,children:(0,Q.jsx)(y,{"aria-label":`Theme`,className:`w-[160px]`,onValueChange:t=>e(t),options:[...mn],value:t})})]})}function gn(e,t,n=!0){return t&&n&&e.trim().length===0}function _n({attemptedSave:e,label:t,onChange:n,onToggleVisibility:r,placeholder:i,required:a=!0,showPassword:o,value:s}){let l=(0,Z.useId)(),u=gn(s,e,a);return(0,Q.jsxs)(X,{"data-invalid":u||void 0,children:[(0,Q.jsx)(Y,{htmlFor:l,children:t}),(0,Q.jsxs)(Fe,{children:[(0,Q.jsx)(Ne,{align:`inline-start`,children:(0,Q.jsx)(Be,{})}),(0,Q.jsx)(Me,{id:l,type:o?`text`:`password`,placeholder:i,value:s,onChange:e=>n(e.target.value),"aria-label":t,"aria-invalid":u||void 0}),(0,Q.jsx)(Ne,{align:`inline-end`,children:(0,Q.jsx)(Pe,{size:`icon-xs`,className:c(le,`transition-[background-color,transform] duration-150 active:scale-[0.96]`),"aria-label":o?`Hide value`:`Show value`,onClick:r,children:o?(0,Q.jsx)(Le,{}):(0,Q.jsx)(B,{})})})]})]})}function vn({attemptedSave:e,icon:t,inputType:n=`text`,label:r,onChange:i,placeholder:a,required:o=!0,value:s}){let c=(0,Z.useId)(),l=gn(s,e,o);return(0,Q.jsxs)(X,{"data-invalid":l||void 0,children:[(0,Q.jsx)(Y,{htmlFor:c,children:r}),(0,Q.jsxs)(Fe,{children:[(0,Q.jsx)(Ne,{align:`inline-start`,children:(0,Q.jsx)(t,{})}),(0,Q.jsx)(Me,{id:c,type:n,placeholder:a,value:s,onChange:e=>i(e.target.value),"aria-label":r,"aria-invalid":l||void 0})]})]})}var yn=`https://opencode.ai/zen/v1`,bn=`qwen35-122b-a10b`,xn=`e.g. OpenCode Zen, Nebius, Groq…`,Sn=`model-a, model-b (comma-separated)`,Cn=[{value:`openai-completions`,label:`OpenAI Chat Completions`},{value:`openai-responses`,label:`OpenAI Responses`},{value:`anthropic-messages`,label:`Anthropic Messages`},{value:`google-genai`,label:`Google Generative AI`}];function wn({attemptedSave:e,apiKey:t,api:n,baseUrl:r,modelId:i,models:a,displayName:o,isCustom:s,onApiKeyChange:c,onApiChange:l,onBaseUrlChange:u,onModelIdChange:d,onModelsChange:f,onDisplayNameChange:p,onTogglePassword:m,openAiChat:h,placeholder:g,showPassword:_}){let v=s&&l,y=s&&f;return(0,Q.jsxs)(De,{className:`gap-2`,children:[(h||s)&&p?(0,Q.jsx)(vn,{attemptedSave:e,icon:Ge,label:`Provider name`,placeholder:xn,value:o??``,onChange:p}):null,v?(0,Q.jsx)(Tn,{value:n??`openai-completions`,onChange:l}):null,(0,Q.jsx)(_n,{attemptedSave:e,label:`API key`,placeholder:g,value:t,showPassword:_,onChange:c,onToggleVisibility:m}),h||s?(0,Q.jsx)(vn,{attemptedSave:e,icon:R,inputType:`url`,label:`Base URL`,placeholder:yn,value:r,onChange:u}):null,y?(0,Q.jsx)(vn,{attemptedSave:e,icon:ze,label:`Model ids`,placeholder:Sn,value:a??``,onChange:f}):null,h&&!y?(0,Q.jsx)(vn,{attemptedSave:e,icon:Ie,label:`Model name`,placeholder:bn,value:i,onChange:d}):null]})}function Tn({value:e,onChange:t}){return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Q.jsx)(`span`,{className:`text-xs font-medium text-muted-foreground`,children:`API family`}),(0,Q.jsx)(y,{"aria-label":`API family`,value:e,options:Cn,placeholder:`Select API family`,onValueChange:e=>t(e)})]})}function En(e){return e.authType===`oauth`}function Dn(e){return e.supportsOAuth===!0}var On={id:`custom`,name:`Custom provider`,isConfigured:!1,envVarName:`CUSTOM_PROVIDER_API_KEY`,displayName:`Custom provider`};function kn(e){return e.split(`,`).map(e=>e.trim()).filter(e=>e.length>0)}function An({onRemoveProvider:e,onUpdateProvider:t,providers:n}){let[r,i]=(0,Z.useState)(null),[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(``),[l,u]=(0,Z.useState)(``),[d,f]=(0,Z.useState)(``),[p,m]=(0,Z.useState)(``),[h,_]=(0,Z.useState)(`openai-completions`),[y,b]=(0,Z.useState)(``),[S,C]=(0,Z.useState)(!1),[w,T]=(0,Z.useState)(!1),[E,D]=(0,Z.useState)(``),[O,k]=(0,Z.useState)(!1),[A,j]=(0,Z.useState)(``),[M,N]=(0,Z.useState)(null),P=(0,Z.useMemo)(()=>[...n.filter(e=>e.id!==On.id),On],[n]),F=(0,Z.useMemo)(()=>P.filter(e=>e.isConfigured),[P]),I=(0,Z.useMemo)(()=>P.filter(e=>!e.isConfigured||e.id===`openai-chat-completions`&&e.providerFamily===void 0),[P]),L=(0,Z.useMemo)(()=>{let e=E.trim().toLowerCase();return e?F.filter(t=>jn(t,e)):F},[F,E]),R=(0,Z.useMemo)(()=>{let e=A.trim().toLowerCase();return I.filter(t=>jn(t,e))},[A,I]),z=(0,Z.useMemo)(()=>{let e=A.trim().toLowerCase();return F.filter(t=>jn(t,e))},[F,A]),B=R.length>0||z.length>0,V=r&&!F.some(e=>e.id===r)?P.find(e=>e.id===r)??null:null,H=()=>{c(``),u(``),f(``),m(``),_(`openai-completions`),b(``),C(!1),T(!1)},U=()=>{i(null),o(!1),H()},W=(e,t)=>{k(!1),j(``),i(e),o(t?.newOccInstance===!0),H();let r=n.find(t=>t.id===e);u(r?.baseUrl??``),b(r?.displayName??(x(e)?r?.name??``:``)),_(r?.api??`openai-completions`),m((r?.modelIds??[]).join(`, `)),f(r?.modelIds?.[0]??``)},G=()=>{U(),j(``),k(!0)},ee=()=>{k(!1),j(``)};return{activeProviders:F,addPickerOpen:O,addPickerQuery:A,api:h,apiKey:s,attemptedSave:w,baseUrl:l,canSave:(0,Z.useMemo)(()=>s.trim().length===0?!1:r?r===`custom`||x(r)?l.trim().length===0||kn(p).length===0?!1:y.trim().length>0:g(r)?l.trim().length===0||d.trim().length===0?!1:v(r)||a?y.trim().length>0:!0:!0:!0,[s,l,d,p,y,r,a]),closeAddPicker:ee,closeEditor:U,confirmRemoveProvider:M,credentialProviders:P,displayName:y,editingIsNewOccInstance:a,editingProvider:r,editingUnconfiguredProvider:V,filteredActiveProviders:L,filteredPickerAvailable:R,filteredPickerConfigured:z,handleRemove:async t=>{if(e)try{await e({providerId:t.id}),r===t.id&&U(),J.success(`${t.name} removed from your configured providers.`),N(null)}catch(e){J.error(e instanceof Error?e.message:`Failed to remove provider`)}},handleSave:async e=>{if(!t)return;T(!0);let n=e===`custom`||x(e),r=g(e);if(n){let n=kn(p);if(!s.trim()||!l.trim()||!y.trim()||n.length===0)return;try{await t({providerId:e,apiKey:s.trim(),baseUrl:l.trim(),displayName:y.trim(),api:h,models:n,...e===`custom`?{createOccInstance:!0}:{}}),J.success(`Provider credentials applied to your active sessions.`),U(),ee()}catch(e){J.error(e instanceof Error?e.message:`Failed to update provider`)}return}let i=r&&v(e),o=r&&(i||a);if(s.trim()&&!(r&&(!l.trim()||!d.trim()))&&!(o&&!y.trim()))try{await t({providerId:e,apiKey:s.trim(),...r?{baseUrl:l.trim(),modelId:d.trim(),...o?{displayName:y.trim()}:{},...a?{createOccInstance:!0}:{}}:{}}),J.success(`Provider credentials applied to your active sessions.`),U(),ee()}catch(e){J.error(e instanceof Error?e.message:`Failed to update provider`)}},modelId:d,models:p,openAddPicker:G,openEditor:W,pickerHasResults:B,resetEditor:H,searchQuery:E,selectProviderFromPicker:e=>{W(e,{newOccInstance:g(e)})},setAddPickerOpen:k,setAddPickerQuery:j,setApi:_,setApiKey:c,setAttemptedSave:T,setBaseUrl:u,setConfirmRemoveProvider:N,setDisplayName:b,setEditingIsNewOccInstance:o,setEditingProvider:i,setModelId:f,setModels:m,setSearchQuery:D,setShowPassword:C,showPassword:S,unconfiguredProviders:I}}function jn(e,t){if(!t)return!0;let n=Dn(e)?En(e)?`oauth sign-in login`:`api key oauth sign-in login`:e.id===`custom`||x(e.id)?`custom provider endpoint openai anthropic google compatible`:g(e.id)?`api key base url model name chat completions`:``;return[e.name,e.envVarName,e.id,n].join(` `).toLowerCase().includes(t)}function Mn({addPickerQuery:e,credentialProvidersLength:t,filteredPickerAvailable:n,filteredPickerConfigured:r,pickerHasResults:i,onClose:a,onQueryChange:o,onSelect:c}){return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(s,{type:`button`,variant:`ghost`,size:`icon-sm`,"aria-label":`Back to providers`,onClick:a,children:(0,Q.jsx)(D,{})}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`p`,{className:`text-sm font-medium`,children:`Add provider`}),(0,Q.jsx)(`p`,{className:`text-xs text-pretty text-muted-foreground`,children:`Choose a provider to store encrypted credentials for this account.`})]})]}),(0,Q.jsxs)(Fe,{children:[(0,Q.jsx)(Ne,{align:`inline-start`,children:(0,Q.jsx)(q,{})}),(0,Q.jsx)(Me,{type:`text`,placeholder:`Search providers…`,value:e,onChange:e=>o(e.target.value),"aria-label":`Search providers to add`})]}),(0,Q.jsx)(`div`,{className:`max-h-[min(24rem,50vh)] overflow-y-auto`,children:i?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[n.length>0?(0,Q.jsx)(`div`,{className:`flex flex-col gap-1`,children:n.map(e=>(0,Q.jsx)(In,{provider:e,configured:!1,onSelect:()=>c(e.id)},e.id))}):null,r.length>0?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[n.length>0?(0,Q.jsx)(`p`,{className:`px-2 pt-1 text-caption font-medium tracking-wide text-muted-foreground uppercase`,children:`Already configured`}):null,r.map(e=>(0,Q.jsx)(In,{provider:e,configured:!0,onSelect:()=>c(e.id)},e.id))]}):null]}):(0,Q.jsx)(`p`,{className:`py-6 text-center text-xs text-pretty text-muted-foreground`,children:t===0?`No providers available.`:`No matching providers found.`})})]})}function Nn({onBack:e,onConfigured:t,onOAuthLogin:n,provider:r}){return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(s,{type:`button`,variant:`ghost`,size:`icon-sm`,"aria-label":`Back to provider list`,onClick:e,children:(0,Q.jsx)(D,{})}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsxs)(`p`,{className:`text-sm font-medium`,children:[`Configure `,r.name]}),(0,Q.jsx)(`p`,{className:`text-xs text-pretty text-muted-foreground`,children:`OAuth sign-in. Credentials are stored in auth.json for this account.`})]})]}),(0,Q.jsx)(nn,{provider:r,onConfigured:t,onOAuthLogin:n},r.id)]})}function Pn({provider:e,api:t,apiKey:n,baseUrl:r,modelId:i,models:a,displayName:o,showPassword:c,attemptedSave:l,isPending:u,canSave:d,onApiKeyChange:f,onApiChange:p,onBaseUrlChange:h,onModelIdChange:_,onModelsChange:v,onDisplayNameChange:y,onTogglePassword:b,onBack:S,onCancel:C,onConfigured:w,onOAuthLogin:T,onSave:E}){let k=e.id===`custom`||x(e.id),A=j[e.id]??(k?j.custom:{placeholder:`Enter credentials…`,help:`Stored securely in your local environment overrides.`}),M=g(e.id)&&!k,N=Dn(e);return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(s,{type:`button`,variant:`ghost`,size:`icon-sm`,"aria-label":`Back to provider list`,onClick:S,children:(0,Q.jsx)(D,{})}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsxs)(`p`,{className:`text-sm font-medium`,children:[`Configure `,e.name]}),(0,Q.jsx)(`p`,{className:`text-xs text-pretty text-muted-foreground`,children:k?`Name this custom provider, pick its API family, then enter its API key, https base URL, and model ids.`:M?`Name this OpenAI-compatible provider, then enter its API key, base URL, and model name.`:`Stored as ${e.envVarName} for this account.`})]})]}),(0,Q.jsx)(wn,{attemptedSave:l,api:t,apiKey:n,baseUrl:r,modelId:i,models:a,displayName:o,isCustom:k,openAiChat:M,placeholder:A.placeholder,showPassword:c,onApiKeyChange:f,onApiChange:p,onBaseUrlChange:h,onModelIdChange:_,onModelsChange:v,onDisplayNameChange:y,onTogglePassword:b}),(0,Q.jsxs)(ke,{className:`px-3 py-2`,children:[(0,Q.jsx)(m,{}),(0,Q.jsx)(Ee,{className:`text-xs text-pretty`,children:A.help})]}),(0,Q.jsxs)(`div`,{className:`flex items-center justify-end gap-1.5`,children:[(0,Q.jsx)(s,{type:`button`,variant:`ghost`,size:`sm`,onClick:C,children:`Cancel`}),(0,Q.jsxs)(s,{type:`button`,size:`sm`,disabled:u||!d,onClick:E,children:[u?(0,Q.jsx)(O,{"data-icon":`inline-start`}):null,`Save`]})]}),N?(0,Q.jsx)(nn,{provider:e,onConfigured:w??C,onOAuthLogin:T},`${e.id}-oauth`):null]})}function Fn({confirmRemoveProvider:e,isPending:t,onClose:n,onConfirm:r}){return(0,Q.jsx)(be,{open:e!==null,onOpenChange:e=>{e||n()},children:(0,Q.jsxs)(he,{children:[(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsxs)(ye,{children:[`Remove `,e?.name??`provider`,`?`]}),(0,Q.jsx)(me,{children:`This clears stored credentials for this provider from your workspace settings. Active sessions will stop using it immediately.`})]}),(0,Q.jsxs)(_e,{children:[(0,Q.jsx)(ve,{disabled:t,children:`Cancel`}),(0,Q.jsxs)(ge,{disabled:t||!e,onClick:()=>{e&&r(e)},children:[t?(0,Q.jsx)(O,{"data-icon":`inline-start`}):null,`Remove provider`]})]})]})})}function In({configured:e,onSelect:t,provider:n}){let r=g(n.id),i=n.id===`custom`||x(n.id),a=En(n),o=Dn(n);return(0,Q.jsxs)(`button`,{type:`button`,className:c(`flex w-full items-center gap-3 rounded-lg px-2 py-2 text-left transition-[background-color,transform] duration-150`,`hover:bg-muted/60 focus-visible:ring-2 focus-visible:ring-ring focus-visible:outline-none active:scale-[0.96]`),onClick:t,children:[(0,Q.jsx)(`div`,{className:`flex size-8 shrink-0 items-center justify-center rounded-[4px] border border-border/40 bg-background/60`,children:(0,Q.jsx)(k,{provider:i?`custom`:n.id,api:n.api,className:`text-foreground/70`})}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`div`,{className:`truncate text-sm font-medium`,children:n.name}),(0,Q.jsxs)(`div`,{className:`truncate text-xs text-muted-foreground`,children:[a?`OAuth sign-in`:o?`API key or OAuth`:i?`API family + key + https base URL + models`:r?`API key + base URL + model name`:n.envVarName,e?` · Update`:``]})]})]})}function Ln({providers:e,editingProvider:t,form:n,operation:r,actions:i,onEdit:a,onCancelEdit:o,onSave:l,onRemove:u,onOAuthLogin:d,onConfigured:f}){let{api:p,apiKey:h,baseUrl:_,modelId:v,models:y,displayName:b,showPassword:S,attemptedSave:C,canSave:w}=n,{isPending:T,canRemove:D}=r,{onApiKeyChange:A,onApiChange:M,onBaseUrlChange:N,onModelIdChange:P,onModelsChange:F,onDisplayNameChange:I,onTogglePassword:L}=i;return(0,Q.jsx)(`div`,{className:`flex flex-col gap-1.5`,children:e.map(e=>{let n=t===e.id,r=x(e.id),i=j[e.id]??j[r?`custom`:`openai-chat-completions`],R=g(e.id),z=En(e),B=Dn(e);return(0,Q.jsxs)(`div`,{className:`flex flex-col`,children:[(0,Q.jsx)($,{interactive:!1,icon:(0,Q.jsx)(k,{provider:e.id,api:e.api,className:`text-foreground/80`}),title:e.name,subtitle:z?`OAuth sign-in`:B?`API key or OAuth`:r?`Custom provider · API key + base URL + models`:R?`OpenAI-compatible · API key + base URL + model name`:e.envVarName,trailing:(0,Q.jsxs)(`div`,{className:`flex items-center gap-0.5`,children:[(0,Q.jsxs)(s,{type:`button`,variant:`ghost`,size:`sm`,className:c(de,`h-7 px-2 text-xs text-muted-foreground transition-[background-color,color,transform] duration-150 hover:text-destructive active:scale-[0.96]`),disabled:T||!D,"aria-label":`Remove ${e.name}`,onClick:()=>u(e),children:[(0,Q.jsx)(E,{"data-icon":`inline-start`}),`Remove`]}),(0,Q.jsxs)(s,{type:`button`,variant:`ghost`,size:`sm`,className:c(de,`h-7 px-2 text-xs transition-[background-color,transform] duration-150 active:scale-[0.96]`),disabled:T,onClick:()=>{if(n){o();return}a(e.id)},children:[n?null:(0,Q.jsx)(ee,{"data-icon":`inline-start`}),n?`Cancel`:`Update`]})]})}),n?(0,Q.jsx)(Yt,{tone:`inset`,padding:`md`,className:`flex flex-col gap-2 border-t border-border/30`,children:z?(0,Q.jsx)(nn,{provider:e,onConfigured:f,onOAuthLogin:d},e.id):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(wn,{attemptedSave:C,api:e.api??p,apiKey:h,baseUrl:_,modelId:v,models:y,displayName:b,isCustom:r,openAiChat:R,placeholder:i.placeholder,showPassword:S,onApiKeyChange:A,onApiChange:M,onBaseUrlChange:N,onModelIdChange:P,onModelsChange:F,onDisplayNameChange:r||e.providerFamily!==void 0?I:void 0,onTogglePassword:L}),(0,Q.jsxs)(ke,{className:`px-3 py-2`,children:[(0,Q.jsx)(m,{}),(0,Q.jsx)(Ee,{className:`text-xs text-pretty`,children:i.help})]}),(0,Q.jsx)(`div`,{className:`flex items-center justify-end`,children:(0,Q.jsxs)(s,{type:`button`,size:`sm`,disabled:T||!w,onClick:()=>l(e.id),children:[T?(0,Q.jsx)(O,{"data-icon":`inline-start`}):null,`Save`]})}),B?(0,Q.jsx)(nn,{provider:e,onConfigured:f,onOAuthLogin:d},`${e.id}-oauth`):null]})}):null]},e.id)})})}function Rn({isLoading:e,isPending:t,onOAuthLogin:n,onRemoveProvider:r,onUpdateProvider:i,providers:a}){let{activeProviders:o,addPickerOpen:c,addPickerQuery:l,api:u,apiKey:d,attemptedSave:f,baseUrl:p,canSave:m,closeAddPicker:h,closeEditor:g,confirmRemoveProvider:_,credentialProviders:v,displayName:y,editingProvider:b,editingUnconfiguredProvider:x,filteredActiveProviders:S,filteredPickerAvailable:C,filteredPickerConfigured:w,handleRemove:T,handleSave:E,modelId:D,models:k,openAddPicker:A,openEditor:j,pickerHasResults:M,searchQuery:N,selectProviderFromPicker:P,setAddPickerQuery:F,setApi:I,setApiKey:L,setBaseUrl:R,setConfirmRemoveProvider:z,setDisplayName:B,setModelId:V,setModels:H,setSearchQuery:U,setShowPassword:W,showPassword:G}=An({onRemoveProvider:r,onUpdateProvider:i,providers:a}),ee={api:u,apiKey:d,baseUrl:p,modelId:D,models:k,displayName:y,showPassword:G,attemptedSave:f,canSave:m},te={isPending:t,canRemove:!!r},ne={onApiKeyChange:L,onApiChange:I,onBaseUrlChange:R,onModelIdChange:V,onModelsChange:H,onDisplayNameChange:B,onTogglePassword:()=>W(e=>!e)};return(0,Q.jsxs)(Xt,{title:`Providers`,description:"Locally, API keys are stored in `.env.local`. When deployed, they are stored encrypted in your account.",children:[c?(0,Q.jsx)(Mn,{addPickerQuery:l,credentialProvidersLength:v.length,filteredPickerAvailable:C,filteredPickerConfigured:w,pickerHasResults:M,onClose:h,onQueryChange:F,onSelect:P}):x&&En(x)?(0,Q.jsx)(Nn,{provider:x,onBack:A,onConfigured:g,onOAuthLogin:n},x.id):x?(0,Q.jsx)(Pn,{provider:x,api:u,apiKey:d,baseUrl:p,modelId:D,models:k,displayName:y,showPassword:G,attemptedSave:f,isPending:t,canSave:m,onApiKeyChange:L,onApiChange:I,onBaseUrlChange:R,onModelIdChange:V,onModelsChange:H,onDisplayNameChange:B,onTogglePassword:()=>W(e=>!e),onBack:A,onCancel:g,onConfigured:g,onOAuthLogin:n,onSave:()=>{b&&E(b)}}):(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsxs)(Fe,{className:`flex-1`,children:[(0,Q.jsx)(Ne,{align:`inline-start`,children:(0,Q.jsx)(q,{})}),(0,Q.jsx)(Me,{type:`text`,placeholder:`Search credentials…`,value:N,onChange:e=>U(e.target.value),"aria-label":`Search credentials`,disabled:e||o.length===0})]}),(0,Q.jsxs)(s,{type:`button`,variant:`outline`,size:`sm`,disabled:e||v.length===0,onClick:A,children:[(0,Q.jsx)(K,{"data-icon":`inline-start`}),`Add provider`]})]}),e?(0,Q.jsxs)(`div`,{className:`flex items-center justify-center gap-2 py-6 text-xs text-muted-foreground`,children:[(0,Q.jsx)(O,{className:`size-3`}),(0,Q.jsx)(`span`,{children:`Loading…`})]}):o.length===0?(0,Q.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-8`,children:[(0,Q.jsx)(`p`,{className:`text-center text-xs text-pretty text-muted-foreground`,children:`No providers configured`}),(0,Q.jsxs)(s,{type:`button`,variant:`outline`,size:`sm`,disabled:v.length===0,onClick:A,children:[(0,Q.jsx)(K,{"data-icon":`inline-start`}),`Add provider`]})]}):S.length===0?(0,Q.jsx)(`p`,{className:`py-6 text-center text-xs text-pretty text-muted-foreground`,children:`No matching providers found.`}):(0,Q.jsx)(Ln,{providers:S,editingProvider:b,form:ee,operation:te,actions:ne,onEdit:j,onCancelEdit:g,onSave:e=>void E(e),onRemove:z,onOAuthLogin:n,onConfigured:g})]}),(0,Q.jsx)(Fn,{confirmRemoveProvider:_,isPending:t,onClose:()=>z(null),onConfirm:e=>{T(e)}})]})}var zn=new Set([`auto`,`global`,`local`,`project`,`workspace`]);function Bn(e){let t=e.source?.trim();if(t&&!zn.has(t))return t;let n=(e.workspacePath??e.path??``).trim();return n?Vn(n):e.name.trim()}function Vn(e){let t=e.replace(/\\/g,`/`);if(/^\/Users\//.test(t)||/^\/home\//.test(t)||/^[A-Za-z]:\//.test(t))return``;if(!t.startsWith(`/`)&&!/^[A-Za-z]:\//.test(t))return t.startsWith(`agent-workspace/`)?Hn(`../${t}`):t.startsWith(`../agent-workspace/.pi/`)?Hn(t.replace(`../agent-workspace/.pi/`,`../agent-workspace/pi/`)):Hn(t);let n=t.match(/\/(agent-workspace\/.+)$/);if(n?.[1])return Hn(`../${n[1].replace(/^agent-workspace\/\.pi\//,`agent-workspace/pi/`)}`);let r=t.match(/\/\.pi\/(extensions\/.+|skills\/.+|prompts\/.+|themes\/.+)$/);return r?.[1]?Hn(r[1]):``}function Hn(e){return e.replace(/\/SKILL\.md$/i,``).replace(/\/index\.(ts|tsx|js|jsx|mjs|cjs)$/i,``)}function Un(e,t){let n=Vn(t);return e.some(e=>Vn(e)===n)}function Wn(e,t){let n=t.trim();if(!n)return e;let r=Vn(n);return!r||Un(e,r)?e:[...e,r]}function Gn({addLabel:e,catalog:t,onChange:n,placeholder:r,values:i}){let[a,o]=(0,Z.useState)(``),c=new Set,l=[];for(let e of t){let t=Bn(e);t.length===0||c.has(t)||(c.add(t),l.push({value:t,label:e.name||t}))}let u=new Map(l.map(e=>[e.value,e.label])),d=e=>u.get(e)??u.get(Vn(e)),f=l.filter(e=>!Un(i,e.value)),p=()=>{let e=a.trim();e&&(n(Wn(i,e)),o(``))};return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[i.length===0?(0,Q.jsx)(`p`,{className:`px-1 py-2 text-xs text-pretty text-muted-foreground`,children:`Nothing selected yet.`}):i.map(e=>{let t=d(e);return(0,Q.jsx)($,{interactive:!1,title:t??e,subtitle:t&&t!==e?e:void 0,trailing:(0,Q.jsx)(s,{type:`button`,variant:`ghost`,size:`icon-xs`,"aria-label":`Remove ${e}`,onClick:()=>n(i.filter(t=>t!==e)),children:(0,Q.jsx)(E,{})})},e)}),f.length>0?(0,Q.jsx)(y,{"aria-label":e,value:null,placeholder:e,options:f,onValueChange:e=>{e&&n(Wn(i,e))}}):(0,Q.jsxs)(Fe,{children:[(0,Q.jsx)(Me,{"aria-label":e,value:a,onChange:e=>o(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),p())},placeholder:r}),(0,Q.jsx)(Ne,{align:`inline-end`,children:(0,Q.jsxs)(Pe,{onClick:p,disabled:!a.trim(),children:[(0,Q.jsx)(K,{"data-icon":`inline-start`}),`Add`]})})]})]})}var Kn=[{value:`auto`,label:`Auto`},{value:`sse`,label:`SSE`},{value:`websocket`,label:`WebSocket`}],qn=[{value:`all`,label:`All`},{value:`one-at-a-time`,label:`One at a time`}];function Jn({draft:e,updateDraft:t}){let n=!e;return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsx)($,{title:`Compaction`,subtitle:`Summarize old turns when context fills up`,trailing:(0,Q.jsx)(Ae,{"aria-label":`Compaction`,checked:e?.compaction.enabled??!1,disabled:n,onCheckedChange:e=>t(t=>({...t,compaction:{...t.compaction,enabled:e}}))})}),(0,Q.jsx)($,{title:`Auto-retry`,subtitle:`Retry failed provider requests`,trailing:(0,Q.jsx)(Ae,{"aria-label":`Auto-retry`,checked:e?.retry.enabled??!1,disabled:n,onCheckedChange:e=>t(t=>({...t,retry:{...t.retry,enabled:e}}))})}),(0,Q.jsx)($,{title:`Transport`,trailing:(0,Q.jsx)(y,{"aria-label":`Transport`,className:`w-[160px]`,disabled:n,onValueChange:e=>t(t=>({...t,transport:e})),options:[...Kn],value:e?.transport??`auto`})}),(0,Q.jsx)($,{title:`Steering`,subtitle:`How queued steers are delivered mid-turn`,trailing:(0,Q.jsx)(y,{"aria-label":`Steering`,className:`w-[160px]`,disabled:n,onValueChange:e=>t(t=>({...t,steeringMode:e})),options:[...qn],value:e?.steeringMode??`all`})}),(0,Q.jsx)($,{title:`Follow-up`,subtitle:`How queued follow-ups run after the turn`,trailing:(0,Q.jsx)(y,{"aria-label":`Follow-up`,className:`w-[160px]`,disabled:n,onValueChange:e=>t(t=>({...t,followUpMode:e})),options:[...qn],value:e?.followUpMode??`all`})})]})}function Yn({draft:e,onEnableSkillCommandsChange:t,onExtensionsChange:n,onPackageRowsChange:r,onPromptsChange:i,onRevert:a,onSave:o,onSkillsChange:s,onThemesChange:c,packageError:l,packageRows:u,resourceDirty:d,resources:f,resourceSummary:p,saving:m,scope:h=`harness`,settingsLoading:g,updateDraft:_}){let v=!e||g||!!l,y=p.total===0?`Empty`:p.reloadRequired>0?`${p.total} · ${p.reloadRequired} reload`:`${p.total}`;return(0,Q.jsx)(Xt,{title:h===`skills`?`Skills`:`Pi Harness`,description:h===`skills`?`Pick detected workspace skills and slash-command discovery.`:`Runtime (compaction, retry, transport) plus packages, extensions, prompts, and themes.`,actions:(0,Q.jsx)(Zt,{dirty:d,disabled:v,onRevert:a,onSave:o,saving:m}),children:h===`skills`?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)($,{title:`Skill slash commands`,trailing:(0,Q.jsx)(Ae,{"aria-label":`Skill slash commands`,checked:e?.enableSkillCommands??!0,disabled:!e,onCheckedChange:t})}),(0,Q.jsx)(Xn,{label:`Skills`,count:e?.skills.length??0,children:(0,Q.jsx)(Gn,{addLabel:`Add skill`,catalog:f?.skills??[],placeholder:`../agent-workspace/pi/skills`,values:e?.skills??[],onChange:s})})]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(Jn,{draft:e,updateDraft:_}),(0,Q.jsx)($,{interactive:!1,title:`Catalog`,subtitle:(0,Q.jsx)(`span`,{className:`tabular-nums`,children:y})}),(0,Q.jsxs)(Xn,{label:`Packages`,count:u.length,children:[(0,Q.jsx)(Gn,{addLabel:`Add package`,catalog:f?.packages??[],placeholder:`npm:pi-skills or {"source":"npm:pkg"}`,values:u,onChange:r}),l?(0,Q.jsx)(`p`,{className:`px-1 text-xs text-destructive`,children:l}):null]}),(0,Q.jsx)(Xn,{label:`Extensions`,count:e?.extensions.length??0,children:(0,Q.jsx)(Gn,{addLabel:`Add extension`,catalog:f?.extensions??[],placeholder:`../agent-workspace/pi/extensions`,values:e?.extensions??[],onChange:n})}),(0,Q.jsx)(Xn,{label:`Prompts`,count:e?.prompts.length??0,children:(0,Q.jsx)(Gn,{addLabel:`Add prompt`,catalog:f?.prompts??[],placeholder:`../agent-workspace/pi/prompts`,values:e?.prompts??[],onChange:i})}),(0,Q.jsx)(Xn,{label:`Themes`,count:e?.themes.length??0,children:(0,Q.jsx)(Gn,{addLabel:`Add theme`,catalog:f?.themes??[],placeholder:`../agent-workspace/pi/themes`,values:e?.themes??[],onChange:c})})]})})}function Xn({children:e,count:t,label:n}){return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,Q.jsxs)(`div`,{className:`flex items-baseline justify-between gap-2 px-1`,children:[(0,Q.jsx)(`p`,{className:`text-xs font-medium text-muted-foreground`,children:n}),(0,Q.jsx)(`p`,{className:`text-xs text-muted-foreground tabular-nums`,children:t===1?`1 item`:`${t} items`})]}),e]})}function Zn({isLoading:e,isPending:t,onUpdateProvider:n,providers:r}){let[i,a]=(0,Z.useState)(!1),[o,l]=(0,Z.useState)(``),[u,d]=(0,Z.useState)(``),[f,p]=(0,Z.useState)(!1),[h,g]=(0,Z.useState)(!1),_=(0,Z.useMemo)(()=>r.find(e=>e.id===`daytona`),[r]),v=(0,Z.useMemo)(()=>r.find(e=>e.id===`daytona-target`),[r]),y=!!(_?.isConfigured&&v?.isConfigured),b=()=>{l(``),d(``),p(!1),g(!1)},x=()=>{a(!1),b()},S=async()=>{if(n&&(g(!0),!(!o.trim()&&!u.trim())))try{o.trim()&&await n({providerId:`daytona`,apiKey:o.trim()}),u.trim()&&await n({providerId:`daytona-target`,apiKey:u.trim()}),J.success(`Sandbox Provider updated successfully`),x()}catch(e){J.error(e instanceof Error?e.message:`Failed to update provider`)}},C=o.trim().length>0||u.trim().length>0;return(0,Q.jsx)(Xt,{title:`Sandbox`,description:`Configure isolated execution environments.`,children:e?(0,Q.jsxs)(`div`,{className:`flex items-center justify-center gap-2 py-6 text-xs text-muted-foreground`,children:[(0,Q.jsx)(O,{}),(0,Q.jsx)(`span`,{children:`Loading…`})]}):(0,Q.jsxs)(`div`,{className:`flex flex-col`,children:[(0,Q.jsx)($,{interactive:!1,icon:(0,Q.jsx)(V,{className:`size-4 text-foreground/80`}),title:`Daytona`,subtitle:`DAYTONA_API_KEY · DAYTONA_TARGET`,trailing:(0,Q.jsx)(s,{type:`button`,variant:`ghost`,size:`sm`,className:c(de,`h-7 px-2 text-xs transition-[background-color,transform] duration-150 active:scale-[0.96]`),onClick:()=>{if(i){x();return}a(!0),b()},children:i?`Cancel`:y?`Update`:`Configure`})}),i?(0,Q.jsxs)(Yt,{tone:`inset`,padding:`md`,className:`flex flex-col gap-2 border-t border-border/30`,children:[(0,Q.jsxs)(De,{className:`gap-2`,children:[(0,Q.jsx)(_n,{attemptedSave:h,label:`Daytona API key`,placeholder:`Enter Daytona API Key…`,value:o,showPassword:f,required:!1,onChange:l,onToggleVisibility:()=>p(e=>!e)}),(0,Q.jsx)(vn,{attemptedSave:h,icon:R,label:`Region / target`,placeholder:`e.g. us-east`,value:u,required:!1,onChange:d})]}),(0,Q.jsxs)(ke,{className:`px-3 py-2`,children:[(0,Q.jsx)(m,{}),(0,Q.jsx)(Ee,{className:`text-xs text-pretty`,children:`Settings are stored securely in your local environment overrides. Provide at least one value to save.`})]}),(0,Q.jsx)(`div`,{className:`flex items-center justify-end`,children:(0,Q.jsxs)(s,{type:`button`,size:`sm`,disabled:t||!C,onClick:()=>void S(),children:[t?(0,Q.jsx)(O,{"data-icon":`inline-start`}):null,`Save`]})})]}):null]})})}function Qn(e){return{defaultProvider:e.defaultProvider,defaultModel:e.defaultModel,defaultThinkingLevel:e.defaultThinkingLevel,enabledModels:e.enabledModels===void 0?null:or(e.enabledModels)}}function $n(e){let t=e.enabledModels,n=t==null?null:or(t).toSorted();return{defaultProvider:e.defaultProvider,defaultModel:e.defaultModel,defaultThinkingLevel:e.defaultThinkingLevel,enabledModels:n}}function er(e){return{packages:e.packages,extensions:or(e.extensions),skills:or(e.skills),prompts:or(e.prompts),themes:or(e.themes),enableSkillCommands:e.enableSkillCommands}}function tr(e){return{compaction:{enabled:e.compaction.enabled,reserveTokens:e.compaction.reserveTokens,keepRecentTokens:e.compaction.keepRecentTokens},retry:{enabled:e.retry.enabled,maxRetries:e.retry.maxRetries,baseDelayMs:e.retry.baseDelayMs},transport:e.transport,steeringMode:e.steeringMode,followUpMode:e.followUpMode}}function nr(e,t){return JSON.stringify(e)===JSON.stringify(t)}function rr(e){let t=e?[...e.skills,...e.prompts,...e.extensions,...e.packages,...e.themes,...e.agentsFiles]:[];return{active:t.filter(e=>e.activationStatus===`active`).length,staged:t.filter(e=>e.activationStatus===`staged`).length,reloadRequired:t.filter(e=>e.activationStatus===`reload-required`).length,diagnostics:e?.diagnostics??[],total:t.length}}function ir(e){return e.map(e=>typeof e==`string`?e:JSON.stringify(e))}function ar(e){let t=[];for(let n of e){let e=n.trim();if(!e)continue;if(!e.startsWith(`{`)){t.push(e);continue}let r=JSON.parse(e);if(!r||typeof r!=`object`||Array.isArray(r))throw Error(`Package JSON entries must be objects.`);t.push(r)}return t}function or(e){return e.flatMap(e=>{let t=e.trim();return t?[t]:[]})}function sr({draft:e,setDraft:t,updateDraft:n,settings:r,providers:i,models:a,modelCatalog:o,onDiscoverModels:s,saveSettings:c,setSavingSection:l}){let[u,d]=(0,Z.useState)(``),[f,p]=(0,Z.useState)([]),[m,h]=(0,Z.useState)(null),g=(0,Z.useRef)(null),_=(0,Z.useMemo)(()=>{let e=new Set;for(let t of i)t.isConfigured&&e.add(t.id);return e},[i]),v=o??a,y=(0,Z.useMemo)(()=>{let t=new Map;for(let e of v)_.has(e.provider)&&t.set(e.id,e);for(let e of f)_.has(e.provider)&&t.set(e.id,e);let n=[...t.values()];return!e?.defaultProvider||!e.defaultModel||n.some(t=>t.provider===e.defaultProvider&&t.modelId===e.defaultModel)||!_.has(e.defaultProvider)?n:[{id:sn(e.defaultProvider,e.defaultModel),name:e.defaultModel,provider:e.defaultProvider,modelId:e.defaultModel,available:!1},...n]},[v,_,f,e]),b=g.current??(r?$n(r.effective):null),x=!!e&&!!b&&!nr($n(e),b),S=(0,Z.useCallback)(()=>{g.current=null},[]),C=async(e,n)=>{t(e),l(`models`);try{let r=await c(Qn(e)),i={...r.effective,enabledModels:r.project.enabledModels??e.enabledModels??r.effective.enabledModels,defaultProvider:r.project.defaultProvider??e.defaultProvider??r.effective.defaultProvider,defaultModel:r.project.defaultModel??e.defaultModel??r.effective.defaultModel,defaultThinkingLevel:r.project.defaultThinkingLevel??e.defaultThinkingLevel??r.effective.defaultThinkingLevel};return g.current=$n(i),t(i),n?.silent||J.success(`Pi settings saved`),!0}catch(e){return J.error(e instanceof Error?e.message:`Settings save failed`),!1}finally{l(null)}},w=e=>{C(e)},T=(t,n)=>{if(!e)return;let r={...e,enabledModels:ln({currentPatterns:e.enabledModels,enabled:n,model:t,models:y})};w(r)};return{modelFilter:u,setModelFilter:d,modelOptions:y,modelDirty:x,addModels:t=>{if(!e||t.length===0)return;let n=e.enabledModels;for(let e of t)n=ln({currentPatterns:n,enabled:!0,model:e,models:y});w({...e,enabledModels:n})},removeModel:e=>{T(e,!1)},setDefaultModel:t=>{e&&C({...e,defaultProvider:t.provider,defaultModel:t.modelId})},discoverProvider:async e=>{if(s){h(e);try{let t=await s(e);p(e=>{let n=new Map(e.map(e=>[e.id,e]));for(let e of t)n.set(e.id,e);return[...n.values()]})}finally{h(null)}}},discoveringProviderId:m,commitModelSettings:C,revertModelDraft:()=>{r&&n(e=>({...e,defaultProvider:r.effective.defaultProvider,defaultModel:r.effective.defaultModel,defaultThinkingLevel:r.effective.defaultThinkingLevel,enabledModels:r.effective.enabledModels}))},resetCommittedModelBaseline:S}}function cr({draft:e,settings:t,updateDraft:n}){let[r,i]=(0,Z.useState)(null),[a,o]=(0,Z.useState)(),s=(0,Z.useMemo)(()=>ir(t?.effective.packages??[]),[t?.effective.packages]),c=r??s;return{packageRows:c,packageError:a,resourceDirty:!!e&&!!t&&(!nr(er(e),er(t.effective))||!nr(tr(e),tr(t.effective))||!nr(c.filter(e=>e.trim()),ir(t.effective.packages))),handlePackageRowsChange:e=>{i(e);try{let t=ar(e);o(void 0),n(e=>({...e,packages:t}))}catch(e){o(e instanceof Error?e.message:String(e))}},revertResourceDraft:()=>{t&&(n(e=>({...e,packages:t.effective.packages,extensions:t.effective.extensions,skills:t.effective.skills,prompts:t.effective.prompts,themes:t.effective.themes,enableSkillCommands:t.effective.enableSkillCommands,compaction:t.effective.compaction,retry:t.effective.retry,transport:t.effective.transport,steeringMode:t.effective.steeringMode,followUpMode:t.effective.followUpMode})),i(null),o(void 0))}}}var lr={appearance:{id:`appearance`,order:10,title:`Appearance`,ariaLabel:`Appearance settings`,icon:He,group:`workspace`},chat:{id:`chat`,order:20,title:`Chat`,ariaLabel:`Chat settings`,icon:Ve,group:`workspace`},mcp:{id:`mcp`,order:25,title:`MCP`,ariaLabel:`MCP connection settings`,icon:te,group:`workspace`},sandbox:{id:`sandbox`,order:30,title:`Sandbox`,ariaLabel:`Sandbox settings`,icon:V,group:`advanced`},providers:{id:`providers`,order:40,title:`Providers`,ariaLabel:`Provider settings`,icon:Re,group:`models`},"llm-models":{id:`llm-models`,order:50,title:`LLM Models`,ariaLabel:`LLM model settings`,icon:M,group:`models`},skills:{id:`skills`,order:60,title:`Skills`,ariaLabel:`Skill settings`,icon:z,group:`advanced`},"pi-harness":{id:`pi-harness`,order:70,title:`Pi Harness`,ariaLabel:`Pi harness settings`,icon:A,group:`advanced`},keybindings:{id:`keybindings`,order:80,title:`Keybindings`,ariaLabel:`Keybinding settings`,icon:H,group:`advanced`},sessions:{id:`sessions`,order:90,title:`Sessions`,ariaLabel:`Session settings`,icon:Ke,group:`workspace`}},ur=[{id:`workspace`,label:`Workspace`},{id:`models`,label:`Models`},{id:`advanced`,label:`Advanced`}],dr=Object.values(lr).sort((e,t)=>e.order-t.order);function fr(e){return dr.some(t=>t.id===e)}function pr({children:e,description:t,label:n}){return(0,Q.jsxs)(X,{orientation:`horizontal`,className:`items-center justify-between gap-6 rounded-xl border p-4`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0`,children:[(0,Q.jsx)(Y,{children:n}),(0,Q.jsx)(Oe,{children:t})]}),(0,Q.jsx)(`div`,{className:`shrink-0`,children:e})]})}function mr(){let{isLoadingMcp:e,isLoadingProviders:t,isUpdatingMcp:n,isUpdatingProvider:r,mcpConnections:i=[],modelCatalog:a,onDiscoverModels:o,onMcpOAuth:s,onOAuthLogin:c,onRemoveMcp:l,onRemoveProvider:u,onThemePreferenceChange:d,onUpdateMcp:f,onUpdateProvider:p,providers:m=[],saveSettings:h,settings:g,settingsLoading:_,themePreference:v}=re(),{models:y,resources:b}=ne(),[x,S]=(0,Z.useState)(null),[C,w]=(0,Z.useState)(null),T=rr(b),E=e=>{S(t=>t&&e(t))},{packageRows:D,packageError:O,resourceDirty:k,handlePackageRowsChange:A,revertResourceDraft:j}=cr({draft:x,settings:g,updateDraft:E}),{modelFilter:M,setModelFilter:N,modelOptions:P,modelDirty:F,addModels:I,removeModel:L,setDefaultModel:R,discoverProvider:z,discoveringProviderId:B,commitModelSettings:V,revertModelDraft:H,resetCommittedModelBaseline:U}=sr({draft:x,setDraft:S,updateDraft:E,settings:g,providers:m,models:y,modelCatalog:a,onDiscoverModels:o,saveSettings:h,setSavingSection:w}),W=F||k;return(0,Z.useEffect)(()=>{if(!g)return;let e=g.effective;x&&W||x&&nr(x,e)||S(e)},[x,W,g]),{isLoadingMcp:e,isLoadingProviders:t,isUpdatingMcp:n,isUpdatingProvider:r,mcpConnections:i,onMcpOAuth:s,onOAuthLogin:c,onRemoveMcp:l,onRemoveProvider:u,onThemePreferenceChange:d,onUpdateMcp:f,onUpdateProvider:p,providers:m,resources:b,settingsLoading:_,themePreference:v,draft:x,savingSection:C,packageRows:D,packageError:O,modelFilter:M,setModelFilter:N,resourceSummary:T,modelOptions:P,modelDirty:F,resourceDirty:k,revertResourceDraft:j,revertModelDraft:H,resetDraft:()=>{g&&S(g.effective)},updateDraft:E,handlePackageRowsChange:A,addModels:I,removeModel:L,setDefaultModel:R,discoverProvider:z,discoveringProviderId:B,saveSection:async(e,t)=>{if(e===`models`&&x){if(!await V(x))throw Error(`Settings save failed`);return}w(e);try{await h(t),J.success(`Pi settings saved`)}catch(e){throw J.error(e instanceof Error?e.message:`Settings save failed`),e}finally{w(null)}},requestCloseSettings:async()=>C===`models`?`wait`:k?`discard-prompt`:F&&x?await V(x,{silent:!0})?`close`:`discard-prompt`:`close`,resetCommittedModelBaseline:U}}function hr({active:e,onClick:t,icon:n,label:r}){return(0,Q.jsxs)(`button`,{type:`button`,onClick:t,className:c(`flex w-full items-center gap-2 rounded-lg px-2 py-1.5 text-left text-label transition-colors`,e?`bg-background text-foreground shadow-sm`:`text-muted-foreground hover:bg-muted hover:text-foreground`),children:[(0,Q.jsx)(n,{className:`size-4 shrink-0`}),(0,Q.jsx)(`span`,{children:r})]})}function gr({open:e,onOpenChange:t,initialTab:n}){return(0,Z.useEffect)(()=>{se(ce())},[]),(0,Q.jsx)(_r,{initialTab:n,onOpenChange:t,open:e})}function _r({initialTab:e,onOpenChange:t,open:n}){let r=(0,Z.useRef)(()=>{t(!1)});return(0,Q.jsx)(Te,{open:n,onOpenChange:(e,n)=>{if(e){t(!0);return}r.current(n)},children:n?(0,Q.jsx)(yr,{initialTab:e,onCloseAttemptRef:r,onOpenChange:t}):null})}function vr({activeTab:e,form:t,preferences:n,updatePreference:r}){let{isLoadingMcp:i,isLoadingProviders:a,isUpdatingMcp:o,isUpdatingProvider:s,mcpConnections:c,onMcpOAuth:l,onOAuthLogin:u,onRemoveMcp:d,onRemoveProvider:f,onThemePreferenceChange:p,onUpdateMcp:m,onUpdateProvider:h,providers:g,resources:_,settingsLoading:v,themePreference:b,draft:x,savingSection:S,packageRows:C,packageError:w,modelFilter:T,setModelFilter:E,resourceSummary:D,modelOptions:O,modelDirty:k,resourceDirty:A,revertResourceDraft:j,revertModelDraft:M,updateDraft:N,handlePackageRowsChange:P,addModels:F,removeModel:I,setDefaultModel:L,discoverProvider:R,discoveringProviderId:z,saveSection:B}=t,V=e=>(0,Q.jsx)(Yn,{scope:e,draft:x,updateDraft:N,onEnableSkillCommandsChange:e=>N(t=>({...t,enableSkillCommands:e})),onExtensionsChange:e=>N(t=>({...t,extensions:e})),onPackageRowsChange:P,onPromptsChange:e=>N(t=>({...t,prompts:e})),onRevert:j,onSave:()=>x&&B(`resources`,{...er(x),...e===`harness`?tr(x):{}}),onSkillsChange:e=>N(t=>({...t,skills:e})),onThemesChange:e=>N(t=>({...t,themes:e})),packageError:w,packageRows:C,resourceDirty:A,resources:_,resourceSummary:D,saving:S===`resources`,settingsLoading:v});return{appearance:()=>(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`h3`,{className:`text-lg font-medium`,children:`Appearance`}),(0,Q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Customize the look and feel of the interface.`})]}),(0,Q.jsx)(hn,{onThemePreferenceChange:p,themePreference:b}),(0,Q.jsx)(pr,{label:`Density`,description:`Adjust spacing across chat and panels.`,children:(0,Q.jsx)(y,{"aria-label":`Density`,value:n.density,onValueChange:e=>r(`density`,e),options:[{label:`Comfortable`,value:`comfortable`},{label:`Compact`,value:`compact`}]})}),(0,Q.jsx)(pr,{label:`Motion`,description:`Respect the system setting or reduce UI motion.`,children:(0,Q.jsx)(y,{"aria-label":`Motion`,value:n.motion,onValueChange:e=>r(`motion`,e),options:[{label:`System`,value:`system`},{label:`Reduced`,value:`reduced`}]})})]}),chat:()=>(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`h3`,{className:`text-lg font-medium`,children:`Chat`}),(0,Q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Control transcript behavior.`})]}),(0,Q.jsx)(pr,{label:`Streaming transcript`,description:`Follow new output or preserve the reading position.`,children:(0,Q.jsx)(y,{"aria-label":`Streaming transcript`,value:n.transcript,onValueChange:e=>r(`transcript`,e),options:[{label:`Follow output`,value:`follow`},{label:`Manual`,value:`manual`}]})})]}),mcp:()=>(0,Q.jsx)(on,{connections:c,isLoading:i??!1,isPending:o??!1,onOAuth:l,onRemove:d,onUpsert:m}),sandbox:()=>(0,Q.jsx)(Zn,{isLoading:a??!1,isPending:s??!1,providers:g,onUpdateProvider:h}),providers:()=>(0,Q.jsx)(Rn,{isLoading:a??!1,isPending:s??!1,providers:g,onOAuthLogin:u,onRemoveProvider:f,onUpdateProvider:h}),"llm-models":()=>(0,Q.jsx)(pn,{draft:x,discoveringProviderId:z,modelDirty:k,modelFilter:T,modelOptions:O,onAddModels:F,onDiscoverProvider:R,onModelFilterChange:E,onRemoveModel:I,onSetDefaultModel:L,providers:g,onRevert:M,onSave:()=>x&&B(`models`,Qn(x)),saving:S===`models`,settingsLoading:v}),skills:()=>V(`skills`),"pi-harness":()=>V(`harness`),keybindings:()=>(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4 text-sm`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`h3`,{className:`text-lg font-medium`,children:`Keybindings`}),(0,Q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Every shortcut also has a visible control in the header, panel, or composer.`})]}),(0,Q.jsxs)(`div`,{className:`rounded-xl border p-4 font-mono text-xs leading-7`,children:[(0,Q.jsx)(`div`,{children:`Command palette: Ctrl/Command K`}),(0,Q.jsx)(`div`,{children:`Conversation sidebar: Ctrl/Command B`}),(0,Q.jsx)(`div`,{children:`Toggle Resources: Ctrl/Command Shift 1`}),(0,Q.jsx)(`div`,{children:`Toggle Workspace: Ctrl/Command Shift 2`}),(0,Q.jsx)(`div`,{children:`Toggle Artifacts: Ctrl/Command Shift 3`}),(0,Q.jsx)(`div`,{children:`Focus active panel: Ctrl/Command Shift P`}),(0,Q.jsx)(`div`,{children:`Return focus to chat: Ctrl/Command Shift C`}),(0,Q.jsx)(`div`,{children:`Close active panel: Escape`})]})]}),sessions:()=>(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`h3`,{className:`text-lg font-medium`,children:`Sessions`}),(0,Q.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Set local conversation preferences. Provider and workspace configuration remains Fleet Prime-owned.`})]}),(0,Q.jsx)(pr,{label:`Confirm session deletion`,description:`Require confirmation before deleting a saved conversation.`,children:(0,Q.jsx)(Ae,{checked:n.confirmSessionDelete,onCheckedChange:e=>r(`confirmSessionDelete`,e),"aria-label":`Confirm session deletion`})}),(0,Q.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Provider credentials, OAuth, models, sandbox configuration, and workspace selection are managed by Fleet Prime and its CLI.`})]})}[e]()}function yr({initialTab:e,onCloseAttemptRef:t,onOpenChange:n}){let r=mr(),{resourceDirty:i,revertResourceDraft:a,resetDraft:o,requestCloseSettings:s,resetCommittedModelBaseline:c}=r,[l,u]=(0,Z.useState)(()=>e??`appearance`),[d,f]=(0,Z.useState)(ce);(0,Z.useEffect)(()=>{oe(d)},[d]);let p=(e,t)=>{f(n=>({...n,[e]:t}))},[m,h]=(0,Z.useState)(!1),[g,_]=(0,Z.useState)(`resource`),v=dr.find(e=>e.id===l)??dr[0],b=(e,t)=>{if(e){n(!0);return}t?.cancel(),(async()=>{let e=await s();if(e===`close`){n(!1);return}if(e===`wait`){J.message(`Saving model list…`);return}_(i?`resource`:`model`),h(!0)})()};t.current=e=>{b(!1,e)};let x=()=>{a(),o(),c(),h(!1),n(!1)};(0,Z.useEffect)(()=>{c()},[c]);let S=(0,Q.jsx)(vr,{activeTab:l,form:r,preferences:d,updatePreference:p});return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(Se,{className:`flex h-[min(640px,calc(100dvh-4rem))] w-full max-w-[calc(100%-2rem)] overflow-hidden p-0 sm:max-w-[min(860px,calc(100%-2rem))]`,children:[(0,Q.jsx)(Ce,{className:`sr-only`,children:`Settings`}),(0,Q.jsx)(we,{className:`sr-only`,children:`Customize your settings here.`}),(0,Q.jsxs)(`div`,{className:`flex h-full min-h-0 min-w-0`,children:[(0,Q.jsxs)(`nav`,{"aria-label":`Settings sections`,className:`hidden h-full w-52 shrink-0 flex-col border-r border-border bg-sidebar sm:flex`,children:[(0,Q.jsx)(`div`,{className:`px-4 pt-5 pb-2 text-label font-semibold`,children:`Settings`}),(0,Q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-2 pb-4`,children:ur.map(e=>(0,Q.jsxs)(`div`,{className:`py-2`,children:[(0,Q.jsx)(`p`,{className:`px-2 pb-1 text-caption font-medium uppercase tracking-wide text-muted-foreground`,children:e.label}),(0,Q.jsx)(`div`,{className:`flex flex-col gap-0.5`,children:dr.filter(t=>t.group===e.id).map(e=>(0,Q.jsx)(hr,{active:l===e.id,onClick:()=>u(e.id),icon:e.icon,label:e.title},e.id))})]},e.id))})]}),(0,Q.jsxs)(`main`,{className:`flex h-full min-h-0 min-w-0 flex-1 flex-col overflow-hidden`,children:[(0,Q.jsx)(`header`,{className:`flex h-14 shrink-0 items-center gap-2 border-b border-border/10 px-6`,children:(0,Q.jsx)(`div`,{className:`flex flex-1 items-center justify-between`,children:(0,Q.jsx)(rt,{children:(0,Q.jsxs)(it,{children:[(0,Q.jsx)(at,{className:`hidden sm:block`,children:`Settings`}),(0,Q.jsx)(st,{className:`hidden sm:block`}),(0,Q.jsx)(at,{children:(0,Q.jsx)(ot,{children:v.title})})]})})})}),(0,Q.jsx)(`div`,{className:`shrink-0 border-b border-border/10 bg-muted/5 px-4 py-2.5 sm:hidden`,children:(0,Q.jsx)(y,{"aria-label":`Settings sections`,value:l,onValueChange:e=>{fr(e)&&u(e)},options:dr.map(e=>({label:e.title,value:e.id}))})}),(0,Q.jsx)(qt,{className:`min-h-0 flex-1`,children:(0,Q.jsx)(`div`,{id:`panel-${l}`,role:`tabpanel`,"aria-label":v.title,tabIndex:0,className:`p-6 outline-none`,children:S})})]})]})]}),(0,Q.jsx)(be,{open:m,onOpenChange:h,children:(0,Q.jsxs)(he,{children:[(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsx)(ye,{children:`Discard unsaved changes?`}),(0,Q.jsx)(me,{children:g===`resource`?`Your resource changes have not been committed. If you leave settings now, those changes will be lost.`:`Your model list could not be saved. If you leave settings now, those changes will be lost.`})]}),(0,Q.jsxs)(_e,{children:[(0,Q.jsx)(ve,{children:`Keep editing`}),(0,Q.jsx)(ge,{onClick:x,children:`Discard changes`})]})]})})]})}export{gr as SettingsDialog};
@@ -1 +0,0 @@
1
- import{t as e}from"./createLucideIcon-_dfI7Arx.js";var t=e(`external-link`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`M10 14 21 3`,key:`gplh6r`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`,key:`a6xqqp`}]]),n=e(`globe`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]),r=e(`shield-check`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),i=e(`sparkles`,[[`path`,{d:`M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z`,key:`1s2grr`}],[`path`,{d:`M20 2v4`,key:`1rf3ol`}],[`path`,{d:`M22 4h-4`,key:`gwowj6`}],[`circle`,{cx:`4`,cy:`20`,r:`2`,key:`6kqj1y`}]]);export{t as i,r as n,n as r,i as t};
@@ -1 +0,0 @@
1
- import{t as e}from"./createLucideIcon-_dfI7Arx.js";var t=e(`square`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}]]);export{t};
@@ -1 +0,0 @@
1
- import{t as e}from"./createLucideIcon-_dfI7Arx.js";var t=e(`square-terminal`,[[`path`,{d:`m7 11 2-2-2-2`,key:`1lz0vl`}],[`path`,{d:`M11 13h4`,key:`1p7l4v`}],[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}]]);export{t};
@@ -1 +0,0 @@
1
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-CwJFpaho.js";import{t as n}from"./jsx-runtime-NZYk81nU.js";import{t as r}from"./button-Dl0ce3Y5.js";import{t as i}from"./utils-Brtgag-m.js";import{t as a}from"./bot-DbB9BKL0.js";import{t as o}from"./chevron-down-DUUprRP5.js";import{a as s,c,d as l,f as u,i as d,l as f,m as p,n as m,o as h,p as g,r as _,t as v,u as y}from"./virtualized-turn-list-mL3ONUUA.js";import{t as b}from"./session-tool-renderer-Bd3dsE2D.js";import{n as x}from"./file-text-TmalmYrb.js";import{n as S,t as C}from"./loader-circle-B5GIZGxd.js";import{t as w}from"./tool-timeline-VnMRQoLS.js";import{t as T}from"./refresh-cw-l9WPHRkq.js";import{t as E}from"./prime-agent-artifacts-C-g1VPiW.js";var D=e(t(),1),O=n();function k({children:e,tree:t,className:n}){let r=(0,D.useMemo)(()=>d(e,t),[e,t]),a=r.some(e=>e.status===`queued`||e.status===`running`||e.status===`recovering`),[c,l]=(0,D.useState)(a);return r.length===0?null:(0,O.jsxs)(`section`,{className:i(`mt-2 rounded-xl border border-border/60 bg-muted/20`,n),children:[(0,O.jsxs)(`button`,{type:`button`,"aria-expanded":c||a,onClick:()=>l(e=>!e),className:`flex w-full items-center gap-2 px-3 py-2 text-left text-sm focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,children:[a?(0,O.jsx)(C,{className:`size-3.5 animate-spin text-primary`}):(0,O.jsx)(S,{className:`size-3.5 text-emerald-600 dark:text-emerald-400`}),(0,O.jsx)(`span`,{className:`flex-1 font-medium`,children:a?`Subagents working`:`Subagents completed`}),(0,O.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:r.length}),(0,O.jsx)(o,{className:i(`size-3.5 text-muted-foreground transition-transform`,(c||a)&&`rotate-180`)})]}),c||a?(0,O.jsx)(`div`,{className:`space-y-1 border-t border-border/50 px-3 py-2`,children:r.map(e=>(0,O.jsxs)(`div`,{className:`flex min-w-0 items-start gap-2`,style:{paddingLeft:`${Math.max(0,e.depth??0)*12}px`},children:[(0,O.jsx)(`span`,{className:`mt-0.5 shrink-0`,children:s(e.status)}),(0,O.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,O.jsxs)(`div`,{className:`flex min-w-0 items-baseline gap-2`,children:[(0,O.jsx)(`span`,{className:`truncate text-sm text-foreground/85`,children:e.label}),e.model?(0,O.jsx)(`span`,{className:`truncate font-mono text-micro text-muted-foreground`,children:e.model}):null]}),e.answerPreview||e.activity?.toolName||e.error?(0,O.jsx)(`p`,{className:`truncate text-xs text-muted-foreground`,children:e.error??e.answerPreview??e.activity?.toolName}):null]}),(0,O.jsx)(`span`,{className:`shrink-0 text-micro capitalize text-muted-foreground`,children:e.status})]},e.id))}):null]})}function A(e){return e.status===`running`||e.status===`recovering`?`streaming`:e.status===`error`||e.status===`failed`?`error`:`ready`}function j({turn:e,isLast:t,isStreaming:n,artifacts:r,presentation:i}){let a=(0,D.useMemo)(()=>e.assistants.flatMap((r,i)=>c(f(r.parts??[]),{messageId:r.id,isLast:t&&i===e.assistants.length-1,isStreaming:n,suppressQuestionTool:!0,ToolRendererComponent:b,TextRendererComponent:m})),[t,n,e.assistants]);return(0,O.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[e.user?(0,O.jsx)(y,{from:`user`,children:(0,O.jsx)(l,{children:(0,O.jsx)(h,{message:e.user,enableImagePreview:!1})})}):null,e.assistants.length>0?(0,O.jsx)(y,{from:`assistant`,children:(0,O.jsx)(l,{children:(0,O.jsx)(g,{variant:`ghost`,children:(0,O.jsxs)(p,{children:[t?(0,O.jsx)(w,{messages:e.assistants,artifacts:r,streaming:n}):null,(0,O.jsx)(`div`,{className:`flex flex-col gap-3`,children:a}),t&&i?(0,O.jsx)(k,{tree:i.rlmTree,children:i.rlmChildren}):null]})})})}):null]})}function M(e,t){return e.user?.id??e.assistants[0]?.id??`subagent-turn-${t}`}function N({child:e,parentSessionId:t,transcript:n,onRefresh:o,fullWidth:s=!1,status:c}){let l=(0,D.useMemo)(()=>n?.status===`loading`?[]:_(n?.messages??[]),[n]),d=c??A(e),f=(0,D.useMemo)(()=>n?.status===`loading`?[]:E(n?.messages??[],n?.presentation,d),[d,n]),p=(0,D.useMemo)(()=>f.flatMap(e=>e.artifacts),[f]),m=n?.presentation,h=(0,D.useCallback)((e,t)=>{let n=t===l.length-1;return(0,O.jsx)(j,{turn:e,isLast:n,isStreaming:n&&d===`streaming`,artifacts:n?p:[],presentation:n?m:void 0})},[p,d,m,l.length]),g=e.sessionName||e.label,[y,b]=(0,D.useState)(null);(0,D.useEffect)(()=>{b(e.lastHeardFrom?new Date(e.lastHeardFrom).toLocaleTimeString():null)},[e.lastHeardFrom]);let S=(0,D.useRef)(null);return(0,O.jsxs)(`section`,{"aria-label":`Subagent thread: ${e.label}`,className:i(s?`flex min-h-0 min-w-0 flex-1 flex-col`:`space-y-2`,`min-w-0`),"data-testid":s?`subagent-conversation-surface`:void 0,children:[(0,O.jsxs)(`div`,{className:`flex min-w-0 items-start gap-2 rounded-md border border-border/60 bg-background px-2.5 py-2`,children:[(0,O.jsx)(a,{className:`mt-0.5 size-3.5 shrink-0 text-foreground/45`}),(0,O.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,O.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,O.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs font-medium text-foreground/80`,children:g}),(0,O.jsx)(`span`,{className:`shrink-0 text-micro capitalize text-foreground/45`,children:e.status})]}),e.model?(0,O.jsx)(`p`,{className:`truncate font-mono text-micro text-foreground/40`,children:e.model}):null,y?(0,O.jsxs)(`p`,{className:`truncate text-micro text-foreground/40`,children:[`Heartbeat: `,y]}):null,e.answerPreview||e.recap?(0,O.jsx)(`p`,{className:`mt-1 line-clamp-3 whitespace-pre-wrap text-caption leading-4 text-foreground/55`,children:e.answerPreview??e.recap}):null]}),o?(0,O.jsx)(r,{"aria-label":`Refresh ${e.label} thread`,className:`shrink-0 text-foreground/40 hover:text-foreground/70`,onClick:o,size:`icon-sm`,title:`Refresh ${e.label} thread`,type:`button`,variant:`ghost`,children:(0,O.jsx)(T,{className:i(`size-3.5`,n?.status===`loading`&&`animate-spin`)})}):null]}),t?n?.status===`loading`?(0,O.jsx)(`div`,{className:i(`flex items-center justify-center rounded-md border border-dashed border-border/70 text-caption text-foreground/45`,s?`min-h-32 flex-1`:`min-h-32`),children:`Loading subagent thread…`}):n?.status===`error`&&l.length===0?(0,O.jsxs)(`div`,{role:`alert`,className:`flex items-start gap-2 rounded-md border border-destructive/30 bg-destructive/5 px-3 py-2 text-caption leading-4 text-destructive`,children:[(0,O.jsx)(x,{className:`mt-0.5 size-3.5 shrink-0`}),(0,O.jsx)(`span`,{children:n.error?.message??`Unable to load this subagent thread.`})]}):l.length===0?(0,O.jsx)(`p`,{className:`rounded-md border border-dashed border-border/70 p-3 text-caption leading-4 text-foreground/45`,children:`This subagent thread has no messages yet.`}):(0,O.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[n?.error?(0,O.jsxs)(`div`,{role:`alert`,className:`mx-4 mt-2 flex items-start gap-2 rounded-md border border-destructive/30 bg-destructive/5 px-3 py-2 text-caption leading-4 text-destructive sm:mx-6`,children:[(0,O.jsx)(x,{className:`mt-0.5 size-3.5 shrink-0`}),(0,O.jsx)(`span`,{children:n.error.message})]}):null,(0,O.jsx)(`div`,{className:i(`min-h-0 rounded-md border border-border/60 bg-background`,s?`flex min-h-0 flex-1 flex-col border-x-0 rounded-none border-b-0`:`h-96 max-h-[calc(100svh-18rem)]`),children:(0,O.jsx)(u,{busy:d===`streaming`,className:s?`min-h-0 flex-1`:void 0,followOutput:d===`streaming`,label:`Transcript for ${e.label}`,smooth:d!==`streaming`,viewportRef:S,viewportClassName:s?`px-0`:void 0,contentClassName:i(`flex flex-col gap-4`,s?`mx-auto w-full max-w-3xl px-4 py-6 sm:px-6`:`px-2.5 py-3`),children:(0,O.jsx)(v,{estimateSize:320,getItemKey:M,itemGap:16,items:l,renderItem:h,viewportRef:S})})})]}):(0,O.jsx)(`p`,{className:`rounded-md border border-dashed border-border/70 p-3 text-caption leading-4 text-foreground/45`,children:`This subagent thread is unavailable until the parent session is active.`})]})}export{N as t};
@@ -1 +0,0 @@
1
- import{t as e}from"./createLucideIcon-_dfI7Arx.js";var t=e(`keyboard`,[[`path`,{d:`M10 8h.01`,key:`1r9ogq`}],[`path`,{d:`M12 12h.01`,key:`1mp3jc`}],[`path`,{d:`M14 8h.01`,key:`1primd`}],[`path`,{d:`M16 12h.01`,key:`1l6xoz`}],[`path`,{d:`M18 8h.01`,key:`emo2bl`}],[`path`,{d:`M6 8h.01`,key:`x9i8wu`}],[`path`,{d:`M7 16h10`,key:`wp8him`}],[`path`,{d:`M8 12h.01`,key:`czm47f`}],[`rect`,{width:`20`,height:`16`,x:`2`,y:`4`,rx:`2`,key:`18n3k1`}]]),n=e(`monitor`,[[`rect`,{width:`20`,height:`14`,x:`2`,y:`3`,rx:`2`,key:`48i651`}],[`line`,{x1:`8`,x2:`16`,y1:`21`,y2:`21`,key:`1svkeh`}],[`line`,{x1:`12`,x2:`12`,y1:`17`,y2:`21`,key:`vw1qmm`}]]),r=e(`moon`,[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]),i=e(`sun`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]);export{t as i,r as n,n as r,i as t};
@@ -1 +0,0 @@
1
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-CwJFpaho.js";import{t as n}from"./jsx-runtime-NZYk81nU.js";import{h as r,m as i}from"./button-Dl0ce3Y5.js";import{t as a}from"./utils-Brtgag-m.js";import{O as o,T as s,_ as c,f as l,nt as u,rt as d,st as ee,t as f,v as te}from"./createBaseUIEventDetails-B58Jldei.js";import{t as p}from"./useBaseUiId-D9ZGPZ6f.js";import{t as m}from"./dist-52wg4XPY.js";import{t as ne}from"./useControlled-CgAAWIy9.js";import{a as re,c as h,i as g,n as _,o as ie,r as ae,s as oe}from"./input-CxZp56Im.js";var v=n(),y=e(t(),1);function se(e,t,n,r=!0,i){let[a,o]=y.useState(),s=p(i?`${i}-label`:void 0),c=e??t??a;return d(()=>{let i=e||t||!r?void 0:b(n.current,s);a!==i&&o(i)}),c}function b(e,t){let n=x(e);if(n)return!n.id&&t&&(n.id=t),n.id||void 0}function x(e){if(!e)return;let t=e.parentElement;if(t&&t.tagName===`LABEL`)return t;let n=e.id;if(n){let t=e.nextElementSibling;if(t&&t.htmlFor===n)return t}let r=e.labels;return r&&r[0]}var S=m(`group/alert relative grid w-full gap-0.5 rounded-lg border px-2.5 py-2 text-left text-sm has-data-[slot=alert-action]:relative has-data-[slot=alert-action]:pr-18 has-[>svg]:grid-cols-[auto_1fr] has-[>svg]:gap-x-2 *:[svg]:row-span-2 *:[svg]:translate-y-0.5 *:[svg]:text-current *:[svg:not([class*='size-'])]:size-4`,{variants:{variant:{default:`bg-card text-card-foreground`,destructive:`bg-card text-destructive *:data-[slot=alert-description]:text-destructive/90 *:[svg]:text-current`}},defaultVariants:{variant:`default`}});function C({className:e,variant:t,...n}){return(0,v.jsx)(`div`,{"data-slot":`alert`,role:`alert`,className:a(S({variant:t}),e),...n})}function w({className:e,...t}){return(0,v.jsx)(`div`,{"data-slot":`alert-title`,className:a(`font-medium group-has-[>svg]/alert:col-start-2 [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground`,e),...t})}function T({className:e,...t}){return(0,v.jsx)(`div`,{"data-slot":`alert-description`,className:a(`text-sm text-balance text-muted-foreground md:text-pretty [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground [&_p:not(:last-child)]:mb-4`,e),...t})}function E({className:e,...t}){return(0,v.jsx)(`label`,{"data-slot":`label`,className:a(`flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50`,e),...t})}var D=y.forwardRef(function(e,t){let{className:n,render:r,orientation:i=`horizontal`,style:a,...o}=e;return s(`div`,e,{state:{orientation:i},ref:t,props:[{role:`separator`,"aria-orientation":i},o]})});function ce({className:e,orientation:t=`horizontal`,...n}){return(0,v.jsx)(D,{"data-slot":`separator`,orientation:t,className:a(`shrink-0 bg-border data-horizontal:h-px data-horizontal:w-full data-vertical:w-px data-vertical:self-stretch`,e),...n})}function O({className:e,...t}){return(0,v.jsx)(`div`,{"data-slot":`field-group`,className:a(`group/field-group @container/field-group flex w-full flex-col gap-5 data-[slot=checkbox-group]:gap-3 *:data-[slot=field-group]:gap-4`,e),...t})}var k=m(`group/field flex w-full gap-2 data-[invalid=true]:text-destructive`,{variants:{orientation:{vertical:`flex-col *:w-full [&>.sr-only]:w-auto`,horizontal:`flex-row items-center has-[>[data-slot=field-content]]:items-start *:data-[slot=field-label]:flex-auto has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px`,responsive:`flex-col *:w-full @md/field-group:flex-row @md/field-group:items-center @md/field-group:*:w-auto @md/field-group:has-[>[data-slot=field-content]]:items-start @md/field-group:*:data-[slot=field-label]:flex-auto [&>.sr-only]:w-auto @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px`}},defaultVariants:{orientation:`vertical`}});function A({className:e,orientation:t=`vertical`,...n}){return(0,v.jsx)(`div`,{role:`group`,"data-slot":`field`,"data-orientation":t,className:a(k({orientation:t}),e),...n})}function j({className:e,...t}){return(0,v.jsx)(E,{"data-slot":`field-label`,className:a(`group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50 has-data-checked:border-primary/30 has-data-checked:bg-primary/5 has-[>[data-slot=field]]:rounded-lg has-[>[data-slot=field]]:border *:data-[slot=field]:p-2.5 dark:has-data-checked:border-primary/20 dark:has-data-checked:bg-primary/10`,`has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col`,e),...t})}function M({className:e,...t}){return(0,v.jsx)(`p`,{"data-slot":`field-description`,className:a(`text-left text-sm leading-normal font-normal text-muted-foreground group-has-data-horizontal/field:text-balance [[data-variant=legend]+&]:-mt-1.5`,`last:mt-0 nth-last-2:-mt-1`,`[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary`,e),...t})}var N=y.createContext(void 0);function P(){let e=y.useContext(N);if(e===void 0)throw Error(u(63));return e}var F=`data-checked`,I=`data-unchecked`,L={...h,checked(e){return e?{[F]:``}:{[I]:``}}},R=y.forwardRef(function(e,t){let{checked:n,className:a,defaultChecked:u,"aria-labelledby":m,form:h,id:b,inputRef:x,name:S,nativeButton:C=!1,onCheckedChange:w,readOnly:T=!1,required:E=!1,disabled:D=!1,render:ce,uncheckedValue:O,value:k,style:A,...j}=e,{clearErrors:M}=ae(),{state:P,setTouched:F,setDirty:I,validityData:R,setFilled:z,setFocused:B,validationMode:V,disabled:H,name:U,validation:W}=oe(),{labelId:le}=re(),G=H||D,K=U??S,q=y.useRef(null),ue=o(q,x,W.inputRef),J=y.useRef(null),Y=p(),X=g({id:b}),Z=C?void 0:X,[Q,de]=ne({controlled:n,default:!!u,name:`Switch`,state:`checked`});ie(J,Y,Q,void 0,!G,S),d(()=>{z(Q)},[Q,z]),_(Q,()=>{M(K),I(Q!==R.initialValue),W.change(Q)});let{getButtonProps:fe,buttonRef:pe}=c({disabled:G,native:C}),me=se(m,le,q,!C,Z),he={id:C?X:Y,role:`switch`,"aria-checked":Q,"aria-readonly":T||void 0,"aria-required":E||void 0,"aria-labelledby":me,onFocus(){G||B(!0)},onBlur(){let e=q.current;!e||G||(F(!0),B(!1),V===`onBlur`&&W.commit(e.checked))},onClick(e){if(T||G)return;e.preventDefault();let t=q.current;t&&te(t,e)}},ge={...W.getValidationProps(G),checked:Q,disabled:G,form:h,id:Z,name:K,required:E,style:K?r:i,tabIndex:-1,type:`checkbox`,"aria-hidden":!0,ref:ue,onChange(e){if(e.nativeEvent.defaultPrevented)return;if(T){e.preventDefault();return}let t=e.currentTarget.checked,n=f(l,e.nativeEvent);w?.(t,n),!n.isCanceled&&de(t)},onClick(e){e.stopPropagation()},onFocus(){J.current?.focus()},...k===void 0?ee:{value:k}},$=y.useMemo(()=>({...P,checked:Q,disabled:G,readOnly:T,required:E}),[P,Q,G,T,E]),_e=s(`span`,e,{state:$,ref:[t,J,pe],props:[he,j,fe,e=>W.getValidationProps(G,e)],stateAttributesMapping:L});return(0,v.jsxs)(N.Provider,{value:$,children:[_e,!Q&&K&&O!==void 0&&(0,v.jsx)(`input`,{type:`hidden`,form:h,name:K,value:O,disabled:G}),(0,v.jsx)(`input`,{...ge,suppressHydrationWarning:!0})]})}),z=y.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=P();return s(`span`,e,{state:o,ref:t,stateAttributesMapping:L,props:a})});function B({className:e,...t}){return(0,v.jsx)(R,{"data-slot":`switch`,className:a(`inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border border-transparent bg-input transition-colors outline-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 dark:bg-input/80 data-checked:bg-primary data-disabled:cursor-not-allowed data-disabled:opacity-50`,e),...t,children:(0,v.jsx)(z,{"data-slot":`switch-thumb`,className:`pointer-events-none block size-4 translate-x-0.5 rounded-full bg-background shadow-sm transition-transform dark:bg-foreground data-checked:translate-x-4`})})}export{j as a,T as c,O as i,w as l,A as n,ce as o,M as r,C as s,B as t};
@@ -1 +0,0 @@
1
- import{t as e}from"./createLucideIcon-_dfI7Arx.js";var t=e(`terminal`,[[`path`,{d:`M12 19h8`,key:`baeox8`}],[`path`,{d:`m4 17 6-6-6-6`,key:`1yngyt`}]]);export{t};
@@ -1 +0,0 @@
1
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-CwJFpaho.js";import{t as n}from"./react-dom-DX3XddaT.js";import{t as r}from"./jsx-runtime-NZYk81nU.js";import{$ as i,G as a,K as o,L as s,Q as c,et as l,f as u,m as d,nt as f,o as p,p as m,q as h,r as g,t as _,tt as v,u as y}from"./button-Dl0ce3Y5.js";import{t as b}from"./utils-Brtgag-m.js";import{P as x,S,T as C,U as w,_ as T,at as E,et as ee,it as te,k as D,nt as O,rt as k,x as ne}from"./createBaseUIEventDetails-B58Jldei.js";import{t as A}from"./createLucideIcon-_dfI7Arx.js";import{n as j,t as M}from"./loader-circle-B5GIZGxd.js";import{t as N}from"./triangle-alert-GAYh_5d3.js";import{t as P}from"./x-BGsDD848.js";var F=e(t(),1),I=F.createContext(void 0);function L(){let e=F.useContext(I);if(!e)throw Error(O(73));return e}var R=0;function z(e){return R+=1,`${e}-${Math.random().toString(36).slice(2,6)}-${R}`}function B(e,t){if(typeof e==`string`)return{description:e};if(typeof e==`function`){let n=e(t);return typeof n==`string`?{description:n}:n}return e}function V(e){let t=new Map,n=0,r=0;return e.forEach((e,i)=>{let a=e.transitionStatus===`ending`;t.set(e.id,{value:e,domIndex:i,visibleIndex:a?-1:n,offsetY:r}),r+=e.height||0,a||(n+=1)}),t}function H(e,t){let n=0;return e.map(e=>{if(e.transitionStatus===`ending`)return e;let r=n>=t;return n+=1,e.limited===r?e:{...e,limited:r}})}var U={toasts:e=>e.toasts,isEmpty:e=>e.toasts.length===0,toast:(e,t)=>e.toastMetadata.get(t)?.value,toastIndex:(e,t)=>e.toastMetadata.get(t)?.domIndex??-1,toastOffsetY:(e,t)=>e.toastMetadata.get(t)?.offsetY??0,toastVisibleIndex:(e,t)=>e.toastMetadata.get(t)?.visibleIndex??-1,focused:e=>e.focused,expanded:e=>e.hovering||e.focused,expandedOrOutOfFocus:e=>e.hovering||e.focused||!e.isWindowFocused,prevFocusElement:e=>e.prevFocusElement},W=class extends f{timers=new Map;areTimersPaused=!1;constructor(e){super({...e,toastMetadata:V(e.toasts)},{},U)}setViewport=e=>{this.set(`viewport`,e)};syncProviderProps(e,t){let n=this.state.limit!==t;if(this.state.timeout===e&&!n)return;let r={timeout:e,limit:t};if(n){let e=H(this.state.toasts,t);r.toasts=e,r.toastMetadata=V(e)}this.update(r)}disposeEffect=()=>()=>{this.timers.forEach(e=>{e.timeout?.clear()}),this.timers.clear()};removeToast(e,t=!1){let n=U.toastIndex(this.state,e);if(n===-1)return;let r=this.state.toasts[n];t||r?.onRemove?.();let i=[...this.state.toasts];i.splice(n,1),this.setToasts(i)}addToast=e=>{let{timeout:t,limit:n}=this.state,r=e.id||z(`toast`);if(e.id){let t=U.toast(this.state,e.id);if(t){if(t.transitionStatus===`ending`)this.removeToast(e.id,!0);else{let{id:t,transitionStatus:n,...r}=e;return this.updateToastInternal(e.id,r,!0,!0),e.id}}}let i={...e,id:r,updateKey:0,transitionStatus:`starting`},a=[i,...this.state.toasts];this.setToasts(H(a,n));let o=i.timeout??t;return i.type!==`loading`&&o>0&&this.scheduleTimer(r,o,()=>this.closeToast(r)),U.expandedOrOutOfFocus(this.state)&&this.pauseTimers(),r};updateToast=(e,t)=>{let n=U.toast(this.state,e);!n||n.transitionStatus===`ending`||this.updateToastInternal(e,typeof t==`function`?t(n):t,!1,!0)};updateToastInternal=(e,t,n=!1,r=!1)=>{let{timeout:i,toasts:a}=this.state,o=U.toast(this.state,e);if(!o||o.transitionStatus===`ending`)return;let s={...o,...t,...r&&{updateKey:o.updateKey+1}};this.setToasts(a.map(t=>t.id===e?s:t));let c=s.timeout??i,l=o.timeout??i,u=Object.hasOwn(t,`timeout`),d=s.transitionStatus!==`ending`&&s.type!==`loading`&&c>0,f=this.timers.has(e),p=l!==c,m=o.type===`loading`;if(!d&&f){this.clearTimer(e);return}d&&(!f||p||u||m||n)&&(this.clearTimer(e),this.scheduleTimer(e,c,()=>this.closeToast(e)),U.expandedOrOutOfFocus(this.state)&&this.pauseTimers())};closeToast=e=>{let t=e===void 0,{limit:n,toasts:r}=this.state,i;if(t)i=r,this.clearTimers();else{let t=U.toast(this.state,e);if(!t)return;i=[t],this.clearTimer(e)}let a=H(r.map(n=>t||n.id===e?{...n,transitionStatus:`ending`,height:0}:n),n);this.setToasts(a,!a.some(e=>e.transitionStatus!==`ending`)),i.forEach(e=>{e.transitionStatus!==`ending`&&e.onClose?.()}),this.handleFocusManagement(e)};promiseToast=(e,t)=>{let n=B(t.loading),r=this.addToast({...n,type:`loading`}),i=e.then(e=>{let n=B(t.success,e);return this.updateToast(r,{...n,type:`success`,timeout:n.timeout}),e}).catch(e=>{let n=B(t.error,e);return this.updateToast(r,{...n,type:`error`,timeout:n.timeout}),Promise.reject(e)});return{}.hasOwnProperty.call(t,`setPromise`)&&t.setPromise(i),i};pauseTimers(){this.areTimersPaused||(this.areTimersPaused=!0,this.timers.forEach(e=>{e.timeout&&(e.timeout.clear(),e.remaining=Math.max(e.remaining-(Date.now()-e.start),0))}))}resumeTimers(){this.areTimersPaused&&(this.areTimersPaused=!1,this.timers.forEach((e,t)=>{e.remaining=e.remaining>0?e.remaining:e.delay,e.timeout??=c.create(),e.timeout.start(e.remaining,()=>{this.handleTimerFired(t),e.callback()}),e.start=Date.now()}))}restoreFocusToPrevElement(){this.state.prevFocusElement?.focus({preventScroll:!0})}handleDocumentPointerDown=e=>{if(e.pointerType!==`touch`)return;let t=h(e);o(this.state.viewport,t)||(this.resumeTimers(),this.update({hovering:!1,focused:!1}))};scheduleTimer(e,t,n){let r=Date.now(),i=U.expandedOrOutOfFocus(this.state)?void 0:c.create();i?.start(t,()=>{this.handleTimerFired(e),n()}),this.timers.set(e,{timeout:i,start:r,delay:t,remaining:t,callback:n})}clearTimers(){this.timers.forEach(e=>{e.timeout?.clear()}),this.timers.clear(),this.areTimersPaused=!1}clearTimer(e){this.timers.get(e)?.timeout?.clear(),this.timers.delete(e),this.resetPausedStateIfNoTimersRemain()}handleTimerFired(e){this.timers.delete(e),this.resetPausedStateIfNoTimersRemain()}resetPausedStateIfNoTimersRemain(){this.timers.size===0&&(this.areTimersPaused=!1)}setToasts(e,t=e.length===0){let n={toasts:e,toastMetadata:V(e)};t&&(n.hovering=!1,n.focused=!1),this.update(n)}handleFocusManagement(e){let t=a(l(this.state.viewport));if(!this.state.viewport||!o(this.state.viewport,t)||!s(t))return;if(e===void 0){this.restoreFocusToPrevElement();return}let n=U.toasts(this.state),r=U.toastIndex(this.state,e),i=(e,t)=>{for(let r=e;r>=0&&r<n.length;r+=t)if(n[r].transitionStatus!==`ending`)return n[r];return null},c=i(r+1,1)??i(r-1,-1);c?c.ref?.current?.focus():this.restoreFocusToPrevElement()}},G=r(),re=function(e){let{children:t,timeout:n=5e3,limit:r=3,toastManager:i}=e,a=te(()=>new W({timeout:n,limit:r,viewport:null,toasts:[],hovering:!1,focused:!1,isWindowFocused:!0,prevFocusElement:null})).current;return E(a.disposeEffect),F.useEffect(function(){if(i)return i[` subscribe`](({action:e,options:t})=>{let n=t.id;e===`promise`&&t.promise?a.promiseToast(t.promise,t):e===`update`&&n?a.updateToast(n,t.updates):e===`close`?a.closeToast(n):a.addToast(t)})},[a,i]),(0,G.jsxs)(I.Provider,{value:a,children:[(0,G.jsx)(ie,{store:a,timeout:n,limit:r}),t]})};function ie(e){let{store:t,timeout:n,limit:r}=e;return k(()=>{t.syncProviderProps(n,r)},[t,n,r]),null}var K=`--toast-frontmost-height`,q=F.forwardRef(function(e,t){let{render:n,className:r,style:c,children:u,...f}=e,p=L(),g=i(),_=F.useRef(!1),y=F.useRef(!1),b=F.useRef(!1),S=p.useState(`isEmpty`),T=p.useState(`toasts`),E=p.useState(`focused`),ee=p.useState(`expanded`),te=p.useState(`prevFocusElement`),D=T[0]?.height,O=T.some(e=>e.transitionStatus===`ending`),k=T.filter(e=>e.priority===`high`);F.useEffect(()=>{let e=p.state.viewport;if(!e||S)return;let t=w(e),n=l(e);function r(t){t.key===`F6`&&h(t)!==e&&(t.preventDefault(),p.set(`prevFocusElement`,a(n)),e?.focus({preventScroll:!0}),p.pauseTimers(),p.set(`focused`,!0))}function i(e){h(e)===t&&(p.set(`isWindowFocused`,!1),p.pauseTimers())}function c(n){if(n.relatedTarget)return;let r=h(n),i=a(l(e));(r===t||!o(e,r)||!s(i))&&p.resumeTimers(),g.start(0,()=>p.set(`isWindowFocused`,!0))}return v(x(t,`keydown`,r),x(t,`blur`,i,!0),x(t,`focus`,c,!0),x(n,`pointerdown`,p.handleDocumentPointerDown,!0))},[p,g,S]);function ne(e){_.current=!0;let t=e.relatedTarget===p.state.viewport?T.find(e=>e.transitionStatus!==`ending`&&!e.limited):void 0;t?t.ref?.current?.focus():p.restoreFocusToPrevElement()}function A(e){e.key===`Tab`&&e.shiftKey&&h(e.nativeEvent)===p.state.viewport&&(e.preventDefault(),p.restoreFocusToPrevElement())}function j(){p.state.toasts.some(e=>e.transitionStatus===`ending`)||b.current||!y.current||(p.state.isWindowFocused&&p.resumeTimers(),p.set(`hovering`,!1),y.current=!1)}F.useEffect(j,[O,p]);function M(){p.pauseTimers(),p.set(`hovering`,!0),y.current=!1}function N(){p.state.isWindowFocused&&p.resumeTimers()}function P(){y.current=!0,j()}function I(e){e.pointerType===`touch`&&(b.current=!0)}function R(e){e.pointerType===`touch`&&(b.current=!1,j())}function z(){if(_.current){_.current=!1;return}E||s(a(l(p.state.viewport)))&&(p.set(`focused`,!0),p.pauseTimers())}function B(e){!E||o(p.state.viewport,e.relatedTarget)||(p.set(`focused`,!1),N())}let V={tabIndex:-1,role:`region`,"aria-live":`polite`,"aria-atomic":!1,"aria-relevant":`additions text`,"aria-label":`Notifications`,onMouseEnter:M,onMouseMove:M,onMouseLeave:P,onFocus:z,onBlur:B,onKeyDown:A,onClick:z,onPointerDown:I,onPointerUp:R,onPointerCancel:R,style:{[K]:D?`${D}px`:void 0}},H={expanded:ee},U=!S&&te&&(0,G.jsx)(m,{onFocus:ne}),W=C(`div`,e,{ref:[t,p.setViewport],state:H,props:[V,f,{children:(0,G.jsxs)(F.Fragment,{children:[U,u,U]})}]});return(0,G.jsxs)(F.Fragment,{children:[U,W,!E&&k.length>0&&(0,G.jsx)(`div`,{style:d,children:k.map(e=>(0,G.jsxs)(`div`,{role:`alert`,"aria-atomic":!0,children:[(0,G.jsx)(`div`,{children:e.title}),(0,G.jsx)(`div`,{children:e.description})]},e.id))})]})}),ae=e(n(),1),oe=F.createContext(void 0);function J(){let e=F.useContext(oe);if(!e)throw Error(O(66));return e}function se(e,t){let n=(t??w(e).getComputedStyle(e)).transform,r=0,i=0,a=1;if(n&&n!==`none`){let e=n.match(/matrix(?:3d)?\(([^)]+)\)/);if(e){let t=e[1].split(`, `).map(parseFloat);t.length===6?(r=t[4],i=t[5],a=Math.sqrt(t[0]*t[0]+t[1]*t[1])):t.length===16&&(r=t[12],i=t[13],a=t[0])}}return{x:r,y:i,scale:a}}function ce(e,t,n){switch(e){case`up`:return-n;case`down`:return n;case`left`:return-t;case`right`:return t;default:return 0}}var le=`--toast-index`,ue=`--toast-offset-y`,de=`--toast-height`,fe=`--toast-swipe-movement-x`,pe=`--toast-swipe-movement-y`,Y=`data-swipe-direction`,me={...D,swipeDirection(e){return e?{[Y]:e}:null}},he=40,ge=10,_e=.5,ve=1,ye=`${p},${y}`,be=F.forwardRef(function(e,t){let{toast:n,render:r,className:i,swipeDirection:s=[`down`,`right`],style:c,...d}=e,f=n.positionerProps?.anchor!==void 0,p=[];f||(p=Array.isArray(s)?s:[s]);let m=p.length>0,g=L(),[_,v]=F.useState(void 0),[y,b]=F.useState(!1),[w,T]=F.useState(!1),[E,te]=F.useState({x:0,y:0}),[D,O]=F.useState({x:0,y:0,scale:1}),[ne,A]=F.useState(),[j,M]=F.useState(),[N,P]=F.useState(null),I=F.useRef(null),R=F.useRef(void 0),z=F.useRef({x:0,y:0}),B=F.useRef({x:0,y:0,scale:1}),V=F.useRef(void 0),H=F.useRef(0),U=F.useRef(!1),W=F.useRef({x:0,y:0}),re=F.useRef(!1),ie=F.useRef({x:0,y:0}),K=F.useRef(null),q=F.useRef(null),J=g.useState(`toastIndex`,n.id),Y=g.useState(`toastVisibleIndex`,n.id),be=g.useState(`toastOffsetY`,n.id),xe=g.useState(`focused`),X=g.useState(`expanded`);S({open:n.transitionStatus!==`ending`,ref:I,onComplete(){n.transitionStatus===`ending`&&g.removeToast(n.id)}});let Z=ee((e=!1)=>{let t=I.current;if(!t)return;let r=t.style.height;t.style.height=`auto`;let i=t.offsetHeight;t.style.height=r;function a(){g.updateToastInternal(n.id,{ref:I,height:i,transitionStatus:void 0})}e?ae.flushSync(a):a()});k(()=>{let e=R.current;(n.transitionStatus===`starting`||e!==n.id)&&(e!==void 0&&(v(void 0),O({x:0,y:0,scale:1}),Q({x:0,y:0})),R.current=n.id,Z())},[Z,n.id,n.transitionStatus]);function Q(e){ie.current=e,te(e)}k(()=>()=>{q.current?.abort()},[]);function Se(e,t){let n=e=>e>0?e**_e:-(Math.abs(e)**_e),r=e>0&&!p.includes(`right`)||e<0&&!p.includes(`left`),i=t>0&&!p.includes(`down`)||t<0&&!p.includes(`up`);return{x:r?n(e):e,y:i?n(t):t}}let $=ee(e=>{if(e.pointerId!==K.current)return;K.current=null,q.current?.abort(),q.current=null,b(!1),T(!1),P(null);let t=B.current;if(e.type===`pointercancel`||U.current){Q({x:t.x,y:t.y}),v(void 0);return}let r=ie.current,i=r.x-t.x,a=r.y-t.y,o;for(let e of p)if(ce(e,i,a)>he){o=e;break}o?(v(o),g.closeToast(n.id)):(Q({x:t.x,y:t.y}),v(void 0))});function Ce(e){if(e.button!==0||(e.pointerType===`touch`&&g.pauseTimers(),h(e.nativeEvent)?.closest(`button,a,input,textarea,[role="button"],${ye}`)))return;U.current=!1,V.current=void 0,H.current=0,K.current=e.pointerId,z.current={x:e.clientX,y:e.clientY},W.current=z.current;let t=e.currentTarget,n=se(t);B.current=n,O(n),Q({x:n.x,y:n.y}),g.set(`hovering`,!0),b(!0),T(!1),P(null),re.current=!0,q.current?.abort();let r=new AbortController;q.current=r;let i=l(t);i.addEventListener(`pointerup`,$,{signal:r.signal}),i.addEventListener(`pointercancel`,$,{signal:r.signal}),t.setPointerCapture?.(e.pointerId)}function we(e){if(e.pointerId!==K.current)return;e.preventDefault(),re.current&&=(z.current={x:e.clientX,y:e.clientY},!1);let{clientY:t,clientX:n,movementX:r,movementY:i}=e;(i<0&&t>W.current.y||i>0&&t<W.current.y)&&(W.current={x:W.current.x,y:t}),(r<0&&n>W.current.x||r>0&&n<W.current.x)&&(W.current={x:n,y:W.current.y});let a=n-z.current.x,o=t-z.current.y,s=t-W.current.y,c=n-W.current.x,l=N;if(!w&&Math.sqrt(a*a+o*o)>=ve){T(!0);let e=p.includes(`left`)||p.includes(`right`),t=p.includes(`up`)||p.includes(`down`);e&&t&&(l=Math.abs(a)>Math.abs(o)?`horizontal`:`vertical`,P(l))}let u;if(!V.current)l===`vertical`?o>0?u=`down`:o<0&&(u=`up`):l===`horizontal`?a>0?u=`right`:a<0&&(u=`left`):u=Math.abs(a)>=Math.abs(o)?a>0?`right`:`left`:o>0?`down`:`up`,u&&p.includes(u)&&(V.current=u,H.current=ce(u,a,o),v(u));else{let e=V.current,t=ce(e,c,s);t>he?(U.current=!1,v(e)):!(p.includes(`left`)&&p.includes(`right`))&&!(p.includes(`up`)&&p.includes(`down`))&&H.current-t>=ge&&(U.current=!0)}let d=Se(a,o),f=B.current.x,m=B.current.y,h=p.includes(`left`)||p.includes(`right`),g=p.includes(`up`)||p.includes(`down`);l!==`vertical`&&h&&(f+=d.x),l!==`horizontal`&&g&&(m+=d.y),Q({x:f,y:m})}function Te(e){if(e.key===`Escape`){if(!I.current||!o(I.current,a(l(I.current))))return;g.closeToast(n.id)}}F.useEffect(()=>{let e=I.current;if(!m||!e)return;function t(t){K.current===null||!o(e,h(t))||t.preventDefault()}return x(e,`touchmove`,t,{passive:!1})},[m]);function Ee(){let e=E.x-D.x,t=E.y-D.y;return{transition:y?`none`:void 0,transform:y?`translateX(${E.x}px) translateY(${E.y}px) scale(${D.scale})`:void 0,[fe]:`${e}px`,[pe]:`${t}px`}}let De=n.priority===`high`,Oe={role:De?`alertdialog`:`dialog`,tabIndex:0,"aria-modal":!1,"aria-labelledby":ne,"aria-describedby":j,"aria-hidden":De&&!xe?!0:void 0,onPointerDown:m?Ce:void 0,onPointerMove:m?we:void 0,onPointerUp:m?$:void 0,onPointerCancel:m?$:void 0,onKeyDown:Te,inert:u(n.limited),style:{...Ee(),[le]:n.transitionStatus===`ending`?J:Y,[ue]:`${be}px`,[de]:n.height?`${n.height}px`:void 0}},ke=F.useMemo(()=>({toast:n,setTitleId:A,setDescriptionId:M,recalculateHeight:Z,visibleIndex:Y,expanded:X}),[n,A,M,Z,Y,X]),Ae={transitionStatus:n.transitionStatus,expanded:X,limited:n.limited||!1,type:n.type,swiping:y,swipeDirection:_},je=C(`div`,e,{ref:[t,I],state:Ae,stateAttributesMapping:me,props:[Oe,d]});return(0,G.jsx)(oe.Provider,{value:ke,children:je})}),xe=F.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,{visibleIndex:o,expanded:s,recalculateHeight:c}=J(),l=F.useRef(null);return k(()=>{c();let e=l.current;if(!e||typeof ResizeObserver!=`function`||typeof MutationObserver!=`function`)return;let t=new ResizeObserver(()=>c(!0)),n=new MutationObserver(()=>c(!0));return t.observe(e),n.observe(e,{childList:!0,subtree:!0,characterData:!0}),()=>{t.disconnect(),n.disconnect()}},[c]),C(`div`,e,{ref:[t,l],state:{expanded:s,behind:o>0},props:a})});function X(e){return e==null||typeof e==`boolean`||e===``?!1:!Array.isArray(e)||e.some(X)}function Z(e){return F.isValidElement(e)&&X(e.props.children)}function Q(e,t,n){let{toast:r,setTitleId:i,setDescriptionId:a}=J(),o=n===`title`?i:a,s=t??(n===`title`?r.title:r.description);return{id:ne(e),children:s,type:r.type,setId:o}}function Se(e,t,n){let r=Z(e);return k(()=>{if(r)return n(t),()=>{n(e=>e===t?void 0:e)}},[r,t,n]),r?e:null}var $=F.forwardRef(function(e,t){let{render:n,className:r,style:i,id:a,children:o,...s}=e,{id:c,children:l,type:u,setId:d}=Q(a,o,`description`);return Se(C(`p`,e,{ref:t,state:{type:u},props:{...s,id:c,children:l}}),c,d)}),Ce=F.forwardRef(function(e,t){let{render:n,className:r,style:i,id:a,children:o,...s}=e,{id:c,children:l,type:u,setId:d}=Q(a,o,`title`);return Se(C(`h2`,e,{ref:t,state:{type:u},props:{...s,id:c,children:l}}),c,d)}),we=F.forwardRef(function(e,t){let{render:n,className:r,style:i,disabled:a,nativeButton:o=!0,...s}=e,c=L(),{toast:l,expanded:u}=J(),[d,f]=F.useState(!1),{getButtonProps:p,buttonRef:m}=T({disabled:a,native:o}),h={type:l.type};return C(`button`,e,{ref:[t,m],state:h,props:[{"aria-hidden":!u&&!d,onClick(){c.closeToast(l.id)},onFocus(){f(!0)},onBlur(){f(!1)}},s,p]})}),Te=F.forwardRef(function(e,t){let{render:n,className:r,style:i,disabled:a,nativeButton:o=!0,...s}=e,{toast:c}=J(),l=c.actionProps?.children??s.children,{getButtonProps:u,buttonRef:d}=T({disabled:a,native:o}),f={type:c.type},p=C(`button`,e,{ref:[t,d],state:f,props:[s,c.actionProps,u,{children:l}]});return Z(p)?p:null}),Ee=F.forwardRef(function(e,t){let{children:n,container:r,className:i,render:a,style:o,...s}=e,{node:c,subtree:l}=g({container:r,ref:t,componentProps:e,elementProps:s});return!l&&!c?null:(0,G.jsxs)(F.Fragment,{children:[l,c&&ae.createPortal(n,c)]})}),De=F.forwardRef(function(e,t){return(0,G.jsx)(Ee,{ref:t,...e})});function Oe(){let e=L(),t=e.useState(`toasts`);return F.useMemo(()=>({toasts:t,add:e.addToast,close:e.closeToast,update:e.updateToast,promise:e.promiseToast}),[t,e])}function ke(){let e=new Set;function t(t){e.forEach(e=>e(t))}return{" subscribe":function(t){return e.add(t),()=>{e.delete(t)}},add(e){let n=e.id||z(`toast`);return t({action:`add`,options:{...e,id:n,transitionStatus:`starting`}}),n},close(e){t({action:`close`,options:{id:e}})},update(e,n){t({action:`update`,options:{id:e,updates:n}})},promise(e,n){let r=e;return t({action:`promise`,options:{...n,promise:e,setPromise(e){r=e}}}),r}}}var Ae=A(`info`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]),je=A(`octagon-x`,[[`path`,{d:`m15 9-6 6`,key:`1uzhvr`}],[`path`,{d:`M2.586 16.726A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586z`,key:`2d38gg`}],[`path`,{d:`m9 9 6 6`,key:`z0biqf`}]]),Me=ke();function Ne({...e}){return(0,G.jsx)(re,{...e})}function Pe({...e}){return(0,G.jsx)(De,{"data-slot":`toast-portal`,...e})}function Fe({className:e,...t}){return(0,G.jsx)(q,{"data-slot":`toast-viewport`,className:b(`pointer-events-none fixed inset-x-4 bottom-4 z-50 mx-auto w-auto max-w-sm outline-none sm:right-4 sm:left-auto sm:mx-0 sm:w-full`,e),...t})}function Ie({className:e,...t}){return(0,G.jsx)(be,{"data-slot":`toast`,className:b(`group/toast pointer-events-auto absolute right-0 bottom-0 z-[calc(1000-var(--toast-index))] w-full origin-bottom rounded-2xl text-popover-foreground will-change-transform outline-none select-none focus-visible:ring-[3px] focus-visible:ring-ring/50`,`bg-surface-3 shadow-surface-3`,`[--gap:0.75rem] [--height:var(--toast-frontmost-height,var(--toast-height))] [--offset-y:calc(var(--toast-offset-y)*-1+calc(var(--toast-index)*var(--gap)*-1)+var(--toast-swipe-movement-y))] [--peek:0.75rem] [--scale:calc(max(0,1-(var(--toast-index)*0.1)))] [--shrink:calc(1-var(--scale))]`,`h-(--height) [transform:translateX(var(--toast-swipe-movement-x))_translateY(calc(var(--toast-swipe-movement-y)-(var(--toast-index)*var(--peek))-(var(--shrink)*var(--height))))_scale(var(--scale))] [transition:transform_500ms_cubic-bezier(0.22,1,0.36,1),opacity_500ms,height_150ms]`,`after:absolute after:top-full after:left-0 after:h-[calc(var(--gap)+1px)] after:w-full after:content-['']`,`data-expanded:h-(--toast-height) data-expanded:[transform:translateX(var(--toast-swipe-movement-x))_translateY(var(--offset-y))]`,`data-limited:opacity-0 data-starting-style:[transform:translateY(150%)]`,`[&[data-ending-style]:not([data-limited]):not([data-swipe-direction])]:[transform:translateY(150%)]`,`data-ending-style:data-[swipe-direction=down]:[transform:translateY(calc(var(--toast-swipe-movement-y)+150%))]`,`data-ending-style:data-[swipe-direction=left]:[transform:translateX(calc(var(--toast-swipe-movement-x)-150%))_translateY(var(--offset-y))]`,`data-ending-style:data-[swipe-direction=right]:[transform:translateX(calc(var(--toast-swipe-movement-x)+150%))_translateY(var(--offset-y))]`,`data-ending-style:data-[swipe-direction=up]:[transform:translateY(calc(var(--toast-swipe-movement-y)-150%))]`,`data-expanded:data-ending-style:data-[swipe-direction=down]:[transform:translateY(calc(var(--toast-swipe-movement-y)+150%))]`,`data-expanded:data-ending-style:data-[swipe-direction=left]:[transform:translateX(calc(var(--toast-swipe-movement-x)-150%))_translateY(var(--offset-y))]`,`data-expanded:data-ending-style:data-[swipe-direction=right]:[transform:translateX(calc(var(--toast-swipe-movement-x)+150%))_translateY(var(--offset-y))]`,`data-expanded:data-ending-style:data-[swipe-direction=up]:[transform:translateY(calc(var(--toast-swipe-movement-y)-150%))]`,e),...t})}function Le({className:e,...t}){return(0,G.jsx)(xe,{"data-slot":`toast-content`,className:b(`flex h-full items-center gap-3 overflow-hidden p-4 transition-opacity duration-250 ease-[cubic-bezier(0.22,1,0.36,1)] data-behind:opacity-0 data-expanded:opacity-100`,e),...t})}function Re({className:e,...t}){return(0,G.jsx)(Ce,{"data-slot":`toast-title`,className:b(`text-sm font-medium`,e),...t})}function ze({className:e,...t}){return(0,G.jsx)($,{"data-slot":`toast-description`,className:b(`text-sm text-muted-foreground`,e),...t})}function Be({className:e,render:t=(0,G.jsx)(_,{variant:`outline`,size:`sm`}),...n}){return(0,G.jsx)(Te,{"data-slot":`toast-action`,render:t,className:b(`shrink-0`,e),...n})}function Ve({className:e,children:t,render:n=(0,G.jsx)(_,{variant:`ghost`,size:`icon-sm`}),...r}){return(0,G.jsx)(we,{"data-slot":`toast-close`,"aria-label":`Close toast`,render:n,className:b(`relative shrink-0 text-muted-foreground after:absolute after:-inset-2 after:content-[''] hover:text-foreground`,e),...r,children:t??(0,G.jsx)(P,{"aria-hidden":`true`})})}function He({type:e}){let t=null;return e===`success`&&(t=(0,G.jsx)(j,{"aria-hidden":`true`})),e===`info`&&(t=(0,G.jsx)(Ae,{"aria-hidden":`true`})),e===`warning`&&(t=(0,G.jsx)(N,{"aria-hidden":`true`})),e===`error`&&(t=(0,G.jsx)(je,{className:`text-destructive`,"aria-hidden":`true`})),e===`loading`&&(t=(0,G.jsx)(M,{className:`animate-spin`,"aria-hidden":`true`})),t?(0,G.jsx)(`span`,{"data-slot":`toast-icon`,className:`shrink-0 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4`,children:t}):null}function Ue(){let{toasts:e}=Oe();return e.map(e=>(0,G.jsx)(Ie,{toast:e,children:(0,G.jsxs)(Le,{children:[(0,G.jsx)(He,{type:e.type}),(0,G.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:[(0,G.jsx)(Re,{}),(0,G.jsx)(ze,{})]}),(0,G.jsx)(Be,{}),(0,G.jsx)(Ve,{})]})},e.id))}function We({children:e,toastManager:t=Me,...n}){return(0,G.jsxs)(Ne,{toastManager:t,...n,children:[e,(0,G.jsx)(Pe,{children:(0,G.jsx)(Fe,{children:(0,G.jsx)(Ue,{})})})]})}export{Me as n,Ae as r,We as t};
@@ -1 +0,0 @@
1
- import{t as e}from"./dist-52wg4XPY.js";var t=`h-8 shrink-0 cursor-pointer rounded-full border-border/45 bg-background/65 px-3 text-caption font-semibold text-foreground/75 shadow-sm transition-[background-color,border-color,box-shadow,opacity,transform] duration-150 hover:bg-foreground/5 active:scale-[0.96] disabled:opacity-50`,n=`relative after:absolute after:top-1/2 after:left-1/2 after:size-10 after:-translate-x-1/2 after:-translate-y-1/2`,r=`relative after:absolute after:inset-x-0 after:-top-1.5 after:-bottom-1.5`,i=`relative inline-flex h-9 items-center gap-1.5 rounded-[10px] border border-border/70 px-3 text-label font-medium whitespace-nowrap shadow-sm backdrop-blur transition-colors`,a=`bg-sidebar text-foreground/55 hover:bg-background hover:text-foreground/75`,o=`bg-background text-foreground/75`,s=`relative z-10 overflow-visible`,c=`mx-auto w-full max-w-chat px-[var(--density-pad-x)]`,l=`size-8 shrink-0 rounded-full border-border/70 bg-background text-foreground/80 shadow-sm hover:bg-muted hover:text-foreground`,u=`h-auto justify-start rounded-full border border-border/70 bg-background/80 px-3 py-1.5 text-pretty text-sm font-normal text-foreground/65 shadow-sm transition-colors hover:border-border hover:bg-foreground/6 hover:text-foreground`,d=`h-full min-h-0 w-[min(360px,calc(100vw-1.5rem))] overflow-hidden rounded-md border border-border/70 bg-background/95 shadow-lg backdrop-blur`,f=e(`flex min-w-0 rounded-[4px] border`,{variants:{tone:{default:`border-border/30 bg-background/30`,muted:`border-border/20 bg-foreground/1.5`,inset:`border-border/60 bg-foreground/2`,dashed:`border-dashed border-border/25 bg-background/10`},padding:{sm:`p-2`,md:`px-2.5 py-2`,lg:`p-2.5`},interactive:{true:`transition-[border-color,background-color,box-shadow] duration-200 hover:border-border/45 hover:bg-foreground/2 hover:shadow-sm`,lift:`transition-[border-color,background-color,box-shadow,transform] duration-200 hover:-translate-y-px hover:border-border/45 hover:bg-foreground/3.5 hover:shadow-sm`,false:``}},defaultVariants:{tone:`default`,padding:`sm`,interactive:!1}});export{a,n as c,u as d,f,i,r as l,s as n,t as o,o as r,l as s,c as t,d as u};
@@ -1,4 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dist-CZDnnosQ.js","assets/rolldown-runtime-hePW80VL.js","assets/preload-helper-Czpn1I53.js","assets/lib-ChrQ49PO.js","assets/character-entities-legacy-Wut6vMuj.js"])))=>i.map(i=>d[i]);
2
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-CwJFpaho.js";import{t as n}from"./jsx-runtime-NZYk81nU.js";import{t as r}from"./utils-Brtgag-m.js";import{c as i,f as a,l as o}from"./ease-CMumuPlX.js";import{t as s}from"./use-reduced-motion-BOcG709U.js";import{t as c}from"./createLucideIcon-_dfI7Arx.js";import{t as l}from"./check-B3LlvM65.js";import{t as u}from"./chevron-down-DUUprRP5.js";import{n as d,t as f}from"./loader-circle-B5GIZGxd.js";import{a as p,i as m,n as h,r as g,t as _}from"./agent-disclosure-CMrxF7L-.js";import{t as v}from"./rotate-ccw-CfGhzOv7.js";import{t as y}from"./square-terminal-BsopiuN7.js";import{t as b}from"./wrench-Myc12BTA.js";import{t as x}from"./preload-helper-Czpn1I53.js";var S=c(`ban`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M4.929 4.929 19.07 19.071`,key:`196cmz`}]]),C=c(`braces`,[[`path`,{d:`M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5c0 1.1.9 2 2 2h1`,key:`ezmyqa`}],[`path`,{d:`M16 21h1a2 2 0 0 0 2-2v-5c0-1.1.9-2 2-2a2 2 0 0 1-2-2V5a2 2 0 0 0-2-2h-1`,key:`e1hn23`}]]),w=e(t(),1),T=n(),E=`github-light-high-contrast`,D=`github-dark-high-contrast`,O=null,k=new Map,A=500;function j(e,t){if(k.size>=A){let e=k.keys().next().value;e!==void 0&&k.delete(e)}k.set(e,t)}var M=()=>x(()=>import(`./dist-CZDnnosQ.js`).then(e=>e.t),__vite__mapDeps([0,1,2,3,4]));function N(){return O||=M().then(({createHighlighter:e})=>e({themes:[E,D],langs:[`bash`,`diff`,`json`,`python`,`tsx`,`typescript`]})),O}function P(e,t){return`${t}\u0000${e}`}function F(e,t){let n=P(e,t),r=k.get(n),[i,a]=(0,w.useState)(r?{key:n,code:e,language:t,lines:r}:null);return(0,w.useEffect)(()=>{let r=k.get(n);if(r){a({key:n,code:e,language:t,lines:r});return}let i=!1;return N().then(r=>{if(i)return;let o=r.codeToTokensWithThemes(e,{lang:t,themes:{light:E,dark:D}}).map(e=>e.map(e=>({content:e.content,offset:e.offset,light:e.variants.light?.color,dark:e.variants.dark?.color})));j(n,o),a({key:n,code:e,language:t,lines:o})}),()=>{i=!0}},[e,n,t]),i?.key===n||i?.language===t&&e.startsWith(i.code)?i.lines:null}function I({code:e,tokens:t,className:n}){return(0,T.jsx)(`span`,{className:n,children:t?t.map(e=>(0,T.jsx)(`span`,{style:{"--agent-code-light":e.light??`currentColor`,"--agent-code-dark":e.dark??e.light??`currentColor`},className:`text-[var(--agent-code-light)] dark:text-[var(--agent-code-dark)]`,children:e.content},`${e.offset}-${e.content}`)):e})}var L=[];function R({code:e,language:t=`typescript`,languageLabel:n,filename:o,status:c=`complete`,showStatus:u=!0,showLineNumbers:d=!0,highlightLines:p=L,maxHeight:h=280,wrap:_=!1,copyable:v=!0,onCopy:y,className:b}){let x=s()??!1,S=(0,w.useRef)(null),C=(0,w.useRef)(void 0),[E,D]=(0,w.useState)(!1),O=c===`streaming`,k=F(e,t),A=(0,w.useMemo)(()=>new Set(p),[p]),j=0,M=e.split(`
3
- `).map(e=>{let t={content:e,offset:j};return j+=e.length+1,t}),N=n??{bash:`Bash`,diff:`Diff`,json:`JSON`,python:`Python`,text:`Text`,tsx:`TSX`,typescript:`TypeScript`}[t];(0,w.useEffect)(()=>()=>{C.current&&window.clearTimeout(C.current)},[]),(0,w.useLayoutEffect)(()=>{let e=S.current;if(!e||!O)return;let t=requestAnimationFrame(()=>{e.scrollHeight<=e.clientHeight||(typeof e.scrollTo==`function`?e.scrollTo({top:e.scrollHeight,behavior:x?`auto`:`smooth`}):e.scrollTop=e.scrollHeight)});return()=>cancelAnimationFrame(t)});let P=(0,w.useCallback)(async()=>{y?await y():await navigator.clipboard?.writeText(e),D(!0),C.current&&window.clearTimeout(C.current),C.current=window.setTimeout(()=>D(!1),1600)},[e,y]);return(0,T.jsxs)(`div`,{"data-state":c,"aria-busy":O,className:r(`w-full overflow-hidden rounded-2xl bg-muted/80 text-sm`,b),children:[(0,T.jsxs)(`div`,{className:`flex h-10 items-center gap-2.5 px-3`,children:[(0,T.jsx)(g,{"aria-hidden":`true`,className:`size-3.5 shrink-0 text-muted-foreground/70`}),o?(0,T.jsx)(`span`,{className:`min-w-0 truncate font-mono text-xs text-foreground/80`,children:o}):null,(0,T.jsx)(`span`,{className:`text-micro font-medium uppercase tracking-wide text-muted-foreground/55`,children:N}),u?(0,T.jsxs)(`span`,{className:r(`ml-auto inline-flex shrink-0 items-center gap-1 text-micro font-medium`,O?`text-blue-600 dark:text-blue-400`:`text-emerald-600 dark:text-emerald-400`),children:[O?(0,T.jsx)(f,{className:r(`size-3`,!x&&`animate-spin`)}):(0,T.jsx)(l,{className:`size-3`}),O?`Writing`:`Ready`]}):null,v||y?(0,T.jsx)(a.button,{type:`button`,"aria-label":E?`Copied`:`Copy code`,title:E?`Copied`:`Copy code`,onClick:P,whileTap:x?void 0:{scale:.9},transition:i,className:r(`grid size-7 shrink-0 place-items-center rounded-full text-muted-foreground outline-none transition-colors hover:bg-background/70 hover:text-foreground focus-visible:ring-2 focus-visible:ring-ring`,!u&&`ml-auto`),children:E?(0,T.jsx)(l,{className:`size-3.5`}):(0,T.jsx)(m,{className:`size-3.5`})}):null]}),(0,T.jsx)(`div`,{ref:S,role:O?`log`:void 0,"aria-live":O?`off`:void 0,className:`overflow-auto border-t border-foreground/[0.06] py-2 [scrollbar-color:color-mix(in_oklab,var(--muted-foreground)_35%,transparent)_transparent] [scrollbar-width:thin]`,style:{maxHeight:h},children:(0,T.jsx)(`pre`,{className:`m-0 min-w-max font-mono text-xs leading-5 text-foreground/85`,children:(0,T.jsx)(`code`,{children:M.map((e,t)=>{let n=t+1;return(0,T.jsxs)(`span`,{className:r(`grid min-h-5`,d?`grid-cols-[2.75rem_minmax(0,1fr)]`:`grid-cols-1`,A.has(n)&&`bg-primary/[0.07]`),children:[d?(0,T.jsx)(`span`,{className:`select-none pr-3 text-right tabular-nums text-muted-foreground/35`,children:n}):null,(0,T.jsx)(I,{code:e.content,tokens:k?.[t],className:r(`pr-4`,d?`pl-1`:`pl-4`,_?`whitespace-pre-wrap break-words`:`whitespace-pre`)})]},e.offset)})})})})]})}function z({value:e,type:t}){return e?(0,T.jsxs)(`span`,{className:r(`font-mono text-xs tabular-nums`,t===`added`?`text-emerald-600 dark:text-emerald-400`:`text-rose-600 dark:text-rose-400`),children:[t===`added`?`+`:`−`,e]}):null}function B({file:e,lines:t,status:n=`streaming`,open:c,defaultOpen:d=!0,onOpenChange:h,collapseOnComplete:v=!0,maxHeight:y=220,language:b=`typescript`,copyText:x,onCopy:C,className:E}){let D=s()??!1,O=(0,w.useId)(),k=`${O}-trigger`,A=`${O}-content`,j=(0,w.useRef)(null),M=(0,w.useRef)(n),N=(0,w.useRef)(void 0),[P,L]=(0,w.useState)(!1),[R,B]=(0,w.useState)(d),V=c??R,H=n===`streaming`,U=t.filter(e=>e.type===`added`).length,W=t.filter(e=>e.type===`removed`).length,G=!!(x||C),K=F(t.map(e=>e.content).join(`
4
- `),b),q=(0,w.useCallback)(e=>{c===void 0&&B(e),h?.(e)},[h,c]);(0,w.useEffect)(()=>{M.current!==`streaming`&&n===`streaming`&&q(!0),M.current===`streaming`&&n!==`streaming`&&v&&q(!1),M.current=n},[v,q,n]),(0,w.useEffect)(()=>()=>{N.current&&window.clearTimeout(N.current)},[]),(0,w.useLayoutEffect)(()=>{let e=j.current;if(!e||!V||!H)return;let t=requestAnimationFrame(()=>{e.scrollHeight<=e.clientHeight||(typeof e.scrollTo==`function`?e.scrollTo({top:e.scrollHeight,behavior:D?`auto`:`smooth`}):e.scrollTop=e.scrollHeight)});return()=>cancelAnimationFrame(t)});let J=(0,w.useCallback)(async()=>{C?await C():x&&await navigator.clipboard?.writeText(x),L(!0),N.current&&window.clearTimeout(N.current),N.current=window.setTimeout(()=>L(!1),1600)},[x,C]);return(0,T.jsxs)(`div`,{"data-state":n,"aria-busy":H,className:r(`w-full text-sm`,E),children:[(0,T.jsxs)(`button`,{id:k,type:`button`,"aria-expanded":V,"aria-controls":A,onClick:()=>q(!V),className:`group flex min-h-9 w-full items-center gap-2 rounded-md py-1 text-left outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background`,children:[(0,T.jsx)(g,{"aria-hidden":`true`,className:`size-4 shrink-0 text-muted-foreground`}),(0,T.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono text-xs text-foreground/80`,children:e}),(0,T.jsxs)(`span`,{className:`flex shrink-0 items-center gap-2`,children:[(0,T.jsx)(z,{value:U,type:`added`}),(0,T.jsx)(z,{value:W,type:`removed`})]}),(0,T.jsx)(`span`,{className:`grid size-4 shrink-0 place-items-center text-muted-foreground/60`,children:H?(0,T.jsx)(f,{"aria-label":`Applying changes`,className:r(`size-3.5`,!D&&`animate-spin`)}):n===`error`?(0,T.jsx)(p,{"aria-label":`Changes failed`,className:`size-3.5`}):n===`cancelled`?(0,T.jsx)(S,{"aria-label":`Changes cancelled`,className:`size-3.5`}):(0,T.jsx)(l,{"aria-label":`Changes applied`,className:`size-3.5`})}),(0,T.jsx)(a.span,{"aria-hidden":`true`,animate:{rotate:V?180:0},transition:D?{duration:0}:o,className:`shrink-0 text-muted-foreground/45 transition-colors group-hover:text-muted-foreground`,children:(0,T.jsx)(u,{className:`size-3.5`})})]}),(0,T.jsx)(_,{id:A,role:`region`,"aria-labelledby":k,open:V,children:(0,T.jsx)(`div`,{className:`pl-6 pt-1.5`,children:(0,T.jsxs)(`div`,{className:`overflow-hidden rounded-xl bg-muted/80`,children:[(0,T.jsx)(`div`,{ref:j,"data-slot":`file-diff-viewport`,"aria-live":H?`off`:`polite`,className:`scrollbar-hide overflow-auto`,style:{maxHeight:y},children:(0,T.jsxs)(`div`,{className:`font-mono text-xs leading-5`,children:[(0,T.jsx)(`span`,{className:`sr-only`,children:`File changes`}),t.map((e,t)=>{let n=e.type??`context`;return(0,T.jsxs)(`div`,{className:r(`grid grid-cols-[2.25rem_2.25rem_1rem_minmax(0,1fr)]`,n===`added`&&`bg-emerald-500/[0.07]`,n===`removed`&&`bg-rose-500/[0.07]`),children:[(0,T.jsx)(`span`,{className:`select-none pr-2 text-right tabular-nums text-muted-foreground/40`,children:e.oldLine}),(0,T.jsx)(`span`,{className:`select-none pr-2 text-right tabular-nums text-muted-foreground/40`,children:e.newLine}),(0,T.jsx)(`span`,{className:r(`select-none text-center text-muted-foreground/45`,n===`added`&&`text-emerald-600 dark:text-emerald-400`,n===`removed`&&`text-rose-600 dark:text-rose-400`),children:n===`added`?`+`:n===`removed`?`−`:``}),(0,T.jsx)(I,{code:e.content,tokens:K?.[t],className:`min-w-0 whitespace-pre px-1.5`})]},e.id)})]})}),G?(0,T.jsx)(`div`,{className:`flex justify-end px-2 pb-1.5 pt-1`,children:(0,T.jsx)(a.button,{type:`button`,"aria-label":P?`Copied`:`Copy diff`,title:P?`Copied`:`Copy diff`,onClick:J,whileTap:D?void 0:{scale:.9},transition:i,className:`grid size-7 place-items-center rounded-md text-muted-foreground outline-none transition-colors hover:bg-background/70 hover:text-foreground focus-visible:ring-2 focus-visible:ring-ring`,children:P?(0,T.jsx)(l,{className:`size-3.5`}):(0,T.jsx)(m,{className:`size-3.5`})})}):null]})})})]})}function V(e){return e===`running`?`Running`:e===`success`?`Completed`:e===`error`?`Failed`:`Cancelled`}function H(e,t){return typeof e==`string`||typeof e==`number`?String(e):t}function U(e){return e===`running`?`text-primary`:e===`success`?`text-emerald-600 dark:text-emerald-400`:e===`error`?`text-rose-600 dark:text-rose-400`:`text-muted-foreground`}function W({kind:e}){return e===`terminal`?(0,T.jsx)(y,{className:`size-4`}):e===`request`?(0,T.jsx)(C,{className:`size-4`}):(0,T.jsx)(b,{className:`size-4`})}function G({status:e,reduce:t}){return e===`running`?(0,T.jsx)(f,{className:r(`size-3`,!t&&`animate-spin`)}):e===`success`?(0,T.jsx)(d,{className:`size-3`}):e===`error`?(0,T.jsx)(p,{className:`size-3`}):(0,T.jsx)(S,{className:`size-3`})}function K({label:e,onClick:t,children:n}){let r=s()??!1;return(0,T.jsx)(a.button,{type:`button`,"aria-label":e,title:e,onClick:t,whileTap:r?void 0:{scale:.9},transition:i,className:`grid size-7 place-items-center rounded-md text-muted-foreground outline-none transition-colors hover:bg-muted hover:text-foreground focus-visible:ring-2 focus-visible:ring-ring`,children:n})}function q({children:e,language:t=`bash`,label:n,className:i}){return(0,T.jsxs)(`div`,{className:`space-y-1.5`,children:[n?(0,T.jsx)(`div`,{className:`px-0.5 text-micro font-medium uppercase tracking-[0.12em] text-muted-foreground/60`,children:n}):null,(0,T.jsx)(`pre`,{className:r(`m-0 whitespace-pre-wrap break-words font-mono text-xs leading-5 text-foreground/80`,i),children:(0,T.jsx)(`code`,{children:e})})]})}function J({tool:e,title:t,children:n,status:i=`running`,kind:c=`custom`,meta:d,icon:f,open:p,defaultOpen:g=!0,onOpenChange:y,collapseOnComplete:b=!0,maxHeight:x=220,copyText:S,onCopy:C,onRetry:E,className:D,contentClassName:O}){let k=s()??!1,A=(0,w.useId)(),j=`${A}-trigger`,M=`${A}-content`,N=(0,w.useRef)(null),P=(0,w.useRef)(i),F=(0,w.useRef)(void 0),[I,L]=(0,w.useState)(!1),[R,z]=(0,w.useState)(g),B=p??R,q=i===`running`,J=!!(S||C),Y=H(t,i),X=H(d,`${i}-meta`),Z=H(e,`${i}-tool`),Q=V(i),$=(0,w.useCallback)(e=>{p===void 0&&z(e),y?.(e)},[y,p]);(0,w.useEffect)(()=>{P.current!==`running`&&i===`running`&&$(!0),P.current===`running`&&i!==`running`&&b&&$(!1),P.current=i},[b,$,i]),(0,w.useEffect)(()=>()=>{F.current&&window.clearTimeout(F.current)},[]),(0,w.useLayoutEffect)(()=>{let e=N.current;if(!e||!B||!q)return;let t=requestAnimationFrame(()=>{typeof e.scrollTo==`function`?e.scrollTo({top:e.scrollHeight,behavior:k?`auto`:`smooth`}):e.scrollTop=e.scrollHeight});return()=>cancelAnimationFrame(t)});let ee=(0,w.useCallback)(async()=>{C?await C():S&&await navigator.clipboard?.writeText(S),L(!0),F.current&&window.clearTimeout(F.current),F.current=window.setTimeout(()=>L(!1),1600)},[S,C]);return(0,T.jsxs)(`div`,{"data-state":i,"aria-busy":q,className:r(`w-full text-sm`,D),children:[(0,T.jsxs)(`button`,{id:j,type:`button`,"aria-expanded":B,"aria-controls":M,onClick:()=>$(!B),className:`group flex min-h-9 w-full items-center gap-2 rounded-md py-1 text-left outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background`,children:[(0,T.jsx)(`span`,{"aria-hidden":`true`,className:`grid size-4 shrink-0 place-items-center text-muted-foreground`,children:f??(0,T.jsx)(W,{kind:c})}),(0,T.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-baseline gap-2`,children:[(0,T.jsx)(`span`,{className:`min-w-0 truncate font-medium text-foreground/90`,children:(0,T.jsx)(h,{value:Y,children:t})}),d?(0,T.jsx)(`span`,{className:`shrink-0 text-xs text-muted-foreground/60`,children:(0,T.jsx)(h,{value:X,children:d})}):null,(0,T.jsx)(`span`,{className:`min-w-0 truncate font-mono text-caption text-muted-foreground/55`,children:(0,T.jsx)(h,{value:Z,children:e})})]}),(0,T.jsxs)(`span`,{className:r(`inline-flex shrink-0 items-center gap-1 text-caption font-medium`,U(i)),children:[(0,T.jsx)(G,{status:i,reduce:k}),(0,T.jsx)(h,{value:i,children:Q})]}),(0,T.jsx)(a.span,{"aria-hidden":`true`,animate:{rotate:B?180:0},transition:k?{duration:0}:o,className:`shrink-0 text-muted-foreground/50 transition-colors group-hover:text-muted-foreground`,children:(0,T.jsx)(u,{className:`size-3.5`})})]}),(0,T.jsx)(_,{id:M,role:`region`,"aria-labelledby":j,open:B,children:(0,T.jsx)(`div`,{className:`pl-6 pt-1.5`,children:(0,T.jsxs)(`div`,{className:`overflow-hidden rounded-xl bg-muted/80`,children:[(0,T.jsx)(`div`,{ref:N,role:`log`,"aria-live":`polite`,className:`scrollbar-hide overflow-y-auto`,style:{maxHeight:x},children:(0,T.jsx)(`div`,{className:r(`p-3`,O),children:n})}),J||E?(0,T.jsxs)(`div`,{className:`flex items-center gap-0.5 px-2 pb-1.5`,children:[J?(0,T.jsx)(K,{label:I?`Copied`:`Copy result`,onClick:ee,children:I?(0,T.jsx)(l,{className:`size-3.5`}):(0,T.jsx)(m,{className:`size-3.5`})}):null,E?(0,T.jsx)(K,{label:`Run again`,onClick:E,children:(0,T.jsx)(v,{className:`size-3.5`})}):null,(0,T.jsx)(`span`,{className:`ml-auto text-caption text-muted-foreground/55`,children:(0,T.jsx)(h,{value:i,children:Q})})]}):null]})})})]})}export{R as i,q as n,B as r,J as t};
@@ -1 +0,0 @@
1
- import{n as e,r as t}from"./rolldown-runtime-hePW80VL.js";import{t as n}from"./react-CwJFpaho.js";import{t as r}from"./jsx-runtime-NZYk81nU.js";import{t as i}from"./utils-Brtgag-m.js";import{t as a}from"./createLucideIcon-_dfI7Arx.js";import{t as o}from"./chevron-down-DUUprRP5.js";import{t as s}from"./terminal-BQAKkBY6.js";import{t as c}from"./wrench-Myc12BTA.js";var l=a(`file-pen-line`,[[`path`,{d:`M14.364 13.634a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506l4.013-4.009a1 1 0 0 0-3.004-3.004z`,key:`ukzhwg`}],[`path`,{d:`M14.487 7.858A1 1 0 0 1 14 7V2`,key:`1klhew`}],[`path`,{d:`M20 19.645V20a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l2.516 2.516`,key:`rxaxab`}],[`path`,{d:`M8 18h1`,key:`13wk12`}]]),u=a(`file-search`,[[`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`}],[`circle`,{cx:`11.5`,cy:`14.5`,r:`2.5`,key:`1bq0ko`}],[`path`,{d:`M13.3 16.3 15 18`,key:`2quom7`}]]),d=e({ToolTimeline:()=>C}),f=t(n(),1),p=r(),m=[];function h(e){return e===`ipython`?`repl`:`artifacts`}function g(e,t){return t?{...e,artifactId:t.id,artifactTitle:t.title,artifactTarget:h(t.kind)}:e}function _(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:void 0}function v(e,t){let n=_(e);for(let e of[`path`,`filePath`,`command`,`cmd`,`query`,`pattern`,`code`])if(typeof n?.[e]==`string`&&n[e])return n[e];return t}function y(e,t){let n=e.state;return n===`output-error`||n===`error`?`error`:n===`cancelled`||n===`canceled`||n===`aborted`?`cancelled`:n===`input-streaming`||n===`streaming`?t?`running`:`cancelled`:t&&e.output===void 0&&e.result===void 0?`running`:`complete`}function b(e,t,n){let r=e.type;if(typeof r!=`string`||!r.startsWith(`tool-`)||r===`tool-FleetReasoning`||r===`tool-Thinking`)return;let i=r.slice(5),a=i.toLowerCase(),o=a.includes(`edit`)||a.includes(`write`)||a.includes(`patch`)?l:a.includes(`read`)||a.includes(`search`)||a.includes(`grep`)||a.includes(`glob`)?u:a.includes(`bash`)||a.includes(`shell`)||a.includes(`python`)||a.includes(`ipython`)?s:c,d=a.includes(`edit`)||a.includes(`write`)||a.includes(`patch`)?`Edited`:a.includes(`read`)?`Read`:a.includes(`search`)||a.includes(`grep`)||a.includes(`glob`)?`Searched`:a.includes(`bash`)||a.includes(`shell`)||a.includes(`python`)||a.includes(`ipython`)?`Ran`:i;return{id:typeof e.toolCallId==`string`?e.toolCallId:t,icon:o,verb:d,target:v(e.input??e.args,i),status:y(e,n)}}function x(e){let t=e.kind===`diff`?l:e.kind===`bash`||e.kind===`ipython`?s:c;return{id:`artifact:${e.id}`,icon:t,verb:e.kind===`compaction`?`Compacted`:e.kind===`refinement`?`Refined`:e.kind===`recap`?`Recapped`:e.kind===`rlm`?`Delegated`:e.kind===`diff`?`Edited`:`Completed`,target:e.title,status:e.status===`success`?`complete`:e.status}}function S(e){return e===`running`?`text-primary`:e===`error`?`text-destructive`:e===`cancelled`?`text-muted-foreground`:`text-emerald-600 dark:text-emerald-400`}function C({messages:e,artifacts:t=m,streaming:n,className:r,onOpenArtifact:a}){let s=(0,f.useMemo)(()=>{let r=new Set,i=new Map(t.flatMap(e=>e.sourceToolCallId?[[e.sourceToolCallId,e]]:[])),a=e.flatMap(e=>e.parts.flatMap((t,a)=>{let o=b(_(t)??{},`${e.id}:${a}`,n);return!o||r.has(o.id)?[]:(r.add(o.id),[g(o,i.get(o.id))])})),o=t.flatMap(e=>{if(e.sourceToolCallId&&r.has(e.sourceToolCallId))return[];let t=g(x(e),e);return r.has(t.id)?[]:(r.add(t.id),[t])});return[...a,...o]},[t,e,n]),[c,l]=(0,f.useState)(!0);if(s.length===0)return null;let u=s.at(-1),d=u?.icon;return(0,p.jsxs)(`section`,{className:i(`mb-2 rounded-xl border border-border/60 bg-muted/20`,r),children:[(0,p.jsxs)(`button`,{type:`button`,"aria-expanded":c,onClick:()=>l(e=>!e),className:`flex w-full items-center gap-2 px-3 py-2 text-left text-sm focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,children:[u&&d?(0,p.jsx)(d,{className:i(`size-3.5 shrink-0`,S(u.status),u.status===`running`&&`animate-pulse`)}):null,(0,p.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:n&&u?`${u.verb} ${u.target}`:`${s.length} tool ${s.length===1?`action`:`actions`}`}),(0,p.jsx)(o,{className:i(`size-3.5 text-muted-foreground transition-transform`,c&&`rotate-180`)})]}),c?(0,p.jsx)(`div`,{className:`space-y-1 border-t border-border/50 px-3 py-2`,children:s.map(e=>{let t=e.icon,n=e.artifactId,r=n&&e.artifactTitle?e.artifactTarget===`repl`?`Open ${e.artifactTitle} in REPL`:`Open ${e.artifactTitle} in artifacts`:void 0;return(0,p.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 text-xs`,children:[(0,p.jsx)(t,{className:i(`size-3.5 shrink-0`,S(e.status))}),(0,p.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:e.verb}),(0,p.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono text-foreground/75`,children:e.target}),r&&n&&a?(0,p.jsx)(`button`,{type:`button`,className:`shrink-0 text-micro text-muted-foreground hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,"aria-label":r,onClick:()=>a(n,e.artifactTarget),children:`Open`}):null]},e.id)})}):null]})}export{d as n,C as t};
@@ -1 +0,0 @@
1
- import{t as e}from"./createLucideIcon-_dfI7Arx.js";var t=e(`triangle-alert`,[[`path`,{d:`m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3`,key:`wmoenq`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]);export{t};
@@ -1 +0,0 @@
1
- import{r as e,t}from"./bundle-mjs-cJTHqqzI.js";var n=t({extend:{classGroups:{"font-size":[{text:[`micro`,`caption`,`label`,`body`,`title`,`headline`,`display`]}]}}});function r(...t){return n(e(t))}export{r as t};
@@ -1,6 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/openui-renderer-C4e9FOVR.js","assets/rolldown-runtime-hePW80VL.js","assets/react-CwJFpaho.js","assets/react-dom-DX3XddaT.js","assets/jsx-runtime-NZYk81nU.js","assets/button-Dl0ce3Y5.js","assets/utils-Brtgag-m.js","assets/bundle-mjs-cJTHqqzI.js","assets/createBaseUIEventDetails-B58Jldei.js","assets/dist-52wg4XPY.js","assets/card-DCEnYd2G.js","assets/provider-catalog-ClVvphe0.js","assets/DialogTitle-DiAm7YNe.js","assets/useBaseUiId-D9ZGPZ6f.js","assets/check-B3LlvM65.js","assets/createLucideIcon-_dfI7Arx.js","assets/chevron-down-DUUprRP5.js","assets/useControlled-CgAAWIy9.js","assets/input-CxZp56Im.js","assets/safe-external-url-BbAom7Bm.js","assets/chunk-YOKDWASO-Bte3iwlH.js","assets/preload-helper-Czpn1I53.js","assets/lib-ChrQ49PO.js","assets/character-entities-legacy-Wut6vMuj.js","assets/openui-utils-DawGoQNp.js","assets/chat-BVMnC5Qh.js","assets/dialog-BzcIOvFC.js","assets/x-BGsDD848.js","assets/switch-D3FhZU-S.js","assets/markdown-BHkByC9K.js","assets/dist-DbHxXSgQ.js"])))=>i.map(i=>d[i]);
2
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-CwJFpaho.js";import{t as n}from"./react-dom-DX3XddaT.js";import{t as r}from"./jsx-runtime-NZYk81nU.js";import{t as i}from"./utils-Brtgag-m.js";import{f as a,o,r as s}from"./ease-CMumuPlX.js";import{n as c,t as l}from"./use-reduced-motion-BOcG709U.js";import{t as u}from"./createLucideIcon-_dfI7Arx.js";import{i as d}from"./citations-DXqV2NLy.js";import{t as f}from"./check-B3LlvM65.js";import{t as p}from"./chevron-right-NVqQIoiO.js";import{n as m,t as h}from"./file-text-TmalmYrb.js";import{n as g,t as _}from"./loader-circle-B5GIZGxd.js";import{a as v,i as y}from"./agent-disclosure-CMrxF7L-.js";import{t as b}from"./x-BGsDD848.js";import{t as x}from"./preload-helper-Czpn1I53.js";import{t as S}from"./notify-DjVixft7.js";import{i as C}from"./workspace-path-nav-DqPbETfJ.js";import{t as w}from"./openui-utils-DawGoQNp.js";var T=u(`chevron-left`,[[`path`,{d:`m15 18-6-6 6-6`,key:`1wnfg3`}]]),E=u(`file-braces`,[[`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`}],[`path`,{d:`M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1`,key:`1oajmo`}],[`path`,{d:`M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1`,key:`mpwhp6`}]]),D=u(`file-code`,[[`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`}],[`path`,{d:`M10 12.5 8 15l2 2.5`,key:`1tg20x`}],[`path`,{d:`m14 12.5 2 2.5-2 2.5`,key:`yinavb`}]]),O=u(`image`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}],[`circle`,{cx:`9`,cy:`9`,r:`2`,key:`af1f0g`}],[`path`,{d:`m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21`,key:`1xmnt7`}]]),k=u(`rotate-cw`,[[`path`,{d:`M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8`,key:`1p45f6`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}]]),A=e(t(),1),j=(0,A.createContext)(void 0),M=r(),N=(0,A.createContext)({animateIn:!0,variant:`soft`}),P=(0,A.createContext)(()=>{});function F(...e){return t=>{for(let n of e)typeof n==`function`?n(t):n&&(n.current=t)}}var I={duration:.12,ease:s,delay:.04},L={type:`spring`,stiffness:520,damping:27,mass:.52};function R({variant:e=`soft`,align:t,animateIn:n=!1,className:r,children:s,initial:c,animate:u,exit:d,transition:f,layout:p,...m}){let h=l()??!1,g=(0,A.useContext)(j),_=t??g??`start`,v=(0,A.useMemo)(()=>({align:_,animateIn:n,variant:e}),[n,_,e]);return(0,M.jsx)(N.Provider,{value:v,children:(0,M.jsx)(a.div,{"data-slot":`message-bubble`,"data-align":_,"data-variant":e,layout:p,initial:c??!1,animate:u,exit:d??(h?{opacity:0}:{opacity:0,y:-3,scale:.99}),transition:f??(h?{duration:.12}:o),className:i(`group/bubble flex w-full flex-col`,_===`end`?`items-end`:`items-start`,r),...m,children:s})})}function z(e,t){return i(`relative z-0 min-w-9 max-w-[82%] rounded-2xl px-3.5 py-2.5 text-sm leading-6 text-foreground`,`[&_a]:font-medium [&_a]:underline [&_a]:underline-offset-4 [&_code]:rounded [&_code]:bg-background/60 [&_code]:px-1 [&_code]:py-0.5 [&_code]:font-mono [&_code]:text-[90%] [&_ol]:my-2 [&_ol]:list-decimal [&_ol]:pl-5 [&_p+p]:mt-2 [&_pre]:my-2 [&_pre]:overflow-x-auto [&_pre]:rounded-xl [&_pre]:bg-background/60 [&_pre]:p-3 [&_ul]:my-2 [&_ul]:list-disc [&_ul]:pl-5`,e===`solid`&&`text-background`,e===`ghost`&&`w-full max-w-none rounded-none px-0 py-0`,e===`danger`&&`text-destructive`,t&&`cursor-pointer text-left outline-none transition-[background-color,color,transform] duration-150 hover:brightness-[0.98] focus-visible:ring-2 focus-visible:ring-ring active:scale-[0.99]`)}function B(e,t){return i(`pointer-events-none absolute inset-0 -z-10 rounded-[inherit]`,t===`end`?`origin-bottom-right`:`origin-bottom-left`,e===`solid`&&`bg-foreground`,e===`soft`&&`bg-muted`,e===`tint`&&`bg-primary/10`,e===`outline`&&`border border-border/70 bg-background`,e===`danger`&&`bg-destructive/10`)}function V({render:e,className:t,children:n,ref:r,...c}){let u=l()??!1,{align:d=`start`,animateIn:f,variant:p}=(0,A.useContext)(N),[m,h]=(0,A.useState)(0),g=(0,A.useCallback)(()=>h(e=>e+1),[]),_=e?.type===`button`||e?.type===`a`,v=i(z(p,_),t),y=(0,M.jsxs)(M.Fragment,{children:[p===`ghost`?null:(0,M.jsx)(a.span,{"aria-hidden":`true`,layout:!1,layoutDependency:m,initial:f&&!u?{opacity:0,scale:.92}:!1,animate:{opacity:1,scale:1},transition:u?{duration:0}:{opacity:{duration:.12,ease:s},scale:L,layout:o},className:B(p,d)}),(0,M.jsx)(P.Provider,{value:g,children:(0,M.jsx)(a.div,{initial:f?{opacity:0}:!1,animate:{opacity:1},transition:u?{duration:.12,ease:s}:I,className:`relative`,children:n})})]});if(e){let t=e;return(0,A.cloneElement)(t,{...c,ref:F(t.props.ref,r),className:i(v,t.props.className),children:y,"data-slot":`message-bubble-content`})}return(0,M.jsx)(`div`,{ref:r,"data-slot":`message-bubble-content`,className:v,...c,children:y})}function H({item:e}){return(0,M.jsxs)(`div`,{"data-slot":`preview-rail-card`,className:`rounded-2xl border border-border bg-card p-4 shadow-sm`,children:[(0,M.jsx)(`p`,{"data-slot":`preview-rail-title`,className:`font-medium text-card-foreground`,children:e.label}),e.description?(0,M.jsx)(`div`,{"data-slot":`preview-rail-description`,className:`mt-1 text-sm leading-6 text-muted-foreground`,children:e.description}):null]})}function U({items:e,label:t=`Section navigation`,orientation:n=`vertical`,activeId:r,defaultActiveId:u,onActiveChange:f,onItemSelect:p,renderPreview:m,showPreview:h=!0,previewSide:g=`after`,highlightActive:_=!1,itemSize:v=24,children:y,className:b,railClassName:x,previewContainerClassName:S,previewClassName:C}){let w=(0,A.useId)(),T=l(),E=d(),[D,O]=(0,A.useState)(u??e[0]?.id??``),[k,j]=(0,A.useState)(null),[N,P]=(0,A.useState)(null),F=r??D,I=e.some(e=>e.id===F)?F:e[0]?.id??``,L=k??N??``,R=L||(_?I:``),z=e.findIndex(e=>e.id===R),B=e.length?`repeat(${e.length}, ${v}px)`:void 0,V=n===`horizontal`,U=e=>{r===void 0&&O(e),f?.(e)};return(0,M.jsxs)(a.div,{layoutRoot:!0,onBlur:e=>{e.currentTarget.contains(e.relatedTarget)||P(null)},className:i(`isolate relative flex w-full overflow-visible`,V?`min-h-64 flex-col items-center justify-center`:`min-h-80`,b),children:[(0,M.jsx)(`nav`,{"aria-label":t,onPointerLeave:()=>j(null),style:V?{gridTemplateColumns:B}:{gridTemplateRows:B},className:i(`relative z-10 grid shrink-0`,V?`h-12 w-fit max-w-full self-center justify-center`:`w-12 content-center`,x),children:e.map((e,t)=>{let n=e.id===I,r=e.id===R,s=z<0?1/0:Math.abs(t-z),c=r?1:s===1?.68:s===2?.44:.25,l=(0,M.jsx)(M.Fragment,{children:(0,M.jsx)(a.span,{"data-slot":`preview-rail-tick`,"aria-hidden":`true`,animate:V?{scaleY:c}:{scaleX:c},transition:T?{duration:0}:o,className:i(`block bg-current`,V?`h-12 w-0.5 origin-bottom`:`h-0.5 w-12 origin-left`,r?`text-foreground`:void 0)})}),u=i(`relative flex text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background`,V?`h-12 w-6 items-end justify-center`:`h-6 w-12 items-center`),d=V?{width:v}:{height:v},f=()=>{E&&j(e.id)},m=t=>{t.matches(`:focus-visible`)&&P(e.id)},h=()=>{U(e.id),p?.(e)};return e.href?(0,M.jsx)(`a`,{"data-slot":`preview-rail-item`,href:e.href,target:e.target,rel:e.rel??(e.target===`_blank`?`noreferrer noopener`:void 0),"aria-label":e.ariaLabel??e.label,"aria-current":n?`page`:void 0,onPointerEnter:f,onMouseEnter:f,onPointerDown:()=>P(null),onFocus:e=>m(e.currentTarget),onClick:h,style:d,className:u,children:l},e.id):(0,M.jsx)(`button`,{"data-slot":`preview-rail-item`,type:`button`,"aria-label":e.ariaLabel??e.label,"aria-current":n?`location`:void 0,onPointerEnter:f,onMouseEnter:f,onPointerDown:()=>P(null),onFocus:e=>m(e.currentTarget),onClick:h,style:d,className:u,children:l},e.id)})}),h?(0,M.jsx)(`div`,{"aria-hidden":`true`,style:V?{gridTemplateColumns:B}:{gridTemplateRows:B},className:i(`pointer-events-none absolute z-50 grid`,V?`top-1/2 left-1/2 h-5 w-fit max-w-full -translate-x-1/2 -translate-y-1/2 justify-center`:g===`before`?`inset-y-0 right-16 left-4 content-center`:`inset-y-0 right-4 left-16 content-center`,S),children:e.map(e=>(0,M.jsx)(`div`,{style:V?{width:v}:{height:v},className:i(`relative flex items-center`,V?`justify-center`:void 0),children:(0,M.jsx)(c,{mode:`wait`,initial:!1,children:e.id===L?(0,M.jsx)(a.div,{initial:T?{opacity:0}:{opacity:0,y:4,filter:`blur(6px)`},animate:T?{opacity:1}:{opacity:1,y:0,filter:`blur(0px)`},exit:T?{opacity:0}:{opacity:0,y:-2,filter:`blur(4px)`,transition:{duration:.12,ease:s}},transition:{duration:T?0:.18,ease:s},className:i(V?`absolute bottom-12 left-1/2 w-72 -translate-x-1/2`:i(`w-full max-w-sm`,g===`before`&&`ml-auto`),C),children:(0,M.jsx)(a.div,{layoutId:`preview-rail-card-${w}`,transition:T?{duration:0}:o,children:m?m(e):(0,M.jsx)(H,{item:e})})},e.id):null})},e.id))}):null,y?(0,M.jsx)(`div`,{className:`min-h-0 min-w-0 flex-1`,children:y}):null]})}var W=56,G=88;function K(e,t){if(e.length<=t)return e;let n=e.slice(0,t),r=n.lastIndexOf(` `);return`${n.slice(0,r>t*.65?r:t).trim()}…`}function q(e){return((e.querySelector(`[data-slot="message-bubble-content"]`)??e.querySelector(`[data-slot="message-content"]`)??e).textContent??``).replace(/\s+/g,` `).trim()}function ee(e,t){let n=q(e);if(!n)return{label:`Message`,description:void 0};if(n.length<=W){let e=t?q(t):``;return{label:n,description:e?K(e,G):void 0}}let r=n.slice(0,W).lastIndexOf(` `),i=r>W*.65?r:W,a=`${n.slice(0,i).trim()}…`,o=t?q(t):n.slice(i).trim();return{label:a,description:o?K(o,G):void 0}}function te({navigation:e,followThreshold:t,contentRef:n,viewportRef:r,reduce:i,smooth:a,scrollToEnd:o,setFollowing:s,markProgrammaticScroll:c}){let l=(0,A.useRef)(void 0),u=(0,A.useRef)(new WeakMap),d=(0,A.useRef)(0),f=(0,A.useRef)(new Map),[p,m]=(0,A.useState)([]),[h,g]=(0,A.useState)(``),[_,v]=(0,A.useState)(!1),y=(0,A.useCallback)(()=>{if(e!==`rail`)return;let n=r.current,i=[...f.current.entries()];if(!n||i.length===0)return;let a=n.getBoundingClientRect();if(n.scrollTop<=t){let e=i[0]?.[0]??``;g(t=>t===e?t:e);return}if(n.scrollHeight-n.scrollTop-n.clientHeight<=t){let e=i.at(-1)?.[0]??``;g(t=>t===e?t:e);return}let o=a.top+a.height/2,s=i[0]?.[0]??``,c=1/0;for(let[e,t]of i){let n=t.getBoundingClientRect(),r=Math.abs(n.top+n.height/2-o);r<c&&(c=r,s=e)}g(e=>e===s?e:s)},[t,e,r]),b=(0,A.useCallback)(()=>{if(e!==`rail`)return;let t=n.current,i=r.current;if(!t||!i)return;let a=Array.from(t.querySelectorAll(`[data-slot="message"]`)),o=new Map,s=a.map((e,t)=>{let n=u.current.get(e);n||(d.current+=1,n=`message-rail-${d.current}`,u.current.set(e,n)),o.set(n,e);let r=e.dataset.from??`conversation`,i=ee(e,r===`user`?a.slice(t+1).find(e=>e.dataset.from===`assistant`):void 0);return{id:n,label:i.label,description:i.description,ariaLabel:`Go to ${r} message ${t+1} of ${a.length}`}});f.current=o,m(e=>e.length===s.length&&e.every((e,t)=>e.id===s[t]?.id&&e.label===s[t]?.label&&e.description===s[t]?.description&&e.ariaLabel===s[t]?.ariaLabel)?e:s),v(i.scrollHeight>i.clientHeight+1&&a.length>1)},[n,e,r]),x=(0,A.useCallback)(()=>{e===`rail`&&(l.current&&cancelAnimationFrame(l.current),l.current=requestAnimationFrame(()=>{b(),y()}))},[e,b,y]);return(0,A.useEffect)(()=>{if(e!==`rail`){f.current.clear(),m([]),v(!1);return}let t=n.current,i=r.current;if(!t||!i)return;x();let a=typeof MutationObserver>`u`?null:new MutationObserver(x);a?.observe(t,{childList:!0,characterData:!0,subtree:!0});let o=typeof ResizeObserver>`u`?null:new ResizeObserver(x);return o?.observe(t),o?.observe(i),()=>{a?.disconnect(),o?.disconnect()}},[n,e,x,r]),(0,A.useEffect)(()=>()=>{l.current&&cancelAnimationFrame(l.current)},[]),{activeRailId:h,railItems:p,railOverflowing:_,scheduleRailSync:x,scrollToRailItem:(0,A.useCallback)(e=>{let t=r.current,n=f.current.get(e.id);if(!t||!n)return;let l=p.at(-1)?.id===e.id;if(g(e.id),l){s(!0),o(i||!a?`auto`:`smooth`);return}s(!1),c(i||!a?`auto`:`smooth`);let u=t.getBoundingClientRect(),d=n.getBoundingClientRect(),m=t.scrollTop+d.top-u.top-(t.clientHeight-d.height)/2,h=i||!a?`auto`:`smooth`;typeof t.scrollTo==`function`?t.scrollTo({top:m,behavior:h}):t.scrollTop=m},[c,p,i,o,s,a,r])}}function ne({followOutput:e=!0,followThreshold:t=56,smooth:n=!0,onFollowChange:r,label:a=`Conversation`,busy:o,navigation:s,navigationLabel:c=`Message navigation`,viewportClassName:u,contentClassName:d,railClassName:f,viewportRef:p,viewportProps:m,contentProps:h,className:g,children:_,...v}){let y=l()??!1,b=(0,A.useRef)(null),x=(0,A.useRef)(null),S=(0,A.useRef)(e),C=(0,A.useRef)(!1),w=(0,A.useRef)(void 0),T=(0,A.useRef)(void 0),{onScroll:E,onWheel:D,onTouchStart:O,onKeyDown:k,...j}=m??{},N=(0,A.useCallback)(e=>{b.current=e,typeof p==`function`?p(e):p&&(p.current=e)},[p]),P=(0,A.useCallback)(e=>{S.current!==e&&(S.current=e,r?.(e))},[r]),F=(0,A.useCallback)(e=>{C.current=!0,w.current&&window.clearTimeout(w.current),w.current=window.setTimeout(()=>{C.current=!1},e===`smooth`?320:0)},[]),I=(0,A.useCallback)(e=>{let t=b.current;t&&(F(e),typeof t.scrollTo==`function`?t.scrollTo({top:t.scrollHeight,behavior:e}):t.scrollTop=t.scrollHeight)},[F]),{activeRailId:L,railItems:R,railOverflowing:z,scheduleRailSync:B,scrollToRailItem:V}=te({navigation:s,followThreshold:t,contentRef:x,viewportRef:b,reduce:y,smooth:n,scrollToEnd:I,setFollowing:P,markProgrammaticScroll:F}),H=(0,A.useEffectEvent)(B),W=(0,A.useEffectEvent)(I),G=(0,A.useCallback)(()=>{let e=b.current;if(!e||C.current)return;let n=e.scrollHeight-e.scrollTop-e.clientHeight;P(n<=t),B()},[t,B,P]),K=(0,A.useCallback)(()=>{C.current=!1},[]);(0,A.useLayoutEffect)(()=>{if(S.current=e,e)return T.current=requestAnimationFrame(()=>W(`auto`)),()=>{T.current&&cancelAnimationFrame(T.current)}},[e]),(0,A.useEffect)(()=>{let t=x.current;if(!t||typeof ResizeObserver>`u`)return;let r=new ResizeObserver(()=>{H(),!(!e||!S.current)&&W(y||!n?`auto`:`smooth`)});return r.observe(t),()=>r.disconnect()},[e,y,n]),(0,A.useEffect)(()=>()=>{w.current&&window.clearTimeout(w.current),T.current&&cancelAnimationFrame(T.current)},[]);let q=(0,M.jsx)(`section`,{ref:N,"aria-label":a,...j,onScroll:e=>{G(),E?.(e)},onWheel:e=>{K(),D?.(e)},onTouchStart:e=>{K(),O?.(e)},onKeyDown:e=>{[`ArrowUp`,`PageUp`,`Home`].includes(e.key)&&K(),k?.(e)},className:i(`h-full overflow-y-auto overscroll-contain outline-none [overflow-anchor:none] focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,s===`rail`?`[-ms-overflow-style:none] [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`:`[scrollbar-gutter:stable]`,u,s===`rail`&&z&&`pr-10`),children:(0,M.jsx)(`div`,{ref:x,role:`log`,"aria-live":o?`off`:`polite`,"aria-relevant":`additions text`,"aria-busy":o,className:d,...h,children:_})});return(0,M.jsx)(`div`,{"data-slot":`message-scroller`,className:i(`min-h-0`,g),...v,children:s===`rail`?(0,M.jsx)(U,{items:z?R:[],label:c,activeId:L,onItemSelect:V,previewSide:`before`,highlightActive:!0,itemSize:14,className:`h-full min-h-0 overflow-hidden`,previewContainerClassName:`right-8 left-3`,previewClassName:`mr-1 w-64 max-w-full [&_[data-slot=preview-rail-card]]:h-20 [&_[data-slot=preview-rail-card]]:overflow-hidden [&_[data-slot=preview-rail-card]]:p-3 [&_[data-slot=preview-rail-title]]:line-clamp-1 [&_[data-slot=preview-rail-title]]:text-xs [&_[data-slot=preview-rail-title]]:leading-4 [&_[data-slot=preview-rail-description]]:line-clamp-2 [&_[data-slot=preview-rail-description]]:text-xs [&_[data-slot=preview-rail-description]]:leading-4`,railClassName:i(`absolute inset-y-3 right-1 w-7 content-center py-1 [&_[data-slot=preview-rail-item]]:w-7 [&_[data-slot=preview-rail-item]]:justify-end [&_[data-slot=preview-rail-tick]]:h-px [&_[data-slot=preview-rail-tick]]:w-4 [&_[data-slot=preview-rail-tick]]:origin-right`,z?`pointer-events-auto opacity-100`:`pointer-events-none opacity-0`,f),children:q}):q})}var re=(0,A.createContext)({from:`assistant`}),ie={type:`spring`,stiffness:480,damping:32,mass:.62};function ae({from:e,animateIn:t=!1,children:n,className:r,initial:o,animate:s,transition:c,exit:u,style:d,...f}){let p=l()??!1,m=(0,A.useMemo)(()=>({from:e}),[e]);return(0,M.jsx)(j.Provider,{value:e===`user`?`end`:`start`,children:(0,M.jsx)(re.Provider,{value:m,children:(0,M.jsx)(a.article,{"data-slot":`message`,"data-from":e,"aria-label":f[`aria-label`]??`${e} message`,initial:o??(t&&!p?{opacity:0,transform:`translateY(8px) scale(0.95)`}:!1),animate:s??(t&&!p?{opacity:1,transform:`translateY(0px) scale(1)`}:{opacity:1}),exit:u??(p?{opacity:0}:{opacity:0,transform:`translateY(-3px) scale(0.99)`}),transition:c??(p?{duration:.12}:ie),style:{transformOrigin:e===`user`?`100% 100%`:`0% 100%`,...d},className:i(`group/message flex w-full items-start gap-2`,e===`user`?`flex-row-reverse`:`flex-row`,r),...f,children:n})})})}function oe({className:e,...t}){let{from:n}=(0,A.useContext)(re);return(0,M.jsx)(`div`,{"data-slot":`message-content`,className:i(`flex min-w-0 flex-1 flex-col gap-1.5`,n===`user`?`items-end`:`items-start`,e),...t})}function se(e){return typeof e==`object`&&!!e}function J(e){if(typeof e!=`string`)return e;let t=e.trim();if(!t)return e;try{let n=JSON.parse(t);return se(n)||Array.isArray(n)?n:e}catch{return e}}function ce(e){if(!se(e)||typeof e.type!=`string`||!e.type.startsWith(`tool-`))return e;let t=J(e.input),n=J(e.output),r=J(e.result),i=t!==e.input,a=n!==e.output,o=r!==e.result;if(!i&&!a&&!o)return e;let s={...e};return i&&(s.input=t),a&&(s.output=n),o&&(s.result=r),s}function le(e){let t=!1,n=e.map(e=>{let n=ce(e);return n!==e&&(t=!0),n});return t?n:e}var ue=(0,A.memo)(function({title:e=`Something went wrong`,message:t,className:n}){return(0,M.jsx)(`div`,{className:i(`flex justify-start`,n),children:(0,M.jsxs)(`div`,{className:`rounded-[8px] border border-red-500/30 bg-red-500/10 px-4 py-2.5 text-sm text-foreground`,children:[(0,M.jsx)(`div`,{className:`font-medium text-foreground`,children:e}),(0,M.jsx)(`div`,{className:`mt-0.5 text-muted-foreground`,children:t})]})})}),de=new Intl.DateTimeFormat(`en-US`,{hour:`numeric`,minute:`2-digit`,hour12:!0}),fe=new Intl.DateTimeFormat(`en-US`,{month:`short`,day:`numeric`});function pe(e){let t=new Date;return e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate()?de.format(e):fe.format(e)}function me({text:e,onCopied:t}){let[n,r]=(0,A.useState)(!1),a=(0,A.useRef)(null);return(0,A.useEffect)(()=>()=>{a.current&&window.clearTimeout(a.current)},[]),(0,M.jsx)(`button`,{type:`button`,tabIndex:-1,"aria-label":n?`Copied`:`Copy message`,onClick:async()=>{try{await navigator.clipboard.writeText(e),r(!0),a.current&&window.clearTimeout(a.current),a.current=window.setTimeout(()=>{r(!1),a.current=null},2e3),S.success(`Copied to clipboard`),t?.()}catch{S.error(`Failed to copy to clipboard`)}},onPointerDown:e=>{e.stopPropagation()},onMouseDown:e=>e.stopPropagation(),className:i(`flex size-6 items-center justify-center rounded-md transition-[background-color,opacity,transform] duration-150 ease-out active:scale-[0.97]`,`bg-transparent opacity-50 hover:bg-foreground/10 hover:opacity-100`),children:(0,M.jsxs)(`div`,{className:`relative size-3.5`,children:[(0,M.jsx)(y,{className:i(`absolute inset-0 h-3.5 w-3.5 text-muted-foreground transition-[opacity,transform] duration-150 ease-out`,n?`scale-50 opacity-0`:`scale-100 opacity-100`)}),(0,M.jsx)(f,{className:i(`absolute inset-0 h-3.5 w-3.5 text-muted-foreground transition-[opacity,transform] duration-150 ease-out`,n?`scale-100 opacity-100`:`scale-50 opacity-0`)})]})})}function he({text:e,timestamp:t,heightClass:n,hoverClass:r,isVisible:a,alignClass:o,onCopied:s}){return(0,M.jsxs)(`div`,{className:i(`pointer-events-none flex items-center gap-1 pt-1 text-xs text-muted-foreground/70 opacity-0 transition-opacity duration-100`,n,o,r,a&&`pointer-events-auto opacity-100`),onMouseDown:e=>e.stopPropagation(),onPointerDown:e=>e.stopPropagation(),children:[t&&(0,M.jsx)(`span`,{children:t}),e&&(0,M.jsx)(me,{text:e,onCopied:s})]})}function ge(e){if(typeof e==`string`)return e;if(e===void 0)return``;try{return JSON.stringify(e,null,2)??``}catch{return String(e)}}function _e({part:e}){let t=ge(e.payload);return(0,M.jsxs)(`section`,{"data-payload-kind":e.kind,className:`w-full min-w-0 overflow-hidden rounded-xl border border-border/60 bg-muted/40 text-sm`,children:[(0,M.jsx)(`div`,{className:`border-b border-border/50 px-3 py-2 text-xs font-medium text-muted-foreground`,children:e.title}),e.text?(0,M.jsx)(`pre`,{className:`m-0 whitespace-pre-wrap break-words p-3 font-mono text-xs leading-5 text-foreground/80`,children:e.text}):null,t?(0,M.jsxs)(`details`,{open:!0,className:`border-t border-border/50 px-3 py-2`,children:[(0,M.jsx)(`summary`,{className:`cursor-pointer text-xs font-medium text-muted-foreground`,children:`Payload`}),(0,M.jsx)(`pre`,{className:`m-0 mt-2 max-w-full whitespace-pre-wrap break-words font-mono text-xs leading-5 text-foreground/70`,children:t})]}):null]})}function Y(e){return typeof e==`object`&&!!e}function X(e){return Y(e)&&e.type===`text`&&typeof e.text==`string`}function ve(e){return Y(e)&&e.type===`error`&&typeof e.message==`string`}function ye(e){return Y(e)&&e.type===`payload`&&typeof e.kind==`string`&&typeof e.title==`string`}function Z(e){if(!Y(e))return!1;let t=e.type;return t===`dynamic-tool`||typeof t==`string`&&t.startsWith(`tool-`)}function be(e,t){let n=[];for(let t of e)X(t)&&n.push(t.text);return n.join(t)}(0,A.memo)(function(e){let{message:t,UserMessageComponent:n,userMessageClassName:r,onCopied:i,display:a}=e,{enableImagePreview:o,showCopyToolbar:s,isMounted:c,isCopyVisible:l}=a,u=be(t.parts??[],``),d=(t.parts??[]).length>0;if(!u&&!d)return null;let f=t?.createdAt,p=`user-${t.id}`,m=c&&f?pe(new Date(f)):void 0;return(0,M.jsxs)(`div`,{className:`group/user-message`,children:[(0,M.jsx)(n,{message:t,className:r,enableImagePreview:o}),(s&&!!u||!!m)&&(0,M.jsx)(he,{text:s?u:``,timestamp:m,heightClass:`h-[28px]`,hoverClass:`group-hover/user-message:opacity-100 group-hover/user-message:pointer-events-auto`,isVisible:l,alignClass:`justify-end`,onCopied:()=>i(p)})]})}),(0,A.memo)(function(e){let{assistantMsgs:t,turnKey:n,ToolRendererComponent:r,TextRendererComponent:i,toolRenderers:a,onOpenUIAction:o,onOpenUIArtifactReady:s,onOpenArtifact:c,onCopied:l,stream:u,copy:d,display:f}=e,{isLast:p,isStreaming:m}=u,{enabled:h,isVisible:g}=d,{suppressQuestionTool:_}=f,v=be(t.flatMap(e=>e.parts??[]),`
3
-
4
- `),y=m&&p,b=h&&!!v.trim()&&!y,x=`assistant-${n}-all`,S=h?v:``;return(0,M.jsxs)(`div`,{className:`group/assistant-turn`,children:[(0,M.jsx)(`div`,{className:`flex flex-col gap-3`,children:t.map((e,n)=>{let l=p&&n===t.length-1;return(0,M.jsx)(Te,{msg:e,isLast:l,isStreaming:m,suppressQuestionTool:_,ToolRendererComponent:r,TextRendererComponent:i,toolRenderers:a,onOpenUIAction:o,onOpenUIArtifactReady:s,onOpenArtifact:c},e.id)})}),(b||g)&&(0,M.jsx)(he,{text:S,heightClass:`h-[48px] flex items-start w-full`,hoverClass:`group-hover/assistant-turn:opacity-100 group-hover/assistant-turn:pointer-events-auto`,isVisible:g,alignClass:`justify-start`,onCopied:()=>l(x)})]})});var xe=`tool-call:`,Se=`unkeyed-tool:`;function Ce(e,t,n){return t.toolCallId?`${xe}${t.toolCallId}`:`${Se}${e}:${t.type}:${n}`}function we(e,t){let{messageId:n,isLast:r,isStreaming:i,suppressQuestionTool:a,suppressTextWhenPlanWrite:o=!1,ToolRendererComponent:s,TextRendererComponent:c,toolRenderers:l,onOpenUIAction:u,onOpenUIArtifactReady:d,onOpenArtifact:f}=t,p=[],m=[],h=o&&e.some(e=>Z(e)&&e.type===`tool-PlanWrite`),g=new Set(e.filter(e=>Z(e)&&(e.type===`tool-Task`||e.type===`tool-Agent`)&&typeof e.toolCallId==`string`).map(e=>e.toolCallId)),_=new Map,v=new Set,y=new Map;for(let t of e){if(!Z(t)||t.type===`tool-TaskOutput`||!t.toolCallId||!t.toolCallId.includes(`:`))continue;let e=t.toolCallId.split(`:`)[0];g.has(e)&&(_.has(e)||_.set(e,[]),_.get(e).push(t),v.add(t.toolCallId))}let b=0;for(;b<e.length;){let t=e[b];if(Z(t)&&t.type===`tool-TaskOutput`){b++;continue}if(X(t)){let e=t.text;e&&!h&&m.push(e),b++;continue}if(ve(t)){p.push((0,M.jsx)(ue,{title:t.title,message:t.message},`${n}-error-${t.title}-${t.message}`)),b++;continue}if(ye(t)){p.push((0,M.jsx)(_e,{part:t},`${n}-payload-${b}`)),b++;continue}if(Z(t)){if(a&&t.type===`tool-Question`){b++;continue}if(t.toolCallId&&v.has(t.toolCallId)){b++;continue}let e=r&&i?`streaming`:void 0,o=t.toolCallId,c=(t.type===`tool-Task`||t.type===`tool-Agent`)&&o?_.get(o)||[]:void 0,u=t.toolCallId?0:y.get(t.type)??0;t.toolCallId||y.set(t.type,u+1),p.push((0,M.jsx)(s,{part:t,nestedTools:c,chatStatus:e,toolRenderers:l},Ce(n,t,u))),b++;continue}b++}let x=m.join(`
5
-
6
- `);return x&&p.push((0,M.jsx)(`div`,{className:`group/assistant-text text-body`,children:(0,M.jsx)(c,{content:x,isStreaming:i,messageId:n,onOpenUIAction:u,onOpenUIArtifactReady:d,onOpenArtifact:f,className:`leading-relaxed [&_p]:leading-relaxed`})},`${n}-text-final`)),p}function Te({msg:e,isLast:t,isStreaming:n,suppressQuestionTool:r,ToolRendererComponent:i,TextRendererComponent:a,toolRenderers:o,onOpenUIAction:s,onOpenUIArtifactReady:c,onOpenArtifact:l}){let u=(0,A.useMemo)(()=>le(e.parts??[]),[e.parts]),d=(0,A.useMemo)(()=>we(u,{messageId:e.id,isLast:t,isStreaming:n,suppressQuestionTool:r,ToolRendererComponent:i,TextRendererComponent:a,toolRenderers:o,onOpenUIAction:s,onOpenUIArtifactReady:c,onOpenArtifact:l}),[u,e.id,t,n,r,i,a,o,s,c,l]);return d.length>1?(0,M.jsx)(`div`,{className:`group/assistant-turn flex flex-col gap-3`,children:d}):(0,M.jsx)(`div`,{className:`group/assistant-turn`,children:d})}var Ee=e(n(),1);function De({open:e,onClose:t,images:n,initialIndex:r=0}){let[a,o]=(0,A.useState)(r),s=n.length>1;(0,A.useEffect)(()=>{e&&o(r)},[e,r]);let c=(0,A.useCallback)(e=>{e?.stopPropagation(),o(e=>e>0?e-1:n.length-1)},[n.length]),l=(0,A.useCallback)(e=>{e?.stopPropagation(),o(e=>e<n.length-1?e+1:0)},[n.length]),u=(0,A.useEffectEvent)(e=>{switch(e.key){case`ArrowLeft`:e.preventDefault(),s&&c();break;case`ArrowRight`:e.preventDefault(),s&&l()}});(0,A.useEffect)(()=>{if(!e)return;let t=e=>u(e);return window.addEventListener(`keydown`,t,!0),()=>window.removeEventListener(`keydown`,t,!0)},[e]),(0,A.useEffect)(()=>{if(!e)return;let t=document.body.style.overflow;return document.body.style.overflow=`hidden`,()=>{document.body.style.overflow=t}},[e]);let d=(0,A.useRef)(null),f=(0,A.useEffectEvent)(e=>{d.current&&e.target===d.current&&t()});if((0,A.useEffect)(()=>{if(!e)return;let t=d.current;if(!t)return;t.open||t.showModal();let n=e=>f(e);return t.addEventListener(`click`,n),()=>{t.removeEventListener(`click`,n),t.open&&t.close()}},[e]),typeof document>`u`||!e)return null;let m=n[a]??n[0];return m?.url?(0,Ee.createPortal)((0,M.jsxs)(`dialog`,{ref:d,"aria-label":`Image viewer`,onClose:()=>t(),className:`fixed inset-0 z-50 m-0 flex h-full max-h-none w-full max-w-none items-center justify-center border-0 bg-black/90 p-0 backdrop:bg-transparent`,children:[(0,M.jsx)(`button`,{type:`button`,onClick:t,"aria-label":`Close fullscreen (Esc)`,className:`absolute top-4 right-4 z-10 inline-flex size-9 items-center justify-center rounded-full bg-black/50 text-white transition-colors hover:bg-black/70`,children:(0,M.jsx)(b,{className:`size-5`})}),s&&(0,M.jsx)(`button`,{type:`button`,onClick:c,"aria-label":`Previous image (←)`,className:`absolute top-1/2 left-4 z-10 inline-flex size-10 -translate-y-1/2 items-center justify-center rounded-full bg-black/50 text-white transition-colors hover:bg-black/70`,children:(0,M.jsx)(T,{className:`size-6`})}),(0,M.jsx)(`img`,{src:m.url,alt:m.filename??`Image preview`,className:`max-h-[85vh] max-w-[90vw] object-contain select-none`,onClick:e=>e.stopPropagation(),draggable:!1}),s&&(0,M.jsx)(`button`,{type:`button`,onClick:l,"aria-label":`Next image (→)`,className:`absolute top-1/2 right-4 z-10 inline-flex size-10 -translate-y-1/2 items-center justify-center rounded-full bg-black/50 text-white transition-colors hover:bg-black/70`,children:(0,M.jsx)(p,{className:`size-6`})}),s&&(0,M.jsxs)(`div`,{className:`absolute bottom-6 left-1/2 flex -translate-x-1/2 flex-col items-center gap-3`,children:[(0,M.jsx)(`div`,{className:`flex gap-2`,children:n.map((e,t)=>(0,M.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),o(t)},"aria-label":`Go to image ${t+1}`,className:i(`size-2 rounded-full transition-all`,t===a?`scale-125 bg-white`:`bg-white/40 hover:bg-white/60`)},e.url))}),(0,M.jsxs)(`span`,{className:`text-sm text-white/70`,children:[a+1,` / `,n.length]})]})]}),document.body):null}function Oe(e){return e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:`${(e/1048576).toFixed(1)} MB`}function ke(e,t){if(t)return`image`;let n=e.split(`.`).pop()?.toLowerCase();return[`js`,`ts`,`jsx`,`tsx`,`py`,`rb`,`go`,`rs`,`java`,`kt`,`swift`,`c`,`cpp`,`h`,`hpp`,`cs`,`php`].includes(n||``)?`code`:[`json`,`yaml`,`yml`,`xml`].includes(n||``)?`data`:`text`}function Ae(e){switch(e){case`image`:return(0,M.jsx)(O,{className:`size-4 text-muted-foreground`});case`code`:return(0,M.jsx)(D,{className:`size-4 text-muted-foreground`});case`data`:return(0,M.jsx)(E,{className:`size-4 text-muted-foreground`});default:return(0,M.jsx)(h,{className:`size-4 text-muted-foreground`})}}function je({id:e,filename:t,size:n,isImage:r,url:a,onRemove:o,className:s,display:c=`chip`,enableImagePreview:l=!0}){let[u,d]=(0,A.useState)(!1),[f,p]=(0,A.useState)(!1),m=ke(t,r),h=c===`image-only`&&r&&!!a,g=!!(l&&r&&a),_=e=>{e?.stopPropagation(),p(!0)};return(0,M.jsxs)(`div`,{className:i(`relative rounded-[calc(var(--chat-input-radius)-var(--chat-context-padding))] bg-muted/50`,h?`flex size-10 items-center justify-center`:`flex max-w-[200px] min-w-[120px] items-center gap-2 py-1 pr-2 pl-1`,s),onMouseEnter:()=>d(!0),onMouseLeave:()=>d(!1),children:[h?(0,M.jsx)(`div`,{className:i(`size-8 shrink-0 overflow-hidden rounded-[calc(var(--chat-input-radius)-var(--chat-context-padding)-2px)]`,g&&`cursor-pointer`),onClick:g?_:void 0,role:g?`button`:void 0,tabIndex:g?0:void 0,"aria-label":g?`Preview ${t}`:void 0,onKeyDown:g?e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),_())}:void 0,children:(0,M.jsx)(`img`,{src:a,alt:t,className:`h-full w-full object-cover`})}):(0,M.jsxs)(M.Fragment,{children:[r&&a?(0,M.jsx)(`div`,{className:i(`w-8 shrink-0 self-stretch overflow-hidden rounded-[calc(var(--chat-input-radius)-var(--chat-context-padding)-2px)]`,g&&`cursor-pointer`),onClick:g?_:void 0,role:g?`button`:void 0,tabIndex:g?0:void 0,"aria-label":g?`Preview ${t}`:void 0,onKeyDown:g?e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),_())}:void 0,children:(0,M.jsx)(`img`,{src:a,alt:t,className:`aspect-square h-full w-full object-cover`})}):(0,M.jsx)(`div`,{className:`flex w-8 shrink-0 items-center justify-center self-stretch rounded-[calc(var(--chat-input-radius)-var(--chat-context-padding)-2px)] bg-muted`,children:Ae(m)}),(0,M.jsxs)(`div`,{className:`flex min-w-0 flex-col`,children:[(0,M.jsx)(`span`,{className:`truncate text-sm font-medium text-foreground`,title:t,children:t}),n!==void 0&&(0,M.jsx)(`span`,{className:`text-micro text-muted-foreground`,children:Oe(n)})]})]}),o&&(0,M.jsx)(`button`,{onClick:e=>{e.stopPropagation(),o()},"aria-label":`Remove ${t}`,className:`absolute -top-1.5 -right-1.5 z-10 flex size-4 items-center justify-center rounded-full border border-border bg-background text-muted-foreground transition-[opacity,transform] duration-150 ease-out hover:text-foreground active:scale-[0.97] ${u?`opacity-100`:`opacity-0`}`,type:`button`,children:(0,M.jsx)(b,{className:`size-3`})}),g&&a&&(0,M.jsx)(De,{open:f,onClose:()=>p(!1),images:[{id:e,url:a,filename:t}]})]})}function Q(e){return typeof e==`object`&&!!e}function Me(e){if(!Q(e))return null;let t=e.type;if(typeof t!=`string`)return null;if(t===`image`){let t=e;return t.url??t.image??null}if(t===`data-image`)return e.data?.url??null;if(t===`file`){let t=e;if(t.mimeType?.startsWith(`image/`)){if(t.url)return t.url;if(t.data)return`data:${t.mimeType};base64,${t.data}`}}return null}function Ne(e){if(!Q(e)||e.type!==`file`)return null;let t=e,n=t.filename||t.name||t.fileName||`Attachment`;return t.mimeType?.startsWith(`image/`)??!1?null:{filename:n,size:t.size}}var Pe=(0,A.memo)(function({message:e,className:t,enableImagePreview:n=!0}){let[r,a]=(0,A.useState)(null),o=(e.parts?.filter(X)??[]).map(e=>e.text).join(``),s=[],c=[];for(let t of e.parts??[]){let e=Me(t);e&&s.push(e);let n=Ne(t);n&&c.push(n)}if(Q(e)&&Array.isArray(e.experimental_attachments))for(let t of e.experimental_attachments)t.contentType?.startsWith(`image/`)&&t.url&&s.push(t.url);if(!o&&s.length===0&&c.length===0)return null;let l=s.map((t,n)=>({id:`${e.id}-img-${n}`,url:t,filename:`image-${n+1}`}));return(0,M.jsxs)(`div`,{className:i(`flex flex-col items-end gap-1`,t),children:[s.length>0&&s.map((e,t)=>(0,M.jsx)(`div`,{className:i(`max-w-[200px] rounded-chat-message bg-foreground/4 p-1.5`,n&&`cursor-pointer`),onClick:n?()=>a(t):void 0,role:n?`button`:void 0,tabIndex:n?0:void 0,onKeyDown:n?e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),a(t))}:void 0,children:(0,M.jsx)(`img`,{src:e,alt:`attachment`,width:184,height:120,className:`block max-h-[120px] max-w-[184px] rounded-chat-message-inner object-cover`})},e)),n&&l.length>0&&(0,M.jsx)(De,{open:r!==null,onClose:()=>a(null),images:l,initialIndex:r??0}),c.length>0&&(0,M.jsx)(`div`,{className:`flex flex-col items-end gap-2`,children:c.map((e,t)=>(0,M.jsx)(je,{id:`${e.filename}-${t}`,filename:e.filename,size:e.size},`${e.filename}-${e.size}`))}),o&&(0,M.jsx)(`div`,{className:`ms-[70px] max-w-[calc(95%-40px)]`,children:(0,M.jsx)(`div`,{className:`rounded-chat-message bg-muted px-3.5 py-1.5 text-sm text-foreground transition-colors`,children:(0,M.jsx)(`p`,{className:`leading-5 wrap-break-word whitespace-pre-wrap text-pretty`,children:o})})})]})});function Fe(e,t){let n=new Map(e.map(e=>[e.id,e])),r=new Set,i=[],a=e=>{if(r.has(e))return;r.add(e);let o=n.get(e);o&&i.push(o);for(let n of t?.nodes[e]?.childrenIds??[])a(n)};for(let e of t?.rootChildrenIds??[])a(e);for(let t of e)a(t.id);return i}function Ie(e){return e===`done`?(0,M.jsx)(g,{className:`size-3.5 text-emerald-600 dark:text-emerald-400`}):e===`error`||e===`failed`?(0,M.jsx)(m,{className:`size-3.5 text-destructive`}):e===`cancelled`?(0,M.jsx)(v,{className:`size-3.5 text-muted-foreground`}):e===`recovering`?(0,M.jsx)(k,{className:`size-3.5 animate-spin text-amber-500 dark:text-amber-400`}):(0,M.jsx)(_,{className:`size-3.5 animate-spin text-primary`})}function Le(e){let t=[],n;for(let r of e){if(r.role===`user`){n&&t.push(n),n={user:r,assistants:[]};continue}if(r.role===`assistant`){if(!n||r.source===`local`){n&&t.push(n),n={assistants:[r]};continue}n.assistants.push(r)}}return n&&t.push(n),t}var Re=(0,A.lazy)(()=>x(async()=>{let{GenerativeTextRenderer:e}=await import(`./openui-renderer-C4e9FOVR.js`).then(e=>e.n);return{GenerativeTextRenderer:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30])).then(({GenerativeTextRenderer:e})=>({default:e})));function ze({className:e,content:t}){return(0,M.jsx)(`div`,{className:e?`${e} whitespace-pre-wrap`:`whitespace-pre-wrap`,children:t})}function Be(e){return(0,A.useMemo)(()=>w(e.content).some(e=>e.type===`openui`),[e.content])?(0,M.jsx)(A.Suspense,{fallback:(0,M.jsx)(ze,{className:e.className,content:e.content}),children:(0,M.jsx)(Re,{...e})}):(0,M.jsx)(C,{className:e.className,content:e.content,isStreaming:e.isStreaming})}function $(e,t,n){if(n===0)return 0;let r=0,i=n;for(;r<i;){let n=Math.floor((r+i)/2);e[n]<=t?r=n+1:i=n}return Math.max(0,Math.min(n-1,r-1))}function Ve(e,t,n,r){let i=[0];for(let[a,o]of e.entries())i.push(i[i.length-1]+(t.get(o)??n)+(a<e.length-1?r:0));return i}function He({estimateSize:e,getItemKey:t,itemGap:n=0,items:r,overscan:i=1.5,renderItem:a,viewportRef:o}){let s=(0,A.useMemo)(()=>r.map((e,n)=>t(e,n)),[t,r]),c=r.length>=16,[l,u]=(0,A.useState)(()=>new Map),[d,f]=(0,A.useState)({height:0,scrollTop:0}),p=(0,A.useRef)(s),m=(0,A.useRef)(l),h=(0,A.useRef)(e),g=(0,A.useRef)(n),_=(0,A.useRef)([0]),v=(0,A.useRef)(0),y=(0,A.useRef)(new Map),b=(0,A.useRef)(new WeakMap),x=(0,A.useRef)(null),S=(0,A.useRef)(null),C=(0,A.useCallback)(()=>{let e=o.current;if(!e)return;let t={height:e.clientHeight,scrollTop:e.scrollTop};f(e=>e.height===t.height&&e.scrollTop===t.scrollTop?e:t)},[o]),w=(0,A.useCallback)(()=>{S.current??=window.requestAnimationFrame(()=>{S.current=null,C()})},[C]),T=(0,A.useCallback)((e,t)=>{let n=y.current.get(e);n&&n!==t&&(x.current?.unobserve(n),y.current.delete(e)),t&&(y.current.set(e,t),b.current.set(t,e),x.current?.observe(t))},[]),E=(0,A.useMemo)(()=>Ve(s,l,e,n),[e,n,s,l]);(0,A.useLayoutEffect)(()=>{C()},[r.length,C]),(0,A.useLayoutEffect)(()=>{p.current=s,m.current=l,h.current=e,g.current=n,_.current=E},[e,n,s,l,E]),(0,A.useEffect)(()=>{let e=o.current;if(!e)return;e.addEventListener(`scroll`,w,{passive:!0}),window.addEventListener(`resize`,w),C();let t;return typeof ResizeObserver<`u`&&(t=new ResizeObserver(w),t.observe(e)),()=>{e.removeEventListener(`scroll`,w),window.removeEventListener(`resize`,w),t?.disconnect(),S.current!=null&&(window.cancelAnimationFrame(S.current),S.current=null)}},[w,C,o]);let D=(0,A.useCallback)(e=>{let t=m.current,n=t;for(let r of e){let e=b.current.get(r.target),i=r.contentRect.height;!e||i<=0||t.get(e)===i||(n===t&&(n=new Map(t)),n.set(e,i))}if(n===t)return;let r=o.current,i=p.current,a=Ve(i,n,h.current,g.current);if(r&&i.length>0){let e=_.current,t=$(e,Math.max(0,r.scrollTop),i.length),n=i[t];if(n&&t>0){let r=(a[i.indexOf(n)]??0)-(e[t]??0);r!==0&&(v.current+=r)}}m.current=n,_.current=a,u(n)},[o]);if((0,A.useLayoutEffect)(()=>{if(!c||typeof ResizeObserver>`u`)return;let e=new ResizeObserver(e=>D(e));x.current=e;for(let t of y.current.values())e.observe(t);return()=>{e.disconnect(),x.current===e&&(x.current=null)}},[c,D]),(0,A.useEffect)(()=>{let e=m.current;if(e.size===0)return;let t=new Set(s),n=new Map([...e].filter(([e])=>t.has(e)));n.size!==e.size&&(m.current=n,u(n))},[s]),(0,A.useLayoutEffect)(()=>{let e=v.current,t=o.current;!t||e===0||(t.scrollTop+=e,v.current=0,C())},[l,C,o]),!c)return(0,M.jsx)(M.Fragment,{children:r.map((e,t)=>(0,M.jsx)(A.Fragment,{children:a(e,t)},s[t]))});let O=E[E.length-1]??0,k=Math.max(e,d.height*i),j=$(E,Math.max(0,d.scrollTop-k),r.length),N=Math.min(r.length-1,$(E,d.scrollTop+d.height+k,r.length)+1);return(0,M.jsx)(`div`,{"data-rendered-turn-count":N-j+1,"data-total-turn-count":r.length,"data-virtualized-transcript":`true`,style:{height:O,position:`relative`,width:`100%`},children:r.slice(j,N+1).map((e,t)=>{let n=j+t,r=s[n];return(0,M.jsx)(`div`,{ref:e=>T(r,e),"data-virtualized-turn-index":n,style:{left:0,position:`absolute`,right:0,top:E[n]},children:a(e,n)},r)})})}export{Ie as a,we as c,oe as d,ne as f,T as h,Fe as i,le as l,V as m,Be as n,Pe as o,R as p,Le as r,je as s,He as t,ae as u};
@@ -1 +0,0 @@
1
- import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-CwJFpaho.js";import{t as n}from"./jsx-runtime-NZYk81nU.js";import{t as r}from"./utils-Brtgag-m.js";import{f as i,l as a,o,r as s}from"./ease-CMumuPlX.js";import{n as c,t as l}from"./use-reduced-motion-BOcG709U.js";import{t as u}from"./resource-helpers-BuWybA8l.js";import{t as d}from"./chevron-right-NVqQIoiO.js";import{n as f,t as p}from"./file-text-TmalmYrb.js";import{C as m,S as h,b as g,n as _,o as v,r as y,t as b,x,y as S}from"./horizontal-resize-VLjLByUV.js";import{t as C}from"./folder-vuNT4shY.js";import{t as w}from"./hard-drive-BT7UxHQu.js";import{i as T,t as E}from"./workspace-path-nav-DqPbETfJ.js";import{a as D,i as O,n as k,r as A}from"./skeleton-loaders-BMa_G4yX.js";var j=e(t(),1),M=n();function N(e){return null}function P(e){return null}var F={duration:.22,ease:s},I={duration:.3,ease:s};function L(e,t,n=0,r=null){return e.flatMap((i,a)=>{let o={item:i,depth:n,parentId:r,position:a+1,setSize:e.length};return i.type!==`folder`||!t.has(i.value)||!i.children?.length?[o]:[o,...L(i.children,t,n+1,i.value)]})}function R(e){let t=[];return j.Children.forEach(e,e=>{if((0,j.isValidElement)(e)){if(e.type===j.Fragment){let n=e.props;t.push(...R(n.children));return}if(e.type===N){let n=e.props;t.push({value:n.value,name:n.name,type:`folder`,icon:n.icon,disabled:n.disabled,className:n.className,children:R(n.children)});return}if(e.type===P){let n=e.props;t.push({value:n.value,name:n.name,type:`file`,icon:n.icon,disabled:n.disabled,className:n.className})}}}),t}function z({item:e,open:t,reduce:n}){return e.type===`file`?(0,M.jsx)(m,{className:`size-4`}):n?t?(0,M.jsx)(h,{className:`size-4`}):(0,M.jsx)(C,{className:`size-4`}):(0,M.jsx)(c,{initial:!1,mode:`popLayout`,children:(0,M.jsx)(i.span,{initial:{opacity:0,scale:.75,rotate:t?-8:8},animate:{opacity:1,scale:1,rotate:0},exit:{opacity:0,scale:.75,rotate:t?8:-8},transition:a,className:`absolute inset-0 grid place-items-center`,children:t?(0,M.jsx)(h,{className:`size-4`}):(0,M.jsx)(C,{className:`size-4`})},t?`open`:`closed`)})}function B({children:e,value:t,defaultValue:n=null,onValueChange:s,expandedIds:c,defaultExpandedIds:u=[],onExpandedChange:f,ariaLabel:p=`Files`,indent:m=18,className:h,classNames:g}){let _=l()??!1,[v,y]=(0,j.useState)(n),[b,S]=(0,j.useState)(u),[C,w]=(0,j.useState)(t??n),T=(0,j.useRef)(new Map),E=t===void 0?v:t,D=c??b,O=(0,j.useMemo)(()=>new Set(D),[D]),k=(0,j.useMemo)(()=>R(e),[e]),A=(0,j.useMemo)(()=>L(k,O),[O,k]),N=C!==null&&A.some(({item:e})=>e.value===C)?C:A[0]?.item.value??null;C!==N&&w(N);let P=(0,j.useCallback)(e=>{w(e);let t=T.current.get(e);t?t.focus():requestAnimationFrame(()=>T.current.get(e)?.focus())},[]),B=(0,j.useCallback)(e=>{e.disabled||(t===void 0&&y(e.value),s?.(e.value))},[s,t]),V=(0,j.useCallback)(e=>{c===void 0&&S(e),f?.(e)},[c,f]),H=(0,j.useCallback)(e=>{let t=new Set(D);t.has(e)?t.delete(e):t.add(e),V(Array.from(t))},[D,V]),U=(0,j.useCallback)((e,t)=>{let n=A.findIndex(({item:e})=>e.value===t.item.value),r=A[n-1],i=A[n+1],a=t.item.type===`folder`&&!!t.item.children?.length,o=a&&O.has(t.item.value);if(e.key===`ArrowDown`&&i)e.preventDefault(),P(i.item.value);else if(e.key===`ArrowUp`&&r)e.preventDefault(),P(r.item.value);else if(e.key===`Home`&&A[0])e.preventDefault(),P(A[0].item.value);else if(e.key===`End`&&A.at(-1))e.preventDefault(),P(A.at(-1)?.item.value??t.item.value);else if(e.key===`ArrowRight`&&a)e.preventDefault(),!o&&!t.item.disabled?H(t.item.value):i?.parentId===t.item.value&&P(i.item.value);else if(e.key===`ArrowLeft`)e.preventDefault(),a&&o&&!t.item.disabled?H(t.item.value):t.parentId&&P(t.parentId);else if(e.key===`Enter`||e.key===` `){if(e.preventDefault(),t.item.disabled)return;B(t.item),a&&H(t.item.value)}},[O,P,A,B,H]);return(0,M.jsx)(x,{role:`tree`,"aria-label":p,"aria-multiselectable":`false`,inset:0,pillClassName:`rounded-xl bg-muted`,pillContainerClassName:`inset-y-auto top-0 h-9`,className:r(`min-w-0`,h,g?.tree),children:A.map(e=>{let t=e.item.type===`folder`,n=t&&!!e.item.children?.length,s=n&&O.has(e.item.value),c=E===e.item.value;return(0,M.jsx)(i.div,{layout:!_&&`position`,initial:!_&&{opacity:0,y:-6},animate:{opacity:e.item.disabled?.42:1,y:0,transition:_?{duration:0}:{...F,delay:Math.min(e.position*.025,.1)}},transition:_?{duration:0}:o,children:(0,M.jsxs)(`button`,{ref:t=>{t?T.current.set(e.item.value,t):T.current.delete(e.item.value)},type:`button`,role:`treeitem`,"aria-level":e.depth+1,"aria-posinset":e.position,"aria-setsize":e.setSize,"aria-selected":c,"aria-expanded":n?s:void 0,"aria-disabled":e.item.disabled||void 0,tabIndex:N===e.item.value?0:-1,onFocus:()=>w(e.item.value),onKeyDown:t=>U(t,e),onClick:()=>{e.item.disabled||(B(e.item),n&&H(e.item.value))},className:r(`group/file-tree relative flex h-9 w-full items-center gap-2 overflow-hidden rounded-lg pr-2 text-left text-sm text-muted-foreground outline-none`,`transition-colors hover:text-foreground focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset`,`aria-disabled:cursor-not-allowed`,c&&`bg-muted font-medium text-foreground`,g?.item,e.item.className),style:{paddingLeft:8+e.depth*m},children:[e.depth>0?(0,M.jsx)(i.span,{"aria-hidden":`true`,initial:!_&&{opacity:0,scaleY:0},animate:{opacity:1,scaleY:1},exit:{opacity:0,scaleY:0},transition:_?{duration:0}:I,className:`absolute top-0 bottom-0 w-px origin-top bg-border/70`,style:{left:16+(e.depth-1)*m}}):null,(0,M.jsx)(i.span,{"aria-hidden":`true`,animate:{rotate:s?90:0},transition:_?{duration:0}:a,className:r(`relative z-10 grid size-4 shrink-0 place-items-center`,!n&&`opacity-0`),children:(0,M.jsx)(d,{className:`size-3.5`})}),(0,M.jsx)(`span`,{"aria-hidden":`true`,className:r(`relative z-10 grid size-4 shrink-0 place-items-center text-muted-foreground transition-colors group-hover/file-tree:text-foreground`,t&&s&&`text-foreground`,g?.icon),children:e.item.icon??(0,M.jsx)(z,{item:e.item,open:s,reduce:_})}),(0,M.jsx)(`span`,{className:r(`relative z-10 min-w-0 flex-1 truncate`,g?.label),children:e.item.name})]})},e.item.value)})})}var V=`fleet-prime:v1:workspace-tree-width`,H=120,U=200,W=160,G=8;function K(e,t){let n=Math.max(H,t-W-G);return Math.min(n,Math.max(H,Math.round(e)))}function q(e){return _(V,U,t=>e===void 0?Math.max(H,Math.round(t)):K(t,e))}function J(e){y(V,e)}var Y=e=>{let t=window.matchMedia(`(min-width: 640px)`);return t.addEventListener(`change`,e),()=>t.removeEventListener(`change`,e)},X=()=>window.matchMedia(`(min-width: 640px)`).matches,Z=()=>!1;function Q(e){let[t,n]=(0,j.useState)(q),r=(0,j.useSyncExternalStore)(Y,X,Z),i=(0,j.useRef)(null),a=(0,j.useCallback)(e=>{let r=i.current?.clientWidth??0;if(r===0)return;let a=K(t,r);b({event:e,startWidth:a,getNextWidth:(e,t,n)=>K(n+(e-t),r),onWidthChange:e=>{n(e),J(e)}})},[t]);return(0,j.useEffect)(()=>{let e=i.current;if(!e)return;let t=e.clientWidth;t<640||n(e=>{let n=K(e,t);return n===e?e:(J(n),n)})},[]),{handleTreeResizeStart:a,isSplitLayout:r,splitRef:i,splitStyle:r?{gridTemplateColumns:`${t}px 8px minmax(160px, 1fr)`}:void 0}}var ee=15e3;function te(e){return e instanceof DOMException&&e.name===`AbortError`?Error(`Preview timed out`):e instanceof Error?e.name===`AbortError`||/aborted|timed out/i.test(e.message)?Error(`Preview timed out`):e:Error(String(e))}function ne({error:e,emptyDescription:t=`agent-workspace has not been loaded yet.`,emptyTitle:n=`Workspace unavailable`,loadWorkspaceFile:r,loading:i,onSelectedPathChange:a,previewEmptyDescription:o=`Choose a workspace file to preview its Markdown.`,previewEmptyTitle:s=`Select a file`,scopePath:c,scopeLabel:l,selectedPath:d,treeTestId:p=`workspace-tree`,workspace:m}){let[h,_]=(0,j.useState)(null),y=a!==void 0,b=y?d??null:h,x=e=>{if(y){a(e);return}_(e)},[C,T]=(0,j.useState)(null),[k,N]=(0,j.useState)(null),[P,F]=(0,j.useState)(!1),I=(0,j.useRef)(null),{handleTreeResizeStart:L,splitRef:R,splitStyle:z}=Q(m),V=(0,j.useMemo)(()=>{if(!m)return{headerLabel:l??`agent-workspace`,nodes:[]};if(!c)return{headerLabel:m.root,nodes:m.nodes};let e=u(m.nodes,c);return e?e.type===`directory`?{headerLabel:l??e.name,nodes:e.children??[]}:{headerLabel:l??e.name,nodes:[e]}:{headerLabel:l??c.split(`/`).pop()??c,nodes:[]}},[l,c,m]);return(0,j.useEffect)(()=>{if(!(!m||!b)){if(c&&!E(b,c)){x(null),T(null),N(null);return}u(m.nodes,b)?.type!==`file`&&(x(null),T(null),N(null))}},[a,c,b,m]),(0,j.useEffect)(()=>{if(!b){F(!1);return}let e=b,t=new AbortController,n=window.setTimeout(()=>t.abort(),ee),i=!1;return T(t=>t?.path===e?t:null),F(!0),N(null),(async()=>{try{let n=await Promise.race([r(e,t.signal),new Promise((e,n)=>{let r=()=>n(new DOMException(`Preview timed out`,`AbortError`));if(t.signal.aborted){r();return}t.signal.addEventListener(`abort`,r,{once:!0})})]);if(i)return;T(n),N(null)}catch(e){if(i)return;T(null),N(te(e))}finally{i||F(!1)}})(),()=>{i=!0,window.clearTimeout(n),t.abort()}},[r,b,m]),(0,j.useEffect)(()=>{if(!b||typeof window>`u`||window.matchMedia(`(min-width: 960px)`).matches)return;let e=window.requestAnimationFrame(()=>{I.current?.scrollIntoView({block:`start`,inline:`nearest`,behavior:`auto`})});return()=>window.cancelAnimationFrame(e)},[b]),e?v(e)?(0,M.jsx)(D,{icon:f,title:`Daytona not connected`,description:`Connect a Daytona API key for your account to browse and preview your agent workspace.`}):(0,M.jsx)(D,{icon:f,title:`Unable to load workspace`,description:e.message}):i&&!m?(0,M.jsx)(A,{}):!m||c&&V.nodes.length===0?(0,M.jsx)(D,{icon:w,title:n,description:t}):(0,M.jsxs)(`div`,{ref:R,className:`relative grid h-full min-h-0 grid-cols-1 gap-2 overflow-hidden ${S}`,style:z,children:[(0,M.jsx)(`div`,{className:`flex min-h-0 min-w-0 flex-col overflow-hidden`,children:(0,M.jsxs)(`div`,{"data-testid":p,className:`min-h-0 min-w-0 flex-1 overflow-y-auto`,children:[(0,M.jsxs)(`div`,{className:`mb-2 flex min-w-0 items-center gap-2 rounded-sm bg-foreground/5 px-2 py-1.5`,children:[(0,M.jsx)(w,{className:`size-3.5 shrink-0 text-foreground/45`}),(0,M.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-label font-medium text-foreground/70`,children:V.headerLabel})]}),(0,M.jsx)(B,{ariaLabel:c?`Files in ${V.headerLabel}`:`Workspace files`,className:`gap-0.5`,classNames:{item:`h-8 gap-1.5 rounded-sm text-label font-normal text-foreground/65 hover:bg-foreground/5 hover:text-foreground/80 aria-selected:bg-foreground/8 aria-selected:text-foreground/80`,icon:`size-3.5 text-foreground/35`,label:`text-label`},value:b,onValueChange:e=>{u(m.nodes,e)?.type===`file`&&x(e)},children:V.nodes.map(e=>$(e))}),m.diagnostics.length>0&&!c&&(0,M.jsx)(`div`,{className:`mt-2 border-t border-border/60 pt-2`,children:(0,M.jsx)(O,{id:`workspace-diagnostics`,label:`Diagnostics`,icon:f,items:m.diagnostics.map((e,t)=>({name:`Diagnostic ${t+1}`,description:e}))})})]})}),(0,M.jsx)(`button`,{type:`button`,"aria-label":`Resize workspace tree`,className:`min-h-0 cursor-col-resize touch-none bg-transparent transition-colors outline-none hover:bg-foreground/10 focus-visible:bg-foreground/10 ${g}`,"data-testid":`workspace-tree-resize-handle`,onPointerDown:L}),(0,M.jsx)(re,{emptyDescription:o,emptyTitle:s,error:k,loading:P,preview:C,previewRef:I,selectedPath:b})]})}function $(e){return e.type===`directory`?(0,M.jsx)(N,{value:e.path,name:e.name,children:e.children?.map(e=>$(e))},e.path):(0,M.jsx)(P,{value:e.path,name:e.name},e.path)}function re({emptyDescription:e,emptyTitle:t,error:n,loading:r,preview:i,previewRef:a,selectedPath:o}){return(0,M.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-col overflow-hidden rounded-md border border-border/60 bg-background`,"data-testid":`workspace-preview`,ref:a,children:[(0,M.jsxs)(`div`,{className:`flex min-h-9 min-w-0 shrink-0 items-center gap-2 border-b border-border/60 px-2.5`,children:[(0,M.jsx)(p,{className:`size-3.5 shrink-0 text-foreground/35`}),(0,M.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-label font-medium text-foreground/70`,children:i?.name??o??`Preview`})]}),(0,M.jsxs)(`div`,{className:`flex-1 overflow-y-auto px-3 py-2`,children:[!o&&(0,M.jsx)(D,{icon:p,title:t,description:e}),o&&r&&!i&&(0,M.jsx)(k,{}),o&&n&&(0,M.jsx)(D,{icon:f,title:`Unable to load preview`,description:n.message}),o&&!n&&i?.status===`too-large`&&(0,M.jsx)(D,{icon:f,title:`Preview too large`,description:`${i.name} is too large to preview safely.`}),o&&!n&&i?.status===`unsupported`&&(0,M.jsx)(D,{icon:f,title:`Unsupported preview`,description:`${i.name} is not a supported text file.`}),o&&!n&&i&&(i.status===void 0||i.status===`ok`)&&(0,M.jsx)(T,{className:`text-label leading-relaxed`,content:i.content})]})]})}export{ne as WorkspacePanelContent};
@@ -1 +0,0 @@
1
- import{t as e}from"./createLucideIcon-_dfI7Arx.js";var t=e(`wrench`,[[`path`,{d:`M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z`,key:`1ngwbx`}]]);export{t};
@@ -1 +0,0 @@
1
- import{t as e}from"./createLucideIcon-_dfI7Arx.js";var t=e(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]);export{t};