@vellumai/web 0.11.4-staging.3 → 0.11.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (304) hide show
  1. package/dist/assets/{Trans-BUsRawhS.js → Trans-FBE1EuwL.js} +1 -1
  2. package/dist/assets/{access-Cngxal_O.js → access-D0krXly2.js} +1 -1
  3. package/dist/assets/account-DEWe1CJv.js +1 -0
  4. package/dist/assets/{account-page-IVZcGHZy.js → account-page-Df1VB34_.js} +1 -1
  5. package/dist/assets/{account-shell-DdH2Ze4T.js → account-shell-Dk4m-iaE.js} +1 -1
  6. package/dist/assets/{acp-run-detail-panel-UjpE_MSy.js → acp-run-detail-panel-DsqMAPE4.js} +1 -1
  7. package/dist/assets/{activity-steps-panel-ChM6OAY8.js → activity-steps-panel-C9z9FMmK.js} +1 -1
  8. package/dist/assets/{add-credits-modal-ByR0kDly.js → add-credits-modal-RIAYgbOT.js} +1 -1
  9. package/dist/assets/{ai-page-BmOCqfyq.js → ai-page-CI4LZXTY.js} +1 -1
  10. package/dist/assets/api-BjYAXdCk.js +1 -0
  11. package/dist/assets/{api-CQ3nejmH.js → api-Cx3i50oG.js} +1 -1
  12. package/dist/assets/{api-key-screen-BnQoBDlm.js → api-key-screen-BKFAcyqU.js} +1 -1
  13. package/dist/assets/{app-card--MsNli_3.js → app-card-CjRGDYCX.js} +1 -1
  14. package/dist/assets/{assistant-status-panel-BkuUZfnZ.js → assistant-status-panel-BkLYzQAL.js} +1 -1
  15. package/dist/assets/{auth-store-DDMY1UvK.js → auth-store-CVtcHK0b.js} +2 -2
  16. package/dist/assets/auth-welcome-screen-Pw3qXxi5.js +1 -0
  17. package/dist/assets/{avatar-random-D1LU-C7V.js → avatar-random-B5F8Cp2E.js} +1 -1
  18. package/dist/assets/{background-task-detail-panel-DQeMsdpK.js → background-task-detail-panel-DtJ1ZolD.js} +1 -1
  19. package/dist/assets/{billing-page-BU6n42tO.js → billing-page-CmVjD4bw.js} +3 -3
  20. package/dist/assets/{bookmarks-page-DIzvqlcG.js → bookmarks-page-DUbnEAgS.js} +1 -1
  21. package/dist/assets/{browser-Nd92UvKg.js → browser-Ca2R8csw.js} +2 -2
  22. package/dist/assets/{build-state-BZ5ujToI.js → build-state-laR44jYU.js} +1 -1
  23. package/dist/assets/channels-page-route-sLLh-p2k.js +9 -0
  24. package/dist/assets/{chat-C0-tqEYA.js → chat-1xy90pMn.js} +1 -1
  25. package/dist/assets/{chat-BWQujip4.js → chat-CHVUM3s0.js} +1 -1
  26. package/dist/assets/{chat-markdown-message-mIiMHNFn.js → chat-markdown-message-CtLdsT2K.js} +1 -1
  27. package/dist/assets/{checkout-continuation-UVo_MUjH.js → checkout-continuation-BvY4Kjz7.js} +1 -1
  28. package/dist/assets/{checkout-page-C1hWo56h.js → checkout-page-CWRkiEj1.js} +1 -1
  29. package/dist/assets/checkout-return-target-_Y86sfo0.js +1 -0
  30. package/dist/assets/{client-perf-DHnnpVkx.js → client-perf-BZu5XQCP.js} +1 -1
  31. package/dist/assets/{command-palette-C6fyPEFS.js → command-palette-B6PZe9A0.js} +1 -1
  32. package/dist/assets/command-palette-window-page-BYkkAV88.js +1 -0
  33. package/dist/assets/{community-page-DK1RRzQb.js → community-page-Dd84pjdI.js} +1 -1
  34. package/dist/assets/companion-surface-CZHv2avR.js +1 -0
  35. package/dist/assets/companion-surface-page-BvDSOFVH.js +1 -0
  36. package/dist/assets/{composer-settings-Bs2Ux46E.js → composer-settings-DBAb6W2i.js} +1 -1
  37. package/dist/assets/{connect-page-DcyvGKph.js → connect-page-DiO1EqEC.js} +1 -1
  38. package/dist/assets/{consent-controls-BqSz1Rrx.js → consent-controls-B_zCicqo.js} +1 -1
  39. package/dist/assets/{contacts-page-route--H1bhesC.js → contacts-page-route-fUfbhwZ5.js} +1 -1
  40. package/dist/assets/{conversation-cache-C3KMXxZQ.js → conversation-cache-qk0nNm6Q.js} +1 -1
  41. package/dist/assets/{conversation-navigation-DQEOhOXf.js → conversation-navigation-B_4jZ9Z2.js} +1 -1
  42. package/dist/assets/{conversation-queries-Crrs0Ih6.js → conversation-queries-M4Inozp_.js} +1 -1
  43. package/dist/assets/{conversation-selection-BFTHfyYb.js → conversation-selection-4ubh2ui-.js} +1 -1
  44. package/dist/assets/{credential-entry-page-DNW0ZIUD.js → credential-entry-page--HYBfvoW.js} +1 -1
  45. package/dist/assets/{credentials-page-BUxLoFkv.js → credentials-page-C-e4DqWt.js} +1 -1
  46. package/dist/assets/{csv-preview-FnIpBtF1.js → csv-preview-T_KT_vef.js} +1 -1
  47. package/dist/assets/{debug-page-01b8L6vC.js → debug-page-Be5Y5TVM.js} +2 -2
  48. package/dist/assets/{deploy-dialogs-I_QAK81w.js → deploy-dialogs-CgicOESj.js} +1 -1
  49. package/dist/assets/{deploy-store-C-WH19q9.js → deploy-store-dyN183E8.js} +1 -1
  50. package/dist/assets/{desktop-voice-activity-CPOU-25i.js → desktop-voice-activity-D1BSf0I-.js} +1 -1
  51. package/dist/assets/{detail-card-BzCuPjtL.js → detail-card-Bqnvs6YE.js} +1 -1
  52. package/dist/assets/{detail-drawer-CYUmZIyK.js → detail-drawer-j2jaITAL.js} +1 -1
  53. package/dist/assets/{detail-shell-B1BZYIqh.js → detail-shell-D1UEZCzz.js} +1 -1
  54. package/dist/assets/{developer-page-DshJ0gl6.js → developer-page-DD8xa8mQ.js} +1 -1
  55. package/dist/assets/{diagnostics-BrWbafo7.js → diagnostics-CwFqcLv_.js} +1 -1
  56. package/dist/assets/{doctor-handoff-store-CX39mMuw.js → doctor-handoff-store-Cy96Na-O.js} +1 -1
  57. package/dist/assets/{document-viewer-container-Bb7omFZS.js → document-viewer-container-BMmSidmj.js} +2 -2
  58. package/dist/assets/{document-viewer-page-Cyul2rIj.js → document-viewer-page-tTTco75r.js} +1 -1
  59. package/dist/assets/{emails-page-CArz1548.js → emails-page-CJM4OS94.js} +1 -1
  60. package/dist/assets/{esm-DYyr0ITx.js → esm-BD6nxr-q.js} +2 -2
  61. package/dist/assets/{esm-DjphWBuP.js → esm-BaEdQNCe.js} +2 -2
  62. package/dist/assets/esm-CtKndoc9.js +2 -0
  63. package/dist/assets/{esm-CfdMbmKl.js → esm-DTIJZw37.js} +2 -2
  64. package/dist/assets/{esm-tSqvpvZa.js → esm-FpGTFn5W.js} +2 -2
  65. package/dist/assets/{esm-L7cqLUll.js → esm-kYXyJ2zw.js} +2 -2
  66. package/dist/assets/{esm-DbEwZ3Za.js → esm-nl105Ya0.js} +2 -2
  67. package/dist/assets/{external-anchor-DQhNmTOb.js → external-anchor-CLy6d_za.js} +1 -1
  68. package/dist/assets/feed-item-status-actions--CCeCtuw.js +1 -0
  69. package/dist/assets/file-markdown-C1rEGVrN.js +2 -0
  70. package/dist/assets/first-run-scope-DdSaiULx.js +1 -0
  71. package/dist/assets/format-usd-tespTIex.js +1 -0
  72. package/dist/assets/{funnel-events-BfR30ND5.js → funnel-events-BP3XPaB5.js} +1 -1
  73. package/dist/assets/general-page-Bi87XguF.js +1 -0
  74. package/dist/assets/{haptics-Sti0ZroX.js → haptics-D3hzTCtH.js} +2 -2
  75. package/dist/assets/{hatching-screen-DUCKM3qi.js → hatching-screen-DA0yyXD1.js} +1 -1
  76. package/dist/assets/home-page-route-BSoWksW0.js +1 -0
  77. package/dist/assets/{hosting-screen-By2Dt_ov.js → hosting-screen-cfhZ-ct7.js} +1 -1
  78. package/dist/assets/{i18n--HmJLuhM.js → i18n-C9hRT4Lf.js} +3 -3
  79. package/dist/assets/{identity-page-route-4IEB7D_s.js → identity-page-route-BjSsi8PM.js} +1 -1
  80. package/dist/assets/index-BmDctEOW.css +2 -0
  81. package/dist/assets/{index-CflMsKlP.js → index-I9kwAKzY.js} +3 -3
  82. package/dist/assets/{ingest-C3QOaKA5.js → ingest-DXklElaR.js} +1 -1
  83. package/dist/assets/{inspect-page-D3vuZY29.js → inspect-page-naqIziez.js} +3 -3
  84. package/dist/assets/{integrations-page-Ck4sUGfr.js → integrations-page-zrUmh2xn.js} +1 -1
  85. package/dist/assets/{intelligence-layout-2iu6OgCh.js → intelligence-layout-CXzIl0Vl.js} +1 -1
  86. package/dist/assets/{invalidate-memory-queries-CSQ9nfIN.js → invalidate-memory-queries-C4-KSsdB.js} +1 -1
  87. package/dist/assets/{latest-assistant-text-hKWwKxXi.js → latest-assistant-text-JCjtByys.js} +1 -1
  88. package/dist/assets/{library-detail-page-DcRn2wsJ.js → library-detail-page-CyWiXwb9.js} +1 -1
  89. package/dist/assets/{library-page-Db5Pstgx.js → library-page-CzcvMljL.js} +1 -1
  90. package/dist/assets/{local-runtime-upgrade-T5WFNI2L.js → local-runtime-upgrade-BkoG5uVr.js} +1 -1
  91. package/dist/assets/{login-flow-Bprf1KQp.js → login-flow-D6ivg6PM.js} +1 -1
  92. package/dist/assets/login-page-Dmpz0GgT.js +1 -0
  93. package/dist/assets/{logout-page-HF_SMBkj.js → logout-page-CI3LDcqG.js} +1 -1
  94. package/dist/assets/{logs-layout-CNyrG8d2.js → logs-layout-BHP-ADUq.js} +1 -1
  95. package/dist/assets/{markdown-preview-CYSaj1MV.js → markdown-preview-Dx8E021p.js} +1 -1
  96. package/dist/assets/{memory-page-route-DDdpEiCD.js → memory-page-route-qvBEERTa.js} +1 -1
  97. package/dist/assets/memory-router-playground-page-Bnxf4hzQ.js +1 -0
  98. package/dist/assets/{message-files-panel-25T5M1Ct.js → message-files-panel-ZPa7eZHc.js} +1 -1
  99. package/dist/assets/{messages-DJ6wO978.js → messages-CPTfRZA4.js} +1 -1
  100. package/dist/assets/{metric-card-Bg72JUq3.js → metric-card-bXd-f58c.js} +1 -1
  101. package/dist/assets/multi-activity-group-AECQlBbV.js +1 -0
  102. package/dist/assets/native-anchor-Bn22ZLay.js +1 -0
  103. package/dist/assets/{native-biometric-BxYhgb-X.js → native-biometric-D9IxNvJM.js} +1 -1
  104. package/dist/assets/{native-deep-link-C-s7GeV-.js → native-deep-link-IwasVyFQ.js} +2 -2
  105. package/dist/assets/{native-file-B3U837ed.js → native-file-BpFW1c_c.js} +2 -2
  106. package/dist/assets/{navigation-resolver-D4kCxpGf.js → navigation-resolver-jIQ5B6JB.js} +1 -1
  107. package/dist/assets/{not-found-DlCb1TjZ.js → not-found-ui-gcXqK.js} +1 -1
  108. package/dist/assets/{notifications-CZJragaI.js → notifications-DK6b8YVI.js} +1 -1
  109. package/dist/assets/{notifications-page-D7nqzDdY.js → notifications-page-GRXZE_lL.js} +1 -1
  110. package/dist/assets/{oauth-complete-page-4tmCqzLC.js → oauth-complete-page-7NZZRVcj.js} +1 -1
  111. package/dist/assets/{oauth-connection-utils-DmZFWfiy.js → oauth-connection-utils-19Tfw-lp.js} +1 -1
  112. package/dist/assets/{oauth-popup-complete-page-CjVEoYgl.js → oauth-popup-complete-page-Ci39YXpe.js} +1 -1
  113. package/dist/assets/{onboarding-step-layout-BfHbyjc0.js → onboarding-step-layout-2G2ptxpI.js} +1 -1
  114. package/dist/assets/open-workspace-file-CYf_Tqw3.js +2 -0
  115. package/dist/assets/{operational-status-T7FDD0t5.js → operational-status-CMN32PL8.js} +1 -1
  116. package/dist/assets/page-shell-C3ZmdIop.js +1 -0
  117. package/dist/assets/page-surface-store-DJLLsNFC.js +1 -0
  118. package/dist/assets/{pairing-page-CweLlHZS.js → pairing-page-YPN7ISIr.js} +1 -1
  119. package/dist/assets/{pdf-file-preview-6vptz6t6.js → pdf-file-preview-udA0Apx_.js} +1 -1
  120. package/dist/assets/{pdf-preview-sG04pSiE.js → pdf-preview-6Xfl1tO1.js} +2 -2
  121. package/dist/assets/{personality-page-DV3W2t42.js → personality-page-CLsRq5L2.js} +1 -1
  122. package/dist/assets/{plans-page-D-z14zHg.js → plans-page-DkVXE0Jv.js} +1 -1
  123. package/dist/assets/{platform-detection-Dt0-jSAU.js → platform-detection-zth6eCY8.js} +1 -1
  124. package/dist/assets/{platform-login-notice-jeJJGuqn.js → platform-login-notice-CvFpWLJY.js} +1 -1
  125. package/dist/assets/{platform-loopback-page-y_4YDCry.js → platform-loopback-page-B8cGk07e.js} +1 -1
  126. package/dist/assets/{preview-error-BkNW-Vj0.js → preview-error-gCViZZRw.js} +1 -1
  127. package/dist/assets/{privacy-page-BXSqDC_-.js → privacy-page-BxJ2Cuev.js} +1 -1
  128. package/dist/assets/{privacy-screen-BkGGAYzN.js → privacy-screen-DlSj_9FT.js} +1 -1
  129. package/dist/assets/{provider-callback-page-C-bl_GDk.js → provider-callback-page-BPp1TM7J.js} +1 -1
  130. package/dist/assets/{provider-signup-page-PSLa_T38.js → provider-signup-page-Cv9_b_58.js} +1 -1
  131. package/dist/assets/{provisioning-targets-QWEnNCue.js → provisioning-targets-DDUZDQ_a.js} +1 -1
  132. package/dist/assets/{push-registration-BMwgTQHf.js → push-registration-CH_t0mI8.js} +2 -2
  133. package/dist/assets/{remove-from-device-dialog-BDRSkSad.js → remove-from-device-dialog-DeJ_gAmf.js} +1 -1
  134. package/dist/assets/{research-facts-_ZlA6tzF.js → research-facts-C2cY_gU2.js} +1 -1
  135. package/dist/assets/{research-mock-page-PPKtT6UI.js → research-mock-page-CB1_bEoa.js} +1 -1
  136. package/dist/assets/research-onboarding-route-BY3X_d2-.js +50 -0
  137. package/dist/assets/{research-results-view-BFBI--6l.js → research-results-view-BcQs2Zh9.js} +1 -1
  138. package/dist/assets/{retire-confirm-dialog-DPyqO3ao.js → retire-confirm-dialog-f-A5OVYj.js} +1 -1
  139. package/dist/assets/{review-terms-screen-Cba1alNi.js → review-terms-screen-CI_29cnc.js} +1 -1
  140. package/dist/assets/routes-OwGjl0BS.js +24 -0
  141. package/dist/assets/{runtime-upgrade-banner-BrXnDFJZ.js → runtime-upgrade-banner-Cj9E7kWP.js} +2 -2
  142. package/dist/assets/{sandbox-bridge-CXqBkVsW.js → sandbox-bridge-Dj1pIOXJ.js} +1 -1
  143. package/dist/assets/{schedules-page-D81oQFHC.js → schedules-page-0V6ECw0t.js} +1 -1
  144. package/dist/assets/{section-membership-B23vBXXp.js → section-membership-vg-XaMPS.js} +1 -1
  145. package/dist/assets/{select-assistant-screen-Bpp_Fhfx.js → select-assistant-screen-BZxPQqe4.js} +1 -1
  146. package/dist/assets/{self-hosted-servers-DYKQjALI.js → self-hosted-servers-BviPyNnl.js} +1 -1
  147. package/dist/assets/settings-CEQzAg2m.js +1 -0
  148. package/dist/assets/{settings-divider-DGdHGRSV.js → settings-divider-C0NZsB-L.js} +1 -1
  149. package/dist/assets/{settings-layout-Vv6ixknD.js → settings-layout-DgNBNUT7.js} +1 -1
  150. package/dist/assets/settings-navigation-CVw10LL_.js +1 -0
  151. package/dist/assets/{share-feedback-modal-BIIdahKH.js → share-feedback-modal-PlN6X3Pm.js} +2 -2
  152. package/dist/assets/{sidebar-tree-BNzVigoN.js → sidebar-tree-Bp0eeKf2.js} +1 -1
  153. package/dist/assets/{signup-page-DwghsKON.js → signup-page-gqz5_wG1.js} +1 -1
  154. package/dist/assets/{site-favicon-D5oxJG4i.js → site-favicon-Cu07pwc9.js} +1 -1
  155. package/dist/assets/{skill-detail-page-DrVoo07c.js → skill-detail-page-c0s3w3K3.js} +1 -1
  156. package/dist/assets/{skill-detail-panel-Co6OpnMY.js → skill-detail-panel-NYXq557_.js} +1 -1
  157. package/dist/assets/{skills-CAAcLlNJ.js → skills-5MnTu98B.js} +1 -1
  158. package/dist/assets/{src-qDZBwoEm.js → src-CImIAPTd.js} +1 -1
  159. package/dist/assets/{start-screen-CO55WEqw.js → start-screen-CHO19RCi.js} +1 -1
  160. package/dist/assets/{status-badge-pill-CoGc_Kjf.js → status-badge-pill-D8m98tJa.js} +1 -1
  161. package/dist/assets/{stt-language-picker-modal-7-gnUFiL.js → stt-language-picker-modal-BXLEBM7b.js} +1 -1
  162. package/dist/assets/{subagent-detail-panel-B7yd49jl.js → subagent-detail-panel-CrbpQRzW.js} +1 -1
  163. package/dist/assets/{subagent-store-D79M-K__.js → subagent-store-DqKEBlAM.js} +1 -1
  164. package/dist/assets/{superpowers-page-B0zX5FZy.js → superpowers-page-B5WGXphq.js} +1 -1
  165. package/dist/assets/{swipe-action-reveal-Ctx7MIFN.js → swipe-action-reveal-Ai9lRgUU.js} +1 -1
  166. package/dist/assets/{system-events-page-7z3m1kM5.js → system-events-page-_aap_0av.js} +1 -1
  167. package/dist/assets/{telegram-setup-wizard-DhIkHgMe.js → telegram-setup-wizard-BENKNAuh.js} +1 -1
  168. package/dist/assets/{text-preview-DFo5f2uH.js → text-preview-DUlKYC4u.js} +1 -1
  169. package/dist/assets/{theme-stage-page-CmF6f7RN.js → theme-stage-page-CbGuxQ23.js} +1 -1
  170. package/dist/assets/{tiptap-document-editor-DDfxW_SE.js → tiptap-document-editor-0vqw7hch.js} +1 -1
  171. package/dist/assets/{tool-detail-panel-Zx64Drl4.js → tool-detail-panel-C2wUYsf2.js} +1 -1
  172. package/dist/assets/{trust-rules-api-BtUxkSk-.js → trust-rules-api-DRJ1qP-y.js} +1 -1
  173. package/dist/assets/{upgrade-cancel-page-H2SezHRI.js → upgrade-cancel-page-Dbd3VJdm.js} +1 -1
  174. package/dist/assets/{upgrade-success-page-DoM6CoFp.js → upgrade-success-page-CHbEmpjg.js} +1 -1
  175. package/dist/assets/{use-assistant-capability-CmwC8eoT.js → use-assistant-capability-C-yHcMH4.js} +1 -1
  176. package/dist/assets/{use-assistant-identity-details-DqD-wXki.js → use-assistant-identity-details-u9sG9ip2.js} +1 -1
  177. package/dist/assets/{use-attachment-preview-BfZe160h.js → use-attachment-preview-Cq_IWTdT.js} +2 -2
  178. package/dist/assets/{use-attachment-squares-jfCXyibr.js → use-attachment-squares-BKi30wmg.js} +1 -1
  179. package/dist/assets/{use-bookmarks-Dg-dtmf5.js → use-bookmarks-Bl4tx8xK.js} +1 -1
  180. package/dist/assets/{use-checkout-dismiss-refresh-lXbrGudW.js → use-checkout-dismiss-refresh-BHuxVDUc.js} +1 -1
  181. package/dist/assets/use-command-palette-sections-CvNjev8s.js +1 -0
  182. package/dist/assets/{use-edge-swipe-CJ8niuZL.js → use-edge-swipe-C4IrskOL.js} +1 -1
  183. package/dist/assets/use-edge-swipe-back-CiO9raEw.js +2 -0
  184. package/dist/assets/{use-edit-app-CAyA09nW.js → use-edit-app-ByAfCYIL.js} +1 -1
  185. package/dist/assets/{use-is-org-ready-BYJTuCXo.js → use-is-org-ready-GDBxqujc.js} +1 -1
  186. package/dist/assets/use-onboarding-login-BdVTfZ3o.js +1 -0
  187. package/dist/assets/{use-platform-assistant-id-CuqHJket.js → use-platform-assistant-id-B7TrEBmf.js} +1 -1
  188. package/dist/assets/{use-platform-gate-DJ7NtOkG.js → use-platform-gate-DG9Xg3Hs.js} +1 -1
  189. package/dist/assets/{use-return-to-short-circuit-CXFMS-0F.js → use-return-to-short-circuit-EtY8cSC7.js} +1 -1
  190. package/dist/assets/{use-side-list-room-DtmLatRX.js → use-side-list-room-CUXPQyjw.js} +1 -1
  191. package/dist/assets/{use-skill-actions-DjwFUePB.js → use-skill-actions-CdbZjq6a.js} +1 -1
  192. package/dist/assets/{use-sticky-profiles-BYBk-2VZ.js → use-sticky-profiles-vQLFyEh0.js} +1 -1
  193. package/dist/assets/{use-stt-language-selection-82DrT6kd.js → use-stt-language-selection-CK6bUfVS.js} +1 -1
  194. package/dist/assets/{use-subagent-card-data-CTkK6bHj.js → use-subagent-card-data-DlVOBxXw.js} +1 -1
  195. package/dist/assets/use-transcript-message-by-id-FmIIrRsf.js +1 -0
  196. package/dist/assets/{use-transcript-messages-BvoNGyuA.js → use-transcript-messages-Q1PBxvSF.js} +1 -1
  197. package/dist/assets/{use-voice-sample-preview-BHCiYpHq.js → use-voice-sample-preview-CZoWWEeH.js} +1 -1
  198. package/dist/assets/useTranslation-D9pPv-bA.js +1 -0
  199. package/dist/assets/{voice-page-CqgBuO-G.js → voice-page-B1mJ2hkc.js} +1 -1
  200. package/dist/assets/{voice-providers-note-DmCKsoh8.js → voice-providers-note-TDQxSwUj.js} +1 -1
  201. package/dist/assets/{web-C6ruWL7-.js → web-CxX3pST-.js} +1 -1
  202. package/dist/assets/{web-ByBZa2-p.js → web-D1mJSG8v.js} +1 -1
  203. package/dist/assets/welcome-screen-DPXQU47t.js +1 -0
  204. package/dist/assets/{workflow-detail-panel-CXQymzrA.js → workflow-detail-panel-C0kN-iH3.js} +1 -1
  205. package/dist/assets/{workflow-store-DMcem5b6.js → workflow-store-BXqyb8CL.js} +1 -1
  206. package/dist/assets/{workspace-page-CHN0AzFJ.js → workspace-page-Mj_A1eeR.js} +1 -1
  207. package/dist/assets/{workspace-tree-query-BmugmuTC.js → workspace-tree-query-Dyls8wmV.js} +1 -1
  208. package/dist/index.html +93 -93
  209. package/package.json +1 -1
  210. package/dist/assets/account-C-_tLpl9.js +0 -1
  211. package/dist/assets/api-Cet3wU2m.js +0 -1
  212. package/dist/assets/channels-page-route-BVzZL9QF.js +0 -9
  213. package/dist/assets/checkout-return-target-Bj6qL3Z7.js +0 -1
  214. package/dist/assets/command-palette-window-page-nIdxmxPV.js +0 -1
  215. package/dist/assets/companion-surface-page-BZHSeP1U.js +0 -1
  216. package/dist/assets/esm-B8RIzuiy.js +0 -2
  217. package/dist/assets/file-markdown-Br-X9E8g.js +0 -2
  218. package/dist/assets/first-run-scope-CGwas_dv.js +0 -1
  219. package/dist/assets/format-usd-BSn1PAt3.js +0 -1
  220. package/dist/assets/general-page-DqxymzlR.js +0 -1
  221. package/dist/assets/home-page-route--ZWIkqRA.js +0 -1
  222. package/dist/assets/home-tool-permission-card-BGkMa_5c.js +0 -1
  223. package/dist/assets/index-yCM21OWQ.css +0 -2
  224. package/dist/assets/login-page-DsrM-8gG.js +0 -1
  225. package/dist/assets/memory-router-playground-page-Bvv1GiG1.js +0 -1
  226. package/dist/assets/multi-activity-group-CvLkSXkq.js +0 -1
  227. package/dist/assets/native-anchor-WUfwamgX.js +0 -1
  228. package/dist/assets/native-auth-error-B4gY5JEl.js +0 -1
  229. package/dist/assets/open-workspace-file-CDO9erng.js +0 -2
  230. package/dist/assets/page-shell-3Yi5Ezsv.js +0 -1
  231. package/dist/assets/page-surface-store-d61YqYCV.js +0 -1
  232. package/dist/assets/research-onboarding-route-Cv91i-43.js +0 -50
  233. package/dist/assets/routes-Cu81Z_6p.js +0 -24
  234. package/dist/assets/settings-DWADkKSC.js +0 -1
  235. package/dist/assets/settings-navigation-Dt128ttq.js +0 -1
  236. package/dist/assets/use-command-palette-sections-D3ZIddUs.js +0 -1
  237. package/dist/assets/use-edge-swipe-back-Dl-lRTON.js +0 -2
  238. package/dist/assets/use-onboarding-login-BosEuDpc.js +0 -1
  239. package/dist/assets/use-transcript-message-by-id-DTaTEqgT.js +0 -1
  240. package/dist/assets/useTranslation-DdVCKPgw.js +0 -1
  241. package/dist/assets/welcome-screen-Cghao5xK.js +0 -1
  242. /package/dist/assets/{app-types-DhugcUAb.js → app-types-DET4dder.js} +0 -0
  243. /package/dist/assets/{archive-redirect-page-DddErONf.js → archive-redirect-page-LFqfq3Zx.js} +0 -0
  244. /package/dist/assets/{billing-redirect-page-CaXtswvd.js → billing-redirect-page-B6zuKMxb.js} +0 -0
  245. /package/dist/assets/{build.umd-Bnx74y6d.js → build.umd-CwkQd6wk.js} +0 -0
  246. /package/dist/assets/{channels-BdtsaKuZ.js → channels-CXuBInAc.js} +0 -0
  247. /package/dist/assets/{common-CYa3Lx5T.js → common-EmSgsWNa.js} +0 -0
  248. /package/dist/assets/{contacts-Adtv7fIG.js → contacts-BRU7ohw2.js} +0 -0
  249. /package/dist/assets/{credential-requests-BjLAoauv.js → credential-requests-BbBZKJHx.js} +0 -0
  250. /package/dist/assets/{danger-zone-redirect-page-C45lMfXW.js → danger-zone-redirect-page-BuIG9f9S.js} +0 -0
  251. /package/dist/assets/{definitions-BvE4YCqW.js → definitions-Co0yLSy_.js} +0 -0
  252. /package/dist/assets/{definitions-BOuhvvgh.js → definitions-Yz8Uao4u.js} +0 -0
  253. /package/dist/assets/{devices-redirect-page-CTLNcuXg.js → devices-redirect-page-BoKYF1E9.js} +0 -0
  254. /package/dist/assets/{diff-rows-CMQi83GC.js → diff-rows-BrFK496i.js} +0 -0
  255. /package/dist/assets/{emoji-catalog-data-zwouAP3d.js → emoji-catalog-data-BIIBfSqk.js} +0 -0
  256. /package/dist/assets/{environment-store-CgcCuCfv.js → environment-store-C4So_j-o.js} +0 -0
  257. /package/dist/assets/{esm-B3RQnhQB.js → esm-BJhqsukI.js} +0 -0
  258. /package/dist/assets/{esm-U4mAZE_5.js → esm-CPFvOH-c.js} +0 -0
  259. /package/dist/assets/{external-urls-B0QJBkzP.js → external-urls-Bg18AU4S.js} +0 -0
  260. /package/dist/assets/{file-editor-C2Qy2Ujg.js → file-editor-BwdObVSu.js} +0 -0
  261. /package/dist/assets/{home-DaG8KIqs.js → home-BwSxL4rM.js} +0 -0
  262. /package/dist/assets/{intelligence-B920vsi4.js → intelligence-DXpXyKbw.js} +0 -0
  263. /package/dist/assets/{keyboard-shortcuts-redirect-page-DSUfuOqd.js → keyboard-shortcuts-redirect-page-DSnux9sJ.js} +0 -0
  264. /package/dist/assets/{library-DqQriY4U.js → library-CuKVNDEp.js} +0 -0
  265. /package/dist/assets/{link-click-3KBltS8g.js → link-click-BsxbQxDe.js} +0 -0
  266. /package/dist/assets/{logs-s74ABgur.js → logs-Blq4k473.js} +0 -0
  267. /package/dist/assets/{machine-sizes-BEgYDPIN.js → machine-sizes-DzJ0TVYS.js} +0 -0
  268. /package/dist/assets/{media-preview-C0jyQw5_.js → media-preview-HgLvcAQ9.js} +0 -0
  269. /package/dist/assets/{onboarding-orcvuvpJ.js → onboarding-DK0I_g8T.js} +0 -0
  270. /package/dist/assets/{page-empty-state-BG1VeXc8.js → page-empty-state-CzHxZkBR.js} +0 -0
  271. /package/dist/assets/{password-reset-page-D4zTOGaM.js → password-reset-page-D8ONrPU-.js} +0 -0
  272. /package/dist/assets/{pdf-CjG-njep.js → pdf-UON6A_nT.js} +0 -0
  273. /package/dist/assets/{plugin-attribution-CcHpmela.js → plugin-attribution-C0u-eDRH.js} +0 -0
  274. /package/dist/assets/{plugin-detail-page-DWr7S8VR.js → plugin-detail-page--CvX0OXv.js} +0 -0
  275. /package/dist/assets/{plugins-page-BZLdfa7d.js → plugins-page-CZ16U_6n.js} +0 -0
  276. /package/dist/assets/{profile-metadata-CsakJtzD.js → profile-metadata-D9zzZn4_.js} +0 -0
  277. /package/dist/assets/{provider-key-CsMdPcM5.js → provider-key-DpdSx5gG.js} +0 -0
  278. /package/dist/assets/{radio-card-nav-D_-kt3tm.js → radio-card-nav-CrM7VJUk.js} +0 -0
  279. /package/dist/assets/{remote-web-DxCgPeJc.js → remote-web-DBCYTF2P.js} +0 -0
  280. /package/dist/assets/{schedules-D3oXqJMY.js → schedules-C3wE8OML.js} +0 -0
  281. /package/dist/assets/{schedules-rtwsTU7E.js → schedules-Co4-ymK5.js} +0 -0
  282. /package/dist/assets/{security-redirect-page-DbXxE5Ym.js → security-redirect-page-D6x3MANY.js} +0 -0
  283. /package/dist/assets/{setting-row-C0mDhzZy.js → setting-row-BvQpFvtr.js} +0 -0
  284. /package/dist/assets/{signup-shell-DnLhiMGV.js → signup-shell-DW976E_0.js} +0 -0
  285. /package/dist/assets/{skill-icon-sj-wJGzd.js → skill-icon-yVnZg-J1.js} +0 -0
  286. /package/dist/assets/{skills-page-yj4WNgG3.js → skills-page-B_VTCiN2.js} +0 -0
  287. /package/dist/assets/{sounds-page-Co2G6n-5.js → sounds-page-BdSO1UIf.js} +0 -0
  288. /package/dist/assets/{system-events-redirect-page-Dbxsscgn.js → system-events-redirect-page-DbyqOqe_.js} +0 -0
  289. /package/dist/assets/{terminal-og9TTXfZ.js → terminal-_tzbWcM4.js} +0 -0
  290. /package/dist/assets/{usage-redirect-page-NZfMbBv6.js → usage-redirect-page-DyTnwv4x.js} +0 -0
  291. /package/dist/assets/{use-skill-detail-files-DNaNHaP0.js → use-skill-detail-files-Bg4G44J3.js} +0 -0
  292. /package/dist/assets/{use-supports-credentials-settings-BCD9S39r.js → use-supports-credentials-settings-Cj-Py42f.js} +0 -0
  293. /package/dist/assets/{use-truncated-blob-text-CHF4X4vL.js → use-truncated-blob-text-BYAPiP8I.js} +0 -0
  294. /package/dist/assets/{weather-forecast-display-8i3-jfUZ.js → weather-forecast-display-D3IBgGHv.js} +0 -0
  295. /package/dist/assets/{web-DXzSQlx4.js → web-B60tNeyj.js} +0 -0
  296. /package/dist/assets/{web-Crg_ekZH.js → web-BSizndvP.js} +0 -0
  297. /package/dist/assets/{web-to2ecOqW.js → web-CXad-fWd.js} +0 -0
  298. /package/dist/assets/{web-xhYMQG7j.js → web-Cpz2h_dP.js} +0 -0
  299. /package/dist/assets/{web-eg_n1fSm.js → web-Cr238HhI.js} +0 -0
  300. /package/dist/assets/{web-B5o07_c8.js → web-Nd-L7NoL.js} +0 -0
  301. /package/dist/assets/{web-Ctf28EEk.js → web-W2HEHjFb.js} +0 -0
  302. /package/dist/assets/{workspace-BBqltPoi.js → workspace-BFa6JWKe.js} +0 -0
  303. /package/dist/assets/{xterm-DJn4nvHR.js → xterm-DFQikp5h.js} +0 -0
  304. /package/dist/assets/{xterm-addon-fit-DEYHenuA.js → xterm-addon-fit-B04vX_IV.js} +0 -0
