@runfusion/fusion 0.52.0 → 0.53.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (295) hide show
  1. package/dist/bin.js +3064 -2337
  2. package/dist/client/.vite/manifest.json +248 -248
  3. package/dist/client/assets/{AgentDetailView-C-PM8cwG.js → AgentDetailView-DYiAlisV.js} +3 -3
  4. package/dist/client/assets/AgentPermissionPolicyEditor-CMtzKP_x.js +6 -0
  5. package/dist/client/assets/AgentPermissionPolicyEditor-TpdlOWZW.css +1 -0
  6. package/dist/client/assets/{AgentsView-DJJO0laF.js → AgentsView-YfJlxZoN.js} +3 -3
  7. package/dist/client/assets/ChatView-Diuc5LOe.js +6 -0
  8. package/dist/client/assets/{CommandCenter-CKvo0MuO.js → CommandCenter-CIwFDUKg.js} +2 -2
  9. package/dist/client/assets/{DevServerView-BHLG4Mxg.js → DevServerView-DDRHfATy.js} +1 -1
  10. package/dist/client/assets/{DirectoryPicker-CRY-rpnj.js → DirectoryPicker-C6HRGnSQ.js} +1 -1
  11. package/dist/client/assets/{DocumentsView-DhC4dnXD.js → DocumentsView-C5RTxVSE.js} +1 -1
  12. package/dist/client/assets/{EvalsView-DsnLOVZB.js → EvalsView-B9DCS8sV.js} +1 -1
  13. package/dist/client/assets/{ExperimentalAgentOnboardingModal-B4iFX60E.js → ExperimentalAgentOnboardingModal-DGmpwghz.js} +1 -1
  14. package/dist/client/assets/{GoalsView-D5bzq6W9.js → GoalsView-B2hr3p6f.js} +1 -1
  15. package/dist/client/assets/{InsightsView-Drpu72M4.js → InsightsView-DM3eYN2S.js} +1 -1
  16. package/dist/client/assets/{MemoryView-auLBP3UW.js → MemoryView-8Yg8r9qS.js} +1 -1
  17. package/dist/client/assets/{PiExtensionsManager-RlbkXf_t.js → PiExtensionsManager-DbZ5qtAF.js} +1 -1
  18. package/dist/client/assets/{PluginManager-BJMUacpG.js → PluginManager-C1YuxOWu.js} +1 -1
  19. package/dist/client/assets/{PullRequestView-344B9WF-.js → PullRequestView-CMVvVGaP.js} +1 -1
  20. package/dist/client/assets/{ResearchView-BNqt-f53.js → ResearchView-BjvgxMjL.js} +1 -1
  21. package/dist/client/assets/{SecretsView-Be8Tm8It.js → SecretsView-gChNSW57.js} +1 -1
  22. package/dist/client/assets/SessionTerminal-BSeQ5i5F.js +2 -0
  23. package/dist/client/assets/SettingsModal-CQuHnNXu.js +21 -0
  24. package/dist/client/assets/{SettingsModal-B28DuhaN.js → SettingsModal-_04cEhgW.js} +1 -1
  25. package/dist/client/assets/{SetupWizardModal-y2j9aZoi.js → SetupWizardModal-Dk9VO68p.js} +2 -2
  26. package/dist/client/assets/ShadcnColorPicker-3OgfenMo.css +1 -0
  27. package/dist/client/assets/ShadcnColorPicker-DyPMec2U.js +11 -0
  28. package/dist/client/assets/{SkillsView-HQp7UTdA.js → SkillsView-BAMinq2_.js} +1 -1
  29. package/dist/client/assets/{TodoView-DF7_qWGH.js → TodoView-DaXGwdTQ.js} +1 -1
  30. package/dist/client/assets/WorkflowNodeEditor-DmJI-3Qp.js +8 -0
  31. package/dist/client/assets/{agentSkills-Cy_HrYHd.js → agentSkills-B_n4hPLc.js} +1 -1
  32. package/dist/client/assets/app-5S4z84u5.js +13 -0
  33. package/dist/client/assets/app-B1VYocx2.js +13 -0
  34. package/dist/client/assets/app-BhtYYxin.js +13 -0
  35. package/dist/client/assets/app-Cts0__Vx.js +13 -0
  36. package/dist/client/assets/app-DczBmsP4.js +13 -0
  37. package/dist/client/assets/app-_GFUqcMK.js +13 -0
  38. package/dist/client/assets/{architectureDiagram-3BPJPVTR-4ur4sxlr.js → architectureDiagram-3BPJPVTR-DysoZtiI.js} +1 -1
  39. package/dist/client/assets/{blockDiagram-GPEHLZMM-BgZeqq_q.js → blockDiagram-GPEHLZMM-DpwJlK7i.js} +1 -1
  40. package/dist/client/assets/{c4Diagram-AAUBKEIU-BQtdOIrm.js → c4Diagram-AAUBKEIU-DV115Z4B.js} +1 -1
  41. package/dist/client/assets/channel-BgnsK1mp.js +1 -0
  42. package/dist/client/assets/{chunk-2J33WTMH-C1k1PBy1.js → chunk-2J33WTMH-B5BtZWCx.js} +1 -1
  43. package/dist/client/assets/{chunk-4BX2VUAB-hNujwvSn.js → chunk-4BX2VUAB-CJvgQM9e.js} +1 -1
  44. package/dist/client/assets/{chunk-55IACEB6-CnXV9LyI.js → chunk-55IACEB6-ClrKLhVZ.js} +1 -1
  45. package/dist/client/assets/{chunk-727SXJPM-B-ocMdYN.js → chunk-727SXJPM-DhfUMdP5.js} +1 -1
  46. package/dist/client/assets/{chunk-AQP2D5EJ-CWNRUL6C.js → chunk-AQP2D5EJ-CGKqiWfs.js} +1 -1
  47. package/dist/client/assets/{chunk-FMBD7UC4-DerrCiYe.js → chunk-FMBD7UC4-sLs4-jLA.js} +1 -1
  48. package/dist/client/assets/{chunk-ND2GUHAM-BfcSPlX-.js → chunk-ND2GUHAM-BaptHWZM.js} +1 -1
  49. package/dist/client/assets/{chunk-QZHKN3VN-BaWScAds.js → chunk-QZHKN3VN-CArEOzHE.js} +1 -1
  50. package/dist/client/assets/classDiagram-4FO5ZUOK-ZkHxi9su.js +1 -0
  51. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-ZkHxi9su.js +1 -0
  52. package/dist/client/assets/{cose-bilkent-S5V4N54A-n0Oeinz2.js → cose-bilkent-S5V4N54A-DZ4jAfQc.js} +1 -1
  53. package/dist/client/assets/{dagre-BM42HDAG-CUtehSt2.js → dagre-BM42HDAG-CMhtRslH.js} +1 -1
  54. package/dist/client/assets/{dashboard-view-BW3GHqgb.js → dashboard-view-Bc5cz2DG.js} +1 -1
  55. package/dist/client/assets/{dashboard-view-DWKCxtr5.js → dashboard-view-Buq7raMZ.js} +1 -1
  56. package/dist/client/assets/{diagram-2AECGRRQ-Bz4aOzhR.js → diagram-2AECGRRQ-6uVCJGM-.js} +1 -1
  57. package/dist/client/assets/{diagram-5GNKFQAL-UoxIMwPf.js → diagram-5GNKFQAL-fRigQDqm.js} +1 -1
  58. package/dist/client/assets/{diagram-KO2AKTUF-BYR7hloS.js → diagram-KO2AKTUF-DeLeKk1C.js} +1 -1
  59. package/dist/client/assets/{diagram-LMA3HP47-BR9MaP8U.js → diagram-LMA3HP47-BVRY5C4e.js} +1 -1
  60. package/dist/client/assets/{diagram-OG6HWLK6-BOfldYHv.js → diagram-OG6HWLK6-DdP1xMRM.js} +1 -1
  61. package/dist/client/assets/{erDiagram-TEJ5UH35-B8x9mfOs.js → erDiagram-TEJ5UH35-BU5DG9IX.js} +1 -1
  62. package/dist/client/assets/{flowDiagram-I6XJVG4X-DBnTroCV.js → flowDiagram-I6XJVG4X-CFSihB_T.js} +1 -1
  63. package/dist/client/assets/{folder-open-CFze34Eq.js → folder-open-CV5ek-IV.js} +1 -1
  64. package/dist/client/assets/{ganttDiagram-6RSMTGT7-BfzFy7iz.js → ganttDiagram-6RSMTGT7-BFVLXtHC.js} +1 -1
  65. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-CNTFu6IY.js → gitGraphDiagram-PVQCEYII-TiwSURa4.js} +1 -1
  66. package/dist/client/assets/index-CEUULqTR.js +1336 -0
  67. package/dist/client/assets/index-D1IHwGhg.css +1 -0
  68. package/dist/client/assets/{infoDiagram-5YYISTIA-DJiBRaAl.js → infoDiagram-5YYISTIA-Drkf3o26.js} +1 -1
  69. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-CIY9t4cc.js → ishikawaDiagram-YF4QCWOH-a9ZSlbx2.js} +1 -1
  70. package/dist/client/assets/{journeyDiagram-JHISSGLW-HLMZmcjY.js → journeyDiagram-JHISSGLW-DF_3fPPW.js} +1 -1
  71. package/dist/client/assets/{kanban-definition-UN3LZRKU-x9nKoxCI.js → kanban-definition-UN3LZRKU-B6dXVyXh.js} +1 -1
  72. package/dist/client/assets/{mermaid.core-pHkdB6fb.js → mermaid.core-BGFpwAba.js} +4 -4
  73. package/dist/client/assets/{mindmap-definition-RKZ34NQL-Bs_4Tofu.js → mindmap-definition-RKZ34NQL-D5bZ0zCy.js} +1 -1
  74. package/dist/client/assets/{pieDiagram-4H26LBE5-BGHz9JGZ.js → pieDiagram-4H26LBE5-Dh6rUd7R.js} +1 -1
  75. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-xHSR7cAR.js → quadrantDiagram-W4KKPZXB-D9Fy6Nl1.js} +1 -1
  76. package/dist/client/assets/{requirementDiagram-4Y6WPE33-D7YMNM44.js → requirementDiagram-4Y6WPE33-Bky271Dr.js} +1 -1
  77. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-OAXuab3Y.js → sankeyDiagram-5OEKKPKP-Cs9Bx7N3.js} +1 -1
  78. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-BZCjKFVL.js → sequenceDiagram-3UESZ5HK-BV7DAI0_.js} +1 -1
  79. package/dist/client/assets/{shield-alert-BBK8Risa.js → shield-alert-BEwCrI8k.js} +1 -1
  80. package/dist/client/assets/{stateDiagram-AJRCARHV-COnJQqA4.js → stateDiagram-AJRCARHV-CTvWoU00.js} +1 -1
  81. package/dist/client/assets/{stateDiagram-v2-BHNVJYJU-Diml4Nhm.js → stateDiagram-v2-BHNVJYJU-ZSZ46LWU.js} +1 -1
  82. package/dist/client/assets/{timeline-definition-PNZ67QCA-DHIKvV9L.js → timeline-definition-PNZ67QCA-DSJscSa7.js} +1 -1
  83. package/dist/client/assets/{upload-CqUJUdZW.js → upload-CNW5goS6.js} +1 -1
  84. package/dist/client/assets/{users-CAE-FEzI.js → users-BhzdPkLN.js} +1 -1
  85. package/dist/client/assets/{vennDiagram-CIIHVFJN-o9AxLDoL.js → vennDiagram-CIIHVFJN-CziD-NoU.js} +1 -1
  86. package/dist/client/assets/{wardley-L42UT6IY-B7MIazje.js → wardley-L42UT6IY-Bt1vdMb3.js} +1 -1
  87. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-B6qUJx0N.js → wardleyDiagram-YWT4CUSO-B_Dlx683.js} +1 -1
  88. package/dist/client/assets/{xychartDiagram-2RQKCTM6-13mSXuCA.js → xychartDiagram-2RQKCTM6-cYDRrhyM.js} +1 -1
  89. package/dist/client/index.html +3 -3
  90. package/dist/client/theme-data.css +156 -0
  91. package/dist/client/version.json +1 -1
  92. package/dist/desktop/client/.vite/manifest.json +1652 -0
  93. package/dist/desktop/client/assets/AgentDetailView-BzSyldiW.css +1 -0
  94. package/dist/desktop/client/assets/AgentDetailView-SJpg9JA5.js +18 -0
  95. package/dist/desktop/client/assets/AgentPermissionPolicyEditor-KMUDm0nu.js +6 -0
  96. package/dist/desktop/client/assets/AgentPermissionPolicyEditor-TpdlOWZW.css +1 -0
  97. package/dist/desktop/client/assets/AgentsView-CITigHGD.js +24 -0
  98. package/dist/desktop/client/assets/AgentsView-CzMa5Olf.css +1 -0
  99. package/dist/desktop/client/assets/ChatView-D_2wBIIx.css +1 -0
  100. package/dist/desktop/client/assets/ChatView-EeFLKmZB.js +6 -0
  101. package/dist/desktop/client/assets/CommandCenter-B9q-zM9p.css +1 -0
  102. package/dist/desktop/client/assets/CommandCenter-DmqJyMvs.js +71 -0
  103. package/dist/desktop/client/assets/DevServerView-Ckhpio_x.js +1 -0
  104. package/dist/desktop/client/assets/DevServerView-iBondC7z.css +1 -0
  105. package/dist/desktop/client/assets/DirectoryPicker-0rspvcMz.css +1 -0
  106. package/dist/desktop/client/assets/DirectoryPicker-j-rxo0kC.js +1 -0
  107. package/dist/desktop/client/assets/DocumentsView-DCS-N7cU.js +1 -0
  108. package/dist/desktop/client/assets/EvalsView-CTbgPUne.css +1 -0
  109. package/dist/desktop/client/assets/EvalsView-Dd26ipFU.js +1 -0
  110. package/dist/desktop/client/assets/ExperimentalAgentOnboardingModal-3ZEFv8sr.css +1 -0
  111. package/dist/desktop/client/assets/ExperimentalAgentOnboardingModal-BqgWIa9n.js +1 -0
  112. package/dist/desktop/client/assets/GoalsView-4-eEOeqw.css +1 -0
  113. package/dist/desktop/client/assets/GoalsView-C5gWzKqI.js +2 -0
  114. package/dist/desktop/client/assets/InsightsView-2SPZDH3m.js +11 -0
  115. package/dist/desktop/client/assets/InsightsView-C7yRTMPn.css +1 -0
  116. package/dist/desktop/client/assets/MemoryView-CBDUr2Jy.css +1 -0
  117. package/dist/desktop/client/assets/MemoryView-D2OAkbGv.js +2 -0
  118. package/dist/desktop/client/assets/PiExtensionsManager-DLrKJDwr.js +11 -0
  119. package/dist/desktop/client/assets/PiExtensionsManager-kgTOHPE9.css +1 -0
  120. package/dist/desktop/client/assets/PluginManager-B0CMG4RR.js +1 -0
  121. package/dist/desktop/client/assets/PluginManager-DSiHizRD.css +1 -0
  122. package/dist/desktop/client/assets/PullRequestView-DhTrKHeu.js +6 -0
  123. package/dist/desktop/client/assets/PullRequestView-NkeImY1n.css +1 -0
  124. package/dist/desktop/client/assets/ResearchView-BQwV9L4h.js +1 -0
  125. package/dist/desktop/client/assets/ResearchView-DIVNQF4_.css +1 -0
  126. package/dist/desktop/client/assets/SecretsView-Boby9tkU.js +1 -0
  127. package/dist/desktop/client/assets/SecretsView-CvFioX7R.css +1 -0
  128. package/dist/desktop/client/assets/SessionTerminal-CPbzm5Oi.css +1 -0
  129. package/dist/desktop/client/assets/SessionTerminal-CT_DUO7z.js +2 -0
  130. package/dist/desktop/client/assets/SettingsModal-BzZNPNIh.css +1 -0
  131. package/dist/desktop/client/assets/SettingsModal-CaE4JYxi.css +1 -0
  132. package/dist/desktop/client/assets/SettingsModal-CvsRQchW.js +1 -0
  133. package/dist/desktop/client/assets/SettingsModal-Dijfj3cb.js +21 -0
  134. package/dist/desktop/client/assets/SetupWizardModal-BIiJIXkh.js +2 -0
  135. package/dist/desktop/client/assets/ShadcnColorPicker-0ZZqsOqD.js +11 -0
  136. package/dist/desktop/client/assets/ShadcnColorPicker-3OgfenMo.css +1 -0
  137. package/dist/desktop/client/assets/SkillsView-Pzo5lSju.js +1 -0
  138. package/dist/desktop/client/assets/SkillsView-tAW7TTCz.css +1 -0
  139. package/dist/desktop/client/assets/TodoView--YoVYWvw.css +1 -0
  140. package/dist/desktop/client/assets/TodoView-ClCgLTmi.js +6 -0
  141. package/dist/desktop/client/assets/WorkflowNodeEditor-8XHmq-V2.js +8 -0
  142. package/dist/desktop/client/assets/WorkflowNodeEditor-Df-_206_.css +1 -0
  143. package/dist/desktop/client/assets/addon-fit-C1WQXRvu.js +1 -0
  144. package/dist/desktop/client/assets/addon-unicode11-BVmNDUBM.js +1 -0
  145. package/dist/desktop/client/assets/addon-web-links-CkVew5xs.js +1 -0
  146. package/dist/desktop/client/assets/addon-webgl-uLc0RKcC.js +58 -0
  147. package/dist/desktop/client/assets/agentSkills-D5osLOR5.js +1 -0
  148. package/dist/desktop/client/assets/agentSkills-bQJ4X1gH.css +1 -0
  149. package/dist/desktop/client/assets/agentsOrgChartLayout-BMvyuaLA.js +1 -0
  150. package/dist/desktop/client/assets/app-5S4z84u5.js +13 -0
  151. package/dist/desktop/client/assets/app-B1VYocx2.js +13 -0
  152. package/dist/desktop/client/assets/app-BhtYYxin.js +13 -0
  153. package/dist/desktop/client/assets/app-Cts0__Vx.js +13 -0
  154. package/dist/desktop/client/assets/app-DczBmsP4.js +13 -0
  155. package/dist/desktop/client/assets/app-_GFUqcMK.js +13 -0
  156. package/dist/desktop/client/assets/arc-cxkkNsnK.js +1 -0
  157. package/dist/desktop/client/assets/architectureDiagram-3BPJPVTR-CrjMDhPI.js +36 -0
  158. package/dist/desktop/client/assets/band-CquvqAHh.js +1 -0
  159. package/dist/desktop/client/assets/blockDiagram-GPEHLZMM-CTQo88ZR.js +132 -0
  160. package/dist/desktop/client/assets/c4Diagram-AAUBKEIU-YjMRExC0.js +10 -0
  161. package/dist/desktop/client/assets/channel-ByWi0lfq.js +1 -0
  162. package/dist/desktop/client/assets/chunk-2J33WTMH-O2741OpT.js +1 -0
  163. package/dist/desktop/client/assets/chunk-4BX2VUAB-E8A3umbR.js +1 -0
  164. package/dist/desktop/client/assets/chunk-55IACEB6-B052cwdC.js +1 -0
  165. package/dist/desktop/client/assets/chunk-727SXJPM-BKI0HQTP.js +206 -0
  166. package/dist/desktop/client/assets/chunk-AQP2D5EJ-DegV3EMW.js +231 -0
  167. package/dist/desktop/client/assets/chunk-FMBD7UC4-B7tLsOki.js +15 -0
  168. package/dist/desktop/client/assets/chunk-ND2GUHAM-2xF-Tg95.js +1 -0
  169. package/dist/desktop/client/assets/chunk-QZHKN3VN-DUl8dvkQ.js +1 -0
  170. package/dist/desktop/client/assets/classDiagram-4FO5ZUOK-C6nL18EV.js +1 -0
  171. package/dist/desktop/client/assets/classDiagram-v2-Q7XG4LA2-C6nL18EV.js +1 -0
  172. package/dist/desktop/client/assets/common-BDp2y6CF.js +1 -0
  173. package/dist/desktop/client/assets/common-BnEo5fLN.js +1 -0
  174. package/dist/desktop/client/assets/common-Bzr_Y8h4.js +1 -0
  175. package/dist/desktop/client/assets/common-CvwyFzfv.js +1 -0
  176. package/dist/desktop/client/assets/common-CztCXRkz.js +1 -0
  177. package/dist/desktop/client/assets/common-DPe2mbb7.js +1 -0
  178. package/dist/desktop/client/assets/cose-bilkent-S5V4N54A-DWz6vuMa.js +1 -0
  179. package/dist/desktop/client/assets/cytoscape.esm-OyMbaexL.js +331 -0
  180. package/dist/desktop/client/assets/dagre-BM42HDAG-GgO-3j8E.js +4 -0
  181. package/dist/desktop/client/assets/dashboard-view-CosTtyxo.js +1 -0
  182. package/dist/desktop/client/assets/dashboard-view-CuUPQZzi.css +1 -0
  183. package/dist/desktop/client/assets/dashboard-view-Cw1KM3Az.js +8161 -0
  184. package/dist/desktop/client/assets/dashboard-view-D_zsA-kz.css +1 -0
  185. package/dist/desktop/client/assets/defaultLocale-DX6XiGOO.js +1 -0
  186. package/dist/desktop/client/assets/diagram-2AECGRRQ-BZQIXBBG.js +43 -0
  187. package/dist/desktop/client/assets/diagram-5GNKFQAL-B1pdxoln.js +10 -0
  188. package/dist/desktop/client/assets/diagram-KO2AKTUF-B2lApC5l.js +3 -0
  189. package/dist/desktop/client/assets/diagram-LMA3HP47-BRqKMh4D.js +24 -0
  190. package/dist/desktop/client/assets/diagram-OG6HWLK6-Dl7BJ0tE.js +24 -0
  191. package/dist/desktop/client/assets/erDiagram-TEJ5UH35-DS6QZa9s.js +85 -0
  192. package/dist/desktop/client/assets/errors-07IrmOYM.js +1 -0
  193. package/dist/desktop/client/assets/errors-BPsCufin.js +1 -0
  194. package/dist/desktop/client/assets/errors-CcVDgqlA.js +1 -0
  195. package/dist/desktop/client/assets/errors-D-i_Bxc6.js +1 -0
  196. package/dist/desktop/client/assets/errors-DDdWAK-U.js +1 -0
  197. package/dist/desktop/client/assets/errors-DOF5Td3F.js +1 -0
  198. package/dist/desktop/client/assets/flowDiagram-I6XJVG4X-Zk7IzQc2.js +162 -0
  199. package/dist/desktop/client/assets/folder-open-BhDX2lOd.js +6 -0
  200. package/dist/desktop/client/assets/ganttDiagram-6RSMTGT7-CJuYCcjE.js +292 -0
  201. package/dist/desktop/client/assets/gitGraphDiagram-PVQCEYII-BmCm6tvH.js +106 -0
  202. package/dist/desktop/client/assets/graph--OzhPTMs.js +1 -0
  203. package/dist/desktop/client/assets/index-BCe5TILt.css +1 -0
  204. package/dist/desktop/client/assets/index-CoS-MsCg.js +1336 -0
  205. package/dist/desktop/client/assets/infoDiagram-5YYISTIA-Ds6lrlTh.js +2 -0
  206. package/dist/desktop/client/assets/init-Dmth1JHB.js +1 -0
  207. package/dist/desktop/client/assets/ishikawaDiagram-YF4QCWOH-D3deq-vb.js +70 -0
  208. package/dist/desktop/client/assets/journeyDiagram-JHISSGLW-BuHVkT2m.js +139 -0
  209. package/dist/desktop/client/assets/kanban-definition-UN3LZRKU-DdoE5oU5.js +89 -0
  210. package/dist/desktop/client/assets/katex-HP8lGamR.js +257 -0
  211. package/dist/desktop/client/assets/layout-SsrduOYp.js +1 -0
  212. package/dist/desktop/client/assets/linear-CwI45w2t.js +1 -0
  213. package/dist/desktop/client/assets/mermaid.core-_nbzHc5D.js +309 -0
  214. package/dist/desktop/client/assets/mindmap-definition-RKZ34NQL-Bq-XuCz_.js +96 -0
  215. package/dist/desktop/client/assets/ordinal-DILIJJjt.js +1 -0
  216. package/dist/desktop/client/assets/pieDiagram-4H26LBE5-BgcfpW6J.js +30 -0
  217. package/dist/desktop/client/assets/projectDetection-G3XuxD2X.js +1 -0
  218. package/dist/desktop/client/assets/quadrantDiagram-W4KKPZXB-Xys80jUW.js +7 -0
  219. package/dist/desktop/client/assets/requirementDiagram-4Y6WPE33-C8S5lJeA.js +84 -0
  220. package/dist/desktop/client/assets/sankeyDiagram-5OEKKPKP-B_3GGQyd.js +40 -0
  221. package/dist/desktop/client/assets/sequenceDiagram-3UESZ5HK-DIu6iwmX.js +162 -0
  222. package/dist/desktop/client/assets/shield-alert-BHWZI_om.js +6 -0
  223. package/dist/desktop/client/assets/stateDiagram-AJRCARHV-CnaR2a9t.js +1 -0
  224. package/dist/desktop/client/assets/stateDiagram-v2-BHNVJYJU-VHc1xbe0.js +1 -0
  225. package/dist/desktop/client/assets/step-yuy0qJer.js +1 -0
  226. package/dist/desktop/client/assets/time-Ckmi30gH.js +1 -0
  227. package/dist/desktop/client/assets/timeline-definition-PNZ67QCA-BrtDAg8s.js +120 -0
  228. package/dist/desktop/client/assets/upload-DOLP3Bv3.js +6 -0
  229. package/dist/desktop/client/assets/users-2kEJQeOu.js +6 -0
  230. package/dist/desktop/client/assets/vendor-codemirror-jBKmHyH0.js +27 -0
  231. package/dist/desktop/client/assets/vendor-i18n-GF3RlKbq.js +9 -0
  232. package/dist/desktop/client/assets/vendor-react-SZ_qB27O.js +49 -0
  233. package/dist/desktop/client/assets/vendor-reactflow-C5ap-Sga.css +1 -0
  234. package/dist/desktop/client/assets/vendor-reactflow-CnI7NMXG.js +15 -0
  235. package/dist/desktop/client/assets/vendor-xterm-BNq00GSj.js +9 -0
  236. package/dist/desktop/client/assets/vendor-xterm-LZoznX6r.css +32 -0
  237. package/dist/desktop/client/assets/vennDiagram-CIIHVFJN-CVjr2RxJ.js +34 -0
  238. package/dist/desktop/client/assets/wardley-L42UT6IY-CVstgB5f.js +173 -0
  239. package/dist/desktop/client/assets/wardleyDiagram-YWT4CUSO-Da3szr-D.js +78 -0
  240. package/dist/desktop/client/assets/xychartDiagram-2RQKCTM6-B0o0ggVt.js +7 -0
  241. package/dist/desktop/client/assets/zoom-out-NWbVkreR.js +41 -0
  242. package/dist/desktop/client/brands/hermes-logo.svg +1 -0
  243. package/dist/desktop/client/fonts/SymbolsNerdFontMono-Regular.ttf +0 -0
  244. package/dist/desktop/client/icons/icon-192.png +0 -0
  245. package/dist/desktop/client/icons/icon-512.png +0 -0
  246. package/dist/desktop/client/index.html +244 -0
  247. package/dist/desktop/client/logo.svg +6 -0
  248. package/dist/desktop/client/manifest.json +23 -0
  249. package/dist/desktop/client/sw.js +175 -0
  250. package/dist/desktop/client/theme-data.css +7154 -0
  251. package/dist/desktop/client/version.json +1 -0
  252. package/dist/desktop/main.js +1661 -0
  253. package/dist/desktop/main.js.map +7 -0
  254. package/dist/desktop/preload.js +110 -0
  255. package/dist/desktop/preload.js.map +7 -0
  256. package/dist/droid-cli/package.json +1 -1
  257. package/dist/extension.js +1692 -1418
  258. package/dist/pi-claude-cli/index.ts +40 -8
  259. package/dist/pi-claude-cli/package.json +5 -3
  260. package/dist/pi-claude-cli/src/__tests__/process-manager.test.ts +2 -2
  261. package/dist/pi-claude-cli/src/__tests__/provider.test.ts +39 -23
  262. package/dist/plugin-sdk/index.d.ts +9 -2
  263. package/dist/plugins/fusion-plugin-acp-runtime/package.json +1 -1
  264. package/dist/plugins/fusion-plugin-cli-printing-press/package.json +1 -1
  265. package/dist/plugins/fusion-plugin-compound-engineering/bundled.js +15 -3
  266. package/dist/plugins/fusion-plugin-compound-engineering/package.json +1 -1
  267. package/dist/plugins/fusion-plugin-cursor-runtime/package.json +1 -1
  268. package/dist/plugins/fusion-plugin-dependency-graph/package.json +1 -1
  269. package/dist/plugins/fusion-plugin-droid-runtime/package.json +1 -1
  270. package/dist/plugins/fusion-plugin-hermes-runtime/package.json +1 -1
  271. package/dist/plugins/fusion-plugin-openclaw-runtime/package.json +1 -1
  272. package/dist/plugins/fusion-plugin-paperclip-runtime/package.json +1 -1
  273. package/dist/plugins/fusion-plugin-reports/package.json +1 -1
  274. package/dist/plugins/fusion-plugin-roadmap/package.json +1 -1
  275. package/dist/plugins/fusion-plugin-whatsapp-chat/package.json +1 -1
  276. package/package.json +4 -3
  277. package/dist/client/assets/AgentPermissionPolicyEditor-CGxjOr6G.css +0 -1
  278. package/dist/client/assets/AgentPermissionPolicyEditor-DrVW4VPc.js +0 -6
  279. package/dist/client/assets/ChatView-C7uTm5hO.js +0 -16
  280. package/dist/client/assets/SessionTerminal-CumHUelZ.js +0 -2
  281. package/dist/client/assets/SettingsModal-AJfer-ve.js +0 -21
  282. package/dist/client/assets/ShadcnColorPicker-Cc72uPKJ.js +0 -11
  283. package/dist/client/assets/ShadcnColorPicker-CyeAnJUU.css +0 -1
  284. package/dist/client/assets/WorkflowNodeEditor-BjpqTIYE.js +0 -8
  285. package/dist/client/assets/app-CGubyqAW.js +0 -13
  286. package/dist/client/assets/app-CrQpHbIs.js +0 -13
  287. package/dist/client/assets/app-DboK-0Ty.js +0 -13
  288. package/dist/client/assets/app-DjnYET2y.js +0 -13
  289. package/dist/client/assets/app-MacS555z.js +0 -13
  290. package/dist/client/assets/app-nvVayIeU.js +0 -13
  291. package/dist/client/assets/channel-Dn5XowfJ.js +0 -1
  292. package/dist/client/assets/classDiagram-4FO5ZUOK-zSOW-KNk.js +0 -1
  293. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-zSOW-KNk.js +0 -1
  294. package/dist/client/assets/index-QnHUwSjw.css +0 -1
  295. package/dist/client/assets/index-Y-vyXPPN.js +0 -1331
