@mycadet/web 0.12.9 → 0.12.10

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 (286) hide show
  1. package/README.md +21 -0
  2. package/dist/assets/{a2a-invite-QwLkdzoC.js → a2a-invite-pQ8vkaRj.js} +1 -1
  3. package/dist/assets/{about-page-B_JVAkzb.js → about-page-D4aeZ0Z7.js} +1 -1
  4. package/dist/assets/{account-page-CogcrHfl.js → account-page-BbOeBJM9.js} +1 -1
  5. package/dist/assets/{account-shell-CaNt5YTy.js → account-shell-DUFMbbtT.js} +1 -1
  6. package/dist/assets/{acp-run-detail-panel-CP2w6xWq.js → acp-run-detail-panel-DGIhqXHW.js} +3 -3
  7. package/dist/assets/activation-list-route-C2i0KHRw.js +1 -0
  8. package/dist/assets/{activity-redirect-page-CXQh1ANc.js → activity-redirect-page-HyulDuMS.js} +1 -1
  9. package/dist/assets/activity-steps-panel-C2jxVykr.js +1 -0
  10. package/dist/assets/{add-credits-modal-9QAiKkzN.js → add-credits-modal-B2jBVJnM.js} +1 -1
  11. package/dist/assets/add-credits-modal-Dq3KDioX.js +1 -0
  12. package/dist/assets/ai-page-DkjcQvtg.js +1 -0
  13. package/dist/assets/all-chats-page-route-B-22nwbR.js +1 -0
  14. package/dist/assets/android-billing-handoff-XBqwc2vm.js +1 -0
  15. package/dist/assets/{animated-stat-square-dwxhuRgk.js → animated-stat-square-BuzLb5yg.js} +1 -1
  16. package/dist/assets/{api-key-screen-sXJo9h2L.js → api-key-screen-D_BOqqqF.js} +1 -1
  17. package/dist/assets/app-B5J5Jx3A.js +401 -0
  18. package/dist/assets/{app-BXG8yk9C.css → app-Bwmh3Xwi.css} +2 -1
  19. package/dist/assets/{app-info-BWhtZVwd.js → app-info-BJfYbZR0.js} +1 -1
  20. package/dist/assets/archive-redirect-page-BHhIcijf.js +1 -0
  21. package/dist/assets/assistant-handle-modal-C2WXsUR5.js +1 -0
  22. package/dist/assets/assistant-inbox-page-route-DMGBt95F.js +8 -0
  23. package/dist/assets/{assistant-status-panel-DCxA9DDF.js → assistant-status-panel-Dsu9fPeS.js} +1 -1
  24. package/dist/assets/auth-store-CsE2VBRd.js +1 -0
  25. package/dist/assets/{auth-welcome-screen-EpKCTMv_.js → auth-welcome-screen-cs14WDS5.js} +1 -1
  26. package/dist/assets/avatar-bundled-components-BjtmWSpV.js +1 -0
  27. package/dist/assets/avatar-random-j6FY_FeX.js +1 -0
  28. package/dist/assets/{await-org-header-settled-DIN659KU.js → await-org-header-settled-B8WdqLfU.js} +1 -1
  29. package/dist/assets/{background-task-detail-panel-CK5CkHAh.js → background-task-detail-panel-CddZ3szG.js} +1 -1
  30. package/dist/assets/billing-page-CKGHz92_.js +3 -0
  31. package/dist/assets/{billing-redirect-page-3KVpziky.js → billing-redirect-page-B1GrQEIG.js} +1 -1
  32. package/dist/assets/bookmarks-page-f1U1i5U9.js +1 -0
  33. package/dist/assets/{bundle-confirm-page-BF_TkeTV.js → bundle-confirm-page-DkVYZdC4.js} +1 -1
  34. package/dist/assets/camera-capture-overlay-DJykh_6x.js +1 -0
  35. package/dist/assets/channel-transcript-panel-BICl_kF0.js +1 -0
  36. package/dist/assets/channels-page-route-Dn1GVYTm.js +1 -0
  37. package/dist/assets/{chat-iVufWu4u.js → chat-B9BXV7m-.js} +1 -1
  38. package/dist/assets/{chat-tE54oJur.js → chat-DfbtJN8d.js} +1 -1
  39. package/dist/assets/{chat-DIpP7Ral.js → chat-DvQxTUVC.js} +1 -1
  40. package/dist/assets/{chat-Fwu9E2dv.js → chat-aKnQz0-s.js} +1 -1
  41. package/dist/assets/chat-info-panel-DOq7RoBH.js +1 -0
  42. package/dist/assets/{checkout-continuation-syD1rPaq.js → checkout-continuation-ClbSIK1p.js} +1 -1
  43. package/dist/assets/{checkout-page-CDxb2TKu.js → checkout-page-BJ9msTAa.js} +1 -1
  44. package/dist/assets/checkout-return-target-DCJS38-R.js +1 -0
  45. package/dist/assets/{cloud-export-BomC8LTr.js → cloud-export-B06beYc3.js} +1 -1
  46. package/dist/assets/{cloud-loopback-page-CKanLlm2.js → cloud-loopback-page-Ci6-5zGi.js} +1 -1
  47. package/dist/assets/{command-palette-CCerSENn.js → command-palette-CXTojpZB.js} +1 -1
  48. package/dist/assets/command-palette-DlslW-Lc.js +1 -0
  49. package/dist/assets/{command-palette-window-page-DB4W1uBp.js → command-palette-window-page-Bem2Dff8.js} +1 -1
  50. package/dist/assets/{community-page-JCjpT273.js → community-page-CsZwwbob.js} +1 -1
  51. package/dist/assets/{companion-accent-DNqagkeK.js → companion-accent-C0DtOSVS.js} +1 -1
  52. package/dist/assets/{companion-dock-zones-page-B5FQh1TR.js → companion-dock-zones-page-DXftcPCs.js} +1 -1
  53. package/dist/assets/{companion-layout-BJ70ZoB6.js → companion-layout-C0DaN_Yy.js} +1 -1
  54. package/dist/assets/{companion-popover-ojFFv5gc.js → companion-popover-CPjhhH8c.js} +1 -1
  55. package/dist/assets/{companion-popover-page-CcjHgR5K.js → companion-popover-page-DrVfe0Wx.js} +1 -1
  56. package/dist/assets/companion-surface-B7i6DIQD.js +1 -0
  57. package/dist/assets/companion-surface-page-DpTmIxsi.js +1 -0
  58. package/dist/assets/{companion-tour-entry-Cv7pdZrq.js → companion-tour-entry-CXfRWsbR.js} +1 -1
  59. package/dist/assets/{companion-watch-frame-page-3M8uEp9f.js → companion-watch-frame-page-DoQ6PUab.js} +1 -1
  60. package/dist/assets/{connect-page-B3uUGMgH.js → connect-page-CoJN8gui.js} +1 -1
  61. package/dist/assets/{consent-controls-C5hiZrsf.js → consent-controls-D3YNRghz.js} +1 -1
  62. package/dist/assets/contacts-gateway-ry81mi5X.js +1 -0
  63. package/dist/assets/contacts-page-route-CZAQU4Ff.js +1 -0
  64. package/dist/assets/{copy-button-SNK3X3Q6.js → copy-button-C525oWyo.js} +1 -1
  65. package/dist/assets/{credential-entry-page-SwWWNGX8.js → credential-entry-page-_wAMPEW_.js} +1 -1
  66. package/dist/assets/credentials-page-tCHQYyjn.js +1 -0
  67. package/dist/assets/csv-preview-DKd4pfFk.js +1 -0
  68. package/dist/assets/danger-zone-redirect-page-DNjD_sbu.js +1 -0
  69. package/dist/assets/debug-page-BDJo7mXK.js +4 -0
  70. package/dist/assets/deploy-dialogs-CgWKSjHr.js +1 -0
  71. package/dist/assets/{deploy-dialogs-DDe4zOdX.js → deploy-dialogs-DFGsfhMR.js} +1 -1
  72. package/dist/assets/desktop-preview-content-Bo5rxYZ4.js +2 -0
  73. package/dist/assets/{desktop-status-DmWWnzqE.js → desktop-status-BBVehb9j.js} +1 -1
  74. package/dist/assets/{desktop-viewer-B9Vcq1Ei.js → desktop-viewer-BIMP-3dl.js} +2 -2
  75. package/dist/assets/{detail-card-DF9nj6Gj.js → detail-card-CAMxlK7D.js} +1 -1
  76. package/dist/assets/{detail-panel-stop-button-D3b4nxcG.js → detail-panel-stop-button-aMyMsLBA.js} +1 -1
  77. package/dist/assets/{detail-primitives-LOD0kRZ4.js → detail-primitives-Bk4V-NKV.js} +1 -1
  78. package/dist/assets/{developer-page-BQ5bGk-4.js → developer-page-QnMvBYY4.js} +1 -1
  79. package/dist/assets/devices-redirect-page-DTK42tDk.js +1 -0
  80. package/dist/assets/{dictation-overlay-page-DPR2rDDh.js → dictation-overlay-page-CJDH1cDF.js} +1 -1
  81. package/dist/assets/document-load-BDtRuRKA.js +1 -0
  82. package/dist/assets/document-load-D3eFXjRF.js +1 -0
  83. package/dist/assets/document-viewer-page-esaQHQQD.js +1 -0
  84. package/dist/assets/emails-page-CXj2ULRM.js +1 -0
  85. package/dist/assets/{file-diff-view-8ciHw9A7.js → file-diff-view-CYQhUGoZ.js} +1 -1
  86. package/dist/assets/{file-view-mode-BjjBnpYU.js → file-view-mode-CN9JxcQ7.js} +2 -2
  87. package/dist/assets/general-page-BqK6OPDF.js +2 -0
  88. package/dist/assets/hatching-screen-CyFG1D2I.js +1 -0
  89. package/dist/assets/{hosting-screen-fTZt7kCM.js → hosting-screen-CYH1dADk.js} +1 -1
  90. package/dist/assets/identity-page-route-CBFzWlV3.js +7 -0
  91. package/dist/assets/inspect-page-jDHE29zl.js +8 -0
  92. package/dist/assets/integrations-page-CdZyJXd2.js +1 -0
  93. package/dist/assets/{intelligence-layout-UKSuU3yD.js → intelligence-layout-ChiIaH2W.js} +1 -1
  94. package/dist/assets/{intelligence-layout-slots-store-yq8xZ_lC.js → intelligence-layout-slots-store-BDYggARJ.js} +1 -1
  95. package/dist/assets/keyboard-shortcuts-redirect-page-CljgxFnS.js +1 -0
  96. package/dist/assets/{latest-assistant-text-BbUF-ZjG.js → latest-assistant-text-B9dVyohk.js} +3 -3
  97. package/dist/assets/{library-detail-page-DCVP6Thc.js → library-detail-page-CwaYTq7d.js} +1 -1
  98. package/dist/assets/library-page-DIOZ4XDi.js +1 -0
  99. package/dist/assets/login-page-CRTxv4GD.js +1 -0
  100. package/dist/assets/{logout-page-rrrf5aYw.js → logout-page-B90fRbbx.js} +1 -1
  101. package/dist/assets/{logs-layout-CU-5OL3A.js → logs-layout-Ca0yg8-Y.js} +1 -1
  102. package/dist/assets/{markdown-preview-h2xJTbi7.js → markdown-preview-0MizPU2t.js} +1 -1
  103. package/dist/assets/{media-preview-6Dw68M9L.js → media-preview-BVABqFQN.js} +1 -1
  104. package/dist/assets/memory-page-route-BNazXk7B.js +2 -0
  105. package/dist/assets/{memory-router-playground-page-CsN1IIJA.js → memory-router-playground-page-BGFHq4SO.js} +1 -1
  106. package/dist/assets/message-files-panel-C2CNZwmS.js +1 -0
  107. package/dist/assets/mutation-error-BKu_ldRw.js +1 -0
  108. package/dist/assets/native-attachment-pickers-CKgw1muq.js +1 -0
  109. package/dist/assets/native-file-BT6GIAkU.js +1 -0
  110. package/dist/assets/{notifications-page-B3Em-VQu.js → notifications-page-BRrH6t2F.js} +1 -1
  111. package/dist/assets/{oauth-complete-page-BJObwKje.js → oauth-complete-page-BBXvstgA.js} +1 -1
  112. package/dist/assets/{oauth-popup-complete-page-dpJtFUH5.js → oauth-popup-complete-page-BMx8t2Fb.js} +2 -2
  113. package/dist/assets/paired-cloud-identity-Ces4EGyN.js +1 -0
  114. package/dist/assets/{pairing-page-dZeno0_m.js → pairing-page-C0V0Cb1T.js} +1 -1
  115. package/dist/assets/password-reset-page-CYAoIIyi.js +1 -0
  116. package/dist/assets/pdf-file-preview-B4WgqjN3.js +1 -0
  117. package/dist/assets/{permission-guide-page-BTU82Ybk.js → permission-guide-page-QKBXEzg2.js} +1 -1
  118. package/dist/assets/{permission-setup-DohBLdCl.js → permission-setup-BWZO-BUC.js} +1 -1
  119. package/dist/assets/{personality-page-BIMzWgMh.js → personality-page-1vWQJ8T8.js} +1 -1
  120. package/dist/assets/{personality-page-_k2z41Bt.js → personality-page-RM_enfZH.js} +1 -1
  121. package/dist/assets/personality-sliders-C8m0Kecj.js +1 -0
  122. package/dist/assets/plans-page-CRTjIKIR.js +1 -0
  123. package/dist/assets/{plugin-detail-page-BbA4_EQi.js → plugin-detail-page-Ce53cTXz.js} +1 -1
  124. package/dist/assets/{plugins-page-DxdhU21Z.js → plugins-page-1QRFMk5L.js} +1 -1
  125. package/dist/assets/plugins-surface-CxsSwZKQ.js +1 -0
  126. package/dist/assets/{preview-error-DhG_s3C0.js → preview-error-BwMkwAY5.js} +1 -1
  127. package/dist/assets/privacy-page-olrz7C3y.js +1 -0
  128. package/dist/assets/privacy-screen-BIH_Xthj.js +1 -0
  129. package/dist/assets/profile-card-CVgi-IGn.js +1 -0
  130. package/dist/assets/{provider-callback-page-Bmu6iHxa.js → provider-callback-page-C9fkPUOo.js} +1 -1
  131. package/dist/assets/{provider-key-DBdqn0Gt.js → provider-key-D5wSaH99.js} +1 -1
  132. package/dist/assets/{provider-signup-page-JIh0XKV5.js → provider-signup-page-DBmMlTlt.js} +1 -1
  133. package/dist/assets/{quick-input-page-ALtrRR05.js → quick-input-page-BBE1ucMJ.js} +1 -1
  134. package/dist/assets/{research-mock-page-C8n5xPsy.js → research-mock-page-BAGfgdc1.js} +1 -1
  135. package/dist/assets/research-onboarding-route-7I9uPA3r.js +50 -0
  136. package/dist/assets/{review-terms-screen-CnIUYPfa.js → review-terms-screen-OsiCXDvq.js} +1 -1
  137. package/dist/assets/routes-ZyvkEfcX.js +1 -0
  138. package/dist/assets/schedules-CyvL9kT2.js +1 -0
  139. package/dist/assets/schedules-page-DrOrWoSH.js +1 -0
  140. package/dist/assets/security-redirect-page-rdoPJXiN.js +1 -0
  141. package/dist/assets/select-assistant-screen-Dh2s5A2C.js +1 -0
  142. package/dist/assets/{self-hosted-servers-BxHLMpeP.js → self-hosted-servers-Cv8wEFRa.js} +1 -1
  143. package/dist/assets/{service-form-controls-BcaLg3mN.js → service-form-controls-CEapT8BI.js} +1 -1
  144. package/dist/assets/{setting-row-3-QGMKbV.js → setting-row-eUWI4yFB.js} +1 -1
  145. package/dist/assets/{settings-DiShwji2.js → settings-B7y9C1Xy.js} +1 -1
  146. package/dist/assets/{settings-CsVOMHUb.js → settings-CJVG9-4X.js} +1 -1
  147. package/dist/assets/{settings-BHi3Ex7d.js → settings-CVVieItT.js} +1 -1
  148. package/dist/assets/{settings-DZXnR1wA.js → settings-Cw4KXDM7.js} +1 -1
  149. package/dist/assets/{settings-divider-D1gYuSPt.js → settings-divider-DTCuThl5.js} +1 -1
  150. package/dist/assets/{settings-layout-Cuol1Jld.js → settings-layout-B4Rqi0TK.js} +1 -1
  151. package/dist/assets/share-feedback-modal-D5cDortz.js +1 -0
  152. package/dist/assets/share-feedback-modal-DSSuocab.js +2 -0
  153. package/dist/assets/{sidebar-tree-D1pphm3H.js → sidebar-tree-Cc4j-3dl.js} +1 -1
  154. package/dist/assets/{signup-page-6gPB7H4i.js → signup-page-IiggpC7S.js} +1 -1
  155. package/dist/assets/{signup-shell-I1tsWrB2.js → signup-shell-BLbEqBtf.js} +1 -1
  156. package/dist/assets/{skill-detail-page-CaaPoNXG.js → skill-detail-page-CpKTYCcY.js} +2 -2
  157. package/dist/assets/skill-detail-panel-CzQP6BAF.js +1 -0
  158. package/dist/assets/{skill-removal-dialog-DVzlADbq.js → skill-removal-dialog-qgS9ZuIy.js} +1 -1
  159. package/dist/assets/{skills-page-BjmHcl-i.js → skills-page-uEk0UkEB.js} +1 -1
  160. package/dist/assets/{sounds-page-DM_LZFsH.js → sounds-page-DmVDGInv.js} +1 -1
  161. package/dist/assets/{start-screen-Dh8Xc1ux.js → start-screen-C6vYttxA.js} +1 -1
  162. package/dist/assets/step-detail-header-BUPBq-L2.js +1 -0
  163. package/dist/assets/stt-language-picker-modal-DFKOeu2W.js +1 -0
  164. package/dist/assets/subagent-detail-panel-DC9XQ6tu.js +1 -0
  165. package/dist/assets/superpowers-page-CuXVfnXD.js +1 -0
  166. package/dist/assets/{system-events-page-DQQD-yh4.js → system-events-page-Dzq3fbaV.js} +1 -1
  167. package/dist/assets/system-events-redirect-page-Cenvs_Ju.js +1 -0
  168. package/dist/assets/{tabular-grid-Crdhci1a.js → tabular-grid-DSXFQVCQ.js} +1 -1
  169. package/dist/assets/{teleport-gateway-client-zRxDIHvy.js → teleport-gateway-client-BR2bvHi1.js} +1 -1
  170. package/dist/assets/{text-preview-CCRT6NMb.js → text-preview-CgGjveA8.js} +1 -1
  171. package/dist/assets/{theme-stage-page-BKDKhybd.js → theme-stage-page-B4EYq1ie.js} +1 -1
  172. package/dist/assets/{tiptap-document-editor-DMBoEpva.js → tiptap-document-editor-xBFwt_L_.js} +2 -2
  173. package/dist/assets/tool-detail-panel-BMYy6nUM.js +1 -0
  174. package/dist/assets/tool-detail-panel-DXUwaP--.js +16 -0
  175. package/dist/assets/{trait-cycle-row-Lgkm9R8c.js → trait-cycle-row-D8t_mnwH.js} +1 -1
  176. package/dist/assets/upgrade-cancel-page-CN453Bty.js +1 -0
  177. package/dist/assets/{upgrade-success-page-Dt9lxhGP.js → upgrade-success-page-S5uCQzzp.js} +1 -1
  178. package/dist/assets/{usage-redirect-page-BMvSf6Bj.js → usage-redirect-page-DO-DTblZ.js} +1 -1
  179. package/dist/assets/use-app-delete-BmgMYl5I.js +1 -0
  180. package/dist/assets/use-assistant-identity-details-DMfKD6fe.js +1 -0
  181. package/dist/assets/use-channel-trust-floors-DQS84dcN.js +1 -0
  182. package/dist/assets/use-checkout-dismiss-refresh-DXmnyAnC.js +1 -0
  183. package/dist/assets/{use-edge-swipe-back-D92U2q-N.js → use-edge-swipe-back-DtKBl_vw.js} +1 -1
  184. package/dist/assets/{use-hotkey-recorder-BRdHU8pS.js → use-hotkey-recorder-CMOgCBq2.js} +1 -1
  185. package/dist/assets/{use-invite-link-dialog-CbFJAi4C.js → use-invite-link-dialog-BfGKK7ts.js} +1 -1
  186. package/dist/assets/use-plugins-list-BU2Mayep.js +1 -0
  187. package/dist/assets/use-return-to-short-circuit-C1nW1Drp.js +1 -0
  188. package/dist/assets/{use-side-list-room-BL6BAMEB.js → use-side-list-room-BbjwwNrn.js} +1 -1
  189. package/dist/assets/{use-skill-actions-Ch-wHH29.js → use-skill-actions-DwYQzGnW.js} +1 -1
  190. package/dist/assets/use-skill-detail-files-BOBS2U1a.js +1 -0
  191. package/dist/assets/use-supports-credentials-settings-DYymZffm.js +1 -0
  192. package/dist/assets/voice-page-Cwq43WL8.js +1 -0
  193. package/dist/assets/{wake-detail-panel-BNA47SoV.js → wake-detail-panel-Dr2H1sov.js} +1 -1
  194. package/dist/assets/{weather-forecast-display-BGKTfbzy.js → weather-forecast-display-CQ7X4_s9.js} +1 -1
  195. package/dist/assets/{welcome-screen-nz_FAiGA.js → welcome-screen-Cvneu9Xo.js} +1 -1
  196. package/dist/assets/workflow-detail-panel-BkH32sJJ.js +1 -0
  197. package/dist/assets/workspace-page-3xsxuCT4.js +1 -0
  198. package/dist/assets/{xlsx-preview-z2rPKBuW.js → xlsx-preview-jJc83XIN.js} +1 -1
  199. package/dist/index.html +2 -2
  200. package/package.json +1 -1
  201. package/dist/assets/activation-list-route-DhFybN08.js +0 -1
  202. package/dist/assets/activity-steps-panel-B_e7fo5d.js +0 -1
  203. package/dist/assets/add-credits-modal-Ix6EeRaW.js +0 -1
  204. package/dist/assets/ai-page-B2OQRNjs.js +0 -1
  205. package/dist/assets/all-chats-page-route-DyAsat0t.js +0 -1
  206. package/dist/assets/android-billing-handoff-CNDHANI3.js +0 -1
  207. package/dist/assets/app-BNxKtvfM.js +0 -401
  208. package/dist/assets/archive-redirect-page-8VfIdYbY.js +0 -1
  209. package/dist/assets/assistant-handle-modal-BEF0aNRE.js +0 -1
  210. package/dist/assets/assistant-inbox-page-route-C2cqOdmg.js +0 -8
  211. package/dist/assets/auth-store-CDCjQtV1.js +0 -1
  212. package/dist/assets/avatar-bundled-components-DjgVURNE.js +0 -1
  213. package/dist/assets/avatar-random-BnJhjNyL.js +0 -1
  214. package/dist/assets/billing-page-DxzuCWv_.js +0 -3
  215. package/dist/assets/bookmarks-page-DU4zQI88.js +0 -1
  216. package/dist/assets/camera-capture-overlay-T0uYBvOu.js +0 -1
  217. package/dist/assets/channel-transcript-panel-B1TEFqiF.js +0 -1
  218. package/dist/assets/channels-page-route-DeocXDqs.js +0 -1
  219. package/dist/assets/chat-info-panel-lH_eTIGQ.js +0 -1
  220. package/dist/assets/checkout-return-target-Kr5OSzWN.js +0 -1
  221. package/dist/assets/command-palette-B7s1-xLZ.js +0 -1
  222. package/dist/assets/companion-surface-BheNXy_6.js +0 -1
  223. package/dist/assets/companion-surface-page-BxYp5tfL.js +0 -1
  224. package/dist/assets/contacts-gateway-FWhhciZa.js +0 -1
  225. package/dist/assets/contacts-page-route-GziPFmXf.js +0 -1
  226. package/dist/assets/credentials-page-DRfwESO-.js +0 -1
  227. package/dist/assets/csv-preview-U7XwAhlX.js +0 -1
  228. package/dist/assets/danger-zone-redirect-page-BV0lGnl_.js +0 -1
  229. package/dist/assets/debug-page-DwtjfO0H.js +0 -4
  230. package/dist/assets/deploy-dialogs-7b-AY3wa.js +0 -1
  231. package/dist/assets/desktop-preview-content-_pIEbVde.js +0 -2
  232. package/dist/assets/devices-redirect-page-Bn2y0m1x.js +0 -1
  233. package/dist/assets/document-load-BTXflX5D.js +0 -1
  234. package/dist/assets/document-load-BziXWGTc.js +0 -1
  235. package/dist/assets/document-viewer-page-B-2c3m5R.js +0 -1
  236. package/dist/assets/emails-page-CgiQD0Sv.js +0 -1
  237. package/dist/assets/general-page-DIQRLvou.js +0 -2
  238. package/dist/assets/hatching-screen-Dbp76r0P.js +0 -1
  239. package/dist/assets/identity-page-route-CHM3oI-k.js +0 -7
  240. package/dist/assets/inspect-page-BHs6vilE.js +0 -8
  241. package/dist/assets/integrations-page-CeK7nrkI.js +0 -1
  242. package/dist/assets/keyboard-shortcuts-redirect-page-BfgCJJ8W.js +0 -1
  243. package/dist/assets/library-page-DemxnENP.js +0 -1
  244. package/dist/assets/login-page-DJCWMJPS.js +0 -1
  245. package/dist/assets/memory-page-route-BZYeOOeW.js +0 -2
  246. package/dist/assets/message-files-panel-CNC5v1w7.js +0 -1
  247. package/dist/assets/mutation-error-CAyH2x36.js +0 -1
  248. package/dist/assets/native-attachment-pickers-BjVoKEUQ.js +0 -1
  249. package/dist/assets/native-file-CYAEPXYN.js +0 -1
  250. package/dist/assets/paired-cloud-identity-D6ABqHK-.js +0 -1
  251. package/dist/assets/password-reset-page-IPvSLWAz.js +0 -1
  252. package/dist/assets/pdf-file-preview-C68i9dU6.js +0 -1
  253. package/dist/assets/personality-sliders-DGNY8Rnd.js +0 -1
  254. package/dist/assets/plans-page-pq5hy60L.js +0 -1
  255. package/dist/assets/plugins-surface-DQ6HNFGt.js +0 -1
  256. package/dist/assets/privacy-page-BqiHHg7j.js +0 -1
  257. package/dist/assets/privacy-screen-Dq4eUoIO.js +0 -1
  258. package/dist/assets/profile-card-CkTa3Y8i.js +0 -1
  259. package/dist/assets/research-onboarding-route-BgMvaYdY.js +0 -50
  260. package/dist/assets/routes-Ct3akvBN.js +0 -1
  261. package/dist/assets/schedules-D8f5wsZc.js +0 -1
  262. package/dist/assets/schedules-page-B8PnXfuh.js +0 -1
  263. package/dist/assets/security-redirect-page-L5VVUkhf.js +0 -1
  264. package/dist/assets/select-assistant-screen-Bm0waz2L.js +0 -1
  265. package/dist/assets/share-feedback-modal-CdzyF0gl.js +0 -1
  266. package/dist/assets/share-feedback-modal-O62ToKHM.js +0 -2
  267. package/dist/assets/skill-detail-panel-CVrIAGi1.js +0 -1
  268. package/dist/assets/step-detail-header-C1U-HS14.js +0 -1
  269. package/dist/assets/stt-language-picker-modal-BWPQXHbg.js +0 -1
  270. package/dist/assets/subagent-detail-panel-BEHD2vOf.js +0 -1
  271. package/dist/assets/superpowers-page-Civ1dred.js +0 -1
  272. package/dist/assets/system-events-redirect-page-CMQWTWeS.js +0 -1
  273. package/dist/assets/tool-detail-panel-BR7h2ROn.js +0 -16
  274. package/dist/assets/tool-detail-panel-DCdX_SBO.js +0 -1
  275. package/dist/assets/upgrade-cancel-page-DEIK5f2e.js +0 -1
  276. package/dist/assets/use-app-delete-NTNPyRFw.js +0 -1
  277. package/dist/assets/use-assistant-identity-details-20XTojNX.js +0 -1
  278. package/dist/assets/use-channel-trust-floors-sx-Gm1Em.js +0 -1
  279. package/dist/assets/use-checkout-dismiss-refresh-C7kMkxS1.js +0 -1
  280. package/dist/assets/use-plugins-list-BQG0kv-t.js +0 -1
  281. package/dist/assets/use-return-to-short-circuit-Dqo3POFE.js +0 -1
  282. package/dist/assets/use-skill-detail-files-Chj_ePZG.js +0 -1
  283. package/dist/assets/use-supports-credentials-settings-Dv49IKbZ.js +0 -1
  284. package/dist/assets/voice-page-CcybrzXj.js +0 -1
  285. package/dist/assets/workflow-detail-panel-DRoeaq6c.js +0 -1
  286. package/dist/assets/workspace-page-ClGrsRBZ.js +0 -1