@@ -0,0 +1 @@
1
+ var e={chooseProfilePlaceholder:`Elegir perfil…`,description:`El perfil que tu asistente consulta para una segunda opinión cuando quiere revisar un plan o su propio trabajo.`,title:`Asesor`},t={defaultEntryMeta:`Predeterminado`},n={successToast:`¡Pago recibido! Tu saldo de créditos se actualizará en breve.`,topUpCancelToast:`Se canceló el pago. No se añadieron créditos.`,upgradeCancelToast:`Mejora cancelada. No hay cambios en tu plan.`},r={affectedSummary:`{count, plural, one {# acción usa actualmente {profile}} other {# acciones usan actualmente {profile}}}`,applyTo:`{count, plural, one {Aplicar a # acción} other {Aplicar a # acciones}}`,cancel:`Cancelar`,changeToLabel:`Cambiar a`,chooseActions:`Elige qué acciones actualizar.`,clearAll:`Borrar todo`,currentlyUsingLabel:`Usando actualmente`,intro:`Actualiza las acciones que actualmente usan un perfil. El resultado se guarda como anulaciones individuales.`,noticeBody:`Cambia las acciones seleccionadas que usan {sourceLabel} hoy. No crea una regla continua entre perfiles.`,noticeTitle:`Esto ocurre una sola vez.`,selectAll:`Seleccionar todo`,successToast:`Se actualizaron {count, plural, one {# acción} other {# acciones}} a "{targetLabel}".`,targetPlaceholder:`Selecciona un perfil…`,title:`Cambiar anulaciones de acciones`,updateFailedToast:`No se pudieron actualizar las anulaciones. Inténtalo de nuevo.`,viaDefault:`Predeterminado`,viaOverride:`Anulación`,willChange:`{count, plural, one {Cambiará # acción} other {Cambiarán # acciones}}`},i={defaultProfileSuffix:`· Predeterminado: {label}`,modelLabel:`Modelo`,overrideAriaLabel:`Anular {displayName}`,pickModelError:`Elige un modelo`,providerLabel:`Proveedor`,unavailableOption:`{name} (no disponible)`},a={completeFailed:`No se pudo completar el inicio de sesión. Inténtalo de nuevo.`,completeSignIn:`Completar inicio de sesión`,completingSignIn:`Completando inicio de sesión...`,connected:`Suscripción a ChatGPT conectada correctamente.`,intro:`Conecta tu suscripción a ChatGPT para usar modelos de OpenAI sin una clave de API.`,invalidUrl:`URL no válida. Pega la URL completa de la barra de direcciones.`,missingCode:`A la URL le falta el código de autorización. Asegúrate de haber copiado la URL completa.`,missingState:`A la URL le falta el parámetro state. Asegúrate de haber copiado la URL completa.`,pasteUrlError:`Pega la URL de la página de error.`,signInButton:`Iniciar sesión con ChatGPT`,startFailed:`No se pudo iniciar el inicio de sesión con ChatGPT. Inténtalo de nuevo.`,startingSignIn:`Iniciando sesión...`,step1Idle:`1. Haz clic en "Iniciar sesión con ChatGPT" abajo para abrir una ventana emergente`,step1PasteUrl:`1. Haz clic en "Iniciar sesión con ChatGPT" para abrir una ventana emergente`,step2:`2. Inicia sesión; llegarás a una página de error, y eso es normal`,step3:`3. Copia la URL completa de la barra de direcciones de esa página y pégala abajo`,tryAgain:`Intentar de nuevo`,urlPlaceholder:`Pega aquí la URL de devolución de llamada...`},o={body:`Reclama un crédito único de {amount} y lo añadiremos directamente al saldo de tu cuenta. No se requiere ningún pago.`,claim:`Reclamar {amount} en créditos`,decline:`No, gracias`,errorToast:`No se pudieron añadir los créditos. Inténtalo de nuevo.`,grantedToast:`Se añadieron {amount} en créditos a tu cuenta.`,title:`Aquí tienes {amount} de nuestra parte`,unavailableToast:`Esta oferta ya no está disponible.`},s={addressLabel:`Dirección`,checkingSubscription:`Comprobando suscripción…`,confirm:`Confirmar`,create:`Crear`,createEmailFailedFallback:`No se pudo crear la dirección de correo.`,creating:`Creando…`,domainLabel:`Dominio`,domainRegisteredToast:`Dominio {domain} registrado.`,domainReleaseFailedToast:`No se pudo liberar el dominio.`,domainReleasedToast:`Dominio liberado.`,emailAddressLabel:`Dirección de correo`,emailCreatedToast:`Dirección de correo creada.`,emailRemoveFailedToast:`No se pudo eliminar la dirección de correo.`,emailRemovedToast:`Dirección de correo eliminada.`,emailUsernameAriaLabel:`Nombre de usuario del correo`,emailUsernamePlaceholder:`hola`,enterSubdomainError:`Introduce un subdominio.`,enterUsernameError:`Introduce un nombre de usuario de correo.`,register:`Registrar`,registerDomainFailedFallback:`No se pudo registrar el dominio.`,registering:`Registrando…`,releaseConfirm:`Liberar`,releaseDomainAriaLabel:`Liberar dominio`,releaseDomainConfirmMessage:`¿Seguro que quieres liberar <code>{domain}</code>? El subdominio quedará disponible para que otros lo reclamen.`,releaseDomainTitle:`Liberar dominio`,removeAddressFirstToast:`Elimina primero la dirección de correo.`,removeConfirm:`Eliminar`,removeEmailAriaLabel:`Eliminar dirección de correo`,removeEmailConfirmMessage:`¿Seguro que quieres eliminar <code>{address}</code>? Tu asistente ya no podrá enviar ni recibir correo en esta dirección.`,removeEmailTitle:`Eliminar dirección de correo`,retry:`Reintentar`,setSubdomainConfirmMessage:`<code>{subdomain}</code> también será el identificador público de tu asistente. No podrás cambiarlo una vez establecido.`,setSubdomainTitle:`Establecer subdominio`,subdomainExamplePlaceholder:`mi-asistente`,subdomainFallback:`subdominio`,subdomainHint:`Cada asistente tiene su propio subdominio. Solo letras minúsculas, números y guiones.`,subdomainLabel:`Subdominio`,subscriptionWarningBody:`No pudimos contactar con el servicio de facturación. El formulario siguiente asume que el correo gestionado está habilitado para tu organización. Si no lo está, registrar un dominio fallará.`,subscriptionWarningTitle:`No se pudo verificar el estado de la suscripción`,upgradeButton:`Mejorar plan`,upgradeNoticeBody:`Mejora a un plan que incluya una dirección de correo para tu asistente. No hace falta configurar un proveedor.`,upgradeNoticeTitle:`Dale a tu asistente su propia dirección de correo`,usageSummary:`{sent} / {limit} enviados hoy · {received} recibidos`},c={apiKeyConfigured:`Clave API de {providerName} configurada. Para reconfigurar, ejecuta la habilidad <code>{setupSkill}</code>.`,connecting:`Conectando con la plataforma Vellum…`,openProvider:`Abrir {providerName}`,platformLoginNotice:`Inicia sesión en la plataforma Vellum para administrar la configuración de correo.`,providerLabel:`Proveedor`,saveSuccessToast:`Configuración de correo guardada.`,setupInstructions:`Configura {providerName} mediante la CLI del asistente: pídele al asistente que ejecute la habilidad <code>{setupSkill}</code>. Te guiará para guardar la clave API, detectar el dominio y (opcionalmente) configurar un webhook entrante.`,subtitle:`Configura cómo tu asistente envía y recibe correo`,title:`Correo`},l={activeModelLabel:`Modelo activo`,apiKeyLabel:`Clave de API`,configUpdateFailedToast:`No se pudo actualizar la configuración del asistente. Inténtalo de nuevo.`,geminiApiKeyPlaceholder:`Introduce tu clave de API de Gemini`,localPreferencesFailedToast:`Guardado, pero no se pudieron escribir las preferencias locales.`,modelAriaLabel:`Modelo de generación de imágenes`,modelUpdateFailedToast:`No se pudo actualizar el modelo de generación de imágenes. Inténtalo de nuevo.`,openaiApiKeyPlaceholder:`Introduce tu clave de API de OpenAI`,providerAriaLabel:`Proveedor de generación de imágenes`,providerLabel:`Proveedor`,savedToast:`Configuración de generación de imágenes guardada.`,subtitle:`Configura qué modelo usa tu asistente para generar imágenes`,title:`Generación de imágenes`,vellumNote:`La generación de imágenes se ejecuta a través de tu cuenta de Vellum.`},u={filterAriaLabel:`Filtrar integraciones`,filterAll:`Todas`,filterEnabled:`Habilitadas`,filterNotEnabled:`No habilitadas`},d={defaultProviderUnavailable:`Tu proveedor predeterminado no está disponible.`,manage:`Administrar`,overridesTitle:`Anulaciones`,subtitle:`Los perfiles eligen qué modelo responde. Los proveedores dan acceso a él`,title:`Modelo de lenguaje`},f={actionOverridesTitle:`Anulaciones de acciones`,cancel:`Cancelar`,clauseActionOverrides:`lo usa {count, plural, one {# anulación de acción} other {# anulaciones de acciones}}`,clauseDefaultProfile:`es tu perfil predeterminado`,clauseRunsBoth:`ejecuta {schedules, plural, one {# programación} other {# programaciones}} y {reminders, plural, one {# recordatorio} other {# recordatorios}}`,clauseRunsReminders:`ejecuta {count, plural, one {# recordatorio} other {# recordatorios}}`,clauseRunsSchedules:`ejecuta {count, plural, one {# programación} other {# programaciones}}`,disabledTargetTooltip:`Habilita este perfil para mover programaciones a él.`,moreSchedules:`y {count} más`,reassignAndDelete:`Reasignar y eliminar`,replacementLabel:`Perfil de reemplazo`,replacementPlaceholder:`Selecciona un reemplazo…`,saving:`Guardando…`,scheduleLookupFailed:`No pudimos comprobar qué programaciones usan este perfil. Cualquier programación fijada a él también se moverá al reemplazo.`,schedulesTitle:`Programaciones`,summaryNoReferences:`Elige un perfil de reemplazo para "{display}". Todo lo que aún apunte a él se moverá allí antes de eliminarlo.`,summaryOneClause:`"{display}" {clause1}. Elige un reemplazo abajo y esas referencias se moverán a él; después se eliminará "{display}".`,summaryThreeClauses:`"{display}" {clause1}, {clause2} y {clause3}. Elige un reemplazo abajo y esas referencias se moverán a él; después se eliminará "{display}".`,summaryTwoClauses:`"{display}" {clause1} y {clause2}. Elige un reemplazo abajo y esas referencias se moverán a él; después se eliminará "{display}".`,title:`Elige un perfil de reemplazo`},p={emptySearch:`Ninguna acción coincide con tu búsqueda.`},m={advisorSection:`Asesor`,bulkChange:`Cambio masivo`,bulkChangeNoCandidatesTitle:`Ninguna acción usa actualmente un perfil`,bulkChangeUnsavedTitle:`Guarda o restablece tus cambios primero`,customProfileOption:`Personalizado`,description:`Personaliza qué perfil de modelo deben usar acciones concretas. Usa tu perfil predeterminado si no hay anulación.`,loadErrorHint:`Asegúrate de que tu asistente esté en ejecución`,loadErrorTitle:`No se pudieron cargar las acciones`,otherDomain:`Otros`,overridesResetToast:`Anulaciones restablecidas.`,overridesSavedToast:`Anulaciones guardadas.`,resetConfirmMessage:`Todas las anulaciones de acciones se restablecerán y seguirán su valor predeterminado. Esto no se puede deshacer.`,resetFailedToast:`No se pudieron restablecer las anulaciones. Inténtalo de nuevo.`,resetToDefaults:`Restablecer valores predeterminados`,retry:`Reintentar`,save:`Guardar`,saveFailedToast:`No se pudieron guardar las anulaciones. Inténtalo de nuevo.`,searchPlaceholder:`Buscar acciones…`,title:`Anulaciones de acciones`},h={approveButton:`Aprobar`,denyButton:`Denegar`,instruction:`Un dispositivo está pidiendo usar este asistente. Aprueba una solicitud solo después de confirmar que su código coincide con el que muestra el dispositivo solicitante.`,requestedMeta:`Solicitado {when} desde {ip}`,requestedMetaHost:`Solicitado {when} desde este equipo`,title:`Solicitudes de vinculación`},g={contextWindowLabel:`Ventana de contexto`,defaultValueLabel:`Predeterminado · {value}`,effortLabel:`Esfuerzo`,effortSegmentDefault:`predeterminado`,enableExtendedThinkingLabel:`Habilitar pensamiento extendido`,maxOutputTokensLabel:`Máximo de tokens de salida`,reset:`Restablecer`,snapshotsHint:`Los campos que dejes en su valor predeterminado se guardan con los valores mostrados y no cambiarán si los valores predeterminados del asistente cambian más adelante.`,speedLabel:`Velocidad`,streamThinkingTokensLabel:`Transmitir tokens de pensamiento`,temperatureLabel:`Temperatura`,thinkingLevelInheritHint:`(predeterminado = heredar)`,thinkingLevelLabel:`Nivel de pensamiento`,tokensAriaLabel:`{label} (tokens)`,topPLabel:`Top P`,verbosityLabel:`Verbosidad`},_={createProfile:`Crear perfil`,defaultTitle:`Perfil`,delete:`Eliminar`,deleting:`Eliminando…`,managedTag:`Administrado por Vellum`,newProfileTitle:`Perfil nuevo`,save:`Guardar`,saveAsNew:`Guardar como nuevo`,saveChanges:`Guardar cambios`,saving:`Guardando…`},v={subscriptionSteeringHint:`Tu suscripción a ChatGPT está disponible como el proveedor ChatGPT.`},y={activeLabel:`Activo`,addApiKey:`Añadir clave API`,advanced:`Avanzado`,createNewProvider:`+ Crear proveedor nuevo`,descriptionLabel:`Descripción <optional>(opcional)</optional>`,descriptionPlaceholder:`Describe cuándo usar este perfil`,displayNameLabel:`Nombre para mostrar`,displayNamePlaceholder:`p. ej., Rápido y económico`,keyLabel:`Clave`,keyPlaceholder:`p. ej., rapido-economico`,nameLabel:`Nombre`,newProviderNote:`La nueva conexión de proveedor aparecerá en la sección Proveedores.`,providerLabel:`Proveedor`,selectProviderPlaceholder:`Selecciona un proveedor…`,setUp:`Configurar`},b={cancel:`Cancelar`,close:`Cerrar`,editProfileTitle:`Editar perfil`,newProfileTitle:`Nuevo perfil`,platformTag:`Plataforma`,profileFallbackTitle:`Perfil`,save:`Guardar`,saveAsNew:`Guardar como nuevo`,saving:`Guardando…`},x={chooseFromList:`Elegir de la lista`,connectionNotFound:`Este perfil hacía referencia a una credencial que ya no existe. Al guardar, se restablecerá para usar la clave disponible del proveedor.`,customModelAriaLabel:`ID de modelo personalizado`,customModelPlaceholder:`proveedor/id-modelo`,enterCustomModelIdHint:`Introduce el identificador exacto del modelo que espera tu proveedor. Se envía a la conexión tal cual.`,enterCustomModelIdOption:`Introduce un ID de modelo personalizado…`,modelAriaLabel:`Modelo`,modelEmptyConfigureConnectionHint:`No hay modelos disponibles. Configura modelos en la conexión del proveedor primero.`,modelEmptyConfigureConnectionPlaceholder:`Configura modelos en la conexión`,modelEmptyNoProviderPlaceholder:`Selecciona un proveedor primero`,modelEmptyUnknownHint:`No hay modelos disponibles para este proveedor en esta versión de la app. Actualiza la app o introduce un ID de modelo personalizado.`,modelEmptyUnknownPlaceholder:`No hay modelos disponibles`,modelLabel:`Modelo`,noProviderConnectionsHint:`No hay conexiones de proveedor. Abre Proveedores para añadir una.`,providerLabel:`Proveedor`,providerNotFoundSuffix:`(no encontrado)`,selectModelError:`Selecciona un modelo.`,selectModelPlaceholder:`Selecciona un modelo`,selectProviderPlaceholder:`Selecciona un proveedor…`},S={actionsAriaLabel:`Acciones para {displayName}`,defaultTag:`Predeterminado`,delete:`Eliminar`,disable:`Desactivar`,disabledTag:`Desactivado`,edit:`Editar`,enable:`Activar`,makeDefault:`Hacer predeterminado`,managedByVellum:`Gestionado por Vellum`,openProfileAriaLabel:`Abrir perfil {displayName}`,providerUnavailableDefault:`El proveedor de este perfil no está disponible.`,providerUnavailableFixable:`{message} Haz clic para corregirlo.`,view:`Ver`},C={createProfile:`Crear perfil`,emptyState:`Aún no hay perfiles. Crea uno para empezar.`,loading:`Cargando perfiles…`,title:`Perfiles`},w={add:`Añadir`,addNamed:`Añadir {name}`,addProviderDescription:`Elige un proveedor y pega su clave API.`,addProviderTitle:`Añadir proveedor`,advanced:`Avanzado`,apiKeyPlaceholder:`Introduce tu clave API`,baseUrlLabel:`URL base`,baseUrlPlaceholder:`https://api.x.ai/v1`,cancel:`Cancelar`,customProviderHint:`Los proveedores personalizados se conectan a cualquier endpoint que ofrezca la API compatible con OpenAI: xAI, Groq, LM Studio, vLLM y similares.`,customProviderOption:`Proveedor personalizado`,displayNameLabel:`Nombre para mostrar <optional>(opcional)</optional>`,displayNamePlaceholder:`p. ej., Mi clave de Anthropic`,emptyServerResponse:`El servidor devolvió una respuesta vacía. Inténtalo de nuevo.`,enterApiKeyOrCredential:`Introduce una clave API o selecciona una credencial existente.`,failedSaveApiKey:`No se pudo guardar la clave API. Inténtalo de nuevo.`,failedSaveProvider:`No se pudo guardar el proveedor. Inténtalo de nuevo.`,localEndpointHint:`Deja la clave vacía para endpoints locales: se conectan sin clave.`,modelsHint:`Identificadores de modelo separados por comas expuestos por tu endpoint.`,modelsLabel:`Modelos`,modelsPlaceholder:`modelo-1, modelo-2`,nameLabel:`Nombre`,namePlaceholder:`xAI`,providerAriaLabel:`Proveedor`,providerConnectedToast:`Proveedor conectado`,providerLabel:`Proveedor`,saving:`Guardando…`,useChatgptSignIn:`Usa el botón "Iniciar sesión con ChatGPT" para conectar tu suscripción.`},T={addProviderTitle:`Añadir proveedor`},E={advanced:`Avanzado`,apiKeyLabel:`Clave de API`,cancel:`Cancelar`,credentialReferenceAriaLabel:`Referencia de credencial`,credentialReferenceLabel:`Referencia de credencial`,credentialReferenceSuffix:`· Referencia de credencial`,loading:`Cargando…`,newCredential:`+ Nueva credencial`,newCredentialNameLabel:`Nombre de la nueva credencial`,newCredentialPlaceholder:`p. ej. clave-equipo`,use:`Usar`},D={apiKeyPlaceholder:`Introduce tu clave API`,baseUrlLabel:`URL base`,baseUrlPlaceholder:`https://api.example.com/v1`,cancel:`Cancelar`,displayNameLabel:`Nombre para mostrar <optional>(opcional)</optional>`,displayNamePlaceholder:`p. ej., Mi clave de Anthropic`,editProviderSettingsFallback:`Edita la configuración del proveedor.`,editProviderTitle:`Editar proveedor`,editingConnection:`Editando {name}.`,emptyServerResponse:`El servidor devolvió una respuesta vacía. Inténtalo de nuevo.`,failedSaveApiKey:`No se pudo guardar la clave API. Inténtalo de nuevo.`,failedSaveProvider:`No se pudo guardar el proveedor. Inténtalo de nuevo.`,modelsHint:`Identificadores de modelo separados por comas expuestos por tu endpoint.`,modelsLabel:`Modelos`,modelsPlaceholder:`modelo-1, modelo-2`,nothingToEdit:`No hay nada que editar. Cierra e inténtalo de nuevo.`,saveChanges:`Guardar cambios`,saving:`Guardando…`},O={actionsAriaLabel:`Acciones para {displayName}`,customTag:`Personalizado`,customTagTitle:`Un proveedor que creaste, servido por un endpoint compatible con OpenAI.`,defaultTag:`Predeterminado`,defaultTagTitle:`Los perfiles integrados (Balanced, Quality, Cost, Speed) usan este proveedor.`,delete:`Eliminar`,edit:`Editar`,localTag:`Local`,localTagTitle:`Ejecuta modelos en esta máquina.`,managedTag:`Administrado`,managedTagTitle:`Se ejecuta con las credenciales administradas de Vellum.`,openProviderAriaLabel:`Abrir proveedor {displayName}`,setAsDefault:`Establecer como predeterminado`},k={addProvider:`Añadir proveedor`,empty:`Aún no hay proveedores. Añade uno para empezar.`,loadError:`No se pudieron cargar los proveedores. Inténtalo de nuevo.`,title:`Proveedores`},A={checkingDomain:`Comprobando dominio…`,domainVerified:`Dominio verificado`,failedTitle:`La verificación del dominio falló. Es posible que los registros DNS no se hayan propagado correctamente. Puedes intentar liberar y volver a registrar el dominio.`,managedLabel:`Administrado`,managedServicesBanner:`Los servicios administrados se miden y se deducen del saldo de tu cuenta de Vellum. <link>Ver precios</link>`,modeToggleAriaLabel:`Modo de servicio`,unknownStatus:`Estado desconocido`,unknownStatusTitle:`No se pudo obtener el estado de verificación del dominio.`,verificationFailed:`Verificación fallida`,verifiedTitle:`Los registros DNS se han verificado. Tu dominio está listo para enviar y recibir correo.`,verifyingDomain:`Verificando dominio…`,verifyingTitle:`Los registros DNS se han aprovisionado. Esperando a que el proveedor de correo los verifique; esto suele tardar unos minutos.`,yourOwnLabel:`Propio`},j={subtitle:`Configura cómo tu asistente transcribe el habla`,title:`Voz a texto`},M={subtitle:`Configura cómo habla tu asistente`,title:`Texto a voz`},N={assistantNotReadyToast:`El asistente no está listo. Inténtalo de nuevo.`,saveApiKeyFailedToast:`No se pudo guardar la clave de API de {providerName}. Inténtalo de nuevo.`},P={actionErrorFallback:`Algo salió mal. Inténtalo de nuevo.`,denyAlreadyApproved:`Esta solicitud ya se había aprobado en otro lugar, así que la denegación no tuvo efecto y el dispositivo ya está vinculado.`,pollErrorFallback:`Algo salió mal al comprobar las solicitudes de vinculación.`},F={createdToast:`Perfil "{name}" creado`},I={deleteFailedToast:`No se pudo eliminar el proveedor. Inténtalo de nuevo.`,deleteInUseToast:`Este proveedor está en uso en un perfil o como proveedor predeterminado. Actualiza esas configuraciones antes de eliminarlo.`,setDefaultFailedToast:`No se pudo establecer el proveedor predeterminado. Inténtalo de nuevo.`},L={apiKeyLabel:`Clave de API`,apiKeyPlaceholder:`Introduce tu clave de API`,configUpdateFailedToast:`No se pudo actualizar la configuración del asistente. Inténtalo de nuevo.`,localPreferencesFailedToast:`Guardado, pero no se pudieron escribir las preferencias locales.`,providerLabel:`Proveedor`,savedToast:`Configuración de obtención web guardada.`,subtitle:`Configura cómo tu asistente lee páginas web individuales`,title:`Obtención web`},R={apiKeyLabel:`Clave de API`,apiKeyPlaceholder:`Introduce tu clave de API`,configUpdateFailedToast:`No se pudo actualizar la configuración del asistente. Inténtalo de nuevo.`,localPreferencesFailedToast:`Guardado, pero no se pudieron escribir las preferencias locales.`,providerAriaLabel:`Proveedor de búsqueda web`,providerLabel:`Proveedor`,savedToast:`Configuración de búsqueda web guardada.`,subtitle:`Configura cómo tu asistente debe buscar en la web`,title:`Búsqueda web`,vellumNote:`La búsqueda se ejecuta a través de tu cuenta de Vellum.`},z={advisorProfileRow:e,aiProviderPicker:t,billingStatusHandler:n,bulkOverrideSwapModal:r,callSiteOverridesRow:i,chatgptOauthSection:a,checkoutBonusModal:o,emailManagedContent:s,emailServiceCard:c,imageGenerationCard:l,integrationsPage:u,languageModelCard:d,manageProfilesBlockedDeleteModal:f,overridesCallSiteList:p,overridesDetailPanel:m,pendingPairingRequests:h,profileAdvancedParams:g,profileDetailPanel:_,profileEditor:v,profileEditorFields:y,profileEditorModal:b,profileEditorProviderSection:x,profileRow:S,profilesSection:C,providerCreateForm:w,providerDetailPanel:T,providerEditorApiKeySection:E,providerEditorContent:D,providerRow:O,providersSection:k,sharedUi:A,speechToTextCard:j,textToSpeechCard:M,useDaemonConfig:N,usePendingPairingRequests:P,useProfileSave:F,useProviderActions:I,webFetchCard:L,webSearchCard:R};export{e as advisorProfileRow,t as aiProviderPicker,n as billingStatusHandler,r as bulkOverrideSwapModal,i as callSiteOverridesRow,a as chatgptOauthSection,o as checkoutBonusModal,z as default,s as emailManagedContent,c as emailServiceCard,l as imageGenerationCard,u as integrationsPage,d as languageModelCard,f as manageProfilesBlockedDeleteModal,p as overridesCallSiteList,m as overridesDetailPanel,h as pendingPairingRequests,g as profileAdvancedParams,_ as profileDetailPanel,v as profileEditor,y as profileEditorFields,b as profileEditorModal,x as profileEditorProviderSection,S as profileRow,C as profilesSection,w as providerCreateForm,T as providerDetailPanel,E as providerEditorApiKeySection,D as providerEditorContent,O as providerRow,k as providersSection,A as sharedUi,j as speechToTextCard,M as textToSpeechCard,N as useDaemonConfig,P as usePendingPairingRequests,F as useProfileSave,I as useProviderActions,L as webFetchCard,R as webSearchCard};
@@ -1 +1 @@
1
- import{t as e}from"./jsx-runtime-BJ8jcmzB.js";import{t}from"./cn-Cf8SmgbR.js";import"./src-qDZBwoEm.js";var n=e();function r({className:e}){return(0,n.jsx)(`div`,{role:`presentation`,className:t(`h-px w-full bg-[var(--border-base)]`,e)})}export{r as t};
1
+ import{t as e}from"./jsx-runtime-BJ8jcmzB.js";import{t}from"./cn-Cf8SmgbR.js";import"./src-CImIAPTd.js";var n=e();function r({className:e}){return(0,n.jsx)(`div`,{role:`presentation`,className:t(`h-px w-full bg-[var(--border-base)]`,e)})}export{r as t};
@@ -1 +1 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{d as n,r,u as i}from"./chunk-5KNZJZUH-BUqIilZr.js";import{t as a}from"./jsx-runtime-BJ8jcmzB.js";import{t as o}from"./use-supports-bookmarks-B4cgbKXV.js";import{t as s}from"./log-in-BsEhSW6v.js";import{t as c}from"./log-out-Dvz6dWwJ.js";import{r as l}from"./resolved-assistants-store-BNadgXqb.js";import{i as u}from"./auth-store-DDMY1UvK.js";import{d}from"./routes-B7wRw3UT.js";import{p as f}from"./platform-detection-Dt0-jSAU.js";import{i as p}from"./use-platform-gate-DJ7NtOkG.js";import{r as m,t as h}from"./settings-navigation-Dt128ttq.js";import{t as g}from"./use-onboarding-login-BosEuDpc.js";import{t as _}from"./assistant-feature-flag-store-CNWz-RMv.js";import{n as v,t as y}from"./sidebar-tree-BNzVigoN.js";import{t as b}from"./use-supports-credentials-settings-BCD9S39r.js";var x=e(t(),1),S=a();function C(){let e=_.use.settingsDeveloperNav(),t=f(),a=l.use.activeAssistantId(),C=o(a),w=b(a),T=p()===`full`?`Billing & Usage`:`Usage`,{pathname:E}=i(),D=n(),O=u(),{login:k}=g(),A=(0,x.useMemo)(()=>h.filter(e=>!(e.id===`notifications`&&!t||e.id===`bookmarks`&&!C||e.id===`credentials`&&!w||e.id===`developer`)).map(e=>e.id===`billing`?{...e,label:T}:e),[t,C,w,T]),j=(0,x.useMemo)(()=>{let t=[];return e&&t.push(...h.filter(e=>e.id===`developer`)),t.push(O?{id:`logout`,label:`Log Out`,icon:c,onSelect:()=>void m(D)}:{id:`login`,label:`Log In`,icon:s,onSelect:()=>void k()}),t},[e,O,D,k]),M=(0,x.useMemo)(()=>{if(E===d.settings.root)return`Settings`;let e=h.find(e=>E===e.href||E.startsWith(e.href+`/`));return e?e.id===`billing`?T:e.label:`Settings`},[E,T]);return(0,S.jsx)(v,{backHref:d.assistant,sidebar:(0,S.jsx)(y,{items:A,bottomItems:j,indexPath:d.settings.root}),title:M,children:(0,S.jsx)(r,{})})}export{C as SettingsLayout};
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{d as n,r,u as i}from"./chunk-5KNZJZUH-BUqIilZr.js";import{t as a}from"./jsx-runtime-BJ8jcmzB.js";import{t as o}from"./use-supports-bookmarks-B4cgbKXV.js";import{t as s}from"./log-in-BsEhSW6v.js";import{t as c}from"./log-out-Dvz6dWwJ.js";import{r as l}from"./resolved-assistants-store-BNadgXqb.js";import{i as u}from"./auth-store-CVtcHK0b.js";import{d}from"./routes-B7wRw3UT.js";import{p as f}from"./platform-detection-zth6eCY8.js";import{i as p}from"./use-platform-gate-DG9Xg3Hs.js";import{r as m,t as h}from"./settings-navigation-CVw10LL_.js";import{t as g}from"./use-onboarding-login-BdVTfZ3o.js";import{t as _}from"./assistant-feature-flag-store-CNWz-RMv.js";import{n as v,t as y}from"./sidebar-tree-Bp0eeKf2.js";import{t as b}from"./use-supports-credentials-settings-Cj-Py42f.js";var x=e(t(),1),S=a();function C(){let e=_.use.settingsDeveloperNav(),t=f(),a=l.use.activeAssistantId(),C=o(a),w=b(a),T=p()===`full`?`Billing & Usage`:`Usage`,{pathname:E}=i(),D=n(),O=u(),{login:k}=g(),A=(0,x.useMemo)(()=>h.filter(e=>!(e.id===`notifications`&&!t||e.id===`bookmarks`&&!C||e.id===`credentials`&&!w||e.id===`developer`)).map(e=>e.id===`billing`?{...e,label:T}:e),[t,C,w,T]),j=(0,x.useMemo)(()=>{let t=[];return e&&t.push(...h.filter(e=>e.id===`developer`)),t.push(O?{id:`logout`,label:`Log Out`,icon:c,onSelect:()=>void m(D)}:{id:`login`,label:`Log In`,icon:s,onSelect:()=>void k()}),t},[e,O,D,k]),M=(0,x.useMemo)(()=>{if(E===d.settings.root)return`Settings`;let e=h.find(e=>E===e.href||E.startsWith(e.href+`/`));return e?e.id===`billing`?T:e.label:`Settings`},[E,T]);return(0,S.jsx)(v,{backHref:d.assistant,sidebar:(0,S.jsx)(y,{items:A,bottomItems:j,indexPath:d.settings.root}),title:M,children:(0,S.jsx)(r,{})})}export{C as SettingsLayout};
@@ -0,0 +1 @@
1
+ import{t as e}from"./bell-CHRdx4mp.js";import{n as t}from"./use-supports-bookmarks-B4cgbKXV.js";import{t as n}from"./bug-DSXaice2.js";import{t as r}from"./chart-column-Bd2tG_o1.js";import{t as i}from"./code-u4Wi5zSA.js";import{t as a}from"./cpu-BG0rQrMj.js";import{t as o}from"./key-round-C51ZTEMu.js";import{t as s}from"./mic-yJxjqdDR.js";import{t as c}from"./puzzle-DHy-ePUL.js";import{t as l}from"./shield-check-B-3lr0Uj.js";import{t as u}from"./sliders-horizontal-CQIT2VGH.js";import{t as d}from"./users-BHqL5Ion.js";import{t as f}from"./volume-2-C9nj0NKL.js";import{_ as p,n as m,v as h}from"./local-mode-BNr2MrWI.js";import{t as g}from"./is-electron-wgAC5Mzb.js";import{n as _}from"./auth-store-CVtcHK0b.js";import{g as v}from"./native-biometric-D9IxNvJM.js";import{d as y}from"./routes-B7wRw3UT.js";import"./navigation-resolver-jIQ5B6JB.js";import"./build-state-laR44jYU.js";import{t as b}from"./hard-navigate-CNxvVrtC.js";import{n as x}from"./companion-surface-CZHv2avR.js";function S(){return h()?y.welcome:y.onboarding.privacy}function C(e){g()&&window.vellum?.identity?.setName(e)}async function w(e){if(h()){let t=m();if(t&&p(t)){await v(!1),_.setState({platformSession:`absent`});return}await v(!1),await _.getState().logout(),e(S())}else await _.getState().logout(),C(``),x(),b(y.account.login)}var T=[{id:`assistant-status`,label:`General`,href:y.settings.general,icon:u},{id:`model`,label:`Models & Services`,href:y.settings.ai,icon:a},{id:`integrations`,label:`Integrations`,href:y.settings.integrations,icon:c},{id:`credentials`,label:`Credentials`,href:y.settings.credentials,icon:o},{id:`notifications`,label:`Notifications`,href:y.settings.notifications,icon:e},{id:`voice`,label:`Voice`,href:y.settings.voice,icon:s},{id:`sounds`,label:`Sounds`,href:y.settings.sounds,icon:f},{id:`privacy`,label:`Permissions & Privacy`,href:y.settings.privacy,icon:l},{id:`bookmarks`,label:`Bookmarks`,href:y.settings.bookmarks,icon:t},{id:`billing`,label:`Usage`,href:y.settings.usage,icon:r},{id:`community`,label:`Community`,href:y.settings.community,icon:d},{id:`debug`,label:`Debug`,href:y.settings.debug,icon:n},{id:`developer`,label:`Developer`,href:y.settings.developer,icon:i}],E={developer:`debug`,advanced:`debug`,model:`model`,privacy:`privacy`,security:`assistant-status`,"voice & sounds":`voice`,"voice and sounds":`voice`,devices:`assistant-status`,"self-hosted assistants":`assistant-status`},D={"keyboard-shortcuts":`${y.settings.general}?preferences=open`,"keyboard shortcuts":`${y.settings.general}?preferences=open`,services:y.settings.ai,"text-to-speech":y.settings.ai,"speech-to-text":y.settings.ai,archive:`${y.settings.debug}?tab=archive`,billing:y.settings.usageBilling,"billing & usage":y.settings.usageBilling,usage:`${y.settings.usage}?tab=usage`};function O(e){return e.trim().toLowerCase()}function k(e){let t=O(e),n=D[t];if(n)return n;let r=E[t];if(r){let e=T.find(e=>e.id===r);if(e)return e.href}return T.find(e=>O(e.label)===t||e.id===t)?.href??null}export{C as i,k as n,w as r,T as t};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/esm-DYyr0ITx.js","assets/preload-helper-Cv2QeVDK.js","assets/dist-D7UWVopK.js"])))=>i.map(i=>d[i]);
2
- import{o as e,r as t}from"./chunk-jRWAZmH_.js";import{t as n}from"./react-BFJW0bSv.js";import{W as r,n as i,t as a}from"./button-VkxVX0DM.js";import{t as o}from"./preload-helper-Cv2QeVDK.js";import{t as s}from"./useMutation-D2YPyfEH.js";import{t as c}from"./jsx-runtime-BJ8jcmzB.js";import{t as l}from"./bug-DSXaice2.js";import{t as u}from"./download-DnnvWjPo.js";import{t as ee}from"./info-Bn2hbIVl.js";import{t as d}from"./lightbulb-moe9FubK.js";import{t as te}from"./loader-circle-DYe85z3g.js";import{t as ne}from"./mail-9qQtaWSe.js";import{t as f}from"./message-circle-CQpMnPIR.js";import{t as p}from"./paperclip-T-MRlqdF.js";import{t as re}from"./send-Dwk9mFMC.js";import{t as m}from"./x-zfSDUG5z.js";import{t as h}from"./notice-BlYF-xU3.js";import{n as ie,t as g}from"./input-DkgpMeG9.js";import{t as _}from"./toggle-0qt1e_3r.js";import{t as v}from"./select-BKyejRky.js";import{n as y}from"./assistant-identity-store-DhAqaifK.js";import{t as b}from"./is-electron-wgAC5Mzb.js";import{n as ae}from"./auth-store-DDMY1UvK.js";import{dn as x}from"./sdk.gen-CiE6cMi0.js";import{t as S}from"./dist-D7UWVopK.js";import{n as C}from"./diagnostics-BrWbafo7.js";import{I as oe}from"./react-query.gen-CwRPAiHT.js";import"./external-urls-B0QJBkzP.js";import{t as se}from"./use-body-scroll-lock-DmT5-Tka.js";var w=e(n(),1),ce=e(r(),1),le=`vellum:debug:`;function T(){let e={};if(typeof window>`u`)return e;try{for(let t=0;t<window.localStorage.length;t++){let n=window.localStorage.key(t);if(n===null||!n.startsWith(le))continue;let r=window.localStorage.getItem(n);r!==null&&(e[n]=r)}}catch{}return e}function E(){return{collectedAt:new Date().toISOString(),resolved:{impersonateAssistantVersion:y()},overrides:T()}}var D=t({ShareFeedbackModal:()=>W,dedupeAgainstClientMessages:()=>B,stripBulkBase64:()=>z}),O=c(),k=[{value:`bug_report`,label:`Bug Report`,icon:l,includesLogsByDefault:!0},{value:`feature_request`,label:`Feature Request`,icon:d,includesLogsByDefault:!1},{value:`other`,label:`Other`,icon:f,includesLogsByDefault:!1}],A=[{value:`past_hour`,label:`Past hour`,cutoffMs:3600*1e3},{value:`past_24_hours`,label:`Past 24 hours`,cutoffMs:1440*60*1e3},{value:`all_time`,label:`All time`,cutoffMs:null}],ue=A.map(e=>({value:e.value,label:e.label})),j=new Set([`image/png`,`image/jpeg`,`image/gif`,`image/webp`,`video/mp4`,`video/quicktime`,`video/webm`]),M=new Set([`png`,`jpg`,`jpeg`,`gif`,`webp`,`mp4`,`mov`,`webm`]),N=10,P=50*1024*1024,de={bug_report:`bug_report`,feature_request:`feature_request`,other:`other`};function fe(){if(b())return`electron`;let e=S.getPlatform();return e===`ios`||e===`android`?e:`web`}function pe(e){return typeof e==`object`&&!!e&&`client`in e}function me(e){if(e.size>P)return!1;if(e.type&&j.has(e.type))return!0;if(!e.type){let t=e.name.split(`.`).pop()?.toLowerCase();return t?M.has(t):!1}return!1}var F=8192,I=/^data:([^;,]+);base64,/i,L=/^[A-Za-z0-9+/]+={0,2}$/;function R(e,t,n=new WeakSet){let r=t(e);if(r)return r.replacement;if(typeof e!=`object`||!e)return e;if(n.has(e))return`[cyclic]`;n.add(e);let i;if(Array.isArray(e))i=e.map(e=>R(e,t,n));else{let r={};for(let[i,a]of Object.entries(e))r[i]=R(a,t,n);i=r}return n.delete(e),i}function z(e){return R(e,e=>{if(typeof e!=`string`)return null;let t=I.exec(e);return t?{replacement:`[stripped data URI ${t[1]}, ${e.length} chars]`}:e.length>=F&&L.test(e)?{replacement:`[stripped base64, ${e.length} chars]`}:null})}function B(e,t){if(!Array.isArray(t))return e;let n=new Map;return t.forEach((e,t)=>{if(e&&typeof e==`object`){let r=e.id;n.set(e,typeof r==`string`?r:`index ${t}`)}}),R(e,e=>{if(typeof e!=`object`||!e)return null;let t=n.get(e);return t===void 0?null:{replacement:`[deduplicated: see clientMessages ${t}]`}})}function V(e,t){let n=Math.ceil(t.length/512),r=new Uint8Array(512+n*512),i=new TextEncoder,a=(e,t,n)=>{let a=i.encode(e);r.set(a.slice(0,n),t)},o=(e,t,n)=>{a(e.toString(8).padStart(n-1,`0`)+`\0`,t,n)};a(e,0,100),o(420,100,8),o(0,108,8),o(0,116,8),o(t.length,124,12),o(Math.floor(Date.now()/1e3),136,12);for(let e=148;e<156;e++)r[e]=32;r[156]=48,a(`ustar\0`,257,6),a(`00`,263,2);let s=0;for(let e=0;e<512;e++)s+=r[e];return o(s,148,7),r[155]=32,r.set(t,512),r}async function H(e,t){try{let n={};t.window.startTime!=null&&(n.startTime=t.window.startTime,n.endTime=t.window.endTime),t.activeConversationId&&(n.conversationId=t.activeConversationId);let{data:r,error:i}=await x({path:{assistant_id:e},body:n,parseAs:`blob`,throwOnError:!1});if(i||!(r instanceof Blob))return null;let a=await r.arrayBuffer();return new Uint8Array(a)}catch{return null}}async function U(){if(!S.isNativePlatform())return null;try{let{App:e}=await o(async()=>{let{App:e}=await import(`./esm-DYyr0ITx.js`);return{App:e}},__vite__mapDeps([0,1,2])),{id:t,name:n,version:r,build:i}=await e.getInfo();return{id:t,name:n,version:r,build:i}}catch{return null}}async function he(e,t,n,r={}){if(typeof CompressionStream>`u`)return null;let{diagnosticsProvider:i,doctorSessionId:a,extraLogFiles:o=[]}=r,s=new Date,c=A.find(t=>t.value===e),l=s.getTime(),u=c?.cutoffMs==null?null:l-c.cutoffMs,ee=u==null?null:new Date(u).toISOString(),d=null;try{d=i?.()??null}catch{d=null}let te=C(d),ne={collected_at:s.toISOString(),time_range:e,cutoff:ee,log_window:{start_time_ms:u,end_time_ms:l},assistant_id:t,active_conversation_id:n,doctor_session_id:a??null,client_version:null,native_app:await U(),user_agent:typeof navigator<`u`?navigator.userAgent:``,language:typeof navigator<`u`?navigator.language:``,platform:typeof navigator<`u`?navigator.platform:``,url:typeof window<`u`?window.location.href:``,viewport:typeof window<`u`?{width:window.innerWidth,height:window.innerHeight}:null,screen:typeof screen<`u`?{width:screen.width,height:screen.height}:null,connection:typeof navigator<`u`&&`connection`in navigator?{effectiveType:navigator.connection.effectiveType,downlink:navigator.connection.downlink,rtt:navigator.connection.rtt}:null,deviceMemory:typeof navigator<`u`&&`deviceMemory`in navigator?navigator.deviceMemory:null,hardwareConcurrency:typeof navigator<`u`?navigator.hardwareConcurrency:null},f=new TextEncoder,p=f.encode(JSON.stringify(ne,null,2)),re=f.encode(JSON.stringify(te,null,2)),m=[V(`web-client-context.json`,p),V(`web-chat-diagnostics.json`,re)],h=new TextEncoder().encode(JSON.stringify(E(),null,2));m.push(V(`web-debug-flags.json`,h));for(let e of o){let t=e.contents.trim();t&&m.push(V(e.filename,f.encode(t)))}try{let e=typeof window<`u`?window._vellumDebug?.chat:null;if(e){let t=e.getClientMessages?.()??null,n={clientMessages:t,transcriptItems:B(e.getTranscriptItems?.()??null,t),pendingInteractions:e.listPendingInteractions?.()??null,thinkingIndicator:e.thinkingIndicator?.()??null,streamingRing:e.streamingRing?.()??null,reconciliationDiagnostics:e.getReconciliationDiagnostics?.()??null},r=new TextEncoder().encode(JSON.stringify(z(n),null,2));m.push(V(`web-chat-debug-api-triage.json`,r))}}catch{}try{let e=typeof window<`u`?window._vellumDebug?.events:null;if(e){let t={focus:typeof document<`u`?{hasFocus:typeof document.hasFocus==`function`?document.hasFocus():null,visibilityState:document.visibilityState}:null,clients:e.getClients().map(({abortSignal:e,...t})=>({...t,aborted:e.aborted})),events:e.getEvents()},n=new TextEncoder().encode(JSON.stringify(z(t),null,2));m.push(V(`web-sse-liveness-triage.json`,n))}}catch{}if(b()&&window.vellum?.feedback){try{let e=await window.vellum.feedback.diagnostics(),t=new TextEncoder().encode(JSON.stringify(e,null,2));m.push(V(`electron-diagnostics.json`,t))}catch{}try{let e=await window.vellum.feedback.logs();if(e){let t=new TextEncoder().encode(e);m.push(V(`electron-main-logs.txt`,t))}}catch{}}if(t){let e=await H(t,{window:{startTime:u,endTime:l},activeConversationId:n});e&&m.push(V(`platform-logs.tar.gz`,e))}m.push(new Uint8Array(1024));let ie=m.reduce((e,t)=>e+t.length,0),g=new Uint8Array(ie),_=0;for(let e of m)g.set(e,_),_+=e.length;let v=new Blob([g.buffer]),y=await new Response(v.stream().pipeThrough(new CompressionStream(`gzip`))).blob();return new File([y],`web-client-logs-${s.getTime()}.tar.gz`,{type:`application/gzip`})}function W({open:e,onClose:t,initialReason:n,initialMessage:r,onSubmitted:o,assistantId:c,assistantVersion:l,activeConversationId:d,doctorSessionId:f,doctorSessionLog:y,getDiagnosticsSnapshot:x}){let S=ae.use.user(),C=S?.email,le=S?.isStaff??!1,T=(0,w.useId)(),E=(0,w.useRef)(null),D=(0,w.useRef)(null),A=(0,w.useRef)(null),j=(0,w.useRef)(null),[M,P]=(0,w.useState)(n??`bug_report`),[F,I]=(0,w.useState)(``),[L,R]=(0,w.useState)(``),[z,B]=(0,w.useState)(k.find(e=>e.value===(n??`bug_report`))?.includesLogsByDefault??!0),[V,H]=(0,w.useState)(!1),[U,W]=(0,w.useState)(`past_hour`),[G,K]=(0,w.useState)([]),[ve,q]=(0,w.useState)(null),[ye,J]=(0,w.useState)(!1),[Y,be]=(0,w.useState)(!1),[X,xe]=(0,w.useState)(!1),Z=s(oe()),[Se,Q]=(0,w.useState)(!1),$=Z.isPending||Se,Ce=!C,we=(0,w.useMemo)(()=>F.trim().length>0&&L.trim().length>0,[F,L]);(0,w.useEffect)(()=>{if(!e)return;let t=n??`bug_report`;P(t),I(r??``),R(C??``),B(k.find(e=>e.value===t)?.includesLogsByDefault??!0),H(!1),W(`past_hour`),K([]),be(!1),xe(!1),q(null),Q(!1),Z.reset();let i=setTimeout(()=>{C?A.current?.focus():j.current?.focus()},50);return()=>clearTimeout(i)},[e]),se(e);let Te=e=>{P(e),V||B(k.find(t=>t.value===e)?.includesLogsByDefault??!1)},Ee=()=>{B(e=>!e),H(!0)},De=y?.trim()?[{filename:`doctor-session.txt`,contents:y}]:[],Oe=(0,w.useCallback)(e=>{e.key===`Escape`&&!e.defaultPrevented&&!$&&(e.preventDefault(),t())},[t,$]),ke=(0,w.useCallback)(e=>{e.target===E.current&&!$&&t()},[t,$]),Ae=(0,w.useCallback)(e=>{K(t=>{let n=N-t.length;if(n<=0)return t;let r=new Set(t.map(e=>`${e.name}:${e.size}`)),i=[];for(let t of e){if(i.length>=n)break;if(!me(t))continue;let e=`${t.name}:${t.size}`;r.has(e)||(r.add(e),i.push(t))}return i.length>0?[...t,...i]:t})},[]),je=e=>{e.target.files&&Ae(Array.from(e.target.files)),e.target.value=``},Me=e=>{e.preventDefault(),J(!1),e.dataTransfer.files?.length&&Ae(Array.from(e.dataTransfer.files))},Ne=e=>{e.preventDefault(),J(!0)},Pe=e=>{e.preventDefault(),e.currentTarget===e.target&&J(!1)},Fe=e=>{K(t=>t.filter((t,n)=>n!==e))};return e?(0,ce.createPortal)((0,O.jsx)(`div`,{ref:E,role:`dialog`,"aria-modal":`true`,"aria-labelledby":T,className:`fixed inset-0 z-50 flex items-center justify-center bg-black/50`,onKeyDown:Oe,onClick:ke,onDrop:Me,onDragOver:Ne,onDragLeave:Pe,children:(0,O.jsxs)(`div`,{className:`mx-4 flex w-full max-w-lg flex-col rounded-xl border p-6 shadow-xl`,style:{backgroundColor:`var(--surface-lift)`,borderColor:`var(--border-base)`,maxHeight:`calc(100vh - 2rem)`},children:[(0,O.jsxs)(`div`,{className:`flex items-center justify-between border-b pb-4`,style:{borderColor:`var(--border-subtle)`},children:[(0,O.jsx)(`h2`,{id:T,className:`!m-0 text-title-small text-[var(--content-default)]`,children:`Share Feedback`}),(0,O.jsx)(a,{variant:`ghost`,iconOnly:(0,O.jsx)(m,{}),onClick:t,disabled:$,"aria-label":`Close`,tintColor:`var(--content-secondary)`})]}),(0,O.jsxs)(`div`,{className:`flex flex-col gap-3.5 overflow-y-auto pt-4 ${$?`pointer-events-none opacity-60`:``}`,children:[le&&(0,O.jsxs)(`div`,{className:`flex flex-col gap-1.5 rounded-lg border border-[var(--border-base)] bg-[var(--surface-base)] px-3 py-2.5`,children:[(0,O.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-3`,children:[(0,O.jsx)(_,{checked:X,onChange:()=>xe(e=>!e),"aria-label":`Download diagnostics directly`}),(0,O.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:`Download diagnostics directly`})]}),(0,O.jsx)(`span`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Admin only — builds the diagnostics archive locally and downloads it instead of submitting feedback or notifying Slack.`})]}),X?(0,O.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,O.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:`Time range`}),(0,O.jsx)(v,{options:ue,value:U,onChange:W,"aria-label":`Diagnostics time range`})]}):(0,O.jsxs)(O.Fragment,{children:[Ce&&(0,O.jsx)(g,{id:`${T}-email`,ref:j,label:`Email`,type:`email`,placeholder:`you@example.com`,value:L,onChange:e=>R(e.target.value),leftIcon:(0,O.jsx)(ne,{className:`h-4 w-4`,"aria-hidden":!0}),fullWidth:!0}),(0,O.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,O.jsx)(`span`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Category`}),(0,O.jsx)(`div`,{className:`flex gap-2`,children:k.map(e=>(0,O.jsx)(ge,{option:e,isSelected:M===e.value,onSelect:()=>Te(e.value)},e.value))})]}),(0,O.jsx)(`hr`,{className:`border-[var(--border-subtle)]`}),M===`bug_report`&&(0,O.jsxs)(h,{tone:`info`,children:[`Tip: Get faster support by posting in our`,` `,(0,O.jsx)(`a`,{href:`https://vellum.ai/community`,target:`_blank`,rel:`noopener noreferrer`,className:`underline text-[var(--content-default)]`,children:`Discord community`})]}),M===`feature_request`&&(0,O.jsxs)(h,{tone:`info`,children:[`Tip: Vote on features on our`,` `,(0,O.jsx)(`a`,{href:`https://vellum.ai/roadmap`,target:`_blank`,rel:`noopener noreferrer`,className:`underline text-[var(--content-default)]`,children:`public roadmap`})]}),(0,O.jsx)(ie,{id:`${T}-message`,ref:A,label:M===`bug_report`?`What went wrong?`:M===`feature_request`?`Describe your idea`:`What's on your mind?`,rows:3,placeholder:M===`bug_report`?`What did you expect to happen, and what happened instead?`:M===`feature_request`?`What problem would this solve for you?`:`Share your thoughts...`,value:F,onChange:e=>I(e.target.value),fullWidth:!0}),M!==`feature_request`&&(0,O.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,O.jsxs)(`div`,{className:`flex items-center gap-2.5`,children:[(0,O.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2.5`,children:[(0,O.jsx)(_,{checked:z,onChange:Ee,"aria-label":`Include browser diagnostics`}),(0,O.jsx)(`span`,{className:`text-body-medium-lighter leading-6 text-[var(--content-default)]`,children:`Include diagnostics`})]}),(0,O.jsx)(i,{content:`Diagnostics include browser context, assistant logs, and timestamps — never passwords or credentials.`,children:(0,O.jsx)(`button`,{type:`button`,"aria-label":`About diagnostics`,className:`inline-flex items-center justify-center text-[var(--content-tertiary)]`,children:(0,O.jsx)(ee,{className:`h-3.5 w-3.5`})})})]}),z&&(0,O.jsx)(v,{options:ue,value:U,onChange:W,"aria-label":`Diagnostics time range`})]}),b()&&d&&M!==`feature_request`&&(0,O.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2.5`,children:[(0,O.jsx)(_,{checked:Y,onChange:()=>be(e=>!e),"aria-label":`Include the most recent conversation`}),(0,O.jsx)(`span`,{className:`text-body-medium-lighter leading-6 text-[var(--content-default)]`,children:`Include the most recent conversation`})]}),(0,O.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,O.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,O.jsxs)(`span`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:[`Attachments`,G.length>0&&(0,O.jsxs)(`span`,{className:`text-[var(--content-tertiary)]`,children:[` · `,G.length,`/`,N]})]}),(0,O.jsx)(a,{variant:`outlined`,size:`compact`,leftIcon:(0,O.jsx)(p,{}),onClick:()=>D.current?.click(),disabled:G.length>=N,children:`Add files`}),(0,O.jsx)(`input`,{ref:D,type:`file`,multiple:!0,accept:`image/png,image/jpeg,image/gif,image/webp,video/mp4,video/quicktime,video/webm`,onChange:je,className:`hidden`})]}),G.length>0&&(0,O.jsx)(`div`,{className:`flex gap-2 overflow-x-auto`,children:G.map((e,t)=>(0,O.jsx)(_e,{file:e,onRemove:()=>Fe(t)},`${e.name}-${t}`))}),ye&&(0,O.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Drop files to attach…`})]})]}),ve&&(0,O.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--system-negative-strong)]`,children:ve})]}),(0,O.jsx)(`div`,{className:`mt-4 flex items-center justify-end gap-2 border-t pt-4`,style:{borderColor:`var(--border-subtle)`},children:$?(0,O.jsxs)(`span`,{className:`inline-flex items-center gap-2 text-body-medium-lighter text-[var(--content-secondary)]`,children:[(0,O.jsx)(te,{className:`h-4 w-4 animate-spin`}),X?`Preparing diagnostics…`:`Sending feedback…`]}):(0,O.jsxs)(O.Fragment,{children:[(0,O.jsx)(a,{variant:`ghost`,onClick:t,children:`Cancel`}),X?(0,O.jsx)(a,{variant:`primary`,leftIcon:(0,O.jsx)(u,{}),onClick:async()=>{if(!$){q(null),Q(!0);try{let e=await he(U,c??null,b()?Y?d??null:null:d??null,{diagnosticsProvider:x,doctorSessionId:f,extraLogFiles:De});if(!e){q(`Diagnostics export isn't supported in this browser.`);return}let n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=e.name,document.body.appendChild(r),r.click(),r.remove(),setTimeout(()=>URL.revokeObjectURL(n),0),t()}catch(e){q(e instanceof Error?e.message:`Failed to build diagnostics. Please try again.`)}finally{Q(!1)}}},children:`Download diagnostics`}):(0,O.jsx)(a,{variant:`primary`,leftIcon:(0,O.jsx)(re,{}),onClick:async()=>{if(!(!we||$)){q(null),Q(!0);try{let e=z&&M!==`feature_request`?await he(U,c??null,b()?Y?d??null:null:d??null,{diagnosticsProvider:x,doctorSessionId:f,extraLogFiles:De}):null,n=fe(),r;if(n===`electron`)try{r=(await window.vellum?.app.versionInfo())?.version??r}catch{}let i=t=>Z.mutateAsync({headers:{"Content-Type":null},body:{message:F.trim(),classification:de[M],email:L.trim(),client:t,client_version:r,...c?{assistant_id:c}:{},...l?{assistant_version:l}:{},...f?{doctor_session_id:f}:{},...e?{logs_file:e}:{},...G.length?{attachments:G}:{}},bodySerializer:e=>{let t=new FormData;for(let[n,r]of Object.entries(e))if(r!=null){if(n===`attachments`&&Array.isArray(r)){for(let e of r)t.append(`attachments`,e);continue}r instanceof Blob?t.append(n,r):t.append(n,String(r))}return t}});try{await i(n)}catch(e){if(n!==`android`||!pe(e))throw e;await i(`web`)}o?.(),t()}catch(e){q(e instanceof Error?e.message:`Failed to submit feedback. Please try again.`)}finally{Q(!1)}}},disabled:!we,children:`Submit`})]})})]})}),document.body):null}function ge({option:e,isSelected:t,onSelect:n}){let r=e.icon;return(0,O.jsxs)(`button`,{type:`button`,onClick:n,"aria-pressed":t,className:`flex items-center gap-1.5 rounded-full border px-3 py-1.5 text-left transition-colors`,style:{borderColor:t?`var(--primary-base)`:`var(--border-base)`,backgroundColor:t?`color-mix(in oklab, var(--primary-base) 10%, transparent)`:`transparent`},children:[(0,O.jsx)(r,{className:`h-3.5 w-3.5 shrink-0`,style:{color:t?`var(--primary-base)`:`var(--content-secondary)`}}),(0,O.jsx)(`span`,{className:`text-body-small-default`,style:{color:t?`var(--primary-base)`:`var(--content-default)`},children:e.label})]})}function _e({file:e,onRemove:t}){let n=e.type.startsWith(`image/`),r=(0,w.useMemo)(()=>n?URL.createObjectURL(e):null,[e,n]);return(0,w.useEffect)(()=>{if(r)return()=>URL.revokeObjectURL(r)},[r]),(0,O.jsxs)(`div`,{className:`relative flex h-16 w-16 shrink-0 items-center justify-center overflow-hidden rounded-lg border border-[var(--border-base)] bg-[var(--surface-base)]`,title:e.name,children:[n&&r?(0,O.jsx)(`img`,{src:r,alt:e.name,className:`h-full w-full object-cover`}):(0,O.jsx)(p,{className:`h-5 w-5 text-[var(--content-secondary)]`}),(0,O.jsx)(a,{variant:`ghost`,size:`compact`,iconOnly:(0,O.jsx)(m,{}),onClick:t,"aria-label":`Remove ${e.name}`,className:`absolute top-0.5 right-0.5 h-4 w-4 rounded-full bg-black/60 text-white hover:bg-black/70`,tintColor:`#fff`})]})}export{D as n,W as t};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/esm-BD6nxr-q.js","assets/preload-helper-Cv2QeVDK.js","assets/dist-D7UWVopK.js"])))=>i.map(i=>d[i]);
2
+ import{o as e,r as t}from"./chunk-jRWAZmH_.js";import{t as n}from"./react-BFJW0bSv.js";import{W as r,n as i,t as a}from"./button-VkxVX0DM.js";import{t as o}from"./preload-helper-Cv2QeVDK.js";import{t as s}from"./useMutation-D2YPyfEH.js";import{t as c}from"./jsx-runtime-BJ8jcmzB.js";import{t as l}from"./bug-DSXaice2.js";import{t as u}from"./download-DnnvWjPo.js";import{t as ee}from"./info-Bn2hbIVl.js";import{t as d}from"./lightbulb-moe9FubK.js";import{t as te}from"./loader-circle-DYe85z3g.js";import{t as ne}from"./mail-9qQtaWSe.js";import{t as f}from"./message-circle-CQpMnPIR.js";import{t as p}from"./paperclip-T-MRlqdF.js";import{t as re}from"./send-Dwk9mFMC.js";import{t as m}from"./x-zfSDUG5z.js";import{t as h}from"./notice-BlYF-xU3.js";import{n as ie,t as g}from"./input-DkgpMeG9.js";import{t as _}from"./toggle-0qt1e_3r.js";import{t as v}from"./select-BKyejRky.js";import{n as y}from"./assistant-identity-store-DhAqaifK.js";import{t as b}from"./is-electron-wgAC5Mzb.js";import{n as ae}from"./auth-store-CVtcHK0b.js";import{dn as x}from"./sdk.gen-CiE6cMi0.js";import{t as S}from"./dist-D7UWVopK.js";import{n as C}from"./diagnostics-CwFqcLv_.js";import{I as oe}from"./react-query.gen-CwRPAiHT.js";import"./external-urls-Bg18AU4S.js";import{t as se}from"./use-body-scroll-lock-DmT5-Tka.js";var w=e(n(),1),ce=e(r(),1),le=`vellum:debug:`;function T(){let e={};if(typeof window>`u`)return e;try{for(let t=0;t<window.localStorage.length;t++){let n=window.localStorage.key(t);if(n===null||!n.startsWith(le))continue;let r=window.localStorage.getItem(n);r!==null&&(e[n]=r)}}catch{}return e}function E(){return{collectedAt:new Date().toISOString(),resolved:{impersonateAssistantVersion:y()},overrides:T()}}var D=t({ShareFeedbackModal:()=>W,dedupeAgainstClientMessages:()=>B,stripBulkBase64:()=>z}),O=c(),k=[{value:`bug_report`,label:`Bug Report`,icon:l,includesLogsByDefault:!0},{value:`feature_request`,label:`Feature Request`,icon:d,includesLogsByDefault:!1},{value:`other`,label:`Other`,icon:f,includesLogsByDefault:!1}],A=[{value:`past_hour`,label:`Past hour`,cutoffMs:3600*1e3},{value:`past_24_hours`,label:`Past 24 hours`,cutoffMs:1440*60*1e3},{value:`all_time`,label:`All time`,cutoffMs:null}],ue=A.map(e=>({value:e.value,label:e.label})),j=new Set([`image/png`,`image/jpeg`,`image/gif`,`image/webp`,`video/mp4`,`video/quicktime`,`video/webm`]),M=new Set([`png`,`jpg`,`jpeg`,`gif`,`webp`,`mp4`,`mov`,`webm`]),N=10,P=50*1024*1024,de={bug_report:`bug_report`,feature_request:`feature_request`,other:`other`};function fe(){if(b())return`electron`;let e=S.getPlatform();return e===`ios`||e===`android`?e:`web`}function pe(e){return typeof e==`object`&&!!e&&`client`in e}function me(e){if(e.size>P)return!1;if(e.type&&j.has(e.type))return!0;if(!e.type){let t=e.name.split(`.`).pop()?.toLowerCase();return t?M.has(t):!1}return!1}var F=8192,I=/^data:([^;,]+);base64,/i,L=/^[A-Za-z0-9+/]+={0,2}$/;function R(e,t,n=new WeakSet){let r=t(e);if(r)return r.replacement;if(typeof e!=`object`||!e)return e;if(n.has(e))return`[cyclic]`;n.add(e);let i;if(Array.isArray(e))i=e.map(e=>R(e,t,n));else{let r={};for(let[i,a]of Object.entries(e))r[i]=R(a,t,n);i=r}return n.delete(e),i}function z(e){return R(e,e=>{if(typeof e!=`string`)return null;let t=I.exec(e);return t?{replacement:`[stripped data URI ${t[1]}, ${e.length} chars]`}:e.length>=F&&L.test(e)?{replacement:`[stripped base64, ${e.length} chars]`}:null})}function B(e,t){if(!Array.isArray(t))return e;let n=new Map;return t.forEach((e,t)=>{if(e&&typeof e==`object`){let r=e.id;n.set(e,typeof r==`string`?r:`index ${t}`)}}),R(e,e=>{if(typeof e!=`object`||!e)return null;let t=n.get(e);return t===void 0?null:{replacement:`[deduplicated: see clientMessages ${t}]`}})}function V(e,t){let n=Math.ceil(t.length/512),r=new Uint8Array(512+n*512),i=new TextEncoder,a=(e,t,n)=>{let a=i.encode(e);r.set(a.slice(0,n),t)},o=(e,t,n)=>{a(e.toString(8).padStart(n-1,`0`)+`\0`,t,n)};a(e,0,100),o(420,100,8),o(0,108,8),o(0,116,8),o(t.length,124,12),o(Math.floor(Date.now()/1e3),136,12);for(let e=148;e<156;e++)r[e]=32;r[156]=48,a(`ustar\0`,257,6),a(`00`,263,2);let s=0;for(let e=0;e<512;e++)s+=r[e];return o(s,148,7),r[155]=32,r.set(t,512),r}async function H(e,t){try{let n={};t.window.startTime!=null&&(n.startTime=t.window.startTime,n.endTime=t.window.endTime),t.activeConversationId&&(n.conversationId=t.activeConversationId);let{data:r,error:i}=await x({path:{assistant_id:e},body:n,parseAs:`blob`,throwOnError:!1});if(i||!(r instanceof Blob))return null;let a=await r.arrayBuffer();return new Uint8Array(a)}catch{return null}}async function U(){if(!S.isNativePlatform())return null;try{let{App:e}=await o(async()=>{let{App:e}=await import(`./esm-BD6nxr-q.js`);return{App:e}},__vite__mapDeps([0,1,2])),{id:t,name:n,version:r,build:i}=await e.getInfo();return{id:t,name:n,version:r,build:i}}catch{return null}}async function he(e,t,n,r={}){if(typeof CompressionStream>`u`)return null;let{diagnosticsProvider:i,doctorSessionId:a,extraLogFiles:o=[]}=r,s=new Date,c=A.find(t=>t.value===e),l=s.getTime(),u=c?.cutoffMs==null?null:l-c.cutoffMs,ee=u==null?null:new Date(u).toISOString(),d=null;try{d=i?.()??null}catch{d=null}let te=C(d),ne={collected_at:s.toISOString(),time_range:e,cutoff:ee,log_window:{start_time_ms:u,end_time_ms:l},assistant_id:t,active_conversation_id:n,doctor_session_id:a??null,client_version:null,native_app:await U(),user_agent:typeof navigator<`u`?navigator.userAgent:``,language:typeof navigator<`u`?navigator.language:``,platform:typeof navigator<`u`?navigator.platform:``,url:typeof window<`u`?window.location.href:``,viewport:typeof window<`u`?{width:window.innerWidth,height:window.innerHeight}:null,screen:typeof screen<`u`?{width:screen.width,height:screen.height}:null,connection:typeof navigator<`u`&&`connection`in navigator?{effectiveType:navigator.connection.effectiveType,downlink:navigator.connection.downlink,rtt:navigator.connection.rtt}:null,deviceMemory:typeof navigator<`u`&&`deviceMemory`in navigator?navigator.deviceMemory:null,hardwareConcurrency:typeof navigator<`u`?navigator.hardwareConcurrency:null},f=new TextEncoder,p=f.encode(JSON.stringify(ne,null,2)),re=f.encode(JSON.stringify(te,null,2)),m=[V(`web-client-context.json`,p),V(`web-chat-diagnostics.json`,re)],h=new TextEncoder().encode(JSON.stringify(E(),null,2));m.push(V(`web-debug-flags.json`,h));for(let e of o){let t=e.contents.trim();t&&m.push(V(e.filename,f.encode(t)))}try{let e=typeof window<`u`?window._vellumDebug?.chat:null;if(e){let t=e.getClientMessages?.()??null,n={clientMessages:t,transcriptItems:B(e.getTranscriptItems?.()??null,t),pendingInteractions:e.listPendingInteractions?.()??null,thinkingIndicator:e.thinkingIndicator?.()??null,streamingRing:e.streamingRing?.()??null,reconciliationDiagnostics:e.getReconciliationDiagnostics?.()??null},r=new TextEncoder().encode(JSON.stringify(z(n),null,2));m.push(V(`web-chat-debug-api-triage.json`,r))}}catch{}try{let e=typeof window<`u`?window._vellumDebug?.events:null;if(e){let t={focus:typeof document<`u`?{hasFocus:typeof document.hasFocus==`function`?document.hasFocus():null,visibilityState:document.visibilityState}:null,clients:e.getClients().map(({abortSignal:e,...t})=>({...t,aborted:e.aborted})),events:e.getEvents()},n=new TextEncoder().encode(JSON.stringify(z(t),null,2));m.push(V(`web-sse-liveness-triage.json`,n))}}catch{}if(b()&&window.vellum?.feedback){try{let e=await window.vellum.feedback.diagnostics(),t=new TextEncoder().encode(JSON.stringify(e,null,2));m.push(V(`electron-diagnostics.json`,t))}catch{}try{let e=await window.vellum.feedback.logs();if(e){let t=new TextEncoder().encode(e);m.push(V(`electron-main-logs.txt`,t))}}catch{}}if(t){let e=await H(t,{window:{startTime:u,endTime:l},activeConversationId:n});e&&m.push(V(`platform-logs.tar.gz`,e))}m.push(new Uint8Array(1024));let ie=m.reduce((e,t)=>e+t.length,0),g=new Uint8Array(ie),_=0;for(let e of m)g.set(e,_),_+=e.length;let v=new Blob([g.buffer]),y=await new Response(v.stream().pipeThrough(new CompressionStream(`gzip`))).blob();return new File([y],`web-client-logs-${s.getTime()}.tar.gz`,{type:`application/gzip`})}function W({open:e,onClose:t,initialReason:n,initialMessage:r,onSubmitted:o,assistantId:c,assistantVersion:l,activeConversationId:d,doctorSessionId:f,doctorSessionLog:y,getDiagnosticsSnapshot:x}){let S=ae.use.user(),C=S?.email,le=S?.isStaff??!1,T=(0,w.useId)(),E=(0,w.useRef)(null),D=(0,w.useRef)(null),A=(0,w.useRef)(null),j=(0,w.useRef)(null),[M,P]=(0,w.useState)(n??`bug_report`),[F,I]=(0,w.useState)(``),[L,R]=(0,w.useState)(``),[z,B]=(0,w.useState)(k.find(e=>e.value===(n??`bug_report`))?.includesLogsByDefault??!0),[V,H]=(0,w.useState)(!1),[U,W]=(0,w.useState)(`past_hour`),[G,K]=(0,w.useState)([]),[ve,q]=(0,w.useState)(null),[ye,J]=(0,w.useState)(!1),[Y,be]=(0,w.useState)(!1),[X,xe]=(0,w.useState)(!1),Z=s(oe()),[Se,Q]=(0,w.useState)(!1),$=Z.isPending||Se,Ce=!C,we=(0,w.useMemo)(()=>F.trim().length>0&&L.trim().length>0,[F,L]);(0,w.useEffect)(()=>{if(!e)return;let t=n??`bug_report`;P(t),I(r??``),R(C??``),B(k.find(e=>e.value===t)?.includesLogsByDefault??!0),H(!1),W(`past_hour`),K([]),be(!1),xe(!1),q(null),Q(!1),Z.reset();let i=setTimeout(()=>{C?A.current?.focus():j.current?.focus()},50);return()=>clearTimeout(i)},[e]),se(e);let Te=e=>{P(e),V||B(k.find(t=>t.value===e)?.includesLogsByDefault??!1)},Ee=()=>{B(e=>!e),H(!0)},De=y?.trim()?[{filename:`doctor-session.txt`,contents:y}]:[],Oe=(0,w.useCallback)(e=>{e.key===`Escape`&&!e.defaultPrevented&&!$&&(e.preventDefault(),t())},[t,$]),ke=(0,w.useCallback)(e=>{e.target===E.current&&!$&&t()},[t,$]),Ae=(0,w.useCallback)(e=>{K(t=>{let n=N-t.length;if(n<=0)return t;let r=new Set(t.map(e=>`${e.name}:${e.size}`)),i=[];for(let t of e){if(i.length>=n)break;if(!me(t))continue;let e=`${t.name}:${t.size}`;r.has(e)||(r.add(e),i.push(t))}return i.length>0?[...t,...i]:t})},[]),je=e=>{e.target.files&&Ae(Array.from(e.target.files)),e.target.value=``},Me=e=>{e.preventDefault(),J(!1),e.dataTransfer.files?.length&&Ae(Array.from(e.dataTransfer.files))},Ne=e=>{e.preventDefault(),J(!0)},Pe=e=>{e.preventDefault(),e.currentTarget===e.target&&J(!1)},Fe=e=>{K(t=>t.filter((t,n)=>n!==e))};return e?(0,ce.createPortal)((0,O.jsx)(`div`,{ref:E,role:`dialog`,"aria-modal":`true`,"aria-labelledby":T,className:`fixed inset-0 z-50 flex items-center justify-center bg-black/50`,onKeyDown:Oe,onClick:ke,onDrop:Me,onDragOver:Ne,onDragLeave:Pe,children:(0,O.jsxs)(`div`,{className:`mx-4 flex w-full max-w-lg flex-col rounded-xl border p-6 shadow-xl`,style:{backgroundColor:`var(--surface-lift)`,borderColor:`var(--border-base)`,maxHeight:`calc(100vh - 2rem)`},children:[(0,O.jsxs)(`div`,{className:`flex items-center justify-between border-b pb-4`,style:{borderColor:`var(--border-subtle)`},children:[(0,O.jsx)(`h2`,{id:T,className:`!m-0 text-title-small text-[var(--content-default)]`,children:`Share Feedback`}),(0,O.jsx)(a,{variant:`ghost`,iconOnly:(0,O.jsx)(m,{}),onClick:t,disabled:$,"aria-label":`Close`,tintColor:`var(--content-secondary)`})]}),(0,O.jsxs)(`div`,{className:`flex flex-col gap-3.5 overflow-y-auto pt-4 ${$?`pointer-events-none opacity-60`:``}`,children:[le&&(0,O.jsxs)(`div`,{className:`flex flex-col gap-1.5 rounded-lg border border-[var(--border-base)] bg-[var(--surface-base)] px-3 py-2.5`,children:[(0,O.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-3`,children:[(0,O.jsx)(_,{checked:X,onChange:()=>xe(e=>!e),"aria-label":`Download diagnostics directly`}),(0,O.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:`Download diagnostics directly`})]}),(0,O.jsx)(`span`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Admin only — builds the diagnostics archive locally and downloads it instead of submitting feedback or notifying Slack.`})]}),X?(0,O.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,O.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:`Time range`}),(0,O.jsx)(v,{options:ue,value:U,onChange:W,"aria-label":`Diagnostics time range`})]}):(0,O.jsxs)(O.Fragment,{children:[Ce&&(0,O.jsx)(g,{id:`${T}-email`,ref:j,label:`Email`,type:`email`,placeholder:`you@example.com`,value:L,onChange:e=>R(e.target.value),leftIcon:(0,O.jsx)(ne,{className:`h-4 w-4`,"aria-hidden":!0}),fullWidth:!0}),(0,O.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,O.jsx)(`span`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Category`}),(0,O.jsx)(`div`,{className:`flex gap-2`,children:k.map(e=>(0,O.jsx)(ge,{option:e,isSelected:M===e.value,onSelect:()=>Te(e.value)},e.value))})]}),(0,O.jsx)(`hr`,{className:`border-[var(--border-subtle)]`}),M===`bug_report`&&(0,O.jsxs)(h,{tone:`info`,children:[`Tip: Get faster support by posting in our`,` `,(0,O.jsx)(`a`,{href:`https://vellum.ai/community`,target:`_blank`,rel:`noopener noreferrer`,className:`underline text-[var(--content-default)]`,children:`Discord community`})]}),M===`feature_request`&&(0,O.jsxs)(h,{tone:`info`,children:[`Tip: Vote on features on our`,` `,(0,O.jsx)(`a`,{href:`https://vellum.ai/roadmap`,target:`_blank`,rel:`noopener noreferrer`,className:`underline text-[var(--content-default)]`,children:`public roadmap`})]}),(0,O.jsx)(ie,{id:`${T}-message`,ref:A,label:M===`bug_report`?`What went wrong?`:M===`feature_request`?`Describe your idea`:`What's on your mind?`,rows:3,placeholder:M===`bug_report`?`What did you expect to happen, and what happened instead?`:M===`feature_request`?`What problem would this solve for you?`:`Share your thoughts...`,value:F,onChange:e=>I(e.target.value),fullWidth:!0}),M!==`feature_request`&&(0,O.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,O.jsxs)(`div`,{className:`flex items-center gap-2.5`,children:[(0,O.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2.5`,children:[(0,O.jsx)(_,{checked:z,onChange:Ee,"aria-label":`Include browser diagnostics`}),(0,O.jsx)(`span`,{className:`text-body-medium-lighter leading-6 text-[var(--content-default)]`,children:`Include diagnostics`})]}),(0,O.jsx)(i,{content:`Diagnostics include browser context, assistant logs, and timestamps — never passwords or credentials.`,children:(0,O.jsx)(`button`,{type:`button`,"aria-label":`About diagnostics`,className:`inline-flex items-center justify-center text-[var(--content-tertiary)]`,children:(0,O.jsx)(ee,{className:`h-3.5 w-3.5`})})})]}),z&&(0,O.jsx)(v,{options:ue,value:U,onChange:W,"aria-label":`Diagnostics time range`})]}),b()&&d&&M!==`feature_request`&&(0,O.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2.5`,children:[(0,O.jsx)(_,{checked:Y,onChange:()=>be(e=>!e),"aria-label":`Include the most recent conversation`}),(0,O.jsx)(`span`,{className:`text-body-medium-lighter leading-6 text-[var(--content-default)]`,children:`Include the most recent conversation`})]}),(0,O.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,O.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,O.jsxs)(`span`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:[`Attachments`,G.length>0&&(0,O.jsxs)(`span`,{className:`text-[var(--content-tertiary)]`,children:[` · `,G.length,`/`,N]})]}),(0,O.jsx)(a,{variant:`outlined`,size:`compact`,leftIcon:(0,O.jsx)(p,{}),onClick:()=>D.current?.click(),disabled:G.length>=N,children:`Add files`}),(0,O.jsx)(`input`,{ref:D,type:`file`,multiple:!0,accept:`image/png,image/jpeg,image/gif,image/webp,video/mp4,video/quicktime,video/webm`,onChange:je,className:`hidden`})]}),G.length>0&&(0,O.jsx)(`div`,{className:`flex gap-2 overflow-x-auto`,children:G.map((e,t)=>(0,O.jsx)(_e,{file:e,onRemove:()=>Fe(t)},`${e.name}-${t}`))}),ye&&(0,O.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Drop files to attach…`})]})]}),ve&&(0,O.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--system-negative-strong)]`,children:ve})]}),(0,O.jsx)(`div`,{className:`mt-4 flex items-center justify-end gap-2 border-t pt-4`,style:{borderColor:`var(--border-subtle)`},children:$?(0,O.jsxs)(`span`,{className:`inline-flex items-center gap-2 text-body-medium-lighter text-[var(--content-secondary)]`,children:[(0,O.jsx)(te,{className:`h-4 w-4 animate-spin`}),X?`Preparing diagnostics…`:`Sending feedback…`]}):(0,O.jsxs)(O.Fragment,{children:[(0,O.jsx)(a,{variant:`ghost`,onClick:t,children:`Cancel`}),X?(0,O.jsx)(a,{variant:`primary`,leftIcon:(0,O.jsx)(u,{}),onClick:async()=>{if(!$){q(null),Q(!0);try{let e=await he(U,c??null,b()?Y?d??null:null:d??null,{diagnosticsProvider:x,doctorSessionId:f,extraLogFiles:De});if(!e){q(`Diagnostics export isn't supported in this browser.`);return}let n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=e.name,document.body.appendChild(r),r.click(),r.remove(),setTimeout(()=>URL.revokeObjectURL(n),0),t()}catch(e){q(e instanceof Error?e.message:`Failed to build diagnostics. Please try again.`)}finally{Q(!1)}}},children:`Download diagnostics`}):(0,O.jsx)(a,{variant:`primary`,leftIcon:(0,O.jsx)(re,{}),onClick:async()=>{if(!(!we||$)){q(null),Q(!0);try{let e=z&&M!==`feature_request`?await he(U,c??null,b()?Y?d??null:null:d??null,{diagnosticsProvider:x,doctorSessionId:f,extraLogFiles:De}):null,n=fe(),r;if(n===`electron`)try{r=(await window.vellum?.app.versionInfo())?.version??r}catch{}let i=t=>Z.mutateAsync({headers:{"Content-Type":null},body:{message:F.trim(),classification:de[M],email:L.trim(),client:t,client_version:r,...c?{assistant_id:c}:{},...l?{assistant_version:l}:{},...f?{doctor_session_id:f}:{},...e?{logs_file:e}:{},...G.length?{attachments:G}:{}},bodySerializer:e=>{let t=new FormData;for(let[n,r]of Object.entries(e))if(r!=null){if(n===`attachments`&&Array.isArray(r)){for(let e of r)t.append(`attachments`,e);continue}r instanceof Blob?t.append(n,r):t.append(n,String(r))}return t}});try{await i(n)}catch(e){if(n!==`android`||!pe(e))throw e;await i(`web`)}o?.(),t()}catch(e){q(e instanceof Error?e.message:`Failed to submit feedback. Please try again.`)}finally{Q(!1)}}},disabled:!we,children:`Submit`})]})})]})}),document.body):null}function ge({option:e,isSelected:t,onSelect:n}){let r=e.icon;return(0,O.jsxs)(`button`,{type:`button`,onClick:n,"aria-pressed":t,className:`flex items-center gap-1.5 rounded-full border px-3 py-1.5 text-left transition-colors`,style:{borderColor:t?`var(--primary-base)`:`var(--border-base)`,backgroundColor:t?`color-mix(in oklab, var(--primary-base) 10%, transparent)`:`transparent`},children:[(0,O.jsx)(r,{className:`h-3.5 w-3.5 shrink-0`,style:{color:t?`var(--primary-base)`:`var(--content-secondary)`}}),(0,O.jsx)(`span`,{className:`text-body-small-default`,style:{color:t?`var(--primary-base)`:`var(--content-default)`},children:e.label})]})}function _e({file:e,onRemove:t}){let n=e.type.startsWith(`image/`),r=(0,w.useMemo)(()=>n?URL.createObjectURL(e):null,[e,n]);return(0,w.useEffect)(()=>{if(r)return()=>URL.revokeObjectURL(r)},[r]),(0,O.jsxs)(`div`,{className:`relative flex h-16 w-16 shrink-0 items-center justify-center overflow-hidden rounded-lg border border-[var(--border-base)] bg-[var(--surface-base)]`,title:e.name,children:[n&&r?(0,O.jsx)(`img`,{src:r,alt:e.name,className:`h-full w-full object-cover`}):(0,O.jsx)(p,{className:`h-5 w-5 text-[var(--content-secondary)]`}),(0,O.jsx)(a,{variant:`ghost`,size:`compact`,iconOnly:(0,O.jsx)(m,{}),onClick:t,"aria-label":`Remove ${e.name}`,className:`absolute top-0.5 right-0.5 h-4 w-4 rounded-full bg-black/60 text-white hover:bg-black/70`,tintColor:`#fff`})]})}export{D as n,W 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{d as r,t as i,u as a}from"./chunk-5KNZJZUH-BUqIilZr.js";import{t as o}from"./jsx-runtime-BJ8jcmzB.js";import{t as s}from"./typography-DekrYXvs.js";import{t as c}from"./arrow-left-Ciai6BHG.js";import{t as l}from"./chevron-right-Dwr_Sx98.js";import{n as u,t as d}from"./runtime-upgrade-banner-BrXnDFJZ.js";import{l as f}from"./src-qDZBwoEm.js";import{t as p}from"./is-electron-wgAC5Mzb.js";import{d as m}from"./routes-B7wRw3UT.js";import{l as h}from"./platform-detection-Dt0-jSAU.js";import{n as g}from"./use-is-mobile-q9Lr7beO.js";import{t as _}from"./use-edge-swipe-back-Dl-lRTON.js";import{t as v}from"./link-click-3KBltS8g.js";var y=e(t(),1),b=`data-page-transition`,x=400,S;function C(){return typeof document<`u`&&typeof document.startViewTransition==`function`}function w(){return h()&&C()}function T(e,t,n,r){if(!w()){e(t,r);return}document.documentElement.setAttribute(b,n),S!==void 0&&clearTimeout(S),S=setTimeout(()=>{S=void 0,document.documentElement.removeAttribute(b)},x),e(t,{...r,viewTransition:!0})}var E=o();function D({sidebar:e,children:t,actions:o,backHref:l,title:f=`Settings`,menuRoute:h=m.settings.root}){let{pathname:v}=a(),b=r(),x=v===h,S=g(),C=(0,y.useRef)(null),w=(0,y.useRef)(null);(0,y.useLayoutEffect)(()=>{w.current?.scrollTo(0,0)},[v]);let D=x?l:h;_({containerRef:C,onBack:(0,y.useCallback)(()=>{b(D)},[b,D]),enabled:S,navKey:v,prefetchHref:D});let O=p(),k=x?`Back from ${f}`:`Back to ${f} menu`,A=(0,E.jsx)(n,{variant:`ghost`,iconOnly:(0,E.jsx)(c,{}),"aria-label":k,tintColor:`var(--content-secondary)`,onClick:()=>T(b,D,`pop`)}),j=(0,E.jsx)(n,{asChild:!0,variant:`outlined`,"aria-label":`Back from ${f}`,className:`h-8 w-8 px-0`,tintColor:`var(--content-secondary)`,children:(0,E.jsx)(i,{to:l,className:`flex items-center justify-center no-underline`,children:(0,E.jsx)(c,{size:16,"aria-hidden":`true`})})});return(0,E.jsxs)(`div`,{ref:C,className:`flex h-full min-h-0 w-full flex-1 flex-col gap-4 p-4 sm:p-6 md:gap-0`,style:{paddingTop:O?`3.75rem`:`1rem`},children:[(0,E.jsxs)(`div`,{className:`flex shrink-0 items-center gap-3 md:hidden`,children:[A,(0,E.jsx)(s,{as:`h1`,variant:`body-large-default`,className:`flex-1 truncate text-center`,style:{color:`var(--content-tertiary)`,lineHeight:1.4},children:f}),(0,E.jsx)(`div`,{className:`h-10 w-10 shrink-0`,"aria-hidden":`true`})]}),O?(0,E.jsxs)(`div`,{className:`flex shrink-0 flex-col gap-2 pb-4 empty:hidden`,children:[(0,E.jsx)(u,{placement:`electron`,className:`px-0 pt-0`}),(0,E.jsx)(d,{placement:`electron`,className:`px-0 pt-0`})]}):null,(0,E.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden md:rounded-[12px] md:border md:border-[var(--border-base)] md:bg-[var(--surface-overlay)]`,children:[(0,E.jsxs)(`div`,{className:`hidden shrink-0 items-center justify-between gap-4 px-6 py-5 md:flex`,children:[(0,E.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[j,(0,E.jsx)(`h1`,{className:`text-title-large truncate`,style:{color:`var(--content-emphasised)`,lineHeight:1.2},children:f})]}),(0,E.jsx)(`div`,{className:`flex shrink-0 items-center gap-2`,children:o})]}),(0,E.jsxs)(`div`,{className:`flex min-h-0 flex-1 overflow-hidden`,children:[(0,E.jsx)(`aside`,{className:`hidden w-64 shrink-0 overflow-y-auto md:block`,"aria-label":`${f} navigation`,children:e}),x?(0,E.jsx)(`div`,{className:`flex min-w-0 min-h-0 flex-1 flex-col overflow-y-auto overflow-x-hidden pb-6 md:hidden`,children:e}):null,(0,E.jsx)(`main`,{ref:w,className:`min-w-0 min-h-0 flex-1 flex-col gap-4 overflow-y-auto overflow-x-hidden pb-6 md:flex md:px-6 md:pt-0 ${x?`hidden`:`flex`}`,children:t})]})]})]})}function O({items:e,bottomItems:t,indexPath:n}){let{pathname:i}=a(),o=r(),s=g(),c=(e,t,r)=>{let{href:a,onSelect:c}=e,u=a!=null&&(i===a||i.startsWith(a+`/`)||!s&&r&&n!=null&&i===n);return(0,E.jsxs)(y.Fragment,{children:[(0,E.jsx)(f.Item,{icon:e.icon,label:e.label,active:u,trailingIcon:a==null?void 0:l,trailingIconClassName:a==null?void 0:`md:hidden`,href:a,onSelect:c,onClick:a==null?void 0:e=>{v(e)||(e.preventDefault(),T(o,a,`push`))}}),!t&&(0,E.jsx)(`div`,{role:`presentation`,"aria-hidden":!0,className:`my-2 h-px w-full bg-[var(--border-base)] md:hidden`})]},e.id)};return(0,E.jsxs)(`nav`,{"aria-label":`Sidebar navigation`,className:`flex min-h-full flex-col md:gap-2 md:px-6 md:pb-4`,children:[e.map((n,r)=>c(n,r===e.length-1&&!t?.length,r===0)),t&&t.length>0&&(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)(`div`,{className:`flex-1`}),(0,E.jsx)(`div`,{role:`presentation`,"aria-hidden":!0,className:`mx-0 my-2 h-px w-full bg-[var(--border-base)] md:mx-0`}),t.map((e,n)=>c(e,n===t.length-1,!1))]})]})}export{D as n,O as t};
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./button-VkxVX0DM.js";import{d as r,t as i,u as a}from"./chunk-5KNZJZUH-BUqIilZr.js";import{t as o}from"./jsx-runtime-BJ8jcmzB.js";import{t as s}from"./typography-DekrYXvs.js";import{t as c}from"./arrow-left-Ciai6BHG.js";import{t as l}from"./chevron-right-Dwr_Sx98.js";import{n as u,t as d}from"./runtime-upgrade-banner-Cj9E7kWP.js";import{u as f}from"./src-CImIAPTd.js";import{t as p}from"./is-electron-wgAC5Mzb.js";import{d as m}from"./routes-B7wRw3UT.js";import{l as h}from"./platform-detection-zth6eCY8.js";import{n as g}from"./use-is-mobile-q9Lr7beO.js";import{t as _}from"./use-edge-swipe-back-CiO9raEw.js";import{t as v}from"./link-click-BsxbQxDe.js";var y=e(t(),1),b=`data-page-transition`,x=400,S;function C(){return typeof document<`u`&&typeof document.startViewTransition==`function`}function w(){return h()&&C()}function T(e,t,n,r){if(!w()){e(t,r);return}document.documentElement.setAttribute(b,n),S!==void 0&&clearTimeout(S),S=setTimeout(()=>{S=void 0,document.documentElement.removeAttribute(b)},x),e(t,{...r,viewTransition:!0})}var E=o();function D({sidebar:e,children:t,actions:o,backHref:l,title:f=`Settings`,menuRoute:h=m.settings.root}){let{pathname:v}=a(),b=r(),x=v===h,S=g(),C=(0,y.useRef)(null),w=(0,y.useRef)(null);(0,y.useLayoutEffect)(()=>{w.current?.scrollTo(0,0)},[v]);let D=x?l:h;_({containerRef:C,onBack:(0,y.useCallback)(()=>{b(D)},[b,D]),enabled:S,navKey:v,prefetchHref:D});let O=p(),k=x?`Back from ${f}`:`Back to ${f} menu`,A=(0,E.jsx)(n,{variant:`ghost`,iconOnly:(0,E.jsx)(c,{}),"aria-label":k,tintColor:`var(--content-secondary)`,onClick:()=>T(b,D,`pop`)}),j=(0,E.jsx)(n,{asChild:!0,variant:`outlined`,"aria-label":`Back from ${f}`,className:`h-8 w-8 px-0`,tintColor:`var(--content-secondary)`,children:(0,E.jsx)(i,{to:l,className:`flex items-center justify-center no-underline`,children:(0,E.jsx)(c,{size:16,"aria-hidden":`true`})})});return(0,E.jsxs)(`div`,{ref:C,className:`flex h-full min-h-0 w-full flex-1 flex-col gap-4 p-4 sm:p-6 md:gap-0`,style:{paddingTop:O?`3.75rem`:`1rem`},children:[(0,E.jsxs)(`div`,{className:`flex shrink-0 items-center gap-3 md:hidden`,children:[A,(0,E.jsx)(s,{as:`h1`,variant:`body-large-default`,className:`flex-1 truncate text-center`,style:{color:`var(--content-tertiary)`,lineHeight:1.4},children:f}),(0,E.jsx)(`div`,{className:`h-10 w-10 shrink-0`,"aria-hidden":`true`})]}),O?(0,E.jsxs)(`div`,{className:`flex shrink-0 flex-col gap-2 pb-4 empty:hidden`,children:[(0,E.jsx)(u,{placement:`electron`,className:`px-0 pt-0`}),(0,E.jsx)(d,{placement:`electron`,className:`px-0 pt-0`})]}):null,(0,E.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden md:rounded-[12px] md:border md:border-[var(--border-base)] md:bg-[var(--surface-overlay)]`,children:[(0,E.jsxs)(`div`,{className:`hidden shrink-0 items-center justify-between gap-4 px-6 py-5 md:flex`,children:[(0,E.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[j,(0,E.jsx)(`h1`,{className:`text-title-large truncate`,style:{color:`var(--content-emphasised)`,lineHeight:1.2},children:f})]}),(0,E.jsx)(`div`,{className:`flex shrink-0 items-center gap-2`,children:o})]}),(0,E.jsxs)(`div`,{className:`flex min-h-0 flex-1 overflow-hidden`,children:[(0,E.jsx)(`aside`,{className:`hidden w-64 shrink-0 overflow-y-auto md:block`,"aria-label":`${f} navigation`,children:e}),x?(0,E.jsx)(`div`,{className:`flex min-w-0 min-h-0 flex-1 flex-col overflow-y-auto overflow-x-hidden pb-6 md:hidden`,children:e}):null,(0,E.jsx)(`main`,{ref:w,className:`min-w-0 min-h-0 flex-1 flex-col gap-4 overflow-y-auto overflow-x-hidden pb-6 md:flex md:px-6 md:pt-0 ${x?`hidden`:`flex`}`,children:t})]})]})]})}function O({items:e,bottomItems:t,indexPath:n}){let{pathname:i}=a(),o=r(),s=g(),c=(e,t,r)=>{let{href:a,onSelect:c}=e,u=a!=null&&(i===a||i.startsWith(a+`/`)||!s&&r&&n!=null&&i===n);return(0,E.jsxs)(y.Fragment,{children:[(0,E.jsx)(f.Item,{icon:e.icon,label:e.label,active:u,trailingIcon:a==null?void 0:l,trailingIconClassName:a==null?void 0:`md:hidden`,href:a,onSelect:c,onClick:a==null?void 0:e=>{v(e)||(e.preventDefault(),T(o,a,`push`))}}),!t&&(0,E.jsx)(`div`,{role:`presentation`,"aria-hidden":!0,className:`my-2 h-px w-full bg-[var(--border-base)] md:hidden`})]},e.id)};return(0,E.jsxs)(`nav`,{"aria-label":`Sidebar navigation`,className:`flex min-h-full flex-col md:gap-2 md:px-6 md:pb-4`,children:[e.map((n,r)=>c(n,r===e.length-1&&!t?.length,r===0)),t&&t.length>0&&(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)(`div`,{className:`flex-1`}),(0,E.jsx)(`div`,{role:`presentation`,"aria-hidden":!0,className:`mx-0 my-2 h-px w-full bg-[var(--border-base)] md:mx-0`}),t.map((e,n)=>c(e,n===t.length-1,!1))]})]})}export{D as n,O as t};
@@ -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"./i18n--HmJLuhM.js";import{t as r}from"./Trans-BUsRawhS.js";import{t as i}from"./useTranslation-DdVCKPgw.js";import{f as a}from"./native-biometric-BxYhgb-X.js";import{n as o,r as s}from"./login-flow-Bprf1KQp.js";import{t as c}from"./proxy-CT_qJI1K.js";import{t as l}from"./AnimatePresence-CxaKvfs9.js";import{t as u}from"./apple-logo-C_J-Nv61.js";import{n as d,t as f}from"./use-return-to-short-circuit-CXFMS-0F.js";import{t as p}from"./signup-shell-DnLhiMGV.js";var m=e(t(),1),h=n();function g({words:e}){let[t,n]=(0,m.useState)(0),r=(0,m.useMemo)(()=>e.reduce((e,t)=>e.length>=t.length?e:t),[e]);return(0,m.useEffect)(()=>{let t=setInterval(()=>{n(t=>(t+1)%e.length)},2400);return()=>clearInterval(t)},[e.length]),(0,h.jsxs)(`span`,{className:`signup__rotating`,children:[(0,h.jsxs)(`span`,{className:`signup__rotating-sizer`,"aria-hidden":!0,children:[r,`.`]}),(0,h.jsx)(l,{mode:`wait`,children:(0,h.jsxs)(c.em,{initial:{opacity:0,y:16},animate:{opacity:1,y:0},exit:{opacity:0,y:-16},transition:{duration:.3,ease:`easeInOut`},children:[e[t],`.`]},e[t])})]})}var _=[`signupScreen.headlineRoles.personalIntelligence`,`signupScreen.headlineRoles.softwareEngineer`,`signupScreen.headlineRoles.financeOps`,`signupScreen.headlineRoles.householdManager`,`signupScreen.headlineRoles.gtmEngineer`,`signupScreen.headlineRoles.productLead`];function v({returnTo:e}){let{t}=i(`account`),n=(0,m.useMemo)(()=>_.map(e=>t(e)),[t]),[c,l]=(0,m.useState)(null),d=s(e,{authIntent:`signup`});return(0,h.jsxs)(p,{children:[(0,h.jsxs)(`h1`,{className:`signup__title`,children:[t(`signupScreen.headlineLead`),(0,h.jsx)(`br`,{}),(0,h.jsx)(g,{words:n})]}),(0,h.jsx)(`p`,{className:`signup__subtitle`,children:t(`signupScreen.subtitle`)}),(0,h.jsx)(`div`,{className:`signup__buttons`,children:(0,h.jsx)(`button`,{type:`button`,className:`signup__btn`,onClick:()=>{l(null),a(o,d,{returnTo:e,intent:`signup`}).catch(e=>{console.error(`[signup] auth flow failed:`,e),l(t(`authErrors.genericFailure`))})},children:t(`signupScreen.continue`)})}),c&&(0,h.jsx)(`p`,{className:`signup__error`,children:c}),(0,h.jsx)(`p`,{className:`signup__footer`,children:(0,h.jsx)(r,{i18nKey:`signupScreen.haveAccountPrompt`,ns:`account`,components:{signIn:(0,h.jsx)(`button`,{type:`button`,className:`signup__link`,onClick:()=>{l(null),a(o,s(e),{returnTo:e}).catch(e=>{console.error(`[signup] sign-in flow failed:`,e),l(t(`authErrors.genericFailure`))})}})}})}),(0,h.jsxs)(`a`,{className:`signup__download`,href:`/downloads`,children:[(0,h.jsx)(u,{size:16}),t(`signupScreen.downloadMac`)]})]})}function y(){let e=f();return e.kind===`wait`?(0,h.jsx)(p,{children:(0,h.jsx)(d,{})}):e.kind===`redirect`?e.node:(0,h.jsx)(v,{returnTo:e.returnTo})}export{y as SignupPage};
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"./i18n-C9hRT4Lf.js";import{t as r}from"./Trans-FBE1EuwL.js";import{t as i}from"./useTranslation-D9pPv-bA.js";import{f as a}from"./native-biometric-D9IxNvJM.js";import{n as o,r as s}from"./login-flow-D6ivg6PM.js";import{t as c}from"./proxy-CT_qJI1K.js";import{t as l}from"./AnimatePresence-CxaKvfs9.js";import{t as u}from"./apple-logo-C_J-Nv61.js";import{n as d,t as f}from"./use-return-to-short-circuit-EtY8cSC7.js";import{t as p}from"./signup-shell-DW976E_0.js";var m=e(t(),1),h=n();function g({words:e}){let[t,n]=(0,m.useState)(0),r=(0,m.useMemo)(()=>e.reduce((e,t)=>e.length>=t.length?e:t),[e]);return(0,m.useEffect)(()=>{let t=setInterval(()=>{n(t=>(t+1)%e.length)},2400);return()=>clearInterval(t)},[e.length]),(0,h.jsxs)(`span`,{className:`signup__rotating`,children:[(0,h.jsxs)(`span`,{className:`signup__rotating-sizer`,"aria-hidden":!0,children:[r,`.`]}),(0,h.jsx)(l,{mode:`wait`,children:(0,h.jsxs)(c.em,{initial:{opacity:0,y:16},animate:{opacity:1,y:0},exit:{opacity:0,y:-16},transition:{duration:.3,ease:`easeInOut`},children:[e[t],`.`]},e[t])})]})}var _=[`signupScreen.headlineRoles.personalIntelligence`,`signupScreen.headlineRoles.softwareEngineer`,`signupScreen.headlineRoles.financeOps`,`signupScreen.headlineRoles.householdManager`,`signupScreen.headlineRoles.gtmEngineer`,`signupScreen.headlineRoles.productLead`];function v({returnTo:e}){let{t}=i(`account`),n=(0,m.useMemo)(()=>_.map(e=>t(e)),[t]),[c,l]=(0,m.useState)(null),d=s(e,{authIntent:`signup`});return(0,h.jsxs)(p,{children:[(0,h.jsxs)(`h1`,{className:`signup__title`,children:[t(`signupScreen.headlineLead`),(0,h.jsx)(`br`,{}),(0,h.jsx)(g,{words:n})]}),(0,h.jsx)(`p`,{className:`signup__subtitle`,children:t(`signupScreen.subtitle`)}),(0,h.jsx)(`div`,{className:`signup__buttons`,children:(0,h.jsx)(`button`,{type:`button`,className:`signup__btn`,onClick:()=>{l(null),a(o,d,{returnTo:e,intent:`signup`}).catch(e=>{console.error(`[signup] auth flow failed:`,e),l(t(`authErrors.genericFailure`))})},children:t(`signupScreen.continue`)})}),c&&(0,h.jsx)(`p`,{className:`signup__error`,children:c}),(0,h.jsx)(`p`,{className:`signup__footer`,children:(0,h.jsx)(r,{i18nKey:`signupScreen.haveAccountPrompt`,ns:`account`,components:{signIn:(0,h.jsx)(`button`,{type:`button`,className:`signup__link`,onClick:()=>{l(null),a(o,s(e),{returnTo:e}).catch(e=>{console.error(`[signup] sign-in flow failed:`,e),l(t(`authErrors.genericFailure`))})}})}})}),(0,h.jsxs)(`a`,{className:`signup__download`,href:`/downloads`,children:[(0,h.jsx)(u,{size:16}),t(`signupScreen.downloadMac`)]})]})}function y(){let e=f();return e.kind===`wait`?(0,h.jsx)(p,{children:(0,h.jsx)(d,{})}):e.kind===`redirect`?e.node:(0,h.jsx)(v,{returnTo:e.returnTo})}export{y as SignupPage};
@@ -1 +1 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{n}from"./button-VkxVX0DM.js";import{t as r}from"./jsx-runtime-BJ8jcmzB.js";import{t as i}from"./typography-DekrYXvs.js";import{E as a,T as o,o as s,s as c,w as l}from"./message-content-weXJNNKO.js";import{t as u}from"./brain-9Csfs96f.js";import{t as d}from"./check-pgeLaeXx.js";import{t as f}from"./circle-check-BlOeCme9.js";import{t as p}from"./code-u4Wi5zSA.js";import{t as m}from"./file-text-DpdlyCly.js";import{t as h}from"./globe-COrlg99x.js";import{t as g}from"./monitor-BHYV5XBf.js";import{t as _}from"./plug-sTs_y01k.js";import{t as v}from"./sparkles-Bhr0JiLM.js";import{t as ee}from"./user-plus-BsoY_aiQ.js";import"./src-qDZBwoEm.js";import{t as y}from"./popover-D3A6cIyW.js";import{D as b,O as te}from"./chat-BWQujip4.js";import{t as x}from"./misc-B24X-saO.js";import{t as ne}from"./proxy-CT_qJI1K.js";import{t as re}from"./AnimatePresence-CxaKvfs9.js";import{t as S}from"./use-reduced-motion-CU3dPXKf.js";import{t as C}from"./three-dot-indicator-CYYJ1RDJ.js";var w=e(t(),1),T=r();function E(e){let t=e.trimStart();if(!t.startsWith(`**`))return e;let n=t.indexOf(`**`,2);if(n===-1)return t.slice(2).trimStart();let r=t.slice(2,n).trim();return r.length>0?r:e}var ie=/^https?:\/\/\S+/,ae=/^URL:\s*(https?:\/\/\S+)/i,oe=/^\[\d+\]\s*(https?:\/\/\S+)/;function D(e){try{return new URL(e).hostname.replace(/^www\./,``)}catch{return``}}function se(e){let t=e.trim();return ae.exec(t)?.[1]??oe.exec(t)?.[1]??t}function ce(e){return e.trim().replace(/^\d+\.\s+/,``)}function le(e){let t=e.split(/\r?\n/),n=[],r=new Set,i=``;for(let e of t){let t=e.trim();if(!t){i=``;continue}let a=se(t);if(ie.test(a)){r.has(a)||(r.add(a),n.push({title:i,url:a})),i=``;continue}/^Web search results for /i.test(t)||/^Sources:?$/i.test(t)||(i=ce(t))}return n}function O(e){return!e||!e.trim()?[]:le(e).map((e,t)=>{let n=D(e.url);return{rank:t+1,title:e.title,url:e.url,domain:n}})}var ue=5,de=new Set([`web_search`,`web_fetch`]);function k(e){if(!Number.isFinite(e)||e<1e3)return`<1s`;let t=Math.round(e/1e3);if(t<60)return`${t}s`;let n=Math.round(t/60);return n<60?`${n}m`:`${Math.round(n/60)}h`}function A(e){return de.has(e.name)}function j(e){return e?`Searched the web`:`Searching the web`}function M(e){return{visible:e.slice(0,ue),overflowResults:e.slice(ue)}}function fe(e,t){let{visible:n,overflowResults:r}=M(e.results);return{kind:`web_search`,title:j(t),durationLabel:k(e.durationMs),linkCount:e.resultCount,results:n,overflowResults:r}}function pe(e){let t=e.title??e.domain;return{kind:`thinking`,durationLabel:k(e.durationMs),text:`Reading ${t}`}}function me(){return{kind:`web_search`,title:`Searching the web`,durationLabel:``,linkCount:0,results:[]}}function he(){return{kind:`thinking`,durationLabel:``,text:`Reading…`}}function ge(e){let t=O(e);if(t.length===0)return null;let{visible:n,overflowResults:r}=M(t);return{kind:`web_search`,title:j(!0),durationLabel:``,linkCount:t.length,results:n,overflowResults:r}}function _e(e){return{kind:`web_search_error`,title:`Web search failed`,durationLabel:k(e.durationMs),errorMessage:e.errorMessage??`Search is having trouble right now. You can try again in a moment, continue without web search, or paste the relevant details here and I'll use those.`}}function N(){return{kind:`web_search`,title:j(!0),durationLabel:``,linkCount:0,results:[]}}function P(e,t){return t[e.id]??e.activityMetadata}function F(e){return!b(e)}function I(e,t){return e.results.length>0?!1:!!e.errorMessage||!!t.isError}function L(e){return e.confirmationDecision===`denied`||e.confirmationDecision===`timed_out`?`denied`:e.isError?`error`:b(e)?`running`:`completed`}function R(e,t){return e==null||t==null?null:Math.max(0,t-e)}function z(e,t){let n=R(e,t);return n==null?``:k(n)}function B(e){return z(e.startedAt??void 0,e.completedAt??void 0)}function ve(e){return!s(e)&&b(e)}function ye(e,t){if(e.kind===`thinking`)return e.text?e.completedAt==null?e.startedAt!=null&&t!=null?Math.max(0,t-e.startedAt):null:R(e.startedAt,e.completedAt):null;let n=e.toolCall;if(s(n))return null;let r=te(n);return n.completedAt==null?b(n)&&r!=null&&t!=null?Math.max(0,t-r):null:R(r,n.completedAt)}function be(e){return e.some(e=>e.kind===`thinking`?!!e.text&&e.startedAt!=null&&e.completedAt==null:ve(e.toolCall))}function xe(e,t){let n=0,r=!1;for(let i of e){let e=ye(i,t);e!=null&&(r=!0,n+=e)}return r?k(n):``}function Se(e){let{title:t,activity:n}=c(e);return{toolCallId:e.id,toolName:e.name,title:t,activity:n,input:e.input??{},result:e.result,streamedOutput:e.streamedOutput,status:L(e),riskLevel:e.riskLevel,riskReason:e.riskReason,durationLabel:B(e)}}function Ce(e){let{title:t,info:n,activity:r,iconName:i}=c(e);return{kind:`tool`,durationLabel:B(e),startedAt:e.startedAt??void 0,title:t,info:n,activity:r,riskLevel:e.riskLevel,iconName:i,toolCallId:e.id,status:L(e)}}function we(e,t){for(let n=e.length-1;n>=0;n--){let r=e[n];if(A(r)){let e=P(r,t),n=F(r);if(e?.webSearch&&I(e.webSearch,r))return`Web search failed`;if(r.name===`web_search`)return j(n);if(r.name===`web_fetch`)return`Thinking`}else return c(r).title}return``}function Te(e,t){for(let n=e.length-1;n>=0;n--){let r=e[n];if(!A(r)){let{info:e,activity:t}=c(r);return t||e}let i=P(r,t),a=F(r);if(i?.webSearch){let e=i.webSearch;if(I(e,r))return e.errorMessage??`Search is having trouble right now. You can try again in a moment, continue without web search, or paste the relevant details here and I'll use those.`;if(e.results.length>0)return e.results[e.results.length-1].title;if(!a&&e.query)return`Searching ${e.query}`}if(i?.webFetch){let e=i.webFetch;return a?e.title??e.domain:`Reading ${e.domain}`}if(r.name===`web_search`){if(!a){let e=typeof r.input?.query==`string`?r.input.query.trim():``;return e?`Searching ${e}`:``}if(typeof r.result==`string`){let e=O(r.result);if(e.length>0){let t=e[e.length-1].title;if(t)return t}}}if(r.name===`web_fetch`){let e=typeof r.input?.url==`string`?r.input.url:``,t=e?D(e):``;if(t)return a?t:`Reading ${t}`}}return``}function Ee(e,t){for(let n=e.length-1;n>=0;n--){let r=e[n];if(r.name!==`web_search`)continue;let i=P(r,t)?.webSearch?.results;if(i&&i.length>0)return i}return[]}function De(e){return e.includes(`denied`)?`denied`:e.includes(`loading`)?`loading`:e.includes(`error`)?`error`:`complete`}function Oe(e){return De(e.map(e=>e.confirmationDecision===`denied`||e.confirmationDecision===`timed_out`?`denied`:b(e)?`loading`:e.isError?`error`:`complete`))}function ke(e,t){if(s(e))return null;if(!A(e))return Ce(e);let n=P(e,t),r=F(e);if(n?.webSearch){let t=n.webSearch;return I(t,e)?_e(t):fe(t,r)}return n?.webFetch?pe(n.webFetch):r?e.name===`web_search`&&typeof e.result==`string`?ge(e.result)??N():N():e.name===`web_search`?me():he()}function Ae(e,t,n){let r=e.filter(e=>e.kind===`toolCall`).map(e=>e.toolCall).filter(e=>!s(e)),i=[],a=null,o=0;for(let n of e){if(n.kind===`thinking`){n.text&&(i.push({kind:`thinking`,durationLabel:z(n.startedAt,n.completedAt),text:n.text,startedAt:n.startedAt,completedAt:n.completedAt,thinkingItemIndex:o++}),a=n.text);continue}let e=ke(n.toolCall,t);e&&(i.push(e),a=null)}let c=Oe(r),l,u,d;a===null?(l=we(r,t),u=Te(r,t),d=`tool`):(l=`Thinking`,u=E(a),d=`thinking`);let f=Ee(r,t),p=`${i.length} step${i.length===1?``:`s`}`,m=xe(e,n);return{currentStepTitle:l,currentStepInfo:u,currentStepKind:d,stepCount:p,totalDurationLabel:m,steps:i,state:c,carouselItems:f}}var je=.44;function Me(e,t){let n=[...e].sort((e,t)=>e.position-t.position),r=n[0]?.color??`white`,i=n[n.length-1]?.color??`white`,a=n.map(e=>{let t=(e.position-.5)*2*je;return`${e.color} calc(50% + var(--gs-spread-mid) * ${t.toFixed(4)})`}).join(`, `);return[`linear-gradient(${t}deg`,`var(--gs-base) calc(50% - var(--gs-spread))`,`color-mix(in oklab, var(--gs-base) 42%, ${r}) calc(50% - var(--gs-spread-mid))`,a,`color-mix(in oklab, var(--gs-base) 42%, ${i}) calc(50% + var(--gs-spread-mid))`,`var(--gs-base) calc(50% + var(--gs-spread)))`].join(`, `)}function Ne(e){let t=`color-mix(in srgb, ${e} 40%, white)`;return[{position:0,color:t},{position:.5,color:e},{position:1,color:t}]}var Pe=`var(--avatar-accent, var(--content-emphasised))`,Fe=`color-mix(in srgb, currentColor 45%, transparent)`,Ie=1500,Le=106,V=6,H=48,U=.72,W=14,Re=96;function ze(){return typeof CSS>`u`||typeof CSS.supports!=`function`?!1:CSS.supports(`background-clip`,`text`)||CSS.supports(`-webkit-background-clip`,`text`)}function G({children:e,colorHex:t,className:n,"data-testid":r}){let i=(0,w.useRef)(null),a=S(),o=t??Pe,s=(0,w.useMemo)(()=>Me(Ne(o),Le),[o]);(0,w.useLayoutEffect)(()=>{let t=i.current;if(!t)return;if(!ze()){t.style.removeProperty(`background-image`),t.style.removeProperty(`background-color`),t.style.removeProperty(`-webkit-text-fill-color`);return}if(a||typeof t.animate!=`function`)return;let n=null,r=()=>{let r=t.getBoundingClientRect().width||Re,i=(Number.parseFloat(getComputedStyle(t).fontSize)||W)/W,a=Math.min(e.length*V*i,H*i),o=Math.max(1,r+a*2);t.style.setProperty(`--gs-spread`,`${a}px`),t.style.setProperty(`--gs-spread-mid`,`${a*U}px`),t.style.backgroundSize=`${o}px 100%`,n?.cancel(),n=t.animate([{backgroundPosition:`0px center`},{backgroundPosition:`${o}px center`}],{duration:Ie,easing:`linear`,iterations:1/0}),n.startTime=0};r();let o=typeof ResizeObserver>`u`?void 0:new ResizeObserver(r);return o?.observe(t),()=>{o?.disconnect(),n?.cancel()}},[e,a]);let c=Math.min(e.length*V,H);return(0,T.jsx)(`span`,{ref:i,className:n,style:{position:`relative`,display:`inline-block`,backgroundImage:s,backgroundRepeat:`repeat-x`,backgroundSize:`100% 100%`,backgroundColor:`var(--gs-base)`,WebkitBackgroundClip:`text`,backgroundClip:`text`,WebkitTextFillColor:`transparent`,"--gs-base":Fe,"--gs-spread":`${c}px`,"--gs-spread-mid":`${c*U}px`},"data-testid":r,children:e})}var Be=400;function Ve(e,t,n){let[r,i]=(0,w.useState)(e),a=(0,w.useRef)(null),o=(0,w.useRef)(null),s=(0,w.useRef)(null);return(0,w.useEffect)(()=>{if(Object.is(r,e)){o.current=null;return}if(n){s.current&&=(clearTimeout(s.current),null),o.current=null,i(e),a.current=Date.now();return}o.current=e;let c=Date.now();a.current===null&&(a.current=c);let l=c-a.current,u=Math.max(0,t-l);return s.current&&clearTimeout(s.current),s.current=setTimeout(()=>{o.current!==null&&(i(o.current),a.current=Date.now(),o.current=null),s.current=null},u),()=>{s.current&&=(clearTimeout(s.current),null)}},[e,r,t,n]),r}function He({currentStepTitle:e,currentStepInfo:t,bypassDwell:n=!1,animationKey:r,shimmer:a=!1,inline:o=!1}){let s=S(),c=Ve((0,w.useMemo)(()=>({title:e,info:t}),[e,t]),Be,n),l=s?{duration:0}:{duration:.25,ease:[.16,1,.3,1]},u=s?{opacity:0}:{y:-16,opacity:0},d=s?{opacity:1}:{y:0,opacity:1},f=s?{opacity:0}:{y:16,opacity:0},p=typeof c.info==`string`||typeof c.info==`number`,m=p?String(c.info):c.info==null?``:`node`,h=r??`${c.title}::${m}`,g=p?c.info!==``:c.info!=null,_=c.title.trim()!==``,v=g?`block min-w-0`:`block min-w-0 flex-1`;return(0,T.jsx)(re,{initial:!1,mode:`popLayout`,children:(0,T.jsxs)(ne.span,{initial:u,animate:d,exit:f,transition:l,className:`flex min-w-0 flex-1 items-center gap-1`,children:[_?o?(0,T.jsx)(`span`,{className:`${v} truncate text-left text-[13px] font-medium leading-[16px] text-[var(--content-secondary)]`,children:a?(0,T.jsx)(G,{children:c.title}):c.title}):(0,T.jsx)(i,{variant:`body-medium-default`,className:`ml-1 ${v} truncate text-left text-[var(--content-emphasised)]`,children:a?(0,T.jsx)(G,{children:c.title}):c.title}):null,g?(0,T.jsxs)(T.Fragment,{children:[_?(0,T.jsx)(`span`,{"aria-hidden":`true`,className:`ml-1 h-3.5 w-px shrink-0 bg-[var(--border-element)]`}):null,p?o&&!_?(0,T.jsx)(`span`,{className:`block min-w-0 flex-1 truncate text-left text-[13px] font-medium leading-[16px] text-[var(--content-secondary)]`,children:a&&typeof c.info==`string`?(0,T.jsx)(G,{children:c.info}):c.info}):(0,T.jsx)(i,{variant:_?`body-small-default`:`body-medium-default`,className:`ml-1 block min-w-0 flex-1 truncate text-left leading-[16px] ${_?`text-[var(--content-tertiary)]`:`text-[var(--content-emphasised)]`}`,children:a&&!_&&typeof c.info==`string`?(0,T.jsx)(G,{children:c.info}):c.info}):(0,T.jsx)(`span`,{className:`ml-1 block min-w-0 flex-1`,children:c.info})]}):null]},h)})}var K={code:p,terminal:l,file:m,globe:h,pen:o,monitor:g,plug:_,sparkle:v,"user-plus":ee,bolt:a,brain:u};function Ue(e){if(e.kind===`thinking`)return`Thinking`;if(e.kind===`web_search`||e.kind===`web_search_error`)return`Searching the web`;if(e.kind===`tool_error`)return`Error`;let t=e.title;return t.startsWith(`Working`)?t:t===`Reading`||t===`Editing`||t.startsWith(`Running`)?`Working`:t===`Using a skill`?`Using a skill`:(t.startsWith(`Using `),t)}function We(e){if(!e||e===`<1s`)return 0;let t=/^(\d+)(s|m|h)$/.exec(e);if(!t)return 0;let n=Number(t[1]);switch(t[2]){case`h`:return n*36e5;case`m`:return n*6e4;default:return n*1e3}}function Ge(e){let t=null;for(let n of e)(n.kind===`tool`||n.kind===`thinking`)&&n.startedAt!=null&&(t=t==null?n.startedAt:Math.min(t,n.startedAt));return t}function Ke(e){return new Date(e).toLocaleTimeString([],{hour:`numeric`,minute:`2-digit`,second:`2-digit`})}function qe({durationLabel:e,startedAt:t}){let r=(0,T.jsx)(i,{variant:`label-medium-default`,className:`text-[var(--content-tertiary)]`,children:e});return t==null?r:(0,T.jsx)(n,{content:`Started at ${Ke(t)}`,side:`top`,align:`end`,children:(0,T.jsx)(`span`,{className:`cursor-default`,children:r})})}function q(e){let t=0,n=!1;for(let r of e)r&&(n=!0,t+=We(r));return n?k(t):``}function J(e){if(e.length===0)return`running`;for(let t of e){if(t.kind===`tool`){if(t.status===`running`)return`running`;continue}if(t.kind===`web_search`&&t.title===`Searching the web`)return`running`}return`completed`}function Y(e){let t=[];for(let n of e){let e=Ue(n),r=t[t.length-1];r&&r.label===e?r.steps.push(n):t.push({label:e,steps:[n]})}return t}function Je({steps:e,renderStep:t,timeline:n=!1}){if(e.length===0)return null;let r=Y(e),i=[],a=0;for(let e of r)i.push(a),a+=e.steps.length;let o=(e,n)=>e.steps.map((e,r)=>{let i=$e(e,n+r);return(0,T.jsx)(w.Fragment,{children:t?t(e):(0,T.jsx)(tt,{step:e})},i)});return n?(0,T.jsx)(`div`,{className:`flex w-full flex-col`,children:r.map((e,t)=>(0,T.jsx)(Ye,{section:e,baseIndex:i[t],isLast:t===r.length-1,renderSectionSteps:o},`${e.label}-${t}`))}):(0,T.jsx)(`div`,{className:`flex w-full flex-col gap-3`,children:r.map((e,t)=>{let n=q(e.steps.map(e=>`durationLabel`in e?e.durationLabel:``)),r=J(e.steps),a=i[t];return(0,T.jsxs)(`div`,{"data-testid":`phase-section`,"data-phase-label":e.label,className:`flex flex-col gap-1`,children:[(0,T.jsx)(et,{label:e.label,durationLabel:n,status:r}),(0,T.jsx)(`div`,{className:`flex min-w-0 flex-col items-start gap-1 pl-[24px]`,children:o(e,a)})]},`${e.label}-${t}`)})})}function Ye({section:e,baseIndex:t,isLast:n,renderSectionSteps:r}){let a=q(e.steps.map(e=>`durationLabel`in e?e.durationLabel:``)),o=J(e.steps),s=e.steps[0]?.kind===`thinking`;return(0,T.jsxs)(`div`,{"data-testid":`phase-section`,"data-phase-label":e.label,className:`relative flex flex-col gap-2`,children:[!n&&(0,T.jsx)(Xe,{}),(0,T.jsxs)(`div`,{"data-testid":`phase-header`,className:`flex items-center justify-between gap-2 py-[2px]`,children:[(0,T.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,T.jsx)(Ze,{status:o,isThinking:s}),(0,T.jsx)(i,{variant:`body-medium-default`,className:`text-[var(--content-default)]`,children:e.label})]}),a?(0,T.jsx)(qe,{durationLabel:a,startedAt:Ge(e.steps)}):null]}),(0,T.jsx)(`div`,{className:x(`flex min-w-0 flex-col items-start gap-1 pl-[22px]`,!n&&`pb-3`),children:r(e,t)})]})}function Xe({className:e}){return(0,T.jsx)(`div`,{"aria-hidden":!0,className:x(`absolute bottom-0 left-[6.5px] top-6 w-px bg-[var(--border-subtle)]`,e)})}function Ze({status:e,isThinking:t}){return t?(0,T.jsx)(u,{"aria-hidden":`true`,"data-testid":`phase-header-status-icon`,"data-status":`thinking`,className:`h-[14px] w-[14px] shrink-0 text-[var(--content-secondary)]`}):(0,T.jsx)(Qe,{status:e,testId:`phase-header-status-icon`})}function Qe({status:e,testId:t}){return e===`completed`?(0,T.jsx)(f,{"aria-hidden":`true`,"data-testid":t,"data-status":`completed`,className:`h-[14px] w-[14px] shrink-0 text-[var(--system-positive-strong)]`}):(0,T.jsx)(C,{"data-testid":t,className:`shrink-0`,dotSize:3,gap:2})}function $e(e,t){return e.kind===`tool`&&e.toolCallId?e.toolCallId:`${e.kind}-${t}`}function et({label:e,durationLabel:t,status:n}){return(0,T.jsxs)(`div`,{"data-testid":`phase-header`,className:`flex items-center justify-between py-[2px]`,children:[(0,T.jsxs)(`div`,{className:`flex items-center gap-1`,children:[n===`completed`?(0,T.jsx)(d,{"aria-hidden":`true`,"data-testid":`phase-header-status-icon`,"data-status":`completed`,className:`h-[14px] w-[14px] text-[var(--system-positive-strong)]`}):(0,T.jsx)(C,{"data-testid":`phase-header-status-icon`,className:`shrink-0`}),(0,T.jsx)(i,{variant:`body-medium-default`,className:`text-[var(--content-default)]`,children:e})]}),t?(0,T.jsx)(i,{variant:`label-medium-default`,className:`text-[var(--content-tertiary)]`,children:t}):null]})}function X(e){switch(e.kind){case`thinking`:return!0;case`tool`:return e.info.length>0;case`tool_error`:case`web_search_error`:case`web_search`:return!0}}function tt({step:e}){if(e.kind===`thinking`)return(0,T.jsx)(Q,{children:(0,T.jsx)(Z,{children:E(e.text)})});if(e.kind===`tool`){let t=K[e.iconName]??a;return X(e)?(0,T.jsxs)(Q,{children:[(0,T.jsx)(t,{"aria-hidden":`true`,className:`h-3.5 w-3.5 shrink-0 text-[var(--content-secondary)]`}),(0,T.jsx)(Z,{children:e.info})]}):null}return e.kind===`tool_error`?(0,T.jsx)(Q,{children:(0,T.jsx)(Z,{children:e.message})}):e.kind===`web_search_error`?(0,T.jsx)(Q,{children:(0,T.jsx)(Z,{children:e.errorMessage})}):(0,T.jsx)(Q,{children:(0,T.jsx)(Z,{children:e.title})})}function Z({children:e}){return(0,T.jsx)(i,{variant:`body-small-default`,className:`min-w-0 truncate text-inherit`,children:e})}function Q({children:e}){return(0,T.jsx)(`div`,{"data-testid":`phase-step-pill`,className:`inline-flex min-w-0 max-w-full items-center gap-1 self-start rounded-full border border-[var(--border-element)] bg-transparent px-2 py-1 text-[var(--content-default)]`,children:e})}var $=`inline-flex min-w-0 items-center gap-1 self-start rounded-full px-2 py-1 text-left leading-normal`,nt=`transition-colors cursor-pointer focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--border-focus)]`,rt=`bg-[var(--surface-overlay)] text-[var(--content-default)]`;function it({faviconUrl:e,domain:t,label:n}){let[r,i]=(0,w.useState)(!1),a=!!e&&!r,o=(t&&t.length>0?t:n).charAt(0).toUpperCase();return(0,T.jsx)(`span`,{"aria-hidden":`true`,className:`inline-flex h-3.5 w-3.5 shrink-0 items-center justify-center overflow-hidden rounded-[var(--radius-sm)]`,children:a?(0,T.jsx)(`img`,{src:e,alt:``,loading:`lazy`,referrerPolicy:`no-referrer`,className:`h-full w-full object-contain`,onError:()=>i(!0)}):(0,T.jsx)(`span`,{className:`text-[10px] font-medium leading-none text-[var(--content-tertiary)]`,children:o})})}function at({label:e,url:t,faviconUrl:n,domain:r,ariaLabel:a}){return(0,T.jsxs)(`a`,{href:t,target:`_blank`,rel:`noopener noreferrer`,"data-testid":`tool-step-pill`,"data-variant":`web`,"aria-label":a??`Open ${e}`,className:`${$} ${nt} max-w-[240px] no-underline hover:bg-[var(--surface-active)] ${rt}`,children:[(0,T.jsx)(it,{faviconUrl:n,domain:r,label:e}),(0,T.jsx)(i,{variant:`body-small-default`,className:`min-w-0 truncate text-inherit leading-normal`,children:e})]})}function ot(e){if(e.variant===`web`)return(0,T.jsx)(at,{...e});let{iconName:t,label:n,onClick:r,active:o=!1,ariaLabel:s}=e,c=o?`bg-[var(--surface-active)] text-[var(--content-default)]`:rt,l=(0,T.jsxs)(T.Fragment,{children:[(0,T.jsx)(K[t]??a,{"aria-hidden":`true`,className:`h-3.5 w-3.5 shrink-0 text-[var(--content-tertiary)]`}),(0,T.jsx)(i,{variant:`body-small-default`,className:`min-w-0 truncate text-inherit leading-normal`,children:n})]});return r?(0,T.jsx)(`button`,{type:`button`,"data-testid":`tool-step-pill`,"data-active":o?``:void 0,"aria-pressed":o,"aria-label":s??`View details: ${n}`,onClick:r,className:`${$} ${nt} max-w-full hover:bg-[var(--surface-active)] ${c}`,children:l}):(0,T.jsx)(`span`,{"data-testid":`tool-step-pill`,className:`${$} max-w-full ${c}`,children:l})}function st(e){let t=(e.domain&&e.domain.length>0?e.domain:e.title).charAt(0);return t?t.toUpperCase():``}function ct({item:e}){let[t,n]=(0,w.useState)(!1),r=!!e.faviconUrl&&!t;return(0,T.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,className:`flex items-center gap-2 rounded-[var(--radius-md)] px-2 py-1.5 hover:bg-[var(--surface-hover)]`,children:[(0,T.jsx)(`span`,{"aria-hidden":`true`,className:`inline-flex h-[14px] w-[14px] shrink-0 items-center justify-center overflow-hidden rounded-[var(--radius-sm)] bg-[var(--surface-overlay)]`,children:r?(0,T.jsx)(`img`,{src:e.faviconUrl,alt:``,loading:`lazy`,referrerPolicy:`no-referrer`,className:`h-full w-full object-contain`,onError:()=>n(!0)}):(0,T.jsx)(`span`,{className:`text-[10px] font-medium leading-none text-[var(--content-default)]`,children:st(e)})}),(0,T.jsxs)(`span`,{className:`flex min-w-0 flex-col`,children:[(0,T.jsx)(i,{variant:`body-small-default`,className:`truncate text-[var(--content-default)]`,children:e.title}),(0,T.jsx)(i,{variant:`body-small-default`,className:`truncate text-[var(--content-secondary)]`,children:e.domain})]})]})}function lt({results:e}){return(0,T.jsxs)(y.Root,{children:[(0,T.jsx)(y.Trigger,{asChild:!0,children:(0,T.jsx)(`button`,{type:`button`,"data-testid":`web-search-overflow-chip`,className:`inline-flex min-h-[26px] cursor-pointer items-center rounded-[var(--radius-pill)] bg-[var(--surface-base)] px-[10px] py-[6px] outline-none hover:bg-[var(--surface-hover)] focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:(0,T.jsxs)(i,{variant:`body-small-default`,className:`text-[var(--content-default)]`,children:[`+`,e.length,` more`]})})}),(0,T.jsx)(y.Content,{align:`start`,side:`bottom`,className:`flex max-h-[260px] w-[280px] flex-col gap-0.5 overflow-y-auto`,children:e.map(e=>(0,T.jsx)(ct,{item:e},e.rank))})]})}function ut({message:e}){return(0,T.jsx)(`div`,{"data-testid":`web-search-error-chip`,className:`inline-flex items-center gap-1 rounded-[var(--radius-pill)] border border-[var(--border-element)] bg-transparent px-[10px] py-[6px]`,children:(0,T.jsx)(i,{variant:`body-small-default`,className:`text-[var(--content-default)]`,children:e})})}function dt({step:e}){let t=e.overflowResults??[];return(0,T.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1`,children:[(e.results??[]).map(e=>(0,T.jsx)(ot,{variant:`web`,url:e.url,faviconUrl:e.faviconUrl,domain:e.domain,label:e.title},e.rank)),t.length>0?(0,T.jsx)(lt,{results:t}):null]})}function ft({step:e}){return(0,T.jsx)(ut,{message:e.errorMessage})}function pt({faviconUrl:e,domain:t,title:n,className:r}){let[i,a]=(0,w.useState)(!1);(0,w.useEffect)(()=>{a(!1)},[e]);let o=!!e&&!i,s=(t&&t.length>0?t:n).charAt(0).toUpperCase();return(0,T.jsx)(`span`,{"aria-hidden":`true`,"data-testid":`site-favicon`,className:x(`inline-flex h-3.5 w-3.5 shrink-0 items-center justify-center overflow-hidden rounded-[var(--radius-sm)]`,r),children:o?(0,T.jsx)(`img`,{src:e,alt:``,loading:`lazy`,referrerPolicy:`no-referrer`,className:`h-full w-full object-contain`,onError:()=>a(!0)}):(0,T.jsx)(`span`,{className:`text-[10px] font-medium leading-none text-[var(--content-tertiary)]`,children:s})})}export{O as C,D as S,de as _,tt as a,be as b,Xe as c,J as d,$e as f,G as g,He as h,ot as i,Ze as l,q as m,ft as n,K as o,X as p,dt as r,Je as s,pt as t,Y as u,Ae as v,E as w,Se as x,k as y};
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{n}from"./button-VkxVX0DM.js";import{t as r}from"./jsx-runtime-BJ8jcmzB.js";import{t as i}from"./typography-DekrYXvs.js";import{E as a,T as o,o as s,s as c,w as l}from"./message-content-weXJNNKO.js";import{t as u}from"./brain-9Csfs96f.js";import{t as d}from"./check-pgeLaeXx.js";import{t as f}from"./circle-check-BlOeCme9.js";import{t as p}from"./code-u4Wi5zSA.js";import{t as m}from"./file-text-DpdlyCly.js";import{t as h}from"./globe-COrlg99x.js";import{t as g}from"./monitor-BHYV5XBf.js";import{t as _}from"./plug-sTs_y01k.js";import{t as v}from"./sparkles-Bhr0JiLM.js";import{t as ee}from"./user-plus-BsoY_aiQ.js";import"./src-CImIAPTd.js";import{t as y}from"./popover-D3A6cIyW.js";import{D as b,O as te}from"./chat-CHVUM3s0.js";import{t as x}from"./misc-B24X-saO.js";import{t as ne}from"./proxy-CT_qJI1K.js";import{t as re}from"./AnimatePresence-CxaKvfs9.js";import{t as S}from"./use-reduced-motion-CU3dPXKf.js";import{t as C}from"./three-dot-indicator-CYYJ1RDJ.js";var w=e(t(),1),T=r();function E(e){let t=e.trimStart();if(!t.startsWith(`**`))return e;let n=t.indexOf(`**`,2);if(n===-1)return t.slice(2).trimStart();let r=t.slice(2,n).trim();return r.length>0?r:e}var ie=/^https?:\/\/\S+/,ae=/^URL:\s*(https?:\/\/\S+)/i,oe=/^\[\d+\]\s*(https?:\/\/\S+)/;function D(e){try{return new URL(e).hostname.replace(/^www\./,``)}catch{return``}}function se(e){let t=e.trim();return ae.exec(t)?.[1]??oe.exec(t)?.[1]??t}function ce(e){return e.trim().replace(/^\d+\.\s+/,``)}function le(e){let t=e.split(/\r?\n/),n=[],r=new Set,i=``;for(let e of t){let t=e.trim();if(!t){i=``;continue}let a=se(t);if(ie.test(a)){r.has(a)||(r.add(a),n.push({title:i,url:a})),i=``;continue}/^Web search results for /i.test(t)||/^Sources:?$/i.test(t)||(i=ce(t))}return n}function O(e){return!e||!e.trim()?[]:le(e).map((e,t)=>{let n=D(e.url);return{rank:t+1,title:e.title,url:e.url,domain:n}})}var ue=5,de=new Set([`web_search`,`web_fetch`]);function k(e){if(!Number.isFinite(e)||e<1e3)return`<1s`;let t=Math.round(e/1e3);if(t<60)return`${t}s`;let n=Math.round(t/60);return n<60?`${n}m`:`${Math.round(n/60)}h`}function A(e){return de.has(e.name)}function j(e){return e?`Searched the web`:`Searching the web`}function M(e){return{visible:e.slice(0,ue),overflowResults:e.slice(ue)}}function fe(e,t){let{visible:n,overflowResults:r}=M(e.results);return{kind:`web_search`,title:j(t),durationLabel:k(e.durationMs),linkCount:e.resultCount,results:n,overflowResults:r}}function pe(e){let t=e.title??e.domain;return{kind:`thinking`,durationLabel:k(e.durationMs),text:`Reading ${t}`}}function me(){return{kind:`web_search`,title:`Searching the web`,durationLabel:``,linkCount:0,results:[]}}function he(){return{kind:`thinking`,durationLabel:``,text:`Reading…`}}function ge(e){let t=O(e);if(t.length===0)return null;let{visible:n,overflowResults:r}=M(t);return{kind:`web_search`,title:j(!0),durationLabel:``,linkCount:t.length,results:n,overflowResults:r}}function _e(e){return{kind:`web_search_error`,title:`Web search failed`,durationLabel:k(e.durationMs),errorMessage:e.errorMessage??`Search is having trouble right now. You can try again in a moment, continue without web search, or paste the relevant details here and I'll use those.`}}function N(){return{kind:`web_search`,title:j(!0),durationLabel:``,linkCount:0,results:[]}}function P(e,t){return t[e.id]??e.activityMetadata}function F(e){return!b(e)}function I(e,t){return e.results.length>0?!1:!!e.errorMessage||!!t.isError}function L(e){return e.confirmationDecision===`denied`||e.confirmationDecision===`timed_out`?`denied`:e.isError?`error`:b(e)?`running`:`completed`}function R(e,t){return e==null||t==null?null:Math.max(0,t-e)}function z(e,t){let n=R(e,t);return n==null?``:k(n)}function B(e){return z(e.startedAt??void 0,e.completedAt??void 0)}function ve(e){return!s(e)&&b(e)}function ye(e,t){if(e.kind===`thinking`)return e.text?e.completedAt==null?e.startedAt!=null&&t!=null?Math.max(0,t-e.startedAt):null:R(e.startedAt,e.completedAt):null;let n=e.toolCall;if(s(n))return null;let r=te(n);return n.completedAt==null?b(n)&&r!=null&&t!=null?Math.max(0,t-r):null:R(r,n.completedAt)}function be(e){return e.some(e=>e.kind===`thinking`?!!e.text&&e.startedAt!=null&&e.completedAt==null:ve(e.toolCall))}function xe(e,t){let n=0,r=!1;for(let i of e){let e=ye(i,t);e!=null&&(r=!0,n+=e)}return r?k(n):``}function Se(e){let{title:t,activity:n}=c(e);return{toolCallId:e.id,toolName:e.name,title:t,activity:n,input:e.input??{},result:e.result,streamedOutput:e.streamedOutput,status:L(e),riskLevel:e.riskLevel,riskReason:e.riskReason,durationLabel:B(e)}}function Ce(e){let{title:t,info:n,activity:r,iconName:i}=c(e);return{kind:`tool`,durationLabel:B(e),startedAt:e.startedAt??void 0,title:t,info:n,activity:r,riskLevel:e.riskLevel,iconName:i,toolCallId:e.id,status:L(e)}}function we(e,t){for(let n=e.length-1;n>=0;n--){let r=e[n];if(A(r)){let e=P(r,t),n=F(r);if(e?.webSearch&&I(e.webSearch,r))return`Web search failed`;if(r.name===`web_search`)return j(n);if(r.name===`web_fetch`)return`Thinking`}else return c(r).title}return``}function Te(e,t){for(let n=e.length-1;n>=0;n--){let r=e[n];if(!A(r)){let{info:e,activity:t}=c(r);return t||e}let i=P(r,t),a=F(r);if(i?.webSearch){let e=i.webSearch;if(I(e,r))return e.errorMessage??`Search is having trouble right now. You can try again in a moment, continue without web search, or paste the relevant details here and I'll use those.`;if(e.results.length>0)return e.results[e.results.length-1].title;if(!a&&e.query)return`Searching ${e.query}`}if(i?.webFetch){let e=i.webFetch;return a?e.title??e.domain:`Reading ${e.domain}`}if(r.name===`web_search`){if(!a){let e=typeof r.input?.query==`string`?r.input.query.trim():``;return e?`Searching ${e}`:``}if(typeof r.result==`string`){let e=O(r.result);if(e.length>0){let t=e[e.length-1].title;if(t)return t}}}if(r.name===`web_fetch`){let e=typeof r.input?.url==`string`?r.input.url:``,t=e?D(e):``;if(t)return a?t:`Reading ${t}`}}return``}function Ee(e,t){for(let n=e.length-1;n>=0;n--){let r=e[n];if(r.name!==`web_search`)continue;let i=P(r,t)?.webSearch?.results;if(i&&i.length>0)return i}return[]}function De(e){return e.includes(`denied`)?`denied`:e.includes(`loading`)?`loading`:e.includes(`error`)?`error`:`complete`}function Oe(e){return De(e.map(e=>e.confirmationDecision===`denied`||e.confirmationDecision===`timed_out`?`denied`:b(e)?`loading`:e.isError?`error`:`complete`))}function ke(e,t){if(s(e))return null;if(!A(e))return Ce(e);let n=P(e,t),r=F(e);if(n?.webSearch){let t=n.webSearch;return I(t,e)?_e(t):fe(t,r)}return n?.webFetch?pe(n.webFetch):r?e.name===`web_search`&&typeof e.result==`string`?ge(e.result)??N():N():e.name===`web_search`?me():he()}function Ae(e,t,n){let r=e.filter(e=>e.kind===`toolCall`).map(e=>e.toolCall).filter(e=>!s(e)),i=[],a=null,o=0;for(let n of e){if(n.kind===`thinking`){n.text&&(i.push({kind:`thinking`,durationLabel:z(n.startedAt,n.completedAt),text:n.text,startedAt:n.startedAt,completedAt:n.completedAt,thinkingItemIndex:o++}),a=n.text);continue}let e=ke(n.toolCall,t);e&&(i.push(e),a=null)}let c=Oe(r),l,u,d;a===null?(l=we(r,t),u=Te(r,t),d=`tool`):(l=`Thinking`,u=E(a),d=`thinking`);let f=Ee(r,t),p=`${i.length} step${i.length===1?``:`s`}`,m=xe(e,n);return{currentStepTitle:l,currentStepInfo:u,currentStepKind:d,stepCount:p,totalDurationLabel:m,steps:i,state:c,carouselItems:f}}var je=.44;function Me(e,t){let n=[...e].sort((e,t)=>e.position-t.position),r=n[0]?.color??`white`,i=n[n.length-1]?.color??`white`,a=n.map(e=>{let t=(e.position-.5)*2*je;return`${e.color} calc(50% + var(--gs-spread-mid) * ${t.toFixed(4)})`}).join(`, `);return[`linear-gradient(${t}deg`,`var(--gs-base) calc(50% - var(--gs-spread))`,`color-mix(in oklab, var(--gs-base) 42%, ${r}) calc(50% - var(--gs-spread-mid))`,a,`color-mix(in oklab, var(--gs-base) 42%, ${i}) calc(50% + var(--gs-spread-mid))`,`var(--gs-base) calc(50% + var(--gs-spread)))`].join(`, `)}function Ne(e){let t=`color-mix(in srgb, ${e} 40%, white)`;return[{position:0,color:t},{position:.5,color:e},{position:1,color:t}]}var Pe=`var(--avatar-accent, var(--content-emphasised))`,Fe=`color-mix(in srgb, currentColor 45%, transparent)`,Ie=1500,Le=106,V=6,H=48,U=.72,W=14,Re=96;function ze(){return typeof CSS>`u`||typeof CSS.supports!=`function`?!1:CSS.supports(`background-clip`,`text`)||CSS.supports(`-webkit-background-clip`,`text`)}function G({children:e,colorHex:t,className:n,"data-testid":r}){let i=(0,w.useRef)(null),a=S(),o=t??Pe,s=(0,w.useMemo)(()=>Me(Ne(o),Le),[o]);(0,w.useLayoutEffect)(()=>{let t=i.current;if(!t)return;if(!ze()){t.style.removeProperty(`background-image`),t.style.removeProperty(`background-color`),t.style.removeProperty(`-webkit-text-fill-color`);return}if(a||typeof t.animate!=`function`)return;let n=null,r=()=>{let r=t.getBoundingClientRect().width||Re,i=(Number.parseFloat(getComputedStyle(t).fontSize)||W)/W,a=Math.min(e.length*V*i,H*i),o=Math.max(1,r+a*2);t.style.setProperty(`--gs-spread`,`${a}px`),t.style.setProperty(`--gs-spread-mid`,`${a*U}px`),t.style.backgroundSize=`${o}px 100%`,n?.cancel(),n=t.animate([{backgroundPosition:`0px center`},{backgroundPosition:`${o}px center`}],{duration:Ie,easing:`linear`,iterations:1/0}),n.startTime=0};r();let o=typeof ResizeObserver>`u`?void 0:new ResizeObserver(r);return o?.observe(t),()=>{o?.disconnect(),n?.cancel()}},[e,a]);let c=Math.min(e.length*V,H);return(0,T.jsx)(`span`,{ref:i,className:n,style:{position:`relative`,display:`inline-block`,backgroundImage:s,backgroundRepeat:`repeat-x`,backgroundSize:`100% 100%`,backgroundColor:`var(--gs-base)`,WebkitBackgroundClip:`text`,backgroundClip:`text`,WebkitTextFillColor:`transparent`,"--gs-base":Fe,"--gs-spread":`${c}px`,"--gs-spread-mid":`${c*U}px`},"data-testid":r,children:e})}var Be=400;function Ve(e,t,n){let[r,i]=(0,w.useState)(e),a=(0,w.useRef)(null),o=(0,w.useRef)(null),s=(0,w.useRef)(null);return(0,w.useEffect)(()=>{if(Object.is(r,e)){o.current=null;return}if(n){s.current&&=(clearTimeout(s.current),null),o.current=null,i(e),a.current=Date.now();return}o.current=e;let c=Date.now();a.current===null&&(a.current=c);let l=c-a.current,u=Math.max(0,t-l);return s.current&&clearTimeout(s.current),s.current=setTimeout(()=>{o.current!==null&&(i(o.current),a.current=Date.now(),o.current=null),s.current=null},u),()=>{s.current&&=(clearTimeout(s.current),null)}},[e,r,t,n]),r}function He({currentStepTitle:e,currentStepInfo:t,bypassDwell:n=!1,animationKey:r,shimmer:a=!1,inline:o=!1}){let s=S(),c=Ve((0,w.useMemo)(()=>({title:e,info:t}),[e,t]),Be,n),l=s?{duration:0}:{duration:.25,ease:[.16,1,.3,1]},u=s?{opacity:0}:{y:-16,opacity:0},d=s?{opacity:1}:{y:0,opacity:1},f=s?{opacity:0}:{y:16,opacity:0},p=typeof c.info==`string`||typeof c.info==`number`,m=p?String(c.info):c.info==null?``:`node`,h=r??`${c.title}::${m}`,g=p?c.info!==``:c.info!=null,_=c.title.trim()!==``,v=g?`block min-w-0`:`block min-w-0 flex-1`;return(0,T.jsx)(re,{initial:!1,mode:`popLayout`,children:(0,T.jsxs)(ne.span,{initial:u,animate:d,exit:f,transition:l,className:`flex min-w-0 flex-1 items-center gap-1`,children:[_?o?(0,T.jsx)(`span`,{className:`${v} truncate text-left text-[13px] font-medium leading-[16px] text-[var(--content-secondary)]`,children:a?(0,T.jsx)(G,{children:c.title}):c.title}):(0,T.jsx)(i,{variant:`body-medium-default`,className:`ml-1 ${v} truncate text-left text-[var(--content-emphasised)]`,children:a?(0,T.jsx)(G,{children:c.title}):c.title}):null,g?(0,T.jsxs)(T.Fragment,{children:[_?(0,T.jsx)(`span`,{"aria-hidden":`true`,className:`ml-1 h-3.5 w-px shrink-0 bg-[var(--border-element)]`}):null,p?o&&!_?(0,T.jsx)(`span`,{className:`block min-w-0 flex-1 truncate text-left text-[13px] font-medium leading-[16px] text-[var(--content-secondary)]`,children:a&&typeof c.info==`string`?(0,T.jsx)(G,{children:c.info}):c.info}):(0,T.jsx)(i,{variant:_?`body-small-default`:`body-medium-default`,className:`ml-1 block min-w-0 flex-1 truncate text-left leading-[16px] ${_?`text-[var(--content-tertiary)]`:`text-[var(--content-emphasised)]`}`,children:a&&!_&&typeof c.info==`string`?(0,T.jsx)(G,{children:c.info}):c.info}):(0,T.jsx)(`span`,{className:`ml-1 block min-w-0 flex-1`,children:c.info})]}):null]},h)})}var K={code:p,terminal:l,file:m,globe:h,pen:o,monitor:g,plug:_,sparkle:v,"user-plus":ee,bolt:a,brain:u};function Ue(e){if(e.kind===`thinking`)return`Thinking`;if(e.kind===`web_search`||e.kind===`web_search_error`)return`Searching the web`;if(e.kind===`tool_error`)return`Error`;let t=e.title;return t.startsWith(`Working`)?t:t===`Reading`||t===`Editing`||t.startsWith(`Running`)?`Working`:t===`Using a skill`?`Using a skill`:(t.startsWith(`Using `),t)}function We(e){if(!e||e===`<1s`)return 0;let t=/^(\d+)(s|m|h)$/.exec(e);if(!t)return 0;let n=Number(t[1]);switch(t[2]){case`h`:return n*36e5;case`m`:return n*6e4;default:return n*1e3}}function Ge(e){let t=null;for(let n of e)(n.kind===`tool`||n.kind===`thinking`)&&n.startedAt!=null&&(t=t==null?n.startedAt:Math.min(t,n.startedAt));return t}function Ke(e){return new Date(e).toLocaleTimeString([],{hour:`numeric`,minute:`2-digit`,second:`2-digit`})}function qe({durationLabel:e,startedAt:t}){let r=(0,T.jsx)(i,{variant:`label-medium-default`,className:`text-[var(--content-tertiary)]`,children:e});return t==null?r:(0,T.jsx)(n,{content:`Started at ${Ke(t)}`,side:`top`,align:`end`,children:(0,T.jsx)(`span`,{className:`cursor-default`,children:r})})}function q(e){let t=0,n=!1;for(let r of e)r&&(n=!0,t+=We(r));return n?k(t):``}function J(e){if(e.length===0)return`running`;for(let t of e){if(t.kind===`tool`){if(t.status===`running`)return`running`;continue}if(t.kind===`web_search`&&t.title===`Searching the web`)return`running`}return`completed`}function Y(e){let t=[];for(let n of e){let e=Ue(n),r=t[t.length-1];r&&r.label===e?r.steps.push(n):t.push({label:e,steps:[n]})}return t}function Je({steps:e,renderStep:t,timeline:n=!1}){if(e.length===0)return null;let r=Y(e),i=[],a=0;for(let e of r)i.push(a),a+=e.steps.length;let o=(e,n)=>e.steps.map((e,r)=>{let i=$e(e,n+r);return(0,T.jsx)(w.Fragment,{children:t?t(e):(0,T.jsx)(tt,{step:e})},i)});return n?(0,T.jsx)(`div`,{className:`flex w-full flex-col`,children:r.map((e,t)=>(0,T.jsx)(Ye,{section:e,baseIndex:i[t],isLast:t===r.length-1,renderSectionSteps:o},`${e.label}-${t}`))}):(0,T.jsx)(`div`,{className:`flex w-full flex-col gap-3`,children:r.map((e,t)=>{let n=q(e.steps.map(e=>`durationLabel`in e?e.durationLabel:``)),r=J(e.steps),a=i[t];return(0,T.jsxs)(`div`,{"data-testid":`phase-section`,"data-phase-label":e.label,className:`flex flex-col gap-1`,children:[(0,T.jsx)(et,{label:e.label,durationLabel:n,status:r}),(0,T.jsx)(`div`,{className:`flex min-w-0 flex-col items-start gap-1 pl-[24px]`,children:o(e,a)})]},`${e.label}-${t}`)})})}function Ye({section:e,baseIndex:t,isLast:n,renderSectionSteps:r}){let a=q(e.steps.map(e=>`durationLabel`in e?e.durationLabel:``)),o=J(e.steps),s=e.steps[0]?.kind===`thinking`;return(0,T.jsxs)(`div`,{"data-testid":`phase-section`,"data-phase-label":e.label,className:`relative flex flex-col gap-2`,children:[!n&&(0,T.jsx)(Xe,{}),(0,T.jsxs)(`div`,{"data-testid":`phase-header`,className:`flex items-center justify-between gap-2 py-[2px]`,children:[(0,T.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,T.jsx)(Ze,{status:o,isThinking:s}),(0,T.jsx)(i,{variant:`body-medium-default`,className:`text-[var(--content-default)]`,children:e.label})]}),a?(0,T.jsx)(qe,{durationLabel:a,startedAt:Ge(e.steps)}):null]}),(0,T.jsx)(`div`,{className:x(`flex min-w-0 flex-col items-start gap-1 pl-[22px]`,!n&&`pb-3`),children:r(e,t)})]})}function Xe({className:e}){return(0,T.jsx)(`div`,{"aria-hidden":!0,className:x(`absolute bottom-0 left-[6.5px] top-6 w-px bg-[var(--border-subtle)]`,e)})}function Ze({status:e,isThinking:t}){return t?(0,T.jsx)(u,{"aria-hidden":`true`,"data-testid":`phase-header-status-icon`,"data-status":`thinking`,className:`h-[14px] w-[14px] shrink-0 text-[var(--content-secondary)]`}):(0,T.jsx)(Qe,{status:e,testId:`phase-header-status-icon`})}function Qe({status:e,testId:t}){return e===`completed`?(0,T.jsx)(f,{"aria-hidden":`true`,"data-testid":t,"data-status":`completed`,className:`h-[14px] w-[14px] shrink-0 text-[var(--system-positive-strong)]`}):(0,T.jsx)(C,{"data-testid":t,className:`shrink-0`,dotSize:3,gap:2})}function $e(e,t){return e.kind===`tool`&&e.toolCallId?e.toolCallId:`${e.kind}-${t}`}function et({label:e,durationLabel:t,status:n}){return(0,T.jsxs)(`div`,{"data-testid":`phase-header`,className:`flex items-center justify-between py-[2px]`,children:[(0,T.jsxs)(`div`,{className:`flex items-center gap-1`,children:[n===`completed`?(0,T.jsx)(d,{"aria-hidden":`true`,"data-testid":`phase-header-status-icon`,"data-status":`completed`,className:`h-[14px] w-[14px] text-[var(--system-positive-strong)]`}):(0,T.jsx)(C,{"data-testid":`phase-header-status-icon`,className:`shrink-0`}),(0,T.jsx)(i,{variant:`body-medium-default`,className:`text-[var(--content-default)]`,children:e})]}),t?(0,T.jsx)(i,{variant:`label-medium-default`,className:`text-[var(--content-tertiary)]`,children:t}):null]})}function X(e){switch(e.kind){case`thinking`:return!0;case`tool`:return e.info.length>0;case`tool_error`:case`web_search_error`:case`web_search`:return!0}}function tt({step:e}){if(e.kind===`thinking`)return(0,T.jsx)(Q,{children:(0,T.jsx)(Z,{children:E(e.text)})});if(e.kind===`tool`){let t=K[e.iconName]??a;return X(e)?(0,T.jsxs)(Q,{children:[(0,T.jsx)(t,{"aria-hidden":`true`,className:`h-3.5 w-3.5 shrink-0 text-[var(--content-secondary)]`}),(0,T.jsx)(Z,{children:e.info})]}):null}return e.kind===`tool_error`?(0,T.jsx)(Q,{children:(0,T.jsx)(Z,{children:e.message})}):e.kind===`web_search_error`?(0,T.jsx)(Q,{children:(0,T.jsx)(Z,{children:e.errorMessage})}):(0,T.jsx)(Q,{children:(0,T.jsx)(Z,{children:e.title})})}function Z({children:e}){return(0,T.jsx)(i,{variant:`body-small-default`,className:`min-w-0 truncate text-inherit`,children:e})}function Q({children:e}){return(0,T.jsx)(`div`,{"data-testid":`phase-step-pill`,className:`inline-flex min-w-0 max-w-full items-center gap-1 self-start rounded-full border border-[var(--border-element)] bg-transparent px-2 py-1 text-[var(--content-default)]`,children:e})}var $=`inline-flex min-w-0 items-center gap-1 self-start rounded-full px-2 py-1 text-left leading-normal`,nt=`transition-colors cursor-pointer focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--border-focus)]`,rt=`bg-[var(--surface-overlay)] text-[var(--content-default)]`;function it({faviconUrl:e,domain:t,label:n}){let[r,i]=(0,w.useState)(!1),a=!!e&&!r,o=(t&&t.length>0?t:n).charAt(0).toUpperCase();return(0,T.jsx)(`span`,{"aria-hidden":`true`,className:`inline-flex h-3.5 w-3.5 shrink-0 items-center justify-center overflow-hidden rounded-[var(--radius-sm)]`,children:a?(0,T.jsx)(`img`,{src:e,alt:``,loading:`lazy`,referrerPolicy:`no-referrer`,className:`h-full w-full object-contain`,onError:()=>i(!0)}):(0,T.jsx)(`span`,{className:`text-[10px] font-medium leading-none text-[var(--content-tertiary)]`,children:o})})}function at({label:e,url:t,faviconUrl:n,domain:r,ariaLabel:a}){return(0,T.jsxs)(`a`,{href:t,target:`_blank`,rel:`noopener noreferrer`,"data-testid":`tool-step-pill`,"data-variant":`web`,"aria-label":a??`Open ${e}`,className:`${$} ${nt} max-w-[240px] no-underline hover:bg-[var(--surface-active)] ${rt}`,children:[(0,T.jsx)(it,{faviconUrl:n,domain:r,label:e}),(0,T.jsx)(i,{variant:`body-small-default`,className:`min-w-0 truncate text-inherit leading-normal`,children:e})]})}function ot(e){if(e.variant===`web`)return(0,T.jsx)(at,{...e});let{iconName:t,label:n,onClick:r,active:o=!1,ariaLabel:s}=e,c=o?`bg-[var(--surface-active)] text-[var(--content-default)]`:rt,l=(0,T.jsxs)(T.Fragment,{children:[(0,T.jsx)(K[t]??a,{"aria-hidden":`true`,className:`h-3.5 w-3.5 shrink-0 text-[var(--content-tertiary)]`}),(0,T.jsx)(i,{variant:`body-small-default`,className:`min-w-0 truncate text-inherit leading-normal`,children:n})]});return r?(0,T.jsx)(`button`,{type:`button`,"data-testid":`tool-step-pill`,"data-active":o?``:void 0,"aria-pressed":o,"aria-label":s??`View details: ${n}`,onClick:r,className:`${$} ${nt} max-w-full hover:bg-[var(--surface-active)] ${c}`,children:l}):(0,T.jsx)(`span`,{"data-testid":`tool-step-pill`,className:`${$} max-w-full ${c}`,children:l})}function st(e){let t=(e.domain&&e.domain.length>0?e.domain:e.title).charAt(0);return t?t.toUpperCase():``}function ct({item:e}){let[t,n]=(0,w.useState)(!1),r=!!e.faviconUrl&&!t;return(0,T.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,className:`flex items-center gap-2 rounded-[var(--radius-md)] px-2 py-1.5 hover:bg-[var(--surface-hover)]`,children:[(0,T.jsx)(`span`,{"aria-hidden":`true`,className:`inline-flex h-[14px] w-[14px] shrink-0 items-center justify-center overflow-hidden rounded-[var(--radius-sm)] bg-[var(--surface-overlay)]`,children:r?(0,T.jsx)(`img`,{src:e.faviconUrl,alt:``,loading:`lazy`,referrerPolicy:`no-referrer`,className:`h-full w-full object-contain`,onError:()=>n(!0)}):(0,T.jsx)(`span`,{className:`text-[10px] font-medium leading-none text-[var(--content-default)]`,children:st(e)})}),(0,T.jsxs)(`span`,{className:`flex min-w-0 flex-col`,children:[(0,T.jsx)(i,{variant:`body-small-default`,className:`truncate text-[var(--content-default)]`,children:e.title}),(0,T.jsx)(i,{variant:`body-small-default`,className:`truncate text-[var(--content-secondary)]`,children:e.domain})]})]})}function lt({results:e}){return(0,T.jsxs)(y.Root,{children:[(0,T.jsx)(y.Trigger,{asChild:!0,children:(0,T.jsx)(`button`,{type:`button`,"data-testid":`web-search-overflow-chip`,className:`inline-flex min-h-[26px] cursor-pointer items-center rounded-[var(--radius-pill)] bg-[var(--surface-base)] px-[10px] py-[6px] outline-none hover:bg-[var(--surface-hover)] focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:(0,T.jsxs)(i,{variant:`body-small-default`,className:`text-[var(--content-default)]`,children:[`+`,e.length,` more`]})})}),(0,T.jsx)(y.Content,{align:`start`,side:`bottom`,className:`flex max-h-[260px] w-[280px] flex-col gap-0.5 overflow-y-auto`,children:e.map(e=>(0,T.jsx)(ct,{item:e},e.rank))})]})}function ut({message:e}){return(0,T.jsx)(`div`,{"data-testid":`web-search-error-chip`,className:`inline-flex items-center gap-1 rounded-[var(--radius-pill)] border border-[var(--border-element)] bg-transparent px-[10px] py-[6px]`,children:(0,T.jsx)(i,{variant:`body-small-default`,className:`text-[var(--content-default)]`,children:e})})}function dt({step:e}){let t=e.overflowResults??[];return(0,T.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1`,children:[(e.results??[]).map(e=>(0,T.jsx)(ot,{variant:`web`,url:e.url,faviconUrl:e.faviconUrl,domain:e.domain,label:e.title},e.rank)),t.length>0?(0,T.jsx)(lt,{results:t}):null]})}function ft({step:e}){return(0,T.jsx)(ut,{message:e.errorMessage})}function pt({faviconUrl:e,domain:t,title:n,className:r}){let[i,a]=(0,w.useState)(!1);(0,w.useEffect)(()=>{a(!1)},[e]);let o=!!e&&!i,s=(t&&t.length>0?t:n).charAt(0).toUpperCase();return(0,T.jsx)(`span`,{"aria-hidden":`true`,"data-testid":`site-favicon`,className:x(`inline-flex h-3.5 w-3.5 shrink-0 items-center justify-center overflow-hidden rounded-[var(--radius-sm)]`,r),children:o?(0,T.jsx)(`img`,{src:e,alt:``,loading:`lazy`,referrerPolicy:`no-referrer`,className:`h-full w-full object-contain`,onError:()=>a(!0)}):(0,T.jsx)(`span`,{className:`text-[10px] font-medium leading-none text-[var(--content-tertiary)]`,children:s})})}export{O as C,D as S,de as _,tt as a,be as b,Xe as c,J as d,$e as f,G as g,He as h,ot as i,Ze as l,q as m,ft as n,K as o,X as p,dt as r,Je as s,pt as t,Y as u,Ae as v,E as w,Se as x,k as y};
@@ -1,2 +1,2 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./capture-error-DiNp24s6.js";import{t as n}from"./react-BFJW0bSv.js";import{W as r,t as i}from"./button-VkxVX0DM.js";import{d as a,h as o,n as s,p as c,u as l}from"./chunk-5KNZJZUH-BUqIilZr.js";import{n as u}from"./QueryClientProvider-EuRl-wrW.js";import{t as d}from"./useQuery-CTSuec5b.js";import{t as f}from"./jsx-runtime-BJ8jcmzB.js";import{t as p}from"./card-DUsAeHUS.js";import{o as m,s 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,n as b,r as x,t as S}from"./use-skill-actions-DjwFUePB.js";import{t as C}from"./chevron-down-CmQCCo_x.js";import{t as w}from"./chevron-right-Dwr_Sx98.js";import{t as T}from"./menu-ubIBmfUh.js";import{t as E}from"./code-u4Wi5zSA.js";import{t as D}from"./external-link-B-pfCiUo.js";import{t as O}from"./eye-CHlTF_ct.js";import{t as k}from"./file-text-DpdlyCly.js";import{t as A}from"./folder-B0UQA6jd.js";import{t as j}from"./loader-circle-DYe85z3g.js";import{t as M}from"./trash-2-V2WT_DbX.js";import{t as N}from"./triangle-alert-43gIbLca.js";import{o as P}from"./src-qDZBwoEm.js";import{n as F,t as I}from"./file-markdown-Br-X9E8g.js";import"./i18n--HmJLuhM.js";import{t as L}from"./useTranslation-DdVCKPgw.js";import{a as R}from"./api-errors-CASENJGT.js";import{_r as z}from"./sdk.gen-CiE6cMi0.js";import{d as B}from"./routes-B7wRw3UT.js";import{At as ee,Nt as te,bn as ne,jt as re}from"./react-query.gen-Bbh5MII3.js";import{n as ie}from"./use-is-mobile-q9Lr7beO.js";import{t as ae}from"./open-workspace-file-CDO9erng.js";import{t as oe}from"./use-active-assistant-id-BADYKVyx.js";import{i as se,r as ce}from"./format-date-B_oQDqU9.js";import{t as le}from"./diff-rows-CMQi83GC.js";import{t as V}from"./skill-icon-sj-wJGzd.js";import{n as H,t as U}from"./use-skill-detail-files-DNaNHaP0.js";import{n as W,r as ue,t as de}from"./skills-CAAcLlNJ.js";import{t as fe}from"./use-edge-swipe-back-Dl-lRTON.js";import{i as pe,n as me,r as he,t as G}from"./file-editor-C2Qy2Ujg.js";var ge=g(`search-x`,[[`path`,{d:`m13.5 8.5-5 5`,key:`1cs55j`}],[`path`,{d:`m8.5 8.5 5 5`,key:`a8mexj`}],[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}],[`path`,{d:`m21 21-4.3-4.3`,key:`1qie3q`}]]),K=e(n(),1),q=f();function J(){return(0,q.jsx)(`div`,{className:`flex items-center justify-center py-16`,children:(0,q.jsx)(j,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})})}var _e=/^@@ -(\d+)(?:,\d+)? \+(\d+)(?:,\d+)? @@/,ve=/^diff --git a\/(.+) b\/\1$/;function Y(e,t){let n=e.replace(/^[ab]\//,``),r=`skills/${t}/`;return n.startsWith(r)?n.slice(r.length):n}function ye(e){let t=e.slice(4).replace(/\t$/,``);return t===`/dev/null`?null:t}function be(e,t){let n=[],r=null,i=0,a=0,o=!1,s=!1;for(let c of e.split(`
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./capture-error-DiNp24s6.js";import{t as n}from"./react-BFJW0bSv.js";import{W as r,t as i}from"./button-VkxVX0DM.js";import{d as a,h as o,n as s,p as c,u as l}from"./chunk-5KNZJZUH-BUqIilZr.js";import{n as u}from"./QueryClientProvider-EuRl-wrW.js";import{t as d}from"./useQuery-CTSuec5b.js";import{t as f}from"./jsx-runtime-BJ8jcmzB.js";import{t as p}from"./card-DUsAeHUS.js";import{o as m,s 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,n as b,r as x,t as S}from"./use-skill-actions-CdbZjq6a.js";import{t as C}from"./chevron-down-CmQCCo_x.js";import{t as w}from"./chevron-right-Dwr_Sx98.js";import{t as T}from"./menu-ubIBmfUh.js";import{t as E}from"./code-u4Wi5zSA.js";import{t as D}from"./external-link-B-pfCiUo.js";import{t as O}from"./eye-CHlTF_ct.js";import{t as k}from"./file-text-DpdlyCly.js";import{t as A}from"./folder-B0UQA6jd.js";import{t as j}from"./loader-circle-DYe85z3g.js";import{t as M}from"./trash-2-V2WT_DbX.js";import{t as N}from"./triangle-alert-43gIbLca.js";import{s as P}from"./src-CImIAPTd.js";import{n as F,t as I}from"./file-markdown-C1rEGVrN.js";import"./i18n-C9hRT4Lf.js";import{t as L}from"./useTranslation-D9pPv-bA.js";import{a as R}from"./api-errors-CASENJGT.js";import{_r as z}from"./sdk.gen-CiE6cMi0.js";import{d as B}from"./routes-B7wRw3UT.js";import{At as ee,Nt as te,bn as ne,jt as re}from"./react-query.gen-Bbh5MII3.js";import{n as ie}from"./use-is-mobile-q9Lr7beO.js";import{t as ae}from"./open-workspace-file-CYf_Tqw3.js";import{t as oe}from"./use-active-assistant-id-BADYKVyx.js";import{i as se,r as ce}from"./format-date-B_oQDqU9.js";import{t as le}from"./diff-rows-BrFK496i.js";import{t as V}from"./skill-icon-yVnZg-J1.js";import{n as H,t as U}from"./use-skill-detail-files-Bg4G44J3.js";import{n as W,r as ue,t as de}from"./skills-5MnTu98B.js";import{t as fe}from"./use-edge-swipe-back-CiO9raEw.js";import{i as pe,n as me,r as he,t as G}from"./file-editor-BwdObVSu.js";var ge=g(`search-x`,[[`path`,{d:`m13.5 8.5-5 5`,key:`1cs55j`}],[`path`,{d:`m8.5 8.5 5 5`,key:`a8mexj`}],[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}],[`path`,{d:`m21 21-4.3-4.3`,key:`1qie3q`}]]),K=e(n(),1),q=f();function J(){return(0,q.jsx)(`div`,{className:`flex items-center justify-center py-16`,children:(0,q.jsx)(j,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})})}var _e=/^@@ -(\d+)(?:,\d+)? \+(\d+)(?:,\d+)? @@/,ve=/^diff --git a\/(.+) b\/\1$/;function Y(e,t){let n=e.replace(/^[ab]\//,``),r=`skills/${t}/`;return n.startsWith(r)?n.slice(r.length):n}function ye(e){let t=e.slice(4).replace(/\t$/,``);return t===`/dev/null`?null:t}function be(e,t){let n=[],r=null,i=0,a=0,o=!1,s=!1;for(let c of e.split(`
2
2
  `)){if(c.startsWith(`diff --git `)){r={path:Y(ve.exec(c)?.[1]??(c.split(` `).slice(3).join(` `)||``),t),rows:[],added:0,removed:0},n.push(r),i=0,a=0,o=!1,s=!1;continue}if(!r)continue;let e=_e.exec(c);if(e){i=Number(e[1]),a=Number(e[2]),o=!0,r.rows.length>0&&r.rows.push({type:`meta`,text:c});continue}if(!c.startsWith(`\\ No newline`)){if(!o&&(c.startsWith(`+++ `)||c.startsWith(`--- `))){let e=ye(c);e!==null&&(c.startsWith(`+++ `)||!s)&&(r.path=Y(e,t),s=c.startsWith(`+++ `));continue}!o&&(c.startsWith(`index `)||c.startsWith(`new file mode `)||c.startsWith(`deleted file mode `)||c.startsWith(`similarity index `)||c.startsWith(`rename `)||c.startsWith(`old mode `)||c.startsWith(`new mode `)||c.startsWith(`Binary files `))||(c.startsWith(`+`)?(r.rows.push({type:`add`,text:c.slice(1),newNo:a}),r.added+=1,a+=1):c.startsWith(`-`)?(r.rows.push({type:`del`,text:c.slice(1),oldNo:i}),r.removed+=1,i+=1):c.startsWith(` `)&&(r.rows.push({type:`ctx`,text:c.slice(1),oldNo:i,newNo:a}),i+=1,a+=1))}}return{files:n,added:n.reduce((e,t)=>e+t.added,0),removed:n.reduce((e,t)=>e+t.removed,0)}}async function xe(e,t,n){let{data:r,error:i,response:a}=await z({path:{assistant_id:e,id:t},throwOnError:!1,signal:n});if(!a||!a.ok){if(a?.status===404)return null;throw a?R(i,a):i??Error(`Failed to fetch skill history.`)}return r??null}function Se(e){return e.isLoading?!1:e.isError||e.revisionCount>0}function X(e,t){let n=!!(e&&t),r=d({queryKey:re({path:{assistant_id:e??``,id:t}}),queryFn:({signal:n})=>xe(e??``,t,n),enabled:n,refetchOnWindowFocus:!1});return{history:r.data??null,revisions:r.data?.revisions??[],truncatedByCompaction:r.data?.truncatedByCompaction??!1,isLoading:r.isLoading,isError:r.isError}}function Ce({assistantId:e,skillId:t}){let{t:n}=L(`intelligence`),{revisions:r,truncatedByCompaction:i,isLoading:a,isError:o}=X(e,t);return a?(0,q.jsx)(J,{}):o?(0,q.jsx)(Z,{children:n(`skillRevisionHistory.loadError`)}):(0,q.jsx)(we,{skillId:t,revisions:r,truncatedByCompaction:i})}function we({skillId:e,revisions:t,truncatedByCompaction:n}){let{t:r}=L(`intelligence`);return t.length===0?(0,q.jsx)(Z,{children:r(`skillRevisionHistory.noChanges`)}):(0,q.jsxs)(P.Root,{type:`multiple`,className:`flex flex-col gap-2 p-3`,children:[t.map(t=>(0,q.jsx)(Te,{revision:t,skillId:e},t.id)),n&&(0,q.jsx)(`p`,{className:`px-1 pt-1 text-body-small-lighter`,style:{color:`var(--content-tertiary)`},children:r(`skillRevisionHistory.truncatedNotice`)})]})}function Z({children:e}){return(0,q.jsx)(`p`,{className:`px-3 py-10 text-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:e})}function Te({revision:e,skillId:t}){let{t:n}=L(`intelligence`),r=(0,K.useMemo)(()=>be(e.diff,t),[e.diff,t]);return(0,q.jsxs)(P.Item,{value:e.id,className:`overflow-hidden rounded-md border`,style:{borderColor:`var(--border-base)`},children:[(0,q.jsxs)(P.Trigger,{className:`group flex w-full items-center gap-3 px-3 py-2.5 text-left transition-colors hover:bg-[var(--surface-hover)]`,children:[(0,q.jsx)(w,{className:`h-4 w-4 shrink-0 transition-transform group-data-[state=open]:rotate-90`,style:{color:`var(--content-tertiary)`},"aria-hidden":!0}),(0,q.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,q.jsx)(`span`,{className:`block truncate text-body-medium-default`,style:{color:`var(--content-default)`},children:se(e.changedAt)}),(0,q.jsx)(`span`,{className:`mt-0.5 block truncate text-body-small-lighter`,style:{color:`var(--content-tertiary)`},children:e.files.join(` · `)})]}),r.added>0&&(0,q.jsxs)(`span`,{className:`shrink-0 text-body-small-default tabular-nums`,style:{color:`var(--system-positive-strong)`},children:[`+`,r.added]}),r.removed>0&&(0,q.jsxs)(`span`,{className:`shrink-0 text-body-small-default tabular-nums`,style:{color:`var(--system-negative-strong)`},children:[`−`,r.removed]})]}),(0,q.jsxs)(P.Content,{className:`border-t`,style:{borderColor:`var(--border-base)`},children:[(0,q.jsx)(`p`,{className:`px-3 py-2 text-body-small-lighter`,style:{color:`var(--content-tertiary)`},children:ce(e.changedAt)}),r.files.length===0?(0,q.jsx)(`p`,{className:`px-3 pb-3 text-body-small-lighter`,style:{color:`var(--content-tertiary)`},children:n(`skillRevisionHistory.noPreviewForChange`)}):r.files.map(e=>(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`p`,{className:`border-t px-3 py-1.5 font-mono text-body-small-default`,style:{borderColor:`var(--border-base)`,backgroundColor:`var(--surface-base)`,color:`var(--content-secondary)`},children:e.path}),(0,q.jsx)(`div`,{className:`py-1`,children:(0,q.jsx)(le,{rows:e.rows})})]},e.path))]})]})}function Q(e){return e===`history`?`history`:`files`}function Ee({assistantId:e,skill:t,tab:n,onTabChange:r,onBack:a,onInstall:o,onRemove:s,isInstalling:c=!1,isRemoving:l=!1,sourceConversationId:u}){let{t:d}=L(`intelligence`),f=x(t),m=W(t),{fileEntries:g,setSelectedPath:b,activePath:S,activeFile:C,isFilesLoading:w,fileContent:T,isBinary:E,isContentLoading:D}=U(e,t.id),{revisions:O,isLoading:N,isError:P}=X(e,t.id),F=Se({isLoading:N,isError:P,revisionCount:O.length}),I=F?n:`files`,R=(0,q.jsxs)(`div`,{className:`mb-4 flex items-start gap-3`,children:[(0,q.jsx)(i,{type:`button`,variant:`ghost`,iconOnly:(0,q.jsx)(v,{"aria-hidden":!0}),"aria-label":d(`skillDetail.backToSkillsAriaLabel`),onClick:a}),(0,q.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-3 sm:flex-row sm:items-center`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-3`,children:[(0,q.jsx)(V,{skill:t,className:`h-8 w-8 text-3xl`}),(0,q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-2 gap-y-1`,children:[(0,q.jsx)(`h2`,{className:`text-title-medium`,style:{color:`var(--content-default)`},children:t.name}),(0,q.jsx)(y,{origin:t.origin})]}),(0,q.jsx)(`p`,{className:`mt-0.5 line-clamp-2 text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:t.description}),(0,q.jsx)(H,{skill:{origin:t.origin,sourceConversationId:u},className:`mt-1`})]})]}),f?c?(0,q.jsx)(`div`,{className:`flex h-9 items-center px-3`,children:(0,q.jsx)(j,{className:`h-4 w-4 animate-spin`,style:{color:`var(--content-tertiary)`}})}):(0,q.jsx)(i,{type:`button`,onClick:o,disabled:!o,leftIcon:(0,q.jsx)(_,{"aria-hidden":!0}),children:d(`skillDetail.install`)}):(0,q.jsx)(i,{type:`button`,variant:m?`dangerOutline`:`outlined`,onClick:s,disabled:!m||l||!s,leftIcon:l?(0,q.jsx)(j,{className:`animate-spin`,"aria-hidden":!0}):(0,q.jsx)(M,{"aria-hidden":!0}),children:d(`skillDetail.remove`)})]})]}),z=(0,q.jsx)(p.Root,{asChild:!0,noPadding:!0,children:(0,q.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden sm:grid`,style:{gridTemplateColumns:`240px 1fr`},children:[(0,q.jsx)(`div`,{className:`max-h-40 shrink-0 overflow-y-auto border-b p-2 sm:max-h-none sm:border-b-0 sm:border-r`,style:{borderColor:`var(--border-base)`},children:w?(0,q.jsx)(`div`,{className:`flex items-center justify-center py-8`,children:(0,q.jsx)(j,{className:`h-4 w-4 animate-spin`,style:{color:`var(--content-tertiary)`}})}):g.length===0?(0,q.jsx)(`p`,{className:`px-3 py-4 text-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:d(`skillDetail.noFilesAvailable`)}):g.map(e=>{let t=S===e.path,n=(e.mimeType??``).endsWith(`/directory`);return(0,q.jsxs)(`button`,{type:`button`,onClick:()=>b(e.path),className:`flex w-full items-center gap-2 rounded px-2 py-1.5 text-left text-body-medium-lighter transition-colors hover:bg-[var(--surface-hover)]`,style:{color:t?`var(--primary-base)`:`var(--content-default)`,backgroundColor:t?`color-mix(in oklab, var(--primary-base) 10%, transparent)`:void 0},children:[n?(0,q.jsx)(A,{className:`h-4 w-4 shrink-0`,style:{color:`var(--system-mid-strong)`}}):(0,q.jsx)(k,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-secondary)`}}),(0,q.jsx)(`span`,{className:`truncate`,children:e.name})]},e.path)})}),(0,q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:D?(0,q.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,q.jsx)(j,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})}):C?(0,q.jsx)(De,{assistantId:e,skillId:t.id,fileName:C.name,filePath:C.path,content:T,isBinary:E,editable:t.kind===`installed`},`${t.id}/${C.path}`):(0,q.jsx)(`p`,{className:`flex h-full items-center justify-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:d(`skillDetail.selectFilePrompt`)})})]})});return(0,q.jsxs)(`div`,{className:`flex h-[calc(100vh-14rem)] flex-col`,children:[R,(0,q.jsxs)(h.Root,{value:I,onValueChange:e=>r(Q(e)),className:`flex min-h-0 flex-1 flex-col`,children:[F&&(0,q.jsxs)(h.List,{className:`mb-3`,children:[(0,q.jsx)(h.Trigger,{value:`files`,children:d(`skillDetail.filesTab`)}),(0,q.jsx)(h.Trigger,{value:`history`,children:d(`skillDetail.historyTab`)})]}),(0,q.jsx)(h.Panel,{value:`files`,forceMount:!0,className:`min-h-0 flex-1 flex-col`,style:{display:I===`files`?`flex`:`none`},children:z}),F&&(0,q.jsx)(h.Panel,{value:`history`,className:`flex min-h-0 flex-1 flex-col`,children:(0,q.jsx)(p.Root,{asChild:!0,noPadding:!0,children:(0,q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:(0,q.jsx)(Ce,{assistantId:e,skillId:t.id})})})})]})]})}function De({assistantId:e,skillId:n,fileName:r,filePath:a,content:o,isBinary:s,editable:c}){let{t:l}=L(`intelligence`),d=u(),[f,p]=(0,K.useState)(!1),[m,h]=(0,K.useState)(``),g=`skills/${n}/${a}`,_=ne({onSuccess:()=>{p(!1),h(``),d.invalidateQueries({queryKey:[{_id:`skillsByIdFilesContentGet`}]}),d.invalidateQueries({queryKey:[{_id:`skillsByIdFilesGet`}]}),d.invalidateQueries({queryKey:[{_id:`skillsByIdHistoryGet`}]}),a===`SKILL.md`&&de(d,e)},onError:e=>{t(e,{context:`skill-file-save`,bestEffort:!0})}}),v=f&&m!==(o??``),y=(0,K.useCallback)(()=>{!v||_.isPending||_.mutate({path:{assistant_id:e},body:{path:g,content:m,encoding:`utf8`}})},[v,_,e,g,m]),b=(0,K.useCallback)(()=>{p(!0),h(o??``),_.reset()},[o,_]),x=(0,K.useCallback)(()=>{p(!1),h(``),_.reset()},[_]);if(s)return(0,q.jsx)(`p`,{className:`flex h-full items-center justify-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:l(`skillFileContent.binaryFile`)});if(o===null)return(0,q.jsx)(`p`,{className:`flex h-full items-center justify-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:l(`skillFileContent.noPreviewAvailable`,{fileName:r})});let S=c?(0,q.jsx)(i,{variant:`ghost`,size:`regular`,iconOnly:(0,q.jsx)(D,{"aria-hidden":!0}),onClick:()=>void ae(g),"aria-label":l(`skillDetail.openInWorkspaceAriaLabel`),className:`hover:bg-[var(--surface-base)]`}):void 0;return F(r,void 0)&&!f?(0,q.jsx)(`div`,{className:`relative flex h-full flex-col`,children:(0,q.jsxs)(`div`,{className:`relative flex-1 overflow-auto px-6 py-4`,style:{color:`var(--content-default)`},children:[(0,q.jsx)(G,{content:o,fileName:r,showEdit:c,isEditing:!1,onToggleEdit:b,extraActions:S}),(0,q.jsx)(I,{content:o})]})}):(0,q.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,q.jsxs)(`div`,{className:`relative flex-1 overflow-hidden`,children:[(0,q.jsx)(G,{content:f?m:o,fileName:r,showEdit:c,isEditing:f,onToggleEdit:()=>f?x():b(),extraActions:S}),f?(0,q.jsx)(he,{value:m,onChange:h,onSave:y}):(0,q.jsx)(pe,{content:o,readOnly:!c,onStartEdit:b})]}),f&&(0,q.jsx)(me,{isDirty:v,isSaving:_.isPending,error:_.isError?l(`skillDetail.saveFailed`):null,onSave:y,onDiscard:x})]})}var Oe=e(r(),1);function ke({fileName:e,content:t,isBinary:n,viewMode:r=`preview`}){let{t:i}=L(`intelligence`);return n?(0,q.jsx)(`p`,{className:`flex h-full items-center justify-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:i(`skillFileContent.binaryFile`)}):t===null?(0,q.jsx)(`p`,{className:`flex h-full items-center justify-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:i(`skillFileContent.noPreviewAvailable`,{fileName:e})}):F(e,void 0)&&r===`preview`?(0,q.jsx)(`div`,{className:`h-full overflow-auto px-6 py-4`,style:{color:`var(--content-default)`},children:(0,q.jsx)(I,{content:t})}):(0,q.jsx)(`pre`,{className:`h-full overflow-y-auto whitespace-pre-wrap break-words p-4 font-mono text-body-small-default`,style:{color:`var(--content-default)`},children:t})}function Ae({assistantId:e,skill:t,onBack:n,onInstall:r,onRemove:a,isInstalling:o=!1,isRemoving:s=!1,swipeContainerRef:c,sourceConversationId:l}){let{t:u}=L(`intelligence`),d=x(t),f=W(t),{fileEntries:h,setSelectedPath:g,activePath:_,activeFile:b,isFilesLoading:S,fileContent:C,isBinary:w,isContentLoading:T}=U(e,t.id),[D,k]=(0,K.useState)(`preview`);(0,K.useEffect)(()=>{k(`preview`)},[_]);let[A,M]=(0,K.useState)(null);(0,K.useEffect)(()=>{M(document.getElementById(`viewport-overlays`))},[]);let N=b?F(b.name,void 0):!1,P=N?D:`raw`,I=(0,q.jsxs)(`div`,{ref:c,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,q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,q.jsx)(i,{variant:`ghost`,iconOnly:(0,q.jsx)(v,{"aria-hidden":!0}),expandOnMobile:!0,"aria-label":u(`skillDetail.backToSkillsAriaLabel`),onClick:n,className:`max-md:bg-[var(--surface-active)]`}),(0,q.jsx)(`span`,{className:`min-w-0 flex-1 truncate px-2 text-center text-body-medium-default`,style:{color:`var(--content-secondary)`},children:t.name}),(0,q.jsx)(je,{available:d,removable:f,isInstalling:o,isRemoving:s,onInstall:r,onRemove:a})]}),(0,q.jsxs)(`div`,{className:`mt-4 flex flex-col gap-2`,children:[(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,q.jsx)(V,{skill:t,className:`h-6 w-6 shrink-0 text-[22px] leading-none`}),(0,q.jsx)(`h2`,{className:`min-w-0 truncate text-title-medium`,style:{color:`var(--content-emphasised)`},children:t.name})]}),(0,q.jsx)(y,{origin:t.origin})]}),(0,q.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:t.description}),(0,q.jsx)(H,{skill:{origin:t.origin,sourceConversationId:l}})]}),(0,q.jsx)(p.Root,{asChild:!0,noPadding:!0,children:(0,q.jsxs)(`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,q.jsxs)(`div`,{className:`flex items-center justify-between gap-2 border-b px-3 py-2`,style:{borderColor:`var(--border-hover)`},children:[(0,q.jsx)(Ne,{fileEntries:h,activePath:_,activeName:b?.name??null,onSelect:g}),(0,q.jsx)(m,{iconOnly:!0,ariaLabel:u(`skillDetail.fileViewModeAriaLabel`),value:P,onChange:k,items:[{value:`preview`,label:u(`skillDetail.preview`),icon:(0,q.jsx)(O,{"aria-hidden":!0}),disabled:!N},{value:`raw`,label:u(`skillDetail.source`),icon:(0,q.jsx)(E,{"aria-hidden":!0})}]})]}),(0,q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:S||T?(0,q.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,q.jsx)(j,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})}):b?(0,q.jsx)(ke,{fileName:b.name,content:C,isBinary:w,viewMode:P}):(0,q.jsx)(`p`,{className:`flex h-full items-center justify-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:u(`skillDetail.selectFilePrompt`)})})]})})]});return A?(0,Oe.createPortal)(I,A):I}function je({available:e,removable:t,isInstalling:n,isRemoving:r,onInstall:a,onRemove:o}){let{t:s}=L(`intelligence`);return n||r?(0,q.jsx)(i,{variant:`ghost`,iconOnly:(0,q.jsx)(j,{className:`animate-spin`,"aria-hidden":!0}),expandOnMobile:!0,disabled:!0,"aria-label":s(`skillDetail.pendingAriaLabel`),className:`max-md:bg-[var(--surface-active)]`}):e?(0,q.jsx)(i,{variant:`ghost`,iconOnly:(0,q.jsx)(_,{"aria-hidden":!0}),expandOnMobile:!0,"aria-label":s(`skillRow.installSkillAriaLabel`),onClick:a,disabled:!a,className:`max-md:bg-[var(--surface-active)]`}):t?(0,q.jsx)(i,{variant:`dangerGhost`,iconOnly:(0,q.jsx)(M,{"aria-hidden":!0}),expandOnMobile:!0,"aria-label":s(`skillRow.removeSkillAriaLabel`),onClick:o,disabled:!o,className:`max-md:rounded-full max-md:bg-[var(--system-negative-weak)]`}):(0,q.jsx)(i,{variant:`dangerGhost`,iconOnly:(0,q.jsx)(M,{"aria-hidden":!0}),expandOnMobile:!0,disabled:!0,title:s(`skillRow.bundledSkillsCannotBeRemoved`),"aria-label":s(`skillRow.bundledSkillCannotBeRemovedAriaLabel`),className:`max-md:rounded-full max-md:bg-[var(--system-negative-weak)]`})}function Me(e){return(e??``).endsWith(`/directory`)}function Ne({fileEntries:e,activePath:t,activeName:n,onSelect:r}){let{t:i}=L(`intelligence`),a=n??i(`skillDetail.selectAFile`);return e.length===0?(0,q.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2 text-body-medium-default`,style:{color:`var(--content-emphasised)`},children:[(0,q.jsx)($,{}),(0,q.jsx)(`span`,{className:`truncate`,children:a})]}):(0,q.jsxs)(T.Root,{children:[(0,q.jsx)(T.Trigger,{children:(0,q.jsxs)(`button`,{type:`button`,className:`flex min-w-0 items-center gap-2 rounded-md text-body-medium-default`,style:{color:`var(--content-emphasised)`},children:[(0,q.jsx)($,{}),(0,q.jsx)(`span`,{className:`truncate`,children:a}),(0,q.jsx)(C,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`},"aria-hidden":!0})]})}),(0,q.jsx)(T.Content,{align:`start`,children:e.map(e=>{let n=Me(e.mimeType);return(0,q.jsx)(T.Item,{onSelect:()=>r(e.path),leftIcon:n?(0,q.jsx)(A,{}):(0,q.jsx)(k,{}),"aria-current":e.path===t?`true`:void 0,children:e.name},e.path)})})]})}function $(){return(0,q.jsx)(`span`,{className:`flex h-6 w-6 shrink-0 items-center justify-center rounded-md bg-[var(--surface-base)]`,"aria-hidden":!0,children:(0,q.jsx)(k,{className:`h-4 w-4`,style:{color:`var(--content-secondary)`}})})}function Pe(){let{t:e}=L(`intelligence`);return(0,q.jsx)(b,{icon:N,iconColor:`var(--system-danger)`,title:e(`skillsErrorState.title`),subtitle:e(`skillsErrorState.subtitle`)})}function Fe(){let{t:e}=L(`intelligence`),t=oe(),{skillId:n}=c(),r=a(),u=l(),{pathname:f}=u,p=ie(),m=(0,K.useRef)(null),h=u.state,g=typeof h?.listSearch==`string`?h.listSearch:``,[_,y]=o(),x=Q(_.get(`tab`)),C=(0,K.useCallback)(e=>{let t=new URLSearchParams(_);e===`history`?t.set(`tab`,`history`):t.delete(`tab`),y(t,{replace:!0,state:u.state})},[_,y,u.state]),w=d({...te({path:{assistant_id:t},query:{include:`catalog`}}),select:e=>e.skills,refetchOnMount:`always`}),T=(0,K.useCallback)(()=>{r(`${B.superpowers}${g}`,{replace:!0})},[r,g]);fe({containerRef:m,onBack:T,enabled:p,navKey:f,prefetchHref:B.superpowers});let{handleInstall:E,handleRemove:D,isInstallingSkill:O,isRemovingSkill:k,skillPendingRemoval:A,confirmRemove:j,cancelRemove:M}=S(t,{onRemoved:T}),N=w.data,P=(0,K.useMemo)(()=>N?.find(e=>e.id===n)??null,[N,n]),F=d({...ee({path:{assistant_id:t,id:n??``}}),enabled:!!n&&P?.origin===`assistant-memory`,select:e=>e.skill.origin===`assistant-memory`?e.skill.sourceConversationId??null:null});if(!n)return(0,q.jsx)(s,{to:B.superpowers,replace:!0});if(w.isLoading)return(0,q.jsx)(J,{});if(w.isError&&!P)return(0,q.jsx)(Pe,{});if(!P&&w.isFetching)return(0,q.jsx)(J,{});if(!P)return(0,q.jsx)(b,{icon:ge,title:e(`skillDetailPage.notFoundTitle`),subtitle:e(`skillDetailPage.notFoundSubtitle`),children:(0,q.jsx)(i,{type:`button`,variant:`outlined`,className:`mt-4`,leftIcon:(0,q.jsx)(v,{"aria-hidden":!0}),onClick:T,children:e(`skillDetailPage.backToSuperpowers`)})});let I={assistantId:t,skill:P,onBack:T,onInstall:()=>E(P),onRemove:()=>D(P),isInstalling:O(P),isRemoving:k(P),sourceConversationId:F.data??void 0};return(0,q.jsxs)(q.Fragment,{children:[p?(0,q.jsx)(Ae,{...I,swipeContainerRef:m}):(0,q.jsx)(Ee,{...I,tab:x,onTabChange:C}),(0,q.jsx)(ue,{skillName:A?.name??null,onConfirm:j,onCancel:M})]})}export{Fe as SkillDetailPage};