@@ -1 +1 @@
1
- import{r as e}from"./vendor-react-SZ_qB27O.js";import{z as C}from"./index-Y-vyXPPN.js";function L(k={}){const{projectId:d,pollInterval:b=6e4,autoRefresh:p=!1,enabled:t=!0}=k,[S,o]=e.useState(null),[m,l]=e.useState(t),[E,c]=e.useState(null),[R,v]=e.useState(null),r=e.useRef(null),n=e.useRef(null),a=e.useRef(!0),s=e.useCallback(async()=>{if(!t){l(!1),c(null),o(null);return}r.current&&r.current.abort(),r.current=new AbortController,l(!0),c(null),o(null);try{const u=await C(d);if(!a.current)return;o(u),c(null),v(new Date),l(!1)}catch(u){if(u instanceof Error&&u.name==="AbortError"||!a.current)return;const A=u instanceof Error?u.message:"Failed to fetch memory backend status";c(A),l(!1)}},[t,d]);e.useEffect(()=>(a.current=!0,t?(s(),()=>{a.current=!1}):(r.current&&r.current.abort(),o(null),c(null),l(!1),()=>{a.current=!1})),[t,s]),e.useEffect(()=>{if(!(!t||!p))return n.current=setInterval(()=>{s()},b),()=>{n.current&&(clearInterval(n.current),n.current=null)}},[t,p,b,s]),e.useEffect(()=>()=>{a.current=!1,r.current&&r.current.abort(),n.current&&(clearInterval(n.current),n.current=null)},[]);const h=e.useCallback(()=>s(),[s]),f=m?null:S,B=f?.currentBackend??null,i=f?.capabilities??null,y=f?.availableBackends??[],I=i?.readable??!1,g=i?.writable??!1,w=i?.supportsAtomicWrite??!1;return{status:f,currentBackend:B,capabilities:i,availableBackends:y,isReadable:I,isWritable:g,supportsAtomicWrite:w,loading:m,error:E,lastUpdated:R,refresh:h}}export{L as u};
1
+ import{r as e}from"./vendor-react-SZ_qB27O.js";import{z as C}from"./index-CEUULqTR.js";function L(k={}){const{projectId:d,pollInterval:b=6e4,autoRefresh:p=!1,enabled:t=!0}=k,[S,o]=e.useState(null),[m,l]=e.useState(t),[E,c]=e.useState(null),[R,v]=e.useState(null),r=e.useRef(null),n=e.useRef(null),a=e.useRef(!0),s=e.useCallback(async()=>{if(!t){l(!1),c(null),o(null);return}r.current&&r.current.abort(),r.current=new AbortController,l(!0),c(null),o(null);try{const u=await C(d);if(!a.current)return;o(u),c(null),v(new Date),l(!1)}catch(u){if(u instanceof Error&&u.name==="AbortError"||!a.current)return;const A=u instanceof Error?u.message:"Failed to fetch memory backend status";c(A),l(!1)}},[t,d]);e.useEffect(()=>(a.current=!0,t?(s(),()=>{a.current=!1}):(r.current&&r.current.abort(),o(null),c(null),l(!1),()=>{a.current=!1})),[t,s]),e.useEffect(()=>{if(!(!t||!p))return n.current=setInterval(()=>{s()},b),()=>{n.current&&(clearInterval(n.current),n.current=null)}},[t,p,b,s]),e.useEffect(()=>()=>{a.current=!1,r.current&&r.current.abort(),n.current&&(clearInterval(n.current),n.current=null)},[]);const h=e.useCallback(()=>s(),[s]),f=m?null:S,B=f?.currentBackend??null,i=f?.capabilities??null,y=f?.availableBackends??[],I=i?.readable??!1,g=i?.writable??!1,w=i?.supportsAtomicWrite??!1;return{status:f,currentBackend:B,capabilities:i,availableBackends:y,isReadable:I,isWritable:g,supportsAtomicWrite:w,loading:m,error:E,lastUpdated:R,refresh:h}}export{L as u};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ExperimentalAgentOnboardingModal-B4iFX60E.js","assets/vendor-react-SZ_qB27O.js","assets/index-Y-vyXPPN.js","assets/vendor-i18n-GF3RlKbq.js","assets/vendor-reactflow-CnI7NMXG.js","assets/vendor-reactflow-C5ap-Sga.css","assets/vendor-xterm-BNq00GSj.js","assets/vendor-xterm-LZoznX6r.css","assets/vendor-codemirror-jBKmHyH0.js","assets/index-QnHUwSjw.css","assets/ExperimentalAgentOnboardingModal-3ZEFv8sr.css"])))=>i.map(i=>d[i]);
2
- import{A as g,g as b,m as R,u as te,d as ae,r as re,a as ne,b as ie,e as le,X as oe,L as v,C as de,f as E,S as ce,h as S,E as ue,_ as pe}from"./index-Y-vyXPPN.js";import{r as l,j as e}from"./vendor-react-SZ_qB27O.js";import{D as me}from"./DirectoryPicker-CRY-rpnj.js";import{s as y}from"./projectDetection-G3XuxD2X.js";import{u as ge}from"./vendor-i18n-GF3RlKbq.js";import"./vendor-reactflow-CnI7NMXG.js";import"./vendor-xterm-BNq00GSj.js";import"./vendor-codemirror-jBKmHyH0.js";import"./folder-open-CFze34Eq.js";function C(c){const u=c.replace(/[^a-zA-Z]/g,"").toUpperCase();return u.length>=2&&u.length<=4?u:u.length>4?u.slice(0,4):"FN"}const he=l.lazy(()=>pe(()=>import("./ExperimentalAgentOnboardingModal-B4iFX60E.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10])).then(c=>({default:c.ExperimentalAgentOnboardingModal})));function Ce({onProjectRegistered:c,onClose:u,agentOnboardingEnabled:P=!1,includeAgentStep:z=!0}){const{t:a}=ge("app"),F="https://discord.gg/ksrfuy7WYR",x=l.useMemo(()=>b("ceo")??g[0],[]),[T,U]=l.useState(!0),[s,i]=l.useState(()=>({step:"manual",manualMode:"existing",manualPath:"",manualCloneUrl:"",manualName:"",manualIsolationMode:"in-process",manualNodeId:"",manualTaskPrefix:"",detectedRepos:[],workspaceMode:!1,isDetectingWorkspace:!1,registeredProject:null,selectedPresetId:x.id,agentDraft:R(x),isCreatingAgent:!1,isRegistering:!1,error:null,agentError:null,agentOutcome:null})),[A,W]=l.useState(!1),[I,j]=l.useState(!1),D=l.useRef(null),{nodes:M,loading:L}=te(),O=M.find(t=>t.type==="local")?.id,f=l.useCallback(()=>{U(!1),u?.()},[u]),_=l.useCallback(()=>{if(s.registeredProject){c(s.registeredProject);return}f()},[f,c,s.registeredProject]);l.useEffect(()=>{s.agentError&&D.current?.focus()},[s.agentError]);const N=l.useRef(0),H=l.useCallback(t=>{if(i(r=>{const n={manualPath:t,detectedRepos:[],workspaceMode:!1};t&&(!r.manualName||r.manualName===y(r.manualPath))&&(n.manualName=y(t));const o=n.manualName??r.manualName;return o&&(!r.manualTaskPrefix||r.manualTaskPrefix===C(y(r.manualPath)))&&(n.manualTaskPrefix=C(o)),{...r,...n}}),s.manualMode==="existing"&&t.trim()&&t.trim()!=="/"){const r=++N.current;i(n=>({...n,isDetectingWorkspace:!0})),ae(t.trim()).then(n=>{r===N.current&&i(o=>({...o,isDetectingWorkspace:!1,detectedRepos:n.repos,workspaceMode:n.isWorkspace}))}).catch(()=>{r===N.current&&i(n=>({...n,isDetectingWorkspace:!1}))})}},[s.manualMode]),B=l.useCallback(async()=>{const t=s.manualPath.trim(),r=s.manualName.trim(),n=s.manualCloneUrl.trim();if(!(!t||!r)&&!(s.manualMode==="clone"&&!n)){i(o=>({...o,isRegistering:!0,error:null}));try{const o={name:r,path:t,isolationMode:s.manualIsolationMode,nodeId:s.manualNodeId||void 0,cloneUrl:s.manualMode==="clone"?n:void 0,workspaceMode:s.workspaceMode,taskPrefix:s.manualTaskPrefix.trim()||void 0},d=await re(o);if(!z){i(m=>({...m,isRegistering:!1})),c(d);return}i(m=>({...m,step:"agent",registeredProject:d,isRegistering:!1}))}catch(o){i(d=>({...d,isRegistering:!1,error:o instanceof Error?o.message:"Failed to register project"}))}}},[z,c,s.manualPath,s.manualName,s.manualCloneUrl,s.manualMode,s.manualIsolationMode,s.manualNodeId,s.workspaceMode,s.manualTaskPrefix]),w=l.useCallback(t=>{const r=b(t);r&&i(n=>({...n,selectedPresetId:r.id,agentDraft:R(r),agentError:null}))},[]),$=l.useCallback((t,r)=>{const n=g.findIndex(se=>se.id===r);if(n<0)return;const o=g.length-1;let d=null;if(t.key==="ArrowDown"||t.key==="ArrowRight"?d=n===o?0:n+1:t.key==="ArrowUp"||t.key==="ArrowLeft"?d=n===0?o:n-1:t.key==="Home"?d=0:t.key==="End"&&(d=o),d===null)return;t.preventDefault();const m=g[d];w(m.id),requestAnimationFrame(()=>{document.querySelector(`[data-agent-preset-id="${m.id}"]`)?.focus()})},[w]),Y=l.useCallback(t=>{i(r=>({...r,selectedPresetId:"",agentDraft:ne(t),agentError:null}))},[]),G=l.useCallback(async()=>{if(!(!s.registeredProject||!s.agentDraft.name.trim())){i(t=>({...t,isCreatingAgent:!0,agentError:null}));try{await ie(le(s.agentDraft),s.registeredProject.id),i(t=>({...t,step:"complete",isCreatingAgent:!1,agentOutcome:"created"}))}catch(t){i(r=>({...r,isCreatingAgent:!1,agentError:t instanceof Error?t.message:a("setup.firstAgentCreateError","Failed to create agent")}))}}},[s.agentDraft,s.registeredProject,a]),q=l.useCallback(()=>{i(t=>({...t,step:"complete",agentError:null,agentOutcome:"skipped"}))},[]);if(!T)return null;const k=s.manualMode==="existing",p=s.manualMode==="clone",K=s.manualPath.trim().length>0,Z=s.manualName.trim().length>0,V=s.manualCloneUrl.trim().length>0,X=s.isRegistering||!K||!Z||p&&!V,J=s.selectedPresetId?b(s.selectedPresetId):void 0,h=s.isCreatingAgent,Q=s.selectedPresetId||x.id,ee=`modal setup-wizard-modal${s.step==="agent"?" setup-wizard-modal--agent":""}`;return e.jsxs("div",{className:"modal-overlay open setup-wizard-overlay",role:"dialog","aria-modal":"true","aria-labelledby":"wizard-title",children:[e.jsxs("div",{className:ee,children:[e.jsxs("div",{className:"setup-wizard-header",children:[e.jsxs("div",{className:"setup-wizard-heading",children:[e.jsxs("div",{className:"setup-wizard-brand","aria-label":a("setup.brandName","Fusion"),children:[e.jsxs("svg",{className:"setup-wizard-brand-logo",width:28,height:28,viewBox:"0 0 128 128",fill:"none","aria-label":a("setup.brandLogo","Fusion logo"),role:"img",children:[e.jsx("circle",{cx:"64",cy:"64",r:"52",stroke:"currentColor",strokeWidth:"8"}),e.jsx("path",{d:"M26 101C44 82 62 64 82 45C90 37 98 30 104 24C96 35 89 47 81 60C70 79 57 95 43 108C38 112 32 108 26 101Z",fill:"currentColor"})]}),e.jsx("span",{className:"setup-wizard-brand-name",children:a("setup.brandName","Fusion")})]}),e.jsxs("h2",{id:"wizard-title",className:"setup-wizard-title",children:[s.step==="manual"&&a("setup.welcomeToFusion","Welcome to Fusion"),s.step==="agent"&&a("setup.firstAgentTitle","Create your first agent"),s.step==="complete"&&a("setup.setupCompleteTitle","Setup Complete!")]})]}),s.step!=="complete"&&s.step!=="agent"&&e.jsx("button",{className:"modal-close",onClick:f,"aria-label":a("setup.closeWizard","Close wizard"),children:e.jsx(oe,{size:20})})]}),e.jsxs("div",{className:"setup-wizard-content",children:[s.step==="manual"&&e.jsxs("div",{className:"setup-wizard-manual",children:[e.jsxs("div",{className:"form-group",children:[e.jsx("label",{htmlFor:"project-name",children:a("setup.projectName","Project Name")}),e.jsx("input",{id:"project-name",type:"text",value:s.manualName,onChange:t=>i(r=>({...r,manualName:t.target.value})),placeholder:a("setup.projectNamePlaceholder","my-project")}),e.jsx("p",{className:"form-hint",children:p?a("setup.projectNameHintClone","By default this follows the destination folder name unless you edit it."):a("setup.projectNameHintExisting","By default this follows the selected directory name unless you edit it.")})]}),e.jsxs("div",{className:"form-group",children:[e.jsx("label",{htmlFor:"project-path",children:p?a("setup.destinationDirectory","Destination Directory"):a("setup.projectDirectory","Project Directory")}),e.jsx(me,{value:s.manualPath,onChange:H,nodeId:s.manualNodeId||void 0,localNodeId:O,placeholder:p?a("setup.clonePathPlaceholder","/path/for/new-clone"):a("setup.projectPathPlaceholder","/path/to/your/project")}),e.jsx("p",{className:"form-hint",children:p?a("setup.clonePathHint","Select or type an absolute destination path. Fusion will clone into this directory."):a("setup.projectPathHint","Select or type the absolute path to your project")})]}),k&&s.manualPath.trim()&&e.jsxs("div",{className:"form-group",children:[e.jsxs("label",{htmlFor:"workspace-mode",className:"checkbox-label",children:[e.jsx("input",{id:"workspace-mode",type:"checkbox",checked:s.workspaceMode,onChange:t=>i(r=>({...r,workspaceMode:t.target.checked}))}),a("setup.workspaceMode","Workspace mode (multi-repo)")]}),s.isDetectingWorkspace&&e.jsxs("p",{className:"form-hint",children:[e.jsx(v,{size:12,className:"animate-spin",style:{display:"inline-block",verticalAlign:"middle",marginRight:4}}),a("setup.detectingWorkspace","Detecting sub-repositories...")]}),!s.isDetectingWorkspace&&s.detectedRepos.length>0&&e.jsxs("p",{className:"form-hint",children:[a("setup.detectedRepos","Found {{count}} repositories:",{count:s.detectedRepos.length})," ",s.detectedRepos.join(", ")]}),!s.isDetectingWorkspace&&s.detectedRepos.length===0&&s.workspaceMode===!1&&s.manualPath.trim()&&e.jsx("p",{className:"form-hint",children:a("setup.noSubReposDetected","No sub-repositories detected. Enable if this is a multi-repo workspace.")})]}),e.jsxs("div",{className:"form-group",children:[e.jsx("label",{htmlFor:"task-prefix",children:a("setup.taskPrefix","Task Prefix")}),e.jsx("input",{id:"task-prefix",type:"text",value:s.manualTaskPrefix,onChange:t=>i(r=>({...r,manualTaskPrefix:t.target.value.toUpperCase()})),placeholder:C(s.manualName||"FN"),maxLength:5}),e.jsx("p",{className:"form-hint",children:a("setup.taskPrefixHint",'Used for task IDs (e.g. "{{prefix}}-1"). Derived from project name.',{prefix:s.manualTaskPrefix||"FN"})})]}),e.jsxs("div",{className:"setup-wizard-advanced",children:[e.jsxs("button",{type:"button",className:"setup-wizard-advanced-toggle","aria-expanded":A,onClick:()=>W(t=>!t),children:[e.jsx(de,{size:16,className:"setup-wizard-advanced-chevron"}),e.jsx("span",{children:a("setup.advancedSettings","Advanced settings")})]}),A&&e.jsxs("div",{className:"setup-wizard-advanced-panel",children:[e.jsxs("fieldset",{className:"setup-wizard-mode-switch","aria-label":"Project setup mode",children:[e.jsx("legend",{children:a("setup.setupMode","Setup Mode")}),e.jsxs("label",{className:`setup-wizard-mode-option${k?" selected":""}`,children:[e.jsx("input",{type:"radio",name:"setup-mode",value:"existing",checked:k,onChange:()=>i(t=>({...t,manualMode:"existing",error:null}))}),e.jsx("span",{children:a("setup.useExistingDirectory","Use Existing Directory")})]}),e.jsxs("label",{className:`setup-wizard-mode-option${p?" selected":""}`,children:[e.jsx("input",{type:"radio",name:"setup-mode",value:"clone",checked:p,onChange:()=>i(t=>({...t,manualMode:"clone",error:null}))}),e.jsx("span",{children:a("setup.cloneGitRepository","Clone Git Repository")})]})]}),p&&e.jsxs("div",{className:"form-group",children:[e.jsx("label",{htmlFor:"project-clone-url",children:a("setup.repositoryUrl","Repository URL")}),e.jsx("input",{id:"project-clone-url",type:"text",value:s.manualCloneUrl,onChange:t=>i(r=>({...r,manualCloneUrl:t.target.value})),placeholder:a("setup.repositoryUrlPlaceholder","https://github.com/owner/repo.git")}),e.jsx("p",{className:"form-hint",children:a("setup.cloneGitHint","Fusion will run git clone into the destination directory, then register that cloned folder.")})]}),e.jsx("div",{className:"form-group",children:e.jsxs("div",{className:"project-node-selector",children:[e.jsx("span",{className:"project-node-selector__label",children:a("setup.runtimeNode","Runtime Node")}),e.jsxs("select",{value:s.manualNodeId,onChange:t=>i(r=>({...r,manualNodeId:t.target.value})),disabled:L||s.isRegistering,children:[e.jsx("option",{value:"",children:a("setup.localNode","Local node")}),M.map(t=>e.jsxs("option",{value:t.id,children:[t.name," (",t.type,")"]},t.id))]})]})}),e.jsxs("div",{className:"form-group",children:[e.jsx("label",{children:a("setup.isolationMode","Isolation Mode")}),e.jsxs("div",{className:"setup-wizard-isolation-options",children:[e.jsxs("label",{className:`setup-wizard-isolation-option${s.manualIsolationMode==="in-process"?" selected":""}`,children:[e.jsx("input",{type:"radio",name:"isolation-mode",value:"in-process",checked:s.manualIsolationMode==="in-process",onChange:()=>i(t=>({...t,manualIsolationMode:"in-process"}))}),e.jsxs("div",{className:"setup-wizard-isolation-option-content",children:[e.jsx("strong",{children:a("setup.inProcess","In-Process")}),e.jsx("span",{children:a("setup.inProcessDesc","Lower overhead, shared memory. Best for most projects.")}),e.jsx("span",{className:"wizard-option-recommended",children:a("setup.recommended","Recommended")})]})]}),e.jsxs("label",{className:`setup-wizard-isolation-option${s.manualIsolationMode==="child-process"?" selected":""}`,children:[e.jsx("input",{type:"radio",name:"isolation-mode",value:"child-process",checked:s.manualIsolationMode==="child-process",onChange:()=>i(t=>({...t,manualIsolationMode:"child-process"}))}),e.jsxs("div",{className:"setup-wizard-isolation-option-content",children:[e.jsx("strong",{children:a("setup.childProcess","Child-Process")}),e.jsx("span",{children:a("setup.childProcessDesc","Isolated execution with crash containment.")})]})]})]})]})]})]}),s.error&&e.jsx("div",{className:"wizard-error",role:"alert",children:s.error})]}),s.step==="agent"&&e.jsxs("div",{className:"setup-wizard-agent-step",children:[e.jsx("p",{className:"setup-wizard-agent-intro",children:a("setup.firstAgentIntro","Agents are optional. Fusion can build tasks without one by starting temporary agents for planning, coding, review, and merge. Create an agent only if you want help coordinating tasks and direction.")}),e.jsxs("div",{className:"setup-wizard-agent-layout",children:[e.jsxs("section",{className:"setup-wizard-agent-presets","aria-labelledby":"setup-first-agent-presets-heading",children:[e.jsx("div",{className:"setup-wizard-agent-section-heading",id:"setup-first-agent-presets-heading",children:a("setup.firstAgentTemplates","Templates")}),e.jsx("div",{className:"setup-wizard-agent-preset-list",role:"radiogroup","aria-label":a("setup.firstAgentTemplates","Templates"),children:g.map(t=>{const r=s.selectedPresetId===t.id;return e.jsxs("button",{type:"button",className:`setup-wizard-agent-preset${r?" selected":""}`,role:"radio","aria-checked":r,"aria-label":r?a("setup.selectedAgentTemplate","{{name}} selected",{name:t.name}):t.name,tabIndex:t.id===Q?0:-1,"data-agent-preset-id":t.id,disabled:h,onClick:()=>w(t.id),onKeyDown:n=>$(n,t.id),children:[e.jsx(E,{agent:{id:t.id,icon:t.icon,name:t.name},size:28}),e.jsxs("span",{className:"setup-wizard-agent-preset-copy",children:[e.jsxs("span",{className:"setup-wizard-agent-preset-name",children:[t.name,t.id==="ceo"&&e.jsx("span",{className:"wizard-option-recommended",children:a("setup.recommended","Recommended")})]}),e.jsx("span",{className:"setup-wizard-agent-preset-description",children:t.description})]})]},t.id)})})]}),e.jsxs("section",{className:"setup-wizard-agent-preview","aria-labelledby":"setup-first-agent-preview-heading",children:[e.jsx("div",{className:"setup-wizard-agent-section-heading",id:"setup-first-agent-preview-heading",children:a("setup.firstAgentPreview","Preview")}),e.jsxs("div",{className:"setup-wizard-agent-preview-card",children:[e.jsxs("div",{className:"setup-wizard-agent-preview-title-row",children:[e.jsx(E,{agent:{id:s.selectedPresetId||"draft",icon:s.agentDraft.icon,name:s.agentDraft.name},size:36}),e.jsxs("div",{children:[e.jsx("h3",{children:s.agentDraft.name||a("setup.firstAgentDraftName","Draft agent")}),e.jsx("p",{children:s.agentDraft.title||J?.title||a("setup.firstAgentCustomDraft","Custom agent draft")})]})]}),e.jsxs("dl",{className:"setup-wizard-agent-preview-list",children:[e.jsxs("div",{children:[e.jsx("dt",{children:a("agents.fieldRole","Role")}),e.jsx("dd",{children:s.agentDraft.role})]}),e.jsxs("div",{children:[e.jsx("dt",{children:a("agents.fieldInstructionsText","Inline Instructions")}),e.jsx("dd",{children:s.agentDraft.instructionsText||a("setup.firstAgentNoInstructions","No inline instructions yet")})]})]}),P&&e.jsxs("button",{type:"button",className:"btn setup-wizard-agent-ai-btn",onClick:()=>j(!0),disabled:h,children:[e.jsx(ce,{size:16}),e.jsx("span",{children:a("agents.aiInterview","AI Interview")})]})]})]})]}),s.agentError&&e.jsx("div",{className:"wizard-error",role:"alert",tabIndex:-1,ref:D,children:s.agentError})]}),s.step==="complete"&&e.jsxs("div",{className:"setup-wizard-complete",children:[e.jsxs("div",{className:"setup-wizard-success-streak","aria-hidden":"true",children:[e.jsx("div",{className:"setup-wizard-success-streak-core"}),e.jsx("div",{className:"setup-wizard-success-streak-glow"})]}),e.jsx(S,{size:64,className:"success-icon"}),e.jsx("h3",{children:a("setup.allSet","All Set!")}),e.jsx("p",{children:s.agentOutcome==="created"?a("setup.firstAgentCreatedSuccess","Your project is registered and your first agent is ready."):a("setup.projectRegisteredSuccess","Your project has been registered successfully.")}),e.jsx("p",{children:s.agentOutcome==="skipped"?a("setup.firstAgentSkippedHint","You can create agents later from the Agents view."):a("setup.addMoreProjectsHint","You can add more projects anytime from the project overview.")})]})]}),e.jsxs("div",{className:"setup-wizard-footer",children:[e.jsx("a",{className:"btn setup-wizard-help-link",href:F,target:"_blank",rel:"noopener noreferrer",children:a("setup.needHelp","Need help?")}),s.step==="manual"&&e.jsx("button",{className:"btn btn-primary",onClick:B,disabled:X,children:s.isRegistering?e.jsxs(e.Fragment,{children:[e.jsx(v,{size:16,className:"animate-spin"}),e.jsx("span",{children:a("setup.registering","Registering...")})]}):e.jsx("span",{children:a("setup.registerProject","Register Project")})}),s.step==="agent"&&e.jsxs(e.Fragment,{children:[e.jsx("button",{className:"btn",onClick:q,disabled:h,children:a("setup.skipFirstAgent","Skip for now")}),e.jsx("button",{className:"btn btn-primary",onClick:()=>void G(),disabled:h||!s.agentDraft.name.trim(),"aria-busy":s.isCreatingAgent,children:s.isCreatingAgent?e.jsxs(e.Fragment,{children:[e.jsx(v,{size:16,className:"animate-spin"}),e.jsx("span",{children:a("setup.creatingFirstAgent","Creating agent...")})]}):e.jsx("span",{children:a("setup.createFirstAgent","Create Agent")})})]}),s.step==="complete"&&e.jsxs("button",{className:"btn btn-primary",onClick:_,children:[e.jsx(S,{size:16}),e.jsx("span",{children:a("setup.getStarted","Get Started")})]})]})]}),P&&I&&e.jsx(ue,{level:"modal",fallback:e.jsxs("div",{className:"wizard-error setup-wizard-agent-interview-error",role:"alert",children:[e.jsx("span",{children:a("setup.firstAgentInterviewLoadError","AI interview could not load. You can still create an agent from a template or skip this step.")}),e.jsx("button",{type:"button",className:"btn",onClick:()=>j(!1),children:a("setup.firstAgentContinueWithTemplates","Continue with templates")})]}),children:e.jsx(l.Suspense,{fallback:e.jsx("div",{className:"wizard-error setup-wizard-agent-interview-error",role:"status",children:a("setup.firstAgentInterviewLoading","Loading AI Interview...")}),children:e.jsx(he,{isOpen:I,onClose:()=>j(!1),onUseDraft:Y,projectId:s.registeredProject?.id,existingAgents:[],mode:"create"})})})]})}export{Ce as SetupWizardModal};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ExperimentalAgentOnboardingModal-DGmpwghz.js","assets/vendor-react-SZ_qB27O.js","assets/index-CEUULqTR.js","assets/vendor-i18n-GF3RlKbq.js","assets/vendor-reactflow-CnI7NMXG.js","assets/vendor-reactflow-C5ap-Sga.css","assets/vendor-xterm-BNq00GSj.js","assets/vendor-xterm-LZoznX6r.css","assets/vendor-codemirror-jBKmHyH0.js","assets/index-D1IHwGhg.css","assets/ExperimentalAgentOnboardingModal-3ZEFv8sr.css"])))=>i.map(i=>d[i]);
2
+ import{A as g,g as b,m as R,u as te,d as ae,r as re,a as ne,b as ie,e as le,X as oe,L as v,C as de,f as E,S as ce,h as S,E as ue,_ as pe}from"./index-CEUULqTR.js";import{r as l,j as e}from"./vendor-react-SZ_qB27O.js";import{D as me}from"./DirectoryPicker-C6HRGnSQ.js";import{s as y}from"./projectDetection-G3XuxD2X.js";import{u as ge}from"./vendor-i18n-GF3RlKbq.js";import"./vendor-reactflow-CnI7NMXG.js";import"./vendor-xterm-BNq00GSj.js";import"./vendor-codemirror-jBKmHyH0.js";import"./folder-open-CV5ek-IV.js";function C(c){const u=c.replace(/[^a-zA-Z]/g,"").toUpperCase();return u.length>=2&&u.length<=4?u:u.length>4?u.slice(0,4):"FN"}const he=l.lazy(()=>pe(()=>import("./ExperimentalAgentOnboardingModal-DGmpwghz.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10])).then(c=>({default:c.ExperimentalAgentOnboardingModal})));function Ce({onProjectRegistered:c,onClose:u,agentOnboardingEnabled:P=!1,includeAgentStep:z=!0}){const{t:a}=ge("app"),F="https://discord.gg/ksrfuy7WYR",x=l.useMemo(()=>b("ceo")??g[0],[]),[T,U]=l.useState(!0),[s,i]=l.useState(()=>({step:"manual",manualMode:"existing",manualPath:"",manualCloneUrl:"",manualName:"",manualIsolationMode:"in-process",manualNodeId:"",manualTaskPrefix:"",detectedRepos:[],workspaceMode:!1,isDetectingWorkspace:!1,registeredProject:null,selectedPresetId:x.id,agentDraft:R(x),isCreatingAgent:!1,isRegistering:!1,error:null,agentError:null,agentOutcome:null})),[A,W]=l.useState(!1),[I,j]=l.useState(!1),D=l.useRef(null),{nodes:M,loading:L}=te(),O=M.find(t=>t.type==="local")?.id,f=l.useCallback(()=>{U(!1),u?.()},[u]),_=l.useCallback(()=>{if(s.registeredProject){c(s.registeredProject);return}f()},[f,c,s.registeredProject]);l.useEffect(()=>{s.agentError&&D.current?.focus()},[s.agentError]);const N=l.useRef(0),H=l.useCallback(t=>{if(i(r=>{const n={manualPath:t,detectedRepos:[],workspaceMode:!1};t&&(!r.manualName||r.manualName===y(r.manualPath))&&(n.manualName=y(t));const o=n.manualName??r.manualName;return o&&(!r.manualTaskPrefix||r.manualTaskPrefix===C(y(r.manualPath)))&&(n.manualTaskPrefix=C(o)),{...r,...n}}),s.manualMode==="existing"&&t.trim()&&t.trim()!=="/"){const r=++N.current;i(n=>({...n,isDetectingWorkspace:!0})),ae(t.trim()).then(n=>{r===N.current&&i(o=>({...o,isDetectingWorkspace:!1,detectedRepos:n.repos,workspaceMode:n.isWorkspace}))}).catch(()=>{r===N.current&&i(n=>({...n,isDetectingWorkspace:!1}))})}},[s.manualMode]),B=l.useCallback(async()=>{const t=s.manualPath.trim(),r=s.manualName.trim(),n=s.manualCloneUrl.trim();if(!(!t||!r)&&!(s.manualMode==="clone"&&!n)){i(o=>({...o,isRegistering:!0,error:null}));try{const o={name:r,path:t,isolationMode:s.manualIsolationMode,nodeId:s.manualNodeId||void 0,cloneUrl:s.manualMode==="clone"?n:void 0,workspaceMode:s.workspaceMode,taskPrefix:s.manualTaskPrefix.trim()||void 0},d=await re(o);if(!z){i(m=>({...m,isRegistering:!1})),c(d);return}i(m=>({...m,step:"agent",registeredProject:d,isRegistering:!1}))}catch(o){i(d=>({...d,isRegistering:!1,error:o instanceof Error?o.message:"Failed to register project"}))}}},[z,c,s.manualPath,s.manualName,s.manualCloneUrl,s.manualMode,s.manualIsolationMode,s.manualNodeId,s.workspaceMode,s.manualTaskPrefix]),w=l.useCallback(t=>{const r=b(t);r&&i(n=>({...n,selectedPresetId:r.id,agentDraft:R(r),agentError:null}))},[]),$=l.useCallback((t,r)=>{const n=g.findIndex(se=>se.id===r);if(n<0)return;const o=g.length-1;let d=null;if(t.key==="ArrowDown"||t.key==="ArrowRight"?d=n===o?0:n+1:t.key==="ArrowUp"||t.key==="ArrowLeft"?d=n===0?o:n-1:t.key==="Home"?d=0:t.key==="End"&&(d=o),d===null)return;t.preventDefault();const m=g[d];w(m.id),requestAnimationFrame(()=>{document.querySelector(`[data-agent-preset-id="${m.id}"]`)?.focus()})},[w]),Y=l.useCallback(t=>{i(r=>({...r,selectedPresetId:"",agentDraft:ne(t),agentError:null}))},[]),G=l.useCallback(async()=>{if(!(!s.registeredProject||!s.agentDraft.name.trim())){i(t=>({...t,isCreatingAgent:!0,agentError:null}));try{await ie(le(s.agentDraft),s.registeredProject.id),i(t=>({...t,step:"complete",isCreatingAgent:!1,agentOutcome:"created"}))}catch(t){i(r=>({...r,isCreatingAgent:!1,agentError:t instanceof Error?t.message:a("setup.firstAgentCreateError","Failed to create agent")}))}}},[s.agentDraft,s.registeredProject,a]),q=l.useCallback(()=>{i(t=>({...t,step:"complete",agentError:null,agentOutcome:"skipped"}))},[]);if(!T)return null;const k=s.manualMode==="existing",p=s.manualMode==="clone",K=s.manualPath.trim().length>0,Z=s.manualName.trim().length>0,V=s.manualCloneUrl.trim().length>0,X=s.isRegistering||!K||!Z||p&&!V,J=s.selectedPresetId?b(s.selectedPresetId):void 0,h=s.isCreatingAgent,Q=s.selectedPresetId||x.id,ee=`modal setup-wizard-modal${s.step==="agent"?" setup-wizard-modal--agent":""}`;return e.jsxs("div",{className:"modal-overlay open setup-wizard-overlay",role:"dialog","aria-modal":"true","aria-labelledby":"wizard-title",children:[e.jsxs("div",{className:ee,children:[e.jsxs("div",{className:"setup-wizard-header",children:[e.jsxs("div",{className:"setup-wizard-heading",children:[e.jsxs("div",{className:"setup-wizard-brand","aria-label":a("setup.brandName","Fusion"),children:[e.jsxs("svg",{className:"setup-wizard-brand-logo",width:28,height:28,viewBox:"0 0 128 128",fill:"none","aria-label":a("setup.brandLogo","Fusion logo"),role:"img",children:[e.jsx("circle",{cx:"64",cy:"64",r:"52",stroke:"currentColor",strokeWidth:"8"}),e.jsx("path",{d:"M26 101C44 82 62 64 82 45C90 37 98 30 104 24C96 35 89 47 81 60C70 79 57 95 43 108C38 112 32 108 26 101Z",fill:"currentColor"})]}),e.jsx("span",{className:"setup-wizard-brand-name",children:a("setup.brandName","Fusion")})]}),e.jsxs("h2",{id:"wizard-title",className:"setup-wizard-title",children:[s.step==="manual"&&a("setup.welcomeToFusion","Welcome to Fusion"),s.step==="agent"&&a("setup.firstAgentTitle","Create your first agent"),s.step==="complete"&&a("setup.setupCompleteTitle","Setup Complete!")]})]}),s.step!=="complete"&&s.step!=="agent"&&e.jsx("button",{className:"modal-close",onClick:f,"aria-label":a("setup.closeWizard","Close wizard"),children:e.jsx(oe,{size:20})})]}),e.jsxs("div",{className:"setup-wizard-content",children:[s.step==="manual"&&e.jsxs("div",{className:"setup-wizard-manual",children:[e.jsxs("div",{className:"form-group",children:[e.jsx("label",{htmlFor:"project-name",children:a("setup.projectName","Project Name")}),e.jsx("input",{id:"project-name",type:"text",value:s.manualName,onChange:t=>i(r=>({...r,manualName:t.target.value})),placeholder:a("setup.projectNamePlaceholder","my-project")}),e.jsx("p",{className:"form-hint",children:p?a("setup.projectNameHintClone","By default this follows the destination folder name unless you edit it."):a("setup.projectNameHintExisting","By default this follows the selected directory name unless you edit it.")})]}),e.jsxs("div",{className:"form-group",children:[e.jsx("label",{htmlFor:"project-path",children:p?a("setup.destinationDirectory","Destination Directory"):a("setup.projectDirectory","Project Directory")}),e.jsx(me,{value:s.manualPath,onChange:H,nodeId:s.manualNodeId||void 0,localNodeId:O,placeholder:p?a("setup.clonePathPlaceholder","/path/for/new-clone"):a("setup.projectPathPlaceholder","/path/to/your/project")}),e.jsx("p",{className:"form-hint",children:p?a("setup.clonePathHint","Select or type an absolute destination path. Fusion will clone into this directory."):a("setup.projectPathHint","Select or type the absolute path to your project")})]}),k&&s.manualPath.trim()&&e.jsxs("div",{className:"form-group",children:[e.jsxs("label",{htmlFor:"workspace-mode",className:"checkbox-label",children:[e.jsx("input",{id:"workspace-mode",type:"checkbox",checked:s.workspaceMode,onChange:t=>i(r=>({...r,workspaceMode:t.target.checked}))}),a("setup.workspaceMode","Workspace mode (multi-repo)")]}),s.isDetectingWorkspace&&e.jsxs("p",{className:"form-hint",children:[e.jsx(v,{size:12,className:"animate-spin",style:{display:"inline-block",verticalAlign:"middle",marginRight:4}}),a("setup.detectingWorkspace","Detecting sub-repositories...")]}),!s.isDetectingWorkspace&&s.detectedRepos.length>0&&e.jsxs("p",{className:"form-hint",children:[a("setup.detectedRepos","Found {{count}} repositories:",{count:s.detectedRepos.length})," ",s.detectedRepos.join(", ")]}),!s.isDetectingWorkspace&&s.detectedRepos.length===0&&s.workspaceMode===!1&&s.manualPath.trim()&&e.jsx("p",{className:"form-hint",children:a("setup.noSubReposDetected","No sub-repositories detected. Enable if this is a multi-repo workspace.")})]}),e.jsxs("div",{className:"form-group",children:[e.jsx("label",{htmlFor:"task-prefix",children:a("setup.taskPrefix","Task Prefix")}),e.jsx("input",{id:"task-prefix",type:"text",value:s.manualTaskPrefix,onChange:t=>i(r=>({...r,manualTaskPrefix:t.target.value.toUpperCase()})),placeholder:C(s.manualName||"FN"),maxLength:5}),e.jsx("p",{className:"form-hint",children:a("setup.taskPrefixHint",'Used for task IDs (e.g. "{{prefix}}-1"). Derived from project name.',{prefix:s.manualTaskPrefix||"FN"})})]}),e.jsxs("div",{className:"setup-wizard-advanced",children:[e.jsxs("button",{type:"button",className:"setup-wizard-advanced-toggle","aria-expanded":A,onClick:()=>W(t=>!t),children:[e.jsx(de,{size:16,className:"setup-wizard-advanced-chevron"}),e.jsx("span",{children:a("setup.advancedSettings","Advanced settings")})]}),A&&e.jsxs("div",{className:"setup-wizard-advanced-panel",children:[e.jsxs("fieldset",{className:"setup-wizard-mode-switch","aria-label":"Project setup mode",children:[e.jsx("legend",{children:a("setup.setupMode","Setup Mode")}),e.jsxs("label",{className:`setup-wizard-mode-option${k?" selected":""}`,children:[e.jsx("input",{type:"radio",name:"setup-mode",value:"existing",checked:k,onChange:()=>i(t=>({...t,manualMode:"existing",error:null}))}),e.jsx("span",{children:a("setup.useExistingDirectory","Use Existing Directory")})]}),e.jsxs("label",{className:`setup-wizard-mode-option${p?" selected":""}`,children:[e.jsx("input",{type:"radio",name:"setup-mode",value:"clone",checked:p,onChange:()=>i(t=>({...t,manualMode:"clone",error:null}))}),e.jsx("span",{children:a("setup.cloneGitRepository","Clone Git Repository")})]})]}),p&&e.jsxs("div",{className:"form-group",children:[e.jsx("label",{htmlFor:"project-clone-url",children:a("setup.repositoryUrl","Repository URL")}),e.jsx("input",{id:"project-clone-url",type:"text",value:s.manualCloneUrl,onChange:t=>i(r=>({...r,manualCloneUrl:t.target.value})),placeholder:a("setup.repositoryUrlPlaceholder","https://github.com/owner/repo.git")}),e.jsx("p",{className:"form-hint",children:a("setup.cloneGitHint","Fusion will run git clone into the destination directory, then register that cloned folder.")})]}),e.jsx("div",{className:"form-group",children:e.jsxs("div",{className:"project-node-selector",children:[e.jsx("span",{className:"project-node-selector__label",children:a("setup.runtimeNode","Runtime Node")}),e.jsxs("select",{value:s.manualNodeId,onChange:t=>i(r=>({...r,manualNodeId:t.target.value})),disabled:L||s.isRegistering,children:[e.jsx("option",{value:"",children:a("setup.localNode","Local node")}),M.map(t=>e.jsxs("option",{value:t.id,children:[t.name," (",t.type,")"]},t.id))]})]})}),e.jsxs("div",{className:"form-group",children:[e.jsx("label",{children:a("setup.isolationMode","Isolation Mode")}),e.jsxs("div",{className:"setup-wizard-isolation-options",children:[e.jsxs("label",{className:`setup-wizard-isolation-option${s.manualIsolationMode==="in-process"?" selected":""}`,children:[e.jsx("input",{type:"radio",name:"isolation-mode",value:"in-process",checked:s.manualIsolationMode==="in-process",onChange:()=>i(t=>({...t,manualIsolationMode:"in-process"}))}),e.jsxs("div",{className:"setup-wizard-isolation-option-content",children:[e.jsx("strong",{children:a("setup.inProcess","In-Process")}),e.jsx("span",{children:a("setup.inProcessDesc","Lower overhead, shared memory. Best for most projects.")}),e.jsx("span",{className:"wizard-option-recommended",children:a("setup.recommended","Recommended")})]})]}),e.jsxs("label",{className:`setup-wizard-isolation-option${s.manualIsolationMode==="child-process"?" selected":""}`,children:[e.jsx("input",{type:"radio",name:"isolation-mode",value:"child-process",checked:s.manualIsolationMode==="child-process",onChange:()=>i(t=>({...t,manualIsolationMode:"child-process"}))}),e.jsxs("div",{className:"setup-wizard-isolation-option-content",children:[e.jsx("strong",{children:a("setup.childProcess","Child-Process")}),e.jsx("span",{children:a("setup.childProcessDesc","Isolated execution with crash containment.")})]})]})]})]})]})]}),s.error&&e.jsx("div",{className:"wizard-error",role:"alert",children:s.error})]}),s.step==="agent"&&e.jsxs("div",{className:"setup-wizard-agent-step",children:[e.jsx("p",{className:"setup-wizard-agent-intro",children:a("setup.firstAgentIntro","Agents are optional. Fusion can build tasks without one by starting temporary agents for planning, coding, review, and merge. Create an agent only if you want help coordinating tasks and direction.")}),e.jsxs("div",{className:"setup-wizard-agent-layout",children:[e.jsxs("section",{className:"setup-wizard-agent-presets","aria-labelledby":"setup-first-agent-presets-heading",children:[e.jsx("div",{className:"setup-wizard-agent-section-heading",id:"setup-first-agent-presets-heading",children:a("setup.firstAgentTemplates","Templates")}),e.jsx("div",{className:"setup-wizard-agent-preset-list",role:"radiogroup","aria-label":a("setup.firstAgentTemplates","Templates"),children:g.map(t=>{const r=s.selectedPresetId===t.id;return e.jsxs("button",{type:"button",className:`setup-wizard-agent-preset${r?" selected":""}`,role:"radio","aria-checked":r,"aria-label":r?a("setup.selectedAgentTemplate","{{name}} selected",{name:t.name}):t.name,tabIndex:t.id===Q?0:-1,"data-agent-preset-id":t.id,disabled:h,onClick:()=>w(t.id),onKeyDown:n=>$(n,t.id),children:[e.jsx(E,{agent:{id:t.id,icon:t.icon,name:t.name},size:28}),e.jsxs("span",{className:"setup-wizard-agent-preset-copy",children:[e.jsxs("span",{className:"setup-wizard-agent-preset-name",children:[t.name,t.id==="ceo"&&e.jsx("span",{className:"wizard-option-recommended",children:a("setup.recommended","Recommended")})]}),e.jsx("span",{className:"setup-wizard-agent-preset-description",children:t.description})]})]},t.id)})})]}),e.jsxs("section",{className:"setup-wizard-agent-preview","aria-labelledby":"setup-first-agent-preview-heading",children:[e.jsx("div",{className:"setup-wizard-agent-section-heading",id:"setup-first-agent-preview-heading",children:a("setup.firstAgentPreview","Preview")}),e.jsxs("div",{className:"setup-wizard-agent-preview-card",children:[e.jsxs("div",{className:"setup-wizard-agent-preview-title-row",children:[e.jsx(E,{agent:{id:s.selectedPresetId||"draft",icon:s.agentDraft.icon,name:s.agentDraft.name},size:36}),e.jsxs("div",{children:[e.jsx("h3",{children:s.agentDraft.name||a("setup.firstAgentDraftName","Draft agent")}),e.jsx("p",{children:s.agentDraft.title||J?.title||a("setup.firstAgentCustomDraft","Custom agent draft")})]})]}),e.jsxs("dl",{className:"setup-wizard-agent-preview-list",children:[e.jsxs("div",{children:[e.jsx("dt",{children:a("agents.fieldRole","Role")}),e.jsx("dd",{children:s.agentDraft.role})]}),e.jsxs("div",{children:[e.jsx("dt",{children:a("agents.fieldInstructionsText","Inline Instructions")}),e.jsx("dd",{children:s.agentDraft.instructionsText||a("setup.firstAgentNoInstructions","No inline instructions yet")})]})]}),P&&e.jsxs("button",{type:"button",className:"btn setup-wizard-agent-ai-btn",onClick:()=>j(!0),disabled:h,children:[e.jsx(ce,{size:16}),e.jsx("span",{children:a("agents.aiInterview","AI Interview")})]})]})]})]}),s.agentError&&e.jsx("div",{className:"wizard-error",role:"alert",tabIndex:-1,ref:D,children:s.agentError})]}),s.step==="complete"&&e.jsxs("div",{className:"setup-wizard-complete",children:[e.jsxs("div",{className:"setup-wizard-success-streak","aria-hidden":"true",children:[e.jsx("div",{className:"setup-wizard-success-streak-core"}),e.jsx("div",{className:"setup-wizard-success-streak-glow"})]}),e.jsx(S,{size:64,className:"success-icon"}),e.jsx("h3",{children:a("setup.allSet","All Set!")}),e.jsx("p",{children:s.agentOutcome==="created"?a("setup.firstAgentCreatedSuccess","Your project is registered and your first agent is ready."):a("setup.projectRegisteredSuccess","Your project has been registered successfully.")}),e.jsx("p",{children:s.agentOutcome==="skipped"?a("setup.firstAgentSkippedHint","You can create agents later from the Agents view."):a("setup.addMoreProjectsHint","You can add more projects anytime from the project overview.")})]})]}),e.jsxs("div",{className:"setup-wizard-footer",children:[e.jsx("a",{className:"btn setup-wizard-help-link",href:F,target:"_blank",rel:"noopener noreferrer",children:a("setup.needHelp","Need help?")}),s.step==="manual"&&e.jsx("button",{className:"btn btn-primary",onClick:B,disabled:X,children:s.isRegistering?e.jsxs(e.Fragment,{children:[e.jsx(v,{size:16,className:"animate-spin"}),e.jsx("span",{children:a("setup.registering","Registering...")})]}):e.jsx("span",{children:a("setup.registerProject","Register Project")})}),s.step==="agent"&&e.jsxs(e.Fragment,{children:[e.jsx("button",{className:"btn",onClick:q,disabled:h,children:a("setup.skipFirstAgent","Skip for now")}),e.jsx("button",{className:"btn btn-primary",onClick:()=>void G(),disabled:h||!s.agentDraft.name.trim(),"aria-busy":s.isCreatingAgent,children:s.isCreatingAgent?e.jsxs(e.Fragment,{children:[e.jsx(v,{size:16,className:"animate-spin"}),e.jsx("span",{children:a("setup.creatingFirstAgent","Creating agent...")})]}):e.jsx("span",{children:a("setup.createFirstAgent","Create Agent")})})]}),s.step==="complete"&&e.jsxs("button",{className:"btn btn-primary",onClick:_,children:[e.jsx(S,{size:16}),e.jsx("span",{children:a("setup.getStarted","Get Started")})]})]})]}),P&&I&&e.jsx(ue,{level:"modal",fallback:e.jsxs("div",{className:"wizard-error setup-wizard-agent-interview-error",role:"alert",children:[e.jsx("span",{children:a("setup.firstAgentInterviewLoadError","AI interview could not load. You can still create an agent from a template or skip this step.")}),e.jsx("button",{type:"button",className:"btn",onClick:()=>j(!1),children:a("setup.firstAgentContinueWithTemplates","Continue with templates")})]}),children:e.jsx(l.Suspense,{fallback:e.jsx("div",{className:"wizard-error setup-wizard-agent-interview-error",role:"status",children:a("setup.firstAgentInterviewLoading","Loading AI Interview...")}),children:e.jsx(he,{isOpen:I,onClose:()=>j(!1),onUseDraft:Y,projectId:s.registeredProject?.id,existingAgents:[],mode:"create"})})})]})}export{Ce as SetupWizardModal};
@@ -0,0 +1 @@
1
+ .theme-selector{padding:0 20px 20px}.theme-mode-toggle{display:flex;align-items:center;gap:var(--space-sm);background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-xs);margin-bottom:20px}.theme-mode-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:var(--space-sm) var(--space-lg);background:none;border:none;border-radius:var(--radius-sm);color:var(--text-muted);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast);flex:1}.theme-mode-btn:hover{color:var(--text);background:var(--card-hover)}.theme-mode-btn.active,.theme-mode-btn.active:hover{background:var(--todo);color:var(--bg)}.theme-mode-btn:focus-visible{outline:none;border-color:var(--todo);box-shadow:var(--focus-ring-strong)}.theme-section-title{font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-md)}.theme-font-size-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm);margin-bottom:var(--space-lg)}.theme-font-size-btn{align-items:center;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;justify-content:center;min-height:calc(var(--space-2xl) + var(--space-sm));padding:var(--space-sm) var(--space-md);transition:all var(--transition-fast)}.theme-font-size-btn:hover{border-color:var(--todo);color:var(--text)}.theme-font-size-btn.active{background:color-mix(in srgb,var(--todo) 14%,transparent);border-color:var(--todo);color:var(--text)}.theme-font-size-btn:focus-visible{outline:none;border-color:var(--todo);box-shadow:var(--focus-ring-strong)}.theme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md)}@media(max-width:768px){.theme-grid{grid-template-columns:repeat(2,1fr)}}.theme-option{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);padding:var(--space-md);background:var(--card);border:2px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all var(--transition-fast)}.theme-option:hover{border-color:var(--todo);background:var(--card-hover)}.theme-option.active{border-color:var(--todo);background:color-mix(in srgb,var(--todo) 14%,transparent)}.theme-option:focus-visible{outline:none;border-color:var(--todo);box-shadow:var(--focus-ring-strong)}.theme-option-swatch{width:calc(var(--space-2xl) + var(--space-lg));height:calc(var(--space-2xl) + var(--space-lg));border-radius:var(--radius);border:2px solid var(--border);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));overflow:hidden}.theme-option-swatch-sample{display:block;min-height:0}.theme-option-swatch-sample-1{background:var(--swatch-sample-1)}.theme-option-swatch-sample-2{background:var(--swatch-sample-2)}.theme-option-swatch-sample-3{background:var(--swatch-sample-3)}.theme-option-swatch-sample-4{background:var(--swatch-sample-4)}.theme-option-label{font-size:12px;font-weight:500;color:var(--text);text-align:center}.theme-swatch-default{--swatch-sample-1: #0d1117;--swatch-sample-2: #161b22;--swatch-sample-3: #58a6ff;--swatch-sample-4: #79c0ff}.theme-swatch-ocean{--swatch-sample-1: #0a1929;--swatch-sample-2: #132f4c;--swatch-sample-3: #4fc3f7;--swatch-sample-4: #00bcd4}.theme-swatch-forest{--swatch-sample-1: #0d2818;--swatch-sample-2: #1a472a;--swatch-sample-3: #4caf50;--swatch-sample-4: #2e7d32}.theme-swatch-sunset{--swatch-sample-1: #2d1f1f;--swatch-sample-2: #4a2c2c;--swatch-sample-3: #ff8a65;--swatch-sample-4: #ff7043}.theme-swatch-zen{--swatch-sample-1: #0c0c0c;--swatch-sample-2: #111111;--swatch-sample-3: #6b7b8c;--swatch-sample-4: #7a8590}.theme-swatch-berry{--swatch-sample-1: #1a0b2e;--swatch-sample-2: #2d1b4e;--swatch-sample-3: #c084fc;--swatch-sample-4: #ec4899}.theme-swatch-monochrome{--swatch-sample-1: #0d0d0d;--swatch-sample-2: #1a1a1a;--swatch-sample-3: #a3a3a3;--swatch-sample-4: #d4d4d4}.theme-swatch-slate{--swatch-sample-1: #1e293b;--swatch-sample-2: #334155;--swatch-sample-3: #60a5fa;--swatch-sample-4: #22d3ee}.theme-swatch-ash{--swatch-sample-1: #292524;--swatch-sample-2: #44403c;--swatch-sample-3: #a8a29e;--swatch-sample-4: #d6d3d1}.theme-swatch-air{--swatch-sample-1: #0f1115;--swatch-sample-2: #151820;--swatch-sample-3: #a8bfd8;--swatch-sample-4: #eef1f4}.theme-swatch-graphite{--swatch-sample-1: #18181b;--swatch-sample-2: #27272a;--swatch-sample-3: #94a3b8;--swatch-sample-4: #cbd5e1}.theme-swatch-ember{--swatch-sample-1: #18181b;--swatch-sample-2: #27272a;--swatch-sample-3: #f97316;--swatch-sample-4: #ef4444}.theme-swatch-rust{--swatch-sample-1: #0f0b09;--swatch-sample-2: #1a1410;--swatch-sample-3: #e06830;--swatch-sample-4: #e88040}.theme-swatch-copper{--swatch-sample-1: #0e0c0a;--swatch-sample-2: #181410;--swatch-sample-3: #e89545;--swatch-sample-4: #f0a858}.theme-swatch-foundry{--swatch-sample-1: #0c0806;--swatch-sample-2: #15100c;--swatch-sample-3: #ffab20;--swatch-sample-4: #ffc040}.theme-swatch-carbon{--swatch-sample-1: #0a0b0d;--swatch-sample-2: #111318;--swatch-sample-3: #6a9acf;--swatch-sample-4: #7ab0e0}.theme-swatch-sandstone{--swatch-sample-1: #1a1712;--swatch-sample-2: #241f18;--swatch-sample-3: #d4a06a;--swatch-sample-4: #e0b080}.theme-swatch-lagoon{--swatch-sample-1: #0a1214;--swatch-sample-2: #101c1f;--swatch-sample-3: #50d8c0;--swatch-sample-4: #60e8d0}.theme-swatch-frost{--swatch-sample-1: #0c0e14;--swatch-sample-2: #121520;--swatch-sample-3: #8ac8f8;--swatch-sample-4: #9ad8ff}.theme-swatch-lavender{--swatch-sample-1: #14101a;--swatch-sample-2: #1c1624;--swatch-sample-3: #c8a0e8;--swatch-sample-4: #d8b0f0}.theme-swatch-neon-bloom{--swatch-sample-1: #120a18;--swatch-sample-2: #1a1024;--swatch-sample-3: #f080d0;--swatch-sample-4: #ff90e0}.theme-swatch-sepia{--swatch-sample-1: #161210;--swatch-sample-2: #201a16;--swatch-sample-3: #d8b878;--swatch-sample-4: #e8c888}.theme-swatch-silver{--swatch-sample-1: #27272a;--swatch-sample-2: #3f3f46;--swatch-sample-3: #94a3b8;--swatch-sample-4: #e2e8f0}.theme-swatch-high-contrast{--swatch-sample-1: #000000;--swatch-sample-2: #0a0a0a;--swatch-sample-3: #00ffff;--swatch-sample-4: #ffff00}.theme-swatch-industrial{--swatch-sample-1: #0c0c0c;--swatch-sample-2: #141414;--swatch-sample-3: #ff6b00;--swatch-sample-4: #ff8c00}.theme-swatch-solarized{--swatch-sample-1: #002b36;--swatch-sample-2: #073642;--swatch-sample-3: #268bd2;--swatch-sample-4: #2aa198}.theme-swatch-factory{--swatch-sample-1: #0a0a0a;--swatch-sample-2: #111111;--swatch-sample-3: #f59e0b;--swatch-sample-4: #06b6d4}.theme-swatch-factory-mono{--swatch-sample-1: #0a0a0a;--swatch-sample-2: #1a1a1a;--swatch-sample-3: #ef4444;--swatch-sample-4: #ffffff}.theme-swatch-shadcn{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #f97316;--swatch-sample-4: #27272a}.theme-swatch-shadcn-ember{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #e8773a;--swatch-sample-4: #27272a}.theme-swatch-shadcn-custom{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #f97316;--swatch-sample-4: #27272a}.theme-swatch-shadcn-blue{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #3b82f6;--swatch-sample-4: #27272a}.theme-swatch-shadcn-green{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #22c55e;--swatch-sample-4: #27272a}.theme-swatch-shadcn-red{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #ef4444;--swatch-sample-4: #27272a}.theme-swatch-shadcn-purple{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #8b5cf6;--swatch-sample-4: #27272a}.theme-swatch-shadcn-pink{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #ec4899;--swatch-sample-4: #27272a}.theme-swatch-shadcn-orange{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #f97316;--swatch-sample-4: #27272a}.theme-swatch-shadcn-yellow{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #eab308;--swatch-sample-4: #27272a}.theme-swatch-shadcn-mono-red{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #ef4444;--swatch-sample-4: #27272a}.theme-swatch-shadcn-mono-blue{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #3b82f6;--swatch-sample-4: #27272a}.theme-swatch-shadcn-mono-green{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #22c55e;--swatch-sample-4: #27272a}.theme-swatch-shadcn-mono-purple{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #8b5cf6;--swatch-sample-4: #27272a}.theme-swatch-shadcn-mono-pink{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #ec4899;--swatch-sample-4: #27272a}.theme-swatch-shadcn-mono-orange{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #f97316;--swatch-sample-4: #27272a}.theme-swatch-shadcn-mono-yellow{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #eab308;--swatch-sample-4: #27272a}.theme-swatch-shadcn-black{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #fafafa;--swatch-sample-4: #27272a}.theme-swatch-shadcn-gray{--swatch-sample-1: #09090b;--swatch-sample-2: #18181b;--swatch-sample-3: #a1a1aa;--swatch-sample-4: #27272a}.theme-swatch-shadcn-gray-blue{--swatch-sample-1: #020617;--swatch-sample-2: #0f172a;--swatch-sample-3: #64748b;--swatch-sample-4: #1e293b}.theme-swatch-ayu{--swatch-sample-1: #0f1419;--swatch-sample-2: #131d27;--swatch-sample-3: #39bae6;--swatch-sample-4: #ffb454}.theme-swatch-one-dark{--swatch-sample-1: #282c34;--swatch-sample-2: #21252b;--swatch-sample-3: #61afef;--swatch-sample-4: #00e5ff}.theme-swatch-nord{--swatch-sample-1: #2e3440;--swatch-sample-2: #3b4252;--swatch-sample-3: #88c0d0;--swatch-sample-4: #81a1c1}.theme-swatch-dracula{--swatch-sample-1: #282a36;--swatch-sample-2: #21222c;--swatch-sample-3: #8be9fd;--swatch-sample-4: #00e5ff}.theme-swatch-gruvbox{--swatch-sample-1: #282828;--swatch-sample-2: #1d2021;--swatch-sample-3: #83a598;--swatch-sample-4: #d3869b}.theme-swatch-tokyo-night{--swatch-sample-1: #1a1b26;--swatch-sample-2: #16161e;--swatch-sample-3: #7aa2f7;--swatch-sample-4: #00e5ff}.theme-swatch-catppuccin-mocha{--swatch-sample-1: #1e1e2e;--swatch-sample-2: #181825;--swatch-sample-3: #89b4fa;--swatch-sample-4: #89dceb}.theme-swatch-github-dark{--swatch-sample-1: #0d1117;--swatch-sample-2: #010409;--swatch-sample-3: #58a6ff;--swatch-sample-4: #79c0ff}.theme-swatch-everforest{--swatch-sample-1: #2d353b;--swatch-sample-2: #272e33;--swatch-sample-3: #7fbbb3;--swatch-sample-4: #e0c8a8}.theme-swatch-rose-pine{--swatch-sample-1: #191724;--swatch-sample-2: #1f1d2e;--swatch-sample-3: #c4a7e7;--swatch-sample-4: #ebbcba}.theme-swatch-kanagawa{--swatch-sample-1: #1f1f28;--swatch-sample-2: #16161d;--swatch-sample-3: #7e9cd8;--swatch-sample-4: #7e9cd8}.theme-swatch-night-owl{--swatch-sample-1: #011627;--swatch-sample-2: #01111d;--swatch-sample-3: #82aaff;--swatch-sample-4: #addb67}.theme-swatch-palenight{--swatch-sample-1: #292d3e;--swatch-sample-2: #1e2235;--swatch-sample-3: #82aaff;--swatch-sample-4: #ffcb6b}.theme-swatch-monokai-pro{--swatch-sample-1: #2d2a2e;--swatch-sample-2: #252229;--swatch-sample-3: #78dce8;--swatch-sample-4: #ff6188}.theme-swatch-slime{--swatch-sample-1: #0a0e09;--swatch-sample-2: #0f150d;--swatch-sample-3: #8aff40;--swatch-sample-4: #40e8a0}.theme-swatch-brutalist{--swatch-sample-1: #101010;--swatch-sample-2: #171717;--swatch-sample-3: #ff6a00;--swatch-sample-4: #ffd100}.theme-swatch-neon-city{--swatch-sample-1: #0d0d15;--swatch-sample-2: #121326;--swatch-sample-3: #ff2d95;--swatch-sample-4: #00f0ff}.theme-swatch-parchment{--swatch-sample-1: #1b1712;--swatch-sample-2: #252019;--swatch-sample-3: #d08a4b;--swatch-sample-4: #be6e3c}.theme-swatch-terminal{--swatch-sample-1: #0a0a0a;--swatch-sample-2: #0f120d;--swatch-sample-3: #33ff00;--swatch-sample-4: #8fff38}.theme-swatch-glass{--swatch-sample-1: #13111f;--swatch-sample-2: color-mix(in srgb, #221b34 78%, transparent);--swatch-sample-3: #c86bff;--swatch-sample-4: #ff7aa8}.theme-swatch-glass-silver{--swatch-sample-1: #101216;--swatch-sample-2: color-mix(in srgb, #252a32 78%, transparent);--swatch-sample-3: #d7dde6;--swatch-sample-4: #9ca6b4}.theme-swatch-horizon{--swatch-sample-1: #1c1e26;--swatch-sample-2: #16161c;--swatch-sample-3: #e59371;--swatch-sample-4: #f08c42}.theme-swatch-vitesse{--swatch-sample-1: #121817;--swatch-sample-2: #0d1210;--swatch-sample-3: #4c9a91;--swatch-sample-4: #dca561}.theme-swatch-outrun{--swatch-sample-1: #0a0a14;--swatch-sample-2: #0d0d1a;--swatch-sample-3: #ff2d95;--swatch-sample-4: #b537f2}.theme-swatch-snazzy{--swatch-sample-1: #282a36;--swatch-sample-2: #1e1f29;--swatch-sample-3: #ff5c57;--swatch-sample-4: #5af78e}.theme-swatch-porple{--swatch-sample-1: #292d3e;--swatch-sample-2: #1e2030;--swatch-sample-3: #c792ea;--swatch-sample-4: #82aaff}.theme-swatch-espresso{--swatch-sample-1: #2c1f1a;--swatch-sample-2: #231813;--swatch-sample-3: #d4a574;--swatch-sample-4: #c17d56}.theme-swatch-mars{--swatch-sample-1: #1a1210;--swatch-sample-2: #140e0c;--swatch-sample-3: #c1440e;--swatch-sample-4: #e77d3d}.theme-swatch-poimandres{--swatch-sample-1: #1a1b26;--swatch-sample-2: #14151f;--swatch-sample-3: #89ddff;--swatch-sample-4: #5de4c7}[data-theme=light] .theme-swatch-factory{--swatch-sample-1: #f5f5f5;--swatch-sample-2: #ffffff;--swatch-sample-3: #d97706;--swatch-sample-4: #0891b2}[data-theme=light] .theme-swatch-factory-mono{--swatch-sample-1: #f5f5f5;--swatch-sample-2: #ffffff;--swatch-sample-3: #dc2626;--swatch-sample-4: #1a1a1a}[data-theme=light] .theme-swatch-shadcn{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #ea580c;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-ember{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #d4622a;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-custom{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #ea580c;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-blue{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #2563eb;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-green{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #16a34a;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-red{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #dc2626;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-purple{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #7c3aed;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-pink{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #db2777;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-orange{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #ea580c;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-yellow{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #ca8a04;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-mono-red{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #dc2626;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-mono-blue{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #2563eb;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-mono-green{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #16a34a;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-mono-purple{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #7c3aed;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-mono-pink{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #db2777;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-mono-orange{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #ea580c;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-mono-yellow{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #ca8a04;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-black{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #09090b;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-gray{--swatch-sample-1: #ffffff;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #52525b;--swatch-sample-4: #e4e4e7}[data-theme=light] .theme-swatch-shadcn-gray-blue{--swatch-sample-1: #ffffff;--swatch-sample-2: #f1f5f9;--swatch-sample-3: #475569;--swatch-sample-4: #e2e8f0}[data-theme=light] .theme-swatch-ayu{--swatch-sample-1: #fafafa;--swatch-sample-2: #f3f3f3;--swatch-sample-3: #007acc;--swatch-sample-4: #ff8f40}[data-theme=light] .theme-swatch-zen{--swatch-sample-1: #f5f5f5;--swatch-sample-2: #fafafa;--swatch-sample-3: #5a6a7a;--swatch-sample-4: #6a757f}[data-theme=light] .theme-swatch-nord{--swatch-sample-1: #eceff4;--swatch-sample-2: #e5e9f0;--swatch-sample-3: #5e81ac;--swatch-sample-4: #5e81ac}[data-theme=light] .theme-swatch-dracula{--swatch-sample-1: #f8f8f2;--swatch-sample-2: #efeefa;--swatch-sample-3: #0097a7;--swatch-sample-4: #00bcd4}[data-theme=light] .theme-swatch-gruvbox{--swatch-sample-1: #fbf1c7;--swatch-sample-2: #f2e5bc;--swatch-sample-3: #076678;--swatch-sample-4: #8f3f71}[data-theme=light] .theme-swatch-tokyo-night{--swatch-sample-1: #e1e2e7;--swatch-sample-2: #d5d6db;--swatch-sample-3: #3b5ea5;--swatch-sample-4: #00bcd4}[data-theme=light] .theme-swatch-catppuccin-mocha{--swatch-sample-1: #eff1f5;--swatch-sample-2: #e6e9ef;--swatch-sample-3: #1e66f5;--swatch-sample-4: #04a5e5}[data-theme=light] .theme-swatch-github-dark{--swatch-sample-1: #ffffff;--swatch-sample-2: #f6f8fa;--swatch-sample-3: #0969da;--swatch-sample-4: #0969da}[data-theme=light] .theme-swatch-everforest{--swatch-sample-1: #fdf6e3;--swatch-sample-2: #f4f0d9;--swatch-sample-3: #3a94a5;--swatch-sample-4: #83a08a}[data-theme=light] .theme-swatch-rose-pine{--swatch-sample-1: #faf4ed;--swatch-sample-2: #fffaf3;--swatch-sample-3: #907aa9;--swatch-sample-4: #b4637a}[data-theme=light] .theme-swatch-kanagawa{--swatch-sample-1: #edeadd;--swatch-sample-2: #e1ddd4;--swatch-sample-3: #4e76b5;--swatch-sample-4: #4e76b5}[data-theme=light] .theme-swatch-one-dark{--swatch-sample-1: #fafafa;--swatch-sample-2: #f0f0f0;--swatch-sample-3: #4078f2;--swatch-sample-4: #0184bc}[data-theme=light] .theme-swatch-night-owl{--swatch-sample-1: #f6f7f9;--swatch-sample-2: #eef0f4;--swatch-sample-3: #2563eb;--swatch-sample-4: #5a9e2f}[data-theme=light] .theme-swatch-palenight{--swatch-sample-1: #f5f7fa;--swatch-sample-2: #ebeef5;--swatch-sample-3: #3b6fcf;--swatch-sample-4: #c49020}[data-theme=light] .theme-swatch-monokai-pro{--swatch-sample-1: #faf8f5;--swatch-sample-2: #f0ece5;--swatch-sample-3: #2d8fa0;--swatch-sample-4: #c4405e}[data-theme=light] .theme-swatch-slime{--swatch-sample-1: #f2f7ea;--swatch-sample-2: #e6efda;--swatch-sample-3: #3d8f10;--swatch-sample-4: #1a8a6a}[data-theme=light] .theme-swatch-brutalist{--swatch-sample-1: #ece9e4;--swatch-sample-2: #f7f4ef;--swatch-sample-3: #d9480f;--swatch-sample-4: #b8860b}[data-theme=light] .theme-swatch-neon-city{--swatch-sample-1: #f7f5ff;--swatch-sample-2: #f1edff;--swatch-sample-3: #cc166e;--swatch-sample-4: #008e9b}[data-theme=light] .theme-swatch-parchment{--swatch-sample-1: #f5f0e8;--swatch-sample-2: #efe7dc;--swatch-sample-3: #a8562f;--swatch-sample-4: #8f4e2a}[data-theme=light] .theme-swatch-terminal{--swatch-sample-1: #e7f5dd;--swatch-sample-2: #deefd2;--swatch-sample-3: #2d6b14;--swatch-sample-4: #4c8f25}[data-theme=light] .theme-swatch-glass{--swatch-sample-1: #eceaf5;--swatch-sample-2: color-mix(in srgb, #ffffff 75%, transparent);--swatch-sample-3: #9d40cf;--swatch-sample-4: #c74b7a}[data-theme=light] .theme-swatch-glass-silver{--swatch-sample-1: #eef0f3;--swatch-sample-2: color-mix(in srgb, #ffffff 75%, transparent);--swatch-sample-3: #5f6875;--swatch-sample-4: #747f8c}[data-theme=light] .theme-swatch-slate{--swatch-sample-1: #f1f5f9;--swatch-sample-2: #e2e8f0;--swatch-sample-3: #3b5ea5;--swatch-sample-4: #4f7090}[data-theme=light] .theme-swatch-ash{--swatch-sample-1: #fafaf9;--swatch-sample-2: #f5f5f4;--swatch-sample-3: #5a6a7a;--swatch-sample-4: #768694}[data-theme=light] .theme-swatch-air{--swatch-sample-1: #fbfbfa;--swatch-sample-2: #ffffff;--swatch-sample-3: #536b86;--swatch-sample-4: #26313d}[data-theme=light] .theme-swatch-graphite{--swatch-sample-1: #fafafa;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #6f7f90;--swatch-sample-4: #8a99aa}[data-theme=light] .theme-swatch-ember{--swatch-sample-1: #fafafa;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #d9480f;--swatch-sample-4: #e8646a}[data-theme=light] .theme-swatch-rust{--swatch-sample-1: #f5efe8;--swatch-sample-2: #ebe3d8;--swatch-sample-3: #a04020;--swatch-sample-4: #b85828}[data-theme=light] .theme-swatch-copper{--swatch-sample-1: #f3ede6;--swatch-sample-2: #e8e0d6;--swatch-sample-3: #905820;--swatch-sample-4: #a87030}[data-theme=light] .theme-swatch-foundry{--swatch-sample-1: #f5f0e6;--swatch-sample-2: #ebe4d6;--swatch-sample-3: #c07808;--swatch-sample-4: #d08a10}[data-theme=light] .theme-swatch-carbon{--swatch-sample-1: #eef0f4;--swatch-sample-2: #e2e6ec;--swatch-sample-3: #3a6090;--swatch-sample-4: #4878a0}[data-theme=light] .theme-swatch-sandstone{--swatch-sample-1: #f5f0e8;--swatch-sample-2: #ebe4d8;--swatch-sample-3: #a07040;--swatch-sample-4: #b08050}[data-theme=light] .theme-swatch-lagoon{--swatch-sample-1: #eef5f3;--swatch-sample-2: #e0ebe8;--swatch-sample-3: #208070;--swatch-sample-4: #289080}[data-theme=light] .theme-swatch-frost{--swatch-sample-1: #f0f4f8;--swatch-sample-2: #e4eaf0;--swatch-sample-3: #3078a8;--swatch-sample-4: #4088b8}[data-theme=light] .theme-swatch-lavender{--swatch-sample-1: #f4f0f8;--swatch-sample-2: #e8e2f0;--swatch-sample-3: #8060a0;--swatch-sample-4: #9070b0}[data-theme=light] .theme-swatch-neon-bloom{--swatch-sample-1: #f8f0f8;--swatch-sample-2: #f0e4f0;--swatch-sample-3: #a03090;--swatch-sample-4: #b040a0}[data-theme=light] .theme-swatch-sepia{--swatch-sample-1: #f5f0e4;--swatch-sample-2: #ece4d4;--swatch-sample-3: #907040;--swatch-sample-4: #a08050}[data-theme=light] .theme-swatch-silver{--swatch-sample-1: #fafafa;--swatch-sample-2: #f4f4f5;--swatch-sample-3: #6b7280;--swatch-sample-4: #9ca3af}[data-theme=light] .theme-swatch-horizon{--swatch-sample-1: #fdf0ed;--swatch-sample-2: #f9cec0;--swatch-sample-3: #e8646a;--swatch-sample-4: #f08c42}[data-theme=light] .theme-swatch-vitesse{--swatch-sample-1: #f8f5f0;--swatch-sample-2: #efe9e0;--swatch-sample-3: #3a8578;--swatch-sample-4: #c08040}[data-theme=light] .theme-swatch-outrun{--swatch-sample-1: #f0f0f5;--swatch-sample-2: #e8e8ef;--swatch-sample-3: #d02080;--swatch-sample-4: #9030c8}[data-theme=light] .theme-swatch-snazzy{--swatch-sample-1: #fafafa;--swatch-sample-2: #f0f0f2;--swatch-sample-3: #d04040;--swatch-sample-4: #30a050}[data-theme=light] .theme-swatch-porple{--swatch-sample-1: #f5f3f7;--swatch-sample-2: #eae7ef;--swatch-sample-3: #9060d8;--swatch-sample-4: #4080c8}[data-theme=light] .theme-swatch-espresso{--swatch-sample-1: #f5ece4;--swatch-sample-2: #ebe1d6;--swatch-sample-3: #a07050;--swatch-sample-4: #906040}[data-theme=light] .theme-swatch-mars{--swatch-sample-1: #f5ece6;--swatch-sample-2: #ebe0d4;--swatch-sample-3: #a03010;--swatch-sample-4: #c06030}[data-theme=light] .theme-swatch-poimandres{--swatch-sample-1: #f0f0f5;--swatch-sample-2: #e6e6ee;--swatch-sample-3: #4090c0;--swatch-sample-4: #30a090}.theme-reset-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);margin-top:20px;padding:10px 16px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast);width:100%}.theme-reset-btn:hover{background:var(--card-hover);color:var(--text);border-color:var(--text-muted)}.theme-reset-btn:focus-visible{outline:none;border-color:var(--todo);box-shadow:var(--focus-ring-strong)}.theme-current-preview{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:20px}.theme-preview-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--surface);border-radius:var(--radius);color:var(--todo)}.theme-preview-info{flex:1}.theme-preview-label{font-size:12px;color:var(--text-muted);margin-bottom:2px}.theme-preview-value{font-size:14px;font-weight:600;color:var(--text);text-transform:capitalize}@media(max-width:768px){.model-combobox-dropdown{max-height:50vh;width:min(360px,calc(100vw - 32px))}.model-combobox-search{font-size:16px}.model-combobox-option{min-height:36px}.theme-selector{padding:0 14px 14px}.theme-font-size-toggle{grid-template-columns:1fr}}.shadcn-color-picker{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--card-padding);border:var(--btn-border-width) solid var(--border);background:var(--card)}.shadcn-color-picker-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md)}.shadcn-color-picker-heading{min-width:0}.shadcn-color-picker-title{margin:0;color:var(--text);font-size:var(--font-size-base);font-weight:600}.shadcn-color-picker-description{margin:var(--space-xs) 0 0;color:var(--text-muted);font-size:var(--font-size-xs)}.shadcn-color-picker-toggle{flex:0 0 auto}.shadcn-color-picker-controls-panel{display:flex;flex-direction:column;gap:var(--space-sm)}.shadcn-color-picker-actions{display:flex;justify-content:flex-end}.shadcn-color-picker-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(calc(var(--space-2xl) * 7),1fr));gap:var(--space-sm)}.shadcn-color-picker-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:var(--space-sm);border:var(--btn-border-width) solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.shadcn-color-picker-label{display:flex;min-width:0;flex-direction:column;gap:var(--space-xs);color:var(--text);font-size:var(--font-size-xs);font-weight:500}.shadcn-color-picker-label code{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:400}.shadcn-color-picker-controls{display:flex;align-items:center;gap:var(--space-xs)}.shadcn-color-picker-native{width:calc(var(--space-xl) * 2);height:calc(var(--space-xl) * 2);padding:0;border:var(--btn-border-width) solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer}.shadcn-color-picker-hex{width:calc(var(--space-2xl) * 3);font-family:var(--font-mono)}@media(max-width:768px){.shadcn-color-picker-header,.shadcn-color-picker-row,.shadcn-color-picker-controls,.shadcn-color-picker-actions{align-items:stretch;flex-direction:column}.shadcn-color-picker-toggle{align-self:flex-start}.shadcn-color-picker-grid{grid-template-columns:1fr}.shadcn-color-picker-native,.shadcn-color-picker-hex{width:100%}}
@@ -0,0 +1,11 @@
1
+ import{c as N,c2 as k,c3 as v,ad as y,o as S,c4 as x,c5 as f}from"./index-CEUULqTR.js";import{r,j as a}from"./vendor-react-SZ_qB27O.js";import{u as C}from"./vendor-i18n-GF3RlKbq.js";/**
2
+ * @license lucide-react v1.7.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const M=[["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"}]],j=N("moon",M);/**
7
+ * @license lucide-react v1.7.0 - ISC
8
+ *
9
+ * This source code is licensed under the ISC license.
10
+ * See the LICENSE file in the root directory of this source tree.
11
+ */const z=[["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"}]],O=N("sun",z),$=[{value:"light",label:"Light",icon:O},{value:"dark",label:"Dark",icon:j},{value:"system",label:"System",icon:k}],D=[{value:"default",label:"Fusion Legacy",className:"theme-swatch-default"},{value:"ocean",label:"Ocean",className:"theme-swatch-ocean"},{value:"forest",label:"Forest",className:"theme-swatch-forest"},{value:"sunset",label:"Sunset",className:"theme-swatch-sunset"},{value:"zen",label:"Zen",className:"theme-swatch-zen"},{value:"berry",label:"Berry",className:"theme-swatch-berry"},{value:"high-contrast",label:"High Contrast",className:"theme-swatch-high-contrast"},{value:"industrial",label:"Industrial",className:"theme-swatch-industrial"},{value:"monochrome",label:"Mono",className:"theme-swatch-monochrome"},{value:"slate",label:"Slate",className:"theme-swatch-slate"},{value:"ash",label:"Ash",className:"theme-swatch-ash"},{value:"air",label:"Air",className:"theme-swatch-air"},{value:"graphite",label:"Graphite",className:"theme-swatch-graphite"},{value:"silver",label:"Silver",className:"theme-swatch-silver"},{value:"solarized",label:"Solarized",className:"theme-swatch-solarized"},{value:"factory",label:"Factory",className:"theme-swatch-factory"},{value:"factory-mono",label:"Factory Mono",className:"theme-swatch-factory-mono"},{value:"ayu",label:"Ayu",className:"theme-swatch-ayu"},{value:"one-dark",label:"One Dark",className:"theme-swatch-one-dark"},{value:"nord",label:"Nord",className:"theme-swatch-nord"},{value:"dracula",label:"Dracula",className:"theme-swatch-dracula"},{value:"gruvbox",label:"Gruvbox",className:"theme-swatch-gruvbox"},{value:"tokyo-night",label:"Tokyo Night",className:"theme-swatch-tokyo-night"},{value:"catppuccin-mocha",label:"Catppuccin Mocha",className:"theme-swatch-catppuccin-mocha"},{value:"github-dark",label:"GitHub Dark",className:"theme-swatch-github-dark"},{value:"everforest",label:"Everforest",className:"theme-swatch-everforest"},{value:"rose-pine",label:"Rosé Pine",className:"theme-swatch-rose-pine"},{value:"kanagawa",label:"Kanagawa",className:"theme-swatch-kanagawa"},{value:"night-owl",label:"Night Owl",className:"theme-swatch-night-owl"},{value:"palenight",label:"Palenight",className:"theme-swatch-palenight"},{value:"monokai-pro",label:"Monokai Pro",className:"theme-swatch-monokai-pro"},{value:"slime",label:"Slime",className:"theme-swatch-slime"},{value:"brutalist",label:"Brutalist",className:"theme-swatch-brutalist"},{value:"neon-city",label:"Neon City",className:"theme-swatch-neon-city"},{value:"parchment",label:"Parchment",className:"theme-swatch-parchment"},{value:"terminal",label:"Terminal",className:"theme-swatch-terminal"},{value:"glass",label:"Glass",className:"theme-swatch-glass"},{value:"glass-silver",label:"Glass Silver",className:"theme-swatch-glass-silver"},{value:"horizon",label:"Horizon",className:"theme-swatch-horizon"},{value:"vitesse",label:"Vitesse",className:"theme-swatch-vitesse"},{value:"outrun",label:"Outrun",className:"theme-swatch-outrun"},{value:"snazzy",label:"Snazzy",className:"theme-swatch-snazzy"},{value:"porple",label:"Porple",className:"theme-swatch-porple"},{value:"espresso",label:"Espresso",className:"theme-swatch-espresso"},{value:"mars",label:"Mars",className:"theme-swatch-mars"},{value:"poimandres",label:"Poimandres",className:"theme-swatch-poimandres"},{value:"ember",label:"Ember",className:"theme-swatch-ember"},{value:"rust",label:"Rust",className:"theme-swatch-rust"},{value:"copper",label:"Copper",className:"theme-swatch-copper"},{value:"foundry",label:"Foundry",className:"theme-swatch-foundry"},{value:"carbon",label:"Carbon",className:"theme-swatch-carbon"},{value:"sandstone",label:"Sandstone",className:"theme-swatch-sandstone"},{value:"lagoon",label:"Lagoon",className:"theme-swatch-lagoon"},{value:"frost",label:"Frost",className:"theme-swatch-frost"},{value:"lavender",label:"Lavender",className:"theme-swatch-lavender"},{value:"neon-bloom",label:"Neon Bloom",className:"theme-swatch-neon-bloom"},{value:"sepia",label:"Sepia",className:"theme-swatch-sepia"},{value:"shadcn",label:"Shadcn",className:"theme-swatch-shadcn"},{value:"shadcn-ember",label:"Shadcn Ember (Default)",className:"theme-swatch-shadcn-ember"},{value:"shadcn-custom",label:"Shadcn Custom",className:"theme-swatch-shadcn-custom"},{value:"shadcn-blue",label:"Shadcn Blue",className:"theme-swatch-shadcn-blue"},{value:"shadcn-green",label:"Shadcn Green",className:"theme-swatch-shadcn-green"},{value:"shadcn-red",label:"Shadcn Red",className:"theme-swatch-shadcn-red"},{value:"shadcn-purple",label:"Shadcn Purple",className:"theme-swatch-shadcn-purple"},{value:"shadcn-pink",label:"Shadcn Pink",className:"theme-swatch-shadcn-pink"},{value:"shadcn-orange",label:"Shadcn Orange",className:"theme-swatch-shadcn-orange"},{value:"shadcn-yellow",label:"Shadcn Yellow",className:"theme-swatch-shadcn-yellow"},{value:"shadcn-mono-red",label:"Shadcn Mono Red",className:"theme-swatch-shadcn-mono-red"},{value:"shadcn-mono-blue",label:"Shadcn Mono Blue",className:"theme-swatch-shadcn-mono-blue"},{value:"shadcn-mono-green",label:"Shadcn Mono Green",className:"theme-swatch-shadcn-mono-green"},{value:"shadcn-mono-purple",label:"Shadcn Mono Purple",className:"theme-swatch-shadcn-mono-purple"},{value:"shadcn-mono-pink",label:"Shadcn Mono Pink",className:"theme-swatch-shadcn-mono-pink"},{value:"shadcn-mono-orange",label:"Shadcn Mono Orange",className:"theme-swatch-shadcn-mono-orange"},{value:"shadcn-mono-yellow",label:"Shadcn Mono Yellow",className:"theme-swatch-shadcn-mono-yellow"},{value:"shadcn-black",label:"Shadcn Black",className:"theme-swatch-shadcn-black"},{value:"shadcn-gray",label:"Shadcn Gray",className:"theme-swatch-shadcn-gray"},{value:"shadcn-gray-blue",label:"Shadcn Gray Blue",className:"theme-swatch-shadcn-gray-blue"}];function E(t){const l=t.trim();if(/^#[\da-f]{6}$/i.test(l))return l;if(/^#[\da-f]{3}$/i.test(l)){const[,h,s,c]=l;return`#${h}${h}${s}${s}${c}${c}`}return"#000000"}function G({value:t={},onChange:l,resolvedThemeMode:h="dark"}){const{t:s}=C("app"),[c,w]=r.useState(!1),m=r.useId(),d=r.useMemo(()=>v(t),[t]),u=(e,o)=>{l(v({...d,[e]:o}))},i=c?s("theme.shadcnCustom.collapse","Collapse custom colors"):s("theme.shadcnCustom.show","Show custom colors"),g=c?y:S;return a.jsxs("section",{className:"shadcn-color-picker card","data-testid":"shadcn-color-picker","aria-labelledby":"shadcn-color-picker-title",children:[a.jsxs("div",{className:"shadcn-color-picker-header",children:[a.jsxs("div",{className:"shadcn-color-picker-heading",children:[a.jsx("h3",{id:"shadcn-color-picker-title",className:"shadcn-color-picker-title",children:s("theme.shadcnCustom.title","Custom shadcn colors")}),a.jsx("p",{className:"shadcn-color-picker-description",children:s("theme.shadcnCustom.description","Override shadcn design tokens with hex colors. Blank tokens use the theme defaults.")})]}),a.jsx("button",{type:"button",className:"btn btn-icon btn-sm shadcn-color-picker-toggle","aria-expanded":c,"aria-controls":m,"aria-label":i,title:i,onClick:()=>w(e=>!e),children:a.jsx(g,{size:16,"aria-hidden":"true"})})]}),c?a.jsxs("div",{id:m,className:"shadcn-color-picker-controls-panel","data-testid":"shadcn-color-picker-controls",children:[a.jsx("div",{className:"shadcn-color-picker-actions",children:a.jsx("button",{type:"button",className:"btn btn-sm",onClick:()=>l({}),children:s("theme.shadcnCustom.reset","Reset custom colors")})}),a.jsx("div",{className:"shadcn-color-picker-grid",children:x.map(e=>{const o=f(e,h),b=d[e.cssVar]??o,p=`shadcn-color-${e.cssVar.replace(/^--/,"").replace(/[^a-z0-9]+/gi,"-")}`;return a.jsxs("div",{className:"shadcn-color-picker-row","data-testid":`shadcn-color-${e.cssVar}`,children:[a.jsxs("label",{className:"shadcn-color-picker-label",htmlFor:p,children:[a.jsx("span",{children:s(`theme.shadcnCustom.token.${e.cssVar}`,e.label)}),a.jsx("code",{children:e.cssVar})]}),a.jsxs("div",{className:"shadcn-color-picker-controls",children:[a.jsx("input",{"aria-label":s("theme.shadcnCustom.colorInput","Pick {{label}} color",{label:e.label}),className:"shadcn-color-picker-native",type:"color",value:E(b),onChange:n=>u(e.cssVar,n.currentTarget.value)}),a.jsx("input",{id:p,"aria-label":s("theme.shadcnCustom.hexInput","{{label}} hex color",{label:e.label}),className:"input shadcn-color-picker-hex",type:"text",inputMode:"text",spellCheck:!1,value:b,onChange:n=>u(e.cssVar,n.currentTarget.value)})]})]},e.cssVar)})})]}):null]})}export{D as C,j as M,O as S,$ as T,G as a};
@@ -1 +1 @@
1
- import{r as a,j as s}from"./vendor-react-SZ_qB27O.js";import{i as ms,j as us,t as vs,k as hs,l as gs,n as bs,V as ws,Z as xs,X as q,R as fs,o as js,C as ps,L as A,p as H,q as G,M as J}from"./index-Y-vyXPPN.js";import{u as Ns}from"./vendor-i18n-GF3RlKbq.js";import"./vendor-reactflow-CnI7NMXG.js";import"./vendor-xterm-BNq00GSj.js";import"./vendor-codemirror-jBKmHyH0.js";const Ss=new Set([".md",".markdown",".mdx"]);function Cs(r){const d=r.toLowerCase(),j=d.lastIndexOf(".");return j<0?!1:Ss.has(d.slice(j))}function zs({projectId:r,addToast:d,onClose:j}){const{t:e}=Ns("app"),[k,p]=a.useState([]),[F,T]=a.useState(!0),[Y,V]=a.useState(!1),[I,D]=a.useState(null),[_,ss]=a.useState([]),[g,ls]=a.useState(""),[M,B]=a.useState(null),[c,N]=a.useState(null),[b,S]=a.useState(null),[es,K]=a.useState(!1),[Q,C]=a.useState(null),[y,w]=a.useState(null),[u,v]=a.useState(null),[is,z]=a.useState(!1),[$,h]=a.useState(null),m=a.useRef(null),[P,as]=a.useState(""),O=g.trim()?k.filter(l=>l.name.toLowerCase().includes(g.toLowerCase())||l.relativePath.toLowerCase().includes(g.toLowerCase())):k,x=a.useCallback(async()=>{T(!0);try{const l=await ms(r);p(l)}catch(l){const t=l instanceof Error?l.message:e("skills.loadDiscoveredError","Failed to load discovered skills");d(t,"error")}finally{T(!1)}},[r,d]),f=a.useCallback(async l=>{const t=i=>{if(!i||typeof i!="object")return!1;const n=i;if(typeof n.status=="number"&&n.status>=500)return!0;if(n.details&&typeof n.details=="object"){const L=n.details;if(typeof L.code=="string"&&L.code.startsWith("upstream_"))return!0}const o=i;return typeof o.error=="string"&&typeof o.code=="string"};V(!0),D(null);try{const i=await us(l,20,r);ss(i.entries)}catch(i){if(t(i))D(e("skills.catalogUnavailable","Catalog is temporarily unavailable. Please try again later."));else{const n=i instanceof Error?i.message:e("skills.loadCatalogError","Failed to load catalog");D(n)}}finally{V(!1)}},[r]);a.useEffect(()=>{x(),f("")},[x,f]);const ts=a.useCallback(l=>{ls(l),m.current&&clearTimeout(m.current),m.current=setTimeout(()=>{as(l),m.current=null},300)},[]);a.useEffect(()=>()=>{m.current&&(clearTimeout(m.current),m.current=null)},[]),a.useEffect(()=>{f(P)},[P,f]);const ns=a.useCallback(async(l,t)=>{const i=!t;p(n=>n.map(o=>o.id===l?{...o,toggling:!0}:o));try{await vs(l,i,r),p(n=>n.map(o=>o.id===l?{...o,enabled:i,toggling:!1}:o)),d(e(`skills.${i?"enabled":"disabled"}`,i?"Skill enabled":"Skill disabled"),"success")}catch(n){p(L=>L.map(R=>R.id===l?{...R,toggling:!1}:R));const o=n instanceof Error?n.message:e("skills.toggleError","Failed to toggle skill");d(e("skills.toggleFailed","Failed to toggle skill: {{message}}",{message:o}),"error")}},[r,d]),cs=a.useCallback(async l=>{const t=l.repo?.trim();if(!(!t||M===l.id)){B(l.id);try{await hs(t,l.slug||l.name,r),d(e("skills.installSuccess","Installed {{name}}",{name:l.name}),"success"),await x()}catch(i){const n=i instanceof Error?i.message:e("skills.installError","Failed to install skill");d(e("skills.installFailed","Failed to install {{name}}: {{message}}",{name:l.name,message:n}),"error")}finally{B(i=>i===l.id?null:i)}}},[d,M,x,r]),E=a.useCallback(async l=>{K(!0),C(null),S(null),w(null),v(null),h(null);try{const t=await gs(l,r);S(t)}catch(t){const i=t instanceof Error?t.message:e("skills.loadContentError","Failed to load skill content");C(i)}finally{K(!1)}},[r]),U=a.useCallback((l,t)=>{if(!(t&&t.target.closest(".skills-view-item-toggle"))){if(c===l){N(null),S(null),C(null),w(null),v(null),h(null);return}N(l),E(l)}},[c,E]),os=a.useCallback(l=>{c!==l&&N(l),E(l)},[E,c]),W=a.useCallback(async(l,t)=>{w(t),v(null),h(null),z(!0);try{const i=await bs(l,t,r);v(i)}catch(i){const n=i instanceof Error?i.message:e("skills.loadFileError","Failed to load file");h(n)}finally{z(!1)}},[r]),rs=a.useCallback(()=>{w(null),v(null),h(null),z(!1)},[]),X=a.useCallback(()=>{N(null),S(null),C(null),w(null),v(null),h(null)},[]),ds=a.useMemo(()=>k.find(l=>l.id===c)??null,[k,c]),Z=()=>!b||b.files.length===0?null:s.jsxs("div",{className:"skills-view-detail-files","data-testid":"skill-files",children:[s.jsxs("span",{className:"skills-view-detail-files-label",children:[e("skills.filesLabel","Files"),":"]}),b.files.map(l=>{if(l.type==="directory")return s.jsxs("span",{className:"badge badge--sm skills-view-detail-file--dir",children:[l.name,"/"]},l.relativePath);const t=y===l.relativePath;return s.jsx("button",{type:"button","data-testid":"skill-file-item",className:`badge badge--sm skills-view-detail-file${t?" skills-view-detail-file--active":""}`,onClick:()=>c&&void W(c,l.relativePath),"aria-pressed":t,"aria-label":e("skills.viewFile","View {{name}}",{name:l.name}),children:l.name},l.relativePath)})]}),ks=()=>c?es?s.jsxs("div",{className:"skills-view-detail-loading",children:[s.jsx(A,{size:16,className:"spin"}),e("skills.loadingContent","Loading skill content...")]}):Q?s.jsxs("div",{className:"skills-view-detail-error",children:[s.jsx(G,{size:14}),s.jsx("span",{children:Q}),s.jsx("button",{className:"btn btn-sm",onClick:()=>os(c),children:e("common.retry","Retry")})]}):b?y!==null?s.jsxs("div",{className:"skills-view-file-viewer","data-testid":"skill-file-viewer",children:[s.jsxs("div",{className:"skills-view-file-viewer-bar",children:[s.jsxs("button",{type:"button",className:"btn btn-sm skills-view-file-back",onClick:rs,"data-testid":"skill-file-back","aria-label":e("skills.backToSkillMd","Back to SKILL.md"),children:[s.jsx(H,{size:14}),e("skills.backToSkillMd","Back to SKILL.md")]}),s.jsx("span",{className:"skills-view-file-viewer-name",children:y})]}),is?s.jsxs("div",{className:"skills-view-detail-loading",children:[s.jsx(A,{size:16,className:"spin"}),e("skills.loadingFile","Loading file...")]}):$?s.jsxs("div",{className:"skills-view-detail-error",children:[s.jsx(G,{size:14}),s.jsx("span",{children:$}),s.jsx("button",{className:"btn btn-sm",onClick:()=>c&&void W(c,y),children:e("common.retry","Retry")})]}):u&&!u.isText?s.jsx("div",{className:"skills-view-detail-empty",children:e("skills.fileNotPreviewable","This file cannot be previewed.")}):u?Cs(u.relativePath)?s.jsx(J,{content:u.content||e("skills.emptyFile","(Empty file)"),className:"skills-view-detail-markdown",testId:"skills-view-detail-markdown"}):s.jsx("pre",{className:"skills-view-detail-content",children:u.content||e("skills.emptyFile","(Empty file)")}):null,Z()]}):s.jsxs(s.Fragment,{children:[s.jsx(J,{content:b.skillMd||e("skills.noSkillMd","(No SKILL.md found)"),className:"skills-view-detail-markdown",testId:"skills-view-detail-markdown"}),Z()]}):null:s.jsx("div",{className:"skills-view-detail-placeholder","data-testid":"skills-detail-empty",children:e("skills.selectASkill","Select a skill to view its details")});return s.jsxs("div",{className:"skills-view","data-testid":"skills-view","data-selected":c?"true":"false",children:[s.jsx(ws,{icon:xs,title:e("skills.title","Skills"),actions:s.jsxs(s.Fragment,{children:[s.jsxs("span",{className:"skills-view-count","aria-label":e("skills.discoveredCount","{{count}} discovered skills",{count:k.length}),children:[k.length," ",e("skills.discovered","discovered")]}),s.jsx("button",{className:"btn-icon skills-view-close touch-target",onClick:j,"aria-label":e("skills.closeView","Close skills view"),children:s.jsx(q,{size:16})}),s.jsxs("button",{className:"btn btn-sm",onClick:()=>void x(),disabled:F,children:[s.jsx(fs,{size:14,className:F?"spin":""}),e("common.refresh","Refresh")]})]})}),s.jsxs("div",{className:"skills-view-body",children:[s.jsx("div",{className:"skills-view__list","data-testid":"skills-list",children:s.jsxs("div",{className:"skills-view-content",children:[s.jsx("div",{className:"skills-view-search",children:s.jsx("input",{type:"text",className:"form-input",placeholder:e("skills.searchPlaceholder","Search skills..."),value:g,onChange:l=>ts(l.target.value),"aria-label":e("skills.searchLabel","Search skills")})}),s.jsxs("section",{className:"skills-view-section","aria-labelledby":"discovered-skills-title",children:[s.jsx("h3",{id:"discovered-skills-title",className:"skills-view-section-title",children:e("skills.discoveredSection","Discovered Skills")}),F?s.jsxs("div",{className:"skills-view-loading",children:[s.jsx("span",{className:"spinner"}),e("skills.loadingDiscovered","Loading discovered skills...")]}):k.length===0?s.jsx("div",{className:"skills-view-empty",children:s.jsx("p",{children:e("skills.noDiscovered","No skills discovered in this project.")})}):O.length===0?s.jsx("div",{className:"skills-view-empty",children:s.jsx("p",{children:e("skills.noMatchingDiscovered","No discovered skills match your search.")})}):s.jsx("div",{className:"skills-view-list",children:O.map(l=>{const t=c===l.id;return s.jsx("div",{children:s.jsxs("div",{className:`skills-view-item${t?" skills-view-item--selected":""}`,onClick:i=>U(l.id,i),role:"button",tabIndex:0,onKeyDown:i=>{(i.key==="Enter"||i.key===" ")&&(i.preventDefault(),U(l.id))},"aria-expanded":t,"aria-label":e("skills.viewDetails","View details for {{name}}",{name:l.name}),children:[s.jsxs("div",{className:"skills-view-item-info",children:[s.jsxs("span",{className:"skills-view-item-name",children:[t?s.jsx(js,{size:14}):s.jsx(ps,{size:14}),s.jsx("span",{className:"skills-view-item-name-text",children:l.name})]}),s.jsx("span",{className:"skills-view-item-path",children:l.relativePath}),s.jsx("span",{className:"skills-view-item-source",children:l.metadata.source})]}),s.jsxs("label",{className:"skills-view-item-toggle",onClick:i=>i.stopPropagation(),children:[s.jsx("input",{type:"checkbox",checked:l.enabled,disabled:l.toggling,onChange:()=>void ns(l.id,l.enabled),"aria-label":e(`skills.${l.enabled?"disable":"enable"}Skill`,l.enabled?"Disable {{name}}":"Enable {{name}}",{name:l.name})}),s.jsx("span",{className:"skills-view-toggle-slider"})]})]})},l.id)})})]}),s.jsxs("section",{className:"skills-view-section","aria-labelledby":"catalog-title",children:[s.jsx("h3",{id:"catalog-title",className:"skills-view-section-title",children:e("skills.catalogSection","Skills Catalog")}),I?s.jsxs("div",{className:"skills-view-error",children:[s.jsx("p",{children:I}),s.jsx("button",{className:"btn btn-sm",onClick:()=>void f(P),children:e("common.tryAgain","Try Again")})]}):Y?s.jsxs("div",{className:"skills-view-loading",children:[s.jsx("span",{className:"spinner"}),e("skills.loadingCatalog","Loading catalog...")]}):_.length===0?s.jsx("div",{className:"skills-view-empty",children:g?s.jsx("p",{children:e("skills.noMatchingSearch","No skills match your search.")}):s.jsx("p",{children:e("skills.noCatalogAvailable","No skills available in the catalog.")})}):s.jsx("div",{className:"skills-view-grid",children:_.map(l=>{const i=!!l.repo?.trim(),n=M===l.id;return s.jsxs("div",{className:"skills-view-card",children:[s.jsxs("div",{className:"skills-view-card-header",children:[s.jsx("h4",{className:"skills-view-card-title",children:l.name}),i?s.jsxs("button",{type:"button",className:"btn btn-sm skills-view-card-install",onClick:()=>void cs(l),disabled:n,"aria-label":e("skills.installSkill","Install {{name}}",{name:l.name}),children:[n?s.jsx(A,{size:14,className:"spin"}):null,n?e("skills.installing","Installing…"):e("skills.install","Install")]}):null]}),l.description&&s.jsx("p",{className:"skills-view-card-description",children:l.description}),l.tags&&l.tags.length>0&&s.jsx("div",{className:"skills-view-card-tags",children:l.tags.map(o=>s.jsx("span",{className:"badge badge--sm",children:o},o))}),l.installs!==void 0&&s.jsx("span",{className:"skills-view-card-installs",children:e("skills.installsCount","{{value}} installs",{value:l.installs.toLocaleString()})})]},l.id)})})]})]})}),s.jsxs("div",{className:"skills-view__detail","data-testid":"skill-detail",children:[s.jsxs("div",{className:"skills-view-detail-header",children:[s.jsx("button",{type:"button",className:"btn btn-sm btn-icon skills-view-detail-back",onClick:X,"aria-label":e("skills.backToList","Back to skills"),title:e("skills.backToList","Back to skills"),"data-testid":"skills-detail-back",children:s.jsx(H,{size:14})}),s.jsx("span",{className:"skills-view-detail-title",children:ds?.name??e("skills.detailTitle","Skill")}),s.jsxs("button",{className:"btn btn-sm skills-view-detail-close",onClick:X,disabled:!c,"aria-label":e("skills.closeDetail","Close skill detail"),children:[s.jsx(q,{size:14}),e("common.close","Close")]})]}),s.jsx("div",{className:"skills-view-detail-body",children:ks()})]})]})]})}export{zs as SkillsView};
1
+ import{r as a,j as s}from"./vendor-react-SZ_qB27O.js";import{i as ms,j as us,t as vs,k as hs,l as gs,n as bs,V as ws,Z as xs,X as q,R as fs,o as js,C as ps,L as A,p as H,q as G,M as J}from"./index-CEUULqTR.js";import{u as Ns}from"./vendor-i18n-GF3RlKbq.js";import"./vendor-reactflow-CnI7NMXG.js";import"./vendor-xterm-BNq00GSj.js";import"./vendor-codemirror-jBKmHyH0.js";const Ss=new Set([".md",".markdown",".mdx"]);function Cs(r){const d=r.toLowerCase(),j=d.lastIndexOf(".");return j<0?!1:Ss.has(d.slice(j))}function zs({projectId:r,addToast:d,onClose:j}){const{t:e}=Ns("app"),[k,p]=a.useState([]),[F,T]=a.useState(!0),[Y,V]=a.useState(!1),[I,D]=a.useState(null),[_,ss]=a.useState([]),[g,ls]=a.useState(""),[M,B]=a.useState(null),[c,N]=a.useState(null),[b,S]=a.useState(null),[es,K]=a.useState(!1),[Q,C]=a.useState(null),[y,w]=a.useState(null),[u,v]=a.useState(null),[is,z]=a.useState(!1),[$,h]=a.useState(null),m=a.useRef(null),[P,as]=a.useState(""),O=g.trim()?k.filter(l=>l.name.toLowerCase().includes(g.toLowerCase())||l.relativePath.toLowerCase().includes(g.toLowerCase())):k,x=a.useCallback(async()=>{T(!0);try{const l=await ms(r);p(l)}catch(l){const t=l instanceof Error?l.message:e("skills.loadDiscoveredError","Failed to load discovered skills");d(t,"error")}finally{T(!1)}},[r,d]),f=a.useCallback(async l=>{const t=i=>{if(!i||typeof i!="object")return!1;const n=i;if(typeof n.status=="number"&&n.status>=500)return!0;if(n.details&&typeof n.details=="object"){const L=n.details;if(typeof L.code=="string"&&L.code.startsWith("upstream_"))return!0}const o=i;return typeof o.error=="string"&&typeof o.code=="string"};V(!0),D(null);try{const i=await us(l,20,r);ss(i.entries)}catch(i){if(t(i))D(e("skills.catalogUnavailable","Catalog is temporarily unavailable. Please try again later."));else{const n=i instanceof Error?i.message:e("skills.loadCatalogError","Failed to load catalog");D(n)}}finally{V(!1)}},[r]);a.useEffect(()=>{x(),f("")},[x,f]);const ts=a.useCallback(l=>{ls(l),m.current&&clearTimeout(m.current),m.current=setTimeout(()=>{as(l),m.current=null},300)},[]);a.useEffect(()=>()=>{m.current&&(clearTimeout(m.current),m.current=null)},[]),a.useEffect(()=>{f(P)},[P,f]);const ns=a.useCallback(async(l,t)=>{const i=!t;p(n=>n.map(o=>o.id===l?{...o,toggling:!0}:o));try{await vs(l,i,r),p(n=>n.map(o=>o.id===l?{...o,enabled:i,toggling:!1}:o)),d(e(`skills.${i?"enabled":"disabled"}`,i?"Skill enabled":"Skill disabled"),"success")}catch(n){p(L=>L.map(R=>R.id===l?{...R,toggling:!1}:R));const o=n instanceof Error?n.message:e("skills.toggleError","Failed to toggle skill");d(e("skills.toggleFailed","Failed to toggle skill: {{message}}",{message:o}),"error")}},[r,d]),cs=a.useCallback(async l=>{const t=l.repo?.trim();if(!(!t||M===l.id)){B(l.id);try{await hs(t,l.slug||l.name,r),d(e("skills.installSuccess","Installed {{name}}",{name:l.name}),"success"),await x()}catch(i){const n=i instanceof Error?i.message:e("skills.installError","Failed to install skill");d(e("skills.installFailed","Failed to install {{name}}: {{message}}",{name:l.name,message:n}),"error")}finally{B(i=>i===l.id?null:i)}}},[d,M,x,r]),E=a.useCallback(async l=>{K(!0),C(null),S(null),w(null),v(null),h(null);try{const t=await gs(l,r);S(t)}catch(t){const i=t instanceof Error?t.message:e("skills.loadContentError","Failed to load skill content");C(i)}finally{K(!1)}},[r]),U=a.useCallback((l,t)=>{if(!(t&&t.target.closest(".skills-view-item-toggle"))){if(c===l){N(null),S(null),C(null),w(null),v(null),h(null);return}N(l),E(l)}},[c,E]),os=a.useCallback(l=>{c!==l&&N(l),E(l)},[E,c]),W=a.useCallback(async(l,t)=>{w(t),v(null),h(null),z(!0);try{const i=await bs(l,t,r);v(i)}catch(i){const n=i instanceof Error?i.message:e("skills.loadFileError","Failed to load file");h(n)}finally{z(!1)}},[r]),rs=a.useCallback(()=>{w(null),v(null),h(null),z(!1)},[]),X=a.useCallback(()=>{N(null),S(null),C(null),w(null),v(null),h(null)},[]),ds=a.useMemo(()=>k.find(l=>l.id===c)??null,[k,c]),Z=()=>!b||b.files.length===0?null:s.jsxs("div",{className:"skills-view-detail-files","data-testid":"skill-files",children:[s.jsxs("span",{className:"skills-view-detail-files-label",children:[e("skills.filesLabel","Files"),":"]}),b.files.map(l=>{if(l.type==="directory")return s.jsxs("span",{className:"badge badge--sm skills-view-detail-file--dir",children:[l.name,"/"]},l.relativePath);const t=y===l.relativePath;return s.jsx("button",{type:"button","data-testid":"skill-file-item",className:`badge badge--sm skills-view-detail-file${t?" skills-view-detail-file--active":""}`,onClick:()=>c&&void W(c,l.relativePath),"aria-pressed":t,"aria-label":e("skills.viewFile","View {{name}}",{name:l.name}),children:l.name},l.relativePath)})]}),ks=()=>c?es?s.jsxs("div",{className:"skills-view-detail-loading",children:[s.jsx(A,{size:16,className:"spin"}),e("skills.loadingContent","Loading skill content...")]}):Q?s.jsxs("div",{className:"skills-view-detail-error",children:[s.jsx(G,{size:14}),s.jsx("span",{children:Q}),s.jsx("button",{className:"btn btn-sm",onClick:()=>os(c),children:e("common.retry","Retry")})]}):b?y!==null?s.jsxs("div",{className:"skills-view-file-viewer","data-testid":"skill-file-viewer",children:[s.jsxs("div",{className:"skills-view-file-viewer-bar",children:[s.jsxs("button",{type:"button",className:"btn btn-sm skills-view-file-back",onClick:rs,"data-testid":"skill-file-back","aria-label":e("skills.backToSkillMd","Back to SKILL.md"),children:[s.jsx(H,{size:14}),e("skills.backToSkillMd","Back to SKILL.md")]}),s.jsx("span",{className:"skills-view-file-viewer-name",children:y})]}),is?s.jsxs("div",{className:"skills-view-detail-loading",children:[s.jsx(A,{size:16,className:"spin"}),e("skills.loadingFile","Loading file...")]}):$?s.jsxs("div",{className:"skills-view-detail-error",children:[s.jsx(G,{size:14}),s.jsx("span",{children:$}),s.jsx("button",{className:"btn btn-sm",onClick:()=>c&&void W(c,y),children:e("common.retry","Retry")})]}):u&&!u.isText?s.jsx("div",{className:"skills-view-detail-empty",children:e("skills.fileNotPreviewable","This file cannot be previewed.")}):u?Cs(u.relativePath)?s.jsx(J,{content:u.content||e("skills.emptyFile","(Empty file)"),className:"skills-view-detail-markdown",testId:"skills-view-detail-markdown"}):s.jsx("pre",{className:"skills-view-detail-content",children:u.content||e("skills.emptyFile","(Empty file)")}):null,Z()]}):s.jsxs(s.Fragment,{children:[s.jsx(J,{content:b.skillMd||e("skills.noSkillMd","(No SKILL.md found)"),className:"skills-view-detail-markdown",testId:"skills-view-detail-markdown"}),Z()]}):null:s.jsx("div",{className:"skills-view-detail-placeholder","data-testid":"skills-detail-empty",children:e("skills.selectASkill","Select a skill to view its details")});return s.jsxs("div",{className:"skills-view","data-testid":"skills-view","data-selected":c?"true":"false",children:[s.jsx(ws,{icon:xs,title:e("skills.title","Skills"),actions:s.jsxs(s.Fragment,{children:[s.jsxs("span",{className:"skills-view-count","aria-label":e("skills.discoveredCount","{{count}} discovered skills",{count:k.length}),children:[k.length," ",e("skills.discovered","discovered")]}),s.jsx("button",{className:"btn-icon skills-view-close touch-target",onClick:j,"aria-label":e("skills.closeView","Close skills view"),children:s.jsx(q,{size:16})}),s.jsxs("button",{className:"btn btn-sm",onClick:()=>void x(),disabled:F,children:[s.jsx(fs,{size:14,className:F?"spin":""}),e("common.refresh","Refresh")]})]})}),s.jsxs("div",{className:"skills-view-body",children:[s.jsx("div",{className:"skills-view__list","data-testid":"skills-list",children:s.jsxs("div",{className:"skills-view-content",children:[s.jsx("div",{className:"skills-view-search",children:s.jsx("input",{type:"text",className:"form-input",placeholder:e("skills.searchPlaceholder","Search skills..."),value:g,onChange:l=>ts(l.target.value),"aria-label":e("skills.searchLabel","Search skills")})}),s.jsxs("section",{className:"skills-view-section","aria-labelledby":"discovered-skills-title",children:[s.jsx("h3",{id:"discovered-skills-title",className:"skills-view-section-title",children:e("skills.discoveredSection","Discovered Skills")}),F?s.jsxs("div",{className:"skills-view-loading",children:[s.jsx("span",{className:"spinner"}),e("skills.loadingDiscovered","Loading discovered skills...")]}):k.length===0?s.jsx("div",{className:"skills-view-empty",children:s.jsx("p",{children:e("skills.noDiscovered","No skills discovered in this project.")})}):O.length===0?s.jsx("div",{className:"skills-view-empty",children:s.jsx("p",{children:e("skills.noMatchingDiscovered","No discovered skills match your search.")})}):s.jsx("div",{className:"skills-view-list",children:O.map(l=>{const t=c===l.id;return s.jsx("div",{children:s.jsxs("div",{className:`skills-view-item${t?" skills-view-item--selected":""}`,onClick:i=>U(l.id,i),role:"button",tabIndex:0,onKeyDown:i=>{(i.key==="Enter"||i.key===" ")&&(i.preventDefault(),U(l.id))},"aria-expanded":t,"aria-label":e("skills.viewDetails","View details for {{name}}",{name:l.name}),children:[s.jsxs("div",{className:"skills-view-item-info",children:[s.jsxs("span",{className:"skills-view-item-name",children:[t?s.jsx(js,{size:14}):s.jsx(ps,{size:14}),s.jsx("span",{className:"skills-view-item-name-text",children:l.name})]}),s.jsx("span",{className:"skills-view-item-path",children:l.relativePath}),s.jsx("span",{className:"skills-view-item-source",children:l.metadata.source})]}),s.jsxs("label",{className:"skills-view-item-toggle",onClick:i=>i.stopPropagation(),children:[s.jsx("input",{type:"checkbox",checked:l.enabled,disabled:l.toggling,onChange:()=>void ns(l.id,l.enabled),"aria-label":e(`skills.${l.enabled?"disable":"enable"}Skill`,l.enabled?"Disable {{name}}":"Enable {{name}}",{name:l.name})}),s.jsx("span",{className:"skills-view-toggle-slider"})]})]})},l.id)})})]}),s.jsxs("section",{className:"skills-view-section","aria-labelledby":"catalog-title",children:[s.jsx("h3",{id:"catalog-title",className:"skills-view-section-title",children:e("skills.catalogSection","Skills Catalog")}),I?s.jsxs("div",{className:"skills-view-error",children:[s.jsx("p",{children:I}),s.jsx("button",{className:"btn btn-sm",onClick:()=>void f(P),children:e("common.tryAgain","Try Again")})]}):Y?s.jsxs("div",{className:"skills-view-loading",children:[s.jsx("span",{className:"spinner"}),e("skills.loadingCatalog","Loading catalog...")]}):_.length===0?s.jsx("div",{className:"skills-view-empty",children:g?s.jsx("p",{children:e("skills.noMatchingSearch","No skills match your search.")}):s.jsx("p",{children:e("skills.noCatalogAvailable","No skills available in the catalog.")})}):s.jsx("div",{className:"skills-view-grid",children:_.map(l=>{const i=!!l.repo?.trim(),n=M===l.id;return s.jsxs("div",{className:"skills-view-card",children:[s.jsxs("div",{className:"skills-view-card-header",children:[s.jsx("h4",{className:"skills-view-card-title",children:l.name}),i?s.jsxs("button",{type:"button",className:"btn btn-sm skills-view-card-install",onClick:()=>void cs(l),disabled:n,"aria-label":e("skills.installSkill","Install {{name}}",{name:l.name}),children:[n?s.jsx(A,{size:14,className:"spin"}):null,n?e("skills.installing","Installing…"):e("skills.install","Install")]}):null]}),l.description&&s.jsx("p",{className:"skills-view-card-description",children:l.description}),l.tags&&l.tags.length>0&&s.jsx("div",{className:"skills-view-card-tags",children:l.tags.map(o=>s.jsx("span",{className:"badge badge--sm",children:o},o))}),l.installs!==void 0&&s.jsx("span",{className:"skills-view-card-installs",children:e("skills.installsCount","{{value}} installs",{value:l.installs.toLocaleString()})})]},l.id)})})]})]})}),s.jsxs("div",{className:"skills-view__detail","data-testid":"skill-detail",children:[s.jsxs("div",{className:"skills-view-detail-header",children:[s.jsx("button",{type:"button",className:"btn btn-sm btn-icon skills-view-detail-back",onClick:X,"aria-label":e("skills.backToList","Back to skills"),title:e("skills.backToList","Back to skills"),"data-testid":"skills-detail-back",children:s.jsx(H,{size:14})}),s.jsx("span",{className:"skills-view-detail-title",children:ds?.name??e("skills.detailTitle","Skill")}),s.jsxs("button",{className:"btn btn-sm skills-view-detail-close",onClick:X,disabled:!c,"aria-label":e("skills.closeDetail","Close skill detail"),children:[s.jsx(q,{size:14}),e("common.close","Close")]})]}),s.jsx("div",{className:"skills-view-detail-body",children:ks()})]})]})]})}export{zs as SkillsView};
@@ -1,4 +1,4 @@
1
- import{r as l,j as e}from"./vendor-react-SZ_qB27O.js";import{c as Rt,ay as ft,az as ht,aA as Ot,bg as _t,bh as Pt,bi as Ut,bj as Kt,bk as Bt,bl as Vt,bm as Xt,bn as zt,aD as Gt,ae as Wt,bo as qt,bp as Z,bq as xt,L as Ht,P as gt,G as tt,X as et,br as vt,I as Lt,J as yt,bs as Jt,ad as Yt,o as Qt,bt as Zt,bu as jt,al as te}from"./index-Y-vyXPPN.js";import{u as kt}from"./vendor-i18n-GF3RlKbq.js";import"./vendor-reactflow-CnI7NMXG.js";import"./vendor-xterm-BNq00GSj.js";import"./vendor-codemirror-jBKmHyH0.js";/**
1
+ import{r as l,j as e}from"./vendor-react-SZ_qB27O.js";import{c as Rt,ay as ft,az as ht,aA as Ot,bg as _t,bh as Pt,bi as Ut,bj as Kt,bk as Bt,bl as Vt,bm as Xt,bn as zt,aD as Gt,ae as Wt,bo as qt,bp as Z,bq as xt,L as Ht,P as gt,G as tt,X as et,br as vt,I as Lt,J as yt,bs as Jt,ad as Yt,o as Qt,bt as Zt,bu as jt,al as te}from"./index-CEUULqTR.js";import{u as kt}from"./vendor-i18n-GF3RlKbq.js";import"./vendor-reactflow-CnI7NMXG.js";import"./vendor-xterm-BNq00GSj.js";import"./vendor-codemirror-jBKmHyH0.js";/**
2
2
  * @license lucide-react v1.7.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.