@@ -1,9 +1,9 @@
1
- import{_g as e,lv as t}from"./app-BNxKtvfM.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{J_ as e,ng as t}from"./app-B5J5Jx3A.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(t,n,r){let a=e=>i(t[e]??50),o=a(e.companionCoworker),s=a(e.executeCollaborate),c=a(e.playfulSerious),l=a(e.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}
5
5
  Coworker (0-100): ${o}
6
- Voice Style (0 = Gen Z, 100 = Boomer): ${a(t.genzBoomer)}
6
+ Voice Style (0 = Gen Z, 100 = Boomer): ${a(e.genzBoomer)}
7
7
  Execute Independently (0 - 100): ${100-s}
8
8
  Collaborative (0 - 100): ${s}
9
9
  Playfulness (0 - 100): ${100-c}
@@ -20,5 +20,5 @@ IDENTITY.md must keep a line reading exactly \`- **Personality:** <one short sen
20
20
  ${f}
21
21
 
22
22
  Each rewritten file must still be complete: SOUL.md keeps everything you operate by — how you use memory, your boundaries, your compliance stance — re-expressed in your new voice rather than dropped. When you finish, both files should read top-to-bottom as this new personality, with nothing left in the generic default voice.
23
- </system-message>`}function o({conversationId:t,content:n,transport:r}){let i={conversationId:t,content:n,sourceChannel:`cadet`,interface:r,hidden:!0,scripted:!0,clientMessageId:crypto.randomUUID()};return r===`web`&&(i.clientOs=e()),i}function s(e){for(let t=e.length-1;t>=0;t--){let n=e[t];if(!(!n||n.role!==`assistant`))return(n.contentBlocks??[]).filter(e=>e.type===`text`).map(e=>e.text).join(`
23
+ </system-message>`}function o({conversationId:e,content:n,transport:r}){let i={conversationId:e,content:n,sourceChannel:`cadet`,interface:r,hidden:!0,scripted:!0,clientMessageId:crypto.randomUUID()};return r===`web`&&(i.clientOs=t()),i}function s(e){for(let t=e.length-1;t>=0;t--){let n=e[t];if(!(!n||n.role!==`assistant`))return(n.contentBlocks??[]).filter(e=>e.type===`text`).map(e=>e.text).join(`
24
24
  `).trim()}return``}export{r as i,o as n,a as r,s as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{G as t,Gh as n,Gx as r,Ir as i,Lr as a,Sv as o,nu as s,tu as c,ur as l,v as u}from"./app-BNxKtvfM.js";import{d,f,h as p,t as m,x as h}from"./react-BJ4PZBJN.js";import{w as g}from"./vendor-CezcraPH.js";import{Yn as _}from"./icons-Dwi7aA1Y.js";import{t as v}from"./deploy-dialogs-DDe4zOdX.js";import{t as y}from"./use-edge-swipe-back-D92U2q-N.js";import{t as b}from"./app-types-DLSc4FO-.js";var x=e(h(),1),S=m();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}=g(`library`),{appId:m}=p(),h=t(),w=f(),{pathname:T}=d(),E=s(),D=i.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(m)return F.current=m,A(null),M(null),o({path:{assistant_id:h,id:m},throwOnError:!0}).then(({data:e})=>{F.current===m&&(n(h,e.appId,e.html),A({assistantId:h,appId:e.appId,dirName:e.dirName,name:e.name,html:e.html,origin:e.origin}))}).catch(e=>{F.current===m&&M(e instanceof Error?e.message:`Failed to open app`)}),()=>{F.current=null}},[h,m]);let I=(0,x.useCallback)(()=>{w(r.library.root)},[w]),L=(0,x.useCallback)(e=>{w(e)},[w]);y({containerRef:O,onBack:I,enabled:E,navKey:T,prefetchHref:r.library.root});let R=u(),z=(0,x.useCallback)(()=>{k&&R(k)},[k,R]),B=(0,x.useCallback)(async()=>{if(!(!k||N)){P(!0);try{await a(h,{id:k.appId,name:k.name},{exported:e(`libraryAppCard.exported`),failed:e(`libraryAppCard.shareFailed`)})}finally{P(!1)}}},[h,k,N,e]),V=(0,x.useCallback)(()=>{k&&i.getState().deployApp(h,k.appId,k.name,k.html)},[h,k]),H=(0,x.useCallback)(e=>{c(w,{prompt:e})},[w]);return m?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)(l,{appId:k.appId,appName:k.name,html:k.html,assistantId:h,onClose:I,onNavigateAppRoute:L,...b(k.origin)?{}:{onEdit:z,onShare:B,isSharing:N,onDeploy:V,isDeploying:D},enableFullscreen:!0})]}),(0,S.jsx)(v,{assistantId:h,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};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Fh as t,G as n,Hl as r,Nr as i,Pr as a,Ul as o,cr as s,kx as c,sv as l,v as u}from"./app-B5J5Jx3A.js";import{d,f,h as p,t as m,x as h}from"./react-BJ4PZBJN.js";import{w as g}from"./vendor-CezcraPH.js";import{Yn as _}from"./icons-Dwi7aA1Y.js";import{t as v}from"./deploy-dialogs-DFGsfhMR.js";import{t as y}from"./use-edge-swipe-back-DtKBl_vw.js";import{t as b}from"./app-types-DLSc4FO-.js";var x=e(h(),1),S=m();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}=g(`library`),{appId:m}=p(),h=n(),w=f(),{pathname:T}=d(),E=o(),D=i.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(m)return F.current=m,A(null),M(null),l({path:{assistant_id:h,id:m},throwOnError:!0}).then(({data:e})=>{F.current===m&&(t(h,e.appId,e.html),A({assistantId:h,appId:e.appId,dirName:e.dirName,name:e.name,html:e.html,origin:e.origin}))}).catch(e=>{F.current===m&&M(e instanceof Error?e.message:`Failed to open app`)}),()=>{F.current=null}},[h,m]);let I=(0,x.useCallback)(()=>{w(c.library.root)},[w]),L=(0,x.useCallback)(e=>{w(e)},[w]);y({containerRef:O,onBack:I,enabled:E,navKey:T,prefetchHref:c.library.root});let R=u(),z=(0,x.useCallback)(()=>{k&&R(k)},[k,R]),B=(0,x.useCallback)(async()=>{if(!(!k||N)){P(!0);try{await a(h,{id:k.appId,name:k.name},{exported:e(`libraryAppCard.exported`),failed:e(`libraryAppCard.shareFailed`)})}finally{P(!1)}}},[h,k,N,e]),V=(0,x.useCallback)(()=>{k&&i.getState().deployApp(h,k.appId,k.name,k.html)},[h,k]),H=(0,x.useCallback)(e=>{r(w,{prompt:e})},[w]);return m?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)(s,{appId:k.appId,appName:k.name,html:k.html,assistantId:h,onClose:I,onNavigateAppRoute:L,...b(k.origin)?{}:{onEdit:z,onShare:B,isSharing:N,onDeploy:V,isDeploying:D},enableFullscreen:!0})]}),(0,S.jsx)(v,{assistantId:h,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{CS as t,G as n,Hl as r,IS as i,Ji as a,Lt as o,Nr as s,Ph as c,QS as l,Qf as u,Rx as d,Ta as f,Ul as p,Zf as m,bp as h,cv as g,do as _,fo as v,kx as y,l as b,lc as x,lr as S,ns as C,qo as w,sC as T,tn as E,u as D,ur as O,xp as k,yg as A,yp as j}from"./app-B5J5Jx3A.js";import{d as M,f as N,t as P,x as F}from"./react-BJ4PZBJN.js";import{Jn as I,Zn as L,er as R,w as z}from"./vendor-CezcraPH.js";import{$r as B,A as V,At as H,Br as U,Cr as W,Ht as G,Ia as K,Ur as ee,Vt as q,ir as J,ri as te,tr as ne,vt as Y}from"./icons-Dwi7aA1Y.js";import{t as re}from"./deploy-dialogs-DFGsfhMR.js";import{t as ie}from"./intelligence-layout-slots-store-BDYggARJ.js";import{n as ae,r as oe,t as se}from"./use-app-delete-BmgMYl5I.js";import{t as ce}from"./app-types-DLSc4FO-.js";var X=e(F(),1),Z=P();function le(e){return e===1?`1 word`:`${e} words`}function ue({document:e,onOpen:t}){return(0,Z.jsxs)(`div`,{className:`group relative flex flex-col gap-2`,children:[(0,Z.jsxs)(`button`,{type:`button`,onClick:()=>t(e.surfaceId),className:w(`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,Z.jsx)(U,{size:34,className:`text-[var(--content-tertiary)]`}),(0,Z.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:le(e.wordCount)})]}),(0,Z.jsxs)(`button`,{type:`button`,onClick:()=>t(e.surfaceId),className:`flex cursor-pointer flex-col gap-0.5 rounded-sm px-0.5 text-left outline-none keyboard-focus:ring-2 keyboard-focus:ring-inset keyboard-focus:ring-[var(--ring)]`,children:[(0,Z.jsx)(`span`,{className:`truncate text-body-large-default text-[color:var(--content-emphasised)]`,children:e.title}),(0,Z.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:o(new Date(e.updatedAt))})]})]})}function de({onNewConversation:e}){let{t}=z(`library`);return(0,Z.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-4 px-4 py-24`,children:[(0,Z.jsx)(`div`,{className:`flex h-16 w-16 items-center justify-center rounded-xl bg-[var(--surface-base)]`,children:(0,Z.jsx)(J,{size:32,className:`text-[var(--content-tertiary)]`})}),(0,Z.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:t(`libraryEmptyState.heading`)}),(0,Z.jsx)(`p`,{className:`max-w-md text-center text-body-medium-lighter text-[color:var(--content-tertiary)]`,children:t(`libraryEmptyState.body`)}),e?(0,Z.jsx)(T,{variant:`primary`,size:`regular`,onClick:e,children:t(`libraryEmptyState.newConversation`)}):null]})}function fe({app:e,assistantId:t,isPinned:n,onOpen:r,onPin:i,onDelete:a,onDeploy:s,justImported:l,onAnimationEnd:u}){let{t:d}=z(`library`),p=ce(e.origin),m=p?void 0:a,h=p?void 0:s,g=(0,X.useCallback)(()=>c(t,e.id,e.updatedAt),[t,e.id,e.updatedAt]),_=ae(t,e,{exported:d(`libraryAppCard.exported`),failed:d(`libraryAppCard.shareFailed`)}),[v,y]=(0,X.useState)(!1),[b,x]=(0,X.useState)(!1),C=(0,X.useCallback)(()=>x(!0),[]),{deployedUrl:T}=O(t,e.id,{enabled:b&&h!=null}),D=(0,X.useCallback)(()=>{T!=null&&S(T)},[T]);return(0,Z.jsx)(f,{trailingActions:[{id:`pin`,label:d(n?`libraryAppCard.unpin`:`libraryAppCard.pin`),icon:n?G:q,onSelect:()=>i(e)},...m?[{id:`delete`,label:d(`libraryAppCard.delete`),icon:V,variant:`destructive`,onSelect:()=>m(e)}]:[]],className:`rounded-xl`,children:(0,Z.jsxs)(`div`,{"data-reveal-row":``,className:w(`relative flex flex-col gap-2`,l&&`animate-[card-entrance_400ms_ease-out]`),onAnimationEnd:l?u:void 0,onPointerEnter:C,children:[(0,Z.jsx)(`button`,{type:`button`,onClick:()=>r(e.id),className:w(`relative w-full cursor-pointer overflow-hidden rounded-xl`,`outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`),children:(0,Z.jsx)(E,{name:e.name,icon:e.icon,loadHtml:g})}),(0,Z.jsx)(`div`,{"data-reveal":``,className:`absolute right-2 top-2 z-20`,children:(0,Z.jsx)(pe,{appName:e.name,isPinned:n,open:v,onOpenChange:e=>{e&&C(),y(e)},onPin:()=>i(e),onDelete:m?()=>m(e):void 0,onShare:p?void 0:_,onDeploy:h,deployedUrl:T,onCopyDeployedLink:D})}),(0,Z.jsxs)(`button`,{type:`button`,onClick:()=>r(e.id),className:`flex cursor-pointer flex-col gap-0.5 rounded-sm px-0.5 text-left outline-none keyboard-focus:ring-2 keyboard-focus:ring-inset keyboard-focus:ring-[var(--ring)]`,children:[(0,Z.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,Z.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)] max-md:hidden`,children:o(new Date(e.createdAt))})]})]})})}function pe({appName:e,isPinned:t,open:n,onOpenChange:r,onPin:i,onDelete:a,onShare:o,onDeploy:s,deployedUrl:c,onCopyDeployedLink:u}){let{t:d}=z(`library`),f=c!=null&&c!==``&&u!=null,p=d(`libraryAppCard.actionsTitle`,{appName:e});return(0,Z.jsxs)(l.Root,{open:n,onOpenChange:r,children:[(0,Z.jsx)(l.Trigger,{asChild:!0,children:(0,Z.jsx)(T,{variant:`primary`,size:`compact`,iconOnly:(0,Z.jsx)(B,{}),"aria-label":p,onClick:e=>e.stopPropagation()})}),(0,Z.jsxs)(l.Content,{title:p,children:[(0,Z.jsx)(l.Item,{icon:t?G:q,label:d(t?`libraryAppCard.unpin`:`libraryAppCard.pin`),onSelect:i}),o?(0,Z.jsx)(l.Item,{icon:K,label:d(`libraryAppCard.share`),description:d(`libraryAppCard.shareSub`),onSelect:o}):null,s&&f?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(l.Item,{icon:ne,label:d(`libraryAppCard.deployed`),description:(0,Z.jsx)(`span`,{className:`break-all`,children:c}),trailing:d(`libraryAppCard.copyLink`),onSelect:()=>u?.()}),(0,Z.jsx)(l.Item,{icon:H,label:d(`libraryAppCard.redeploy`),description:d(`libraryAppCard.redeploySub`),onSelect:s})]}):s?(0,Z.jsx)(l.Item,{icon:W,label:d(`libraryAppCard.deploy`),description:d(`libraryAppCard.deploySub`),onSelect:s}):null,a?(0,Z.jsx)(l.Item,{icon:V,label:d(`libraryAppCard.delete`),tone:`destructive`,onSelect:a}):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,Z.jsxs)(`section`,{children:[(0,Z.jsx)(`h2`,{className:`mb-4 text-body-small-emphasised text-[color:var(--content-secondary)] max-md:sr-only`,children:e}),(0,Z.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,Z.jsx)(fe,{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 me(e){let{pinnedAppIds:t}=a(e),{data:n=[],isLoading:r,error:i}=L({...m({path:{assistant_id:e}}),select:e=>e.apps}),{data:o=[],isLoading:s,error:c}=L({...h({path:{assistant_id:e}}),select:e=>e.documents}),l=r||s,u=i&&c?i instanceof Error?i.message:`Failed to load library`:null,[d,f]=(0,X.useState)(``),p=(0,X.useMemo)(()=>{if(!d.trim())return n;let e=d.toLowerCase();return n.filter(t=>t.name.toLowerCase().includes(e)||t.description?.toLowerCase().includes(e))},[n,d]);return{apps:n,documents:o,filteredApps:p,pinnedApps:(0,X.useMemo)(()=>p.filter(e=>t.has(e.id)).sort($),[p,t]),recentApps:(0,X.useMemo)(()=>p.filter(e=>!t.has(e.id)).sort($),[p,t]),filteredDocuments:(0,X.useMemo)(()=>{if(!d.trim())return o;let e=d.toLowerCase();return o.filter(t=>t.title.toLowerCase().includes(e))},[o,d]),searchText:d,setSearchText:f,loading:l,error:u}}async function he(e,t){let{data:n,error:r,response:i}=await g({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 ge({assistantId:e,assistantName:n,onNewConversation:r,onOpenDocument:o,onNewDocument:l,isCreatingDocument:d=!1,onOpenApp:f}){let{t:m}=z(`library`),h=p(),g=R(),{togglePin:_,pinnedAppIds:v}=a(e),y=s.use.isDeploying(),{apps:b,documents:x,filteredApps:S,pinnedApps:w,recentApps:E,filteredDocuments:D,searchText:O,setSearchText:k,loading:A,error:j}=me(e),{pendingDelete:M,isDeleting:N,requestDelete:P,confirmDelete:F,cancelDelete:I}=se(e),[L]=(0,X.useState)(()=>C()?void 0:`.cadet`),B=(0,X.useRef)(null),[V,H]=(0,X.useState)(!1),U=(0,X.useCallback)(async n=>{let r=n.target.files?.[0];if(!(!r||V)){H(!0);try{let n=await he(e,r);await g.invalidateQueries({queryKey:u({path:{assistant_id:e}})}),t.success(m(`libraryView.imported`,{name:n.name})),f(n.appId)}catch(e){t.error(e instanceof Error?e.message:m(`libraryView.importFailed`))}finally{H(!1),B.current&&(B.current.value=``)}}},[e,V,g,f,m]),W=(0,X.useCallback)(async t=>{if(y)return;let n=b.find(e=>e.id===t)?.name??`this app`;try{let r=await c(e,t);s.getState().deployApp(e,t,n,r)}catch{s.getState().deployApp(e,t,n,``)}},[e,y,b]),G=(0,X.useCallback)(e=>_(e.id),[_]),K=ie.use.setHeaderTrailing(),q=!A&&!j;if((0,X.useEffect)(()=>{if(!q){K(null);return}let e=(0,Z.jsx)(`div`,{className:`h-4 w-4 animate-spin rounded-full border-2 border-current border-t-transparent`}),t=V?e:(0,Z.jsx)(te,{"aria-hidden":!0}),n=d?e:(0,Z.jsx)(ee,{"aria-hidden":!0});return K(h?(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(T,{shape:`pill`,variant:`ghost`,iconOnly:t,"aria-label":m(`libraryView.import`),tooltip:m(`libraryView.import`),className:`max-md:bg-[var(--surface-active)]`,onClick:()=>B.current?.click(),disabled:V}),l?(0,Z.jsx)(T,{shape:`pill`,variant:`ghost`,iconOnly:n,"aria-label":m(`libraryView.newDocument`),tooltip:m(`libraryView.newDocument`),className:`max-md:bg-[var(--surface-active)]`,onClick:l,disabled:d}):null]}):(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsxs)(T,{variant:`outlined`,size:`regular`,onClick:()=>B.current?.click(),disabled:V,children:[t,(0,Z.jsx)(`span`,{className:`ml-1.5`,children:m(`libraryView.import`)})]}),l?(0,Z.jsxs)(T,{size:`regular`,onClick:l,disabled:d,children:[n,(0,Z.jsx)(`span`,{className:`ml-1.5`,children:m(`libraryView.newDocument`)})]}):null]})),()=>{K(null)}},[h,q,V,l,d,K,m]),A)return(0,Z.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,Z.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":m(`libraryView.loadingAria`)})});if(j)return(0,Z.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-4 px-4`,children:[(0,Z.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:j}),(0,Z.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:m(`libraryView.retry`)})]});let J=b.length===0&&x.length===0;return(0,Z.jsxs)(`div`,{className:`flex h-full flex-col overflow-hidden`,children:[(0,Z.jsx)(`input`,{ref:B,type:`file`,accept:L,className:`hidden`,onChange:U}),J?(0,Z.jsx)(`div`,{className:`min-h-0 flex-1`,children:(0,Z.jsx)(de,{onNewConversation:r?()=>r():void 0})}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`mb-6 shrink-0`,children:(0,Z.jsx)(i,{fullWidth:!0,type:`text`,placeholder:m(`libraryView.searchPlaceholder`),value:O,onChange:e=>k(e.target.value),leftIcon:(0,Z.jsx)(Y,{size:16})})}),(0,Z.jsx)(`div`,{className:`flex-1 overflow-y-auto`,children:S.length===0&&D.length===0?(0,Z.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-16`,children:[(0,Z.jsx)(Y,{size:32,className:`mb-4 text-[var(--content-tertiary)]`}),(0,Z.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:m(`libraryView.noMatches`,{query:O})})]}):(0,Z.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[(0,Z.jsx)(Q,{title:m(`libraryView.pinned`),apps:w,assistantId:e,pinnedAppIds:v,onOpen:f,onPin:G,onDelete:P,onDeploy:W}),(0,Z.jsx)(Q,{title:m(`libraryView.recents`),apps:E,assistantId:e,pinnedAppIds:v,onOpen:f,onPin:G,onDelete:P,onDeploy:W}),D.length>0?(0,Z.jsxs)(`section`,{children:[(0,Z.jsx)(`h2`,{className:`mb-4 text-body-small-emphasised text-[color:var(--content-secondary)]`,children:m(`libraryView.documents`)}),(0,Z.jsx)(`div`,{className:`grid grid-cols-[repeat(auto-fill,minmax(max(220px,calc((100%-6rem)/5)),1fr))] gap-6`,children:D.map(e=>(0,Z.jsx)(ue,{document:e,onOpen:e=>{o&&o(e)}},e.surfaceId))})]}):null]})}),(0,Z.jsx)(re,{assistantId:e,assistantName:n,onStartConversation:r}),(0,Z.jsx)(oe,{app:M,isDeleting:N,onConfirm:F,onCancel:I})]})]})}function _e(){let e=R(),t=I({...j(),onSuccess:(t,n)=>{e.invalidateQueries({queryKey:k({path:n.path})})}});return{createDocument:({assistantId:e,conversationId:n})=>t.mutateAsync({path:{assistant_id:e},body:{conversationId:n}}),isPending:t.isPending}}function ve(e,n){let{t:r}=z(`library`),i=R(),{createDocument:a}=_e(),[o,s]=(0,X.useState)(!1),c=(0,X.useRef)(!1);return{newDocument:(0,X.useCallback)(async()=>{if(!c.current){c.current=!0,s(!0);try{let o=await b({assistantId:e,fallback:r(`libraryView.newDocumentFailed`)});if(!o.ok){t.error(o.error);return}let s;try{({surfaceId:s}=await a({assistantId:e,conversationId:o.conversationId}))}catch(n){d(n,{context:`new_library_document`}),D(e,o.conversationId),t.error(r(`libraryView.newDocumentFailed`));return}x(i,e),n(s)}finally{c.current=!1,s(!1)}}},[e,a,n,i,r]),isCreating:o}}var ye=`0.12.2-dev.202609211450.3151b18`;function be(e){return A(ye,e)}function xe(){let e=n(),t=N(),i=M(),a=(0,X.useCallback)(e=>{r(t,{prompt:e})},[t]),o=(0,X.useCallback)(e=>{t(v(e,i.pathname),{state:_(i,e)})},[t,i]),{newDocument:s,isCreating:c}=ve(e,o),l=be(e),u=(0,X.useCallback)(()=>{s()},[s]),d=(0,X.useCallback)(e=>{t(y.library.app(e))},[t]);return(0,Z.jsx)(ge,{assistantId:e,onNewConversation:a,onOpenDocument:o,onNewDocument:l?u:void 0,isCreatingDocument:c,onOpenApp:d})}export{xe as LibraryPage};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Dy as t,Gc as n,Oy as r,Rx as i,Uc as a,Wc as o,ab as s,kx as c,sC as l}from"./app-B5J5Jx3A.js";import{d as u,t as d,x as f}from"./react-BJ4PZBJN.js";import{w as p}from"./vendor-CezcraPH.js";import{n as m,r as h,t as g}from"./auth-welcome-screen-cs14WDS5.js";import{n as _,t as v}from"./use-return-to-short-circuit-C1nW1Drp.js";var y=e(f(),1),b=d();function x({returnTo:e}){let{t:r}=p(`account`),[s,c]=(0,y.useState)(null),[u,d]=(0,y.useState)(!1),f=async()=>{c(null),d(!0);try{await t({returnTo:e??null})}catch(e){if(a(e)){d(!1);return}i(e,{context:`native_login`,tags:{authError:o(e)??`unclassified`}}),c(r(n(e))),d(!1)}};return(0,b.jsx)(h,{animateAvatarWaveIn:!0,fillsViewport:!0,children:(0,b.jsx)(m,{error:s,children:(0,b.jsx)(l,{type:`button`,variant:`primary`,size:`large`,fullWidth:!0,onClick:()=>{f()},disabled:u,children:r(`loginPage.signIn`)})})})}function S({returnTo:e}){let{t}=p(`account`),{search:n}=u(),r=s(e?`${c.account.signup}?returnTo=${encodeURIComponent(e)}`:c.account.signup,n);return(0,b.jsx)(g,{returnTo:e,errorContext:`web_login`,fillsViewport:!0,secondary:{label:t(`loginPage.signUp`),href:r}})}function C(){let e=r(),t=v();return t.kind===`wait`?(0,b.jsx)(h,{animateAvatarWaveIn:!0,fillsViewport:!0,children:(0,b.jsx)(_,{})}):t.kind===`redirect`?t.node:e?(0,b.jsx)(x,{returnTo:t.returnTo}):(0,b.jsx)(S,{returnTo:t.returnTo})}export{C as LoginPage};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Gx as t,bb as n,fl as r,yh as i}from"./app-BNxKtvfM.js";import{_ as a,t as o,x as s}from"./react-BJ4PZBJN.js";import{w as c}from"./vendor-CezcraPH.js";import{r as l,t as u}from"./account-shell-CaNt5YTy.js";var d=e(s(),1),f=o();function p(){let{t:e}=c(`account`),[o]=a(),s=i.use.logout(),p=(0,d.useRef)(!1);return(0,d.useEffect)(()=>{if(p.current)return;p.current=!0;let e=n(o.get(`returnTo`),t.account.login),i=e.startsWith(`http`)||e===t.account.login?e:`${t.account.login}?returnTo=${encodeURIComponent(e)}`,a=!1;return s().then(()=>{a||r(i)},()=>{a||r(i)}),()=>{a=!0}},[s,o]),(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{kx as t,rb as n,uf as r,uh as i}from"./app-B5J5Jx3A.js";import{_ as a,t as o,x as s}from"./react-BJ4PZBJN.js";import{w as c}from"./vendor-CezcraPH.js";import{r as l,t as u}from"./account-shell-DUFMbbtT.js";var d=e(s(),1),f=o();function p(){let{t:e}=c(`account`),[o]=a(),s=i.use.logout(),p=(0,d.useRef)(!1);return(0,d.useEffect)(()=>{if(p.current)return;p.current=!0;let e=n(o.get(`returnTo`),t.account.login),i=e.startsWith(`http`)||e===t.account.login?e:`${t.account.login}?returnTo=${encodeURIComponent(e)}`,a=!1;return s().then(()=>{a||r(i)},()=>{a||r(i)}),()=>{a=!0}},[s,o]),(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{Gx as t,gh as n}from"./app-BNxKtvfM.js";import{d as r,i,t as a,x as o}from"./react-BJ4PZBJN.js";import{Vn as s,Ya as c}from"./icons-Dwi7aA1Y.js";import{n as l,t as u}from"./sidebar-tree-D1pphm3H.js";var d=c(`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:s},{id:`system-events`,label:`System Events`,href:t.logs.systemEvents,icon:d}],m=a();function h(){let e=n({cloudHostedOnly:!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
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{kx as t,sh as n}from"./app-B5J5Jx3A.js";import{d as r,i,t as a,x as o}from"./react-BJ4PZBJN.js";import{Vn as s,Ya as c}from"./icons-Dwi7aA1Y.js";import{n as l,t as u}from"./sidebar-tree-Cc4j-3dl.js";var d=c(`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:s},{id:`system-events`,label:`System Events`,href:t.logs.systemEvents,icon:d}],m=a();function h(){let e=n({cloudHostedOnly:!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{An as e,Nn as t,ar as n}from"./app-BNxKtvfM.js";import{t as r}from"./react-BJ4PZBJN.js";import{w as i}from"./vendor-CezcraPH.js";import{t as a}from"./preview-error-DhG_s3C0.js";import{t as o}from"./use-truncated-blob-text-D16QRG1n.js";var s=r(),c=512*1024;function l({blob:r,filename:l}){let{t:u}=i(`chat`),{text:d,truncated:f,decodeFailed:p}=o(r,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)(e,{content:d}),f&&(0,s.jsx)(t,{children:u(`previewTruncationNotice.markdown`)})]})}export{l as MarkdownPreview};
1
+ import{On as e,jn as t,rr as n}from"./app-B5J5Jx3A.js";import{t as r}from"./react-BJ4PZBJN.js";import{w as i}from"./vendor-CezcraPH.js";import{t as a}from"./preview-error-BwMkwAY5.js";import{t as o}from"./use-truncated-blob-text-D16QRG1n.js";var s=r(),c=512*1024;function l({blob:r,filename:l}){let{t:u}=i(`chat`),{text:d,truncated:f,decodeFailed:p}=o(r,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)(e,{content:d}),f&&(0,s.jsx)(t,{children:u(`previewTruncationNotice.markdown`)})]})}export{l as MarkdownPreview};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Nh as t,ar as n,ir as r}from"./app-BNxKtvfM.js";import{t as i,x as a}from"./react-BJ4PZBJN.js";var o=e(a(),1),s=i(),c=`nodownload noplaybackrate`;function l({blob:e,filename:i,kind:a}){let l=r(e,(0,o.useMemo)(()=>t({sniffedMime:null,serverMime:e.type.length>0?e.type:null,filename:i}).mime,[e,i]));return l===null?(0,s.jsx)(n,{}):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{Ch as t,nr as n,rr as r}from"./app-B5J5Jx3A.js";import{t as i,x as a}from"./react-BJ4PZBJN.js";var o=e(a(),1),s=i(),c=`nodownload noplaybackrate`;function l({blob:e,filename:i,kind:a}){let l=n(e,(0,o.useMemo)(()=>t({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};
@@ -0,0 +1,2 @@
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Bc as t,Bx as n,CS as r,ES as i,G as a,Hl as o,Iv as s,LS as c,Lf as l,On as u,Qs as d,Rc as f,Ux as p,Vx as m,XS as h,kx as g,sC as _,wS as v,zc as y,zv as b}from"./app-B5J5Jx3A.js";import{f as x,t as ee,x as te}from"./react-BJ4PZBJN.js";import{Xn as S,Zn as C,er as w,k as T,w as E}from"./vendor-CezcraPH.js";import{$ as D,At as O,Cn as ne,Et as re,Ki as ie,Ln as ae,Lt as k,Mn as A,Wi as j,gt as M,i as N,n as P,qi as F,t as oe,vt as I}from"./icons-Dwi7aA1Y.js";var L=e(te(),1),R={x:600,y:450},z=Math.PI*(3-Math.sqrt(5)),B=7,se=2.4,ce=34,le=10;function V(e){return Math.min(ce,B+se*Math.sqrt(e))}function H(e){return e===`concept`||e===`skill`||e===`capability`||e===`pending`?e:`other`}function U(e){return e===`link`||e===`learned`?e:`other`}function ue(e,t={}){let n=t.center??R,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)=>V(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*z,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]+le;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:H(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:U(e.kind),directed:e.directed??!1};return e.description&&(n.description=e.description),n})}}var W=ee();function de({title:e,detail:t,action:n}){return(0,W.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2 px-6 text-center`,children:[(0,W.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),t?(0,W.jsx)(`p`,{className:`max-w-sm text-body-small-default`,style:{color:`var(--content-tertiary)`},children:t}):null,n?(0,W.jsx)(`div`,{className:`mt-2`,children:n}):null]})}function G(){return T(`getMemoryGraphNode.failureMessage`,{ns:`intelligence`})}function fe(e,t){return S({queryKey:[`memory-graph-node`,e,t],enabled:!!(e&&t),queryFn:async()=>{let{data:r,error:i,response:a}=await b({path:{assistant_id:e},query:{id:t??``},throwOnError:!1});if(m(a,i,G()),!a.ok)throw new n(a.status,p(i,a,G()));return r??{found:!1}}})}var pe={concept:`#467CC8`,skill:`#DB4B77`,capability:`#0E9B8B`,pending:`#F1B21E`,other:`#8D99A5`},me=[`#467CC8`,`#E86B40`,`#7A5AF5`,`#22B8CF`,`#3DB85E`,`#E9C91A`,`#E83F5B`,`#6ECF87`,`#F39B74`,`#F5C94E`],he={concept:`conceptGraphConstants.nodeKind.concept`,skill:`conceptGraphConstants.nodeKind.skill`,capability:`conceptGraphConstants.nodeKind.capability`,pending:`conceptGraphConstants.nodeKind.pending`,other:`conceptGraphConstants.nodeKind.other`};function ge(e){return T(he[e],{ns:`intelligence`})}var _e=`#F1B21E`;function K(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 ve(e){return e?new Date(e).toLocaleDateString(`en-GB`,{day:`numeric`,month:`short`,year:`numeric`}):null}var q=600;function J(e){let t=e.slice(0,q),n=t.lastIndexOf(`
2
+ `);return n>q/2?e.slice(0,n):t}function ye({content:e}){let[t,n]=(0,L.useState)(!1),{t:r}=E(`intelligence`);return e.length<=q?(0,W.jsx)(u,{content:e}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(u,{content:t?e:J(e)}),(0,W.jsx)(_,{variant:`ghost`,size:`compact`,className:`-ml-2 mt-1`,onClick:()=>n(e=>!e),rightIcon:t?(0,W.jsx)(j,{size:16,"aria-hidden":!0}):(0,W.jsx)(F,{size:16,"aria-hidden":!0}),children:r(t?`conceptDetailPanel.showLess`:`conceptDetailPanel.readFullNote`)})]})}function be({assistantId:e,node:t,trail:n,neighbors:r,onTravel:i,onCrumb:a,onClose:o,onOpenThread:s}){let{t:c}=E(`intelligence`),l=C(fe(e,t.id)),u=l.data,d=ve(t.updatedAtMs),f=u?.title??t.label,p=K(n);return(0,L.useEffect)(()=>{let e=e=>{e.key===`Escape`&&!e.defaultPrevented&&(e.preventDefault(),o())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[o]),(0,W.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,W.jsx)(`div`,{className:`absolute inset-0`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 16%, transparent)`},onClick:o}),(0,W.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,W.jsxs)(`nav`,{"aria-label":c(`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,W.jsx)(_,{variant:`ghost`,size:`compact`,iconOnly:(0,W.jsx)(ie,{"aria-hidden":!0}),iconOnlyGlyphClassName:`[&_svg]:size-4`,expandOnMobile:!1,onClick:()=>a(n.length-2),"aria-label":c(`conceptDetailPanel.backAriaLabel`),className:`-ml-1 mr-0.5 h-5 w-5 shrink-0 rounded`}),p.map((e,t)=>(0,W.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1`,children:[t>0?(0,W.jsx)(`span`,{"aria-hidden":!0,children:`›`}):null,e===`ellipsis`?(0,W.jsx)(`span`,{"aria-hidden":!0,children:`…`}):e.index===n.length-1?(0,W.jsx)(`span`,{"aria-current":`page`,className:`max-w-[9rem] truncate`,style:{color:`var(--content-default)`},children:e.node.label}):(0,W.jsx)(`button`,{type:`button`,onClick:()=>a(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,W.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,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`h2`,{className:`truncate text-title-small`,style:{color:`var(--content-default)`},title:u?.title??t.label,children:u?.title??t.label}),d?(0,W.jsx)(`p`,{className:`mt-0.5 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:c(`conceptDetailPanel.updated`,{date:d})}):null]}),(0,W.jsx)(_,{variant:`ghost`,iconOnly:(0,W.jsx)(N,{"aria-hidden":!0}),onClick:o,"aria-label":c(`conceptDetailPanel.closeAriaLabel`),tintColor:`var(--content-tertiary)`})]}),(0,W.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-5 py-4`,style:{touchAction:`pan-y`},children:[l.isLoading?(0,W.jsx)(`div`,{className:`flex justify-center py-8`,children:(0,W.jsx)(`div`,{className:`h-5 w-5 animate-spin rounded-full border-2`,style:{borderColor:`var(--border-base)`,borderTopColor:`var(--content-tertiary)`}})}):l.isError?(0,W.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:c(`conceptDetailPanel.loadError`)}):u?.found&&u.content?.trim()?(0,W.jsx)(ye,{content:u.content},t.id):(0,W.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:c(`conceptDetailPanel.emptyContent`)}),r.length>0?(0,W.jsxs)(`section`,{className:`mt-6 border-t pt-4`,style:{borderColor:`var(--border-base)`},children:[(0,W.jsxs)(`div`,{className:`mb-2 flex items-baseline justify-between gap-2`,children:[(0,W.jsx)(`h3`,{className:`text-body-small-default uppercase tracking-wide`,style:{color:`var(--content-tertiary)`},children:c(`conceptDetailPanel.wiredTo`)}),(0,W.jsx)(`span`,{className:`text-body-small-default tabular-nums`,style:{color:`var(--content-tertiary)`},children:c(`conceptDetailPanel.connectionCount`,{count:r.length})})]}),(0,W.jsx)(`ul`,{className:`flex list-none flex-col gap-0.5`,children:r.map(e=>(0,W.jsx)(`li`,{children:(0,W.jsxs)(`button`,{type:`button`,onClick:()=>i({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,W.jsx)(`span`,{"aria-hidden":!0,className:`h-1.5 w-1.5 shrink-0 rounded-full`,style:{backgroundColor:e.kind===`learned`?_e:`var(--content-tertiary)`}}),(0,W.jsx)(`span`,{className:`truncate`,children:e.label})]})},e.id))})]}):null]}),s?(0,W.jsxs)(`footer`,{className:`flex shrink-0 gap-2 border-t px-5 py-3`,style:{borderColor:`var(--border-base)`},children:[(0,W.jsx)(_,{variant:`outlined`,size:`regular`,className:`flex-1`,leftIcon:(0,W.jsx)(A,{size:16,"aria-hidden":!0}),onClick:()=>s(c(`conceptDetailPanel.askPrompt`,{title:f})),children:c(`conceptDetailPanel.askAboutThis`)}),(0,W.jsx)(_,{variant:`primary`,size:`regular`,className:`flex-1`,leftIcon:(0,W.jsx)(D,{size:16,"aria-hidden":!0}),onClick:()=>s(c(`conceptDetailPanel.refinePrompt`,{title:f})),children:c(`conceptDetailPanel.refine`)})]}):null]})]})}function xe({onDismiss:e}){let{t}=E(`intelligence`);return(0,W.jsxs)(`div`,{"data-graph-control":!0,className:`pointer-events-auto flex w-full max-w-[30rem] self-center 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,W.jsx)(`span`,{className:`mt-0.5 shrink-0`,style:{color:`var(--primary-base)`},"aria-hidden":!0,children:(0,W.jsx)(D,{size:18})}),(0,W.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,W.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:t(`conceptGraphIntroBanner.title`)}),(0,W.jsx)(`p`,{className:`mt-0.5 text-body-small-lighter`,style:{color:`var(--content-tertiary)`},children:t(`conceptGraphIntroBanner.description`)})]}),(0,W.jsx)(_,{variant:`ghost`,iconOnly:(0,W.jsx)(N,{"aria-hidden":!0}),onClick:e,"aria-label":t(`conceptGraphIntroBanner.dismissAriaLabel`),tintColor:`var(--content-tertiary)`})]})}var Y=8;function Se({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,W.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,W.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`inline-block h-2.5 w-2.5 rounded-full`,style:{backgroundColor:pe[e]}}),(0,W.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:ge(e)})]},e)),t&&(n&&n.length>0?(0,W.jsxs)(W.Fragment,{children:[n.slice(0,Y).map((e,t)=>(0,W.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`inline-block h-2.5 w-2.5 shrink-0 rounded-full`,style:{backgroundColor:e.color}}),(0,W.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>Y&&(0,W.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:l(`conceptGraphLegend.moreThemes`,{count:n.length-Y})})]}):(0,W.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:l(`conceptGraphLegend.coloredByTheme`)})),(e.length>0||t)&&(r||i)&&(0,W.jsx)(`div`,{className:`mt-0.5 border-t pt-1.5`,style:{borderColor:`var(--border-base)`}}),r&&(0,W.jsx)(Ce,{swatchStyle:{borderTop:`2px solid var(--content-tertiary)`},label:l(`conceptGraphLegend.link`),onToggle:a,active:s}),i&&(0,W.jsx)(Ce,{swatchStyle:{borderTop:`2px dashed #F1B21E`},label:l(`conceptGraphLegend.learned`),onToggle:o,active:c})]})}function Ce({swatchStyle:e,label:t,onToggle:n,active:r}){let i=(0,W.jsx)(`span`,{className:`inline-block h-0 w-4`,style:e}),a=(0,W.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:t});return n?(0,W.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,W.jsxs)(`div`,{className:`flex items-center gap-2`,children:[i,a]})}var X=8;function we(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<X;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 Te(){return T(`memoryUnavailable.prompts.v2`,{ns:`intelligence`})}function Ee(){return T(`memoryUnavailable.prompts.v1`,{ns:`intelligence`})}function De(){return T(`memoryUnavailable.prompts.enable`,{ns:`intelligence`})}function Oe(){return{title:T(`memoryUnavailable.statusError.title`,{ns:`intelligence`}),detail:T(`memoryUnavailable.statusError.detail`,{ns:`intelligence`}),action:`retry`}}function Z(e){return e===`off`?{title:T(`memoryUnavailable.off.title`,{ns:`intelligence`}),detail:T(`memoryUnavailable.off.detail`,{ns:`intelligence`}),action:`settings`,prompt:De()}:e===`v1`||e===`v2`?{title:T(`memoryUnavailable.legacy.title`,{ns:`intelligence`}),detail:T(`memoryUnavailable.legacy.detail`,{ns:`intelligence`}),action:`upgrade`,prompt:e===`v1`?Ee():Te()}:{title:T(`memoryUnavailable.unknown.title`,{ns:`intelligence`}),detail:T(`memoryUnavailable.unknown.detail`,{ns:`intelligence`}),action:`none`}}function ke({assistantId:e,onOpenThread:t}){let{t:n}=E(`intelligence`),r=x(),i=w(),a=C(y(e));(0,L.useEffect)(()=>{f(i,e)},[i,e]);let o=d(`memoryOptOut`),s=l.use.settingsDeveloperNav(),c=o&&s===!0;if(a.isLoading)return null;let u=a.data?.kind===`ready`?a.data.tier:void 0,p=a.isError?Oe():Z(u),m=p.prompt,h=null;return p.action===`upgrade`&&t&&m?h=(0,W.jsx)(_,{variant:`primary`,size:`compact`,leftIcon:(0,W.jsx)(D,{}),onClick:()=>{t(m)},children:n(`memoryUpgradePrompt.upgradeMemory`)}):p.action===`retry`?h=(0,W.jsx)(_,{variant:`outlined`,size:`compact`,leftIcon:(0,W.jsx)(O,{}),onClick:()=>{a.refetch()},children:n(`memoryUpgradePrompt.tryAgain`)}):p.action===`settings`&&c?h=(0,W.jsx)(_,{variant:`outlined`,size:`compact`,leftIcon:(0,W.jsx)(M,{}),onClick:()=>r(`${g.settings.developer}?tab=memory`),children:n(`memoryUpgradePrompt.memorySettings`)}):p.action===`settings`&&t&&m&&(h=(0,W.jsx)(_,{variant:`primary`,size:`compact`,leftIcon:(0,W.jsx)(D,{}),onClick:()=>{t(m)},children:n(`memoryUpgradePrompt.turnMemoryOn`)})),(0,W.jsx)(de,{title:p.title,detail:p.detail,action:h})}function Ae({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,W.jsx)(i,{ariaLabel:n(`recencyLens.ariaLabel`),items:r,value:e,onChange:t,className:`!w-auto [&>*]:!flex-none`})}var Q=`cadet:memoryGraph:introDismissed:`;function $(e){return`${Q}${e}`}function je(e){if(!e)return!0;try{return window.localStorage.getItem($(e))===`1`}catch{return!0}}function Me(e){let[t,n]=(0,L.useState)(()=>je(e));return(0,L.useEffect)(()=>{n(je(e))},[e]),[t,(0,L.useCallback)(()=>{n(!0);try{window.localStorage.setItem($(e),`1`)}catch{}},[e])]}var Ne=[`concept`,`skill`,`capability`,`pending`,`other`],Pe=.13,Fe=2600,Ie=.006,Le=1.15,Re=3,ze=.32,Be=.45,Ve=3,He=4,Ue=1440*60*1e3,We=14*Ue,Ge=12,Ke=2*Ue,qe=80,Je=340,Ye=.12,Xe=.05,Ze=.03,Qe=12,$e=2600;function et(e){let t=getComputedStyle(e);return{content:t.getPropertyValue(`--content-default`).trim()||`#e5e7eb`,tertiary:t.getPropertyValue(`--content-tertiary`).trim()||`#8792a0`}}function tt(e){return e.kind===`learned`?`Learned association`:e.description??`Linked concepts`}function nt(e,t,n){return t==null?!1:e==null||n-e>t}function rt(e,t){let n=t?e.get(t):void 0;return e=>t!=null&&(e===t||(n?.has(e)??!1))}function it({assistantId:e,className:n,isFullscreen:r,onToggleFullscreen:i,onOpenThread:a,headerAction:o,handleRef:s}){let{t:c}=E(`intelligence`),l=(0,L.useRef)(null),u=(0,L.useRef)(null),d=C(t(e)),f=d.data?.kind===`ready`?d.data.graph:null,p=(0,L.useMemo)(()=>f?ue(f):{nodes:[],edges:[]},[f]),m=d.data?.kind===`ready`&&p.nodes.length>0,h=(0,L.useMemo)(()=>we(p.nodes,p.edges),[p.nodes,p.edges]),g=(0,L.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:me[e%me.length],name:n[0].label,concepts:n.map(e=>e.label),size:t.length}}).sort((e,t)=>t.size-e.size)},[h,p.nodes]),v=(0,L.useMemo)(()=>new Set(g.map(e=>e.hubId)),[g]),y=(0,L.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,L.useMemo)(()=>{if(p.nodes.length===0)return 1;let e=p.nodes.map(e=>{let t=e.x-R.x,n=e.y-R.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,L.useRef)({yaw:.5,pitch:.32,zoom:1,hoveredId:null,dragging:!1,moved:!1,lastX:0,lastY:0,lastInteractAt:-1/0,dirty:!0}),ee=(0,L.useRef)([]),te=(0,L.useRef)([]),S=(0,L.useRef)({content:`#e5e7eb`,tertiary:`#8792a0`}),w=(0,L.useRef)(null),T=(0,L.useRef)(!1),D=(0,L.useRef)(null),O=(0,L.useRef)(null),[ie,k]=(0,L.useState)(null),[A,j]=(0,L.useState)(null),[M,F]=(0,L.useState)([]),z=M.at(-1)??null,B=(0,L.useCallback)(e=>{F(t=>[...t,e])},[]),se=(0,L.useRef)(null);(0,L.useEffect)(()=>{se.current=z?.id??null,x.current.dirty=!0},[z?.id]);let[ce,le]=Me(e),[V,H]=(0,L.useState)(``),[U,G]=(0,L.useState)(!1),fe=(0,L.useRef)(null);(0,L.useEffect)(()=>{U&&fe.current?.focus()},[U]);let he=(0,L.useRef)(!1),ge=V.trim().toLowerCase(),K=(0,L.useMemo)(()=>{if(!ge)return null;let e=new Set;for(let t of p.nodes)t.label.toLowerCase().includes(ge)&&e.add(t.id);return e},[ge,p.nodes]),ve=(0,L.useRef)({active:!1,matches:null});(0,L.useEffect)(()=>{ve.current={active:!!K,matches:K},x.current.dirty=!0},[K]),(0,L.useEffect)(()=>{V.trim()||(he.current=!1)},[V]);let q=(0,L.useMemo)(()=>!K||K.size===0?[]:p.nodes.filter(e=>K.has(e.id)).sort((e,t)=>t.degree-e.degree).slice(0,8),[K,p.nodes]),[J,ye]=(0,L.useState)(`all`),Y=(0,L.useRef)(null);(0,L.useEffect)(()=>{Y.current=J===`week`?7*Ue:J===`month`?30*Ue:null,x.current.dirty=!0},[J]);let Ce=(0,L.useMemo)(()=>p.nodes.some(e=>e.updatedAtMs!=null),[p.nodes]);(0,L.useEffect)(()=>{!Ce&&J!==`all`&&ye(`all`)},[Ce,J]);let[X,Te]=(0,L.useState)({link:!0,learned:!0}),Ee=(0,L.useRef)(X);(0,L.useEffect)(()=>{Ee.current=X,x.current.dirty=!0},[X]),(0,L.useEffect)(()=>{H(``),ye(`all`),Te({link:!0,learned:!0}),F([]),he.current=!1},[e]);let De=(0,L.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,L.useCallback)(e=>{let t=x.current;t.zoom=Math.max(Be,Math.min(Ve,t.zoom*e)),t.lastInteractAt=performance.now(),t.dirty=!0},[]),Z=(0,L.useCallback)(e=>{w.current=e,x.current.lastInteractAt=performance.now(),x.current.dirty=!0},[]),Q=(0,L.useCallback)(e=>{B(e),Z(e.id)},[B,Z]),$=(0,L.useCallback)(e=>{D.current={id:e,start:performance.now()},Z(e),window.setTimeout(()=>{x.current.dirty=!0},$e+60)},[Z]),je=(0,L.useCallback)(e=>{p.nodes.some(t=>t.id===e)?$(e):O.current=e},[p.nodes,$]);(0,L.useEffect)(()=>{let e=O.current;e&&p.nodes.some(t=>t.id===e)&&(O.current=null,$(e))},[p.nodes,$]),(0,L.useImperativeHandle)(s,()=>({focusNode:je}),[je]);let it=(0,L.useCallback)(()=>{F([]),H(``),k(null),w.current=null,T.current=!0},[]),at=(0,L.useCallback)(e=>{H(``);let t=M.slice(0,e+1);F(t);let n=t.at(-1);n?Z(n.id):k(null)},[M,Z]),ot=(0,L.useCallback)(e=>{H(``),Q(e)},[Q]),st=(0,L.useMemo)(()=>{let e=z?.id;if(!e)return[];let t=y.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},[z?.id,y,p.nodes,p.edges]);(0,L.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=v,s=y,c=new Set(r.map(e=>e.id)),d=b,f=window.matchMedia(`(prefers-reduced-motion: reduce)`).matches;S.current=et(t);let g=Math.min(window.devicePixelRatio||1,2),_=0,C=0,E=()=>{let n=t.getBoundingClientRect();_=n.width,C=n.height,g=Math.min(window.devicePixelRatio||1,2),e.width=Math.max(1,Math.round(_*g)),e.height=Math.max(1,Math.round(C*g)),e.style.width=`${_}px`,e.style.height=`${C}px`,S.current=et(t),x.current.dirty=!0};E();let O=new ResizeObserver(E);O.observe(t);let ne=new MutationObserver(()=>{S.current=et(t),x.current.dirty=!0});ne.observe(document.documentElement,{attributes:!0,attributeFilter:[`data-theme`,`class`,`style`]});let re=0,ie=0,ae=e=>{let t=ie?Math.min(.05,(e-ie)/1e3):0;ie=e;let l=x.current,u=S.current,p=Date.now(),m=w.current;if(!l.dragging&&e-l.lastInteractAt>Fe&&!f&&!m&&(l.yaw+=Pe*t),m){let e=r.find(e=>e.id===m);if(!e)w.current=null;else{let t=e.x-R.x,n=e.y-R.y,r=e.z,i=-Math.atan2(t,r),a=Math.hypot(t,r),o=Math.max(-Le,Math.min(Le,Math.atan2(n,a))),s=Math.min(Ve,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&&(w.current=null)}}if(T.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&&(T.current=!1)}if(f&&!l.dirty){re=requestAnimationFrame(ae);return}l.dirty=!1;let h=Math.cos(l.yaw),v=Math.sin(l.yaw),y=Math.cos(l.pitch),b=Math.sin(l.pitch),E=Re*d,O=Math.min(_,C)*.88/(2*d)*l.zoom,ne=_/2,k=C/2;n.setTransform(g,0,0,g,0,0),n.clearRect(0,0,_,C);let A=l.hoveredId,j=A?s.get(A):void 0,M=e=>!A||e===A||(j?.has(e)??!1),N=ve.current,P=N.active,F=e=>!P||(N.matches?.has(e)??!1),oe=Y.current,I=e=>nt(e.updatedAtMs,oe,p),L=Ee.current,z=se.current,B=z!=null&&c.has(z),ce=rt(s,B?z:null),le=r.length<=qe?1:Math.max(Ye,1-(r.length-qe)/(Je-qe)*(1-Ye)),V=Array(r.length);for(let e=0;e<r.length;e++){let t=r[e],n=t.x-R.x,i=t.y-R.y,a=t.z,o=n*h+a*v,s=-n*v+a*h,c=i*y-s*b,l=i*b+s*y,u=E/(E-l);V[e]={node:t,sx:ne+o*O*u,sy:k+c*O*u,sr:Math.max(1.2,t.radius*O*u),depth:Math.max(0,Math.min(1,(l+d)/(2*d)))}}let H=V.map((e,t)=>t).sort((e,t)=>V[e].depth-V[t].depth),U=new Map;for(let e of V)U.set(e.node.id,e);let ue=[];n.lineCap=`round`;for(let e of i){let t=U.get(e.fromId),r=U.get(e.toId);if(!t||!r)continue;let i=e.kind===`learned`,a=z!=null&&(e.fromId===z||e.toId===z);if(!a&&(i?!L.learned:!L.link))continue;let o=P&&(!F(e.fromId)||!F(e.toId))||!a&&(I(t.node)||I(r.node)),s=A!=null&&(e.fromId===A||e.toId===A),c=(t.depth+r.depth)/2;!o&&(!B||a)&&ue.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*le:l,f;f=o?.03:B?a?.9:Ze:A==null?d:s?.9:M(e.fromId)&&M(e.toId)?l:.05,n.globalAlpha=f,n.strokeStyle=i?_e:u.tertiary,n.lineWidth=(s||B&&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 H){let r=V[t],i=r.node,o=i.kind===`concept`?me[(a.get(i.id)??0)%me.length]:pe[i.kind],s=P&&!F(i.id),c=ce(i.id),l=s||I(i)&&!c,u=B?c&&!l:!l&&M(i.id),d=i.id===A,m=ze+(1-ze)*r.depth,h=B&&!c?m*Xe:l?m*.08:u?m:m*.18,g=(d?16:i.degree>=He?8:4)*r.depth,_=i.updatedAtMs;if(_){let n=p-_,i=Math.max(0,1-n/We);if(i>0){let a=i*Ge;!f&&n<Ke&&(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=D.current;if(y&&y.id===i.id){let t=e-y.start;if(t>$e)D.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 H){let t=V[e],r=t.node,i=ce(r.id);if(P&&!F(r.id)||I(r)&&!i||!(B?i:P?t.depth>.3:A==null?o.has(r.id)||r.degree>=He&&t.depth>.55:M(r.id)))continue;n.globalAlpha=(r.id===A||r.id===z?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=V.map(e=>({id:e.node.id,sx:e.sx,sy:e.sy,sr:e.sr,depth:e.depth,updatedAtMs:e.node.updatedAtMs})),te.current=ue,re=requestAnimationFrame(ae)};return re=requestAnimationFrame(ae),()=>{cancelAnimationFrame(re),O.disconnect(),ne.disconnect()}},[m,p,y,b,h,v]);let ct=(0,L.useCallback)((e,t)=>{let n=ve.current,r=Y.current,i=rt(y,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)&&nt(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},[y]),lt=(0,L.useCallback)((e,t)=>{let n=null,r=1/0,i=-1;for(let a of te.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},[]),ut=e=>{let t=l.current.getBoundingClientRect();return{x:e.clientX-t.left,y:e.clientY-t.top}},dt=(0,L.useCallback)(e=>{if(e.button!==0||e.target.closest(`[data-graph-control]`))return;let t=x.current;w.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)},[]),ft=(0,L.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*Ie,t.pitch=Math.max(-Le,Math.min(Le,t.pitch+r*Ie)),t.lastX=e.clientX,t.lastY=e.clientY,t.lastInteractAt=performance.now(),t.dirty=!0;return}let{x:n,y:r}=ut(e),i=ct(n,r);if(i!==t.hoveredId&&(t.hoveredId=i,t.dirty=!0),i)j(null);else{let e=lt(n,r);j(e?tt(e):null)}},[ct,lt]),pt=(0,L.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}=ut(e),r=ct(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)}},[ct,p.nodes,Q]),mt=(0,L.useCallback)(()=>{let e=x.current;j(null),!(e.dragging||e.hoveredId==null)&&(e.hoveredId=null,e.dirty=!0,k(null))},[]);(0,L.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(Be,Math.min(Ve,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 ht=(0,L.useMemo)(()=>{let e=new Set(p.nodes.map(e=>e.kind));return Ne.filter(t=>e.has(t))},[p.nodes]),gt=(0,L.useMemo)(()=>p.edges.some(e=>e.kind===`learned`),[p.edges]),_t=(0,L.useMemo)(()=>p.edges.some(e=>e.kind!==`learned`),[p.edges]);(0,L.useEffect)(()=>{!(_t&&gt)&&(!X.link||!X.learned)&&Te({link:!0,learned:!0})},[_t,gt,X]);let vt=d.data?.kind===`ready`&&!ce,yt=p.nodes.length,bt=p.edges.length,xt=new Set(h.values()).size,St=(e,t)=>`${e} ${t}${e===1?``:`s`}`,Ct=vt?null:ie??A,wt=m&&(p.nodes.length>Qe||!!V),Tt=!!(i||o)||m,Et;return Et=d.isLoading?(0,W.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,W.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,W.jsx)(de,{title:c(`conceptGraphView.loadErrorTitle`),detail:c(`conceptGraphView.loadErrorDetail`)}):d.data?.kind===`unsupported`?(0,W.jsx)(ke,{assistantId:e,onOpenThread:a}):m?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`canvas`,{ref:u,className:`absolute inset-0 h-full w-full`}),(0,W.jsx)(Se,{nodeKinds:ht.filter(e=>e!==`concept`),coloredByTheme:ht.includes(`concept`),themes:g,hasLinks:_t,hasLearned:gt,..._t&&gt?{onToggleLink:()=>Te(e=>({...e,link:!e.link})),onToggleLearned:()=>Te(e=>({...e,learned:!e.learned})),linkActive:X.link,learnedActive:X.learned}:{}}),(0,W.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,W.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,W.jsxs)(`div`,{"data-graph-control":!0,className:`absolute right-4 top-4 flex flex-col gap-1`,children:[(0,W.jsx)(_,{variant:`ghost`,iconOnly:(0,W.jsx)(oe,{}),onClick:()=>Oe(1.25),"aria-label":c(`conceptGraphView.zoomInAriaLabel`),tooltip:c(`conceptGraphView.zoomInAriaLabel`)}),(0,W.jsx)(_,{variant:`ghost`,iconOnly:(0,W.jsx)(P,{}),onClick:()=>Oe(.8),"aria-label":c(`conceptGraphView.zoomOutAriaLabel`),tooltip:c(`conceptGraphView.zoomOutAriaLabel`)}),(0,W.jsx)(_,{variant:`ghost`,iconOnly:(0,W.jsx)(re,{}),onClick:De,"aria-label":c(`conceptGraphView.resetViewAriaLabel`),tooltip:c(`conceptGraphView.resetViewAriaLabel`)})]})]}):(0,W.jsx)(de,{title:c(`conceptGraphView.emptyTitle`),detail:c(`conceptGraphView.emptyDetail`)}),(0,W.jsxs)(`div`,{className:`@container flex select-none flex-col overflow-hidden rounded-xl ${n??``}`,style:{backgroundColor:`var(--surface-base)`},children:[Tt?(0,W.jsxs)(`div`,{className:`flex h-12 flex-none items-center gap-2 px-3`,style:{borderBottom:`1px solid var(--border-base)`},children:[i?(0,W.jsx)(_,{variant:`ghost`,iconOnly:r?(0,W.jsx)(ne,{}):(0,W.jsx)(ae,{}),onClick:i,"aria-label":c(r?`conceptGraphView.exitFullscreenAriaLabel`:`conceptGraphView.enterFullscreenAriaLabel`),tooltip:c(r?`conceptGraphView.exitFullscreenAriaLabel`:`conceptGraphView.enterFullscreenAriaLabel`)}):null,wt?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(_,{variant:`ghost`,iconOnly:(0,W.jsx)(I,{}),onClick:()=>G(!0),"aria-label":c(`conceptGraphView.searchConceptsAriaLabel`),tooltip:c(`conceptGraphView.searchConceptsAriaLabel`),className:U?`hidden`:`@2xl:hidden`}),(0,W.jsxs)(`div`,{className:`relative ${U?``:`hidden @2xl:block`}`,children:[(0,W.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,W.jsx)(I,{size:14,"aria-hidden":!0,style:{color:`var(--content-tertiary)`}}),(0,W.jsx)(`input`,{ref:fe,type:`text`,value:V,onChange:e=>{let t=e.target.value;t.trim()&&!he.current&&(he.current=!0),H(t)},onKeyDown:e=>{e.key===`Escape`?(V||U)&&(e.preventDefault(),e.stopPropagation(),H(``),G(!1)):e.key===`Enter`&&q.length>0&&(e.preventDefault(),Z(q[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,W.jsx)(`span`,{className:`text-[11px] tabular-nums`,style:{color:`var(--content-tertiary)`},children:K?.size??0}):null,V||U?(0,W.jsx)(`button`,{type:`button`,onClick:()=>{H(``),G(!1)},"aria-label":c(`conceptGraphView.clearSearchAriaLabel`),className:`flex items-center`,style:{color:`var(--content-tertiary)`},children:(0,W.jsx)(N,{size:13})}):null]}),V&&q.length>0?(0,W.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:q.map(e=>(0,W.jsx)(`li`,{children:(0,W.jsx)(`button`,{type:`button`,onClick:()=>{Q({id:e.id,label:e.label,updatedAtMs:e.updatedAtMs}),H(``),G(!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,W.jsx)(`div`,{className:`pointer-events-none mx-auto min-w-0`,children:Ct?(0,W.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:Ct}):m&&!vt&&!U?(0,W.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,W.jsxs)(`span`,{className:`@max-md:hidden`,children:[St(yt,`neuron`),` · `,St(bt,`synapse`),` ·`,` `,St(xt,`lobe`)]}),(0,W.jsxs)(`span`,{className:`hidden @max-md:inline`,children:[yt,` · `,bt,` · `,xt]})]}):null}),o?(0,W.jsx)(`div`,{className:`flex-none`,children:o}):null]}):null,(0,W.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?dt:void 0,onPointerMove:m?ft:void 0,onPointerUp:m?pt:void 0,onPointerCancel:m?pt:void 0,onPointerLeave:m?mt:void 0,children:[Et,(0,W.jsxs)(`div`,{className:`pointer-events-none absolute left-4 right-16 top-4 z-10 flex flex-col items-start gap-3`,children:[m&&(p.nodes.length>Qe||J!==`all`)&&Ce?(0,W.jsx)(`div`,{"data-graph-control":!0,className:`pointer-events-auto`,children:(0,W.jsx)(Ae,{value:J,onChange:ye})}):null,vt?(0,W.jsx)(xe,{onDismiss:le}):null]}),m&&z?(0,W.jsx)(be,{assistantId:e,node:z,trail:M,neighbors:st,onTravel:ot,onCrumb:at,onClose:it,onOpenThread:a}):null]})]})}async function at(e,t){let{data:n}=await s({path:{assistant_id:e},body:{content:t},throwOnError:!0});return n}function ot({open:e,onOpenChange:n,assistantId:i,onCreated:a}){let{t:o}=E(`intelligence`),s=w(),[l,u]=(0,L.useState)(``),[d,f]=(0,L.useState)(!1),p=(0,L.useCallback)(async()=>{let e=l.trim();if(e){f(!0);try{let c=await at(i,e);if(!c.success){r.error(c.message||o(`createMemoryModal.saveError`));return}r.success(c.pendingNodeId?o(`createMemoryModal.savedFoundToast`):o(`createMemoryModal.savedPendingToast`)),u(``),n(!1),a?.(c.pendingNodeId),await Promise.all([s.invalidateQueries({queryKey:t(i).queryKey}),s.invalidateQueries({queryKey:y(i).queryKey})])}catch(e){let t=e instanceof Error?e.message:o(`createMemoryModal.createError`);r.error(t)}finally{f(!1)}}},[i,l,n,a,s,o]);return(0,W.jsx)(v.Root,{open:e,onOpenChange:n,children:(0,W.jsxs)(v.Content,{size:`sm`,children:[(0,W.jsx)(v.Header,{children:(0,W.jsx)(v.Title,{children:o(`createMemoryModal.title`)})}),(0,W.jsx)(v.Body,{children:(0,W.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,W.jsx)(c,{label:o(`createMemoryModal.contentLabel`),placeholder:o(`createMemoryModal.contentPlaceholder`),value:l,onChange:e=>u(e.target.value),disabled:d,rows:3,fullWidth:!0}),(0,W.jsx)(h,{as:`p`,variant:`body-medium-lighter`,className:`text-(--content-secondary)`,children:o(`createMemoryModal.helperText`)})]})}),(0,W.jsxs)(v.Footer,{children:[(0,W.jsx)(v.Close,{asChild:!0,children:(0,W.jsx)(_,{variant:`outlined`,disabled:d,children:o(`createMemoryModal.cancel`)})}),(0,W.jsx)(_,{variant:`primary`,onClick:p,disabled:d||!l.trim(),loading:d,children:o(d?`createMemoryModal.creating`:`createMemoryModal.create`)})]})]})})}function st({onOpenThread:e}){let{t:n}=E(`intelligence`),r=a(),[i,o]=(0,L.useState)(!1),s=(0,L.useRef)(null),c=C(t(r)),l=C(y(r)),u=c.data?.kind===`ready`&&l.data?.kind===`ready`,d=(0,L.useRef)(!1);return(0,L.useEffect)(()=>{d.current||=!0},[]),(0,W.jsxs)(`div`,{className:`relative flex h-full min-h-0 flex-col`,children:[(0,W.jsx)(it,{assistantId:r,className:`h-full w-full`,onOpenThread:e,handleRef:s,headerAction:u?(0,W.jsx)(_,{variant:`primary`,size:`compact`,leftIcon:(0,W.jsx)(k,{}),onClick:()=>o(!0),children:n(`memoryPage.createMemory`)}):void 0}),u?(0,W.jsx)(ot,{open:i,onOpenChange:o,assistantId:r,onCreated:e=>{e&&s.current?.focusNode(e)}}):null]})}function ct(){let e=x();return(0,W.jsx)(st,{onOpenThread:t=>{o(e,{prompt:t})}},a())}export{ct as MemoryPageRoute};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$v as t,G as n,Jp as r,Wa as i,Yp as a,_v as o,bp as s,uC as c,wh as l}from"./app-BNxKtvfM.js";import{t as u,x as d}from"./react-BJ4PZBJN.js";import{E as f,Jn as p,Zn as m,k as h,w as g}from"./vendor-CezcraPH.js";var _=e(d(),1),v=class extends Error{status;constructor(e,t){super(t),this.name=`SimulateMemoryRouterError`,this.status=e}};async function y(e,n,r){let{data:i,response:a}=await t({path:{assistant_id:e},body:n,signal:r,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(n,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 p({mutationFn:async t=>{if(!e)throw new v(0,`Missing assistantId`);return y(e,t)}})}function S(e){return m({...s({path:{assistant_id:e}}),enabled:!!e,staleTime:6e4})}function C(e){return m({...a({path:{assistant_id:e}}),enabled:!!e,staleTime:1440*60*1e3})}function ee(e){return m({...r({path:{assistant_id:e}}),enabled:!!e,staleTime:1/0})}var w=u();function T(){let{t:e}=g(`chat`),t=i(),n=l(),r=o.use.memoryRouterPlayground();return n?(0,w.jsx)($,{children:e(`memoryRouterPlaygroundPage.loading`)}):!t||!r?(0,w.jsx)($,{children:e(`memoryRouterPlaygroundPage.notAvailable`)}):(0,w.jsx)(D,{})}var E={tier1:``,tier2:``,batch:``,profile:``,customPrompt:``};function D(){let{t:e}=g(`chat`),t=n(),r=x(t),i=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[m,h]=(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 n=t===`A`?m:v,a=t===`A`?T:k,o=t===`A`?r:i;a(null);let s;try{s=O(n)}catch(t){a(t instanceof Error?t.message:e(`memoryRouterPlaygroundPage.invalidOverrideInput`));return}let l=n.profile.trim().length>0?n.profile:void 0,d=n.customPrompt.trim().length>0?n.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&&!r.isPending,z=I&&!i.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:m,onChange:h,onRun:()=>P(`A`),canRun:L,isRunning:r.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:i.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||r.isPending||i.isPending,isRunning:r.isPending||i.isPending})}),(0,w.jsx)(ne,{visible:r.data!==void 0&&i.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:r,otherResult:i.data?.response,validation:b}),(0,w.jsx)(R,{paneId:`B`,userMessage:M,mutation:i,otherResult:r.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(h(`chat:memoryRouterPlaygroundPage.overrideMustBePositiveInteger`,{fieldName:e,value:n}));return{[e]:r}}function A(){let{t:e}=g(`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:a}){let{t:o}=g(`chat`),s=(e,t)=>{a(i.map((n,r)=>r===e?{...n,...t}:n))},l=()=>{a([{assistantMessage:``,userMessage:``},...i])},u=e=>{e!==i.length-1&&a(i.filter((t,n)=>n!==e))};return(0,w.jsx)(c,{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:o(`memoryRouterPlaygroundPage.conversationalContextTitle`)}),(0,w.jsx)(M,{id:`memory-router-playground-now`,label:o(`memoryRouterPlaygroundPage.nowBlockLabel`),value:e,onChange:t,rows:6,monospace:!0,placeholder:o(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:o(`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:o(`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:o(`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:[o(`memoryRouterPlaygroundPage.pairLabel`,{index:t+1,total:i.length}),n?o(`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:o(`memoryRouterPlaygroundPage.removeButton`)})]}),(0,w.jsx)(M,{id:`memory-router-playground-pair-${t}-assistant`,label:o(`memoryRouterPlaygroundPage.assistantReplyLabel`),value:e.assistantMessage,onChange:e=>s(t,{assistantMessage:e}),rows:3,placeholder:t===0&&i.length===1?o(`memoryRouterPlaygroundPage.firstTurnAssistantPlaceholder`):o(`memoryRouterPlaygroundPage.assistantReplyPlaceholder`)}),(0,w.jsx)(M,{id:`memory-router-playground-pair-${t}-user`,label:o(n?`memoryRouterPlaygroundPage.justArrivedUserLabel`:`memoryRouterPlaygroundPage.userMessageLabel`),value:e.userMessage,onChange:e=>s(t,{userMessage:e}),rows:3,placeholder:o(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:a,profiles:o,activeProfile:s,defaultPromptTemplate:l}){let{t:u}=g(`chat`);return(0,w.jsx)(c,{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:o,activeProfile:s}),(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(--aux-white)`:`var(--content-disabled)`,border:`none`,cursor:i?`pointer`:`not-allowed`},children:a?u(`memoryRouterPlaygroundPage.running`):u(`memoryRouterPlaygroundPage.runPane`,{paneId:e})})})]})})}function P({paneId:e,value:t,onChange:n,defaultTemplate:r}){let{t:i}=g(`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),"aria-expanded":a,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}=g(`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}=g(`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}=g(`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-inset)`,border:`none`,cursor:t?`not-allowed`:`pointer`},children:r(n?`memoryRouterPlaygroundPage.running`:`memoryRouterPlaygroundPage.runBoth`)})}function ne({visible:e}){let{t}=g(`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}=g(`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}=g(`chat`),[i,a]=(0,_.useState)(!1);return(0,w.jsx)(c,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 p-4`,children:[(0,w.jsxs)(`button`,{type:`button`,onClick:()=>a(e=>!e),"aria-expanded":i,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}=g(`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}=g(`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}=g(`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}=g(`chat`),a=[{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&&a.push({label:i(`memoryRouterPlaygroundPage.diffLabel`),value:i(`memoryRouterPlaygroundPage.diffValue`,{shared:r.shared,unique:r.unique})}),(0,w.jsx)(c,{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:a})]})})}function K({result:e}){let{t}=g(`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)(c,{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:a}=g(`chat`);return(0,w.jsx)(c,{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,a)}),(0,w.jsx)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:a(`memoryRouterPlaygroundPage.pageCount`,{count:n.length})})]}),(0,w.jsx)(`ul`,{className:`flex flex-col gap-1`,children:n.map(n=>{let{color:o,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:o},children:s}),(0,w.jsx)(`code`,{className:`text-body-medium-default`,style:{color:o},children:n})]}),t===`tier2`&&(0,w.jsx)(`span`,{className:`tabular-nums text-label-medium-default`,style:{color:`var(--content-secondary)`},children:a(`memoryRouterPlaygroundPage.emaScore`,{score:(r[n]??0).toFixed(3)})})]},n)})})]})})}function ae(){let{t:e}=g(`chat`);return(0,w.jsx)(c,{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
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Bp as t,G as n,JS as r,Rv as i,Va as a,hh as o,nv as s,up as c,zp as l}from"./app-B5J5Jx3A.js";import{t as u,x as d}from"./react-BJ4PZBJN.js";import{E as f,Jn as p,Zn as m,k as h,w as g}from"./vendor-CezcraPH.js";var _=e(d(),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:r,response:a}=await i({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(!r)throw new v(a.status,`Empty response from memory router simulator endpoint`);return{response:r,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 p({mutationFn:async t=>{if(!e)throw new v(0,`Missing assistantId`);return y(e,t)}})}function S(e){return m({...c({path:{assistant_id:e}}),enabled:!!e,staleTime:6e4})}function C(e){return m({...t({path:{assistant_id:e}}),enabled:!!e,staleTime:1440*60*1e3})}function ee(e){return m({...l({path:{assistant_id:e}}),enabled:!!e,staleTime:1/0})}var w=u();function T(){let{t:e}=g(`chat`),t=a(),n=o(),r=s.use.memoryRouterPlayground();return n?(0,w.jsx)($,{children:e(`memoryRouterPlaygroundPage.loading`)}):!t||!r?(0,w.jsx)($,{children:e(`memoryRouterPlaygroundPage.notAvailable`)}):(0,w.jsx)(D,{})}var E={tier1:``,tier2:``,batch:``,profile:``,customPrompt:``};function D(){let{t:e}=g(`chat`),t=n(),r=x(t),i=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[m,h]=(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 n=t===`A`?m:v,a=t===`A`?T:k,o=t===`A`?r:i;a(null);let s;try{s=O(n)}catch(t){a(t instanceof Error?t.message:e(`memoryRouterPlaygroundPage.invalidOverrideInput`));return}let l=n.profile.trim().length>0?n.profile:void 0,d=n.customPrompt.trim().length>0?n.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&&!r.isPending,z=I&&!i.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:m,onChange:h,onRun:()=>P(`A`),canRun:L,isRunning:r.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:i.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||r.isPending||i.isPending,isRunning:r.isPending||i.isPending})}),(0,w.jsx)(ne,{visible:r.data!==void 0&&i.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:r,otherResult:i.data?.response,validation:b}),(0,w.jsx)(R,{paneId:`B`,userMessage:M,mutation:i,otherResult:r.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(h(`chat:memoryRouterPlaygroundPage.overrideMustBePositiveInteger`,{fieldName:e,value:n}));return{[e]:r}}function A(){let{t:e}=g(`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:i,pairs:a,onPairsChange:o}){let{t:s}=g(`chat`),c=(e,t)=>{o(a.map((n,r)=>r===e?{...n,...t}:n))},l=()=>{o([{assistantMessage:``,userMessage:``},...a])},u=e=>{e!==a.length-1&&o(a.filter((t,n)=>n!==e))};return(0,w.jsx)(r,{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(i?`memoryRouterPlaygroundPage.nowLoadingPlaceholder`:`memoryRouterPlaygroundPage.nowDefaultPlaceholder`),trailing:(0,w.jsx)(`button`,{type:`button`,onClick:n,disabled:i,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:i?`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`)})]}),a.map((e,t)=>{let n=t===a.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:a.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&&a.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:i,canRun:a,isRunning:o,profiles:s,activeProfile:c,defaultPromptTemplate:l}){let{t:u}=g(`chat`);return(0,w.jsx)(r,{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:i,disabled:!a,className:`rounded-md px-4 py-2 text-body-medium-default transition-colors`,style:{background:a?`var(--system-positive-strong)`:`var(--surface-overlay)`,color:a?`var(--aux-white)`:`var(--content-disabled)`,border:`none`,cursor:a?`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}=g(`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),"aria-expanded":a,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}=g(`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}=g(`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}=g(`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-inset)`,border:`none`,cursor:t?`not-allowed`:`pointer`},children:r(n?`memoryRouterPlaygroundPage.running`:`memoryRouterPlaygroundPage.runBoth`)})}function ne({visible:e}){let{t}=g(`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}=g(`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:i}=g(`chat`),[a,o]=(0,_.useState)(!1);return(0,w.jsx)(r,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 p-4`,children:[(0,w.jsxs)(`button`,{type:`button`,onClick:()=>o(e=>!e),"aria-expanded":a,className:`text-label-medium-default`,style:{color:`var(--content-secondary)`,background:`transparent`,border:`none`,padding:0,cursor:`pointer`,textAlign:`left`},children:[a?`▾`:`▸`,` `,i(`memoryRouterPlaygroundPage.rawApiExchange`)]}),a&&(0,w.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,w.jsx)(B,{label:i(`memoryRouterPlaygroundPage.requestLabel`,{paneId:e}),body:t}),(0,w.jsx)(B,{label:i(`memoryRouterPlaygroundPage.responseLabel`,{paneId:e}),body:n})]})]})})}function B({label:e,body:t}){let{t:n}=g(`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}=g(`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}=g(`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:i}){let{t:a}=g(`chat`),o=[{label:a(`memoryRouterPlaygroundPage.summaryUserMessageLabel`),value:t},{label:a(`memoryRouterPlaygroundPage.totalCandidatePagesLabel`),value:e.totalCandidatePages.toLocaleString()},{label:a(`memoryRouterPlaygroundPage.selectedLabel`),value:a(`memoryRouterPlaygroundPage.selectedValue`,{count:e.selectedSlugs.length,maxPageIds:e.effectiveConfig.max_page_ids})}];return n!==void 0&&o.push({label:a(`memoryRouterPlaygroundPage.diffLabel`),value:a(`memoryRouterPlaygroundPage.diffValue`,{shared:i.shared,unique:i.unique})}),(0,w.jsx)(r,{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:a(`memoryRouterPlaygroundPage.summary`)}),(0,w.jsx)(Z,{rows:o})]})})}function K({result:e}){let{t}=g(`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)(r,{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:i,diff:a}){let{t:o}=g(`chat`);return(0,w.jsx)(r,{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:r,marker:s}=re(e,a.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:r},children:s}),(0,w.jsx)(`code`,{className:`text-body-medium-default`,style:{color:r},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:(i[n]??0).toFixed(3)})})]},n)})})]})})}function ae(){let{t:e}=g(`chat`);return(0,w.jsx)(r,{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};
@@ -0,0 +1 @@
1
+ import{Kn as e,Un as t,Vt as n,lt as r,qn as i}from"./app-B5J5Jx3A.js";import{t as a}from"./react-BJ4PZBJN.js";import{w as o}from"./vendor-CezcraPH.js";import{in as s}from"./icons-Dwi7aA1Y.js";var c=[];function l(e){let t=r(e);return t?t.attachments??c:null}var u=a();function d({payload:r,onClose:a}){let{t:c}=o(`chat`),{displayAttachments:d,renderSquare:f,previewModal:p}=n({attachments:l(r.messageId)??r.attachments,assistantId:r.assistantId});return(0,u.jsxs)(t,{Glyph:s,titleNode:(0,u.jsx)(i,{title:c(`messageFilesPanel.title`),count:d.length}),closeLabel:c(`messageFilesPanel.closeAria`),onClose:a,children:[d.length===0?(0,u.jsx)(e,{placement:`panel`,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};
@@ -0,0 +1 @@
1
+ import{CS as e}from"./app-B5J5Jx3A.js";function t(t){return n=>{e.error(n instanceof Error?n.message:t)}}export{t};
@@ -0,0 +1 @@
1
+ import{nt as e}from"./app-B5J5Jx3A.js";export{e as filesFromNativePaths};
@@ -0,0 +1 @@
1
+ import{Fr as e}from"./app-B5J5Jx3A.js";export{e as saveFile};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{CC as t,Dc as n,Ec as r,Gx as i,Sg as a,Tc as o,eS as s,gf as c,iC as l,kg as u,uC as d,wc as f}from"./app-BNxKtvfM.js";import{r as p,t as m,x as h}from"./react-BJ4PZBJN.js";import{S as g,w as _,y as v}from"./vendor-CezcraPH.js";import{Ta as y,Zr as b}from"./icons-Dwi7aA1Y.js";var x=e(h(),1),S=g(`AndroidNotificationSettings`);function C(){return a()&&v.isPluginAvailable(`AndroidNotificationSettings`)}async function w(){if(C())try{await S.open()}catch(e){s(e,{context:`android_notification_settings_open`,level:`warning`})}}var T=m();function E(){let{t:e}=_(`settings`),n=C(),[i,a]=(0,x.useState)(null);(0,x.useEffect)(()=>{f().then(a)},[]),c(`app.resume`,({signal:e})=>{e!==`online`&&r().then(a)});let o;switch(i){case`granted`:o={description:e(`androidNotificationSettingsCard.grantedDescription`),label:e(`androidNotificationSettingsCard.grantedLabel`),tone:`positive`};break;case`denied`:o={description:e(`androidNotificationSettingsCard.deniedDescription`),label:e(`androidNotificationSettingsCard.deniedLabel`),tone:`negative`};break;case`prompt`:o={description:e(`androidNotificationSettingsCard.promptDescription`),label:e(`androidNotificationSettingsCard.promptLabel`),tone:`warning`};break;case`unsupported`:o={description:e(`androidNotificationSettingsCard.unsupportedDescription`),label:e(`androidNotificationSettingsCard.unsupportedLabel`),tone:`neutral`};break;default:o={description:e(`androidNotificationSettingsCard.checkingDescription`),label:e(`androidNotificationSettingsCard.checkingLabel`),tone:`neutral`};break}return(0,T.jsx)(d,{padding:`lg`,children:(0,T.jsxs)(`div`,{className:`flex flex-col gap-5 sm:flex-row sm:items-center sm:justify-between`,children:[(0,T.jsxs)(`div`,{className:`flex min-w-0 items-start gap-4`,children:[(0,T.jsx)(`span`,{className:`flex size-11 shrink-0 items-center justify-center rounded-xl bg-[var(--surface-base)] text-[var(--content-secondary)]`,children:(0,T.jsx)(y,{className:`size-5`,"aria-hidden":!0})}),(0,T.jsxs)(`div`,{className:`min-w-0`,children:[(0,T.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,T.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`androidNotificationSettingsCard.title`)}),(0,T.jsx)(l,{tone:o.tone,children:o.label})]}),(0,T.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-secondary)]`,children:o.description})]})]}),n&&(0,T.jsx)(t,{variant:`outlined`,onClick:()=>void w(),disabled:i===null,rightIcon:(0,T.jsx)(b,{"aria-hidden":!0}),className:`self-start sm:self-auto`,children:e(`androidNotificationSettingsCard.openSettings`)})]})})}function D(){let{t:e}=_(`settings`),[i,a]=(0,x.useState)(null),[o,s]=(0,x.useState)(!1),l=()=>{r().then(a)};(0,x.useEffect)(l,[]),c(`app.resume`,l),c(`app.attention`,({attended:e})=>{e&&l()});let u=()=>{s(!0),n().then(e=>{a(e),s(!1)})},f=e(i===`granted`?`browserNotificationSettingsCard.grantedDescription`:i===`denied`?`browserNotificationSettingsCard.deniedDescription`:i===`unsupported`?`browserNotificationSettingsCard.unsupportedDescription`:i===`prompt`?`browserNotificationSettingsCard.promptDescription`:`browserNotificationSettingsCard.checkingDescription`);return(0,T.jsx)(d,{padding:`lg`,children:(0,T.jsxs)(`div`,{className:`space-y-3`,children:[(0,T.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`browserNotificationSettingsCard.title`)}),(0,T.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:f}),(0,T.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:e(`browserNotificationSettingsCard.openTabDescription`)}),i===`prompt`&&(0,T.jsx)(t,{variant:`outlined`,disabled:o,onClick:u,children:e(`browserNotificationSettingsCard.enable`)})]})})}function O(){let{t:e}=_(`settings`),t=u();return!t&&!o()?(0,T.jsx)(p,{replace:!0,to:i.settings.general}):(0,T.jsxs)(`div`,{className:`mx-auto w-full max-w-2xl space-y-6`,children:[(0,T.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,T.jsx)(`span`,{className:`flex size-10 shrink-0 items-center justify-center rounded-xl bg-[var(--surface-lift)] text-[var(--content-secondary)]`,children:(0,T.jsx)(y,{className:`size-5`,"aria-hidden":!0})}),(0,T.jsxs)(`div`,{className:`min-w-0`,children:[(0,T.jsx)(`h1`,{className:`text-title-medium text-[var(--content-emphasised)]`,children:e(`notificationsPage.title`)}),(0,T.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-secondary)]`,children:e(`notificationsPage.description`)})]})]}),t?(0,T.jsx)(E,{}):(0,T.jsx)(D,{})]})}export{O as NotificationsPage};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Eu as t,HS as n,JS as r,Rx as i,gc as a,hc as o,kx as s,mc as c,mg as l,pc as u,sC as d,sg as f}from"./app-B5J5Jx3A.js";import{r as p,t as m,x as h}from"./react-BJ4PZBJN.js";import{S as g,w as _,y as v}from"./vendor-CezcraPH.js";import{Ta as y,Zr as b}from"./icons-Dwi7aA1Y.js";var x=e(h(),1),S=g(`AndroidNotificationSettings`);function C(){return f()&&v.isPluginAvailable(`AndroidNotificationSettings`)}async function w(){if(C())try{await S.open()}catch(e){i(e,{context:`android_notification_settings_open`,level:`warning`})}}var T=m();function E(){let{t:e}=_(`settings`),i=C(),[a,s]=(0,x.useState)(null);(0,x.useEffect)(()=>{u().then(s)},[]),t(`app.resume`,({signal:e})=>{e!==`online`&&o().then(s)});let c;switch(a){case`granted`:c={description:e(`androidNotificationSettingsCard.grantedDescription`),label:e(`androidNotificationSettingsCard.grantedLabel`),tone:`positive`};break;case`denied`:c={description:e(`androidNotificationSettingsCard.deniedDescription`),label:e(`androidNotificationSettingsCard.deniedLabel`),tone:`negative`};break;case`prompt`:c={description:e(`androidNotificationSettingsCard.promptDescription`),label:e(`androidNotificationSettingsCard.promptLabel`),tone:`warning`};break;case`unsupported`:c={description:e(`androidNotificationSettingsCard.unsupportedDescription`),label:e(`androidNotificationSettingsCard.unsupportedLabel`),tone:`neutral`};break;default:c={description:e(`androidNotificationSettingsCard.checkingDescription`),label:e(`androidNotificationSettingsCard.checkingLabel`),tone:`neutral`};break}return(0,T.jsx)(r,{padding:`lg`,children:(0,T.jsxs)(`div`,{className:`flex flex-col gap-5 sm:flex-row sm:items-center sm:justify-between`,children:[(0,T.jsxs)(`div`,{className:`flex min-w-0 items-start gap-4`,children:[(0,T.jsx)(`span`,{className:`flex size-11 shrink-0 items-center justify-center rounded-xl bg-[var(--surface-base)] text-[var(--content-secondary)]`,children:(0,T.jsx)(y,{className:`size-5`,"aria-hidden":!0})}),(0,T.jsxs)(`div`,{className:`min-w-0`,children:[(0,T.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,T.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`androidNotificationSettingsCard.title`)}),(0,T.jsx)(n,{tone:c.tone,children:c.label})]}),(0,T.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-secondary)]`,children:c.description})]})]}),i&&(0,T.jsx)(d,{variant:`outlined`,onClick:()=>void w(),disabled:a===null,rightIcon:(0,T.jsx)(b,{"aria-hidden":!0}),className:`self-start sm:self-auto`,children:e(`androidNotificationSettingsCard.openSettings`)})]})})}function D(){let{t:e}=_(`settings`),[n,i]=(0,x.useState)(null),[s,c]=(0,x.useState)(!1),l=()=>{o().then(i)};(0,x.useEffect)(l,[]),t(`app.resume`,l),t(`app.attention`,({attended:e})=>{e&&l()});let u=()=>{c(!0),a().then(e=>{i(e),c(!1)})},f=e(n===`granted`?`browserNotificationSettingsCard.grantedDescription`:n===`denied`?`browserNotificationSettingsCard.deniedDescription`:n===`unsupported`?`browserNotificationSettingsCard.unsupportedDescription`:n===`prompt`?`browserNotificationSettingsCard.promptDescription`:`browserNotificationSettingsCard.checkingDescription`);return(0,T.jsx)(r,{padding:`lg`,children:(0,T.jsxs)(`div`,{className:`space-y-3`,children:[(0,T.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`browserNotificationSettingsCard.title`)}),(0,T.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:f}),(0,T.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:e(`browserNotificationSettingsCard.openTabDescription`)}),n===`prompt`&&(0,T.jsx)(d,{variant:`outlined`,disabled:s,onClick:u,children:e(`browserNotificationSettingsCard.enable`)})]})})}function O(){let{t:e}=_(`settings`),t=l();return!t&&!c()?(0,T.jsx)(p,{replace:!0,to:s.settings.general}):(0,T.jsxs)(`div`,{className:`mx-auto w-full max-w-2xl space-y-6`,children:[(0,T.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,T.jsx)(`span`,{className:`flex size-10 shrink-0 items-center justify-center rounded-xl bg-[var(--surface-lift)] text-[var(--content-secondary)]`,children:(0,T.jsx)(y,{className:`size-5`,"aria-hidden":!0})}),(0,T.jsxs)(`div`,{className:`min-w-0`,children:[(0,T.jsx)(`h1`,{className:`text-title-medium text-[var(--content-emphasised)]`,children:e(`notificationsPage.title`)}),(0,T.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-secondary)]`,children:e(`notificationsPage.description`)})]})]}),t?(0,T.jsx)(E,{}):(0,T.jsx)(D,{})]})}export{O as NotificationsPage};
@@ -1,4 +1,4 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Ci as t}from"./app-BNxKtvfM.js";import{_ as n,t as r,x as i}from"./react-BJ4PZBJN.js";import{w as a}from"./vendor-CezcraPH.js";var o=e(i(),1),s=r();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{bi as t}from"./app-B5J5Jx3A.js";import{_ as n,t as r,x as i}from"./react-BJ4PZBJN.js";import{w as a}from"./vendor-CezcraPH.js";var o=e(i(),1),s=r();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{Ci as t,Qy as n,Zy as r}from"./app-BNxKtvfM.js";import{_ as i,t as a,x as o}from"./react-BJ4PZBJN.js";import{w as s}from"./vendor-CezcraPH.js";var c=e(o(),1),l=a();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{Fy as t,Py as n,bi as r}from"./app-B5J5Jx3A.js";import{_ as i,t as a,x as o}from"./react-BJ4PZBJN.js";import{w as s}from"./vendor-CezcraPH.js";var c=e(o(),1),l=a();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{Ci as t,Qy as n,Zy 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}=s(`account`),[a]=i(),o=a.get(`requestId`),m=a.get(`oauth_status`),h=a.get(`oauth_provider`),g=a.get(`oauth_code`),_=a.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(_&&o){let e=n(window.location.host);if(e){window.location.href=r(e,{requestId:o,oauthStatus:m||null,oauthProvider:h||null,oauthCode:g||null});return}}let e={type:`cadet:oauth-complete`,requestId:o,oauthStatus:m||null,oauthProvider:h||null,oauthCode:g||null};if(window.opener&&o&&window.opener.postMessage(e,window.location.origin),o)try{window.localStorage.setItem(t(o),JSON.stringify(e))}catch{}window.close()},[o,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}=s(`account`),[a]=i(),o=a.get(`requestId`),m=a.get(`oauth_status`),h=a.get(`oauth_provider`),g=a.get(`oauth_code`),_=a.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(_&&o){let e=t(window.location.host);if(e){window.location.href=n(e,{requestId:o,oauthStatus:m||null,oauthProvider:h||null,oauthCode:g||null});return}}let e={type:`cadet:oauth-complete`,requestId:o,oauthStatus:m||null,oauthProvider:h||null,oauthCode:g||null};if(window.opener&&o&&window.opener.postMessage(e,window.location.origin),o)try{window.localStorage.setItem(r(o),JSON.stringify(e))}catch{}window.close()},[o,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{$h as e}from"./app-B5J5Jx3A.js";export{e as resolvePairedAssistantCloudId};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{CC as t,Gx as n,Hy as r,__ as i,b_ as a,bb as o,bg as s,g_ as c,h_ as l,i as u,ox as d,sx as f,ux as p,v_ as m,yS as h,yg as g}from"./app-BNxKtvfM.js";import{d as _,f as v,t as y,x as b}from"./react-BJ4PZBJN.js";import{w as x}from"./vendor-CezcraPH.js";import{Ui as S,Yn as C,rt as w,zi as T}from"./icons-Dwi7aA1Y.js";import{i as E}from"./self-hosted-servers-BxHLMpeP.js";var D=e(b(),1),O=y();function k(e){switch(e.kind){case`starting`:return{title:`Starting pairing`,body:`Creating a code for this browser.`};case`handoff_choice`:return{title:`Open in the Cadet app`,body:`Scanning from a phone with the Cadet app installed? Hand this pairing to the app.`};case`verifying`:return{title:`Pairing`,body:`Connecting this device to your assistant.`};case`approved`:return{title:`Connected`,body:`Opening your assistant.`};case`expired`:return{title:`Pairing expired`,body:`This pairing code is invalid or expired. Run cadet pair on the machine running your assistant to get a new one.`};case`error`:return{title:`Pairing failed`,body:e.message};case`polling`:return{title:`Waiting for approval`,body:`Confirm this code on the machine running your assistant.`}}}function A({state:e}){return e.kind===`approved`?(0,O.jsx)(T,{className:`h-5 w-5 text-[var(--system-positive-strong)]`,"aria-hidden":!0}):e.kind===`handoff_choice`?(0,O.jsx)(w,{className:`h-5 w-5 text-[var(--system-info-strong)]`,"aria-hidden":!0}):e.kind===`starting`||e.kind===`verifying`||e.kind===`polling`?(0,O.jsx)(C,{className:`h-5 w-5 animate-spin text-[var(--system-info-strong)]`,"aria-hidden":!0}):(0,O.jsx)(S,{className:`h-5 w-5 text-[var(--system-negative-strong)]`,"aria-hidden":!0})}function j(){try{let e=new URL(window.location.href);for(let t of[`deviceCode`,`device_code`,`userCode`,`user_code`])e.searchParams.delete(t);e.hash=``,window.history.replaceState(null,``,`${e.pathname}${e.search}`)}catch{}}var M=`cadet`,N=`ai.mycadet.android`;function P(e,t){let n=new URLSearchParams({url:a(),code:e}),r=d();r&&n.set(`name`,r);let i=n.toString().replace(/\+/g,`%20`);return t===`ios`?`${M}://connect?${i}`:`intent://connect?${i}#Intent;scheme=${M};package=${N};S.browser_fallback_url=${encodeURIComponent(window.location.href)};end`}function F(){let e=f();if(!e)return null;try{return`${new URL(e).origin}${n.selectAssistant}?noAutoSkip=1`}catch{return null}}function I({deviceCode:e,platform:n,onContinueInBrowser:r}){let{t:i}=x(`remote-web`);return(0,O.jsxs)(`div`,{className:`mt-6 flex flex-col gap-3`,children:[(0,O.jsx)(t,{variant:`primary`,fullWidth:!0,asChild:!0,children:(0,O.jsx)(`a`,{href:(0,D.useMemo)(()=>P(e,n),[e,n]),children:i(`pairingPage.openInApp`)})}),(0,O.jsx)(t,{variant:`outlined`,fullWidth:!0,onClick:r,children:i(`pairingPage.continueInBrowser`)})]})}function L(){let{t:e}=x(`remote-web`),a=_(),d=v(),f=!p(),y=(0,D.useMemo)(()=>o(new URLSearchParams(a.search).get(`returnTo`),n.assistant),[a.search]),b=(0,D.useMemo)(()=>h(`${a.pathname}${a.search}${a.hash}`),[a.pathname,a.search,a.hash]),S=(0,D.useMemo)(()=>!b.deviceCode||r()?null:g()?`android`:s()?`ios`:null,[b.deviceCode]),[C,w]=(0,D.useState)(()=>b.deviceCode?{deviceCode:b.deviceCode,userCode:b.userCode}:null),[T,M]=(0,D.useState)(()=>!S),[N,P]=(0,D.useState)(()=>S?{kind:`handoff_choice`}:b.deviceCode?{kind:`verifying`}:{kind:`starting`});(0,D.useEffect)(()=>{if(!f||C)return;let e=new AbortController;return(async()=>{try{let t=await i(e.signal);w({deviceCode:t.deviceCode,userCode:t.userCode}),P({kind:`polling`,expiresAt:t.expiresAt})}catch{if(e.signal.aborted)return;P({kind:`error`,message:`The assistant could not start pairing. Refresh the page to try again.`})}})(),()=>{e.abort()}},[f,C]),(0,D.useEffect)(()=>{if(!f||!C?.deviceCode||!T)return;let e=new AbortController,t=null,n=async()=>{try{let r=await m(C.deviceCode,e.signal);if(r.status===`pending`){P({kind:`polling`,expiresAt:r.expiresAt||null}),t=setTimeout(()=>void n(),Math.max(1,r.intervalSeconds)*1e3);return}c(r),j(),P({kind:`approved`}),t=setTimeout(()=>d(y,{replace:!0}),250)}catch(t){if(e.signal.aborted)return;if(t instanceof l&&t.status===401){P({kind:`expired`});return}if(t instanceof l&&t.code===`GUARDIAN_REPAIR_REQUIRED`){P({kind:`error`,message:`The assistant's trust database needs repair. Run guardian repair on the machine hosting the assistant, then retry this same pairing link — the code stays valid.`});return}P({kind:`error`,message:`The assistant could not complete pairing. Try starting a new pairing.`})}};return n(),()=>{e.abort(),t&&clearTimeout(t)}},[f,C?.deviceCode,T,d,y]);let L=(0,D.useCallback)(()=>{M(!0),P({kind:`verifying`})},[]),R=(0,D.useMemo)(()=>F(),[]),z=(0,D.useCallback)(()=>{E(null,`account/select-assistant?noAutoSkip=1`).then(e=>{!e&&R&&window.location.assign(R)})},[R]);if(!f)return(0,O.jsx)(u,{});let B=k(N);return(0,O.jsx)(`main`,{className:`flex min-h-svh items-center justify-center bg-[var(--surface-base)] px-6 py-10 text-[var(--content-default)]`,children:(0,O.jsxs)(`section`,{className:`w-full max-w-md rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-lift)] p-8 shadow-[var(--shadow-sm)]`,children:[(0,O.jsxs)(`div`,{className:`mb-5 flex items-center gap-3`,children:[(0,O.jsx)(A,{state:N}),(0,O.jsx)(`h1`,{className:`text-title-medium text-[var(--content-emphasised)]`,children:B.title})]}),N.kind===`polling`&&C?.userCode?(0,O.jsxs)(`div`,{className:`mb-5 rounded-md border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-4 text-center`,children:[(0,O.jsx)(`div`,{className:`text-label-small-default uppercase tracking-wide text-[var(--content-tertiary)]`,children:e(`pairingPage.pairingCode`)}),(0,O.jsx)(`div`,{className:`mt-2 font-mono text-3xl font-semibold tracking-[0.18em] text-[var(--content-emphasised)]`,children:C.userCode})]}):null,(0,O.jsx)(`p`,{className:`text-body-medium-lighter leading-6 text-[var(--content-secondary)]`,children:B.body}),N.kind===`handoff_choice`&&C&&S?(0,O.jsx)(I,{deviceCode:C.deviceCode,platform:S,onContinueInBrowser:L}):null,N.kind===`polling`&&N.expiresAt?(0,O.jsx)(`p`,{className:`text-body-small-lighter mt-4 text-[var(--content-tertiary)]`,children:e(`pairingPage.expiresAt`,{time:new Date(N.expiresAt).toLocaleTimeString()})}):null,N.kind===`polling`&&R?(0,O.jsx)(t,{variant:`outlined`,fullWidth:!0,className:`mt-6`,onClick:z,children:e(`pairingPage.cancel`)}):null]})})}export{L as RemoteWebPairingPage};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Gb as t,Jb as n,Ty as r,Wb as i,a_ as a,ag as o,e_ as s,i as c,ig as l,kx as u,n_ as d,rS as f,r_ as p,rb as m,sC as h,t_ as g}from"./app-B5J5Jx3A.js";import{d as _,f as v,t as y,x as b}from"./react-BJ4PZBJN.js";import{w as x}from"./vendor-CezcraPH.js";import{Ui as S,Yn as C,rt as w,zi as T}from"./icons-Dwi7aA1Y.js";import{i as E}from"./self-hosted-servers-Cv8wEFRa.js";var D=e(b(),1),O=y();function k(e){switch(e.kind){case`starting`:return{title:`Starting pairing`,body:`Creating a code for this browser.`};case`handoff_choice`:return{title:`Open in the Cadet app`,body:`Scanning from a phone with the Cadet app installed? Hand this pairing to the app.`};case`verifying`:return{title:`Pairing`,body:`Connecting this device to your assistant.`};case`approved`:return{title:`Connected`,body:`Opening your assistant.`};case`expired`:return{title:`Pairing expired`,body:`This pairing code is invalid or expired. Run cadet pair on the machine running your assistant to get a new one.`};case`error`:return{title:`Pairing failed`,body:e.message};case`polling`:return{title:`Waiting for approval`,body:`Confirm this code on the machine running your assistant.`}}}function A({state:e}){return e.kind===`approved`?(0,O.jsx)(T,{className:`h-5 w-5 text-[var(--system-positive-strong)]`,"aria-hidden":!0}):e.kind===`handoff_choice`?(0,O.jsx)(w,{className:`h-5 w-5 text-[var(--system-info-strong)]`,"aria-hidden":!0}):e.kind===`starting`||e.kind===`verifying`||e.kind===`polling`?(0,O.jsx)(C,{className:`h-5 w-5 animate-spin text-[var(--system-info-strong)]`,"aria-hidden":!0}):(0,O.jsx)(S,{className:`h-5 w-5 text-[var(--system-negative-strong)]`,"aria-hidden":!0})}function j(){try{let e=new URL(window.location.href);for(let t of[`deviceCode`,`device_code`,`userCode`,`user_code`])e.searchParams.delete(t);e.hash=``,window.history.replaceState(null,``,`${e.pathname}${e.search}`)}catch{}}var M=`cadet`,N=`ai.mycadet.android`;function P(e,t){let n=new URLSearchParams({url:a(),code:e}),r=i();r&&n.set(`name`,r);let o=n.toString().replace(/\+/g,`%20`);return t===`ios`?`${M}://connect?${o}`:`intent://connect?${o}#Intent;scheme=${M};package=${N};S.browser_fallback_url=${encodeURIComponent(window.location.href)};end`}function F(){let e=t();if(!e)return null;try{return`${new URL(e).origin}${u.selectAssistant}?noAutoSkip=1`}catch{return null}}function I({deviceCode:e,platform:t,onContinueInBrowser:n}){let{t:r}=x(`remote-web`);return(0,O.jsxs)(`div`,{className:`mt-6 flex flex-col gap-3`,children:[(0,O.jsx)(h,{variant:`primary`,fullWidth:!0,asChild:!0,children:(0,O.jsx)(`a`,{href:(0,D.useMemo)(()=>P(e,t),[e,t]),children:r(`pairingPage.openInApp`)})}),(0,O.jsx)(h,{variant:`outlined`,fullWidth:!0,onClick:n,children:r(`pairingPage.continueInBrowser`)})]})}function L(){let{t:e}=x(`remote-web`),t=_(),i=v(),a=!n(),y=(0,D.useMemo)(()=>m(new URLSearchParams(t.search).get(`returnTo`),u.assistant),[t.search]),b=(0,D.useMemo)(()=>f(`${t.pathname}${t.search}${t.hash}`),[t.pathname,t.search,t.hash]),S=(0,D.useMemo)(()=>!b.deviceCode||r()?null:l()?`android`:o()?`ios`:null,[b.deviceCode]),[C,w]=(0,D.useState)(()=>b.deviceCode?{deviceCode:b.deviceCode,userCode:b.userCode}:null),[T,M]=(0,D.useState)(()=>!S),[N,P]=(0,D.useState)(()=>S?{kind:`handoff_choice`}:b.deviceCode?{kind:`verifying`}:{kind:`starting`});(0,D.useEffect)(()=>{if(!a||C)return;let e=new AbortController;return(async()=>{try{let t=await d(e.signal);w({deviceCode:t.deviceCode,userCode:t.userCode}),P({kind:`polling`,expiresAt:t.expiresAt})}catch{if(e.signal.aborted)return;P({kind:`error`,message:`The assistant could not start pairing. Refresh the page to try again.`})}})(),()=>{e.abort()}},[a,C]),(0,D.useEffect)(()=>{if(!a||!C?.deviceCode||!T)return;let e=new AbortController,t=null,n=async()=>{try{let r=await p(C.deviceCode,e.signal);if(r.status===`pending`){P({kind:`polling`,expiresAt:r.expiresAt||null}),t=setTimeout(()=>void n(),Math.max(1,r.intervalSeconds)*1e3);return}g(r),j(),P({kind:`approved`}),t=setTimeout(()=>i(y,{replace:!0}),250)}catch(t){if(e.signal.aborted)return;if(t instanceof s&&t.status===401){P({kind:`expired`});return}if(t instanceof s&&t.code===`GUARDIAN_REPAIR_REQUIRED`){P({kind:`error`,message:`The assistant's trust database needs repair. Run guardian repair on the machine hosting the assistant, then retry this same pairing link — the code stays valid.`});return}P({kind:`error`,message:`The assistant could not complete pairing. Try starting a new pairing.`})}};return n(),()=>{e.abort(),t&&clearTimeout(t)}},[a,C?.deviceCode,T,i,y]);let L=(0,D.useCallback)(()=>{M(!0),P({kind:`verifying`})},[]),R=(0,D.useMemo)(()=>F(),[]),z=(0,D.useCallback)(()=>{E(null,`account/select-assistant?noAutoSkip=1`).then(e=>{!e&&R&&window.location.assign(R)})},[R]);if(!a)return(0,O.jsx)(c,{});let B=k(N);return(0,O.jsx)(`main`,{className:`flex min-h-svh items-center justify-center bg-[var(--surface-base)] px-6 py-10 text-[var(--content-default)]`,children:(0,O.jsxs)(`section`,{className:`w-full max-w-md rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-lift)] p-8 shadow-[var(--shadow-sm)]`,children:[(0,O.jsxs)(`div`,{className:`mb-5 flex items-center gap-3`,children:[(0,O.jsx)(A,{state:N}),(0,O.jsx)(`h1`,{className:`text-title-medium text-[var(--content-emphasised)]`,children:B.title})]}),N.kind===`polling`&&C?.userCode?(0,O.jsxs)(`div`,{className:`mb-5 rounded-md border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-4 text-center`,children:[(0,O.jsx)(`div`,{className:`text-label-small-default uppercase tracking-wide text-[var(--content-tertiary)]`,children:e(`pairingPage.pairingCode`)}),(0,O.jsx)(`div`,{className:`mt-2 font-mono text-3xl font-semibold tracking-[0.18em] text-[var(--content-emphasised)]`,children:C.userCode})]}):null,(0,O.jsx)(`p`,{className:`text-body-medium-lighter leading-6 text-[var(--content-secondary)]`,children:B.body}),N.kind===`handoff_choice`&&C&&S?(0,O.jsx)(I,{deviceCode:C.deviceCode,platform:S,onContinueInBrowser:L}):null,N.kind===`polling`&&N.expiresAt?(0,O.jsx)(`p`,{className:`text-body-small-lighter mt-4 text-[var(--content-tertiary)]`,children:e(`pairingPage.expiresAt`,{time:new Date(N.expiresAt).toLocaleTimeString()})}):null,N.kind===`polling`&&R?(0,O.jsx)(h,{variant:`outlined`,fullWidth:!0,className:`mt-6`,onClick:z,children:e(`pairingPage.cancel`)}):null]})})}export{L as RemoteWebPairingPage};
@@ -0,0 +1 @@
1
+ import{kx as e}from"./app-B5J5Jx3A.js";import{r as t,t as n}from"./react-BJ4PZBJN.js";var r=n();function i(){return(0,r.jsx)(t,{to:e.account.login,replace:!0})}export{i as PasswordResetPage};
@@ -0,0 +1 @@
1
+ import{An as e,ir as t,nr as n}from"./app-B5J5Jx3A.js";import{t as r}from"./react-BJ4PZBJN.js";import{t as i}from"./preview-error-BwMkwAY5.js";var a=r();function o({blob:r,filename:o}){let s=n(r,`application/pdf`);return s===null?(0,a.jsx)(t,{}):(0,a.jsx)(`span`,{className:`block w-full [&_[data-slot=skeleton]]:w-full! [&_canvas]:w-full!`,children:(0,a.jsx)(e,{url:s,errorFallback:(0,a.jsx)(i,{filename:o})})})}export{o as PdfFilePreview};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{CC as t,_f as n,fC as r,ic as i,sc as a,uC as o,wh as s}from"./app-BNxKtvfM.js";import{t as c,x as l}from"./react-BJ4PZBJN.js";import{w as u}from"./vendor-CezcraPH.js";import{Ia as d,Ki as f,Ya as p}from"./icons-Dwi7aA1Y.js";import{a as m,c as h,i as g,o as _,r as v,s as y}from"./permission-setup-DohBLdCl.js";var b=p(`grip-vertical`,[[`circle`,{cx:`9`,cy:`12`,r:`1`,key:`1vctgf`}],[`circle`,{cx:`9`,cy:`5`,r:`1`,key:`hp0tcf`}],[`circle`,{cx:`9`,cy:`19`,r:`1`,key:`fkjjf6`}],[`circle`,{cx:`15`,cy:`12`,r:`1`,key:`1tmaij`}],[`circle`,{cx:`15`,cy:`5`,r:`1`,key:`19l28e`}],[`circle`,{cx:`15`,cy:`19`,r:`1`,key:`f4zoj3`}]]),x=e(l(),1);function S(){let[e,t]=(0,x.useState)(null);return(0,x.useEffect)(()=>{let e=!0,n=!1,r=h(e=>{n=!0,t(e)});return m().then(r=>{e&&!n&&t(r)}).catch(()=>void 0),()=>{e=!1,r()}},[]),e}var C=c();function w(){a(!s()),n();let{t:e}=u(),c=S(),[l,p]=(0,x.useState)(!1),m=c?.id,h=(0,x.useRef)(null);if((0,x.useLayoutEffect)(()=>{let e=h.current,t=e?.parentElement;if(m===void 0||!e||!t)return;let n=()=>{let n=getComputedStyle(t),r=parseFloat(n.paddingTop)+parseFloat(n.paddingBottom)+parseFloat(n.borderTopWidth)+parseFloat(n.borderBottomWidth);_(m,Math.min(320,Math.max(148,Math.ceil(e.getBoundingClientRect().height+r))))};n();let r=new ResizeObserver(n);return r.observe(e),()=>r.disconnect()},[m]),!c)return null;let w=e(c.kind===`screen`?`systemPermissionsCard.screenLabel`:`permissionGuide.inputLabel`),T=()=>{y(c.id).catch(()=>p(!0))};return(0,C.jsx)(o.Root,{asChild:!0,style:i(c.accentHex),className:`permission-guide flex h-screen items-center gap-3 overflow-hidden select-none shadow-[var(--shadow-popover)]`,children:(0,C.jsxs)(`main`,{children:[(0,C.jsx)(t,{className:`shrink-0`,variant:`ghost`,size:`regular`,iconOnly:(0,C.jsx)(f,{}),"aria-label":e(`permissionGuide.back`),onClick:()=>v(c.id)}),(0,C.jsxs)(`div`,{ref:h,className:`min-w-0 flex-1`,children:[(0,C.jsxs)(`div`,{className:`mb-3 flex items-center gap-3`,children:[(0,C.jsx)(d,{className:`permission-arrow size-6 shrink-0 text-[var(--avatar-accent-fill,var(--primary-base))]`,"aria-hidden":`true`}),(0,C.jsx)(r,{as:`h1`,variant:`body-medium-default`,children:e(`permissionGuide.dragInstruction`,{app:c.appName,permission:w})})]}),(0,C.jsx)(o.Root,{asChild:!0,interactive:!0,surface:`overlay`,padding:`sm`,className:`flex cursor-grab items-center gap-3 active:cursor-grabbing`,children:(0,C.jsxs)(`button`,{type:`button`,draggable:!0,"aria-label":e(`permissionGuide.dragApp`,{app:c.appName}),onDragStart:e=>{e.preventDefault(),g(c.id)},onClick:T,children:[(0,C.jsx)(`span`,{className:`flex size-10 shrink-0 items-center justify-center rounded-md bg-[color-mix(in_srgb,var(--avatar-accent,var(--primary-base))_12%,transparent)]`,children:(0,C.jsx)(`img`,{src:c.appIcon,alt:``,draggable:!1,className:`size-8 object-contain`})}),(0,C.jsx)(r,{variant:`body-large-default`,className:`min-w-0 flex-1 break-words`,children:c.appName}),(0,C.jsx)(b,{className:`size-4 shrink-0 text-[var(--content-tertiary)]`,"aria-hidden":`true`})]})}),(0,C.jsxs)(`div`,{className:`mt-2 flex items-center gap-2`,children:[(c.error||l)&&(0,C.jsx)(r,{variant:`body-small-lighter`,role:`alert`,className:`text-[var(--system-negative-strong)]`,children:e(`permissionGuide.dragError`)}),(0,C.jsx)(t,{variant:`ghost`,size:`compact`,className:`ml-auto shrink-0`,onClick:T,children:e(`permissionGuide.showInFinder`)})]})]})]})})}export{w as PermissionGuidePage};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Du as t,JS as n,Js as r,XS as i,hh as a,ku as o,sC as s}from"./app-B5J5Jx3A.js";import{t as c,x as l}from"./react-BJ4PZBJN.js";import{w as u}from"./vendor-CezcraPH.js";import{Ia as d,Ki as f,Ya as p}from"./icons-Dwi7aA1Y.js";import{a as m,c as h,i as g,o as _,r as v,s as y}from"./permission-setup-BWZO-BUC.js";var b=p(`grip-vertical`,[[`circle`,{cx:`9`,cy:`12`,r:`1`,key:`1vctgf`}],[`circle`,{cx:`9`,cy:`5`,r:`1`,key:`hp0tcf`}],[`circle`,{cx:`9`,cy:`19`,r:`1`,key:`fkjjf6`}],[`circle`,{cx:`15`,cy:`12`,r:`1`,key:`1tmaij`}],[`circle`,{cx:`15`,cy:`5`,r:`1`,key:`19l28e`}],[`circle`,{cx:`15`,cy:`19`,r:`1`,key:`f4zoj3`}]]),x=e(l(),1);function S(){let[e,t]=(0,x.useState)(null);return(0,x.useEffect)(()=>{let e=!0,n=!1,r=h(e=>{n=!0,t(e)});return m().then(r=>{e&&!n&&t(r)}).catch(()=>void 0),()=>{e=!1,r()}},[]),e}var C=c();function w(){o(!a()),t();let{t:e}=u(),c=S(),[l,p]=(0,x.useState)(!1),m=c?.id,h=(0,x.useRef)(null);if((0,x.useLayoutEffect)(()=>{let e=h.current,t=e?.parentElement;if(m===void 0||!e||!t)return;let n=()=>{let n=getComputedStyle(t),r=parseFloat(n.paddingTop)+parseFloat(n.paddingBottom)+parseFloat(n.borderTopWidth)+parseFloat(n.borderBottomWidth);_(m,Math.min(320,Math.max(148,Math.ceil(e.getBoundingClientRect().height+r))))};n();let r=new ResizeObserver(n);return r.observe(e),()=>r.disconnect()},[m]),!c)return null;let w=e(c.kind===`screen`?`systemPermissionsCard.screenLabel`:`permissionGuide.inputLabel`),T=()=>{y(c.id).catch(()=>p(!0))};return(0,C.jsx)(n.Root,{asChild:!0,style:r(c.accentHex),className:`permission-guide flex h-screen items-center gap-3 overflow-hidden select-none shadow-[var(--shadow-popover)]`,children:(0,C.jsxs)(`main`,{children:[(0,C.jsx)(s,{className:`shrink-0`,variant:`ghost`,size:`regular`,iconOnly:(0,C.jsx)(f,{}),"aria-label":e(`permissionGuide.back`),onClick:()=>v(c.id)}),(0,C.jsxs)(`div`,{ref:h,className:`min-w-0 flex-1`,children:[(0,C.jsxs)(`div`,{className:`mb-3 flex items-center gap-3`,children:[(0,C.jsx)(d,{className:`permission-arrow size-6 shrink-0 text-[var(--avatar-accent-fill,var(--primary-base))]`,"aria-hidden":`true`}),(0,C.jsx)(i,{as:`h1`,variant:`body-medium-default`,children:e(`permissionGuide.dragInstruction`,{app:c.appName,permission:w})})]}),(0,C.jsx)(n.Root,{asChild:!0,interactive:!0,surface:`overlay`,padding:`sm`,className:`flex cursor-grab items-center gap-3 active:cursor-grabbing`,children:(0,C.jsxs)(`button`,{type:`button`,draggable:!0,"aria-label":e(`permissionGuide.dragApp`,{app:c.appName}),onDragStart:e=>{e.preventDefault(),g(c.id)},onClick:T,children:[(0,C.jsx)(`span`,{className:`flex size-10 shrink-0 items-center justify-center rounded-md bg-[color-mix(in_srgb,var(--avatar-accent,var(--primary-base))_12%,transparent)]`,children:(0,C.jsx)(`img`,{src:c.appIcon,alt:``,draggable:!1,className:`size-8 object-contain`})}),(0,C.jsx)(i,{variant:`body-large-default`,className:`min-w-0 flex-1 break-words`,children:c.appName}),(0,C.jsx)(b,{className:`size-4 shrink-0 text-[var(--content-tertiary)]`,"aria-hidden":`true`})]})}),(0,C.jsxs)(`div`,{className:`mt-2 flex items-center gap-2`,children:[(c.error||l)&&(0,C.jsx)(i,{variant:`body-small-lighter`,role:`alert`,className:`text-[var(--system-negative-strong)]`,children:e(`permissionGuide.dragError`)}),(0,C.jsx)(s,{variant:`ghost`,size:`compact`,className:`ml-auto shrink-0`,onClick:T,children:e(`permissionGuide.showInFinder`)})]})]})]})})}export{w as PermissionGuidePage};
@@ -1 +1 @@
1
- import{Kx as e}from"./app-BNxKtvfM.js";var t=()=>e()?window.cadet?.permissions?.setup:void 0,n=()=>t()!==void 0,r=()=>{t()?.cancel?.()},i=async(e,n)=>await t()?.begin(e,n)??null,a=async()=>await t()?.getGuide()??null,o=e=>t()?.onGuide(e)??(()=>void 0),s=(e,n)=>{t()?.ready(e,n)},c=e=>{t()?.dismiss(e)},l=e=>{t()?.startDrag(e)},u=async e=>{await t()?.revealApp(e)};export{a,o as c,l as i,n as l,r as n,s as o,c as r,u as s,i as t};
1
+ import{Ax as e}from"./app-B5J5Jx3A.js";var t=()=>e()?window.cadet?.permissions?.setup:void 0,n=()=>t()!==void 0,r=()=>{t()?.cancel?.()},i=async(e,n)=>await t()?.begin(e,n)??null,a=async()=>await t()?.getGuide()??null,o=e=>t()?.onGuide(e)??(()=>void 0),s=(e,n)=>{t()?.ready(e,n)},c=e=>{t()?.dismiss(e)},l=e=>{t()?.startDrag(e)},u=async e=>{await t()?.revealApp(e)};export{a,o as c,l as i,n as l,r as n,s as o,c as r,u as s,i as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$s as t,Fa as n,G as r,Gx as i,Ia as a,Ic as o,Na as s,OC as c,nu as l,oc as u,zS as d}from"./app-BNxKtvfM.js";import{f,t as p,x as m}from"./react-BJ4PZBJN.js";import{Ut as h,Vt as g,Wt as _,Zn as v,er as y,k as b,w as x}from"./vendor-CezcraPH.js";import{$ as S,za as C}from"./icons-Dwi7aA1Y.js";import{i as w,n as T,r as E,t as D}from"./personality-sliders-DGNY8Rnd.js";import{n as O,t as k}from"./peeking-eyes-CYWm-sDJ.js";import{a as A,i as j,n as M,r as N,t as P}from"./use-assistant-identity-details-20XTojNX.js";import{r as F}from"./latest-assistant-text-BbUF-ZjG.js";var I=e(m(),1),L=p();function R({components:e,traits:t,stage:r,entrance:i=!1,entranceDelay:a=0}){let o=(0,I.useMemo)(()=>{let r=e.eyeStyles.find(e=>e.id===t.eyeStyle);return r?{paths:r.paths,bbox:n(r.paths.map(e=>s(e.svgPath)))}:null},[e,t.eyeStyle]);return o?(0,L.jsx)(O,{art:o,stage:r,entrance:i,entranceDelay:a}):null}var z=`#17191C`,B=24,V=.2,H=96,U=160,W=(0,I.createContext)(null);function G(){let e=(0,I.useContext)(W);if(!e)throw Error(`useAssistantStage must be used inside <AssistantStage>`);return e}function K({components:e,traits:n,customImageUrl:r,accentHex:i,entrance:o=!1,children:s,className:l}){let{ref:d,size:f}=a(),p=i??z,m=u(p),h=t.use.setSurface();(0,I.useLayoutEffect)(()=>(h(p),()=>{h(null)}),[p,h]);let g=!!(e&&n),_=!g&&!!r,v=Math.round(Math.min(U,Math.max(H,Math.min(f.w,f.h)*V))),y=f.h-v-B,b=g?Math.round(k*Math.min(f.w,f.h))+16:_?v+B+16:24;return(0,L.jsxs)(`div`,{ref:d,className:c(`relative flex min-h-0 flex-1 flex-col overflow-hidden rounded-lg border border-[var(--border-base)]`,`native-mobile:rounded-none native-mobile:border-0`,l),style:{backgroundColor:p,color:m.fg},children:[g&&e&&n&&(0,L.jsx)(R,{components:e,traits:n,stage:f,entrance:o}),_&&r&&(0,L.jsx)(`div`,{"aria-hidden":`true`,className:`pointer-events-none absolute z-[2] overflow-hidden rounded-full ring-4 ring-white/25`,style:{left:(f.w-v)/2,top:y,width:v,height:v},children:(0,L.jsx)(`img`,{src:r,alt:``,className:`h-full w-full object-cover`,draggable:!1})}),(0,L.jsx)(W.Provider,{value:{stage:f,tone:m,bottomReserve:b},children:(0,L.jsx)(`div`,{className:`relative z-10 flex min-h-0 flex-1 flex-col`,children:s})})]})}var q=`rgba(36, 41, 46, 0.25)`,J=`#FDFDFC`;function Y({axis:e,value:t,onValueChange:n,tone:r,disabled:i}){let{t:a}=x(`intelligence`),o=a(e.leftKey),s=a(e.rightKey);return(0,L.jsxs)(`div`,{className:`flex w-full shrink-0 flex-wrap items-center gap-x-5 gap-y-1.5 sm:flex-nowrap`,style:{opacity:i?.7:1},children:[(0,L.jsx)(`span`,{className:`order-1 flex-1 text-left text-sm sm:w-32 sm:flex-none sm:text-right sm:text-[17px]`,style:{color:r.fg},children:o}),(0,L.jsx)(`span`,{className:`order-2 flex-1 text-right text-sm sm:order-3 sm:w-32 sm:flex-none sm:text-left sm:text-[17px]`,style:{color:r.fg},children:s}),(0,L.jsxs)(g,{"data-owns-horizontal-drag":``,className:`relative order-3 flex h-6 w-full touch-none items-center select-none sm:order-2 sm:w-auto sm:flex-1`,value:[t],onValueChange:e=>n(e[0]??A),disabled:i,min:0,max:100,step:1,"aria-label":a(`personalitySliderRow.rangeAriaLabel`,{left:o,right:s}),children:[(0,L.jsx)(_,{className:`relative h-2 w-full grow rounded-full sm:h-3`,style:{backgroundColor:q}}),(0,L.jsx)(h,{className:`block h-5 w-5 cursor-grab rounded-full shadow-sm transition-transform active:scale-95 active:cursor-grabbing keyboard-focus:outline-none keyboard-focus:ring-2 keyboard-focus:ring-white/70 data-[disabled]:cursor-not-allowed data-[disabled]:active:scale-100 sm:h-6 sm:w-6`,style:{backgroundColor:J}})]})]})}async function X({assistantId:e,values:t,assistantName:n}){return N({assistantId:e,content:F(t,void 0,n),title:b(`applyPersonalityUpdate.conversationTitle`,{ns:`intelligence`}),context:`identity_personality_update`})}function Z(){let{t:e}=x(`intelligence`),t=r(),n=f(),a=y(),{components:s,traits:c,customImageUrl:l,accentHex:u}=o(t),p=M(t),m=v({queryKey:E(t),queryFn:()=>T(t)}),[h,g]=(0,I.useState)(null),[_,b]=(0,I.useState)(!1),S=h??m.data??{},C=p.data?.identity?.name||e(`identityOverview.defaultAssistantName`);return(0,L.jsx)(K,{components:s,traits:c,customImageUrl:l,accentHex:u,entrance:!0,children:(0,L.jsx)(Q,{assistantName:C,values:S,onValueChange:(e,t)=>g({...S,[e]:t}),applying:_,onUpdate:()=>{b(!0);let r=D(S);X({assistantId:t,values:r,assistantName:p.data?.identity?.name}).then(async o=>{b(!1),o?(await w(t,r),a.invalidateQueries({queryKey:E(t)}),a.invalidateQueries({queryKey:P(t)}),d.success(e(`personalityPage.updateSuccessToast`)),n(i.identity)):d.error(e(`personalityPage.updateErrorToast`))})},onBack:()=>void n(i.identity)})})}function Q({assistantName:e,values:t,onValueChange:n,applying:r,onUpdate:i,onBack:a}){let{t:o}=x(`intelligence`),s=l(),{tone:c,bottomReserve:u}=G(),d=c.isLight?`bg-black/10 hover:bg-black/20`:`bg-white/10 hover:bg-white/20`;return(0,L.jsxs)(L.Fragment,{children:[s?null:(0,L.jsxs)(`button`,{type:`button`,onClick:a,className:`absolute top-4 left-4 z-20 flex cursor-pointer items-center gap-1.5 rounded-full py-2 pr-4 pl-3 text-body-medium-default backdrop-blur-sm transition-all duration-150 active:scale-[0.97] ${d}`,style:{color:c.fg},children:[(0,L.jsx)(C,{className:`h-4 w-4`,"aria-hidden":!0}),o(`personalityPage.back`)]}),(0,L.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col items-center overflow-y-auto px-6`,style:{paddingBottom:u},children:[(0,L.jsx)(`div`,{className:`w-full min-h-14 shrink-[4]`,style:{flexBasis:`12%`}}),(0,L.jsxs)(`div`,{className:`flex shrink-0 flex-col items-center gap-2 text-center`,children:[(0,L.jsx)(`h1`,{className:`text-[2.6rem] leading-none max-sm:text-[2rem]`,style:{fontFamily:`var(--font-serif)`},children:o(`personalityPage.title`)}),(0,L.jsx)(`p`,{className:`max-w-md text-[15px]`,style:{color:c.fgMuted},children:o(`personalityPage.subtitle`)})]}),(0,L.jsx)(`div`,{className:`w-full min-h-3 shrink-[2] basis-10`}),(0,L.jsx)(`div`,{className:`flex w-full max-w-2xl shrink-0 flex-col`,children:j.map((e,i)=>(0,L.jsxs)(I.Fragment,{children:[i>0&&(0,L.jsx)(`div`,{className:`w-full min-h-2.5 shrink basis-8 sm:basis-11`}),(0,L.jsx)(Y,{axis:e,value:t[e.id]??A,onValueChange:t=>n(e.id,t),tone:c,disabled:r})]},e.id))}),(0,L.jsx)(`div`,{className:`w-full min-h-3 shrink-[2] basis-12`}),(0,L.jsx)(`button`,{type:`button`,onClick:i,disabled:r,className:`flex min-h-11 min-w-[240px] max-w-full shrink-0 cursor-pointer items-center justify-center gap-2 rounded-[10px] px-6 py-2 text-body-medium-default transition-transform duration-150 active:scale-[0.97] disabled:cursor-default disabled:opacity-80 disabled:active:scale-100`,style:{backgroundColor:c.isLight?`#1A1A1A`:`#FFFFFF`,color:c.isLight?`#FFFFFF`:`#1A1A1A`},children:r?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`div`,{className:`h-4 w-4 shrink-0 animate-spin rounded-full border-2 border-transparent`,style:{borderTopColor:c.isLight?`#FFFFFF`:`#1A1A1A`,borderRightColor:c.isLight?`#FFFFFF`:`#1A1A1A`}}),(0,L.jsx)(`span`,{className:`min-w-0 text-center`,children:o(`personalityPage.updatingPersonality`,{name:e})})]}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(S,{className:`h-4 w-4`,"aria-hidden":!0}),o(`personalityPage.updatePersonality`)]})})]})]})}export{Z as PersonalityPage};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Aa as t,CS as n,G as r,Ma as i,Na as a,Tc as o,Ul as s,Us as c,Xs as l,fC as u,kx as d}from"./app-B5J5Jx3A.js";import{f,t as p,x as m}from"./react-BJ4PZBJN.js";import{Ut as h,Vt as g,Wt as _,Zn as v,er as y,k as b,w as x}from"./vendor-CezcraPH.js";import{$ as S,za as C}from"./icons-Dwi7aA1Y.js";import{i as w,n as T,r as E,t as D}from"./personality-sliders-C8m0Kecj.js";import{n as O,t as k}from"./peeking-eyes-CYWm-sDJ.js";import{a as A,i as j,n as M,r as N,t as P}from"./use-assistant-identity-details-DMfKD6fe.js";import{r as F}from"./latest-assistant-text-B9dVyohk.js";var I=e(m(),1),L=p();function R({components:e,traits:n,stage:r,entrance:a=!1,entranceDelay:o=0}){let s=(0,I.useMemo)(()=>{let r=e.eyeStyles.find(e=>e.id===n.eyeStyle);return r?{paths:r.paths,bbox:i(r.paths.map(e=>t(e.svgPath)))}:null},[e,n.eyeStyle]);return s?(0,L.jsx)(O,{art:s,stage:r,entrance:a,entranceDelay:o}):null}var z=`#17191C`,B=24,V=.2,H=96,U=160,W=(0,I.createContext)(null);function G(){let e=(0,I.useContext)(W);if(!e)throw Error(`useAssistantStage must be used inside <AssistantStage>`);return e}function K({components:e,traits:t,customImageUrl:n,accentHex:r,entrance:i=!1,children:o,className:s}){let{ref:d,size:f}=a(),p=r??z,m=l(p),h=c.use.setSurface();(0,I.useLayoutEffect)(()=>(h(p),()=>{h(null)}),[p,h]);let g=!!(e&&t),_=!g&&!!n,v=Math.round(Math.min(U,Math.max(H,Math.min(f.w,f.h)*V))),y=f.h-v-B,b=g?Math.round(k*Math.min(f.w,f.h))+16:_?v+B+16:24;return(0,L.jsxs)(`div`,{ref:d,className:u(`relative flex min-h-0 flex-1 flex-col overflow-hidden rounded-lg border border-[var(--border-base)]`,`native-mobile:rounded-none native-mobile:border-0`,s),style:{backgroundColor:p,color:m.fg},children:[g&&e&&t&&(0,L.jsx)(R,{components:e,traits:t,stage:f,entrance:i}),_&&n&&(0,L.jsx)(`div`,{"aria-hidden":`true`,className:`pointer-events-none absolute z-[2] overflow-hidden rounded-full ring-4 ring-white/25`,style:{left:(f.w-v)/2,top:y,width:v,height:v},children:(0,L.jsx)(`img`,{src:n,alt:``,className:`h-full w-full object-cover`,draggable:!1})}),(0,L.jsx)(W.Provider,{value:{stage:f,tone:m,bottomReserve:b},children:(0,L.jsx)(`div`,{className:`relative z-10 flex min-h-0 flex-1 flex-col`,children:o})})]})}var q=`rgba(36, 41, 46, 0.25)`,J=`#FDFDFC`;function Y({axis:e,value:t,onValueChange:n,tone:r,disabled:i}){let{t:a}=x(`intelligence`),o=a(e.leftKey),s=a(e.rightKey);return(0,L.jsxs)(`div`,{className:`flex w-full shrink-0 flex-wrap items-center gap-x-5 gap-y-1.5 sm:flex-nowrap`,style:{opacity:i?.7:1},children:[(0,L.jsx)(`span`,{className:`order-1 flex-1 text-left text-sm sm:w-32 sm:flex-none sm:text-right sm:text-[17px]`,style:{color:r.fg},children:o}),(0,L.jsx)(`span`,{className:`order-2 flex-1 text-right text-sm sm:order-3 sm:w-32 sm:flex-none sm:text-left sm:text-[17px]`,style:{color:r.fg},children:s}),(0,L.jsxs)(g,{"data-owns-horizontal-drag":``,className:`relative order-3 flex h-6 w-full touch-none items-center select-none sm:order-2 sm:w-auto sm:flex-1`,value:[t],onValueChange:e=>n(e[0]??A),disabled:i,min:0,max:100,step:1,"aria-label":a(`personalitySliderRow.rangeAriaLabel`,{left:o,right:s}),children:[(0,L.jsx)(_,{className:`relative h-2 w-full grow rounded-full sm:h-3`,style:{backgroundColor:q}}),(0,L.jsx)(h,{className:`block h-5 w-5 cursor-grab rounded-full shadow-sm transition-transform active:scale-95 active:cursor-grabbing keyboard-focus:outline-none keyboard-focus:ring-2 keyboard-focus:ring-white/70 data-[disabled]:cursor-not-allowed data-[disabled]:active:scale-100 sm:h-6 sm:w-6`,style:{backgroundColor:J}})]})]})}async function X({assistantId:e,values:t,assistantName:n}){return N({assistantId:e,content:F(t,void 0,n),title:b(`applyPersonalityUpdate.conversationTitle`,{ns:`intelligence`}),context:`identity_personality_update`})}function Z(){let{t:e}=x(`intelligence`),t=r(),i=f(),a=y(),{components:s,traits:c,customImageUrl:l,accentHex:u}=o(t),p=M(t),m=v({queryKey:E(t),queryFn:()=>T(t)}),[h,g]=(0,I.useState)(null),[_,b]=(0,I.useState)(!1),S=h??m.data??{},C=p.data?.identity?.name||e(`identityOverview.defaultAssistantName`);return(0,L.jsx)(K,{components:s,traits:c,customImageUrl:l,accentHex:u,entrance:!0,children:(0,L.jsx)(Q,{assistantName:C,values:S,onValueChange:(e,t)=>g({...S,[e]:t}),applying:_,onUpdate:()=>{b(!0);let r=D(S);X({assistantId:t,values:r,assistantName:p.data?.identity?.name}).then(async o=>{b(!1),o?(await w(t,r),a.invalidateQueries({queryKey:E(t)}),a.invalidateQueries({queryKey:P(t)}),n.success(e(`personalityPage.updateSuccessToast`)),i(d.identity)):n.error(e(`personalityPage.updateErrorToast`))})},onBack:()=>void i(d.identity)})})}function Q({assistantName:e,values:t,onValueChange:n,applying:r,onUpdate:i,onBack:a}){let{t:o}=x(`intelligence`),c=s(),{tone:l,bottomReserve:u}=G(),d=l.isLight?`bg-black/10 hover:bg-black/20`:`bg-white/10 hover:bg-white/20`;return(0,L.jsxs)(L.Fragment,{children:[c?null:(0,L.jsxs)(`button`,{type:`button`,onClick:a,className:`absolute top-4 left-4 z-20 flex cursor-pointer items-center gap-1.5 rounded-full py-2 pr-4 pl-3 text-body-medium-default backdrop-blur-sm transition-all duration-150 active:scale-[0.97] ${d}`,style:{color:l.fg},children:[(0,L.jsx)(C,{className:`h-4 w-4`,"aria-hidden":!0}),o(`personalityPage.back`)]}),(0,L.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col items-center overflow-y-auto px-6`,style:{paddingBottom:u},children:[(0,L.jsx)(`div`,{className:`w-full min-h-14 shrink-[4]`,style:{flexBasis:`12%`}}),(0,L.jsxs)(`div`,{className:`flex shrink-0 flex-col items-center gap-2 text-center`,children:[(0,L.jsx)(`h1`,{className:`text-[2.6rem] leading-none max-sm:text-[2rem]`,style:{fontFamily:`var(--font-serif)`},children:o(`personalityPage.title`)}),(0,L.jsx)(`p`,{className:`max-w-md text-[15px]`,style:{color:l.fgMuted},children:o(`personalityPage.subtitle`)})]}),(0,L.jsx)(`div`,{className:`w-full min-h-3 shrink-[2] basis-10`}),(0,L.jsx)(`div`,{className:`flex w-full max-w-2xl shrink-0 flex-col`,children:j.map((e,i)=>(0,L.jsxs)(I.Fragment,{children:[i>0&&(0,L.jsx)(`div`,{className:`w-full min-h-2.5 shrink basis-8 sm:basis-11`}),(0,L.jsx)(Y,{axis:e,value:t[e.id]??A,onValueChange:t=>n(e.id,t),tone:l,disabled:r})]},e.id))}),(0,L.jsx)(`div`,{className:`w-full min-h-3 shrink-[2] basis-12`}),(0,L.jsx)(`button`,{type:`button`,onClick:i,disabled:r,className:`flex min-h-11 min-w-[240px] max-w-full shrink-0 cursor-pointer items-center justify-center gap-2 rounded-[10px] px-6 py-2 text-body-medium-default transition-transform duration-150 active:scale-[0.97] disabled:cursor-default disabled:opacity-80 disabled:active:scale-100`,style:{backgroundColor:l.isLight?`#1A1A1A`:`#FFFFFF`,color:l.isLight?`#FFFFFF`:`#1A1A1A`},children:r?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`div`,{className:`h-4 w-4 shrink-0 animate-spin rounded-full border-2 border-transparent`,style:{borderTopColor:l.isLight?`#FFFFFF`:`#1A1A1A`,borderRightColor:l.isLight?`#FFFFFF`:`#1A1A1A`}}),(0,L.jsx)(`span`,{className:`min-w-0 text-center`,children:o(`personalityPage.updatingPersonality`,{name:e})})]}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(S,{className:`h-4 w-4`,"aria-hidden":!0}),o(`personalityPage.updatePersonality`)]})})]})]})}export{Z as PersonalityPage};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{CC as t,G as n,Gx as r,VS as i,lv as a,qf as o,zS as s}from"./app-BNxKtvfM.js";import{r as c,t as l,x as u}from"./react-BJ4PZBJN.js";import{Zn as d,er as f,w as p}from"./vendor-CezcraPH.js";import{t as m}from"./detail-card-DF9nj6Gj.js";import{i as h,n as g,r as _,t as v}from"./personality-sliders-DGNY8Rnd.js";var y=e(u(),1),b=l(),x=[{id:a.companionCoworker,leftKey:`personalityPage.axes.companionCoworker.left`,rightKey:`personalityPage.axes.companionCoworker.right`},{id:a.genzBoomer,leftKey:`personalityPage.axes.genzBoomer.left`,rightKey:`personalityPage.axes.genzBoomer.right`},{id:a.executeCollaborate,leftKey:`personalityPage.axes.executeCollaborate.left`,rightKey:`personalityPage.axes.executeCollaborate.right`},{id:a.playfulSerious,leftKey:`personalityPage.axes.playfulSerious.left`,rightKey:`personalityPage.axes.playfulSerious.right`},{id:a.politeUnfiltered,leftKey:`personalityPage.axes.politeUnfiltered.left`,rightKey:`personalityPage.axes.politeUnfiltered.right`}];function S(){let{t:e}=p(`settings`),a=n(),l=f(),u=o.use.cadetHostedInference(),S=o.use.hasHydrated(),C=d({queryKey:_(a),queryFn:()=>g(a)}),[w,T]=(0,y.useState)(null),[E,D]=(0,y.useState)(!1),O=w??C.data??{};if(S&&!u)return(0,b.jsx)(c,{replace:!0,to:r.settings.general});let k=()=>{D(!0),h(a,v(O)).then(t=>{D(!1),t?(l.invalidateQueries({queryKey:_(a)}),s.success(e(`personalityPage.saveSuccessToast`))):s.error(e(`personalityPage.saveErrorToast`))})},A=E||C.isLoading;return(0,b.jsxs)(`div`,{"data-slot":`personality-page`,className:`space-y-6`,children:[(0,b.jsx)(m,{title:e(`personalityPage.title`),subtitle:e(`personalityPage.subtitle`),children:C.isError?(0,b.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-tertiary)]`,children:e(`personalityPage.loadError`)}):(0,b.jsx)(`div`,{className:`flex flex-col gap-6`,children:x.map(t=>{let n=e(t.leftKey),r=e(t.rightKey);return(0,b.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,b.jsxs)(`div`,{className:`flex items-center justify-between gap-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,b.jsx)(`span`,{children:n}),(0,b.jsx)(`span`,{children:r})]}),(0,b.jsx)(i,{value:O[t.id]??50,onValueChange:e=>{typeof e==`number`&&T({...O,[t.id]:e})},min:0,max:100,step:1,disabled:A,"aria-label":e(`personalityPage.rangeAriaLabel`,{left:n,right:r})})]},t.id)})})}),(0,b.jsx)(t,{onClick:k,disabled:A||C.isError,children:e(E?`personalityPage.saving`:`personalityPage.save`)})]})}export{S as SettingsPersonalityPage};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{CS as t,G as n,J_ as r,Lf as i,TS as a,kx as o,sC as s}from"./app-B5J5Jx3A.js";import{r as c,t as l,x as u}from"./react-BJ4PZBJN.js";import{Zn as d,er as f,w as p}from"./vendor-CezcraPH.js";import{t as m}from"./detail-card-CAMxlK7D.js";import{i as h,n as g,r as _,t as v}from"./personality-sliders-C8m0Kecj.js";var y=e(u(),1),b=l(),x=[{id:r.companionCoworker,leftKey:`personalityPage.axes.companionCoworker.left`,rightKey:`personalityPage.axes.companionCoworker.right`},{id:r.genzBoomer,leftKey:`personalityPage.axes.genzBoomer.left`,rightKey:`personalityPage.axes.genzBoomer.right`},{id:r.executeCollaborate,leftKey:`personalityPage.axes.executeCollaborate.left`,rightKey:`personalityPage.axes.executeCollaborate.right`},{id:r.playfulSerious,leftKey:`personalityPage.axes.playfulSerious.left`,rightKey:`personalityPage.axes.playfulSerious.right`},{id:r.politeUnfiltered,leftKey:`personalityPage.axes.politeUnfiltered.left`,rightKey:`personalityPage.axes.politeUnfiltered.right`}];function S(){let{t:e}=p(`settings`),r=n(),l=f(),u=i.use.cadetHostedInference(),S=i.use.hasHydrated(),C=d({queryKey:_(r),queryFn:()=>g(r)}),[w,T]=(0,y.useState)(null),[E,D]=(0,y.useState)(!1),O=w??C.data??{};if(S&&!u)return(0,b.jsx)(c,{replace:!0,to:o.settings.general});let k=()=>{D(!0),h(r,v(O)).then(n=>{D(!1),n?(l.invalidateQueries({queryKey:_(r)}),t.success(e(`personalityPage.saveSuccessToast`))):t.error(e(`personalityPage.saveErrorToast`))})},A=E||C.isLoading;return(0,b.jsxs)(`div`,{"data-slot":`personality-page`,className:`space-y-6`,children:[(0,b.jsx)(m,{title:e(`personalityPage.title`),subtitle:e(`personalityPage.subtitle`),children:C.isError?(0,b.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-tertiary)]`,children:e(`personalityPage.loadError`)}):(0,b.jsx)(`div`,{className:`flex flex-col gap-6`,children:x.map(t=>{let n=e(t.leftKey),r=e(t.rightKey);return(0,b.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,b.jsxs)(`div`,{className:`flex items-center justify-between gap-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,b.jsx)(`span`,{children:n}),(0,b.jsx)(`span`,{children:r})]}),(0,b.jsx)(a,{value:O[t.id]??50,onValueChange:e=>{typeof e==`number`&&T({...O,[t.id]:e})},min:0,max:100,step:1,disabled:A,"aria-label":e(`personalityPage.rangeAriaLabel`,{left:n,right:r})})]},t.id)})})}),(0,b.jsx)(s,{onClick:k,disabled:A||C.isError,children:e(E?`personalityPage.saving`:`personalityPage.save`)})]})}export{S as SettingsPersonalityPage};
@@ -0,0 +1 @@
1
+ import{J_ as e,Vx as t,Y_ as n,dy as r,hy as i}from"./app-B5J5Jx3A.js";function a(e){return[`personality-sliders`,e]}function o(e){return typeof e!=`object`||!e||Array.isArray(e)?!1:Object.values(e).every(e=>typeof e==`number`)}function s(t){return Object.fromEntries(Object.values(e).map(e=>[e,t[e]??50]))}async function c(e){let{data:i,error:a,response:s}=await r({path:{assistant_id:e},query:{path:n},throwOnError:!1});if(t(s,a,`Failed to fetch personality sliders`),s.status===404)return null;if(!s.ok||!i)throw Error(`Failed to fetch personality sliders`);let c=JSON.parse(i.content);if(!o(c))throw Error(`Personality sliders sidecar is malformed`);return c}async function l(e,r){try{let{error:a,response:o}=await i({path:{assistant_id:e},body:{path:n,content:JSON.stringify(r,null,2),encoding:`utf-8`},throwOnError:!1});return t(o,a,`Failed to save personality sliders`),o.ok}catch{return!1}}export{l as i,c as n,a as r,s as t};