@vellumai/web 0.11.4 → 0.11.5-staging.2

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 (591) hide show
  1. package/dist/assets/{AnimatePresence-CxaKvfs9.js → AnimatePresence-DkZYJl3q.js} +1 -1
  2. package/dist/assets/{Trans-FBE1EuwL.js → Trans-CM5UUgDt.js} +1 -1
  3. package/dist/assets/{a2a-invite-lHsf93YX.js → a2a-invite-CduLLtki.js} +1 -1
  4. package/dist/assets/{about-page-ByfiFQot.js → about-page-c1mqdjOr.js} +1 -1
  5. package/dist/assets/{account-page-Df1VB34_.js → account-page-CSJOSKzD.js} +1 -1
  6. package/dist/assets/{account-shell-Dk4m-iaE.js → account-shell-WRaiE1O8.js} +1 -1
  7. package/dist/assets/{acp-run-actions-FLArlHEs.js → acp-run-actions-DNNBiPfr.js} +1 -1
  8. package/dist/assets/{acp-run-detail-panel-DsqMAPE4.js → acp-run-detail-panel-gR77X6Xm.js} +1 -1
  9. package/dist/assets/{acp-run-store-De5GuSFn.js → acp-run-store-BUcMP80V.js} +1 -1
  10. package/dist/assets/activity-steps-panel-BglLu7wx.js +1 -0
  11. package/dist/assets/{add-credential-modal-vRe51ERD.js → add-credential-modal-DgoBqgwB.js} +1 -1
  12. package/dist/assets/add-credits-modal-BNab_7H9.js +1 -0
  13. package/dist/assets/ai-page-CLAFnWl5.js +1 -0
  14. package/dist/assets/{animate-BhosXxi-.js → animate-1rkqw0bf.js} +1 -1
  15. package/dist/assets/{animated-avatar-DsEiCrtA.js → animated-avatar-Bk5J30oP.js} +1 -1
  16. package/dist/assets/api-ByKY0Cbt.js +1 -0
  17. package/dist/assets/api-DBKgmyno.js +1 -0
  18. package/dist/assets/{api-errors-CASENJGT.js → api-errors-DYGVb-Sh.js} +1 -1
  19. package/dist/assets/api-key-screen-CS0KZgP6.js +1 -0
  20. package/dist/assets/{app-card-CjRGDYCX.js → app-card-C7c3c4l4.js} +1 -1
  21. package/dist/assets/{app-info-CvBesesf.js → app-info-CEe_jK5S.js} +1 -1
  22. package/dist/assets/{archive-redirect-page-LFqfq3Zx.js → archive-redirect-page-DZkHnLmA.js} +1 -1
  23. package/dist/assets/{assistant-feature-flag-store-CNWz-RMv.js → assistant-feature-flag-store-CdXRp9pV.js} +1 -1
  24. package/dist/assets/{assistant-status-panel-BkLYzQAL.js → assistant-status-panel-BogBdYLj.js} +1 -1
  25. package/dist/assets/auth-store-iNnDaLgR.js +2 -0
  26. package/dist/assets/auth-welcome-screen-BoiE47Sg.js +1 -0
  27. package/dist/assets/{avatar-random-B5F8Cp2E.js → avatar-random-C7t2cN3Y.js} +1 -1
  28. package/dist/assets/{avatar-renderer-DSa5eaH2.js → avatar-renderer-DvM-sFyU.js} +1 -1
  29. package/dist/assets/{background-task-actions-rGTNVeqo.js → background-task-actions-D-C9wSSf.js} +1 -1
  30. package/dist/assets/{background-task-detail-panel-DtJ1ZolD.js → background-task-detail-panel-BeXbhHLZ.js} +1 -1
  31. package/dist/assets/{background-task-store-svLgwmNn.js → background-task-store-D3W6TX_2.js} +1 -1
  32. package/dist/assets/billing-page-PuFxEptl.js +3 -0
  33. package/dist/assets/{billing-redirect-page-B6zuKMxb.js → billing-redirect-page-BFDitQeE.js} +1 -1
  34. package/dist/assets/bookmarks-page-DY_CJ4I3.js +1 -0
  35. package/dist/assets/{browser-Ca2R8csw.js → browser--x9YKXWo.js} +2 -2
  36. package/dist/assets/{build-state-laR44jYU.js → build-state-Dtia1Hnq.js} +1 -1
  37. package/dist/assets/{bundle-confirm-page-D7_j_7v3.js → bundle-confirm-page-9Jl2oXni.js} +1 -1
  38. package/dist/assets/{button-VkxVX0DM.js → button-C8CGr0T0.js} +1 -1
  39. package/dist/assets/{capture-error-DiNp24s6.js → capture-error-VBsIaC5d.js} +1 -1
  40. package/dist/assets/{channels-page-route-sLLh-p2k.js → channels-page-route-WZWPUfRo.js} +1 -1
  41. package/dist/assets/chat-QLQLsbFK.js +3 -0
  42. package/dist/assets/{chat-avatar-D7ZBWcZy.js → chat-avatar-DInCdP5z.js} +1 -1
  43. package/dist/assets/chat-markdown-message-JeYI9m3i.js +1 -0
  44. package/dist/assets/chat-z1gK656n.js +1 -0
  45. package/dist/assets/{checkbox-CyG1nZhR.js → checkbox-BWX_Dnge.js} +1 -1
  46. package/dist/assets/checkout-continuation-B-A9SoHt.js +1 -0
  47. package/dist/assets/checkout-page-BYHPD7UJ.js +1 -0
  48. package/dist/assets/checkout-return-target-DnT91-Y_.js +1 -0
  49. package/dist/assets/{client-feature-flag-store-CT2T_Fg7.js → client-feature-flag-store-DuVzcD-V.js} +1 -1
  50. package/dist/assets/{client-perf-BZu5XQCP.js → client-perf-Bg-CBIVj.js} +1 -1
  51. package/dist/assets/{command-palette-B6PZe9A0.js → command-palette-C8JWMyiC.js} +1 -1
  52. package/dist/assets/{command-palette-window-page-BYkkAV88.js → command-palette-window-page-C8vw0yIO.js} +1 -1
  53. package/dist/assets/common-gaw6OefS.js +1 -0
  54. package/dist/assets/community-page-DvR4X6k9.js +1 -0
  55. package/dist/assets/{companion-surface-CZHv2avR.js → companion-surface-Cnmjk-6O.js} +1 -1
  56. package/dist/assets/companion-surface-page-iknPQRTu.js +1 -0
  57. package/dist/assets/composer-settings-B84-FOM1.js +1 -0
  58. package/dist/assets/{confirm-dialog-Drw1adml.js → confirm-dialog-DYmL6FRe.js} +1 -1
  59. package/dist/assets/{connect-page-DiO1EqEC.js → connect-page-CKAizrWr.js} +1 -1
  60. package/dist/assets/{consent-controls-B_zCicqo.js → consent-controls-V9Wca6TV.js} +1 -1
  61. package/dist/assets/{contacts-gateway-CZNNXLeD.js → contacts-gateway-CoPOXTzi.js} +1 -1
  62. package/dist/assets/{contacts-page-route-fUfbhwZ5.js → contacts-page-route-BceswcoE.js} +1 -1
  63. package/dist/assets/conversation-cache-CuEQRyqi.js +1 -0
  64. package/dist/assets/conversation-navigation-CfOyMc6W.js +1 -0
  65. package/dist/assets/conversation-queries-CtAFZgFP.js +1 -0
  66. package/dist/assets/{conversation-selection-4ubh2ui-.js → conversation-selection-ZuF7NVBR.js} +1 -1
  67. package/dist/assets/{copy-to-clipboard-D76_3Coc.js → copy-to-clipboard-yufQqRBL.js} +1 -1
  68. package/dist/assets/{credential-entry-page--HYBfvoW.js → credential-entry-page-B0NYTomQ.js} +1 -1
  69. package/dist/assets/credentials-page-DfOet7SI.js +1 -0
  70. package/dist/assets/{use-avatar-accent-var-DN_cfh4V.js → credit-tiers-Bc9xxLBK.js} +1 -1
  71. package/dist/assets/{csv-preview-T_KT_vef.js → csv-preview-QUU-h2MX.js} +1 -1
  72. package/dist/assets/{danger-zone-redirect-page-BuIG9f9S.js → danger-zone-redirect-page-B_ZMX7ns.js} +1 -1
  73. package/dist/assets/debug-page-DXvFlnqh.js +4 -0
  74. package/dist/assets/{deploy-dialogs-CgicOESj.js → deploy-dialogs-ilUtMpvf.js} +1 -1
  75. package/dist/assets/{deploy-store-dyN183E8.js → deploy-store-C_y0BvwK.js} +1 -1
  76. package/dist/assets/{desktop-voice-activity-D1BSf0I-.js → desktop-voice-activity-B0dHlUep.js} +1 -1
  77. package/dist/assets/{detail-card-Bqnvs6YE.js → detail-card-DwBporBs.js} +1 -1
  78. package/dist/assets/{detail-drawer-j2jaITAL.js → detail-drawer-Di5V_iLf.js} +1 -1
  79. package/dist/assets/{detail-shell-D1UEZCzz.js → detail-shell-CcrQic9y.js} +1 -1
  80. package/dist/assets/developer-page-B_LQmpH7.js +1 -0
  81. package/dist/assets/{devices-redirect-page-BoKYF1E9.js → devices-redirect-page-BD0VY17t.js} +1 -1
  82. package/dist/assets/{diagnostics-CwFqcLv_.js → diagnostics-BcQgahbk.js} +1 -1
  83. package/dist/assets/{dictation-overlay-xS8BRhPs.js → dictation-overlay-BrXujvAw.js} +1 -1
  84. package/dist/assets/dictation-overlay-page-CfGmex7E.js +1 -0
  85. package/dist/assets/dist-BFOJNO7w.js +1 -0
  86. package/dist/assets/{dist-D94ZMew1.js → dist-BsGO-mS7.js} +1 -1
  87. package/dist/assets/{dist-CzN28mbE.js → dist-DN2Wju98.js} +1 -1
  88. package/dist/assets/{dist--4Bbb2u3.js → dist-eCSUXDGk.js} +1 -1
  89. package/dist/assets/{doctor-handoff-store-Cy96Na-O.js → doctor-handoff-store-B_RlFFKC.js} +1 -1
  90. package/dist/assets/{document-viewer-container-BMmSidmj.js → document-viewer-container-D3aPjnj8.js} +2 -2
  91. package/dist/assets/document-viewer-page-CvQXX7Mp.js +1 -0
  92. package/dist/assets/effective-timezone-CrnImpLf.js +1 -0
  93. package/dist/assets/{emails-page-CJM4OS94.js → emails-page-DbAVQ_jC.js} +1 -1
  94. package/dist/assets/{esm-BD6nxr-q.js → esm-4Bnaz5rU.js} +2 -2
  95. package/dist/assets/esm-C4VoH46A.js +1 -0
  96. package/dist/assets/{esm-nl105Ya0.js → esm-CrXbhSov.js} +2 -2
  97. package/dist/assets/{esm-BaEdQNCe.js → esm-DXPZZih3.js} +2 -2
  98. package/dist/assets/esm-DcJxSeV0.js +2 -0
  99. package/dist/assets/{esm-kYXyJ2zw.js → esm-Ddv_MyHw.js} +2 -2
  100. package/dist/assets/{esm-DTIJZw37.js → esm-Do2zrCWJ.js} +2 -2
  101. package/dist/assets/{esm-FpGTFn5W.js → esm-DrXV9mo-.js} +2 -2
  102. package/dist/assets/{external-anchor-CLy6d_za.js → external-anchor-owoORewf.js} +1 -1
  103. package/dist/assets/{eye-bbox-DoGcAx4c.js → eye-bbox-BpNolORP.js} +1 -1
  104. package/dist/assets/feature-flag-catalog-C1y2RUth.js +1 -0
  105. package/dist/assets/feed-item-status-actions-C3JfFvZc.js +1 -0
  106. package/dist/assets/{file-editor-BwdObVSu.js → file-editor-CeYfWNBz.js} +1 -1
  107. package/dist/assets/{file-markdown-C1rEGVrN.js → file-markdown-B9G_TXX-.js} +1 -1
  108. package/dist/assets/{first-run-scope-DdSaiULx.js → first-run-scope-MD-rEgje.js} +1 -1
  109. package/dist/assets/format-usd-BYzA1eMJ.js +1 -0
  110. package/dist/assets/{funnel-events-BP3XPaB5.js → funnel-events-ClGpFDNM.js} +1 -1
  111. package/dist/assets/general-page-CzDlVoNx.js +1 -0
  112. package/dist/assets/{get-memory-stats-SquVhZnd.js → get-memory-stats-U9zVanzc.js} +1 -1
  113. package/dist/assets/{haptics-D3hzTCtH.js → haptics-F-nvqKYf.js} +2 -2
  114. package/dist/assets/hatching-screen-FgNbjXOt.js +1 -0
  115. package/dist/assets/{home-page-route-BSoWksW0.js → home-page-route-C7Aeo-Mg.js} +1 -1
  116. package/dist/assets/hosting-screen-CLVRdDiX.js +1 -0
  117. package/dist/assets/{i18n-C9hRT4Lf.js → i18n-C3bX3mTs.js} +4 -4
  118. package/dist/assets/identity-DyjQj_xm.js +1 -0
  119. package/dist/assets/identity-page-route-CHncFua2.js +7 -0
  120. package/dist/assets/index-C7hCfQpd.css +2 -0
  121. package/dist/assets/index-DS0PEdhO.js +11 -0
  122. package/dist/assets/{ingest-DXklElaR.js → ingest-C1wiUm1l.js} +1 -1
  123. package/dist/assets/{input-DkgpMeG9.js → input-DlkBtbxm.js} +1 -1
  124. package/dist/assets/{inspect-page-naqIziez.js → inspect-page-CNLiZXRt.js} +3 -3
  125. package/dist/assets/{installed-plugins-query-CZLdpwnL.js → installed-plugins-query-DQKwv-Iz.js} +1 -1
  126. package/dist/assets/{integration-icon-DbmKvxqf.js → integration-icon-BxfDs-Ud.js} +1 -1
  127. package/dist/assets/integrations-page-B9SHiomg.js +1 -0
  128. package/dist/assets/intelligence-C7DYXerF.js +5 -0
  129. package/dist/assets/{intelligence-layout-CXzIl0Vl.js → intelligence-layout-BoW8JbDc.js} +1 -1
  130. package/dist/assets/internal-thread-actions-C0S_b7cx.js +1 -0
  131. package/dist/assets/{invalidate-memory-queries-C4-KSsdB.js → invalidate-memory-queries-uk2gV1m0.js} +1 -1
  132. package/dist/assets/{invalidate-plugin-queries-DxagFqKP.js → invalidate-plugin-queries-CI1Cseau.js} +1 -1
  133. package/dist/assets/keyboard-shortcuts-redirect-page-BY3Va4w9.js +1 -0
  134. package/dist/assets/{latest-assistant-text-JCjtByys.js → latest-assistant-text-fXT5Jkt8.js} +2 -2
  135. package/dist/assets/library-Da5KVeDF.js +1 -0
  136. package/dist/assets/{library-detail-page-CyWiXwb9.js → library-detail-page-CX92FKAK.js} +1 -1
  137. package/dist/assets/{library-page-CzcvMljL.js → library-page-D2v2j-WU.js} +1 -1
  138. package/dist/assets/{list-row-CDwzGT9g.js → list-row-6uedKE84.js} +1 -1
  139. package/dist/assets/llm-model-catalog-BxTXG4Cg.js +1 -0
  140. package/dist/assets/local-mode-DzIUFjhf.js +1 -0
  141. package/dist/assets/{local-runtime-upgrade-BkoG5uVr.js → local-runtime-upgrade-BpvLk3HN.js} +1 -1
  142. package/dist/assets/{login-flow-D6ivg6PM.js → login-flow-BYBqjDap.js} +1 -1
  143. package/dist/assets/{login-page-Dmpz0GgT.js → login-page-fl8rgXFq.js} +1 -1
  144. package/dist/assets/{logout-page-CI3LDcqG.js → logout-page-DLjLy7Hp.js} +1 -1
  145. package/dist/assets/{logs-layout-BHP-ADUq.js → logs-layout-Du4o-HeH.js} +1 -1
  146. package/dist/assets/{markdown-preview-Dx8E021p.js → markdown-preview-ukYPAksc.js} +1 -1
  147. package/dist/assets/media-preview-Ds0Jo4hk.js +1 -0
  148. package/dist/assets/{memory-page-route-qvBEERTa.js → memory-page-route-CvKjQ2FE.js} +1 -1
  149. package/dist/assets/memory-router-playground-page-Dh8zVze9.js +1 -0
  150. package/dist/assets/{menu-ubIBmfUh.js → menu-Ci8JeI2H.js} +1 -1
  151. package/dist/assets/message-content-C1CZhGIc.js +1 -0
  152. package/dist/assets/{message-files-panel-ZPa7eZHc.js → message-files-panel-DEAC2iCY.js} +1 -1
  153. package/dist/assets/messages-D5oI1yRV.js +13 -0
  154. package/dist/assets/{metric-card-bXd-f58c.js → metric-card-YqtdN5uX.js} +1 -1
  155. package/dist/assets/mime-sniff-BeXhZEXw.js +1 -0
  156. package/dist/assets/{modal-UYNawsIu.js → modal-DN_Uwwkg.js} +1 -1
  157. package/dist/assets/native-anchor-C13W_dF5.js +1 -0
  158. package/dist/assets/native-biometric-DzQYY-Z2.js +6 -0
  159. package/dist/assets/{native-file-BpFW1c_c.js → native-file-qM32rSz7.js} +2 -2
  160. package/dist/assets/navigation-resolver-B6QxHAa5.js +1 -0
  161. package/dist/assets/{not-found-ui-gcXqK.js → not-found-DXwfp4Yf.js} +1 -1
  162. package/dist/assets/{notice-BlYF-xU3.js → notice-C_AsX_o9.js} +1 -1
  163. package/dist/assets/{notifications-DK6b8YVI.js → notifications-DMNpr3pt.js} +1 -1
  164. package/dist/assets/notifications-page-DD-175gq.js +1 -0
  165. package/dist/assets/{oauth-complete-page-7NZZRVcj.js → oauth-complete-page-DBDWL3aD.js} +1 -1
  166. package/dist/assets/{oauth-popup-complete-page-Ci39YXpe.js → oauth-popup-complete-page-Dv0482xp.js} +1 -1
  167. package/dist/assets/onboarding-DwRWKhM_.js +1 -0
  168. package/dist/assets/onboarding-layout-CYgAi-S1.js +1 -0
  169. package/dist/assets/open-workspace-file-Ca9gUjoQ.js +2 -0
  170. package/dist/assets/{operational-status-CMN32PL8.js → operational-status-DVK3_kD_.js} +1 -1
  171. package/dist/assets/{page-shell-C3ZmdIop.js → page-shell-nVp2ogSk.js} +1 -1
  172. package/dist/assets/{pairing-page-YPN7ISIr.js → pairing-page-CLNSXQ7A.js} +1 -1
  173. package/dist/assets/{password-reset-page-D8ONrPU-.js → password-reset-page-BNw-K6vZ.js} +1 -1
  174. package/dist/assets/pdf-file-preview-DvhlIAI5.js +1 -0
  175. package/dist/assets/pdf-preview-BpUxb6wy.js +2 -0
  176. package/dist/assets/{personality-page-CLsRq5L2.js → personality-page-axIG9Tu_.js} +1 -1
  177. package/dist/assets/plans-page-DQu9C86N.js +1 -0
  178. package/dist/assets/{platform-detection-zth6eCY8.js → platform-detection-C-a_Mru0.js} +1 -1
  179. package/dist/assets/{platform-login-notice-CvFpWLJY.js → platform-login-notice-Dmq_2Akt.js} +1 -1
  180. package/dist/assets/{platform-loopback-page-B8cGk07e.js → platform-loopback-page-B0UOR3ct.js} +1 -1
  181. package/dist/assets/{plugin-detail-page--CvX0OXv.js → plugin-detail-page-2ySPND3h.js} +1 -1
  182. package/dist/assets/{plugins-page-CZ16U_6n.js → plugins-page-D7jLWtXv.js} +1 -1
  183. package/dist/assets/plugins-surface-CLatmeTO.js +1 -0
  184. package/dist/assets/pointer-Cxac45y6.js +1 -0
  185. package/dist/assets/popover-B_nY8VYI.js +1 -0
  186. package/dist/assets/{prefs-BLTugIFN.js → prefs-BFDWWNwd.js} +1 -1
  187. package/dist/assets/{preview-error-gCViZZRw.js → preview-error-B7qHC1Y4.js} +1 -1
  188. package/dist/assets/privacy-page-B-FaZv9p.js +1 -0
  189. package/dist/assets/privacy-screen-Ng4c4whW.js +1 -0
  190. package/dist/assets/profile-pickers-BE4eyfmO.js +1 -0
  191. package/dist/assets/{provider-callback-page-BPp1TM7J.js → provider-callback-page-CwYFxjk3.js} +1 -1
  192. package/dist/assets/{provider-key-DpdSx5gG.js → provider-key-D0kB_zjf.js} +1 -1
  193. package/dist/assets/{provider-signup-page-Cv9_b_58.js → provider-signup-page-BORU3SZe.js} +1 -1
  194. package/dist/assets/{provisioning-targets-DDUZDQ_a.js → provisioning-targets-D1mqFL8i.js} +1 -1
  195. package/dist/assets/{proxy-CT_qJI1K.js → proxy-C_GXGfwL.js} +1 -1
  196. package/dist/assets/{push-registration-CH_t0mI8.js → push-registration-CyLSsbG5.js} +2 -2
  197. package/dist/assets/{quick-input-page-LqfQdZFU.js → quick-input-page-D7nJMXNi.js} +1 -1
  198. package/dist/assets/react-query.gen-CYP-Tn4K.js +1 -0
  199. package/dist/assets/react-query.gen-D3r2fwXH.js +1 -0
  200. package/dist/assets/remote-gateway-session-B4C6b4Sx.js +1 -0
  201. package/dist/assets/remove-from-device-dialog-Bpy0yOG4.js +1 -0
  202. package/dist/assets/{research-facts-C2cY_gU2.js → research-facts-DzELMLzK.js} +1 -1
  203. package/dist/assets/{research-mock-page-CB1_bEoa.js → research-mock-page-BkcbRMpS.js} +1 -1
  204. package/dist/assets/{research-onboarding-persistence-Bx5cdkas.js → research-onboarding-persistence-BFdNebXL.js} +1 -1
  205. package/dist/assets/research-onboarding-route-BlBSSOiI.js +50 -0
  206. package/dist/assets/{research-results-view-BcQs2Zh9.js → research-results-view-D1hOhfTP.js} +1 -1
  207. package/dist/assets/{resolved-assistants-store-BNadgXqb.js → resolved-assistants-store-D57qRwKv.js} +1 -1
  208. package/dist/assets/retire-confirm-dialog-Zwo-Sjrc.js +1 -0
  209. package/dist/assets/{review-terms-screen-CI_29cnc.js → review-terms-screen-DmNdg_zJ.js} +1 -1
  210. package/dist/assets/routes-BaPyKuTq.js +24 -0
  211. package/dist/assets/routes-yNhBxUSb.js +1 -0
  212. package/dist/assets/runtime-upgrade-banner-bHSGkzwB.js +2 -0
  213. package/dist/assets/{sandbox-bridge-Dj1pIOXJ.js → sandbox-bridge-BcJiBmUR.js} +1 -1
  214. package/dist/assets/{schedules-C2Tr1zNV.js → schedules-CgwiGq3x.js} +1 -1
  215. package/dist/assets/schedules-DaGS9wMX.js +1 -0
  216. package/dist/assets/{schedules-page-0V6ECw0t.js → schedules-page-Ca_u2KkZ.js} +1 -1
  217. package/dist/assets/schemas-CwBN1MUL.js +39 -0
  218. package/dist/assets/{sdk.gen-DWvuzSBW.js → sdk.gen-DXPJc8Xk.js} +1 -1
  219. package/dist/assets/{sdk.gen-CiE6cMi0.js → sdk.gen-hZs6YBR0.js} +1 -1
  220. package/dist/assets/section-membership-CJlFrKoM.js +1 -0
  221. package/dist/assets/{security-redirect-page-D6x3MANY.js → security-redirect-page-eZ_C_Wf0.js} +1 -1
  222. package/dist/assets/{select-BKyejRky.js → select-DJDG9pwU.js} +1 -1
  223. package/dist/assets/select-assistant-screen-DSLQRer8.js +1 -0
  224. package/dist/assets/{self-hosted-servers-BviPyNnl.js → self-hosted-servers-DJIKPu90.js} +1 -1
  225. package/dist/assets/settings-BY8t4asx.js +1 -0
  226. package/dist/assets/{settings-divider-C0NZsB-L.js → settings-divider-BCyO1zmM.js} +1 -1
  227. package/dist/assets/settings-layout-Cv8u2dv7.js +1 -0
  228. package/dist/assets/settings-navigation-R6E3Weed.js +1 -0
  229. package/dist/assets/{share-feedback-modal-PlN6X3Pm.js → share-feedback-modal-COH8zwku.js} +2 -2
  230. package/dist/assets/{sidebar-tree-Bp0eeKf2.js → sidebar-tree-Bfvk_uAR.js} +1 -1
  231. package/dist/assets/{signup-page-gqz5_wG1.js → signup-page-BsMK6h9P.js} +1 -1
  232. package/dist/assets/{signup-shell-DW976E_0.js → signup-shell-OkpQCRuO.js} +1 -1
  233. package/dist/assets/{site-favicon-Cu07pwc9.js → site-favicon-Bu9L02gb.js} +1 -1
  234. package/dist/assets/{skill-detail-page-c0s3w3K3.js → skill-detail-page-D9WBRKuf.js} +1 -1
  235. package/dist/assets/{skill-detail-panel-NYXq557_.js → skill-detail-panel-kCMadngl.js} +1 -1
  236. package/dist/assets/{skills-5MnTu98B.js → skills-C3-ibGUo.js} +1 -1
  237. package/dist/assets/{skills-page-B_VTCiN2.js → skills-page-BMYP4Xi0.js} +1 -1
  238. package/dist/assets/sound-manager-CCbiDOQN.js +1 -0
  239. package/dist/assets/sounds-page-Du1t_S8A.js +1 -0
  240. package/dist/assets/{src-CImIAPTd.js → src-DMnnfLrU.js} +2 -2
  241. package/dist/assets/start-screen-I5HBKHT6.js +1 -0
  242. package/dist/assets/{status-badge-pill-D8m98tJa.js → status-badge-pill-w-ULYfRy.js} +1 -1
  243. package/dist/assets/{stt-language-picker-modal-BXLEBM7b.js → stt-language-picker-modal-Cq76JJex.js} +1 -1
  244. package/dist/assets/{subagent-detail-panel-CrbpQRzW.js → subagent-detail-panel-DP4dB-Dz.js} +1 -1
  245. package/dist/assets/{subagent-store-DqKEBlAM.js → subagent-store-Bn8k7JMr.js} +2 -2
  246. package/dist/assets/{superpowers-page-B5WGXphq.js → superpowers-page-COTkr31c.js} +1 -1
  247. package/dist/assets/{swipe-action-reveal-Ai9lRgUU.js → swipe-action-reveal-CQY9DSup.js} +1 -1
  248. package/dist/assets/{system-events-page-_aap_0av.js → system-events-page-CvoSQs7q.js} +1 -1
  249. package/dist/assets/{system-events-redirect-page-DbyqOqe_.js → system-events-redirect-page-BjnwAn9h.js} +1 -1
  250. package/dist/assets/{tag-Ddzwz3ij.js → tag-D2QYCm1p.js} +1 -1
  251. package/dist/assets/{telegram-setup-wizard-BENKNAuh.js → telegram-setup-wizard-6UP2MTrh.js} +1 -1
  252. package/dist/assets/{text-preview-DUlKYC4u.js → text-preview-BG__pDe7.js} +1 -1
  253. package/dist/assets/{theme-stage-page-CbGuxQ23.js → theme-stage-page-YfsM529J.js} +1 -1
  254. package/dist/assets/{threshold-presets-DN0_JIJQ.js → threshold-presets-BJubRlKn.js} +1 -1
  255. package/dist/assets/{tiptap-document-editor-0vqw7hch.js → tiptap-document-editor-BM6zL6R7.js} +2 -2
  256. package/dist/assets/{toast-DqqWkjsh.js → toast-CHtrY-GO.js} +1 -1
  257. package/dist/assets/{tool-detail-panel-C2wUYsf2.js → tool-detail-panel-_LC-zFuo.js} +3 -3
  258. package/dist/assets/transcript-message-body-shared-D8cmJP1C.js +1 -0
  259. package/dist/assets/{trust-rules-api-DRJ1qP-y.js → trust-rules-api-CE_KJOp2.js} +1 -1
  260. package/dist/assets/upgrade-cancel-page-DyLSvLsm.js +1 -0
  261. package/dist/assets/upgrade-success-page-BRPyFCq4.js +1 -0
  262. package/dist/assets/upload-Bilfs1g8.js +1 -0
  263. package/dist/assets/{usage-redirect-page-DyTnwv4x.js → usage-redirect-page-C4O5a5QM.js} +1 -1
  264. package/dist/assets/{use-active-assistant-id-BADYKVyx.js → use-active-assistant-id-BFE4r9Rp.js} +1 -1
  265. package/dist/assets/use-app-theme-BMyUWfBR.js +1 -0
  266. package/dist/assets/use-assistant-avatar-adekIS8v.js +1 -0
  267. package/dist/assets/{use-assistant-capability-C-yHcMH4.js → use-assistant-capability-Cjd57j4I.js} +1 -1
  268. package/dist/assets/{use-assistant-identity-details-u9sG9ip2.js → use-assistant-identity-details-C3sH1daz.js} +1 -1
  269. package/dist/assets/{use-attachment-preview-Cq_IWTdT.js → use-attachment-preview-BUJ9CHqr.js} +2 -2
  270. package/dist/assets/{use-attachment-squares-BKi30wmg.js → use-attachment-squares-CFAezuph.js} +1 -1
  271. package/dist/assets/use-bookmarks--Hn0Ty3s.js +1 -0
  272. package/dist/assets/{use-bundled-avatar-components-C_6xUsW1.js → use-bundled-avatar-components-Bhvvz-bQ.js} +2 -2
  273. package/dist/assets/{use-bus-subscription-BuhDYgS1.js → use-bus-subscription-BmtCG3i6.js} +1 -1
  274. package/dist/assets/use-checkout-dismiss-refresh-CTdb-p9h.js +1 -0
  275. package/dist/assets/{use-command-palette-sections-CvNjev8s.js → use-command-palette-sections-_F3pQkoi.js} +1 -1
  276. package/dist/assets/{use-copy-to-clipboard-B7Yrgm0s.js → use-copy-to-clipboard-BPX7B4SE.js} +1 -1
  277. package/dist/assets/use-edge-swipe-CJYjm94h.js +1 -0
  278. package/dist/assets/use-edge-swipe-back-L6kJ84LI.js +2 -0
  279. package/dist/assets/use-edit-app-C0wNLJT8.js +1 -0
  280. package/dist/assets/{use-effective-timezone-vox0__xI.js → use-effective-timezone-DaNOF607.js} +1 -1
  281. package/dist/assets/use-hotkey-recorder-BgB8ju9u.js +1 -0
  282. package/dist/assets/{use-invite-link-dialog-Chhnymz9.js → use-invite-link-dialog-B1oz9iwD.js} +1 -1
  283. package/dist/assets/use-is-mobile-BwSS15lq.js +1 -0
  284. package/dist/assets/{use-is-org-ready-GDBxqujc.js → use-is-org-ready-CEB5IRpO.js} +1 -1
  285. package/dist/assets/use-local-file-info-y_wvTOqp.js +1 -0
  286. package/dist/assets/{use-onboarding-login-BdVTfZ3o.js → use-onboarding-login-DSP8WCFe.js} +1 -1
  287. package/dist/assets/{use-platform-assistant-id-B7TrEBmf.js → use-platform-assistant-id-n0Yl5uUG.js} +1 -1
  288. package/dist/assets/{use-platform-gate-DG9Xg3Hs.js → use-platform-gate-DNfLk9Xd.js} +1 -1
  289. package/dist/assets/{use-reduced-motion-CU3dPXKf.js → use-reduced-motion-DzXyVFAi.js} +1 -1
  290. package/dist/assets/{use-return-to-short-circuit-EtY8cSC7.js → use-return-to-short-circuit-CY3AuCF9.js} +1 -1
  291. package/dist/assets/use-save-twilio-credentials-BWaLXE4J.js +1 -0
  292. package/dist/assets/use-side-list-room-CO7nxluQ.js +1 -0
  293. package/dist/assets/{use-skill-actions-CdbZjq6a.js → use-skill-actions-D7CK9Jhy.js} +1 -1
  294. package/dist/assets/{use-skill-detail-files-Bg4G44J3.js → use-skill-detail-files-Cop9LnVd.js} +1 -1
  295. package/dist/assets/use-sticky-profiles-D3ybBRfX.js +1 -0
  296. package/dist/assets/{use-stt-language-selection-CK6bUfVS.js → use-stt-language-selection-Dkm4Uq69.js} +1 -1
  297. package/dist/assets/{use-subagent-card-data-DlVOBxXw.js → use-subagent-card-data-DbKFX1Jc.js} +1 -1
  298. package/dist/assets/{use-supports-bookmarks-B4cgbKXV.js → use-supports-bookmarks-stTgDlyW.js} +1 -1
  299. package/dist/assets/use-supports-credentials-settings-DK8TsliJ.js +1 -0
  300. package/dist/assets/use-supports-inference-profiles-C0dU3VLS.js +1 -0
  301. package/dist/assets/use-swipe-horizontal-BwZ0yvoM.js +1 -0
  302. package/dist/assets/use-touch-mobile-CaIiM-us.js +1 -0
  303. package/dist/assets/use-transcript-message-by-id-BbJqGOYZ.js +1 -0
  304. package/dist/assets/use-transcript-messages-Bp4Jsfks.js +3 -0
  305. package/dist/assets/{use-voice-sample-preview-CZoWWEeH.js → use-voice-sample-preview-4vpwPGNW.js} +1 -1
  306. package/dist/assets/{useTranslation-D9pPv-bA.js → useTranslation-CCDbxnME.js} +1 -1
  307. package/dist/assets/{utils-BEkyAhbA.js → utils-wDLoxcBZ.js} +1 -1
  308. package/dist/assets/viewer-store-BbaMH35y.js +1 -0
  309. package/dist/assets/voice-page--99ik4mV.js +1 -0
  310. package/dist/assets/voice-providers-note-7m0LvxmN.js +1 -0
  311. package/dist/assets/{weather-forecast-display-D3IBgGHv.js → weather-forecast-display-BbD0N8C0.js} +1 -1
  312. package/dist/assets/{web-CxX3pST-.js → web-Do_X9zWq.js} +1 -1
  313. package/dist/assets/{web-D1mJSG8v.js → web-UN0kX9ic.js} +1 -1
  314. package/dist/assets/welcome-screen-Drdb1oS6.js +1 -0
  315. package/dist/assets/{workflow-detail-panel-C0kN-iH3.js → workflow-detail-panel-DS9_MRNg.js} +1 -1
  316. package/dist/assets/{workflow-store-BXqyb8CL.js → workflow-store-BYbfirJj.js} +1 -1
  317. package/dist/assets/workspace-page-CPDwYVlW.js +1 -0
  318. package/dist/assets/{workspace-tree-query-Dyls8wmV.js → workspace-tree-query-DzYz0-QE.js} +1 -1
  319. package/dist/index.html +284 -280
  320. package/package.json +1 -1
  321. package/dist/assets/access-D0krXly2.js +0 -1
  322. package/dist/assets/activity-steps-panel-C9z9FMmK.js +0 -1
  323. package/dist/assets/add-credits-modal-RIAYgbOT.js +0 -1
  324. package/dist/assets/ai-page-CI4LZXTY.js +0 -1
  325. package/dist/assets/api-BjYAXdCk.js +0 -1
  326. package/dist/assets/api-Cx3i50oG.js +0 -1
  327. package/dist/assets/api-key-screen-BKFAcyqU.js +0 -1
  328. package/dist/assets/auth-store-CVtcHK0b.js +0 -2
  329. package/dist/assets/auth-welcome-screen-Pw3qXxi5.js +0 -1
  330. package/dist/assets/billing-page-CmVjD4bw.js +0 -3
  331. package/dist/assets/bookmarks-page-DUbnEAgS.js +0 -1
  332. package/dist/assets/chat-1xy90pMn.js +0 -3
  333. package/dist/assets/chat-CHVUM3s0.js +0 -1
  334. package/dist/assets/chat-markdown-message-CtLdsT2K.js +0 -1
  335. package/dist/assets/checkout-continuation-BvY4Kjz7.js +0 -1
  336. package/dist/assets/checkout-page-CWRkiEj1.js +0 -1
  337. package/dist/assets/checkout-return-target-_Y86sfo0.js +0 -1
  338. package/dist/assets/common-EmSgsWNa.js +0 -1
  339. package/dist/assets/community-page-Dd84pjdI.js +0 -1
  340. package/dist/assets/companion-surface-page-BvDSOFVH.js +0 -1
  341. package/dist/assets/composer-settings-DBAb6W2i.js +0 -1
  342. package/dist/assets/conversation-cache-qk0nNm6Q.js +0 -1
  343. package/dist/assets/conversation-navigation-B_4jZ9Z2.js +0 -1
  344. package/dist/assets/conversation-queries-M4Inozp_.js +0 -1
  345. package/dist/assets/credentials-page-C-e4DqWt.js +0 -1
  346. package/dist/assets/debug-page-Be5Y5TVM.js +0 -4
  347. package/dist/assets/developer-page-DD8xa8mQ.js +0 -1
  348. package/dist/assets/dictation-overlay-page-DZiwww1V.js +0 -1
  349. package/dist/assets/dist-DMYOKN8y.js +0 -1
  350. package/dist/assets/document-viewer-page-tTTco75r.js +0 -1
  351. package/dist/assets/effective-timezone-CHJnU8kZ.js +0 -1
  352. package/dist/assets/esm-CtKndoc9.js +0 -2
  353. package/dist/assets/feature-flag-catalog-Cyqf6Ns7.js +0 -1
  354. package/dist/assets/feed-item-status-actions--CCeCtuw.js +0 -1
  355. package/dist/assets/format-usd-tespTIex.js +0 -1
  356. package/dist/assets/general-page-Bi87XguF.js +0 -1
  357. package/dist/assets/hatching-screen-DA0yyXD1.js +0 -1
  358. package/dist/assets/hosting-screen-cfhZ-ct7.js +0 -1
  359. package/dist/assets/identity-CqCxB9QW.js +0 -1
  360. package/dist/assets/identity-page-route-BjSsi8PM.js +0 -7
  361. package/dist/assets/index-BmDctEOW.css +0 -2
  362. package/dist/assets/index-I9kwAKzY.js +0 -11
  363. package/dist/assets/integrations-page-zrUmh2xn.js +0 -1
  364. package/dist/assets/intelligence-DXpXyKbw.js +0 -5
  365. package/dist/assets/keyboard-shortcuts-redirect-page-DSnux9sJ.js +0 -1
  366. package/dist/assets/library-CuKVNDEp.js +0 -1
  367. package/dist/assets/local-mode-BNr2MrWI.js +0 -39
  368. package/dist/assets/media-preview-HgLvcAQ9.js +0 -1
  369. package/dist/assets/memory-router-playground-page-Bnxf4hzQ.js +0 -1
  370. package/dist/assets/message-content-weXJNNKO.js +0 -1
  371. package/dist/assets/messages-CPTfRZA4.js +0 -13
  372. package/dist/assets/multi-activity-group-AECQlBbV.js +0 -1
  373. package/dist/assets/native-anchor-Bn22ZLay.js +0 -1
  374. package/dist/assets/native-biometric-D9IxNvJM.js +0 -6
  375. package/dist/assets/navigation-resolver-jIQ5B6JB.js +0 -1
  376. package/dist/assets/notifications-page-GRXZE_lL.js +0 -1
  377. package/dist/assets/onboarding-DK0I_g8T.js +0 -1
  378. package/dist/assets/onboarding-layout-GTzgLPSo.js +0 -1
  379. package/dist/assets/open-workspace-file-CYf_Tqw3.js +0 -2
  380. package/dist/assets/pdf-file-preview-udA0Apx_.js +0 -1
  381. package/dist/assets/pdf-preview-6Xfl1tO1.js +0 -2
  382. package/dist/assets/plans-page-DkVXE0Jv.js +0 -1
  383. package/dist/assets/plugins-surface-C4Cvus3n.js +0 -1
  384. package/dist/assets/pointer-BMK9brNn.js +0 -1
  385. package/dist/assets/popover-D3A6cIyW.js +0 -1
  386. package/dist/assets/privacy-page-BxJ2Cuev.js +0 -1
  387. package/dist/assets/privacy-screen-DlSj_9FT.js +0 -1
  388. package/dist/assets/profile-pickers-B0hfDNt-.js +0 -1
  389. package/dist/assets/react-query.gen-Bbh5MII3.js +0 -1
  390. package/dist/assets/react-query.gen-CwRPAiHT.js +0 -1
  391. package/dist/assets/remote-gateway-session-CzPLaXuT.js +0 -1
  392. package/dist/assets/remove-from-device-dialog-DeJ_gAmf.js +0 -1
  393. package/dist/assets/research-onboarding-route-BY3X_d2-.js +0 -50
  394. package/dist/assets/retire-confirm-dialog-f-A5OVYj.js +0 -1
  395. package/dist/assets/routes-B7wRw3UT.js +0 -1
  396. package/dist/assets/routes-OwGjl0BS.js +0 -24
  397. package/dist/assets/runtime-upgrade-banner-Cj9E7kWP.js +0 -2
  398. package/dist/assets/schedules-C3wE8OML.js +0 -1
  399. package/dist/assets/section-membership-vg-XaMPS.js +0 -1
  400. package/dist/assets/select-assistant-screen-BZxPQqe4.js +0 -1
  401. package/dist/assets/settings-CEQzAg2m.js +0 -1
  402. package/dist/assets/settings-layout-DgNBNUT7.js +0 -1
  403. package/dist/assets/settings-navigation-CVw10LL_.js +0 -1
  404. package/dist/assets/sound-manager-lHaiHTCh.js +0 -1
  405. package/dist/assets/sounds-page-BdSO1UIf.js +0 -1
  406. package/dist/assets/start-screen-CHO19RCi.js +0 -1
  407. package/dist/assets/upgrade-cancel-page-Dbd3VJdm.js +0 -1
  408. package/dist/assets/upgrade-success-page-CHbEmpjg.js +0 -1
  409. package/dist/assets/upload-DwkuEWSz.js +0 -1
  410. package/dist/assets/use-app-theme-Z0l8oiAF.js +0 -1
  411. package/dist/assets/use-assistant-avatar-rPqMHOma.js +0 -1
  412. package/dist/assets/use-bookmarks-Bl4tx8xK.js +0 -1
  413. package/dist/assets/use-checkout-dismiss-refresh-BHuxVDUc.js +0 -1
  414. package/dist/assets/use-edge-swipe-C4IrskOL.js +0 -1
  415. package/dist/assets/use-edge-swipe-back-CiO9raEw.js +0 -2
  416. package/dist/assets/use-edit-app-ByAfCYIL.js +0 -1
  417. package/dist/assets/use-is-mobile-q9Lr7beO.js +0 -1
  418. package/dist/assets/use-local-file-info-DxY8jZ8F.js +0 -1
  419. package/dist/assets/use-save-twilio-credentials-Bs9sThtb.js +0 -1
  420. package/dist/assets/use-side-list-room-CUXPQyjw.js +0 -1
  421. package/dist/assets/use-sticky-profiles-vQLFyEh0.js +0 -1
  422. package/dist/assets/use-supports-credentials-settings-Cj-Py42f.js +0 -1
  423. package/dist/assets/use-swipe-engine-b1fkDAV8.js +0 -1
  424. package/dist/assets/use-touch-mobile-CnqGLpCj.js +0 -1
  425. package/dist/assets/use-transcript-message-by-id-FmIIrRsf.js +0 -1
  426. package/dist/assets/use-transcript-messages-Q1PBxvSF.js +0 -3
  427. package/dist/assets/viewer-store-CwlLnf-k.js +0 -1
  428. package/dist/assets/voice-page-B1mJ2hkc.js +0 -1
  429. package/dist/assets/voice-providers-note-TDQxSwUj.js +0 -1
  430. package/dist/assets/welcome-screen-DPXQU47t.js +0 -1
  431. package/dist/assets/workspace-page-Mj_A1eeR.js +0 -1
  432. /package/dist/assets/{account-DEWe1CJv.js → account-BuiU7DuB.js} +0 -0
  433. /package/dist/assets/{android-consumption-only-4ku7vpy4.js → android-consumption-only-DDbN5hxd.js} +0 -0
  434. /package/dist/assets/{app-types-DET4dder.js → app-types-Dslgu6TG.js} +0 -0
  435. /package/dist/assets/{apple-logo-C_J-Nv61.js → apple-logo-DE1DXFS4.js} +0 -0
  436. /package/dist/assets/{assistant-identity-store-DhAqaifK.js → assistant-identity-store-DrQJhZh3.js} +0 -0
  437. /package/dist/assets/{avatar-bundled-components-C8vOxkFj.js → avatar-bundled-components-CAE0CJ9e.js} +0 -0
  438. /package/dist/assets/{avatar-subagent-BnaYyPQQ.js → avatar-subagent-pDrk_xWL.js} +0 -0
  439. /package/dist/assets/{avatar-svg-compositor-e_lhkR9P.js → avatar-svg-compositor-tf4h3-SV.js} +0 -0
  440. /package/dist/assets/{avatar-tone-BVUtTeGn.js → avatar-tone-Dp4coAkE.js} +0 -0
  441. /package/dist/assets/{browser-timezone-BOrwtFs2.js → browser-timezone-DYYSCLn2.js} +0 -0
  442. /package/dist/assets/{build.umd-CwkQd6wk.js → build.umd-CpV9Yjhm.js} +0 -0
  443. /package/dist/assets/{by-tool-use-id-index-C1T3QA5-.js → by-tool-use-id-index-BP1pAJzI.js} +0 -0
  444. /package/dist/assets/{calendar-5ZUL5438.js → calendar-DUfSq9XY.js} +0 -0
  445. /package/dist/assets/{channels-CXuBInAc.js → channels-DFBLDFWh.js} +0 -0
  446. /package/dist/assets/{chart-column-Bd2tG_o1.js → chart-column-nt6xAz18.js} +0 -0
  447. /package/dist/assets/{chat-layout-slots-store-CE2p0OE9.js → chat-layout-slots-store-c4ig5vXx.js} +0 -0
  448. /package/dist/assets/{check-pgeLaeXx.js → check-NGUguBHp.js} +0 -0
  449. /package/dist/assets/{chevron-down-CmQCCo_x.js → chevron-down-D1ho6wFA.js} +0 -0
  450. /package/dist/assets/{chevron-left-02Er54z-.js → chevron-left-D29BeQ4x.js} +0 -0
  451. /package/dist/assets/{chevron-right-Dwr_Sx98.js → chevron-right-DTpkwA4e.js} +0 -0
  452. /package/dist/assets/{chevron-up-DHhqG14M.js → chevron-up-bJ8SGTC_.js} +0 -0
  453. /package/dist/assets/{circle-alert-DvkPmyIg.js → circle-alert-B-Zu9T9V.js} +0 -0
  454. /package/dist/assets/{circle-check-BlOeCme9.js → circle-check-BQyrCkaB.js} +0 -0
  455. /package/dist/assets/{circle-check-big-BDMPSnMn.js → circle-check-big-C9sLhbGa.js} +0 -0
  456. /package/dist/assets/{circle-minus-B5yKBO54.js → circle-minus-DgUiTTwX.js} +0 -0
  457. /package/dist/assets/{circle-x-CEXUbdoO.js → circle-x-qsWcnNwx.js} +0 -0
  458. /package/dist/assets/{client.gen-CxTOBLiH.js → client.gen-C1nf2AIs.js} +0 -0
  459. /package/dist/assets/{clipboard-copy-CEczonMF.js → clipboard-copy-D6VpELQ4.js} +0 -0
  460. /package/dist/assets/{clock-1REtpnlM.js → clock-CNSYP9nm.js} +0 -0
  461. /package/dist/assets/{cloud-dqL-JBKK.js → cloud-ByHaCF-x.js} +0 -0
  462. /package/dist/assets/{cloud-off-CB9uhEDu.js → cloud-off-DioliYf9.js} +0 -0
  463. /package/dist/assets/{code-u4Wi5zSA.js → code-B7TA1KYq.js} +0 -0
  464. /package/dist/assets/{coins-CveNnhLe.js → coins-WH-N-3B8.js} +0 -0
  465. /package/dist/assets/{consent-mbj_kMXO.js → consent-DgQeejGe.js} +0 -0
  466. /package/dist/assets/{contacts-BRU7ohw2.js → contacts-BQcl-1XL.js} +0 -0
  467. /package/dist/assets/{conversation-store-DKBwV4bc.js → conversation-store-DdBAApt6.js} +0 -0
  468. /package/dist/assets/{cpu-BG0rQrMj.js → cpu-CNmn352B.js} +0 -0
  469. /package/dist/assets/{credential-requests-BbBZKJHx.js → credential-requests-CpHxMIMS.js} +0 -0
  470. /package/dist/assets/{definitions-Co0yLSy_.js → definitions-BRiVhEtI.js} +0 -0
  471. /package/dist/assets/{definitions-Yz8Uao4u.js → definitions-I6-Jh5-j.js} +0 -0
  472. /package/dist/assets/{diff-rows-BrFK496i.js → diff-rows-BVvdLrrS.js} +0 -0
  473. /package/dist/assets/{download-DnnvWjPo.js → download-C7_XK23s.js} +0 -0
  474. /package/dist/assets/{edge-swipe-arbiter-store-BGBvaPTd.js → edge-swipe-arbiter-store-Cgt2wsOY.js} +0 -0
  475. /package/dist/assets/{edit-chat-session-CiXnUJPh.js → edit-chat-session-BUx2LvCf.js} +0 -0
  476. /package/dist/assets/{ellipsis-4L6z7PhT.js → ellipsis-DLgXzWgN.js} +0 -0
  477. /package/dist/assets/{ellipsis-vertical-CJX4FZlb.js → ellipsis-vertical-D3SJdQ4P.js} +0 -0
  478. /package/dist/assets/{emoji-catalog-data-BIIBfSqk.js → emoji-catalog-data-DXFYOvKt.js} +0 -0
  479. /package/dist/assets/{environment-store-C4So_j-o.js → environment-store-rZ0hkMHt.js} +0 -0
  480. /package/dist/assets/{esm-CPFvOH-c.js → esm-Cz8_Dotd.js} +0 -0
  481. /package/dist/assets/{esm-BJhqsukI.js → esm-DBGqhIh5.js} +0 -0
  482. /package/dist/assets/{event-bus-B-wwSVzo.js → event-bus-QJe_MFOc.js} +0 -0
  483. /package/dist/assets/{external-link-B-pfCiUo.js → external-link-DCA91uI6.js} +0 -0
  484. /package/dist/assets/{external-urls-Bg18AU4S.js → external-urls-DWYQKJEq.js} +0 -0
  485. /package/dist/assets/{eye-CHlTF_ct.js → eye-C5DUd2Vd.js} +0 -0
  486. /package/dist/assets/{eye-off-0lRvXR9p.js → eye-off-8cYeidA6.js} +0 -0
  487. /package/dist/assets/{file-DVQXh8CW.js → file-BgKbUJNS.js} +0 -0
  488. /package/dist/assets/{file-code-A080HCxh.js → file-code-CS8NbZbG.js} +0 -0
  489. /package/dist/assets/{file-plus-C_Iw4p49.js → file-plus-DLtgfqcS.js} +0 -0
  490. /package/dist/assets/{file-text-DpdlyCly.js → file-text-BEpL7wIA.js} +0 -0
  491. /package/dist/assets/{folder-B0UQA6jd.js → folder-6DGJLMuE.js} +0 -0
  492. /package/dist/assets/{folder-open-BU6EPS8G.js → folder-open-Cz-3FN-E.js} +0 -0
  493. /package/dist/assets/{format-date-B_oQDqU9.js → format-date-DEIFj6w3.js} +0 -0
  494. /package/dist/assets/{format-file-size-ByNX0dQR.js → format-file-size-CaQu4Lyo.js} +0 -0
  495. /package/dist/assets/{globe-COrlg99x.js → globe-BJuNFSn-.js} +0 -0
  496. /package/dist/assets/{hard-drive-BV9-fN_J.js → hard-drive-zWkzTs9d.js} +0 -0
  497. /package/dist/assets/{hard-navigate-CNxvVrtC.js → hard-navigate-D1rxKLPg.js} +0 -0
  498. /package/dist/assets/{heart-Bd-pnn1X.js → heart-DBsRPrRH.js} +0 -0
  499. /package/dist/assets/{home-BwSxL4rM.js → home-ySv5rBLy.js} +0 -0
  500. /package/dist/assets/{image-DsrjUDQh.js → image-DntHMHHo.js} +0 -0
  501. /package/dist/assets/{inbox-BcZU66Rf.js → inbox-Qye1DBie.js} +0 -0
  502. /package/dist/assets/{info-Bn2hbIVl.js → info-D0qquAkS.js} +0 -0
  503. /package/dist/assets/{interactive-target-CXv5tgJB.js → interactive-target-DT1VQruY.js} +0 -0
  504. /package/dist/assets/{is-electron-wgAC5Mzb.js → is-electron-C9-jl_HE.js} +0 -0
  505. /package/dist/assets/{key-round-C51ZTEMu.js → key-round-DcfNNfNG.js} +0 -0
  506. /package/dist/assets/{laptop-DoAUvmjX.js → laptop-C9BtnRjX.js} +0 -0
  507. /package/dist/assets/{layout-grid-lHmG2izK.js → layout-grid-CBeP_IMO.js} +0 -0
  508. /package/dist/assets/{lightbulb-moe9FubK.js → lightbulb-DIV0FA-e.js} +0 -0
  509. /package/dist/assets/{link-2-BBS4SmE3.js → link-2-CTrfUFQw.js} +0 -0
  510. /package/dist/assets/{link-V2w-GAhr.js → link-Dpgek1RH.js} +0 -0
  511. /package/dist/assets/{link-click-BsxbQxDe.js → link-click-DxspyBl6.js} +0 -0
  512. /package/dist/assets/{list-6yken9qv.js → list-Dn1NSBlc.js} +0 -0
  513. /package/dist/assets/{loader-circle-DYe85z3g.js → loader-circle-C9QjVTuc.js} +0 -0
  514. /package/dist/assets/{log-in-BsEhSW6v.js → log-in-DQ2oMzUv.js} +0 -0
  515. /package/dist/assets/{log-out-Dvz6dWwJ.js → log-out-nq6T7R9r.js} +0 -0
  516. /package/dist/assets/{logs-Blq4k473.js → logs-BsCB67bq.js} +0 -0
  517. /package/dist/assets/{machine-sizes-DzJ0TVYS.js → machine-sizes-Wnvi4rGR.js} +0 -0
  518. /package/dist/assets/{mail-9qQtaWSe.js → mail-BFnJM9hP.js} +0 -0
  519. /package/dist/assets/{message-circle-CQpMnPIR.js → message-circle-Cbwq_S7o.js} +0 -0
  520. /package/dist/assets/{message-square-ameAY_Gq.js → message-square-CENNR7tf.js} +0 -0
  521. /package/dist/assets/{message-square-text-C0iNfHuJ.js → message-square-text-Cnv84xQi.js} +0 -0
  522. /package/dist/assets/{mic-yJxjqdDR.js → mic-W9IfxqWv.js} +0 -0
  523. /package/dist/assets/{minimize-2-dhLse52Y.js → minimize-2-CcBLJXor.js} +0 -0
  524. /package/dist/assets/{misc-B24X-saO.js → misc-giJA2hbh.js} +0 -0
  525. /package/dist/assets/{monitor-BHYV5XBf.js → monitor-C7Po319a.js} +0 -0
  526. /package/dist/assets/{moon-CZZGDGLY.js → moon-D2HTb8zV.js} +0 -0
  527. /package/dist/assets/{oauth-connection-utils-19Tfw-lp.js → oauth-connection-utils-dPIUOXze.js} +0 -0
  528. /package/dist/assets/{oauth-popup-CrXEFWPi.js → oauth-popup-DIeDxfkO.js} +0 -0
  529. /package/dist/assets/{onboarding-navigation-C-Kk3_ll.js → onboarding-navigation-CUL0t0Am.js} +0 -0
  530. /package/dist/assets/{onboarding-step-layout-2G2ptxpI.js → onboarding-step-layout-00YhfBar.js} +0 -0
  531. /package/dist/assets/{optimistic-lifecycle-D1yMW3VK.js → optimistic-lifecycle-gXn1rGfw.js} +0 -0
  532. /package/dist/assets/{page-empty-state-CzHxZkBR.js → page-empty-state-CpkB0rZ_.js} +0 -0
  533. /package/dist/assets/{page-surface-store-DJLLsNFC.js → page-surface-store-BvbPgWRr.js} +0 -0
  534. /package/dist/assets/{paperclip-T-MRlqdF.js → paperclip-CF2Q8ys8.js} +0 -0
  535. /package/dist/assets/{pdf-UON6A_nT.js → pdf-BdZA1URW.js} +0 -0
  536. /package/dist/assets/{pencil-Ba0D7tjH.js → pencil-RFB2IyLT.js} +0 -0
  537. /package/dist/assets/{play-dZ2h3AT7.js → play-DTmq7Qfg.js} +0 -0
  538. /package/dist/assets/{plug-sTs_y01k.js → plug-CVzxWCFR.js} +0 -0
  539. /package/dist/assets/{plugin-attribution-C0u-eDRH.js → plugin-attribution-rEWhA-PP.js} +0 -0
  540. /package/dist/assets/{plus-CWkbiq1y.js → plus-BDSluxb4.js} +0 -0
  541. /package/dist/assets/{prechat-CHD2UKHx.js → prechat-CGdKFXs3.js} +0 -0
  542. /package/dist/assets/{preview-skeleton-Be9eHMn9.js → preview-skeleton-BStSegQN.js} +0 -0
  543. /package/dist/assets/{profile-metadata-D9zzZn4_.js → profile-metadata-B1fA1_W5.js} +0 -0
  544. /package/dist/assets/{public-asset-CNgVJ7i4.js → public-asset-Du947SLt.js} +0 -0
  545. /package/dist/assets/{puzzle-DHy-ePUL.js → puzzle-C5CgkzuA.js} +0 -0
  546. /package/dist/assets/{radio-card-nav-CrM7VJUk.js → radio-card-nav-hVd-im6E.js} +0 -0
  547. /package/dist/assets/{reduced-motion-D8oweJF_.js → reduced-motion-Cste44pe.js} +0 -0
  548. /package/dist/assets/{refresh-cw-p138DTtp.js → refresh-cw-DwfKxRXV.js} +0 -0
  549. /package/dist/assets/{remote-web-DBCYTF2P.js → remote-web-BX-aNmAz.js} +0 -0
  550. /package/dist/assets/{repeat-BL0WDPMw.js → repeat-ORyt0N0E.js} +0 -0
  551. /package/dist/assets/{rotate-ccw-Cs7aCSL9.js → rotate-ccw-Cc2yZNdm.js} +0 -0
  552. /package/dist/assets/{schedules-Co4-ymK5.js → schedules-BXXSRQs5.js} +0 -0
  553. /package/dist/assets/{sdk.gen-CoXhzo__.js → sdk.gen-bruWelSm.js} +0 -0
  554. /package/dist/assets/{search-D_t5oHhF.js → search-FGnzWjRX.js} +0 -0
  555. /package/dist/assets/{semver-C2-EZfiR.js → semver-D1eVfLWz.js} +0 -0
  556. /package/dist/assets/{send-Dwk9mFMC.js → send-CnqSHaqf.js} +0 -0
  557. /package/dist/assets/{setting-row-BvQpFvtr.js → setting-row-CqyX0EBz.js} +0 -0
  558. /package/dist/assets/{settings-B-74NxzZ.js → settings-CyYRtP_K.js} +0 -0
  559. /package/dist/assets/{shield-Sw65VSPa.js → shield-CKMzW_Un.js} +0 -0
  560. /package/dist/assets/{shield-check-B-3lr0Uj.js → shield-check-B5eUPC8R.js} +0 -0
  561. /package/dist/assets/{shim-CcP58yVZ.js → shim-BE9ID8Pw.js} +0 -0
  562. /package/dist/assets/{skill-icon-yVnZg-J1.js → skill-icon-CSLUbHBD.js} +0 -0
  563. /package/dist/assets/{sliders-horizontal-CQIT2VGH.js → sliders-horizontal-GQpDB0wo.js} +0 -0
  564. /package/dist/assets/{smartphone-AcA2Q0mQ.js → smartphone-CWnipfJ7.js} +0 -0
  565. /package/dist/assets/{sparkles-Bhr0JiLM.js → sparkles-DvB22tVW.js} +0 -0
  566. /package/dist/assets/{square-rBIWdRdF.js → square-CLyLyc89.js} +0 -0
  567. /package/dist/assets/{sun-BzqYfTxT.js → sun-sLCgv7zn.js} +0 -0
  568. /package/dist/assets/{surface-parse-helpers-X2hFvbHP.js → surface-parse-helpers-DrfM4_wl.js} +0 -0
  569. /package/dist/assets/{terminal-CttH6-2_.js → terminal-CIR8bWcg.js} +0 -0
  570. /package/dist/assets/{terminal-_tzbWcM4.js → terminal-Dily8RM4.js} +0 -0
  571. /package/dist/assets/{three-dot-indicator-CYYJ1RDJ.js → three-dot-indicator-BUucQBI1.js} +0 -0
  572. /package/dist/assets/{trash-2-V2WT_DbX.js → trash-2-DnajdgJS.js} +0 -0
  573. /package/dist/assets/{triangle-alert-43gIbLca.js → triangle-alert-B-18Pims.js} +0 -0
  574. /package/dist/assets/{use-body-scroll-lock-DmT5-Tka.js → use-body-scroll-lock-CMCNMYPC.js} +0 -0
  575. /package/dist/assets/{use-discord-nudge-C5OzjNEk.js → use-discord-nudge-B-qg81ow.js} +0 -0
  576. /package/dist/assets/{use-element-size-B_jzGsxt.js → use-element-size-Cgo4THI9.js} +0 -0
  577. /package/dist/assets/{use-media-query-oO6k9fDB.js → use-media-query-DSngkas0.js} +0 -0
  578. /package/dist/assets/{use-truncated-blob-text-BYAPiP8I.js → use-truncated-blob-text-DYvFk3Fv.js} +0 -0
  579. /package/dist/assets/{web-Cpz2h_dP.js → web-0-rqi4je.js} +0 -0
  580. /package/dist/assets/{web-CXad-fWd.js → web-8fcyoNsL.js} +0 -0
  581. /package/dist/assets/{web-B60tNeyj.js → web-DCamMnI1.js} +0 -0
  582. /package/dist/assets/{web-Nd-L7NoL.js → web-DIlEhBsT.js} +0 -0
  583. /package/dist/assets/{web-W2HEHjFb.js → web-DsVO-tkH.js} +0 -0
  584. /package/dist/assets/{web-Cr238HhI.js → web-aW1scjmM.js} +0 -0
  585. /package/dist/assets/{web-BSizndvP.js → web-eVpCzMlE.js} +0 -0
  586. /package/dist/assets/{workflow-status-CGIYm2p7.js → workflow-status-notSUy4k.js} +0 -0
  587. /package/dist/assets/{workspace-BFa6JWKe.js → workspace-Ch5zHBn1.js} +0 -0
  588. /package/dist/assets/{workspace-path-links-CWERAV56.js → workspace-path-links-BVdQi6RQ.js} +0 -0
  589. /package/dist/assets/{workspace-theme-tokens-CJpxBUQ3.js → workspace-theme-tokens-Dae42Dzg.js} +0 -0
  590. /package/dist/assets/{xterm-DFQikp5h.js → xterm-Ds08b1dp.js} +0 -0
  591. /package/dist/assets/{xterm-addon-fit-B04vX_IV.js → xterm-addon-fit-DAq2qzya.js} +0 -0
@@ -0,0 +1 @@
1
+ import{t as e}from"./button-C8CGr0T0.js";import{d as t}from"./chunk-5KNZJZUH-BUqIilZr.js";import{t as n}from"./jsx-runtime-BJ8jcmzB.js";import"./i18n-C3bX3mTs.js";import{t as r}from"./useTranslation-CCDbxnME.js";import{d as i}from"./routes-yNhBxUSb.js";import{t as a}from"./onboarding-navigation-CUL0t0Am.js";import{t as o}from"./onboarding-layout-CYgAi-S1.js";var s=n();function c(){let{t:n}=r(`onboarding`),c=t();return(0,s.jsx)(o,{avatarWave:`around`,children:(0,s.jsx)(`div`,{className:`mx-auto flex min-h-screen w-full max-w-xl flex-col items-center px-6 pb-40 md:min-h-full md:pb-6 text-[var(--content-default)]`,children:(0,s.jsxs)(`div`,{className:`flex flex-1 flex-col items-center justify-center`,children:[(0,s.jsx)(`h1`,{className:`text-3xl font-semibold tracking-tight`,style:{animation:`fadeInUp 0.5s ease-out 0.1s both`},children:n(`welcome.title`)}),(0,s.jsx)(`p`,{className:`mt-3 text-center text-body-medium-lighter text-[var(--content-tertiary)]`,style:{animation:`fadeInUp 0.5s ease-out 0.3s both`},children:n(`welcome.body`)}),(0,s.jsx)(`div`,{className:`mt-10 flex w-full max-w-sm flex-col`,style:{animation:`fadeInUp 0.5s ease-out 0.5s both`},children:(0,s.jsx)(e,{variant:`primary`,size:`regular`,fullWidth:!0,className:`h-11 text-base`,onClick:()=>void c(i.onboarding.privacy,a),children:n(`startScreen.createAssistant`)})})]})})})}export{c as StartScreen};
@@ -1 +1 @@
1
- import{t as e}from"./button-VkxVX0DM.js";import{t}from"./jsx-runtime-BJ8jcmzB.js";import{t as n}from"./square-rBIWdRdF.js";import"./src-CImIAPTd.js";import"./i18n-C9hRT4Lf.js";import{t as r}from"./useTranslation-D9pPv-bA.js";var i=t();function a({onStop:t,ariaLabel:a,disabled:o}){let{t:s}=r(`chat`);return(0,i.jsx)(e,{variant:`dangerOutline`,iconOnly:(0,i.jsx)(n,{}),"aria-label":a,tooltip:s(`detailPanelStopButton.tooltip`),onClick:t,disabled:o,className:`shrink-0 hover:border-[var(--system-negative-strong)] hover:bg-[var(--system-negative-weak)] hover:[--vbtn-fg:var(--system-negative-strong)]`})}function o({color:e,label:t}){return(0,i.jsx)(`span`,{className:`inline-flex h-[23px] shrink-0 items-center gap-1 rounded-[6px] px-2 text-body-small-emphasised`,style:{color:e,backgroundColor:`color-mix(in srgb, ${e} 15%, transparent)`},children:t})}export{a as n,o as t};
1
+ import{t as e}from"./button-C8CGr0T0.js";import{t}from"./jsx-runtime-BJ8jcmzB.js";import{t as n}from"./square-CLyLyc89.js";import"./src-DMnnfLrU.js";import"./i18n-C3bX3mTs.js";import{t as r}from"./useTranslation-CCDbxnME.js";var i=t();function a({onStop:t,ariaLabel:a,disabled:o}){let{t:s}=r(`chat`);return(0,i.jsx)(e,{variant:`dangerOutline`,iconOnly:(0,i.jsx)(n,{}),"aria-label":a,tooltip:s(`detailPanelStopButton.tooltip`),onClick:t,disabled:o,className:`shrink-0 hover:border-[var(--system-negative-strong)] hover:bg-[var(--system-negative-weak)] hover:[--vbtn-fg:var(--system-negative-strong)]`})}function o({color:e,label:t}){return(0,i.jsx)(`span`,{className:`inline-flex h-[23px] shrink-0 items-center gap-1 rounded-[6px] px-2 text-body-small-emphasised`,style:{color:e,backgroundColor:`color-mix(in srgb, ${e} 15%, transparent)`},children:t})}export{a as n,o as t};
@@ -1 +1 @@
1
- import{t as e}from"./jsx-runtime-BJ8jcmzB.js";import{t}from"./modal-UYNawsIu.js";import{n}from"./use-stt-language-selection-CK6bUfVS.js";var r=e();function i({open:e,onOpenChange:i,title:a,currentCode:o,configuredProviderId:s,suggestedCode:c,selectLanguage:l,selecting:u}){return(0,r.jsx)(t.Root,{open:e,onOpenChange:i,children:(0,r.jsxs)(t.Content,{size:`sm`,onOpenAutoFocus:e=>{e.preventDefault(),e.target?.querySelector(`input[role="combobox"]`)?.focus()},children:[(0,r.jsxs)(t.Header,{children:[(0,r.jsx)(t.Title,{children:a}),(0,r.jsx)(t.Description,{children:`Applies from your next spoken turn.`})]}),(0,r.jsx)(t.Body,{children:(0,r.jsx)(n,{currentCode:o,configuredProviderId:s,suggestedCode:c,selectLanguage:l,selecting:u,onDone:()=>i(!1)})})]})})}export{i as t};
1
+ import{t as e}from"./jsx-runtime-BJ8jcmzB.js";import{t}from"./modal-DN_Uwwkg.js";import{n}from"./use-stt-language-selection-Dkm4Uq69.js";var r=e();function i({open:e,onOpenChange:i,title:a,currentCode:o,configuredProviderId:s,suggestedCode:c,selectLanguage:l,selecting:u}){return(0,r.jsx)(t.Root,{open:e,onOpenChange:i,children:(0,r.jsxs)(t.Content,{size:`sm`,onOpenAutoFocus:e=>{e.preventDefault(),e.target?.querySelector(`input[role="combobox"]`)?.focus()},children:[(0,r.jsxs)(t.Header,{children:[(0,r.jsx)(t.Title,{children:a}),(0,r.jsx)(t.Description,{children:`Applies from your next spoken turn.`})]}),(0,r.jsx)(t.Body,{children:(0,r.jsx)(n,{currentCode:o,configuredProviderId:s,suggestedCode:c,selectLanguage:l,selecting:u,onDone:()=>i(!1)})})]})})}export{i as t};
@@ -1,4 +1,4 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./button-VkxVX0DM.js";import{t as r}from"./jsx-runtime-BJ8jcmzB.js";import{t as i}from"./typography-DekrYXvs.js";import{t as a}from"./arrow-down-to-line-BuKRLRZS.js";import{n as o,r as s,t as c}from"./metric-card-bXd-f58c.js";import{E as l,c as u}from"./message-content-weXJNNKO.js";import{t as d}from"./brain-9Csfs96f.js";import{t as f}from"./chevron-down-CmQCCo_x.js";import{t as p}from"./chevron-left-02Er54z-.js";import{t as m}from"./chevron-right-Dwr_Sx98.js";import{t as h}from"./globe-COrlg99x.js";import{t as g}from"./chat-markdown-message-CtLdsT2K.js";import"./src-CImIAPTd.js";import{c as _,i as v,l as y,o as b}from"./subagent-store-DqKEBlAM.js";import{t as x}from"./misc-B24X-saO.js";import{t as S}from"./proxy-CT_qJI1K.js";import{t as C}from"./AnimatePresence-CxaKvfs9.js";import{t as w}from"./use-reduced-motion-CU3dPXKf.js";import{n as T}from"./use-bundled-avatar-components-C_6xUsW1.js";import{t as E}from"./three-dot-indicator-CYYJ1RDJ.js";import{t as D}from"./avatar-renderer-DSa5eaH2.js";import{t as O}from"./avatar-subagent-BnaYyPQQ.js";import{i as k,r as A,t as j}from"./use-subagent-card-data-DlVOBxXw.js";import{S as M,a as N,c as P,d as F,f as I,h as L,i as R,l as z,m as B,n as V,o as H,p as U,r as W,t as G,u as K,w as q}from"./site-favicon-Cu07pwc9.js";import{t as ee}from"./detail-shell-D1UEZCzz.js";import{n as te,t as ne}from"./status-badge-pill-D8m98tJa.js";import{CodeBlock as J,ToolDetailBody as re}from"./tool-detail-panel-C2wUYsf2.js";var Y=e(t(),1),X=r();function ie({status:e}){return(0,X.jsx)(ne,{color:_(e),label:y(e)})}function ae(e,t){let n=e.steps[0];return`${t}-${e.label}-${n?I(n,t):``}`}function oe(e){for(let t=e.steps.length-1;t>=0;t--){let n=e.steps[t];if(n.kind===`tool`&&n.status===`running`||n.kind===`web_search`&&n.title===`Searching the web`)return n}}function se(e,t){return e&&e.kind===`tool`&&(e.activity||e.info)||t}function ce(e){for(let t=e.steps.length-1;t>=0;t--){let n=e.steps[t];if(n.kind===`web_search`&&n.query)return n.query}}function le(e){for(let t=e.steps.length-1;t>=0;t--){let n=e.steps[t];if(n.kind===`thinking`&&n.text)return q(n.text)}}function Z(e){if(e.kind===`tool`)return e.toolCallId||void 0;if(e.kind===`thinking`||e.kind===`web_search`||e.kind===`web_search_error`)return e.detailKey}function ue({steps:e,onStepDetailClick:t,expandedKeys:n,onExpandedKeysChange:r,isRunning:i=!1}){let[a,o]=(0,Y.useState)(new Set),s=n??a,c=(0,Y.useCallback)(e=>{let t=t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n};if(r){r(t);return}o(t)},[r]),l=(0,Y.useMemo)(()=>K(e),[e]);return l.length===0?null:(0,X.jsx)(`div`,{className:`flex w-full flex-col`,children:l.map((e,n)=>{let r=ae(e,n),a=n===l.length-1;return(0,X.jsx)(de,{section:e,isLast:a,isActiveTail:a&&i,expanded:s.has(r),sectionKeyValue:r,onToggle:c,onStepDetailClick:t},r)})})}var de=(0,Y.memo)(function({section:e,isLast:t,isActiveTail:n,expanded:r,sectionKeyValue:a,onToggle:o,onStepDetailClick:s}){let c=w(),l=F(e.steps),u=l===`running`&&!n?`completed`:l,f=u===`running`||n,p=e.steps[0]?.kind===`thinking`,m=e.steps.length,g=e.label===`Searching the web`,_=g?ce(e):void 0,v=m>=2,y=e.steps.some(e=>U(e)||!!s&&!!Z(e)),b=u===`running`?``:B(e.steps.map(e=>`durationLabel`in e?e.durationLabel:``)),T=u===`running`?oe(e):void 0,E=u===`running`&&!g?se(T,e.label):``,D=g&&(u===`running`||!!_),O=_??e.label,k=p&&f,A=k?le(e)??e.label:void 0,j=u===`running`||D||k||!!b,M=`${m} step${m===1?``:`s`}`;return(0,X.jsxs)(`div`,{"data-testid":`subagent-phase-section`,"data-phase-label":e.label,className:x(`relative flex flex-col gap-2`,!t&&`pb-4`),children:[!t&&(0,X.jsx)(P,{className:`top-[17.5px] -bottom-[4.5px]`}),(0,X.jsxs)(`button`,{type:`button`,"data-testid":`subagent-phase-header`,disabled:!y,onClick:y?()=>o(a):void 0,className:x(`flex h-[22px] w-full items-center gap-2 text-left`,y&&`cursor-pointer`),children:[(0,X.jsx)(`span`,{"aria-hidden":!0,className:`flex h-[14px] w-[14px] shrink-0 items-center justify-center`,children:(0,X.jsx)(`span`,{className:`h-[5px] w-[5px] rounded-full bg-[var(--content-disabled)]`})}),(0,X.jsx)(z,{status:f?`running`:u,isThinking:p&&!f}),(0,X.jsx)(i,{variant:`body-medium-default`,className:`shrink-0 text-[var(--content-default)]`,children:e.label}),j&&(0,X.jsx)(`span`,{"aria-hidden":!0,className:`shrink-0 leading-none text-[var(--content-tertiary)] opacity-10`,children:`|`}),D?(0,X.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-1`,children:[(0,X.jsx)(h,{"aria-hidden":`true`,className:`h-3.5 w-3.5 shrink-0 text-[var(--content-tertiary)]`}),(0,X.jsx)(L,{currentStepTitle:``,currentStepInfo:O})]}):k?(0,X.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-1`,children:[(0,X.jsx)(d,{"aria-hidden":`true`,className:`h-3.5 w-3.5 shrink-0 text-[var(--content-tertiary)]`}),(0,X.jsx)(L,{currentStepTitle:``,currentStepInfo:A??e.label})]}):u===`running`?(0,X.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-1`,children:[(0,X.jsx)(d,{"aria-hidden":`true`,className:`h-3.5 w-3.5 shrink-0 text-[var(--content-tertiary)]`}),(0,X.jsx)(L,{currentStepTitle:``,currentStepInfo:E})]}):b?(0,X.jsx)(i,{variant:`body-small-default`,className:`min-w-0 truncate text-[var(--content-tertiary)]`,children:`Worked for ${b}`}):null,y&&v&&(0,X.jsx)(`span`,{"data-testid":`subagent-phase-step-count`,className:`ml-auto inline-flex shrink-0 items-center self-stretch whitespace-nowrap rounded-full bg-[var(--surface-base)] px-2`,children:(0,X.jsx)(i,{variant:`body-small-default`,className:`whitespace-nowrap text-[var(--content-secondary)]`,children:M})})]}),(0,X.jsx)(C,{initial:!1,children:y&&r&&(0,X.jsx)(S.div,{initial:{height:0,opacity:0},animate:{height:`auto`,opacity:1},exit:{height:0,opacity:0},transition:c?{duration:0}:{duration:.25,ease:[.16,1,.3,1]},className:`overflow-hidden`,children:(0,X.jsx)(`div`,{className:`flex flex-col items-start gap-1 pl-[22px]`,children:e.steps.map((e,t)=>{let n=s?Z(e):void 0;if(n&&s){if(e.kind===`tool`)return(0,X.jsx)(R,{variant:`tool`,iconName:e.iconName,label:e.activity||e.info||e.title,ariaLabel:`View tool details`,onClick:()=>s(n)},I(e,t));if(e.kind===`thinking`)return(0,X.jsx)(R,{variant:`tool`,iconName:`brain`,label:q(e.text),ariaLabel:`View reasoning`,onClick:()=>s(n)},I(e,t));if(e.kind===`web_search`)return(0,X.jsx)(R,{variant:`tool`,iconName:`globe`,label:e.query||e.title,ariaLabel:`View search details`,onClick:()=>s(n)},I(e,t));if(e.kind===`web_search_error`)return(0,X.jsx)(R,{variant:`tool`,iconName:`globe`,label:e.errorMessage,ariaLabel:`View search error`,onClick:()=>s(n)},I(e,t))}return e.kind===`web_search`?(0,X.jsxs)(`div`,{className:`flex w-full flex-col gap-1`,children:[e.query?(0,X.jsx)(i,{variant:`body-small-default`,className:`text-[var(--content-secondary)]`,children:`"${e.query}"`}):null,(0,X.jsx)(W,{step:e})]},I(e,t)):e.kind===`web_search_error`?(0,X.jsx)(V,{step:e},I(e,t)):(0,X.jsx)(N,{step:e},I(e,t))})})},`phase-steps`)})]})}),fe=`
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./button-C8CGr0T0.js";import{t as r}from"./jsx-runtime-BJ8jcmzB.js";import{t as i}from"./typography-DekrYXvs.js";import{t as a}from"./arrow-down-to-line-BuKRLRZS.js";import{n as o,r as s,t as c}from"./metric-card-YqtdN5uX.js";import{A as l,f as u}from"./message-content-C1CZhGIc.js";import{t as d}from"./brain-9Csfs96f.js";import{t as f}from"./chevron-down-D1ho6wFA.js";import{t as p}from"./chevron-left-D29BeQ4x.js";import{t as m}from"./chevron-right-DTpkwA4e.js";import{t as h}from"./globe-BJuNFSn-.js";import{t as g}from"./chat-markdown-message-JeYI9m3i.js";import"./src-DMnnfLrU.js";import{c as _,i as v,l as y,o as b}from"./subagent-store-Bn8k7JMr.js";import{t as x}from"./misc-giJA2hbh.js";import{t as S}from"./proxy-C_GXGfwL.js";import{t as C}from"./AnimatePresence-DkZYJl3q.js";import{t as w}from"./use-reduced-motion-DzXyVFAi.js";import{n as T}from"./use-bundled-avatar-components-Bhvvz-bQ.js";import{t as E}from"./three-dot-indicator-BUucQBI1.js";import{t as D}from"./avatar-renderer-DvM-sFyU.js";import{t as O}from"./avatar-subagent-pDrk_xWL.js";import{i as k,r as A,t as j}from"./use-subagent-card-data-DbKFX1Jc.js";import{S as M,a as N,c as P,d as F,f as I,h as L,i as R,l as z,m as B,n as V,o as H,p as U,r as W,t as G,u as K,w as q}from"./site-favicon-Bu9L02gb.js";import{t as ee}from"./detail-shell-CcrQic9y.js";import{n as te,t as ne}from"./status-badge-pill-w-ULYfRy.js";import{CodeBlock as J,ToolDetailBody as re}from"./tool-detail-panel-_LC-zFuo.js";var Y=e(t(),1),X=r();function ie({status:e}){return(0,X.jsx)(ne,{color:_(e),label:y(e)})}function ae(e,t){let n=e.steps[0];return`${t}-${e.label}-${n?I(n,t):``}`}function oe(e){for(let t=e.steps.length-1;t>=0;t--){let n=e.steps[t];if(n.kind===`tool`&&n.status===`running`||n.kind===`web_search`&&n.title===`Searching the web`)return n}}function se(e,t){return e&&e.kind===`tool`&&(e.activity||e.info)||t}function ce(e){for(let t=e.steps.length-1;t>=0;t--){let n=e.steps[t];if(n.kind===`web_search`&&n.query)return n.query}}function le(e){for(let t=e.steps.length-1;t>=0;t--){let n=e.steps[t];if(n.kind===`thinking`&&n.text)return q(n.text)}}function Z(e){if(e.kind===`tool`)return e.toolCallId||void 0;if(e.kind===`thinking`||e.kind===`web_search`||e.kind===`web_search_error`)return e.detailKey}function ue({steps:e,onStepDetailClick:t,expandedKeys:n,onExpandedKeysChange:r,isRunning:i=!1}){let[a,o]=(0,Y.useState)(new Set),s=n??a,c=(0,Y.useCallback)(e=>{let t=t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n};if(r){r(t);return}o(t)},[r]),l=(0,Y.useMemo)(()=>K(e),[e]);return l.length===0?null:(0,X.jsx)(`div`,{className:`flex w-full flex-col`,children:l.map((e,n)=>{let r=ae(e,n),a=n===l.length-1;return(0,X.jsx)(de,{section:e,isLast:a,isActiveTail:a&&i,expanded:s.has(r),sectionKeyValue:r,onToggle:c,onStepDetailClick:t},r)})})}var de=(0,Y.memo)(function({section:e,isLast:t,isActiveTail:n,expanded:r,sectionKeyValue:a,onToggle:o,onStepDetailClick:s}){let c=w(),l=F(e.steps),u=l===`running`&&!n?`completed`:l,f=u===`running`||n,p=e.steps[0]?.kind===`thinking`,m=e.steps.length,g=e.label===`Searching the web`,_=g?ce(e):void 0,v=m>=2,y=e.steps.some(e=>U(e)||!!s&&!!Z(e)),b=u===`running`?``:B(e.steps.map(e=>`durationLabel`in e?e.durationLabel:``)),T=u===`running`?oe(e):void 0,E=u===`running`&&!g?se(T,e.label):``,D=g&&(u===`running`||!!_),O=_??e.label,k=p&&f,A=k?le(e)??e.label:void 0,j=u===`running`||D||k||!!b,M=`${m} step${m===1?``:`s`}`;return(0,X.jsxs)(`div`,{"data-testid":`subagent-phase-section`,"data-phase-label":e.label,className:x(`relative flex flex-col gap-2`,!t&&`pb-4`),children:[!t&&(0,X.jsx)(P,{className:`top-[17.5px] -bottom-[4.5px]`}),(0,X.jsxs)(`button`,{type:`button`,"data-testid":`subagent-phase-header`,disabled:!y,onClick:y?()=>o(a):void 0,className:x(`flex h-[22px] w-full items-center gap-2 text-left`,y&&`cursor-pointer`),children:[(0,X.jsx)(`span`,{"aria-hidden":!0,className:`flex h-[14px] w-[14px] shrink-0 items-center justify-center`,children:(0,X.jsx)(`span`,{className:`h-[5px] w-[5px] rounded-full bg-[var(--content-disabled)]`})}),(0,X.jsx)(z,{status:f?`running`:u,isThinking:p&&!f}),(0,X.jsx)(i,{variant:`body-medium-default`,className:`shrink-0 text-[var(--content-default)]`,children:e.label}),j&&(0,X.jsx)(`span`,{"aria-hidden":!0,className:`shrink-0 leading-none text-[var(--content-tertiary)] opacity-10`,children:`|`}),D?(0,X.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-1`,children:[(0,X.jsx)(h,{"aria-hidden":`true`,className:`h-3.5 w-3.5 shrink-0 text-[var(--content-tertiary)]`}),(0,X.jsx)(L,{currentStepTitle:``,currentStepInfo:O})]}):k?(0,X.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-1`,children:[(0,X.jsx)(d,{"aria-hidden":`true`,className:`h-3.5 w-3.5 shrink-0 text-[var(--content-tertiary)]`}),(0,X.jsx)(L,{currentStepTitle:``,currentStepInfo:A??e.label})]}):u===`running`?(0,X.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-1`,children:[(0,X.jsx)(d,{"aria-hidden":`true`,className:`h-3.5 w-3.5 shrink-0 text-[var(--content-tertiary)]`}),(0,X.jsx)(L,{currentStepTitle:``,currentStepInfo:E})]}):b?(0,X.jsx)(i,{variant:`body-small-default`,className:`min-w-0 truncate text-[var(--content-tertiary)]`,children:`Worked for ${b}`}):null,y&&v&&(0,X.jsx)(`span`,{"data-testid":`subagent-phase-step-count`,className:`ml-auto inline-flex shrink-0 items-center self-stretch whitespace-nowrap rounded-full bg-[var(--surface-base)] px-2`,children:(0,X.jsx)(i,{variant:`body-small-default`,className:`whitespace-nowrap text-[var(--content-secondary)]`,children:M})})]}),(0,X.jsx)(C,{initial:!1,children:y&&r&&(0,X.jsx)(S.div,{initial:{height:0,opacity:0},animate:{height:`auto`,opacity:1},exit:{height:0,opacity:0},transition:c?{duration:0}:{duration:.25,ease:[.16,1,.3,1]},className:`overflow-hidden`,children:(0,X.jsx)(`div`,{className:`flex flex-col items-start gap-1 pl-[22px]`,children:e.steps.map((e,t)=>{let n=s?Z(e):void 0;if(n&&s){if(e.kind===`tool`)return(0,X.jsx)(R,{variant:`tool`,iconName:e.iconName,label:e.activity||e.info||e.title,ariaLabel:`View tool details`,onClick:()=>s(n)},I(e,t));if(e.kind===`thinking`)return(0,X.jsx)(R,{variant:`tool`,iconName:`brain`,label:q(e.text),ariaLabel:`View reasoning`,onClick:()=>s(n)},I(e,t));if(e.kind===`web_search`)return(0,X.jsx)(R,{variant:`tool`,iconName:`globe`,label:e.query||e.title,ariaLabel:`View search details`,onClick:()=>s(n)},I(e,t));if(e.kind===`web_search_error`)return(0,X.jsx)(R,{variant:`tool`,iconName:`globe`,label:e.errorMessage,ariaLabel:`View search error`,onClick:()=>s(n)},I(e,t))}return e.kind===`web_search`?(0,X.jsxs)(`div`,{className:`flex w-full flex-col gap-1`,children:[e.query?(0,X.jsx)(i,{variant:`body-small-default`,className:`text-[var(--content-secondary)]`,children:`"${e.query}"`}):null,(0,X.jsx)(W,{step:e})]},I(e,t)):e.kind===`web_search_error`?(0,X.jsx)(V,{step:e},I(e,t)):(0,X.jsx)(N,{step:e},I(e,t))})})},`phase-steps`)})]})}),fe=`
2
2
  Content:
3
3
  `;function pe(e){return M(e)||e}function me(e,t){let n=e??``,r=n.indexOf(fe),i=r>=0?n.slice(0,r):``,a=r>=0?n.slice(r+10):n,o=e=>{let t=i.match(RegExp(`^${e}:[ \\t]*(.+)$`,`m`));return t?t[1].trim():null},s=[],c=i.indexOf(`Notices:`);if(c>=0)for(let e of i.slice(c).split(`
4
4
  `)){let t=e.match(/^\s*-\s+(.*)$/);t&&t[1].trim()&&s.push(t[1].trim())}a=a.trim();let l=null,u=a.match(/^<external_content\b([^>]*)>\s*/);if(u){let e=u[1].match(/origin="([^"]+)"/);e&&(l=e[1]),a=a.slice(u[0].length).replace(/\s*<\/external_content>\s*$/,``)}return{url:o(`Final URL`)||o(`Requested URL`)||l||t||null,status:o(`Status`),notices:s,content:a.trim()}}function he({url:e,status:t}){let n=pe(e),r=t?/^\s*2\d\d/.test(t):!1;return(0,X.jsxs)(`a`,{href:e,target:`_blank`,rel:`noopener noreferrer`,className:`flex items-center gap-2 rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)] p-3 transition-colors hover:border-[var(--border-hover)]`,children:[(0,X.jsx)(G,{domain:n,title:n}),(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,X.jsx)(i,{variant:`body-medium-default`,as:`span`,className:`truncate text-[var(--content-default)]`,children:n}),(0,X.jsx)(i,{variant:`body-small-default`,as:`span`,className:`truncate text-[var(--content-tertiary)]`,children:e})]}),t&&(0,X.jsx)(`span`,{className:`shrink-0 rounded-[6px] px-2 py-0.5 text-body-small-emphasised ${r?`text-[var(--system-positive-strong)]`:`text-[var(--content-tertiary)]`}`,children:t})]})}function Q({detail:e}){let[t,n]=(0,Y.useState)(!1),r=typeof e.input?.url==`string`?e.input.url:void 0,a=(0,Y.useMemo)(()=>me(e.result??``,r),[e.result,r]);return e.status===`error`?(0,X.jsx)(J,{text:e.result??`Fetch failed.`}):(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[a.url&&(0,X.jsx)(he,{url:a.url,status:a.status}),a.notices.length>0&&(0,X.jsx)(`div`,{className:`flex flex-col gap-1 rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)] p-3`,children:a.notices.map((e,t)=>(0,X.jsx)(i,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:e},t))}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,X.jsx)(i,{variant:`body-medium-default`,as:`h3`,className:`text-[var(--content-emphasised)]`,children:t?`Raw result`:`Content`}),e.result&&(0,X.jsx)(`button`,{type:`button`,onClick:()=>n(e=>!e),className:`cursor-pointer text-[var(--content-secondary)] transition-colors hover:text-[var(--content-default)]`,children:(0,X.jsx)(i,{variant:`label-small-default`,as:`span`,children:t?`View extracted`:`View raw`})})]}),t?(0,X.jsx)(J,{text:e.result??``}):a.content?(0,X.jsx)(g,{content:a.content}):(0,X.jsx)(i,{variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:e.status===`running`?`Fetching…`:`No content extracted.`})]})]})}function ge({detail:e}){let t=e.searchQuery??``,n=e.searchResults??[];return(0,X.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[t?(0,X.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,X.jsx)(i,{variant:`body-medium-default`,as:`h3`,className:`text-[var(--content-emphasised)]`,children:`Query`}),(0,X.jsx)(i,{variant:`body-medium-lighter`,as:`p`,className:`break-words leading-relaxed text-[var(--content-default)]`,children:`"${t}"`})]}):null,(0,X.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,X.jsx)(i,{variant:`body-medium-default`,as:`h3`,className:`text-[var(--content-emphasised)]`,children:n.length>0?`Sources (${n.length})`:`Sources`}),n.length>0?(0,X.jsx)(W,{step:{kind:`web_search`,title:`Searched the web`,durationLabel:``,linkCount:n.length,results:n}}):(0,X.jsx)(i,{variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:`No sources found.`})]})]})}function $(e){return new Map(e.map(e=>[e.toolCallId,e]))}function _e(e=j){let t=null,n=[],r=[],i=new Map;function a(a){let o=[],s=[];for(let t of a)e(o,s,t);return t=a,n=o,r=s,i=$(n),i}function o(o){let s=k(t,o);switch(s.kind){case`identity`:return i;case`first`:return a(o);case`append`:{let a=o.length,c=n.slice(),l=r.slice();for(let t=s.from;t<a;t++)e(c,l,o[t]);return t=o,n=c,r=l,i=$(n),i}case`mutate-last`:{let a=o.length,s=n.slice(),c=r.slice(),l=s[s.length-1];return l&&l.kind===`thinking`&&l.toolCallId===o[a-1].id&&(s.pop(),c.pop()),e(s,c,o[a-1]),t=o,n=s,r=c,i=$(n),i}case`fallback`:return a(o)}}return{project:o}}function ve(e){let t=(0,Y.useRef)(null);return t.current??=_e(),t.current.project(e)}function ye(e){return e.kind===`web_search`?`globe`:e.kind===`thinking`?`brain`:u(e.toolName,e.input).iconName}function be({detail:e}){return e.status===`running`?(0,X.jsx)(E,{className:`shrink-0`,"data-testid":`nested-detail-running`}):(0,X.jsx)(H[ye(e)]??l,{"aria-hidden":!0,className:`h-5 w-5 shrink-0 text-[var(--content-secondary)]`})}function xe({entry:e,onClose:t,onStop:r,onRequestDetail:l,assistantId:u}){let d=b(e.status),h=w(),_=T(),y=(0,Y.useMemo)(()=>O(e.subagentId),[e.subagentId]),{steps:x}=A(e.events),C=ve(e.events),[E,k]=(0,Y.useState)(null),j=(0,Y.useRef)(C);j.current=C;let M=(0,Y.useCallback)(e=>{j.current.has(e)&&k(e)},[]),[N,P]=(0,Y.useState)(new Set),[F,I]=(0,Y.useState)(!1),[L,R]=(0,Y.useState)(!1),z=(0,Y.useRef)(null),[B,V]=(0,Y.useState)(e.subagentId);B!==e.subagentId&&(V(e.subagentId),I(!1),R(!1),k(null),P(new Set)),(0,Y.useLayoutEffect)(()=>{if(F)return;let e=z.current;e&&R(e.scrollHeight>e.clientHeight)},[e.subagentId,e.objective,F]);let H=v(e);(0,Y.useEffect)(()=>{l&&H&&e.events.length===0&&l(e.subagentId)},[e.subagentId,H,e.events.length,l]);let U=E?C.get(E):void 0,W=(0,Y.useCallback)(()=>k(null),[]),G=U?U.activity||U.title:``,K=U?G:e.label;return(0,X.jsx)(ee,{headerAbove:U&&(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 border-b border-[var(--border-hover)] px-5 py-3`,children:[(0,X.jsx)(n,{variant:`link`,onClick:W,title:e.label,className:`inline-flex min-w-0 shrink border-0 text-left text-[color:var(--content-default)]`,children:(0,X.jsx)(i,{variant:`body-small-default`,as:`span`,className:`min-w-0 truncate`,children:e.label})}),(0,X.jsx)(m,{className:`h-2.5 w-2.5 shrink-0 text-[var(--content-tertiary)]`,"aria-hidden":!0}),(0,X.jsx)(i,{variant:`body-small-default`,as:`span`,title:G,className:`min-w-0 shrink truncate text-[var(--content-secondary)]`,children:G})]}),icon:(0,X.jsxs)(X.Fragment,{children:[U&&(0,X.jsx)(n,{variant:`outlined`,iconOnly:(0,X.jsx)(p,{}),onClick:W,"aria-label":`Back to timeline`,tooltip:`Back`,className:`shrink-0`}),U?(0,X.jsx)(be,{detail:U}):_?(0,X.jsx)(D,{components:_,bodyShapeId:y.bodyShape,eyeStyleId:y.eyeStyle,colorId:y.color,size:32}):(0,X.jsx)(`div`,{style:{width:32,height:32,flexShrink:0},"aria-hidden":!0})]}),title:K,headerTrailing:(0,X.jsx)(ie,{status:e.status}),headerActions:d&&r?(0,X.jsx)(te,{onStop:()=>r(e.subagentId),ariaLabel:`Stop subagent`}):void 0,closeLabel:`Close subagent detail`,onClose:t,children:(0,X.jsx)(S.div,{initial:{opacity:0},animate:{opacity:1},transition:h?{duration:0}:{duration:.18,ease:[.16,1,.3,1]},children:U?(0,X.jsx)(X.Fragment,{children:U.kind===`thinking`?(0,X.jsx)(g,{content:U.thinkingText??``,hardLineBreaks:!0,assistantId:u}):U.kind===`web_search`&&U.status!==`error`?(0,X.jsx)(ge,{detail:U}):U.toolName===`web_fetch`?(0,X.jsx)(Q,{detail:U}):(0,X.jsx)(re,{detail:U,assistantId:u})}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`div`,{className:`mb-5 grid grid-cols-2 gap-3`,children:[(0,X.jsx)(c,{icon:(0,X.jsx)(a,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-secondary)`}}),target:e.inputTokens,format:e=>o(Math.round(e)),label:`Input`}),(0,X.jsx)(c,{icon:(0,X.jsx)(s,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-secondary)`}}),target:e.outputTokens,format:e=>o(Math.round(e)),label:`Output`})]}),e.objective&&(0,X.jsxs)(`div`,{className:`mb-5`,children:[(0,X.jsx)(i,{variant:`body-medium-default`,as:`h3`,className:`mb-2 text-[var(--content-emphasised)]`,children:`Objective`}),(0,X.jsx)(i,{ref:z,variant:`body-medium-lighter`,as:`p`,tabIndex:F?0:void 0,role:F?`region`:void 0,"aria-label":F?`Objective`:void 0,className:`whitespace-pre-wrap break-words leading-relaxed text-[var(--content-default)] ${F?`max-h-[280px] overflow-y-auto`:`line-clamp-5`}`,children:e.objective}),L&&(0,X.jsx)(n,{variant:`link`,onClick:()=>I(e=>!e),"aria-expanded":F,rightIcon:(0,X.jsx)(f,{className:`h-3.5 w-3.5 transition-transform ${F?`rotate-180`:``}`,"aria-hidden":!0}),className:`mt-1.5 inline-flex gap-1 border-0 text-[color:var(--content-secondary)] hover:text-[color:var(--content-default)] hover:no-underline`,children:(0,X.jsx)(i,{variant:`label-small-default`,children:F?`Show less`:`Show more`})}),(0,X.jsx)(`div`,{className:`mt-5 h-px w-full bg-[var(--border-hover)]`})]}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(i,{variant:`title-medium`,as:`h3`,className:`mb-4 text-[var(--content-emphasised)]`,children:`Timeline`}),e.events.length>0?(0,X.jsx)(ue,{steps:x,expandedKeys:N,onExpandedKeysChange:P,onStepDetailClick:M,isRunning:d},e.subagentId):(0,X.jsx)(i,{variant:`body-small-default`,className:`py-4 text-center text-[var(--content-tertiary)]`,children:`No events yet`})]})]})},U?`detail`:`list`)})}export{xe as SubagentDetailPanel};
@@ -1,3 +1,3 @@
1
- import{t as e}from"./capture-error-DiNp24s6.js";import{n as t,t as n}from"./create-selectors-CmDroXTn.js";import{C as r,h as i}from"./api-BjYAXdCk.js";import{r as a}from"./resolved-assistants-store-BNadgXqb.js";import{i as o,n as s}from"./utils-BEkyAhbA.js";import{Ar as c,Or as l,kr as u}from"./sdk.gen-CiE6cMi0.js";import{a as d}from"./diagnostics-CwFqcLv_.js";import{t as f}from"./conversation-store-DKBwV4bc.js";import{t as p}from"./by-tool-use-id-index-C1T3QA5-.js";function m(e){return e===`running`||e===`pending`||e===`awaiting_input`}function h(e,t){return m(e)||!m(t)}function g(e){switch(e){case`completed`:return`var(--system-positive-strong)`;case`failed`:case`aborted`:case`interrupted`:return`var(--system-negative-strong)`;default:return`var(--primary-base)`}}function _(e){switch(e){case`pending`:return`Pending`;case`running`:return`Running`;case`awaiting_input`:return`Awaiting Input`;case`completed`:return`Completed`;case`failed`:return`Failed`;case`aborted`:return`Aborted`;case`interrupted`:return`Interrupted`;default:return`Unknown`}}var v=`0.10.0`;function y(){return s(v)}function b(){return o(v)}async function x(t,n,r){try{let{data:a,response:o}=await u({path:{assistant_id:t,id:n},query:{conversationId:r},throwOnError:!1});if(!o||!o.ok||!a)return null;let s=i.safeParse(a);return s.success?s.data:(e(s.error,{context:`fetchSubagentDetail`}),null)}catch(t){return e(t,{context:`fetchSubagentDetail`}),null}}function S(e){let t=0,n=[];for(let r of e){let e;switch(r.type){case`text`:case`assistant_text_delta`:e=`text`;break;case`tool_use`:case`tool_use_start`:e=`tool_call`;break;case`tool_result`:e=`tool_result`;break;case`error`:e=`error`;break;default:continue}let i=r.content;if(e===`text`&&i===``)continue;let a=n[n.length-1];if(e===`text`&&a&&a.type===`text`){a.content+=`
1
+ import{t as e}from"./capture-error-VBsIaC5d.js";import{n as t,t as n}from"./create-selectors-CmDroXTn.js";import{h as r,w as i}from"./api-DBKgmyno.js";import{r as a}from"./resolved-assistants-store-D57qRwKv.js";import{i as o,n as s}from"./utils-wDLoxcBZ.js";import{Ar as c,jr as l,kr as u}from"./sdk.gen-hZs6YBR0.js";import{a as d}from"./diagnostics-BcQgahbk.js";import{t as f}from"./conversation-store-DdBAApt6.js";import{t as p}from"./by-tool-use-id-index-BP1pAJzI.js";function m(e){return e===`running`||e===`pending`||e===`awaiting_input`}function h(e,t){return m(e)||!m(t)}function g(e){switch(e){case`completed`:return`var(--system-positive-strong)`;case`failed`:case`aborted`:case`interrupted`:return`var(--system-negative-strong)`;default:return`var(--primary-base)`}}function _(e){switch(e){case`pending`:return`Pending`;case`running`:return`Running`;case`awaiting_input`:return`Awaiting Input`;case`completed`:return`Completed`;case`failed`:return`Failed`;case`aborted`:return`Aborted`;case`interrupted`:return`Interrupted`;default:return`Unknown`}}var v=`0.10.0`;function y(){return s(v)}function b(){return o(v)}async function x(t,n,i){try{let{data:a,response:o}=await c({path:{assistant_id:t,id:n},query:{conversationId:i},throwOnError:!1});if(!o||!o.ok||!a)return null;let s=r.safeParse(a);return s.success?s.data:(e(s.error,{context:`fetchSubagentDetail`}),null)}catch(t){return e(t,{context:`fetchSubagentDetail`}),null}}function S(e){let t=0,n=[];for(let r of e){let e;switch(r.type){case`text`:case`assistant_text_delta`:e=`text`;break;case`tool_use`:case`tool_use_start`:e=`tool_call`;break;case`tool_result`:e=`tool_result`;break;case`error`:e=`error`;break;default:continue}let i=r.content;if(e===`text`&&i===``)continue;let a=n[n.length-1];if(e===`text`&&a&&a.type===`text`){a.content+=`
2
2
 
3
- `+i;continue}n.push({id:`detail-${++t}`,type:e,content:i,toolName:r.toolName,isError:r.isError,toolUseId:r.toolUseId,input:r.input,timestamp:Date.now()})}return n}var C=`0.11.1`;function w(){return s(C)}function T(e){if(e.conversationId)return e.conversationId;if(e.parentConversationId&&w())return e.parentConversationId}function E(e){return T(e)!==void 0}var D=[],O={byId:{},orderedIds:[],terminalUsageIds:new Set,byParent:new Map,byToolUseId:new Map,fetchedAt:new Map};function k(e){let t=[];return e.parentMessageStableId&&t.push(e.parentMessageStableId),e.parentMessageId&&e.parentMessageId!==e.parentMessageStableId&&t.push(e.parentMessageId),t}function A(e,t){let n=k(t);if(n.length===0)return e;let r=new Map(e);for(let e of n){let n=[...r.get(e)??[],t];n.sort((e,t)=>e.spawnedAt-t.spawnedAt),r.set(e,n)}return r}function j(e,t,n,r){let i=new Map(e),a=i.get(t);a&&i.set(t,a.map(e=>r.get(e.subagentId)??e));let o=[...i.get(n)??[]];for(let e of r.values()){let t=o.findIndex(t=>t.subagentId===e.subagentId);t===-1?o.push(e):o[t]=e}return o.sort((e,t)=>e.spawnedAt-t.spawnedAt),i.set(n,o),i}function M(e,t,n,r){let i=e[t];return!i||i[n]===r?null:{...e,[t]:{...i,[n]:r}}}function N(e){if(e.isError)return`error`;switch(e.type){case`assistant_text_delta`:case`message_complete`:return`text`;case`tool_use_start`:return`tool_call`;case`tool_result`:return`tool_result`;default:return`text`}}var P=[`command`,`file_path`,`path`,`query`,`url`,`pattern`,`glob`];function F(e){for(let t of P){let n=e[t];if(typeof n==`string`)return n.length>120?n.slice(0,117)+`...`:n}return``}function I(e){let t=e.activityMetadata?.webSearch?.query;return typeof t==`string`&&t.length>0?t:void 0}var L=0;function R(){return`te-${++L}`}var z=new Map,B=0,V=5e3,H=new Map;function U(e){H.set(e,Date.now())}function W(e){let t=H.get(e)??0;return Date.now()-t<V?!1:(U(e),!0)}function G(e,t,n,r,i){let a=e.byId[t];if(a){h(a.status,r)&&e.changeStatus({subagentId:t,status:r,error:n.error,inputTokens:n.usage?.inputTokens,outputTokens:n.usage?.outputTokens}),e.backfillIdentity({subagentId:t,label:n.label,objective:n.objective,parentToolUseId:n.parentToolUseId}),n.conversationId&&e.setConversationId(t,n.conversationId),e.setParentConversationId(t,i);return}e.ensureEntry({subagentId:t,timestamp:Date.now(),status:r,label:n.label,objective:n.objective,isFork:n.isFork,error:n.error,conversationId:n.conversationId,parentConversationId:i,parentToolUseId:n.parentToolUseId,inputTokens:n.usage?.inputTokens,outputTokens:n.usage?.outputTokens})}async function K(t,n,i){let a=B,o=Object.values(t().byId).filter(e=>e.parentConversationId===i&&m(e.status)).map(e=>e.subagentId),s;try{let{data:e,response:t}=await c({path:{assistant_id:n},query:{parentConversationId:i},throwOnError:!1});if(!t?.ok||!e?.subagents)return;s=e.subagents}catch(t){e(t,{context:`reconcileFromDaemon`,bestEffort:!0});return}if(a!==B)return;for(let[e,n]of Object.entries(s)){let a=r.safeParse(n.status);a.success&&G(t(),e,n,a.data,i)}let{byId:l,changeStatus:u}=t();for(let e of o){let t=l[e];!t||t.parentConversationId!==i||!m(t.status)||Object.hasOwn(s,e)||u({subagentId:e,status:`interrupted`})}}var q=t()((e,t)=>({...O,spawnSubagent:n=>{let{byId:r,orderedIds:i}=t();if(r[n.subagentId])return;let a={subagentId:n.subagentId,label:n.label,objective:n.objective,status:n.status??`pending`,isFork:n.isFork??!1,error:n.error,inputTokens:n.inputTokens??0,outputTokens:n.outputTokens??0,spawnedAt:n.timestamp,events:[],conversationId:n.conversationId,parentConversationId:n.parentConversationId,parentMessageStableId:n.parentMessageStableId,parentMessageId:n.parentMessageId,parentToolUseId:n.parentToolUseId},o={...r,[n.subagentId]:a},s=p(t().byToolUseId,n.parentToolUseId,n.subagentId);e({byId:o,orderedIds:[...i,n.subagentId],byParent:A(t().byParent,a),byToolUseId:s}),!m(a.status)&&(n.inputTokens!=null||n.outputTokens!=null)&&t().terminalUsageIds.add(n.subagentId)},ensureEntry:n=>{if(t().byId[n.subagentId])return;let r=n.parentConversationId??f.getState().activeConversationId??void 0,i=n.status??`running`;if(t().spawnSubagent({subagentId:n.subagentId,label:n.label??``,objective:n.objective??``,status:i,isFork:n.isFork,error:n.error,conversationId:n.conversationId,parentConversationId:r,timestamp:n.timestamp,parentToolUseId:n.parentToolUseId,inputTokens:n.inputTokens,outputTokens:n.outputTokens}),!m(i)||!E({conversationId:n.conversationId,parentConversationId:r}))return;let{byId:a}=t(),o=a[n.subagentId];o&&e({byId:{...a,[n.subagentId]:{...o,hydrationPending:!0}}})},changeStatus:n=>{let{byId:r}=t(),i=r[n.subagentId];if(!i)return;let a=m(i.status)&&!m(n.status)&&i.events.length===0?!1:i.detailSettled;e({byId:{...r,[n.subagentId]:{...i,detailSettled:a,status:n.status,error:n.error??i.error,inputTokens:n.inputTokens||i.inputTokens,outputTokens:n.outputTokens||i.outputTokens}}}),!m(n.status)&&(n.inputTokens!=null||n.outputTokens!=null)&&t().terminalUsageIds.add(n.subagentId)},receiveEvent:n=>{let{byId:r}=t(),i=r[n.subagentId];if(!i||i.hydrationPending)return;let a=N(n.event),o;if(o=n.event.type===`tool_use_start`&&n.event.input?F(n.event.input):n.event.content??n.event.text??n.event.result??``,a===`text`&&n.event.type===`assistant_text_delta`){let t=i.events[i.events.length-1];if(t&&t.type===`text`){let a=[...i.events];a[a.length-1]={...t,content:t.content+o},e({byId:{...r,[n.subagentId]:{...i,events:a}}});return}if(!o)return}if(n.event.type===`message_complete`)return;let s={id:R(),type:a,content:o,toolName:n.event.toolName,isError:n.event.isError,timestamp:n.timestamp,toolUseId:n.event.toolUseId,input:n.event.type===`tool_use_start`?n.event.input:void 0,result:n.event.type===`tool_result`?n.event.result??n.event.content??n.event.text:void 0,searchQuery:I(n.event)};e({byId:{...r,[n.subagentId]:{...i,events:[...i.events,s]}}})},loadDetail:n=>{let{byId:r}=t(),i=r[n.subagentId];if(!i)return;let a=i.parentToolUseId??n.parentToolUseId,o=a&&!i.parentToolUseId?p(t().byToolUseId,a,n.subagentId):t().byToolUseId,s=n.conversationId&&n.conversationId!==i.parentConversationId?n.conversationId:i.conversationId,c=n.status&&h(i.status,n.status)?n.status:i.status;e({byId:{...r,[n.subagentId]:{...i,conversationId:s,label:i.label||(n.label??``),parentToolUseId:a,status:c,objective:n.objective??i.objective,inputTokens:n.inputTokens??i.inputTokens,outputTokens:n.outputTokens??i.outputTokens,events:n.events.length>0&&i.events.length===0?n.events:i.events,hydrationPending:!1}},byToolUseId:o})},backfillIdentity:n=>{let{byId:r}=t(),i=r[n.subagentId];if(!i)return;let a=i.label||(n.label??``),o=i.objective||(n.objective??``),s=i.parentToolUseId??n.parentToolUseId;a===i.label&&o===i.objective&&s===i.parentToolUseId||e({byId:{...r,[n.subagentId]:{...i,label:a,objective:o,parentToolUseId:s}},byToolUseId:p(t().byToolUseId,s,n.subagentId)})},attachParentMessage:(n,r)=>{let{byId:i}=t(),a=i[n];if(!a||a.parentMessageId)return;let o={...a,parentMessageId:r};e({byId:{...i,[n]:o},byParent:j(t().byParent,a.parentMessageStableId??r,r,new Map([[n,o]]))})},setConversationId:(n,r)=>{let i=M(t().byId,n,`conversationId`,r);i&&e({byId:i})},setParentConversationId:(n,r)=>{let i=M(t().byId,n,`parentConversationId`,r);i&&e({byId:i})},reanchorToMessage:({stableId:n,messageId:r})=>{if(n===r)return;let{byId:i}=t(),a=new Map;for(let e of Object.values(i))e.parentMessageStableId===n&&e.parentMessageId!==r&&a.set(e.subagentId,{...e,parentMessageId:r});if(a.size===0)return;let o={...i};for(let[e,t]of a)o[e]=t;e({byId:o,byParent:j(t().byParent,n,r,a)})},updateUsage:n=>{let{byId:r,terminalUsageIds:i}=t();if(i.has(n.subagentId))return;let a=r[n.subagentId];a&&e({byId:{...r,[n.subagentId]:{...a,inputTokens:a.inputTokens+n.inputTokens,outputTokens:a.outputTokens+n.outputTokens}}})},fetchDetailIfNeeded:async(n,r)=>{let{byId:i,fetchedAt:a}=t(),o=i[r];if(!o)return;let s=T(o);if(!s||o.events.length>0)return;let c=a.get(r);if(c!==void 0&&c>=o.spawnedAt)return;let l=new Map(a);l.set(r,o.spawnedAt),e({fetchedAt:l});let u=await x(n,r,s),d=M(t().byId,r,`detailSettled`,!0);d&&e({byId:d});let f=()=>{let n=new Map(t().fetchedAt);n.delete(r),e({fetchedAt:n})};if(!u){f();let n=t().byId[r];n?.hydrationPending&&e({byId:{...t().byId,[r]:{...n,hydrationPending:!1}}});return}let p=S(u.events);p.length===0&&f(),t().loadDetail({subagentId:r,status:u.status,objective:u.objective,inputTokens:u.usage?.inputTokens,outputTokens:u.usage?.outputTokens,events:p,label:u.label,parentToolUseId:u.parentToolUseId,conversationId:u.conversationId})},reconcileFromDaemon:(e,n,r=`mount`)=>{if(!y())return Promise.resolve();let i=z.get(n);if(i)return i;if(r===`reopen`)U(n);else if(!W(n))return Promise.resolve();d(`subagent_reconcile_kick`,{trigger:r});let a=K(t,e,n).finally(()=>{z.get(n)===a&&z.delete(n)});return z.set(n,a),a},abortSubagent:async e=>{let t=a.getState().activeAssistantId,n=f.getState().activeConversationId;if(!(!t||!n))try{await l({path:{assistant_id:t,id:e},body:{conversationId:n},throwOnError:!0})}catch{}},reset:()=>{H.clear(),B++,z.clear(),e({byId:{},orderedIds:[],terminalUsageIds:new Set,byParent:new Map,byToolUseId:new Map,fetchedAt:new Map})}})),J=n(q);function Y(e){let t=a.getState().activeAssistantId,n=e??f.getState().activeConversationId;!t||!n||q.getState().reconcileFromDaemon(t,n,`unknown_id`)}export{b as a,g as c,E as i,_ as l,Y as n,m as o,J as r,h as s,D as t};
3
+ `+i;continue}n.push({id:`detail-${++t}`,type:e,content:i,toolName:r.toolName,isError:r.isError,toolUseId:r.toolUseId,input:r.input,timestamp:Date.now()})}return n}var C=`0.11.1`;function w(){return s(C)}function T(e){if(e.conversationId)return e.conversationId;if(e.parentConversationId&&w())return e.parentConversationId}function E(e){return T(e)!==void 0}var D=[],O={byId:{},orderedIds:[],terminalUsageIds:new Set,byParent:new Map,byToolUseId:new Map,fetchedAt:new Map};function k(e){let t=[];return e.parentMessageStableId&&t.push(e.parentMessageStableId),e.parentMessageId&&e.parentMessageId!==e.parentMessageStableId&&t.push(e.parentMessageId),t}function A(e,t){let n=k(t);if(n.length===0)return e;let r=new Map(e);for(let e of n){let n=[...r.get(e)??[],t];n.sort((e,t)=>e.spawnedAt-t.spawnedAt),r.set(e,n)}return r}function j(e,t,n,r){let i=new Map(e),a=i.get(t);a&&i.set(t,a.map(e=>r.get(e.subagentId)??e));let o=[...i.get(n)??[]];for(let e of r.values()){let t=o.findIndex(t=>t.subagentId===e.subagentId);t===-1?o.push(e):o[t]=e}return o.sort((e,t)=>e.spawnedAt-t.spawnedAt),i.set(n,o),i}function M(e,t,n,r){let i=e[t];return!i||i[n]===r?null:{...e,[t]:{...i,[n]:r}}}function N(e){if(e.isError)return`error`;switch(e.type){case`assistant_text_delta`:case`message_complete`:return`text`;case`tool_use_start`:return`tool_call`;case`tool_result`:return`tool_result`;default:return`text`}}var P=[`command`,`file_path`,`path`,`query`,`url`,`pattern`,`glob`];function F(e){for(let t of P){let n=e[t];if(typeof n==`string`)return n.length>120?n.slice(0,117)+`...`:n}return``}function I(e){let t=e.activityMetadata?.webSearch?.query;return typeof t==`string`&&t.length>0?t:void 0}var L=0;function R(){return`te-${++L}`}var z=new Map,B=0,V=5e3,H=new Map;function U(e){H.set(e,Date.now())}function W(e){let t=H.get(e)??0;return Date.now()-t<V?!1:(U(e),!0)}function G(e,t,n,r,i){let a=e.byId[t];if(a){h(a.status,r)&&e.changeStatus({subagentId:t,status:r,error:n.error,inputTokens:n.usage?.inputTokens,outputTokens:n.usage?.outputTokens}),e.backfillIdentity({subagentId:t,label:n.label,objective:n.objective,parentToolUseId:n.parentToolUseId}),n.conversationId&&e.setConversationId(t,n.conversationId),e.setParentConversationId(t,i);return}e.ensureEntry({subagentId:t,timestamp:Date.now(),status:r,label:n.label,objective:n.objective,isFork:n.isFork,error:n.error,conversationId:n.conversationId,parentConversationId:i,parentToolUseId:n.parentToolUseId,inputTokens:n.usage?.inputTokens,outputTokens:n.usage?.outputTokens})}async function K(t,n,r){let a=B,o=Object.values(t().byId).filter(e=>e.parentConversationId===r&&m(e.status)).map(e=>e.subagentId),s;try{let{data:e,response:t}=await l({path:{assistant_id:n},query:{parentConversationId:r},throwOnError:!1});if(!t?.ok||!e?.subagents)return;s=e.subagents}catch(t){e(t,{context:`reconcileFromDaemon`,bestEffort:!0});return}if(a!==B)return;for(let[e,n]of Object.entries(s)){let a=i.safeParse(n.status);a.success&&G(t(),e,n,a.data,r)}let{byId:c,changeStatus:u}=t();for(let e of o){let t=c[e];!t||t.parentConversationId!==r||!m(t.status)||Object.hasOwn(s,e)||u({subagentId:e,status:`interrupted`})}}var q=t()((e,t)=>({...O,spawnSubagent:n=>{let{byId:r,orderedIds:i}=t();if(r[n.subagentId])return;let a={subagentId:n.subagentId,label:n.label,objective:n.objective,status:n.status??`pending`,isFork:n.isFork??!1,error:n.error,inputTokens:n.inputTokens??0,outputTokens:n.outputTokens??0,spawnedAt:n.timestamp,events:[],conversationId:n.conversationId,parentConversationId:n.parentConversationId,parentMessageStableId:n.parentMessageStableId,parentMessageId:n.parentMessageId,parentToolUseId:n.parentToolUseId},o={...r,[n.subagentId]:a},s=p(t().byToolUseId,n.parentToolUseId,n.subagentId);e({byId:o,orderedIds:[...i,n.subagentId],byParent:A(t().byParent,a),byToolUseId:s}),!m(a.status)&&(n.inputTokens!=null||n.outputTokens!=null)&&t().terminalUsageIds.add(n.subagentId)},ensureEntry:n=>{if(t().byId[n.subagentId])return;let r=n.parentConversationId??f.getState().activeConversationId??void 0,i=n.status??`running`;if(t().spawnSubagent({subagentId:n.subagentId,label:n.label??``,objective:n.objective??``,status:i,isFork:n.isFork,error:n.error,conversationId:n.conversationId,parentConversationId:r,timestamp:n.timestamp,parentToolUseId:n.parentToolUseId,inputTokens:n.inputTokens,outputTokens:n.outputTokens}),!m(i)||!E({conversationId:n.conversationId,parentConversationId:r}))return;let{byId:a}=t(),o=a[n.subagentId];o&&e({byId:{...a,[n.subagentId]:{...o,hydrationPending:!0}}})},changeStatus:n=>{let{byId:r}=t(),i=r[n.subagentId];if(!i)return;let a=m(i.status)&&!m(n.status)&&i.events.length===0?!1:i.detailSettled;e({byId:{...r,[n.subagentId]:{...i,detailSettled:a,status:n.status,error:n.error??i.error,inputTokens:n.inputTokens||i.inputTokens,outputTokens:n.outputTokens||i.outputTokens}}}),!m(n.status)&&(n.inputTokens!=null||n.outputTokens!=null)&&t().terminalUsageIds.add(n.subagentId)},receiveEvent:n=>{let{byId:r}=t(),i=r[n.subagentId];if(!i||i.hydrationPending)return;let a=N(n.event),o;if(o=n.event.type===`tool_use_start`&&n.event.input?F(n.event.input):n.event.content??n.event.text??n.event.result??``,a===`text`&&n.event.type===`assistant_text_delta`){let t=i.events[i.events.length-1];if(t&&t.type===`text`){let a=[...i.events];a[a.length-1]={...t,content:t.content+o},e({byId:{...r,[n.subagentId]:{...i,events:a}}});return}if(!o)return}if(n.event.type===`message_complete`)return;let s={id:R(),type:a,content:o,toolName:n.event.toolName,isError:n.event.isError,timestamp:n.timestamp,toolUseId:n.event.toolUseId,input:n.event.type===`tool_use_start`?n.event.input:void 0,result:n.event.type===`tool_result`?n.event.result??n.event.content??n.event.text:void 0,searchQuery:I(n.event)};e({byId:{...r,[n.subagentId]:{...i,events:[...i.events,s]}}})},loadDetail:n=>{let{byId:r}=t(),i=r[n.subagentId];if(!i)return;let a=i.parentToolUseId??n.parentToolUseId,o=a&&!i.parentToolUseId?p(t().byToolUseId,a,n.subagentId):t().byToolUseId,s=n.conversationId&&n.conversationId!==i.parentConversationId?n.conversationId:i.conversationId,c=n.status&&h(i.status,n.status)?n.status:i.status;e({byId:{...r,[n.subagentId]:{...i,conversationId:s,label:i.label||(n.label??``),parentToolUseId:a,status:c,objective:n.objective??i.objective,inputTokens:n.inputTokens??i.inputTokens,outputTokens:n.outputTokens??i.outputTokens,events:n.events.length>0&&i.events.length===0?n.events:i.events,hydrationPending:!1}},byToolUseId:o})},backfillIdentity:n=>{let{byId:r}=t(),i=r[n.subagentId];if(!i)return;let a=i.label||(n.label??``),o=i.objective||(n.objective??``),s=i.parentToolUseId??n.parentToolUseId;a===i.label&&o===i.objective&&s===i.parentToolUseId||e({byId:{...r,[n.subagentId]:{...i,label:a,objective:o,parentToolUseId:s}},byToolUseId:p(t().byToolUseId,s,n.subagentId)})},attachParentMessage:(n,r)=>{let{byId:i}=t(),a=i[n];if(!a||a.parentMessageId)return;let o={...a,parentMessageId:r};e({byId:{...i,[n]:o},byParent:j(t().byParent,a.parentMessageStableId??r,r,new Map([[n,o]]))})},setConversationId:(n,r)=>{let i=M(t().byId,n,`conversationId`,r);i&&e({byId:i})},setParentConversationId:(n,r)=>{let i=M(t().byId,n,`parentConversationId`,r);i&&e({byId:i})},reanchorToMessage:({stableId:n,messageId:r})=>{if(n===r)return;let{byId:i}=t(),a=new Map;for(let e of Object.values(i))e.parentMessageStableId===n&&e.parentMessageId!==r&&a.set(e.subagentId,{...e,parentMessageId:r});if(a.size===0)return;let o={...i};for(let[e,t]of a)o[e]=t;e({byId:o,byParent:j(t().byParent,n,r,a)})},updateUsage:n=>{let{byId:r,terminalUsageIds:i}=t();if(i.has(n.subagentId))return;let a=r[n.subagentId];a&&e({byId:{...r,[n.subagentId]:{...a,inputTokens:a.inputTokens+n.inputTokens,outputTokens:a.outputTokens+n.outputTokens}}})},fetchDetailIfNeeded:async(n,r)=>{let{byId:i,fetchedAt:a}=t(),o=i[r];if(!o)return;let s=T(o);if(!s||o.events.length>0)return;let c=a.get(r);if(c!==void 0&&c>=o.spawnedAt)return;let l=new Map(a);l.set(r,o.spawnedAt),e({fetchedAt:l});let u=await x(n,r,s),d=M(t().byId,r,`detailSettled`,!0);d&&e({byId:d});let f=()=>{let n=new Map(t().fetchedAt);n.delete(r),e({fetchedAt:n})};if(!u){f();let n=t().byId[r];n?.hydrationPending&&e({byId:{...t().byId,[r]:{...n,hydrationPending:!1}}});return}let p=S(u.events);p.length===0&&f(),t().loadDetail({subagentId:r,status:u.status,objective:u.objective,inputTokens:u.usage?.inputTokens,outputTokens:u.usage?.outputTokens,events:p,label:u.label,parentToolUseId:u.parentToolUseId,conversationId:u.conversationId})},reconcileFromDaemon:(e,n,r=`mount`)=>{if(!y())return Promise.resolve();let i=z.get(n);if(i)return i;if(r===`reopen`)U(n);else if(!W(n))return Promise.resolve();d(`subagent_reconcile_kick`,{trigger:r});let a=K(t,e,n).finally(()=>{z.get(n)===a&&z.delete(n)});return z.set(n,a),a},abortSubagent:async e=>{let t=a.getState().activeAssistantId,n=f.getState().activeConversationId;if(!(!t||!n))try{await u({path:{assistant_id:t,id:e},body:{conversationId:n},throwOnError:!0})}catch{}},reset:()=>{H.clear(),B++,z.clear(),e({byId:{},orderedIds:[],terminalUsageIds:new Set,byParent:new Map,byToolUseId:new Map,fetchedAt:new Map})}})),J=n(q);function Y(e){let t=a.getState().activeAssistantId,n=e??f.getState().activeConversationId;!t||!n||q.getState().reconcileFromDaemon(t,n,`unknown_id`)}export{b as a,g as c,E as i,_ as l,Y as n,m as o,J as r,h as s,D as t};
@@ -1 +1 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{s as t,t as n}from"./local-settings-Bx7FsNo5.js";import{t as r}from"./react-BFJW0bSv.js";import{W as i,t as a}from"./button-VkxVX0DM.js";import{d as o,h as s,u as c}from"./chunk-5KNZJZUH-BUqIilZr.js";import{n as l}from"./QueryClientProvider-EuRl-wrW.js";import{t as u}from"./useQuery-CTSuec5b.js";import{t as d}from"./useMutation-D2YPyfEH.js";import{t as f}from"./jsx-runtime-BJ8jcmzB.js";import{t as p}from"./card-DUsAeHUS.js";import{a as m,n as h}from"./list-row-CDwzGT9g.js";import{t as g}from"./createLucideIcon-B-ZPaMbU.js";import{t as _}from"./arrow-down-to-line-BuKRLRZS.js";import{t as v}from"./arrow-left-Ciai6BHG.js";import{a as y,i as b,n as x,o as S,r as C,t as ee}from"./use-skill-actions-CdbZjq6a.js";import{t as w}from"./brain-9Csfs96f.js";import{t as T}from"./calendar-5ZUL5438.js";import{t as E}from"./check-pgeLaeXx.js";import{i as D,n as O,r as te,t as ne}from"./invalidate-plugin-queries-DxagFqKP.js";import{t as k}from"./circle-check-big-BDMPSnMn.js";import{t as re}from"./cloud-off-CB9uhEDu.js";import{t as ie}from"./code-u4Wi5zSA.js";import{t as ae}from"./download-DnnvWjPo.js";import{t as A}from"./external-link-B-pfCiUo.js";import{t as j}from"./globe-COrlg99x.js";import{t as oe}from"./hard-drive-BV9-fN_J.js";import{t as M}from"./heart-Bd-pnn1X.js";import{t as N}from"./layout-grid-lHmG2izK.js";import{t as se}from"./link-2-BBS4SmE3.js";import{t as P}from"./loader-circle-DYe85z3g.js";import{t as ce}from"./mail-9qQtaWSe.js";import{t as le}from"./message-circle-CQpMnPIR.js";import{t as ue}from"./mic-yJxjqdDR.js";import{t as de}from"./puzzle-DHy-ePUL.js";import{t as fe}from"./search-D_t5oHhF.js";import{t as pe}from"./settings-B-74NxzZ.js";import{t as me}from"./sparkles-Bhr0JiLM.js";import{t as F}from"./terminal-CttH6-2_.js";import{t as he}from"./trash-2-V2WT_DbX.js";import{t as I}from"./triangle-alert-43gIbLca.js";import{t as ge}from"./user-D49nbijQ.js";import{t as _e}from"./x-zfSDUG5z.js";import{n as L,t as ve}from"./installed-plugins-query-CZLdpwnL.js";import"./src-CImIAPTd.js";import{t as R}from"./tag-Ddzwz3ij.js";import{t as z}from"./popover-D3A6cIyW.js";import{t as ye}from"./input-DkgpMeG9.js";import{t as be}from"./toggle-0qt1e_3r.js";import{n as B}from"./toast-DqqWkjsh.js";import{t as xe}from"./confirm-dialog-Drw1adml.js";import{t as Se}from"./file-markdown-C1rEGVrN.js";import{t as Ce}from"./assistant-identity-store-DhAqaifK.js";import{s as V}from"./i18n-C9hRT4Lf.js";import{t as H}from"./useTranslation-D9pPv-bA.js";import{i as we}from"./utils-BEkyAhbA.js";import{Hn as U,Vn as Te,Wn as Ee,qn as De}from"./sdk.gen-CiE6cMi0.js";import{d as Oe}from"./routes-B7wRw3UT.js";import{Mt as ke,Nt as Ae,_n as je,_t as Me,ft as Ne,gn as Pe,gt as W,mt as G,vn as Fe}from"./react-query.gen-Bbh5MII3.js";import{n as Ie}from"./use-is-mobile-q9Lr7beO.js";import{t as K}from"./misc-B24X-saO.js";import{t as Le}from"./plugins-surface-C4Cvus3n.js";import{t as q}from"./use-touch-mobile-CnqGLpCj.js";import{t as Re}from"./use-active-assistant-id-BADYKVyx.js";import{t as ze}from"./skill-icon-yVnZg-J1.js";import{n as Be,r as Ve}from"./skills-5MnTu98B.js";var He=g(`funnel`,[[`path`,{d:`M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z`,key:`sc7q7i`}]]),J=e(r(),1),Y=f(),Ue={sm:`h-7 w-7`,md:`h-8 w-8 text-3xl`};function We({external:e=!1,icon:t,iconSrc:n,size:r=`sm`,className:i}){let[a,o]=(0,J.useState)(!1);(0,J.useEffect)(()=>{o(!1)},[n]);let s=t||(e?`📦`:`🧩`),c=!!n&&!a;return(0,Y.jsx)(`span`,{className:K(`flex shrink-0 items-center justify-center`,Ue[r],i),children:c?(0,Y.jsx)(`img`,{src:n,alt:``,"aria-hidden":!0,loading:`lazy`,className:`h-full w-full object-contain`,onError:()=>o(!0)}):s})}var Ge=e=>V(`pluginConstants.removeConfirmMessage`,{ns:`intelligence`,name:e}),Ke=e=>V(`pluginConstants.riskyUpgradeConfirmMessage`,{ns:`intelligence`,name:e}),qe=V(`pluginConstants.riskyUpgradeConfirmLabel`,{ns:`intelligence`}),Je=V(`pluginConstants.installError`,{ns:`intelligence`}),Ye=V(`pluginConstants.removeError`,{ns:`intelligence`}),Xe=V(`pluginConstants.upgradeError`,{ns:`intelligence`}),Ze=V(`pluginConstants.toggleError`,{ns:`intelligence`});function Qe(e,t){let n=e.map(e=>({name:e.name,description:e.description??void 0,status:`installed`,external:void 0,version:e.version??void 0,path:e.path,issues:e.issues,enabled:e.enabled,icon:e.icon,hasIcon:e.hasIcon,iconVersion:e.iconVersion})),r=new Set(n.map(e=>e.name)),i=t.filter(e=>!r.has(e.name)).map(e=>({name:e.name,description:e.description,status:`available`,external:!0,path:e.path}));return[...n,...i]}function $e(e,t){let n=t.trim().toLowerCase();return n?[e.name,e.description].some(e=>e?.toLowerCase().includes(n)):!0}function et(e){return[...e].sort((e,t)=>{let n=e.status===`installed`;return n===(t.status===`installed`)?e.name.localeCompare(t.name,void 0,{sensitivity:`base`}):n?-1:1})}function tt(e,t){switch(t){case`all`:return e;case`available`:return e.filter(e=>e.status===`available`);case`installed`:return e.filter(e=>e.status===`installed`);case`active`:return e.filter(e=>e.status===`installed`&&e.enabled!==!1);case`off`:return e.filter(e=>e.status===`installed`&&e.enabled===!1)}}function nt(e){return e?e.slice(0,7):`unknown`}function rt({plugin:e,surfaces:t=null,className:n}){let{t:r}=H(`intelligence`),i=e.source?.kind===`github`?e.source.repo:r(`pluginDetailShared.localSource`),a=e.source?.kind===`github`?`https://github.com/${e.source.repo}`:null,o=[{label:r(`pluginDetailShared.sourceLabel`),value:i,href:a??void 0}];return e.homepage&&o.push({label:r(`pluginDetailShared.homepageLabel`),value:e.homepage,href:e.homepage}),e.license&&o.push({label:r(`pluginDetailShared.licenseLabel`),value:e.license}),t&&(t.skills.length>0&&o.push({label:r(`pluginDetailShared.skillsLabel`),value:String(t.skills.length)}),t.hooks.length>0&&o.push({label:r(`pluginDetailShared.hooksLabel`),value:String(t.hooks.length)}),t.tools.length>0&&o.push({label:r(`pluginDetailShared.toolsLabel`),value:String(t.tools.length)})),(0,Y.jsx)(`dl`,{className:K(`mb-5 grid gap-x-6 gap-y-2 border-b pb-5 sm:grid-cols-[max-content_1fr]`,n),style:{borderColor:`var(--border-base)`},children:o.map(e=>(0,Y.jsxs)(`div`,{className:`contents`,children:[(0,Y.jsx)(`dt`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:e.label}),(0,Y.jsx)(`dd`,{className:`min-w-0 truncate text-body-small-default`,style:{color:`var(--content-secondary)`},children:e.href?(0,Y.jsxs)(`a`,{href:e.href,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 underline`,style:{color:`var(--primary-base, #60a5fa)`},children:[e.value,(0,Y.jsx)(A,{className:`h-3 w-3`,"aria-hidden":!0})]}):e.value})]},e.label))})}function it({plugin:e,drift:t,onInstall:n,onRemove:r,onUpgrade:i,isInstalling:o,isRemoving:s,isUpgrading:c,hasLocalEdits:l,enabled:u,onToggle:d,isToggling:f}){let{t:p}=H(`intelligence`),[m,h]=(0,J.useState)(!1),[g,v]=(0,J.useState)(!1),y=e.installed??!1,b=e.artifact??null,x=t?.status===`update-available`,S=x?p(`pluginDetailShared.upgradeTitle`,{fromSha:nt(t?.local?.commit??null),toSha:nt(t?.remote?.commit??null)}):void 0;return(0,Y.jsxs)(Y.Fragment,{children:[y?(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 md:flex-nowrap md:shrink-0`,children:[u!==void 0&&d?(0,Y.jsx)(be,{label:p(`pluginDetailShared.autoIncludeInChat`),checked:u,onChange:()=>d(),disabled:f}):null,b?(0,Y.jsx)(a,{asChild:!0,leftIcon:(0,Y.jsx)(ae,{"aria-hidden":!0}),children:(0,Y.jsx)(`a`,{href:b.url,download:!0,children:b.label??p(`pluginDetailShared.download`)})}):null,x?(0,Y.jsx)(a,{type:`button`,onClick:()=>{if(l){v(!0);return}i()},disabled:c,title:S,leftIcon:c?(0,Y.jsx)(P,{className:`animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(D,{"aria-hidden":!0}),children:p(`pluginDetailShared.upgrade`)}):null,(0,Y.jsx)(a,{type:`button`,variant:`dangerOutline`,onClick:()=>h(!0),disabled:s,leftIcon:s?(0,Y.jsx)(P,{className:`animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(he,{"aria-hidden":!0}),children:p(`pluginDetailShared.remove`)})]}):(0,Y.jsx)(a,{type:`button`,onClick:n,disabled:o,leftIcon:o?(0,Y.jsx)(P,{className:`animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(_,{"aria-hidden":!0}),children:p(`pluginDetailShared.install`)}),(0,Y.jsx)(xe,{open:m,title:p(`pluginDetailShared.removePluginTitle`),message:Ge(e.name),confirmLabel:p(`pluginDetailShared.remove`),destructive:!0,onConfirm:()=>{h(!1),r()},onCancel:()=>h(!1)}),(0,Y.jsx)(xe,{open:g,title:p(`pluginDetailShared.upgradePluginTitle`),message:Ke(e.name),confirmLabel:qe,destructive:!0,onConfirm:()=>{v(!1),i()},onCancel:()=>v(!1)})]})}function at(){return(0,Y.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,Y.jsx)(P,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})})}function ot(){let{t:e}=H(`intelligence`);return(0,Y.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 py-12 text-center`,style:{color:`var(--content-tertiary)`},children:[(0,Y.jsx)(I,{className:`h-6 w-6`,"aria-hidden":!0}),(0,Y.jsx)(`p`,{className:`text-body-medium-default`,children:e(`pluginDetailShared.loadErrorTitle`)}),(0,Y.jsx)(`p`,{className:`text-body-small-default`,children:e(`pluginDetailShared.loadErrorDetail`)})]})}function st({isInstallError:e,isRemoveError:t,isUpgradeError:n}){let r=e?Je:t?Ye:n?Xe:null;return r?(0,Y.jsxs)(`div`,{className:`mb-3 flex items-center gap-2 rounded px-3 py-2 text-body-small-default`,style:{backgroundColor:`var(--surface-secondary)`,color:`var(--content-warning, var(--content-tertiary))`},role:`alert`,children:[(0,Y.jsx)(I,{className:`h-4 w-4 shrink-0`,"aria-hidden":!0}),r]}):null}function ct({external:e,className:t}){let{t:n}=H(`intelligence`),r=e?{label:n(`pluginOriginBadge.external`),icon:j}:{label:n(`pluginOriginBadge.local`),icon:oe};return(0,Y.jsx)(R,{tone:`neutral`,leftIcon:(0,J.createElement)(r.icon),className:t,children:r.label})}function X({onClick:e,isUpgrading:t=!1}={}){let{t:n}=H(`intelligence`),r=(0,Y.jsx)(R,{tone:`warning`,leftIcon:(0,J.createElement)(t?P:D,{className:t?`animate-spin`:void 0}),className:`shrink-0`,children:n(`updateAvailableBadge.updateAvailable`)});return e?(0,Y.jsx)(`button`,{type:`button`,onClick:t=>{t.stopPropagation(),e()},disabled:t,"aria-label":n(`updateAvailableBadge.upgradePluginAriaLabel`),className:`shrink-0 rounded-[6px] focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] disabled:cursor-not-allowed`,children:r}):r}var lt=300*1e3;function ut({assistantId:e,name:t,enabled:n=!0}){return u({...G({path:{assistant_id:e,name:t}}),enabled:!!e&&!!t&&n,staleTime:lt,retry:!1})}function dt(e){let t=e?.local?.localChanges;return!!t&&t?.clean===!1}function ft(e,t,n){let{t:r}=H(`intelligence`),i=l(),a=n?.onRemoved,o=u({...Ne({path:{assistant_id:e,name:t}}),enabled:!!e&&!!t}),s=ut({assistantId:e,name:t,enabled:o.data?.installed??!1}).data,c=(0,J.useCallback)(()=>ne(i,e,t),[e,t,i]),d=Fe({onSuccess:()=>{c(),B.success(r(`pluginToast.installed`,{name:t||r(`pluginToast.pluginFallback`)}))}}),f=Pe({onSuccess:()=>{c(),a?.()}}),p=je({onSuccess:e=>{c(),B.success(e.outcome===`already-up-to-date`?r(`pluginToast.alreadyUpToDate`,{name:t||r(`pluginToast.pluginFallbackCapitalized`)}):r(`pluginToast.upgraded`,{name:t||r(`pluginToast.pluginFallback`),sha:nt(e.toCommit)}))}});return{plugin:o.data??null,drift:s,isLoading:o.isLoading,isError:o.isError,install:()=>{d.mutate({path:{assistant_id:e},body:{name:t}})},remove:()=>{f.mutate({path:{assistant_id:e,name:t}})},upgrade:()=>{p.mutate({path:{assistant_id:e,name:t},body:{}})},isInstalling:d.isPending,isRemoving:f.isPending,isUpgrading:p.isPending,isInstallError:d.isError,isRemoveError:f.isError,isUpgradeError:p.isError,hasLocalEdits:dt(s)}}var pt=`0.10.5`;function mt(){return we(pt)}function ht(e,t,n,r){let i=mt(),{data:a}=u({queryKey:[`pluginIcon`,e,t,r],queryFn:async()=>{let{data:n,error:r}=await Ee({path:{assistant_id:e,name:t},parseAs:`blob`,throwOnError:!1});if(r||!(n instanceof Blob))throw Error(`Failed to load plugin icon`);return n},enabled:!!(i&&n&&r),staleTime:1/0,retry:!1}),[o,s]=(0,J.useState)(void 0);return(0,J.useEffect)(()=>{if(!a){s(void 0);return}let e=URL.createObjectURL(a);return s(e),()=>{URL.revokeObjectURL(e)}},[a]),o}function Z(e){let t=l(),n={queryKey:W({path:{assistant_id:e}})},r=(e,r)=>{t.setQueriesData(n,t=>t&&{...t,plugins:t.plugins.map(t=>t.name===e?{...t,enabled:r}:t)})},i=d({mutationFn:async({name:t,nextEnabled:n})=>{let r=await(n?U({path:{assistant_id:e,name:t},throwOnError:!1}):Te({path:{assistant_id:e,name:t},throwOnError:!1})),i=r.response?.status;if(r.response?.ok||i===409)return r;throw Error(`Plugin toggle failed (${i??`network error`})`)},onMutate:async({name:e,nextEnabled:i})=>{await t.cancelQueries(n),r(e,i)},onError:(e,{name:t,nextEnabled:n})=>{r(t,!n),B.error(Ze)},onSettled:(n,r,i)=>{ne(t,e,i.name)}});return{toggle:(e,t)=>{i.mutate({name:e,nextEnabled:t})},togglingName:i.isPending?i.variables?.name??null:null}}function gt({assistantId:e,name:t,onBack:n,externalHint:r,enabled:i}){let{plugin:o,drift:s,isLoading:c,isError:l,install:u,remove:d,upgrade:f,isInstalling:m,isRemoving:h,isUpgrading:g,isInstallError:_,isRemoveError:y,isUpgradeError:b,hasLocalEdits:x}=ft(e,t,{onRemoved:n}),{t:S}=H(`intelligence`),{toggle:C,togglingName:ee}=Z(e),w=ht(e,t,o?.hasIcon,o?.iconVersion);return(0,Y.jsxs)(`div`,{className:`flex h-full min-h-0 flex-1 flex-col`,children:[(0,Y.jsxs)(`div`,{className:`mb-4 flex items-start gap-3`,children:[(0,Y.jsx)(a,{type:`button`,variant:`ghost`,iconOnly:(0,Y.jsx)(v,{"aria-hidden":!0}),"aria-label":S(`pluginDetail.backToPluginsAriaLabel`),onClick:n}),(0,Y.jsx)(_t,{name:t,plugin:o,externalHint:r,iconSrc:w,drift:s,onInstall:u,onRemove:d,onUpgrade:f,isInstalling:m,isRemoving:h,isUpgrading:g,hasLocalEdits:x,enabled:i,onToggle:()=>C(t,!i),isToggling:ee===t})]}),(_||y||b)&&(0,Y.jsx)(st,{isInstallError:_,isRemoveError:y,isUpgradeError:b}),(0,Y.jsx)(p.Root,{asChild:!0,children:(0,Y.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-6 py-5`,children:c?(0,Y.jsx)(at,{}):l||!o?(0,Y.jsx)(ot,{}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(rt,{plugin:o,surfaces:s?.surfaces??null}),o.readme?(0,Y.jsx)(Se,{content:o.readme}):(0,Y.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:S(`pluginDetail.noReadme`)})]})})})]})}function _t({name:e,plugin:t,externalHint:n,iconSrc:r,drift:i,onInstall:a,onRemove:o,onUpgrade:s,isInstalling:c,isRemoving:l,isUpgrading:u,hasLocalEdits:d,enabled:f,onToggle:p,isToggling:m}){let{t:h}=H(`intelligence`),g=t?.source?.kind===`github`,_=t?g:n,v=i?.status===`update-available`;return(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-3 sm:flex-row sm:items-center`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-start gap-3`,children:[_===void 0?(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`h-8 w-8 shrink-0`}):(0,Y.jsx)(We,{external:_,icon:t?.icon??void 0,iconSrc:r,size:`md`}),(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-2 gap-y-1`,children:[(0,Y.jsx)(`h2`,{className:`text-title-medium`,style:{color:`var(--content-default)`},children:t?.name??e}),t?.version?(0,Y.jsx)(`span`,{className:`shrink-0 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:h(`pluginDetail.version`,{version:t.version})}):null,t?(0,Y.jsx)(ct,{external:g}):null,v?(0,Y.jsx)(X,{}):null]}),t?.description?(0,Y.jsx)(`p`,{className:`mt-0.5 line-clamp-2 text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:t.description}):null]})]}),t?(0,Y.jsx)(it,{plugin:t,drift:i,onInstall:a,onRemove:o,onUpgrade:s,isInstalling:c,isRemoving:l,isUpgrading:u,hasLocalEdits:d,enabled:f,onToggle:p,isToggling:m}):null]})}var vt=e(i(),1);function yt({assistantId:e,name:t,onBack:n,externalHint:r,enabled:i}){let{plugin:o,drift:s,isLoading:c,isError:l,install:u,remove:d,upgrade:f,isInstalling:m,isRemoving:h,isUpgrading:g,isInstallError:_,isRemoveError:y,isUpgradeError:b,hasLocalEdits:x}=ft(e,t,{onRemoved:n}),{t:S}=H(`intelligence`),{toggle:C,togglingName:ee}=Z(e),[w,T]=(0,J.useState)(null);(0,J.useEffect)(()=>{T(document.getElementById(`viewport-overlays`))},[]);let E=o?.source?.kind===`github`,D=o?E:r,O=s?.status===`update-available`,te=o?.name??t,ne=ht(e,t,o?.hasIcon,o?.iconVersion),k=(0,Y.jsxs)(`div`,{className:`fixed inset-0 z-40 flex flex-col overflow-hidden bg-[var(--surface-overlay)]`,style:{paddingTop:`calc(8px + var(--safe-area-inset-top, env(safe-area-inset-top, 0px)))`,paddingBottom:`calc(8px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))`,paddingLeft:`calc(12px + var(--safe-area-inset-left, env(safe-area-inset-left, 0px)))`,paddingRight:`calc(12px + var(--safe-area-inset-right, env(safe-area-inset-right, 0px)))`},children:[(0,Y.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Y.jsx)(a,{variant:`ghost`,iconOnly:(0,Y.jsx)(v,{"aria-hidden":!0}),expandOnMobile:!0,"aria-label":S(`pluginDetail.backToPluginsAriaLabel`),onClick:n,className:`max-md:bg-[var(--surface-active)]`}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate px-2 text-center text-body-medium-default`,style:{color:`var(--content-secondary)`},children:te}),(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`h-8 w-8 shrink-0 touch-mobile:h-10 touch-mobile:w-10`})]}),(0,Y.jsxs)(`div`,{className:`mt-4 flex flex-col gap-2`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[D===void 0?(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`h-8 w-8 shrink-0`}):(0,Y.jsx)(We,{external:D,icon:o?.icon??void 0,iconSrc:ne,size:`md`}),(0,Y.jsx)(`h2`,{className:`min-w-0 truncate text-title-medium`,style:{color:`var(--content-emphasised)`},children:te})]}),(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1.5`,children:[O?(0,Y.jsx)(X,{}):null,o?(0,Y.jsx)(ct,{external:E}):null]})]}),o?.description?(0,Y.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:o.description}):null]}),o?(0,Y.jsx)(`div`,{className:`mt-3 flex flex-wrap items-center gap-2`,children:(0,Y.jsx)(it,{plugin:o,drift:s,enabled:i,onToggle:()=>C(t,!i),isToggling:ee===t,onInstall:u,onRemove:d,onUpgrade:f,isInstalling:m,isRemoving:h,isUpgrading:g,hasLocalEdits:x})}):null,(_||y||b)&&(0,Y.jsx)(`div`,{className:`mt-3`,children:(0,Y.jsx)(st,{isInstallError:_,isRemoveError:y,isUpgradeError:b})}),(0,Y.jsx)(p.Root,{asChild:!0,noPadding:!0,children:(0,Y.jsx)(`div`,{className:`mt-6 flex min-h-0 flex-1 flex-col overflow-hidden rounded-2xl border bg-[var(--surface-lift)]`,style:{borderColor:`var(--border-hover)`},children:(0,Y.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-4 py-4`,children:c?(0,Y.jsx)(at,{}):l||!o?(0,Y.jsx)(ot,{}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(rt,{plugin:o,surfaces:s?.surfaces??null}),o.readme?(0,Y.jsx)(Se,{content:o.readme}):(0,Y.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:S(`pluginDetail.noReadme`)})]})})})})]});return w?(0,vt.createPortal)(k,w):k}function bt({assistantId:e,item:t,drift:n,onSelect:r,onInstall:i,onRemove:o,onUpgrade:s,isInstalling:c=!1,isRemoving:l=!1,isUpgrading:u=!1}){let{t:d}=H(`intelligence`),f=t.status===`available`,m=n?.status===`update-available`,h=t.enabled!==void 0,g=t.enabled===!1,v=ht(e,t.name,t.hasIcon,t.iconVersion);return(0,Y.jsx)(p.Root,{asChild:!0,children:(0,Y.jsxs)(`div`,{role:`button`,tabIndex:0,onClick:r,onKeyDown:e=>{e.target===e.currentTarget&&(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),r())},className:`flex cursor-pointer items-center gap-3 px-3 py-2 text-left transition-colors hover:bg-[var(--surface-hover)] focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:[(0,Y.jsx)(We,{size:`sm`,external:t.external,icon:t.icon,iconSrc:v,className:g?`opacity-50`:void 0}),(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsx)(`span`,{className:`truncate text-body-medium-default`,style:{color:g?`var(--content-tertiary)`:`var(--content-emphasised)`},children:t.name}),t.version?(0,Y.jsx)(`span`,{className:`shrink-0 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:d(`pluginListRow.version`,{version:t.version})}):null,(0,Y.jsx)(R,{tone:`neutral`,leftIcon:(0,Y.jsx)(de,{"aria-hidden":!0}),children:d(`pluginListRow.pluginTag`)}),m?(0,Y.jsx)(X,{onClick:s,isUpgrading:u}):null]}),(0,Y.jsx)(`p`,{className:`mt-1 truncate text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:t.description??d(`pluginListRow.noDescription`)}),t.issues&&t.issues.length>0?(0,Y.jsxs)(`p`,{className:`mt-1 truncate text-body-small-default`,style:{color:`var(--content-warning, var(--content-tertiary))`},title:t.issues.join(`; `),children:[t.issues[0],t.issues.length>1?d(`pluginListRow.moreIssues`,{count:t.issues.length-1}):null]}):null]}),f?c?(0,Y.jsx)(a,{type:`button`,iconOnly:(0,Y.jsx)(P,{className:`animate-spin`,"aria-hidden":!0}),disabled:!0,"aria-label":d(`pluginListRow.installingAriaLabel`),expandOnMobile:!1}):(0,Y.jsx)(a,{type:`button`,iconOnly:(0,Y.jsx)(_,{"aria-hidden":!0}),onClick:e=>{e.stopPropagation(),i?.()},disabled:!i,"aria-label":d(`pluginListRow.installPluginAriaLabel`),expandOnMobile:!1}):(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[h?(0,Y.jsx)(R,{tone:t.enabled?`positive`:`neutral`,children:t.enabled?d(`pluginListRow.enabled`):d(`pluginListRow.disabled`)}):null,(0,Y.jsx)(a,{type:`button`,variant:`dangerOutline`,iconOnly:l?(0,Y.jsx)(P,{className:`animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(he,{"aria-hidden":!0}),onClick:e=>{e.stopPropagation(),o?.()},disabled:l||u||!o,"aria-label":d(`pluginListRow.removePluginAriaLabel`),expandOnMobile:!1})]})]})})}var xt={mail:ce,calendar:T,"message-circle":le,globe:j,zap:L,code:ie,mic:ue,"shopping-cart":O,palette:te,heart:M,settings:pe,"link-2":se};function St(e){return xt[e]}function Ct({selected:e,onSelect:t,counts:n,totalCount:r,showCounts:i,categories:a,ariaLabel:o}){let{t:s}=H(`intelligence`),c=[...a].sort((e,t)=>e.label.localeCompare(t.label));return(0,Y.jsxs)(`nav`,{className:`flex flex-col gap-1`,"aria-label":o??s(`categorySidebar.skillCategoriesAriaLabel`),children:[(0,Y.jsx)(wt,{icon:N,label:s(`categorySidebar.all`),count:r,isActive:e===null,showCount:i,onClick:()=>t(null)}),c.map(r=>(0,Y.jsx)(wt,{icon:St(r.icon)??N,label:r.label,count:n[r.slug]??0,isActive:e===r.slug,showCount:i,onClick:()=>t(r.slug)},r.slug))]})}function wt({icon:e,label:t,count:n,isActive:r,showCount:i,onClick:o}){return(0,Y.jsxs)(a,{variant:`ghost`,onClick:o,"aria-pressed":r,className:`h-auto justify-between gap-3 rounded-lg border-0 bg-transparent px-3 py-2 text-left hover:bg-[var(--ghost-hover)]`,style:{backgroundColor:r?`var(--surface-active)`:void 0,color:r?`var(--content-default)`:`var(--content-secondary)`},children:[(0,Y.jsxs)(`span`,{className:`flex items-center gap-2.5`,children:[(0,Y.jsx)(e,{className:`h-4 w-4 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`text-body-medium-default`,children:t})]}),i&&(0,Y.jsx)(`span`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:n})]})}function Tt({skill:e,onSelect:t,onInstall:n,onRemove:r,isInstalling:i=!1,isRemoving:o=!1}){let{t:s}=H(`intelligence`),c=C(e),l=Be(e);return(0,Y.jsx)(p.Root,{asChild:!0,children:(0,Y.jsxs)(`div`,{role:`button`,tabIndex:0,onClick:t,onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),t())},className:`flex cursor-pointer items-center gap-3 px-3 py-2 text-left transition-colors hover:bg-[var(--surface-hover)] focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:[(0,Y.jsx)(`div`,{className:`flex shrink-0 items-center justify-center text-[28px] leading-none`,children:(0,Y.jsx)(ze,{skill:e,className:`h-7 w-7`})}),(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsx)(`span`,{className:`truncate text-body-medium-default`,style:{color:`var(--content-emphasised)`},children:e.name}),(0,Y.jsx)(y,{origin:e.origin})]}),(0,Y.jsx)(`p`,{className:`mt-1 truncate text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:e.description})]}),c?i?(0,Y.jsx)(a,{type:`button`,iconOnly:(0,Y.jsx)(P,{className:`animate-spin`,"aria-hidden":!0}),disabled:!0,"aria-label":s(`skillRow.installingAriaLabel`),expandOnMobile:!1}):(0,Y.jsx)(a,{type:`button`,iconOnly:(0,Y.jsx)(_,{"aria-hidden":!0}),onClick:e=>{e.stopPropagation(),n?.()},disabled:!n,"aria-label":s(`skillRow.installSkillAriaLabel`),expandOnMobile:!1}):(0,Y.jsx)(a,{type:`button`,variant:`dangerOutline`,iconOnly:o?(0,Y.jsx)(P,{className:`animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(he,{"aria-hidden":!0}),onClick:e=>{e.stopPropagation(),r?.()},disabled:!l||o||!r,"aria-label":s(l?`skillRow.removeSkillAriaLabel`:`skillRow.bundledSkillCannotBeRemovedAriaLabel`),title:l?void 0:s(`skillRow.bundledSkillsCannotBeRemoved`),expandOnMobile:!1})]})})}function Q(e,t){switch(e){case`vellum`:return`Vellum`;case`clawhub`:return`Clawhub`;case`skillssh`:return`skills.sh`;case`all`:return t(`superpowersFilters.filterLabel.all`);case`installed`:return t(`superpowersFilters.filterLabel.installed`);case`available`:return t(`superpowersFilters.filterLabel.available`);case`skills`:return t(`superpowersFilters.filterLabel.skills`);case`plugins`:return t(`superpowersFilters.filterLabel.plugins`);case`custom`:return t(`superpowersFilters.filterLabel.custom`);case`assistant-memory`:return t(`superpowersFilters.filterLabel.assistantMemory`)}}function Et(){let{t:e}=H(`intelligence`);return{statusFilters:[{value:`all`,label:Q(`all`,e),icon:N},{value:`installed`,label:Q(`installed`,e),icon:k},{value:`available`,label:Q(`available`,e),icon:_}],typeFilters:[{value:`skills`,label:Q(`skills`,e),icon:L},{value:`plugins`,label:Q(`plugins`,e),icon:de}],originFilters:[{value:`vellum`,label:Q(`vellum`,e),icon:S},{value:`clawhub`,label:Q(`clawhub`,e),icon:j},{value:`skillssh`,label:Q(`skillssh`,e),icon:F},{value:`custom`,label:Q(`custom`,e),icon:ge},{value:`assistant-memory`,label:Q(`assistant-memory`,e),icon:w}]}}function Dt({search:e,onSearchChange:t,filter:n,onFilterChange:r,isSearching:i,categories:a,category:o,onCategoryChange:s,counts:c,totalCount:l,showCounts:u,pluginsSupported:d,showCategories:f}){let{t:p}=H(`intelligence`);return(0,Y.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Y.jsx)(ye,{type:`search`,value:e,onChange:e=>{t(e.target.value)},placeholder:p(`superpowersFilters.searchPlaceholder`),"aria-label":p(`superpowersFilters.searchAriaLabel`),leftIcon:(0,Y.jsx)(fe,{className:`h-4 w-4`,"aria-hidden":!0}),rightIcon:i?(0,Y.jsx)(P,{className:`h-4 w-4 animate-spin`,"aria-hidden":!0}):void 0,fullWidth:!0,wrapperClassName:`flex-1`}),(0,Y.jsx)(Ot,{filter:n,onFilterChange:r,categories:a,category:o,onCategoryChange:s,counts:c,totalCount:l,showCounts:u,pluginsSupported:d,showCategories:f})]})}function Ot(e){let{t}=H(`intelligence`),n=q(),[r,i]=(0,J.useState)(!1),{statusFilters:o,typeFilters:s,originFilters:c}=Et(),l=(0,Y.jsx)(a,{type:`button`,variant:`outlined`,iconOnly:(0,Y.jsx)(He,{"aria-hidden":!0}),"aria-label":t(`superpowersFilters.filterAriaLabel`),"aria-haspopup":n?`dialog`:`listbox`,"aria-expanded":r,tintColor:`var(--primary-base)`});if(n)return(0,Y.jsx)(kt,{...e,open:r,onOpenChange:i,trigger:l});let u=t=>{e.onFilterChange(t),i(!1)};return(0,Y.jsxs)(z.Root,{open:r,onOpenChange:i,children:[(0,Y.jsx)(z.Trigger,{asChild:!0,children:l}),(0,Y.jsx)(z.Content,{align:`end`,sideOffset:4,className:`w-44 overflow-hidden p-0`,children:(0,Y.jsxs)(`ul`,{role:`listbox`,children:[(0,Y.jsx)(Nt,{label:t(`superpowersFilters.statusLabel`),options:o,selected:e.filter,onSelect:u}),e.pluginsSupported&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),(0,Y.jsx)(Nt,{label:t(`superpowersFilters.typeLabel`),options:s,selected:e.filter,onSelect:u})]}),(0,Y.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),(0,Y.jsx)(Nt,{label:t(`superpowersFilters.sourceLabel`),options:c,selected:e.filter,onSelect:u}),e.showCategories&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),(0,Y.jsx)(Mt,{categories:e.categories,category:e.category,counts:e.counts,totalCount:e.totalCount,showCounts:e.showCounts,allLabel:t(`superpowersFilters.filterLabel.all`),categoriesLabel:t(`superpowersFilters.categoriesLabel`),onSelect:t=>{e.onCategoryChange(t),i(!1)}})]})]})})]})}function kt({filter:e,onFilterChange:t,categories:n,category:r,onCategoryChange:i,counts:o,totalCount:s,showCounts:c,pluginsSupported:l,showCategories:u,open:d,onOpenChange:f,trigger:p}){let{t:h}=H(`intelligence`),{statusFilters:g,typeFilters:_,originFilters:v}=Et();return(0,Y.jsxs)(m.Root,{open:d,onOpenChange:f,children:[(0,Y.jsx)(m.Trigger,{asChild:!0,children:p}),(0,Y.jsxs)(m.Content,{className:`max-h-[85dvh]`,"aria-describedby":void 0,children:[(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`mx-auto mb-3 h-1 w-9 shrink-0 rounded-full bg-[var(--border-element)]`}),(0,Y.jsx)(m.Header,{children:(0,Y.jsx)(m.Title,{children:h(`superpowersFilters.filtersTitle`)})}),(0,Y.jsxs)(m.Body,{className:`flex flex-col gap-3 pt-2`,children:[(0,Y.jsx)(At,{label:h(`superpowersFilters.statusLabel`),children:g.map(n=>(0,Y.jsx)($,{icon:n.icon,label:n.label,active:e===n.value,onSelect:()=>t(n.value)},n.value))}),l&&(0,Y.jsx)(At,{label:h(`superpowersFilters.typeLabel`),children:_.map(n=>(0,Y.jsx)($,{icon:n.icon,label:n.label,active:e===n.value,onSelect:()=>t(n.value)},n.value))}),(0,Y.jsx)(At,{label:h(`superpowersFilters.sourceLabel`),children:v.map(n=>(0,Y.jsx)($,{icon:n.icon,label:n.label,active:e===n.value,onSelect:()=>t(n.value)},n.value))}),u&&(0,Y.jsxs)(At,{label:h(`superpowersFilters.categoriesLabel`),children:[(0,Y.jsx)($,{icon:N,label:h(`superpowersFilters.filterLabel.all`),active:r===null,badge:c?s:void 0,onSelect:()=>i(null)}),jt(n).map(e=>(0,Y.jsx)($,{icon:St(e.icon)??N,label:e.label,active:r===e.slug,badge:c?o[e.slug]??0:void 0,onSelect:()=>i(e.slug)},e.slug))]})]}),(0,Y.jsx)(m.Footer,{children:(0,Y.jsx)(a,{type:`button`,variant:`primary`,fullWidth:!0,onClick:()=>f(!1),children:h(`superpowersFilters.done`)})})]})]})}function At({label:e,children:t}){return(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`div`,{className:`px-2 pb-1 text-body-small-default uppercase tracking-wide`,style:{color:`var(--content-tertiary)`},children:e}),t]})}function $({icon:e,label:t,active:n,badge:r,onSelect:i}){return(0,Y.jsx)(h,{icon:e,label:t,active:n,activeVariant:`branded`,badge:r,trailingAction:n&&r==null?(0,Y.jsx)(E,{className:`h-4 w-4 text-[var(--primary-base)]`,"aria-hidden":!0}):void 0,onSelect:i})}function jt(e){return[...e].sort((e,t)=>e.label.localeCompare(t.label))}function Mt({categories:e,category:t,counts:n,totalCount:r,showCounts:i,allLabel:a,categoriesLabel:o,onSelect:s}){return(0,Y.jsx)(Pt,{label:o,children:(0,Y.jsx)(`ul`,{className:`max-h-48 overflow-y-auto`,children:[{slug:null,label:a,count:r},...jt(e).map(e=>({slug:e.slug,label:e.label,count:n[e.slug]??0}))].map(e=>{let n=t===e.slug;return(0,Y.jsx)(`li`,{children:(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>s(e.slug),role:`option`,"aria-selected":n,className:`flex w-full items-center gap-2 px-3 py-1.5 text-left text-body-medium-lighter transition-colors hover:bg-[var(--surface-hover)]`,style:{color:n?`var(--primary-base)`:`var(--content-default)`},children:[(0,Y.jsx)(`span`,{className:`flex-1 truncate`,children:e.label}),i&&(0,Y.jsx)(`span`,{style:{color:`var(--content-tertiary)`},children:e.count})]})},e.slug??`all`)})})})}function Nt({label:e,options:t,selected:n,onSelect:r}){return(0,Y.jsx)(Pt,{label:e,children:(0,Y.jsx)(`ul`,{children:t.map(e=>{let t=e.icon,i=n===e.value;return(0,Y.jsx)(`li`,{children:(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>r(e.value),role:`option`,"aria-selected":i,className:`flex w-full items-center gap-2 px-3 py-1.5 text-left text-body-medium-lighter transition-colors hover:bg-[var(--surface-hover)]`,style:{color:i?`var(--primary-base)`:`var(--content-default)`},children:[(0,Y.jsx)(t,{className:`h-4 w-4`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`flex-1`,children:e.label}),i&&(0,Y.jsx)(k,{className:`h-3.5 w-3.5`,"aria-hidden":!0})]})},e.value)})})})}function Pt({label:e,children:t}){return(0,Y.jsxs)(`li`,{role:`group`,"aria-label":e,children:[(0,Y.jsx)(`div`,{className:`px-3 pb-1 pt-2 text-body-small-default uppercase tracking-wide`,style:{color:`var(--content-tertiary)`},children:e}),t]})}var Ft=300*1e3,It=[],Lt=[];async function Rt(e,t,n){let r=await De({path:{assistant_id:e},query:{q:void 0,category:t},signal:n,throwOnError:!1});if(r.response?.status===404)return{plugins:[]};if(!r.response?.ok)throw Error(V(`usePluginsList.failureMessage`,{ns:`intelligence`}));return r.data??{plugins:[]}}function zt(e,t){let[n,r]=(0,J.useState)({assistantId:e,latched:!1}),i=n.assistantId===e?n.latched:!1;return n.assistantId!==e&&r({assistantId:e,latched:!1}),(0,J.useEffect)(()=>{t&&r(t=>t.assistantId===e&&t.latched?t:{assistantId:e,latched:!0})},[e,t]),i||t}function Bt(e,t=null,n=!0){let r=t??void 0,i=u({queryKey:W({path:{assistant_id:e},query:{q:void 0,category:r}}),queryFn:({signal:t})=>Rt(e,r,t),enabled:!!e&&n,staleTime:Ft}),a=u({...ve(e),enabled:!!e&&n&&t!==null}),o=u({...Me({path:{assistant_id:e},query:{q:void 0}}),enabled:!!e&&n,staleTime:Ft}),s=(0,J.useMemo)(()=>{let e=t===null?i.data?.plugins:a.data?.plugins??i.data?.plugins;return new Set((e??It).map(e=>e.name))},[t,a.data?.plugins,i.data?.plugins]),c=(0,J.useMemo)(()=>{let e=i.data?.plugins??It,n=o.data?.matches??Lt;return et(Qe(e,(t===null?n:n.filter(e=>(e.category??`system`)===t)).filter(e=>!s.has(e.name))))},[i.data?.plugins,o.data?.matches,t,s]),d=t===null?i.data:a.data,f=zt(e,d?.categoryCounts!==void 0),p=zt(e,(d?.plugins??It).some(e=>e.enabled!==void 0)),m=l(),h=(0,J.useRef)(null);return(0,J.useEffect)(()=>{if(h.current===e||!o.isSuccess)return;let t=d?.plugins;if(!t?.length)return;let n=new Map((o.data?.matches??Lt).map(e=>[e.name,e.category]));t.some(e=>{let t=n.get(e.name);return t!=null&&t!==`system`&&(e.category??`system`)===`system`})&&(h.current=e,m.invalidateQueries({queryKey:W({path:{assistant_id:e},query:{q:void 0}})}))},[e,o.isSuccess,o.data?.matches,d?.plugins,m]),{items:c,isLoading:i.isLoading,catalogLoading:o.isLoading,isError:i.isError,isFetching:i.isFetching||o.isFetching,catalogError:o.isError,categorySupported:f,pluginToggleSupported:p,installedCategoryCounts:d?.categoryCounts,installedPlugins:d?.plugins??It,installedTotal:d?.totalCount,catalogMatches:o.data?.matches??Lt,unfilteredInstalledNames:s}}function Vt(e){return u({...ke({path:{assistant_id:e}}),select:e=>e.categories,staleTime:300*1e3})}var Ht=new Set([`all`,`installed`,`available`,`skills`,`plugins`,`vellum`,`clawhub`,`skillssh`,`custom`,`assistant-memory`]);function Ut(e){let t=e.get(`filter`),n=e.get(`category`);return{q:e.get(`q`)??``,filter:Kt(t)?t:`all`,category:n||null}}function Wt(e,t){let n=new URLSearchParams(e);return t.q!==void 0&&Gt(n,`q`,t.q.trim()||null),t.filter!==void 0&&Gt(n,`filter`,t.filter===`all`?null:t.filter),t.category!==void 0&&Gt(n,`category`,t.category),n}function Gt(e,t,n){n===null?e.delete(t):e.set(t,n)}function Kt(e){return e!==null&&Ht.has(e)}function qt(e){switch(e){case`installed`:return{kind:`installed`};case`available`:return{kind:`available`};case`vellum`:case`clawhub`:case`skillssh`:case`custom`:case`assistant-memory`:return{origin:e};default:return{}}}function Jt(e){return e!==`plugins`}function Yt(e){return e===`all`||e===`installed`||e===`available`||e===`plugins`}function Xt(e){switch(e){case`installed`:return`installed`;case`available`:return`available`;default:return`all`}}function Zt(e,t){let[n,r]=(0,J.useState)(e);return(0,J.useEffect)(()=>{let n=setTimeout(()=>{r(e)},t);return()=>clearTimeout(n)},[e,t]),n}var Qt=300,$t=`vellum:superpowers:tipDismissed`;function en(e){return[...e].sort((e,t)=>e.installed===t.installed?e.name.localeCompare(t.name,void 0,{sensitivity:`base`}):e.installed?-1:1)}function tn({assistantId:e}){let{t:r}=H(`intelligence`),i=o(),a=c(),d=l(),f=Ie(),p=Ce.use.version(),m=Le(),[h,g]=s(),{q:_,filter:v,category:y}=(0,J.useMemo)(()=>Ut(h),[h]),x=h.get(`plugin`),S=(0,J.useCallback)(e=>{g(t=>Wt(t,e),{replace:!0})},[g]),C=h.get(`success`),w=(0,J.useRef)(!1);(0,J.useEffect)(()=>{C!==`true`||w.current||(w.current=!0,x&&B.success(r(`pluginToast.installed`,{name:x})),g(e=>{let t=new URLSearchParams(e);return t.delete(`success`),t},{replace:!0}))},[C,x,g,r]);let[T,E]=(0,J.useState)(_),D=Zt(T.trim(),Qt),O=(0,J.useRef)(_);(0,J.useEffect)(()=>{if(_!==O.current&&(O.current=_,_!==T.trim())){E(_);return}D!==_&&D===T.trim()&&(O.current=D,S({q:D}))},[D,_,T,S]);let te=(0,J.useCallback)(e=>S({filter:e}),[S]),k=(0,J.useCallback)(e=>S({category:e}),[S]),[re,ie]=(0,J.useState)(()=>n($t,!1)),ae=(0,J.useCallback)(()=>{ie(!0),t($t,!0)},[]),A=!m&&v===`plugins`?`all`:v,j=Jt(A),oe=m&&Yt(A),M=Xt(A),{handleInstall:N,handleRemove:se,isInstallingSkill:P,isRemovingSkill:ce,skillPendingRemoval:le,confirmRemove:ue,cancelRemove:de}=ee(e),{data:fe=[]}=Vt(e),{origin:pe,kind:me}=(0,J.useMemo)(()=>qt(A),[A]),F=u({...Ae({path:{assistant_id:e},query:{include:`catalog`,origin:pe,kind:me,q:D||void 0,category:y??void 0}}),select:e=>({skills:e.skills,categoryCounts:e.categoryCounts,totalCount:e.totalCount}),enabled:!!e&&j}),he=u({...Ae({path:{assistant_id:e},query:{include:`catalog`,origin:pe,kind:me,q:D||void 0}}),select:e=>({skills:e.skills,categoryCounts:e.categoryCounts,totalCount:e.totalCount}),enabled:!!e&&j&&y!==null}),{items:I,isLoading:ge,catalogLoading:_e,isError:L,isFetching:ve,catalogError:R,categorySupported:z,installedCategoryCounts:ye,installedPlugins:be,installedTotal:Se,catalogMatches:V,unfilteredInstalledNames:we}=Bt(e,y,m),U=oe&&(y===null||z),Te=(0,J.useCallback)(t=>ne(d,e,t),[e,d]),[Ee,De]=(0,J.useState)(null),[ke,Me]=(0,J.useState)(null),[Ne,W]=(0,J.useState)(null),[G,K]=(0,J.useState)(null),[q,Re]=(0,J.useState)(null),ze=Fe({onMutate:e=>De(e.body.name),onSuccess:(e,t)=>B.success(r(`pluginToast.installed`,{name:t.body.name})),onError:()=>B.error(Je),onSettled:(e,t,n)=>{De(null),Te(n.body.name)}}),Be=Pe({onMutate:e=>Me(e.path.name),onSuccess:(e,t)=>B.success(r(`pluginToast.removed`,{name:t.path.name})),onError:()=>B.error(Ye),onSettled:(e,t,n)=>{Me(null),Te(n.path.name)}}),He=je({onMutate:e=>W(e.path.name),onSuccess:(e,t)=>B.success(e.outcome===`already-up-to-date`?r(`pluginToast.alreadyUpToDate`,{name:t.path.name}):r(`pluginToast.upgraded`,{name:t.path.name,sha:nt(e.toCommit)})),onError:()=>B.error(Xe),onSettled:(e,t,n)=>{W(null),Te(n.path.name)}}),Ue=(0,J.useCallback)(e=>g(t=>{let n=new URLSearchParams(t);return n.set(`plugin`,e.name),n}),[g]),We=(0,J.useCallback)(()=>g(e=>{let t=new URLSearchParams(e);return t.delete(`plugin`),t},{replace:!0}),[g]),Ze=(0,J.useCallback)(t=>{ze.mutate({path:{assistant_id:e},body:{name:t.name}})},[e,ze]),Qe=(0,J.useCallback)(()=>{G&&(Be.mutate({path:{assistant_id:e,name:G.name}}),K(null))},[e,G,Be]),et=(0,J.useCallback)(t=>{He.mutate({path:{assistant_id:e,name:t},body:{}})},[e,He]),rt=(0,J.useCallback)(()=>{q&&(et(q.name),Re(null))},[q,et]),it=(0,J.useCallback)((e,t)=>{if(dt(t)){Re(e);return}et(e.name)},[et]),at=(0,J.useMemo)(()=>j?F.data?.skills??[]:[],[j,F.data?.skills]),ot=(0,J.useMemo)(()=>U?tt(I,M).filter(e=>$e(e,D)):[],[U,I,M,D]),st=(0,J.useMemo)(()=>en([...at.map(e=>({type:`skill`,key:`skill:${e.id}`,name:e.name,installed:b(e),skill:e})),...ot.map(e=>({type:`plugin`,key:`plugin:${e.name}`,name:e.name,installed:e.status===`installed`,item:e}))]),[at,ot]),ct=y===null?F.data:he.data,X=nn(j,ct?.skills??at,ct?.categoryCounts,ct?.totalCount),lt=rn(oe&&z,ye,be,Se,V,we,M),{counts:ut,totalCount:ft}=(0,J.useMemo)(()=>{let e={...X.counts};for(let[t,n]of Object.entries(lt.counts))e[t]=(e[t]??0)+n;return{counts:e,totalCount:X.totalCount+lt.totalCount}},[X,lt]),pt=j&&F.isLoading,mt=j&&F.isError,ht=U&&ge,Z=U&&L,_t=(mt||!j)&&(Z||!U)&&(mt||Z),vt=pt||ht,xt=!!D&&(j&&F.isFetching||U&&ve&&!ge),St=T.trim().length>0;if(x&&!m&&p===null)return null;if(x&&m){let t=I.find(e=>e.name===x),n={assistantId:e,name:x,externalHint:t?.external,enabled:t?.enabled,onBack:We};return f?(0,Y.jsx)(yt,{...n}):(0,Y.jsx)(gt,{...n})}let wt=(0,Y.jsx)(`div`,{className:`min-w-0 flex-1 overflow-y-auto`,children:vt?(0,Y.jsx)(cn,{}):_t?(0,Y.jsx)(ln,{}):st.length===0?U&&_e&&M!==`installed`?(0,Y.jsx)(cn,{}):(0,Y.jsx)(un,{filter:A,category:y}):(0,Y.jsx)(`ul`,{className:`flex flex-col gap-2`,children:st.map(t=>(0,Y.jsx)(`li`,{children:t.type===`skill`?(0,Y.jsx)(Tt,{skill:t.skill,onSelect:()=>i(Oe.skills.detail(t.skill.id),{state:{listSearch:a.search}}),onInstall:()=>N(t.skill),onRemove:()=>se(t.skill),isInstalling:P(t.skill),isRemoving:ce(t.skill)}):t.installed?(0,Y.jsx)(an,{assistantId:e,item:t.item,onSelect:()=>Ue(t.item),onRemove:()=>K(t.item),onUpgrade:e=>it(t.item,e),isRemoving:ke===t.item.name,isUpgrading:Ne===t.item.name}):(0,Y.jsx)(bt,{assistantId:e,item:t.item,onSelect:()=>Ue(t.item),onInstall:()=>Ze(t.item),isInstalling:Ee===t.item.name})},t.key))})});return(0,Y.jsxs)(`div`,{className:`flex h-full min-h-0 flex-1 flex-col gap-4`,children:[!re&&(0,Y.jsx)(on,{onDismiss:ae}),(0,Y.jsx)(Dt,{search:T,onSearchChange:E,filter:A,onFilterChange:te,isSearching:xt,categories:fe,category:y,onCategoryChange:k,counts:ut,totalCount:ft,showCounts:!St,pluginsSupported:m,showCategories:f}),!vt&&!_t&&mt?(0,Y.jsx)(sn,{text:r(`superpowersTab.skillsUnavailableNotice`)}):null,!vt&&!_t&&Z?(0,Y.jsx)(sn,{text:r(`superpowersTab.pluginsUnavailableNotice`)}):null,U&&R&&!ht&&!Z?(0,Y.jsx)(sn,{text:r(`superpowersTab.catalogBrowsingUnavailableNotice`)}):null,(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-1 gap-6`,children:[!f&&(0,Y.jsx)(`aside`,{className:`w-56 shrink-0 overflow-y-auto`,children:(0,Y.jsx)(Ct,{ariaLabel:r(`superpowersTab.categoriesAriaLabel`),selected:y,onSelect:k,counts:ut,totalCount:ft,showCounts:!St,categories:fe})}),wt]}),(0,Y.jsx)(Ve,{skillName:le?.name??null,onConfirm:ue,onCancel:de}),(0,Y.jsx)(xe,{open:G!==null,title:r(`pluginDetailShared.removePluginTitle`),message:G?Ge(G.name):``,confirmLabel:r(`pluginDetailShared.remove`),destructive:!0,onConfirm:Qe,onCancel:()=>K(null)}),(0,Y.jsx)(xe,{open:q!==null,title:r(`pluginDetailShared.upgradePluginTitle`),message:q?Ke(q.name):``,confirmLabel:qe,destructive:!0,onConfirm:rt,onCancel:()=>Re(null)})]})}function nn(e,t,n,r){return(0,J.useMemo)(()=>{if(!e)return{counts:{},totalCount:0};if(n&&Object.keys(n).length>0)return{counts:n,totalCount:r??t.length};let i={};for(let e of t){let t=e.category??`system`;i[t]=(i[t]??0)+1}return{counts:i,totalCount:r??t.length}},[e,t,n,r])}function rn(e,t,n,r,i,a,o){return(0,J.useMemo)(()=>{if(!e)return{counts:{},totalCount:0};let s={},c=o!==`available`,l=o===`all`||o===`available`;if(c)if(t&&Object.keys(t).length>0)Object.assign(s,t);else for(let e of n){let t=e.category??`system`;s[t]=(s[t]??0)+1}let u=0;if(l)for(let e of i){if(a.has(e.name))continue;let t=e.category??`system`;s[t]=(s[t]??0)+1,u+=1}let d=r??n.length;return{counts:s,totalCount:(c?d:0)+u}},[e,t,n,r,i,a,o])}function an({assistantId:e,item:t,onSelect:n,onRemove:r,onUpgrade:i,isRemoving:a,isUpgrading:o}){let s=ut({assistantId:e,name:t.name}).data;return(0,Y.jsx)(bt,{assistantId:e,item:t,drift:s,onSelect:n,onRemove:r,onUpgrade:()=>i(s),isRemoving:a,isUpgrading:o})}function on({onDismiss:e}){let{t}=H(`intelligence`);return(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg px-4 py-2.5 text-body-small-default`,style:{backgroundColor:`var(--surface-base)`,color:`var(--content-secondary)`},children:[(0,Y.jsx)(me,{className:`h-4 w-4 shrink-0`,style:{color:`var(--primary-base)`}}),(0,Y.jsx)(`p`,{className:`flex-1`,children:t(`superpowersTab.tipBannerText`)}),(0,Y.jsx)(a,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,Y.jsx)(_e,{"aria-hidden":!0}),onClick:e,"aria-label":t(`superpowersTab.dismissTipAriaLabel`),tintColor:`var(--content-tertiary)`,expandOnMobile:!1})]})}function sn({text:e}){return(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg px-4 py-2.5 text-body-small-default`,style:{backgroundColor:`var(--surface-base)`,color:`var(--content-secondary)`},children:[(0,Y.jsx)(re,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`},"aria-hidden":!0}),(0,Y.jsx)(`p`,{className:`flex-1`,children:e})]})}function cn(){return(0,Y.jsx)(`div`,{className:`flex items-center justify-center py-16`,children:(0,Y.jsx)(P,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})})}function ln(){let{t:e}=H(`intelligence`);return(0,Y.jsx)(p.Root,{children:(0,Y.jsxs)(p.Body,{className:`flex flex-col items-center justify-center py-16 text-center`,children:[(0,Y.jsx)(I,{className:`mb-3 h-8 w-8`,style:{color:`var(--system-danger)`},"aria-hidden":!0}),(0,Y.jsx)(`h3`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:e(`superpowersTab.errorStateTitle`)}),(0,Y.jsx)(`p`,{className:`mt-1 max-w-sm text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:e(`superpowersTab.errorStateSubtitle`)})]})})}function un({filter:e,category:t}){let{t:n}=H(`intelligence`),{title:r,subtitle:i,Icon:a}=dn(e,t,n);return(0,Y.jsx)(x,{icon:a,title:r,subtitle:i})}function dn(e,t,n){if(t)return{title:n(`superpowersTab.emptyState.categoryTitle`),subtitle:n(`superpowersTab.emptyState.categorySubtitle`),Icon:N};switch(e){case`installed`:return{title:n(`superpowersTab.emptyState.installedTitle`),subtitle:n(`superpowersTab.emptyState.installedSubtitle`),Icon:L};case`available`:return{title:n(`superpowersTab.emptyState.availableTitle`),subtitle:n(`superpowersTab.emptyState.availableSubtitle`),Icon:k};case`skills`:return{title:n(`superpowersTab.emptyState.skillsTitle`),subtitle:n(`superpowersTab.emptyState.skillsSubtitle`),Icon:L};case`plugins`:return{title:n(`superpowersTab.emptyState.pluginsTitle`),subtitle:n(`superpowersTab.emptyState.pluginsSubtitle`),Icon:de};case`vellum`:return{title:n(`superpowersTab.emptyState.vellumTitle`),subtitle:n(`superpowersTab.emptyState.vellumSubtitle`),Icon:L};case`clawhub`:return{title:n(`superpowersTab.emptyState.clawhubTitle`),subtitle:n(`superpowersTab.emptyState.clawhubSubtitle`),Icon:L};case`skillssh`:return{title:n(`superpowersTab.emptyState.skillsshTitle`),subtitle:n(`superpowersTab.emptyState.skillsshSubtitle`),Icon:L};case`custom`:return{title:n(`superpowersTab.emptyState.customTitle`),subtitle:n(`superpowersTab.emptyState.customSubtitle`),Icon:L};case`assistant-memory`:return{title:n(`superpowersTab.emptyState.assistantMemoryTitle`),subtitle:n(`superpowersTab.emptyState.assistantMemorySubtitle`),Icon:L};default:return{title:n(`superpowersTab.emptyState.defaultTitle`),subtitle:n(`superpowersTab.emptyState.defaultSubtitle`),Icon:re}}}function fn(){return(0,Y.jsx)(tn,{assistantId:Re()})}export{fn as SuperpowersPage};
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{s as t,t as n}from"./local-settings-Bx7FsNo5.js";import{t as r}from"./react-BFJW0bSv.js";import{G as i,t as a}from"./button-C8CGr0T0.js";import{d as o,h as s,u as c}from"./chunk-5KNZJZUH-BUqIilZr.js";import{n as l}from"./QueryClientProvider-EuRl-wrW.js";import{t as u}from"./useQuery-CTSuec5b.js";import{t as d}from"./useMutation-D2YPyfEH.js";import{t as f}from"./jsx-runtime-BJ8jcmzB.js";import{t as p}from"./card-DUsAeHUS.js";import{a as m,n as h}from"./list-row-6uedKE84.js";import{t as g}from"./createLucideIcon-B-ZPaMbU.js";import{t as _}from"./arrow-down-to-line-BuKRLRZS.js";import{t as v}from"./arrow-left-Ciai6BHG.js";import{a as y,i as b,n as x,o as S,r as C,t as ee}from"./use-skill-actions-D7CK9Jhy.js";import{t as w}from"./brain-9Csfs96f.js";import{t as T}from"./calendar-DUfSq9XY.js";import{t as E}from"./check-NGUguBHp.js";import{i as D,n as O,r as te,t as ne}from"./invalidate-plugin-queries-CI1Cseau.js";import{t as k}from"./circle-check-big-C9sLhbGa.js";import{t as re}from"./cloud-off-DioliYf9.js";import{t as ie}from"./code-B7TA1KYq.js";import{t as ae}from"./download-C7_XK23s.js";import{t as A}from"./external-link-DCA91uI6.js";import{t as j}from"./globe-BJuNFSn-.js";import{t as oe}from"./hard-drive-zWkzTs9d.js";import{t as M}from"./heart-DBsRPrRH.js";import{t as N}from"./layout-grid-CBeP_IMO.js";import{t as se}from"./link-2-CTrfUFQw.js";import{t as P}from"./loader-circle-C9QjVTuc.js";import{t as ce}from"./mail-BFnJM9hP.js";import{t as le}from"./message-circle-Cbwq_S7o.js";import{t as ue}from"./mic-W9IfxqWv.js";import{t as de}from"./puzzle-C5CgkzuA.js";import{t as fe}from"./search-FGnzWjRX.js";import{t as pe}from"./settings-CyYRtP_K.js";import{t as me}from"./sparkles-DvB22tVW.js";import{t as F}from"./terminal-CIR8bWcg.js";import{t as he}from"./trash-2-DnajdgJS.js";import{t as I}from"./triangle-alert-B-18Pims.js";import{t as ge}from"./user-D49nbijQ.js";import{t as _e}from"./x-zfSDUG5z.js";import{n as L,t as ve}from"./installed-plugins-query-DQKwv-Iz.js";import"./src-DMnnfLrU.js";import{t as R}from"./tag-D2QYCm1p.js";import{t as z}from"./popover-B_nY8VYI.js";import{t as ye}from"./input-DlkBtbxm.js";import{t as be}from"./toggle-0qt1e_3r.js";import{n as B}from"./toast-CHtrY-GO.js";import{t as xe}from"./confirm-dialog-DYmL6FRe.js";import{t as Se}from"./file-markdown-B9G_TXX-.js";import{t as Ce}from"./assistant-identity-store-DrQJhZh3.js";import{s as V}from"./i18n-C3bX3mTs.js";import{t as H}from"./useTranslation-CCDbxnME.js";import{i as we}from"./utils-wDLoxcBZ.js";import{Hn as U,Vn as Te,Wn as Ee,qn as De}from"./sdk.gen-hZs6YBR0.js";import{d as Oe}from"./routes-yNhBxUSb.js";import{Mt as ke,Nt as Ae,_n as je,_t as Me,ft as Ne,gn as Pe,gt as W,mt as G,vn as Fe}from"./react-query.gen-CYP-Tn4K.js";import{n as Ie}from"./use-is-mobile-BwSS15lq.js";import{t as K}from"./misc-giJA2hbh.js";import{t as Le}from"./plugins-surface-CLatmeTO.js";import{t as q}from"./use-touch-mobile-CaIiM-us.js";import{t as Re}from"./use-active-assistant-id-BFE4r9Rp.js";import{t as ze}from"./skill-icon-CSLUbHBD.js";import{n as Be,r as Ve}from"./skills-C3-ibGUo.js";var He=g(`funnel`,[[`path`,{d:`M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z`,key:`sc7q7i`}]]),J=e(r(),1),Y=f(),Ue={sm:`h-7 w-7`,md:`h-8 w-8 text-3xl`};function We({external:e=!1,icon:t,iconSrc:n,size:r=`sm`,className:i}){let[a,o]=(0,J.useState)(!1);(0,J.useEffect)(()=>{o(!1)},[n]);let s=t||(e?`📦`:`🧩`),c=!!n&&!a;return(0,Y.jsx)(`span`,{className:K(`flex shrink-0 items-center justify-center`,Ue[r],i),children:c?(0,Y.jsx)(`img`,{src:n,alt:``,"aria-hidden":!0,loading:`lazy`,className:`h-full w-full object-contain`,onError:()=>o(!0)}):s})}var Ge=e=>V(`pluginConstants.removeConfirmMessage`,{ns:`intelligence`,name:e}),Ke=e=>V(`pluginConstants.riskyUpgradeConfirmMessage`,{ns:`intelligence`,name:e}),qe=V(`pluginConstants.riskyUpgradeConfirmLabel`,{ns:`intelligence`}),Je=V(`pluginConstants.installError`,{ns:`intelligence`}),Ye=V(`pluginConstants.removeError`,{ns:`intelligence`}),Xe=V(`pluginConstants.upgradeError`,{ns:`intelligence`}),Ze=V(`pluginConstants.toggleError`,{ns:`intelligence`});function Qe(e,t){let n=e.map(e=>({name:e.name,description:e.description??void 0,status:`installed`,external:void 0,version:e.version??void 0,path:e.path,issues:e.issues,enabled:e.enabled,icon:e.icon,hasIcon:e.hasIcon,iconVersion:e.iconVersion})),r=new Set(n.map(e=>e.name)),i=t.filter(e=>!r.has(e.name)).map(e=>({name:e.name,description:e.description,status:`available`,external:!0,path:e.path}));return[...n,...i]}function $e(e,t){let n=t.trim().toLowerCase();return n?[e.name,e.description].some(e=>e?.toLowerCase().includes(n)):!0}function et(e){return[...e].sort((e,t)=>{let n=e.status===`installed`;return n===(t.status===`installed`)?e.name.localeCompare(t.name,void 0,{sensitivity:`base`}):n?-1:1})}function tt(e,t){switch(t){case`all`:return e;case`available`:return e.filter(e=>e.status===`available`);case`installed`:return e.filter(e=>e.status===`installed`);case`active`:return e.filter(e=>e.status===`installed`&&e.enabled!==!1);case`off`:return e.filter(e=>e.status===`installed`&&e.enabled===!1)}}function nt(e){return e?e.slice(0,7):`unknown`}function rt({plugin:e,surfaces:t=null,className:n}){let{t:r}=H(`intelligence`),i=e.source?.kind===`github`?e.source.repo:r(`pluginDetailShared.localSource`),a=e.source?.kind===`github`?`https://github.com/${e.source.repo}`:null,o=[{label:r(`pluginDetailShared.sourceLabel`),value:i,href:a??void 0}];return e.homepage&&o.push({label:r(`pluginDetailShared.homepageLabel`),value:e.homepage,href:e.homepage}),e.license&&o.push({label:r(`pluginDetailShared.licenseLabel`),value:e.license}),t&&(t.skills.length>0&&o.push({label:r(`pluginDetailShared.skillsLabel`),value:String(t.skills.length)}),t.hooks.length>0&&o.push({label:r(`pluginDetailShared.hooksLabel`),value:String(t.hooks.length)}),t.tools.length>0&&o.push({label:r(`pluginDetailShared.toolsLabel`),value:String(t.tools.length)})),(0,Y.jsx)(`dl`,{className:K(`mb-5 grid gap-x-6 gap-y-2 border-b pb-5 sm:grid-cols-[max-content_1fr]`,n),style:{borderColor:`var(--border-base)`},children:o.map(e=>(0,Y.jsxs)(`div`,{className:`contents`,children:[(0,Y.jsx)(`dt`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:e.label}),(0,Y.jsx)(`dd`,{className:`min-w-0 truncate text-body-small-default`,style:{color:`var(--content-secondary)`},children:e.href?(0,Y.jsxs)(`a`,{href:e.href,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 underline`,style:{color:`var(--primary-base, #60a5fa)`},children:[e.value,(0,Y.jsx)(A,{className:`h-3 w-3`,"aria-hidden":!0})]}):e.value})]},e.label))})}function it({plugin:e,drift:t,onInstall:n,onRemove:r,onUpgrade:i,isInstalling:o,isRemoving:s,isUpgrading:c,hasLocalEdits:l,enabled:u,onToggle:d,isToggling:f}){let{t:p}=H(`intelligence`),[m,h]=(0,J.useState)(!1),[g,v]=(0,J.useState)(!1),y=e.installed??!1,b=e.artifact??null,x=t?.status===`update-available`,S=x?p(`pluginDetailShared.upgradeTitle`,{fromSha:nt(t?.local?.commit??null),toSha:nt(t?.remote?.commit??null)}):void 0;return(0,Y.jsxs)(Y.Fragment,{children:[y?(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 md:flex-nowrap md:shrink-0`,children:[u!==void 0&&d?(0,Y.jsx)(be,{label:p(`pluginDetailShared.autoIncludeInChat`),checked:u,onChange:()=>d(),disabled:f}):null,b?(0,Y.jsx)(a,{asChild:!0,leftIcon:(0,Y.jsx)(ae,{"aria-hidden":!0}),children:(0,Y.jsx)(`a`,{href:b.url,download:!0,children:b.label??p(`pluginDetailShared.download`)})}):null,x?(0,Y.jsx)(a,{type:`button`,onClick:()=>{if(l){v(!0);return}i()},disabled:c,title:S,leftIcon:c?(0,Y.jsx)(P,{className:`animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(D,{"aria-hidden":!0}),children:p(`pluginDetailShared.upgrade`)}):null,(0,Y.jsx)(a,{type:`button`,variant:`dangerOutline`,onClick:()=>h(!0),disabled:s,leftIcon:s?(0,Y.jsx)(P,{className:`animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(he,{"aria-hidden":!0}),children:p(`pluginDetailShared.remove`)})]}):(0,Y.jsx)(a,{type:`button`,onClick:n,disabled:o,leftIcon:o?(0,Y.jsx)(P,{className:`animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(_,{"aria-hidden":!0}),children:p(`pluginDetailShared.install`)}),(0,Y.jsx)(xe,{open:m,title:p(`pluginDetailShared.removePluginTitle`),message:Ge(e.name),confirmLabel:p(`pluginDetailShared.remove`),destructive:!0,onConfirm:()=>{h(!1),r()},onCancel:()=>h(!1)}),(0,Y.jsx)(xe,{open:g,title:p(`pluginDetailShared.upgradePluginTitle`),message:Ke(e.name),confirmLabel:qe,destructive:!0,onConfirm:()=>{v(!1),i()},onCancel:()=>v(!1)})]})}function at(){return(0,Y.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,Y.jsx)(P,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})})}function ot(){let{t:e}=H(`intelligence`);return(0,Y.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 py-12 text-center`,style:{color:`var(--content-tertiary)`},children:[(0,Y.jsx)(I,{className:`h-6 w-6`,"aria-hidden":!0}),(0,Y.jsx)(`p`,{className:`text-body-medium-default`,children:e(`pluginDetailShared.loadErrorTitle`)}),(0,Y.jsx)(`p`,{className:`text-body-small-default`,children:e(`pluginDetailShared.loadErrorDetail`)})]})}function st({isInstallError:e,isRemoveError:t,isUpgradeError:n}){let r=e?Je:t?Ye:n?Xe:null;return r?(0,Y.jsxs)(`div`,{className:`mb-3 flex items-center gap-2 rounded px-3 py-2 text-body-small-default`,style:{backgroundColor:`var(--surface-secondary)`,color:`var(--content-warning, var(--content-tertiary))`},role:`alert`,children:[(0,Y.jsx)(I,{className:`h-4 w-4 shrink-0`,"aria-hidden":!0}),r]}):null}function ct({external:e,className:t}){let{t:n}=H(`intelligence`),r=e?{label:n(`pluginOriginBadge.external`),icon:j}:{label:n(`pluginOriginBadge.local`),icon:oe};return(0,Y.jsx)(R,{tone:`neutral`,leftIcon:(0,J.createElement)(r.icon),className:t,children:r.label})}function X({onClick:e,isUpgrading:t=!1}={}){let{t:n}=H(`intelligence`),r=(0,Y.jsx)(R,{tone:`warning`,leftIcon:(0,J.createElement)(t?P:D,{className:t?`animate-spin`:void 0}),className:`shrink-0`,children:n(`updateAvailableBadge.updateAvailable`)});return e?(0,Y.jsx)(`button`,{type:`button`,onClick:t=>{t.stopPropagation(),e()},disabled:t,"aria-label":n(`updateAvailableBadge.upgradePluginAriaLabel`),className:`shrink-0 rounded-[6px] focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] disabled:cursor-not-allowed`,children:r}):r}var lt=300*1e3;function ut({assistantId:e,name:t,enabled:n=!0}){return u({...G({path:{assistant_id:e,name:t}}),enabled:!!e&&!!t&&n,staleTime:lt,retry:!1})}function dt(e){let t=e?.local?.localChanges;return!!t&&t?.clean===!1}function ft(e,t,n){let{t:r}=H(`intelligence`),i=l(),a=n?.onRemoved,o=u({...Ne({path:{assistant_id:e,name:t}}),enabled:!!e&&!!t}),s=ut({assistantId:e,name:t,enabled:o.data?.installed??!1}).data,c=(0,J.useCallback)(()=>ne(i,e,t),[e,t,i]),d=Fe({onSuccess:()=>{c(),B.success(r(`pluginToast.installed`,{name:t||r(`pluginToast.pluginFallback`)}))}}),f=Pe({onSuccess:()=>{c(),a?.()}}),p=je({onSuccess:e=>{c(),B.success(e.outcome===`already-up-to-date`?r(`pluginToast.alreadyUpToDate`,{name:t||r(`pluginToast.pluginFallbackCapitalized`)}):r(`pluginToast.upgraded`,{name:t||r(`pluginToast.pluginFallback`),sha:nt(e.toCommit)}))}});return{plugin:o.data??null,drift:s,isLoading:o.isLoading,isError:o.isError,install:()=>{d.mutate({path:{assistant_id:e},body:{name:t}})},remove:()=>{f.mutate({path:{assistant_id:e,name:t}})},upgrade:()=>{p.mutate({path:{assistant_id:e,name:t},body:{}})},isInstalling:d.isPending,isRemoving:f.isPending,isUpgrading:p.isPending,isInstallError:d.isError,isRemoveError:f.isError,isUpgradeError:p.isError,hasLocalEdits:dt(s)}}var pt=`0.10.5`;function mt(){return we(pt)}function ht(e,t,n,r){let i=mt(),{data:a}=u({queryKey:[`pluginIcon`,e,t,r],queryFn:async()=>{let{data:n,error:r}=await Ee({path:{assistant_id:e,name:t},parseAs:`blob`,throwOnError:!1});if(r||!(n instanceof Blob))throw Error(`Failed to load plugin icon`);return n},enabled:!!(i&&n&&r),staleTime:1/0,retry:!1}),[o,s]=(0,J.useState)(void 0);return(0,J.useEffect)(()=>{if(!a){s(void 0);return}let e=URL.createObjectURL(a);return s(e),()=>{URL.revokeObjectURL(e)}},[a]),o}function Z(e){let t=l(),n={queryKey:W({path:{assistant_id:e}})},r=(e,r)=>{t.setQueriesData(n,t=>t&&{...t,plugins:t.plugins.map(t=>t.name===e?{...t,enabled:r}:t)})},i=d({mutationFn:async({name:t,nextEnabled:n})=>{let r=await(n?U({path:{assistant_id:e,name:t},throwOnError:!1}):Te({path:{assistant_id:e,name:t},throwOnError:!1})),i=r.response?.status;if(r.response?.ok||i===409)return r;throw Error(`Plugin toggle failed (${i??`network error`})`)},onMutate:async({name:e,nextEnabled:i})=>{await t.cancelQueries(n),r(e,i)},onError:(e,{name:t,nextEnabled:n})=>{r(t,!n),B.error(Ze)},onSettled:(n,r,i)=>{ne(t,e,i.name)}});return{toggle:(e,t)=>{i.mutate({name:e,nextEnabled:t})},togglingName:i.isPending?i.variables?.name??null:null}}function gt({assistantId:e,name:t,onBack:n,externalHint:r,enabled:i}){let{plugin:o,drift:s,isLoading:c,isError:l,install:u,remove:d,upgrade:f,isInstalling:m,isRemoving:h,isUpgrading:g,isInstallError:_,isRemoveError:y,isUpgradeError:b,hasLocalEdits:x}=ft(e,t,{onRemoved:n}),{t:S}=H(`intelligence`),{toggle:C,togglingName:ee}=Z(e),w=ht(e,t,o?.hasIcon,o?.iconVersion);return(0,Y.jsxs)(`div`,{className:`flex h-full min-h-0 flex-1 flex-col`,children:[(0,Y.jsxs)(`div`,{className:`mb-4 flex items-start gap-3`,children:[(0,Y.jsx)(a,{type:`button`,variant:`ghost`,iconOnly:(0,Y.jsx)(v,{"aria-hidden":!0}),"aria-label":S(`pluginDetail.backToPluginsAriaLabel`),onClick:n}),(0,Y.jsx)(_t,{name:t,plugin:o,externalHint:r,iconSrc:w,drift:s,onInstall:u,onRemove:d,onUpgrade:f,isInstalling:m,isRemoving:h,isUpgrading:g,hasLocalEdits:x,enabled:i,onToggle:()=>C(t,!i),isToggling:ee===t})]}),(_||y||b)&&(0,Y.jsx)(st,{isInstallError:_,isRemoveError:y,isUpgradeError:b}),(0,Y.jsx)(p.Root,{asChild:!0,children:(0,Y.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-6 py-5`,children:c?(0,Y.jsx)(at,{}):l||!o?(0,Y.jsx)(ot,{}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(rt,{plugin:o,surfaces:s?.surfaces??null}),o.readme?(0,Y.jsx)(Se,{content:o.readme}):(0,Y.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:S(`pluginDetail.noReadme`)})]})})})]})}function _t({name:e,plugin:t,externalHint:n,iconSrc:r,drift:i,onInstall:a,onRemove:o,onUpgrade:s,isInstalling:c,isRemoving:l,isUpgrading:u,hasLocalEdits:d,enabled:f,onToggle:p,isToggling:m}){let{t:h}=H(`intelligence`),g=t?.source?.kind===`github`,_=t?g:n,v=i?.status===`update-available`;return(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-3 sm:flex-row sm:items-center`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-start gap-3`,children:[_===void 0?(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`h-8 w-8 shrink-0`}):(0,Y.jsx)(We,{external:_,icon:t?.icon??void 0,iconSrc:r,size:`md`}),(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-2 gap-y-1`,children:[(0,Y.jsx)(`h2`,{className:`text-title-medium`,style:{color:`var(--content-default)`},children:t?.name??e}),t?.version?(0,Y.jsx)(`span`,{className:`shrink-0 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:h(`pluginDetail.version`,{version:t.version})}):null,t?(0,Y.jsx)(ct,{external:g}):null,v?(0,Y.jsx)(X,{}):null]}),t?.description?(0,Y.jsx)(`p`,{className:`mt-0.5 line-clamp-2 text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:t.description}):null]})]}),t?(0,Y.jsx)(it,{plugin:t,drift:i,onInstall:a,onRemove:o,onUpgrade:s,isInstalling:c,isRemoving:l,isUpgrading:u,hasLocalEdits:d,enabled:f,onToggle:p,isToggling:m}):null]})}var vt=e(i(),1);function yt({assistantId:e,name:t,onBack:n,externalHint:r,enabled:i}){let{plugin:o,drift:s,isLoading:c,isError:l,install:u,remove:d,upgrade:f,isInstalling:m,isRemoving:h,isUpgrading:g,isInstallError:_,isRemoveError:y,isUpgradeError:b,hasLocalEdits:x}=ft(e,t,{onRemoved:n}),{t:S}=H(`intelligence`),{toggle:C,togglingName:ee}=Z(e),[w,T]=(0,J.useState)(null);(0,J.useEffect)(()=>{T(document.getElementById(`viewport-overlays`))},[]);let E=o?.source?.kind===`github`,D=o?E:r,O=s?.status===`update-available`,te=o?.name??t,ne=ht(e,t,o?.hasIcon,o?.iconVersion),k=(0,Y.jsxs)(`div`,{className:`fixed inset-0 z-40 flex flex-col overflow-hidden bg-[var(--surface-overlay)]`,style:{paddingTop:`calc(8px + var(--safe-area-inset-top, env(safe-area-inset-top, 0px)))`,paddingBottom:`calc(8px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))`,paddingLeft:`calc(12px + var(--safe-area-inset-left, env(safe-area-inset-left, 0px)))`,paddingRight:`calc(12px + var(--safe-area-inset-right, env(safe-area-inset-right, 0px)))`},children:[(0,Y.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Y.jsx)(a,{variant:`ghost`,iconOnly:(0,Y.jsx)(v,{"aria-hidden":!0}),expandOnMobile:!0,"aria-label":S(`pluginDetail.backToPluginsAriaLabel`),onClick:n,className:`max-md:bg-[var(--surface-active)]`}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate px-2 text-center text-body-medium-default`,style:{color:`var(--content-secondary)`},children:te}),(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`h-8 w-8 shrink-0 touch-mobile:h-10 touch-mobile:w-10`})]}),(0,Y.jsxs)(`div`,{className:`mt-4 flex flex-col gap-2`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[D===void 0?(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`h-8 w-8 shrink-0`}):(0,Y.jsx)(We,{external:D,icon:o?.icon??void 0,iconSrc:ne,size:`md`}),(0,Y.jsx)(`h2`,{className:`min-w-0 truncate text-title-medium`,style:{color:`var(--content-emphasised)`},children:te})]}),(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1.5`,children:[O?(0,Y.jsx)(X,{}):null,o?(0,Y.jsx)(ct,{external:E}):null]})]}),o?.description?(0,Y.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:o.description}):null]}),o?(0,Y.jsx)(`div`,{className:`mt-3 flex flex-wrap items-center gap-2`,children:(0,Y.jsx)(it,{plugin:o,drift:s,enabled:i,onToggle:()=>C(t,!i),isToggling:ee===t,onInstall:u,onRemove:d,onUpgrade:f,isInstalling:m,isRemoving:h,isUpgrading:g,hasLocalEdits:x})}):null,(_||y||b)&&(0,Y.jsx)(`div`,{className:`mt-3`,children:(0,Y.jsx)(st,{isInstallError:_,isRemoveError:y,isUpgradeError:b})}),(0,Y.jsx)(p.Root,{asChild:!0,noPadding:!0,children:(0,Y.jsx)(`div`,{className:`mt-6 flex min-h-0 flex-1 flex-col overflow-hidden rounded-2xl border bg-[var(--surface-lift)]`,style:{borderColor:`var(--border-hover)`},children:(0,Y.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-4 py-4`,children:c?(0,Y.jsx)(at,{}):l||!o?(0,Y.jsx)(ot,{}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(rt,{plugin:o,surfaces:s?.surfaces??null}),o.readme?(0,Y.jsx)(Se,{content:o.readme}):(0,Y.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:S(`pluginDetail.noReadme`)})]})})})})]});return w?(0,vt.createPortal)(k,w):k}function bt({assistantId:e,item:t,drift:n,onSelect:r,onInstall:i,onRemove:o,onUpgrade:s,isInstalling:c=!1,isRemoving:l=!1,isUpgrading:u=!1}){let{t:d}=H(`intelligence`),f=t.status===`available`,m=n?.status===`update-available`,h=t.enabled!==void 0,g=t.enabled===!1,v=ht(e,t.name,t.hasIcon,t.iconVersion);return(0,Y.jsx)(p.Root,{asChild:!0,children:(0,Y.jsxs)(`div`,{role:`button`,tabIndex:0,onClick:r,onKeyDown:e=>{e.target===e.currentTarget&&(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),r())},className:`flex cursor-pointer items-center gap-3 px-3 py-2 text-left transition-colors hover:bg-[var(--surface-hover)] focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:[(0,Y.jsx)(We,{size:`sm`,external:t.external,icon:t.icon,iconSrc:v,className:g?`opacity-50`:void 0}),(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsx)(`span`,{className:`truncate text-body-medium-default`,style:{color:g?`var(--content-tertiary)`:`var(--content-emphasised)`},children:t.name}),t.version?(0,Y.jsx)(`span`,{className:`shrink-0 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:d(`pluginListRow.version`,{version:t.version})}):null,(0,Y.jsx)(R,{tone:`neutral`,leftIcon:(0,Y.jsx)(de,{"aria-hidden":!0}),children:d(`pluginListRow.pluginTag`)}),m?(0,Y.jsx)(X,{onClick:s,isUpgrading:u}):null]}),(0,Y.jsx)(`p`,{className:`mt-1 truncate text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:t.description??d(`pluginListRow.noDescription`)}),t.issues&&t.issues.length>0?(0,Y.jsxs)(`p`,{className:`mt-1 truncate text-body-small-default`,style:{color:`var(--content-warning, var(--content-tertiary))`},title:t.issues.join(`; `),children:[t.issues[0],t.issues.length>1?d(`pluginListRow.moreIssues`,{count:t.issues.length-1}):null]}):null]}),f?c?(0,Y.jsx)(a,{type:`button`,iconOnly:(0,Y.jsx)(P,{className:`animate-spin`,"aria-hidden":!0}),disabled:!0,"aria-label":d(`pluginListRow.installingAriaLabel`),expandOnMobile:!1}):(0,Y.jsx)(a,{type:`button`,iconOnly:(0,Y.jsx)(_,{"aria-hidden":!0}),onClick:e=>{e.stopPropagation(),i?.()},disabled:!i,"aria-label":d(`pluginListRow.installPluginAriaLabel`),expandOnMobile:!1}):(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[h?(0,Y.jsx)(R,{tone:t.enabled?`positive`:`neutral`,children:t.enabled?d(`pluginListRow.enabled`):d(`pluginListRow.disabled`)}):null,(0,Y.jsx)(a,{type:`button`,variant:`dangerOutline`,iconOnly:l?(0,Y.jsx)(P,{className:`animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(he,{"aria-hidden":!0}),onClick:e=>{e.stopPropagation(),o?.()},disabled:l||u||!o,"aria-label":d(`pluginListRow.removePluginAriaLabel`),expandOnMobile:!1})]})]})})}var xt={mail:ce,calendar:T,"message-circle":le,globe:j,zap:L,code:ie,mic:ue,"shopping-cart":O,palette:te,heart:M,settings:pe,"link-2":se};function St(e){return xt[e]}function Ct({selected:e,onSelect:t,counts:n,totalCount:r,showCounts:i,categories:a,ariaLabel:o}){let{t:s}=H(`intelligence`),c=[...a].sort((e,t)=>e.label.localeCompare(t.label));return(0,Y.jsxs)(`nav`,{className:`flex flex-col gap-1`,"aria-label":o??s(`categorySidebar.skillCategoriesAriaLabel`),children:[(0,Y.jsx)(wt,{icon:N,label:s(`categorySidebar.all`),count:r,isActive:e===null,showCount:i,onClick:()=>t(null)}),c.map(r=>(0,Y.jsx)(wt,{icon:St(r.icon)??N,label:r.label,count:n[r.slug]??0,isActive:e===r.slug,showCount:i,onClick:()=>t(r.slug)},r.slug))]})}function wt({icon:e,label:t,count:n,isActive:r,showCount:i,onClick:o}){return(0,Y.jsxs)(a,{variant:`ghost`,onClick:o,"aria-pressed":r,className:`h-auto justify-between gap-3 rounded-lg border-0 bg-transparent px-3 py-2 text-left hover:bg-[var(--ghost-hover)]`,style:{backgroundColor:r?`var(--surface-active)`:void 0,color:r?`var(--content-default)`:`var(--content-secondary)`},children:[(0,Y.jsxs)(`span`,{className:`flex items-center gap-2.5`,children:[(0,Y.jsx)(e,{className:`h-4 w-4 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`text-body-medium-default`,children:t})]}),i&&(0,Y.jsx)(`span`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:n})]})}function Tt({skill:e,onSelect:t,onInstall:n,onRemove:r,isInstalling:i=!1,isRemoving:o=!1}){let{t:s}=H(`intelligence`),c=C(e),l=Be(e);return(0,Y.jsx)(p.Root,{asChild:!0,children:(0,Y.jsxs)(`div`,{role:`button`,tabIndex:0,onClick:t,onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),t())},className:`flex cursor-pointer items-center gap-3 px-3 py-2 text-left transition-colors hover:bg-[var(--surface-hover)] focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:[(0,Y.jsx)(`div`,{className:`flex shrink-0 items-center justify-center text-[28px] leading-none`,children:(0,Y.jsx)(ze,{skill:e,className:`h-7 w-7`})}),(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsx)(`span`,{className:`truncate text-body-medium-default`,style:{color:`var(--content-emphasised)`},children:e.name}),(0,Y.jsx)(y,{origin:e.origin})]}),(0,Y.jsx)(`p`,{className:`mt-1 truncate text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:e.description})]}),c?i?(0,Y.jsx)(a,{type:`button`,iconOnly:(0,Y.jsx)(P,{className:`animate-spin`,"aria-hidden":!0}),disabled:!0,"aria-label":s(`skillRow.installingAriaLabel`),expandOnMobile:!1}):(0,Y.jsx)(a,{type:`button`,iconOnly:(0,Y.jsx)(_,{"aria-hidden":!0}),onClick:e=>{e.stopPropagation(),n?.()},disabled:!n,"aria-label":s(`skillRow.installSkillAriaLabel`),expandOnMobile:!1}):(0,Y.jsx)(a,{type:`button`,variant:`dangerOutline`,iconOnly:o?(0,Y.jsx)(P,{className:`animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(he,{"aria-hidden":!0}),onClick:e=>{e.stopPropagation(),r?.()},disabled:!l||o||!r,"aria-label":s(l?`skillRow.removeSkillAriaLabel`:`skillRow.bundledSkillCannotBeRemovedAriaLabel`),title:l?void 0:s(`skillRow.bundledSkillsCannotBeRemoved`),expandOnMobile:!1})]})})}function Q(e,t){switch(e){case`vellum`:return`Vellum`;case`clawhub`:return`Clawhub`;case`skillssh`:return`skills.sh`;case`all`:return t(`superpowersFilters.filterLabel.all`);case`installed`:return t(`superpowersFilters.filterLabel.installed`);case`available`:return t(`superpowersFilters.filterLabel.available`);case`skills`:return t(`superpowersFilters.filterLabel.skills`);case`plugins`:return t(`superpowersFilters.filterLabel.plugins`);case`custom`:return t(`superpowersFilters.filterLabel.custom`);case`assistant-memory`:return t(`superpowersFilters.filterLabel.assistantMemory`)}}function Et(){let{t:e}=H(`intelligence`);return{statusFilters:[{value:`all`,label:Q(`all`,e),icon:N},{value:`installed`,label:Q(`installed`,e),icon:k},{value:`available`,label:Q(`available`,e),icon:_}],typeFilters:[{value:`skills`,label:Q(`skills`,e),icon:L},{value:`plugins`,label:Q(`plugins`,e),icon:de}],originFilters:[{value:`vellum`,label:Q(`vellum`,e),icon:S},{value:`clawhub`,label:Q(`clawhub`,e),icon:j},{value:`skillssh`,label:Q(`skillssh`,e),icon:F},{value:`custom`,label:Q(`custom`,e),icon:ge},{value:`assistant-memory`,label:Q(`assistant-memory`,e),icon:w}]}}function Dt({search:e,onSearchChange:t,filter:n,onFilterChange:r,isSearching:i,categories:a,category:o,onCategoryChange:s,counts:c,totalCount:l,showCounts:u,pluginsSupported:d,showCategories:f}){let{t:p}=H(`intelligence`);return(0,Y.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Y.jsx)(ye,{type:`search`,value:e,onChange:e=>{t(e.target.value)},placeholder:p(`superpowersFilters.searchPlaceholder`),"aria-label":p(`superpowersFilters.searchAriaLabel`),leftIcon:(0,Y.jsx)(fe,{className:`h-4 w-4`,"aria-hidden":!0}),rightIcon:i?(0,Y.jsx)(P,{className:`h-4 w-4 animate-spin`,"aria-hidden":!0}):void 0,fullWidth:!0,wrapperClassName:`flex-1`}),(0,Y.jsx)(Ot,{filter:n,onFilterChange:r,categories:a,category:o,onCategoryChange:s,counts:c,totalCount:l,showCounts:u,pluginsSupported:d,showCategories:f})]})}function Ot(e){let{t}=H(`intelligence`),n=q(),[r,i]=(0,J.useState)(!1),{statusFilters:o,typeFilters:s,originFilters:c}=Et(),l=(0,Y.jsx)(a,{type:`button`,variant:`outlined`,iconOnly:(0,Y.jsx)(He,{"aria-hidden":!0}),"aria-label":t(`superpowersFilters.filterAriaLabel`),"aria-haspopup":n?`dialog`:`listbox`,"aria-expanded":r,tintColor:`var(--primary-base)`});if(n)return(0,Y.jsx)(kt,{...e,open:r,onOpenChange:i,trigger:l});let u=t=>{e.onFilterChange(t),i(!1)};return(0,Y.jsxs)(z.Root,{open:r,onOpenChange:i,children:[(0,Y.jsx)(z.Trigger,{asChild:!0,children:l}),(0,Y.jsx)(z.Content,{align:`end`,sideOffset:4,className:`w-44 overflow-hidden p-0`,children:(0,Y.jsxs)(`ul`,{role:`listbox`,children:[(0,Y.jsx)(Nt,{label:t(`superpowersFilters.statusLabel`),options:o,selected:e.filter,onSelect:u}),e.pluginsSupported&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),(0,Y.jsx)(Nt,{label:t(`superpowersFilters.typeLabel`),options:s,selected:e.filter,onSelect:u})]}),(0,Y.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),(0,Y.jsx)(Nt,{label:t(`superpowersFilters.sourceLabel`),options:c,selected:e.filter,onSelect:u}),e.showCategories&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),(0,Y.jsx)(Mt,{categories:e.categories,category:e.category,counts:e.counts,totalCount:e.totalCount,showCounts:e.showCounts,allLabel:t(`superpowersFilters.filterLabel.all`),categoriesLabel:t(`superpowersFilters.categoriesLabel`),onSelect:t=>{e.onCategoryChange(t),i(!1)}})]})]})})]})}function kt({filter:e,onFilterChange:t,categories:n,category:r,onCategoryChange:i,counts:o,totalCount:s,showCounts:c,pluginsSupported:l,showCategories:u,open:d,onOpenChange:f,trigger:p}){let{t:h}=H(`intelligence`),{statusFilters:g,typeFilters:_,originFilters:v}=Et();return(0,Y.jsxs)(m.Root,{open:d,onOpenChange:f,children:[(0,Y.jsx)(m.Trigger,{asChild:!0,children:p}),(0,Y.jsxs)(m.Content,{className:`max-h-[85dvh]`,"aria-describedby":void 0,children:[(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`mx-auto mb-3 h-1 w-9 shrink-0 rounded-full bg-[var(--border-element)]`}),(0,Y.jsx)(m.Header,{children:(0,Y.jsx)(m.Title,{children:h(`superpowersFilters.filtersTitle`)})}),(0,Y.jsxs)(m.Body,{className:`flex flex-col gap-3 pt-2`,children:[(0,Y.jsx)(At,{label:h(`superpowersFilters.statusLabel`),children:g.map(n=>(0,Y.jsx)($,{icon:n.icon,label:n.label,active:e===n.value,onSelect:()=>t(n.value)},n.value))}),l&&(0,Y.jsx)(At,{label:h(`superpowersFilters.typeLabel`),children:_.map(n=>(0,Y.jsx)($,{icon:n.icon,label:n.label,active:e===n.value,onSelect:()=>t(n.value)},n.value))}),(0,Y.jsx)(At,{label:h(`superpowersFilters.sourceLabel`),children:v.map(n=>(0,Y.jsx)($,{icon:n.icon,label:n.label,active:e===n.value,onSelect:()=>t(n.value)},n.value))}),u&&(0,Y.jsxs)(At,{label:h(`superpowersFilters.categoriesLabel`),children:[(0,Y.jsx)($,{icon:N,label:h(`superpowersFilters.filterLabel.all`),active:r===null,badge:c?s:void 0,onSelect:()=>i(null)}),jt(n).map(e=>(0,Y.jsx)($,{icon:St(e.icon)??N,label:e.label,active:r===e.slug,badge:c?o[e.slug]??0:void 0,onSelect:()=>i(e.slug)},e.slug))]})]}),(0,Y.jsx)(m.Footer,{children:(0,Y.jsx)(a,{type:`button`,variant:`primary`,fullWidth:!0,onClick:()=>f(!1),children:h(`superpowersFilters.done`)})})]})]})}function At({label:e,children:t}){return(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`div`,{className:`px-2 pb-1 text-body-small-default uppercase tracking-wide`,style:{color:`var(--content-tertiary)`},children:e}),t]})}function $({icon:e,label:t,active:n,badge:r,onSelect:i}){return(0,Y.jsx)(h,{icon:e,label:t,active:n,activeVariant:`branded`,badge:r,trailingAction:n&&r==null?(0,Y.jsx)(E,{className:`h-4 w-4 text-[var(--primary-base)]`,"aria-hidden":!0}):void 0,onSelect:i})}function jt(e){return[...e].sort((e,t)=>e.label.localeCompare(t.label))}function Mt({categories:e,category:t,counts:n,totalCount:r,showCounts:i,allLabel:a,categoriesLabel:o,onSelect:s}){return(0,Y.jsx)(Pt,{label:o,children:(0,Y.jsx)(`ul`,{className:`max-h-48 overflow-y-auto`,children:[{slug:null,label:a,count:r},...jt(e).map(e=>({slug:e.slug,label:e.label,count:n[e.slug]??0}))].map(e=>{let n=t===e.slug;return(0,Y.jsx)(`li`,{children:(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>s(e.slug),role:`option`,"aria-selected":n,className:`flex w-full items-center gap-2 px-3 py-1.5 text-left text-body-medium-lighter transition-colors hover:bg-[var(--surface-hover)]`,style:{color:n?`var(--primary-base)`:`var(--content-default)`},children:[(0,Y.jsx)(`span`,{className:`flex-1 truncate`,children:e.label}),i&&(0,Y.jsx)(`span`,{style:{color:`var(--content-tertiary)`},children:e.count})]})},e.slug??`all`)})})})}function Nt({label:e,options:t,selected:n,onSelect:r}){return(0,Y.jsx)(Pt,{label:e,children:(0,Y.jsx)(`ul`,{children:t.map(e=>{let t=e.icon,i=n===e.value;return(0,Y.jsx)(`li`,{children:(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>r(e.value),role:`option`,"aria-selected":i,className:`flex w-full items-center gap-2 px-3 py-1.5 text-left text-body-medium-lighter transition-colors hover:bg-[var(--surface-hover)]`,style:{color:i?`var(--primary-base)`:`var(--content-default)`},children:[(0,Y.jsx)(t,{className:`h-4 w-4`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`flex-1`,children:e.label}),i&&(0,Y.jsx)(k,{className:`h-3.5 w-3.5`,"aria-hidden":!0})]})},e.value)})})})}function Pt({label:e,children:t}){return(0,Y.jsxs)(`li`,{role:`group`,"aria-label":e,children:[(0,Y.jsx)(`div`,{className:`px-3 pb-1 pt-2 text-body-small-default uppercase tracking-wide`,style:{color:`var(--content-tertiary)`},children:e}),t]})}var Ft=300*1e3,It=[],Lt=[];async function Rt(e,t,n){let r=await De({path:{assistant_id:e},query:{q:void 0,category:t},signal:n,throwOnError:!1});if(r.response?.status===404)return{plugins:[]};if(!r.response?.ok)throw Error(V(`usePluginsList.failureMessage`,{ns:`intelligence`}));return r.data??{plugins:[]}}function zt(e,t){let[n,r]=(0,J.useState)({assistantId:e,latched:!1}),i=n.assistantId===e?n.latched:!1;return n.assistantId!==e&&r({assistantId:e,latched:!1}),(0,J.useEffect)(()=>{t&&r(t=>t.assistantId===e&&t.latched?t:{assistantId:e,latched:!0})},[e,t]),i||t}function Bt(e,t=null,n=!0){let r=t??void 0,i=u({queryKey:W({path:{assistant_id:e},query:{q:void 0,category:r}}),queryFn:({signal:t})=>Rt(e,r,t),enabled:!!e&&n,staleTime:Ft}),a=u({...ve(e),enabled:!!e&&n&&t!==null}),o=u({...Me({path:{assistant_id:e},query:{q:void 0}}),enabled:!!e&&n,staleTime:Ft}),s=(0,J.useMemo)(()=>{let e=t===null?i.data?.plugins:a.data?.plugins??i.data?.plugins;return new Set((e??It).map(e=>e.name))},[t,a.data?.plugins,i.data?.plugins]),c=(0,J.useMemo)(()=>{let e=i.data?.plugins??It,n=o.data?.matches??Lt;return et(Qe(e,(t===null?n:n.filter(e=>(e.category??`system`)===t)).filter(e=>!s.has(e.name))))},[i.data?.plugins,o.data?.matches,t,s]),d=t===null?i.data:a.data,f=zt(e,d?.categoryCounts!==void 0),p=zt(e,(d?.plugins??It).some(e=>e.enabled!==void 0)),m=l(),h=(0,J.useRef)(null);return(0,J.useEffect)(()=>{if(h.current===e||!o.isSuccess)return;let t=d?.plugins;if(!t?.length)return;let n=new Map((o.data?.matches??Lt).map(e=>[e.name,e.category]));t.some(e=>{let t=n.get(e.name);return t!=null&&t!==`system`&&(e.category??`system`)===`system`})&&(h.current=e,m.invalidateQueries({queryKey:W({path:{assistant_id:e},query:{q:void 0}})}))},[e,o.isSuccess,o.data?.matches,d?.plugins,m]),{items:c,isLoading:i.isLoading,catalogLoading:o.isLoading,isError:i.isError,isFetching:i.isFetching||o.isFetching,catalogError:o.isError,categorySupported:f,pluginToggleSupported:p,installedCategoryCounts:d?.categoryCounts,installedPlugins:d?.plugins??It,installedTotal:d?.totalCount,catalogMatches:o.data?.matches??Lt,unfilteredInstalledNames:s}}function Vt(e){return u({...ke({path:{assistant_id:e}}),select:e=>e.categories,staleTime:300*1e3})}var Ht=new Set([`all`,`installed`,`available`,`skills`,`plugins`,`vellum`,`clawhub`,`skillssh`,`custom`,`assistant-memory`]);function Ut(e){let t=e.get(`filter`),n=e.get(`category`);return{q:e.get(`q`)??``,filter:Kt(t)?t:`all`,category:n||null}}function Wt(e,t){let n=new URLSearchParams(e);return t.q!==void 0&&Gt(n,`q`,t.q.trim()||null),t.filter!==void 0&&Gt(n,`filter`,t.filter===`all`?null:t.filter),t.category!==void 0&&Gt(n,`category`,t.category),n}function Gt(e,t,n){n===null?e.delete(t):e.set(t,n)}function Kt(e){return e!==null&&Ht.has(e)}function qt(e){switch(e){case`installed`:return{kind:`installed`};case`available`:return{kind:`available`};case`vellum`:case`clawhub`:case`skillssh`:case`custom`:case`assistant-memory`:return{origin:e};default:return{}}}function Jt(e){return e!==`plugins`}function Yt(e){return e===`all`||e===`installed`||e===`available`||e===`plugins`}function Xt(e){switch(e){case`installed`:return`installed`;case`available`:return`available`;default:return`all`}}function Zt(e,t){let[n,r]=(0,J.useState)(e);return(0,J.useEffect)(()=>{let n=setTimeout(()=>{r(e)},t);return()=>clearTimeout(n)},[e,t]),n}var Qt=300,$t=`vellum:superpowers:tipDismissed`;function en(e){return[...e].sort((e,t)=>e.installed===t.installed?e.name.localeCompare(t.name,void 0,{sensitivity:`base`}):e.installed?-1:1)}function tn({assistantId:e}){let{t:r}=H(`intelligence`),i=o(),a=c(),d=l(),f=Ie(),p=Ce.use.version(),m=Le(),[h,g]=s(),{q:_,filter:v,category:y}=(0,J.useMemo)(()=>Ut(h),[h]),x=h.get(`plugin`),S=(0,J.useCallback)(e=>{g(t=>Wt(t,e),{replace:!0})},[g]),C=h.get(`success`),w=(0,J.useRef)(!1);(0,J.useEffect)(()=>{C!==`true`||w.current||(w.current=!0,x&&B.success(r(`pluginToast.installed`,{name:x})),g(e=>{let t=new URLSearchParams(e);return t.delete(`success`),t},{replace:!0}))},[C,x,g,r]);let[T,E]=(0,J.useState)(_),D=Zt(T.trim(),Qt),O=(0,J.useRef)(_);(0,J.useEffect)(()=>{if(_!==O.current&&(O.current=_,_!==T.trim())){E(_);return}D!==_&&D===T.trim()&&(O.current=D,S({q:D}))},[D,_,T,S]);let te=(0,J.useCallback)(e=>S({filter:e}),[S]),k=(0,J.useCallback)(e=>S({category:e}),[S]),[re,ie]=(0,J.useState)(()=>n($t,!1)),ae=(0,J.useCallback)(()=>{ie(!0),t($t,!0)},[]),A=!m&&v===`plugins`?`all`:v,j=Jt(A),oe=m&&Yt(A),M=Xt(A),{handleInstall:N,handleRemove:se,isInstallingSkill:P,isRemovingSkill:ce,skillPendingRemoval:le,confirmRemove:ue,cancelRemove:de}=ee(e),{data:fe=[]}=Vt(e),{origin:pe,kind:me}=(0,J.useMemo)(()=>qt(A),[A]),F=u({...Ae({path:{assistant_id:e},query:{include:`catalog`,origin:pe,kind:me,q:D||void 0,category:y??void 0}}),select:e=>({skills:e.skills,categoryCounts:e.categoryCounts,totalCount:e.totalCount}),enabled:!!e&&j}),he=u({...Ae({path:{assistant_id:e},query:{include:`catalog`,origin:pe,kind:me,q:D||void 0}}),select:e=>({skills:e.skills,categoryCounts:e.categoryCounts,totalCount:e.totalCount}),enabled:!!e&&j&&y!==null}),{items:I,isLoading:ge,catalogLoading:_e,isError:L,isFetching:ve,catalogError:R,categorySupported:z,installedCategoryCounts:ye,installedPlugins:be,installedTotal:Se,catalogMatches:V,unfilteredInstalledNames:we}=Bt(e,y,m),U=oe&&(y===null||z),Te=(0,J.useCallback)(t=>ne(d,e,t),[e,d]),[Ee,De]=(0,J.useState)(null),[ke,Me]=(0,J.useState)(null),[Ne,W]=(0,J.useState)(null),[G,K]=(0,J.useState)(null),[q,Re]=(0,J.useState)(null),ze=Fe({onMutate:e=>De(e.body.name),onSuccess:(e,t)=>B.success(r(`pluginToast.installed`,{name:t.body.name})),onError:()=>B.error(Je),onSettled:(e,t,n)=>{De(null),Te(n.body.name)}}),Be=Pe({onMutate:e=>Me(e.path.name),onSuccess:(e,t)=>B.success(r(`pluginToast.removed`,{name:t.path.name})),onError:()=>B.error(Ye),onSettled:(e,t,n)=>{Me(null),Te(n.path.name)}}),He=je({onMutate:e=>W(e.path.name),onSuccess:(e,t)=>B.success(e.outcome===`already-up-to-date`?r(`pluginToast.alreadyUpToDate`,{name:t.path.name}):r(`pluginToast.upgraded`,{name:t.path.name,sha:nt(e.toCommit)})),onError:()=>B.error(Xe),onSettled:(e,t,n)=>{W(null),Te(n.path.name)}}),Ue=(0,J.useCallback)(e=>g(t=>{let n=new URLSearchParams(t);return n.set(`plugin`,e.name),n}),[g]),We=(0,J.useCallback)(()=>g(e=>{let t=new URLSearchParams(e);return t.delete(`plugin`),t},{replace:!0}),[g]),Ze=(0,J.useCallback)(t=>{ze.mutate({path:{assistant_id:e},body:{name:t.name}})},[e,ze]),Qe=(0,J.useCallback)(()=>{G&&(Be.mutate({path:{assistant_id:e,name:G.name}}),K(null))},[e,G,Be]),et=(0,J.useCallback)(t=>{He.mutate({path:{assistant_id:e,name:t},body:{}})},[e,He]),rt=(0,J.useCallback)(()=>{q&&(et(q.name),Re(null))},[q,et]),it=(0,J.useCallback)((e,t)=>{if(dt(t)){Re(e);return}et(e.name)},[et]),at=(0,J.useMemo)(()=>j?F.data?.skills??[]:[],[j,F.data?.skills]),ot=(0,J.useMemo)(()=>U?tt(I,M).filter(e=>$e(e,D)):[],[U,I,M,D]),st=(0,J.useMemo)(()=>en([...at.map(e=>({type:`skill`,key:`skill:${e.id}`,name:e.name,installed:b(e),skill:e})),...ot.map(e=>({type:`plugin`,key:`plugin:${e.name}`,name:e.name,installed:e.status===`installed`,item:e}))]),[at,ot]),ct=y===null?F.data:he.data,X=nn(j,ct?.skills??at,ct?.categoryCounts,ct?.totalCount),lt=rn(oe&&z,ye,be,Se,V,we,M),{counts:ut,totalCount:ft}=(0,J.useMemo)(()=>{let e={...X.counts};for(let[t,n]of Object.entries(lt.counts))e[t]=(e[t]??0)+n;return{counts:e,totalCount:X.totalCount+lt.totalCount}},[X,lt]),pt=j&&F.isLoading,mt=j&&F.isError,ht=U&&ge,Z=U&&L,_t=(mt||!j)&&(Z||!U)&&(mt||Z),vt=pt||ht,xt=!!D&&(j&&F.isFetching||U&&ve&&!ge),St=T.trim().length>0;if(x&&!m&&p===null)return null;if(x&&m){let t=I.find(e=>e.name===x),n={assistantId:e,name:x,externalHint:t?.external,enabled:t?.enabled,onBack:We};return f?(0,Y.jsx)(yt,{...n}):(0,Y.jsx)(gt,{...n})}let wt=(0,Y.jsx)(`div`,{className:`min-w-0 flex-1 overflow-y-auto`,children:vt?(0,Y.jsx)(cn,{}):_t?(0,Y.jsx)(ln,{}):st.length===0?U&&_e&&M!==`installed`?(0,Y.jsx)(cn,{}):(0,Y.jsx)(un,{filter:A,category:y}):(0,Y.jsx)(`ul`,{className:`flex flex-col gap-2`,children:st.map(t=>(0,Y.jsx)(`li`,{children:t.type===`skill`?(0,Y.jsx)(Tt,{skill:t.skill,onSelect:()=>i(Oe.skills.detail(t.skill.id),{state:{listSearch:a.search}}),onInstall:()=>N(t.skill),onRemove:()=>se(t.skill),isInstalling:P(t.skill),isRemoving:ce(t.skill)}):t.installed?(0,Y.jsx)(an,{assistantId:e,item:t.item,onSelect:()=>Ue(t.item),onRemove:()=>K(t.item),onUpgrade:e=>it(t.item,e),isRemoving:ke===t.item.name,isUpgrading:Ne===t.item.name}):(0,Y.jsx)(bt,{assistantId:e,item:t.item,onSelect:()=>Ue(t.item),onInstall:()=>Ze(t.item),isInstalling:Ee===t.item.name})},t.key))})});return(0,Y.jsxs)(`div`,{className:`flex h-full min-h-0 flex-1 flex-col gap-4`,children:[!re&&(0,Y.jsx)(on,{onDismiss:ae}),(0,Y.jsx)(Dt,{search:T,onSearchChange:E,filter:A,onFilterChange:te,isSearching:xt,categories:fe,category:y,onCategoryChange:k,counts:ut,totalCount:ft,showCounts:!St,pluginsSupported:m,showCategories:f}),!vt&&!_t&&mt?(0,Y.jsx)(sn,{text:r(`superpowersTab.skillsUnavailableNotice`)}):null,!vt&&!_t&&Z?(0,Y.jsx)(sn,{text:r(`superpowersTab.pluginsUnavailableNotice`)}):null,U&&R&&!ht&&!Z?(0,Y.jsx)(sn,{text:r(`superpowersTab.catalogBrowsingUnavailableNotice`)}):null,(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-1 gap-6`,children:[!f&&(0,Y.jsx)(`aside`,{className:`w-56 shrink-0 overflow-y-auto`,children:(0,Y.jsx)(Ct,{ariaLabel:r(`superpowersTab.categoriesAriaLabel`),selected:y,onSelect:k,counts:ut,totalCount:ft,showCounts:!St,categories:fe})}),wt]}),(0,Y.jsx)(Ve,{skillName:le?.name??null,onConfirm:ue,onCancel:de}),(0,Y.jsx)(xe,{open:G!==null,title:r(`pluginDetailShared.removePluginTitle`),message:G?Ge(G.name):``,confirmLabel:r(`pluginDetailShared.remove`),destructive:!0,onConfirm:Qe,onCancel:()=>K(null)}),(0,Y.jsx)(xe,{open:q!==null,title:r(`pluginDetailShared.upgradePluginTitle`),message:q?Ke(q.name):``,confirmLabel:qe,destructive:!0,onConfirm:rt,onCancel:()=>Re(null)})]})}function nn(e,t,n,r){return(0,J.useMemo)(()=>{if(!e)return{counts:{},totalCount:0};if(n&&Object.keys(n).length>0)return{counts:n,totalCount:r??t.length};let i={};for(let e of t){let t=e.category??`system`;i[t]=(i[t]??0)+1}return{counts:i,totalCount:r??t.length}},[e,t,n,r])}function rn(e,t,n,r,i,a,o){return(0,J.useMemo)(()=>{if(!e)return{counts:{},totalCount:0};let s={},c=o!==`available`,l=o===`all`||o===`available`;if(c)if(t&&Object.keys(t).length>0)Object.assign(s,t);else for(let e of n){let t=e.category??`system`;s[t]=(s[t]??0)+1}let u=0;if(l)for(let e of i){if(a.has(e.name))continue;let t=e.category??`system`;s[t]=(s[t]??0)+1,u+=1}let d=r??n.length;return{counts:s,totalCount:(c?d:0)+u}},[e,t,n,r,i,a,o])}function an({assistantId:e,item:t,onSelect:n,onRemove:r,onUpgrade:i,isRemoving:a,isUpgrading:o}){let s=ut({assistantId:e,name:t.name}).data;return(0,Y.jsx)(bt,{assistantId:e,item:t,drift:s,onSelect:n,onRemove:r,onUpgrade:()=>i(s),isRemoving:a,isUpgrading:o})}function on({onDismiss:e}){let{t}=H(`intelligence`);return(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg px-4 py-2.5 text-body-small-default`,style:{backgroundColor:`var(--surface-base)`,color:`var(--content-secondary)`},children:[(0,Y.jsx)(me,{className:`h-4 w-4 shrink-0`,style:{color:`var(--primary-base)`}}),(0,Y.jsx)(`p`,{className:`flex-1`,children:t(`superpowersTab.tipBannerText`)}),(0,Y.jsx)(a,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,Y.jsx)(_e,{"aria-hidden":!0}),onClick:e,"aria-label":t(`superpowersTab.dismissTipAriaLabel`),tintColor:`var(--content-tertiary)`,expandOnMobile:!1})]})}function sn({text:e}){return(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg px-4 py-2.5 text-body-small-default`,style:{backgroundColor:`var(--surface-base)`,color:`var(--content-secondary)`},children:[(0,Y.jsx)(re,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`},"aria-hidden":!0}),(0,Y.jsx)(`p`,{className:`flex-1`,children:e})]})}function cn(){return(0,Y.jsx)(`div`,{className:`flex items-center justify-center py-16`,children:(0,Y.jsx)(P,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})})}function ln(){let{t:e}=H(`intelligence`);return(0,Y.jsx)(p.Root,{children:(0,Y.jsxs)(p.Body,{className:`flex flex-col items-center justify-center py-16 text-center`,children:[(0,Y.jsx)(I,{className:`mb-3 h-8 w-8`,style:{color:`var(--system-danger)`},"aria-hidden":!0}),(0,Y.jsx)(`h3`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:e(`superpowersTab.errorStateTitle`)}),(0,Y.jsx)(`p`,{className:`mt-1 max-w-sm text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:e(`superpowersTab.errorStateSubtitle`)})]})})}function un({filter:e,category:t}){let{t:n}=H(`intelligence`),{title:r,subtitle:i,Icon:a}=dn(e,t,n);return(0,Y.jsx)(x,{icon:a,title:r,subtitle:i})}function dn(e,t,n){if(t)return{title:n(`superpowersTab.emptyState.categoryTitle`),subtitle:n(`superpowersTab.emptyState.categorySubtitle`),Icon:N};switch(e){case`installed`:return{title:n(`superpowersTab.emptyState.installedTitle`),subtitle:n(`superpowersTab.emptyState.installedSubtitle`),Icon:L};case`available`:return{title:n(`superpowersTab.emptyState.availableTitle`),subtitle:n(`superpowersTab.emptyState.availableSubtitle`),Icon:k};case`skills`:return{title:n(`superpowersTab.emptyState.skillsTitle`),subtitle:n(`superpowersTab.emptyState.skillsSubtitle`),Icon:L};case`plugins`:return{title:n(`superpowersTab.emptyState.pluginsTitle`),subtitle:n(`superpowersTab.emptyState.pluginsSubtitle`),Icon:de};case`vellum`:return{title:n(`superpowersTab.emptyState.vellumTitle`),subtitle:n(`superpowersTab.emptyState.vellumSubtitle`),Icon:L};case`clawhub`:return{title:n(`superpowersTab.emptyState.clawhubTitle`),subtitle:n(`superpowersTab.emptyState.clawhubSubtitle`),Icon:L};case`skillssh`:return{title:n(`superpowersTab.emptyState.skillsshTitle`),subtitle:n(`superpowersTab.emptyState.skillsshSubtitle`),Icon:L};case`custom`:return{title:n(`superpowersTab.emptyState.customTitle`),subtitle:n(`superpowersTab.emptyState.customSubtitle`),Icon:L};case`assistant-memory`:return{title:n(`superpowersTab.emptyState.assistantMemoryTitle`),subtitle:n(`superpowersTab.emptyState.assistantMemorySubtitle`),Icon:L};default:return{title:n(`superpowersTab.emptyState.defaultTitle`),subtitle:n(`superpowersTab.emptyState.defaultSubtitle`),Icon:re}}}function fn(){return(0,Y.jsx)(tn,{assistantId:Re()})}export{fn as SuperpowersPage};
@@ -1 +1 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./jsx-runtime-BJ8jcmzB.js";import{t as r}from"./cn-Cf8SmgbR.js";import{t as i}from"./haptics-D3hzTCtH.js";import{t as a}from"./pointer-BMK9brNn.js";import{t as o}from"./edge-swipe-arbiter-store-BGBvaPTd.js";var s=e(t(),1),c=36,l=.8,u=8,d=.35;function f({enabled:e,leadingActions:t,trailingActions:n}){let r=(t?.length??0)*72,a=(n?.length??0)*72,[f,p]=(0,s.useState)(0),[m,h]=(0,s.useState)(!1),[g,_]=(0,s.useState)(`none`),v=o.use.registerOpenRow(),y=o.use.unregisterOpenRow();(0,s.useEffect)(()=>{if(g!==`none`)return v(),y},[g,v,y]);let b=(0,s.useRef)(null),x=(0,s.useCallback)(()=>{b.current=null,h(!1),p(0)},[]),S=(0,s.useCallback)(()=>{p(0),_(`none`)},[]);return{offset:f,isDragging:m,revealedSide:g,leadingWidth:r,trailingWidth:a,onTouchStart:(0,s.useCallback)(r=>{if(!e||!t&&!n)return;if(r.touches.length!==1){x();return}let i=r.touches[0];b.current={touchId:i.identifier,startX:i.clientX,startY:i.clientY,axis:`undecided`,lastDx:0,startOffset:f}},[e,t,n,f,x]),onTouchMove:(0,s.useCallback)(e=>{let t=b.current;if(!t)return;if(e.touches.length!==1){x();return}let n=e.touches[0];if(n.identifier!==t.touchId)return;let i=n.clientX-t.startX,o=n.clientY-t.startY;if(t.lastDx=i,t.axis===`undecided`){if(Math.abs(i)<u&&Math.abs(o)<u)return;if(Math.abs(o)>Math.abs(i)*l){b.current=null;return}t.axis=`horizontal`,h(!0)}if(t.axis!==`horizontal`)return;if(Math.abs(i)<c&&Math.abs(o)>Math.abs(i)*l){x(),p(t.startOffset);return}let s=t.startOffset+i,f=r,m=-a;s>f?s=f+(s-f)*d:s<m&&(s=m+(s-m)*d),(t.startOffset>0&&s<0&&a===0||t.startOffset<0&&s>0&&r===0)&&(s*=d),p(s)},[r,a,x]),onTouchEnd:(0,s.useCallback)(e=>{let t=b.current;if(!t){x();return}if(t.axis===`undecided`){b.current=null,h(!1);return}if(t.axis!==`horizontal`){x();return}if(e.touches.length>0){x();return}let n=Array.from(e.changedTouches).find(e=>e.identifier===t.touchId),o=n?n.clientX-t.startX:t.lastDx,s=t.startOffset+o;s<=-c&&a>0?(i.light(),p(-a),_(`trailing`)):s>=c&&r>0?(i.light(),p(r),_(`leading`)):(p(0),_(`none`)),b.current=null,h(!1)},[r,a,x]),onTouchCancel:(0,s.useCallback)(()=>{S(),x()},[S,x]),close:S}}var p=n();function m({action:e,onAfterSelect:t,hidden:n=!1}){let i=(0,s.useCallback)(()=>{e.onSelect(),t()},[e,t]),a=e.icon;return(0,p.jsxs)(`button`,{type:`button`,"aria-label":e.label,"aria-hidden":n,tabIndex:n?-1:0,onClick:i,className:r(`flex shrink-0 flex-col items-center justify-center gap-1`,`touch-mobile:transition-none`),style:{width:72,color:e.variant===`destructive`?`var(--aux-white)`:`var(--content-inset)`,background:e.variant===`destructive`?`var(--system-negative-strong)`:`var(--primary-base)`},children:[(0,p.jsx)(a,{size:18}),(0,p.jsx)(`span`,{className:`text-[10px] font-medium leading-none`,children:e.label})]})}var h=(0,s.forwardRef)(function({children:e,leadingActions:t,trailingActions:n,enabled:i=a(),className:o,style:s,...c},l){let u=i&&((t?.length??0)>0||(n?.length??0)>0),{offset:d,isDragging:h,onTouchStart:g,onTouchMove:_,onTouchEnd:v,onTouchCancel:y,close:b}=f({enabled:u,leadingActions:t,trailingActions:n});return u?(0,p.jsxs)(`div`,{ref:l,className:r(`relative overflow-hidden`,o),...c,style:{...s,touchAction:`pan-y`},onTouchStart:g,onTouchMove:_,onTouchEnd:v,onTouchCancel:y,children:[n&&n.length>0?(0,p.jsx)(`div`,{className:`absolute inset-y-0 right-0 flex`,"aria-hidden":d>=0,style:d>=0?{pointerEvents:`none`}:void 0,children:n.map(e=>(0,p.jsx)(m,{action:e,onAfterSelect:b,hidden:d>=0},e.id))}):null,t&&t.length>0?(0,p.jsx)(`div`,{className:`absolute inset-y-0 left-0 flex`,"aria-hidden":d<=0,style:d<=0?{pointerEvents:`none`}:void 0,children:t.map(e=>(0,p.jsx)(m,{action:e,onAfterSelect:b,hidden:d<=0},e.id))}):null,(0,p.jsx)(`div`,{className:r(`relative bg-[var(--swipe-reveal-bg,var(--surface-overlay))] transition-transform`,h&&`transition-none`),style:{transform:`translateX(${d}px)`,zIndex:1},children:e})]}):(0,p.jsx)(`div`,{ref:l,className:o,style:s,...c,children:e})});export{h as t};
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./jsx-runtime-BJ8jcmzB.js";import{t as r}from"./cn-Cf8SmgbR.js";import{t as i}from"./haptics-F-nvqKYf.js";import{t as a}from"./pointer-Cxac45y6.js";import{t as o}from"./edge-swipe-arbiter-store-Cgt2wsOY.js";var s=e(t(),1),c=36,l=.8,u=8,d=.35;function f({enabled:e,leadingActions:t,trailingActions:n}){let r=(t?.length??0)*72,a=(n?.length??0)*72,[f,p]=(0,s.useState)(0),[m,h]=(0,s.useState)(!1),[g,_]=(0,s.useState)(`none`),v=o.use.registerOpenRow(),y=o.use.unregisterOpenRow();(0,s.useEffect)(()=>{if(g!==`none`)return v(),y},[g,v,y]);let b=(0,s.useRef)(null),x=(0,s.useCallback)(()=>{b.current=null,h(!1),p(0)},[]),S=(0,s.useCallback)(()=>{p(0),_(`none`)},[]);return{offset:f,isDragging:m,revealedSide:g,leadingWidth:r,trailingWidth:a,onTouchStart:(0,s.useCallback)(r=>{if(!e||!t&&!n)return;if(r.touches.length!==1){x();return}let i=r.touches[0];b.current={touchId:i.identifier,startX:i.clientX,startY:i.clientY,axis:`undecided`,lastDx:0,startOffset:f}},[e,t,n,f,x]),onTouchMove:(0,s.useCallback)(e=>{let t=b.current;if(!t)return;if(e.touches.length!==1){x();return}let n=e.touches[0];if(n.identifier!==t.touchId)return;let i=n.clientX-t.startX,o=n.clientY-t.startY;if(t.lastDx=i,t.axis===`undecided`){if(Math.abs(i)<u&&Math.abs(o)<u)return;if(Math.abs(o)>Math.abs(i)*l){b.current=null;return}t.axis=`horizontal`,h(!0)}if(t.axis!==`horizontal`)return;if(Math.abs(i)<c&&Math.abs(o)>Math.abs(i)*l){x(),p(t.startOffset);return}let s=t.startOffset+i,f=r,m=-a;s>f?s=f+(s-f)*d:s<m&&(s=m+(s-m)*d),(t.startOffset>0&&s<0&&a===0||t.startOffset<0&&s>0&&r===0)&&(s*=d),p(s)},[r,a,x]),onTouchEnd:(0,s.useCallback)(e=>{let t=b.current;if(!t){x();return}if(t.axis===`undecided`){b.current=null,h(!1);return}if(t.axis!==`horizontal`){x();return}if(e.touches.length>0){x();return}let n=Array.from(e.changedTouches).find(e=>e.identifier===t.touchId),o=n?n.clientX-t.startX:t.lastDx,s=t.startOffset+o;s<=-c&&a>0?(i.light(),p(-a),_(`trailing`)):s>=c&&r>0?(i.light(),p(r),_(`leading`)):(p(0),_(`none`)),b.current=null,h(!1)},[r,a,x]),onTouchCancel:(0,s.useCallback)(()=>{S(),x()},[S,x]),close:S}}var p=n();function m({action:e,onAfterSelect:t,hidden:n=!1}){let i=(0,s.useCallback)(()=>{e.onSelect(),t()},[e,t]),a=e.icon;return(0,p.jsxs)(`button`,{type:`button`,"aria-label":e.label,"aria-hidden":n,tabIndex:n?-1:0,onClick:i,className:r(`flex shrink-0 flex-col items-center justify-center gap-1`,`touch-mobile:transition-none`),style:{width:72,color:e.variant===`destructive`?`var(--aux-white)`:`var(--content-inset)`,background:e.variant===`destructive`?`var(--system-negative-strong)`:`var(--primary-base)`},children:[(0,p.jsx)(a,{size:18}),(0,p.jsx)(`span`,{className:`text-[10px] font-medium leading-none`,children:e.label})]})}var h=(0,s.forwardRef)(function({children:e,leadingActions:t,trailingActions:n,enabled:i=a(),className:o,style:s,...c},l){let u=i&&((t?.length??0)>0||(n?.length??0)>0),{offset:d,isDragging:h,onTouchStart:g,onTouchMove:_,onTouchEnd:v,onTouchCancel:y,close:b}=f({enabled:u,leadingActions:t,trailingActions:n});return u?(0,p.jsxs)(`div`,{ref:l,"data-slot":`swipe-action-row`,className:r(`relative overflow-hidden`,o),...c,style:{...s,touchAction:`pan-y`},onTouchStart:g,onTouchMove:_,onTouchEnd:v,onTouchCancel:y,children:[n&&n.length>0?(0,p.jsx)(`div`,{className:`absolute inset-y-0 right-0 flex`,"aria-hidden":d>=0,style:d>=0?{pointerEvents:`none`}:void 0,children:n.map(e=>(0,p.jsx)(m,{action:e,onAfterSelect:b,hidden:d>=0},e.id))}):null,t&&t.length>0?(0,p.jsx)(`div`,{className:`absolute inset-y-0 left-0 flex`,"aria-hidden":d<=0,style:d<=0?{pointerEvents:`none`}:void 0,children:t.map(e=>(0,p.jsx)(m,{action:e,onAfterSelect:b,hidden:d<=0},e.id))}):null,(0,p.jsx)(`div`,{className:r(`relative bg-[var(--swipe-reveal-bg,var(--surface-overlay))] transition-transform`,h&&`transition-none`),style:{transform:`translateX(${d}px)`,zIndex:1},children:e})]}):(0,p.jsx)(`div`,{ref:l,className:o,style:s,...c,children:e})});export{h as t};
@@ -1 +1 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{n}from"./chunk-5KNZJZUH-BUqIilZr.js";import{t as r}from"./useInfiniteQuery-C5Kg1-qX.js";import{t as i}from"./jsx-runtime-BJ8jcmzB.js";import{t as a}from"./chevron-down-CmQCCo_x.js";import{t as o}from"./circle-check-big-BDMPSnMn.js";import{t as s}from"./circle-x-CEXUbdoO.js";import{t as c}from"./clock-1REtpnlM.js";import{t as l}from"./loader-circle-DYe85z3g.js";import{t as u}from"./triangle-alert-43gIbLca.js";import{t as d}from"./notice-BlYF-xU3.js";import"./src-CImIAPTd.js";import{t as f}from"./tag-Ddzwz3ij.js";import"./i18n-C9hRT4Lf.js";import{t as p}from"./useTranslation-D9pPv-bA.js";import{d as m}from"./routes-B7wRw3UT.js";import{i as h,t as g}from"./use-platform-gate-DG9Xg3Hs.js";import{M as _}from"./react-query.gen-CwRPAiHT.js";import{t as v}from"./platform-login-notice-CvFpWLJY.js";import{t as y}from"./use-active-assistant-id-BADYKVyx.js";var b=e(t(),1),x=i(),S=30;function C(e){switch(e){case`lifecycle`:return`Lifecycle`;case`upgrade`:return`Upgrade`;case`rollback`:return`Rollback`;case`crash`:return`Crash`;case`idle_sleep`:return`Idle Sleep`;case`wake`:return`Wake`;case`profiler`:return`Profiler`;case`other`:return`Other`;default:return e}}function w(e){switch(e){case`started`:return`Started`;case`succeeded`:return`Succeeded`;case`failed`:return`Failed`;case`in_progress`:return`In Progress`;default:return e}}function T(e){return e===`succeeded`}function E(e){return e===`failed`}function D(e){return new Date(e).toLocaleString(void 0,{year:`numeric`,month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`})}function O(e){if(e.type!==`idle_sleep`)return!1;let t=e.details?.idle_timeout_seconds;return typeof t==`number`&&t>=21600}function k(e,t){switch(e){case`wake`:return`positive`;case`rollback`:return`warning`;case`crash`:return`negative`;case`idle_sleep`:return t&&O(t)?`warning`:`neutral`;default:return`neutral`}}function A({type:e,event:t}){return(0,x.jsx)(f,{tone:k(e,t),children:C(e)})}function j({status:e}){let t=w(e);return T(e)?(0,x.jsx)(f,{tone:`positive`,leftIcon:(0,x.jsx)(o,{}),children:t}):E(e)?(0,x.jsx)(f,{tone:`negative`,leftIcon:(0,x.jsx)(s,{}),children:t}):(0,x.jsx)(f,{tone:`neutral`,children:t})}function M({event:e}){let{t}=p(`logs`),[n,r]=(0,b.useState)(!1),i=e.details!==null&&e.details!==void 0&&Object.keys(e.details).length>0;return(0,x.jsxs)(`div`,{className:`rounded-xl border p-4`,style:{background:`var(--surface-lift)`,borderColor:`var(--border-base)`},children:[(0,x.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-start sm:justify-between`,children:[(0,x.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1.5`,children:[(0,x.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e.display_text}),(0,x.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5`,children:[(0,x.jsx)(A,{type:e.type,event:e}),(0,x.jsx)(j,{status:e.event_status}),O(e)&&(0,x.jsx)(f,{tone:`warning`,leftIcon:(0,x.jsx)(u,{className:`h-3 w-3`}),children:t(`systemEventsTab.longSleep`)})]})]}),(0,x.jsxs)(`div`,{className:`text-body-small-default flex shrink-0 items-center gap-1.5`,style:{color:`var(--content-tertiary)`},children:[(0,x.jsx)(c,{className:`h-3 w-3`}),(0,x.jsx)(`span`,{children:D(e.occurred_at)})]})]}),i&&(0,x.jsxs)(`div`,{className:`mt-2`,children:[(0,x.jsxs)(`button`,{type:`button`,onClick:()=>r(e=>!e),className:`text-body-small-default flex items-center gap-1`,style:{color:`var(--content-tertiary)`},children:[(0,x.jsx)(a,{className:`h-3 w-3 transition-transform ${n?`rotate-180`:``}`}),t(n?`systemEventsTab.hideDetails`:`systemEventsTab.showDetails`)]}),n&&(0,x.jsx)(`pre`,{className:`mt-2 overflow-x-auto rounded-md p-3 text-body-small-default`,style:{background:`var(--surface-base)`,color:`var(--content-default)`},children:JSON.stringify(e.details,null,2)})]})]})}function N({assistantId:e}){let{t}=p(`logs`),{data:n,isLoading:i,isError:a,isFetchingNextPage:o,hasNextPage:s,fetchNextPage:c}=r({..._({path:{assistant_id:e}}),initialPageParam:0,getNextPageParam:(e,t)=>{if(e.next)return t.reduce((e,t)=>e+t.results.length,0)}}),d=n?.pages.flatMap(e=>e.results)??[];return(0,x.jsxs)(`div`,{className:`space-y-4`,children:[(0,x.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:t(`systemEventsTab.intro`,{days:S})}),i?(0,x.jsxs)(`div`,{className:`text-body-medium-lighter flex items-center gap-2`,style:{color:`var(--content-tertiary)`},children:[(0,x.jsx)(l,{className:`h-4 w-4 animate-spin`}),t(`systemEventsTab.loading`)]}):a?(0,x.jsxs)(`div`,{className:`text-body-medium-lighter flex items-center gap-2`,style:{color:`var(--system-negative-strong)`},children:[(0,x.jsx)(u,{className:`h-4 w-4 shrink-0`}),t(`systemEventsTab.loadFailed`)]}):d.length===0?(0,x.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:t(`systemEventsTab.empty`,{days:S})}):(0,x.jsxs)(`div`,{className:`space-y-2`,children:[d.map(e=>(0,x.jsx)(M,{event:e},e.id)),s&&(0,x.jsx)(`div`,{className:`pt-2 text-center`,children:(0,x.jsx)(`button`,{type:`button`,onClick:()=>c(),disabled:o,className:`text-body-medium-default flex w-full items-center justify-center gap-2 rounded-md border px-4 py-2 transition-colors disabled:cursor-not-allowed disabled:opacity-50`,style:{borderColor:`var(--border-element)`,color:`var(--content-secondary)`},children:o?(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(l,{className:`h-4 w-4 animate-spin`}),t(`systemEventsTab.loadingOlder`)]}):t(`systemEventsTab.loadOlder`)})})]})]})}function P(){let{t:e}=p(`logs`),t=h({platformHostedOnly:!0}),r=g(),i=y();return t===`gated`?(0,x.jsx)(n,{replace:!0,to:m.logs.root}):t===`disabled`?(0,x.jsx)(v,{children:e(`systemEventsPage.platformLoginNotice`)}):r?(0,x.jsx)(N,{assistantId:i}):(0,x.jsx)(d,{tone:`warning`,children:e(`systemEventsPage.notAvailable`)})}export{P as SystemEventsPage};
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{n}from"./chunk-5KNZJZUH-BUqIilZr.js";import{t as r}from"./useInfiniteQuery-C5Kg1-qX.js";import{t as i}from"./jsx-runtime-BJ8jcmzB.js";import{t as a}from"./chevron-down-D1ho6wFA.js";import{t as o}from"./circle-check-big-C9sLhbGa.js";import{t as s}from"./circle-x-qsWcnNwx.js";import{t as c}from"./clock-CNSYP9nm.js";import{t as l}from"./loader-circle-C9QjVTuc.js";import{t as u}from"./triangle-alert-B-18Pims.js";import{t as d}from"./notice-C_AsX_o9.js";import"./src-DMnnfLrU.js";import{t as f}from"./tag-D2QYCm1p.js";import"./i18n-C3bX3mTs.js";import{t as p}from"./useTranslation-CCDbxnME.js";import{d as m}from"./routes-yNhBxUSb.js";import{i as h,t as g}from"./use-platform-gate-DNfLk9Xd.js";import{M as _}from"./react-query.gen-D3r2fwXH.js";import{t as v}from"./platform-login-notice-Dmq_2Akt.js";import{t as y}from"./use-active-assistant-id-BFE4r9Rp.js";var b=e(t(),1),x=i(),S=30;function C(e){switch(e){case`lifecycle`:return`Lifecycle`;case`upgrade`:return`Upgrade`;case`rollback`:return`Rollback`;case`crash`:return`Crash`;case`idle_sleep`:return`Idle Sleep`;case`wake`:return`Wake`;case`profiler`:return`Profiler`;case`other`:return`Other`;default:return e}}function w(e){switch(e){case`started`:return`Started`;case`succeeded`:return`Succeeded`;case`failed`:return`Failed`;case`in_progress`:return`In Progress`;default:return e}}function T(e){return e===`succeeded`}function E(e){return e===`failed`}function D(e){return new Date(e).toLocaleString(void 0,{year:`numeric`,month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`})}function O(e){if(e.type!==`idle_sleep`)return!1;let t=e.details?.idle_timeout_seconds;return typeof t==`number`&&t>=21600}function k(e,t){switch(e){case`wake`:return`positive`;case`rollback`:return`warning`;case`crash`:return`negative`;case`idle_sleep`:return t&&O(t)?`warning`:`neutral`;default:return`neutral`}}function A({type:e,event:t}){return(0,x.jsx)(f,{tone:k(e,t),children:C(e)})}function j({status:e}){let t=w(e);return T(e)?(0,x.jsx)(f,{tone:`positive`,leftIcon:(0,x.jsx)(o,{}),children:t}):E(e)?(0,x.jsx)(f,{tone:`negative`,leftIcon:(0,x.jsx)(s,{}),children:t}):(0,x.jsx)(f,{tone:`neutral`,children:t})}function M({event:e}){let{t}=p(`logs`),[n,r]=(0,b.useState)(!1),i=e.details!==null&&e.details!==void 0&&Object.keys(e.details).length>0;return(0,x.jsxs)(`div`,{className:`rounded-xl border p-4`,style:{background:`var(--surface-lift)`,borderColor:`var(--border-base)`},children:[(0,x.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-start sm:justify-between`,children:[(0,x.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1.5`,children:[(0,x.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e.display_text}),(0,x.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5`,children:[(0,x.jsx)(A,{type:e.type,event:e}),(0,x.jsx)(j,{status:e.event_status}),O(e)&&(0,x.jsx)(f,{tone:`warning`,leftIcon:(0,x.jsx)(u,{className:`h-3 w-3`}),children:t(`systemEventsTab.longSleep`)})]})]}),(0,x.jsxs)(`div`,{className:`text-body-small-default flex shrink-0 items-center gap-1.5`,style:{color:`var(--content-tertiary)`},children:[(0,x.jsx)(c,{className:`h-3 w-3`}),(0,x.jsx)(`span`,{children:D(e.occurred_at)})]})]}),i&&(0,x.jsxs)(`div`,{className:`mt-2`,children:[(0,x.jsxs)(`button`,{type:`button`,onClick:()=>r(e=>!e),className:`text-body-small-default flex items-center gap-1`,style:{color:`var(--content-tertiary)`},children:[(0,x.jsx)(a,{className:`h-3 w-3 transition-transform ${n?`rotate-180`:``}`}),t(n?`systemEventsTab.hideDetails`:`systemEventsTab.showDetails`)]}),n&&(0,x.jsx)(`pre`,{className:`mt-2 overflow-x-auto rounded-md p-3 text-body-small-default`,style:{background:`var(--surface-base)`,color:`var(--content-default)`},children:JSON.stringify(e.details,null,2)})]})]})}function N({assistantId:e}){let{t}=p(`logs`),{data:n,isLoading:i,isError:a,isFetchingNextPage:o,hasNextPage:s,fetchNextPage:c}=r({..._({path:{assistant_id:e}}),initialPageParam:0,getNextPageParam:(e,t)=>{if(e.next)return t.reduce((e,t)=>e+t.results.length,0)}}),d=n?.pages.flatMap(e=>e.results)??[];return(0,x.jsxs)(`div`,{className:`space-y-4`,children:[(0,x.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:t(`systemEventsTab.intro`,{days:S})}),i?(0,x.jsxs)(`div`,{className:`text-body-medium-lighter flex items-center gap-2`,style:{color:`var(--content-tertiary)`},children:[(0,x.jsx)(l,{className:`h-4 w-4 animate-spin`}),t(`systemEventsTab.loading`)]}):a?(0,x.jsxs)(`div`,{className:`text-body-medium-lighter flex items-center gap-2`,style:{color:`var(--system-negative-strong)`},children:[(0,x.jsx)(u,{className:`h-4 w-4 shrink-0`}),t(`systemEventsTab.loadFailed`)]}):d.length===0?(0,x.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:t(`systemEventsTab.empty`,{days:S})}):(0,x.jsxs)(`div`,{className:`space-y-2`,children:[d.map(e=>(0,x.jsx)(M,{event:e},e.id)),s&&(0,x.jsx)(`div`,{className:`pt-2 text-center`,children:(0,x.jsx)(`button`,{type:`button`,onClick:()=>c(),disabled:o,className:`text-body-medium-default flex w-full items-center justify-center gap-2 rounded-md border px-4 py-2 transition-colors disabled:cursor-not-allowed disabled:opacity-50`,style:{borderColor:`var(--border-element)`,color:`var(--content-secondary)`},children:o?(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(l,{className:`h-4 w-4 animate-spin`}),t(`systemEventsTab.loadingOlder`)]}):t(`systemEventsTab.loadOlder`)})})]})]})}function P(){let{t:e}=p(`logs`),t=h({platformHostedOnly:!0}),r=g(),i=y();return t===`gated`?(0,x.jsx)(n,{replace:!0,to:m.logs.root}):t===`disabled`?(0,x.jsx)(v,{children:e(`systemEventsPage.platformLoginNotice`)}):r?(0,x.jsx)(N,{assistantId:i}):(0,x.jsx)(d,{tone:`warning`,children:e(`systemEventsPage.notAvailable`)})}export{P as SystemEventsPage};
@@ -1 +1 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{d as n}from"./chunk-5KNZJZUH-BUqIilZr.js";import{d as r}from"./routes-B7wRw3UT.js";var i=e(t(),1);function a(){let e=n();return(0,i.useEffect)(()=>{e(r.logs.systemEvents,{replace:!0})},[e]),null}export{a as SystemEventsRedirectPage};
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{d as n}from"./chunk-5KNZJZUH-BUqIilZr.js";import{d as r}from"./routes-yNhBxUSb.js";var i=e(t(),1);function a(){let e=n();return(0,i.useEffect)(()=>{e(r.logs.systemEvents,{replace:!0})},[e]),null}export{a as SystemEventsRedirectPage};
@@ -1 +1 @@
1
- import{U as e}from"./button-VkxVX0DM.js";import{t}from"./jsx-runtime-BJ8jcmzB.js";import{t as n}from"./cn-Cf8SmgbR.js";import{t as r}from"./x-zfSDUG5z.js";var i=t(),a=e([`inline-flex items-center gap-1 h-6 px-2 py-1 rounded-[6px] whitespace-nowrap select-none`,`text-body-small-emphasised leading-none`,`text-[color:var(--content-default)]`].join(` `),{variants:{tone:{positive:`bg-[var(--system-positive-weak)]`,negative:`bg-[var(--system-negative-weak)]`,warning:`bg-[var(--system-mid-weak)]`,info:`bg-[var(--system-info-weak)]`,neutral:`bg-[var(--tag-bg-neutral)]`}},defaultVariants:{tone:`neutral`}}),o={positive:`var(--system-positive-strong)`,negative:`var(--system-negative-strong)`,warning:`var(--system-mid-strong)`,info:`var(--system-info-strong)`,neutral:`var(--content-secondary)`},s={width:12,height:12,flexShrink:0,display:`inline-flex`,alignItems:`center`,justifyContent:`center`};function c({tone:e=`neutral`,leftIcon:t,rightIcon:c,onRemove:l,removeLabel:u=`Remove`,className:d,children:f,ref:p,...m}){let h=o[e];return(0,i.jsxs)(`span`,{...m,ref:p,"data-slot":`tag`,className:n(a({tone:e}),d),children:[t==null?null:(0,i.jsx)(`span`,{"aria-hidden":`true`,style:{...s,color:h},children:t}),f,c!=null&&l==null?(0,i.jsx)(`span`,{"aria-hidden":`true`,style:{...s,color:`var(--content-secondary)`},children:c}):null,l==null?null:(0,i.jsx)(`button`,{type:`button`,"aria-label":u,onClick:e=>{e.stopPropagation(),l(e)},className:n(`inline-flex items-center justify-center rounded-full`,`h-3.5 w-3.5 -mr-0.5 cursor-pointer`,`text-[color:var(--content-secondary)]`,`transition-colors duration-150`,`hover:bg-[color-mix(in_srgb,currentColor_15%,transparent)]`,`keyboard-focus:outline-none keyboard-focus:ring-2`,`keyboard-focus:ring-[var(--ring)]`),children:(0,i.jsx)(r,{style:s,"aria-hidden":`true`})})]})}export{c as t};
1
+ import{W as e}from"./button-C8CGr0T0.js";import{t}from"./jsx-runtime-BJ8jcmzB.js";import{t as n}from"./cn-Cf8SmgbR.js";import{t as r}from"./x-zfSDUG5z.js";var i=t(),a=e([`inline-flex items-center gap-1 h-6 px-2 py-1 rounded-[6px] whitespace-nowrap select-none`,`text-body-small-emphasised leading-none`,`text-[color:var(--content-default)]`].join(` `),{variants:{tone:{positive:`bg-[var(--system-positive-weak)]`,negative:`bg-[var(--system-negative-weak)]`,warning:`bg-[var(--system-mid-weak)]`,info:`bg-[var(--system-info-weak)]`,neutral:`bg-[var(--tag-bg-neutral)]`}},defaultVariants:{tone:`neutral`}}),o={positive:`var(--system-positive-strong)`,negative:`var(--system-negative-strong)`,warning:`var(--system-mid-strong)`,info:`var(--system-info-strong)`,neutral:`var(--content-secondary)`},s={width:12,height:12,flexShrink:0,display:`inline-flex`,alignItems:`center`,justifyContent:`center`};function c({tone:e=`neutral`,leftIcon:t,rightIcon:c,onRemove:l,removeLabel:u=`Remove`,className:d,children:f,ref:p,...m}){let h=o[e];return(0,i.jsxs)(`span`,{...m,ref:p,"data-slot":`tag`,className:n(a({tone:e}),d),children:[t==null?null:(0,i.jsx)(`span`,{"aria-hidden":`true`,style:{...s,color:h},children:t}),f,c!=null&&l==null?(0,i.jsx)(`span`,{"aria-hidden":`true`,style:{...s,color:`var(--content-secondary)`},children:c}):null,l==null?null:(0,i.jsx)(`button`,{type:`button`,"aria-label":u,onClick:e=>{e.stopPropagation(),l(e)},className:n(`inline-flex items-center justify-center rounded-full`,`h-3.5 w-3.5 -mr-0.5 cursor-pointer`,`text-[color:var(--content-secondary)]`,`transition-colors duration-150`,`hover:bg-[color-mix(in_srgb,currentColor_15%,transparent)]`,`keyboard-focus:outline-none keyboard-focus:ring-2`,`keyboard-focus:ring-[var(--ring)]`),children:(0,i.jsx)(r,{style:s,"aria-hidden":`true`})})]})}export{c as t};
@@ -1 +1 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./button-VkxVX0DM.js";import{t as r}from"./jsx-runtime-BJ8jcmzB.js";import{t as i}from"./typography-DekrYXvs.js";import{t as a}from"./check-pgeLaeXx.js";import{t as o}from"./clipboard-copy-CEczonMF.js";import{t as s}from"./external-link-B-pfCiUo.js";import{t as c}from"./notice-BlYF-xU3.js";import{z as l}from"./src-CImIAPTd.js";import{t as u}from"./input-DkgpMeG9.js";import{t as d}from"./browser-Ca2R8csw.js";import{t as f}from"./use-copy-to-clipboard-B7Yrgm0s.js";var p=e(t(),1),m=r();function h({channelLabel:e,steps:t,stepIndex:n,onStepSelect:r,locked:i=!1,children:a}){let o=(0,p.useRef)(null),s=(0,p.useRef)(n);(0,p.useEffect)(()=>{s.current!==n&&(s.current=n,o.current?.focus())},[n]);let c=t[n],u=c?`${e} setup, step ${n+1} of ${t.length}: ${c.label}`:`${e} setup`;return(0,m.jsxs)(`div`,{"data-slot":`channel-setup-wizard`,className:`flex flex-col gap-4`,children:[(0,m.jsx)(l,{steps:t,current:n,onStepSelect:r,disabled:i}),(0,m.jsx)(`div`,{ref:o,"data-slot":`channel-setup-step-panel`,tabIndex:-1,role:`group`,"aria-label":u,className:`rounded-lg bg-[var(--surface-sunken)] p-4 outline-none`,children:a})]})}function g({onContinue:e}){return(0,m.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,m.jsx)(i,{as:`p`,variant:`body-medium-lighter`,className:`text-[color:var(--content-default)]`,children:`In Slack:`}),(0,m.jsxs)(`ol`,{className:`list-decimal list-outside space-y-1 pl-5 text-body-medium-lighter text-[var(--content-default)]`,children:[(0,m.jsxs)(`li`,{children:[`Under `,(0,m.jsx)(`strong`,{children:`Or start your own way`}),`, pick`,` `,(0,m.jsx)(`strong`,{children:`From a manifest`}),`, then `,(0,m.jsx)(`strong`,{children:`Continue`})]}),(0,m.jsx)(`li`,{children:`Choose your workspace and paste the manifest`}),(0,m.jsxs)(`li`,{children:[`Review the permissions, then click `,(0,m.jsx)(`strong`,{children:`Create and Install`})]})]}),(0,m.jsxs)(c,{tone:`info`,children:[`If Slack shows “Request approval” instead of`,` `,(0,m.jsx)(`strong`,{children:`Install`}),`, a workspace admin needs to approve the app first.`]}),(0,m.jsx)(n,{type:`button`,variant:`primary`,className:`self-start`,onClick:e,children:`I created the app`})]})}var _=[`app_mentions:read`,`assistant:write`,`channels:history`,`channels:join`,`channels:read`,`chat:write`,`files:read`,`files:write`,`groups:history`,`groups:read`,`im:history`,`im:read`,`im:write`,`mpim:history`,`mpim:read`,`reactions:read`,`reactions:write`,`users:read`],v=[`channels:join`,`files:read`,`files:write`,`reactions:read`,`reactions:write`],y=[`channels:history`,`channels:read`,`groups:history`,`groups:read`,`im:history`,`im:read`,`mpim:history`,`mpim:read`,`reactions:read`,`search:read`,`users:read`],b=[`reactions:read`,`search:read`],x=300;function S(e,t=``){let n=e.trim().slice(0,35)||`My Assistant`;return{display_information:{name:n,...t?{description:t.slice(0,140)}:{},background_color:`#1a1a2e`},features:{app_home:{home_tab_enabled:!1,messages_tab_enabled:!0,messages_tab_read_only_enabled:!1},bot_user:{display_name:n,always_online:!0},agent_view:{agent_description:(t||n).slice(0,x),suggested_prompts:[]}},oauth_config:{scopes:{bot:[..._],bot_optional:[...v],user:[...y],user_optional:[...b]}},settings:{event_subscriptions:{bot_events:[`app_mention`,`app_context_changed`,`message.channels`,`message.groups`,`message.im`,`message.mpim`,`reaction_added`]},interactivity:{is_enabled:!0},org_deploy_enabled:!1,socket_mode_enabled:!0,token_rotation_enabled:!1}}}function C({appName:e,description:t,copied:r,onAppNameChange:s,onDescriptionChange:c,onCopyManifest:l,onContinue:d}){let f=e.trim().length>0;return(0,m.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,m.jsx)(i,{as:`p`,variant:`body-medium-lighter`,className:`text-[color:var(--content-default)]`,children:`Name your Slack app and copy its manifest. Every permission and setting comes pre-configured.`}),(0,m.jsx)(u,{label:`App Name`,value:e,onChange:e=>s(e.target.value.slice(0,35)),placeholder:`My Assistant`,fullWidth:!0}),(0,m.jsx)(u,{label:`Description (optional)`,value:t,onChange:e=>c(e.target.value.slice(0,140)),placeholder:`What this assistant helps with`,helperText:`Shown on the app's Slack profile.`,fullWidth:!0}),(0,m.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,m.jsx)(n,{type:`button`,variant:`outlined`,disabled:!f,onClick:l,leftIcon:r?(0,m.jsx)(a,{"aria-hidden":!0,className:`size-4`}):(0,m.jsx)(o,{"aria-hidden":!0,className:`size-4`}),children:r?`Copied!`:`Copy manifest`}),(0,m.jsx)(n,{type:`button`,variant:`primary`,disabled:!f,onClick:d,children:`Next`})]})]})}function w({manifestCopiedHere:e,copied:t,onCopyManifest:r,onOpenSlack:l,onContinue:u}){let d=(0,m.jsx)(n,{type:`button`,variant:`outlined`,size:`compact`,onClick:r,leftIcon:t?(0,m.jsx)(a,{"aria-hidden":!0,className:`size-4`}):(0,m.jsx)(o,{"aria-hidden":!0,className:`size-4`}),children:t?`Copied!`:`Copy manifest`});return(0,m.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,m.jsx)(i,{as:`p`,variant:`body-medium-lighter`,className:`text-[color:var(--content-default)]`,children:`Open Slack in a new tab to create the app, then come back here for the steps to follow.`}),e?(0,m.jsx)(c,{tone:`info`,actions:d,children:`You copied this app's manifest here. If you have copied anything since, copy it again before you paste.`}):(0,m.jsx)(c,{tone:`warning`,actions:d,children:`You have not copied this app's manifest yet. Slack's create-app modal has no other way to get it, so copy it before you paste.`}),(0,m.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,m.jsx)(n,{type:`button`,variant:`primary`,onClick:l,rightIcon:(0,m.jsx)(s,{"aria-hidden":!0,className:`size-4`}),children:`Open Slack`}),(0,m.jsx)(n,{type:`button`,variant:`outlined`,onClick:u,children:`Next`})]})]})}var T=`xoxb-`,E=`xapp-`,D=20;function O(e,t,n){let r=e.trim();return r?r.startsWith(t)?r.length<D?`${n} looks truncated. Copy the whole value from Slack.`:null:`${n} should start with "${t}".`:null}function k({botToken:e,appToken:t,saveStatus:r,saveError:a,onBotTokenChange:o,onAppTokenChange:s,onSave:l}){let d=O(e,T,`Bot token`),f=O(t,E,`App token`),p=e.trim().length>0&&t.trim().length>0&&!d&&!f&&r!==`pending`;return(0,m.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,m.jsxs)(i,{as:`p`,variant:`body-medium-lighter`,className:`text-[color:var(--content-default)]`,children:[`On Slack's confirmation screen, expand`,` `,(0,m.jsx)(`strong`,{children:`Your app credentials`}),` and copy both tokens.`]}),(0,m.jsxs)(c,{tone:`warning`,children:[`That screen also offers a command-line walkthrough and a`,` `,(0,m.jsx)(`strong`,{children:`Download app files`}),` button. Skip both. They set up a separate local app, and this assistant needs only the two tokens.`]}),(0,m.jsx)(u,{label:`Bot Token`,type:`password`,value:e,onChange:e=>o(e.target.value),placeholder:`${T}...`,errorText:d??void 0,disabled:r===`pending`,fullWidth:!0}),(0,m.jsx)(u,{label:`App Token`,type:`password`,value:t,onChange:e=>s(e.target.value),placeholder:`${E}...`,errorText:f??void 0,disabled:r===`pending`,fullWidth:!0}),(0,m.jsx)(n,{type:`button`,variant:`primary`,className:`self-start`,onClick:l,disabled:!p,children:r===`pending`?`Connecting…`:`Connect Slack`}),r===`success`&&(0,m.jsx)(i,{as:`p`,variant:`body-small-default`,className:`text-[color:var(--content-positive)]`,children:`Credentials saved.`}),r===`error`&&a&&(0,m.jsx)(i,{as:`p`,variant:`body-small-default`,className:`text-[color:var(--system-negative-strong)]`,children:a})]})}function A(e){let[t,n]=(0,p.useState)(e[0]),r=(0,p.useMemo)(()=>e.indexOf(t),[e,t]);return{stepId:t,stepIndex:r,goTo:(0,p.useCallback)(e=>n(e),[]),onStepSelect:(0,p.useCallback)(t=>{t<r&&n(e[t])},[e,r])}}var j=`https://api.slack.com/apps?new_app=1`,M=[`name`,`open`,`create`,`connect`],N=[{id:`name`,label:`Name`},{id:`open`,label:`Open`},{id:`create`,label:`Create`},{id:`connect`,label:`Connect`}];function P({assistantName:e,onSave:t,saveStatus:n=`idle`,saveError:r=null}){let{stepId:i,stepIndex:a,goTo:o,onStepSelect:s}=A(M),[c,l]=(0,p.useState)(e),[u,_]=(0,p.useState)(``),v=(0,p.useRef)(!1);(0,p.useEffect)(()=>{v.current||l(e)},[e]);let[y,b]=(0,p.useState)(null),[x,T]=(0,p.useState)(``),[E,D]=(0,p.useState)(``);(0,p.useEffect)(()=>{n===`success`&&(T(``),D(``))},[n]);let{copy:O,copied:P}=f({errorMessage:`Could not copy the manifest. Copy it again before continuing.`}),F=(0,p.useMemo)(()=>JSON.stringify(S(c,u),null,2),[c,u]),I=y===F,L=(0,p.useCallback)(e=>{v.current=!0,l(e)},[]),R=(0,p.useCallback)(()=>{O(F,()=>b(F))},[O,F]),z=(0,p.useCallback)(()=>{d(j)},[]),B=(0,p.useCallback)(()=>o(`open`),[o]),V=(0,p.useCallback)(()=>o(`create`),[o]),H=(0,p.useCallback)(()=>o(`connect`),[o]),U=(0,p.useCallback)(()=>{t?.(x.trim(),E.trim())},[t,x,E]);return(0,m.jsxs)(h,{channelLabel:`Slack`,steps:N,stepIndex:a,onStepSelect:s,locked:n===`pending`,children:[i===`name`&&(0,m.jsx)(C,{appName:c,description:u,copied:P&&I,onAppNameChange:L,onDescriptionChange:_,onCopyManifest:R,onContinue:B}),i===`open`&&(0,m.jsx)(w,{manifestCopiedHere:I,copied:P&&I,onCopyManifest:R,onOpenSlack:z,onContinue:V}),i===`create`&&(0,m.jsx)(g,{onContinue:H}),i===`connect`&&(0,m.jsx)(k,{botToken:x,appToken:E,saveStatus:n,saveError:r,onBotTokenChange:T,onAppTokenChange:D,onSave:U})]})}var F=/^\d+:[A-Za-z0-9_-]+$/,I=25;function L(e){let t=e.trim();return t?F.test(t)?t.slice(t.indexOf(`:`)+1).length<I?`Bot token looks truncated. Copy the whole line from BotFather.`:null:`Bot token should look like "123456:ABC-DEF...". Copy the whole line from BotFather.`:null}function R({botToken:e,saveStatus:t,saveError:r,onBotTokenChange:a,onSave:o}){let s=L(e),l=e.trim().length>0&&!s&&t!==`pending`;return(0,m.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,m.jsxs)(i,{as:`p`,variant:`body-medium-lighter`,className:`text-[color:var(--content-default)]`,children:[`Paste the token from BotFather's reply. It is the whole line after`,` `,(0,m.jsx)(`strong`,{children:`Use this token to access the HTTP API`}),`.`]}),(0,m.jsx)(u,{label:`Bot Token`,type:`password`,value:e,onChange:e=>a(e.target.value),placeholder:`123456789:AA...`,errorText:s??void 0,disabled:t===`pending`,fullWidth:!0}),(0,m.jsx)(n,{type:`button`,variant:`primary`,className:`self-start`,onClick:o,disabled:!l,children:t===`pending`?`Saving…`:`Connect Telegram`}),t===`success`&&(0,m.jsx)(c,{tone:`success`,children:`Token saved. The rest finishes on its own. Your assistant will confirm Telegram is delivering the next time you chat, and make sure it can reach you.`}),t===`error`&&r&&(0,m.jsx)(c,{tone:`error`,children:r})]})}function z({suggestedName:e,copied:t,onCopyName:r,onOpenBotFather:l,onContinue:u}){return(0,m.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,m.jsxs)(i,{as:`p`,variant:`body-medium-lighter`,className:`text-[color:var(--content-default)]`,children:[`Telegram bots are created by messaging `,(0,m.jsx)(`strong`,{children:`@BotFather`}),`. Open it, run through the prompts, then come back with the token it gives you.`]}),(0,m.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,m.jsx)(n,{type:`button`,variant:`primary`,onClick:l,rightIcon:(0,m.jsx)(s,{"aria-hidden":!0,className:`size-4`}),children:`Open BotFather`}),(0,m.jsx)(n,{type:`button`,variant:`outlined`,onClick:u,children:`Next`})]}),(0,m.jsxs)(c,{tone:`neutral`,actions:(0,m.jsx)(n,{type:`button`,variant:`outlined`,size:`compact`,onClick:r,leftIcon:t?(0,m.jsx)(a,{"aria-hidden":!0,className:`size-4`}):(0,m.jsx)(o,{"aria-hidden":!0,className:`size-4`}),children:t?`Copied!`:`Copy name`}),children:[`For the display name, `,(0,m.jsx)(`strong`,{children:e}),` keeps this bot matching your assistant. The username is separate and does not have to match.`]}),(0,m.jsx)(i,{as:`p`,variant:`body-medium-lighter`,className:`text-[color:var(--content-default)]`,children:`In BotFather:`}),(0,m.jsxs)(`ol`,{className:`list-decimal list-outside space-y-1 pl-5 text-body-medium-lighter text-[var(--content-default)]`,children:[(0,m.jsxs)(`li`,{children:[`Send `,(0,m.jsx)(`strong`,{children:`/newbot`})]}),(0,m.jsx)(`li`,{children:`Give it a display name, which is what people see in chat`}),(0,m.jsxs)(`li`,{children:[`Give it a username, which must be unique and end in`,` `,(0,m.jsx)(`strong`,{children:`bot`})]}),(0,m.jsxs)(`li`,{children:[`BotFather replies with a token after`,` `,(0,m.jsx)(`strong`,{children:`Use this token to access the HTTP API`})]})]})]})}var B=`https://t.me/BotFather`,V=[`create`,`connect`],H=[{id:`create`,label:`Create bot`},{id:`connect`,label:`Connect`}];function U({assistantName:e,onSave:t,saveStatus:n=`idle`,saveError:r=null}){let{stepId:i,stepIndex:a,goTo:o,onStepSelect:s}=A(V),[c,l]=(0,p.useState)(``);(0,p.useEffect)(()=>{n===`success`&&l(``)},[n]);let{copy:u,copied:g}=f({errorMessage:`Could not copy the name. Type it into BotFather instead.`}),_=(0,p.useCallback)(()=>{u(e)},[u,e]),v=(0,p.useCallback)(()=>{d(B)},[]),y=(0,p.useCallback)(()=>o(`connect`),[o]),b=(0,p.useCallback)(()=>{t?.(c.trim())},[t,c]);return(0,m.jsxs)(h,{channelLabel:`Telegram`,steps:H,stepIndex:a,onStepSelect:s,locked:n===`pending`,children:[i===`create`&&(0,m.jsx)(z,{suggestedName:e,copied:g,onCopyName:_,onOpenBotFather:v,onContinue:y}),i===`connect`&&(0,m.jsx)(R,{botToken:c,saveStatus:n,saveError:r,onBotTokenChange:l,onSave:b})]})}export{P as n,U as t};
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./button-C8CGr0T0.js";import{t as r}from"./jsx-runtime-BJ8jcmzB.js";import{t as i}from"./typography-DekrYXvs.js";import{t as a}from"./check-NGUguBHp.js";import{t as o}from"./clipboard-copy-D6VpELQ4.js";import{t as s}from"./external-link-DCA91uI6.js";import{t as c}from"./notice-C_AsX_o9.js";import{z as l}from"./src-DMnnfLrU.js";import{t as u}from"./input-DlkBtbxm.js";import{t as d}from"./browser--x9YKXWo.js";import{t as f}from"./use-copy-to-clipboard-BPX7B4SE.js";var p=e(t(),1),m=r();function h({channelLabel:e,steps:t,stepIndex:n,onStepSelect:r,locked:i=!1,children:a}){let o=(0,p.useRef)(null),s=(0,p.useRef)(n);(0,p.useEffect)(()=>{s.current!==n&&(s.current=n,o.current?.focus())},[n]);let c=t[n],u=c?`${e} setup, step ${n+1} of ${t.length}: ${c.label}`:`${e} setup`;return(0,m.jsxs)(`div`,{"data-slot":`channel-setup-wizard`,className:`flex flex-col gap-4`,children:[(0,m.jsx)(l,{steps:t,current:n,onStepSelect:r,disabled:i}),(0,m.jsx)(`div`,{ref:o,"data-slot":`channel-setup-step-panel`,tabIndex:-1,role:`group`,"aria-label":u,className:`rounded-lg bg-[var(--surface-sunken)] p-4 outline-none`,children:a})]})}function g({onContinue:e}){return(0,m.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,m.jsx)(i,{as:`p`,variant:`body-medium-lighter`,className:`text-[color:var(--content-default)]`,children:`In Slack:`}),(0,m.jsxs)(`ol`,{className:`list-decimal list-outside space-y-1 pl-5 text-body-medium-lighter text-[var(--content-default)]`,children:[(0,m.jsxs)(`li`,{children:[`Under `,(0,m.jsx)(`strong`,{children:`Or start your own way`}),`, pick`,` `,(0,m.jsx)(`strong`,{children:`From a manifest`}),`, then `,(0,m.jsx)(`strong`,{children:`Continue`})]}),(0,m.jsx)(`li`,{children:`Choose your workspace and paste the manifest`}),(0,m.jsxs)(`li`,{children:[`Review the permissions, then click `,(0,m.jsx)(`strong`,{children:`Create and Install`})]})]}),(0,m.jsxs)(c,{tone:`info`,children:[`If Slack shows “Request approval” instead of`,` `,(0,m.jsx)(`strong`,{children:`Install`}),`, a workspace admin needs to approve the app first.`]}),(0,m.jsx)(n,{type:`button`,variant:`primary`,className:`self-start`,onClick:e,children:`I created the app`})]})}var _=[`app_mentions:read`,`assistant:write`,`channels:history`,`channels:join`,`channels:read`,`chat:write`,`files:read`,`files:write`,`groups:history`,`groups:read`,`im:history`,`im:read`,`im:write`,`mpim:history`,`mpim:read`,`reactions:read`,`reactions:write`,`users:read`],v=[`channels:join`,`files:read`,`files:write`,`reactions:read`,`reactions:write`],y=[`channels:history`,`channels:read`,`groups:history`,`groups:read`,`im:history`,`im:read`,`mpim:history`,`mpim:read`,`reactions:read`,`search:read`,`users:read`],b=[`reactions:read`,`search:read`],x=300;function S(e,t=``){let n=e.trim().slice(0,35)||`My Assistant`;return{display_information:{name:n,...t?{description:t.slice(0,140)}:{},background_color:`#1a1a2e`},features:{app_home:{home_tab_enabled:!1,messages_tab_enabled:!0,messages_tab_read_only_enabled:!1},bot_user:{display_name:n,always_online:!0},agent_view:{agent_description:(t||n).slice(0,x),suggested_prompts:[]}},oauth_config:{scopes:{bot:[..._],bot_optional:[...v],user:[...y],user_optional:[...b]}},settings:{event_subscriptions:{bot_events:[`app_mention`,`app_context_changed`,`message.channels`,`message.groups`,`message.im`,`message.mpim`,`reaction_added`]},interactivity:{is_enabled:!0},org_deploy_enabled:!1,socket_mode_enabled:!0,token_rotation_enabled:!1}}}function C({appName:e,description:t,copied:r,onAppNameChange:s,onDescriptionChange:c,onCopyManifest:l,onContinue:d}){let f=e.trim().length>0;return(0,m.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,m.jsx)(i,{as:`p`,variant:`body-medium-lighter`,className:`text-[color:var(--content-default)]`,children:`Name your Slack app and copy its manifest. Every permission and setting comes pre-configured.`}),(0,m.jsx)(u,{label:`App Name`,value:e,onChange:e=>s(e.target.value.slice(0,35)),placeholder:`My Assistant`,fullWidth:!0}),(0,m.jsx)(u,{label:`Description (optional)`,value:t,onChange:e=>c(e.target.value.slice(0,140)),placeholder:`What this assistant helps with`,helperText:`Shown on the app's Slack profile.`,fullWidth:!0}),(0,m.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,m.jsx)(n,{type:`button`,variant:`outlined`,disabled:!f,onClick:l,leftIcon:r?(0,m.jsx)(a,{"aria-hidden":!0,className:`size-4`}):(0,m.jsx)(o,{"aria-hidden":!0,className:`size-4`}),children:r?`Copied!`:`Copy manifest`}),(0,m.jsx)(n,{type:`button`,variant:`primary`,disabled:!f,onClick:d,children:`Next`})]})]})}function w({manifestCopiedHere:e,copied:t,onCopyManifest:r,onOpenSlack:l,onContinue:u}){let d=(0,m.jsx)(n,{type:`button`,variant:`outlined`,size:`compact`,onClick:r,leftIcon:t?(0,m.jsx)(a,{"aria-hidden":!0,className:`size-4`}):(0,m.jsx)(o,{"aria-hidden":!0,className:`size-4`}),children:t?`Copied!`:`Copy manifest`});return(0,m.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,m.jsx)(i,{as:`p`,variant:`body-medium-lighter`,className:`text-[color:var(--content-default)]`,children:`Open Slack in a new tab to create the app, then come back here for the steps to follow.`}),e?(0,m.jsx)(c,{tone:`info`,actions:d,children:`You copied this app's manifest here. If you have copied anything since, copy it again before you paste.`}):(0,m.jsx)(c,{tone:`warning`,actions:d,children:`You have not copied this app's manifest yet. Slack's create-app modal has no other way to get it, so copy it before you paste.`}),(0,m.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,m.jsx)(n,{type:`button`,variant:`primary`,onClick:l,rightIcon:(0,m.jsx)(s,{"aria-hidden":!0,className:`size-4`}),children:`Open Slack`}),(0,m.jsx)(n,{type:`button`,variant:`outlined`,onClick:u,children:`Next`})]})]})}var T=`xoxb-`,E=`xapp-`,D=20;function O(e,t,n){let r=e.trim();return r?r.startsWith(t)?r.length<D?`${n} looks truncated. Copy the whole value from Slack.`:null:`${n} should start with "${t}".`:null}function k({botToken:e,appToken:t,saveStatus:r,saveError:a,onBotTokenChange:o,onAppTokenChange:s,onSave:l}){let d=O(e,T,`Bot token`),f=O(t,E,`App token`),p=e.trim().length>0&&t.trim().length>0&&!d&&!f&&r!==`pending`;return(0,m.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,m.jsxs)(i,{as:`p`,variant:`body-medium-lighter`,className:`text-[color:var(--content-default)]`,children:[`On Slack's confirmation screen, expand`,` `,(0,m.jsx)(`strong`,{children:`Your app credentials`}),` and copy both tokens.`]}),(0,m.jsxs)(c,{tone:`warning`,children:[`That screen also offers a command-line walkthrough and a`,` `,(0,m.jsx)(`strong`,{children:`Download app files`}),` button. Skip both. They set up a separate local app, and this assistant needs only the two tokens.`]}),(0,m.jsx)(u,{label:`Bot Token`,type:`password`,value:e,onChange:e=>o(e.target.value),placeholder:`${T}...`,errorText:d??void 0,disabled:r===`pending`,fullWidth:!0}),(0,m.jsx)(u,{label:`App Token`,type:`password`,value:t,onChange:e=>s(e.target.value),placeholder:`${E}...`,errorText:f??void 0,disabled:r===`pending`,fullWidth:!0}),(0,m.jsx)(n,{type:`button`,variant:`primary`,className:`self-start`,onClick:l,disabled:!p,children:r===`pending`?`Connecting…`:`Connect Slack`}),r===`success`&&(0,m.jsx)(i,{as:`p`,variant:`body-small-default`,className:`text-[color:var(--content-positive)]`,children:`Credentials saved.`}),r===`error`&&a&&(0,m.jsx)(i,{as:`p`,variant:`body-small-default`,className:`text-[color:var(--system-negative-strong)]`,children:a})]})}function A(e){let[t,n]=(0,p.useState)(e[0]),r=(0,p.useMemo)(()=>e.indexOf(t),[e,t]);return{stepId:t,stepIndex:r,goTo:(0,p.useCallback)(e=>n(e),[]),onStepSelect:(0,p.useCallback)(t=>{t<r&&n(e[t])},[e,r])}}var j=`https://api.slack.com/apps?new_app=1`,M=[`name`,`open`,`create`,`connect`],N=[{id:`name`,label:`Name`},{id:`open`,label:`Open`},{id:`create`,label:`Create`},{id:`connect`,label:`Connect`}];function P({assistantName:e,onSave:t,saveStatus:n=`idle`,saveError:r=null}){let{stepId:i,stepIndex:a,goTo:o,onStepSelect:s}=A(M),[c,l]=(0,p.useState)(e),[u,_]=(0,p.useState)(``),v=(0,p.useRef)(!1);(0,p.useEffect)(()=>{v.current||l(e)},[e]);let[y,b]=(0,p.useState)(null),[x,T]=(0,p.useState)(``),[E,D]=(0,p.useState)(``);(0,p.useEffect)(()=>{n===`success`&&(T(``),D(``))},[n]);let{copy:O,copied:P}=f({errorMessage:`Could not copy the manifest. Copy it again before continuing.`}),F=(0,p.useMemo)(()=>JSON.stringify(S(c,u),null,2),[c,u]),I=y===F,L=(0,p.useCallback)(e=>{v.current=!0,l(e)},[]),R=(0,p.useCallback)(()=>{O(F,()=>b(F))},[O,F]),z=(0,p.useCallback)(()=>{d(j)},[]),B=(0,p.useCallback)(()=>o(`open`),[o]),V=(0,p.useCallback)(()=>o(`create`),[o]),H=(0,p.useCallback)(()=>o(`connect`),[o]),U=(0,p.useCallback)(()=>{t?.(x.trim(),E.trim())},[t,x,E]);return(0,m.jsxs)(h,{channelLabel:`Slack`,steps:N,stepIndex:a,onStepSelect:s,locked:n===`pending`,children:[i===`name`&&(0,m.jsx)(C,{appName:c,description:u,copied:P&&I,onAppNameChange:L,onDescriptionChange:_,onCopyManifest:R,onContinue:B}),i===`open`&&(0,m.jsx)(w,{manifestCopiedHere:I,copied:P&&I,onCopyManifest:R,onOpenSlack:z,onContinue:V}),i===`create`&&(0,m.jsx)(g,{onContinue:H}),i===`connect`&&(0,m.jsx)(k,{botToken:x,appToken:E,saveStatus:n,saveError:r,onBotTokenChange:T,onAppTokenChange:D,onSave:U})]})}var F=/^\d+:[A-Za-z0-9_-]+$/,I=25;function L(e){let t=e.trim();return t?F.test(t)?t.slice(t.indexOf(`:`)+1).length<I?`Bot token looks truncated. Copy the whole line from BotFather.`:null:`Bot token should look like "123456:ABC-DEF...". Copy the whole line from BotFather.`:null}function R({botToken:e,saveStatus:t,saveError:r,onBotTokenChange:a,onSave:o}){let s=L(e),l=e.trim().length>0&&!s&&t!==`pending`;return(0,m.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,m.jsxs)(i,{as:`p`,variant:`body-medium-lighter`,className:`text-[color:var(--content-default)]`,children:[`Paste the token from BotFather's reply. It is the whole line after`,` `,(0,m.jsx)(`strong`,{children:`Use this token to access the HTTP API`}),`.`]}),(0,m.jsx)(u,{label:`Bot Token`,type:`password`,value:e,onChange:e=>a(e.target.value),placeholder:`123456789:AA...`,errorText:s??void 0,disabled:t===`pending`,fullWidth:!0}),(0,m.jsx)(n,{type:`button`,variant:`primary`,className:`self-start`,onClick:o,disabled:!l,children:t===`pending`?`Saving…`:`Connect Telegram`}),t===`success`&&(0,m.jsx)(c,{tone:`success`,children:`Token saved. The rest finishes on its own. Your assistant will confirm Telegram is delivering the next time you chat, and make sure it can reach you.`}),t===`error`&&r&&(0,m.jsx)(c,{tone:`error`,children:r})]})}function z({suggestedName:e,copied:t,onCopyName:r,onOpenBotFather:l,onContinue:u}){return(0,m.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,m.jsxs)(i,{as:`p`,variant:`body-medium-lighter`,className:`text-[color:var(--content-default)]`,children:[`Telegram bots are created by messaging `,(0,m.jsx)(`strong`,{children:`@BotFather`}),`. Open it, run through the prompts, then come back with the token it gives you.`]}),(0,m.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,m.jsx)(n,{type:`button`,variant:`primary`,onClick:l,rightIcon:(0,m.jsx)(s,{"aria-hidden":!0,className:`size-4`}),children:`Open BotFather`}),(0,m.jsx)(n,{type:`button`,variant:`outlined`,onClick:u,children:`Next`})]}),(0,m.jsxs)(c,{tone:`neutral`,actions:(0,m.jsx)(n,{type:`button`,variant:`outlined`,size:`compact`,onClick:r,leftIcon:t?(0,m.jsx)(a,{"aria-hidden":!0,className:`size-4`}):(0,m.jsx)(o,{"aria-hidden":!0,className:`size-4`}),children:t?`Copied!`:`Copy name`}),children:[`For the display name, `,(0,m.jsx)(`strong`,{children:e}),` keeps this bot matching your assistant. The username is separate and does not have to match.`]}),(0,m.jsx)(i,{as:`p`,variant:`body-medium-lighter`,className:`text-[color:var(--content-default)]`,children:`In BotFather:`}),(0,m.jsxs)(`ol`,{className:`list-decimal list-outside space-y-1 pl-5 text-body-medium-lighter text-[var(--content-default)]`,children:[(0,m.jsxs)(`li`,{children:[`Send `,(0,m.jsx)(`strong`,{children:`/newbot`})]}),(0,m.jsx)(`li`,{children:`Give it a display name, which is what people see in chat`}),(0,m.jsxs)(`li`,{children:[`Give it a username, which must be unique and end in`,` `,(0,m.jsx)(`strong`,{children:`bot`})]}),(0,m.jsxs)(`li`,{children:[`BotFather replies with a token after`,` `,(0,m.jsx)(`strong`,{children:`Use this token to access the HTTP API`})]})]})]})}var B=`https://t.me/BotFather`,V=[`create`,`connect`],H=[{id:`create`,label:`Create bot`},{id:`connect`,label:`Connect`}];function U({assistantName:e,onSave:t,saveStatus:n=`idle`,saveError:r=null}){let{stepId:i,stepIndex:a,goTo:o,onStepSelect:s}=A(V),[c,l]=(0,p.useState)(``);(0,p.useEffect)(()=>{n===`success`&&l(``)},[n]);let{copy:u,copied:g}=f({errorMessage:`Could not copy the name. Type it into BotFather instead.`}),_=(0,p.useCallback)(()=>{u(e)},[u,e]),v=(0,p.useCallback)(()=>{d(B)},[]),y=(0,p.useCallback)(()=>o(`connect`),[o]),b=(0,p.useCallback)(()=>{t?.(c.trim())},[t,c]);return(0,m.jsxs)(h,{channelLabel:`Telegram`,steps:H,stepIndex:a,onStepSelect:s,locked:n===`pending`,children:[i===`create`&&(0,m.jsx)(z,{suggestedName:e,copied:g,onCopyName:_,onOpenBotFather:v,onContinue:y}),i===`connect`&&(0,m.jsx)(R,{botToken:c,saveStatus:n,saveError:r,onBotTokenChange:l,onSave:b})]})}export{P as n,U as t};
@@ -1 +1 @@
1
- import{t as e}from"./jsx-runtime-BJ8jcmzB.js";import{t}from"./typography-DekrYXvs.js";import{t as n}from"./preview-error-gCViZZRw.js";import"./src-CImIAPTd.js";import{t as r}from"./preview-skeleton-Be9eHMn9.js";import{t as i}from"./use-truncated-blob-text-BYAPiP8I.js";var a=e(),o=2*1024*1024,s=`Showing the first 2 MB`;function c({blob:e,filename:c}){let{text:l,truncated:u,decodeFailed:d}=i(e,o);return d?(0,a.jsx)(n,{filename:c}):l===null?(0,a.jsx)(r,{}):(0,a.jsxs)(`div`,{className:`flex min-h-0 flex-col gap-2`,children:[(0,a.jsx)(`pre`,{className:`whitespace-pre-wrap break-words font-mono text-body-small-default text-[var(--content-default)]`,children:l}),u&&(0,a.jsx)(t,{as:`p`,variant:`label-small-default`,className:`border-t border-[var(--border-element)] pt-2 text-[var(--content-tertiary)]`,children:s})]})}export{c as TextPreview};
1
+ import{t as e}from"./jsx-runtime-BJ8jcmzB.js";import{t}from"./typography-DekrYXvs.js";import{t as n}from"./preview-error-B7qHC1Y4.js";import"./src-DMnnfLrU.js";import{t as r}from"./preview-skeleton-BStSegQN.js";import{t as i}from"./use-truncated-blob-text-DYvFk3Fv.js";var a=e(),o=2*1024*1024,s=`Showing the first 2 MB`;function c({blob:e,filename:c}){let{text:l,truncated:u,decodeFailed:d}=i(e,o);return d?(0,a.jsx)(n,{filename:c}):l===null?(0,a.jsx)(r,{}):(0,a.jsxs)(`div`,{className:`flex min-h-0 flex-col gap-2`,children:[(0,a.jsx)(`pre`,{className:`whitespace-pre-wrap break-words font-mono text-body-small-default text-[var(--content-default)]`,children:l}),u&&(0,a.jsx)(t,{as:`p`,variant:`label-small-default`,className:`border-t border-[var(--border-element)] pt-2 text-[var(--content-tertiary)]`,children:s})]})}export{c as TextPreview};
@@ -1 +1 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./button-VkxVX0DM.js";import{h as r,p as i}from"./chunk-5KNZJZUH-BUqIilZr.js";import{t as a}from"./jsx-runtime-BJ8jcmzB.js";import{t as o}from"./card-DUsAeHUS.js";import"./src-CImIAPTd.js";import{n as s,t as c}from"./input-DkgpMeG9.js";import{t as l}from"./use-app-theme-Z0l8oiAF.js";import{t as u}from"./workspace-theme-tokens-CJpxBUQ3.js";var d=e(t(),1),f=a(),p=`__THEME_STAGE_READY__`;function m(e){return e===`chat`?`chat`:`sampler`}function h(e){if(e)try{let t=JSON.parse(e);if(typeof t!=`object`||!t||Array.isArray(t))return;let n={};for(let[e,r]of Object.entries(t))typeof r==`string`&&(n[e]=r);return n}catch{return}}var g=`w-[720px]`;function _({children:e}){return(0,f.jsx)(`div`,{className:`text-xs font-medium uppercase tracking-wide text-[var(--content-tertiary)]`,children:e})}function v(){return(0,f.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,f.jsx)(_,{children:`Text`}),(0,f.jsx)(`div`,{className:`text-[15px] text-[var(--content-default)]`,children:`Primary text — the main reading surface of the app.`}),(0,f.jsx)(`div`,{className:`text-[15px] text-[var(--content-secondary)]`,children:`Secondary text — supporting copy and descriptions.`}),(0,f.jsx)(`div`,{className:`text-sm text-[var(--content-tertiary)]`,children:`Tertiary text — captions, labels, and placeholders.`}),(0,f.jsx)(`div`,{className:`text-sm text-[var(--content-quiet)]`,children:`Quiet text — metadata and timestamps.`}),(0,f.jsx)(`div`,{className:`text-sm text-[var(--content-faint)]`,children:`Faint text — the last legible step of the ramp.`})]})}function y(){return(0,f.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,f.jsx)(_,{children:`Buttons`}),(0,f.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,f.jsx)(n,{children:`Primary`}),(0,f.jsx)(n,{variant:`outlined`,children:`Secondary`}),(0,f.jsx)(n,{disabled:!0,children:`Disabled`})]})]})}function b(){return(0,f.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,f.jsx)(_,{children:`Accent`}),(0,f.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,f.jsx)(`div`,{className:`rounded-md bg-[var(--primary-base)] px-4 py-2 text-sm font-medium text-[var(--content-inset)]`,children:`Accent fill`}),(0,f.jsx)(`div`,{className:`rounded-md border border-[var(--border-active)] px-4 py-2 text-sm text-[var(--content-default)]`,children:`Active border`}),(0,f.jsx)(`div`,{className:`h-6 w-6 rounded-full bg-[var(--primary-hover)]`}),(0,f.jsx)(`div`,{className:`h-6 w-6 rounded-full bg-[var(--primary-active)]`})]})]})}function x(){return(0,f.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,f.jsx)(_,{children:`Surfaces and borders`}),(0,f.jsx)(o,{elevated:!0,children:(0,f.jsxs)(`div`,{className:`flex flex-col gap-2 p-4`,children:[(0,f.jsx)(`div`,{className:`text-[15px] font-medium text-[var(--content-default)]`,children:`Raised card`}),(0,f.jsx)(`div`,{className:`text-sm text-[var(--content-secondary)]`,children:`Elevated surfaces sit above panels and the page background.`}),(0,f.jsx)(`div`,{className:`border-t border-[var(--border-subtle)] pt-2 text-sm text-[var(--content-tertiary)]`,children:`Subtle divider above this line.`})]})}),(0,f.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,f.jsx)(`div`,{className:`rounded-md border border-[var(--border-base)] bg-[var(--surface-overlay)] px-3 py-2 text-sm text-[var(--content-secondary)]`,children:`Overlay surface`}),(0,f.jsx)(`div`,{className:`rounded-md border border-[var(--border-element)] bg-[var(--surface-active)] px-3 py-2 text-sm text-[var(--content-secondary)]`,children:`Active surface`})]})]})}function S(){return(0,f.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,f.jsx)(_,{children:`Inputs`}),(0,f.jsx)(c,{fullWidth:!0,placeholder:`A placeholder in an empty field`,readOnly:!0}),(0,f.jsx)(s,{fullWidth:!0,readOnly:!0,rows:2,value:`Text someone has already typed into a field.`})]})}function C({children:e}){return(0,f.jsx)(`div`,{className:`group/msg flex justify-end`,children:(0,f.jsx)(`div`,{className:`flex w-full min-w-0 flex-col gap-2 items-end`,children:(0,f.jsx)(`div`,{className:`max-w-[80%] rounded-lg bg-[var(--user-bubble-bg,var(--surface-lift))] px-4 py-3 text-[var(--user-bubble-text,var(--content-default))] flex flex-col gap-2`,children:(0,f.jsx)(`div`,{className:`break-words text-[15px]`,children:e})})})})}function w({children:e}){return(0,f.jsx)(`div`,{className:`group/msg flex justify-start`,children:(0,f.jsx)(`div`,{className:`flex w-full min-w-0 flex-col gap-2 items-start`,children:(0,f.jsx)(`div`,{className:`w-full text-[var(--content-default)]`,children:(0,f.jsx)(`div`,{className:`break-words text-[15px] w-full`,children:e})})})})}function T(){return(0,f.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,f.jsx)(_,{children:`Messages`}),(0,f.jsx)(C,{children:`A message from the user, in its bubble.`}),(0,f.jsx)(w,{children:`A reply from the assistant, rendered full-width on the page surface.`})]})}function E(){return(0,f.jsxs)(`div`,{"data-testid":`theme-stage-sampler`,className:`${g} flex min-h-[1080px] flex-col gap-6 bg-[var(--background)] p-8`,children:[(0,f.jsx)(`div`,{className:`text-lg font-semibold text-[var(--content-default)]`,children:`Theme sampler`}),(0,f.jsx)(v,{}),(0,f.jsx)(b,{}),(0,f.jsx)(y,{}),(0,f.jsx)(x,{}),(0,f.jsx)(S,{}),(0,f.jsx)(T,{})]})}function D(){return(0,f.jsxs)(`div`,{"data-testid":`theme-stage-chat`,className:`${g} flex h-[760px] flex-col bg-[var(--background)]`,children:[(0,f.jsx)(`div`,{className:`flex items-center border-b border-[var(--border-base)] bg-[var(--surface-overlay)] px-5 py-3`,children:(0,f.jsx)(`div`,{className:`text-[15px] font-medium text-[var(--content-default)]`,children:`New conversation`})}),(0,f.jsxs)(`div`,{className:`flex flex-1 flex-col justify-end gap-4 overflow-hidden px-5 py-4`,children:[(0,f.jsx)(C,{children:`Can you summarize the quarterly report before tomorrow's meeting?`}),(0,f.jsx)(w,{children:`Done — the summary is ready. Revenue grew steadily, the two flagged risks from last quarter are resolved, and I pulled the three charts worth showing into a separate page.`}),(0,f.jsx)(C,{children:`Perfect. Send it to the team in the morning.`}),(0,f.jsx)(w,{children:`Scheduled for 9am. I'll include the charts and a one-paragraph version for anyone skimming on their phone.`})]}),(0,f.jsxs)(`div`,{className:`flex items-end gap-2 border-t border-[var(--border-base)] px-5 py-4`,children:[(0,f.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,f.jsx)(s,{fullWidth:!0,readOnly:!0,rows:1,placeholder:`Message your assistant`})}),(0,f.jsx)(n,{children:`Send`})]})]})}function O(){let e=i(),[t]=r(),n=m(e.view),a=t.get(`tokens`),o=(0,d.useMemo)(()=>h(a),[a]);return l(),(0,d.useEffect)(()=>(u(o),()=>{u(void 0)}),[o]),(0,d.useEffect)(()=>{let e=!1;return document.title=`theme-stage`,(document.fonts?.ready??Promise.resolve()).then(()=>{requestAnimationFrame(()=>{requestAnimationFrame(()=>{e||(document.title=p)})})}),()=>{e=!0}},[n,o]),(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(`style`,{children:`* { transition: none !important; animation: none !important; caret-color: transparent !important; } html, body { background: var(--background); }`}),n===`chat`?(0,f.jsx)(D,{}):(0,f.jsx)(E,{})]})}export{O as ThemeStagePage};
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./button-C8CGr0T0.js";import{h as r,p as i}from"./chunk-5KNZJZUH-BUqIilZr.js";import{t as a}from"./jsx-runtime-BJ8jcmzB.js";import{t as o}from"./card-DUsAeHUS.js";import"./src-DMnnfLrU.js";import{n as s,t as c}from"./input-DlkBtbxm.js";import{t as l}from"./use-app-theme-BMyUWfBR.js";import{t as u}from"./workspace-theme-tokens-Dae42Dzg.js";var d=e(t(),1),f=a(),p=`__THEME_STAGE_READY__`;function m(e){return e===`chat`?`chat`:`sampler`}function h(e){if(e)try{let t=JSON.parse(e);if(typeof t!=`object`||!t||Array.isArray(t))return;let n={};for(let[e,r]of Object.entries(t))typeof r==`string`&&(n[e]=r);return n}catch{return}}var g=`w-[720px]`;function _({children:e}){return(0,f.jsx)(`div`,{className:`text-xs font-medium uppercase tracking-wide text-[var(--content-tertiary)]`,children:e})}function v(){return(0,f.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,f.jsx)(_,{children:`Text`}),(0,f.jsx)(`div`,{className:`text-[15px] text-[var(--content-default)]`,children:`Primary text — the main reading surface of the app.`}),(0,f.jsx)(`div`,{className:`text-[15px] text-[var(--content-secondary)]`,children:`Secondary text — supporting copy and descriptions.`}),(0,f.jsx)(`div`,{className:`text-sm text-[var(--content-tertiary)]`,children:`Tertiary text — captions, labels, and placeholders.`}),(0,f.jsx)(`div`,{className:`text-sm text-[var(--content-quiet)]`,children:`Quiet text — metadata and timestamps.`}),(0,f.jsx)(`div`,{className:`text-sm text-[var(--content-faint)]`,children:`Faint text — the last legible step of the ramp.`})]})}function y(){return(0,f.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,f.jsx)(_,{children:`Buttons`}),(0,f.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,f.jsx)(n,{children:`Primary`}),(0,f.jsx)(n,{variant:`outlined`,children:`Secondary`}),(0,f.jsx)(n,{disabled:!0,children:`Disabled`})]})]})}function b(){return(0,f.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,f.jsx)(_,{children:`Accent`}),(0,f.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,f.jsx)(`div`,{className:`rounded-md bg-[var(--primary-base)] px-4 py-2 text-sm font-medium text-[var(--content-inset)]`,children:`Accent fill`}),(0,f.jsx)(`div`,{className:`rounded-md border border-[var(--border-active)] px-4 py-2 text-sm text-[var(--content-default)]`,children:`Active border`}),(0,f.jsx)(`div`,{className:`h-6 w-6 rounded-full bg-[var(--primary-hover)]`}),(0,f.jsx)(`div`,{className:`h-6 w-6 rounded-full bg-[var(--primary-active)]`})]})]})}function x(){return(0,f.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,f.jsx)(_,{children:`Surfaces and borders`}),(0,f.jsx)(o,{elevated:!0,children:(0,f.jsxs)(`div`,{className:`flex flex-col gap-2 p-4`,children:[(0,f.jsx)(`div`,{className:`text-[15px] font-medium text-[var(--content-default)]`,children:`Raised card`}),(0,f.jsx)(`div`,{className:`text-sm text-[var(--content-secondary)]`,children:`Elevated surfaces sit above panels and the page background.`}),(0,f.jsx)(`div`,{className:`border-t border-[var(--border-subtle)] pt-2 text-sm text-[var(--content-tertiary)]`,children:`Subtle divider above this line.`})]})}),(0,f.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,f.jsx)(`div`,{className:`rounded-md border border-[var(--border-base)] bg-[var(--surface-overlay)] px-3 py-2 text-sm text-[var(--content-secondary)]`,children:`Overlay surface`}),(0,f.jsx)(`div`,{className:`rounded-md border border-[var(--border-element)] bg-[var(--surface-active)] px-3 py-2 text-sm text-[var(--content-secondary)]`,children:`Active surface`})]})]})}function S(){return(0,f.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,f.jsx)(_,{children:`Inputs`}),(0,f.jsx)(c,{fullWidth:!0,placeholder:`A placeholder in an empty field`,readOnly:!0}),(0,f.jsx)(s,{fullWidth:!0,readOnly:!0,rows:2,value:`Text someone has already typed into a field.`})]})}function C({children:e}){return(0,f.jsx)(`div`,{className:`group/msg flex justify-end`,children:(0,f.jsx)(`div`,{className:`flex w-full min-w-0 flex-col gap-2 items-end`,children:(0,f.jsx)(`div`,{className:`max-w-[80%] rounded-lg bg-[var(--user-bubble-bg,var(--surface-lift))] px-4 py-3 text-[var(--user-bubble-text,var(--content-default))] flex flex-col gap-2`,children:(0,f.jsx)(`div`,{className:`break-words text-[15px]`,children:e})})})})}function w({children:e}){return(0,f.jsx)(`div`,{className:`group/msg flex justify-start`,children:(0,f.jsx)(`div`,{className:`flex w-full min-w-0 flex-col gap-2 items-start`,children:(0,f.jsx)(`div`,{className:`w-full text-[var(--content-default)]`,children:(0,f.jsx)(`div`,{className:`break-words text-[15px] w-full`,children:e})})})})}function T(){return(0,f.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,f.jsx)(_,{children:`Messages`}),(0,f.jsx)(C,{children:`A message from the user, in its bubble.`}),(0,f.jsx)(w,{children:`A reply from the assistant, rendered full-width on the page surface.`})]})}function E(){return(0,f.jsxs)(`div`,{"data-testid":`theme-stage-sampler`,className:`${g} flex min-h-[1080px] flex-col gap-6 bg-[var(--background)] p-8`,children:[(0,f.jsx)(`div`,{className:`text-lg font-semibold text-[var(--content-default)]`,children:`Theme sampler`}),(0,f.jsx)(v,{}),(0,f.jsx)(b,{}),(0,f.jsx)(y,{}),(0,f.jsx)(x,{}),(0,f.jsx)(S,{}),(0,f.jsx)(T,{})]})}function D(){return(0,f.jsxs)(`div`,{"data-testid":`theme-stage-chat`,className:`${g} flex h-[760px] flex-col bg-[var(--background)]`,children:[(0,f.jsx)(`div`,{className:`flex items-center border-b border-[var(--border-base)] bg-[var(--surface-overlay)] px-5 py-3`,children:(0,f.jsx)(`div`,{className:`text-[15px] font-medium text-[var(--content-default)]`,children:`New conversation`})}),(0,f.jsxs)(`div`,{className:`flex flex-1 flex-col justify-end gap-4 overflow-hidden px-5 py-4`,children:[(0,f.jsx)(C,{children:`Can you summarize the quarterly report before tomorrow's meeting?`}),(0,f.jsx)(w,{children:`Done — the summary is ready. Revenue grew steadily, the two flagged risks from last quarter are resolved, and I pulled the three charts worth showing into a separate page.`}),(0,f.jsx)(C,{children:`Perfect. Send it to the team in the morning.`}),(0,f.jsx)(w,{children:`Scheduled for 9am. I'll include the charts and a one-paragraph version for anyone skimming on their phone.`})]}),(0,f.jsxs)(`div`,{className:`flex items-end gap-2 border-t border-[var(--border-base)] px-5 py-4`,children:[(0,f.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,f.jsx)(s,{fullWidth:!0,readOnly:!0,rows:1,placeholder:`Message your assistant`})}),(0,f.jsx)(n,{children:`Send`})]})]})}function O(){let e=i(),[t]=r(),n=m(e.view),a=t.get(`tokens`),o=(0,d.useMemo)(()=>h(a),[a]);return l(),(0,d.useEffect)(()=>(u(o),()=>{u(void 0)}),[o]),(0,d.useEffect)(()=>{let e=!1;return document.title=`theme-stage`,(document.fonts?.ready??Promise.resolve()).then(()=>{requestAnimationFrame(()=>{requestAnimationFrame(()=>{e||(document.title=p)})})}),()=>{e=!0}},[n,o]),(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(`style`,{children:`* { transition: none !important; animation: none !important; caret-color: transparent !important; } html, body { background: var(--background); }`}),n===`chat`?(0,f.jsx)(D,{}):(0,f.jsx)(E,{})]})}export{O as ThemeStagePage};
@@ -1 +1 @@
1
- import{t as e}from"./createLucideIcon-B-ZPaMbU.js";import{t}from"./shield-check-B-3lr0Uj.js";import{t as n}from"./shield-Sw65VSPa.js";import{i as r,n as i,t as a}from"./api-errors-CASENJGT.js";import{b as o,g as s,h as c,m as l,y as u}from"./sdk.gen-CoXhzo__.js";var d=e(`lock`,[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 10 0v4`,key:`fwvmzm`}]]),f=e(`shield-off`,[[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M5 5a1 1 0 0 0-1 1v7c0 5 3.5 7.5 7.67 8.94a1 1 0 0 0 .67.01c2.35-.82 4.48-1.97 5.9-3.71`,key:`1jlk70`}],[`path`,{d:`M9.309 3.652A12.252 12.252 0 0 0 11.24 2.28a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1v7a9.784 9.784 0 0 1-.08 1.264`,key:`18rp1v`}]]);async function p(e){let{data:t,error:n,response:o}=await u({path:{assistant_id:e},throwOnError:!1});if(i(o,n,`Failed to fetch global thresholds.`),!o.ok||!t){let e=r(n,o,`Failed to fetch global thresholds.`);throw new a(o.status,e)}return t}async function m(e,t){let{data:n,error:s,response:c}=await o({path:{assistant_id:e},body:t,throwOnError:!1});if(i(c,s,`Failed to update global thresholds.`),!c.ok||!n){let e=r(s,c,`Failed to update global thresholds.`);throw new a(c.status,e)}return n}async function h(e,t){let{data:n,error:o,response:s}=await c({path:{assistant_id:e,conversation_id:t},throwOnError:!1});if(s?.status===404)return null;if(i(s,o,`Failed to fetch conversation threshold override.`),!s.ok){let e=r(o,s,`Failed to fetch conversation threshold override.`);throw new a(s.status,e)}return n?.threshold??null}async function g(e,t,n){let{error:o,response:c}=await s({path:{assistant_id:e,conversation_id:t},body:{threshold:n},throwOnError:!1});if(i(c,o,`Failed to set conversation threshold override.`),!c.ok){let e=r(o,c,`Failed to set conversation threshold override.`);throw new a(c.status,e)}}async function _(e,t){let{error:n,response:o}=await l({path:{assistant_id:e,conversation_id:t},throwOnError:!1});if(i(o,n,`Failed to delete conversation threshold override.`),!o.ok&&o.status!==204){let e=r(n,o,`Failed to delete conversation threshold override.`);throw new a(o.status,e)}}var v=[{id:`strict`,label:`Strict`,riskThreshold:`none`,description:`Always ask before acting. No actions are auto-approved.`,icon:d},{id:`conservative`,label:`Conservative`,riskThreshold:`low`,description:`Auto-approve low-risk actions, like web searches and reading and writing files in its own workspace.`,icon:t},{id:`relaxed`,label:`Relaxed`,riskThreshold:`medium`,description:`Auto-approve low and medium-risk actions, like changing files outside its own workspace.`,icon:n},{id:`fullAccess`,label:`Full access`,riskThreshold:`high`,description:`Auto-approve all actions, including high-risk and unrecognized commands. Your assistant will never ask for permission.`,icon:f}];function y(e){return v.find(t=>t.riskThreshold===e)??v[1]}function b(e,t){return e.riskThreshold===t?{action:`clear`}:{action:`set`,threshold:e.riskThreshold}}export{h as a,m as c,_ as i,f as l,b as n,p as o,y as r,g as s,v as t,d as u};
1
+ import{t as e}from"./createLucideIcon-B-ZPaMbU.js";import{t}from"./shield-check-B5eUPC8R.js";import{t as n}from"./shield-CKMzW_Un.js";import{i as r,n as i,t as a}from"./api-errors-DYGVb-Sh.js";import{b as o,g as s,h as c,m as l,y as u}from"./sdk.gen-bruWelSm.js";var d=e(`lock`,[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 10 0v4`,key:`fwvmzm`}]]),f=e(`shield-off`,[[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M5 5a1 1 0 0 0-1 1v7c0 5 3.5 7.5 7.67 8.94a1 1 0 0 0 .67.01c2.35-.82 4.48-1.97 5.9-3.71`,key:`1jlk70`}],[`path`,{d:`M9.309 3.652A12.252 12.252 0 0 0 11.24 2.28a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1v7a9.784 9.784 0 0 1-.08 1.264`,key:`18rp1v`}]]);async function p(e){let{data:t,error:n,response:o}=await u({path:{assistant_id:e},throwOnError:!1});if(i(o,n,`Failed to fetch global thresholds.`),!o.ok||!t){let e=r(n,o,`Failed to fetch global thresholds.`);throw new a(o.status,e)}return t}async function m(e,t){let{data:n,error:s,response:c}=await o({path:{assistant_id:e},body:t,throwOnError:!1});if(i(c,s,`Failed to update global thresholds.`),!c.ok||!n){let e=r(s,c,`Failed to update global thresholds.`);throw new a(c.status,e)}return n}async function h(e,t){let{data:n,error:o,response:s}=await c({path:{assistant_id:e,conversation_id:t},throwOnError:!1});if(s?.status===404)return null;if(i(s,o,`Failed to fetch conversation threshold override.`),!s.ok){let e=r(o,s,`Failed to fetch conversation threshold override.`);throw new a(s.status,e)}return n?.threshold??null}async function g(e,t,n){let{error:o,response:c}=await s({path:{assistant_id:e,conversation_id:t},body:{threshold:n},throwOnError:!1});if(i(c,o,`Failed to set conversation threshold override.`),!c.ok){let e=r(o,c,`Failed to set conversation threshold override.`);throw new a(c.status,e)}}async function _(e,t){let{error:n,response:o}=await l({path:{assistant_id:e,conversation_id:t},throwOnError:!1});if(i(o,n,`Failed to delete conversation threshold override.`),!o.ok&&o.status!==204){let e=r(n,o,`Failed to delete conversation threshold override.`);throw new a(o.status,e)}}var v=[{id:`strict`,label:`Strict`,riskThreshold:`none`,description:`Always ask before acting. No actions are auto-approved.`,icon:d},{id:`conservative`,label:`Conservative`,riskThreshold:`low`,description:`Auto-approve low-risk actions, like web searches and reading and writing files in its own workspace.`,icon:t},{id:`relaxed`,label:`Relaxed`,riskThreshold:`medium`,description:`Auto-approve low and medium-risk actions, like changing files outside its own workspace.`,icon:n},{id:`fullAccess`,label:`Full access`,riskThreshold:`high`,description:`Auto-approve all actions, including high-risk and unrecognized commands. Your assistant will never ask for permission.`,icon:f}];function y(e){return v.find(t=>t.riskThreshold===e)??v[1]}function b(e,t){return e.riskThreshold===t?{action:`clear`}:{action:`set`,threshold:e.riskThreshold}}export{h as a,m as c,_ as i,f as l,b as n,p as o,y as r,g as s,v as t,d as u};