@vellumai/web 0.12.1-dev.202609141913.5e16607 → 0.12.1-dev.202609142113.d1590bc

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 (252) hide show
  1. package/dist/assets/{a2a-invite-Cj6bQz4C.js → a2a-invite-i8AQXl-z.js} +1 -1
  2. package/dist/assets/{about-page-BJVPM7Dq.js → about-page-CGkqxxBs.js} +1 -1
  3. package/dist/assets/{account-page-CIJjk5V4.js → account-page-DiSzOSwh.js} +1 -1
  4. package/dist/assets/{account-shell-sZRHf1fP.js → account-shell-BPmj200S.js} +1 -1
  5. package/dist/assets/{acp-run-detail-panel-Ds9ArOpr.js → acp-run-detail-panel-BvRCFEzJ.js} +1 -1
  6. package/dist/assets/activation-list-route-CZq__gAN.js +1 -0
  7. package/dist/assets/{activity-redirect-page-DKNwRtHD.js → activity-redirect-page-BGqsNed4.js} +1 -1
  8. package/dist/assets/{activity-steps-panel-CJx0BfwS.js → activity-steps-panel-Bxl-qjae.js} +1 -1
  9. package/dist/assets/{add-credits-modal-CI7VP806.js → add-credits-modal-C0fiphmD.js} +1 -1
  10. package/dist/assets/add-credits-modal-DRX2CS6S.js +1 -0
  11. package/dist/assets/ai-page-cwJUbrS-.js +1 -0
  12. package/dist/assets/android-billing-handoff-C7Jmvp33.js +1 -0
  13. package/dist/assets/{api-key-screen-DfiREoeU.js → api-key-screen-7KsJUidH.js} +1 -1
  14. package/dist/assets/{app-DxMy0jwj.js → app-BTYvw9j7.js} +67 -67
  15. package/dist/assets/{app-info-Dgv7SkZ8.js → app-info-CiNBYe6p.js} +1 -1
  16. package/dist/assets/archive-redirect-page-bU67mNRe.js +1 -0
  17. package/dist/assets/assistant-status-panel-BR0fiwFx.js +1 -0
  18. package/dist/assets/auth-store-B3-zv38u.js +1 -0
  19. package/dist/assets/{auth-welcome-screen-B0dWyC6l.js → auth-welcome-screen-aYDHX6pt.js} +1 -1
  20. package/dist/assets/avatar-bundled-components-DBQdWt-_.js +1 -0
  21. package/dist/assets/avatar-random-DgTCtLWm.js +2 -0
  22. package/dist/assets/{await-org-header-settled-B94pxaLq.js → await-org-header-settled-BjDbOuPX.js} +1 -1
  23. package/dist/assets/{background-task-detail-panel-BW1meZPo.js → background-task-detail-panel-D3m2Rx3u.js} +1 -1
  24. package/dist/assets/billing-page-0fBEtVDQ.js +3 -0
  25. package/dist/assets/{billing-redirect-page-CnXiJrt4.js → billing-redirect-page-DEXNagS2.js} +1 -1
  26. package/dist/assets/{bookmarks-page-BQuBfJ7j.js → bookmarks-page-DLnn921J.js} +1 -1
  27. package/dist/assets/{bundle-confirm-page-kq5S_bwo.js → bundle-confirm-page-CWAZtbPt.js} +1 -1
  28. package/dist/assets/channel-transcript-panel-D8fVXqxj.js +1 -0
  29. package/dist/assets/channels-page-route-D7uKwArB.js +1 -0
  30. package/dist/assets/{chat-C5PndB-4.js → chat-DCVj3tsl.js} +1 -1
  31. package/dist/assets/{chat-D73b777k.js → chat-DToye7va.js} +1 -1
  32. package/dist/assets/{chat-BOA6lhRW.js → chat-DmxEcQrf.js} +1 -1
  33. package/dist/assets/{chat-acUsZfEJ.js → chat-gLL6ftZg.js} +1 -1
  34. package/dist/assets/chat-info-panel-OqamJ2nl.js +1 -0
  35. package/dist/assets/{checkout-continuation-Dee-mMCT.js → checkout-continuation-CpF06k20.js} +1 -1
  36. package/dist/assets/{checkout-page-0c4KiLCm.js → checkout-page-BNakh1SR.js} +1 -1
  37. package/dist/assets/checkout-return-target-CmeBFKz5.js +1 -0
  38. package/dist/assets/command-palette-CWUEICjD.js +1 -0
  39. package/dist/assets/{command-palette-CuYxot_s.js → command-palette-CeS6dSCr.js} +1 -1
  40. package/dist/assets/{command-palette-window-page-C1nSbisX.js → command-palette-window-page-C46VPZtx.js} +1 -1
  41. package/dist/assets/{community-page-BeXM3LH-.js → community-page-8lniGwq6.js} +1 -1
  42. package/dist/assets/{companion-accent-eO1EGNi2.js → companion-accent-zKEHhBKk.js} +1 -1
  43. package/dist/assets/{companion-dock-zones-page-DsacQUQP.js → companion-dock-zones-page-4WLUZHQE.js} +1 -1
  44. package/dist/assets/{companion-layout-35k06GTE.js → companion-layout-Bz-abbs8.js} +1 -1
  45. package/dist/assets/{companion-surface-page-iIN786Vv.js → companion-surface-page-DL6NFXHp.js} +1 -1
  46. package/dist/assets/{companion-watch-frame-page-dabAlX34.js → companion-watch-frame-page-BgCq6Sum.js} +1 -1
  47. package/dist/assets/connect-page-dv3-s0yW.js +1 -0
  48. package/dist/assets/{consent-controls-nPLL-Vy1.js → consent-controls-ByVwHg9G.js} +1 -1
  49. package/dist/assets/{contacts-gateway-BvTzBPQl.js → contacts-gateway-BmoYU5P_.js} +1 -1
  50. package/dist/assets/contacts-page-route-BVvZDosS.js +1 -0
  51. package/dist/assets/{credential-entry-page-Dg7Iprxn.js → credential-entry-page-Cno3_YB6.js} +1 -1
  52. package/dist/assets/credentials-page-DXcTJXr-.js +1 -0
  53. package/dist/assets/{csv-preview-CmzA2Sku.js → csv-preview-Cr_CfhY7.js} +1 -1
  54. package/dist/assets/danger-zone-redirect-page-DA342PL2.js +1 -0
  55. package/dist/assets/debug-page-CXtFJUMQ.js +4 -0
  56. package/dist/assets/deploy-dialogs-CrOYEk5m.js +1 -0
  57. package/dist/assets/{deploy-dialogs-DmW-zLPB.js → deploy-dialogs-D46kbIA6.js} +1 -1
  58. package/dist/assets/{desktop-panel-DUYr64PK.js → desktop-panel-Cbmf8F-n.js} +2 -2
  59. package/dist/assets/{desktop-viewer-C0e921iW.js → desktop-viewer-tB0-zRzf.js} +1 -1
  60. package/dist/assets/{detail-card-Dmr5t1GN.js → detail-card-CaD43ZrD.js} +1 -1
  61. package/dist/assets/{detail-panel-stop-button-BLVFDcnl.js → detail-panel-stop-button-gNXi_Ts9.js} +1 -1
  62. package/dist/assets/{detail-primitives-B5ncGbHT.js → detail-primitives-D_WliBqV.js} +1 -1
  63. package/dist/assets/developer-page-CFIgU8la.js +1 -0
  64. package/dist/assets/devices-redirect-page-Bhg49OQn.js +1 -0
  65. package/dist/assets/{dictation-overlay-page-C1kV226n.js → dictation-overlay-page-BsMvl2sj.js} +1 -1
  66. package/dist/assets/document-load-BFz4XrJ2.js +1 -0
  67. package/dist/assets/document-load-DcSrXXmj.js +1 -0
  68. package/dist/assets/{document-viewer-page-BtIzoS1f.js → document-viewer-page-CuM-JsaR.js} +1 -1
  69. package/dist/assets/emails-page-BhqMGA1p.js +1 -0
  70. package/dist/assets/{environment-store-CB5ErBSJ.js → environment-store-zuQZDtiM.js} +1 -1
  71. package/dist/assets/{file-diff-view-CAhMJUai.js → file-diff-view-BiYjBoFT.js} +1 -1
  72. package/dist/assets/{file-editor-CwN2HFdU.js → file-editor-3inLdtc5.js} +1 -1
  73. package/dist/assets/general-page-C2yaUqME.js +2 -0
  74. package/dist/assets/hatching-screen-B2e835Ah.js +1 -0
  75. package/dist/assets/{hosting-screen-D8ZIsJoR.js → hosting-screen-kZfC0Eub.js} +1 -1
  76. package/dist/assets/identity-page-route-Ck1Zk5s7.js +7 -0
  77. package/dist/assets/{inspect-page-CJpOMRNp.js → inspect-page-B0_V5Vg5.js} +5 -5
  78. package/dist/assets/integrations-page-BoRUHOyC.js +1 -0
  79. package/dist/assets/intelligence-layout-CArs93NG.js +1 -0
  80. package/dist/assets/intelligence-layout-slots-store-CCudenSv.js +1 -0
  81. package/dist/assets/keyboard-shortcuts-redirect-page-CemhKPXj.js +1 -0
  82. package/dist/assets/{latest-assistant-text-B4u2AiE9.js → latest-assistant-text-C0oJe4mD.js} +1 -1
  83. package/dist/assets/library-detail-page-D9VLB-K7.js +1 -0
  84. package/dist/assets/library-page-C2vkWQpe.js +1 -0
  85. package/dist/assets/local-mode-CNRBGm_3.js +1 -0
  86. package/dist/assets/login-page-BRBpEBSu.js +1 -0
  87. package/dist/assets/{logout-page-B8hgZoc9.js → logout-page-ClnC5wEN.js} +1 -1
  88. package/dist/assets/{logs-layout-DUysuL3y.js → logs-layout-Bw0NQs7l.js} +1 -1
  89. package/dist/assets/{markdown-preview-DyR2BqGw.js → markdown-preview-DIQceAug.js} +1 -1
  90. package/dist/assets/{media-preview-Em8syzWu.js → media-preview-Cb_GSGUr.js} +1 -1
  91. package/dist/assets/{memory-page-route-DzOOlirE.js → memory-page-route-O7F5djFJ.js} +2 -2
  92. package/dist/assets/memory-router-playground-page-VQyH9fRL.js +1 -0
  93. package/dist/assets/{message-files-panel-CamSxR4B.js → message-files-panel-CjzHcVvK.js} +1 -1
  94. package/dist/assets/{metric-card-BuuwtBVI.js → metric-card-CtfHyEHi.js} +1 -1
  95. package/dist/assets/native-attachment-pickers-CoTqYobC.js +1 -0
  96. package/dist/assets/native-file-C0eFlRbH.js +1 -0
  97. package/dist/assets/{notifications-page-D8viomi2.js → notifications-page-a51nGqvZ.js} +1 -1
  98. package/dist/assets/{oauth-complete-page-Dsm4C9hD.js → oauth-complete-page-Bxvev6zU.js} +1 -1
  99. package/dist/assets/{oauth-popup-complete-page-BupxRxrP.js → oauth-popup-complete-page-drLfs7y-.js} +2 -2
  100. package/dist/assets/paired-platform-identity-D41L_sNl.js +1 -0
  101. package/dist/assets/{pairing-page-BbRSlVwS.js → pairing-page-CKIaZfv1.js} +1 -1
  102. package/dist/assets/password-reset-page-X5fRMCls.js +1 -0
  103. package/dist/assets/{pdf-file-preview-DCb3ZrgB.js → pdf-file-preview-yruALmHe.js} +1 -1
  104. package/dist/assets/personality-page-Brq0Ff_Y.js +1 -0
  105. package/dist/assets/personality-page-xEToUSjw.js +1 -0
  106. package/dist/assets/personality-sliders-DlOEoZnC.js +1 -0
  107. package/dist/assets/{plans-page-DmlUsSWE.js → plans-page-D-1GTGmg.js} +1 -1
  108. package/dist/assets/{platform-loopback-page-BzVt_Muk.js → platform-loopback-page-H7EDPk5C.js} +1 -1
  109. package/dist/assets/{plugin-detail-page-CrjPj9Ny.js → plugin-detail-page-DG-dqW8Y.js} +1 -1
  110. package/dist/assets/{plugins-page-DaOlK_74.js → plugins-page-CEG_SE2-.js} +1 -1
  111. package/dist/assets/plugins-surface-CzTPuG2D.js +1 -0
  112. package/dist/assets/{preview-error-vNKC-_Ku.js → preview-error-BxxJs_Br.js} +1 -1
  113. package/dist/assets/privacy-page-BWCQOVuJ.js +1 -0
  114. package/dist/assets/{privacy-screen-DimQtrs8.js → privacy-screen-ENSxkpiX.js} +1 -1
  115. package/dist/assets/{provider-callback-page-RbApw_Fy.js → provider-callback-page-uhtnQ4vd.js} +1 -1
  116. package/dist/assets/{provider-key-DpPX7wVh.js → provider-key-GYC3h_ua.js} +1 -1
  117. package/dist/assets/{provider-signup-page-CJaJXoJf.js → provider-signup-page-HhyksJMZ.js} +1 -1
  118. package/dist/assets/{quick-input-page-B3HuqceO.js → quick-input-page-D7EX9WYI.js} +1 -1
  119. package/dist/assets/{research-mock-page-DMCjkxzO.js → research-mock-page-BMvwJewz.js} +1 -1
  120. package/dist/assets/research-onboarding-route-DPvupxVy.js +50 -0
  121. package/dist/assets/{review-terms-screen-Bd-HjWsQ.js → review-terms-screen-QkqfPclc.js} +1 -1
  122. package/dist/assets/routes-BGrnInRM.js +1 -0
  123. package/dist/assets/schedules-QsvJ9EAJ.js +1 -0
  124. package/dist/assets/schedules-page-hqkSwdek.js +1 -0
  125. package/dist/assets/security-redirect-page-D7uKQ2Mg.js +1 -0
  126. package/dist/assets/select-assistant-screen-CAYP7ba-.js +1 -0
  127. package/dist/assets/{self-hosted-servers-B3u9o3gv.js → self-hosted-servers-DDnxxI2_.js} +1 -1
  128. package/dist/assets/{service-form-controls-DK08HJHP.js → service-form-controls-C1cOQ-im.js} +1 -1
  129. package/dist/assets/{setting-row-DCNMIFOK.js → setting-row-C0Q_Fq2j.js} +1 -1
  130. package/dist/assets/{settings-divider-CrsTYYA8.js → settings-divider-BQN825Ck.js} +1 -1
  131. package/dist/assets/{settings-layout-Db7d5Mos.js → settings-layout-Dh9atc0e.js} +1 -1
  132. package/dist/assets/share-feedback-modal-CpXF_isk.js +1 -0
  133. package/dist/assets/{share-feedback-modal-D7GARR0f.js → share-feedback-modal-DRM49ZB6.js} +1 -1
  134. package/dist/assets/{sidebar-tree-CB3bELX6.js → sidebar-tree-a6N3epHy.js} +1 -1
  135. package/dist/assets/{signup-page-BpvoG6nX.js → signup-page-BMzlbRGq.js} +1 -1
  136. package/dist/assets/{signup-shell-6tfevxfj.js → signup-shell-BHXUidkH.js} +1 -1
  137. package/dist/assets/{skill-detail-page-DgN34ik5.js → skill-detail-page-CjhFsmTB.js} +2 -2
  138. package/dist/assets/{skill-detail-panel-B_RwRP5K.js → skill-detail-panel-DF7eV_M1.js} +1 -1
  139. package/dist/assets/{skill-removal-dialog-DFwTH584.js → skill-removal-dialog-BsjFId9V.js} +1 -1
  140. package/dist/assets/{skills-page-D54HQhjb.js → skills-page-DDhCEWsE.js} +1 -1
  141. package/dist/assets/sounds-page-BOscbT2g.js +1 -0
  142. package/dist/assets/{start-screen-JZxJJdOW.js → start-screen-BTcwn0Rq.js} +1 -1
  143. package/dist/assets/{stt-language-picker-modal-D7x8NqJd.js → stt-language-picker-modal-Cb0Rbnsg.js} +1 -1
  144. package/dist/assets/subagent-detail-panel-BtBuhr1c.js +1 -0
  145. package/dist/assets/superpowers-page-BW_6ZBW0.js +1 -0
  146. package/dist/assets/system-events-page-B6HWfF1o.js +1 -0
  147. package/dist/assets/system-events-redirect-page-DB2YFarv.js +1 -0
  148. package/dist/assets/{text-preview-C1NMKaAU.js → text-preview-CjURWwWf.js} +1 -1
  149. package/dist/assets/{theme-stage-page-CQrjXQDR.js → theme-stage-page-BOTIsKUX.js} +1 -1
  150. package/dist/assets/{tiptap-document-editor-BHRei95S.js → tiptap-document-editor-DNbRDmaM.js} +1 -1
  151. package/dist/assets/tool-detail-panel-6Dca1KnP.js +1 -0
  152. package/dist/assets/tool-detail-panel-DcaXQLTc.js +15 -0
  153. package/dist/assets/{trait-cycle-row-DQhdJCJ-.js → trait-cycle-row-CeKchpD2.js} +1 -1
  154. package/dist/assets/{upgrade-cancel-page-C6C4dMOJ.js → upgrade-cancel-page-DX9x5pYM.js} +1 -1
  155. package/dist/assets/{upgrade-success-page-CC8Q1etX.js → upgrade-success-page-DZPHun5r.js} +1 -1
  156. package/dist/assets/{usage-redirect-page--upJECGD.js → usage-redirect-page-B4XwvrF5.js} +1 -1
  157. package/dist/assets/{use-app-delete-B6SYqeZ7.js → use-app-delete-CTAC12GU.js} +1 -1
  158. package/dist/assets/use-assistant-identity-details-DwY-UTbv.js +1 -0
  159. package/dist/assets/use-checkout-dismiss-refresh-BFsz2VQH.js +1 -0
  160. package/dist/assets/{use-edge-swipe-back-BD_Ah2bU.js → use-edge-swipe-back-yu9lVyqu.js} +1 -1
  161. package/dist/assets/{use-hotkey-recorder-DbV6Cyhk.js → use-hotkey-recorder-BdOIjDrJ.js} +1 -1
  162. package/dist/assets/use-invite-link-dialog-Dtpx79a6.js +1 -0
  163. package/dist/assets/{use-platform-assistant-id-BF4WUv0T.js → use-platform-assistant-id-CN0kUO7z.js} +1 -1
  164. package/dist/assets/{use-return-to-short-circuit-CvAy4AQQ.js → use-return-to-short-circuit-DSRiJl-E.js} +1 -1
  165. package/dist/assets/{use-side-list-room-yQSI40sv.js → use-side-list-room-CHDictwl.js} +1 -1
  166. package/dist/assets/{use-skill-actions-nsr480LX.js → use-skill-actions-B_lZHEC6.js} +1 -1
  167. package/dist/assets/{use-skill-detail-files-MdjMAlCe.js → use-skill-detail-files-N2V2C8HC.js} +1 -1
  168. package/dist/assets/use-supports-credentials-settings-sDA9skW6.js +1 -0
  169. package/dist/assets/{use-transcript-message-by-id-sQ_bR9wX.js → use-transcript-message-by-id-D7Llb7KM.js} +1 -1
  170. package/dist/assets/voice-page-DO8QCdsO.js +1 -0
  171. package/dist/assets/{wake-detail-panel-Bd36PxOK.js → wake-detail-panel-BRlSf86W.js} +1 -1
  172. package/dist/assets/{weather-forecast-display-C93-n3xN.js → weather-forecast-display-BIb_fU7z.js} +1 -1
  173. package/dist/assets/{welcome-screen-CKVwXjBE.js → welcome-screen-VtflUAbg.js} +1 -1
  174. package/dist/assets/{workflow-detail-panel-BLoKwML7.js → workflow-detail-panel-BIuisJbg.js} +1 -1
  175. package/dist/assets/workspace-B0l6JUfL.js +1 -0
  176. package/dist/assets/workspace-B7Vd5NRL.js +1 -0
  177. package/dist/assets/workspace-BjrEylvz.js +1 -0
  178. package/dist/assets/workspace-DR2tWF9N.js +1 -0
  179. package/dist/assets/workspace-page-CGRLvetX.js +1 -0
  180. package/dist/index.html +1 -1
  181. package/package.json +1 -1
  182. package/dist/assets/activation-list-route-B30qKxxA.js +0 -1
  183. package/dist/assets/add-credits-modal-hieez1oi.js +0 -1
  184. package/dist/assets/ai-page-COCv3iDh.js +0 -1
  185. package/dist/assets/android-billing-handoff-Do_yAgW0.js +0 -1
  186. package/dist/assets/archive-redirect-page-DMWMCMyY.js +0 -1
  187. package/dist/assets/assistant-status-panel-CLZ_RbJF.js +0 -1
  188. package/dist/assets/auth-store-DNmjNVVJ.js +0 -1
  189. package/dist/assets/avatar-bundled-components-D02Cc9qY.js +0 -1
  190. package/dist/assets/avatar-random-BUg7IWMp.js +0 -2
  191. package/dist/assets/billing-page-xuhzUOlJ.js +0 -3
  192. package/dist/assets/channel-transcript-panel-BJPFnqaR.js +0 -1
  193. package/dist/assets/channels-page-route-CfYjH2LF.js +0 -1
  194. package/dist/assets/chat-info-panel-D0qexb8N.js +0 -1
  195. package/dist/assets/checkout-return-target-B0GyRUat.js +0 -1
  196. package/dist/assets/command-palette-Cx7yIXQ_.js +0 -1
  197. package/dist/assets/connect-page-B60uN-ZC.js +0 -1
  198. package/dist/assets/contacts-page-route-DzndMePQ.js +0 -1
  199. package/dist/assets/credentials-page-i7J7SwsS.js +0 -1
  200. package/dist/assets/danger-zone-redirect-page-B5Tl0pgh.js +0 -1
  201. package/dist/assets/debug-page-GKgG-G0m.js +0 -4
  202. package/dist/assets/deploy-dialogs-BKnTLmik.js +0 -1
  203. package/dist/assets/developer-page-Dbq0603s.js +0 -1
  204. package/dist/assets/devices-redirect-page-C_y8UcR5.js +0 -1
  205. package/dist/assets/document-load-BnrvE-C_.js +0 -1
  206. package/dist/assets/document-load-XHdVVQyo.js +0 -1
  207. package/dist/assets/emails-page-BmjIvU4y.js +0 -1
  208. package/dist/assets/general-page-C2U-DG-m.js +0 -2
  209. package/dist/assets/hatching-screen-BU8TigBJ.js +0 -1
  210. package/dist/assets/identity-page-route-CR_lDoMi.js +0 -7
  211. package/dist/assets/integrations-page-CjcidO1m.js +0 -1
  212. package/dist/assets/intelligence-layout-C3RKPmg0.js +0 -1
  213. package/dist/assets/intelligence-layout-slots-store-Cc8q31-1.js +0 -1
  214. package/dist/assets/keyboard-shortcuts-redirect-page-BTaXxkyv.js +0 -1
  215. package/dist/assets/library-detail-page-vjxO6rCt.js +0 -1
  216. package/dist/assets/library-page-DMca0L7D.js +0 -1
  217. package/dist/assets/local-mode-Di1vm0TR.js +0 -1
  218. package/dist/assets/login-page-Bz2m5Zih.js +0 -1
  219. package/dist/assets/memory-router-playground-page-DqQgUpVI.js +0 -1
  220. package/dist/assets/native-attachment-pickers-Co-6a_p5.js +0 -1
  221. package/dist/assets/native-file-DVLbtjDu.js +0 -1
  222. package/dist/assets/paired-platform-identity-CblGKBB2.js +0 -1
  223. package/dist/assets/password-reset-page-1lN0ZVQi.js +0 -1
  224. package/dist/assets/personality-page-CRhoMs2K.js +0 -1
  225. package/dist/assets/personality-page-CufOsQwH.js +0 -1
  226. package/dist/assets/personality-sliders-wbkdQqh4.js +0 -1
  227. package/dist/assets/plugins-surface-DDTktJOZ.js +0 -1
  228. package/dist/assets/privacy-page-Dk3CbfNJ.js +0 -1
  229. package/dist/assets/research-onboarding-route-BbKHByvB.js +0 -50
  230. package/dist/assets/routes-CipnZZkn.js +0 -1
  231. package/dist/assets/schedules-l9yD8l1M.js +0 -1
  232. package/dist/assets/schedules-page-Djqt9Vja.js +0 -1
  233. package/dist/assets/security-redirect-page-DjXWbz9T.js +0 -1
  234. package/dist/assets/select-assistant-screen-C-FSTaZC.js +0 -1
  235. package/dist/assets/share-feedback-modal-CtZMQEye.js +0 -1
  236. package/dist/assets/sounds-page-Cw8SWT1c.js +0 -1
  237. package/dist/assets/subagent-detail-panel-buxSyEAP.js +0 -1
  238. package/dist/assets/superpowers-page-cPWfA0se.js +0 -1
  239. package/dist/assets/system-events-page-8K2GCQdQ.js +0 -1
  240. package/dist/assets/system-events-redirect-page-DBbcQGWP.js +0 -1
  241. package/dist/assets/tool-detail-panel-BmP7AMGA.js +0 -15
  242. package/dist/assets/tool-detail-panel-JVXpN3YM.js +0 -1
  243. package/dist/assets/use-assistant-identity-details-CnmR7Be9.js +0 -1
  244. package/dist/assets/use-checkout-dismiss-refresh-DwlaNKB9.js +0 -1
  245. package/dist/assets/use-invite-link-dialog-B8DtFj1u.js +0 -1
  246. package/dist/assets/use-supports-credentials-settings-Db6r5haR.js +0 -1
  247. package/dist/assets/voice-page-Cfg787uE.js +0 -1
  248. package/dist/assets/workspace-B7H-ZqBy.js +0 -1
  249. package/dist/assets/workspace-CU8OrPZ7.js +0 -1
  250. package/dist/assets/workspace-Cfz5TGM8.js +0 -1
  251. package/dist/assets/workspace-YGLhaK9w.js +0 -1
  252. package/dist/assets/workspace-page-HE84odf5.js +0 -1
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Cb as t,Ch as n,Dp as r,Eb as i,Fb as a,Jb as o,Kb as s,Ni as c,S_ as l,Sx as u,Xb as d,Z as f,_f as p,bb as m,bf as h,bx as g,cp as _,cu as v,dd as y,dl as b,ea as x,fl as S,fx as C,gf as w,hf as T,hn as E,hx as D,ib as O,ix as k,kp as A,lc as j,lp as M,mx as N,nx as P,op as F,ox as I,pb as L,qr as R,rx as z,sp as B,sx as V,tx as H,uc as U,ul as W,vf as ee,w_ as te,yf as ne,yx as re,zr as G}from"./app-BTYvw9j7.js";import{N as ie,Qn as ae,Zn as K,er as q,j as J}from"./vendor-B2dSzLzU.js";import{_ as oe,f as se,t as ce,x as le}from"./react-B9IgSVeK.js";import{Gi as ue,Gn as de,It as Y,Ki as fe,Q as pe,Ui as me,Un as he,Xt as ge,Yr as _e,Zr as ve,_t as ye,ht as be,i as xe,k as X,ki as Se,kt as Ce,qa as we,qn as Z,si as Te}from"./icons-bnwMda87.js";import{t as Ee}from"./use-platform-assistant-id-CN0kUO7z.js";var De=we(`cable`,[[`path`,{d:`M17 19a1 1 0 0 1-1-1v-2a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v2a1 1 0 0 1-1 1z`,key:`trhst0`}],[`path`,{d:`M17 21v-2`,key:`ds4u3f`}],[`path`,{d:`M19 14V6.5a1 1 0 0 0-7 0v11a1 1 0 0 1-7 0V10`,key:`1mo9zo`}],[`path`,{d:`M21 21v-2`,key:`eo0ou`}],[`path`,{d:`M3 5V3`,key:`1k5hjh`}],[`path`,{d:`M4 10a2 2 0 0 1-2-2V6a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2a2 2 0 0 1-2 2z`,key:`1dd30t`}],[`path`,{d:`M7 5V3`,key:`1t1388`}]]),Oe=we(`calendar-plus`,[[`path`,{d:`M16 19h6`,key:`xwg31i`}],[`path`,{d:`M16 2v4`,key:`4m81vk`}],[`path`,{d:`M19 16v6`,key:`tddt3s`}],[`path`,{d:`M21 12.598V6a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8.5`,key:`1glfrc`}],[`path`,{d:`M3 10h18`,key:`8toen8`}],[`path`,{d:`M8 2v4`,key:`1cmpym`}]]),ke={slack:`slack_channel`,discord:`discord_channel`,telegram:`telegram`};function Ae(e){return Object.entries(ke).some(([t,n])=>t===e&&n!==e)}var Q=e(le(),1),$=ce();function je({displayName:e,providerKey:t,logoUrl:n,connections:r,connectionsLoading:i,oauthInProgress:a,onCancelConnect:o,disconnectingId:s,onConnect:c,onDisconnect:l,connectPresets:d=[]}){let{t:f}=J(`settings`);return i?(0,$.jsx)(`div`,{className:`flex items-center justify-center py-10`,children:(0,$.jsx)(Z,{className:`h-5 w-5 animate-spin text-[var(--content-disabled)]`})}):r.length===0?a?(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-10`,children:[(0,$.jsx)(G,{providerKey:t,displayName:e,logoUrl:n,size:48}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,$.jsx)(Z,{className:`h-3.5 w-3.5 animate-spin`}),f(`managedOauthTab.waitingForAuthorization`),(0,$.jsx)(u,{variant:`ghost`,size:`compact`,onClick:o,children:f(`managedOauthTab.cancel`)})]})]}):(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-10`,children:[(0,$.jsx)(G,{providerKey:t,displayName:e,logoUrl:n,size:48}),(0,$.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-secondary)]`,children:f(`managedOauthTab.connectToContinue`)}),(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-2`,children:[(0,$.jsx)(u,{variant:`primary`,size:`compact`,leftIcon:(0,$.jsx)(Y,{}),onClick:()=>c(),disabled:a,children:f(`managedOauthTab.connectAccount`)}),d.map(e=>(0,$.jsx)(u,{variant:`outlined`,size:`compact`,leftIcon:(0,$.jsx)(Oe,{}),onClick:()=>c(e.scopes),disabled:a,children:e.label},e.id))]})]}):(0,$.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-base)]`,children:[(0,$.jsx)(`ul`,{className:`divide-y divide-[var(--border-base)]`,children:r.map(r=>{let i=s===r.id,a=r.account_label??f(`managedOauthTab.accountFallback`,{name:e});return(0,$.jsxs)(`li`,{className:`flex items-center gap-3 px-4 py-3`,children:[(0,$.jsx)(G,{providerKey:t,displayName:e,logoUrl:n,size:20}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default text-[var(--content-default)]`,children:a}),(0,$.jsx)(u,{variant:`dangerOutline`,size:`compact`,iconOnly:i?(0,$.jsx)(Z,{className:`animate-spin`}):(0,$.jsx)(X,{}),onClick:()=>l(r),disabled:i,"aria-label":f(`managedOauthTab.disconnectAriaLabel`,{account:a})})]},r.id)})}),(0,$.jsx)(`div`,{className:`border-t border-[var(--border-base)] px-4 py-3 dark:border-[var(--border-base)]`,children:a?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,$.jsx)(Z,{className:`h-3.5 w-3.5 animate-spin`}),f(`managedOauthTab.waitingForAuthorization`),(0,$.jsx)(u,{variant:`ghost`,size:`compact`,onClick:o,children:f(`managedOauthTab.cancel`)})]}):(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,$.jsx)(u,{variant:`primary`,size:`compact`,leftIcon:(0,$.jsx)(_e,{}),onClick:()=>c(),disabled:a,children:f(`managedOauthTab.connectAccountLower`)}),d.map(e=>(0,$.jsx)(u,{variant:`outlined`,size:`compact`,leftIcon:(0,$.jsx)(Oe,{}),onClick:()=>c(e.scopes),disabled:a,children:e.label},e.id))]})})]})}function Me(e){return e.length>16?`${e.slice(0,12)}…${e.slice(-4)}`:e.length>8?`${e.slice(0,8)}…`:e}function Ne(e){try{return new Date(e).toLocaleDateString(void 0,{year:`numeric`,month:`short`,day:`numeric`})}catch{return``}}function Pe({assistantId:e,providerKey:t,displayName:n,logoUrl:r}){let{t:i}=J(`settings`),a=q(),o=K({...p({path:{assistant_id:e},query:{provider_key:t}}),select:e=>e.apps}),s=K({...ne({path:{assistant_id:e,providerKey:t}}),select:e=>e.oauth_callback_url}),c=o.data??[],l=s.data??null,d=ae({queries:c.map(t=>({...T({path:{assistant_id:e,appId:t.id}}),select:e=>e.connections}))}),f={};c.forEach((e,t)=>{f[e.id]=d[t]?.data??[]});let m=ee({path:{assistant_id:e},query:{provider_key:t}}),h=_({onSuccess:()=>{a.invalidateQueries({queryKey:m}),D(``),k(``),S(!1),P.success(i(`yourOwnOauthTab.appAddedToast`,{name:n}))},onError:e=>{P.error(e.message||i(`yourOwnOauthTab.createFailedToast`))}}),v=B({onSuccess:()=>{a.invalidateQueries({queryKey:m}),P.success(i(`yourOwnOauthTab.appDeletedToast`))},onError:e=>{P.error(e.message||i(`yourOwnOauthTab.deleteFailedToast`))}}),y=F({onSuccess:e=>{`auth_url`in e&&(window.location.href=e.auth_url)},onError:e=>{P.error(e.message||i(`yourOwnOauthTab.connectFailedToast`))}}),b=M(),[x,S]=(0,Q.useState)(!1),[E,D]=(0,Q.useState)(``),[O,k]=(0,Q.useState)(``),[A,j]=(0,Q.useState)(!1),[N,I]=(0,Q.useState)(null),[L,R]=(0,Q.useState)(null),z=h.isPending,V=v.isPending?v.variables?.path?.id??null:null,U=y.isPending?y.variables?.path?.appId??null:null,W=b.isPending?b.variables?.path?.id??null:null,re=()=>{let n=E.trim(),r=O.trim();!n||!r||h.mutate({path:{assistant_id:e},body:{provider_key:t,client_id:n,client_secret:r}})},ie=()=>{let t=N;I(null),t&&v.mutate({path:{assistant_id:e,id:t.id}})},oe=t=>{y.mutate({path:{assistant_id:e,appId:t.id},body:{callback_transport:`gateway`,scopes:[]}})};return o.isLoading?(0,$.jsx)(`div`,{className:`flex items-center justify-center py-10`,children:(0,$.jsx)(Z,{className:`h-5 w-5 animate-spin text-[var(--content-disabled)]`})}):(0,$.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[c.length===0||x?(0,$.jsx)(g.Root,{children:(0,$.jsxs)(g.Body,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:c.length===0?i(`yourOwnOauthTab.addOwnApp`,{name:n}):i(`yourOwnOauthTab.addAnotherApp`,{name:n})}),(0,$.jsx)(`p`,{className:`text-body-small-lighter leading-relaxed text-[var(--content-tertiary)]`,children:i(`yourOwnOauthTab.credentialsNote`)})]}),l?(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:i(`yourOwnOauthTab.redirectUrl`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(C,{type:`text`,value:l,readOnly:!0,fullWidth:!0}),(0,$.jsx)(u,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>{te(l,{successMessage:i(`yourOwnOauthTab.copiedToast`),errorMessage:i(`yourOwnOauthTab.copyFailedToast`),onCopied:()=>{j(!0),setTimeout(()=>j(!1),2e3)}})},"aria-label":i(A?`yourOwnOauthTab.copiedAria`:`yourOwnOauthTab.copyRedirectAria`),iconOnly:A?(0,$.jsx)(fe,{"aria-hidden":!0}):(0,$.jsx)(Te,{"aria-hidden":!0})})]}),(0,$.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:i(`yourOwnOauthTab.redirectHint`)})]}):null,(0,$.jsx)(C,{label:i(`yourOwnOauthTab.clientId`),type:`text`,value:E,onChange:e=>D(e.target.value),placeholder:i(`yourOwnOauthTab.clientIdPlaceholder`),fullWidth:!0}),(0,$.jsx)(C,{label:i(`yourOwnOauthTab.clientSecret`),type:`password`,value:O,onChange:e=>k(e.target.value),placeholder:i(`yourOwnOauthTab.clientSecretPlaceholder`),fullWidth:!0}),(0,$.jsxs)(`div`,{className:`flex items-center justify-end gap-2 pt-1`,children:[c.length>0?(0,$.jsx)(u,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>{S(!1),D(``),k(``)},disabled:z,children:i(`yourOwnOauthTab.cancel`)}):null,(0,$.jsx)(u,{type:`button`,size:`compact`,onClick:re,disabled:z||!E.trim()||!O.trim(),leftIcon:z?(0,$.jsx)(Z,{className:`animate-spin`,"aria-hidden":!0}):(0,$.jsx)(Y,{"aria-hidden":!0}),children:i(`yourOwnOauthTab.addApp`)})]})]})}):null,c.map(e=>{let a=f[e.id]??[],o=V===e.id,s=U===e.id;return(0,$.jsx)(g.Root,{children:(0,$.jsxs)(g.Body,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 space-y-0.5`,children:[(0,$.jsx)(`p`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:Me(e.client_id)}),(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:i(`yourOwnOauthTab.addedOn`,{date:Ne(e.created_at)})})]}),(0,$.jsx)(u,{type:`button`,variant:`dangerOutline`,size:`compact`,onClick:()=>I(e),disabled:o,"aria-label":i(`yourOwnOauthTab.deleteAppAria`,{id:Me(e.client_id)}),iconOnly:o?(0,$.jsx)(Z,{className:`animate-spin`,"aria-hidden":!0}):(0,$.jsx)(X,{"aria-hidden":!0})})]}),a.length>0?(0,$.jsx)(`ul`,{className:`divide-y divide-[var(--border-base)] overflow-hidden rounded-md border border-[var(--border-base)] dark:divide-[var(--border-base)] dark:border-[var(--border-base)]`,children:a.map(a=>{let o=W===a.id,s=a.account_info??i(`yourOwnOauthTab.accountFallback`,{name:n});return(0,$.jsxs)(`li`,{className:`flex items-center gap-3 px-3 py-2`,children:[(0,$.jsx)(G,{providerKey:t,displayName:n,logoUrl:r,size:18}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-lighter text-[var(--content-default)]`,children:s}),(0,$.jsx)(u,{type:`button`,variant:`dangerOutline`,size:`compact`,onClick:()=>R({appId:e.id,connection:a}),disabled:o,"aria-label":i(`yourOwnOauthTab.disconnectAria`,{account:s}),iconOnly:o?(0,$.jsx)(Z,{className:`animate-spin`,"aria-hidden":!0}):(0,$.jsx)(X,{"aria-hidden":!0})})]},a.id)})}):null,(0,$.jsx)(u,{type:`button`,size:`compact`,onClick:()=>oe(e),disabled:s,className:`w-full`,leftIcon:s?(0,$.jsx)(Z,{className:`animate-spin`,"aria-hidden":!0}):(0,$.jsx)(_e,{"aria-hidden":!0}),children:i(s?`yourOwnOauthTab.waitingAuthorization`:`yourOwnOauthTab.connectAccount`)})]})},e.id)}),c.length>0&&!x?(0,$.jsx)(u,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>S(!0),className:`w-full border-dashed`,leftIcon:(0,$.jsx)(Y,{"aria-hidden":!0}),children:i(`yourOwnOauthTab.addAnotherAppButton`)}):null,(0,$.jsx)(H,{open:N!==null,title:i(`yourOwnOauthTab.deleteAppTitle`),message:N?i(`yourOwnOauthTab.deleteAppMessage`,{id:Me(N.client_id)}):``,confirmLabel:i(`yourOwnOauthTab.delete`),destructive:!0,onConfirm:ie,onCancel:()=>I(null)}),(0,$.jsx)(H,{open:L!==null,title:i(`yourOwnOauthTab.disconnectTitle`,{name:n}),message:L?i(`yourOwnOauthTab.disconnectMessage`,{account:L.connection.account_info??i(`yourOwnOauthTab.accountFallback`,{name:n})}):``,confirmLabel:i(`yourOwnOauthTab.disconnect`),destructive:!0,onConfirm:()=>{let t=L;R(null),t&&b.mutate({path:{assistant_id:e,id:t.connection.id}},{onSuccess:()=>{let r=w({path:{assistant_id:e,appId:t.appId}});a.invalidateQueries({queryKey:r}),a.invalidateQueries({queryKey:m}),P.success(i(`yourOwnOauthTab.disconnectedToast`,{name:n}))},onError:e=>{P.error(e.message||i(`yourOwnOauthTab.disconnectFailedToast`))}})},onCancel:()=>R(null)})]})}var Fe={};function Ie(e){return Fe[e]??[]}function Le({assistantId:e,platformAssistantId:t,providerKey:n,displayName:i,description:a,logoUrl:o,platformGate:s,onClose:c}){let{t:l}=J(`settings`),d=q(),f=s===`full`,p=!r(),[h,g]=(0,Q.useState)(s===`gated`&&p?`your-own`:`managed`),_=(0,Q.useMemo)(()=>[{value:`managed`,label:l(`integrationDetailModal.managedTab`)},{value:`your-own`,label:l(`integrationDetailModal.yourOwnTab`)}],[l]);(0,Q.useEffect)(()=>{!p&&h===`your-own`&&g(`managed`)},[p,h]);let[y,C]=(0,Q.useState)(null),[w,T]=(0,Q.useState)(null),D=b({path:{assistant_id:t}}),{data:O,isLoading:k}=K({...W({path:{assistant_id:t}}),enabled:f}),A=(O??[]).filter(e=>e.provider===n&&e.connected),j=R({assistantId:e,providerKey:n,providerLabel:i}),M=e=>{f&&j.connect(e)},N=j.status;(0,Q.useEffect)(()=>{N===`connected`&&P.success(l(`useOauthConnect.accountConnected`,{name:i,ns:`common`}))},[N,i,l]);let F=j.dismiss;(0,Q.useEffect)(()=>F,[F]);let L=j.errorMessage;(0,Q.useEffect)(()=>{L&&P.error(L)},[L]);let z={path:{assistant_id:t}},B=v({onSuccess(e,t){P.success(l(`integrationDetailModal.disconnectedToast`,{name:i}));let n=t.path.connection_id;S(d,z,e=>e?.filter(e=>e.id!==n)),d.invalidateQueries({queryKey:D}),C(null)},onError(e){let t=m(e,void 0,l(`integrationDetailModal.disconnectFailedToast`,{name:i}));P.error(t),C(null)}});x(),(0,Q.useEffect)(()=>{let e=e=>{e.key===`Escape`&&!e.defaultPrevented&&(e.preventDefault(),c())};return document.addEventListener(`keydown`,e),()=>{document.removeEventListener(`keydown`,e)}},[c]);let V=e=>{T(e)},U=()=>{let e=w;T(null),e&&(C(e.id),B.mutate({path:{assistant_id:t,connection_id:e.id}}))},ee=w?.account_label??l(`integrationDetailModal.accountFallback`,{name:i}),te=a?l(`integrationDetailModal.subtitleWithDescription`,{name:i,description:a}):l(`integrationDetailModal.subtitle`,{name:i});return(0,$.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center bg-black/40 p-4`,children:[(0,$.jsxs)(`div`,{role:`dialog`,"aria-modal":`true`,"aria-labelledby":`integration-modal-title`,className:`flex w-full max-w-[520px] flex-col overflow-hidden rounded-xl bg-white shadow-xl dark:bg-[var(--surface-lift)]`,children:[(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-3 border-b border-[var(--border-base)] px-5 py-4 dark:border-[var(--border-base)]`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsx)(G,{providerKey:n,displayName:i,logoUrl:o,size:32}),(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`h2`,{id:`integration-modal-title`,className:`text-title-small text-[var(--content-default)]`,children:l(`integrationDetailModal.title`,{name:i})}),(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:te})]})]}),(0,$.jsx)(u,{variant:`ghost`,size:`compact`,iconOnly:(0,$.jsx)(xe,{}),"aria-label":l(`integrationDetailModal.close`),onClick:c})]}),(0,$.jsxs)(`div`,{className:`space-y-4 px-5 py-4`,children:[s!==`gated`&&p&&(0,$.jsx)(I,{ariaLabel:l(`integrationDetailModal.oauthModeAriaLabel`),items:_,value:h,onChange:g}),h===`managed`&&s!==`gated`?s===`disabled`?(0,$.jsx)(E,{children:l(`integrationDetailModal.loginNotice`)}):(0,$.jsx)(je,{displayName:i,providerKey:n,logoUrl:o,connections:A,connectionsLoading:k,oauthInProgress:j.status===`attempting`,onCancelConnect:j.dismiss,disconnectingId:B.isPending?y:null,onConnect:M,onDisconnect:V,connectPresets:Ie(n)}):p?(0,$.jsx)(Pe,{assistantId:e,providerKey:n,displayName:i,logoUrl:o}):null]}),(0,$.jsx)(`div`,{className:`flex justify-end border-t border-[var(--border-base)] px-5 py-3 dark:border-[var(--border-base)]`,children:(0,$.jsx)(u,{variant:`outlined`,size:`compact`,onClick:c,children:l(`integrationDetailModal.confirm`)})})]}),(0,$.jsx)(H,{open:w!==null,title:l(`integrationDetailModal.disconnectTitle`,{name:i}),message:w?l(`integrationDetailModal.disconnectMessage`,{account:ee}):``,confirmLabel:l(`integrationDetailModal.disconnect`),destructive:!0,onConfirm:U,onCancel:()=>T(null)})]})}function Re({platformAssistantId:e,providerKey:t,displayName:n,description:r,logoUrl:i,connection:a,platformGate:o,onConfigure:s}){let{t:c}=J(`settings`),l=q(),d=!!a?.connected,[f,p]=(0,Q.useState)(!1),[h,_]=(0,Q.useState)(!1),y=b({path:{assistant_id:e}}),x={path:{assistant_id:e}},C=v({onSuccess(e,t){P.success(c(`integrationRow.disconnectedToast`,{name:n}));let r=t.path.connection_id;S(l,x,e=>e?.filter(e=>e.id!==r)),l.invalidateQueries({queryKey:y})},onError(e){let t=m(e,void 0,c(`integrationRow.disconnectFailedToast`,{name:n}));P.error(t)}}),w=()=>{a?.id&&_(!0)};return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(g.Root,{children:(0,$.jsxs)(g.Body,{padding:`sm`,className:`flex items-center gap-4 px-4`,children:[(0,$.jsx)(G,{providerKey:t,displayName:n,logoUrl:i,size:32}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`truncate text-title-small text-[var(--content-default)]`,children:n}),r&&(0,$.jsx)(`p`,{className:`truncate text-body-medium-lighter text-[var(--content-tertiary)]`,children:r})]}),d&&o===`full`?(0,$.jsx)(`div`,{className:`shrink-0`,children:(0,$.jsx)(ze,{displayName:n,open:f,onOpenChange:p,onEditConnections:()=>{p(!1),s()},onDisable:()=>{p(!1),w()},disablePending:C.isPending})}):(0,$.jsx)(u,{variant:`primary`,onClick:s,className:`shrink-0`,children:c(`integrationRow.enable`)})]})}),(0,$.jsx)(H,{open:h,title:c(`integrationRow.disconnectTitle`,{name:n}),message:c(`integrationRow.disconnectMessage`,{name:n}),confirmLabel:c(`integrationRow.disconnect`),destructive:!0,onConfirm:()=>{_(!1),a?.id&&C.mutate({path:{assistant_id:e,connection_id:a.id}})},onCancel:()=>_(!1)})]})}function ze({displayName:e,open:t,onOpenChange:n,onEditConnections:r,onDisable:i,disablePending:a}){let{t:o}=J(`settings`);return c()?(0,$.jsxs)(z.Root,{open:t,onOpenChange:n,children:[(0,$.jsx)(z.Trigger,{asChild:!0,children:(0,$.jsx)(u,{variant:`outlined`,rightIcon:(0,$.jsx)(ue,{}),"aria-haspopup":`menu`,"aria-expanded":t,children:o(`integrationRow.configure`)})}),(0,$.jsxs)(z.Content,{children:[(0,$.jsx)(z.Header,{children:(0,$.jsx)(z.Title,{children:e})}),(0,$.jsxs)(z.Body,{children:[(0,$.jsx)(d,{icon:ge,label:o(`integrationRow.editConnections`),onSelect:r}),(0,$.jsx)(d,{icon:a?Z:Se,label:o(`integrationRow.disable`),onSelect:()=>{a||i()}})]})]})]}):(0,$.jsxs)(N.Root,{open:t,onOpenChange:n,children:[(0,$.jsx)(N.Trigger,{asChild:!0,children:(0,$.jsx)(u,{variant:`outlined`,rightIcon:(0,$.jsx)(ue,{}),"aria-haspopup":`menu`,"aria-expanded":t,children:o(`integrationRow.configure`)})}),(0,$.jsxs)(N.Content,{align:`end`,sideOffset:4,role:`menu`,className:`w-56 overflow-hidden p-0`,children:[(0,$.jsx)(u,{type:`button`,role:`menuitem`,variant:`ghost`,onClick:r,className:`w-full justify-start rounded-none`,leftIcon:(0,$.jsx)(ge,{"aria-hidden":!0}),children:o(`integrationRow.editConnections`)}),(0,$.jsx)(u,{type:`button`,role:`menuitem`,variant:`dangerGhost`,onClick:i,disabled:a,className:`w-full justify-start rounded-none`,leftIcon:a?(0,$.jsx)(Z,{className:`animate-spin`,"aria-hidden":!0}):(0,$.jsx)(Se,{"aria-hidden":!0}),children:o(`integrationRow.disable`)})]})]})}var Be=[{value:`none`,labelKey:`mcpAddServerModal.authNone`},{value:`oauth`,labelKey:`mcpAddServerModal.authOAuth`},{value:`bearer`,labelKey:`mcpAddServerModal.authBearer`},{value:`api-key`,labelKey:`mcpAddServerModal.authApiKey`}],Ve=[{value:`sse`,labelKey:`mcpAddServerModal.transportSse`},{value:`streamable-http`,labelKey:`mcpAddServerModal.transportStreamableHttp`},{value:`stdio`,labelKey:`mcpAddServerModal.transportStdio`}];function He(e){return Be.map(({value:t,labelKey:n})=>({value:t,label:e(n)}))}function Ue(e){return Ve.map(({value:t,labelKey:n})=>({value:t,label:e(n)}))}function We({open:e,onClose:t,onAdd:n,isPending:r}){let{t:i}=J(`settings`),a=(0,Q.useMemo)(()=>He(i),[i]),o=(0,Q.useMemo)(()=>Ue(i),[i]),[s,c]=(0,Q.useState)(``),[l,d]=(0,Q.useState)(`sse`),[f,p]=(0,Q.useState)(``),[m,h]=(0,Q.useState)(``),[g,_]=(0,Q.useState)(``),[v,y]=(0,Q.useState)(`none`),[b,x]=(0,Q.useState)(``),[S,w]=(0,Q.useState)(`X-API-Key`),[T,E]=(0,Q.useState)(``),D=(0,Q.useCallback)(()=>{c(``),d(`sse`),p(``),h(``),_(``),y(`none`),x(``),w(`X-API-Key`),E(``)},[]),O=(0,Q.useCallback)(()=>{r||(D(),t())},[r,D,t]),A=(0,Q.useCallback)(()=>{let e=s.trim();if(!e)return;let t={name:e,transportType:l};if(l===`stdio`){let e=m.trim();if(!e)return;t.command=e;let n=g.trim();n&&(t.args=n.split(/\s+/))}else{let e=f.trim();if(!e)return;t.url=e,v===`bearer`&&b.trim()?t.headers={Authorization:`Bearer ${b.trim()}`}:v===`api-key`&&S.trim()&&T.trim()?t.headers={[S.trim()]:T.trim()}:v===`oauth`&&(t.autoAuth=!0)}n(t)},[s,l,f,m,g,v,b,S,T,n]),j=l===`stdio`,M=s.trim()&&(j?m.trim():f.trim());return(0,$.jsx)(k.Root,{open:e,onOpenChange:e=>{e||O()},children:(0,$.jsxs)(k.Content,{size:`md`,children:[(0,$.jsxs)(k.Header,{icon:De,children:[(0,$.jsx)(k.Title,{children:i(`mcpAddServerModal.title`)}),(0,$.jsx)(k.Description,{children:i(`mcpAddServerModal.description`)})]}),(0,$.jsx)(k.Body,{children:(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-name`,children:i(`mcpAddServerModal.serverNameLabel`)}),(0,$.jsx)(C,{id:`mcp-name`,type:`text`,value:s,onChange:e=>c(e.target.value),placeholder:i(`mcpAddServerModal.namePlaceholder`),fullWidth:!0,autoFocus:!0})]}),(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-transport`,children:i(`mcpAddServerModal.transportLabel`)}),(0,$.jsx)(`select`,{id:`mcp-transport`,value:l,onChange:e=>d(e.target.value),className:`w-full rounded-md border border-[var(--border-element)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-medium-default text-[var(--content-default)] outline-none focus:ring-2 focus:ring-[var(--ring)]`,children:o.map(e=>(0,$.jsx)(`option`,{value:e.value,children:e.label},e.value))})]}),j?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-command`,children:i(`mcpAddServerModal.commandLabel`)}),(0,$.jsx)(C,{id:`mcp-command`,type:`text`,value:m,onChange:e=>h(e.target.value),placeholder:i(`mcpAddServerModal.commandPlaceholder`),fullWidth:!0})]}),(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-args`,children:i(`mcpAddServerModal.argsLabel`)}),(0,$.jsx)(C,{id:`mcp-args`,type:`text`,value:g,onChange:e=>_(e.target.value),placeholder:i(`mcpAddServerModal.argsPlaceholder`),fullWidth:!0})]})]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-url`,children:i(`mcpAddServerModal.serverUrlLabel`)}),(0,$.jsx)(C,{id:`mcp-url`,type:`url`,value:f,onChange:e=>p(e.target.value),placeholder:i(`mcpAddServerModal.urlPlaceholder`),fullWidth:!0})]}),(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-auth`,children:i(`mcpAddServerModal.authenticationLabel`)}),(0,$.jsx)(`select`,{id:`mcp-auth`,value:v,onChange:e=>y(e.target.value),className:`w-full rounded-md border border-[var(--border-element)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-medium-default text-[var(--content-default)] outline-none focus:ring-2 focus:ring-[var(--ring)]`,children:a.map(e=>(0,$.jsx)(`option`,{value:e.value,children:e.label},e.value))})]}),v===`oauth`?(0,$.jsx)(`p`,{className:`rounded-md border border-[var(--border-element)] bg-[var(--surface-base)] px-3 py-2 text-body-small-lighter text-[var(--content-tertiary)]`,children:i(`mcpAddServerModal.oauthHint`)}):null,v===`bearer`?(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-bearer`,children:i(`mcpAddServerModal.bearerTokenLabel`)}),(0,$.jsx)(C,{id:`mcp-bearer`,type:`password`,value:b,onChange:e=>x(e.target.value),placeholder:i(`mcpAddServerModal.bearerPlaceholder`),fullWidth:!0})]}):null,v===`api-key`?(0,$.jsxs)(`div`,{className:`flex gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex-1 space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-apikey-header`,children:i(`mcpAddServerModal.headerNameLabel`)}),(0,$.jsx)(C,{id:`mcp-apikey-header`,type:`text`,value:S,onChange:e=>w(e.target.value),placeholder:i(`mcpAddServerModal.apiKeyHeaderPlaceholder`),fullWidth:!0})]}),(0,$.jsxs)(`div`,{className:`flex-1 space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-apikey-value`,children:i(`mcpAddServerModal.apiKeyLabel`)}),(0,$.jsx)(C,{id:`mcp-apikey-value`,type:`password`,value:T,onChange:e=>E(e.target.value),placeholder:i(`mcpAddServerModal.apiKeyPlaceholder`),fullWidth:!0})]})]}):null]})]})}),(0,$.jsxs)(k.Footer,{children:[(0,$.jsx)(u,{variant:`ghost`,onClick:O,disabled:r,children:i(`mcpAddServerModal.cancel`)}),(0,$.jsx)(u,{variant:`primary`,onClick:A,disabled:!M||r,children:i(r?`mcpAddServerModal.adding`:`mcpAddServerModal.addServer`)})]})]})})}async function Ge(e){let{data:t,response:n}=await l.get({url:`/v1/assistants/{assistant_id}/internal/mcp/list`,path:{assistant_id:e}});if(!n?.ok)throw Error(`Failed to fetch MCP servers: ${n?.status}`);return t}async function Ke(e){let{data:t,response:n}=await l.get({url:`/v1/assistants/{assistant_id}/internal/mcp/tools-summary`,path:{assistant_id:e}});if(!n?.ok)throw Error(`Failed to fetch MCP tools summary: ${n?.status}`);return t}async function qe(e,t){let{response:n}=await l.post({url:`/v1/assistants/{assistant_id}/internal/mcp/update`,path:{assistant_id:e},body:t});if(!n?.ok)throw Error(`Failed to update MCP server: ${n?.status}`)}async function Je(e,t){let{response:n}=await l.post({url:`/v1/assistants/{assistant_id}/internal/mcp/add`,path:{assistant_id:e},body:t});if(!n?.ok)throw Error(`Failed to add MCP server: ${n?.status}`)}async function Ye(e,t){let{response:n}=await l.post({url:`/v1/assistants/{assistant_id}/internal/mcp/remove`,path:{assistant_id:e},body:{name:t}});if(!n?.ok)throw Error(`Failed to remove MCP server: ${n?.status}`)}async function Xe(e,t){let{data:n,response:r}=await l.post({url:`/v1/assistants/{assistant_id}/internal/mcp/auth/start`,path:{assistant_id:e},body:{serverId:t}});if(!r?.ok)throw Error(`Failed to start MCP auth: ${r?.status}`);return n}async function Ze(e,t){let{data:n,response:r}=await l.get({url:`/v1/assistants/{assistant_id}/internal/mcp/auth/status/${encodeURIComponent(t)}`,path:{assistant_id:e}});if(!r?.ok)throw Error(`Failed to poll MCP auth status: ${r?.status}`);return n}async function Qe(e,t){let{response:n}=await l.post({url:`/v1/assistants/{assistant_id}/internal/mcp/auth/revoke`,path:{assistant_id:e},body:{serverId:t}});if(!n?.ok)throw Error(`Failed to revoke OAuth for ${t}: ${n?.status}`)}async function $e(e){let{response:t}=await l.post({url:`/v1/assistants/{assistant_id}/internal/mcp/reload`,path:{assistant_id:e},body:{}});if(!t?.ok)throw Error(`Failed to reload MCP servers: ${t?.status}`)}function et({variant:e,icon:t,label:n,onClick:r,disabled:i}){return U()?(0,$.jsx)(u,{variant:e,iconOnly:t,onClick:r,disabled:i,tooltip:n,"aria-label":n}):(0,$.jsx)(u,{variant:e,leftIcon:t,onClick:r,disabled:i,children:n})}var tt={connected:`positive`,"needs-auth":`negative`},nt=`negative`;function rt(e,t){switch(e){case`connected`:return t(`mcpServerCard.statusConnected`);case`needs-auth`:return t(`mcpServerCard.statusNeedsAuth`);default:return t(`mcpServerCard.statusError`)}}function it({server:e,toolsSummary:t,onRemove:n,onConfigure:r,onAuthenticate:i,onRevokeOAuth:s,isAuthenticating:c,isRevoking:l}){let{t:d}=J(`settings`),[f,p]=(0,Q.useState)(!1),m=tt[e.status]??nt,h=e.hasOAuth,_=h&&e.status!==`needs-auth`,v=e.status===`needs-auth`&&e.transport.type!==`stdio`,y=(0,Q.useCallback)(()=>n(e.id),[n,e.id]),b=(0,Q.useCallback)(()=>r(e.id),[r,e.id]),x=(0,Q.useCallback)(()=>i(e.id),[i,e.id]),S=(0,Q.useCallback)(()=>s(e.id),[s,e.id]),C=(0,Q.useCallback)(()=>p(e=>!e),[]);return(0,$.jsx)(g.Root,{children:(0,$.jsxs)(g.Body,{children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1`,children:[(0,$.jsx)(`span`,{className:`truncate text-body-large-default text-[var(--content-default)]`,children:e.id}),(0,$.jsx)(D,{tone:m,children:rt(e.status,d)}),_?(0,$.jsx)(D,{tone:`positive`,children:d(`mcpServerCard.authenticatedBadge`)}):null]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(`span`,{children:e.transport.type}),t?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{"aria-hidden":`true`,children:`·`}),(0,$.jsx)(`span`,{children:d(`mcpServerCard.toolCount`,{count:t.toolCount})}),(0,$.jsx)(`span`,{"aria-hidden":`true`,children:`·`}),(0,$.jsx)(`span`,{children:d(`mcpServerCard.estimatedTokens`,{count:t.estimatedTokens.toLocaleString()})})]}):null]})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[v?(0,$.jsx)(et,{variant:`primary`,icon:c?(0,$.jsx)(Z,{className:`animate-spin`}):(0,$.jsx)(de,{}),label:d(c?`mcpServerCard.authenticating`:h?`mcpServerCard.reAuth`:`mcpServerCard.authenticate`),onClick:x,disabled:c}):null,h?(0,$.jsx)(u,{variant:`dangerOutline`,iconOnly:l?(0,$.jsx)(Z,{className:`animate-spin`}):(0,$.jsx)(he,{}),onClick:S,disabled:l,tooltip:d(`mcpServerCard.revokeOAuthTooltip`),"aria-label":d(`mcpServerCard.revoke`)}):null,(0,$.jsxs)(o.Root,{children:[(0,$.jsx)(o.Trigger,{asChild:!0,children:(0,$.jsx)(u,{variant:`outlined`,iconOnly:(0,$.jsx)(ve,{}),"aria-label":d(`mcpServerCard.moreActions`,{serverId:e.id})})}),(0,$.jsxs)(o.Content,{title:d(`mcpServerCard.moreActions`,{serverId:e.id}),showTitle:!0,closeLabel:d(`mcpServerCard.actionsSheetClose`),align:`end`,children:[(0,$.jsx)(o.Item,{icon:be,label:d(`mcpServerCard.configure`),onSelect:b}),(0,$.jsx)(o.Item,{icon:X,label:d(`mcpServerCard.removeServer`),tone:`destructive`,onSelect:y})]})]})]})]}),t&&t.tools.length>0?(0,$.jsxs)(`div`,{className:`mt-3 border-t border-[var(--border-base)] pt-2`,children:[(0,$.jsxs)(`button`,{type:`button`,onClick:C,className:`flex w-full cursor-pointer items-center gap-1 text-body-small-default text-[var(--content-secondary)] hover:text-[var(--content-default)]`,children:[f?(0,$.jsx)(ue,{className:`h-3.5 w-3.5`}):(0,$.jsx)(me,{className:`h-3.5 w-3.5`}),d(`mcpServerCard.registeredTools`,{count:t.toolCount})]}),f?(0,$.jsx)(`div`,{className:`mt-2 max-h-60 overflow-y-auto`,children:t.tools.map(e=>(0,$.jsx)(a,{title:e.name,subtitle:e.description||void 0,trailing:(0,$.jsx)(`span`,{className:`whitespace-nowrap text-body-small-default text-[var(--content-secondary)]`,children:d(`mcpServerCard.toolTokensAbbrev`,{count:e.estimatedTokens.toLocaleString()})})},e.name))}):null]}):null]})})}var at=[`none`,`bearer`,`api-key`];function ot(e,t){switch(e){case`none`:return t(`mcpServerDetailModal.authNone`);case`bearer`:return t(`mcpServerDetailModal.authBearerToken`);case`api-key`:return t(`mcpServerDetailModal.authApiKey`)}}function st({server:e,toolsSummary:t,onClose:n,onSave:r,isPending:i}){let{t:a}=J(`settings`),[o,s]=(0,Q.useState)(`none`),[c,l]=(0,Q.useState)(``),[d,f]=(0,Q.useState)(`X-API-Key`),[p,m]=(0,Q.useState)(``);(0,Q.useEffect)(()=>{e&&(s(e.authType),l(``),f(e.authHeaderName??`X-API-Key`),m(``))},[e]);let h=(0,Q.useCallback)(()=>{if(!e)return;let t=o!==e.authType,n=o===`bearer`&&c.trim()!==``,i=o===`api-key`&&d.trim()!==``&&p.trim()!==``,a=t||n||i,s;s=a?o===`none`?null:o===`bearer`&&c.trim()?{Authorization:`Bearer ${c.trim()}`}:o===`api-key`&&d.trim()&&p.trim()?{[d.trim()]:p.trim()}:void 0:void 0,r(e.id,{name:e.id,...s===void 0?{}:{headers:s}})},[e,o,c,d,p,r]),g=(0,Q.useCallback)(()=>{i||n()},[i,n]);return e?(0,$.jsx)(k.Root,{open:!!e,onOpenChange:e=>{e||g()},children:(0,$.jsxs)(k.Content,{size:`lg`,children:[(0,$.jsxs)(k.Header,{icon:De,children:[(0,$.jsx)(k.Title,{children:e.id}),(0,$.jsx)(k.Description,{children:a(`mcpServerDetailModal.description`,{transport:e.transport.type,status:e.status})})]}),(0,$.jsx)(k.Body,{children:(0,$.jsxs)(`div`,{className:`space-y-5`,children:[e.transport.type===`stdio`?null:(0,$.jsxs)($.Fragment,{children:[e.hasOAuth?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 rounded-md border border-[var(--border-element)] bg-[var(--surface-base)] px-3 py-2`,children:[(0,$.jsx)(`span`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:a(`mcpServerDetailModal.authentication`)}),(0,$.jsx)(`span`,{className:`rounded-full bg-[var(--surface-lift)] px-2 py-0.5 text-label-small-default text-[var(--content-default)]`,children:a(`mcpServerDetailModal.oauthBadge`)}),(0,$.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:a(`mcpServerDetailModal.oauthManagedHint`)})]}):null,e.hasOAuth?null:(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-detail-auth`,children:a(`mcpServerDetailModal.authentication`)}),(0,$.jsx)(`select`,{id:`mcp-detail-auth`,value:o,onChange:e=>s(e.target.value),className:`w-full rounded-md border border-[var(--border-element)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-medium-default text-[var(--content-default)] outline-none focus:ring-2 focus:ring-[var(--ring)]`,children:at.map(e=>(0,$.jsx)(`option`,{value:e,children:ot(e,a)},e))})]}),o===`bearer`&&!e.hasOAuth?(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-detail-bearer`,children:a(`mcpServerDetailModal.bearerToken`)}),(0,$.jsx)(C,{id:`mcp-detail-bearer`,type:`password`,value:c,onChange:e=>l(e.target.value),placeholder:e.hasStaticAuth&&e.authType===`bearer`?a(`mcpServerDetailModal.bearerTokenPlaceholderKeep`):a(`mcpServerDetailModal.bearerTokenPlaceholder`),fullWidth:!0})]}):null,o===`api-key`&&!e.hasOAuth?(0,$.jsxs)(`div`,{className:`flex gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex-1 space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-detail-apikey-header`,children:a(`mcpServerDetailModal.headerName`)}),(0,$.jsx)(C,{id:`mcp-detail-apikey-header`,type:`text`,value:d,onChange:e=>f(e.target.value),placeholder:a(`mcpServerDetailModal.headerNamePlaceholder`),fullWidth:!0})]}),(0,$.jsxs)(`div`,{className:`flex-1 space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-detail-apikey-value`,children:a(`mcpServerDetailModal.apiKey`)}),(0,$.jsx)(C,{id:`mcp-detail-apikey-value`,type:`password`,value:p,onChange:e=>m(e.target.value),placeholder:e.hasStaticAuth&&e.authType===`api-key`?a(`mcpServerDetailModal.apiKeyPlaceholderKeep`):a(`mcpServerDetailModal.apiKeyPlaceholder`),fullWidth:!0})]})]}):null]}),t&&t.tools.length>0?(0,$.jsxs)(`div`,{className:`space-y-2`,children:[(0,$.jsx)(`h3`,{className:`text-body-medium-default text-[var(--content-default)]`,children:a(`mcpServerDetailModal.registeredToolsHeading`,{count:t.toolCount})}),(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:a(`mcpServerDetailModal.tokenOverhead`,{count:t.estimatedTokens.toLocaleString()})}),(0,$.jsx)(`div`,{className:`max-h-64 overflow-y-auto rounded-lg border border-[var(--border-base)]`,children:(0,$.jsxs)(`table`,{className:`w-full text-body-small-default`,children:[(0,$.jsx)(`thead`,{children:(0,$.jsxs)(`tr`,{className:`border-b border-[var(--border-base)] bg-[var(--surface-base)]`,children:[(0,$.jsx)(`th`,{className:`px-3 py-2 text-left font-medium text-[var(--content-secondary)]`,children:a(`mcpServerDetailModal.tableTool`)}),(0,$.jsx)(`th`,{className:`px-3 py-2 text-left font-medium text-[var(--content-secondary)]`,children:a(`mcpServerDetailModal.tableDescription`)}),(0,$.jsx)(`th`,{className:`px-3 py-2 text-right font-medium text-[var(--content-secondary)]`,children:a(`mcpServerDetailModal.tableTokens`)})]})}),(0,$.jsx)(`tbody`,{children:t.tools.map(e=>(0,$.jsxs)(`tr`,{className:`border-b border-[var(--border-base)] last:border-b-0`,children:[(0,$.jsx)(`td`,{className:`px-3 py-2 font-medium text-[var(--content-default)]`,children:e.name}),(0,$.jsx)(`td`,{className:`max-w-xs truncate px-3 py-2 text-[var(--content-tertiary)]`,children:e.description||a(`mcpServerDetailModal.emptyDescription`)}),(0,$.jsx)(`td`,{className:`px-3 py-2 text-right text-[var(--content-tertiary)]`,children:a(`mcpServerDetailModal.toolEstimatedTokens`,{count:e.estimatedTokens.toLocaleString()})})]},e.name))})]})})]}):null]})}),(0,$.jsxs)(k.Footer,{children:[(0,$.jsx)(u,{variant:`ghost`,onClick:g,disabled:i,children:a(`mcpServerDetailModal.cancel`)}),(0,$.jsx)(u,{variant:`primary`,onClick:h,disabled:i,children:a(i?`mcpServerDetailModal.saving`:`mcpServerDetailModal.save`)})]})]})}):null}var ct=`mcp-servers`,lt=`mcp-tools-summary`;function ut(){let{t:e}=J(`settings`),t=f(),n=q(),r=se(),i=y.use.mcpAddServer(),a=y.use.hasHydrated(),[o,s]=(0,Q.useState)(!1),[c,l]=(0,Q.useState)(null),[d,p]=(0,Q.useState)(null),[m,h]=(0,Q.useState)(!1),[g,_]=(0,Q.useState)(!1),[v,b]=(0,Q.useState)(!1),[x,S]=(0,Q.useState)(!1),[C,w]=(0,Q.useState)(null),[T,E]=(0,Q.useState)(null),{data:D,isLoading:O,isError:k}=K({queryKey:[ct,t],queryFn:()=>Ge(t)}),{data:A}=K({queryKey:[lt,t],queryFn:()=>Ke(t)}),M=(0,Q.useCallback)(()=>{n.invalidateQueries({queryKey:[ct,t]}),n.invalidateQueries({queryKey:[lt,t]})},[n,t]),N=(0,Q.useMemo)(()=>{let e=new Map;if(A)for(let t of A.servers)e.set(t.serverId,t);return e},[A]),F=(0,Q.useMemo)(()=>!c||!D?null:D.servers.find(e=>e.id===c)??null,[c,D]),I=(0,Q.useCallback)(async()=>{if(d){_(!0);try{await Ye(t,d),M(),P.success(e(`mcpPage.toastRemoved`,{serverId:d})),p(null)}catch{P.error(e(`mcpPage.toastRemoveFailed`,{serverId:d}))}finally{_(!1)}}},[d,t,M,e]),L=(0,Q.useCallback)(async n=>{w(n);let r;try{r=await Xe(t,n)}catch{P.error(e(`mcpPage.toastAuthStartFailed`,{serverId:n})),w(null);return}try{if(r.already_authenticated){P.success(e(`mcpPage.toastAlreadyAuthenticated`,{serverId:n})),M();return}window.open(r.auth_url,`_blank`,`noopener,noreferrer`);for(let r=0;r<60;r++){await new Promise(e=>setTimeout(e,3e3));let r=await Ze(t,n);if(r.status===`complete`){P.success(e(`mcpPage.toastAuthenticatedSuccess`,{serverId:n})),M();return}if(r.status===`error`){P.error(r.error??e(`mcpPage.toastAuthFailed`,{serverId:n}));return}}P.error(e(`mcpPage.toastAuthTimedOut`,{serverId:n}))}catch{P.error(e(`mcpPage.toastAuthPollingFailed`,{serverId:n}))}finally{w(null),M()}},[t,M,e]),R=(0,Q.useCallback)(async n=>{E(n);try{await Qe(t,n),M(),P.success(e(`mcpPage.toastOAuthRevoked`,{serverId:n}))}catch{P.error(e(`mcpPage.toastOAuthRevokeFailed`,{serverId:n}))}finally{E(null)}},[t,M,e]),z=(0,Q.useCallback)(async n=>{let r=n.autoAuth?window.open(`about:blank`,`_blank`,`noopener`):null;h(!0);try{await Je(t,n),M(),P.success(e(`mcpPage.toastAdded`,{name:n.name})),s(!1)}catch{P.error(e(`mcpPage.toastAddFailed`,{name:n.name})),r?.close(),h(!1);return}if(h(!1),n.autoAuth){w(n.name);try{let i=await Xe(t,n.name);if(i.already_authenticated){r?.close(),P.success(e(`mcpPage.toastAlreadyAuthenticated`,{serverId:n.name})),M();return}r?r.location.href=i.auth_url:window.open(i.auth_url,`_blank`,`noopener,noreferrer`);for(let r=0;r<60;r++){await new Promise(e=>setTimeout(e,3e3));let r=await Ze(t,n.name);if(r.status===`complete`){P.success(e(`mcpPage.toastAuthenticatedSuccess`,{serverId:n.name})),M();return}if(r.status===`error`){P.error(r.error??e(`mcpPage.toastAuthFailed`,{serverId:n.name}));return}}P.error(e(`mcpPage.toastAuthTimedOut`,{serverId:n.name}))}catch{r?.close(),P.error(e(`mcpPage.toastAuthStartFailed`,{serverId:n.name}))}finally{w(null),M()}}},[t,M,e]),B=(0,Q.useCallback)(async(n,r)=>{b(!0);try{await qe(t,r),M(),P.success(e(`mcpPage.toastUpdated`,{serverId:n})),l(null)}catch{P.error(e(`mcpPage.toastUpdateFailed`,{serverId:n}))}finally{b(!1)}},[t,M,e]),V=(0,Q.useCallback)(async()=>{S(!0);try{await $e(t),M(),P.success(e(`mcpPage.toastReloadSuccess`))}catch{P.error(e(`mcpPage.toastReloadFailed`))}finally{S(!1)}},[t,M,e]),U=(0,Q.useCallback)(()=>{i?s(!0):j(r,{prompt:e(`mcpPage.setupPrompt`)})},[i,r,e]),W=D?.servers??[];return(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`flow-root`,children:[(0,$.jsxs)(`div`,{className:`float-right ml-4 flex shrink-0 items-center gap-2`,children:[(0,$.jsx)(et,{variant:`outlined`,icon:(0,$.jsx)(Ce,{className:x?`animate-spin`:``}),label:e(`mcpPage.reloadButton`),onClick:V,disabled:x}),i?(0,$.jsx)(u,{variant:`primary`,leftIcon:(0,$.jsx)(Y,{}),onClick:()=>s(!0),children:e(`mcpPage.addServerButton`)}):null]}),(0,$.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`mcpPage.title`)}),(0,$.jsx)(`p`,{className:`mt-0.5 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`mcpPage.subtitle`)})]}),A?(0,$.jsxs)(`div`,{className:`flex gap-4 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(`span`,{children:e(`mcpPage.totalTools`,{count:A.totalToolCount})}),(0,$.jsx)(`span`,{children:e(`mcpPage.totalTokens`,{count:A.totalEstimatedTokens.toLocaleString()})})]}):null,O?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,$.jsx)(Z,{className:`h-4 w-4 animate-spin`}),(0,$.jsx)(`span`,{children:e(`mcpPage.loading`)})]}):k?(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`mcpPage.loadError`)}):W.length===0?(0,$.jsxs)(`button`,{type:`button`,onClick:U,disabled:!a,className:`flex w-full flex-col items-center gap-2 rounded-lg border border-dashed border-[var(--border-element)] px-4 py-12 text-center transition-colors hover:border-[var(--border-active)] hover:bg-[var(--surface-hover)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] disabled:pointer-events-none`,children:[(0,$.jsx)(De,{className:`h-6 w-6 text-[var(--content-disabled)]`}),(0,$.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`mcpPage.emptyTitle`)}),(0,$.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:e(i?`mcpPage.emptyAddSubtitle`:`mcpPage.emptyChatSubtitle`)})]}):(0,$.jsx)(`div`,{className:`space-y-2`,children:W.map(e=>(0,$.jsx)(it,{server:e,toolsSummary:N.get(e.id),onRemove:p,onConfigure:l,onAuthenticate:L,onRevokeOAuth:R,isAuthenticating:C===e.id,isRevoking:T===e.id},e.id))}),i?(0,$.jsx)(We,{open:o,onClose:()=>s(!1),onAdd:z,isPending:m}):null,(0,$.jsx)(st,{server:F,toolsSummary:c?N.get(c):void 0,onClose:()=>l(null),onSave:B,isPending:v}),(0,$.jsx)(H,{open:!!d,title:e(`mcpPage.removeDialogTitle`),message:d?e(`mcpPage.removeDialogMessage`,{serverId:d}):``,confirmLabel:e(`mcpPage.removeDialogConfirm`),destructive:!0,isPending:g,onConfirm:I,onCancel:()=>p(null)})]})}function dt(){return(0,$.jsx)(ut,{})}var ft=`vellum:integrations:bannerDismissed`;function pt(e,t){return{denied:e(`integrationsPage.oauthErrorDenied`),state_invalid:e(`integrationsPage.oauthErrorStateInvalid`),state_expired:e(`integrationsPage.oauthErrorStateExpired`),exchange_failed:e(`integrationsPage.oauthErrorExchangeFailed`),identity_failed:e(`integrationsPage.oauthErrorIdentityFailed`)}[t]}function mt(e,t,n){if(t.trim())return e(`integrationsPage.emptySearchTitle`);switch(n){case`enabled`:return e(`integrationsPage.emptyEnabledTitle`);case`not-enabled`:return e(`integrationsPage.emptyAllEnabledTitle`);default:return e(`integrationsPage.emptyDefaultTitle`)}}function ht(e,t,n){if(t.trim())return e(`integrationsPage.emptySearchSubtitle`,{query:t.trim()});switch(n){case`enabled`:return e(`integrationsPage.emptyEnabledSubtitle`);case`not-enabled`:return e(`integrationsPage.emptyNotEnabledSubtitle`);default:return e(`integrationsPage.emptyDefaultSubtitle`)}}var gt=[{value:`all`,labelKey:`integrationsPage.filterAll`},{value:`enabled`,labelKey:`integrationsPage.filterEnabled`},{value:`not-enabled`,labelKey:`integrationsPage.filterNotEnabled`}];function _t(e,t){return e?.find(e=>e.provider===t)??null}function vt(e){return e===`mcp`?`mcp`:`oauth`}function yt(){let{t:e}=J(`settings`),[r]=oe(),a=se(),o=A(),[c,l]=(0,Q.useState)(null),[u,d]=(0,Q.useState)(!0),[f,p]=(0,Q.useState)(``),[m,g]=(0,Q.useState)(`all`),[_,v]=(0,Q.useState)(!0),[y,b]=(0,Q.useState)(null);(0,Q.useEffect)(()=>{v(t(ft,`false`)===`true`)},[]);let x=()=>{v(!0),i(ft,`true`)};(0,Q.useEffect)(()=>{let e=!0;return(async()=>{try{let t=await n();e&&t.ok&&l(t.data)}catch(e){L(e,{context:`integrations.getAssistant`})}finally{e&&d(!1)}})(),()=>{e=!1}},[]);let{platformAssistantId:S,isLoading:w}=Ee(c?.id,o===`full`),{data:T,isLoading:E,isError:D}=K({...h({path:{assistant_id:c?.id??``}}),select:e=>e.providers,enabled:!!c}),{data:k,isLoading:j}=K({...W({path:{assistant_id:S??``}}),enabled:!!S&&o===`full`});(0,Q.useEffect)(()=>{let t=r.get(`oauth_status`);if(!t)return;let n=r.get(`oauth_provider`),i=n?n.charAt(0).toUpperCase()+n.slice(1):null;if(t===`connected`)P.success(i?e(`integrationsPage.accountConnectedToast`,{providerLabel:i}):e(`integrationsPage.accountConnectedToastGeneric`));else if(t===`error`){let t=r.get(`oauth_code`)??`unknown`;P.error(pt(e,t)??(i?e(`integrationsPage.connectFailedToast`,{providerLabel:i}):e(`integrationsPage.connectFailedToastGeneric`)))}a(O.settings.integrations,{replace:!0})},[r,a,e]);let M=(0,Q.useMemo)(()=>T?.filter(e=>e.supports_managed_mode)??[],[T]),N=(0,Q.useMemo)(()=>{let e=f.trim().toLowerCase(),t=e=>!!_t(k,e)?.connected,n=M.filter(n=>{if(Ae(n.provider_key))return t(n.provider_key);if(!e)return!0;let r=(n.display_name??n.provider_key).toLowerCase(),i=(n.description??``).toLowerCase();return r.includes(e)||i.includes(e)});return m!==`all`&&(n=n.filter(e=>{let n=t(e.provider_key);return m===`enabled`?n:!n})),[...n].sort((e,n)=>{let r=t(e.provider_key);if(r!==t(n.provider_key))return r?-1:1;let i=(e.display_name??e.provider_key).toLowerCase(),a=(n.display_name??n.provider_key).toLowerCase();return i.localeCompare(a)})},[M,k,f,m]),F=u||E||j||w,I=mt(e,f,m),R=ht(e,f,m),z=(0,Q.useMemo)(()=>y?M.find(e=>e.provider_key===y)??null:null,[M,y]),B=gt.map(({value:t,labelKey:n})=>({value:t,label:e(n)}));return(0,$.jsxs)(`div`,{className:`space-y-4`,children:[!_&&(0,$.jsx)(re,{tone:`info`,icon:(0,$.jsx)(pe,{className:`h-3.5 w-3.5`}),onDismiss:x,children:(0,$.jsx)(ie,{ns:`settings`,i18nKey:`integrationsPage.tipBanner`,components:{tip:(0,$.jsx)(`span`,{className:`text-body-medium-default`})}})}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(C,{type:`text`,value:f,onChange:e=>p(e.target.value),placeholder:e(`integrationsPage.searchPlaceholder`),"aria-label":e(`integrationsPage.searchAriaLabel`),leftIcon:(0,$.jsx)(ye,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0,wrapperClassName:`flex-1`}),(0,$.jsx)(s,{options:B,value:m,onChange:g,"aria-label":e(`integrationsPage.filterAriaLabel`),menuAlign:`end`,className:`w-36 shrink-0`})]}),(0,$.jsx)(`div`,{children:F?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,$.jsx)(Z,{className:`h-4 w-4 animate-spin`}),(0,$.jsx)(`span`,{children:e(`integrationsPage.loading`)})]}):D?(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`integrationsPage.loadFailed`)}):c?N.length===0?(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-2 rounded-lg border border-dashed border-[var(--border-element)] px-4 py-12 text-center`,children:[(0,$.jsx)(ye,{className:`h-6 w-6 text-[var(--content-disabled)]`}),(0,$.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:I}),(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:R})]}):(0,$.jsx)(`div`,{className:`space-y-2`,children:N.map(e=>(0,$.jsx)(Re,{platformAssistantId:S??c.id,providerKey:e.provider_key,displayName:e.display_name??e.provider_key,description:e.description,logoUrl:e.logo_url,connection:_t(k,e.provider_key),platformGate:o,onConfigure:()=>b(e.provider_key)},e.provider_key))}):(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`integrationsPage.noAssistant`)})}),z&&c&&(0,$.jsx)(Le,{assistantId:c.id,platformAssistantId:S??c.id,providerKey:z.provider_key,displayName:z.display_name??z.provider_key,description:z.description,logoUrl:z.logo_url,platformGate:o,onClose:()=>b(null)})]})}function bt(){let{t:e}=J(`settings`),[t,n]=oe(),r=vt(t.get(`tab`));return(0,$.jsx)(`div`,{className:`space-y-6`,children:(0,$.jsxs)(V.Root,{value:r,onValueChange:e=>{let r=vt(e),i=new URLSearchParams(t);r===`mcp`?i.set(`tab`,`mcp`):i.delete(`tab`),n(i,{replace:!0})},children:[(0,$.jsxs)(V.List,{children:[(0,$.jsx)(V.Trigger,{value:`oauth`,children:e(`integrationsPage.tabOAuth`)}),(0,$.jsx)(V.Trigger,{value:`mcp`,children:e(`integrationsPage.tabMcp`)})]}),(0,$.jsx)(V.Panel,{value:`oauth`,className:`pt-4`,children:(0,$.jsx)(Q.Suspense,{children:(0,$.jsx)(yt,{})})}),(0,$.jsx)(V.Panel,{value:`mcp`,className:`pt-4`,children:(0,$.jsx)(dt,{})})]})})}export{bt as IntegrationsPage};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Da as t,Hy as n,Sx as r,ib as i,o as a,tb as o,uc as s,xx as c}from"./app-BTYvw9j7.js";import{j as l}from"./vendor-B2dSzLzU.js";import{d as u,i as d,n as f,t as p,x as m}from"./react-B9IgSVeK.js";import{La as h,Wi as g}from"./icons-bnwMda87.js";import{t as _}from"./intelligence-layout-slots-store-CCudenSv.js";var v=e(m(),1),y=p(),b={schedules:`sections.schedules`,superpowers:`sections.superpowers`,plugins:`sections.superpowers`,skills:`sections.superpowers`,memory:`sections.memory`,library:`sections.library`,workspace:`sections.workspace`,contacts:`sections.contacts`,channels:`sections.channels`};function x(){let{t:e}=l(`intelligence`),p=n.use.name(),{pathname:m}=u(),x=s(),S=t.use.setTopBarCenter(),C=t.use.setMobileTopBar(),w=_.use.headerTrailing(),T=o(m),E=T?e(b[T.key]):null,D=x&&T?.key===`library`,O=p||e(`identityOverview.defaultAssistantName`),k=e(`intelligenceLayout.backToAriaLabel`,{name:O}),A=e(`intelligenceLayout.backToTitle`,{name:O});return(0,v.useEffect)(()=>(D&&E?(S(null),C({leading:(0,y.jsx)(r,{asChild:!0,variant:`ghost`,iconOnly:(0,y.jsx)(h,{"aria-hidden":!0}),"aria-label":k,tooltip:A,className:`rounded-full max-md:bg-[var(--surface-active)]`,children:(0,y.jsx)(f,{to:i.identity})}),center:(0,y.jsx)(c,{variant:`body-medium-default`,className:`max-w-[50vw] truncate text-[var(--content-secondary)]`,children:E}),trailing:w})):x&&E?(C(null),S((0,y.jsx)(c,{variant:`body-medium-default`,className:`truncate text-[var(--content-secondary)]`,children:E}))):(C(null),S(null)),()=>{C(null),S(null)}),[k,A,w,x,E,C,S,D]),T?(0,y.jsxs)(a,{children:[D?null:(0,y.jsxs)(`div`,{className:`mb-4 flex shrink-0 items-center gap-1.5`,children:[(0,y.jsx)(f,{to:i.identity,className:`-ml-2 flex h-8 w-8 shrink-0 cursor-pointer items-center justify-center rounded-md text-[var(--content-secondary)] transition-colors outline-none hover:bg-[var(--surface-hover)] hover:text-[var(--content-default)] focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,"aria-label":k,title:A,children:(0,y.jsx)(g,{className:`h-5 w-5`,"aria-hidden":!0})}),(0,y.jsx)(`h1`,{className:`text-title-large text-[var(--content-default)] max-md:hidden`,children:E}),w?(0,y.jsx)(`div`,{className:`ml-auto flex shrink-0 items-center`,children:w}):null]}),(0,y.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-y-auto`,children:(0,y.jsx)(d,{})})]}):(0,y.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:(0,y.jsx)(d,{})})}export{x as IntelligenceLayout};
@@ -0,0 +1 @@
1
+ import{Pb as e}from"./app-BTYvw9j7.js";import{Q as t}from"./vendor-B2dSzLzU.js";var n=e(t(e=>({headerTrailing:null,setHeaderTrailing:t=>e({headerTrailing:t})})));export{n as t};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{ib as t}from"./app-BTYvw9j7.js";import{f as n,x as r}from"./react-B9IgSVeK.js";var i=e(r(),1);function a(){let e=n();return(0,i.useEffect)(()=>{e(t.settings.keyboardShortcuts,{replace:!0})},[e]),null}export{a as KeyboardShortcutsRedirectPage};
@@ -1,4 +1,4 @@
1
- import{Cm as e,ig as t}from"./app-DxMy0jwj.js";var n=2;function r({processing:e,sawProcessing:t,hasReply:r,stableReads:i}){return e===void 0?r&&i>=n:!e&&(r||t)}var i=e=>Math.max(0,Math.min(100,Math.round(e)));function a(e,n,r){let a=t=>i(e[t]??50),o=a(t.companionCoworker),s=a(t.executeCollaborate),c=a(t.playfulSerious),l=a(t.politeUnfiltered),u=n?.trim()||`The user`,d=r?.trim(),f=d?`Your name is ${d}. Write exactly \`- **Name:** ${d}\` in IDENTITY.md — do not rename yourself or invent a different name, even if the file currently shows a placeholder or a different name. This changes your personality, not who you are.`:"Keep your existing name exactly as it is — this changes your personality, not who you are. Do not rename yourself, and if your name is already set, carry it through verbatim (don't treat it as a placeholder to fill). Whatever the name ends up being, keep it on IDENTITY.md's `- **Name:** …` line.";return`<system-message>
1
+ import{Sm as e,rg as t}from"./app-BTYvw9j7.js";var n=2;function r({processing:e,sawProcessing:t,hasReply:r,stableReads:i}){return e===void 0?r&&i>=n:!e&&(r||t)}var i=e=>Math.max(0,Math.min(100,Math.round(e)));function a(e,n,r){let a=t=>i(e[t]??50),o=a(t.companionCoworker),s=a(t.executeCollaborate),c=a(t.playfulSerious),l=a(t.politeUnfiltered),u=n?.trim()||`The user`,d=r?.trim(),f=d?`Your name is ${d}. Write exactly \`- **Name:** ${d}\` in IDENTITY.md — do not rename yourself or invent a different name, even if the file currently shows a placeholder or a different name. This changes your personality, not who you are.`:"Keep your existing name exactly as it is — this changes your personality, not who you are. Do not rename yourself, and if your name is already set, carry it through verbatim (don't treat it as a placeholder to fill). Whatever the name ends up being, keep it on IDENTITY.md's `- **Name:** …` line.";return`<system-message>
2
2
  ${u} wants to customize your personality.
3
3
  This is what they want you to be:
4
4
  Companion (0-100): ${100-o}
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Nr as t,Pr as n,Z as r,gr as i,ib as a,lc as o,p as s,pg as c,uc as l,xc as u}from"./app-BTYvw9j7.js";import{j as d}from"./vendor-B2dSzLzU.js";import{d as f,f as p,h as m,t as h,x as g}from"./react-B9IgSVeK.js";import{qn as _}from"./icons-bnwMda87.js";import{t as v}from"./deploy-dialogs-D46kbIA6.js";import{t as y}from"./use-edge-swipe-back-yu9lVyqu.js";import{t as b}from"./app-types-Cgs4jOru.js";var x=e(g(),1),S=h();function C({enabled:e}){return e?(0,S.jsx)(`div`,{"aria-hidden":!0,className:`absolute inset-y-0 left-0 z-10`,style:{width:20}}):null}function w(){let{t:e}=d(`library`),{appId:h}=m(),g=r(),w=p(),{pathname:T}=f(),E=l(),D=t.use.isDeploying(),O=(0,x.useRef)(null),[k,A]=(0,x.useState)(null),[j,M]=(0,x.useState)(null),[N,P]=(0,x.useState)(!1),F=(0,x.useRef)(null);(0,x.useEffect)(()=>{if(h)return F.current=h,A(null),M(null),c({path:{assistant_id:g,id:h},throwOnError:!0}).then(({data:e})=>{F.current===h&&(u(g,e.appId,e.html),A({appId:e.appId,dirName:e.dirName,name:e.name,html:e.html,origin:e.origin}))}).catch(e=>{F.current===h&&M(e instanceof Error?e.message:`Failed to open app`)}),()=>{F.current=null}},[g,h]);let I=(0,x.useCallback)(()=>{w(a.library.root)},[w]),L=(0,x.useCallback)(e=>{w(e)},[w]);y({containerRef:O,onBack:I,enabled:E,navKey:T,prefetchHref:a.library.root});let R=s(),z=(0,x.useCallback)(()=>{k&&R(k)},[k,R]),B=(0,x.useCallback)(async()=>{if(!(!k||N)){P(!0);try{await n(g,{id:k.appId,name:k.name},{exported:e(`libraryAppCard.exported`),failed:e(`libraryAppCard.shareFailed`)})}finally{P(!1)}}},[g,k,N,e]),V=(0,x.useCallback)(()=>{k&&t.getState().deployApp(g,k.appId,k.name,k.html)},[g,k]),H=(0,x.useCallback)(e=>{o(w,{prompt:e})},[w]);return h?j?(0,S.jsxs)(`div`,{className:`flex flex-1 flex-col items-center justify-center gap-4`,children:[(0,S.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:j}),(0,S.jsx)(`button`,{type:`button`,onClick:I,className:`text-body-medium-default text-[var(--primary-base)] underline`,children:e(`libraryDetailPage.backToLibrary`)})]}):k?(0,S.jsxs)(S.Fragment,{children:[(0,S.jsxs)(`div`,{ref:O,className:`relative flex min-h-0 flex-1 flex-col`,children:[(0,S.jsx)(C,{enabled:E}),(0,S.jsx)(i,{appId:k.appId,appName:k.name,html:k.html,assistantId:g,onClose:I,onNavigateAppRoute:L,...b(k.origin)?{}:{onEdit:z,onShare:B,isSharing:N,onDeploy:V,isDeploying:D},enableFullscreen:!0})]}),(0,S.jsx)(v,{assistantId:g,onStartConversation:H})]}):(0,S.jsx)(`div`,{className:`flex flex-1 items-center justify-center`,children:(0,S.jsx)(_,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`})}):null}export{w as LibraryDetailPage};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{At as t,Ed as n,Ga as r,Jb as i,Jd as a,La as o,Nr as s,Pi as c,Sx as l,Td as u,Z as d,_r as f,bc as p,bi as m,fx as h,ga as g,ha as _,ib as v,lc as y,mg as b,nx as x,rn as S,uc as C,vr as w}from"./app-BTYvw9j7.js";import{Zn as T,er as E,j as D}from"./vendor-B2dSzLzU.js";import{d as O,f as k,t as A,x as j}from"./react-B9IgSVeK.js";import{$n as M,Bt as N,Pa as P,Rr as F,Vt as I,Zr as L,_t as R,k as z,kt as B,nr as V,ti as H,xr as U}from"./icons-bnwMda87.js";import{t as W}from"./deploy-dialogs-D46kbIA6.js";import{n as G,r as ee,t as te}from"./use-app-delete-CTAC12GU.js";import{t as ne}from"./intelligence-layout-slots-store-CCudenSv.js";import{t as K}from"./app-types-Cgs4jOru.js";var q=e(j(),1),J=A();function Y(e){return e===1?`1 word`:`${e} words`}function re({document:e,onOpen:n}){return(0,J.jsxs)(`div`,{className:`group relative flex flex-col gap-2`,children:[(0,J.jsxs)(`button`,{type:`button`,onClick:()=>n(e.surfaceId),className:o(`relative flex w-full cursor-pointer flex-col items-center justify-center gap-2 overflow-hidden rounded-xl border border-[var(--border-base)] bg-[var(--surface-base)]`,`aspect-[16/10]`,`outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`),children:[(0,J.jsx)(F,{size:34,className:`text-[var(--content-tertiary)]`}),(0,J.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:Y(e.wordCount)})]}),(0,J.jsxs)(`button`,{type:`button`,onClick:()=>n(e.surfaceId),className:`flex cursor-pointer flex-col gap-0.5 px-0.5 text-left outline-none`,children:[(0,J.jsx)(`span`,{className:`truncate text-body-large-default text-[color:var(--content-emphasised)]`,children:e.title}),(0,J.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:t(new Date(e.updatedAt))})]})]})}function ie({onNewConversation:e}){let{t}=D(`library`);return(0,J.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-4 px-4 py-24`,children:[(0,J.jsx)(`div`,{className:`flex h-16 w-16 items-center justify-center rounded-xl bg-[var(--surface-base)]`,children:(0,J.jsx)(V,{size:32,className:`text-[var(--content-tertiary)]`})}),(0,J.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:t(`libraryEmptyState.heading`)}),(0,J.jsx)(`p`,{className:`max-w-md text-center text-body-medium-lighter text-[color:var(--content-tertiary)]`,children:t(`libraryEmptyState.body`)}),e?(0,J.jsx)(l,{variant:`primary`,size:`regular`,onClick:e,children:t(`libraryEmptyState.newConversation`)}):null]})}function X({app:e,assistantId:n,isPinned:r,onOpen:i,onPin:a,onDelete:s,onDeploy:l,justImported:u,onAnimationEnd:d}){let{t:m}=D(`library`),h=K(e.origin),g=h?void 0:s,_=h?void 0:l,v=(0,q.useCallback)(()=>p(n,e.id),[n,e.id]),y=G(n,e,{exported:m(`libraryAppCard.exported`),failed:m(`libraryAppCard.shareFailed`)}),[b,x]=(0,q.useState)(!1),[C,T]=(0,q.useState)(!1),E=(0,q.useCallback)(()=>T(!0),[]),{deployedUrl:O}=w(n,e.id,{enabled:C&&_!=null}),k=(0,q.useCallback)(()=>{O!=null&&f(O)},[O]);return(0,J.jsx)(c,{trailingActions:[{id:`pin`,label:m(r?`libraryAppCard.unpin`:`libraryAppCard.pin`),icon:r?I:N,onSelect:()=>a(e)},...g?[{id:`delete`,label:m(`libraryAppCard.delete`),icon:z,variant:`destructive`,onSelect:()=>g(e)}]:[]],className:`rounded-xl`,children:(0,J.jsxs)(`div`,{"data-reveal-row":``,className:o(`relative flex flex-col gap-2`,u&&`animate-[card-entrance_400ms_ease-out]`),onAnimationEnd:u?d:void 0,onPointerEnter:E,children:[(0,J.jsx)(`button`,{type:`button`,onClick:()=>i(e.id),className:o(`relative w-full cursor-pointer overflow-hidden rounded-xl`,`outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`),children:(0,J.jsx)(S,{name:e.name,icon:e.icon,loadHtml:v})}),(0,J.jsx)(`div`,{"data-reveal":``,className:`absolute right-2 top-2 z-20`,children:(0,J.jsx)(Z,{appName:e.name,isPinned:r,open:b,onOpenChange:e=>{e&&E(),x(e)},onPin:()=>a(e),onDelete:g?()=>g(e):void 0,onShare:h?void 0:y,onDeploy:_,deployedUrl:O,onCopyDeployedLink:k})}),(0,J.jsxs)(`button`,{type:`button`,onClick:()=>i(e.id),className:`flex cursor-pointer flex-col gap-0.5 px-0.5 text-left outline-none`,children:[(0,J.jsx)(`span`,{className:`truncate text-body-large-default text-[color:var(--content-emphasised)] max-md:text-body-medium-lighter max-md:text-[color:var(--content-secondary)]`,children:e.name}),(0,J.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)] max-md:hidden`,children:t(new Date(e.createdAt))})]})]})})}function Z({appName:e,isPinned:t,open:n,onOpenChange:r,onPin:a,onDelete:o,onShare:s,onDeploy:c,deployedUrl:u,onCopyDeployedLink:d}){let{t:f}=D(`library`),p=u!=null&&u!==``&&d!=null,m=f(`libraryAppCard.actionsTitle`,{appName:e});return(0,J.jsxs)(i.Root,{open:n,onOpenChange:r,children:[(0,J.jsx)(i.Trigger,{asChild:!0,children:(0,J.jsx)(l,{variant:`primary`,size:`compact`,iconOnly:(0,J.jsx)(L,{}),"aria-label":m,onClick:e=>e.stopPropagation()})}),(0,J.jsxs)(i.Content,{title:m,children:[(0,J.jsx)(i.Item,{icon:t?I:N,label:f(t?`libraryAppCard.unpin`:`libraryAppCard.pin`),onSelect:a}),s?(0,J.jsx)(i.Item,{icon:P,label:f(`libraryAppCard.share`),description:f(`libraryAppCard.shareSub`),onSelect:s}):null,c&&p?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(i.Item,{icon:M,label:f(`libraryAppCard.deployed`),description:(0,J.jsx)(`span`,{className:`break-all`,children:u}),trailing:f(`libraryAppCard.copyLink`),onSelect:()=>d?.()}),(0,J.jsx)(i.Item,{icon:B,label:f(`libraryAppCard.redeploy`),description:f(`libraryAppCard.redeploySub`),onSelect:c})]}):c?(0,J.jsx)(i.Item,{icon:U,label:f(`libraryAppCard.deploy`),description:f(`libraryAppCard.deploySub`),onSelect:c}):null,o?(0,J.jsx)(i.Item,{icon:z,label:f(`libraryAppCard.delete`),tone:`destructive`,onSelect:o}):null]})]})}function Q({title:e,apps:t,assistantId:n,pinnedAppIds:r,lastImportedAppId:i,onOpen:a,onPin:o,onDelete:s,onDeploy:c,onAnimationEnd:l}){return t.length===0?null:(0,J.jsxs)(`section`,{children:[(0,J.jsx)(`h2`,{className:`mb-4 text-body-small-emphasised text-[color:var(--content-secondary)] max-md:sr-only`,children:e}),(0,J.jsx)(`div`,{className:`grid grid-cols-[repeat(auto-fill,minmax(max(220px,calc((100%-6rem)/5)),1fr))] gap-6 [--swipe-item-surface:var(--surface-base)] max-md:[--swipe-item-surface:var(--surface-overlay)]`,children:t.map(e=>(0,J.jsx)(X,{app:e,assistantId:n,isPinned:r.has(e.id),onOpen:a,onPin:o,onDelete:s,justImported:e.id===i,onAnimationEnd:l,onDeploy:c?()=>c(e.id):void 0},e.id))})]})}var $=(e,t)=>t.updatedAt-e.updatedAt||t.createdAt-e.createdAt;function ae(e){let{pinnedAppIds:t}=m(e),{data:n=[],isLoading:r,error:i}=T({...u({path:{assistant_id:e}}),select:e=>e.apps}),{data:o=[],isLoading:s,error:c}=T({...a({path:{assistant_id:e}}),select:e=>e.documents}),l=r||s,d=i&&c?i instanceof Error?i.message:`Failed to load library`:null,[f,p]=(0,q.useState)(``),h=(0,q.useMemo)(()=>{if(!f.trim())return n;let e=f.toLowerCase();return n.filter(t=>t.name.toLowerCase().includes(e)||t.description?.toLowerCase().includes(e))},[n,f]);return{apps:n,documents:o,filteredApps:h,pinnedApps:(0,q.useMemo)(()=>h.filter(e=>t.has(e.id)).sort($),[h,t]),recentApps:(0,q.useMemo)(()=>h.filter(e=>!t.has(e.id)).sort($),[h,t]),filteredDocuments:(0,q.useMemo)(()=>{if(!f.trim())return o;let e=f.toLowerCase();return o.filter(t=>t.title.toLowerCase().includes(e))},[o,f]),searchText:f,setSearchText:p,loading:l,error:d}}async function oe(e,t){let{data:n,error:r,response:i}=await b({path:{assistant_id:e},body:t,bodySerializer:e=>e,headers:{"Content-Type":`application/octet-stream`},throwOnError:!1});if(!i||!i.ok){let e=(r&&typeof r==`object`&&`message`in r?r.message:null)??`Failed to import app.`;throw Error(e)}return n}function se({assistantId:e,assistantName:t,onNewConversation:i,onOpenDocument:a,onOpenApp:o}){let{t:c}=D(`library`),u=C(),d=E(),{togglePin:f,pinnedAppIds:g}=m(e),_=s.use.isDeploying(),{apps:v,documents:y,filteredApps:b,pinnedApps:S,recentApps:w,filteredDocuments:T,searchText:O,setSearchText:k,loading:A,error:j}=ae(e),{pendingDelete:M,isDeleting:N,requestDelete:P,confirmDelete:F,cancelDelete:I}=te(e),[L]=(0,q.useState)(()=>r()?void 0:`.vellum`),z=(0,q.useRef)(null),[B,V]=(0,q.useState)(!1),U=(0,q.useCallback)(async t=>{let r=t.target.files?.[0];if(!(!r||B)){V(!0);try{let t=await oe(e,r);await d.invalidateQueries({queryKey:n({path:{assistant_id:e}})}),x.success(c(`libraryView.imported`,{name:t.name})),o(t.appId)}catch(e){x.error(e instanceof Error?e.message:c(`libraryView.importFailed`))}finally{V(!1),z.current&&(z.current.value=``)}}},[e,B,d,o,c]),G=(0,q.useCallback)(async t=>{if(_)return;let n=v.find(e=>e.id===t)?.name??`this app`;try{let r=await p(e,t);s.getState().deployApp(e,t,n,r)}catch{s.getState().deployApp(e,t,n,``)}},[e,_,v]),K=(0,q.useCallback)(e=>f(e.id),[f]),Y=ne.use.setHeaderTrailing(),X=!A&&!j;if((0,q.useEffect)(()=>{if(!X){Y(null);return}let e=B?(0,J.jsx)(`div`,{className:`h-4 w-4 animate-spin rounded-full border-2 border-current border-t-transparent`}):(0,J.jsx)(H,{"aria-hidden":!0});return Y(u?(0,J.jsx)(l,{variant:`ghost`,iconOnly:e,"aria-label":c(`libraryView.import`),tooltip:c(`libraryView.import`),className:`rounded-full max-md:bg-[var(--surface-active)]`,onClick:()=>z.current?.click(),disabled:B}):(0,J.jsxs)(l,{variant:`outlined`,size:`regular`,onClick:()=>z.current?.click(),disabled:B,children:[e,(0,J.jsx)(`span`,{className:`ml-1.5`,children:c(`libraryView.import`)})]})),()=>{Y(null)}},[u,X,B,Y,c]),A)return(0,J.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,J.jsx)(`div`,{className:`h-6 w-6 animate-spin rounded-full border-2 border-[var(--border-base)] border-t-[var(--primary-base)]`,role:`status`,"aria-label":c(`libraryView.loadingAria`)})});if(j)return(0,J.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-4 px-4`,children:[(0,J.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:j}),(0,J.jsx)(`button`,{type:`button`,className:`rounded-lg bg-[var(--primary-base)] px-4 py-2 text-body-medium-default text-[var(--content-inset)] transition-colors hover:bg-[var(--primary-hover)]`,onClick:()=>window.location.reload(),children:c(`libraryView.retry`)})]});let Z=v.length===0&&y.length===0;return(0,J.jsxs)(`div`,{className:`flex h-full flex-col overflow-hidden`,children:[(0,J.jsx)(`input`,{ref:z,type:`file`,accept:L,className:`hidden`,onChange:U}),Z?(0,J.jsx)(`div`,{className:`min-h-0 flex-1`,children:(0,J.jsx)(ie,{onNewConversation:i?()=>i():void 0})}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`div`,{className:`mb-6 shrink-0`,children:(0,J.jsx)(h,{fullWidth:!0,type:`text`,placeholder:c(`libraryView.searchPlaceholder`),value:O,onChange:e=>k(e.target.value),leftIcon:(0,J.jsx)(R,{size:16})})}),(0,J.jsx)(`div`,{className:`flex-1 overflow-y-auto`,children:b.length===0&&T.length===0?(0,J.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-16`,children:[(0,J.jsx)(R,{size:32,className:`mb-4 text-[var(--content-tertiary)]`}),(0,J.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:c(`libraryView.noMatches`,{query:O})})]}):(0,J.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[(0,J.jsx)(Q,{title:c(`libraryView.pinned`),apps:S,assistantId:e,pinnedAppIds:g,onOpen:o,onPin:K,onDelete:P,onDeploy:G}),(0,J.jsx)(Q,{title:c(`libraryView.recents`),apps:w,assistantId:e,pinnedAppIds:g,onOpen:o,onPin:K,onDelete:P,onDeploy:G}),T.length>0?(0,J.jsxs)(`section`,{children:[(0,J.jsx)(`h2`,{className:`mb-4 text-body-small-emphasised text-[color:var(--content-secondary)]`,children:c(`libraryView.documents`)}),(0,J.jsx)(`div`,{className:`grid grid-cols-[repeat(auto-fill,minmax(max(220px,calc((100%-6rem)/5)),1fr))] gap-6`,children:T.map(e=>(0,J.jsx)(re,{document:e,onOpen:e=>{a&&a(e)}},e.surfaceId))})]}):null]})}),(0,J.jsx)(W,{assistantId:e,assistantName:t,onStartConversation:i}),(0,J.jsx)(ee,{app:M,isDeleting:N,onConfirm:F,onCancel:I})]})]})}function ce(){let e=d(),t=k(),n=O();return(0,J.jsx)(se,{assistantId:e,onNewConversation:(0,q.useCallback)(e=>{y(t,{prompt:e})},[t]),onOpenDocument:(0,q.useCallback)(e=>{t(g(e,n.pathname),{state:_(n,e)})},[t,n]),onOpenApp:(0,q.useCallback)(e=>{t(v.library.app(e))},[t])})}export{ce as LibraryPage};
@@ -0,0 +1 @@
1
+ import{hy as e}from"./app-BTYvw9j7.js";export{e as markLockfileAssistantOnboarded};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{F_ as t,P_ as n,Sx as r,ds as i,dv as a,fs as o,ib as s,pb as c,ps as l,us as u}from"./app-BTYvw9j7.js";import{j as d}from"./vendor-B2dSzLzU.js";import{d as f,t as p,x as m}from"./react-B9IgSVeK.js";import{n as h,r as g,t as _}from"./auth-welcome-screen-aYDHX6pt.js";import{n as v,t as y}from"./use-return-to-short-circuit-DSRiJl-E.js";var b=e(m(),1),x=p();function S({returnTo:e}){let{t}=d(`account`),[a,s]=(0,b.useState)(null),[f,p]=(0,b.useState)(!1),m=async()=>{s(null),p(!0);try{await n({returnTo:e??null})}catch(e){if(i(e)){p(!1);return}c(e,{context:`native_login`,tags:{authError:o(e)??`unclassified`}}),s(t(l(e),{community:u})),p(!1)}};return(0,x.jsx)(g,{animateAvatarWaveIn:!0,fillsViewport:!0,children:(0,x.jsx)(h,{error:a,children:(0,x.jsx)(r,{type:`button`,variant:`primary`,size:`regular`,fullWidth:!0,className:`h-11 text-base`,onClick:()=>{m()},disabled:f,children:t(`loginPage.signIn`)})})})}function C({returnTo:e}){let{t}=d(`account`),{search:n}=f(),r=a(e?`${s.account.signup}?returnTo=${encodeURIComponent(e)}`:s.account.signup,n);return(0,x.jsx)(_,{returnTo:e,errorContext:`web_login`,fillsViewport:!0,secondary:{label:t(`loginPage.signUp`),href:r}})}function w(){let e=t(),n=y();return n.kind===`wait`?(0,x.jsx)(g,{animateAvatarWaveIn:!0,fillsViewport:!0,children:(0,x.jsx)(v,{})}):n.kind===`redirect`?n.node:e?(0,x.jsx)(S,{returnTo:n.returnTo}):(0,x.jsx)(C,{returnTo:n.returnTo})}export{w as LoginPage};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Np as t,ab as n,uv as r,ws as i}from"./app-DxMy0jwj.js";import{j as a}from"./vendor-B2dSzLzU.js";import{_ as o,t as s,x as c}from"./react-B9IgSVeK.js";import{r as l,t as u}from"./account-shell-sZRHf1fP.js";var d=e(c(),1),f=s();function p(){let{t:e}=a(`account`),[s]=o(),c=t.use.logout(),p=(0,d.useRef)(!1);return(0,d.useEffect)(()=>{if(p.current)return;p.current=!0;let e=r(s.get(`returnTo`),n.account.login),t=e.startsWith(`http`)||e===n.account.login?e:`${n.account.login}?returnTo=${encodeURIComponent(e)}`,a=!1;return c().then(()=>{a||i(t)},()=>{a||i(t)}),()=>{a=!0}},[c,s]),(0,f.jsx)(u,{children:(0,f.jsx)(l,{title:e(`logoutPage.title`)})})}export{p as LogoutPage};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Mp as t,ib as n,lv as r,ws as i}from"./app-BTYvw9j7.js";import{j as a}from"./vendor-B2dSzLzU.js";import{_ as o,t as s,x as c}from"./react-B9IgSVeK.js";import{r as l,t as u}from"./account-shell-BPmj200S.js";var d=e(c(),1),f=s();function p(){let{t:e}=a(`account`),[s]=o(),c=t.use.logout(),p=(0,d.useRef)(!1);return(0,d.useEffect)(()=>{if(p.current)return;p.current=!0;let e=r(s.get(`returnTo`),n.account.login),t=e.startsWith(`http`)||e===n.account.login?e:`${n.account.login}?returnTo=${encodeURIComponent(e)}`,a=!1;return c().then(()=>{a||i(t)},()=>{a||i(t)}),()=>{a=!0}},[c,s]),(0,f.jsx)(u,{children:(0,f.jsx)(l,{title:e(`logoutPage.title`)})})}export{p as LogoutPage};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Ap as t,ab as n}from"./app-DxMy0jwj.js";import{d as r,i,t as a,x as o}from"./react-B9IgSVeK.js";import{qa as s,zn as c}from"./icons-bnwMda87.js";import{n as l,t as u}from"./sidebar-tree-CB3bELX6.js";var d=s(`monitor-cog`,[[`path`,{d:`M12 17v4`,key:`1riwvh`}],[`path`,{d:`m14.305 7.53.923-.382`,key:`1mlnsw`}],[`path`,{d:`m15.228 4.852-.923-.383`,key:`82mpwg`}],[`path`,{d:`m16.852 3.228-.383-.924`,key:`ln4sir`}],[`path`,{d:`m16.852 8.772-.383.923`,key:`1dejw0`}],[`path`,{d:`m19.148 3.228.383-.924`,key:`192kgf`}],[`path`,{d:`m19.53 9.696-.382-.924`,key:`fiavlr`}],[`path`,{d:`m20.772 4.852.924-.383`,key:`1j8mgp`}],[`path`,{d:`m20.772 7.148.924.383`,key:`zix9be`}],[`path`,{d:`M22 13v2a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7`,key:`1tnzv8`}],[`path`,{d:`M8 21h8`,key:`1ev6f3`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}]]),f=e(o(),1),p=[{id:`emails`,label:`Emails`,href:n.logs.emails,icon:c},{id:`system-events`,label:`System Events`,href:n.logs.systemEvents,icon:d}],m=a();function h(){let e=t({platformHostedOnly:!0}),a=t(),{pathname:o}=r(),s=(0,f.useMemo)(()=>p.filter(t=>!(t.id===`system-events`&&e===`gated`||t.id===`emails`&&a===`gated`)),[e,a]),c=(0,f.useMemo)(()=>{let e=p.find(e=>o===e.href||o.startsWith(e.href+`/`));return e?e.label:o===n.logs.root?p[0]?.label??`Logs & Usage`:`Logs & Usage`},[o]);return(0,m.jsx)(l,{backHref:n.assistant,sidebar:(0,m.jsx)(u,{items:s,indexPath:n.logs.root}),title:c,menuRoute:n.logs.root,children:(0,m.jsx)(i,{})})}export{h as LogsLayout};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{ib as t,kp as n}from"./app-BTYvw9j7.js";import{d as r,i,t as a,x as o}from"./react-B9IgSVeK.js";import{qa as s,zn as c}from"./icons-bnwMda87.js";import{n as l,t as u}from"./sidebar-tree-a6N3epHy.js";var d=s(`monitor-cog`,[[`path`,{d:`M12 17v4`,key:`1riwvh`}],[`path`,{d:`m14.305 7.53.923-.382`,key:`1mlnsw`}],[`path`,{d:`m15.228 4.852-.923-.383`,key:`82mpwg`}],[`path`,{d:`m16.852 3.228-.383-.924`,key:`ln4sir`}],[`path`,{d:`m16.852 8.772-.383.923`,key:`1dejw0`}],[`path`,{d:`m19.148 3.228.383-.924`,key:`192kgf`}],[`path`,{d:`m19.53 9.696-.382-.924`,key:`fiavlr`}],[`path`,{d:`m20.772 4.852.924-.383`,key:`1j8mgp`}],[`path`,{d:`m20.772 7.148.924.383`,key:`zix9be`}],[`path`,{d:`M22 13v2a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7`,key:`1tnzv8`}],[`path`,{d:`M8 21h8`,key:`1ev6f3`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}]]),f=e(o(),1),p=[{id:`emails`,label:`Emails`,href:t.logs.emails,icon:c},{id:`system-events`,label:`System Events`,href:t.logs.systemEvents,icon:d}],m=a();function h(){let e=n({platformHostedOnly:!0}),a=n(),{pathname:o}=r(),s=(0,f.useMemo)(()=>p.filter(t=>!(t.id===`system-events`&&e===`gated`||t.id===`emails`&&a===`gated`)),[e,a]),c=(0,f.useMemo)(()=>{let e=p.find(e=>o===e.href||o.startsWith(e.href+`/`));return e?e.label:o===t.logs.root?p[0]?.label??`Logs & Usage`:`Logs & Usage`},[o]);return(0,m.jsx)(l,{backHref:t.assistant,sidebar:(0,m.jsx)(u,{items:s,indexPath:t.logs.root}),title:c,menuRoute:t.logs.root,children:(0,m.jsx)(i,{})})}export{h as LogsLayout};
@@ -1 +1 @@
1
- import{Mn as e,kn as t,pr as n}from"./app-DxMy0jwj.js";import{j as r}from"./vendor-B2dSzLzU.js";import{t as i}from"./react-B9IgSVeK.js";import{t as a}from"./preview-error-vNKC-_Ku.js";import{t as o}from"./use-truncated-blob-text-BvKowx9y.js";var s=i(),c=512*1024;function l({blob:i,filename:l}){let{t:u}=r(`chat`),{text:d,truncated:f,decodeFailed:p}=o(i,c);return p?(0,s.jsx)(a,{filename:l}):d===null?(0,s.jsx)(n,{}):(0,s.jsxs)(`div`,{className:`flex min-h-0 flex-col gap-2`,children:[(0,s.jsx)(t,{content:d}),f&&(0,s.jsx)(e,{children:u(`previewTruncationNotice.markdown`)})]})}export{l as MarkdownPreview};
1
+ import{Mn as e,kn as t,pr as n}from"./app-BTYvw9j7.js";import{j as r}from"./vendor-B2dSzLzU.js";import{t as i}from"./react-B9IgSVeK.js";import{t as a}from"./preview-error-BxxJs_Br.js";import{t as o}from"./use-truncated-blob-text-BvKowx9y.js";var s=i(),c=512*1024;function l({blob:i,filename:l}){let{t:u}=r(`chat`),{text:d,truncated:f,decodeFailed:p}=o(i,c);return p?(0,s.jsx)(a,{filename:l}):d===null?(0,s.jsx)(n,{}):(0,s.jsxs)(`div`,{className:`flex min-h-0 flex-col gap-2`,children:[(0,s.jsx)(t,{content:d}),f&&(0,s.jsx)(e,{children:u(`previewTruncationNotice.markdown`)})]})}export{l as MarkdownPreview};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{fr as t,jo as n,pr as r}from"./app-DxMy0jwj.js";import{t as i,x as a}from"./react-B9IgSVeK.js";var o=e(a(),1),s=i(),c=`nodownload noplaybackrate`;function l({blob:e,filename:i,kind:a}){let l=t(e,(0,o.useMemo)(()=>n({sniffedMime:null,serverMime:e.type.length>0?e.type:null,filename:i}).mime,[e,i]));return l===null?(0,s.jsx)(r,{}):a===`image`?(0,s.jsx)(`div`,{className:`flex justify-center`,children:(0,s.jsx)(`img`,{src:l,alt:i,className:`h-auto max-w-full rounded-lg border border-[var(--border-element)]`})}):a===`audio`?(0,s.jsx)(`audio`,{src:l,controls:!0,controlsList:c,preload:`metadata`,"aria-label":i,className:`w-full`}):(0,s.jsx)(`video`,{src:l,controls:!0,controlsList:c,playsInline:!0,preload:`metadata`,"aria-label":i,className:`max-w-full rounded-lg border border-[var(--border-element)]`})}export{l as MediaPreview};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{fr as t,jo as n,pr as r}from"./app-BTYvw9j7.js";import{t as i,x as a}from"./react-B9IgSVeK.js";var o=e(a(),1),s=i(),c=`nodownload noplaybackrate`;function l({blob:e,filename:i,kind:a}){let l=t(e,(0,o.useMemo)(()=>n({sniffedMime:null,serverMime:e.type.length>0?e.type:null,filename:i}).mime,[e,i]));return l===null?(0,s.jsx)(r,{}):a===`image`?(0,s.jsx)(`div`,{className:`flex justify-center`,children:(0,s.jsx)(`img`,{src:l,alt:i,className:`h-auto max-w-full rounded-lg border border-[var(--border-element)]`})}):a===`audio`?(0,s.jsx)(`audio`,{src:l,controls:!0,controlsList:c,preload:`metadata`,"aria-label":i,className:`w-full`}):(0,s.jsx)(`video`,{src:l,controls:!0,controlsList:c,playsInline:!0,preload:`metadata`,"aria-label":i,className:`max-w-full rounded-lg border border-[var(--border-element)]`})}export{l as MediaPreview};
@@ -1,2 +1,2 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Gg as t,Hg as n,Ju as r,Sx as i,_b as a,ab as o,bb as s,dd as c,is as l,ix as u,kn as d,lc as f,li as p,nt as m,nx as h,os as g,ox as _,px as v,ss as y,vb as b,xx as x,zo as ee}from"./app-DxMy0jwj.js";import{I as S,Xn as C,Zn as w,er as T,j as E}from"./vendor-B2dSzLzU.js";import{f as D,t as te,x as O}from"./react-B9IgSVeK.js";import{An as ne,Fn as re,Gi as k,Hi as A,It as j,Q as M,Tt as ie,Wi as N,_t as ae,ht as P,i as F,kt as oe,n as I,qn as se,t as ce,xn as L}from"./icons-bnwMda87.js";var R=e(O(),1),z={x:600,y:450},le=`memory_tab_v1`,ue=crypto.randomUUID();function B(e){typeof window>`u`||r()&&p([{type:`onboarding`,daemon_event_id:crypto.randomUUID(),recorded_at:Date.now(),screen:`memory`,session_id:ue,step_name:e,funnel_version:le}])}var V=Math.PI*(3-Math.sqrt(5)),H=7,U=2.4,de=34,fe=10;function W(e){return Math.min(de,H+U*Math.sqrt(e))}function pe(e){return e===`concept`||e===`skill`||e===`capability`||e===`pending`?e:`other`}function G(e){return e===`link`||e===`learned`?e:`other`}function me(e,t={}){let n=t.center??z,r=e.nodes,i=r.length;if(i===0)return{nodes:[],edges:[]};let a=new Map;r.forEach((e,t)=>a.set(e.id,t));let o=e.edges.filter(e=>e.source!==e.target&&a.has(e.source)&&a.has(e.target)),s=Array(i).fill(0),c=[];for(let e of o){let t=a.get(e.source),n=a.get(e.target);s[t]++,s[n]++,c.push([t,n])}let l=r.map((e,t)=>W(s[t])),u=70+26*Math.sqrt(i),d=r.map((e,t)=>{let r=(t+.5)/i,a=Math.acos(1-2*r),o=t*V,s=u*Math.cbrt(r),c=Math.sin(a);return{x:n.x+s*c*Math.cos(o),y:n.y+s*c*Math.sin(o),z:s*Math.cos(a),vx:0,vy:0,vz:0}}),f=t.iterations??Math.max(90,Math.min(340,Math.round(46e3/i))),p=.011,m=.82,h=.5,g=1,_=1-.001**(1/f);for(let e=0;e<f;e++){for(let e=0;e<i;e++){let t=d[e];for(let n=e+1;n<i;n++){let r=d[n],i=t.x-r.x,a=t.y-r.y,o=t.z-r.z,s=i*i+a*a+o*o;s<.01&&(i=(e-n)*.1+.1,a=.1,o=.05,s=i*i+a*a+o*o);let c=Math.sqrt(s),l=6400/s,u=i/c*l,f=a/c*l,p=o/c*l;t.vx+=u,t.vy+=f,t.vz+=p,r.vx-=u,r.vy-=f,r.vz-=p}}for(let[e,t]of c){let n=d[e],r=d[t],i=r.x-n.x,a=r.y-n.y,o=r.z-n.z,s=Math.sqrt(i*i+a*a+o*o)||.01,c=.05*(s-140),l=i/s*c,u=a/s*c,f=o/s*c;n.vx+=l,n.vy+=u,n.vz+=f,r.vx-=l,r.vy-=u,r.vz-=f}for(let e=0;e<i;e++){let t=d[e];t.vx+=(n.x-t.x)*p,t.vy+=(n.y-t.y)*p,t.vz+=(0-t.z)*p,t.x+=t.vx*g*h,t.y+=t.vy*g*h,t.z+=t.vz*g*h,t.vx*=m,t.vy*=m,t.vz*=m}g*=1-_}for(let e=0;e<10;e++){let e=!1;for(let t=0;t<i;t++){let n=d[t];for(let r=t+1;r<i;r++){let i=d[r],a=i.x-n.x,o=i.y-n.y,s=i.z-n.z,c=Math.sqrt(a*a+o*o+s*s),u=l[t]+l[r]+fe;if(c>=u)continue;c<.01&&(a=(r-t)*.1+.1,o=.1,s=.05,c=Math.sqrt(a*a+o*o+s*s));let f=(u-c)/2,p=a/c*f,m=o/c*f,h=s/c*f;n.x-=p,n.y-=m,n.z-=h,i.x+=p,i.y+=m,i.z+=h,e=!0}}if(!e)break}return{nodes:r.map((e,t)=>{let n={id:e.id,x:d[t].x,y:d[t].y,z:d[t].z,radius:l[t],label:e.label,kind:pe(e.kind),degree:s[t]};return e.summary&&(n.summary=e.summary),e.updatedAtMs!==void 0&&(n.updatedAtMs=e.updatedAtMs),n}),edges:o.map((e,t)=>{let n={id:`${e.source}__${e.target}__${t}`,fromId:e.source,toId:e.target,kind:G(e.kind),directed:e.directed??!1};return e.description&&(n.description=e.description),n})}}var K=te();function he({title:e,detail:t,action:n}){return(0,K.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2 px-6 text-center`,children:[(0,K.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),t?(0,K.jsx)(`p`,{className:`max-w-sm text-body-small-default`,style:{color:`var(--content-tertiary)`},children:t}):null,n?(0,K.jsx)(`div`,{className:`mt-2`,children:n}):null]})}function q(){return S(`getMemoryGraphNode.failureMessage`,{ns:`intelligence`})}function J(e,n){return C({queryKey:[`memory-graph-node`,e,n],enabled:!!(e&&n),queryFn:async()=>{let{data:r,error:i,response:o}=await t({path:{assistant_id:e},query:{id:n??``},throwOnError:!1});if(b(o,i,q()),!o.ok)throw new a(o.status,s(i,o,q()));return r??{found:!1}}})}var ge={concept:`#467CC8`,skill:`#DB4B77`,capability:`#0E9B8B`,pending:`#F1B21E`,other:`#8D99A5`},_e=[`#467CC8`,`#E86B40`,`#7A5AF5`,`#22B8CF`,`#3DB85E`,`#E9C91A`,`#E83F5B`,`#6ECF87`,`#F39B74`,`#F5C94E`],Y={concept:`conceptGraphConstants.nodeKind.concept`,skill:`conceptGraphConstants.nodeKind.skill`,capability:`conceptGraphConstants.nodeKind.capability`,pending:`conceptGraphConstants.nodeKind.pending`,other:`conceptGraphConstants.nodeKind.other`};function ve(e){return S(Y[e],{ns:`intelligence`})}var ye=`#F1B21E`;function be(e){if(e.length<=4)return e.map((e,t)=>({node:e,index:t}));let t=e.slice(-3).map((t,n)=>({node:t,index:e.length-3+n}));return[{node:e[0],index:0},`ellipsis`,...t]}function xe(e){return e?new Date(e).toLocaleDateString(`en-GB`,{day:`numeric`,month:`short`,year:`numeric`}):null}var X=600;function Se(e){let t=e.slice(0,X),n=t.lastIndexOf(`
2
- `);return n>X/2?e.slice(0,n):t}function Ce({content:e}){let[t,n]=(0,R.useState)(!1),{t:r}=E(`intelligence`);return e.length<=X?(0,K.jsx)(d,{content:e}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(d,{content:t?e:Se(e)}),(0,K.jsx)(i,{variant:`ghost`,size:`compact`,className:`-ml-2 mt-1`,onClick:()=>n(e=>!e),rightIcon:t?(0,K.jsx)(A,{size:16,"aria-hidden":!0}):(0,K.jsx)(k,{size:16,"aria-hidden":!0}),children:r(t?`conceptDetailPanel.showLess`:`conceptDetailPanel.readFullNote`)})]})}function we({assistantId:e,node:t,trail:n,neighbors:r,onTravel:a,onCrumb:o,onClose:s,onOpenThread:c}){let{t:l}=E(`intelligence`),u=w(J(e,t.id)),d=u.data,f=xe(t.updatedAtMs),p=d?.title??t.label,m=be(n);return(0,R.useEffect)(()=>{let e=e=>{e.key===`Escape`&&!e.defaultPrevented&&(e.preventDefault(),s())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[s]),(0,K.jsxs)(`div`,{"data-graph-panel":!0,className:`absolute inset-0 z-20 flex justify-end`,onPointerDown:e=>e.stopPropagation(),onPointerMove:e=>e.stopPropagation(),onPointerUp:e=>e.stopPropagation(),children:[(0,K.jsx)(`div`,{className:`absolute inset-0`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 16%, transparent)`},onClick:s}),(0,K.jsxs)(`aside`,{className:`relative flex h-full min-h-0 w-full max-w-md flex-col overflow-hidden`,style:{backgroundColor:`var(--surface-lift)`,borderLeft:`1px solid var(--border-base)`},children:[n.length>1?(0,K.jsxs)(`nav`,{"aria-label":l(`conceptDetailPanel.trailAriaLabel`),className:`flex shrink-0 items-center gap-1 overflow-hidden border-b px-5 py-2 text-body-small-default`,style:{borderColor:`var(--border-base)`,color:`var(--content-tertiary)`},children:[(0,K.jsx)(`button`,{type:`button`,onClick:()=>o(n.length-2),"aria-label":l(`conceptDetailPanel.backAriaLabel`),className:`-ml-1 mr-0.5 flex shrink-0 items-center rounded p-0.5 hover:bg-[color-mix(in_srgb,var(--content-tertiary)_14%,transparent)]`,style:{color:`var(--content-tertiary)`},children:(0,K.jsx)(N,{size:16,"aria-hidden":!0})}),m.map((e,t)=>(0,K.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1`,children:[t>0?(0,K.jsx)(`span`,{"aria-hidden":!0,children:`›`}):null,e===`ellipsis`?(0,K.jsx)(`span`,{"aria-hidden":!0,children:`…`}):e.index===n.length-1?(0,K.jsx)(`span`,{"aria-current":`page`,className:`max-w-[9rem] truncate`,style:{color:`var(--content-default)`},children:e.node.label}):(0,K.jsx)(`button`,{type:`button`,onClick:()=>o(e.index),className:`max-w-[8rem] truncate rounded hover:underline`,style:{color:`var(--content-tertiary)`},children:e.node.label})]},e===`ellipsis`?`ellipsis`:e.index))]}):null,(0,K.jsxs)(`header`,{className:`flex shrink-0 items-start justify-between gap-3 border-b px-5 py-4`,style:{borderColor:`var(--border-base)`},children:[(0,K.jsxs)(`div`,{className:`min-w-0`,children:[(0,K.jsx)(`h2`,{className:`truncate text-title-small`,style:{color:`var(--content-default)`},title:d?.title??t.label,children:d?.title??t.label}),f?(0,K.jsx)(`p`,{className:`mt-0.5 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:l(`conceptDetailPanel.updated`,{date:f})}):null]}),(0,K.jsx)(i,{variant:`ghost`,iconOnly:(0,K.jsx)(F,{"aria-hidden":!0}),onClick:s,"aria-label":l(`conceptDetailPanel.closeAriaLabel`),tintColor:`var(--content-tertiary)`})]}),(0,K.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-5 py-4`,style:{touchAction:`pan-y`},children:[u.isLoading?(0,K.jsx)(`div`,{className:`flex justify-center py-8`,children:(0,K.jsx)(`div`,{className:`h-5 w-5 animate-spin rounded-full border-2`,style:{borderColor:`var(--border-base)`,borderTopColor:`var(--content-tertiary)`}})}):u.isError?(0,K.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:l(`conceptDetailPanel.loadError`)}):d?.found&&d.content?.trim()?(0,K.jsx)(Ce,{content:d.content},t.id):(0,K.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:l(`conceptDetailPanel.emptyContent`)}),r.length>0?(0,K.jsxs)(`section`,{className:`mt-6 border-t pt-4`,style:{borderColor:`var(--border-base)`},children:[(0,K.jsxs)(`div`,{className:`mb-2 flex items-baseline justify-between gap-2`,children:[(0,K.jsx)(`h3`,{className:`text-body-small-default uppercase tracking-wide`,style:{color:`var(--content-tertiary)`},children:l(`conceptDetailPanel.wiredTo`)}),(0,K.jsx)(`span`,{className:`text-body-small-default tabular-nums`,style:{color:`var(--content-tertiary)`},children:l(`conceptDetailPanel.connectionCount`,{count:r.length})})]}),(0,K.jsx)(`ul`,{className:`flex list-none flex-col gap-0.5`,children:r.map(e=>(0,K.jsx)(`li`,{children:(0,K.jsxs)(`button`,{type:`button`,onClick:()=>a({id:e.id,label:e.label}),className:`flex w-full items-center gap-2 rounded-lg px-2 py-1.5 text-left text-body-medium-default hover:bg-[color-mix(in_srgb,var(--content-tertiary)_12%,transparent)]`,style:{color:`var(--content-default)`},children:[(0,K.jsx)(`span`,{"aria-hidden":!0,className:`h-1.5 w-1.5 shrink-0 rounded-full`,style:{backgroundColor:e.kind===`learned`?ye:`var(--content-tertiary)`}}),(0,K.jsx)(`span`,{className:`truncate`,children:e.label})]})},e.id))})]}):null]}),c?(0,K.jsxs)(`footer`,{className:`flex shrink-0 gap-2 border-t px-5 py-3`,style:{borderColor:`var(--border-base)`},children:[(0,K.jsx)(i,{variant:`outlined`,size:`regular`,className:`flex-1`,leftIcon:(0,K.jsx)(ne,{size:16,"aria-hidden":!0}),onClick:()=>c(l(`conceptDetailPanel.askPrompt`,{title:p})),children:l(`conceptDetailPanel.askAboutThis`)}),(0,K.jsx)(i,{variant:`primary`,size:`regular`,className:`flex-1`,leftIcon:(0,K.jsx)(M,{size:16,"aria-hidden":!0}),onClick:()=>c(l(`conceptDetailPanel.refinePrompt`,{title:p})),children:l(`conceptDetailPanel.refine`)})]}):null]})]})}function Te({onDismiss:e}){let{t}=E(`intelligence`);return(0,K.jsxs)(`div`,{"data-graph-control":!0,className:`pointer-events-auto absolute left-1/2 top-4 z-10 flex w-[min(30rem,calc(100%-6rem))] -translate-x-1/2 items-start gap-3 rounded-xl px-4 py-3`,style:{backgroundColor:`var(--surface-lift)`,border:`1px solid var(--border-base)`,boxShadow:`0 4px 12px rgba(0, 0, 0, 0.25)`},children:[(0,K.jsx)(`span`,{className:`mt-0.5 shrink-0`,style:{color:`var(--primary-base)`},"aria-hidden":!0,children:(0,K.jsx)(M,{size:18})}),(0,K.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,K.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:t(`conceptGraphIntroBanner.title`)}),(0,K.jsx)(`p`,{className:`mt-0.5 text-body-small-lighter`,style:{color:`var(--content-tertiary)`},children:t(`conceptGraphIntroBanner.description`)})]}),(0,K.jsx)(i,{variant:`ghost`,iconOnly:(0,K.jsx)(F,{"aria-hidden":!0}),onClick:e,"aria-label":t(`conceptGraphIntroBanner.dismissAriaLabel`),tintColor:`var(--content-tertiary)`})]})}var Ee=8;function De({nodeKinds:e,coloredByTheme:t,themes:n,hasLinks:r,hasLearned:i,onToggleLink:a,onToggleLearned:o,linkActive:s,learnedActive:c}){let{t:l}=E(`intelligence`);return(0,K.jsxs)(`div`,{"data-graph-control":!0,className:`pointer-events-none absolute bottom-4 left-4 flex flex-col gap-1.5 rounded-lg px-3 py-2`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 78%, transparent)`,border:`1px solid var(--border-base)`},children:[e.map(e=>(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`inline-block h-2.5 w-2.5 rounded-full`,style:{backgroundColor:ge[e]}}),(0,K.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:ve(e)})]},e)),t&&(n&&n.length>0?(0,K.jsxs)(K.Fragment,{children:[n.slice(0,Ee).map((e,t)=>(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`inline-block h-2.5 w-2.5 shrink-0 rounded-full`,style:{backgroundColor:e.color}}),(0,K.jsx)(`span`,{className:`max-w-[9rem] truncate text-[11px]`,style:{color:`var(--content-tertiary)`},title:e.concepts?.join(` · `)??e.name,children:e.name})]},t)),n.length>Ee&&(0,K.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:l(`conceptGraphLegend.moreThemes`,{count:n.length-Ee})})]}):(0,K.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:l(`conceptGraphLegend.coloredByTheme`)})),(e.length>0||t)&&(r||i)&&(0,K.jsx)(`div`,{className:`mt-0.5 border-t pt-1.5`,style:{borderColor:`var(--border-base)`}}),r&&(0,K.jsx)(Oe,{swatchStyle:{borderTop:`2px solid var(--content-tertiary)`},label:l(`conceptGraphLegend.link`),onToggle:a,active:s}),i&&(0,K.jsx)(Oe,{swatchStyle:{borderTop:`2px dashed #F1B21E`},label:l(`conceptGraphLegend.learned`),onToggle:o,active:c})]})}function Oe({swatchStyle:e,label:t,onToggle:n,active:r}){let i=(0,K.jsx)(`span`,{className:`inline-block h-0 w-4`,style:e}),a=(0,K.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:t});return n?(0,K.jsxs)(`button`,{type:`button`,onClick:n,"aria-pressed":r,className:`pointer-events-auto flex cursor-pointer items-center gap-2 border-0 bg-transparent p-0 transition-opacity`,style:{opacity:r===!1?.4:1},children:[i,a]}):(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[i,a]})}var Z=8;function ke(e,t){let n=e.length;if(n===0)return new Map;let r=new Map;e.forEach((e,t)=>r.set(e.id,t));let i=e.map(()=>[]);for(let e of t){let t=r.get(e.fromId),n=r.get(e.toId);t===void 0||n===void 0||t===n||(i[t].push(n),i[n].push(t))}let a=e.map((e,t)=>t);for(let e=0;e<Z;e++)for(let e=0;e<n;e++){let t=i[e];if(t.length===0)continue;let n=new Map;for(let e of t)n.set(a[e],(n.get(a[e])??0)+1);let r=a[e],o=-1;for(let[e,t]of n)(t>o||t===o&&e<r)&&(r=e,o=t);a[e]=r}let o=new Map,s=new Map;return e.forEach((e,t)=>{let n=a[t],r=o.get(n);r===void 0&&(r=o.size,o.set(n,r)),s.set(e.id,r)}),s}function Q(){return S(`memoryUnavailable.prompts.v2`,{ns:`intelligence`})}function Ae(){return S(`memoryUnavailable.prompts.v1`,{ns:`intelligence`})}function je(){return S(`memoryUnavailable.prompts.enable`,{ns:`intelligence`})}function Me(){return{title:S(`memoryUnavailable.statusError.title`,{ns:`intelligence`}),detail:S(`memoryUnavailable.statusError.detail`,{ns:`intelligence`}),action:`retry`}}function Ne(e){return e===`off`?{title:S(`memoryUnavailable.off.title`,{ns:`intelligence`}),detail:S(`memoryUnavailable.off.detail`,{ns:`intelligence`}),action:`settings`,prompt:je()}:e===`v1`||e===`v2`?{title:S(`memoryUnavailable.legacy.title`,{ns:`intelligence`}),detail:S(`memoryUnavailable.legacy.detail`,{ns:`intelligence`}),action:`upgrade`,prompt:e===`v1`?Ae():Q()}:{title:S(`memoryUnavailable.unknown.title`,{ns:`intelligence`}),detail:S(`memoryUnavailable.unknown.detail`,{ns:`intelligence`}),action:`none`}}function Pe({assistantId:e,onOpenThread:t}){let{t:n}=E(`intelligence`),r=D(),a=T(),s=w(g(e));(0,R.useEffect)(()=>{l(a,e)},[a,e]);let u=ee(`memoryOptOut`),d=c.use.settingsDeveloperNav(),f=u&&d===!0;if(s.isLoading)return null;let p=s.data?.kind===`ready`?s.data.tier:void 0,m=s.isError?Me():Ne(p),h=m.prompt,_=null;return m.action===`upgrade`&&t&&h?_=(0,K.jsx)(i,{variant:`primary`,size:`compact`,leftIcon:(0,K.jsx)(M,{}),onClick:()=>{B(`upgrade_v3_clicked`),t(h)},children:n(`memoryUpgradePrompt.upgradeMemory`)}):m.action===`retry`?_=(0,K.jsx)(i,{variant:`outlined`,size:`compact`,leftIcon:(0,K.jsx)(oe,{}),onClick:()=>{s.refetch()},children:n(`memoryUpgradePrompt.tryAgain`)}):m.action===`settings`&&f?_=(0,K.jsx)(i,{variant:`outlined`,size:`compact`,leftIcon:(0,K.jsx)(P,{}),onClick:()=>r(`${o.settings.developer}?tab=memory`),children:n(`memoryUpgradePrompt.memorySettings`)}):m.action===`settings`&&t&&h&&(_=(0,K.jsx)(i,{variant:`primary`,size:`compact`,leftIcon:(0,K.jsx)(M,{}),onClick:()=>{B(`enable_memory_clicked`),t(h)},children:n(`memoryUpgradePrompt.turnMemoryOn`)})),(0,K.jsx)(he,{title:m.title,detail:m.detail,action:_})}function Fe({value:e,onChange:t}){let{t:n}=E(`intelligence`),r=[{value:`all`,label:n(`recencyLens.all`)},{value:`month`,label:n(`recencyLens.month`)},{value:`week`,label:n(`recencyLens.week`)}];return(0,K.jsx)(_,{ariaLabel:n(`recencyLens.ariaLabel`),items:r,value:e,onChange:t,className:`!w-auto [&>*]:!flex-none`})}var Ie=`vellum:memoryGraph:introDismissed:`;function Le(e){return`${Ie}${e}`}function $(e){if(!e)return!0;try{return window.localStorage.getItem(Le(e))===`1`}catch{return!0}}function Re(e){let[t,n]=(0,R.useState)(()=>$(e));return(0,R.useEffect)(()=>{n($(e))},[e]),[t,(0,R.useCallback)(()=>{n(!0);try{window.localStorage.setItem(Le(e),`1`)}catch{}},[e])]}var ze=[`concept`,`skill`,`capability`,`pending`,`other`],Be=.13,Ve=2600,He=.006,Ue=1.15,We=3,Ge=.32,Ke=.45,qe=3,Je=4,Ye=1440*60*1e3,Xe=14*Ye,Ze=12,Qe=2*Ye,$e=80,et=340,tt=.12,nt=.05,rt=.03,it=12,at=2600;function ot(e){let t=getComputedStyle(e);return{content:t.getPropertyValue(`--content-default`).trim()||`#e5e7eb`,tertiary:t.getPropertyValue(`--content-tertiary`).trim()||`#8792a0`}}function st(e){return e.kind===`learned`?`Learned association`:e.description??`Linked concepts`}function ct(e,t,n){return t==null?!1:e==null||n-e>t}function lt(e,t){let n=t?e.get(t):void 0;return e=>t!=null&&(e===t||(n?.has(e)??!1))}function ut({assistantId:e,className:t,isFullscreen:n,onToggleFullscreen:r,onOpenThread:a,headerAction:o,handleRef:s}){let{t:c}=E(`intelligence`),l=(0,R.useRef)(null),u=(0,R.useRef)(null),d=w(y(e)),f=d.data?.kind===`ready`?d.data.graph:null,p=(0,R.useMemo)(()=>f?me(f):{nodes:[],edges:[]},[f]),m=d.data?.kind===`ready`&&p.nodes.length>0,h=(0,R.useMemo)(()=>ke(p.nodes,p.edges),[p.nodes,p.edges]),g=(0,R.useMemo)(()=>{let e=new Map;for(let t of p.nodes){let n=h.get(t.id);if(n==null||t.degree===0)continue;let r=e.get(n);r?r.push(t):e.set(n,[t])}return[...e.entries()].map(([e,t])=>{let n=[...t].sort((e,t)=>t.degree-e.degree||(e.id<t.id?-1:1)).slice(0,3);return{hubId:n[0].id,color:_e[e%_e.length],name:n[0].label,concepts:n.map(e=>e.label),size:t.length}}).sort((e,t)=>t.size-e.size)},[h,p.nodes]),_=(0,R.useMemo)(()=>new Set(g.map(e=>e.hubId)),[g]),v=(0,R.useMemo)(()=>{let e=new Map,t=(t,n)=>{let r=e.get(t);r||(r=new Set,e.set(t,r)),r.add(n)};for(let e of p.edges)t(e.fromId,e.toId),t(e.toId,e.fromId);return e},[p.edges]),b=(0,R.useMemo)(()=>{if(p.nodes.length===0)return 1;let e=p.nodes.map(e=>{let t=e.x-z.x,n=e.y-z.y;return Math.sqrt(t*t+n*n+e.z*e.z)+e.radius}).sort((e,t)=>e-t),t=Math.min(e.length-1,Math.floor(e.length*.92));return Math.max(1,e[t])},[p.nodes]),x=(0,R.useRef)({yaw:.5,pitch:.32,zoom:1,hoveredId:null,dragging:!1,moved:!1,lastX:0,lastY:0,lastInteractAt:-1/0,dirty:!0}),ee=(0,R.useRef)([]),S=(0,R.useRef)([]),C=(0,R.useRef)({content:`#e5e7eb`,tertiary:`#8792a0`}),T=(0,R.useRef)(null),D=(0,R.useRef)(!1),te=(0,R.useRef)(null),O=(0,R.useRef)(null),[ne,k]=(0,R.useState)(null),[A,j]=(0,R.useState)(null),[M,N]=(0,R.useState)([]),P=M.at(-1)??null,oe=(0,R.useCallback)(e=>{B(`node_opened`),N(t=>[...t,e])},[]),se=(0,R.useRef)(null);(0,R.useEffect)(()=>{se.current=P?.id??null,x.current.dirty=!0},[P?.id]);let[le,ue]=Re(e),[V,H]=(0,R.useState)(``),[U,de]=(0,R.useState)(!1),fe=(0,R.useRef)(null);(0,R.useEffect)(()=>{U&&fe.current?.focus()},[U]);let W=(0,R.useRef)(!1),pe=V.trim().toLowerCase(),G=(0,R.useMemo)(()=>{if(!pe)return null;let e=new Set;for(let t of p.nodes)t.label.toLowerCase().includes(pe)&&e.add(t.id);return e},[pe,p.nodes]),q=(0,R.useRef)({active:!1,matches:null});(0,R.useEffect)(()=>{q.current={active:!!G,matches:G},x.current.dirty=!0},[G]),(0,R.useEffect)(()=>{V.trim()||(W.current=!1)},[V]);let J=(0,R.useMemo)(()=>!G||G.size===0?[]:p.nodes.filter(e=>G.has(e.id)).sort((e,t)=>t.degree-e.degree).slice(0,8),[G,p.nodes]),[Y,ve]=(0,R.useState)(`all`),be=(0,R.useRef)(null);(0,R.useEffect)(()=>{be.current=Y===`week`?7*Ye:Y===`month`?30*Ye:null,x.current.dirty=!0},[Y]);let xe=(0,R.useMemo)(()=>p.nodes.some(e=>e.updatedAtMs!=null),[p.nodes]);(0,R.useEffect)(()=>{!xe&&Y!==`all`&&ve(`all`)},[xe,Y]);let[X,Se]=(0,R.useState)({link:!0,learned:!0}),Ce=(0,R.useRef)(X);(0,R.useEffect)(()=>{Ce.current=X,x.current.dirty=!0},[X]),(0,R.useEffect)(()=>{H(``),ve(`all`),Se({link:!0,learned:!0}),N([]),W.current=!1},[e]);let Ee=(0,R.useCallback)(()=>{let e=x.current;e.yaw=.5,e.pitch=.32,e.zoom=1,e.lastInteractAt=-1/0,e.dirty=!0,k(null)},[]),Oe=(0,R.useCallback)(e=>{let t=x.current;t.zoom=Math.max(Ke,Math.min(qe,t.zoom*e)),t.lastInteractAt=performance.now(),t.dirty=!0},[]),Z=(0,R.useCallback)(e=>{T.current=e,x.current.lastInteractAt=performance.now(),x.current.dirty=!0},[]),Q=(0,R.useCallback)(e=>{oe(e),Z(e.id)},[oe,Z]),Ae=(0,R.useCallback)(e=>{te.current={id:e,start:performance.now()},Z(e),window.setTimeout(()=>{x.current.dirty=!0},at+60)},[Z]),je=(0,R.useCallback)(e=>{p.nodes.some(t=>t.id===e)?Ae(e):O.current=e},[p.nodes,Ae]);(0,R.useEffect)(()=>{let e=O.current;e&&p.nodes.some(t=>t.id===e)&&(O.current=null,Ae(e))},[p.nodes,Ae]),(0,R.useImperativeHandle)(s,()=>({focusNode:je}),[je]);let Me=(0,R.useCallback)(()=>{N([]),H(``),k(null),T.current=null,D.current=!0},[]),Ne=(0,R.useCallback)(e=>{H(``);let t=M.slice(0,e+1);N(t);let n=t.at(-1);n?Z(n.id):k(null)},[M,Z]),Ie=(0,R.useCallback)(e=>{H(``),Q(e)},[Q]),Le=(0,R.useMemo)(()=>{let e=P?.id;if(!e)return[];let t=v.get(e);if(!t||t.size===0)return[];let n=new Map(p.nodes.map(e=>[e.id,e.label])),r=new Map;for(let t of p.edges)t.fromId===e?r.set(t.toId,t.kind):t.toId===e&&r.set(t.fromId,t.kind);let i=[];for(let e of t){let t=n.get(e);t!=null&&i.push({id:e,label:t,kind:r.get(e)})}return i.sort((e,t)=>e.label.localeCompare(t.label)),i},[P?.id,v,p.nodes,p.edges]);(0,R.useEffect)(()=>{if(!m)return;let e=u.current,t=l.current;if(!e||!t)return;let n=e.getContext(`2d`);if(!n)return;let r=p.nodes,i=p.edges,a=h,o=_,s=v,c=new Set(r.map(e=>e.id)),d=b,f=window.matchMedia(`(prefers-reduced-motion: reduce)`).matches;C.current=ot(t);let g=Math.min(window.devicePixelRatio||1,2),y=0,w=0,E=()=>{let n=t.getBoundingClientRect();y=n.width,w=n.height,g=Math.min(window.devicePixelRatio||1,2),e.width=Math.max(1,Math.round(y*g)),e.height=Math.max(1,Math.round(w*g)),e.style.width=`${y}px`,e.style.height=`${w}px`,C.current=ot(t),x.current.dirty=!0};E();let O=new ResizeObserver(E);O.observe(t);let ne=new MutationObserver(()=>{C.current=ot(t),x.current.dirty=!0});ne.observe(document.documentElement,{attributes:!0,attributeFilter:[`data-theme`,`class`,`style`]});let re=0,k=0,A=e=>{let t=k?Math.min(.05,(e-k)/1e3):0;k=e;let l=x.current,u=C.current,p=Date.now(),m=T.current;if(!l.dragging&&e-l.lastInteractAt>Ve&&!f&&!m&&(l.yaw+=Be*t),m){let e=r.find(e=>e.id===m);if(!e)T.current=null;else{let t=e.x-z.x,n=e.y-z.y,r=e.z,i=-Math.atan2(t,r),a=Math.hypot(t,r),o=Math.max(-Ue,Math.min(Ue,Math.atan2(n,a))),s=Math.min(qe,1.6),c=f?1:.15,u=i-l.yaw;u=Math.atan2(Math.sin(u),Math.cos(u)),l.yaw+=u*c,l.pitch+=(o-l.pitch)*c,l.zoom+=(s-l.zoom)*c,l.dirty=!0,Math.abs(u)<.01&&Math.abs(o-l.pitch)<.01&&Math.abs(s-l.zoom)<.02&&(T.current=null)}}if(D.current&&!l.dragging){let e=f?1:.15;l.pitch+=(.32-l.pitch)*e,l.zoom+=(1-l.zoom)*e,l.dirty=!0,Math.abs(.32-l.pitch)<.01&&Math.abs(1-l.zoom)<.02&&(D.current=!1)}if(f&&!l.dirty){re=requestAnimationFrame(A);return}l.dirty=!1;let h=Math.cos(l.yaw),_=Math.sin(l.yaw),v=Math.cos(l.pitch),b=Math.sin(l.pitch),E=We*d,O=Math.min(y,w)*.88/(2*d)*l.zoom,ne=y/2,j=w/2;n.setTransform(g,0,0,g,0,0),n.clearRect(0,0,y,w);let M=l.hoveredId,ie=M?s.get(M):void 0,N=e=>!M||e===M||(ie?.has(e)??!1),ae=q.current,P=ae.active,F=e=>!P||(ae.matches?.has(e)??!1),oe=be.current,I=e=>ct(e.updatedAtMs,oe,p),ce=Ce.current,L=se.current,R=L!=null&&c.has(L),le=lt(s,R?L:null),ue=r.length<=$e?1:Math.max(tt,1-(r.length-$e)/(et-$e)*(1-tt)),B=Array(r.length);for(let e=0;e<r.length;e++){let t=r[e],n=t.x-z.x,i=t.y-z.y,a=t.z,o=n*h+a*_,s=-n*_+a*h,c=i*v-s*b,l=i*b+s*v,u=E/(E-l);B[e]={node:t,sx:ne+o*O*u,sy:j+c*O*u,sr:Math.max(1.2,t.radius*O*u),depth:Math.max(0,Math.min(1,(l+d)/(2*d)))}}let V=B.map((e,t)=>t).sort((e,t)=>B[e].depth-B[t].depth),H=new Map;for(let e of B)H.set(e.node.id,e);let U=[];n.lineCap=`round`;for(let e of i){let t=H.get(e.fromId),r=H.get(e.toId);if(!t||!r)continue;let i=e.kind===`learned`,a=L!=null&&(e.fromId===L||e.toId===L);if(!a&&(i?!ce.learned:!ce.link))continue;let o=P&&(!F(e.fromId)||!F(e.toId))||!a&&(I(t.node)||I(r.node)),s=M!=null&&(e.fromId===M||e.toId===M),c=(t.depth+r.depth)/2;!o&&(!R||a)&&U.push({ax:t.sx,ay:t.sy,bx:r.sx,by:r.sy,kind:e.kind,description:e.description,depth:c});let l=(i?.34:.28)*(.4+.6*c),d=i?l*ue:l,f;f=o?.03:R?a?.9:rt:M==null?d:s?.9:N(e.fromId)&&N(e.toId)?l:.05,n.globalAlpha=f,n.strokeStyle=i?ye:u.tertiary,n.lineWidth=(s||R&&a?2:1)*(.6+.6*c),n.setLineDash(i?[4,4]:[]),n.beginPath(),n.moveTo(t.sx,t.sy),n.lineTo(r.sx,r.sy),n.stroke()}n.setLineDash([]);for(let t of V){let r=B[t],i=r.node,o=i.kind===`concept`?_e[(a.get(i.id)??0)%_e.length]:ge[i.kind],s=P&&!F(i.id),c=le(i.id),l=s||I(i)&&!c,u=R?c&&!l:!l&&N(i.id),d=i.id===M,m=Ge+(1-Ge)*r.depth,h=R&&!c?m*nt:l?m*.08:u?m:m*.18,g=(d?16:i.degree>=Je?8:4)*r.depth,_=i.updatedAtMs;if(_){let n=p-_,i=Math.max(0,1-n/Xe);if(i>0){let a=i*Ze;!f&&n<Qe&&(a*=.55+.45*Math.sin(e/420+t*1.7)),g+=a*r.depth}}n.shadowColor=o,n.shadowBlur=u?g:0;let v=i.kind===`pending`;n.globalAlpha=h*(v?.3:.55),n.fillStyle=o,n.beginPath(),n.arc(r.sx,r.sy,r.sr,0,Math.PI*2),n.fill(),n.shadowBlur=0,n.globalAlpha=h,n.lineWidth=d?2.5:1.4,n.strokeStyle=o,n.setLineDash(v?[3,3]:[]),n.stroke(),n.setLineDash([]);let y=te.current;if(y&&y.id===i.id){let t=e-y.start;if(t>at)te.current=null;else if(f)n.globalAlpha=.7,n.lineWidth=1.5,n.beginPath(),n.arc(r.sx,r.sy,r.sr+7,0,Math.PI*2),n.stroke();else for(let e=0;e<3;e++){let i=(t-e*320)/1100;i<=0||i>=1||(n.globalAlpha=(1-i)*.8,n.lineWidth=1.5,n.beginPath(),n.arc(r.sx,r.sy,r.sr+i*46*r.depth,0,Math.PI*2),n.stroke())}}}n.shadowBlur=0,n.textAlign=`center`,n.textBaseline=`top`,n.font=`11px ui-sans-serif, system-ui, sans-serif`;for(let e of V){let t=B[e],r=t.node,i=le(r.id);if(P&&!F(r.id)||I(r)&&!i||!(R?i:P?t.depth>.3:M==null?o.has(r.id)||r.degree>=Je&&t.depth>.55:N(r.id)))continue;n.globalAlpha=(r.id===M||r.id===L?1:.85)*(.4+.6*t.depth),n.fillStyle=u.content;let a=r.label.length>22?`${r.label.slice(0,21)}…`:r.label;n.fillText(a,t.sx,t.sy+t.sr+3)}n.globalAlpha=1,ee.current=B.map(e=>({id:e.node.id,sx:e.sx,sy:e.sy,sr:e.sr,depth:e.depth,updatedAtMs:e.node.updatedAtMs})),S.current=U,re=requestAnimationFrame(A)};return re=requestAnimationFrame(A),()=>{cancelAnimationFrame(re),O.disconnect(),ne.disconnect()}},[m,p,v,b,h,_]);let $=(0,R.useCallback)((e,t)=>{let n=q.current,r=be.current,i=lt(v,se.current),a=Date.now(),o=null,s=-1;for(let c of ee.current){if(n.active&&!(n.matches?.has(c.id)??!1)||!i(c.id)&&ct(c.updatedAtMs,r,a))continue;let l=e-c.sx,u=t-c.sy;l*l+u*u<=(c.sr+5)*(c.sr+5)&&c.depth>s&&(o=c.id,s=c.depth)}return o},[v]),ut=(0,R.useCallback)((e,t)=>{let n=null,r=1/0,i=-1;for(let a of S.current){let o=a.bx-a.ax,s=a.by-a.ay,c=o*o+s*s,l=0;c>0&&(l=((e-a.ax)*o+(t-a.ay)*s)/c,l=Math.max(0,Math.min(1,l)));let u=e-(a.ax+l*o),d=t-(a.ay+l*s),f=Math.sqrt(u*u+d*d);f>5||(f<r||f===r&&a.depth>i)&&(n={kind:a.kind,description:a.description},r=f,i=a.depth)}return n},[]),dt=e=>{let t=l.current.getBoundingClientRect();return{x:e.clientX-t.left,y:e.clientY-t.top}},ft=(0,R.useCallback)(e=>{if(e.button!==0||e.target.closest(`[data-graph-control]`))return;let t=x.current;T.current=null,t.dragging=!0,t.moved=!1,t.lastX=e.clientX,t.lastY=e.clientY,t.lastInteractAt=performance.now(),e.currentTarget.setPointerCapture(e.pointerId)},[]),pt=(0,R.useCallback)(e=>{let t=x.current;if(t.dragging){let n=e.clientX-t.lastX,r=e.clientY-t.lastY;(Math.abs(n)>2||Math.abs(r)>2)&&(t.moved=!0),t.yaw+=n*He,t.pitch=Math.max(-Ue,Math.min(Ue,t.pitch+r*He)),t.lastX=e.clientX,t.lastY=e.clientY,t.lastInteractAt=performance.now(),t.dirty=!0;return}let{x:n,y:r}=dt(e),i=$(n,r);if(i!==t.hoveredId&&(t.hoveredId=i,t.dirty=!0),i)j(null);else{let e=ut(n,r);j(e?st(e):null)}},[$,ut]),mt=(0,R.useCallback)(e=>{let t=x.current;if(!t.dragging)return;t.dragging=!1,t.lastInteractAt=performance.now(),t.dirty=!0;let n=e.currentTarget;if(n.hasPointerCapture(e.pointerId)&&n.releasePointerCapture(e.pointerId),!t.moved){let{x:t,y:n}=dt(e),r=$(t,n);if(r){let e=p.nodes.find(e=>e.id===r);e&&Q({id:e.id,label:e.label,updatedAtMs:e.updatedAtMs})}else k(null)}},[$,p.nodes,Q]),ht=(0,R.useCallback)(()=>{let e=x.current;j(null),!(e.dragging||e.hoveredId==null)&&(e.hoveredId=null,e.dirty=!0,k(null))},[]);(0,R.useEffect)(()=>{let e=l.current;if(!e||!m)return;let t=e=>{if(e.target.closest?.(`[data-graph-panel]`))return;e.preventDefault();let t=x.current;t.zoom=Math.max(Ke,Math.min(qe,t.zoom*(1-e.deltaY/500))),t.lastInteractAt=performance.now(),t.dirty=!0};return e.addEventListener(`wheel`,t,{passive:!1}),()=>e.removeEventListener(`wheel`,t)},[m]);let gt=(0,R.useMemo)(()=>{let e=new Set(p.nodes.map(e=>e.kind));return ze.filter(t=>e.has(t))},[p.nodes]),_t=(0,R.useMemo)(()=>p.edges.some(e=>e.kind===`learned`),[p.edges]),vt=(0,R.useMemo)(()=>p.edges.some(e=>e.kind!==`learned`),[p.edges]);(0,R.useEffect)(()=>{!(vt&&_t)&&(!X.link||!X.learned)&&Se({link:!0,learned:!0})},[vt,_t,X]);let yt=d.data?.kind===`ready`&&!le,bt=p.nodes.length,xt=p.edges.length,St=new Set(h.values()).size,Ct=(e,t)=>`${e} ${t}${e===1?``:`s`}`,wt=yt?null:ne??A,Tt=m&&(p.nodes.length>it||!!V),Et=!!(r||o)||m,Dt;return Dt=d.isLoading?(0,K.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,K.jsx)(`div`,{className:`h-6 w-6 animate-spin rounded-full border-2`,style:{borderColor:`var(--border-base)`,borderTopColor:`var(--content-tertiary)`}})}):d.isError?(0,K.jsx)(he,{title:c(`conceptGraphView.loadErrorTitle`),detail:c(`conceptGraphView.loadErrorDetail`)}):d.data?.kind===`unsupported`?(0,K.jsx)(Pe,{assistantId:e,onOpenThread:a}):m?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`canvas`,{ref:u,className:`absolute inset-0 h-full w-full`}),(p.nodes.length>it||Y!==`all`)&&xe?(0,K.jsx)(`div`,{"data-graph-control":!0,className:`absolute left-4 top-4 z-10`,children:(0,K.jsx)(Fe,{value:Y,onChange:ve})}):null,(0,K.jsx)(De,{nodeKinds:gt.filter(e=>e!==`concept`),coloredByTheme:gt.includes(`concept`),themes:g,hasLinks:vt,hasLearned:_t,...vt&&_t?{onToggleLink:()=>Se(e=>({...e,link:!e.link})),onToggleLearned:()=>Se(e=>({...e,learned:!e.learned})),linkActive:X.link,learnedActive:X.learned}:{}}),(0,K.jsx)(`div`,{className:`pointer-events-none absolute bottom-4 right-4 text-[11px]`,style:{color:`var(--content-tertiary)`},children:c(`conceptGraphView.dragToRotateHint`)}),f?.truncated?(0,K.jsx)(`div`,{className:`pointer-events-none absolute bottom-4 left-1/2 -translate-x-1/2 rounded-full px-3 py-1 text-[11px]`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 82%, transparent)`,border:`1px solid var(--border-base)`,color:`var(--content-tertiary)`},children:c(`conceptGraphView.truncatedNotice`,{count:p.nodes.length})}):null,(0,K.jsxs)(`div`,{"data-graph-control":!0,className:`absolute right-4 top-4 flex flex-col gap-1`,children:[(0,K.jsx)(i,{variant:`ghost`,iconOnly:(0,K.jsx)(ce,{}),onClick:()=>Oe(1.25),"aria-label":c(`conceptGraphView.zoomInAriaLabel`),tooltip:c(`conceptGraphView.zoomInAriaLabel`)}),(0,K.jsx)(i,{variant:`ghost`,iconOnly:(0,K.jsx)(I,{}),onClick:()=>Oe(.8),"aria-label":c(`conceptGraphView.zoomOutAriaLabel`),tooltip:c(`conceptGraphView.zoomOutAriaLabel`)}),(0,K.jsx)(i,{variant:`ghost`,iconOnly:(0,K.jsx)(ie,{}),onClick:Ee,"aria-label":c(`conceptGraphView.resetViewAriaLabel`),tooltip:c(`conceptGraphView.resetViewAriaLabel`)})]})]}):(0,K.jsx)(he,{title:c(`conceptGraphView.emptyTitle`),detail:c(`conceptGraphView.emptyDetail`)}),(0,K.jsxs)(`div`,{className:`@container flex select-none flex-col overflow-hidden rounded-xl ${t??``}`,style:{backgroundColor:`var(--surface-base)`},children:[Et?(0,K.jsxs)(`div`,{className:`flex h-12 flex-none items-center gap-2 px-3`,style:{borderBottom:`1px solid var(--border-base)`},children:[r?(0,K.jsx)(i,{variant:`ghost`,iconOnly:n?(0,K.jsx)(L,{}):(0,K.jsx)(re,{}),onClick:r,"aria-label":c(n?`conceptGraphView.exitFullscreenAriaLabel`:`conceptGraphView.enterFullscreenAriaLabel`),tooltip:c(n?`conceptGraphView.exitFullscreenAriaLabel`:`conceptGraphView.enterFullscreenAriaLabel`)}):null,Tt?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(i,{variant:`ghost`,iconOnly:(0,K.jsx)(ae,{}),onClick:()=>de(!0),"aria-label":c(`conceptGraphView.searchConceptsAriaLabel`),tooltip:c(`conceptGraphView.searchConceptsAriaLabel`),className:U?`hidden`:`@2xl:hidden`}),(0,K.jsxs)(`div`,{className:`relative ${U?``:`hidden @2xl:block`}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5 rounded-full px-2.5 py-1`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 82%, transparent)`,border:`1px solid var(--border-base)`},children:[(0,K.jsx)(ae,{size:14,"aria-hidden":!0,style:{color:`var(--content-tertiary)`}}),(0,K.jsx)(`input`,{ref:fe,type:`text`,value:V,onChange:e=>{let t=e.target.value;t.trim()&&!W.current&&(B(`search`),W.current=!0),H(t)},onKeyDown:e=>{e.key===`Escape`?(V||U)&&(e.preventDefault(),e.stopPropagation(),H(``),de(!1)):e.key===`Enter`&&J.length>0&&(e.preventDefault(),Z(J[0].id))},placeholder:c(`conceptGraphView.searchConceptsPlaceholder`),"aria-label":c(`conceptGraphView.searchConceptsAriaLabel`),className:`w-36 bg-transparent text-[12px] outline-none placeholder:text-[var(--content-tertiary)]`,style:{color:`var(--content-default)`}}),V?(0,K.jsx)(`span`,{className:`text-[11px] tabular-nums`,style:{color:`var(--content-tertiary)`},children:G?.size??0}):null,V||U?(0,K.jsx)(`button`,{type:`button`,onClick:()=>{H(``),de(!1)},"aria-label":c(`conceptGraphView.clearSearchAriaLabel`),className:`flex items-center`,style:{color:`var(--content-tertiary)`},children:(0,K.jsx)(F,{size:13})}):null]}),V&&J.length>0?(0,K.jsx)(`ul`,{className:`absolute left-0 top-full z-30 mt-1.5 flex max-h-56 w-52 list-none flex-col overflow-y-auto rounded-xl py-1`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 92%, transparent)`,border:`1px solid var(--border-base)`},children:J.map(e=>(0,K.jsx)(`li`,{children:(0,K.jsx)(`button`,{type:`button`,onClick:()=>{Q({id:e.id,label:e.label,updatedAtMs:e.updatedAtMs}),H(``),de(!1)},className:`block w-full truncate px-3 py-1 text-left text-[12px] hover:bg-[color-mix(in_srgb,var(--content-tertiary)_14%,transparent)]`,style:{color:`var(--content-default)`},children:e.label})},e.id))}):null]})]}):null,(0,K.jsx)(`div`,{className:`pointer-events-none mx-auto min-w-0`,children:wt?(0,K.jsx)(`div`,{className:`truncate rounded-full px-3 py-1 text-[12px]`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 82%, transparent)`,border:`1px solid var(--border-base)`,color:`var(--content-default)`},children:wt}):m&&!yt&&!U?(0,K.jsxs)(`div`,{className:`rounded-full px-3 py-1 text-[11px] tabular-nums`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 82%, transparent)`,border:`1px solid var(--border-base)`,color:`var(--content-tertiary)`},children:[(0,K.jsxs)(`span`,{className:`@max-md:hidden`,children:[Ct(bt,`neuron`),` · `,Ct(xt,`synapse`),` ·`,` `,Ct(St,`lobe`)]}),(0,K.jsxs)(`span`,{className:`hidden @max-md:inline`,children:[bt,` · `,xt,` · `,St]})]}):null}),o?(0,K.jsx)(`div`,{className:`flex-none`,children:o}):null]}):null,(0,K.jsxs)(`div`,{ref:l,className:`relative min-h-0 flex-1`,style:{backgroundImage:`radial-gradient(circle at center, color-mix(in srgb, var(--content-tertiary) 8%, transparent), transparent 62%)`,touchAction:`none`,cursor:m?`grab`:`default`},onPointerDown:m?ft:void 0,onPointerMove:m?pt:void 0,onPointerUp:m?mt:void 0,onPointerCancel:m?mt:void 0,onPointerLeave:m?ht:void 0,children:[yt?(0,K.jsx)(Te,{onDismiss:ue}):null,Dt,m&&P?(0,K.jsx)(we,{assistantId:e,node:P,trail:M,neighbors:Le,onTravel:Ie,onCrumb:Ne,onClose:Me,onOpenThread:a}):null]})]})}async function dt(e,t){let{data:r}=await n({path:{assistant_id:e},body:{content:t},throwOnError:!0});return r}function ft({open:e,onOpenChange:t,assistantId:n,onCreated:r}){let{t:a}=E(`intelligence`),o=T(),[s,c]=(0,R.useState)(``),[l,d]=(0,R.useState)(!1),f=(0,R.useCallback)(async()=>{let e=s.trim();if(e){d(!0);try{let i=await dt(n,e);if(!i.success){h.error(i.message||a(`createMemoryModal.saveError`));return}h.success(i.pendingNodeId?a(`createMemoryModal.savedFoundToast`):a(`createMemoryModal.savedPendingToast`)),c(``),t(!1),r?.(i.pendingNodeId),await Promise.all([o.invalidateQueries({queryKey:y(n).queryKey}),o.invalidateQueries({queryKey:g(n).queryKey})])}catch(e){let t=e instanceof Error?e.message:a(`createMemoryModal.createError`);h.error(t)}finally{d(!1)}}},[n,s,t,r,o,a]);return(0,K.jsx)(u.Root,{open:e,onOpenChange:t,children:(0,K.jsxs)(u.Content,{size:`sm`,children:[(0,K.jsx)(u.Header,{children:(0,K.jsx)(u.Title,{children:a(`createMemoryModal.title`)})}),(0,K.jsx)(u.Body,{children:(0,K.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,K.jsx)(v,{label:a(`createMemoryModal.contentLabel`),placeholder:a(`createMemoryModal.contentPlaceholder`),value:s,onChange:e=>c(e.target.value),disabled:l,rows:3,fullWidth:!0}),(0,K.jsx)(x,{as:`p`,variant:`body-medium-lighter`,className:`text-(--content-secondary)`,children:a(`createMemoryModal.helperText`)})]})}),(0,K.jsxs)(u.Footer,{children:[(0,K.jsx)(u.Close,{asChild:!0,children:(0,K.jsx)(i,{variant:`outlined`,disabled:l,children:a(`createMemoryModal.cancel`)})}),(0,K.jsx)(i,{variant:`primary`,onClick:f,disabled:l||!s.trim(),leftIcon:l?(0,K.jsx)(se,{className:`animate-spin`}):void 0,children:a(l?`createMemoryModal.creating`:`createMemoryModal.create`)})]})]})})}function pt({onOpenThread:e}){let{t}=E(`intelligence`),n=m(),[r,a]=(0,R.useState)(!1),o=(0,R.useRef)(null),s=w(y(n)),c=w(g(n)),l=s.data?.kind===`ready`&&c.data?.kind===`ready`,u=(0,R.useRef)(!1);return(0,R.useEffect)(()=>{u.current||(u.current=!0,B(`opened`))},[]),(0,K.jsxs)(`div`,{className:`relative flex h-full min-h-0 flex-col`,children:[(0,K.jsx)(ut,{assistantId:n,className:`h-full w-full`,onOpenThread:e,handleRef:o,headerAction:l?(0,K.jsx)(i,{variant:`primary`,size:`compact`,leftIcon:(0,K.jsx)(j,{}),onClick:()=>a(!0),children:t(`memoryPage.createMemory`)}):void 0}),l?(0,K.jsx)(ft,{open:r,onOpenChange:a,assistantId:n,onCreated:e=>{e&&o.current?.focusNode(e)}}):null]})}function mt(){let e=D();return(0,K.jsx)(pt,{onOpenThread:t=>{B(`chat_from_node`),f(e,{prompt:t})}},m())}export{mt as MemoryPageRoute};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Ju as t,Sx as n,Vg as r,Wg as i,Z as a,_b as o,bb as s,dd as c,ib as l,is as u,ix as d,kn as f,lc as p,li as m,nx as h,os as g,ox as _,px as v,ss as y,vb as b,xx as x,zo as ee}from"./app-BTYvw9j7.js";import{I as S,Xn as C,Zn as w,er as T,j as E}from"./vendor-B2dSzLzU.js";import{f as D,t as te,x as O}from"./react-B9IgSVeK.js";import{An as ne,Fn as re,Gi as k,Hi as A,It as j,Q as M,Tt as ie,Wi as N,_t as ae,ht as P,i as F,kt as oe,n as I,qn as se,t as ce,xn as L}from"./icons-bnwMda87.js";var R=e(O(),1),z={x:600,y:450},le=`memory_tab_v1`,ue=crypto.randomUUID();function B(e){typeof window>`u`||t()&&m([{type:`onboarding`,daemon_event_id:crypto.randomUUID(),recorded_at:Date.now(),screen:`memory`,session_id:ue,step_name:e,funnel_version:le}])}var V=Math.PI*(3-Math.sqrt(5)),H=7,U=2.4,de=34,fe=10;function W(e){return Math.min(de,H+U*Math.sqrt(e))}function pe(e){return e===`concept`||e===`skill`||e===`capability`||e===`pending`?e:`other`}function G(e){return e===`link`||e===`learned`?e:`other`}function me(e,t={}){let n=t.center??z,r=e.nodes,i=r.length;if(i===0)return{nodes:[],edges:[]};let a=new Map;r.forEach((e,t)=>a.set(e.id,t));let o=e.edges.filter(e=>e.source!==e.target&&a.has(e.source)&&a.has(e.target)),s=Array(i).fill(0),c=[];for(let e of o){let t=a.get(e.source),n=a.get(e.target);s[t]++,s[n]++,c.push([t,n])}let l=r.map((e,t)=>W(s[t])),u=70+26*Math.sqrt(i),d=r.map((e,t)=>{let r=(t+.5)/i,a=Math.acos(1-2*r),o=t*V,s=u*Math.cbrt(r),c=Math.sin(a);return{x:n.x+s*c*Math.cos(o),y:n.y+s*c*Math.sin(o),z:s*Math.cos(a),vx:0,vy:0,vz:0}}),f=t.iterations??Math.max(90,Math.min(340,Math.round(46e3/i))),p=.011,m=.82,h=.5,g=1,_=1-.001**(1/f);for(let e=0;e<f;e++){for(let e=0;e<i;e++){let t=d[e];for(let n=e+1;n<i;n++){let r=d[n],i=t.x-r.x,a=t.y-r.y,o=t.z-r.z,s=i*i+a*a+o*o;s<.01&&(i=(e-n)*.1+.1,a=.1,o=.05,s=i*i+a*a+o*o);let c=Math.sqrt(s),l=6400/s,u=i/c*l,f=a/c*l,p=o/c*l;t.vx+=u,t.vy+=f,t.vz+=p,r.vx-=u,r.vy-=f,r.vz-=p}}for(let[e,t]of c){let n=d[e],r=d[t],i=r.x-n.x,a=r.y-n.y,o=r.z-n.z,s=Math.sqrt(i*i+a*a+o*o)||.01,c=.05*(s-140),l=i/s*c,u=a/s*c,f=o/s*c;n.vx+=l,n.vy+=u,n.vz+=f,r.vx-=l,r.vy-=u,r.vz-=f}for(let e=0;e<i;e++){let t=d[e];t.vx+=(n.x-t.x)*p,t.vy+=(n.y-t.y)*p,t.vz+=(0-t.z)*p,t.x+=t.vx*g*h,t.y+=t.vy*g*h,t.z+=t.vz*g*h,t.vx*=m,t.vy*=m,t.vz*=m}g*=1-_}for(let e=0;e<10;e++){let e=!1;for(let t=0;t<i;t++){let n=d[t];for(let r=t+1;r<i;r++){let i=d[r],a=i.x-n.x,o=i.y-n.y,s=i.z-n.z,c=Math.sqrt(a*a+o*o+s*s),u=l[t]+l[r]+fe;if(c>=u)continue;c<.01&&(a=(r-t)*.1+.1,o=.1,s=.05,c=Math.sqrt(a*a+o*o+s*s));let f=(u-c)/2,p=a/c*f,m=o/c*f,h=s/c*f;n.x-=p,n.y-=m,n.z-=h,i.x+=p,i.y+=m,i.z+=h,e=!0}}if(!e)break}return{nodes:r.map((e,t)=>{let n={id:e.id,x:d[t].x,y:d[t].y,z:d[t].z,radius:l[t],label:e.label,kind:pe(e.kind),degree:s[t]};return e.summary&&(n.summary=e.summary),e.updatedAtMs!==void 0&&(n.updatedAtMs=e.updatedAtMs),n}),edges:o.map((e,t)=>{let n={id:`${e.source}__${e.target}__${t}`,fromId:e.source,toId:e.target,kind:G(e.kind),directed:e.directed??!1};return e.description&&(n.description=e.description),n})}}var K=te();function he({title:e,detail:t,action:n}){return(0,K.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2 px-6 text-center`,children:[(0,K.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),t?(0,K.jsx)(`p`,{className:`max-w-sm text-body-small-default`,style:{color:`var(--content-tertiary)`},children:t}):null,n?(0,K.jsx)(`div`,{className:`mt-2`,children:n}):null]})}function q(){return S(`getMemoryGraphNode.failureMessage`,{ns:`intelligence`})}function J(e,t){return C({queryKey:[`memory-graph-node`,e,t],enabled:!!(e&&t),queryFn:async()=>{let{data:n,error:r,response:a}=await i({path:{assistant_id:e},query:{id:t??``},throwOnError:!1});if(b(a,r,q()),!a.ok)throw new o(a.status,s(r,a,q()));return n??{found:!1}}})}var ge={concept:`#467CC8`,skill:`#DB4B77`,capability:`#0E9B8B`,pending:`#F1B21E`,other:`#8D99A5`},_e=[`#467CC8`,`#E86B40`,`#7A5AF5`,`#22B8CF`,`#3DB85E`,`#E9C91A`,`#E83F5B`,`#6ECF87`,`#F39B74`,`#F5C94E`],Y={concept:`conceptGraphConstants.nodeKind.concept`,skill:`conceptGraphConstants.nodeKind.skill`,capability:`conceptGraphConstants.nodeKind.capability`,pending:`conceptGraphConstants.nodeKind.pending`,other:`conceptGraphConstants.nodeKind.other`};function ve(e){return S(Y[e],{ns:`intelligence`})}var ye=`#F1B21E`;function be(e){if(e.length<=4)return e.map((e,t)=>({node:e,index:t}));let t=e.slice(-3).map((t,n)=>({node:t,index:e.length-3+n}));return[{node:e[0],index:0},`ellipsis`,...t]}function xe(e){return e?new Date(e).toLocaleDateString(`en-GB`,{day:`numeric`,month:`short`,year:`numeric`}):null}var X=600;function Se(e){let t=e.slice(0,X),n=t.lastIndexOf(`
2
+ `);return n>X/2?e.slice(0,n):t}function Ce({content:e}){let[t,r]=(0,R.useState)(!1),{t:i}=E(`intelligence`);return e.length<=X?(0,K.jsx)(f,{content:e}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(f,{content:t?e:Se(e)}),(0,K.jsx)(n,{variant:`ghost`,size:`compact`,className:`-ml-2 mt-1`,onClick:()=>r(e=>!e),rightIcon:t?(0,K.jsx)(A,{size:16,"aria-hidden":!0}):(0,K.jsx)(k,{size:16,"aria-hidden":!0}),children:i(t?`conceptDetailPanel.showLess`:`conceptDetailPanel.readFullNote`)})]})}function we({assistantId:e,node:t,trail:r,neighbors:i,onTravel:a,onCrumb:o,onClose:s,onOpenThread:c}){let{t:l}=E(`intelligence`),u=w(J(e,t.id)),d=u.data,f=xe(t.updatedAtMs),p=d?.title??t.label,m=be(r);return(0,R.useEffect)(()=>{let e=e=>{e.key===`Escape`&&!e.defaultPrevented&&(e.preventDefault(),s())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[s]),(0,K.jsxs)(`div`,{"data-graph-panel":!0,className:`absolute inset-0 z-20 flex justify-end`,onPointerDown:e=>e.stopPropagation(),onPointerMove:e=>e.stopPropagation(),onPointerUp:e=>e.stopPropagation(),children:[(0,K.jsx)(`div`,{className:`absolute inset-0`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 16%, transparent)`},onClick:s}),(0,K.jsxs)(`aside`,{className:`relative flex h-full min-h-0 w-full max-w-md flex-col overflow-hidden`,style:{backgroundColor:`var(--surface-lift)`,borderLeft:`1px solid var(--border-base)`},children:[r.length>1?(0,K.jsxs)(`nav`,{"aria-label":l(`conceptDetailPanel.trailAriaLabel`),className:`flex shrink-0 items-center gap-1 overflow-hidden border-b px-5 py-2 text-body-small-default`,style:{borderColor:`var(--border-base)`,color:`var(--content-tertiary)`},children:[(0,K.jsx)(`button`,{type:`button`,onClick:()=>o(r.length-2),"aria-label":l(`conceptDetailPanel.backAriaLabel`),className:`-ml-1 mr-0.5 flex shrink-0 items-center rounded p-0.5 hover:bg-[color-mix(in_srgb,var(--content-tertiary)_14%,transparent)]`,style:{color:`var(--content-tertiary)`},children:(0,K.jsx)(N,{size:16,"aria-hidden":!0})}),m.map((e,t)=>(0,K.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1`,children:[t>0?(0,K.jsx)(`span`,{"aria-hidden":!0,children:`›`}):null,e===`ellipsis`?(0,K.jsx)(`span`,{"aria-hidden":!0,children:`…`}):e.index===r.length-1?(0,K.jsx)(`span`,{"aria-current":`page`,className:`max-w-[9rem] truncate`,style:{color:`var(--content-default)`},children:e.node.label}):(0,K.jsx)(`button`,{type:`button`,onClick:()=>o(e.index),className:`max-w-[8rem] truncate rounded hover:underline`,style:{color:`var(--content-tertiary)`},children:e.node.label})]},e===`ellipsis`?`ellipsis`:e.index))]}):null,(0,K.jsxs)(`header`,{className:`flex shrink-0 items-start justify-between gap-3 border-b px-5 py-4`,style:{borderColor:`var(--border-base)`},children:[(0,K.jsxs)(`div`,{className:`min-w-0`,children:[(0,K.jsx)(`h2`,{className:`truncate text-title-small`,style:{color:`var(--content-default)`},title:d?.title??t.label,children:d?.title??t.label}),f?(0,K.jsx)(`p`,{className:`mt-0.5 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:l(`conceptDetailPanel.updated`,{date:f})}):null]}),(0,K.jsx)(n,{variant:`ghost`,iconOnly:(0,K.jsx)(F,{"aria-hidden":!0}),onClick:s,"aria-label":l(`conceptDetailPanel.closeAriaLabel`),tintColor:`var(--content-tertiary)`})]}),(0,K.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-5 py-4`,style:{touchAction:`pan-y`},children:[u.isLoading?(0,K.jsx)(`div`,{className:`flex justify-center py-8`,children:(0,K.jsx)(`div`,{className:`h-5 w-5 animate-spin rounded-full border-2`,style:{borderColor:`var(--border-base)`,borderTopColor:`var(--content-tertiary)`}})}):u.isError?(0,K.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:l(`conceptDetailPanel.loadError`)}):d?.found&&d.content?.trim()?(0,K.jsx)(Ce,{content:d.content},t.id):(0,K.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:l(`conceptDetailPanel.emptyContent`)}),i.length>0?(0,K.jsxs)(`section`,{className:`mt-6 border-t pt-4`,style:{borderColor:`var(--border-base)`},children:[(0,K.jsxs)(`div`,{className:`mb-2 flex items-baseline justify-between gap-2`,children:[(0,K.jsx)(`h3`,{className:`text-body-small-default uppercase tracking-wide`,style:{color:`var(--content-tertiary)`},children:l(`conceptDetailPanel.wiredTo`)}),(0,K.jsx)(`span`,{className:`text-body-small-default tabular-nums`,style:{color:`var(--content-tertiary)`},children:l(`conceptDetailPanel.connectionCount`,{count:i.length})})]}),(0,K.jsx)(`ul`,{className:`flex list-none flex-col gap-0.5`,children:i.map(e=>(0,K.jsx)(`li`,{children:(0,K.jsxs)(`button`,{type:`button`,onClick:()=>a({id:e.id,label:e.label}),className:`flex w-full items-center gap-2 rounded-lg px-2 py-1.5 text-left text-body-medium-default hover:bg-[color-mix(in_srgb,var(--content-tertiary)_12%,transparent)]`,style:{color:`var(--content-default)`},children:[(0,K.jsx)(`span`,{"aria-hidden":!0,className:`h-1.5 w-1.5 shrink-0 rounded-full`,style:{backgroundColor:e.kind===`learned`?ye:`var(--content-tertiary)`}}),(0,K.jsx)(`span`,{className:`truncate`,children:e.label})]})},e.id))})]}):null]}),c?(0,K.jsxs)(`footer`,{className:`flex shrink-0 gap-2 border-t px-5 py-3`,style:{borderColor:`var(--border-base)`},children:[(0,K.jsx)(n,{variant:`outlined`,size:`regular`,className:`flex-1`,leftIcon:(0,K.jsx)(ne,{size:16,"aria-hidden":!0}),onClick:()=>c(l(`conceptDetailPanel.askPrompt`,{title:p})),children:l(`conceptDetailPanel.askAboutThis`)}),(0,K.jsx)(n,{variant:`primary`,size:`regular`,className:`flex-1`,leftIcon:(0,K.jsx)(M,{size:16,"aria-hidden":!0}),onClick:()=>c(l(`conceptDetailPanel.refinePrompt`,{title:p})),children:l(`conceptDetailPanel.refine`)})]}):null]})]})}function Te({onDismiss:e}){let{t}=E(`intelligence`);return(0,K.jsxs)(`div`,{"data-graph-control":!0,className:`pointer-events-auto absolute left-1/2 top-4 z-10 flex w-[min(30rem,calc(100%-6rem))] -translate-x-1/2 items-start gap-3 rounded-xl px-4 py-3`,style:{backgroundColor:`var(--surface-lift)`,border:`1px solid var(--border-base)`,boxShadow:`0 4px 12px rgba(0, 0, 0, 0.25)`},children:[(0,K.jsx)(`span`,{className:`mt-0.5 shrink-0`,style:{color:`var(--primary-base)`},"aria-hidden":!0,children:(0,K.jsx)(M,{size:18})}),(0,K.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,K.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:t(`conceptGraphIntroBanner.title`)}),(0,K.jsx)(`p`,{className:`mt-0.5 text-body-small-lighter`,style:{color:`var(--content-tertiary)`},children:t(`conceptGraphIntroBanner.description`)})]}),(0,K.jsx)(n,{variant:`ghost`,iconOnly:(0,K.jsx)(F,{"aria-hidden":!0}),onClick:e,"aria-label":t(`conceptGraphIntroBanner.dismissAriaLabel`),tintColor:`var(--content-tertiary)`})]})}var Ee=8;function De({nodeKinds:e,coloredByTheme:t,themes:n,hasLinks:r,hasLearned:i,onToggleLink:a,onToggleLearned:o,linkActive:s,learnedActive:c}){let{t:l}=E(`intelligence`);return(0,K.jsxs)(`div`,{"data-graph-control":!0,className:`pointer-events-none absolute bottom-4 left-4 flex flex-col gap-1.5 rounded-lg px-3 py-2`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 78%, transparent)`,border:`1px solid var(--border-base)`},children:[e.map(e=>(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`inline-block h-2.5 w-2.5 rounded-full`,style:{backgroundColor:ge[e]}}),(0,K.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:ve(e)})]},e)),t&&(n&&n.length>0?(0,K.jsxs)(K.Fragment,{children:[n.slice(0,Ee).map((e,t)=>(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`inline-block h-2.5 w-2.5 shrink-0 rounded-full`,style:{backgroundColor:e.color}}),(0,K.jsx)(`span`,{className:`max-w-[9rem] truncate text-[11px]`,style:{color:`var(--content-tertiary)`},title:e.concepts?.join(` · `)??e.name,children:e.name})]},t)),n.length>Ee&&(0,K.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:l(`conceptGraphLegend.moreThemes`,{count:n.length-Ee})})]}):(0,K.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:l(`conceptGraphLegend.coloredByTheme`)})),(e.length>0||t)&&(r||i)&&(0,K.jsx)(`div`,{className:`mt-0.5 border-t pt-1.5`,style:{borderColor:`var(--border-base)`}}),r&&(0,K.jsx)(Oe,{swatchStyle:{borderTop:`2px solid var(--content-tertiary)`},label:l(`conceptGraphLegend.link`),onToggle:a,active:s}),i&&(0,K.jsx)(Oe,{swatchStyle:{borderTop:`2px dashed #F1B21E`},label:l(`conceptGraphLegend.learned`),onToggle:o,active:c})]})}function Oe({swatchStyle:e,label:t,onToggle:n,active:r}){let i=(0,K.jsx)(`span`,{className:`inline-block h-0 w-4`,style:e}),a=(0,K.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:t});return n?(0,K.jsxs)(`button`,{type:`button`,onClick:n,"aria-pressed":r,className:`pointer-events-auto flex cursor-pointer items-center gap-2 border-0 bg-transparent p-0 transition-opacity`,style:{opacity:r===!1?.4:1},children:[i,a]}):(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[i,a]})}var Z=8;function ke(e,t){let n=e.length;if(n===0)return new Map;let r=new Map;e.forEach((e,t)=>r.set(e.id,t));let i=e.map(()=>[]);for(let e of t){let t=r.get(e.fromId),n=r.get(e.toId);t===void 0||n===void 0||t===n||(i[t].push(n),i[n].push(t))}let a=e.map((e,t)=>t);for(let e=0;e<Z;e++)for(let e=0;e<n;e++){let t=i[e];if(t.length===0)continue;let n=new Map;for(let e of t)n.set(a[e],(n.get(a[e])??0)+1);let r=a[e],o=-1;for(let[e,t]of n)(t>o||t===o&&e<r)&&(r=e,o=t);a[e]=r}let o=new Map,s=new Map;return e.forEach((e,t)=>{let n=a[t],r=o.get(n);r===void 0&&(r=o.size,o.set(n,r)),s.set(e.id,r)}),s}function Q(){return S(`memoryUnavailable.prompts.v2`,{ns:`intelligence`})}function Ae(){return S(`memoryUnavailable.prompts.v1`,{ns:`intelligence`})}function je(){return S(`memoryUnavailable.prompts.enable`,{ns:`intelligence`})}function Me(){return{title:S(`memoryUnavailable.statusError.title`,{ns:`intelligence`}),detail:S(`memoryUnavailable.statusError.detail`,{ns:`intelligence`}),action:`retry`}}function Ne(e){return e===`off`?{title:S(`memoryUnavailable.off.title`,{ns:`intelligence`}),detail:S(`memoryUnavailable.off.detail`,{ns:`intelligence`}),action:`settings`,prompt:je()}:e===`v1`||e===`v2`?{title:S(`memoryUnavailable.legacy.title`,{ns:`intelligence`}),detail:S(`memoryUnavailable.legacy.detail`,{ns:`intelligence`}),action:`upgrade`,prompt:e===`v1`?Ae():Q()}:{title:S(`memoryUnavailable.unknown.title`,{ns:`intelligence`}),detail:S(`memoryUnavailable.unknown.detail`,{ns:`intelligence`}),action:`none`}}function Pe({assistantId:e,onOpenThread:t}){let{t:r}=E(`intelligence`),i=D(),a=T(),o=w(g(e));(0,R.useEffect)(()=>{u(a,e)},[a,e]);let s=ee(`memoryOptOut`),d=c.use.settingsDeveloperNav(),f=s&&d===!0;if(o.isLoading)return null;let p=o.data?.kind===`ready`?o.data.tier:void 0,m=o.isError?Me():Ne(p),h=m.prompt,_=null;return m.action===`upgrade`&&t&&h?_=(0,K.jsx)(n,{variant:`primary`,size:`compact`,leftIcon:(0,K.jsx)(M,{}),onClick:()=>{B(`upgrade_v3_clicked`),t(h)},children:r(`memoryUpgradePrompt.upgradeMemory`)}):m.action===`retry`?_=(0,K.jsx)(n,{variant:`outlined`,size:`compact`,leftIcon:(0,K.jsx)(oe,{}),onClick:()=>{o.refetch()},children:r(`memoryUpgradePrompt.tryAgain`)}):m.action===`settings`&&f?_=(0,K.jsx)(n,{variant:`outlined`,size:`compact`,leftIcon:(0,K.jsx)(P,{}),onClick:()=>i(`${l.settings.developer}?tab=memory`),children:r(`memoryUpgradePrompt.memorySettings`)}):m.action===`settings`&&t&&h&&(_=(0,K.jsx)(n,{variant:`primary`,size:`compact`,leftIcon:(0,K.jsx)(M,{}),onClick:()=>{B(`enable_memory_clicked`),t(h)},children:r(`memoryUpgradePrompt.turnMemoryOn`)})),(0,K.jsx)(he,{title:m.title,detail:m.detail,action:_})}function Fe({value:e,onChange:t}){let{t:n}=E(`intelligence`),r=[{value:`all`,label:n(`recencyLens.all`)},{value:`month`,label:n(`recencyLens.month`)},{value:`week`,label:n(`recencyLens.week`)}];return(0,K.jsx)(_,{ariaLabel:n(`recencyLens.ariaLabel`),items:r,value:e,onChange:t,className:`!w-auto [&>*]:!flex-none`})}var Ie=`vellum:memoryGraph:introDismissed:`;function Le(e){return`${Ie}${e}`}function $(e){if(!e)return!0;try{return window.localStorage.getItem(Le(e))===`1`}catch{return!0}}function Re(e){let[t,n]=(0,R.useState)(()=>$(e));return(0,R.useEffect)(()=>{n($(e))},[e]),[t,(0,R.useCallback)(()=>{n(!0);try{window.localStorage.setItem(Le(e),`1`)}catch{}},[e])]}var ze=[`concept`,`skill`,`capability`,`pending`,`other`],Be=.13,Ve=2600,He=.006,Ue=1.15,We=3,Ge=.32,Ke=.45,qe=3,Je=4,Ye=1440*60*1e3,Xe=14*Ye,Ze=12,Qe=2*Ye,$e=80,et=340,tt=.12,nt=.05,rt=.03,it=12,at=2600;function ot(e){let t=getComputedStyle(e);return{content:t.getPropertyValue(`--content-default`).trim()||`#e5e7eb`,tertiary:t.getPropertyValue(`--content-tertiary`).trim()||`#8792a0`}}function st(e){return e.kind===`learned`?`Learned association`:e.description??`Linked concepts`}function ct(e,t,n){return t==null?!1:e==null||n-e>t}function lt(e,t){let n=t?e.get(t):void 0;return e=>t!=null&&(e===t||(n?.has(e)??!1))}function ut({assistantId:e,className:t,isFullscreen:r,onToggleFullscreen:i,onOpenThread:a,headerAction:o,handleRef:s}){let{t:c}=E(`intelligence`),l=(0,R.useRef)(null),u=(0,R.useRef)(null),d=w(y(e)),f=d.data?.kind===`ready`?d.data.graph:null,p=(0,R.useMemo)(()=>f?me(f):{nodes:[],edges:[]},[f]),m=d.data?.kind===`ready`&&p.nodes.length>0,h=(0,R.useMemo)(()=>ke(p.nodes,p.edges),[p.nodes,p.edges]),g=(0,R.useMemo)(()=>{let e=new Map;for(let t of p.nodes){let n=h.get(t.id);if(n==null||t.degree===0)continue;let r=e.get(n);r?r.push(t):e.set(n,[t])}return[...e.entries()].map(([e,t])=>{let n=[...t].sort((e,t)=>t.degree-e.degree||(e.id<t.id?-1:1)).slice(0,3);return{hubId:n[0].id,color:_e[e%_e.length],name:n[0].label,concepts:n.map(e=>e.label),size:t.length}}).sort((e,t)=>t.size-e.size)},[h,p.nodes]),_=(0,R.useMemo)(()=>new Set(g.map(e=>e.hubId)),[g]),v=(0,R.useMemo)(()=>{let e=new Map,t=(t,n)=>{let r=e.get(t);r||(r=new Set,e.set(t,r)),r.add(n)};for(let e of p.edges)t(e.fromId,e.toId),t(e.toId,e.fromId);return e},[p.edges]),b=(0,R.useMemo)(()=>{if(p.nodes.length===0)return 1;let e=p.nodes.map(e=>{let t=e.x-z.x,n=e.y-z.y;return Math.sqrt(t*t+n*n+e.z*e.z)+e.radius}).sort((e,t)=>e-t),t=Math.min(e.length-1,Math.floor(e.length*.92));return Math.max(1,e[t])},[p.nodes]),x=(0,R.useRef)({yaw:.5,pitch:.32,zoom:1,hoveredId:null,dragging:!1,moved:!1,lastX:0,lastY:0,lastInteractAt:-1/0,dirty:!0}),ee=(0,R.useRef)([]),S=(0,R.useRef)([]),C=(0,R.useRef)({content:`#e5e7eb`,tertiary:`#8792a0`}),T=(0,R.useRef)(null),D=(0,R.useRef)(!1),te=(0,R.useRef)(null),O=(0,R.useRef)(null),[ne,k]=(0,R.useState)(null),[A,j]=(0,R.useState)(null),[M,N]=(0,R.useState)([]),P=M.at(-1)??null,oe=(0,R.useCallback)(e=>{B(`node_opened`),N(t=>[...t,e])},[]),se=(0,R.useRef)(null);(0,R.useEffect)(()=>{se.current=P?.id??null,x.current.dirty=!0},[P?.id]);let[le,ue]=Re(e),[V,H]=(0,R.useState)(``),[U,de]=(0,R.useState)(!1),fe=(0,R.useRef)(null);(0,R.useEffect)(()=>{U&&fe.current?.focus()},[U]);let W=(0,R.useRef)(!1),pe=V.trim().toLowerCase(),G=(0,R.useMemo)(()=>{if(!pe)return null;let e=new Set;for(let t of p.nodes)t.label.toLowerCase().includes(pe)&&e.add(t.id);return e},[pe,p.nodes]),q=(0,R.useRef)({active:!1,matches:null});(0,R.useEffect)(()=>{q.current={active:!!G,matches:G},x.current.dirty=!0},[G]),(0,R.useEffect)(()=>{V.trim()||(W.current=!1)},[V]);let J=(0,R.useMemo)(()=>!G||G.size===0?[]:p.nodes.filter(e=>G.has(e.id)).sort((e,t)=>t.degree-e.degree).slice(0,8),[G,p.nodes]),[Y,ve]=(0,R.useState)(`all`),be=(0,R.useRef)(null);(0,R.useEffect)(()=>{be.current=Y===`week`?7*Ye:Y===`month`?30*Ye:null,x.current.dirty=!0},[Y]);let xe=(0,R.useMemo)(()=>p.nodes.some(e=>e.updatedAtMs!=null),[p.nodes]);(0,R.useEffect)(()=>{!xe&&Y!==`all`&&ve(`all`)},[xe,Y]);let[X,Se]=(0,R.useState)({link:!0,learned:!0}),Ce=(0,R.useRef)(X);(0,R.useEffect)(()=>{Ce.current=X,x.current.dirty=!0},[X]),(0,R.useEffect)(()=>{H(``),ve(`all`),Se({link:!0,learned:!0}),N([]),W.current=!1},[e]);let Ee=(0,R.useCallback)(()=>{let e=x.current;e.yaw=.5,e.pitch=.32,e.zoom=1,e.lastInteractAt=-1/0,e.dirty=!0,k(null)},[]),Oe=(0,R.useCallback)(e=>{let t=x.current;t.zoom=Math.max(Ke,Math.min(qe,t.zoom*e)),t.lastInteractAt=performance.now(),t.dirty=!0},[]),Z=(0,R.useCallback)(e=>{T.current=e,x.current.lastInteractAt=performance.now(),x.current.dirty=!0},[]),Q=(0,R.useCallback)(e=>{oe(e),Z(e.id)},[oe,Z]),Ae=(0,R.useCallback)(e=>{te.current={id:e,start:performance.now()},Z(e),window.setTimeout(()=>{x.current.dirty=!0},at+60)},[Z]),je=(0,R.useCallback)(e=>{p.nodes.some(t=>t.id===e)?Ae(e):O.current=e},[p.nodes,Ae]);(0,R.useEffect)(()=>{let e=O.current;e&&p.nodes.some(t=>t.id===e)&&(O.current=null,Ae(e))},[p.nodes,Ae]),(0,R.useImperativeHandle)(s,()=>({focusNode:je}),[je]);let Me=(0,R.useCallback)(()=>{N([]),H(``),k(null),T.current=null,D.current=!0},[]),Ne=(0,R.useCallback)(e=>{H(``);let t=M.slice(0,e+1);N(t);let n=t.at(-1);n?Z(n.id):k(null)},[M,Z]),Ie=(0,R.useCallback)(e=>{H(``),Q(e)},[Q]),Le=(0,R.useMemo)(()=>{let e=P?.id;if(!e)return[];let t=v.get(e);if(!t||t.size===0)return[];let n=new Map(p.nodes.map(e=>[e.id,e.label])),r=new Map;for(let t of p.edges)t.fromId===e?r.set(t.toId,t.kind):t.toId===e&&r.set(t.fromId,t.kind);let i=[];for(let e of t){let t=n.get(e);t!=null&&i.push({id:e,label:t,kind:r.get(e)})}return i.sort((e,t)=>e.label.localeCompare(t.label)),i},[P?.id,v,p.nodes,p.edges]);(0,R.useEffect)(()=>{if(!m)return;let e=u.current,t=l.current;if(!e||!t)return;let n=e.getContext(`2d`);if(!n)return;let r=p.nodes,i=p.edges,a=h,o=_,s=v,c=new Set(r.map(e=>e.id)),d=b,f=window.matchMedia(`(prefers-reduced-motion: reduce)`).matches;C.current=ot(t);let g=Math.min(window.devicePixelRatio||1,2),y=0,w=0,E=()=>{let n=t.getBoundingClientRect();y=n.width,w=n.height,g=Math.min(window.devicePixelRatio||1,2),e.width=Math.max(1,Math.round(y*g)),e.height=Math.max(1,Math.round(w*g)),e.style.width=`${y}px`,e.style.height=`${w}px`,C.current=ot(t),x.current.dirty=!0};E();let O=new ResizeObserver(E);O.observe(t);let ne=new MutationObserver(()=>{C.current=ot(t),x.current.dirty=!0});ne.observe(document.documentElement,{attributes:!0,attributeFilter:[`data-theme`,`class`,`style`]});let re=0,k=0,A=e=>{let t=k?Math.min(.05,(e-k)/1e3):0;k=e;let l=x.current,u=C.current,p=Date.now(),m=T.current;if(!l.dragging&&e-l.lastInteractAt>Ve&&!f&&!m&&(l.yaw+=Be*t),m){let e=r.find(e=>e.id===m);if(!e)T.current=null;else{let t=e.x-z.x,n=e.y-z.y,r=e.z,i=-Math.atan2(t,r),a=Math.hypot(t,r),o=Math.max(-Ue,Math.min(Ue,Math.atan2(n,a))),s=Math.min(qe,1.6),c=f?1:.15,u=i-l.yaw;u=Math.atan2(Math.sin(u),Math.cos(u)),l.yaw+=u*c,l.pitch+=(o-l.pitch)*c,l.zoom+=(s-l.zoom)*c,l.dirty=!0,Math.abs(u)<.01&&Math.abs(o-l.pitch)<.01&&Math.abs(s-l.zoom)<.02&&(T.current=null)}}if(D.current&&!l.dragging){let e=f?1:.15;l.pitch+=(.32-l.pitch)*e,l.zoom+=(1-l.zoom)*e,l.dirty=!0,Math.abs(.32-l.pitch)<.01&&Math.abs(1-l.zoom)<.02&&(D.current=!1)}if(f&&!l.dirty){re=requestAnimationFrame(A);return}l.dirty=!1;let h=Math.cos(l.yaw),_=Math.sin(l.yaw),v=Math.cos(l.pitch),b=Math.sin(l.pitch),E=We*d,O=Math.min(y,w)*.88/(2*d)*l.zoom,ne=y/2,j=w/2;n.setTransform(g,0,0,g,0,0),n.clearRect(0,0,y,w);let M=l.hoveredId,ie=M?s.get(M):void 0,N=e=>!M||e===M||(ie?.has(e)??!1),ae=q.current,P=ae.active,F=e=>!P||(ae.matches?.has(e)??!1),oe=be.current,I=e=>ct(e.updatedAtMs,oe,p),ce=Ce.current,L=se.current,R=L!=null&&c.has(L),le=lt(s,R?L:null),ue=r.length<=$e?1:Math.max(tt,1-(r.length-$e)/(et-$e)*(1-tt)),B=Array(r.length);for(let e=0;e<r.length;e++){let t=r[e],n=t.x-z.x,i=t.y-z.y,a=t.z,o=n*h+a*_,s=-n*_+a*h,c=i*v-s*b,l=i*b+s*v,u=E/(E-l);B[e]={node:t,sx:ne+o*O*u,sy:j+c*O*u,sr:Math.max(1.2,t.radius*O*u),depth:Math.max(0,Math.min(1,(l+d)/(2*d)))}}let V=B.map((e,t)=>t).sort((e,t)=>B[e].depth-B[t].depth),H=new Map;for(let e of B)H.set(e.node.id,e);let U=[];n.lineCap=`round`;for(let e of i){let t=H.get(e.fromId),r=H.get(e.toId);if(!t||!r)continue;let i=e.kind===`learned`,a=L!=null&&(e.fromId===L||e.toId===L);if(!a&&(i?!ce.learned:!ce.link))continue;let o=P&&(!F(e.fromId)||!F(e.toId))||!a&&(I(t.node)||I(r.node)),s=M!=null&&(e.fromId===M||e.toId===M),c=(t.depth+r.depth)/2;!o&&(!R||a)&&U.push({ax:t.sx,ay:t.sy,bx:r.sx,by:r.sy,kind:e.kind,description:e.description,depth:c});let l=(i?.34:.28)*(.4+.6*c),d=i?l*ue:l,f;f=o?.03:R?a?.9:rt:M==null?d:s?.9:N(e.fromId)&&N(e.toId)?l:.05,n.globalAlpha=f,n.strokeStyle=i?ye:u.tertiary,n.lineWidth=(s||R&&a?2:1)*(.6+.6*c),n.setLineDash(i?[4,4]:[]),n.beginPath(),n.moveTo(t.sx,t.sy),n.lineTo(r.sx,r.sy),n.stroke()}n.setLineDash([]);for(let t of V){let r=B[t],i=r.node,o=i.kind===`concept`?_e[(a.get(i.id)??0)%_e.length]:ge[i.kind],s=P&&!F(i.id),c=le(i.id),l=s||I(i)&&!c,u=R?c&&!l:!l&&N(i.id),d=i.id===M,m=Ge+(1-Ge)*r.depth,h=R&&!c?m*nt:l?m*.08:u?m:m*.18,g=(d?16:i.degree>=Je?8:4)*r.depth,_=i.updatedAtMs;if(_){let n=p-_,i=Math.max(0,1-n/Xe);if(i>0){let a=i*Ze;!f&&n<Qe&&(a*=.55+.45*Math.sin(e/420+t*1.7)),g+=a*r.depth}}n.shadowColor=o,n.shadowBlur=u?g:0;let v=i.kind===`pending`;n.globalAlpha=h*(v?.3:.55),n.fillStyle=o,n.beginPath(),n.arc(r.sx,r.sy,r.sr,0,Math.PI*2),n.fill(),n.shadowBlur=0,n.globalAlpha=h,n.lineWidth=d?2.5:1.4,n.strokeStyle=o,n.setLineDash(v?[3,3]:[]),n.stroke(),n.setLineDash([]);let y=te.current;if(y&&y.id===i.id){let t=e-y.start;if(t>at)te.current=null;else if(f)n.globalAlpha=.7,n.lineWidth=1.5,n.beginPath(),n.arc(r.sx,r.sy,r.sr+7,0,Math.PI*2),n.stroke();else for(let e=0;e<3;e++){let i=(t-e*320)/1100;i<=0||i>=1||(n.globalAlpha=(1-i)*.8,n.lineWidth=1.5,n.beginPath(),n.arc(r.sx,r.sy,r.sr+i*46*r.depth,0,Math.PI*2),n.stroke())}}}n.shadowBlur=0,n.textAlign=`center`,n.textBaseline=`top`,n.font=`11px ui-sans-serif, system-ui, sans-serif`;for(let e of V){let t=B[e],r=t.node,i=le(r.id);if(P&&!F(r.id)||I(r)&&!i||!(R?i:P?t.depth>.3:M==null?o.has(r.id)||r.degree>=Je&&t.depth>.55:N(r.id)))continue;n.globalAlpha=(r.id===M||r.id===L?1:.85)*(.4+.6*t.depth),n.fillStyle=u.content;let a=r.label.length>22?`${r.label.slice(0,21)}…`:r.label;n.fillText(a,t.sx,t.sy+t.sr+3)}n.globalAlpha=1,ee.current=B.map(e=>({id:e.node.id,sx:e.sx,sy:e.sy,sr:e.sr,depth:e.depth,updatedAtMs:e.node.updatedAtMs})),S.current=U,re=requestAnimationFrame(A)};return re=requestAnimationFrame(A),()=>{cancelAnimationFrame(re),O.disconnect(),ne.disconnect()}},[m,p,v,b,h,_]);let $=(0,R.useCallback)((e,t)=>{let n=q.current,r=be.current,i=lt(v,se.current),a=Date.now(),o=null,s=-1;for(let c of ee.current){if(n.active&&!(n.matches?.has(c.id)??!1)||!i(c.id)&&ct(c.updatedAtMs,r,a))continue;let l=e-c.sx,u=t-c.sy;l*l+u*u<=(c.sr+5)*(c.sr+5)&&c.depth>s&&(o=c.id,s=c.depth)}return o},[v]),ut=(0,R.useCallback)((e,t)=>{let n=null,r=1/0,i=-1;for(let a of S.current){let o=a.bx-a.ax,s=a.by-a.ay,c=o*o+s*s,l=0;c>0&&(l=((e-a.ax)*o+(t-a.ay)*s)/c,l=Math.max(0,Math.min(1,l)));let u=e-(a.ax+l*o),d=t-(a.ay+l*s),f=Math.sqrt(u*u+d*d);f>5||(f<r||f===r&&a.depth>i)&&(n={kind:a.kind,description:a.description},r=f,i=a.depth)}return n},[]),dt=e=>{let t=l.current.getBoundingClientRect();return{x:e.clientX-t.left,y:e.clientY-t.top}},ft=(0,R.useCallback)(e=>{if(e.button!==0||e.target.closest(`[data-graph-control]`))return;let t=x.current;T.current=null,t.dragging=!0,t.moved=!1,t.lastX=e.clientX,t.lastY=e.clientY,t.lastInteractAt=performance.now(),e.currentTarget.setPointerCapture(e.pointerId)},[]),pt=(0,R.useCallback)(e=>{let t=x.current;if(t.dragging){let n=e.clientX-t.lastX,r=e.clientY-t.lastY;(Math.abs(n)>2||Math.abs(r)>2)&&(t.moved=!0),t.yaw+=n*He,t.pitch=Math.max(-Ue,Math.min(Ue,t.pitch+r*He)),t.lastX=e.clientX,t.lastY=e.clientY,t.lastInteractAt=performance.now(),t.dirty=!0;return}let{x:n,y:r}=dt(e),i=$(n,r);if(i!==t.hoveredId&&(t.hoveredId=i,t.dirty=!0),i)j(null);else{let e=ut(n,r);j(e?st(e):null)}},[$,ut]),mt=(0,R.useCallback)(e=>{let t=x.current;if(!t.dragging)return;t.dragging=!1,t.lastInteractAt=performance.now(),t.dirty=!0;let n=e.currentTarget;if(n.hasPointerCapture(e.pointerId)&&n.releasePointerCapture(e.pointerId),!t.moved){let{x:t,y:n}=dt(e),r=$(t,n);if(r){let e=p.nodes.find(e=>e.id===r);e&&Q({id:e.id,label:e.label,updatedAtMs:e.updatedAtMs})}else k(null)}},[$,p.nodes,Q]),ht=(0,R.useCallback)(()=>{let e=x.current;j(null),!(e.dragging||e.hoveredId==null)&&(e.hoveredId=null,e.dirty=!0,k(null))},[]);(0,R.useEffect)(()=>{let e=l.current;if(!e||!m)return;let t=e=>{if(e.target.closest?.(`[data-graph-panel]`))return;e.preventDefault();let t=x.current;t.zoom=Math.max(Ke,Math.min(qe,t.zoom*(1-e.deltaY/500))),t.lastInteractAt=performance.now(),t.dirty=!0};return e.addEventListener(`wheel`,t,{passive:!1}),()=>e.removeEventListener(`wheel`,t)},[m]);let gt=(0,R.useMemo)(()=>{let e=new Set(p.nodes.map(e=>e.kind));return ze.filter(t=>e.has(t))},[p.nodes]),_t=(0,R.useMemo)(()=>p.edges.some(e=>e.kind===`learned`),[p.edges]),vt=(0,R.useMemo)(()=>p.edges.some(e=>e.kind!==`learned`),[p.edges]);(0,R.useEffect)(()=>{!(vt&&_t)&&(!X.link||!X.learned)&&Se({link:!0,learned:!0})},[vt,_t,X]);let yt=d.data?.kind===`ready`&&!le,bt=p.nodes.length,xt=p.edges.length,St=new Set(h.values()).size,Ct=(e,t)=>`${e} ${t}${e===1?``:`s`}`,wt=yt?null:ne??A,Tt=m&&(p.nodes.length>it||!!V),Et=!!(i||o)||m,Dt;return Dt=d.isLoading?(0,K.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,K.jsx)(`div`,{className:`h-6 w-6 animate-spin rounded-full border-2`,style:{borderColor:`var(--border-base)`,borderTopColor:`var(--content-tertiary)`}})}):d.isError?(0,K.jsx)(he,{title:c(`conceptGraphView.loadErrorTitle`),detail:c(`conceptGraphView.loadErrorDetail`)}):d.data?.kind===`unsupported`?(0,K.jsx)(Pe,{assistantId:e,onOpenThread:a}):m?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`canvas`,{ref:u,className:`absolute inset-0 h-full w-full`}),(p.nodes.length>it||Y!==`all`)&&xe?(0,K.jsx)(`div`,{"data-graph-control":!0,className:`absolute left-4 top-4 z-10`,children:(0,K.jsx)(Fe,{value:Y,onChange:ve})}):null,(0,K.jsx)(De,{nodeKinds:gt.filter(e=>e!==`concept`),coloredByTheme:gt.includes(`concept`),themes:g,hasLinks:vt,hasLearned:_t,...vt&&_t?{onToggleLink:()=>Se(e=>({...e,link:!e.link})),onToggleLearned:()=>Se(e=>({...e,learned:!e.learned})),linkActive:X.link,learnedActive:X.learned}:{}}),(0,K.jsx)(`div`,{className:`pointer-events-none absolute bottom-4 right-4 text-[11px]`,style:{color:`var(--content-tertiary)`},children:c(`conceptGraphView.dragToRotateHint`)}),f?.truncated?(0,K.jsx)(`div`,{className:`pointer-events-none absolute bottom-4 left-1/2 -translate-x-1/2 rounded-full px-3 py-1 text-[11px]`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 82%, transparent)`,border:`1px solid var(--border-base)`,color:`var(--content-tertiary)`},children:c(`conceptGraphView.truncatedNotice`,{count:p.nodes.length})}):null,(0,K.jsxs)(`div`,{"data-graph-control":!0,className:`absolute right-4 top-4 flex flex-col gap-1`,children:[(0,K.jsx)(n,{variant:`ghost`,iconOnly:(0,K.jsx)(ce,{}),onClick:()=>Oe(1.25),"aria-label":c(`conceptGraphView.zoomInAriaLabel`),tooltip:c(`conceptGraphView.zoomInAriaLabel`)}),(0,K.jsx)(n,{variant:`ghost`,iconOnly:(0,K.jsx)(I,{}),onClick:()=>Oe(.8),"aria-label":c(`conceptGraphView.zoomOutAriaLabel`),tooltip:c(`conceptGraphView.zoomOutAriaLabel`)}),(0,K.jsx)(n,{variant:`ghost`,iconOnly:(0,K.jsx)(ie,{}),onClick:Ee,"aria-label":c(`conceptGraphView.resetViewAriaLabel`),tooltip:c(`conceptGraphView.resetViewAriaLabel`)})]})]}):(0,K.jsx)(he,{title:c(`conceptGraphView.emptyTitle`),detail:c(`conceptGraphView.emptyDetail`)}),(0,K.jsxs)(`div`,{className:`@container flex select-none flex-col overflow-hidden rounded-xl ${t??``}`,style:{backgroundColor:`var(--surface-base)`},children:[Et?(0,K.jsxs)(`div`,{className:`flex h-12 flex-none items-center gap-2 px-3`,style:{borderBottom:`1px solid var(--border-base)`},children:[i?(0,K.jsx)(n,{variant:`ghost`,iconOnly:r?(0,K.jsx)(L,{}):(0,K.jsx)(re,{}),onClick:i,"aria-label":c(r?`conceptGraphView.exitFullscreenAriaLabel`:`conceptGraphView.enterFullscreenAriaLabel`),tooltip:c(r?`conceptGraphView.exitFullscreenAriaLabel`:`conceptGraphView.enterFullscreenAriaLabel`)}):null,Tt?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(n,{variant:`ghost`,iconOnly:(0,K.jsx)(ae,{}),onClick:()=>de(!0),"aria-label":c(`conceptGraphView.searchConceptsAriaLabel`),tooltip:c(`conceptGraphView.searchConceptsAriaLabel`),className:U?`hidden`:`@2xl:hidden`}),(0,K.jsxs)(`div`,{className:`relative ${U?``:`hidden @2xl:block`}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5 rounded-full px-2.5 py-1`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 82%, transparent)`,border:`1px solid var(--border-base)`},children:[(0,K.jsx)(ae,{size:14,"aria-hidden":!0,style:{color:`var(--content-tertiary)`}}),(0,K.jsx)(`input`,{ref:fe,type:`text`,value:V,onChange:e=>{let t=e.target.value;t.trim()&&!W.current&&(B(`search`),W.current=!0),H(t)},onKeyDown:e=>{e.key===`Escape`?(V||U)&&(e.preventDefault(),e.stopPropagation(),H(``),de(!1)):e.key===`Enter`&&J.length>0&&(e.preventDefault(),Z(J[0].id))},placeholder:c(`conceptGraphView.searchConceptsPlaceholder`),"aria-label":c(`conceptGraphView.searchConceptsAriaLabel`),className:`w-36 bg-transparent text-[12px] outline-none placeholder:text-[var(--content-tertiary)]`,style:{color:`var(--content-default)`}}),V?(0,K.jsx)(`span`,{className:`text-[11px] tabular-nums`,style:{color:`var(--content-tertiary)`},children:G?.size??0}):null,V||U?(0,K.jsx)(`button`,{type:`button`,onClick:()=>{H(``),de(!1)},"aria-label":c(`conceptGraphView.clearSearchAriaLabel`),className:`flex items-center`,style:{color:`var(--content-tertiary)`},children:(0,K.jsx)(F,{size:13})}):null]}),V&&J.length>0?(0,K.jsx)(`ul`,{className:`absolute left-0 top-full z-30 mt-1.5 flex max-h-56 w-52 list-none flex-col overflow-y-auto rounded-xl py-1`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 92%, transparent)`,border:`1px solid var(--border-base)`},children:J.map(e=>(0,K.jsx)(`li`,{children:(0,K.jsx)(`button`,{type:`button`,onClick:()=>{Q({id:e.id,label:e.label,updatedAtMs:e.updatedAtMs}),H(``),de(!1)},className:`block w-full truncate px-3 py-1 text-left text-[12px] hover:bg-[color-mix(in_srgb,var(--content-tertiary)_14%,transparent)]`,style:{color:`var(--content-default)`},children:e.label})},e.id))}):null]})]}):null,(0,K.jsx)(`div`,{className:`pointer-events-none mx-auto min-w-0`,children:wt?(0,K.jsx)(`div`,{className:`truncate rounded-full px-3 py-1 text-[12px]`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 82%, transparent)`,border:`1px solid var(--border-base)`,color:`var(--content-default)`},children:wt}):m&&!yt&&!U?(0,K.jsxs)(`div`,{className:`rounded-full px-3 py-1 text-[11px] tabular-nums`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 82%, transparent)`,border:`1px solid var(--border-base)`,color:`var(--content-tertiary)`},children:[(0,K.jsxs)(`span`,{className:`@max-md:hidden`,children:[Ct(bt,`neuron`),` · `,Ct(xt,`synapse`),` ·`,` `,Ct(St,`lobe`)]}),(0,K.jsxs)(`span`,{className:`hidden @max-md:inline`,children:[bt,` · `,xt,` · `,St]})]}):null}),o?(0,K.jsx)(`div`,{className:`flex-none`,children:o}):null]}):null,(0,K.jsxs)(`div`,{ref:l,className:`relative min-h-0 flex-1`,style:{backgroundImage:`radial-gradient(circle at center, color-mix(in srgb, var(--content-tertiary) 8%, transparent), transparent 62%)`,touchAction:`none`,cursor:m?`grab`:`default`},onPointerDown:m?ft:void 0,onPointerMove:m?pt:void 0,onPointerUp:m?mt:void 0,onPointerCancel:m?mt:void 0,onPointerLeave:m?ht:void 0,children:[yt?(0,K.jsx)(Te,{onDismiss:ue}):null,Dt,m&&P?(0,K.jsx)(we,{assistantId:e,node:P,trail:M,neighbors:Le,onTravel:Ie,onCrumb:Ne,onClose:Me,onOpenThread:a}):null]})]})}async function dt(e,t){let{data:n}=await r({path:{assistant_id:e},body:{content:t},throwOnError:!0});return n}function ft({open:e,onOpenChange:t,assistantId:r,onCreated:i}){let{t:a}=E(`intelligence`),o=T(),[s,c]=(0,R.useState)(``),[l,u]=(0,R.useState)(!1),f=(0,R.useCallback)(async()=>{let e=s.trim();if(e){u(!0);try{let n=await dt(r,e);if(!n.success){h.error(n.message||a(`createMemoryModal.saveError`));return}h.success(n.pendingNodeId?a(`createMemoryModal.savedFoundToast`):a(`createMemoryModal.savedPendingToast`)),c(``),t(!1),i?.(n.pendingNodeId),await Promise.all([o.invalidateQueries({queryKey:y(r).queryKey}),o.invalidateQueries({queryKey:g(r).queryKey})])}catch(e){let t=e instanceof Error?e.message:a(`createMemoryModal.createError`);h.error(t)}finally{u(!1)}}},[r,s,t,i,o,a]);return(0,K.jsx)(d.Root,{open:e,onOpenChange:t,children:(0,K.jsxs)(d.Content,{size:`sm`,children:[(0,K.jsx)(d.Header,{children:(0,K.jsx)(d.Title,{children:a(`createMemoryModal.title`)})}),(0,K.jsx)(d.Body,{children:(0,K.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,K.jsx)(v,{label:a(`createMemoryModal.contentLabel`),placeholder:a(`createMemoryModal.contentPlaceholder`),value:s,onChange:e=>c(e.target.value),disabled:l,rows:3,fullWidth:!0}),(0,K.jsx)(x,{as:`p`,variant:`body-medium-lighter`,className:`text-(--content-secondary)`,children:a(`createMemoryModal.helperText`)})]})}),(0,K.jsxs)(d.Footer,{children:[(0,K.jsx)(d.Close,{asChild:!0,children:(0,K.jsx)(n,{variant:`outlined`,disabled:l,children:a(`createMemoryModal.cancel`)})}),(0,K.jsx)(n,{variant:`primary`,onClick:f,disabled:l||!s.trim(),leftIcon:l?(0,K.jsx)(se,{className:`animate-spin`}):void 0,children:a(l?`createMemoryModal.creating`:`createMemoryModal.create`)})]})]})})}function pt({onOpenThread:e}){let{t}=E(`intelligence`),r=a(),[i,o]=(0,R.useState)(!1),s=(0,R.useRef)(null),c=w(y(r)),l=w(g(r)),u=c.data?.kind===`ready`&&l.data?.kind===`ready`,d=(0,R.useRef)(!1);return(0,R.useEffect)(()=>{d.current||(d.current=!0,B(`opened`))},[]),(0,K.jsxs)(`div`,{className:`relative flex h-full min-h-0 flex-col`,children:[(0,K.jsx)(ut,{assistantId:r,className:`h-full w-full`,onOpenThread:e,handleRef:s,headerAction:u?(0,K.jsx)(n,{variant:`primary`,size:`compact`,leftIcon:(0,K.jsx)(j,{}),onClick:()=>o(!0),children:t(`memoryPage.createMemory`)}):void 0}),u?(0,K.jsx)(ft,{open:i,onOpenChange:o,assistantId:r,onCreated:e=>{e&&s.current?.focusNode(e)}}):null]})}function mt(){let e=D();return(0,K.jsx)(pt,{onOpenThread:t=>{B(`chat_from_node`),p(e,{prompt:t})}},a())}export{mt as MemoryPageRoute};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Lp as t,Rd as n,Ug as r,Z as i,bx as a,cg as o,df as s,ff as c,qi as l}from"./app-BTYvw9j7.js";import{I as u,Jn as d,N as f,Zn as p,j as m}from"./vendor-B2dSzLzU.js";import{t as h,x as g}from"./react-B9IgSVeK.js";var _=e(g(),1),v=class extends Error{status;constructor(e,t){super(t),this.name=`SimulateMemoryRouterError`,this.status=e}};async function y(e,t,n){let{data:i,response:a}=await r({path:{assistant_id:e},body:t,signal:n,throwOnError:!1}),o=a?await a.clone().text().catch(()=>``):``;if(!a||!a.ok)throw new v(a?.status??0,o||a?.statusText||`Failed to simulate memory router`);if(!i)throw new v(a.status,`Empty response from memory router simulator endpoint`);return{response:i,rawRequest:JSON.stringify(t,null,2),rawResponse:b(o)}}function b(e){if(e.length===0)return e;try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}function x(e){return d({mutationFn:async t=>{if(!e)throw new v(0,`Missing assistantId`);return y(e,t)}})}function S(e){return p({...n({path:{assistant_id:e}}),enabled:!!e,staleTime:6e4})}function C(e){return p({...c({path:{assistant_id:e}}),enabled:!!e,staleTime:1440*60*1e3})}function ee(e){return p({...s({path:{assistant_id:e}}),enabled:!!e,staleTime:1/0})}var w=h();function T(){let{t:e}=m(`chat`),n=l(),r=t(),i=o.use.memoryRouterPlayground();return r?(0,w.jsx)($,{children:e(`memoryRouterPlaygroundPage.loading`)}):!n||!i?(0,w.jsx)($,{children:e(`memoryRouterPlaygroundPage.notAvailable`)}):(0,w.jsx)(D,{})}var E={tier1:``,tier2:``,batch:``,profile:``,customPrompt:``};function D(){let{t:e}=m(`chat`),t=i(),n=x(t),r=x(t),a=S(t),o=C(t),s=ee(t),[c,l]=(0,_.useState)(``),[u,d]=(0,_.useState)([{assistantMessage:``,userMessage:``}]),[f,p]=(0,_.useState)(!1);(0,_.useEffect)(()=>{if(f)return;let e=s.data?.nowText;typeof e==`string`&&c===``&&l(e)},[s.data?.nowText,c,f]);let[h,g]=(0,_.useState)(E),[v,y]=(0,_.useState)(E),[b,T]=(0,_.useState)(null),[D,k]=(0,_.useState)(null),M=u[u.length-1].userMessage,P=t=>{let i=t===`A`?h:v,a=t===`A`?T:k,o=t===`A`?n:r;a(null);let s;try{s=O(i)}catch(t){a(t instanceof Error?t.message:e(`memoryRouterPlaygroundPage.invalidOverrideInput`));return}let l=i.profile.trim().length>0?i.profile:void 0,d=i.customPrompt.trim().length>0?i.customPrompt:void 0,f=u.map((e,t)=>t===u.length-1?{...e,userMessage:e.userMessage.trim()}:e);o.mutate({recentTurnPairs:f,nowText:c,...s?{configOverrides:s}:{},...l===void 0?{}:{profileOverride:l},...d===void 0?{}:{routerPromptOverride:d}})},F=()=>{P(`A`),P(`B`)},I=M.trim().length>0,L=I&&!n.isPending,z=I&&!r.isPending;return(0,w.jsx)(`div`,{className:`flex h-full min-h-0 flex-col overflow-y-auto`,children:(0,w.jsxs)(`div`,{className:`mx-auto flex w-full max-w-[1280px] flex-col gap-6 p-6`,children:[(0,w.jsx)(A,{}),(0,w.jsx)(j,{nowText:c,onNowTextChange:e=>{p(!0),l(e)},onReloadNowText:()=>{let e=s.data?.nowText;typeof e==`string`&&(l(e),p(!1))},nowTextLoading:s.isLoading,pairs:u,onPairsChange:d}),(0,w.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 lg:grid-cols-2`,children:[(0,w.jsx)(N,{paneId:`A`,overrides:h,onChange:g,onRun:()=>P(`A`),canRun:L,isRunning:n.isPending,profiles:a.data?.profiles??[],activeProfile:a.data?.activeProfile??null,defaultPromptTemplate:o.data?.template??``}),(0,w.jsx)(N,{paneId:`B`,overrides:v,onChange:y,onRun:()=>P(`B`),canRun:z,isRunning:r.isPending,profiles:a.data?.profiles??[],activeProfile:a.data?.activeProfile??null,defaultPromptTemplate:o.data?.template??``})]}),(0,w.jsx)(`div`,{className:`flex justify-end`,children:(0,w.jsx)(te,{onClick:F,disabled:!I||n.isPending||r.isPending,isRunning:n.isPending||r.isPending})}),(0,w.jsx)(ne,{visible:n.data!==void 0&&r.data!==void 0}),(0,w.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 lg:grid-cols-2`,children:[(0,w.jsx)(R,{paneId:`A`,userMessage:M,mutation:n,otherResult:r.data?.response,validation:b}),(0,w.jsx)(R,{paneId:`B`,userMessage:M,mutation:r,otherResult:n.data?.response,validation:D})]})]})})}function O(e){let t={...k(`tier1_size`,e.tier1),...k(`tier2_size`,e.tier2),...k(`batch_size`,e.batch)};return Object.keys(t).length===0?void 0:t}function k(e,t){let n=t.trim();if(n===``)return{};if(n===`null`)return{[e]:null};let r=Number(n);if(!Number.isInteger(r)||r<1)throw Error(u(`chat:memoryRouterPlaygroundPage.overrideMustBePositiveInteger`,{fieldName:e,value:n}));return{[e]:r}}function A(){let{t:e}=m(`chat`);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`h1`,{className:`text-body-large-default`,style:{color:`var(--content-default)`},children:e(`memoryRouterPlaygroundPage.title`)}),(0,w.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:(0,w.jsx)(f,{ns:`chat`,i18nKey:`memoryRouterPlaygroundPage.description`,components:{code:(0,w.jsx)(`code`,{})}})})]})}function j({nowText:e,onNowTextChange:t,onReloadNowText:n,nowTextLoading:r,pairs:i,onPairsChange:o}){let{t:s}=m(`chat`),c=(e,t)=>{o(i.map((n,r)=>r===e?{...n,...t}:n))},l=()=>{o([{assistantMessage:``,userMessage:``},...i])},u=e=>{e!==i.length-1&&o(i.filter((t,n)=>n!==e))};return(0,w.jsx)(a,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:s(`memoryRouterPlaygroundPage.conversationalContextTitle`)}),(0,w.jsx)(M,{id:`memory-router-playground-now`,label:s(`memoryRouterPlaygroundPage.nowBlockLabel`),value:e,onChange:t,rows:6,monospace:!0,placeholder:s(r?`memoryRouterPlaygroundPage.nowLoadingPlaceholder`:`memoryRouterPlaygroundPage.nowDefaultPlaceholder`),trailing:(0,w.jsx)(`button`,{type:`button`,onClick:n,disabled:r,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:r?`not-allowed`:`pointer`},children:s(`memoryRouterPlaygroundPage.reloadNowButton`)})}),(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,w.jsx)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:s(`memoryRouterPlaygroundPage.recentPairsLabel`)}),(0,w.jsx)(`button`,{type:`button`,onClick:l,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:`pointer`},children:s(`memoryRouterPlaygroundPage.addOlderPairButton`)})]}),i.map((e,t)=>{let n=t===i.length-1;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-md border p-3`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`},children:[(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,w.jsxs)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:[s(`memoryRouterPlaygroundPage.pairLabel`,{index:t+1,total:i.length}),n?s(`memoryRouterPlaygroundPage.pairMostRecentSuffix`):``]}),!n&&(0,w.jsx)(`button`,{type:`button`,onClick:()=>u(t),className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`transparent`,color:`var(--system-negative-strong)`,border:`none`,cursor:`pointer`},children:s(`memoryRouterPlaygroundPage.removeButton`)})]}),(0,w.jsx)(M,{id:`memory-router-playground-pair-${t}-assistant`,label:s(`memoryRouterPlaygroundPage.assistantReplyLabel`),value:e.assistantMessage,onChange:e=>c(t,{assistantMessage:e}),rows:3,placeholder:t===0&&i.length===1?s(`memoryRouterPlaygroundPage.firstTurnAssistantPlaceholder`):s(`memoryRouterPlaygroundPage.assistantReplyPlaceholder`)}),(0,w.jsx)(M,{id:`memory-router-playground-pair-${t}-user`,label:s(n?`memoryRouterPlaygroundPage.justArrivedUserLabel`:`memoryRouterPlaygroundPage.userMessageLabel`),value:e.userMessage,onChange:e=>c(t,{userMessage:e}),rows:3,placeholder:s(n?`memoryRouterPlaygroundPage.lastUserPlaceholder`:`memoryRouterPlaygroundPage.userMessagePlaceholder`),required:n})]},t)})]})})}function M({id:e,label:t,value:n,onChange:r,rows:i,placeholder:a,monospace:o,trailing:s,required:c}){return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,w.jsxs)(`label`,{htmlFor:e,className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:[t,c?` *`:``]}),s]}),(0,w.jsx)(`textarea`,{id:e,value:n,onChange:e=>r(e.target.value),rows:i,placeholder:a,className:`rounded-md border px-3 py-2 text-body-medium-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`,resize:`vertical`,...o?{fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace`}:{}}})]})}function N({paneId:e,overrides:t,onChange:n,onRun:r,canRun:i,isRunning:o,profiles:s,activeProfile:c,defaultPromptTemplate:l}){let{t:u}=m(`chat`);return(0,w.jsx)(a,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,w.jsx)(`div`,{className:`text-body-medium-default`,style:{color:X(e)},children:u(`memoryRouterPlaygroundPage.configTitle`,{paneId:e})}),(0,w.jsxs)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-3`,children:[(0,w.jsx)(I,{paneId:e,label:`tier1_size`,value:t.tier1,onChange:e=>n({...t,tier1:e})}),(0,w.jsx)(I,{paneId:e,label:`tier2_size`,value:t.tier2,onChange:e=>n({...t,tier2:e})}),(0,w.jsx)(I,{paneId:e,label:`batch_size`,value:t.batch,onChange:e=>n({...t,batch:e})})]}),(0,w.jsx)(F,{paneId:e,value:t.profile,onChange:e=>n({...t,profile:e}),profiles:s,activeProfile:c}),(0,w.jsx)(P,{paneId:e,value:t.customPrompt,onChange:e=>n({...t,customPrompt:e}),defaultTemplate:l}),(0,w.jsx)(`div`,{className:`flex justify-end`,children:(0,w.jsx)(`button`,{type:`button`,onClick:r,disabled:!i,className:`rounded-md px-4 py-2 text-body-medium-default transition-colors`,style:{background:i?`var(--system-positive-strong)`:`var(--surface-overlay)`,color:i?`var(--content-on-positive)`:`var(--content-disabled)`,border:`none`,cursor:i?`pointer`:`not-allowed`},children:o?u(`memoryRouterPlaygroundPage.running`):u(`memoryRouterPlaygroundPage.runPane`,{paneId:e})})})]})})}function P({paneId:e,value:t,onChange:n,defaultTemplate:r}){let{t:i}=m(`chat`),[a,o]=(0,_.useState)(!1),s=`memory-router-playground-${e}-prompt`,c=t.trim().length>0;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,w.jsxs)(`button`,{type:`button`,onClick:()=>o(e=>!e),className:`text-label-medium-default`,style:{color:`var(--content-secondary)`,background:`transparent`,border:`none`,padding:0,cursor:`pointer`,textAlign:`left`},children:[a?`▾`:`▸`,` `,i(`memoryRouterPlaygroundPage.systemPrompt`),` `,(0,w.jsxs)(`span`,{style:{color:`var(--content-tertiary)`},children:[`(`,i(c?`memoryRouterPlaygroundPage.promptModeCustom`:`memoryRouterPlaygroundPage.promptModeBundled`),`)`]})]}),a&&(0,w.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,w.jsx)(`button`,{type:`button`,onClick:()=>n(r),disabled:r.length===0,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:r.length===0?`not-allowed`:`pointer`},children:i(`memoryRouterPlaygroundPage.loadDefault`)}),(0,w.jsx)(`button`,{type:`button`,onClick:()=>n(``),disabled:!c,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:c?`pointer`:`not-allowed`},children:i(`memoryRouterPlaygroundPage.reset`)})]})]}),a&&(0,w.jsx)(`textarea`,{id:s,value:t,onChange:e=>n(e.target.value),rows:12,placeholder:i(`memoryRouterPlaygroundPage.customPromptPlaceholder`),className:`rounded-md border px-3 py-2 text-body-small-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`,fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace`,resize:`vertical`,minHeight:`120px`}})]})}function F({paneId:e,value:t,onChange:n,profiles:r,activeProfile:i}){let{t:a}=m(`chat`),o=`memory-router-playground-${e}-profile`,s=i!==null&&i.length>0?a(`memoryRouterPlaygroundPage.inheritActiveWithProfile`,{profile:i}):a(`memoryRouterPlaygroundPage.inheritActive`);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`label`,{htmlFor:o,className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:a(`memoryRouterPlaygroundPage.llmProfilesOverride`)}),(0,w.jsxs)(`select`,{id:o,value:t,onChange:e=>n(e.target.value),className:`rounded-md border px-3 py-2 text-body-medium-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`},children:[(0,w.jsx)(`option`,{value:``,children:s}),r.map(e=>(0,w.jsx)(`option`,{value:e,children:e},e))]})]})}function I({paneId:e,label:t,value:n,onChange:r}){let{t:i}=m(`chat`),a=`memory-router-playground-${e}-${t}`;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`label`,{htmlFor:a,className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:t}),(0,w.jsx)(`input`,{id:a,value:n,onChange:e=>r(e.target.value),placeholder:i(`memoryRouterPlaygroundPage.inheritPlaceholder`),className:`rounded-md border px-3 py-2 text-body-medium-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`}})]})}function te({onClick:e,disabled:t,isRunning:n}){let{t:r}=m(`chat`);return(0,w.jsx)(`button`,{type:`button`,onClick:e,disabled:t,className:`rounded-md px-4 py-2 text-body-medium-default transition-colors`,style:{background:t?`var(--surface-overlay)`:`var(--primary-base)`,color:t?`var(--content-disabled)`:`var(--content-on-primary)`,border:`none`,cursor:t?`not-allowed`:`pointer`},children:r(n?`memoryRouterPlaygroundPage.running`:`memoryRouterPlaygroundPage.runBoth`)})}function ne({visible:e}){let{t}=m(`chat`);return e?(0,w.jsxs)(`div`,{className:`flex flex-wrap items-center gap-4 rounded-md px-4 py-2 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`},children:[(0,w.jsx)(L,{marker:`●`,markerColor:`var(--content-default)`,label:t(`memoryRouterPlaygroundPage.legendInBoth`)}),(0,w.jsx)(L,{marker:`◆`,markerColor:X(`A`),label:t(`memoryRouterPlaygroundPage.legendAOnly`)}),(0,w.jsx)(L,{marker:`◇`,markerColor:X(`B`),label:t(`memoryRouterPlaygroundPage.legendBOnly`)})]}):null}function L({marker:e,markerColor:t,label:n}){return(0,w.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,w.jsx)(`span`,{style:{color:t},children:e}),(0,w.jsx)(`span`,{children:n})]})}function R({paneId:e,userMessage:t,mutation:n,otherResult:r,validation:i}){let{t:a}=m(`chat`),o=n.data;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,w.jsx)(V,{paneId:e}),i!==null&&(0,w.jsx)(Q,{message:i}),n.isError&&(0,w.jsx)(Q,{message:n.error instanceof Error?n.error.message:a(`memoryRouterPlaygroundPage.failedToRunSimulation`)}),o!==void 0&&(0,w.jsxs)(w.Fragment,{children:[(0,w.jsx)(H,{paneId:e,userMessage:t,result:o.response,otherResult:r}),(0,w.jsx)(z,{paneId:e,rawRequest:o.rawRequest,rawResponse:o.rawResponse})]})]})}function z({paneId:e,rawRequest:t,rawResponse:n}){let{t:r}=m(`chat`),[i,o]=(0,_.useState)(!1);return(0,w.jsx)(a,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 p-4`,children:[(0,w.jsxs)(`button`,{type:`button`,onClick:()=>o(e=>!e),className:`text-label-medium-default`,style:{color:`var(--content-secondary)`,background:`transparent`,border:`none`,padding:0,cursor:`pointer`,textAlign:`left`},children:[i?`▾`:`▸`,` `,r(`memoryRouterPlaygroundPage.rawApiExchange`)]}),i&&(0,w.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,w.jsx)(B,{label:r(`memoryRouterPlaygroundPage.requestLabel`,{paneId:e}),body:t}),(0,w.jsx)(B,{label:r(`memoryRouterPlaygroundPage.responseLabel`,{paneId:e}),body:n})]})]})})}function B({label:e,body:t}){let{t:n}=m(`chat`);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:e}),(0,w.jsx)(`pre`,{className:`overflow-auto rounded-md border px-3 py-2 text-body-small-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`,fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace`,maxHeight:`320px`,whiteSpace:`pre`},children:t.length===0?n(`memoryRouterPlaygroundPage.empty`):t})]})}function V({paneId:e}){let{t}=m(`chat`);return(0,w.jsx)(`div`,{className:`text-body-medium-default`,style:{color:X(e)},children:t(`memoryRouterPlaygroundPage.paneTitle`,{paneId:e})})}function H({paneId:e,userMessage:t,result:n,otherResult:r}){let{t:i}=m(`chat`),a=(0,_.useMemo)(()=>U(n,r),[n,r]),o=(0,_.useMemo)(()=>q(n),[n]);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,w.jsx)(G,{result:n,userMessage:t,otherResult:r,counts:(0,_.useMemo)(()=>W(a),[a])}),(0,w.jsx)(K,{result:n}),n.failureReason!==null&&(0,w.jsx)(Q,{message:i(`memoryRouterPlaygroundPage.routerFailure`,{reason:n.failureReason})}),o.length===0?(0,w.jsx)(ae,{}):o.map(t=>(0,w.jsx)(ie,{paneId:e,source:t.source,slugs:t.slugs,scores:n.scores,diff:a},t.source))]})}function U(e,t){let n=new Map;if(t===void 0){for(let t of e.selectedSlugs)n.set(t,`both`);return n}let r=new Set(t.selectedSlugs);for(let t of e.selectedSlugs)n.set(t,r.has(t)?`both`:`only-here`);return n}function W(e){let t=0,n=0;for(let r of e.values())r===`both`?t++:n++;return{total:e.size,shared:t,unique:n}}function G({result:e,userMessage:t,otherResult:n,counts:r}){let{t:i}=m(`chat`),o=[{label:i(`memoryRouterPlaygroundPage.summaryUserMessageLabel`),value:t},{label:i(`memoryRouterPlaygroundPage.totalCandidatePagesLabel`),value:e.totalCandidatePages.toLocaleString()},{label:i(`memoryRouterPlaygroundPage.selectedLabel`),value:i(`memoryRouterPlaygroundPage.selectedValue`,{count:e.selectedSlugs.length,maxPageIds:e.effectiveConfig.max_page_ids})}];return n!==void 0&&o.push({label:i(`memoryRouterPlaygroundPage.diffLabel`),value:i(`memoryRouterPlaygroundPage.diffValue`,{shared:r.shared,unique:r.unique})}),(0,w.jsx)(a,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:i(`memoryRouterPlaygroundPage.summary`)}),(0,w.jsx)(Z,{rows:o})]})})}function K({result:e}){let{t}=m(`chat`),n=[`tier1_size`,`tier2_size`,`batch_size`,`max_page_ids`].map(n=>{let r=e.effectiveConfig[n],i=e.overrides[n];return{label:n,value:`${r===null?t(`memoryRouterPlaygroundPage.nullValue`):String(r)}${i===void 0?``:t(`memoryRouterPlaygroundPage.overrideSuffix`)}`}});return n.push({label:t(`memoryRouterPlaygroundPage.llmProfilesOverride`),value:e.profileOverride===null?t(`memoryRouterPlaygroundPage.inheritActive`):`${e.profileOverride}${t(`memoryRouterPlaygroundPage.overrideSuffix`)}`}),n.push({label:t(`memoryRouterPlaygroundPage.systemPromptConfigLabel`),value:e.routerPromptOverridden?t(`memoryRouterPlaygroundPage.promptModeCustom`):t(`memoryRouterPlaygroundPage.promptModeBundled`)}),(0,w.jsx)(a,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:t(`memoryRouterPlaygroundPage.effectiveConfig`)}),(0,w.jsx)(Z,{rows:n})]})})}function q(e){let t=new Map;for(let n of e.selectedSlugs){let r=e.sourceBySlug[n];if(r===void 0)continue;let i=t.get(r)??[];i.push(n),t.set(r,i)}return[...t.keys()].sort((e,t)=>J(e)-J(t)).map(e=>({source:e,slugs:t.get(e)}))}function J(e){return e===`tier1`?0:e===`tier2`?1:e.startsWith(`tier3:`)?2+Number(e.slice(6)):2**53-1}function Y(e,t){return e===`tier1`?t(`memoryRouterPlaygroundPage.tier1Label`):e===`tier2`?t(`memoryRouterPlaygroundPage.tier2Label`):e.startsWith(`tier3:`)?t(`memoryRouterPlaygroundPage.tier3Label`,{batch:e.slice(6)}):e}function X(e){return e===`A`?`var(--system-mid-strong)`:`var(--primary-base)`}function re(e,t){return t===`both`?{color:`var(--content-default)`,marker:`●`}:{color:X(e),marker:e===`A`?`◆`:`◇`}}function ie({paneId:e,source:t,slugs:n,scores:r,diff:i}){let{t:o}=m(`chat`);return(0,w.jsx)(a,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:Y(t,o)}),(0,w.jsx)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:o(`memoryRouterPlaygroundPage.pageCount`,{count:n.length})})]}),(0,w.jsx)(`ul`,{className:`flex flex-col gap-1`,children:n.map(n=>{let{color:a,marker:s}=re(e,i.get(n)??`only-here`);return(0,w.jsxs)(`li`,{className:`flex items-baseline justify-between gap-3`,children:[(0,w.jsxs)(`span`,{className:`flex items-baseline gap-2`,children:[(0,w.jsx)(`span`,{style:{color:a},children:s}),(0,w.jsx)(`code`,{className:`text-body-medium-default`,style:{color:a},children:n})]}),t===`tier2`&&(0,w.jsx)(`span`,{className:`tabular-nums text-label-medium-default`,style:{color:`var(--content-secondary)`},children:o(`memoryRouterPlaygroundPage.emaScore`,{score:(r[n]??0).toFixed(3)})})]},n)})})]})})}function ae(){let{t:e}=m(`chat`);return(0,w.jsx)(a,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e(`memoryRouterPlaygroundPage.noPagesSelected`)}),(0,w.jsx)(`span`,{className:`text-body-small-lighter`,style:{color:`var(--content-secondary)`},children:e(`memoryRouterPlaygroundPage.emptySelectionHint`)})]})})}function Z({rows:e}){return(0,w.jsx)(`div`,{className:`flex flex-col gap-2`,children:e.map(({label:e,value:t})=>(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,w.jsx)(`span`,{className:`shrink-0 text-label-medium-default`,style:{color:`var(--content-secondary)`},children:e}),(0,w.jsx)(`span`,{className:`text-right text-body-medium-lighter`,style:{color:`var(--content-default)`},children:t})]},e))})}function Q({message:e}){return(0,w.jsx)(`div`,{className:`rounded-md px-4 py-3 text-body-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--system-negative-strong)`},children:e})}function $({children:e}){return(0,w.jsx)(`div`,{className:`flex h-full w-full items-center justify-center p-8 text-label-medium-default`,style:{color:`var(--content-tertiary)`},children:e})}export{T as MemoryRouterPlaygroundPage};
@@ -1 +1 @@
1
- import{Nt as e,er as t,nr as n,rr as r}from"./app-DxMy0jwj.js";import{j as i}from"./vendor-B2dSzLzU.js";import{t as a}from"./react-B9IgSVeK.js";import{rn as o}from"./icons-bnwMda87.js";import{t as s}from"./use-transcript-message-by-id-sQ_bR9wX.js";var c=[];function l(e){let t=s(e);return t?t.attachments??c:null}var u=a();function d({payload:a,onClose:s}){let{t:c}=i(`chat`),{displayAttachments:d,renderSquare:f,previewModal:p}=e({attachments:l(a.messageId)??a.attachments,assistantId:a.assistantId});return(0,u.jsxs)(t,{Glyph:o,titleNode:(0,u.jsx)(r,{title:c(`messageFilesPanel.title`),count:d.length}),closeLabel:c(`messageFilesPanel.closeAria`),onClose:s,children:[d.length===0?(0,u.jsx)(n,{children:c(`messageFilesPanel.empty`)}):(0,u.jsx)(`div`,{className:`flex flex-wrap items-start gap-3`,children:d.map((e,t)=>f(e,t))}),p]})}export{d as MessageFilesPanel};
1
+ import{Nt as e,er as t,nr as n,rr as r}from"./app-BTYvw9j7.js";import{j as i}from"./vendor-B2dSzLzU.js";import{t as a}from"./react-B9IgSVeK.js";import{rn as o}from"./icons-bnwMda87.js";import{t as s}from"./use-transcript-message-by-id-D7Llb7KM.js";var c=[];function l(e){let t=s(e);return t?t.attachments??c:null}var u=a();function d({payload:a,onClose:s}){let{t:c}=i(`chat`),{displayAttachments:d,renderSquare:f,previewModal:p}=e({attachments:l(a.messageId)??a.attachments,assistantId:a.assistantId});return(0,u.jsxs)(t,{Glyph:o,titleNode:(0,u.jsx)(r,{title:c(`messageFilesPanel.title`),count:d.length}),closeLabel:c(`messageFilesPanel.closeAria`),onClose:s,children:[d.length===0?(0,u.jsx)(n,{children:c(`messageFilesPanel.empty`)}):(0,u.jsx)(`div`,{className:`flex flex-wrap items-start gap-3`,children:d.map((e,t)=>f(e,t))}),p]})}export{d as MessageFilesPanel};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Tx as t,xx as n}from"./app-DxMy0jwj.js";import{f as r}from"./vendor-B2dSzLzU.js";import{t as i,x as a}from"./react-B9IgSVeK.js";import{qa as o}from"./icons-bnwMda87.js";var s=o(`arrow-up-from-line`,[[`path`,{d:`m18 9-6-6-6 6`,key:`kcunyi`}],[`path`,{d:`M12 3v14`,key:`7cf3v8`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]),c=e(a(),1),l=i();function u(e){if(e>=1e6){let t=e/1e6;return`${t%1==0?t.toFixed(0):t.toFixed(1)}M`}if(e>=1e3){let t=e/1e3;return`${t%1==0?t.toFixed(0):t.toFixed(1)}K`}return e.toLocaleString()}function d(e){let t=r(),[n,i]=(0,c.useState)(e),a=(0,c.useRef)(e),o=(0,c.useRef)(e),s=(0,c.useRef)(0);return(0,c.useEffect)(()=>{if(o.current=e,t){cancelAnimationFrame(s.current),s.current=0,a.current=e,i(e);return}if(a.current===e||s.current)return;let n=performance.now(),r=a.current,c=e=>{let t=o.current,l=Math.min((e-n)/300,1),u=1-(1-l)**3;a.current=l>=1?t:r+(t-r)*u,i(a.current),l<1?s.current=requestAnimationFrame(c):s.current=0};s.current=requestAnimationFrame(c)},[e,t]),(0,c.useEffect)(()=>()=>cancelAnimationFrame(s.current),[]),n}function f({icon:e,value:r,label:i,valueTitle:a}){return(0,l.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)] px-3 py-3`,children:[(0,l.jsx)(`div`,{className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:e}),(0,l.jsxs)(`div`,{className:`min-w-0`,children:[(0,l.jsx)(n,{variant:`title-small`,title:a||void 0,className:t(`block text-[var(--content-default)]`,a&&`-mb-1 truncate pb-1`),children:r}),(0,l.jsx)(n,{variant:`body-small-default`,className:`block text-[var(--content-secondary)]`,children:i})]})]})}function p({icon:e,label:t,target:n,format:r}){return(0,l.jsx)(f,{icon:e,label:t,value:r(d(n))})}export{s as i,f as n,u as r,p as t};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Tx as t,xx as n}from"./app-BTYvw9j7.js";import{f as r}from"./vendor-B2dSzLzU.js";import{t as i,x as a}from"./react-B9IgSVeK.js";import{qa as o}from"./icons-bnwMda87.js";var s=o(`arrow-up-from-line`,[[`path`,{d:`m18 9-6-6-6 6`,key:`kcunyi`}],[`path`,{d:`M12 3v14`,key:`7cf3v8`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]),c=e(a(),1),l=i();function u(e){if(e>=1e6){let t=e/1e6;return`${t%1==0?t.toFixed(0):t.toFixed(1)}M`}if(e>=1e3){let t=e/1e3;return`${t%1==0?t.toFixed(0):t.toFixed(1)}K`}return e.toLocaleString()}function d(e){let t=r(),[n,i]=(0,c.useState)(e),a=(0,c.useRef)(e),o=(0,c.useRef)(e),s=(0,c.useRef)(0);return(0,c.useEffect)(()=>{if(o.current=e,t){cancelAnimationFrame(s.current),s.current=0,a.current=e,i(e);return}if(a.current===e||s.current)return;let n=performance.now(),r=a.current,c=e=>{let t=o.current,l=Math.min((e-n)/300,1),u=1-(1-l)**3;a.current=l>=1?t:r+(t-r)*u,i(a.current),l<1?s.current=requestAnimationFrame(c):s.current=0};s.current=requestAnimationFrame(c)},[e,t]),(0,c.useEffect)(()=>()=>cancelAnimationFrame(s.current),[]),n}function f({icon:e,value:r,label:i,valueTitle:a}){return(0,l.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)] px-3 py-3`,children:[(0,l.jsx)(`div`,{className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:e}),(0,l.jsxs)(`div`,{className:`min-w-0`,children:[(0,l.jsx)(n,{variant:`title-small`,title:a||void 0,className:t(`block text-[var(--content-default)]`,a&&`-mb-1 truncate pb-1`),children:r}),(0,l.jsx)(n,{variant:`body-small-default`,className:`block text-[var(--content-secondary)]`,children:i})]})]})}function p({icon:e,label:t,target:n,format:r}){return(0,l.jsx)(f,{icon:e,label:t,value:r(d(n))})}export{s as i,f as n,u as r,p as t};
@@ -0,0 +1 @@
1
+ import{it as e}from"./app-BTYvw9j7.js";export{e as filesFromNativePaths};
@@ -0,0 +1 @@
1
+ import{Fr as e}from"./app-BTYvw9j7.js";export{e as saveFile};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Fm as t,Mu as n,Om as r,Qo as i,Sx as a,Zo as o,ab as s,bx as c,hx as l,pb as u}from"./app-DxMy0jwj.js";import{E as d,j as f,k as p}from"./vendor-B2dSzLzU.js";import{r as m,t as h,x as g}from"./react-B9IgSVeK.js";import{Ca as _,Yr as v}from"./icons-bnwMda87.js";var y=e(g(),1),b=p(`AndroidNotificationSettings`);function x(){return r()&&d.isPluginAvailable(`AndroidNotificationSettings`)}async function S(){if(x())try{await b.open()}catch(e){u(e,{context:`android_notification_settings_open`,level:`warning`})}}var C=h();function w(){let{t:e}=f(`settings`),t=x(),[r,s]=(0,y.useState)(null);(0,y.useEffect)(()=>{o().then(s)},[]),n(`app.resume`,({signal:e})=>{e!==`online`&&i().then(s)});let u;switch(r){case`granted`:u={description:e(`androidNotificationSettingsCard.grantedDescription`),label:e(`androidNotificationSettingsCard.grantedLabel`),tone:`positive`};break;case`denied`:u={description:e(`androidNotificationSettingsCard.deniedDescription`),label:e(`androidNotificationSettingsCard.deniedLabel`),tone:`negative`};break;case`prompt`:u={description:e(`androidNotificationSettingsCard.promptDescription`),label:e(`androidNotificationSettingsCard.promptLabel`),tone:`warning`};break;case`unsupported`:u={description:e(`androidNotificationSettingsCard.unsupportedDescription`),label:e(`androidNotificationSettingsCard.unsupportedLabel`),tone:`neutral`};break;default:u={description:e(`androidNotificationSettingsCard.checkingDescription`),label:e(`androidNotificationSettingsCard.checkingLabel`),tone:`neutral`};break}return(0,C.jsx)(c,{padding:`lg`,children:(0,C.jsxs)(`div`,{className:`flex flex-col gap-5 sm:flex-row sm:items-center sm:justify-between`,children:[(0,C.jsxs)(`div`,{className:`flex min-w-0 items-start gap-4`,children:[(0,C.jsx)(`span`,{className:`flex size-11 shrink-0 items-center justify-center rounded-xl bg-[var(--surface-base)] text-[var(--content-secondary)]`,children:(0,C.jsx)(_,{className:`size-5`,"aria-hidden":!0})}),(0,C.jsxs)(`div`,{className:`min-w-0`,children:[(0,C.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,C.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`androidNotificationSettingsCard.title`)}),(0,C.jsx)(l,{tone:u.tone,children:u.label})]}),(0,C.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-secondary)]`,children:u.description})]})]}),t&&(0,C.jsx)(a,{variant:`outlined`,onClick:()=>void S(),disabled:r===null,rightIcon:(0,C.jsx)(v,{"aria-hidden":!0}),className:`self-start sm:self-auto`,children:e(`androidNotificationSettingsCard.openSettings`)})]})})}function T(){let{t:e}=f(`settings`);return t()?(0,C.jsxs)(`div`,{className:`mx-auto w-full max-w-2xl space-y-6`,children:[(0,C.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,C.jsx)(`span`,{className:`flex size-10 shrink-0 items-center justify-center rounded-xl bg-[var(--surface-lift)] text-[var(--content-secondary)]`,children:(0,C.jsx)(_,{className:`size-5`,"aria-hidden":!0})}),(0,C.jsxs)(`div`,{className:`min-w-0`,children:[(0,C.jsx)(`h1`,{className:`text-title-medium text-[var(--content-emphasised)]`,children:e(`notificationsPage.title`)}),(0,C.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-secondary)]`,children:e(`notificationsPage.description`)})]})]}),(0,C.jsx)(w,{})]}):(0,C.jsx)(m,{replace:!0,to:s.settings.general})}export{T as NotificationsPage};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Dm as t,Mu as n,Pm as r,Qo as i,Sx as a,Zo as o,bx as s,hx as c,ib as l,pb as u}from"./app-BTYvw9j7.js";import{E as d,j as f,k as p}from"./vendor-B2dSzLzU.js";import{r as m,t as h,x as g}from"./react-B9IgSVeK.js";import{Ca as _,Yr as v}from"./icons-bnwMda87.js";var y=e(g(),1),b=p(`AndroidNotificationSettings`);function x(){return t()&&d.isPluginAvailable(`AndroidNotificationSettings`)}async function S(){if(x())try{await b.open()}catch(e){u(e,{context:`android_notification_settings_open`,level:`warning`})}}var C=h();function w(){let{t:e}=f(`settings`),t=x(),[r,l]=(0,y.useState)(null);(0,y.useEffect)(()=>{o().then(l)},[]),n(`app.resume`,({signal:e})=>{e!==`online`&&i().then(l)});let u;switch(r){case`granted`:u={description:e(`androidNotificationSettingsCard.grantedDescription`),label:e(`androidNotificationSettingsCard.grantedLabel`),tone:`positive`};break;case`denied`:u={description:e(`androidNotificationSettingsCard.deniedDescription`),label:e(`androidNotificationSettingsCard.deniedLabel`),tone:`negative`};break;case`prompt`:u={description:e(`androidNotificationSettingsCard.promptDescription`),label:e(`androidNotificationSettingsCard.promptLabel`),tone:`warning`};break;case`unsupported`:u={description:e(`androidNotificationSettingsCard.unsupportedDescription`),label:e(`androidNotificationSettingsCard.unsupportedLabel`),tone:`neutral`};break;default:u={description:e(`androidNotificationSettingsCard.checkingDescription`),label:e(`androidNotificationSettingsCard.checkingLabel`),tone:`neutral`};break}return(0,C.jsx)(s,{padding:`lg`,children:(0,C.jsxs)(`div`,{className:`flex flex-col gap-5 sm:flex-row sm:items-center sm:justify-between`,children:[(0,C.jsxs)(`div`,{className:`flex min-w-0 items-start gap-4`,children:[(0,C.jsx)(`span`,{className:`flex size-11 shrink-0 items-center justify-center rounded-xl bg-[var(--surface-base)] text-[var(--content-secondary)]`,children:(0,C.jsx)(_,{className:`size-5`,"aria-hidden":!0})}),(0,C.jsxs)(`div`,{className:`min-w-0`,children:[(0,C.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,C.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`androidNotificationSettingsCard.title`)}),(0,C.jsx)(c,{tone:u.tone,children:u.label})]}),(0,C.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-secondary)]`,children:u.description})]})]}),t&&(0,C.jsx)(a,{variant:`outlined`,onClick:()=>void S(),disabled:r===null,rightIcon:(0,C.jsx)(v,{"aria-hidden":!0}),className:`self-start sm:self-auto`,children:e(`androidNotificationSettingsCard.openSettings`)})]})})}function T(){let{t:e}=f(`settings`);return r()?(0,C.jsxs)(`div`,{className:`mx-auto w-full max-w-2xl space-y-6`,children:[(0,C.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,C.jsx)(`span`,{className:`flex size-10 shrink-0 items-center justify-center rounded-xl bg-[var(--surface-lift)] text-[var(--content-secondary)]`,children:(0,C.jsx)(_,{className:`size-5`,"aria-hidden":!0})}),(0,C.jsxs)(`div`,{className:`min-w-0`,children:[(0,C.jsx)(`h1`,{className:`text-title-medium text-[var(--content-emphasised)]`,children:e(`notificationsPage.title`)}),(0,C.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-secondary)]`,children:e(`notificationsPage.description`)})]})]}),(0,C.jsx)(w,{})]}):(0,C.jsx)(m,{replace:!0,to:l.settings.general})}export{T as NotificationsPage};
@@ -1,4 +1,4 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Jr as t}from"./app-DxMy0jwj.js";import{j as n}from"./vendor-B2dSzLzU.js";import{_ as r,t as i,x as a}from"./react-B9IgSVeK.js";var o=e(a(),1),s=i();function c(){return(0,s.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,s.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-positive-bg)`}),(0,s.jsx)(`path`,{className:`oauth-check`,d:`M17 28.5L24.5 36L39 21`,stroke:`var(--oauth-positive-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,strokeLinejoin:`round`,fill:`none`})]})}function l(){return(0,s.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,s.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-negative-bg)`}),(0,s.jsx)(`path`,{className:`oauth-cross oauth-cross-1`,d:`M20 20L36 36`,stroke:`var(--oauth-negative-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,fill:`none`}),(0,s.jsx)(`path`,{className:`oauth-cross oauth-cross-2`,d:`M36 20L20 36`,stroke:`var(--oauth-negative-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,fill:`none`})]})}var u=`
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Jr as t}from"./app-BTYvw9j7.js";import{j as n}from"./vendor-B2dSzLzU.js";import{_ as r,t as i,x as a}from"./react-B9IgSVeK.js";var o=e(a(),1),s=i();function c(){return(0,s.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,s.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-positive-bg)`}),(0,s.jsx)(`path`,{className:`oauth-check`,d:`M17 28.5L24.5 36L39 21`,stroke:`var(--oauth-positive-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,strokeLinejoin:`round`,fill:`none`})]})}function l(){return(0,s.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,s.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-negative-bg)`}),(0,s.jsx)(`path`,{className:`oauth-cross oauth-cross-1`,d:`M20 20L36 36`,stroke:`var(--oauth-negative-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,fill:`none`}),(0,s.jsx)(`path`,{className:`oauth-cross oauth-cross-2`,d:`M36 20L20 36`,stroke:`var(--oauth-negative-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,fill:`none`})]})}var u=`
2
2
  :root {
3
3
  --oauth-surface: #F5F3EB;
4
4
  --oauth-surface-card: #FFFFFF;
@@ -1,4 +1,4 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{H_ as t,Jr as n,U_ as r}from"./app-DxMy0jwj.js";import{j as i}from"./vendor-B2dSzLzU.js";import{_ as a,t as o,x as s}from"./react-B9IgSVeK.js";var c=e(s(),1),l=o();function u(){return(0,l.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,l.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-positive-bg)`}),(0,l.jsx)(`path`,{className:`oauth-check`,d:`M17 28.5L24.5 36L39 21`,stroke:`var(--oauth-positive-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,strokeLinejoin:`round`,fill:`none`})]})}function d(){return(0,l.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,l.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-negative-bg)`}),(0,l.jsx)(`path`,{className:`oauth-cross oauth-cross-1`,d:`M20 20L36 36`,stroke:`var(--oauth-negative-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,fill:`none`}),(0,l.jsx)(`path`,{className:`oauth-cross oauth-cross-2`,d:`M36 20L20 36`,stroke:`var(--oauth-negative-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,fill:`none`})]})}var f=`
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{H_ as t,Jr as n,V_ as r}from"./app-BTYvw9j7.js";import{j as i}from"./vendor-B2dSzLzU.js";import{_ as a,t as o,x as s}from"./react-B9IgSVeK.js";var c=e(s(),1),l=o();function u(){return(0,l.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,l.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-positive-bg)`}),(0,l.jsx)(`path`,{className:`oauth-check`,d:`M17 28.5L24.5 36L39 21`,stroke:`var(--oauth-positive-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,strokeLinejoin:`round`,fill:`none`})]})}function d(){return(0,l.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,l.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-negative-bg)`}),(0,l.jsx)(`path`,{className:`oauth-cross oauth-cross-1`,d:`M20 20L36 36`,stroke:`var(--oauth-negative-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,fill:`none`}),(0,l.jsx)(`path`,{className:`oauth-cross oauth-cross-2`,d:`M36 20L20 36`,stroke:`var(--oauth-negative-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,fill:`none`})]})}var f=`
2
2
  :root {
3
3
  --oauth-surface: #F5F3EB;
4
4
  --oauth-surface-card: #FFFFFF;
@@ -102,4 +102,4 @@ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{H_ as t,Jr as n,U_ as
102
102
  color: var(--oauth-text-secondary);
103
103
  margin: 0;
104
104
  }
105
- `;function p(e){return e.split(/[-_]/).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function m(){let{t:e}=i(`account`),[o]=a(),s=o.get(`requestId`),m=o.get(`oauth_status`),h=o.get(`oauth_provider`),g=o.get(`oauth_code`),_=o.get(`native`)===`1`,v=h?p(h):``,y=m===`connected`,b=y?v?`Connected to ${v}`:`Authorization Successful`:`Authorization Failed`,x=y?`You can close this popup and return to the app.`:`${v||`Service`} connection failed. Please try again.`;return(0,c.useEffect)(()=>{if(_&&s){let e=r(window.location.host);if(e){window.location.href=t(e,{requestId:s,oauthStatus:m||null,oauthProvider:h||null,oauthCode:g||null});return}}let e={type:`vellum:oauth-complete`,requestId:s,oauthStatus:m||null,oauthProvider:h||null,oauthCode:g||null};if(window.opener&&s&&window.opener.postMessage(e,window.location.origin),s)try{window.localStorage.setItem(n(s),JSON.stringify(e))}catch{}window.close()},[s,m,h,g,_]),(0,l.jsxs)(`div`,{className:`oauth-page`,children:[(0,l.jsx)(`style`,{dangerouslySetInnerHTML:{__html:f}}),(0,l.jsxs)(`div`,{className:`oauth-card`,children:[y?(0,l.jsx)(u,{}):(0,l.jsx)(d,{}),(0,l.jsx)(`h1`,{children:b}),(0,l.jsx)(`p`,{children:x}),!y&&g&&(0,l.jsx)(`p`,{style:{marginTop:8,fontSize:11,color:`var(--oauth-text-secondary)`,opacity:.7},children:e(`oauthComplete.errorCode`,{code:g})})]})]})}export{m as OAuthPopupCompletePage};
105
+ `;function p(e){return e.split(/[-_]/).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function m(){let{t:e}=i(`account`),[o]=a(),s=o.get(`requestId`),m=o.get(`oauth_status`),h=o.get(`oauth_provider`),g=o.get(`oauth_code`),_=o.get(`native`)===`1`,v=h?p(h):``,y=m===`connected`,b=y?v?`Connected to ${v}`:`Authorization Successful`:`Authorization Failed`,x=y?`You can close this popup and return to the app.`:`${v||`Service`} connection failed. Please try again.`;return(0,c.useEffect)(()=>{if(_&&s){let e=t(window.location.host);if(e){window.location.href=r(e,{requestId:s,oauthStatus:m||null,oauthProvider:h||null,oauthCode:g||null});return}}let e={type:`vellum:oauth-complete`,requestId:s,oauthStatus:m||null,oauthProvider:h||null,oauthCode:g||null};if(window.opener&&s&&window.opener.postMessage(e,window.location.origin),s)try{window.localStorage.setItem(n(s),JSON.stringify(e))}catch{}window.close()},[s,m,h,g,_]),(0,l.jsxs)(`div`,{className:`oauth-page`,children:[(0,l.jsx)(`style`,{dangerouslySetInnerHTML:{__html:f}}),(0,l.jsxs)(`div`,{className:`oauth-card`,children:[y?(0,l.jsx)(u,{}):(0,l.jsx)(d,{}),(0,l.jsx)(`h1`,{children:b}),(0,l.jsx)(`p`,{children:x}),!y&&g&&(0,l.jsx)(`p`,{style:{marginTop:8,fontSize:11,color:`var(--oauth-text-secondary)`,opacity:.7},children:e(`oauthComplete.errorCode`,{code:g})})]})]})}export{m as OAuthPopupCompletePage};
@@ -0,0 +1 @@
1
+ import{ym as e}from"./app-BTYvw9j7.js";export{e as resolvePairedAssistantPlatformId};