@@ -1 +1 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./capture-error-DiNp24s6.js";import{t as n}from"./react-BFJW0bSv.js";import{t as r}from"./button-VkxVX0DM.js";import{d as i}from"./chunk-5KNZJZUH-BUqIilZr.js";import{n as a}from"./QueryClientProvider-EuRl-wrW.js";import{t as o}from"./useQuery-CTSuec5b.js";import{t as s}from"./jsx-runtime-BJ8jcmzB.js";import{t as c}from"./typography-DekrYXvs.js";import{t as l}from"./brain-9Csfs96f.js";import{t as u}from"./menu-ubIBmfUh.js";import{t as d}from"./ellipsis-4L6z7PhT.js";import{t as f}from"./loader-circle-DYe85z3g.js";import{t as p}from"./trash-2-V2WT_DbX.js";import"./src-qDZBwoEm.js";import{t as m}from"./file-markdown-Br-X9E8g.js";import{r as h}from"./resolved-assistants-store-BNadgXqb.js";import"./i18n--HmJLuhM.js";import{t as g}from"./useTranslation-DdVCKPgw.js";import{d as _}from"./routes-B7wRw3UT.js";import{At as v,yn as y}from"./react-query.gen-Bbh5MII3.js";import{t as b}from"./detail-shell-B1BZYIqh.js";import{n as x,t as S}from"./use-skill-detail-files-DNaNHaP0.js";import{n as C,r as w,t as T}from"./skills-CAAcLlNJ.js";var E=e(n(),1),D=s();function O({skillId:e,onClose:n}){let{t:s}=g(`chat`),O=i(),k=a(),A=h.use.activeAssistantId(),[j,M]=(0,E.useState)(!1),N=o({...v({path:{assistant_id:A??``,id:e}}),select:e=>e.skill,enabled:!!A}),P=N.data,{skillMd:F,fileContent:I,isFilesPending:L,isContentPending:R}=S(A,e),z=y({onSuccess:()=>{A&&T(k,A),n()},onError:e=>{t(e,{context:`skill-detail-panel-remove`})}}),B=()=>{A&&(z.mutate({path:{assistant_id:A,id:e}}),M(!1))},V=N.isPending||L||F!=null&&R,H=P!=null&&C(P);return(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(b,{icon:P?.emoji?(0,D.jsx)(`span`,{className:`text-xl leading-none`,"aria-hidden":!0,children:P.emoji}):void 0,Glyph:l,title:P?.name??`Skill`,closeLabel:`Close skill details`,onClose:n,headerActions:H?(0,D.jsxs)(u.Root,{children:[(0,D.jsx)(u.Trigger,{asChild:!0,children:(0,D.jsx)(r,{variant:`outlined`,iconOnly:(0,D.jsx)(d,{}),"aria-label":s(`skillDetailPanel.actionsAria`),tooltip:s(`skillDetailPanel.moreTooltip`),className:`shrink-0`})}),(0,D.jsx)(u.Content,{side:`bottom`,align:`end`,children:(0,D.jsx)(u.Item,{leftIcon:(0,D.jsx)(p,{size:14}),onSelect:()=>M(!0),children:`Remove skill`})})]}):void 0,footer:(0,D.jsx)(`div`,{className:`flex justify-end`,children:(0,D.jsx)(r,{onClick:()=>O(_.skills.detail(e)),children:`Go to Skill`})}),children:N.isError&&!P?(0,D.jsx)(c,{variant:`body-medium-lighter`,as:`p`,className:`py-8 text-center text-[var(--content-tertiary)]`,children:`This skill could not be loaded. It may have been removed.`}):V?(0,D.jsx)(`div`,{className:`flex items-center justify-center py-8`,children:(0,D.jsx)(f,{className:`h-5 w-5 animate-spin text-[var(--content-tertiary)]`})}):(0,D.jsxs)(D.Fragment,{children:[P?.description&&(0,D.jsx)(c,{variant:`body-medium-lighter`,as:`p`,className:`mb-4 text-[var(--content-secondary)]`,children:P.description}),P&&(0,D.jsx)(x,{skill:P,className:`mb-4`,onNavigate:n}),I&&(0,D.jsx)(m,{content:I})]})}),(0,D.jsx)(w,{skillName:j&&P?P.name:null,onConfirm:B,onCancel:()=>M(!1)})]})}export{O as SkillDetailPanel};
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./capture-error-DiNp24s6.js";import{t as n}from"./react-BFJW0bSv.js";import{t as r}from"./button-VkxVX0DM.js";import{d as i}from"./chunk-5KNZJZUH-BUqIilZr.js";import{n as a}from"./QueryClientProvider-EuRl-wrW.js";import{t as o}from"./useQuery-CTSuec5b.js";import{t as s}from"./jsx-runtime-BJ8jcmzB.js";import{t as c}from"./typography-DekrYXvs.js";import{t as l}from"./brain-9Csfs96f.js";import{t as u}from"./menu-ubIBmfUh.js";import{t as d}from"./ellipsis-4L6z7PhT.js";import{t as f}from"./loader-circle-DYe85z3g.js";import{t as p}from"./trash-2-V2WT_DbX.js";import"./src-CImIAPTd.js";import{t as m}from"./file-markdown-C1rEGVrN.js";import{r as h}from"./resolved-assistants-store-BNadgXqb.js";import"./i18n-C9hRT4Lf.js";import{t as g}from"./useTranslation-D9pPv-bA.js";import{d as _}from"./routes-B7wRw3UT.js";import{At as v,yn as y}from"./react-query.gen-Bbh5MII3.js";import{t as b}from"./detail-shell-D1UEZCzz.js";import{n as x,t as S}from"./use-skill-detail-files-Bg4G44J3.js";import{n as C,r as w,t as T}from"./skills-5MnTu98B.js";var E=e(n(),1),D=s();function O({skillId:e,onClose:n}){let{t:s}=g(`chat`),O=i(),k=a(),A=h.use.activeAssistantId(),[j,M]=(0,E.useState)(!1),N=o({...v({path:{assistant_id:A??``,id:e}}),select:e=>e.skill,enabled:!!A}),P=N.data,{skillMd:F,fileContent:I,isFilesPending:L,isContentPending:R}=S(A,e),z=y({onSuccess:()=>{A&&T(k,A),n()},onError:e=>{t(e,{context:`skill-detail-panel-remove`})}}),B=()=>{A&&(z.mutate({path:{assistant_id:A,id:e}}),M(!1))},V=N.isPending||L||F!=null&&R,H=P!=null&&C(P);return(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(b,{icon:P?.emoji?(0,D.jsx)(`span`,{className:`text-xl leading-none`,"aria-hidden":!0,children:P.emoji}):void 0,Glyph:l,title:P?.name??`Skill`,closeLabel:`Close skill details`,onClose:n,headerActions:H?(0,D.jsxs)(u.Root,{children:[(0,D.jsx)(u.Trigger,{asChild:!0,children:(0,D.jsx)(r,{variant:`outlined`,iconOnly:(0,D.jsx)(d,{}),"aria-label":s(`skillDetailPanel.actionsAria`),tooltip:s(`skillDetailPanel.moreTooltip`),className:`shrink-0`})}),(0,D.jsx)(u.Content,{side:`bottom`,align:`end`,children:(0,D.jsx)(u.Item,{leftIcon:(0,D.jsx)(p,{size:14}),onSelect:()=>M(!0),children:`Remove skill`})})]}):void 0,footer:(0,D.jsx)(`div`,{className:`flex justify-end`,children:(0,D.jsx)(r,{onClick:()=>O(_.skills.detail(e)),children:`Go to Skill`})}),children:N.isError&&!P?(0,D.jsx)(c,{variant:`body-medium-lighter`,as:`p`,className:`py-8 text-center text-[var(--content-tertiary)]`,children:`This skill could not be loaded. It may have been removed.`}):V?(0,D.jsx)(`div`,{className:`flex items-center justify-center py-8`,children:(0,D.jsx)(f,{className:`h-5 w-5 animate-spin text-[var(--content-tertiary)]`})}):(0,D.jsxs)(D.Fragment,{children:[P?.description&&(0,D.jsx)(c,{variant:`body-medium-lighter`,as:`p`,className:`mb-4 text-[var(--content-secondary)]`,children:P.description}),P&&(0,D.jsx)(x,{skill:P,className:`mb-4`,onNavigate:n}),I&&(0,D.jsx)(m,{content:I})]})}),(0,D.jsx)(w,{skillName:j&&P?P.name:null,onConfirm:B,onCancel:()=>M(!1)})]})}export{O as SkillDetailPanel};
@@ -1 +1 @@
1
- import{t as e}from"./jsx-runtime-BJ8jcmzB.js";import"./src-qDZBwoEm.js";import{t}from"./confirm-dialog-Drw1adml.js";import{Pt as n}from"./react-query.gen-Bbh5MII3.js";var r=e();function i({skillName:e,onConfirm:n,onCancel:i}){return(0,r.jsx)(t,{open:e!==null,title:`Remove skill`,message:e?`Remove "${e}" from this assistant?`:``,confirmLabel:`Remove`,destructive:!0,onConfirm:n,onCancel:i})}function a(e){return e.kind===`installed`}function o(e,t){e.invalidateQueries({queryKey:n({path:{assistant_id:t}})})}export{a as n,i as r,o as t};
1
+ import{t as e}from"./jsx-runtime-BJ8jcmzB.js";import"./src-CImIAPTd.js";import{t}from"./confirm-dialog-Drw1adml.js";import{Pt as n}from"./react-query.gen-Bbh5MII3.js";var r=e();function i({skillName:e,onConfirm:n,onCancel:i}){return(0,r.jsx)(t,{open:e!==null,title:`Remove skill`,message:e?`Remove "${e}" from this assistant?`:``,confirmLabel:`Remove`,destructive:!0,onConfirm:n,onCancel:i})}function a(e){return e.kind===`installed`}function o(e,t){e.invalidateQueries({queryKey:n({path:{assistant_id:t}})})}export{a as n,i as r,o as t};