@vellumai/web 0.11.6-staging.2 → 0.11.6-staging.3

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 (313) hide show
  1. package/dist/assets/{Trans-v2rRKTPL.js → Trans-CBhhVbOk.js} +1 -1
  2. package/dist/assets/{about-page-Dw0Uwev9.js → about-page-hURQzaZb.js} +1 -1
  3. package/dist/assets/{account-page-DlvLIypA.js → account-page-BUHRzIQn.js} +1 -1
  4. package/dist/assets/{acp-run-detail-panel-Iio-GZu9.js → acp-run-detail-panel-CVPDXyP6.js} +1 -1
  5. package/dist/assets/{activity-steps-panel-PJzUgOtB.js → activity-steps-panel-BzTDFCQ4.js} +1 -1
  6. package/dist/assets/{add-credential-modal-D7srPAPB.js → add-credential-modal-aeUdZtSp.js} +1 -1
  7. package/dist/assets/{add-credits-modal-DeNURe8K.js → add-credits-modal-CtS-PzoH.js} +1 -1
  8. package/dist/assets/{ai-page-DD80M99s.js → ai-page-C6zXOVyP.js} +1 -1
  9. package/dist/assets/{android-billing-handoff-Bh58jm76.js → android-billing-handoff-BoSQm4gg.js} +1 -1
  10. package/dist/assets/{api-key-screen-z0y8OmyR.js → api-key-screen-DauZKmq9.js} +1 -1
  11. package/dist/assets/{app-card-BhEYWzKz.js → app-card-B5AFFdUO.js} +1 -1
  12. package/dist/assets/{assistant-status-panel-DVk8iz06.js → assistant-status-panel-DYkXgK0D.js} +1 -1
  13. package/dist/assets/{auth-store-CjmqULlA.js → auth-store-BVjw4Y6z.js} +2 -2
  14. package/dist/assets/{auth-welcome-screen-CZqGjUcN.js → auth-welcome-screen-DbDu2DKV.js} +1 -1
  15. package/dist/assets/{avatar-random-BnLwN7Id.js → avatar-random-BOjdaclE.js} +1 -1
  16. package/dist/assets/background-task-detail-panel-BWAwy3I3.js +1 -0
  17. package/dist/assets/{billing-page-CKwUJ6q-.js → billing-page-FxI0W3-_.js} +3 -3
  18. package/dist/assets/{bookmarks-page-Dx3rKSni.js → bookmarks-page-6p-UochF.js} +1 -1
  19. package/dist/assets/{browser-BEhg-q3w.js → browser-BaGW19xY.js} +2 -2
  20. package/dist/assets/{build-state-B8LOllfu.js → build-state-ChDL0BPH.js} +1 -1
  21. package/dist/assets/{bundle-confirm-page-6fk5bxhm.js → bundle-confirm-page-9jTfMrek.js} +1 -1
  22. package/dist/assets/{channels-page-route-oOKo0PJl.js → channels-page-route-DBtIRtsL.js} +1 -1
  23. package/dist/assets/{chat-DWHDLB4P.js → chat-4LXYoAUR.js} +2 -2
  24. package/dist/assets/{chat-D5S5-COJ.js → chat-BG7p3zq1.js} +2 -2
  25. package/dist/assets/{chat-CBvs4_4y.js → chat-Bfo3dMB3.js} +1 -1
  26. package/dist/assets/{chat-avatar-UYWpN1Us.js → chat-avatar-DM2DBsml.js} +1 -1
  27. package/dist/assets/{chat-markdown-message-u0xAGkrJ.js → chat-markdown-message-CTuuKxjN.js} +1 -1
  28. package/dist/assets/{checkout-continuation-BWg-BcSF.js → checkout-continuation-LLv0HLko.js} +1 -1
  29. package/dist/assets/{checkout-page-CbYIkUzX.js → checkout-page-B14XHmIb.js} +1 -1
  30. package/dist/assets/checkout-return-target-BX6588K4.js +1 -0
  31. package/dist/assets/{client-perf-HISWGXqe.js → client-perf-CL-Sfpnu.js} +1 -1
  32. package/dist/assets/{command-palette-H8-iGtrr.js → command-palette-C0x3z7aQ.js} +1 -1
  33. package/dist/assets/{command-palette-window-page-BhTJGf5Z.js → command-palette-window-page-BShi7rwo.js} +1 -1
  34. package/dist/assets/common-C7YGlfJZ.js +1 -0
  35. package/dist/assets/common-DFfCPRFe.js +1 -0
  36. package/dist/assets/{community-page-D5Arbqn5.js → community-page-ChiOX6Op.js} +1 -1
  37. package/dist/assets/{companion-surface-page-ocmWMzcw.js → companion-surface-page-HYtLs0-t.js} +1 -1
  38. package/dist/assets/{composer-settings-C-0rpzHA.js → composer-settings-BCehrZgj.js} +1 -1
  39. package/dist/assets/{connect-page-mZ1hzLhX.js → connect-page-tyHxf7TL.js} +1 -1
  40. package/dist/assets/{consent-controls-BO5Fuj76.js → consent-controls-C7U2N-h8.js} +1 -1
  41. package/dist/assets/consent-cuDRWUkB.js +1 -0
  42. package/dist/assets/{contacts-gateway-DoiRPJZq.js → contacts-gateway-BLGKdcif.js} +1 -1
  43. package/dist/assets/{contacts-page-route-BsBSdQ8v.js → contacts-page-route-KVjx4fqm.js} +1 -1
  44. package/dist/assets/{conversation-cache-DOQdWaTg.js → conversation-cache-CrybogTL.js} +1 -1
  45. package/dist/assets/{conversation-navigation-116d0b9Q.js → conversation-navigation-Ck_iLhjv.js} +1 -1
  46. package/dist/assets/{conversation-queries-tt9gZId5.js → conversation-queries-Clrll8jF.js} +1 -1
  47. package/dist/assets/{conversation-selection-DKq2AZf8.js → conversation-selection-BVLi6RIL.js} +1 -1
  48. package/dist/assets/{copy-to-clipboard-CIyU3zmr.js → copy-to-clipboard-Blihejp9.js} +1 -1
  49. package/dist/assets/{credential-entry-page-Dd7upL78.js → credential-entry-page-Cs6FHnUn.js} +1 -1
  50. package/dist/assets/{credentials-page-BVljsi9m.js → credentials-page-D8G-44GI.js} +1 -1
  51. package/dist/assets/{csv-preview-CeNy614y.js → csv-preview-rpZix2b7.js} +1 -1
  52. package/dist/assets/debug-page-BMqKvkSo.js +4 -0
  53. package/dist/assets/{deploy-dialogs-TTQiNB6y.js → deploy-dialogs-DqkTJUGk.js} +1 -1
  54. package/dist/assets/{deploy-store-Cz20nHuj.js → deploy-store-FijtU8HL.js} +1 -1
  55. package/dist/assets/detail-panel-stop-button-ClfJeo-s.js +1 -0
  56. package/dist/assets/{developer-page-DBUNokt3.js → developer-page-C7o31rYB.js} +1 -1
  57. package/dist/assets/{diagnostics-Bi4k4B8U.js → diagnostics-BC7vRbDB.js} +1 -1
  58. package/dist/assets/{dictation-overlay-page-BmayMkea.js → dictation-overlay-page-sfEwzU14.js} +1 -1
  59. package/dist/assets/{doctor-handoff-store-Do2X2LvI.js → doctor-handoff-store-DEirTOZw.js} +1 -1
  60. package/dist/assets/{document-viewer-container-CrbF9Z_4.js → document-viewer-container-yyhVIyAB.js} +2 -2
  61. package/dist/assets/{document-viewer-page-DqN6k_UB.js → document-viewer-page-Co_sxuvK.js} +1 -1
  62. package/dist/assets/effective-timezone-BW38Gdmx.js +1 -0
  63. package/dist/assets/{emails-page-BSDs_cnf.js → emails-page-a1sfkbkL.js} +1 -1
  64. package/dist/assets/{esm-Dn6OqJ4P.js → esm-BTQ42Hgz.js} +2 -2
  65. package/dist/assets/{esm-B7hQuLYV.js → esm-BnXPDdij.js} +2 -2
  66. package/dist/assets/{esm-BN5PWtBB.js → esm-CC077SPL.js} +2 -2
  67. package/dist/assets/{esm-B9__Mvsi.js → esm-CbZfwR7m.js} +2 -2
  68. package/dist/assets/esm-DA5sciAy.js +2 -0
  69. package/dist/assets/{esm-aHElu69l.js → esm-DbODHbQp.js} +2 -2
  70. package/dist/assets/{esm-Bcw5HdPN.js → esm-Doko4a-G.js} +2 -2
  71. package/dist/assets/{external-anchor-DKrqdxff.js → external-anchor-CJ2uCBN2.js} +1 -1
  72. package/dist/assets/{feed-item-status-actions-CCNKonlC.js → feed-item-status-actions-Bw41rlaj.js} +1 -1
  73. package/dist/assets/{file-editor-Bn3fjyeW.js → file-editor-Cx3p3Rxf.js} +1 -1
  74. package/dist/assets/{file-markdown-8-h2vx0G.js → file-markdown-D43Nsqm2.js} +1 -1
  75. package/dist/assets/{first-run-scope-lw_VDLUA.js → first-run-scope-DITgHc6G.js} +1 -1
  76. package/dist/assets/{format-usd-B9okvVIq.js → format-usd-Be34KtzB.js} +1 -1
  77. package/dist/assets/{funnel-events-D-InjbTX.js → funnel-events-Dl6Nt7nA.js} +1 -1
  78. package/dist/assets/{general-page-DppPvamB.js → general-page-rg_u_yPE.js} +1 -1
  79. package/dist/assets/{get-memory-stats-BhVFtDQg.js → get-memory-stats-DxspWLxk.js} +1 -1
  80. package/dist/assets/{haptics-DRyt58c5.js → haptics-BS-glrYv.js} +2 -2
  81. package/dist/assets/{hatching-screen-1ZOPcV42.js → hatching-screen-8lXCy9WG.js} +1 -1
  82. package/dist/assets/{home-page-route-D1QbN6M5.js → home-page-route-QunjBmtS.js} +1 -1
  83. package/dist/assets/{hosting-screen-C-uvieVy.js → hosting-screen-B-5gejYX.js} +1 -1
  84. package/dist/assets/{i18n-BDfnKs41.js → i18n-BtV8MCsZ.js} +3 -3
  85. package/dist/assets/{identity-BueQJAR8.js → identity-_6tLszkL.js} +1 -1
  86. package/dist/assets/{identity-page-route-BOQd6ko9.js → identity-page-route-B0XGpYIE.js} +1 -1
  87. package/dist/assets/index-C9XKdblY.css +2 -0
  88. package/dist/assets/{index-CfSEZ8JN.js → index-Gjnx86x6.js} +3 -3
  89. package/dist/assets/{ingest-BD3GYGpk.js → ingest-OJG7HVUh.js} +1 -1
  90. package/dist/assets/{inspect-page-CGsWZzun.js → inspect-page-bs_j1c9j.js} +3 -3
  91. package/dist/assets/{integrations-page-D5H6XJIt.js → integrations-page-D7ENik74.js} +1 -1
  92. package/dist/assets/{intelligence-layout-_FM08eqn.js → intelligence-layout-gaexcakY.js} +1 -1
  93. package/dist/assets/{invalidate-memory-queries-DqdhPLUe.js → invalidate-memory-queries-DWuNUXFq.js} +1 -1
  94. package/dist/assets/{latest-assistant-text-BeS_23nt.js → latest-assistant-text-DCyUvxgH.js} +1 -1
  95. package/dist/assets/{library-detail-page-DLtBHLA8.js → library-detail-page-DXCZhY4s.js} +1 -1
  96. package/dist/assets/{library-page-YT1vECkY.js → library-page-CKAu2a08.js} +1 -1
  97. package/dist/assets/{local-runtime-upgrade-8SxM3rIp.js → local-runtime-upgrade-BXc9x-7Y.js} +1 -1
  98. package/dist/assets/{login-flow-B8yCe4pl.js → login-flow-CrSxmLFE.js} +1 -1
  99. package/dist/assets/{login-page-awRRidw5.js → login-page-uUo0uRmJ.js} +1 -1
  100. package/dist/assets/{logout-page-nRjDnT8Z.js → logout-page-BYZfOpa1.js} +1 -1
  101. package/dist/assets/{logs-layout-D8c2JBmw.js → logs-layout-B34XKM-k.js} +1 -1
  102. package/dist/assets/{markdown-preview-BkK4kDdG.js → markdown-preview-eCDa4paC.js} +1 -1
  103. package/dist/assets/{media-preview-lY5oZbAH.js → media-preview-1xn1SAn9.js} +1 -1
  104. package/dist/assets/{memory-page-route-j0Dpopb-.js → memory-page-route-DiVaW98S.js} +1 -1
  105. package/dist/assets/{memory-router-playground-page-BYD7TF11.js → memory-router-playground-page-DgILWgQu.js} +1 -1
  106. package/dist/assets/{message-files-panel-aRAyF3Ir.js → message-files-panel-Bv-5dvcD.js} +1 -1
  107. package/dist/assets/{messages-CCAr4He2.js → messages-BXHTKK_v.js} +1 -1
  108. package/dist/assets/native-anchor-CmnMg6B6.js +1 -0
  109. package/dist/assets/{native-biometric-ntyxdDLY.js → native-biometric-DEP8Sr4X.js} +1 -1
  110. package/dist/assets/{native-file-DhgAhuFu.js → native-file-DlQtjxJn.js} +2 -2
  111. package/dist/assets/{navigation-resolver-dBlKf1YD.js → navigation-resolver-CRsrd5gh.js} +1 -1
  112. package/dist/assets/{not-found-DWwWs5dL.js → not-found-BXR_4Uja.js} +1 -1
  113. package/dist/assets/{notifications-CdfIUmqd.js → notifications-Dcgkgn8Q.js} +1 -1
  114. package/dist/assets/{notifications-page-DqdfKth8.js → notifications-page-CSH6gHaX.js} +1 -1
  115. package/dist/assets/{oauth-complete-page-O3DSqE_R.js → oauth-complete-page-Bh6VG8SS.js} +1 -1
  116. package/dist/assets/{oauth-popup-complete-page-Bax7Z0q9.js → oauth-popup-complete-page-6YLSOCV_.js} +1 -1
  117. package/dist/assets/{onboarding-store-BsVgs3Ut.js → onboarding-store-BhT1z8Wi.js} +1 -1
  118. package/dist/assets/{open-workspace-file-Cw5RJCCD.js → open-workspace-file-fIr0qcsc.js} +2 -2
  119. package/dist/assets/{operational-status-DpG5GDPe.js → operational-status-BdcYEcTh.js} +1 -1
  120. package/dist/assets/{pairing-page-BAjVwQx2.js → pairing-page-fVI54lsD.js} +1 -1
  121. package/dist/assets/{pdf-file-preview-DOGYGRl6.js → pdf-file-preview-BjbSLoD9.js} +1 -1
  122. package/dist/assets/{pdf-preview-CSMjNQyq.js → pdf-preview-xa07R01f.js} +2 -2
  123. package/dist/assets/{personality-page-DHXw49da.js → personality-page-CK3vkhkl.js} +1 -1
  124. package/dist/assets/{plans-page-CEKWL3n4.js → plans-page-CuZeAQhx.js} +1 -1
  125. package/dist/assets/{platform-detection-BVSM8PRh.js → platform-detection-DUeD4WFO.js} +1 -1
  126. package/dist/assets/{platform-login-notice-Dq3m5QWH.js → platform-login-notice-B2ZwcEYp.js} +1 -1
  127. package/dist/assets/{platform-loopback-page-pQ4fn0Nn.js → platform-loopback-page-CMnaXj8y.js} +1 -1
  128. package/dist/assets/{prefs-CXvngLdE.js → prefs-CAMw44jD.js} +1 -1
  129. package/dist/assets/{preview-skeleton-DA_Jj0Wc.js → preview-skeleton-CLI9ptyu.js} +1 -1
  130. package/dist/assets/{privacy-page-BMzUBvaJ.js → privacy-page-D-a7l0YY.js} +1 -1
  131. package/dist/assets/{privacy-screen-Dy6bC1QU.js → privacy-screen-CxwxgE4s.js} +1 -1
  132. package/dist/assets/{provider-callback-page-DI_iDUZB.js → provider-callback-page-65a2DK0l.js} +1 -1
  133. package/dist/assets/{provider-key-CXIl3HXm.js → provider-key-CcPF1Zqp.js} +1 -1
  134. package/dist/assets/{provider-signup-page-CEZYja-E.js → provider-signup-page-BC86aF7W.js} +1 -1
  135. package/dist/assets/{provisioning-targets-BwwKG7Vs.js → provisioning-targets-CE25g21J.js} +1 -1
  136. package/dist/assets/{push-registration-DSgQ3jMG.js → push-registration-D0zDMpTx.js} +2 -2
  137. package/dist/assets/{quick-input-page-DCkaYfUc.js → quick-input-page-DAf2lbri.js} +1 -1
  138. package/dist/assets/{remove-from-device-dialog-CYJV-5IC.js → remove-from-device-dialog-CXmGFbKk.js} +1 -1
  139. package/dist/assets/{research-facts-DKRZaLQC.js → research-facts-gT4POsZw.js} +1 -1
  140. package/dist/assets/{research-mock-page-Y0Hec2hX.js → research-mock-page-B41v4MzE.js} +1 -1
  141. package/dist/assets/{research-onboarding-route-CREwj2sS.js → research-onboarding-route-CbZ14lCf.js} +1 -1
  142. package/dist/assets/{research-results-view-CBvWhXB8.js → research-results-view-BHXLkoKK.js} +1 -1
  143. package/dist/assets/{retire-confirm-dialog-B3ZUAlmZ.js → retire-confirm-dialog-1nxn6f4M.js} +1 -1
  144. package/dist/assets/{review-terms-screen-7OU_S96U.js → review-terms-screen-BsDHdmoO.js} +1 -1
  145. package/dist/assets/{routes-DvpgDVCJ.js → routes-Cly3ytK4.js} +9 -9
  146. package/dist/assets/{runtime-upgrade-banner-lbVqs7Te.js → runtime-upgrade-banner-DC63rkQ7.js} +2 -2
  147. package/dist/assets/{sandbox-bridge-BkKOlHRs.js → sandbox-bridge-DSJSIgUC.js} +1 -1
  148. package/dist/assets/{schedules-DCr5HsxY.js → schedules-BZzuRuQs.js} +1 -1
  149. package/dist/assets/{schedules-5MJ4hhjn.js → schedules-DVOFbt86.js} +1 -1
  150. package/dist/assets/{schedules-page-DRcO3zq3.js → schedules-page-CjqAP78z.js} +1 -1
  151. package/dist/assets/{section-membership-CyAaLX8V.js → section-membership-Bma0R_Bn.js} +1 -1
  152. package/dist/assets/{select-assistant-screen-DJHzqmSj.js → select-assistant-screen-CV_3BKEH.js} +1 -1
  153. package/dist/assets/{self-hosted-servers-DTLMKzVl.js → self-hosted-servers-BMPYPayb.js} +1 -1
  154. package/dist/assets/{settings-layout-Brb4OeZD.js → settings-layout-CDRF6b06.js} +1 -1
  155. package/dist/assets/{settings-navigation-eZSfIWFH.js → settings-navigation-DyFIJJGF.js} +1 -1
  156. package/dist/assets/{share-feedback-modal-DuppDLIt.js → share-feedback-modal-TnZsiNw9.js} +2 -2
  157. package/dist/assets/{sidebar-tree-hjulk9XJ.js → sidebar-tree-Y1RDeJ9E.js} +1 -1
  158. package/dist/assets/{signup-page-pBgqV9xZ.js → signup-page-DRzsOblS.js} +1 -1
  159. package/dist/assets/{site-favicon-zvd-HIsY.js → site-favicon-DLf2W4xi.js} +1 -1
  160. package/dist/assets/{skill-detail-page-CB5IciZz.js → skill-detail-page-3Wiz9A7q.js} +1 -1
  161. package/dist/assets/{skill-detail-panel-CxyyNg-F.js → skill-detail-panel-DbLFuSyn.js} +1 -1
  162. package/dist/assets/{skills-DGBAogub.js → skills-DASSBxT-.js} +1 -1
  163. package/dist/assets/{sound-manager-BCNOVpEJ.js → sound-manager-D8p3_c3W.js} +1 -1
  164. package/dist/assets/{sounds-page-B9l4ortG.js → sounds-page-CWBPL1YA.js} +1 -1
  165. package/dist/assets/{start-screen-BXejiAHk.js → start-screen-OMf-yHG3.js} +1 -1
  166. package/dist/assets/status-badge-pill-MTA2Lfk-.js +1 -0
  167. package/dist/assets/{stt-language-picker-modal-DoiPypZS.js → stt-language-picker-modal-CmeO8yxD.js} +1 -1
  168. package/dist/assets/{subagent-detail-panel-Dgs09-aR.js → subagent-detail-panel-CUW2rBET.js} +1 -1
  169. package/dist/assets/{subagent-store-B3w3yLSH.js → subagent-store-BcbcFnS8.js} +1 -1
  170. package/dist/assets/{superpowers-page-DqtKtLl_.js → superpowers-page-CuvXfGPO.js} +1 -1
  171. package/dist/assets/{swipe-action-reveal-rwiWQgU_.js → swipe-action-reveal-BhA-hrfj.js} +1 -1
  172. package/dist/assets/{system-events-page-DVQ_Igth.js → system-events-page-tEAEdDzA.js} +1 -1
  173. package/dist/assets/{telegram-setup-wizard-CYy9zEtc.js → telegram-setup-wizard-BT6u6vcb.js} +1 -1
  174. package/dist/assets/{text-preview-DG1TgtrX.js → text-preview-qkra1xEh.js} +1 -1
  175. package/dist/assets/{theme-preferences-U-DK54R3.js → theme-preferences-ysFQ1QCN.js} +1 -1
  176. package/dist/assets/{theme-stage-page-DncswvCE.js → theme-stage-page-DiqUiOmJ.js} +1 -1
  177. package/dist/assets/{threshold-presets-XHj6N666.js → threshold-presets-DF7FTTlD.js} +1 -1
  178. package/dist/assets/{tiptap-document-editor-CeH50SNN.js → tiptap-document-editor-sg7gdh_H.js} +1 -1
  179. package/dist/assets/{tool-detail-panel-CjI_rLvP.js → tool-detail-panel-BR3PsmdK.js} +1 -1
  180. package/dist/assets/{transcript-message-body-shared-DAn7Y7Ac.js → transcript-message-body-shared-DWzxxSaD.js} +1 -1
  181. package/dist/assets/{trust-rules-api-CpP3h7B2.js → trust-rules-api-eZhPplXW.js} +1 -1
  182. package/dist/assets/{upgrade-cancel-page-Rayv5lL4.js → upgrade-cancel-page-pljx8YOz.js} +1 -1
  183. package/dist/assets/{upgrade-success-page-BTYOlmt5.js → upgrade-success-page-CJUETwIe.js} +1 -1
  184. package/dist/assets/{use-app-theme-CsfqodmR.js → use-app-theme-CaWLhQW_.js} +1 -1
  185. package/dist/assets/{use-assistant-avatar-CT8Pozwx.js → use-assistant-avatar-C2TgszRj.js} +1 -1
  186. package/dist/assets/{use-assistant-capability-D_tZY-cd.js → use-assistant-capability-De-35T6E.js} +1 -1
  187. package/dist/assets/{use-assistant-identity-details-BqNPVmfH.js → use-assistant-identity-details-rXIIiXr1.js} +1 -1
  188. package/dist/assets/{use-attachment-preview-DuaQSNrO.js → use-attachment-preview-BAX_ivri.js} +2 -2
  189. package/dist/assets/{use-attachment-squares-Cbx4ZiOb.js → use-attachment-squares-rU9s8st8.js} +1 -1
  190. package/dist/assets/{use-bookmarks-BZRDuTXA.js → use-bookmarks-BrjNq3T_.js} +1 -1
  191. package/dist/assets/{use-checkout-dismiss-refresh-D9yXOKh9.js → use-checkout-dismiss-refresh-CjgC7Pck.js} +1 -1
  192. package/dist/assets/{use-command-palette-sections-BUETm__K.js → use-command-palette-sections-tRUwMswg.js} +1 -1
  193. package/dist/assets/{use-copy-to-clipboard-IWl9ygbI.js → use-copy-to-clipboard-B4c7SAc-.js} +1 -1
  194. package/dist/assets/{use-edge-swipe-CAV3Gs1-.js → use-edge-swipe-CCn4_Vm3.js} +1 -1
  195. package/dist/assets/{use-edge-swipe-back-BgZR4YZn.js → use-edge-swipe-back-xU9GuipH.js} +2 -2
  196. package/dist/assets/{use-edit-app-BzvFD5ew.js → use-edit-app-DDA6_WrI.js} +1 -1
  197. package/dist/assets/{use-effective-timezone-DByqidDL.js → use-effective-timezone-BfyKw5_H.js} +1 -1
  198. package/dist/assets/{use-invite-link-dialog-DRNVCYW4.js → use-invite-link-dialog-CvA_-72H.js} +1 -1
  199. package/dist/assets/{use-is-org-ready-TE5xIhFU.js → use-is-org-ready-B6oCKWeF.js} +1 -1
  200. package/dist/assets/{use-onboarding-login-Q4gvH8Wj.js → use-onboarding-login-CJ6HY3Pk.js} +1 -1
  201. package/dist/assets/{use-platform-assistant-id-8TlYUj7-.js → use-platform-assistant-id-DwSyMaOn.js} +1 -1
  202. package/dist/assets/{use-platform-gate-PHzS1_gQ.js → use-platform-gate-s29eeyq-.js} +1 -1
  203. package/dist/assets/{use-return-to-short-circuit-BVG-rqwe.js → use-return-to-short-circuit-Bx5s2Syg.js} +1 -1
  204. package/dist/assets/{use-save-twilio-credentials-CLM74CvJ.js → use-save-twilio-credentials-Zjhi1c0P.js} +1 -1
  205. package/dist/assets/{use-side-list-room-Bq836e0c.js → use-side-list-room-BT-2EM5d.js} +1 -1
  206. package/dist/assets/{use-skill-actions-l1FxBNiT.js → use-skill-actions-BtnAACsE.js} +1 -1
  207. package/dist/assets/{use-skill-detail-files-CBPqC-XL.js → use-skill-detail-files-B_E6xY9x.js} +1 -1
  208. package/dist/assets/{use-sticky-profiles-C4JFSief.js → use-sticky-profiles-DpkWeMmN.js} +1 -1
  209. package/dist/assets/{use-stt-language-selection-CGDAHN7_.js → use-stt-language-selection-BWJdaCRu.js} +1 -1
  210. package/dist/assets/{use-subagent-card-data-dOGbE8zd.js → use-subagent-card-data-CfuRPesp.js} +1 -1
  211. package/dist/assets/{use-swipe-horizontal-Bad1Uh4M.js → use-swipe-horizontal-B9YOWcB6.js} +1 -1
  212. package/dist/assets/use-transcript-message-by-id-DfWH7JRN.js +1 -0
  213. package/dist/assets/{use-transcript-messages-DIEDHw01.js → use-transcript-messages-CFkvE46_.js} +1 -1
  214. package/dist/assets/{use-voice-sample-preview-BBqCdK2Z.js → use-voice-sample-preview-B8HUywXz.js} +1 -1
  215. package/dist/assets/{viewer-store-Dgua7F-U.js → viewer-store-CHptQmkY.js} +1 -1
  216. package/dist/assets/{voice-page-BYDJEThX.js → voice-page-Dgcf5OOp.js} +1 -1
  217. package/dist/assets/{voice-providers-note-DpSF3-Ma.js → voice-providers-note-nJKW4coW.js} +1 -1
  218. package/dist/assets/{weather-forecast-display-MET3csCf.js → weather-forecast-display-_NYO0wBC.js} +1 -1
  219. package/dist/assets/{web-CQAP3XpT.js → web-C_sL6qhW.js} +1 -1
  220. package/dist/assets/{web-BANE7hLi.js → web-iI5WHtNC.js} +1 -1
  221. package/dist/assets/{welcome-screen-Dn7IdxeX.js → welcome-screen-DK4_01J3.js} +1 -1
  222. package/dist/assets/workflow-detail-panel-TqYAg0bB.js +1 -0
  223. package/dist/assets/{workflow-store-CA048OMm.js → workflow-store-DH4q15s9.js} +1 -1
  224. package/dist/assets/{workspace-page-CcIru1nv.js → workspace-page-Dbwb2RCx.js} +1 -1
  225. package/dist/assets/{workspace-tree-query-Dn-Kjfzx.js → workspace-tree-query-DnEMWZ1K.js} +1 -1
  226. package/dist/index.html +99 -99
  227. package/package.json +1 -1
  228. package/dist/assets/background-task-detail-panel-C45_k5DQ.js +0 -1
  229. package/dist/assets/checkout-return-target-D-ski0RP.js +0 -1
  230. package/dist/assets/common-C3fO0bj9.js +0 -1
  231. package/dist/assets/common-DH_hAtEx.js +0 -1
  232. package/dist/assets/consent-CSU4nfO3.js +0 -1
  233. package/dist/assets/debug-page-DpV9vuot.js +0 -4
  234. package/dist/assets/effective-timezone-BZrvS5yC.js +0 -1
  235. package/dist/assets/esm-BktaByj8.js +0 -2
  236. package/dist/assets/index-DC3kfiz5.css +0 -2
  237. package/dist/assets/native-anchor-C9EuQRVe.js +0 -1
  238. package/dist/assets/status-badge-pill-B4knVe4X.js +0 -1
  239. package/dist/assets/use-transcript-message-by-id-D684pai6.js +0 -1
  240. package/dist/assets/workflow-detail-panel-BUuxWGNn.js +0 -1
  241. /package/dist/assets/{account-CO0-PUz1.js → account-Cs9SXbU1.js} +0 -0
  242. /package/dist/assets/{account-B-1qvljd.js → account-DWeaNEN6.js} +0 -0
  243. /package/dist/assets/{app-types-vvZ3vl-x.js → app-types-CpnkPGh8.js} +0 -0
  244. /package/dist/assets/{archive-redirect-page-CBu8tqAW.js → archive-redirect-page-DXqjPmpK.js} +0 -0
  245. /package/dist/assets/{billing-redirect-page-D9L0pZBO.js → billing-redirect-page-l6nC_qa5.js} +0 -0
  246. /package/dist/assets/{build.umd-CUOzCO1S.js → build.umd-DjyW4NzX.js} +0 -0
  247. /package/dist/assets/{channels-CPESg8oh.js → channels-DU7UcoR_.js} +0 -0
  248. /package/dist/assets/{channels-C01LAA9n.js → channels-P8K1t248.js} +0 -0
  249. /package/dist/assets/{contacts-Czi7DI1x.js → contacts-CotcPejk.js} +0 -0
  250. /package/dist/assets/{contacts-B34lrFQP.js → contacts-E-8UOrGK.js} +0 -0
  251. /package/dist/assets/{credential-requests-CuDbx69F.js → credential-requests-BsHMMFoG.js} +0 -0
  252. /package/dist/assets/{credential-requests-B5yQSkNQ.js → credential-requests-D74qo-et.js} +0 -0
  253. /package/dist/assets/{danger-zone-redirect-page-DaCIFrKn.js → danger-zone-redirect-page-Cds_krO3.js} +0 -0
  254. /package/dist/assets/{definitions-DjyY9gkh.js → definitions-BKQ6A5IV.js} +0 -0
  255. /package/dist/assets/{definitions-CPdqKyW-.js → definitions-Bi8Nex3B.js} +0 -0
  256. /package/dist/assets/{detail-drawer-BoNujeL5.js → detail-drawer-D-CPwyBO.js} +0 -0
  257. /package/dist/assets/{devices-redirect-page-C6dlSkhY.js → devices-redirect-page-CeKwKvN-.js} +0 -0
  258. /package/dist/assets/{emoji-catalog-data-Io_Or5q_.js → emoji-catalog-data-81v3IYMV.js} +0 -0
  259. /package/dist/assets/{environment-store-DEyTyd0y.js → environment-store-DKl9RR50.js} +0 -0
  260. /package/dist/assets/{esm-CYQaGt0k.js → esm-BAE-_6f7.js} +0 -0
  261. /package/dist/assets/{esm-CNQNviBl.js → esm-KUiHjb53.js} +0 -0
  262. /package/dist/assets/{esm-ORlwcEKV.js → esm-uRwymN1a.js} +0 -0
  263. /package/dist/assets/{home-BlYbenJA.js → home-C5CVL0Ta.js} +0 -0
  264. /package/dist/assets/{home-DLr3UreM.js → home-QpGM3cDE.js} +0 -0
  265. /package/dist/assets/{intelligence-CmTIvIK5.js → intelligence-DNb2No5j.js} +0 -0
  266. /package/dist/assets/{intelligence-FK_fyZf1.js → intelligence-cL2kPl3v.js} +0 -0
  267. /package/dist/assets/{keyboard-shortcuts-redirect-page-CHDMDYjr.js → keyboard-shortcuts-redirect-page-BDuYwofA.js} +0 -0
  268. /package/dist/assets/{library-Xe0N-J_g.js → library-a7r2rPRX.js} +0 -0
  269. /package/dist/assets/{library-Dy0MR5PM.js → library-mD_34-zu.js} +0 -0
  270. /package/dist/assets/{link-click-BMBF1BX0.js → link-click-LjKsC7uu.js} +0 -0
  271. /package/dist/assets/{logs-C01Xe6pR.js → logs-CwEMxFk_.js} +0 -0
  272. /package/dist/assets/{logs-CLAksTVA.js → logs-DYhiKdQ8.js} +0 -0
  273. /package/dist/assets/{machine-sizes-CoWjZd83.js → machine-sizes-DOMlCbKb.js} +0 -0
  274. /package/dist/assets/{onboarding-DLrJvosE.js → onboarding-D2bBWpx1.js} +0 -0
  275. /package/dist/assets/{onboarding-CrxUN_U9.js → onboarding-DJeJhXd6.js} +0 -0
  276. /package/dist/assets/{onboarding-step-layout-CVDi6y2-.js → onboarding-step-layout-_Fbi43YU.js} +0 -0
  277. /package/dist/assets/{page-empty-state-iXCJNtzb.js → page-empty-state-B_nQdAFR.js} +0 -0
  278. /package/dist/assets/{page-shell-CUnJzpKC.js → page-shell-BHyGukA1.js} +0 -0
  279. /package/dist/assets/{pdf-DT-N9HWh.js → pdf-a3pPuuVL.js} +0 -0
  280. /package/dist/assets/{plugin-attribution-CtgwSlw8.js → plugin-attribution-7tkVwdle.js} +0 -0
  281. /package/dist/assets/{plugin-detail-page-CAQUYhh3.js → plugin-detail-page-D9Qk7GmS.js} +0 -0
  282. /package/dist/assets/{plugins-page-ONcIfAug.js → plugins-page-Bm0hcoSf.js} +0 -0
  283. /package/dist/assets/{profile-metadata-DeknMkvV.js → profile-metadata-BPGeIeNj.js} +0 -0
  284. /package/dist/assets/{radio-card-nav-CgGzva7O.js → radio-card-nav-C67JvVkE.js} +0 -0
  285. /package/dist/assets/{remote-web-D5jpctdd.js → remote-web-Btj-E-og.js} +0 -0
  286. /package/dist/assets/{remote-web-DwUlAxnF.js → remote-web-yAGitwPt.js} +0 -0
  287. /package/dist/assets/{schedules-BAvze-kP.js → schedules-Dd44UKOx.js} +0 -0
  288. /package/dist/assets/{schedules-B84Gewv0.js → schedules-K8jULmC8.js} +0 -0
  289. /package/dist/assets/{security-redirect-page-BbJ-8JQE.js → security-redirect-page-C3VbbfyM.js} +0 -0
  290. /package/dist/assets/{setting-row-w3kD1IkH.js → setting-row-urcByt7n.js} +0 -0
  291. /package/dist/assets/{settings-CcU8vWuM.js → settings-BggpKBtA.js} +0 -0
  292. /package/dist/assets/{settings-Ce2mFlFl.js → settings-DSeJ7uGb.js} +0 -0
  293. /package/dist/assets/{settings-divider-SUwXIK4c.js → settings-divider-CYam_4yQ.js} +0 -0
  294. /package/dist/assets/{skill-icon-BS3zAgpY.js → skill-icon-D52BIuW4.js} +0 -0
  295. /package/dist/assets/{skills-page-Cv3KPZrr.js → skills-page-DhKl7Mti.js} +0 -0
  296. /package/dist/assets/{system-events-redirect-page-lwCsNnQS.js → system-events-redirect-page-BMSQQBAs.js} +0 -0
  297. /package/dist/assets/{terminal-DmcRqX9y.js → terminal-CazBoirG.js} +0 -0
  298. /package/dist/assets/{terminal-DPTJVDoh.js → terminal-DP646Xj3.js} +0 -0
  299. /package/dist/assets/{usage-redirect-page-D_mJtlxQ.js → usage-redirect-page-DBkOdl41.js} +0 -0
  300. /package/dist/assets/{use-hotkey-recorder-BQEYtl-Y.js → use-hotkey-recorder-IMOc7G5D.js} +0 -0
  301. /package/dist/assets/{use-supports-credentials-settings-DYi8pPuP.js → use-supports-credentials-settings-BD0GXxL7.js} +0 -0
  302. /package/dist/assets/{use-truncated-blob-text--przReJr.js → use-truncated-blob-text-DmnckNwK.js} +0 -0
  303. /package/dist/assets/{web-DzjJIfpd.js → web-8Dh87AZ1.js} +0 -0
  304. /package/dist/assets/{web-DBVu9-3L.js → web-BAQ66WKm.js} +0 -0
  305. /package/dist/assets/{web-C9KSKaaC.js → web-BFD28UZm.js} +0 -0
  306. /package/dist/assets/{web-DUnBtrXJ.js → web-BcIK5wrq.js} +0 -0
  307. /package/dist/assets/{web-D1RaRfAT.js → web-D0e5_5xl.js} +0 -0
  308. /package/dist/assets/{web-ClNazDb-.js → web-D4Rr20FV.js} +0 -0
  309. /package/dist/assets/{web-Br6VELOy.js → web-qqG-3jDd.js} +0 -0
  310. /package/dist/assets/{workspace-BDcbF2--.js → workspace-Dva7bu2g.js} +0 -0
  311. /package/dist/assets/{workspace-C8mlGfzN.js → workspace-xgS4oaDo.js} +0 -0
  312. /package/dist/assets/{xterm-DdHeF_2A.js → xterm-QkObDWKu.js} +0 -0
  313. /package/dist/assets/{xterm-addon-fit-CoHQbqyC.js → xterm-addon-fit-DIrY4yvs.js} +0 -0
@@ -1 +1 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{d as t,h as n,k as r,l as i,m as a,v as o}from"./i18n-BDfnKs41.js";import{t as s}from"./react-DJZBPgpf.js";import{G as c,n as l,t as u}from"./button-B1kEAcLt.js";import{d,h as f}from"./chunk-5KNZJZUH-CPFsMQoz.js";import{n as p}from"./QueryClientProvider-BPZM68-A.js";import{t as m}from"./useQuery-BtL9k7Sh.js";import{t as h}from"./useMutation-Cl7cazkm.js";import{t as g}from"./jsx-runtime-COOF1INC.js";import{t as _}from"./typography-SdxpXI_m.js";import{o as v,t as y}from"./list-row-BvCm9O6y.js";import{t as b}from"./check-bDVYejGM.js";import{t as x}from"./circle-alert-BaeJJrSp.js";import{t as S}from"./circle-check-CnoFVsRZ.js";import{t as C}from"./menu-DPM2p9S5.js";import{t as w}from"./clock-HLo0irRS.js";import{t as T}from"./ellipsis-vertical-BJaOQqv_.js";import{t as E}from"./external-link-cVsOyP-B.js";import{t as D}from"./info-C-HjpKAE.js";import{t as O}from"./list-Dtwz1hOH.js";import{t as k}from"./loader-circle-DZ65N8bz.js";import{t as A}from"./mail-CqdA6Y_p.js";import{t as j}from"./checkbox--DYEubRE.js";import{t as M}from"./plus-rgqTRjE1.js";import{t as ee}from"./search-DYHr3LM9.js";import{t as N}from"./trash-2-CVpEwOYZ.js";import{t as P}from"./triangle-alert-B6J57Xfo.js";import{t as F}from"./notice-BHeYlKvv.js";import{t as I}from"./tag-DAsImP7W.js";import{t as L}from"./popover-GOTwOlgQ.js";import{t as R}from"./input-ChbJ2nzd.js";import{t as z}from"./toggle-CdhdS_iC.js";import{t as B}from"./modal-_49mDK_d.js";import{n as V}from"./toast-BKrDuNtu.js";import{t as H}from"./confirm-dialog-EPYSBP_B.js";import{t as U}from"./select-DmdFZj4l.js";import{t as te}from"./skeleton-BV6nOVEl.js";import{i as W,l as G,o as K}from"./local-settings-D9SNRv4p.js";import{t as ne}from"./assistant-identity-store-DBkGjqzV.js";import{t as re}from"./Trans-v2rRKTPL.js";import{a as ie,r as q,s as J}from"./llm-model-catalog-Bk0q_XG4.js";import{C as Y,D as X,E as ae,I as Z,L as oe,O as se,S as ce,T as le,_ as ue,a as de,b as fe,c as pe,f as me,g as he,h as ge,i as _e,j as ve,k as ye,l as be,m as xe,n as Se,o as Ce,p as we,r as Te,s as Ee,t as De,v as Oe,w as ke,x as Ae,y as je}from"./profile-pickers-D8XVv50L.js";import{A as Me,B as Ne,C as Pe,D as Fe,E as Ie,F as Le,G as Re,H as ze,I as Be,K as Ve,L as He,M as Ue,N as We,O as Ge,P as Ke,R as qe,S as Je,U as Ye,V as Xe,W as Ze,_ as Qe,a as $e,b as et,c as tt,d as nt,f as rt,g as it,h as at,i as ot,j as st,k as ct,l as lt,m as ut,n as dt,o as ft,p as pt,q as mt,r as ht,s as gt,t as _t,u as vt,x as yt,y as bt,z as xt}from"./use-sticky-profiles-C4JFSief.js";import{n as St,o as Ct,r as wt}from"./utils-CAI1IDgW.js";import{Jt as Tt,M as Et,Mn as Dt,Xt as Ot,Zt as kt,gr as At,gt as jt,pt as Mt}from"./sdk.gen-BluU0h_N.js";import{f as Nt}from"./routes-C6ueuiMd.js";import{i as Pt}from"./platform-detection-BVSM8PRh.js";import{i as Ft}from"./use-platform-gate-PHzS1_gQ.js";import{r as It}from"./use-is-org-ready-TE5xIhFU.js";import{Dt as Lt,Et as Rt,Q as zt,X as Bt,Y as Vt,Yt as Ht,Z as Ut,_ as Wt,d as Gt,dn as Kt,en as qt,f as Jt,g as Yt,h as Xt,kt as Zt,m as Qt,p as $t,v as en}from"./react-query.gen-C_GLKG7m.js";import{c as tn,d as nn,f as rn,g as an,h as on,l as sn,m as cn,mt as ln,o as un,p as dn,s as fn,u as pn,v as mn,y as hn}from"./react-query.gen-C5widOeH.js";import{n as gn}from"./use-is-mobile-DYVRtRin.js";import{n as _n,t as vn}from"./use-supports-inference-profiles-DS2ZLoNc.js";import{t as yn}from"./platform-login-notice-Dq3m5QWH.js";import{n as bn}from"./use-voice-sample-preview-BBqCdK2Z.js";import{c as xn,l as Sn,o as Cn,r as wn,t as Tn}from"./use-stt-language-selection-CGDAHN7_.js";import{t as En}from"./use-active-assistant-id-lxYJu99R.js";import{t as Dn}from"./detail-shell-CNYbfTO7.js";import{t as On}from"./detail-card-D9EAxXI8.js";import{n as kn,t as An}from"./detail-drawer-BoNujeL5.js";import{a as jn}from"./schedules-DCr5HsxY.js";import{t as Mn}from"./use-platform-assistant-id-8TlYUj7-.js";import{t as Nn}from"./environment-store-DEyTyd0y.js";import{t as Pn}from"./stt-language-picker-modal-DoiPypZS.js";var Q=e(s(),1),$=g();function Fn({mode:e,onChange:t}){let{t:n}=o(`settings`);return(0,$.jsx)(`div`,{className:`max-w-[280px]`,children:(0,$.jsx)(v,{ariaLabel:n(`sharedUi.modeToggleAriaLabel`),value:e,onChange:t,items:[{value:`managed`,label:n(`sharedUi.managedLabel`)},{value:`your-own`,label:n(`sharedUi.yourOwnLabel`)}]})})}function In({id:e,title:t,subtitle:n,mode:r,onModeChange:i,children:a}){return(0,$.jsxs)(On,{id:e,title:t,subtitle:n,accessory:(0,$.jsx)(Fn,{mode:r,onChange:i}),children:[(0,$.jsx)(`div`,{className:`h-px bg-[var(--surface-active)]`}),(0,$.jsx)(`div`,{className:`mt-4`,children:a})]})}function Ln({id:e,title:t,subtitle:n,children:r}){return(0,$.jsxs)(On,{id:e,title:t,subtitle:n,children:[(0,$.jsx)(`div`,{className:`h-px bg-[var(--surface-active)]`}),(0,$.jsx)(`div`,{className:`mt-4`,children:r})]})}function Rn({children:e}){return(0,$.jsxs)(`a`,{href:`https://www.vellum.ai/docs/pricing`,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-[var(--primary-base)] hover:underline`,children:[e,(0,$.jsx)(E,{className:`h-3.5 w-3.5`})]})}function zn(){return(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-base)] bg-[var(--surface-base)] px-4 py-2.5`,children:[(0,$.jsx)(D,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-tertiary)]`}),(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:(0,$.jsx)(re,{i18nKey:`sharedUi.managedServicesBanner`,ns:`settings`,components:{link:(0,$.jsx)(Rn,{})}})})]})}function Bn({status:e,message:t,isLoading:n}){let{t:r}=o(`settings`);return n?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2.5 py-0.5 text-body-small-default text-[var(--content-quiet)]`,children:[(0,$.jsx)(k,{className:`h-3 w-3 animate-spin`}),r(`sharedUi.checkingDomain`)]}):e?e===`verified`?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-positive-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-positive-strong)]`,title:r(`sharedUi.verifiedTitle`),children:[(0,$.jsx)(b,{className:`h-3 w-3`}),r(`sharedUi.domainVerified`)]}):e===`pending`||e===`not_started`?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-mid-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-mid-strong)]`,title:r(`sharedUi.verifyingTitle`),children:[(0,$.jsx)(w,{className:`h-3 w-3`}),r(`sharedUi.verifyingDomain`)]}):(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-negative-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-negative-strong)]`,title:r(`sharedUi.failedTitle`),children:[(0,$.jsx)(x,{className:`h-3 w-3`}),r(`sharedUi.verificationFailed`)]}):(0,$.jsx)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2.5 py-0.5 text-body-small-default text-[var(--content-quiet)]`,title:r(`sharedUi.unknownStatusTitle`),children:r(`sharedUi.unknownStatus`)})}function Vn({onClick:e,disabled:t}){let{t:n}=o();return(0,$.jsx)(u,{onClick:e,disabled:t,children:n(`serviceFormControls.save`)})}function Hn({onClick:e,filled:t=!1}){let{t:n}=o();return(0,$.jsx)(u,{variant:t?`danger`:`dangerGhost`,onClick:e,children:n(`serviceFormControls.reset`)})}function Un({guide:e}){return(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(D,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-[var(--system-positive-strong)]`}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsx)(`span`,{children:e.description}),(0,$.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[e.linkLabel,(0,$.jsx)(E,{className:`h-3 w-3`})]})]})]})}function Wn({subdomain:e,onSubdomainChange:t,domainSuffix:n,subdomainPlaceholder:r=`my-assistant`,disabled:i,autoFocus:a,prefix:s,error:c,locked:l,lockedMessage:u}){let{t:d}=o(`settings`);return(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`div`,{className:`flex h-9 w-full items-center rounded-md border bg-[var(--field-bg)] text-body-medium-lighter transition-[border-color] duration-150 ${c?`border-[var(--system-negative-strong)]`:`border-[var(--field-border)] focus-within:border-[var(--border-active)]`}`,children:[s,(0,$.jsx)(`input`,{value:e,onChange:e=>t(e.target.value.toLowerCase().trim()),disabled:i||l,readOnly:l,autoFocus:a,placeholder:r,"aria-label":d(`domainField.subdomainAriaLabel`),"aria-invalid":!!c,className:`h-full min-w-0 flex-1 bg-transparent ${s?`pl-1.5`:`pl-3`} pr-1 text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none disabled:cursor-not-allowed disabled:opacity-60`}),(0,$.jsxs)(`span`,{className:`shrink-0 pr-3 font-mono text-[var(--content-secondary)]`,children:[`.`,n]})]}),c&&(0,$.jsx)(`p`,{className:`mt-1.5 text-body-small-default text-[var(--system-negative-strong)]`,children:c}),l&&u&&(0,$.jsx)(`p`,{className:`mt-1.5 text-body-small-default text-[var(--content-tertiary)]`,children:u})]})}var Gn=`rounded bg-[var(--surface-active)] px-1 py-0.5 font-mono text-[0.9em]`;function Kn({assistantId:e,assistantHandle:t,emailRootDomain:r}){let{t:a}=o(`settings`),s=p(),c=d(),[l,g]=f(),[_,v]=(0,Q.useState)(``),[y,b]=(0,Q.useState)(!1),[x,S]=(0,Q.useState)(null),[C,w]=(0,Q.useState)(``),[T,E]=(0,Q.useState)(null),[D,O]=(0,Q.useState)(!1),[j,M]=(0,Q.useState)(!1),[ee,P]=(0,Q.useState)(!1);(0,Q.useEffect)(()=>{y||!t||_||(v(t),b(!0))},[t,y,_]);let I=m({...ln(),enabled:!0}),L=I.data,R=L?.entitlements,z=R?.managed_email===!0,B=!!R&&!z,U=!L&&I.isError&&!I.isFetching,te=m({...tn({path:{assistant_id:e}}),enabled:!B}),W=m({...dn({path:{assistant_id:e}}),enabled:!B}),G=te.data?.results?.[0],K=W.data?.results?.[0],ne=G?`${G.subdomain}.${r}`:null,ie=m({...on({path:{assistant_id:e,id:K?.id??``}}),enabled:!!K?.id,refetchOnWindowFocus:!1}),q=m({...pn({path:{assistant_id:e,id:G?.id??``}}),enabled:!!G?.id,refetchInterval:e=>{let t=e.state.data?.status;return t===`verified`||t===`failed`?!1:1e4},refetchOnWindowFocus:!0});(0,Q.useEffect)(()=>{l.get(`release`)!==`1`||!G||K||(M(!0),g(e=>{let t=new URLSearchParams(e);return t.delete(`release`),t},{replace:!0}))},[K,G,l,g]);let J=h(un()),Y=h(fn()),X=h(nn()),ae=h(rn()),Z=(0,Q.useCallback)(()=>{let t={assistant_id:e};s.invalidateQueries({queryKey:sn({path:t})}),s.invalidateQueries({queryKey:cn({path:t})}),K?.id&&s.invalidateQueries({queryKey:an({path:{...t,id:K.id}})}),s.invalidateQueries({queryKey:hn()})},[K?.id,e,s]),oe=(0,Q.useCallback)(async()=>{let t=_.trim().toLowerCase();if(!t){S(a(`emailManagedContent.enterSubdomainError`));return}O(!1);try{await J.mutateAsync({path:{assistant_id:e},body:{subdomain:t}}),v(``),S(null),Z(),V.success(a(`emailManagedContent.domainRegisteredToast`,{domain:`${t}.${r}`}))}catch(e){S(n(e,void 0,a(`emailManagedContent.registerDomainFailedFallback`)))}},[e,r,Z,J,_,a]),se=(0,Q.useCallback)(async()=>{let t=C.trim().toLowerCase();if(!t){E(a(`emailManagedContent.enterUsernameError`));return}try{await X.mutateAsync({path:{assistant_id:e},body:{username:t}}),w(``),E(null),Z(),V.success(a(`emailManagedContent.emailCreatedToast`))}catch(e){E(n(e,void 0,a(`emailManagedContent.createEmailFailedFallback`)))}},[e,Z,X,C,a]),ce=(0,Q.useCallback)(async()=>{if(K?.id){P(!1);try{await ae.mutateAsync({path:{assistant_id:e,id:K.id}}),Z(),V.success(a(`emailManagedContent.emailRemovedToast`))}catch(e){i(e,{context:`email_address_delete`}),V.error(a(`emailManagedContent.emailRemoveFailedToast`))}}},[K?.id,e,ae,Z,a]),le=(0,Q.useCallback)(async()=>{if(!G?.id)return;if(K){V.error(a(`emailManagedContent.removeAddressFirstToast`));return}M(!1);let t=G.subdomain;try{await Y.mutateAsync({path:{assistant_id:e,id:G.id}}),v(t),Z(),V.success(a(`emailManagedContent.domainReleasedToast`))}catch(e){i(e,{context:`email_domain_release`}),V.error(a(`emailManagedContent.domainReleaseFailedToast`))}},[K,e,Y,G?.id,G?.subdomain,Z,a]);if(I.isLoading)return(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(k,{className:`h-4 w-4 animate-spin`}),a(`emailManagedContent.checkingSubscription`)]});if(B)return(0,$.jsx)(F,{tone:`info`,icon:(0,$.jsx)(A,{className:`h-4 w-4`,"aria-hidden":!0}),title:a(`emailManagedContent.upgradeNoticeTitle`),actions:(0,$.jsx)(u,{size:`compact`,onClick:()=>c(Nt.plans),children:a(`emailManagedContent.upgradeButton`)}),children:a(`emailManagedContent.upgradeNoticeBody`)});let ue=U?(0,$.jsx)(F,{tone:`warning`,title:a(`emailManagedContent.subscriptionWarningTitle`),actions:(0,$.jsx)(u,{size:`compact`,variant:`outlined`,onClick:()=>I.refetch(),children:a(`emailManagedContent.retry`)}),children:a(`emailManagedContent.subscriptionWarningBody`)}):null;return G?K?(0,$.jsxs)(`div`,{className:`space-y-4`,children:[ue,(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:a(`emailManagedContent.addressLabel`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`font-mono text-body-small-default text-[var(--content-default)]`,children:K.address}),(0,$.jsx)(Bn,{status:q.data?.status,message:q.data?.message,isLoading:q.isLoading}),(0,$.jsx)(u,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,$.jsx)(N,{}),onClick:()=>P(!0),disabled:ae.isPending,"aria-label":a(`emailManagedContent.removeEmailAriaLabel`)})]}),(0,$.jsx)(H,{open:ee,title:a(`emailManagedContent.removeEmailTitle`),message:(0,$.jsx)(re,{i18nKey:`emailManagedContent.removeEmailConfirmMessage`,ns:`settings`,values:{address:K.address},components:{code:(0,$.jsx)(`code`,{className:Gn})}}),confirmLabel:a(`emailManagedContent.removeConfirm`),destructive:!0,onConfirm:ce,onCancel:()=>P(!1)})]}),ie.data?.usage&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:a(`emailManagedContent.usageSummary`,{sent:ie.data.usage.sent_today,limit:ie.data.usage.daily_limit,received:ie.data.usage.received_today})})]}):(0,$.jsxs)(`div`,{className:`space-y-4`,children:[ue,(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:a(`emailManagedContent.domainLabel`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsxs)(`span`,{className:`font-mono text-body-small-default text-[var(--content-default)]`,children:[G.subdomain,`.`,r]}),(0,$.jsx)(Bn,{status:q.data?.status,message:q.data?.message,isLoading:q.isLoading}),(0,$.jsx)(u,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,$.jsx)(N,{}),onClick:()=>M(!0),disabled:Y.isPending,"aria-label":a(`emailManagedContent.releaseDomainAriaLabel`)})]}),(0,$.jsx)(H,{open:j,title:a(`emailManagedContent.releaseDomainTitle`),message:(0,$.jsx)(re,{i18nKey:`emailManagedContent.releaseDomainConfirmMessage`,ns:`settings`,values:{domain:`${G.subdomain}.${r}`},components:{code:(0,$.jsx)(`code`,{className:Gn})}}),confirmLabel:a(`emailManagedContent.releaseConfirm`),destructive:!0,onConfirm:le,onCancel:()=>M(!1)})]}),(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:a(`emailManagedContent.emailAddressLabel`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsxs)(`div`,{className:`flex h-9 min-w-0 flex-1 items-center rounded-md border bg-[var(--field-bg)] text-body-medium-lighter transition-[border-color] duration-150 ${T?`border-[var(--system-negative-strong)]`:`border-[var(--field-border)] focus-within:border-[var(--border-active)]`}`,children:[(0,$.jsx)(`input`,{value:C,onChange:e=>{w(e.target.value.toLowerCase()),T&&E(null)},placeholder:a(`emailManagedContent.emailUsernamePlaceholder`),"aria-label":a(`emailManagedContent.emailUsernameAriaLabel`),"aria-invalid":!!T,className:`h-full min-w-0 flex-1 bg-transparent pl-3 pr-1 text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none`}),(0,$.jsxs)(`span`,{className:`shrink-0 pr-3 font-mono text-[var(--content-secondary)]`,children:[`@`,ne]})]}),(0,$.jsx)(u,{onClick:se,disabled:X.isPending||!C.trim(),children:X.isPending?a(`emailManagedContent.creating`):a(`emailManagedContent.create`)})]}),T&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:T})]})]}):(0,$.jsxs)(`div`,{className:`space-y-3`,children:[ue,(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:a(`emailManagedContent.subdomainLabel`)}),(0,$.jsx)(Wn,{subdomain:_,onSubdomainChange:e=>{v(e),x&&S(null)},domainSuffix:r,subdomainPlaceholder:a(`emailManagedContent.subdomainExamplePlaceholder`),error:x}),(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:a(`emailManagedContent.subdomainHint`)}),(0,$.jsx)(u,{onClick:()=>O(!0),disabled:J.isPending||!_.trim(),children:J.isPending?a(`emailManagedContent.registering`):a(`emailManagedContent.register`)}),(0,$.jsx)(H,{open:D,title:a(`emailManagedContent.setSubdomainTitle`),message:(0,$.jsx)(re,{i18nKey:`emailManagedContent.setSubdomainConfirmMessage`,ns:`settings`,values:{subdomain:_.trim().toLowerCase()||a(`emailManagedContent.subdomainFallback`)},components:{code:(0,$.jsx)(`code`,{className:Gn})}}),confirmLabel:a(`emailManagedContent.confirm`),onConfirm:oe,onCancel:()=>O(!1)})]})}function qn(){let{t:e}=o(`settings`),n=En(),r=It(),{data:a}=m({...mn(),enabled:r}),s=a?.results?.[0]?.handle,c=Nn.use.emailRootDomain(),l=Ft(),[u,d]=(0,Q.useState)(()=>l===`gated`?`your-own`:xe(W(ot,`managed`),`managed`)),[f,p]=(0,Q.useState)(()=>{let e=W(ht,`resend`);return e===`mailgun`||e===`resend`?e:`resend`}),{platformAssistantId:h,error:g}=Mn(n,l===`full`&&u===`managed`),_=h??(g?n:null),v=m({queryKey:[`byoEmailCredential`,n,f],queryFn:async()=>{let{data:e}=await Mt({path:{assistant_id:n},body:{service:f,field:`api_key`},throwOnError:!0});return e},enabled:u===`your-own`||l===`gated`,staleTime:6e4,retry:t,meta:{errorContext:`byo_email_credential_check`}});(0,Q.useEffect)(()=>{v.error&&i(v.error,{context:`byo_email_credential_check`,bestEffort:!0})},[v.error]);let y=v.data?.hasSecret===!0,b=(0,Q.useCallback)(e=>{d(e),G(ot,e)},[]),x=(0,Q.useCallback)(()=>{G(ht,f),V.success(e(`emailServiceCard.saveSuccessToast`))},[f,e]),C=(0,Q.useMemo)(()=>ut.find(e=>e.id===f)??ut[0],[f]),w=(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(D,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-[var(--system-positive-strong)]`}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsx)(`span`,{children:(0,$.jsx)(re,{i18nKey:`emailServiceCard.setupInstructions`,ns:`settings`,values:{providerName:C.displayName,setupSkill:C.setupSkill},components:{code:(0,$.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 text-[12px]`})}})}),(0,$.jsxs)(`a`,{href:C.docsUrl,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[e(`emailServiceCard.openProvider`,{providerName:C.displayName}),(0,$.jsx)(E,{className:`h-3 w-3`})]})]})]}),T=(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e(`emailServiceCard.providerLabel`)}),(0,$.jsx)(U,{value:f,onChange:e=>{(e===`mailgun`||e===`resend`)&&p(e)},options:ut.map(e=>({value:e.id,label:e.displayName}))})]}),y?(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg border border-[var(--system-positive-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-default)]`,children:[(0,$.jsx)(S,{className:`h-4 w-4 shrink-0 text-[var(--system-positive-strong)]`}),(0,$.jsx)(`span`,{children:(0,$.jsx)(re,{i18nKey:`emailServiceCard.apiKeyConfigured`,ns:`settings`,values:{providerName:C.displayName,setupSkill:C.setupSkill},components:{code:(0,$.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 text-[12px]`})}})})]}),(0,$.jsxs)(`a`,{href:C.docsUrl,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-body-small-default text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[e(`emailServiceCard.openProvider`,{providerName:C.displayName}),(0,$.jsx)(E,{className:`h-3 w-3`})]})]}):w,(0,$.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,$.jsx)(Vn,{onClick:x,disabled:!1})})]});return l===`gated`?(0,$.jsx)(Ln,{id:`email`,title:e(`emailServiceCard.title`),subtitle:e(`emailServiceCard.subtitle`),children:T}):(0,$.jsx)(In,{id:`email`,title:e(`emailServiceCard.title`),subtitle:e(`emailServiceCard.subtitle`),mode:u,onModeChange:b,children:u===`managed`?(0,$.jsx)(`div`,{className:`space-y-4`,children:l===`disabled`?(0,$.jsx)(yn,{children:e(`emailServiceCard.platformLoginNotice`)}):_===null?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(k,{className:`h-4 w-4 animate-spin`}),e(`emailServiceCard.connecting`)]}):(0,$.jsx)(Kn,{assistantId:_,assistantHandle:s,emailRootDomain:c})}):T})}function Jn(){let e=En();return(0,Q.useCallback)(async(t,n)=>{try{let{data:r}=await At({path:{assistant_id:e},body:{value:n,type:`api_key`,name:t},throwOnError:!0});pe(r)}catch(e){throw e instanceof Error&&e.message===`No assistant found`?V.error(r(`settings:useDaemonConfig.assistantNotReadyToast`)):V.error(r(`settings:useDaemonConfig.saveApiKeyFailedToast`,{providerName:t})),i(e,{context:`provision_provider_key`}),e}},[e])}function Yn(e){let[t,n]=(0,Q.useState)(void 0);return(0,Q.useEffect)(()=>{t!==void 0&&e===t.value&&n(void 0)},[e,t]),[t===void 0?e:t.value,(0,Q.useCallback)(e=>n(e===void 0?void 0:{value:e}),[])]}var Xn=`0.11.0`;function Zn(){return St(Xn)}var Qn=`gemini-3.1-flash-image-preview`;function $n(){let{t:e}=o(`settings`),t=En(),n=p(),r=It(),{data:a}=m({...Gt({path:{assistant_id:t}}),enabled:r,staleTime:3e4}),s=qt({onSuccess:e=>{$t(n,{path:{assistant_id:t}},e)}}),c=Jn(),[l,u]=Yn((0,Q.useMemo)(()=>{if(!a)return W(ft,`gemini`);let e=a.services?.[`image-generation`];return e?.mode===`managed`?`vellum`:e?.provider||W(`vellum:ai:imageGenProvider`,`gemini`)},[a])),[d,f]=(0,Q.useState)(()=>W($e,Qn)),h=et(l),g=h.includes(d)?d:h[0]??Qn,[_,v]=(0,Q.useState)(``),[y,b]=(0,Q.useState)(!1),x=it.map(e=>({value:e,label:Qe[e]??e})),S=(0,Q.useMemo)(()=>et(l).map(e=>({value:e,label:at[e]??e})),[l]),C=l===`gemini`||l===`openai`,{hasStoredCredential:w}=He({assistantId:t,credentialKind:`api_key`,credentialName:l,enabled:C}),T=u,E=(0,Q.useCallback)(async()=>{b(!0);let r=_.trim(),a=C&&r.length>0;try{a&&await c(yt(g),r),await Ct();let o=l===`vellum`&&!Zn()?{mode:`managed`}:{provider:l,mode:l===`vellum`?`managed`:`your-own`};await s.mutateAsync({path:{assistant_id:t},body:{services:{"image-generation":o}}}).catch(t=>{throw V.error(e(`imageGenerationCard.configUpdateFailedToast`)),i(t,{context:`patch_daemon_config`}),t});try{await Dt({path:{assistant_id:t},body:{modelId:g},throwOnError:!0})}catch(t){throw V.error(e(`imageGenerationCard.modelUpdateFailedToast`)),i(t,{context:`set_image_gen_model`}),t}finally{n.invalidateQueries({queryKey:Jt({path:{assistant_id:t}})})}}catch{b(!1);return}b(!1);try{if(G(ft,l),G($e,g),a){let e=Be(t,`api_key`,l);n.setQueryData(e,!0),n.invalidateQueries({queryKey:e}),v(``)}V.success(e(`imageGenerationCard.savedToast`))}catch(t){i(t,{context:`settings-ai-image-gen-persist-local`}),V.error(e(`imageGenerationCard.localPreferencesFailedToast`))}},[_,l,C,g,t,s,c,n,e]),D=(0,Q.useCallback)(()=>{v(``),f(Qn),G($e,Qn)},[]);return(0,$.jsx)(Ln,{title:e(`imageGenerationCard.title`),subtitle:e(`imageGenerationCard.subtitle`),children:(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e(`imageGenerationCard.providerLabel`)}),(0,$.jsx)(U,{"aria-label":e(`imageGenerationCard.providerAriaLabel`),value:l,onChange:T,options:x})]}),l===`vellum`&&(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`imageGenerationCard.vellumNote`)}),C&&(0,$.jsx)(R,{label:e(`imageGenerationCard.apiKeyLabel`),type:`password`,value:_,onChange:e=>v(e.target.value),placeholder:st(e(l===`openai`?`imageGenerationCard.openaiApiKeyPlaceholder`:`imageGenerationCard.geminiApiKeyPlaceholder`),w),fullWidth:!0}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e(`imageGenerationCard.activeModelLabel`)}),(0,$.jsx)(U,{"aria-label":e(`imageGenerationCard.modelAriaLabel`),value:g,onChange:f,options:S})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Vn,{onClick:E,disabled:y}),y&&(0,$.jsx)(k,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`}),C&&(0,$.jsx)(Hn,{onClick:D})]})]})})}function er({title:e,count:t,action:n,children:r}){return(0,$.jsxs)(`section`,{className:`rounded-xl border border-[var(--border-hover)] bg-[var(--surface-overlay)] px-3 py-4`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-baseline gap-2`,children:[(0,$.jsx)(_,{variant:`body-large-default`,as:`h3`,className:`text-[var(--content-secondary)]`,children:e}),t==null?null:(0,$.jsxs)(_,{variant:`body-large-default`,as:`span`,"aria-label":`${t} ${e.toLowerCase()}`,className:`text-[var(--content-disabled)]`,children:[`·`,` `,t]})]}),n]}),r==null?null:(0,$.jsx)(`div`,{className:`mt-4 border-t border-[var(--border-base)]`,children:r})]})}function tr(e){return e.scheduleNames.length>0||e.deferredReminderCount>0||e.scheduleLookupFailed}var nr=5;function rr({title:e,items:t,mono:n}){return(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`text-(--content-tertiary)`,children:e}),(0,$.jsx)(`ul`,{className:`space-y-1 pl-1`,children:t.map(e=>(0,$.jsxs)(`li`,{className:`text-body-small-default text-(--content-secondary)`,children:[`• `,n?(0,$.jsx)(`code`,{children:e}):e]},e))})]})}function ir(e){let t=e.label||e.name,n=[];e.isActive&&n.push(r(`settings:manageProfilesBlockedDeleteModal.clauseDefaultProfile`)),e.callSiteIds.length>0&&n.push(r(`settings:manageProfilesBlockedDeleteModal.clauseActionOverrides`,{count:e.callSiteIds.length}));let i=e.scheduleNames.length,a=e.deferredReminderCount;return i>0&&a>0?n.push(r(`settings:manageProfilesBlockedDeleteModal.clauseRunsBoth`,{schedules:i,reminders:a})):i>0?n.push(r(`settings:manageProfilesBlockedDeleteModal.clauseRunsSchedules`,{count:i})):a>0&&n.push(r(`settings:manageProfilesBlockedDeleteModal.clauseRunsReminders`,{count:a})),n.length===0?r(`settings:manageProfilesBlockedDeleteModal.summaryNoReferences`,{display:t}):n.length===1?r(`settings:manageProfilesBlockedDeleteModal.summaryOneClause`,{display:t,clause1:n[0]}):n.length===2?r(`settings:manageProfilesBlockedDeleteModal.summaryTwoClauses`,{display:t,clause1:n[0],clause2:n[1]}):r(`settings:manageProfilesBlockedDeleteModal.summaryThreeClauses`,{display:t,clause1:n[0],clause2:n[1],clause3:n[2]})}function ar({blocked:e,availableReplacements:t,replacement:n,onReplacementChange:r,error:i,saving:a,onClose:s,onConfirm:c}){let{t:l}=o(`settings`),d=e?.scheduleNames??[],f=d.slice(0,nr),p=d.length-f.length,m=e!=null&&tr(e);return(0,$.jsx)(B.Root,{open:e!==null,onOpenChange:e=>{e||s()},children:(0,$.jsxs)(B.Content,{size:`sm`,children:[(0,$.jsx)(B.Header,{children:(0,$.jsx)(B.Title,{children:l(`manageProfilesBlockedDeleteModal.title`)})}),(0,$.jsxs)(B.Body,{className:`space-y-4`,children:[e&&(0,$.jsx)(_,{variant:`body-medium-default`,as:`p`,children:ir(e)}),e&&e.callSiteIds.length>0&&(0,$.jsx)(rr,{title:l(`manageProfilesBlockedDeleteModal.actionOverridesTitle`),items:e.callSiteIds,mono:!0}),f.length>0&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(rr,{title:l(`manageProfilesBlockedDeleteModal.schedulesTitle`),items:f}),p>0&&(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`pl-1 text-(--content-tertiary)`,children:l(`manageProfilesBlockedDeleteModal.moreSchedules`,{count:p})})]}),e?.scheduleLookupFailed&&(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`text-(--system-mid-strong)`,children:l(`manageProfilesBlockedDeleteModal.scheduleLookupFailed`)}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-(--content-tertiary)`,children:l(`manageProfilesBlockedDeleteModal.replacementLabel`)}),(0,$.jsx)(U,{"aria-label":l(`manageProfilesBlockedDeleteModal.replacementLabel`),value:n,onChange:r,placeholder:l(`manageProfilesBlockedDeleteModal.replacementPlaceholder`),options:t.map(e=>{let t=m&&e.status===`disabled`;return{value:e.name,label:Te(e),disabled:t,tooltip:t?l(`manageProfilesBlockedDeleteModal.disabledTargetTooltip`):void 0}})})]}),i&&(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:i})]}),(0,$.jsxs)(B.Footer,{children:[(0,$.jsx)(u,{variant:`ghost`,size:`compact`,onClick:s,children:l(`manageProfilesBlockedDeleteModal.cancel`)}),(0,$.jsx)(u,{variant:`primary`,size:`compact`,disabled:!n||a,onClick:c,children:l(a?`manageProfilesBlockedDeleteModal.saving`:`manageProfilesBlockedDeleteModal.reassignAndDelete`)})]})]})})}function or({profile:e,isActiveProfile:t,selected:n,connections:r,deletePending:i=!1,onOpen:a,onMakeActive:s,onSetStatus:c,onDelete:d}){let{t:f}=o(`settings`),p=e.source===`managed`,m=e.status===`disabled`,h=e.label??e.name,g=[];e.model&&g.push(Fe(e.provider??void 0,e.model,r)),p&&g.push(f(`profileRow.managedByVellum`));let _=e.availability,v=e.config_issue,b=v!=null||_?.status===`incomplete`,S=_?.message??f(`profileRow.providerUnavailableDefault`),w=v==null?_!=null&&_.status!==`ok`?b?f(`profileRow.providerUnavailableFixable`,{message:S}):S:null:f(`profileRow.providerUnavailableFixable`,{message:f(v.code===`over_output_cap`?`profileRow.configIssueOverOutputCap`:v.code===`no_input_room`?`profileRow.configIssueNoInputRoom`:`profileRow.configIssueModelUnknown`)});return(0,$.jsx)(y,{title:(0,$.jsx)(`span`,{className:m?`opacity-55`:void 0,children:h}),subtitle:g.length>0?g.join(` • `):void 0,onClick:a,showChevron:!1,selected:n,disabled:i,contentAriaLabel:f(`profileRow.openProfileAriaLabel`,{displayName:h}),trailingInteractive:!0,trailing:(0,$.jsxs)($.Fragment,{children:[w==null?null:(0,$.jsx)(l,{content:w,children:b?(0,$.jsx)(`button`,{type:`button`,onClick:a,"aria-label":w,className:`inline-flex cursor-pointer rounded-sm p-0.5 keyboard-focus:ring-2 keyboard-focus:ring-[var(--ring)]`,children:(0,$.jsx)(x,{className:`h-4 w-4 text-[var(--system-mid-strong)]`,"aria-hidden":`true`})}):(0,$.jsx)(`span`,{className:`inline-flex p-0.5`,tabIndex:0,children:(0,$.jsx)(x,{className:`h-4 w-4 text-[var(--system-mid-strong)]`,"aria-label":w,role:`img`})})}),m?(0,$.jsx)(I,{tone:`neutral`,children:f(`profileRow.disabledTag`)}):null,t?(0,$.jsx)(I,{tone:`positive`,children:f(`profileRow.defaultTag`)}):null,(0,$.jsxs)(C.Root,{children:[(0,$.jsx)(C.Trigger,{asChild:!0,children:(0,$.jsx)(u,{variant:`ghost`,size:`compact`,iconOnly:(0,$.jsx)(T,{}),"aria-label":f(`profileRow.actionsAriaLabel`,{displayName:h}),disabled:i})}),(0,$.jsxs)(C.Content,{align:`end`,sideOffset:4,children:[(0,$.jsx)(C.Item,{onSelect:a,children:f(p?`profileRow.view`:`profileRow.edit`)}),!t&&!m?(0,$.jsx)(C.Item,{onSelect:s,children:f(`profileRow.makeDefault`)}):null,m?(0,$.jsx)(C.Item,{onSelect:()=>c(!0),children:f(`profileRow.enable`)}):p?null:(0,$.jsx)(C.Item,{onSelect:()=>c(!1),children:f(`profileRow.disable`)}),p?null:(0,$.jsx)(C.Item,{onSelect:d,className:`text-[var(--system-negative-strong)] data-[highlighted]:text-[var(--system-negative-strong)]`,children:f(`profileRow.delete`)})]})]})]})})}function sr(e,t){let n=vn(),{data:r}=m({...Vt({path:{assistant_id:e}}),enabled:n,staleTime:3e4}),{profiles:i,profileOrder:a}=_t(t?.llm,e);return(0,Q.useMemo)(()=>r==null?{entries:be(i,a).map(e=>({name:e.name,label:e.label??null,provider:e.provider??null,model:e.model??null,status:e.status===`disabled`?`disabled`:`active`,source:e.source===`managed`?`managed`:`user`,provider_connection:e.provider_connection,availability:null})),isEffectiveCatalog:!1}:{entries:r.profiles,isEffectiveCatalog:!0},[r,i,a])}function cr(e){let t=p();return qt({onSuccess:n=>{$t(t,{path:{assistant_id:e}},n),t.invalidateQueries({queryKey:Bt({path:{assistant_id:e}})}),t.invalidateQueries({queryKey:Xt({path:{assistant_id:e}})})}})}var lr=`0.10.8`;function ur(e){return wt(lr,e)}var dr=`settings-ai-profile-make-active`,fr=`Failed to set the active profile. Please try again.`;function pr(e){let t=cr(e),n=p(),r=ur(e),o=Kt({onSuccess:()=>{n.invalidateQueries({queryKey:Jt({path:{assistant_id:e}})}),n.invalidateQueries({queryKey:Bt({path:{assistant_id:e}})})}});async function s(n,r,a){try{await t.mutateAsync({path:{assistant_id:e},body:{llm:n}})}catch(e){throw i(e,{context:r}),V.error(a),e}}async function c(t){if(!r){await s({activeProfile:t},dr,fr);return}try{await o.mutateAsync({path:{assistant_id:e},body:{name:t}})}catch(e){let t=a(e);throw V.error(t??fr),t||i(e,{context:dr}),e}}return{makeActive:c,setStatus:(e,t)=>s({profiles:{[e]:{status:t?`active`:`disabled`}}},`settings-ai-profile-toggle`,`Failed to update the profile. Please try again.`),deleteProfile:(e,t,n)=>s({profiles:{[e]:null},profileOrder:t.filter(t=>t!==e),...n?.isAdvisor?{advisorProfile:null}:{}},`settings-ai-profile-delete`,`Failed to delete the profile. Please try again.`),patchLlm:s,isPending:t.isPending||o.isPending}}var mr=`The profile was not deleted.`,hr=`Failed to move the schedules. ${mr}`;function gr(e){let t=a(e);return t?`${/[.!?]$/.test(t)?t:`${t}.`} ${mr}`:hr}function _r(e,t,n){let r=pr(e),a=p(),o=Ee(),s=t?.llm?.activeProfile??null,c=t?.llm?.advisorProfile??null,l=t?.llm?.callSites??{},u=(0,Q.useMemo)(()=>t?.llm?.profiles??{},[t?.llm?.profiles]),d=(0,Q.useMemo)(()=>t?.llm?.profileOrder??[],[t?.llm?.profileOrder]),f=(0,Q.useMemo)(()=>be(u,d),[u,d]),[m,h]=(0,Q.useState)(null),[g,_]=(0,Q.useState)(null),[v,y]=(0,Q.useState)(``),[b,x]=(0,Q.useState)(!1),[S,C]=(0,Q.useState)(null),w=(0,Q.useRef)(!1);function T(e){return f.filter(t=>t.name===e?!1:t.status===`disabled`?!0:De(t,f,{requireOwnProviderAndModel:o}))}function E(e,t){let n=T(e).filter(e=>!t||e.status!==`disabled`),r=n.find(e=>e.name===s),i=n.find(e=>e.source!==`managed`);return(r??i??n[0])?.name??``}async function D(e){try{await r.deleteProfile(e,d,{isAdvisor:e===c}),n?.onDeleted?.(e)}catch{}}async function O(t){let n=u[t]?.label??t,r=t===s,o=Object.entries(l).filter(([e,n])=>e!==`mainAgent`&&n?.profile===t).map(([e])=>e),c=[],d=0,f=!1;try{let n=(await a.fetchQuery({...Rt({path:{assistant_id:e},query:{inference_profile:t,include_all:`true`}}),retry:!1,staleTime:0})).schedules??[];c=n.filter(e=>!e.isDeferred).map(e=>e.name),d=n.filter(e=>e.isDeferred).length}catch(e){i(e,{context:`settings-ai-profile-delete-schedule-scan`}),f=!0}if(!(r||o.length>0||c.length>0||d>0)&&!f){await D(t);return}let p={name:t,label:n,isActive:r,callSiteIds:o,scheduleNames:c,deferredReminderCount:d,scheduleLookupFailed:f};h(p),y(E(t,tr(p))),_(null)}function k(e){t==null||w.current||(w.current=!0,C(e),O(e).finally(()=>{w.current=!1,C(null)}))}async function A(){if(!m||!v)return;if(x(!0),_(null),tr(m))try{await jn(e,m.name,v),await a.invalidateQueries({queryKey:Lt({path:{assistant_id:e}})})}catch(e){i(e,{context:`settings-ai-profile-reassign-schedules`}),_(gr(e)),x(!1);return}let t={};if(m.isActive&&(t.activeProfile=v),m.callSiteIds.length>0){let e={};for(let t of m.callSiteIds)e[t]={profile:v};t.callSites=e}if(Object.keys(t).length>0)try{await r.patchLlm(t,`settings-ai-profile-reassign-delete`,`Failed to reassign references. Please try again.`)}catch{_(`Failed to reassign references. Please try again.`),x(!1);return}let n=m.name;h(null),x(!1),D(n)}return{requestDelete:k,pendingDeleteName:S,blockedDeleteModalProps:{blocked:m,availableReplacements:T(m?.name??null),replacement:v,onReplacementChange:y,error:g,saving:b,onClose:()=>{h(null),_(null)},onConfirm:()=>void A()}}}function vr(){}function yr({assistantId:e,config:t,connections:n,selectedProfileName:r,onOpenProfile:i,onCreateProfile:a,onProfileDeleted:s}){let{t:c}=o(`settings`),{entries:l}=sr(e,t),d=pr(e),f=_r(e,t,{onDeleted:s}),p=t?.llm?.activeProfile??null;return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(er,{title:c(`profilesSection.title`),action:(0,$.jsx)(u,{variant:`primary`,onClick:a,leftIcon:(0,$.jsx)(M,{}),disabled:t==null,children:c(`profilesSection.createProfile`)}),children:t==null?(0,$.jsx)(_,{variant:`body-medium-lighter`,as:`p`,className:`py-4 text-center text-(--content-tertiary)`,children:c(`profilesSection.loading`)}):l.length===0?(0,$.jsx)(_,{variant:`body-medium-lighter`,as:`p`,className:`py-4 text-center text-(--content-tertiary)`,children:c(`profilesSection.emptyState`)}):l.map(e=>(0,$.jsx)(or,{profile:e,isActiveProfile:e.name===p,selected:e.name===r,connections:n,deletePending:f.pendingDeleteName===e.name,onOpen:()=>i(e.name),onMakeActive:()=>void d.makeActive(e.name).catch(vr),onSetStatus:t=>void d.setStatus(e.name,t).catch(vr),onDelete:()=>f.requestDelete(e.name)},e.name))}),(0,$.jsx)(ar,{...f.blockedDeleteModalProps})]})}var br={anthropic:!0,openai:!0,gemini:!0,fireworks:!0,openrouter:!0,chatgpt:!0,vellum:!0,together:!0,"vercel-ai-gateway":!0,minimax:!0,atlascloud:!0,baseten:!0,poolside:!0};function xr(e){return e in br}function Sr(e){if(!e.baseUrl)return null;try{return new URL(e.baseUrl).host}catch{return e.baseUrl}}function Cr(e){let t=Sr(e)??``,n=[];t&&n.push(t);let r=e.models?.length??0;return r>0&&n.push(`${r} ${r===1?`model`:`models`}`),e.auth.type===`none`&&n.push(`keyless`),n.join(` · `)}function wr(e){switch(e.auth.type){case`api_key`:return`Own API key`;case`oauth_subscription`:return`ChatGPT subscription`;case`none`:return`No API key needed`;default:return null}}function Tr(e){if(e.provider===`vellum`)return`Included with your plan`;if(e.provider===`openai-compatible`)return Cr(e);let t=[];if(e.provider===`ollama`){let n=Sr(e);n&&t.push(n)}let n=e.provider===`chatgpt`?`openai`:e.provider,r=e.auth.type===`oauth_subscription`?Ve(n):J(n),i=e.models?.length??r.length;i>0&&t.push(`${i} ${i===1?`model`:`models`}`);let a=wr(e);return a&&t.push(a),t.join(` • `)}function Er({connection:e,isDefault:t,supportsDefaultProvider:n,selected:r,isSettingDefault:i,onOpen:a,onSetDefault:s,onDelete:c}){let{t:l}=o(`settings`),d=e.isManaged??!1,f=Ye(e),p=xr(e.provider),m=Tr(e),h=n&&!t&&p,g=!d&&a!=null,_=!d&&!t,v=h||g||_;return(0,$.jsx)(y,{title:f,subtitle:m.length>0?m:void 0,onClick:a,showChevron:!1,selected:r,contentAriaLabel:a?l(`providerRow.openProviderAriaLabel`,{displayName:f}):void 0,trailingInteractive:!0,trailing:(0,$.jsxs)($.Fragment,{children:[d?(0,$.jsx)(I,{tone:`neutral`,title:l(`providerRow.managedTagTitle`),children:l(`providerRow.managedTag`)}):null,t?(0,$.jsx)(I,{tone:`info`,title:l(`providerRow.defaultTagTitle`),children:l(`providerRow.defaultTag`)}):null,e.provider===`ollama`?(0,$.jsx)(I,{tone:`neutral`,title:l(`providerRow.localTagTitle`),children:l(`providerRow.localTag`)}):null,e.provider===`openai-compatible`?(0,$.jsx)(I,{tone:`neutral`,title:l(`providerRow.customTagTitle`),children:l(`providerRow.customTag`)}):null,v?(0,$.jsxs)(C.Root,{children:[(0,$.jsx)(C.Trigger,{asChild:!0,children:(0,$.jsx)(u,{variant:`ghost`,size:`compact`,iconOnly:(0,$.jsx)(T,{}),"aria-label":l(`providerRow.actionsAriaLabel`,{displayName:f})})}),(0,$.jsxs)(C.Content,{align:`end`,sideOffset:4,children:[g?(0,$.jsx)(C.Item,{onSelect:a,children:l(`providerRow.edit`)}):null,h?(0,$.jsx)(C.Item,{disabled:i,onSelect:s,children:l(`providerRow.setAsDefault`)}):null,_?(0,$.jsx)(C.Item,{onSelect:c,className:`text-[var(--system-negative-strong)] data-[highlighted]:text-[var(--system-negative-strong)]`,children:l(`providerRow.delete`)}):null]})]}):(0,$.jsx)(`span`,{className:`inline-block w-8`,"aria-hidden":!0})]})})}function Dr(e,t){let n=p(),a={path:{assistant_id:e}},o=h({...en(),onSuccess:()=>{n.invalidateQueries({queryKey:Wt(a)}),n.invalidateQueries({queryKey:Jt(a)}),n.invalidateQueries({queryKey:Bt(a)})},onError:e=>{i(e,{context:`settings-ai-set-default-provider`}),V.error(r(`settings:useProviderActions.setDefaultFailedToast`))}});function s(t){xr(t.provider)&&o.mutate({path:{assistant_id:e},body:{provider:t.provider,connectionName:t.name}})}function c(e){return o.isPending&&o.variables?.body?.connectionName===e}async function l(o){try{let{response:i}=await Ot({path:{assistant_id:e,name:o}});i?.ok||i?.status===404?(n.invalidateQueries({queryKey:zt(a)}),t?.onDeleted?.(o)):i?.status===409?V.error(r(`settings:useProviderActions.deleteInUseToast`)):V.error(r(`settings:useProviderActions.deleteFailedToast`))}catch(e){i(e,{context:`settings-ai-provider-delete`}),V.error(r(`settings:useProviderActions.deleteFailedToast`))}}return{setDefault:s,isSettingDefault:c,deleteConnection:l}}function Or({assistantId:e,selectedConnectionName:t,onOpenConnection:n,onAddProvider:r,onConnectionDeleted:i}){let{t:a}=o(`settings`),{data:s,isLoading:c,isError:l}=m(Ut({path:{assistant_id:e}})),d=_n(),{data:f}=m({...Yt({path:{assistant_id:e}}),enabled:d}),p=d?f?.resolvedConnectionName??null:null,h=Dr(e,{onDeleted:i}),g=(0,Q.useMemo)(()=>{let e=s?.connections??[];return[...e.filter(e=>e.provider===Z),...e.filter(e=>e.provider!==Z)]},[s]);return(0,$.jsx)(er,{title:a(`providersSection.title`),action:(0,$.jsx)(u,{variant:`outlined`,onClick:r,leftIcon:(0,$.jsx)(M,{}),children:a(`providersSection.addProvider`)}),children:c?(0,$.jsx)(`div`,{className:`space-y-2 py-2`,children:[1,2,3].map(e=>(0,$.jsx)(te,{className:`h-10 rounded-lg`},e))}):l?(0,$.jsx)(_,{variant:`body-medium-default`,as:`p`,className:`py-4 text-center text-(--system-negative-strong)`,children:a(`providersSection.loadError`)}):g.length===0?(0,$.jsx)(_,{variant:`body-medium-lighter`,as:`p`,className:`py-4 text-center text-(--content-tertiary)`,children:a(`providersSection.empty`)}):g.map(e=>(0,$.jsx)(Er,{connection:e,isDefault:e.name===p,supportsDefaultProvider:d,selected:e.name===t,isSettingDefault:h.isSettingDefault(e.name),onOpen:e.isManaged??!1?void 0:()=>n(e.name),onSetDefault:()=>h.setDefault(e),onDelete:()=>void h.deleteConnection(e.name)},e.name))})}function kr({panel:e,onOpenPanel:t,onClosePanel:n}){let{t:r}=o(`settings`),i=En(),{data:a}=m({...Gt({path:{assistant_id:i}}),staleTime:3e4}),s=_n(),{data:c}=m({...Yt({path:{assistant_id:i}}),enabled:s}),l=c?.availability,{data:d}=m({...Ut({path:{assistant_id:i}})}),f=d?.connections,p=a?.llm?.callSites??{},h=Object.entries(p).filter(([e,t])=>e!==`mainAgent`&&(t?.profile!=null||t?.provider!=null||t?.model!=null)).length;return(0,$.jsx)(Ln,{title:r(`languageModelCard.title`),subtitle:r(`languageModelCard.subtitle`),children:(0,$.jsxs)(`div`,{className:`space-y-2`,children:[l&&l.status!==`ok`&&(0,$.jsx)(F,{tone:l.status===`unknown`?`warning`:`error`,children:l.message??r(`languageModelCard.defaultProviderUnavailable`)}),i&&(0,$.jsx)(yr,{assistantId:i,config:a,connections:f,selectedProfileName:e?.kind===`profile`?e.name:null,onOpenProfile:e=>t({kind:`profile`,name:e}),onCreateProfile:()=>t({kind:`create-profile`}),onProfileDeleted:t=>{e?.kind===`profile`&&e.name===t&&n()}}),i&&(0,$.jsx)(Or,{assistantId:i,selectedConnectionName:e?.kind===`provider`?e.name:null,onOpenConnection:e=>t({kind:`provider`,name:e}),onAddProvider:()=>t({kind:`add-provider`}),onConnectionDeleted:t=>{e?.kind===`provider`&&e.name===t&&n()}}),(0,$.jsx)(er,{title:r(`languageModelCard.overridesTitle`),count:h,action:(0,$.jsx)(u,{variant:`outlined`,onClick:()=>t({kind:`overrides`}),children:r(`languageModelCard.manage`)})})]})})}async function Ar(e,t){try{let{data:n}=await Tt({path:{assistant_id:e,name:t}}),i=n?.check;if(!i||i.ok)return;let a=i.blame===`profile`?`settings:profileCheck.profileError`:i.blame===`provider`?i.connection?`settings:profileCheck.providerError`:`settings:profileCheck.providerErrorUnnamed`:i.blame===`transient`?`settings:profileCheck.transient`:`settings:profileCheck.unknown`;V.warning(r(a,{detail:i.detail??``,connection:i.connection??``}))}catch{}}function jr(e,{onSaved:t}={}){let n=cr(e),{data:a}=m({...Gt({path:{assistant_id:e}}),staleTime:3e4}),o=(0,Q.useMemo)(()=>a?.llm?.profiles??{},[a?.llm?.profiles]),s=a?.llm?.profileOrder??[];async function c(a,c,l){let u=l?.mode??`replace`,d=!(a in o);if(u===`merge`&&!d){await n.mutateAsync({path:{assistant_id:e},body:{llm:{profiles:{[a]:c}}}}),t?.();return}let f={profiles:{[a]:c}};if(d&&(f.profileOrder=s.includes(a)?s:[...s,a]),d)await n.mutateAsync({path:{assistant_id:e},body:{llm:f}});else{let t=o[a];await n.mutateAsync({path:{assistant_id:e},body:{llm:{profiles:{[a]:null}}}});try{await n.mutateAsync({path:{assistant_id:e},body:{llm:f}})}catch(r){throw i(r,{context:`settings-ai-profile-edit-recreate`}),t!=null&&await n.mutateAsync({path:{assistant_id:e},body:{llm:{profiles:{[a]:t}}}}).catch(()=>{}),r}}d&&V.success(r(`settings:useProfileSave.createdToast`,{name:c.label??a})),t?.(),Ar(e,a)}return{saveProfile:c,isPending:n.isPending}}function Mr({assistantId:e,profileName:t,onClose:n}){let{t:r}=o(`settings`),{data:i}=m({...Gt({path:{assistant_id:e}}),staleTime:3e4}),{data:a}=m({...Ut({path:{assistant_id:e}})}),s=a?.connections,c=(0,Q.useMemo)(()=>i?.llm?.profiles??{},[i?.llm?.profiles]),l=Object.keys(c),d=(0,Q.useMemo)(()=>{if(t==null)return;let e=c[t];return e?{name:t,...e}:void 0},[t,c]),f=t==null?`create`:d?.source===`managed`||d?.invariant===!0?`view`:`edit`,{saveProfile:p,isPending:h}=jr(e,{onSaved:n}),g=Ie({mode:f,profileName:t??void 0,initialValues:d,existingNames:l,connections:s,assistantId:e,onSave:p}),_=_r(e,i,{onDeleted:()=>n()}),v=t!=null&&_.pendingDeleteName===t,y=t!=null&&i!=null&&!(t in c);(0,Q.useEffect)(()=>{y&&!g.saving&&!h&&n()},[y,g.saving,h,n]);let b=f===`view`;return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Dn,{title:g.effectiveMode===`create`?r(`profileDetailPanel.newProfileTitle`):d?.label??t??r(`profileDetailPanel.defaultTitle`),closeVariant:`outlined`,onClose:n,headerTrailing:b&&g.effectiveMode!==`create`?(0,$.jsx)(I,{tone:`neutral`,children:r(`profileDetailPanel.managedTag`)}):null,headerActions:g.effectiveMode!==`create`&&!g.isReadOnly?(0,$.jsx)(u,{variant:`dangerOutline`,iconOnly:v?(0,$.jsx)(k,{className:`animate-spin`}):(0,$.jsx)(N,{}),"aria-label":r(v?`profileDetailPanel.deleting`:`profileDetailPanel.delete`),tooltip:r(`profileDetailPanel.delete`),onClick:()=>{t!=null&&_.requestDelete(t)},disabled:g.saving||v}):null,footer:g.isReadOnly?(0,$.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,$.jsx)(u,{variant:`outlined`,onClick:g.switchToSaveAsNew,disabled:g.saving,children:r(`profileDetailPanel.saveAsNew`)}),g.hasViewModeChanges?(0,$.jsx)(u,{variant:`primary`,onClick:()=>void g.handleSave(),disabled:g.saving,children:g.saving?r(`profileDetailPanel.saving`):r(`profileDetailPanel.save`)}):null]}):(0,$.jsx)(`div`,{className:`flex justify-end`,children:(0,$.jsx)(u,{variant:`primary`,onClick:()=>void g.handleSave(),disabled:g.isInvalid||g.saving,children:g.saving?r(`profileDetailPanel.saving`):g.effectiveMode===`create`?r(`profileDetailPanel.createProfile`):r(`profileDetailPanel.saveChanges`)})}),children:(0,$.jsx)(Ge,{editor:g,assistantId:e,connections:s,variant:`panel`})}),(0,$.jsx)(ar,{..._.blockedDeleteModalProps})]})}function Nr({value:e,profileOptions:t,disabled:n,onChange:r}){let{t:i}=o(`settings`);return(0,$.jsx)(`div`,{className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)] p-3`,children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(`p`,{className:`text-body-medium-default font-medium text-[var(--content-default)]`,children:i(`advisorProfileRow.title`)}),(0,$.jsx)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:i(`advisorProfileRow.description`)})]}),(0,$.jsx)(U,{value:e,onChange:r,options:t,placeholder:i(`advisorProfileRow.chooseProfilePlaceholder`),className:`w-44`,menuMinWidth:280,menuAlign:`start`,disabled:n})]})})}var Pr=`__custom__`;function Fr(e){return e?!!(e.profile||e.provider||e.model):!1}function Ir(e,t){if(t?.provider||t?.model)return null;let n=e.defaultProfile??e.shippedDefaultProfile;return n?{profile:n,via:t?.profile===n?`override`:`default`}:null}function Lr(e,t){let n=Fr(e);return n===Fr(t)?n?(e?.profile??null)===(t?.profile??null)&&(e?.provider??null)===(t?.provider??null)&&(e?.model??null)===(t?.model??null):!0:!1}function Rr({assistantId:e,callSites:t,domains:n,persistedOverrides:r,orderedProfiles:s,onClose:c,onApplied:l}){let{t:d}=o(`settings`),f=cr(e),p=Ee(),m=(0,Q.useMemo)(()=>({requireOwnProviderAndModel:p}),[p]),h=(0,Q.useMemo)(()=>{let e=new Map;for(let n of t){let t=Ir(n,r[n.id]);t&&e.set(n.id,t)}return e},[t,r]),g=(0,Q.useMemo)(()=>{let e=new Set(Array.from(h.values(),e=>e.profile));return s.filter(t=>e.has(t.name))},[s,h]),[v,y]=(0,Q.useState)(()=>g[0]?.name??``),[b,x]=(0,Q.useState)(``),[S,C]=(0,Q.useState)(new Set),[w,T]=(0,Q.useState)(!1),E=(0,Q.useMemo)(()=>{let e=new Map(n.map(e=>[e.id,e.displayName]));return t=>e.get(t)??t},[n]),D=(0,Q.useMemo)(()=>t.filter(e=>h.get(e.id)?.profile===v),[t,h,v]),O=(0,Q.useMemo)(()=>D.map(e=>e.id).filter(e=>!S.has(e)),[D,S]),A=(0,Q.useMemo)(()=>g.map(e=>({value:e.name,label:Te(e)})),[g]),M=(0,Q.useMemo)(()=>Ce(s,[],m).filter(e=>e.name!==v).map(e=>({value:e.name,label:Te(e)})),[s,v,m]),ee=ge(s,v),N=ge(s,b),P=S.size===0;function I(e){y(e),C(new Set),e===b&&x(``)}function L(e,t){C(n=>{let r=new Set(n);return t?r.delete(e):r.add(e),r})}async function R(){if(!(!v||!b||O.length===0)){T(!0);try{let t={};for(let e of O)t[e]={profile:b};await f.mutateAsync({path:{assistant_id:e},body:{llm:{callSites:t}}}),V.success(d(`bulkOverrideSwapModal.successToast`,{count:O.length,targetLabel:N})),l(),c()}catch(e){let t=a(e);V.error(t??d(`bulkOverrideSwapModal.updateFailedToast`)),t||i(e,{context:`settings-ai-bulk-override-swap`})}finally{T(!1)}}}return(0,$.jsx)(B.Root,{open:!0,onOpenChange:e=>{e||c()},children:(0,$.jsxs)(B.Content,{size:`md`,children:[(0,$.jsx)(B.Header,{children:(0,$.jsx)(B.Title,{children:d(`bulkOverrideSwapModal.title`)})}),(0,$.jsxs)(B.Body,{className:`space-y-4`,children:[(0,$.jsx)(_,{variant:`body-medium-default`,as:`p`,children:d(`bulkOverrideSwapModal.intro`)}),(0,$.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,$.jsx)(U,{id:`bulk-swap-source`,label:d(`bulkOverrideSwapModal.currentlyUsingLabel`),value:v,onChange:I,options:A}),(0,$.jsx)(U,{id:`bulk-swap-target`,label:d(`bulkOverrideSwapModal.changeToLabel`),value:b,onChange:x,options:M,placeholder:d(`bulkOverrideSwapModal.targetPlaceholder`)})]}),(0,$.jsx)(F,{tone:`info`,title:d(`bulkOverrideSwapModal.noticeTitle`),children:d(`bulkOverrideSwapModal.noticeBody`,{sourceLabel:ee})}),(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`div`,{className:`mb-2 flex items-baseline justify-between gap-2`,children:[(0,$.jsxs)(`div`,{children:[(0,$.jsx)(_,{variant:`body-medium-default`,as:`p`,children:d(`bulkOverrideSwapModal.affectedSummary`,{count:D.length,profile:ee})}),(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`text-[color:var(--content-secondary)]`,children:d(`bulkOverrideSwapModal.chooseActions`)})]}),(0,$.jsx)(u,{variant:`ghost`,onClick:()=>C(P?new Set(D.map(e=>e.id)):new Set),children:d(P?`bulkOverrideSwapModal.clearAll`:`bulkOverrideSwapModal.selectAll`)})]}),(0,$.jsx)(`div`,{className:`max-h-72 space-y-1 overflow-y-auto`,children:D.map(e=>(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3 rounded-md border border-[var(--border-base)] px-3 py-2`,children:[(0,$.jsx)(j,{checked:!S.has(e.id),onCheckedChange:t=>L(e.id,t===!0),disabled:w,label:e.displayName,helperText:E(e.domain)}),(0,$.jsx)(`span`,{className:`shrink-0 text-body-small-default text-[color:var(--content-tertiary)]`,children:h.get(e.id)?.via===`override`?d(`bulkOverrideSwapModal.viaOverride`):d(`bulkOverrideSwapModal.viaDefault`)})]},e.id))})]})]}),(0,$.jsxs)(B.Footer,{children:[(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`mr-auto self-center text-[color:var(--content-secondary)]`,children:d(`bulkOverrideSwapModal.willChange`,{count:O.length})}),(0,$.jsx)(u,{variant:`ghost`,onClick:c,disabled:w,children:d(`bulkOverrideSwapModal.cancel`)}),(0,$.jsx)(u,{variant:`primary`,disabled:!v||!b||O.length===0||w,onClick:()=>void R(),children:w?(0,$.jsx)(k,{className:`h-4 w-4 animate-spin`}):d(`bulkOverrideSwapModal.applyTo`,{count:O.length})})]})]})})}function zr({id:e,displayName:t,description:n,defaultProfileLabel:r,draft:i,profileOptions:a,connections:s,onDraftChange:c,onToggle:l}){let{t:u}=o(`settings`),d=Fr(i),f=!i||!d?``:i.provider||i.model?Pr:i.profile??``,p=f===Pr,m=xt(),h=(s??[]).some(e=>e.provider===ye),g=[...m,...h?[ye]:[]],_=m[0]??ve[0],v=i?.provider,y=oe(v)?v:v===`chatgpt`?ye:void 0,b=y!==void 0&&g.some(e=>e===y),x=y??_,S=mt(x,``,(s??[]).filter(e=>qe(e.provider,x)))?Ve(x):J(x),C=S.map(e=>({value:e.id,label:e.displayName})),w=typeof i?.model==`string`?i.model:``;if(w&&!S.some(e=>e.id===w)){let e=J(x).find(e=>e.id===w)?.displayName??w;C.push({value:w,label:u(`callSiteOverridesRow.unavailableOption`,{name:e})})}let T=!!i?.provider&&!i?.model,E=[...g.map(e=>({value:e,label:q[e]??e})),...y&&!b?[{value:y,label:u(`callSiteOverridesRow.unavailableOption`,{name:q[y]??y})}]:[]];function D(t){t===`__custom__`?c(e,{profile:null,provider:_,model:ie(_)??``}):t===``?c(e,null):c(e,{profile:t,provider:null,model:null})}function O(t){let n=ie(t)??``;c(e,{...i??{},profile:null,provider:t,model:n})}function k(t){c(e,{...i??{},model:t})}return(0,$.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)] p-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`text-body-medium-default font-medium text-[var(--content-default)]`,children:t}),n&&(0,$.jsxs)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:[n,r&&(0,$.jsx)(`span`,{className:`ml-1.5 text-body-small-default text-[var(--content-tertiary)] opacity-60`,children:u(`callSiteOverridesRow.defaultProfileSuffix`,{label:r})})]})]}),(0,$.jsx)(z,{checked:d,onChange:t=>l(e,t),"aria-label":u(`callSiteOverridesRow.overrideAriaLabel`,{displayName:t}),className:`shrink-0`})]}),d&&(0,$.jsx)(`div`,{className:`mt-3`,children:(0,$.jsx)(U,{value:f,onChange:D,options:a,className:`w-44`,menuMinWidth:280,menuAlign:`start`})}),d&&p&&(0,$.jsxs)(`div`,{className:`mt-3 space-y-2 border-t border-[var(--border-base)] pt-3`,children:[(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[(0,$.jsxs)(`div`,{className:`flex-1`,children:[(0,$.jsx)(`label`,{className:`mb-1 block text-body-small-default text-[var(--content-tertiary)]`,children:u(`callSiteOverridesRow.providerLabel`)}),(0,$.jsx)(U,{value:x??``,onChange:O,options:E})]}),(0,$.jsxs)(`div`,{className:`flex-1`,children:[(0,$.jsx)(`label`,{className:`mb-1 block text-body-small-default text-[var(--content-tertiary)]`,children:u(`callSiteOverridesRow.modelLabel`)}),(0,$.jsx)(U,{value:i?.model??``,onChange:k,options:C})]})]}),T&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:u(`callSiteOverridesRow.pickModelError`)})]})]})}function Br({groups:e,drafts:t,buildProfileOptionsForRow:n,profileLabelFor:r,advisorMatchesSearch:i,connections:a,onDraftChange:s,onToggle:c}){let{t:l}=o(`settings`);return(0,$.jsx)(`div`,{className:`space-y-4`,children:e.length===0?i?null:(0,$.jsx)(`p`,{className:`py-8 text-center text-body-medium-lighter text-[var(--content-tertiary)]`,children:l(`overridesCallSiteList.emptySearch`)}):e.map(({domain:e,sites:i})=>(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`p`,{className:`mb-2 text-body-small-default font-semibold uppercase tracking-wider text-[var(--content-tertiary)]`,children:e.displayName}),(0,$.jsx)(`div`,{className:`space-y-1`,children:i.map(e=>{let i=(()=>{let n=t[e.id]??null;return!n||!Fr(n)?``:n.provider||n.model?Pr:n.profile??``})(),o=e.shippedDefaultProfile??e.defaultProfile,l=o?r(o):null;return(0,$.jsx)(zr,{id:e.id,displayName:e.displayName,description:e.description,defaultProfileLabel:l,draft:t[e.id]??null,profileOptions:n(i===``||i===`__custom__`?null:i),connections:a,onDraftChange:s,onToggle:c},e.id)})})]},e.id))})}function Vr(e,t){let n={};for(let r of Object.keys(e)){let i=e[r]??null;Fr(i)?n[r]={profile:i?.profile??null,provider:i?.provider??null,model:i?.model??null}:r in t&&t[r]===null&&(n[r]=null)}return n}function Hr(e){let t={};for(let n of Object.keys(e))t[n]=null;return t}function Ur({catalogCallSiteIds:e,persistedOverrides:t,persistedAdvisor:n,isSeeded:r}){let[i,a]=(0,Q.useState)({}),[o,s]=(0,Q.useState)(void 0),c=(0,Q.useMemo)(()=>{if(!r)return{};let n={};for(let r of e)if(r in i)n[r]=i[r];else{let e=t[r];n[r]=e?{...e}:{}}return n},[r,e,t,i]),l=o??n,u=l!==n,d=(0,Q.useMemo)(()=>{if(!r)return!1;for(let e of Object.keys(c))if(!Lr(c[e],t[e]))return!0;return!1},[r,c,t]);return{drafts:c,advisorProfile:l,advisorDirty:u,callSiteDraftsDirty:d,hasUnsavedDrafts:u||d,hasValidationError:(0,Q.useMemo)(()=>Object.values(c).some(e=>Fr(e)&&!!e?.provider&&!e?.model),[c]),setDraft:(0,Q.useCallback)((e,t)=>{a(n=>({...n,[e]:t}))},[]),setAdvisor:(0,Q.useCallback)(e=>{s(e)},[]),clearEdits:(0,Q.useCallback)(()=>{a({}),s(void 0)},[]),buildSavePatch:(0,Q.useCallback)(()=>Vr(c,i),[c,i]),buildResetPatch:(0,Q.useCallback)(()=>Hr(c),[c])}}function Wr({assistantId:e,onClose:t}){let{t:n}=o(`settings`),{data:r}=m({...Gt({path:{assistant_id:e}}),staleTime:3e4}),a=(0,Q.useMemo)(()=>r?.llm?.profiles??{},[r?.llm?.profiles]),s=(0,Q.useMemo)(()=>r?.llm?.profileOrder??[],[r?.llm?.profileOrder]),c=(0,Q.useMemo)(()=>r?.llm?.callSites??{},[r?.llm?.callSites]),l=(0,Q.useMemo)(()=>be(a,s),[a,s]),d=xt(),f=Ee(),p=(0,Q.useMemo)(()=>({requireOwnProviderAndModel:f}),[f]),h=cr(e),[g,_]=(0,Q.useState)(``),[v,y]=(0,Q.useState)(!1),[b,S]=(0,Q.useState)(!1),[C,w]=(0,Q.useState)(!1),{data:T,isLoading:E,isError:D,refetch:O}=m({...Qt({path:{assistant_id:e}}),enabled:!!e,staleTime:6e4,refetchOnWindowFocus:!1}),{data:A}=m({...Ut({path:{assistant_id:e}}),enabled:!!e}),j=(0,Q.useMemo)(()=>(T?.callSites??[]).filter(e=>e.id!==`mainAgent`),[T]),M=!E&&!D&&!!T,N=!!r,P=M&&N,F=(0,Q.useMemo)(()=>j.map(e=>e.id),[j]),I=r?.llm?.advisorProfile??``,{drafts:L,advisorProfile:z,advisorDirty:B,callSiteDraftsDirty:U,hasUnsavedDrafts:te,hasValidationError:W,setDraft:G,setAdvisor:K,clearEdits:ne,buildSavePatch:re,buildResetPatch:q}=Ur({catalogCallSiteIds:F,persistedOverrides:c,persistedAdvisor:I,isSeeded:P}),J=(0,Q.useMemo)(()=>new Set(F),[F]),Y=(0,Q.useCallback)(e=>ge(l,e),[l]),X=(0,Q.useCallback)(e=>({value:e.name,label:Te(e),...Se(e,l,p)===`undispatchable`?{icon:(0,$.jsx)(x,{className:`h-3.5 w-3.5 text-[var(--system-mid-strong)]`}),tooltip:de(e)}:{}}),[l,p]),ae=(0,Q.useMemo)(()=>Ce(l,[I],p).map(X),[l,I,X,p]),Z=(0,Q.useMemo)(()=>{let e=g.trim().toLowerCase();return e===``||`advisor`.includes(e)||`second opinion`.includes(e)},[g]),oe=(0,Q.useMemo)(()=>j.some(e=>Ir(e,c[e.id])!==null),[j,c]),se=(0,Q.useMemo)(()=>Object.entries(c).some(([e,t])=>J.has(e)&&(t?.profile!=null||t?.provider!=null||t?.model!=null)),[c,J]),ce=(0,Q.useCallback)(e=>[...Ce(l,[e],p).map(X),{value:Pr,label:n(`overridesDetailPanel.customProfileOption`)}],[l,X,p,n]),le=(0,Q.useMemo)(()=>{if(!g.trim())return j;let e=g.toLowerCase();return j.filter(t=>(t.displayName??``).toLowerCase().includes(e)||(t.description??``).toLowerCase().includes(e)||(t.domain??``).toLowerCase().includes(e))},[j,g]),ue=(0,Q.useMemo)(()=>{if(!T)return[];let e=T.domains.map(e=>e.id),t=new Map(T.domains.map(e=>[e.id,e])),r=[];for(let n of e){let e=le.filter(e=>e.domain===n);e.length>0&&r.push({domain:t.get(n),sites:e})}let i=new Set(e),a=le.filter(e=>!i.has(e.domain));return a.length>0&&r.push({domain:{id:`other`,displayName:n(`overridesDetailPanel.otherDomain`)},sites:a}),r},[T,le,n]),fe=(0,Q.useCallback)((e,t)=>{if(!t){G(e,null);return}let n=_e(l,j.find(t=>t.id===e)?.defaultProfile,p);if(n)G(e,{profile:n});else{let t=d[0]??ve[0];G(e,{provider:t,model:ie(t)??``})}},[j,l,d,G,p]),pe=(0,Q.useCallback)(async()=>{y(!0);try{let r=re();await h.mutateAsync({path:{assistant_id:e},body:{llm:{...U?{callSites:r}:{},...B?{advisorProfile:z}:{}}}}),t(),V.success(n(`overridesDetailPanel.overridesSavedToast`))}catch(e){V.error(n(`overridesDetailPanel.saveFailedToast`)),i(e,{context:`call_site_overrides_save`})}finally{y(!1)}},[re,U,B,z,t,h,e,n]),me=(0,Q.useCallback)(async()=>{y(!0);try{let r=q();await h.mutateAsync({path:{assistant_id:e},body:{llm:{callSites:r}}}),t(),V.success(n(`overridesDetailPanel.overridesResetToast`))}catch(e){V.error(n(`overridesDetailPanel.resetFailedToast`)),i(e,{context:`call_site_overrides_reset`})}finally{y(!1)}},[q,t,h,e,n]),he=(0,$.jsxs)(`div`,{className:`flex items-center justify-end gap-2`,children:[se&&(0,$.jsx)(u,{variant:`outlined`,onClick:()=>S(!0),disabled:v||!P,tintColor:`var(--system-negative-strong)`,className:`mr-auto`,children:n(`overridesDetailPanel.resetToDefaults`)}),(0,$.jsx)(u,{variant:`primary`,onClick:()=>void pe(),disabled:!te||W||v,children:v?(0,$.jsx)(k,{className:`h-4 w-4 animate-spin`}):n(`overridesDetailPanel.save`)})]});return(0,$.jsxs)(Dn,{title:n(`overridesDetailPanel.title`),closeVariant:`outlined`,onClose:t,footer:he,children:[(0,$.jsx)(`p`,{className:`mb-4 text-body-medium-lighter text-[var(--content-tertiary)]`,children:n(`overridesDetailPanel.description`)}),(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`div`,{className:`mb-4 flex items-center gap-2`,children:[(0,$.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,$.jsx)(R,{type:`search`,value:g,onChange:e=>_(e.target.value),placeholder:n(`overridesDetailPanel.searchPlaceholder`),leftIcon:(0,$.jsx)(ee,{className:`h-4 w-4`}),fullWidth:!0})}),(0,$.jsx)(u,{variant:`outlined`,onClick:()=>w(!0),disabled:!P||v||te||!oe,title:te?n(`overridesDetailPanel.bulkChangeUnsavedTitle`):oe?void 0:n(`overridesDetailPanel.bulkChangeNoCandidatesTitle`),children:n(`overridesDetailPanel.bulkChange`)})]}),N&&Z&&(0,$.jsxs)(`div`,{className:`mb-4`,children:[(0,$.jsx)(`p`,{className:`mb-2 text-body-small-default font-semibold uppercase tracking-wider text-[var(--content-tertiary)]`,children:n(`overridesDetailPanel.advisorSection`)}),(0,$.jsx)(Nr,{value:z,profileOptions:ae,disabled:v,onChange:K})]}),E&&(0,$.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,$.jsx)(k,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`})}),D&&(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-12 text-center`,children:[(0,$.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:n(`overridesDetailPanel.loadErrorTitle`)}),(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:n(`overridesDetailPanel.loadErrorHint`)}),(0,$.jsx)(u,{variant:`outlined`,onClick:()=>void O(),children:n(`overridesDetailPanel.retry`)})]}),!E&&!D&&T&&(0,$.jsx)(Br,{groups:ue,drafts:L,buildProfileOptionsForRow:ce,profileLabelFor:Y,advisorMatchesSearch:Z,connections:A?.connections,onDraftChange:G,onToggle:fe})]}),C&&T&&(0,$.jsx)(Rr,{assistantId:e,callSites:j,domains:T.domains,persistedOverrides:c,orderedProfiles:l,onClose:()=>w(!1),onApplied:ne}),(0,$.jsx)(H,{open:b,title:n(`overridesDetailPanel.resetToDefaults`),message:n(`overridesDetailPanel.resetConfirmMessage`),confirmLabel:n(`overridesDetailPanel.resetToDefaults`),destructive:!0,onConfirm:()=>{S(!1),me()},onCancel:()=>S(!1)})]})}var Gr=e(c(),1);function Kr({mode:e,connection:t,assistantId:n,existingNames:r,connections:i,variant:a=`modal`,actionsSlot:s,onSave:c,onCancel:l}){let{t:d}=o(`settings`),[f,m]=(0,Q.useState)(t?.label??``),h=t?.name??``,g=t?.provider??`anthropic`,v=t?.auth.type??`api_key`,[y,b]=(0,Q.useState)(()=>t?.auth.type===`api_key`?t.auth.credential:t?``:`credential/anthropic/api_key`),[x,S]=(0,Q.useState)(t?.baseUrl??``),[C,w]=(0,Q.useState)(()=>t?.models?t.models.map(e=>e.id).join(`, `):``),[T,E]=(0,Q.useState)(!1),[D,O]=(0,Q.useState)(null),k=g===`openai-compatible`,A=ze(g),[j,M]=(0,Q.useState)(``),[ee,N]=(0,Q.useState)(!1),P=p(),F=(0,Q.useMemo)(()=>Xe(y),[y]),I=v===`api_key`&&F!==null,{hasStoredCredential:L,isLoading:z}=He({assistantId:n,credentialKind:`credential`,credentialName:F?`${F.service}:${F.field}`:``,enabled:I}),{credentials:V}=Me({assistantId:n,enabled:v===`api_key`});(0,Q.useEffect)(()=>{let e=t?.provider??`anthropic`;m(t?.label??``),t?.auth.type===`api_key`?b(t.auth.credential):b(t?``:`credential/${e}/api_key`),O(null),S(t?.baseUrl??``),w(t?.models?t.models.map(e=>e.id).join(`, `):``),M(``),N(!1)},[t]);let H=f.trim()!==(t?.label??``).trim(),U=k&&H?Ke(f,i,t?.name):null,te=h.trim().length>0&&U===null;async function W(){if(te){E(!0),O(null);try{let e;if(v===`api_key`){let t=y.trim()||`credential/${g}/api_key`,r=j.trim();if(r){N(!0);try{let e=Xe(t);await At({path:{assistant_id:n},body:e?{type:`credential`,name:`${e.service}:${e.field}`,value:r}:{type:`api_key`,name:g,value:r},throwOnError:!0});let i=Be(n,`credential`,e?`${e.service}:${e.field}`:``);P.setQueryData(i,!0),P.invalidateQueries({queryKey:Zt({path:{assistant_id:n}})})}catch{O(d(`providerEditorContent.failedSaveApiKey`));return}finally{N(!1)}}e={type:`api_key`,credential:t}}else if(t)e=t.auth;else{O(d(`providerEditorContent.nothingToEdit`));return}let r=f.trim()||null,i={auth:e,label:r,...A&&{base_url:x.trim()||null},...k&&{models:C.trim()?C.split(`,`).map(e=>({id:e.trim()})).filter(e=>e.id):null}},{data:a,error:o,response:s}=await kt({path:{assistant_id:n,name:t?.name??h.trim()},body:i});if(!s?.ok){O(Ze(s?.status,o)??Ne(s?.status));return}if(!a){O(d(`providerEditorContent.emptyServerResponse`));return}Re(a,d),c(a)}catch{O(d(`providerEditorContent.failedSaveProvider`))}finally{E(!1)}}}let G=V.filter(e=>e.service===g),K=e!==`create`&&t?.auth.type===`api_key`,ne=G.length>0||K,ie=st(d(`providerEditorContent.apiKeyPlaceholder`),L);if(e===`create`)return(0,$.jsx)(ct,{variant:a===`panel`?`inline`:`modal`,actionsSlot:s,assistantId:n,existingNames:r,connections:i,defaultProviderType:g,onCreated:c,onCancel:l});let q=(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:(0,$.jsx)(re,{i18nKey:`providerEditorContent.displayNameLabel`,ns:`settings`,components:{optional:(0,$.jsx)(`span`,{className:`text-[var(--content-disabled)]`})}})}),(0,$.jsx)(R,{value:f,onChange:e=>m(e.target.value),placeholder:d(`providerEditorContent.displayNamePlaceholder`),fullWidth:!0}),U?(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:We[U]}):null]}),A&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:d(`providerEditorContent.baseUrlLabel`)}),(0,$.jsx)(R,{value:x,onChange:e=>S(e.target.value),placeholder:d(g===`ollama`?`providerEditorContent.baseUrlPlaceholderOllama`:`providerEditorContent.baseUrlPlaceholder`),fullWidth:!0}),g===`ollama`?(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:d(`providerEditorContent.baseUrlHintOllama`)}):null]}),k&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:d(`providerEditorContent.modelsLabel`)}),(0,$.jsx)(R,{value:C,onChange:e=>w(e.target.value),placeholder:d(`providerEditorContent.modelsPlaceholder`),fullWidth:!0}),(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:d(`providerEditorContent.modelsHint`)})]}),v===`api_key`&&(0,$.jsx)(Ue,{apiKeyValue:j,onApiKeyChange:M,credential:y,onCredentialChange:b,isLoadingCredential:z,apiKeyPlaceholder:ie,provider:g,providerCredentials:G,showAdvancedSection:ne,onError:O}),v===`oauth_subscription`&&(0,$.jsx)(Le,{assistantId:n,onConnected:c}),D&&(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:D})]}),J=(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(u,{variant:`ghost`,onClick:l,children:d(`providerEditorContent.cancel`)}),(0,$.jsx)(u,{variant:`primary`,disabled:!te||T||ee,onClick:()=>void W(),children:d(T?`providerEditorContent.saving`:`providerEditorContent.saveChanges`)})]});return a===`panel`?(0,$.jsxs)(`div`,{className:`space-y-4`,children:[q,s===void 0?(0,$.jsx)(`div`,{className:`flex justify-end gap-2`,children:J}):s&&(0,Gr.createPortal)(J,s)]}):(0,$.jsxs)(B.Content,{size:`md`,children:[(0,$.jsxs)(B.Header,{children:[(0,$.jsx)(B.Title,{children:d(`providerEditorContent.editProviderTitle`)}),(0,$.jsx)(B.Description,{children:t?d(`providerEditorContent.editingConnection`,{name:Ye(t)}):d(`providerEditorContent.editProviderSettingsFallback`)})]}),(0,$.jsx)(B.Body,{children:q}),(0,$.jsx)(B.Footer,{children:J})]})}function qr({assistantId:e,connectionName:t,onClose:n}){let{t:r}=o(`settings`),i=p(),[a,s]=(0,Q.useState)(null),{data:c}=m(Ut({path:{assistant_id:e}})),l=(0,Q.useMemo)(()=>c?.connections??[],[c]),u=(0,Q.useMemo)(()=>t==null?void 0:l.find(e=>e.name===t),[t,l]),d=t!=null&&c!=null&&u==null;(0,Q.useEffect)(()=>{d&&n()},[d,n]);function f(){i.invalidateQueries({queryKey:zt({path:{assistant_id:e}})}),i.invalidateQueries({queryKey:Wt({path:{assistant_id:e}})}),n()}return(0,$.jsx)(Dn,{title:u?Ye(u):r(`providerDetailPanel.addProviderTitle`),closeVariant:`outlined`,onClose:n,footer:(0,$.jsx)(`div`,{ref:s,className:`flex justify-end gap-2`}),children:t==null||u!=null?(0,$.jsx)(Kr,{mode:u?`edit`:`create`,connection:u,variant:`panel`,actionsSlot:a,assistantId:e,existingNames:l.map(e=>e.name),connections:l,onSave:f,onCancel:n}):null})}var Jr={vellum:{provider:`vellum`},deepgram:{provider:`deepgram`,credentialService:`deepgram`},openai:{provider:`openai-whisper`,credentialService:`openai`}},Yr={vellum:`vellum`,deepgram:`deepgram`,"openai-whisper":`openai`},Xr=`deepgram`;function Zr({assistantId:e,hideSaveButton:t=!1,hideCredentialsGuide:n=!1,onSaveStateChange:r}={}){let i=En(),a=e??i,s=It(),c=p(),{t:l}=o(),u=(0,Q.useMemo)(()=>Je(Pt(),{displayName:l(`sttProviderForm.windowsNativeDisplayName`),subtitle:l(`sttProviderForm.windowsNativeSubtitle`),setupWarning:l(`sttProviderForm.windowsNativeSetupWarning`)}).filter(e=>!e.requiresNativeDictation||Pe()),[l]),d=Xr,{data:f}=m({...Gt({path:{assistant_id:a}}),enabled:s,staleTime:3e4}),h=f?.services?.stt,g=h?.mode===`managed`?`vellum`:h?.provider,_=(0,Q.useMemo)(()=>{let e=g?Yr[g]:void 0;if(e&&u.some(t=>t.id===e))return e;let t=W(tt,d);return u.some(e=>e.id===t)?t:d},[g,u,d]),v=!!g,[y,b]=Yn(_),{available:x,currentCode:S,configuredProviderId:C,selectLanguage:w,selecting:T}=Tn(a),[E,D]=(0,Q.useState)(!1),O=x&&y===_&&(Jr[y]?.provider===C||!!g&&!Yr[g]),[k,A]=(0,Q.useState)(``),[j,M]=(0,Q.useState)(!1),[ee,N]=(0,Q.useState)(!1);(0,Q.useEffect)(()=>{let e=W(tt,d);e===`macos-native`&&!u.some(t=>t.id===e)&&G(tt,d)},[u,d]);let F=(0,Q.useMemo)(()=>u.find(e=>e.id===y)??u[0],[u,y]),I=F.apiKeyPlaceholder!==void 0;(0,Q.useEffect)(()=>{M(W(gt+y,``).length>0),A(``)},[y]);let L=(0,Q.useMemo)(()=>{let e=y!==_,t=k.trim().length>0;return e||t},[y,_,k]),z=(0,Q.useCallback)(async()=>{let e=k.trim();G(tt,y),e.length>0&&G(gt+y,e);let t=Jr[y];N(!0);try{if(t?.credentialService){let n=e.length>0?e:W(gt+y,``);if(n.length>0){let{response:e}=await jt({path:{assistant_id:a},body:{service:t.credentialService,field:`api_key`,value:n,label:`${F.displayName} API Key`},throwOnError:!1});if(!e?.ok)throw Error(`Failed to store API key (HTTP ${e?.status??`?`})`)}}if(t&&(y!==_||!v)||g===`vellum`&&y!==`vellum`){let e=t?.provider??Xr,{response:n}=await Et({path:{assistant_id:a},body:{services:{stt:{provider:e,mode:e===`vellum`?`managed`:`your-own`}}},throwOnError:!1});if(!n?.ok)throw Error(`Failed to save configuration (HTTP ${n?.status??`?`})`)}return e.length>0&&M(!0),A(``),c.invalidateQueries({queryKey:Jt({path:{assistant_id:a}})}),V.success(l(`sttProviderForm.saveSuccess`)),!0}catch(e){return V.error(e instanceof Error?e.message:l(`sttProviderForm.saveFailed`)),!1}finally{N(!1)}},[a,y,k,F,_,v,g,c,l]);(0,Q.useEffect)(()=>{r?.({hasChanges:L,saving:ee,save:z})},[r,L,ee,z]);let B=(0,Q.useCallback)(()=>{G(gt+y,``),M(!1),A(``)},[y]),H=j?l(`sttProviderForm.apiKeyPlaceholderReplace`):F.apiKeyPlaceholder;return(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:l(`sttProviderForm.providerLabel`)}),(0,$.jsx)(U,{value:y,onChange:b,options:u.map(e=>({value:e.id,label:e.displayName})),"aria-label":l(`sttProviderForm.providerAriaLabel`)})]}),O&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:l(`sttProviderForm.spokenLanguage`)}),(0,$.jsx)(dt,{"aria-label":l(`sttProviderForm.spokenLanguage`),"aria-haspopup":`dialog`,onClick:()=>D(!0),value:wn(S,C)}),(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:l(`sttProviderForm.spokenLanguageApplies`)}),(0,$.jsx)(Pn,{open:E,onOpenChange:D,title:l(`sttProviderForm.spokenLanguage`),currentCode:S,configuredProviderId:C,selectLanguage:w,selecting:T})]}),I&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:l(`sttProviderForm.apiKeyLabel`)}),(0,$.jsx)(R,{type:`password`,value:k,onChange:e=>A(e.target.value),placeholder:H,fullWidth:!0})]}),F.setupWarning&&(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(P,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-[var(--system-mid-strong)]`}),(0,$.jsx)(`span`,{children:F.setupWarning})]}),!n&&F.credentialsGuide&&(0,$.jsx)(Un,{guide:F.credentialsGuide}),y===`vellum`&&(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:l(`sttProviderForm.vellumTranscription`)}),(!t||j)&&(0,$.jsxs)(`div`,{className:`flex items-center justify-end gap-2`,children:[!t&&(0,$.jsx)(Vn,{onClick:z,disabled:!L||ee}),j&&(0,$.jsx)(Hn,{onClick:B})]})]})}function Qr(){let{t:e}=o(`settings`);return(0,$.jsx)(Ln,{title:e(`speechToTextCard.title`),subtitle:e(`speechToTextCard.subtitle`),children:(0,$.jsx)(Zr,{})})}async function $r(e){let{provider:t,apiKey:n,voiceId:r,text:i}=e;if(n.trim().length===0)return{kind:`error`,message:`Save an API key for this provider first.`};try{return t===`elevenlabs`?await ei(n,r,i):t===`deepgram`?await ti(n,i):t===`fish-audio`?{kind:`unsupported`,message:`Fish Audio TTS is only supported in the desktop app today. Use ElevenLabs or Deepgram to test from the browser.`}:t===`xai`?{kind:`unsupported`,message:`xAI TTS is only supported in the desktop app today. Use ElevenLabs or Deepgram to test from the browser.`}:{kind:`unsupported`,message:`TTS testing for "${t}" is not supported from the browser yet.`}}catch(e){return{kind:`error`,message:e instanceof Error?e.message:`Failed to reach the TTS provider.`}}}async function ei(e,t,n){let r=t.trim();if(r.length===0)return{kind:`error`,message:`Enter and save a Voice ID before testing ElevenLabs.`};let i=await fetch(`https://api.elevenlabs.io/v1/text-to-speech/${encodeURIComponent(r)}?output_format=mp3_44100_128`,{method:`POST`,headers:{"xi-api-key":e,"Content-Type":`application/json`,Accept:`audio/mpeg`},body:JSON.stringify({text:n,model_id:`eleven_turbo_v2_5`})});return i.ok?{kind:`audio`,blob:await i.blob()}:{kind:`error`,message:await ni(i,`ElevenLabs rejected the request.`)}}async function ti(e,t){let n=await fetch(`https://api.deepgram.com/v1/speak?model=aura-2-thalia-en`,{method:`POST`,headers:{Authorization:`Token ${e}`,"Content-Type":`application/json`,Accept:`audio/mpeg`},body:JSON.stringify({text:t})});return n.ok?{kind:`audio`,blob:await n.blob()}:{kind:`error`,message:await ni(n,`Deepgram rejected the request.`)}}async function ni(e,t){try{let n=await e.text();if(n.length===0)return`${t} (HTTP ${e.status})`;try{let e=JSON.parse(n);if(e&&typeof e==`object`&&`detail`in e&&typeof e.detail==`string`)return e.detail;if(e&&typeof e==`object`&&`message`in e&&typeof e.message==`string`)return e.message}catch{}return n.slice(0,200)}catch{return`${t} (HTTP ${e.status})`}}function ri({assistantId:e,value:t,onChange:n,className:r}){let{t:i}=o(),[a,s]=(0,Q.useState)(!1),{voices:c}=Sn(e);if(c.length===0)return null;let l=c.find(e=>e.model===t)??c[0];return(0,$.jsxs)(L.Root,{open:a,onOpenChange:s,children:[(0,$.jsx)(L.Trigger,{asChild:!0,children:(0,$.jsx)(dt,{"aria-label":i(`voicePickerField.ariaLabel`),value:l?xn(l.description):i(`voicePickerField.selectVoice`),className:r})}),(0,$.jsx)(L.Content,{side:`bottom`,align:`start`,className:`w-[var(--radix-popover-trigger-width)] p-1`,children:(0,$.jsx)(Cn,{assistantId:e,value:t,onChange:n,onSelect:()=>s(!1),showSource:!0,autoScrollToSelected:!0})})]})}var ii={elevenlabs:`voiceId`,"fish-audio":`referenceId`,xai:`voiceId`};function ai({assistantId:e,hideSaveButton:t=!1,hideCredentialsGuide:n=!1,onSaveStateChange:r}={}){let{t:i}=o(),a=En(),s=e??a,c=ne.use.name()??`your assistant`,l=It(),d=p(),{data:f}=m({...Ht({path:{assistant_id:s}}),enabled:l,staleTime:1/0}),h=(0,Q.useMemo)(()=>{let e=f?.providers;if(!e)return bt;if(e.some(e=>e.id===`vellum`))return e;let t=bt.find(e=>e.id===`vellum`);return t?[t,...e]:e},[f]),{data:g}=m({...Gt({path:{assistant_id:s}}),enabled:l,staleTime:3e4}),_=g?.services?.tts,v=_?.mode===`managed`?`vellum`:_?.provider,y=`elevenlabs`,b=(0,Q.useMemo)(()=>v??W(`vellum:voice:ttsProvider`,y),[v,y]),x=!!v,[S,C]=Yn(b),[w,T]=(0,Q.useState)(``),[E,D]=(0,Q.useState)(``),[k,A]=(0,Q.useState)(``),[j,M]=(0,Q.useState)(!1),[ee,N]=(0,Q.useState)(!1),[P,F]=(0,Q.useState)(!1),{voices:I,defaultModel:L,fetched:z}=bn(s,{enabled:S===`vellum`}),B=_?.providers?.vellum?.model??L??``,[H,te]=Yn(B),K=I.find(e=>e.model===H)??I[0],[re,ie]=(0,Q.useState)(null),q=I.some(e=>e.model===B),J=re??(z&&B!==``&&!q),Y=(0,Q.useMemo)(()=>h.find(e=>e.id===S)??h[0],[S,h]),X=S===`vellum`&&Y.supportsVoiceSelection&&H.trim()!==``&&H.trim()!==B,ae=(0,Q.useCallback)(e=>{let t=W(lt+e,``),n=W(nt+e,``);M(t.length>0),D(n),A(n),T(``)},[]);(0,Q.useEffect)(()=>{ae(S)},[S,ae]);let Z=(0,Q.useMemo)(()=>{let e=S!==b,t=w.trim().length>0,n=E.trim()!==k;return e||t||n||X},[S,b,w,E,k,X]),oe=(0,Q.useCallback)(async()=>{let e=w.trim(),t=E.trim(),n=Y.id;G(vt,n),e.length>0&&G(lt+n,e),G(nt+n,t);let r=e.length>0?e:W(lt+n,``),a=ii[n];F(!0);try{if(r.length>0){let{response:e}=await jt({path:{assistant_id:s},body:{service:n,field:`api_key`,value:r,label:`${Y.displayName} API Key`},throwOnError:!1});if(!e?.ok)throw Error(`Failed to store API key (HTTP ${e?.status??`?`})`)}let e={...S!==b||!x?{provider:n,mode:n===`vellum`?`managed`:`your-own`}:{},...a?{providers:{[n]:{[a]:t}}}:{},...X?{providers:{vellum:{model:H.trim()}}}:{}};if(Object.keys(e).length>0){let{response:t}=await Et({path:{assistant_id:s},body:{services:{tts:e}},throwOnError:!1});if(!t?.ok)throw Error(`Failed to save configuration (HTTP ${t?.status??`?`})`)}return M(r.length>0),A(t),T(``),d.invalidateQueries({queryKey:Jt({path:{assistant_id:s}})}),V.success(i(`ttsProviderForm.saved`)),!0}catch(e){return V.error(e instanceof Error?e.message:i(`ttsProviderForm.saveFailed`)),!1}finally{F(!1)}},[s,S,H,X,w,E,Y,b,x,d,i]);(0,Q.useEffect)(()=>{r?.({hasChanges:Z,saving:P,save:oe})},[r,Z,P,oe]);let se=(0,Q.useCallback)(()=>{G(lt+S,``),M(!1),T(``)},[S]),ce=(0,Q.useCallback)(async()=>{N(!0);try{let e=W(lt+S,``),t=w.trim(),n=t.length>0?t:e;if(n.length===0){V.error(i(`ttsProviderForm.apiKeyRequired`));return}let r=W(nt+S,``),a=E.trim(),o=await $r({provider:S,apiKey:n,voiceId:a.length>0?a:r,text:`Hey! It's ${c}. How does this sound?`});if(o.kind!==`audio`){V.error(o.message);return}let s=URL.createObjectURL(o.blob);try{let e=new Audio(s);await e.play(),await new Promise(t=>{e.onended=()=>t(),e.onerror=()=>t()})}finally{URL.revokeObjectURL(s)}}finally{N(!1)}},[c,w,S,E,i]),le=j?`•••••••• (Enter a new key to replace)`:Y.apiKeyPlaceholder,ue=S===`vellum`,de=ue&&Y.supportsVoiceSelection,fe=(0,$.jsxs)(u,{variant:`link`,size:`compact`,className:`inline-flex h-auto items-center gap-1 px-0 underline [--vbtn-fg:var(--content-tertiary)]`,onClick:()=>{ie(!1),I.some(e=>e.model===H)||te(L||I[0]?.model||``)},children:[(0,$.jsx)(O,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),i(`ttsProviderForm.chooseFromCatalog`)]}),pe=de&&J&&I.length>0?fe:null;return(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`ttsProviderForm.provider`)}),(0,$.jsx)(U,{value:S,onChange:C,options:h.map(e=>({value:e.id,label:e.displayName})),"aria-label":i(`ttsProviderForm.providerAriaLabel`)})]}),!ue&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`ttsProviderForm.apiKey`)}),(0,$.jsx)(R,{type:`password`,value:w,onChange:e=>T(e.target.value),placeholder:le,fullWidth:!0})]}),de&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`ttsProviderForm.voice`)}),J?(0,$.jsx)(R,{type:`text`,value:H,onChange:e=>te(e.target.value),placeholder:i(`ttsProviderForm.voiceIdPlaceholder`),"aria-label":i(`ttsProviderForm.customVoiceIdAriaLabel`),fullWidth:!0}):K?(0,$.jsx)(ri,{assistantId:s,value:H,onChange:te}):z&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:i(`ttsProviderForm.noManagedVoices`)})]}),Y.supportsVoiceSelection&&!ue&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`ttsProviderForm.voiceId`)}),(0,$.jsx)(R,{type:`text`,value:E,onChange:e=>D(e.target.value),placeholder:i(`ttsProviderForm.voiceIdPlaceholder`),fullWidth:!0})]}),!n&&!ue&&(0,$.jsx)(Un,{guide:Y.credentialsGuide}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[!ue&&(0,$.jsx)(u,{variant:`outlined`,onClick:ce,disabled:ee,children:i(ee?`ttsProviderForm.testing`:`ttsProviderForm.test`)}),(0,$.jsxs)(`div`,{className:`ml-auto flex items-center gap-3`,children:[pe,!t&&(0,$.jsx)(Vn,{onClick:oe,disabled:!Z||P}),j&&!ue&&(0,$.jsx)(Hn,{onClick:se})]})]})]})}function oi(){let{t:e}=o(`settings`);return(0,$.jsx)(Ln,{id:`text-to-speech`,title:e(`textToSpeechCard.title`),subtitle:e(`textToSpeechCard.subtitle`),children:(0,$.jsx)(ai,{})})}var si=`default`;function ci(){let{t:e}=o(`settings`),t=En(),n=p(),{data:r}=m({...Gt({path:{assistant_id:t}}),staleTime:3e4}),a=qt({onSuccess:e=>{$t(n,{path:{assistant_id:t}},e)}}),s=Jn(),c=(0,Q.useMemo)(()=>r?r.services?.[`web-fetch`]?.provider||W(`vellum:ai:webFetchProvider`,si):W(rt,si),[r]),l=(0,Q.useMemo)(()=>r?.services?.[`web-fetch`]?.apiBase??``,[r]),[u,d]=(0,Q.useState)(!1),[f,h]=Yn(c),[g,_]=Yn(l),[v,y]=(0,Q.useState)(``),b=Y.has(f),x=ke.has(f),{hasStoredCredential:S}=He({assistantId:t,credentialKind:`api_key`,credentialName:f,enabled:x}),C=v.trim().length>0,w=g.trim(),T=b&&w.length>0,E=f!==c||b&&w!==l.trim(),D=u||x&&!T&&!S&&!C||!E&&!C,O=st(se[f]??e(`webFetchCard.apiKeyPlaceholder`),S),A=le[f]??``,j=(0,Q.useCallback)(async()=>{d(!0);let r=v.trim(),o=x&&r.length>0;try{o&&await s(f,r),await a.mutateAsync({path:{assistant_id:t},body:{services:{"web-fetch":{provider:f,...b?{apiBase:w}:{}}}}}).catch(t=>{throw V.error(e(`webFetchCard.configUpdateFailedToast`)),i(t,{context:`patch_daemon_config`}),t})}catch{d(!1);return}d(!1);try{if(G(rt,f),o){let e=me(f);e&&G(e,r);let i=Be(t,`api_key`,f);n.setQueryData(i,!0),n.invalidateQueries({queryKey:i}),y(``)}V.success(e(`webFetchCard.savedToast`))}catch(t){i(t,{context:`settings-ai-web-fetch-persist-local`}),V.error(e(`webFetchCard.localPreferencesFailedToast`))}},[x,a,s,n,t,v,f,b,w,e]),M=(0,Q.useCallback)(()=>{let e=me(f);e&&K(e),y(``),_(``),h(si),G(rt,si)},[f,h,_]);return(0,$.jsx)(Ln,{id:`web-fetch`,title:e(`webFetchCard.title`),subtitle:e(`webFetchCard.subtitle`),children:(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e(`webFetchCard.providerLabel`)}),(0,$.jsx)(U,{value:f,onChange:h,options:X.map(e=>({value:e,label:ae[e]??e}))})]}),b&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(R,{label:e(`webFetchCard.apiBaseLabel`),type:`url`,value:g,onChange:e=>_(e.target.value),placeholder:A||e(`webFetchCard.apiBasePlaceholder`),fullWidth:!0}),A?(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e(`webFetchCard.apiBaseHint`,{defaultBase:A})}):null]}),x&&(0,$.jsx)(R,{label:e(`webFetchCard.apiKeyLabel`),type:`password`,value:v,onChange:e=>y(e.target.value),placeholder:O,fullWidth:!0}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Vn,{onClick:j,disabled:D}),u&&(0,$.jsx)(k,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`}),x&&(0,$.jsx)(Hn,{onClick:M,filled:!0})]})]})})}var li=`0.10.12`;function ui(){return St(li)}function di(){let{t:e}=o(`settings`),t=En(),n=p(),r=It(),{data:a}=m({...Gt({path:{assistant_id:t}}),enabled:r,staleTime:3e4}),s=qt({onSuccess:e=>{$t(n,{path:{assistant_id:t}},e)}}),c=Jn(),l=(0,Q.useMemo)(()=>{if(!a)return W(pt,`inference-provider-native`);let e=a.services?.[`web-search`];return(e?.mode===`managed`&&e?.provider!==`inference-provider-native`?`vellum`:e?.provider)||W(`vellum:ai:webSearchProvider`,`inference-provider-native`)},[a]),u=(0,Q.useMemo)(()=>a?.services?.[`web-search`]?.apiBase??``,[a]),[d,f]=(0,Q.useState)(!1),[h,g]=Yn(l),[_,v]=Yn(u),[y,b]=(0,Q.useState)(``),x=he.has(h),S=ue.has(h),C=Oe.has(h),{hasStoredCredential:w}=He({assistantId:t,credentialKind:`api_key`,credentialName:h,enabled:S}),T=y.trim().length>0,E=_.trim(),D=x&&E.length>0,O=h!==l||x&&E!==u.trim(),A=d||S&&!C&&!D&&!w&&!T||!O&&!T,j=st(ce[h]??e(`webSearchCard.apiKeyPlaceholder`),w),M=je[h]??``,ee=(0,Q.useCallback)(async()=>{f(!0);let r=y.trim(),a=we(h),o=S&&r.length>0;try{o&&await c(h,r),await Ct();let n=h===`vellum`?ui()?{provider:`vellum`,mode:`managed`}:{mode:`managed`}:{provider:h,mode:`your-own`,...x?{apiBase:E}:{}};await s.mutateAsync({path:{assistant_id:t},body:{services:{"web-search":n}}}).catch(t=>{throw V.error(e(`webSearchCard.configUpdateFailedToast`)),i(t,{context:`patch_daemon_config`}),t})}catch{f(!1);return}f(!1);try{if(G(pt,h),o){a&&G(a,r);let e=Be(t,`api_key`,h);n.setQueryData(e,!0),n.invalidateQueries({queryKey:e}),b(``)}V.success(e(`webSearchCard.savedToast`))}catch(t){i(t,{context:`settings-ai-web-search-persist-local`}),V.error(e(`webSearchCard.localPreferencesFailedToast`))}},[S,s,c,n,t,y,h,x,E,e]),N=(0,Q.useCallback)(()=>{let e=we(h);e&&K(e),b(``),v(``),g(`inference-provider-native`),G(pt,`inference-provider-native`)},[h,g,v]);return(0,$.jsx)(Ln,{title:e(`webSearchCard.title`),subtitle:e(`webSearchCard.subtitle`),children:(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e(`webSearchCard.providerLabel`)}),(0,$.jsx)(U,{"aria-label":e(`webSearchCard.providerAriaLabel`),value:h,onChange:g,options:Ae.map(e=>({value:e,label:fe[e]??e}))})]}),h===`vellum`&&(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`webSearchCard.vellumNote`)}),x&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(R,{label:e(`webSearchCard.apiBaseLabel`),type:`url`,value:_,onChange:e=>v(e.target.value),placeholder:M||e(`webSearchCard.apiBasePlaceholder`),fullWidth:!0}),M?(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e(`webSearchCard.apiBaseHint`,{defaultBase:M})}):null]}),S&&(0,$.jsx)(R,{label:e(`webSearchCard.apiKeyLabel`),type:`password`,value:y,onChange:e=>b(e.target.value),placeholder:j,fullWidth:!0}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Vn,{onClick:ee,disabled:A}),d&&(0,$.jsx)(k,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`}),S&&(0,$.jsx)(Hn,{onClick:N,filled:!0})]})]})})}function fi(){let e=En(),t=gn(),[n,r]=(0,Q.useState)(null);(0,Q.useEffect)(()=>{let e=window.location.hash.slice(1);e&&requestAnimationFrame(()=>{document.getElementById(e)?.scrollIntoView({block:`start`})})},[]);let i=(0,$.jsxs)(`div`,{className:`min-h-0 flex-1 space-y-5 overflow-y-auto`,children:[(0,$.jsx)(zn,{}),(0,$.jsx)(kr,{panel:n,onOpenPanel:r,onClosePanel:()=>r(null)}),(0,$.jsx)(di,{}),(0,$.jsx)(ci,{}),(0,$.jsx)(qn,{}),(0,$.jsx)($n,{}),(0,$.jsx)(oi,{}),(0,$.jsx)(Qr,{})]}),a=`${e??`none`}:${n?.kind===`profile`?`profile:${n.name}`:n?.kind===`provider`?`provider:${n.name}`:n?.kind??`closed`}`,o=n?.kind===`provider`||n?.kind===`add-provider`,s=n!=null&&e?n.kind===`overrides`?(0,$.jsx)(Wr,{assistantId:e,onClose:()=>r(null)},a):o?(0,$.jsx)(qr,{assistantId:e,connectionName:n.kind===`provider`?n.name:null,onClose:()=>r(null)},a):(0,$.jsx)(Mr,{assistantId:e,profileName:n.kind===`profile`?n.name:null,onClose:()=>r(null)},a):null;return s&&t?(0,$.jsx)(kn,{children:s}):s?(0,$.jsx)(An,{storageKey:`aiSettingsDetailDrawerWidth`,detailKey:a,section:i,detail:s}):i}export{fi as AiPage};
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{d as t,h as n,k as r,l as i,m as a,v as o}from"./i18n-BtV8MCsZ.js";import{t as s}from"./react-DJZBPgpf.js";import{G as c,n as l,t as u}from"./button-B1kEAcLt.js";import{d,h as f}from"./chunk-5KNZJZUH-CPFsMQoz.js";import{n as p}from"./QueryClientProvider-BPZM68-A.js";import{t as m}from"./useQuery-BtL9k7Sh.js";import{t as h}from"./useMutation-Cl7cazkm.js";import{t as g}from"./jsx-runtime-COOF1INC.js";import{t as _}from"./typography-SdxpXI_m.js";import{o as v,t as y}from"./list-row-BvCm9O6y.js";import{t as b}from"./check-bDVYejGM.js";import{t as x}from"./circle-alert-BaeJJrSp.js";import{t as S}from"./circle-check-CnoFVsRZ.js";import{t as C}from"./menu-DPM2p9S5.js";import{t as w}from"./clock-HLo0irRS.js";import{t as T}from"./ellipsis-vertical-BJaOQqv_.js";import{t as E}from"./external-link-cVsOyP-B.js";import{t as D}from"./info-C-HjpKAE.js";import{t as O}from"./list-Dtwz1hOH.js";import{t as k}from"./loader-circle-DZ65N8bz.js";import{t as A}from"./mail-CqdA6Y_p.js";import{t as j}from"./checkbox--DYEubRE.js";import{t as M}from"./plus-rgqTRjE1.js";import{t as ee}from"./search-DYHr3LM9.js";import{t as N}from"./trash-2-CVpEwOYZ.js";import{t as P}from"./triangle-alert-B6J57Xfo.js";import{t as F}from"./notice-BHeYlKvv.js";import{t as I}from"./tag-DAsImP7W.js";import{t as L}from"./popover-GOTwOlgQ.js";import{t as R}from"./input-ChbJ2nzd.js";import{t as z}from"./toggle-CdhdS_iC.js";import{t as B}from"./modal-_49mDK_d.js";import{n as V}from"./toast-BKrDuNtu.js";import{t as H}from"./confirm-dialog-EPYSBP_B.js";import{t as U}from"./select-DmdFZj4l.js";import{t as te}from"./skeleton-BV6nOVEl.js";import{i as W,l as G,o as K}from"./local-settings-D9SNRv4p.js";import{t as ne}from"./assistant-identity-store-DBkGjqzV.js";import{t as re}from"./Trans-CBhhVbOk.js";import{a as ie,r as q,s as J}from"./llm-model-catalog-Bk0q_XG4.js";import{C as Y,D as X,E as ae,I as Z,L as oe,O as se,S as ce,T as le,_ as ue,a as de,b as fe,c as pe,f as me,g as he,h as ge,i as _e,j as ve,k as ye,l as be,m as xe,n as Se,o as Ce,p as we,r as Te,s as Ee,t as De,v as Oe,w as ke,x as Ae,y as je}from"./profile-pickers-D8XVv50L.js";import{A as Me,B as Ne,C as Pe,D as Fe,E as Ie,F as Le,G as Re,H as ze,I as Be,K as Ve,L as He,M as Ue,N as We,O as Ge,P as Ke,R as qe,S as Je,U as Ye,V as Xe,W as Ze,_ as Qe,a as $e,b as et,c as tt,d as nt,f as rt,g as it,h as at,i as ot,j as st,k as ct,l as lt,m as ut,n as dt,o as ft,p as pt,q as mt,r as ht,s as gt,t as _t,u as vt,x as yt,y as bt,z as xt}from"./use-sticky-profiles-DpkWeMmN.js";import{n as St,o as Ct,r as wt}from"./utils-CAI1IDgW.js";import{Jt as Tt,M as Et,Mn as Dt,Xt as Ot,Zt as kt,gr as At,gt as jt,pt as Mt}from"./sdk.gen-BluU0h_N.js";import{f as Nt}from"./routes-C6ueuiMd.js";import{i as Pt}from"./platform-detection-DUeD4WFO.js";import{i as Ft}from"./use-platform-gate-s29eeyq-.js";import{r as It}from"./use-is-org-ready-B6oCKWeF.js";import{Dt as Lt,Et as Rt,Q as zt,X as Bt,Y as Vt,Yt as Ht,Z as Ut,_ as Wt,d as Gt,dn as Kt,en as qt,f as Jt,g as Yt,h as Xt,kt as Zt,m as Qt,p as $t,v as en}from"./react-query.gen-C_GLKG7m.js";import{c as tn,d as nn,f as rn,g as an,h as on,l as sn,m as cn,mt as ln,o as un,p as dn,s as fn,u as pn,v as mn,y as hn}from"./react-query.gen-C5widOeH.js";import{n as gn}from"./use-is-mobile-DYVRtRin.js";import{n as _n,t as vn}from"./use-supports-inference-profiles-DS2ZLoNc.js";import{t as yn}from"./platform-login-notice-B2ZwcEYp.js";import{n as bn}from"./use-voice-sample-preview-B8HUywXz.js";import{c as xn,l as Sn,o as Cn,r as wn,t as Tn}from"./use-stt-language-selection-BWJdaCRu.js";import{t as En}from"./use-active-assistant-id-lxYJu99R.js";import{t as Dn}from"./detail-shell-CNYbfTO7.js";import{t as On}from"./detail-card-D9EAxXI8.js";import{n as kn,t as An}from"./detail-drawer-D-CPwyBO.js";import{a as jn}from"./schedules-BZzuRuQs.js";import{t as Mn}from"./use-platform-assistant-id-DwSyMaOn.js";import{t as Nn}from"./environment-store-DKl9RR50.js";import{t as Pn}from"./stt-language-picker-modal-CmeO8yxD.js";var Q=e(s(),1),$=g();function Fn({mode:e,onChange:t}){let{t:n}=o(`settings`);return(0,$.jsx)(`div`,{className:`max-w-[280px]`,children:(0,$.jsx)(v,{ariaLabel:n(`sharedUi.modeToggleAriaLabel`),value:e,onChange:t,items:[{value:`managed`,label:n(`sharedUi.managedLabel`)},{value:`your-own`,label:n(`sharedUi.yourOwnLabel`)}]})})}function In({id:e,title:t,subtitle:n,mode:r,onModeChange:i,children:a}){return(0,$.jsxs)(On,{id:e,title:t,subtitle:n,accessory:(0,$.jsx)(Fn,{mode:r,onChange:i}),children:[(0,$.jsx)(`div`,{className:`h-px bg-[var(--surface-active)]`}),(0,$.jsx)(`div`,{className:`mt-4`,children:a})]})}function Ln({id:e,title:t,subtitle:n,children:r}){return(0,$.jsxs)(On,{id:e,title:t,subtitle:n,children:[(0,$.jsx)(`div`,{className:`h-px bg-[var(--surface-active)]`}),(0,$.jsx)(`div`,{className:`mt-4`,children:r})]})}function Rn({children:e}){return(0,$.jsxs)(`a`,{href:`https://www.vellum.ai/docs/pricing`,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-[var(--primary-base)] hover:underline`,children:[e,(0,$.jsx)(E,{className:`h-3.5 w-3.5`})]})}function zn(){return(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-base)] bg-[var(--surface-base)] px-4 py-2.5`,children:[(0,$.jsx)(D,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-tertiary)]`}),(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:(0,$.jsx)(re,{i18nKey:`sharedUi.managedServicesBanner`,ns:`settings`,components:{link:(0,$.jsx)(Rn,{})}})})]})}function Bn({status:e,message:t,isLoading:n}){let{t:r}=o(`settings`);return n?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2.5 py-0.5 text-body-small-default text-[var(--content-quiet)]`,children:[(0,$.jsx)(k,{className:`h-3 w-3 animate-spin`}),r(`sharedUi.checkingDomain`)]}):e?e===`verified`?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-positive-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-positive-strong)]`,title:r(`sharedUi.verifiedTitle`),children:[(0,$.jsx)(b,{className:`h-3 w-3`}),r(`sharedUi.domainVerified`)]}):e===`pending`||e===`not_started`?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-mid-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-mid-strong)]`,title:r(`sharedUi.verifyingTitle`),children:[(0,$.jsx)(w,{className:`h-3 w-3`}),r(`sharedUi.verifyingDomain`)]}):(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-negative-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-negative-strong)]`,title:r(`sharedUi.failedTitle`),children:[(0,$.jsx)(x,{className:`h-3 w-3`}),r(`sharedUi.verificationFailed`)]}):(0,$.jsx)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2.5 py-0.5 text-body-small-default text-[var(--content-quiet)]`,title:r(`sharedUi.unknownStatusTitle`),children:r(`sharedUi.unknownStatus`)})}function Vn({onClick:e,disabled:t}){let{t:n}=o();return(0,$.jsx)(u,{onClick:e,disabled:t,children:n(`serviceFormControls.save`)})}function Hn({onClick:e,filled:t=!1}){let{t:n}=o();return(0,$.jsx)(u,{variant:t?`danger`:`dangerGhost`,onClick:e,children:n(`serviceFormControls.reset`)})}function Un({guide:e}){return(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(D,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-[var(--system-positive-strong)]`}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsx)(`span`,{children:e.description}),(0,$.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[e.linkLabel,(0,$.jsx)(E,{className:`h-3 w-3`})]})]})]})}function Wn({subdomain:e,onSubdomainChange:t,domainSuffix:n,subdomainPlaceholder:r=`my-assistant`,disabled:i,autoFocus:a,prefix:s,error:c,locked:l,lockedMessage:u}){let{t:d}=o(`settings`);return(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`div`,{className:`flex h-9 w-full items-center rounded-md border bg-[var(--field-bg)] text-body-medium-lighter transition-[border-color] duration-150 ${c?`border-[var(--system-negative-strong)]`:`border-[var(--field-border)] focus-within:border-[var(--border-active)]`}`,children:[s,(0,$.jsx)(`input`,{value:e,onChange:e=>t(e.target.value.toLowerCase().trim()),disabled:i||l,readOnly:l,autoFocus:a,placeholder:r,"aria-label":d(`domainField.subdomainAriaLabel`),"aria-invalid":!!c,className:`h-full min-w-0 flex-1 bg-transparent ${s?`pl-1.5`:`pl-3`} pr-1 text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none disabled:cursor-not-allowed disabled:opacity-60`}),(0,$.jsxs)(`span`,{className:`shrink-0 pr-3 font-mono text-[var(--content-secondary)]`,children:[`.`,n]})]}),c&&(0,$.jsx)(`p`,{className:`mt-1.5 text-body-small-default text-[var(--system-negative-strong)]`,children:c}),l&&u&&(0,$.jsx)(`p`,{className:`mt-1.5 text-body-small-default text-[var(--content-tertiary)]`,children:u})]})}var Gn=`rounded bg-[var(--surface-active)] px-1 py-0.5 font-mono text-[0.9em]`;function Kn({assistantId:e,assistantHandle:t,emailRootDomain:r}){let{t:a}=o(`settings`),s=p(),c=d(),[l,g]=f(),[_,v]=(0,Q.useState)(``),[y,b]=(0,Q.useState)(!1),[x,S]=(0,Q.useState)(null),[C,w]=(0,Q.useState)(``),[T,E]=(0,Q.useState)(null),[D,O]=(0,Q.useState)(!1),[j,M]=(0,Q.useState)(!1),[ee,P]=(0,Q.useState)(!1);(0,Q.useEffect)(()=>{y||!t||_||(v(t),b(!0))},[t,y,_]);let I=m({...ln(),enabled:!0}),L=I.data,R=L?.entitlements,z=R?.managed_email===!0,B=!!R&&!z,U=!L&&I.isError&&!I.isFetching,te=m({...tn({path:{assistant_id:e}}),enabled:!B}),W=m({...dn({path:{assistant_id:e}}),enabled:!B}),G=te.data?.results?.[0],K=W.data?.results?.[0],ne=G?`${G.subdomain}.${r}`:null,ie=m({...on({path:{assistant_id:e,id:K?.id??``}}),enabled:!!K?.id,refetchOnWindowFocus:!1}),q=m({...pn({path:{assistant_id:e,id:G?.id??``}}),enabled:!!G?.id,refetchInterval:e=>{let t=e.state.data?.status;return t===`verified`||t===`failed`?!1:1e4},refetchOnWindowFocus:!0});(0,Q.useEffect)(()=>{l.get(`release`)!==`1`||!G||K||(M(!0),g(e=>{let t=new URLSearchParams(e);return t.delete(`release`),t},{replace:!0}))},[K,G,l,g]);let J=h(un()),Y=h(fn()),X=h(nn()),ae=h(rn()),Z=(0,Q.useCallback)(()=>{let t={assistant_id:e};s.invalidateQueries({queryKey:sn({path:t})}),s.invalidateQueries({queryKey:cn({path:t})}),K?.id&&s.invalidateQueries({queryKey:an({path:{...t,id:K.id}})}),s.invalidateQueries({queryKey:hn()})},[K?.id,e,s]),oe=(0,Q.useCallback)(async()=>{let t=_.trim().toLowerCase();if(!t){S(a(`emailManagedContent.enterSubdomainError`));return}O(!1);try{await J.mutateAsync({path:{assistant_id:e},body:{subdomain:t}}),v(``),S(null),Z(),V.success(a(`emailManagedContent.domainRegisteredToast`,{domain:`${t}.${r}`}))}catch(e){S(n(e,void 0,a(`emailManagedContent.registerDomainFailedFallback`)))}},[e,r,Z,J,_,a]),se=(0,Q.useCallback)(async()=>{let t=C.trim().toLowerCase();if(!t){E(a(`emailManagedContent.enterUsernameError`));return}try{await X.mutateAsync({path:{assistant_id:e},body:{username:t}}),w(``),E(null),Z(),V.success(a(`emailManagedContent.emailCreatedToast`))}catch(e){E(n(e,void 0,a(`emailManagedContent.createEmailFailedFallback`)))}},[e,Z,X,C,a]),ce=(0,Q.useCallback)(async()=>{if(K?.id){P(!1);try{await ae.mutateAsync({path:{assistant_id:e,id:K.id}}),Z(),V.success(a(`emailManagedContent.emailRemovedToast`))}catch(e){i(e,{context:`email_address_delete`}),V.error(a(`emailManagedContent.emailRemoveFailedToast`))}}},[K?.id,e,ae,Z,a]),le=(0,Q.useCallback)(async()=>{if(!G?.id)return;if(K){V.error(a(`emailManagedContent.removeAddressFirstToast`));return}M(!1);let t=G.subdomain;try{await Y.mutateAsync({path:{assistant_id:e,id:G.id}}),v(t),Z(),V.success(a(`emailManagedContent.domainReleasedToast`))}catch(e){i(e,{context:`email_domain_release`}),V.error(a(`emailManagedContent.domainReleaseFailedToast`))}},[K,e,Y,G?.id,G?.subdomain,Z,a]);if(I.isLoading)return(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(k,{className:`h-4 w-4 animate-spin`}),a(`emailManagedContent.checkingSubscription`)]});if(B)return(0,$.jsx)(F,{tone:`info`,icon:(0,$.jsx)(A,{className:`h-4 w-4`,"aria-hidden":!0}),title:a(`emailManagedContent.upgradeNoticeTitle`),actions:(0,$.jsx)(u,{size:`compact`,onClick:()=>c(Nt.plans),children:a(`emailManagedContent.upgradeButton`)}),children:a(`emailManagedContent.upgradeNoticeBody`)});let ue=U?(0,$.jsx)(F,{tone:`warning`,title:a(`emailManagedContent.subscriptionWarningTitle`),actions:(0,$.jsx)(u,{size:`compact`,variant:`outlined`,onClick:()=>I.refetch(),children:a(`emailManagedContent.retry`)}),children:a(`emailManagedContent.subscriptionWarningBody`)}):null;return G?K?(0,$.jsxs)(`div`,{className:`space-y-4`,children:[ue,(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:a(`emailManagedContent.addressLabel`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`font-mono text-body-small-default text-[var(--content-default)]`,children:K.address}),(0,$.jsx)(Bn,{status:q.data?.status,message:q.data?.message,isLoading:q.isLoading}),(0,$.jsx)(u,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,$.jsx)(N,{}),onClick:()=>P(!0),disabled:ae.isPending,"aria-label":a(`emailManagedContent.removeEmailAriaLabel`)})]}),(0,$.jsx)(H,{open:ee,title:a(`emailManagedContent.removeEmailTitle`),message:(0,$.jsx)(re,{i18nKey:`emailManagedContent.removeEmailConfirmMessage`,ns:`settings`,values:{address:K.address},components:{code:(0,$.jsx)(`code`,{className:Gn})}}),confirmLabel:a(`emailManagedContent.removeConfirm`),destructive:!0,onConfirm:ce,onCancel:()=>P(!1)})]}),ie.data?.usage&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:a(`emailManagedContent.usageSummary`,{sent:ie.data.usage.sent_today,limit:ie.data.usage.daily_limit,received:ie.data.usage.received_today})})]}):(0,$.jsxs)(`div`,{className:`space-y-4`,children:[ue,(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:a(`emailManagedContent.domainLabel`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsxs)(`span`,{className:`font-mono text-body-small-default text-[var(--content-default)]`,children:[G.subdomain,`.`,r]}),(0,$.jsx)(Bn,{status:q.data?.status,message:q.data?.message,isLoading:q.isLoading}),(0,$.jsx)(u,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,$.jsx)(N,{}),onClick:()=>M(!0),disabled:Y.isPending,"aria-label":a(`emailManagedContent.releaseDomainAriaLabel`)})]}),(0,$.jsx)(H,{open:j,title:a(`emailManagedContent.releaseDomainTitle`),message:(0,$.jsx)(re,{i18nKey:`emailManagedContent.releaseDomainConfirmMessage`,ns:`settings`,values:{domain:`${G.subdomain}.${r}`},components:{code:(0,$.jsx)(`code`,{className:Gn})}}),confirmLabel:a(`emailManagedContent.releaseConfirm`),destructive:!0,onConfirm:le,onCancel:()=>M(!1)})]}),(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:a(`emailManagedContent.emailAddressLabel`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsxs)(`div`,{className:`flex h-9 min-w-0 flex-1 items-center rounded-md border bg-[var(--field-bg)] text-body-medium-lighter transition-[border-color] duration-150 ${T?`border-[var(--system-negative-strong)]`:`border-[var(--field-border)] focus-within:border-[var(--border-active)]`}`,children:[(0,$.jsx)(`input`,{value:C,onChange:e=>{w(e.target.value.toLowerCase()),T&&E(null)},placeholder:a(`emailManagedContent.emailUsernamePlaceholder`),"aria-label":a(`emailManagedContent.emailUsernameAriaLabel`),"aria-invalid":!!T,className:`h-full min-w-0 flex-1 bg-transparent pl-3 pr-1 text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none`}),(0,$.jsxs)(`span`,{className:`shrink-0 pr-3 font-mono text-[var(--content-secondary)]`,children:[`@`,ne]})]}),(0,$.jsx)(u,{onClick:se,disabled:X.isPending||!C.trim(),children:X.isPending?a(`emailManagedContent.creating`):a(`emailManagedContent.create`)})]}),T&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:T})]})]}):(0,$.jsxs)(`div`,{className:`space-y-3`,children:[ue,(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:a(`emailManagedContent.subdomainLabel`)}),(0,$.jsx)(Wn,{subdomain:_,onSubdomainChange:e=>{v(e),x&&S(null)},domainSuffix:r,subdomainPlaceholder:a(`emailManagedContent.subdomainExamplePlaceholder`),error:x}),(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:a(`emailManagedContent.subdomainHint`)}),(0,$.jsx)(u,{onClick:()=>O(!0),disabled:J.isPending||!_.trim(),children:J.isPending?a(`emailManagedContent.registering`):a(`emailManagedContent.register`)}),(0,$.jsx)(H,{open:D,title:a(`emailManagedContent.setSubdomainTitle`),message:(0,$.jsx)(re,{i18nKey:`emailManagedContent.setSubdomainConfirmMessage`,ns:`settings`,values:{subdomain:_.trim().toLowerCase()||a(`emailManagedContent.subdomainFallback`)},components:{code:(0,$.jsx)(`code`,{className:Gn})}}),confirmLabel:a(`emailManagedContent.confirm`),onConfirm:oe,onCancel:()=>O(!1)})]})}function qn(){let{t:e}=o(`settings`),n=En(),r=It(),{data:a}=m({...mn(),enabled:r}),s=a?.results?.[0]?.handle,c=Nn.use.emailRootDomain(),l=Ft(),[u,d]=(0,Q.useState)(()=>l===`gated`?`your-own`:xe(W(ot,`managed`),`managed`)),[f,p]=(0,Q.useState)(()=>{let e=W(ht,`resend`);return e===`mailgun`||e===`resend`?e:`resend`}),{platformAssistantId:h,error:g}=Mn(n,l===`full`&&u===`managed`),_=h??(g?n:null),v=m({queryKey:[`byoEmailCredential`,n,f],queryFn:async()=>{let{data:e}=await Mt({path:{assistant_id:n},body:{service:f,field:`api_key`},throwOnError:!0});return e},enabled:u===`your-own`||l===`gated`,staleTime:6e4,retry:t,meta:{errorContext:`byo_email_credential_check`}});(0,Q.useEffect)(()=>{v.error&&i(v.error,{context:`byo_email_credential_check`,bestEffort:!0})},[v.error]);let y=v.data?.hasSecret===!0,b=(0,Q.useCallback)(e=>{d(e),G(ot,e)},[]),x=(0,Q.useCallback)(()=>{G(ht,f),V.success(e(`emailServiceCard.saveSuccessToast`))},[f,e]),C=(0,Q.useMemo)(()=>ut.find(e=>e.id===f)??ut[0],[f]),w=(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(D,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-[var(--system-positive-strong)]`}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsx)(`span`,{children:(0,$.jsx)(re,{i18nKey:`emailServiceCard.setupInstructions`,ns:`settings`,values:{providerName:C.displayName,setupSkill:C.setupSkill},components:{code:(0,$.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 text-[12px]`})}})}),(0,$.jsxs)(`a`,{href:C.docsUrl,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[e(`emailServiceCard.openProvider`,{providerName:C.displayName}),(0,$.jsx)(E,{className:`h-3 w-3`})]})]})]}),T=(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e(`emailServiceCard.providerLabel`)}),(0,$.jsx)(U,{value:f,onChange:e=>{(e===`mailgun`||e===`resend`)&&p(e)},options:ut.map(e=>({value:e.id,label:e.displayName}))})]}),y?(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg border border-[var(--system-positive-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-default)]`,children:[(0,$.jsx)(S,{className:`h-4 w-4 shrink-0 text-[var(--system-positive-strong)]`}),(0,$.jsx)(`span`,{children:(0,$.jsx)(re,{i18nKey:`emailServiceCard.apiKeyConfigured`,ns:`settings`,values:{providerName:C.displayName,setupSkill:C.setupSkill},components:{code:(0,$.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 text-[12px]`})}})})]}),(0,$.jsxs)(`a`,{href:C.docsUrl,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-body-small-default text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[e(`emailServiceCard.openProvider`,{providerName:C.displayName}),(0,$.jsx)(E,{className:`h-3 w-3`})]})]}):w,(0,$.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,$.jsx)(Vn,{onClick:x,disabled:!1})})]});return l===`gated`?(0,$.jsx)(Ln,{id:`email`,title:e(`emailServiceCard.title`),subtitle:e(`emailServiceCard.subtitle`),children:T}):(0,$.jsx)(In,{id:`email`,title:e(`emailServiceCard.title`),subtitle:e(`emailServiceCard.subtitle`),mode:u,onModeChange:b,children:u===`managed`?(0,$.jsx)(`div`,{className:`space-y-4`,children:l===`disabled`?(0,$.jsx)(yn,{children:e(`emailServiceCard.platformLoginNotice`)}):_===null?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(k,{className:`h-4 w-4 animate-spin`}),e(`emailServiceCard.connecting`)]}):(0,$.jsx)(Kn,{assistantId:_,assistantHandle:s,emailRootDomain:c})}):T})}function Jn(){let e=En();return(0,Q.useCallback)(async(t,n)=>{try{let{data:r}=await At({path:{assistant_id:e},body:{value:n,type:`api_key`,name:t},throwOnError:!0});pe(r)}catch(e){throw e instanceof Error&&e.message===`No assistant found`?V.error(r(`settings:useDaemonConfig.assistantNotReadyToast`)):V.error(r(`settings:useDaemonConfig.saveApiKeyFailedToast`,{providerName:t})),i(e,{context:`provision_provider_key`}),e}},[e])}function Yn(e){let[t,n]=(0,Q.useState)(void 0);return(0,Q.useEffect)(()=>{t!==void 0&&e===t.value&&n(void 0)},[e,t]),[t===void 0?e:t.value,(0,Q.useCallback)(e=>n(e===void 0?void 0:{value:e}),[])]}var Xn=`0.11.0`;function Zn(){return St(Xn)}var Qn=`gemini-3.1-flash-image-preview`;function $n(){let{t:e}=o(`settings`),t=En(),n=p(),r=It(),{data:a}=m({...Gt({path:{assistant_id:t}}),enabled:r,staleTime:3e4}),s=qt({onSuccess:e=>{$t(n,{path:{assistant_id:t}},e)}}),c=Jn(),[l,u]=Yn((0,Q.useMemo)(()=>{if(!a)return W(ft,`gemini`);let e=a.services?.[`image-generation`];return e?.mode===`managed`?`vellum`:e?.provider||W(`vellum:ai:imageGenProvider`,`gemini`)},[a])),[d,f]=(0,Q.useState)(()=>W($e,Qn)),h=et(l),g=h.includes(d)?d:h[0]??Qn,[_,v]=(0,Q.useState)(``),[y,b]=(0,Q.useState)(!1),x=it.map(e=>({value:e,label:Qe[e]??e})),S=(0,Q.useMemo)(()=>et(l).map(e=>({value:e,label:at[e]??e})),[l]),C=l===`gemini`||l===`openai`,{hasStoredCredential:w}=He({assistantId:t,credentialKind:`api_key`,credentialName:l,enabled:C}),T=u,E=(0,Q.useCallback)(async()=>{b(!0);let r=_.trim(),a=C&&r.length>0;try{a&&await c(yt(g),r),await Ct();let o=l===`vellum`&&!Zn()?{mode:`managed`}:{provider:l,mode:l===`vellum`?`managed`:`your-own`};await s.mutateAsync({path:{assistant_id:t},body:{services:{"image-generation":o}}}).catch(t=>{throw V.error(e(`imageGenerationCard.configUpdateFailedToast`)),i(t,{context:`patch_daemon_config`}),t});try{await Dt({path:{assistant_id:t},body:{modelId:g},throwOnError:!0})}catch(t){throw V.error(e(`imageGenerationCard.modelUpdateFailedToast`)),i(t,{context:`set_image_gen_model`}),t}finally{n.invalidateQueries({queryKey:Jt({path:{assistant_id:t}})})}}catch{b(!1);return}b(!1);try{if(G(ft,l),G($e,g),a){let e=Be(t,`api_key`,l);n.setQueryData(e,!0),n.invalidateQueries({queryKey:e}),v(``)}V.success(e(`imageGenerationCard.savedToast`))}catch(t){i(t,{context:`settings-ai-image-gen-persist-local`}),V.error(e(`imageGenerationCard.localPreferencesFailedToast`))}},[_,l,C,g,t,s,c,n,e]),D=(0,Q.useCallback)(()=>{v(``),f(Qn),G($e,Qn)},[]);return(0,$.jsx)(Ln,{title:e(`imageGenerationCard.title`),subtitle:e(`imageGenerationCard.subtitle`),children:(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e(`imageGenerationCard.providerLabel`)}),(0,$.jsx)(U,{"aria-label":e(`imageGenerationCard.providerAriaLabel`),value:l,onChange:T,options:x})]}),l===`vellum`&&(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`imageGenerationCard.vellumNote`)}),C&&(0,$.jsx)(R,{label:e(`imageGenerationCard.apiKeyLabel`),type:`password`,value:_,onChange:e=>v(e.target.value),placeholder:st(e(l===`openai`?`imageGenerationCard.openaiApiKeyPlaceholder`:`imageGenerationCard.geminiApiKeyPlaceholder`),w),fullWidth:!0}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e(`imageGenerationCard.activeModelLabel`)}),(0,$.jsx)(U,{"aria-label":e(`imageGenerationCard.modelAriaLabel`),value:g,onChange:f,options:S})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Vn,{onClick:E,disabled:y}),y&&(0,$.jsx)(k,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`}),C&&(0,$.jsx)(Hn,{onClick:D})]})]})})}function er({title:e,count:t,action:n,children:r}){return(0,$.jsxs)(`section`,{className:`rounded-xl border border-[var(--border-hover)] bg-[var(--surface-overlay)] px-3 py-4`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-baseline gap-2`,children:[(0,$.jsx)(_,{variant:`body-large-default`,as:`h3`,className:`text-[var(--content-secondary)]`,children:e}),t==null?null:(0,$.jsxs)(_,{variant:`body-large-default`,as:`span`,"aria-label":`${t} ${e.toLowerCase()}`,className:`text-[var(--content-disabled)]`,children:[`·`,` `,t]})]}),n]}),r==null?null:(0,$.jsx)(`div`,{className:`mt-4 border-t border-[var(--border-base)]`,children:r})]})}function tr(e){return e.scheduleNames.length>0||e.deferredReminderCount>0||e.scheduleLookupFailed}var nr=5;function rr({title:e,items:t,mono:n}){return(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`text-(--content-tertiary)`,children:e}),(0,$.jsx)(`ul`,{className:`space-y-1 pl-1`,children:t.map(e=>(0,$.jsxs)(`li`,{className:`text-body-small-default text-(--content-secondary)`,children:[`• `,n?(0,$.jsx)(`code`,{children:e}):e]},e))})]})}function ir(e){let t=e.label||e.name,n=[];e.isActive&&n.push(r(`settings:manageProfilesBlockedDeleteModal.clauseDefaultProfile`)),e.callSiteIds.length>0&&n.push(r(`settings:manageProfilesBlockedDeleteModal.clauseActionOverrides`,{count:e.callSiteIds.length}));let i=e.scheduleNames.length,a=e.deferredReminderCount;return i>0&&a>0?n.push(r(`settings:manageProfilesBlockedDeleteModal.clauseRunsBoth`,{schedules:i,reminders:a})):i>0?n.push(r(`settings:manageProfilesBlockedDeleteModal.clauseRunsSchedules`,{count:i})):a>0&&n.push(r(`settings:manageProfilesBlockedDeleteModal.clauseRunsReminders`,{count:a})),n.length===0?r(`settings:manageProfilesBlockedDeleteModal.summaryNoReferences`,{display:t}):n.length===1?r(`settings:manageProfilesBlockedDeleteModal.summaryOneClause`,{display:t,clause1:n[0]}):n.length===2?r(`settings:manageProfilesBlockedDeleteModal.summaryTwoClauses`,{display:t,clause1:n[0],clause2:n[1]}):r(`settings:manageProfilesBlockedDeleteModal.summaryThreeClauses`,{display:t,clause1:n[0],clause2:n[1],clause3:n[2]})}function ar({blocked:e,availableReplacements:t,replacement:n,onReplacementChange:r,error:i,saving:a,onClose:s,onConfirm:c}){let{t:l}=o(`settings`),d=e?.scheduleNames??[],f=d.slice(0,nr),p=d.length-f.length,m=e!=null&&tr(e);return(0,$.jsx)(B.Root,{open:e!==null,onOpenChange:e=>{e||s()},children:(0,$.jsxs)(B.Content,{size:`sm`,children:[(0,$.jsx)(B.Header,{children:(0,$.jsx)(B.Title,{children:l(`manageProfilesBlockedDeleteModal.title`)})}),(0,$.jsxs)(B.Body,{className:`space-y-4`,children:[e&&(0,$.jsx)(_,{variant:`body-medium-default`,as:`p`,children:ir(e)}),e&&e.callSiteIds.length>0&&(0,$.jsx)(rr,{title:l(`manageProfilesBlockedDeleteModal.actionOverridesTitle`),items:e.callSiteIds,mono:!0}),f.length>0&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(rr,{title:l(`manageProfilesBlockedDeleteModal.schedulesTitle`),items:f}),p>0&&(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`pl-1 text-(--content-tertiary)`,children:l(`manageProfilesBlockedDeleteModal.moreSchedules`,{count:p})})]}),e?.scheduleLookupFailed&&(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`text-(--system-mid-strong)`,children:l(`manageProfilesBlockedDeleteModal.scheduleLookupFailed`)}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-(--content-tertiary)`,children:l(`manageProfilesBlockedDeleteModal.replacementLabel`)}),(0,$.jsx)(U,{"aria-label":l(`manageProfilesBlockedDeleteModal.replacementLabel`),value:n,onChange:r,placeholder:l(`manageProfilesBlockedDeleteModal.replacementPlaceholder`),options:t.map(e=>{let t=m&&e.status===`disabled`;return{value:e.name,label:Te(e),disabled:t,tooltip:t?l(`manageProfilesBlockedDeleteModal.disabledTargetTooltip`):void 0}})})]}),i&&(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:i})]}),(0,$.jsxs)(B.Footer,{children:[(0,$.jsx)(u,{variant:`ghost`,size:`compact`,onClick:s,children:l(`manageProfilesBlockedDeleteModal.cancel`)}),(0,$.jsx)(u,{variant:`primary`,size:`compact`,disabled:!n||a,onClick:c,children:l(a?`manageProfilesBlockedDeleteModal.saving`:`manageProfilesBlockedDeleteModal.reassignAndDelete`)})]})]})})}function or({profile:e,isActiveProfile:t,selected:n,connections:r,deletePending:i=!1,onOpen:a,onMakeActive:s,onSetStatus:c,onDelete:d}){let{t:f}=o(`settings`),p=e.source===`managed`,m=e.status===`disabled`,h=e.label??e.name,g=[];e.model&&g.push(Fe(e.provider??void 0,e.model,r)),p&&g.push(f(`profileRow.managedByVellum`));let _=e.availability,v=e.config_issue,b=v!=null||_?.status===`incomplete`,S=_?.message??f(`profileRow.providerUnavailableDefault`),w=v==null?_!=null&&_.status!==`ok`?b?f(`profileRow.providerUnavailableFixable`,{message:S}):S:null:f(`profileRow.providerUnavailableFixable`,{message:f(v.code===`over_output_cap`?`profileRow.configIssueOverOutputCap`:v.code===`no_input_room`?`profileRow.configIssueNoInputRoom`:`profileRow.configIssueModelUnknown`)});return(0,$.jsx)(y,{title:(0,$.jsx)(`span`,{className:m?`opacity-55`:void 0,children:h}),subtitle:g.length>0?g.join(` • `):void 0,onClick:a,showChevron:!1,selected:n,disabled:i,contentAriaLabel:f(`profileRow.openProfileAriaLabel`,{displayName:h}),trailingInteractive:!0,trailing:(0,$.jsxs)($.Fragment,{children:[w==null?null:(0,$.jsx)(l,{content:w,children:b?(0,$.jsx)(`button`,{type:`button`,onClick:a,"aria-label":w,className:`inline-flex cursor-pointer rounded-sm p-0.5 keyboard-focus:ring-2 keyboard-focus:ring-[var(--ring)]`,children:(0,$.jsx)(x,{className:`h-4 w-4 text-[var(--system-mid-strong)]`,"aria-hidden":`true`})}):(0,$.jsx)(`span`,{className:`inline-flex p-0.5`,tabIndex:0,children:(0,$.jsx)(x,{className:`h-4 w-4 text-[var(--system-mid-strong)]`,"aria-label":w,role:`img`})})}),m?(0,$.jsx)(I,{tone:`neutral`,children:f(`profileRow.disabledTag`)}):null,t?(0,$.jsx)(I,{tone:`positive`,children:f(`profileRow.defaultTag`)}):null,(0,$.jsxs)(C.Root,{children:[(0,$.jsx)(C.Trigger,{asChild:!0,children:(0,$.jsx)(u,{variant:`ghost`,size:`compact`,iconOnly:(0,$.jsx)(T,{}),"aria-label":f(`profileRow.actionsAriaLabel`,{displayName:h}),disabled:i})}),(0,$.jsxs)(C.Content,{align:`end`,sideOffset:4,children:[(0,$.jsx)(C.Item,{onSelect:a,children:f(p?`profileRow.view`:`profileRow.edit`)}),!t&&!m?(0,$.jsx)(C.Item,{onSelect:s,children:f(`profileRow.makeDefault`)}):null,m?(0,$.jsx)(C.Item,{onSelect:()=>c(!0),children:f(`profileRow.enable`)}):p?null:(0,$.jsx)(C.Item,{onSelect:()=>c(!1),children:f(`profileRow.disable`)}),p?null:(0,$.jsx)(C.Item,{onSelect:d,className:`text-[var(--system-negative-strong)] data-[highlighted]:text-[var(--system-negative-strong)]`,children:f(`profileRow.delete`)})]})]})]})})}function sr(e,t){let n=vn(),{data:r}=m({...Vt({path:{assistant_id:e}}),enabled:n,staleTime:3e4}),{profiles:i,profileOrder:a}=_t(t?.llm,e);return(0,Q.useMemo)(()=>r==null?{entries:be(i,a).map(e=>({name:e.name,label:e.label??null,provider:e.provider??null,model:e.model??null,status:e.status===`disabled`?`disabled`:`active`,source:e.source===`managed`?`managed`:`user`,provider_connection:e.provider_connection,availability:null})),isEffectiveCatalog:!1}:{entries:r.profiles,isEffectiveCatalog:!0},[r,i,a])}function cr(e){let t=p();return qt({onSuccess:n=>{$t(t,{path:{assistant_id:e}},n),t.invalidateQueries({queryKey:Bt({path:{assistant_id:e}})}),t.invalidateQueries({queryKey:Xt({path:{assistant_id:e}})})}})}var lr=`0.10.8`;function ur(e){return wt(lr,e)}var dr=`settings-ai-profile-make-active`,fr=`Failed to set the active profile. Please try again.`;function pr(e){let t=cr(e),n=p(),r=ur(e),o=Kt({onSuccess:()=>{n.invalidateQueries({queryKey:Jt({path:{assistant_id:e}})}),n.invalidateQueries({queryKey:Bt({path:{assistant_id:e}})})}});async function s(n,r,a){try{await t.mutateAsync({path:{assistant_id:e},body:{llm:n}})}catch(e){throw i(e,{context:r}),V.error(a),e}}async function c(t){if(!r){await s({activeProfile:t},dr,fr);return}try{await o.mutateAsync({path:{assistant_id:e},body:{name:t}})}catch(e){let t=a(e);throw V.error(t??fr),t||i(e,{context:dr}),e}}return{makeActive:c,setStatus:(e,t)=>s({profiles:{[e]:{status:t?`active`:`disabled`}}},`settings-ai-profile-toggle`,`Failed to update the profile. Please try again.`),deleteProfile:(e,t,n)=>s({profiles:{[e]:null},profileOrder:t.filter(t=>t!==e),...n?.isAdvisor?{advisorProfile:null}:{}},`settings-ai-profile-delete`,`Failed to delete the profile. Please try again.`),patchLlm:s,isPending:t.isPending||o.isPending}}var mr=`The profile was not deleted.`,hr=`Failed to move the schedules. ${mr}`;function gr(e){let t=a(e);return t?`${/[.!?]$/.test(t)?t:`${t}.`} ${mr}`:hr}function _r(e,t,n){let r=pr(e),a=p(),o=Ee(),s=t?.llm?.activeProfile??null,c=t?.llm?.advisorProfile??null,l=t?.llm?.callSites??{},u=(0,Q.useMemo)(()=>t?.llm?.profiles??{},[t?.llm?.profiles]),d=(0,Q.useMemo)(()=>t?.llm?.profileOrder??[],[t?.llm?.profileOrder]),f=(0,Q.useMemo)(()=>be(u,d),[u,d]),[m,h]=(0,Q.useState)(null),[g,_]=(0,Q.useState)(null),[v,y]=(0,Q.useState)(``),[b,x]=(0,Q.useState)(!1),[S,C]=(0,Q.useState)(null),w=(0,Q.useRef)(!1);function T(e){return f.filter(t=>t.name===e?!1:t.status===`disabled`?!0:De(t,f,{requireOwnProviderAndModel:o}))}function E(e,t){let n=T(e).filter(e=>!t||e.status!==`disabled`),r=n.find(e=>e.name===s),i=n.find(e=>e.source!==`managed`);return(r??i??n[0])?.name??``}async function D(e){try{await r.deleteProfile(e,d,{isAdvisor:e===c}),n?.onDeleted?.(e)}catch{}}async function O(t){let n=u[t]?.label??t,r=t===s,o=Object.entries(l).filter(([e,n])=>e!==`mainAgent`&&n?.profile===t).map(([e])=>e),c=[],d=0,f=!1;try{let n=(await a.fetchQuery({...Rt({path:{assistant_id:e},query:{inference_profile:t,include_all:`true`}}),retry:!1,staleTime:0})).schedules??[];c=n.filter(e=>!e.isDeferred).map(e=>e.name),d=n.filter(e=>e.isDeferred).length}catch(e){i(e,{context:`settings-ai-profile-delete-schedule-scan`}),f=!0}if(!(r||o.length>0||c.length>0||d>0)&&!f){await D(t);return}let p={name:t,label:n,isActive:r,callSiteIds:o,scheduleNames:c,deferredReminderCount:d,scheduleLookupFailed:f};h(p),y(E(t,tr(p))),_(null)}function k(e){t==null||w.current||(w.current=!0,C(e),O(e).finally(()=>{w.current=!1,C(null)}))}async function A(){if(!m||!v)return;if(x(!0),_(null),tr(m))try{await jn(e,m.name,v),await a.invalidateQueries({queryKey:Lt({path:{assistant_id:e}})})}catch(e){i(e,{context:`settings-ai-profile-reassign-schedules`}),_(gr(e)),x(!1);return}let t={};if(m.isActive&&(t.activeProfile=v),m.callSiteIds.length>0){let e={};for(let t of m.callSiteIds)e[t]={profile:v};t.callSites=e}if(Object.keys(t).length>0)try{await r.patchLlm(t,`settings-ai-profile-reassign-delete`,`Failed to reassign references. Please try again.`)}catch{_(`Failed to reassign references. Please try again.`),x(!1);return}let n=m.name;h(null),x(!1),D(n)}return{requestDelete:k,pendingDeleteName:S,blockedDeleteModalProps:{blocked:m,availableReplacements:T(m?.name??null),replacement:v,onReplacementChange:y,error:g,saving:b,onClose:()=>{h(null),_(null)},onConfirm:()=>void A()}}}function vr(){}function yr({assistantId:e,config:t,connections:n,selectedProfileName:r,onOpenProfile:i,onCreateProfile:a,onProfileDeleted:s}){let{t:c}=o(`settings`),{entries:l}=sr(e,t),d=pr(e),f=_r(e,t,{onDeleted:s}),p=t?.llm?.activeProfile??null;return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(er,{title:c(`profilesSection.title`),action:(0,$.jsx)(u,{variant:`primary`,onClick:a,leftIcon:(0,$.jsx)(M,{}),disabled:t==null,children:c(`profilesSection.createProfile`)}),children:t==null?(0,$.jsx)(_,{variant:`body-medium-lighter`,as:`p`,className:`py-4 text-center text-(--content-tertiary)`,children:c(`profilesSection.loading`)}):l.length===0?(0,$.jsx)(_,{variant:`body-medium-lighter`,as:`p`,className:`py-4 text-center text-(--content-tertiary)`,children:c(`profilesSection.emptyState`)}):l.map(e=>(0,$.jsx)(or,{profile:e,isActiveProfile:e.name===p,selected:e.name===r,connections:n,deletePending:f.pendingDeleteName===e.name,onOpen:()=>i(e.name),onMakeActive:()=>void d.makeActive(e.name).catch(vr),onSetStatus:t=>void d.setStatus(e.name,t).catch(vr),onDelete:()=>f.requestDelete(e.name)},e.name))}),(0,$.jsx)(ar,{...f.blockedDeleteModalProps})]})}var br={anthropic:!0,openai:!0,gemini:!0,fireworks:!0,openrouter:!0,chatgpt:!0,vellum:!0,together:!0,"vercel-ai-gateway":!0,minimax:!0,atlascloud:!0,baseten:!0,poolside:!0};function xr(e){return e in br}function Sr(e){if(!e.baseUrl)return null;try{return new URL(e.baseUrl).host}catch{return e.baseUrl}}function Cr(e){let t=Sr(e)??``,n=[];t&&n.push(t);let r=e.models?.length??0;return r>0&&n.push(`${r} ${r===1?`model`:`models`}`),e.auth.type===`none`&&n.push(`keyless`),n.join(` · `)}function wr(e){switch(e.auth.type){case`api_key`:return`Own API key`;case`oauth_subscription`:return`ChatGPT subscription`;case`none`:return`No API key needed`;default:return null}}function Tr(e){if(e.provider===`vellum`)return`Included with your plan`;if(e.provider===`openai-compatible`)return Cr(e);let t=[];if(e.provider===`ollama`){let n=Sr(e);n&&t.push(n)}let n=e.provider===`chatgpt`?`openai`:e.provider,r=e.auth.type===`oauth_subscription`?Ve(n):J(n),i=e.models?.length??r.length;i>0&&t.push(`${i} ${i===1?`model`:`models`}`);let a=wr(e);return a&&t.push(a),t.join(` • `)}function Er({connection:e,isDefault:t,supportsDefaultProvider:n,selected:r,isSettingDefault:i,onOpen:a,onSetDefault:s,onDelete:c}){let{t:l}=o(`settings`),d=e.isManaged??!1,f=Ye(e),p=xr(e.provider),m=Tr(e),h=n&&!t&&p,g=!d&&a!=null,_=!d&&!t,v=h||g||_;return(0,$.jsx)(y,{title:f,subtitle:m.length>0?m:void 0,onClick:a,showChevron:!1,selected:r,contentAriaLabel:a?l(`providerRow.openProviderAriaLabel`,{displayName:f}):void 0,trailingInteractive:!0,trailing:(0,$.jsxs)($.Fragment,{children:[d?(0,$.jsx)(I,{tone:`neutral`,title:l(`providerRow.managedTagTitle`),children:l(`providerRow.managedTag`)}):null,t?(0,$.jsx)(I,{tone:`info`,title:l(`providerRow.defaultTagTitle`),children:l(`providerRow.defaultTag`)}):null,e.provider===`ollama`?(0,$.jsx)(I,{tone:`neutral`,title:l(`providerRow.localTagTitle`),children:l(`providerRow.localTag`)}):null,e.provider===`openai-compatible`?(0,$.jsx)(I,{tone:`neutral`,title:l(`providerRow.customTagTitle`),children:l(`providerRow.customTag`)}):null,v?(0,$.jsxs)(C.Root,{children:[(0,$.jsx)(C.Trigger,{asChild:!0,children:(0,$.jsx)(u,{variant:`ghost`,size:`compact`,iconOnly:(0,$.jsx)(T,{}),"aria-label":l(`providerRow.actionsAriaLabel`,{displayName:f})})}),(0,$.jsxs)(C.Content,{align:`end`,sideOffset:4,children:[g?(0,$.jsx)(C.Item,{onSelect:a,children:l(`providerRow.edit`)}):null,h?(0,$.jsx)(C.Item,{disabled:i,onSelect:s,children:l(`providerRow.setAsDefault`)}):null,_?(0,$.jsx)(C.Item,{onSelect:c,className:`text-[var(--system-negative-strong)] data-[highlighted]:text-[var(--system-negative-strong)]`,children:l(`providerRow.delete`)}):null]})]}):(0,$.jsx)(`span`,{className:`inline-block w-8`,"aria-hidden":!0})]})})}function Dr(e,t){let n=p(),a={path:{assistant_id:e}},o=h({...en(),onSuccess:()=>{n.invalidateQueries({queryKey:Wt(a)}),n.invalidateQueries({queryKey:Jt(a)}),n.invalidateQueries({queryKey:Bt(a)})},onError:e=>{i(e,{context:`settings-ai-set-default-provider`}),V.error(r(`settings:useProviderActions.setDefaultFailedToast`))}});function s(t){xr(t.provider)&&o.mutate({path:{assistant_id:e},body:{provider:t.provider,connectionName:t.name}})}function c(e){return o.isPending&&o.variables?.body?.connectionName===e}async function l(o){try{let{response:i}=await Ot({path:{assistant_id:e,name:o}});i?.ok||i?.status===404?(n.invalidateQueries({queryKey:zt(a)}),t?.onDeleted?.(o)):i?.status===409?V.error(r(`settings:useProviderActions.deleteInUseToast`)):V.error(r(`settings:useProviderActions.deleteFailedToast`))}catch(e){i(e,{context:`settings-ai-provider-delete`}),V.error(r(`settings:useProviderActions.deleteFailedToast`))}}return{setDefault:s,isSettingDefault:c,deleteConnection:l}}function Or({assistantId:e,selectedConnectionName:t,onOpenConnection:n,onAddProvider:r,onConnectionDeleted:i}){let{t:a}=o(`settings`),{data:s,isLoading:c,isError:l}=m(Ut({path:{assistant_id:e}})),d=_n(),{data:f}=m({...Yt({path:{assistant_id:e}}),enabled:d}),p=d?f?.resolvedConnectionName??null:null,h=Dr(e,{onDeleted:i}),g=(0,Q.useMemo)(()=>{let e=s?.connections??[];return[...e.filter(e=>e.provider===Z),...e.filter(e=>e.provider!==Z)]},[s]);return(0,$.jsx)(er,{title:a(`providersSection.title`),action:(0,$.jsx)(u,{variant:`outlined`,onClick:r,leftIcon:(0,$.jsx)(M,{}),children:a(`providersSection.addProvider`)}),children:c?(0,$.jsx)(`div`,{className:`space-y-2 py-2`,children:[1,2,3].map(e=>(0,$.jsx)(te,{className:`h-10 rounded-lg`},e))}):l?(0,$.jsx)(_,{variant:`body-medium-default`,as:`p`,className:`py-4 text-center text-(--system-negative-strong)`,children:a(`providersSection.loadError`)}):g.length===0?(0,$.jsx)(_,{variant:`body-medium-lighter`,as:`p`,className:`py-4 text-center text-(--content-tertiary)`,children:a(`providersSection.empty`)}):g.map(e=>(0,$.jsx)(Er,{connection:e,isDefault:e.name===p,supportsDefaultProvider:d,selected:e.name===t,isSettingDefault:h.isSettingDefault(e.name),onOpen:e.isManaged??!1?void 0:()=>n(e.name),onSetDefault:()=>h.setDefault(e),onDelete:()=>void h.deleteConnection(e.name)},e.name))})}function kr({panel:e,onOpenPanel:t,onClosePanel:n}){let{t:r}=o(`settings`),i=En(),{data:a}=m({...Gt({path:{assistant_id:i}}),staleTime:3e4}),s=_n(),{data:c}=m({...Yt({path:{assistant_id:i}}),enabled:s}),l=c?.availability,{data:d}=m({...Ut({path:{assistant_id:i}})}),f=d?.connections,p=a?.llm?.callSites??{},h=Object.entries(p).filter(([e,t])=>e!==`mainAgent`&&(t?.profile!=null||t?.provider!=null||t?.model!=null)).length;return(0,$.jsx)(Ln,{title:r(`languageModelCard.title`),subtitle:r(`languageModelCard.subtitle`),children:(0,$.jsxs)(`div`,{className:`space-y-2`,children:[l&&l.status!==`ok`&&(0,$.jsx)(F,{tone:l.status===`unknown`?`warning`:`error`,children:l.message??r(`languageModelCard.defaultProviderUnavailable`)}),i&&(0,$.jsx)(yr,{assistantId:i,config:a,connections:f,selectedProfileName:e?.kind===`profile`?e.name:null,onOpenProfile:e=>t({kind:`profile`,name:e}),onCreateProfile:()=>t({kind:`create-profile`}),onProfileDeleted:t=>{e?.kind===`profile`&&e.name===t&&n()}}),i&&(0,$.jsx)(Or,{assistantId:i,selectedConnectionName:e?.kind===`provider`?e.name:null,onOpenConnection:e=>t({kind:`provider`,name:e}),onAddProvider:()=>t({kind:`add-provider`}),onConnectionDeleted:t=>{e?.kind===`provider`&&e.name===t&&n()}}),(0,$.jsx)(er,{title:r(`languageModelCard.overridesTitle`),count:h,action:(0,$.jsx)(u,{variant:`outlined`,onClick:()=>t({kind:`overrides`}),children:r(`languageModelCard.manage`)})})]})})}async function Ar(e,t){try{let{data:n}=await Tt({path:{assistant_id:e,name:t}}),i=n?.check;if(!i||i.ok)return;let a=i.blame===`profile`?`settings:profileCheck.profileError`:i.blame===`provider`?i.connection?`settings:profileCheck.providerError`:`settings:profileCheck.providerErrorUnnamed`:i.blame===`transient`?`settings:profileCheck.transient`:`settings:profileCheck.unknown`;V.warning(r(a,{detail:i.detail??``,connection:i.connection??``}))}catch{}}function jr(e,{onSaved:t}={}){let n=cr(e),{data:a}=m({...Gt({path:{assistant_id:e}}),staleTime:3e4}),o=(0,Q.useMemo)(()=>a?.llm?.profiles??{},[a?.llm?.profiles]),s=a?.llm?.profileOrder??[];async function c(a,c,l){let u=l?.mode??`replace`,d=!(a in o);if(u===`merge`&&!d){await n.mutateAsync({path:{assistant_id:e},body:{llm:{profiles:{[a]:c}}}}),t?.();return}let f={profiles:{[a]:c}};if(d&&(f.profileOrder=s.includes(a)?s:[...s,a]),d)await n.mutateAsync({path:{assistant_id:e},body:{llm:f}});else{let t=o[a];await n.mutateAsync({path:{assistant_id:e},body:{llm:{profiles:{[a]:null}}}});try{await n.mutateAsync({path:{assistant_id:e},body:{llm:f}})}catch(r){throw i(r,{context:`settings-ai-profile-edit-recreate`}),t!=null&&await n.mutateAsync({path:{assistant_id:e},body:{llm:{profiles:{[a]:t}}}}).catch(()=>{}),r}}d&&V.success(r(`settings:useProfileSave.createdToast`,{name:c.label??a})),t?.(),Ar(e,a)}return{saveProfile:c,isPending:n.isPending}}function Mr({assistantId:e,profileName:t,onClose:n}){let{t:r}=o(`settings`),{data:i}=m({...Gt({path:{assistant_id:e}}),staleTime:3e4}),{data:a}=m({...Ut({path:{assistant_id:e}})}),s=a?.connections,c=(0,Q.useMemo)(()=>i?.llm?.profiles??{},[i?.llm?.profiles]),l=Object.keys(c),d=(0,Q.useMemo)(()=>{if(t==null)return;let e=c[t];return e?{name:t,...e}:void 0},[t,c]),f=t==null?`create`:d?.source===`managed`||d?.invariant===!0?`view`:`edit`,{saveProfile:p,isPending:h}=jr(e,{onSaved:n}),g=Ie({mode:f,profileName:t??void 0,initialValues:d,existingNames:l,connections:s,assistantId:e,onSave:p}),_=_r(e,i,{onDeleted:()=>n()}),v=t!=null&&_.pendingDeleteName===t,y=t!=null&&i!=null&&!(t in c);(0,Q.useEffect)(()=>{y&&!g.saving&&!h&&n()},[y,g.saving,h,n]);let b=f===`view`;return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Dn,{title:g.effectiveMode===`create`?r(`profileDetailPanel.newProfileTitle`):d?.label??t??r(`profileDetailPanel.defaultTitle`),closeVariant:`outlined`,onClose:n,headerTrailing:b&&g.effectiveMode!==`create`?(0,$.jsx)(I,{tone:`neutral`,children:r(`profileDetailPanel.managedTag`)}):null,headerActions:g.effectiveMode!==`create`&&!g.isReadOnly?(0,$.jsx)(u,{variant:`dangerOutline`,iconOnly:v?(0,$.jsx)(k,{className:`animate-spin`}):(0,$.jsx)(N,{}),"aria-label":r(v?`profileDetailPanel.deleting`:`profileDetailPanel.delete`),tooltip:r(`profileDetailPanel.delete`),onClick:()=>{t!=null&&_.requestDelete(t)},disabled:g.saving||v}):null,footer:g.isReadOnly?(0,$.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,$.jsx)(u,{variant:`outlined`,onClick:g.switchToSaveAsNew,disabled:g.saving,children:r(`profileDetailPanel.saveAsNew`)}),g.hasViewModeChanges?(0,$.jsx)(u,{variant:`primary`,onClick:()=>void g.handleSave(),disabled:g.saving,children:g.saving?r(`profileDetailPanel.saving`):r(`profileDetailPanel.save`)}):null]}):(0,$.jsx)(`div`,{className:`flex justify-end`,children:(0,$.jsx)(u,{variant:`primary`,onClick:()=>void g.handleSave(),disabled:g.isInvalid||g.saving,children:g.saving?r(`profileDetailPanel.saving`):g.effectiveMode===`create`?r(`profileDetailPanel.createProfile`):r(`profileDetailPanel.saveChanges`)})}),children:(0,$.jsx)(Ge,{editor:g,assistantId:e,connections:s,variant:`panel`})}),(0,$.jsx)(ar,{..._.blockedDeleteModalProps})]})}function Nr({value:e,profileOptions:t,disabled:n,onChange:r}){let{t:i}=o(`settings`);return(0,$.jsx)(`div`,{className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)] p-3`,children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(`p`,{className:`text-body-medium-default font-medium text-[var(--content-default)]`,children:i(`advisorProfileRow.title`)}),(0,$.jsx)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:i(`advisorProfileRow.description`)})]}),(0,$.jsx)(U,{value:e,onChange:r,options:t,placeholder:i(`advisorProfileRow.chooseProfilePlaceholder`),className:`w-44`,menuMinWidth:280,menuAlign:`start`,disabled:n})]})})}var Pr=`__custom__`;function Fr(e){return e?!!(e.profile||e.provider||e.model):!1}function Ir(e,t){if(t?.provider||t?.model)return null;let n=e.defaultProfile??e.shippedDefaultProfile;return n?{profile:n,via:t?.profile===n?`override`:`default`}:null}function Lr(e,t){let n=Fr(e);return n===Fr(t)?n?(e?.profile??null)===(t?.profile??null)&&(e?.provider??null)===(t?.provider??null)&&(e?.model??null)===(t?.model??null):!0:!1}function Rr({assistantId:e,callSites:t,domains:n,persistedOverrides:r,orderedProfiles:s,onClose:c,onApplied:l}){let{t:d}=o(`settings`),f=cr(e),p=Ee(),m=(0,Q.useMemo)(()=>({requireOwnProviderAndModel:p}),[p]),h=(0,Q.useMemo)(()=>{let e=new Map;for(let n of t){let t=Ir(n,r[n.id]);t&&e.set(n.id,t)}return e},[t,r]),g=(0,Q.useMemo)(()=>{let e=new Set(Array.from(h.values(),e=>e.profile));return s.filter(t=>e.has(t.name))},[s,h]),[v,y]=(0,Q.useState)(()=>g[0]?.name??``),[b,x]=(0,Q.useState)(``),[S,C]=(0,Q.useState)(new Set),[w,T]=(0,Q.useState)(!1),E=(0,Q.useMemo)(()=>{let e=new Map(n.map(e=>[e.id,e.displayName]));return t=>e.get(t)??t},[n]),D=(0,Q.useMemo)(()=>t.filter(e=>h.get(e.id)?.profile===v),[t,h,v]),O=(0,Q.useMemo)(()=>D.map(e=>e.id).filter(e=>!S.has(e)),[D,S]),A=(0,Q.useMemo)(()=>g.map(e=>({value:e.name,label:Te(e)})),[g]),M=(0,Q.useMemo)(()=>Ce(s,[],m).filter(e=>e.name!==v).map(e=>({value:e.name,label:Te(e)})),[s,v,m]),ee=ge(s,v),N=ge(s,b),P=S.size===0;function I(e){y(e),C(new Set),e===b&&x(``)}function L(e,t){C(n=>{let r=new Set(n);return t?r.delete(e):r.add(e),r})}async function R(){if(!(!v||!b||O.length===0)){T(!0);try{let t={};for(let e of O)t[e]={profile:b};await f.mutateAsync({path:{assistant_id:e},body:{llm:{callSites:t}}}),V.success(d(`bulkOverrideSwapModal.successToast`,{count:O.length,targetLabel:N})),l(),c()}catch(e){let t=a(e);V.error(t??d(`bulkOverrideSwapModal.updateFailedToast`)),t||i(e,{context:`settings-ai-bulk-override-swap`})}finally{T(!1)}}}return(0,$.jsx)(B.Root,{open:!0,onOpenChange:e=>{e||c()},children:(0,$.jsxs)(B.Content,{size:`md`,children:[(0,$.jsx)(B.Header,{children:(0,$.jsx)(B.Title,{children:d(`bulkOverrideSwapModal.title`)})}),(0,$.jsxs)(B.Body,{className:`space-y-4`,children:[(0,$.jsx)(_,{variant:`body-medium-default`,as:`p`,children:d(`bulkOverrideSwapModal.intro`)}),(0,$.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,$.jsx)(U,{id:`bulk-swap-source`,label:d(`bulkOverrideSwapModal.currentlyUsingLabel`),value:v,onChange:I,options:A}),(0,$.jsx)(U,{id:`bulk-swap-target`,label:d(`bulkOverrideSwapModal.changeToLabel`),value:b,onChange:x,options:M,placeholder:d(`bulkOverrideSwapModal.targetPlaceholder`)})]}),(0,$.jsx)(F,{tone:`info`,title:d(`bulkOverrideSwapModal.noticeTitle`),children:d(`bulkOverrideSwapModal.noticeBody`,{sourceLabel:ee})}),(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`div`,{className:`mb-2 flex items-baseline justify-between gap-2`,children:[(0,$.jsxs)(`div`,{children:[(0,$.jsx)(_,{variant:`body-medium-default`,as:`p`,children:d(`bulkOverrideSwapModal.affectedSummary`,{count:D.length,profile:ee})}),(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`text-[color:var(--content-secondary)]`,children:d(`bulkOverrideSwapModal.chooseActions`)})]}),(0,$.jsx)(u,{variant:`ghost`,onClick:()=>C(P?new Set(D.map(e=>e.id)):new Set),children:d(P?`bulkOverrideSwapModal.clearAll`:`bulkOverrideSwapModal.selectAll`)})]}),(0,$.jsx)(`div`,{className:`max-h-72 space-y-1 overflow-y-auto`,children:D.map(e=>(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3 rounded-md border border-[var(--border-base)] px-3 py-2`,children:[(0,$.jsx)(j,{checked:!S.has(e.id),onCheckedChange:t=>L(e.id,t===!0),disabled:w,label:e.displayName,helperText:E(e.domain)}),(0,$.jsx)(`span`,{className:`shrink-0 text-body-small-default text-[color:var(--content-tertiary)]`,children:h.get(e.id)?.via===`override`?d(`bulkOverrideSwapModal.viaOverride`):d(`bulkOverrideSwapModal.viaDefault`)})]},e.id))})]})]}),(0,$.jsxs)(B.Footer,{children:[(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`mr-auto self-center text-[color:var(--content-secondary)]`,children:d(`bulkOverrideSwapModal.willChange`,{count:O.length})}),(0,$.jsx)(u,{variant:`ghost`,onClick:c,disabled:w,children:d(`bulkOverrideSwapModal.cancel`)}),(0,$.jsx)(u,{variant:`primary`,disabled:!v||!b||O.length===0||w,onClick:()=>void R(),children:w?(0,$.jsx)(k,{className:`h-4 w-4 animate-spin`}):d(`bulkOverrideSwapModal.applyTo`,{count:O.length})})]})]})})}function zr({id:e,displayName:t,description:n,defaultProfileLabel:r,draft:i,profileOptions:a,connections:s,onDraftChange:c,onToggle:l}){let{t:u}=o(`settings`),d=Fr(i),f=!i||!d?``:i.provider||i.model?Pr:i.profile??``,p=f===Pr,m=xt(),h=(s??[]).some(e=>e.provider===ye),g=[...m,...h?[ye]:[]],_=m[0]??ve[0],v=i?.provider,y=oe(v)?v:v===`chatgpt`?ye:void 0,b=y!==void 0&&g.some(e=>e===y),x=y??_,S=mt(x,``,(s??[]).filter(e=>qe(e.provider,x)))?Ve(x):J(x),C=S.map(e=>({value:e.id,label:e.displayName})),w=typeof i?.model==`string`?i.model:``;if(w&&!S.some(e=>e.id===w)){let e=J(x).find(e=>e.id===w)?.displayName??w;C.push({value:w,label:u(`callSiteOverridesRow.unavailableOption`,{name:e})})}let T=!!i?.provider&&!i?.model,E=[...g.map(e=>({value:e,label:q[e]??e})),...y&&!b?[{value:y,label:u(`callSiteOverridesRow.unavailableOption`,{name:q[y]??y})}]:[]];function D(t){t===`__custom__`?c(e,{profile:null,provider:_,model:ie(_)??``}):t===``?c(e,null):c(e,{profile:t,provider:null,model:null})}function O(t){let n=ie(t)??``;c(e,{...i??{},profile:null,provider:t,model:n})}function k(t){c(e,{...i??{},model:t})}return(0,$.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)] p-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`text-body-medium-default font-medium text-[var(--content-default)]`,children:t}),n&&(0,$.jsxs)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:[n,r&&(0,$.jsx)(`span`,{className:`ml-1.5 text-body-small-default text-[var(--content-tertiary)] opacity-60`,children:u(`callSiteOverridesRow.defaultProfileSuffix`,{label:r})})]})]}),(0,$.jsx)(z,{checked:d,onChange:t=>l(e,t),"aria-label":u(`callSiteOverridesRow.overrideAriaLabel`,{displayName:t}),className:`shrink-0`})]}),d&&(0,$.jsx)(`div`,{className:`mt-3`,children:(0,$.jsx)(U,{value:f,onChange:D,options:a,className:`w-44`,menuMinWidth:280,menuAlign:`start`})}),d&&p&&(0,$.jsxs)(`div`,{className:`mt-3 space-y-2 border-t border-[var(--border-base)] pt-3`,children:[(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[(0,$.jsxs)(`div`,{className:`flex-1`,children:[(0,$.jsx)(`label`,{className:`mb-1 block text-body-small-default text-[var(--content-tertiary)]`,children:u(`callSiteOverridesRow.providerLabel`)}),(0,$.jsx)(U,{value:x??``,onChange:O,options:E})]}),(0,$.jsxs)(`div`,{className:`flex-1`,children:[(0,$.jsx)(`label`,{className:`mb-1 block text-body-small-default text-[var(--content-tertiary)]`,children:u(`callSiteOverridesRow.modelLabel`)}),(0,$.jsx)(U,{value:i?.model??``,onChange:k,options:C})]})]}),T&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:u(`callSiteOverridesRow.pickModelError`)})]})]})}function Br({groups:e,drafts:t,buildProfileOptionsForRow:n,profileLabelFor:r,advisorMatchesSearch:i,connections:a,onDraftChange:s,onToggle:c}){let{t:l}=o(`settings`);return(0,$.jsx)(`div`,{className:`space-y-4`,children:e.length===0?i?null:(0,$.jsx)(`p`,{className:`py-8 text-center text-body-medium-lighter text-[var(--content-tertiary)]`,children:l(`overridesCallSiteList.emptySearch`)}):e.map(({domain:e,sites:i})=>(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`p`,{className:`mb-2 text-body-small-default font-semibold uppercase tracking-wider text-[var(--content-tertiary)]`,children:e.displayName}),(0,$.jsx)(`div`,{className:`space-y-1`,children:i.map(e=>{let i=(()=>{let n=t[e.id]??null;return!n||!Fr(n)?``:n.provider||n.model?Pr:n.profile??``})(),o=e.shippedDefaultProfile??e.defaultProfile,l=o?r(o):null;return(0,$.jsx)(zr,{id:e.id,displayName:e.displayName,description:e.description,defaultProfileLabel:l,draft:t[e.id]??null,profileOptions:n(i===``||i===`__custom__`?null:i),connections:a,onDraftChange:s,onToggle:c},e.id)})})]},e.id))})}function Vr(e,t){let n={};for(let r of Object.keys(e)){let i=e[r]??null;Fr(i)?n[r]={profile:i?.profile??null,provider:i?.provider??null,model:i?.model??null}:r in t&&t[r]===null&&(n[r]=null)}return n}function Hr(e){let t={};for(let n of Object.keys(e))t[n]=null;return t}function Ur({catalogCallSiteIds:e,persistedOverrides:t,persistedAdvisor:n,isSeeded:r}){let[i,a]=(0,Q.useState)({}),[o,s]=(0,Q.useState)(void 0),c=(0,Q.useMemo)(()=>{if(!r)return{};let n={};for(let r of e)if(r in i)n[r]=i[r];else{let e=t[r];n[r]=e?{...e}:{}}return n},[r,e,t,i]),l=o??n,u=l!==n,d=(0,Q.useMemo)(()=>{if(!r)return!1;for(let e of Object.keys(c))if(!Lr(c[e],t[e]))return!0;return!1},[r,c,t]);return{drafts:c,advisorProfile:l,advisorDirty:u,callSiteDraftsDirty:d,hasUnsavedDrafts:u||d,hasValidationError:(0,Q.useMemo)(()=>Object.values(c).some(e=>Fr(e)&&!!e?.provider&&!e?.model),[c]),setDraft:(0,Q.useCallback)((e,t)=>{a(n=>({...n,[e]:t}))},[]),setAdvisor:(0,Q.useCallback)(e=>{s(e)},[]),clearEdits:(0,Q.useCallback)(()=>{a({}),s(void 0)},[]),buildSavePatch:(0,Q.useCallback)(()=>Vr(c,i),[c,i]),buildResetPatch:(0,Q.useCallback)(()=>Hr(c),[c])}}function Wr({assistantId:e,onClose:t}){let{t:n}=o(`settings`),{data:r}=m({...Gt({path:{assistant_id:e}}),staleTime:3e4}),a=(0,Q.useMemo)(()=>r?.llm?.profiles??{},[r?.llm?.profiles]),s=(0,Q.useMemo)(()=>r?.llm?.profileOrder??[],[r?.llm?.profileOrder]),c=(0,Q.useMemo)(()=>r?.llm?.callSites??{},[r?.llm?.callSites]),l=(0,Q.useMemo)(()=>be(a,s),[a,s]),d=xt(),f=Ee(),p=(0,Q.useMemo)(()=>({requireOwnProviderAndModel:f}),[f]),h=cr(e),[g,_]=(0,Q.useState)(``),[v,y]=(0,Q.useState)(!1),[b,S]=(0,Q.useState)(!1),[C,w]=(0,Q.useState)(!1),{data:T,isLoading:E,isError:D,refetch:O}=m({...Qt({path:{assistant_id:e}}),enabled:!!e,staleTime:6e4,refetchOnWindowFocus:!1}),{data:A}=m({...Ut({path:{assistant_id:e}}),enabled:!!e}),j=(0,Q.useMemo)(()=>(T?.callSites??[]).filter(e=>e.id!==`mainAgent`),[T]),M=!E&&!D&&!!T,N=!!r,P=M&&N,F=(0,Q.useMemo)(()=>j.map(e=>e.id),[j]),I=r?.llm?.advisorProfile??``,{drafts:L,advisorProfile:z,advisorDirty:B,callSiteDraftsDirty:U,hasUnsavedDrafts:te,hasValidationError:W,setDraft:G,setAdvisor:K,clearEdits:ne,buildSavePatch:re,buildResetPatch:q}=Ur({catalogCallSiteIds:F,persistedOverrides:c,persistedAdvisor:I,isSeeded:P}),J=(0,Q.useMemo)(()=>new Set(F),[F]),Y=(0,Q.useCallback)(e=>ge(l,e),[l]),X=(0,Q.useCallback)(e=>({value:e.name,label:Te(e),...Se(e,l,p)===`undispatchable`?{icon:(0,$.jsx)(x,{className:`h-3.5 w-3.5 text-[var(--system-mid-strong)]`}),tooltip:de(e)}:{}}),[l,p]),ae=(0,Q.useMemo)(()=>Ce(l,[I],p).map(X),[l,I,X,p]),Z=(0,Q.useMemo)(()=>{let e=g.trim().toLowerCase();return e===``||`advisor`.includes(e)||`second opinion`.includes(e)},[g]),oe=(0,Q.useMemo)(()=>j.some(e=>Ir(e,c[e.id])!==null),[j,c]),se=(0,Q.useMemo)(()=>Object.entries(c).some(([e,t])=>J.has(e)&&(t?.profile!=null||t?.provider!=null||t?.model!=null)),[c,J]),ce=(0,Q.useCallback)(e=>[...Ce(l,[e],p).map(X),{value:Pr,label:n(`overridesDetailPanel.customProfileOption`)}],[l,X,p,n]),le=(0,Q.useMemo)(()=>{if(!g.trim())return j;let e=g.toLowerCase();return j.filter(t=>(t.displayName??``).toLowerCase().includes(e)||(t.description??``).toLowerCase().includes(e)||(t.domain??``).toLowerCase().includes(e))},[j,g]),ue=(0,Q.useMemo)(()=>{if(!T)return[];let e=T.domains.map(e=>e.id),t=new Map(T.domains.map(e=>[e.id,e])),r=[];for(let n of e){let e=le.filter(e=>e.domain===n);e.length>0&&r.push({domain:t.get(n),sites:e})}let i=new Set(e),a=le.filter(e=>!i.has(e.domain));return a.length>0&&r.push({domain:{id:`other`,displayName:n(`overridesDetailPanel.otherDomain`)},sites:a}),r},[T,le,n]),fe=(0,Q.useCallback)((e,t)=>{if(!t){G(e,null);return}let n=_e(l,j.find(t=>t.id===e)?.defaultProfile,p);if(n)G(e,{profile:n});else{let t=d[0]??ve[0];G(e,{provider:t,model:ie(t)??``})}},[j,l,d,G,p]),pe=(0,Q.useCallback)(async()=>{y(!0);try{let r=re();await h.mutateAsync({path:{assistant_id:e},body:{llm:{...U?{callSites:r}:{},...B?{advisorProfile:z}:{}}}}),t(),V.success(n(`overridesDetailPanel.overridesSavedToast`))}catch(e){V.error(n(`overridesDetailPanel.saveFailedToast`)),i(e,{context:`call_site_overrides_save`})}finally{y(!1)}},[re,U,B,z,t,h,e,n]),me=(0,Q.useCallback)(async()=>{y(!0);try{let r=q();await h.mutateAsync({path:{assistant_id:e},body:{llm:{callSites:r}}}),t(),V.success(n(`overridesDetailPanel.overridesResetToast`))}catch(e){V.error(n(`overridesDetailPanel.resetFailedToast`)),i(e,{context:`call_site_overrides_reset`})}finally{y(!1)}},[q,t,h,e,n]),he=(0,$.jsxs)(`div`,{className:`flex items-center justify-end gap-2`,children:[se&&(0,$.jsx)(u,{variant:`outlined`,onClick:()=>S(!0),disabled:v||!P,tintColor:`var(--system-negative-strong)`,className:`mr-auto`,children:n(`overridesDetailPanel.resetToDefaults`)}),(0,$.jsx)(u,{variant:`primary`,onClick:()=>void pe(),disabled:!te||W||v,children:v?(0,$.jsx)(k,{className:`h-4 w-4 animate-spin`}):n(`overridesDetailPanel.save`)})]});return(0,$.jsxs)(Dn,{title:n(`overridesDetailPanel.title`),closeVariant:`outlined`,onClose:t,footer:he,children:[(0,$.jsx)(`p`,{className:`mb-4 text-body-medium-lighter text-[var(--content-tertiary)]`,children:n(`overridesDetailPanel.description`)}),(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`div`,{className:`mb-4 flex items-center gap-2`,children:[(0,$.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,$.jsx)(R,{type:`search`,value:g,onChange:e=>_(e.target.value),placeholder:n(`overridesDetailPanel.searchPlaceholder`),leftIcon:(0,$.jsx)(ee,{className:`h-4 w-4`}),fullWidth:!0})}),(0,$.jsx)(u,{variant:`outlined`,onClick:()=>w(!0),disabled:!P||v||te||!oe,title:te?n(`overridesDetailPanel.bulkChangeUnsavedTitle`):oe?void 0:n(`overridesDetailPanel.bulkChangeNoCandidatesTitle`),children:n(`overridesDetailPanel.bulkChange`)})]}),N&&Z&&(0,$.jsxs)(`div`,{className:`mb-4`,children:[(0,$.jsx)(`p`,{className:`mb-2 text-body-small-default font-semibold uppercase tracking-wider text-[var(--content-tertiary)]`,children:n(`overridesDetailPanel.advisorSection`)}),(0,$.jsx)(Nr,{value:z,profileOptions:ae,disabled:v,onChange:K})]}),E&&(0,$.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,$.jsx)(k,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`})}),D&&(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-12 text-center`,children:[(0,$.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:n(`overridesDetailPanel.loadErrorTitle`)}),(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:n(`overridesDetailPanel.loadErrorHint`)}),(0,$.jsx)(u,{variant:`outlined`,onClick:()=>void O(),children:n(`overridesDetailPanel.retry`)})]}),!E&&!D&&T&&(0,$.jsx)(Br,{groups:ue,drafts:L,buildProfileOptionsForRow:ce,profileLabelFor:Y,advisorMatchesSearch:Z,connections:A?.connections,onDraftChange:G,onToggle:fe})]}),C&&T&&(0,$.jsx)(Rr,{assistantId:e,callSites:j,domains:T.domains,persistedOverrides:c,orderedProfiles:l,onClose:()=>w(!1),onApplied:ne}),(0,$.jsx)(H,{open:b,title:n(`overridesDetailPanel.resetToDefaults`),message:n(`overridesDetailPanel.resetConfirmMessage`),confirmLabel:n(`overridesDetailPanel.resetToDefaults`),destructive:!0,onConfirm:()=>{S(!1),me()},onCancel:()=>S(!1)})]})}var Gr=e(c(),1);function Kr({mode:e,connection:t,assistantId:n,existingNames:r,connections:i,variant:a=`modal`,actionsSlot:s,onSave:c,onCancel:l}){let{t:d}=o(`settings`),[f,m]=(0,Q.useState)(t?.label??``),h=t?.name??``,g=t?.provider??`anthropic`,v=t?.auth.type??`api_key`,[y,b]=(0,Q.useState)(()=>t?.auth.type===`api_key`?t.auth.credential:t?``:`credential/anthropic/api_key`),[x,S]=(0,Q.useState)(t?.baseUrl??``),[C,w]=(0,Q.useState)(()=>t?.models?t.models.map(e=>e.id).join(`, `):``),[T,E]=(0,Q.useState)(!1),[D,O]=(0,Q.useState)(null),k=g===`openai-compatible`,A=ze(g),[j,M]=(0,Q.useState)(``),[ee,N]=(0,Q.useState)(!1),P=p(),F=(0,Q.useMemo)(()=>Xe(y),[y]),I=v===`api_key`&&F!==null,{hasStoredCredential:L,isLoading:z}=He({assistantId:n,credentialKind:`credential`,credentialName:F?`${F.service}:${F.field}`:``,enabled:I}),{credentials:V}=Me({assistantId:n,enabled:v===`api_key`});(0,Q.useEffect)(()=>{let e=t?.provider??`anthropic`;m(t?.label??``),t?.auth.type===`api_key`?b(t.auth.credential):b(t?``:`credential/${e}/api_key`),O(null),S(t?.baseUrl??``),w(t?.models?t.models.map(e=>e.id).join(`, `):``),M(``),N(!1)},[t]);let H=f.trim()!==(t?.label??``).trim(),U=k&&H?Ke(f,i,t?.name):null,te=h.trim().length>0&&U===null;async function W(){if(te){E(!0),O(null);try{let e;if(v===`api_key`){let t=y.trim()||`credential/${g}/api_key`,r=j.trim();if(r){N(!0);try{let e=Xe(t);await At({path:{assistant_id:n},body:e?{type:`credential`,name:`${e.service}:${e.field}`,value:r}:{type:`api_key`,name:g,value:r},throwOnError:!0});let i=Be(n,`credential`,e?`${e.service}:${e.field}`:``);P.setQueryData(i,!0),P.invalidateQueries({queryKey:Zt({path:{assistant_id:n}})})}catch{O(d(`providerEditorContent.failedSaveApiKey`));return}finally{N(!1)}}e={type:`api_key`,credential:t}}else if(t)e=t.auth;else{O(d(`providerEditorContent.nothingToEdit`));return}let r=f.trim()||null,i={auth:e,label:r,...A&&{base_url:x.trim()||null},...k&&{models:C.trim()?C.split(`,`).map(e=>({id:e.trim()})).filter(e=>e.id):null}},{data:a,error:o,response:s}=await kt({path:{assistant_id:n,name:t?.name??h.trim()},body:i});if(!s?.ok){O(Ze(s?.status,o)??Ne(s?.status));return}if(!a){O(d(`providerEditorContent.emptyServerResponse`));return}Re(a,d),c(a)}catch{O(d(`providerEditorContent.failedSaveProvider`))}finally{E(!1)}}}let G=V.filter(e=>e.service===g),K=e!==`create`&&t?.auth.type===`api_key`,ne=G.length>0||K,ie=st(d(`providerEditorContent.apiKeyPlaceholder`),L);if(e===`create`)return(0,$.jsx)(ct,{variant:a===`panel`?`inline`:`modal`,actionsSlot:s,assistantId:n,existingNames:r,connections:i,defaultProviderType:g,onCreated:c,onCancel:l});let q=(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:(0,$.jsx)(re,{i18nKey:`providerEditorContent.displayNameLabel`,ns:`settings`,components:{optional:(0,$.jsx)(`span`,{className:`text-[var(--content-disabled)]`})}})}),(0,$.jsx)(R,{value:f,onChange:e=>m(e.target.value),placeholder:d(`providerEditorContent.displayNamePlaceholder`),fullWidth:!0}),U?(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:We[U]}):null]}),A&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:d(`providerEditorContent.baseUrlLabel`)}),(0,$.jsx)(R,{value:x,onChange:e=>S(e.target.value),placeholder:d(g===`ollama`?`providerEditorContent.baseUrlPlaceholderOllama`:`providerEditorContent.baseUrlPlaceholder`),fullWidth:!0}),g===`ollama`?(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:d(`providerEditorContent.baseUrlHintOllama`)}):null]}),k&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:d(`providerEditorContent.modelsLabel`)}),(0,$.jsx)(R,{value:C,onChange:e=>w(e.target.value),placeholder:d(`providerEditorContent.modelsPlaceholder`),fullWidth:!0}),(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:d(`providerEditorContent.modelsHint`)})]}),v===`api_key`&&(0,$.jsx)(Ue,{apiKeyValue:j,onApiKeyChange:M,credential:y,onCredentialChange:b,isLoadingCredential:z,apiKeyPlaceholder:ie,provider:g,providerCredentials:G,showAdvancedSection:ne,onError:O}),v===`oauth_subscription`&&(0,$.jsx)(Le,{assistantId:n,onConnected:c}),D&&(0,$.jsx)(_,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:D})]}),J=(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(u,{variant:`ghost`,onClick:l,children:d(`providerEditorContent.cancel`)}),(0,$.jsx)(u,{variant:`primary`,disabled:!te||T||ee,onClick:()=>void W(),children:d(T?`providerEditorContent.saving`:`providerEditorContent.saveChanges`)})]});return a===`panel`?(0,$.jsxs)(`div`,{className:`space-y-4`,children:[q,s===void 0?(0,$.jsx)(`div`,{className:`flex justify-end gap-2`,children:J}):s&&(0,Gr.createPortal)(J,s)]}):(0,$.jsxs)(B.Content,{size:`md`,children:[(0,$.jsxs)(B.Header,{children:[(0,$.jsx)(B.Title,{children:d(`providerEditorContent.editProviderTitle`)}),(0,$.jsx)(B.Description,{children:t?d(`providerEditorContent.editingConnection`,{name:Ye(t)}):d(`providerEditorContent.editProviderSettingsFallback`)})]}),(0,$.jsx)(B.Body,{children:q}),(0,$.jsx)(B.Footer,{children:J})]})}function qr({assistantId:e,connectionName:t,onClose:n}){let{t:r}=o(`settings`),i=p(),[a,s]=(0,Q.useState)(null),{data:c}=m(Ut({path:{assistant_id:e}})),l=(0,Q.useMemo)(()=>c?.connections??[],[c]),u=(0,Q.useMemo)(()=>t==null?void 0:l.find(e=>e.name===t),[t,l]),d=t!=null&&c!=null&&u==null;(0,Q.useEffect)(()=>{d&&n()},[d,n]);function f(){i.invalidateQueries({queryKey:zt({path:{assistant_id:e}})}),i.invalidateQueries({queryKey:Wt({path:{assistant_id:e}})}),n()}return(0,$.jsx)(Dn,{title:u?Ye(u):r(`providerDetailPanel.addProviderTitle`),closeVariant:`outlined`,onClose:n,footer:(0,$.jsx)(`div`,{ref:s,className:`flex justify-end gap-2`}),children:t==null||u!=null?(0,$.jsx)(Kr,{mode:u?`edit`:`create`,connection:u,variant:`panel`,actionsSlot:a,assistantId:e,existingNames:l.map(e=>e.name),connections:l,onSave:f,onCancel:n}):null})}var Jr={vellum:{provider:`vellum`},deepgram:{provider:`deepgram`,credentialService:`deepgram`},openai:{provider:`openai-whisper`,credentialService:`openai`}},Yr={vellum:`vellum`,deepgram:`deepgram`,"openai-whisper":`openai`},Xr=`deepgram`;function Zr({assistantId:e,hideSaveButton:t=!1,hideCredentialsGuide:n=!1,onSaveStateChange:r}={}){let i=En(),a=e??i,s=It(),c=p(),{t:l}=o(),u=(0,Q.useMemo)(()=>Je(Pt(),{displayName:l(`sttProviderForm.windowsNativeDisplayName`),subtitle:l(`sttProviderForm.windowsNativeSubtitle`),setupWarning:l(`sttProviderForm.windowsNativeSetupWarning`)}).filter(e=>!e.requiresNativeDictation||Pe()),[l]),d=Xr,{data:f}=m({...Gt({path:{assistant_id:a}}),enabled:s,staleTime:3e4}),h=f?.services?.stt,g=h?.mode===`managed`?`vellum`:h?.provider,_=(0,Q.useMemo)(()=>{let e=g?Yr[g]:void 0;if(e&&u.some(t=>t.id===e))return e;let t=W(tt,d);return u.some(e=>e.id===t)?t:d},[g,u,d]),v=!!g,[y,b]=Yn(_),{available:x,currentCode:S,configuredProviderId:C,selectLanguage:w,selecting:T}=Tn(a),[E,D]=(0,Q.useState)(!1),O=x&&y===_&&(Jr[y]?.provider===C||!!g&&!Yr[g]),[k,A]=(0,Q.useState)(``),[j,M]=(0,Q.useState)(!1),[ee,N]=(0,Q.useState)(!1);(0,Q.useEffect)(()=>{let e=W(tt,d);e===`macos-native`&&!u.some(t=>t.id===e)&&G(tt,d)},[u,d]);let F=(0,Q.useMemo)(()=>u.find(e=>e.id===y)??u[0],[u,y]),I=F.apiKeyPlaceholder!==void 0;(0,Q.useEffect)(()=>{M(W(gt+y,``).length>0),A(``)},[y]);let L=(0,Q.useMemo)(()=>{let e=y!==_,t=k.trim().length>0;return e||t},[y,_,k]),z=(0,Q.useCallback)(async()=>{let e=k.trim();G(tt,y),e.length>0&&G(gt+y,e);let t=Jr[y];N(!0);try{if(t?.credentialService){let n=e.length>0?e:W(gt+y,``);if(n.length>0){let{response:e}=await jt({path:{assistant_id:a},body:{service:t.credentialService,field:`api_key`,value:n,label:`${F.displayName} API Key`},throwOnError:!1});if(!e?.ok)throw Error(`Failed to store API key (HTTP ${e?.status??`?`})`)}}if(t&&(y!==_||!v)||g===`vellum`&&y!==`vellum`){let e=t?.provider??Xr,{response:n}=await Et({path:{assistant_id:a},body:{services:{stt:{provider:e,mode:e===`vellum`?`managed`:`your-own`}}},throwOnError:!1});if(!n?.ok)throw Error(`Failed to save configuration (HTTP ${n?.status??`?`})`)}return e.length>0&&M(!0),A(``),c.invalidateQueries({queryKey:Jt({path:{assistant_id:a}})}),V.success(l(`sttProviderForm.saveSuccess`)),!0}catch(e){return V.error(e instanceof Error?e.message:l(`sttProviderForm.saveFailed`)),!1}finally{N(!1)}},[a,y,k,F,_,v,g,c,l]);(0,Q.useEffect)(()=>{r?.({hasChanges:L,saving:ee,save:z})},[r,L,ee,z]);let B=(0,Q.useCallback)(()=>{G(gt+y,``),M(!1),A(``)},[y]),H=j?l(`sttProviderForm.apiKeyPlaceholderReplace`):F.apiKeyPlaceholder;return(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:l(`sttProviderForm.providerLabel`)}),(0,$.jsx)(U,{value:y,onChange:b,options:u.map(e=>({value:e.id,label:e.displayName})),"aria-label":l(`sttProviderForm.providerAriaLabel`)})]}),O&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:l(`sttProviderForm.spokenLanguage`)}),(0,$.jsx)(dt,{"aria-label":l(`sttProviderForm.spokenLanguage`),"aria-haspopup":`dialog`,onClick:()=>D(!0),value:wn(S,C)}),(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:l(`sttProviderForm.spokenLanguageApplies`)}),(0,$.jsx)(Pn,{open:E,onOpenChange:D,title:l(`sttProviderForm.spokenLanguage`),currentCode:S,configuredProviderId:C,selectLanguage:w,selecting:T})]}),I&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:l(`sttProviderForm.apiKeyLabel`)}),(0,$.jsx)(R,{type:`password`,value:k,onChange:e=>A(e.target.value),placeholder:H,fullWidth:!0})]}),F.setupWarning&&(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(P,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-[var(--system-mid-strong)]`}),(0,$.jsx)(`span`,{children:F.setupWarning})]}),!n&&F.credentialsGuide&&(0,$.jsx)(Un,{guide:F.credentialsGuide}),y===`vellum`&&(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:l(`sttProviderForm.vellumTranscription`)}),(!t||j)&&(0,$.jsxs)(`div`,{className:`flex items-center justify-end gap-2`,children:[!t&&(0,$.jsx)(Vn,{onClick:z,disabled:!L||ee}),j&&(0,$.jsx)(Hn,{onClick:B})]})]})}function Qr(){let{t:e}=o(`settings`);return(0,$.jsx)(Ln,{title:e(`speechToTextCard.title`),subtitle:e(`speechToTextCard.subtitle`),children:(0,$.jsx)(Zr,{})})}async function $r(e){let{provider:t,apiKey:n,voiceId:r,text:i}=e;if(n.trim().length===0)return{kind:`error`,message:`Save an API key for this provider first.`};try{return t===`elevenlabs`?await ei(n,r,i):t===`deepgram`?await ti(n,i):t===`fish-audio`?{kind:`unsupported`,message:`Fish Audio TTS is only supported in the desktop app today. Use ElevenLabs or Deepgram to test from the browser.`}:t===`xai`?{kind:`unsupported`,message:`xAI TTS is only supported in the desktop app today. Use ElevenLabs or Deepgram to test from the browser.`}:{kind:`unsupported`,message:`TTS testing for "${t}" is not supported from the browser yet.`}}catch(e){return{kind:`error`,message:e instanceof Error?e.message:`Failed to reach the TTS provider.`}}}async function ei(e,t,n){let r=t.trim();if(r.length===0)return{kind:`error`,message:`Enter and save a Voice ID before testing ElevenLabs.`};let i=await fetch(`https://api.elevenlabs.io/v1/text-to-speech/${encodeURIComponent(r)}?output_format=mp3_44100_128`,{method:`POST`,headers:{"xi-api-key":e,"Content-Type":`application/json`,Accept:`audio/mpeg`},body:JSON.stringify({text:n,model_id:`eleven_turbo_v2_5`})});return i.ok?{kind:`audio`,blob:await i.blob()}:{kind:`error`,message:await ni(i,`ElevenLabs rejected the request.`)}}async function ti(e,t){let n=await fetch(`https://api.deepgram.com/v1/speak?model=aura-2-thalia-en`,{method:`POST`,headers:{Authorization:`Token ${e}`,"Content-Type":`application/json`,Accept:`audio/mpeg`},body:JSON.stringify({text:t})});return n.ok?{kind:`audio`,blob:await n.blob()}:{kind:`error`,message:await ni(n,`Deepgram rejected the request.`)}}async function ni(e,t){try{let n=await e.text();if(n.length===0)return`${t} (HTTP ${e.status})`;try{let e=JSON.parse(n);if(e&&typeof e==`object`&&`detail`in e&&typeof e.detail==`string`)return e.detail;if(e&&typeof e==`object`&&`message`in e&&typeof e.message==`string`)return e.message}catch{}return n.slice(0,200)}catch{return`${t} (HTTP ${e.status})`}}function ri({assistantId:e,value:t,onChange:n,className:r}){let{t:i}=o(),[a,s]=(0,Q.useState)(!1),{voices:c}=Sn(e);if(c.length===0)return null;let l=c.find(e=>e.model===t)??c[0];return(0,$.jsxs)(L.Root,{open:a,onOpenChange:s,children:[(0,$.jsx)(L.Trigger,{asChild:!0,children:(0,$.jsx)(dt,{"aria-label":i(`voicePickerField.ariaLabel`),value:l?xn(l.description):i(`voicePickerField.selectVoice`),className:r})}),(0,$.jsx)(L.Content,{side:`bottom`,align:`start`,className:`w-[var(--radix-popover-trigger-width)] p-1`,children:(0,$.jsx)(Cn,{assistantId:e,value:t,onChange:n,onSelect:()=>s(!1),showSource:!0,autoScrollToSelected:!0})})]})}var ii={elevenlabs:`voiceId`,"fish-audio":`referenceId`,xai:`voiceId`};function ai({assistantId:e,hideSaveButton:t=!1,hideCredentialsGuide:n=!1,onSaveStateChange:r}={}){let{t:i}=o(),a=En(),s=e??a,c=ne.use.name()??`your assistant`,l=It(),d=p(),{data:f}=m({...Ht({path:{assistant_id:s}}),enabled:l,staleTime:1/0}),h=(0,Q.useMemo)(()=>{let e=f?.providers;if(!e)return bt;if(e.some(e=>e.id===`vellum`))return e;let t=bt.find(e=>e.id===`vellum`);return t?[t,...e]:e},[f]),{data:g}=m({...Gt({path:{assistant_id:s}}),enabled:l,staleTime:3e4}),_=g?.services?.tts,v=_?.mode===`managed`?`vellum`:_?.provider,y=`elevenlabs`,b=(0,Q.useMemo)(()=>v??W(`vellum:voice:ttsProvider`,y),[v,y]),x=!!v,[S,C]=Yn(b),[w,T]=(0,Q.useState)(``),[E,D]=(0,Q.useState)(``),[k,A]=(0,Q.useState)(``),[j,M]=(0,Q.useState)(!1),[ee,N]=(0,Q.useState)(!1),[P,F]=(0,Q.useState)(!1),{voices:I,defaultModel:L,fetched:z}=bn(s,{enabled:S===`vellum`}),B=_?.providers?.vellum?.model??L??``,[H,te]=Yn(B),K=I.find(e=>e.model===H)??I[0],[re,ie]=(0,Q.useState)(null),q=I.some(e=>e.model===B),J=re??(z&&B!==``&&!q),Y=(0,Q.useMemo)(()=>h.find(e=>e.id===S)??h[0],[S,h]),X=S===`vellum`&&Y.supportsVoiceSelection&&H.trim()!==``&&H.trim()!==B,ae=(0,Q.useCallback)(e=>{let t=W(lt+e,``),n=W(nt+e,``);M(t.length>0),D(n),A(n),T(``)},[]);(0,Q.useEffect)(()=>{ae(S)},[S,ae]);let Z=(0,Q.useMemo)(()=>{let e=S!==b,t=w.trim().length>0,n=E.trim()!==k;return e||t||n||X},[S,b,w,E,k,X]),oe=(0,Q.useCallback)(async()=>{let e=w.trim(),t=E.trim(),n=Y.id;G(vt,n),e.length>0&&G(lt+n,e),G(nt+n,t);let r=e.length>0?e:W(lt+n,``),a=ii[n];F(!0);try{if(r.length>0){let{response:e}=await jt({path:{assistant_id:s},body:{service:n,field:`api_key`,value:r,label:`${Y.displayName} API Key`},throwOnError:!1});if(!e?.ok)throw Error(`Failed to store API key (HTTP ${e?.status??`?`})`)}let e={...S!==b||!x?{provider:n,mode:n===`vellum`?`managed`:`your-own`}:{},...a?{providers:{[n]:{[a]:t}}}:{},...X?{providers:{vellum:{model:H.trim()}}}:{}};if(Object.keys(e).length>0){let{response:t}=await Et({path:{assistant_id:s},body:{services:{tts:e}},throwOnError:!1});if(!t?.ok)throw Error(`Failed to save configuration (HTTP ${t?.status??`?`})`)}return M(r.length>0),A(t),T(``),d.invalidateQueries({queryKey:Jt({path:{assistant_id:s}})}),V.success(i(`ttsProviderForm.saved`)),!0}catch(e){return V.error(e instanceof Error?e.message:i(`ttsProviderForm.saveFailed`)),!1}finally{F(!1)}},[s,S,H,X,w,E,Y,b,x,d,i]);(0,Q.useEffect)(()=>{r?.({hasChanges:Z,saving:P,save:oe})},[r,Z,P,oe]);let se=(0,Q.useCallback)(()=>{G(lt+S,``),M(!1),T(``)},[S]),ce=(0,Q.useCallback)(async()=>{N(!0);try{let e=W(lt+S,``),t=w.trim(),n=t.length>0?t:e;if(n.length===0){V.error(i(`ttsProviderForm.apiKeyRequired`));return}let r=W(nt+S,``),a=E.trim(),o=await $r({provider:S,apiKey:n,voiceId:a.length>0?a:r,text:`Hey! It's ${c}. How does this sound?`});if(o.kind!==`audio`){V.error(o.message);return}let s=URL.createObjectURL(o.blob);try{let e=new Audio(s);await e.play(),await new Promise(t=>{e.onended=()=>t(),e.onerror=()=>t()})}finally{URL.revokeObjectURL(s)}}finally{N(!1)}},[c,w,S,E,i]),le=j?`•••••••• (Enter a new key to replace)`:Y.apiKeyPlaceholder,ue=S===`vellum`,de=ue&&Y.supportsVoiceSelection,fe=(0,$.jsxs)(u,{variant:`link`,size:`compact`,className:`inline-flex h-auto items-center gap-1 px-0 underline [--vbtn-fg:var(--content-tertiary)]`,onClick:()=>{ie(!1),I.some(e=>e.model===H)||te(L||I[0]?.model||``)},children:[(0,$.jsx)(O,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),i(`ttsProviderForm.chooseFromCatalog`)]}),pe=de&&J&&I.length>0?fe:null;return(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`ttsProviderForm.provider`)}),(0,$.jsx)(U,{value:S,onChange:C,options:h.map(e=>({value:e.id,label:e.displayName})),"aria-label":i(`ttsProviderForm.providerAriaLabel`)})]}),!ue&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`ttsProviderForm.apiKey`)}),(0,$.jsx)(R,{type:`password`,value:w,onChange:e=>T(e.target.value),placeholder:le,fullWidth:!0})]}),de&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`ttsProviderForm.voice`)}),J?(0,$.jsx)(R,{type:`text`,value:H,onChange:e=>te(e.target.value),placeholder:i(`ttsProviderForm.voiceIdPlaceholder`),"aria-label":i(`ttsProviderForm.customVoiceIdAriaLabel`),fullWidth:!0}):K?(0,$.jsx)(ri,{assistantId:s,value:H,onChange:te}):z&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:i(`ttsProviderForm.noManagedVoices`)})]}),Y.supportsVoiceSelection&&!ue&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`ttsProviderForm.voiceId`)}),(0,$.jsx)(R,{type:`text`,value:E,onChange:e=>D(e.target.value),placeholder:i(`ttsProviderForm.voiceIdPlaceholder`),fullWidth:!0})]}),!n&&!ue&&(0,$.jsx)(Un,{guide:Y.credentialsGuide}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[!ue&&(0,$.jsx)(u,{variant:`outlined`,onClick:ce,disabled:ee,children:i(ee?`ttsProviderForm.testing`:`ttsProviderForm.test`)}),(0,$.jsxs)(`div`,{className:`ml-auto flex items-center gap-3`,children:[pe,!t&&(0,$.jsx)(Vn,{onClick:oe,disabled:!Z||P}),j&&!ue&&(0,$.jsx)(Hn,{onClick:se})]})]})]})}function oi(){let{t:e}=o(`settings`);return(0,$.jsx)(Ln,{id:`text-to-speech`,title:e(`textToSpeechCard.title`),subtitle:e(`textToSpeechCard.subtitle`),children:(0,$.jsx)(ai,{})})}var si=`default`;function ci(){let{t:e}=o(`settings`),t=En(),n=p(),{data:r}=m({...Gt({path:{assistant_id:t}}),staleTime:3e4}),a=qt({onSuccess:e=>{$t(n,{path:{assistant_id:t}},e)}}),s=Jn(),c=(0,Q.useMemo)(()=>r?r.services?.[`web-fetch`]?.provider||W(`vellum:ai:webFetchProvider`,si):W(rt,si),[r]),l=(0,Q.useMemo)(()=>r?.services?.[`web-fetch`]?.apiBase??``,[r]),[u,d]=(0,Q.useState)(!1),[f,h]=Yn(c),[g,_]=Yn(l),[v,y]=(0,Q.useState)(``),b=Y.has(f),x=ke.has(f),{hasStoredCredential:S}=He({assistantId:t,credentialKind:`api_key`,credentialName:f,enabled:x}),C=v.trim().length>0,w=g.trim(),T=b&&w.length>0,E=f!==c||b&&w!==l.trim(),D=u||x&&!T&&!S&&!C||!E&&!C,O=st(se[f]??e(`webFetchCard.apiKeyPlaceholder`),S),A=le[f]??``,j=(0,Q.useCallback)(async()=>{d(!0);let r=v.trim(),o=x&&r.length>0;try{o&&await s(f,r),await a.mutateAsync({path:{assistant_id:t},body:{services:{"web-fetch":{provider:f,...b?{apiBase:w}:{}}}}}).catch(t=>{throw V.error(e(`webFetchCard.configUpdateFailedToast`)),i(t,{context:`patch_daemon_config`}),t})}catch{d(!1);return}d(!1);try{if(G(rt,f),o){let e=me(f);e&&G(e,r);let i=Be(t,`api_key`,f);n.setQueryData(i,!0),n.invalidateQueries({queryKey:i}),y(``)}V.success(e(`webFetchCard.savedToast`))}catch(t){i(t,{context:`settings-ai-web-fetch-persist-local`}),V.error(e(`webFetchCard.localPreferencesFailedToast`))}},[x,a,s,n,t,v,f,b,w,e]),M=(0,Q.useCallback)(()=>{let e=me(f);e&&K(e),y(``),_(``),h(si),G(rt,si)},[f,h,_]);return(0,$.jsx)(Ln,{id:`web-fetch`,title:e(`webFetchCard.title`),subtitle:e(`webFetchCard.subtitle`),children:(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e(`webFetchCard.providerLabel`)}),(0,$.jsx)(U,{value:f,onChange:h,options:X.map(e=>({value:e,label:ae[e]??e}))})]}),b&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(R,{label:e(`webFetchCard.apiBaseLabel`),type:`url`,value:g,onChange:e=>_(e.target.value),placeholder:A||e(`webFetchCard.apiBasePlaceholder`),fullWidth:!0}),A?(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e(`webFetchCard.apiBaseHint`,{defaultBase:A})}):null]}),x&&(0,$.jsx)(R,{label:e(`webFetchCard.apiKeyLabel`),type:`password`,value:v,onChange:e=>y(e.target.value),placeholder:O,fullWidth:!0}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Vn,{onClick:j,disabled:D}),u&&(0,$.jsx)(k,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`}),x&&(0,$.jsx)(Hn,{onClick:M,filled:!0})]})]})})}var li=`0.10.12`;function ui(){return St(li)}function di(){let{t:e}=o(`settings`),t=En(),n=p(),r=It(),{data:a}=m({...Gt({path:{assistant_id:t}}),enabled:r,staleTime:3e4}),s=qt({onSuccess:e=>{$t(n,{path:{assistant_id:t}},e)}}),c=Jn(),l=(0,Q.useMemo)(()=>{if(!a)return W(pt,`inference-provider-native`);let e=a.services?.[`web-search`];return(e?.mode===`managed`&&e?.provider!==`inference-provider-native`?`vellum`:e?.provider)||W(`vellum:ai:webSearchProvider`,`inference-provider-native`)},[a]),u=(0,Q.useMemo)(()=>a?.services?.[`web-search`]?.apiBase??``,[a]),[d,f]=(0,Q.useState)(!1),[h,g]=Yn(l),[_,v]=Yn(u),[y,b]=(0,Q.useState)(``),x=he.has(h),S=ue.has(h),C=Oe.has(h),{hasStoredCredential:w}=He({assistantId:t,credentialKind:`api_key`,credentialName:h,enabled:S}),T=y.trim().length>0,E=_.trim(),D=x&&E.length>0,O=h!==l||x&&E!==u.trim(),A=d||S&&!C&&!D&&!w&&!T||!O&&!T,j=st(ce[h]??e(`webSearchCard.apiKeyPlaceholder`),w),M=je[h]??``,ee=(0,Q.useCallback)(async()=>{f(!0);let r=y.trim(),a=we(h),o=S&&r.length>0;try{o&&await c(h,r),await Ct();let n=h===`vellum`?ui()?{provider:`vellum`,mode:`managed`}:{mode:`managed`}:{provider:h,mode:`your-own`,...x?{apiBase:E}:{}};await s.mutateAsync({path:{assistant_id:t},body:{services:{"web-search":n}}}).catch(t=>{throw V.error(e(`webSearchCard.configUpdateFailedToast`)),i(t,{context:`patch_daemon_config`}),t})}catch{f(!1);return}f(!1);try{if(G(pt,h),o){a&&G(a,r);let e=Be(t,`api_key`,h);n.setQueryData(e,!0),n.invalidateQueries({queryKey:e}),b(``)}V.success(e(`webSearchCard.savedToast`))}catch(t){i(t,{context:`settings-ai-web-search-persist-local`}),V.error(e(`webSearchCard.localPreferencesFailedToast`))}},[S,s,c,n,t,y,h,x,E,e]),N=(0,Q.useCallback)(()=>{let e=we(h);e&&K(e),b(``),v(``),g(`inference-provider-native`),G(pt,`inference-provider-native`)},[h,g,v]);return(0,$.jsx)(Ln,{title:e(`webSearchCard.title`),subtitle:e(`webSearchCard.subtitle`),children:(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e(`webSearchCard.providerLabel`)}),(0,$.jsx)(U,{"aria-label":e(`webSearchCard.providerAriaLabel`),value:h,onChange:g,options:Ae.map(e=>({value:e,label:fe[e]??e}))})]}),h===`vellum`&&(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`webSearchCard.vellumNote`)}),x&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(R,{label:e(`webSearchCard.apiBaseLabel`),type:`url`,value:_,onChange:e=>v(e.target.value),placeholder:M||e(`webSearchCard.apiBasePlaceholder`),fullWidth:!0}),M?(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e(`webSearchCard.apiBaseHint`,{defaultBase:M})}):null]}),S&&(0,$.jsx)(R,{label:e(`webSearchCard.apiKeyLabel`),type:`password`,value:y,onChange:e=>b(e.target.value),placeholder:j,fullWidth:!0}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Vn,{onClick:ee,disabled:A}),d&&(0,$.jsx)(k,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`}),S&&(0,$.jsx)(Hn,{onClick:N,filled:!0})]})]})})}function fi(){let e=En(),t=gn(),[n,r]=(0,Q.useState)(null);(0,Q.useEffect)(()=>{let e=window.location.hash.slice(1);e&&requestAnimationFrame(()=>{document.getElementById(e)?.scrollIntoView({block:`start`})})},[]);let i=(0,$.jsxs)(`div`,{className:`min-h-0 flex-1 space-y-5 overflow-y-auto`,children:[(0,$.jsx)(zn,{}),(0,$.jsx)(kr,{panel:n,onOpenPanel:r,onClosePanel:()=>r(null)}),(0,$.jsx)(di,{}),(0,$.jsx)(ci,{}),(0,$.jsx)(qn,{}),(0,$.jsx)($n,{}),(0,$.jsx)(oi,{}),(0,$.jsx)(Qr,{})]}),a=`${e??`none`}:${n?.kind===`profile`?`profile:${n.name}`:n?.kind===`provider`?`provider:${n.name}`:n?.kind??`closed`}`,o=n?.kind===`provider`||n?.kind===`add-provider`,s=n!=null&&e?n.kind===`overrides`?(0,$.jsx)(Wr,{assistantId:e,onClose:()=>r(null)},a):o?(0,$.jsx)(qr,{assistantId:e,connectionName:n.kind===`provider`?n.name:null,onClose:()=>r(null)},a):(0,$.jsx)(Mr,{assistantId:e,profileName:n.kind===`profile`?n.name:null,onClose:()=>r(null)},a):null;return s&&t?(0,$.jsx)(kn,{children:s}):s?(0,$.jsx)(An,{storageKey:`aiSettingsDetailDrawerWidth`,detailKey:a,section:i,detail:s}):i}export{fi as AiPage};
@@ -1 +1 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{m as n}from"./platform-detection-BVSM8PRh.js";import{n as r}from"./browser-BEhg-q3w.js";var i=e(t(),1);function a(e){return new URL(e,window.location.origin).toString()}function o(e){r(a(e))}function s(e){let{open:t,path:r,onClose:a}=e,s=n(),c=(0,i.useRef)(a);return(0,i.useEffect)(()=>{c.current=a}),(0,i.useEffect)(()=>{s&&t&&(o(r),c.current())},[s,t,r]),s}export{s as n,o as t};
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{m as n}from"./platform-detection-DUeD4WFO.js";import{n as r}from"./browser-BaGW19xY.js";var i=e(t(),1);function a(e){return new URL(e,window.location.origin).toString()}function o(e){r(a(e))}function s(e){let{open:t,path:r,onClose:a}=e,s=n(),c=(0,i.useRef)(a);return(0,i.useEffect)(()=>{c.current=a}),(0,i.useEffect)(()=>{s&&t&&(o(r),c.current())},[s,t,r]),s}export{s as n,o as t};
@@ -1 +1 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{v as t}from"./i18n-BDfnKs41.js";import{t as n}from"./react-DJZBPgpf.js";import{t as r}from"./button-B1kEAcLt.js";import{d as i,h as a}from"./chunk-5KNZJZUH-CPFsMQoz.js";import{t as o}from"./jsx-runtime-COOF1INC.js";import{t as s}from"./input-ChbJ2nzd.js";import{t as c}from"./select-DmdFZj4l.js";import{t as l}from"./is-electron-D45bjFI8.js";import{f as u}from"./routes-C6ueuiMd.js";import{t as d}from"./onboarding-navigation-oNFNDeeW.js";import{t as f}from"./onboarding-layout-C9v6Q2QQ.js";import{a as p,c as m,i as h,o as g,r as _,s as v}from"./provider-key-CXIl3HXm.js";import"./onboarding-step-layout-CVDi6y2-.js";var y=e(n(),1),b=o();function x(){let{t:e}=t(`onboarding`),n=i(),[o]=a(),x=o.get(`hosting`),S=l(),C=_(),[w,T]=(0,y.useState)(()=>C?.provider??p.id),[E,D]=(0,y.useState)(()=>C?.key??``),[O,k]=(0,y.useState)(()=>C?.model??v(C?.provider??p.id)??``),[A,j]=(0,y.useState)(()=>C?.baseUrl??``),[M,N]=(0,y.useState)(()=>C?.customModels??``),P=m(w)??p,F=P.models??[],I=P.requiresKey,L=F.length>0,R=w===`openai-compatible`,z=(!(I&&!R)||E.trim().length>0)&&(!L||O.trim().length>0)&&(!R||A.trim().length>0&&M.trim().length>0);return(0,b.jsx)(f,{avatarWave:`beside`,children:(0,b.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-col items-center ${S?`min-h-full px-8 pt-21 pb-4 electron-prechat-type`:`px-6 py-16`} text-[var(--content-default)]`,children:[(0,b.jsx)(`h1`,{className:S?`text-title-large`:`text-3xl font-semibold tracking-tight`,style:{animation:`fadeInUp 0.5s ease-out 0.1s both`},children:e(`apiKeyScreen.title`)}),(0,b.jsx)(`p`,{className:`text-center text-body-medium-lighter text-[var(--content-tertiary)] ${S?`mt-3.5`:`mt-3`}`,style:{animation:`fadeInUp 0.5s ease-out 0.3s both`},children:e(`apiKeyScreen.body`)}),(0,b.jsxs)(`div`,{className:`flex w-full flex-col gap-4 ${S?`mt-8`:`mt-10`}`,style:{animation:`fadeInUp 0.5s ease-out 0.4s both`},children:[(0,b.jsxs)(`div`,{className:`flex flex-col ${S?`gap-2`:`gap-1`}`,children:[(0,b.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e(`apiKeyScreen.providerLabel`)}),(0,b.jsx)(c,{"aria-label":e(`apiKeyScreen.providerLabel`),value:w,onChange:e=>{let t=m(e);t&&(T(t.id),D(``),k(v(t.id)??``))},options:g.map(e=>({value:e.id,label:e.displayName}))})]}),F.length>0&&(0,b.jsxs)(`div`,{className:`flex flex-col ${S?`gap-2`:`gap-1`}`,children:[(0,b.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e(`apiKeyScreen.modelLabel`)}),(0,b.jsx)(c,{"aria-label":e(`apiKeyScreen.modelLabel`),value:O,onChange:k,options:F.map(e=>({value:e.id,label:e.displayName}))})]}),R&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(`div`,{className:`flex flex-col ${S?`gap-2`:`gap-1`}`,children:[(0,b.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e(`apiKeyScreen.baseUrlLabel`)}),(0,b.jsx)(s,{type:`text`,placeholder:`http://localhost:1234/v1`,value:A,onChange:e=>j(e.target.value),fullWidth:!0})]}),(0,b.jsxs)(`div`,{className:`flex flex-col ${S?`gap-2`:`gap-1`}`,children:[(0,b.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e(`apiKeyScreen.modelsLabel`)}),(0,b.jsx)(s,{type:`text`,placeholder:e(`apiKeyScreen.modelsPlaceholder`),value:M,onChange:e=>N(e.target.value),fullWidth:!0}),(0,b.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e(`apiKeyScreen.modelsHelp`)})]})]}),I&&(0,b.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,b.jsx)(s,{type:`password`,label:e(`apiKeyScreen.apiKeyLabel`,{provider:P.displayName}),placeholder:P.apiKeyPlaceholder??e(`apiKeyScreen.apiKeyPlaceholder`),value:E,onChange:e=>D(e.target.value),className:`touch-mobile:text-[16px]`,fullWidth:!0}),P.docsUrl&&(0,b.jsxs)(`p`,{className:`self-start text-body-medium-lighter text-[var(--content-tertiary)]`,children:[e(`apiKeyScreen.noKeyPrompt`),` `,(0,b.jsx)(`a`,{href:P.docsUrl,target:`_blank`,rel:`noreferrer`,className:`text-[var(--content-default)] underline`,children:e(`apiKeyScreen.getKeyLink`)})]})]})]}),(0,b.jsxs)(`div`,{className:`mt-8 flex w-full flex-col ${S?`gap-2.5`:`gap-2`}`,style:{animation:`fadeInUp 0.5s ease-out 0.5s both`},children:[(0,b.jsx)(r,{variant:`primary`,size:`regular`,fullWidth:!0,disabled:!z,onClick:()=>{if(!z)return;let e=O.trim()||v(w);h({provider:w,key:E.trim(),...e?{model:e}:{},...R?{baseUrl:A.trim(),customModels:M.trim()}:{}}),n(x?`${u.onboarding.privacy}?hosting=${x}`:u.onboarding.privacy,d)},className:S?void 0:`h-11 text-base`,children:e(`actions.continue`)}),(0,b.jsx)(r,{variant:`outlined`,size:`regular`,fullWidth:!0,onClick:()=>{n(u.onboarding.hosting,d)},className:S?void 0:`h-11 text-base`,children:e(`actions.back`)})]})]})})}export{x as ApiKeyScreen};
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{v as t}from"./i18n-BtV8MCsZ.js";import{t as n}from"./react-DJZBPgpf.js";import{t as r}from"./button-B1kEAcLt.js";import{d as i,h as a}from"./chunk-5KNZJZUH-CPFsMQoz.js";import{t as o}from"./jsx-runtime-COOF1INC.js";import{t as s}from"./input-ChbJ2nzd.js";import{t as c}from"./select-DmdFZj4l.js";import{t as l}from"./is-electron-D45bjFI8.js";import{f as u}from"./routes-C6ueuiMd.js";import{t as d}from"./onboarding-navigation-oNFNDeeW.js";import{t as f}from"./onboarding-layout-C9v6Q2QQ.js";import{a as p,c as m,i as h,o as g,r as _,s as v}from"./provider-key-CcPF1Zqp.js";import"./onboarding-step-layout-_Fbi43YU.js";var y=e(n(),1),b=o();function x(){let{t:e}=t(`onboarding`),n=i(),[o]=a(),x=o.get(`hosting`),S=l(),C=_(),[w,T]=(0,y.useState)(()=>C?.provider??p.id),[E,D]=(0,y.useState)(()=>C?.key??``),[O,k]=(0,y.useState)(()=>C?.model??v(C?.provider??p.id)??``),[A,j]=(0,y.useState)(()=>C?.baseUrl??``),[M,N]=(0,y.useState)(()=>C?.customModels??``),P=m(w)??p,F=P.models??[],I=P.requiresKey,L=F.length>0,R=w===`openai-compatible`,z=(!(I&&!R)||E.trim().length>0)&&(!L||O.trim().length>0)&&(!R||A.trim().length>0&&M.trim().length>0);return(0,b.jsx)(f,{avatarWave:`beside`,children:(0,b.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-col items-center ${S?`min-h-full px-8 pt-21 pb-4 electron-prechat-type`:`px-6 py-16`} text-[var(--content-default)]`,children:[(0,b.jsx)(`h1`,{className:S?`text-title-large`:`text-3xl font-semibold tracking-tight`,style:{animation:`fadeInUp 0.5s ease-out 0.1s both`},children:e(`apiKeyScreen.title`)}),(0,b.jsx)(`p`,{className:`text-center text-body-medium-lighter text-[var(--content-tertiary)] ${S?`mt-3.5`:`mt-3`}`,style:{animation:`fadeInUp 0.5s ease-out 0.3s both`},children:e(`apiKeyScreen.body`)}),(0,b.jsxs)(`div`,{className:`flex w-full flex-col gap-4 ${S?`mt-8`:`mt-10`}`,style:{animation:`fadeInUp 0.5s ease-out 0.4s both`},children:[(0,b.jsxs)(`div`,{className:`flex flex-col ${S?`gap-2`:`gap-1`}`,children:[(0,b.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e(`apiKeyScreen.providerLabel`)}),(0,b.jsx)(c,{"aria-label":e(`apiKeyScreen.providerLabel`),value:w,onChange:e=>{let t=m(e);t&&(T(t.id),D(``),k(v(t.id)??``))},options:g.map(e=>({value:e.id,label:e.displayName}))})]}),F.length>0&&(0,b.jsxs)(`div`,{className:`flex flex-col ${S?`gap-2`:`gap-1`}`,children:[(0,b.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e(`apiKeyScreen.modelLabel`)}),(0,b.jsx)(c,{"aria-label":e(`apiKeyScreen.modelLabel`),value:O,onChange:k,options:F.map(e=>({value:e.id,label:e.displayName}))})]}),R&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(`div`,{className:`flex flex-col ${S?`gap-2`:`gap-1`}`,children:[(0,b.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e(`apiKeyScreen.baseUrlLabel`)}),(0,b.jsx)(s,{type:`text`,placeholder:`http://localhost:1234/v1`,value:A,onChange:e=>j(e.target.value),fullWidth:!0})]}),(0,b.jsxs)(`div`,{className:`flex flex-col ${S?`gap-2`:`gap-1`}`,children:[(0,b.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e(`apiKeyScreen.modelsLabel`)}),(0,b.jsx)(s,{type:`text`,placeholder:e(`apiKeyScreen.modelsPlaceholder`),value:M,onChange:e=>N(e.target.value),fullWidth:!0}),(0,b.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e(`apiKeyScreen.modelsHelp`)})]})]}),I&&(0,b.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,b.jsx)(s,{type:`password`,label:e(`apiKeyScreen.apiKeyLabel`,{provider:P.displayName}),placeholder:P.apiKeyPlaceholder??e(`apiKeyScreen.apiKeyPlaceholder`),value:E,onChange:e=>D(e.target.value),className:`touch-mobile:text-[16px]`,fullWidth:!0}),P.docsUrl&&(0,b.jsxs)(`p`,{className:`self-start text-body-medium-lighter text-[var(--content-tertiary)]`,children:[e(`apiKeyScreen.noKeyPrompt`),` `,(0,b.jsx)(`a`,{href:P.docsUrl,target:`_blank`,rel:`noreferrer`,className:`text-[var(--content-default)] underline`,children:e(`apiKeyScreen.getKeyLink`)})]})]})]}),(0,b.jsxs)(`div`,{className:`mt-8 flex w-full flex-col ${S?`gap-2.5`:`gap-2`}`,style:{animation:`fadeInUp 0.5s ease-out 0.5s both`},children:[(0,b.jsx)(r,{variant:`primary`,size:`regular`,fullWidth:!0,disabled:!z,onClick:()=>{if(!z)return;let e=O.trim()||v(w);h({provider:w,key:E.trim(),...e?{model:e}:{},...R?{baseUrl:A.trim(),customModels:M.trim()}:{}}),n(x?`${u.onboarding.privacy}?hosting=${x}`:u.onboarding.privacy,d)},className:S?void 0:`h-11 text-base`,children:e(`actions.continue`)}),(0,b.jsx)(r,{variant:`outlined`,size:`regular`,fullWidth:!0,onClick:()=>{n(u.onboarding.hosting,d)},className:S?void 0:`h-11 text-base`,children:e(`actions.back`)})]})]})})}export{x as ApiKeyScreen};
@@ -1 +1 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{v as t}from"./i18n-BDfnKs41.js";import{t as n}from"./react-DJZBPgpf.js";import{t as r}from"./button-B1kEAcLt.js";import{n as i}from"./QueryClientProvider-BPZM68-A.js";import{t as a}from"./useQuery-BtL9k7Sh.js";import{t as o}from"./useMutation-Cl7cazkm.js";import{t as s}from"./jsx-runtime-COOF1INC.js";import{t as c}from"./createLucideIcon-CMfEC_aW.js";import{t as l}from"./external-link-cVsOyP-B.js";import{t as u}from"./puzzle-PqInNnOi.js";import"./src-BKET5Cno.js";import{n as d}from"./toast-BKrDuNtu.js";import{t as f}from"./confirm-dialog-EPYSBP_B.js";import{t as p}from"./sdk.gen-BluU0h_N.js";import{i as m}from"./typed-storage-Bw4gW_Pk.js";import{a as h,i as g,t as _}from"./react-query.gen-C_GLKG7m.js";import{s as v}from"./viewer-store-Dgua7F-U.js";import{t as y}from"./use-assistant-capability-D_tZY-cd.js";import{t as b}from"./misc-dA4Wklt2.js";import{a as x}from"./sandbox-bridge-BkKOlHRs.js";var S=c(`pin-off`,[[`path`,{d:`M12 17v5`,key:`bb1du9`}],[`path`,{d:`M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89`,key:`znwnzq`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11`,key:`c9qhm2`}]]),C=c(`pin`,[[`path`,{d:`M12 17v5`,key:`bb1du9`}],[`path`,{d:`M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z`,key:`1nkz8b`}]]),w=e(n(),1);function T(){return y(`appPins`)}function E(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.appId==`string`&&typeof t.pinnedOrder==`number`&&Number.isFinite(t.pinnedOrder)&&typeof t.name==`string`&&(t.icon===void 0||typeof t.icon==`string`)&&(t.color===void 0||typeof t.color==`string`)}function D(e){let t=JSON.parse(e);return Array.isArray(t)?t.filter(E):null}var O=m({key:`vellum:pinnedApps`,scope:`user`,parse:D,serialize:JSON.stringify,fallback:[]}),k=O.load,A=O.save,j=O.subscribe,M=O.remove;function N(e){let t=O.load();if(t.some(t=>t.appId===e.id))return;let n=t.reduce((e,t)=>Math.max(e,t.pinnedOrder),0);O.save([...t,{appId:e.id,pinnedOrder:n+1,name:e.name,icon:e.icon}])}function P(e){let t=O.load().filter(t=>t.appId!==e);t=t.sort((e,t)=>e.pinnedOrder-t.pinnedOrder).map((e,t)=>({...e,pinnedOrder:t+1})),O.save(t)}function F(e,t){let n=O.load();n.some(t=>t.appId===e)&&O.save(n.map(n=>{if(n.appId!==e)return n;let{color:r,...i}=n;return t===null?i:{...i,color:t}}))}function I(e){let t=(0,w.useSyncExternalStore)(j,k,k),n=(0,w.useMemo)(()=>[...t].sort((e,t)=>e.pinnedOrder-t.pinnedOrder).map(e=>({id:e.appId,name:e.name,icon:e.icon,pinColor:e.color})),[t]),r=(0,w.useMemo)(()=>new Set(n.map(e=>e.id)),[n]);return{pinnedApps:n,togglePin:(0,w.useCallback)(t=>{if(r.has(t)){P(t);return}let n=e.find(e=>e.id===t);n&&N({id:n.id,name:n.name,icon:n.icon})},[r,e]),unpin:(0,w.useCallback)(e=>{r.has(e)&&P(e)},[r]),setColor:(0,w.useCallback)((e,t)=>{r.has(e)&&F(e,t)},[r])}}var L=[];function R(e){let t=T(),n=(0,w.useMemo)(()=>({assistant_id:e??``}),[e]),{data:r=L}=a({...g({path:n}),select:e=>e.apps,enabled:!!e}),i=z(e,n,r),o=I(r),s=t?i:o,c=(0,w.useMemo)(()=>new Set(s.pinnedApps.map(e=>e.id)),[s.pinnedApps]);return{...s,pinnedAppIds:c,source:t?`daemon`:`local`}}function z(e,t,n){let r=i(),a=(0,w.useMemo)(()=>n.filter(e=>e.pinSortPosition!==void 0).sort((e,t)=>(e.pinSortPosition??0)-(t.pinSortPosition??0)).map(({id:e,name:t,icon:n,pinColor:r})=>({id:e,name:t,icon:n,pinColor:r})),[n]),s=(0,w.useMemo)(()=>new Set(a.map(e=>e.id)),[a]),{mutate:c}=o({..._(),onMutate:async e=>{let n=h({path:t});await r.cancelQueries({queryKey:n});let i=r.getQueryData(n);return r.setQueryData(n,t=>t&&B(t,e.path.id,e.body)),{previous:i}},onError:(e,n,i)=>{i?.previous&&r.setQueryData(h({path:t}),i.previous)},onSettled:()=>r.invalidateQueries({queryKey:h({path:t})})}),l=(0,w.useCallback)((n,r)=>{e&&c({path:{...t,id:n},body:r})},[e,c,t]);return{pinnedApps:a,togglePin:(0,w.useCallback)(e=>{l(e,{pinned:!s.has(e)})},[l,s]),unpin:(0,w.useCallback)(e=>{s.has(e)&&l(e,{pinned:!1})},[l,s]),setColor:(0,w.useCallback)((e,t)=>{s.has(e)&&l(e,{color:t})},[l,s])}}function B(e,t,n){let r=e.apps.reduce((e,t)=>Math.max(e,t.pinSortPosition??0),0);return{...e,apps:e.apps.map(e=>{if(e.id!==t)return e;let i={...e};return n.pinned===!1?(delete i.pinSortPosition,delete i.pinColor,i):(n.pinned===!0&&i.pinSortPosition===void 0&&(i.pinSortPosition=r+1),n.color===null?delete i.pinColor:n.color!==void 0&&(i.pinColor=n.color),i)})}}var V=s();function H({app:e,isDeleting:n,onConfirm:r,onCancel:i}){let{t:a}=t();return(0,V.jsx)(f,{open:e!==null,title:a(`deleteAppDialog.title`),message:e?a(`deleteAppDialog.message`,{name:e.name}):``,confirmLabel:a(n?`deleteAppDialog.deleting`:`deleteAppDialog.delete`),destructive:!0,onConfirm:r,onCancel:i})}function U(e){let t=i(),[n,r]=(0,w.useState)(null),[a,o]=(0,w.useState)(!1);return{pendingDelete:n,isDeleting:a,requestDelete:r,confirmDelete:(0,w.useCallback)(async()=>{if(!(!n||a)){o(!0);try{await p({path:{assistant_id:e,id:n.id},throwOnError:!0}),v(e,n.id),t.invalidateQueries({queryKey:h({path:{assistant_id:e}})}),r(null)}catch(e){d.error(e instanceof Error?e.message:`Failed to delete app`)}finally{o(!1)}}},[n,a,e,t]),cancelDelete:(0,w.useCallback)(()=>{a||r(null)},[a])}}function W({name:e,description:n,icon:i,loadHtml:a,isPinned:o=!1,isLoading:s=!1,isOpenDisabled:c=!1,isPreviewPending:u=!1,onOpen:d,onPin:f}){let{t:p}=t();return(0,V.jsxs)(`div`,{className:b(`flex flex-col gap-2 rounded-xl border border-[var(--border-base)]`,`bg-[var(--surface-lift)] p-3`),children:[(0,V.jsx)(G,{name:e,icon:i,loadHtml:u?void 0:a,isLoading:s,isPreviewPending:u}),(0,V.jsxs)(`div`,{className:`flex flex-col gap-0.5 px-0.5`,children:[(0,V.jsxs)(`span`,{className:`flex items-center gap-2 truncate text-body-large-default text-[color:var(--content-emphasised)]`,children:[i?(0,V.jsx)(`span`,{"aria-hidden":!0,className:`leading-none`,children:i}):null,(0,V.jsx)(`span`,{className:`truncate`,children:e})]}),n?(0,V.jsx)(`span`,{className:`truncate text-body-medium-default text-[color:var(--content-secondary)]`,children:n}):null]}),(0,V.jsxs)(`div`,{className:`flex items-center gap-1.5 px-0.5`,children:[(0,V.jsx)(r,{variant:`primary`,leftIcon:(0,V.jsx)(l,{}),onClick:d,disabled:c||d==null,children:p(`appCard.openApp`)}),(0,V.jsx)(r,{variant:`outlined`,leftIcon:o?(0,V.jsx)(S,{}):(0,V.jsx)(C,{}),onClick:f,disabled:f==null,children:p(o?`appCard.unpin`:`appCard.pin`)})]})]})}function G({name:e,icon:n,loadHtml:r,isLoading:i=!1,isPreviewPending:a=!1,className:o}){let{t:s}=t(),c=(0,w.useRef)(null),[l,d]=(0,w.useState)(null),[f,p]=(0,w.useState)(!1);return(0,w.useEffect)(()=>{if(r==null)return;let e=c.current;if(!e||typeof IntersectionObserver>`u`)return;let t=new IntersectionObserver(([e])=>{e?.isIntersecting&&(p(!0),t.disconnect())},{rootMargin:`200px`});return t.observe(e),()=>t.disconnect()},[r]),(0,w.useEffect)(()=>{if(!f||r==null)return;let e=!1;return r().then(t=>{e||d(t)}).catch(()=>{}),()=>{e=!0}},[f,r]),(0,V.jsxs)(`div`,{ref:c,className:b(`relative aspect-[16/10] w-full overflow-hidden rounded-lg`,`border border-[var(--border-base)] bg-[var(--surface-base)]`,o),children:[(0,V.jsx)(`div`,{className:`absolute inset-0 flex items-center justify-center`,children:a?null:n?(0,V.jsx)(`span`,{className:`text-4xl`,children:n}):(0,V.jsx)(u,{size:32,className:`text-[var(--content-tertiary)]`})}),l!=null&&(0,V.jsx)(`iframe`,{srcDoc:x(l),sandbox:`allow-scripts`,referrerPolicy:`no-referrer`,title:s(`appCard.previewTitle`,{name:e}),"aria-hidden":`true`,tabIndex:-1,loading:`lazy`,scrolling:`no`,className:`absolute left-0 top-0 border-none bg-[var(--surface-base)]`,style:{width:`200%`,height:`200%`,transform:`scale(0.5)`,transformOrigin:`top left`,pointerEvents:`none`}}),i&&(0,V.jsx)(`div`,{className:`absolute inset-0 z-10 flex items-center justify-center bg-[var(--surface-base)]/60 backdrop-blur-sm`,children:(0,V.jsx)(`div`,{className:`h-5 w-5 animate-spin rounded-full border-2 border-[var(--border-base)] border-t-[var(--primary-base)]`})})]})}export{R as a,A as c,S as d,H as i,T as l,G as n,k as o,U as r,M as s,W as t,C as u};
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{v as t}from"./i18n-BtV8MCsZ.js";import{t as n}from"./react-DJZBPgpf.js";import{t as r}from"./button-B1kEAcLt.js";import{n as i}from"./QueryClientProvider-BPZM68-A.js";import{t as a}from"./useQuery-BtL9k7Sh.js";import{t as o}from"./useMutation-Cl7cazkm.js";import{t as s}from"./jsx-runtime-COOF1INC.js";import{t as c}from"./createLucideIcon-CMfEC_aW.js";import{t as l}from"./external-link-cVsOyP-B.js";import{t as u}from"./puzzle-PqInNnOi.js";import"./src-BKET5Cno.js";import{n as d}from"./toast-BKrDuNtu.js";import{t as f}from"./confirm-dialog-EPYSBP_B.js";import{t as p}from"./sdk.gen-BluU0h_N.js";import{i as m}from"./typed-storage-Bw4gW_Pk.js";import{a as h,i as g,t as _}from"./react-query.gen-C_GLKG7m.js";import{s as v}from"./viewer-store-CHptQmkY.js";import{t as y}from"./use-assistant-capability-De-35T6E.js";import{t as b}from"./misc-dA4Wklt2.js";import{a as x}from"./sandbox-bridge-DSJSIgUC.js";var S=c(`pin-off`,[[`path`,{d:`M12 17v5`,key:`bb1du9`}],[`path`,{d:`M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89`,key:`znwnzq`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11`,key:`c9qhm2`}]]),C=c(`pin`,[[`path`,{d:`M12 17v5`,key:`bb1du9`}],[`path`,{d:`M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z`,key:`1nkz8b`}]]),w=e(n(),1);function T(){return y(`appPins`)}function E(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.appId==`string`&&typeof t.pinnedOrder==`number`&&Number.isFinite(t.pinnedOrder)&&typeof t.name==`string`&&(t.icon===void 0||typeof t.icon==`string`)&&(t.color===void 0||typeof t.color==`string`)}function D(e){let t=JSON.parse(e);return Array.isArray(t)?t.filter(E):null}var O=m({key:`vellum:pinnedApps`,scope:`user`,parse:D,serialize:JSON.stringify,fallback:[]}),k=O.load,A=O.save,j=O.subscribe,M=O.remove;function N(e){let t=O.load();if(t.some(t=>t.appId===e.id))return;let n=t.reduce((e,t)=>Math.max(e,t.pinnedOrder),0);O.save([...t,{appId:e.id,pinnedOrder:n+1,name:e.name,icon:e.icon}])}function P(e){let t=O.load().filter(t=>t.appId!==e);t=t.sort((e,t)=>e.pinnedOrder-t.pinnedOrder).map((e,t)=>({...e,pinnedOrder:t+1})),O.save(t)}function F(e,t){let n=O.load();n.some(t=>t.appId===e)&&O.save(n.map(n=>{if(n.appId!==e)return n;let{color:r,...i}=n;return t===null?i:{...i,color:t}}))}function I(e){let t=(0,w.useSyncExternalStore)(j,k,k),n=(0,w.useMemo)(()=>[...t].sort((e,t)=>e.pinnedOrder-t.pinnedOrder).map(e=>({id:e.appId,name:e.name,icon:e.icon,pinColor:e.color})),[t]),r=(0,w.useMemo)(()=>new Set(n.map(e=>e.id)),[n]);return{pinnedApps:n,togglePin:(0,w.useCallback)(t=>{if(r.has(t)){P(t);return}let n=e.find(e=>e.id===t);n&&N({id:n.id,name:n.name,icon:n.icon})},[r,e]),unpin:(0,w.useCallback)(e=>{r.has(e)&&P(e)},[r]),setColor:(0,w.useCallback)((e,t)=>{r.has(e)&&F(e,t)},[r])}}var L=[];function R(e){let t=T(),n=(0,w.useMemo)(()=>({assistant_id:e??``}),[e]),{data:r=L}=a({...g({path:n}),select:e=>e.apps,enabled:!!e}),i=z(e,n,r),o=I(r),s=t?i:o,c=(0,w.useMemo)(()=>new Set(s.pinnedApps.map(e=>e.id)),[s.pinnedApps]);return{...s,pinnedAppIds:c,source:t?`daemon`:`local`}}function z(e,t,n){let r=i(),a=(0,w.useMemo)(()=>n.filter(e=>e.pinSortPosition!==void 0).sort((e,t)=>(e.pinSortPosition??0)-(t.pinSortPosition??0)).map(({id:e,name:t,icon:n,pinColor:r})=>({id:e,name:t,icon:n,pinColor:r})),[n]),s=(0,w.useMemo)(()=>new Set(a.map(e=>e.id)),[a]),{mutate:c}=o({..._(),onMutate:async e=>{let n=h({path:t});await r.cancelQueries({queryKey:n});let i=r.getQueryData(n);return r.setQueryData(n,t=>t&&B(t,e.path.id,e.body)),{previous:i}},onError:(e,n,i)=>{i?.previous&&r.setQueryData(h({path:t}),i.previous)},onSettled:()=>r.invalidateQueries({queryKey:h({path:t})})}),l=(0,w.useCallback)((n,r)=>{e&&c({path:{...t,id:n},body:r})},[e,c,t]);return{pinnedApps:a,togglePin:(0,w.useCallback)(e=>{l(e,{pinned:!s.has(e)})},[l,s]),unpin:(0,w.useCallback)(e=>{s.has(e)&&l(e,{pinned:!1})},[l,s]),setColor:(0,w.useCallback)((e,t)=>{s.has(e)&&l(e,{color:t})},[l,s])}}function B(e,t,n){let r=e.apps.reduce((e,t)=>Math.max(e,t.pinSortPosition??0),0);return{...e,apps:e.apps.map(e=>{if(e.id!==t)return e;let i={...e};return n.pinned===!1?(delete i.pinSortPosition,delete i.pinColor,i):(n.pinned===!0&&i.pinSortPosition===void 0&&(i.pinSortPosition=r+1),n.color===null?delete i.pinColor:n.color!==void 0&&(i.pinColor=n.color),i)})}}var V=s();function H({app:e,isDeleting:n,onConfirm:r,onCancel:i}){let{t:a}=t();return(0,V.jsx)(f,{open:e!==null,title:a(`deleteAppDialog.title`),message:e?a(`deleteAppDialog.message`,{name:e.name}):``,confirmLabel:a(n?`deleteAppDialog.deleting`:`deleteAppDialog.delete`),destructive:!0,onConfirm:r,onCancel:i})}function U(e){let t=i(),[n,r]=(0,w.useState)(null),[a,o]=(0,w.useState)(!1);return{pendingDelete:n,isDeleting:a,requestDelete:r,confirmDelete:(0,w.useCallback)(async()=>{if(!(!n||a)){o(!0);try{await p({path:{assistant_id:e,id:n.id},throwOnError:!0}),v(e,n.id),t.invalidateQueries({queryKey:h({path:{assistant_id:e}})}),r(null)}catch(e){d.error(e instanceof Error?e.message:`Failed to delete app`)}finally{o(!1)}}},[n,a,e,t]),cancelDelete:(0,w.useCallback)(()=>{a||r(null)},[a])}}function W({name:e,description:n,icon:i,loadHtml:a,isPinned:o=!1,isLoading:s=!1,isOpenDisabled:c=!1,isPreviewPending:u=!1,onOpen:d,onPin:f}){let{t:p}=t();return(0,V.jsxs)(`div`,{className:b(`flex flex-col gap-2 rounded-xl border border-[var(--border-base)]`,`bg-[var(--surface-lift)] p-3`),children:[(0,V.jsx)(G,{name:e,icon:i,loadHtml:u?void 0:a,isLoading:s,isPreviewPending:u}),(0,V.jsxs)(`div`,{className:`flex flex-col gap-0.5 px-0.5`,children:[(0,V.jsxs)(`span`,{className:`flex items-center gap-2 truncate text-body-large-default text-[color:var(--content-emphasised)]`,children:[i?(0,V.jsx)(`span`,{"aria-hidden":!0,className:`leading-none`,children:i}):null,(0,V.jsx)(`span`,{className:`truncate`,children:e})]}),n?(0,V.jsx)(`span`,{className:`truncate text-body-medium-default text-[color:var(--content-secondary)]`,children:n}):null]}),(0,V.jsxs)(`div`,{className:`flex items-center gap-1.5 px-0.5`,children:[(0,V.jsx)(r,{variant:`primary`,leftIcon:(0,V.jsx)(l,{}),onClick:d,disabled:c||d==null,children:p(`appCard.openApp`)}),(0,V.jsx)(r,{variant:`outlined`,leftIcon:o?(0,V.jsx)(S,{}):(0,V.jsx)(C,{}),onClick:f,disabled:f==null,children:p(o?`appCard.unpin`:`appCard.pin`)})]})]})}function G({name:e,icon:n,loadHtml:r,isLoading:i=!1,isPreviewPending:a=!1,className:o}){let{t:s}=t(),c=(0,w.useRef)(null),[l,d]=(0,w.useState)(null),[f,p]=(0,w.useState)(!1);return(0,w.useEffect)(()=>{if(r==null)return;let e=c.current;if(!e||typeof IntersectionObserver>`u`)return;let t=new IntersectionObserver(([e])=>{e?.isIntersecting&&(p(!0),t.disconnect())},{rootMargin:`200px`});return t.observe(e),()=>t.disconnect()},[r]),(0,w.useEffect)(()=>{if(!f||r==null)return;let e=!1;return r().then(t=>{e||d(t)}).catch(()=>{}),()=>{e=!0}},[f,r]),(0,V.jsxs)(`div`,{ref:c,className:b(`relative aspect-[16/10] w-full overflow-hidden rounded-lg`,`border border-[var(--border-base)] bg-[var(--surface-base)]`,o),children:[(0,V.jsx)(`div`,{className:`absolute inset-0 flex items-center justify-center`,children:a?null:n?(0,V.jsx)(`span`,{className:`text-4xl`,children:n}):(0,V.jsx)(u,{size:32,className:`text-[var(--content-tertiary)]`})}),l!=null&&(0,V.jsx)(`iframe`,{srcDoc:x(l),sandbox:`allow-scripts`,referrerPolicy:`no-referrer`,title:s(`appCard.previewTitle`,{name:e}),"aria-hidden":`true`,tabIndex:-1,loading:`lazy`,scrolling:`no`,className:`absolute left-0 top-0 border-none bg-[var(--surface-base)]`,style:{width:`200%`,height:`200%`,transform:`scale(0.5)`,transformOrigin:`top left`,pointerEvents:`none`}}),i&&(0,V.jsx)(`div`,{className:`absolute inset-0 z-10 flex items-center justify-center bg-[var(--surface-base)]/60 backdrop-blur-sm`,children:(0,V.jsx)(`div`,{className:`h-5 w-5 animate-spin rounded-full border-2 border-[var(--border-base)] border-t-[var(--primary-base)]`})})]})}export{R as a,A as c,S as d,H as i,T as l,G as n,k as o,U as r,M as s,W as t,C as u};
@@ -1 +1 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{k as t,l as n,u as r,v as i}from"./i18n-BDfnKs41.js";import{t as a}from"./react-DJZBPgpf.js";import{t as o}from"./useQuery-BtL9k7Sh.js";import{t as s}from"./jsx-runtime-COOF1INC.js";import{t as c}from"./loader-circle-DZ65N8bz.js";import"./src-BKET5Cno.js";import"./tag-DAsImP7W.js";import{n as l}from"./toast-BKrDuNtu.js";import"./auth-store-CjmqULlA.js";import{d as u,p as d}from"./use-assistant-avatar-CT8Pozwx.js";import{t as f}from"./assistant-feature-flag-store-Co_o5uD3.js";import{t as p}from"./use-active-assistant-id-lxYJu99R.js";import"./environment-store-DEyTyd0y.js";var m=e(a(),1),h=s();function g({value:e,max:t,caption:n}){let r=t>0?Math.max(0,Math.min(e/t*100,100)):0,i=r>90;return(0,h.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,h.jsx)(`div`,{className:`h-2 w-full overflow-hidden rounded-full bg-[var(--surface-active)]`,children:(0,h.jsx)(`div`,{className:`h-full rounded-full transition-[width] duration-200`,style:{width:`${r}%`,backgroundColor:i?`var(--system-negative-strong)`:`var(--system-positive-strong)`}})}),n&&(0,h.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)]`,children:n})]})}var _=7,v=2e3;function y(e){let n=(0,m.useRef)(0),r=(0,m.useRef)(null),[i,a]=(0,m.useState)(null),o=(0,m.useCallback)(()=>{if(n.current+=1,n.current>=_){n.current=0;let i=f.getState(),o=!i.settingsDeveloperNav;i.setFlag(`settingsDeveloperNav`,o,e),a(t(o?`settings:devModeVersionUnlock.enabled`:`settings:devModeVersionUnlock.disabled`)),r.current!==null&&clearTimeout(r.current),r.current=setTimeout(()=>{a(null),r.current=null},v)}},[e]);return(0,m.useEffect)(()=>()=>{r.current!==null&&clearTimeout(r.current)},[]),{onTap:o,message:i}}function b({version:e,loading:t,assistantId:n}){let{t:r}=i(`settings`),{onTap:a,message:o}=y(n);return t?(0,h.jsxs)(`span`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,h.jsx)(c,{className:`h-4 w-4 animate-spin`}),r(`devModeVersionUnlock.loading`)]}):e?(0,h.jsxs)(`div`,{children:[(0,h.jsx)(`button`,{type:`button`,className:`break-all text-left text-body-medium-lighter text-[var(--content-default)]`,onClick:a,children:e}),o&&(0,h.jsx)(`p`,{className:`mt-1 text-body-small-default text-[var(--content-accent)]`,children:o})]}):(0,h.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`—`})}var x=`currentAssistant`,S=4e3,C=9e4;function w(e,t){return(e.memory?.maxMb??null)!==(t.memory?.maxMb??null)||(e.cpu?.maxCores??null)!==(t.cpu?.maxCores??null)}function T(){let e=p(),{data:i=null,isLoading:a,refetch:s}=o({queryKey:[x,e],queryFn:async()=>{let t=await u(e);return t.ok?t.data:null},retry:!1}),c=i?.id,[f,h]=(0,m.useState)(null),[g,_]=(0,m.useState)(!1),[v,y]=(0,m.useState)(!1),b=(0,m.useRef)(0),T=(0,m.useRef)(0),E=(0,m.useCallback)(async e=>{if(!c)return h(null),_(!1),null;b.current+=1;let i=b.current;_(!0);try{let t=await d(c);return i===b.current?t.ok?(h(t.data),t.data):(e?.keepStaleOnError||h(null),null):null}catch(a){return i===b.current?(e?.keepStaleOnError||h(null),!r(a)&&!e?.keepStaleOnError&&(n(a,{context:`fetch_assistant_healthz`}),l.error(t(`settings:assistantStatusPanel.loadHealthzFailed`))),null):null}finally{i===b.current&&_(!1)}},[c]);return(0,m.useEffect)(()=>{E()},[E]),(0,m.useEffect)(()=>()=>{T.current+=1,y(!1),h(null)},[c]),{assistant:i,assistantLoading:a,healthz:f,healthzLoading:g,healthzPolling:v,refetch:(0,m.useCallback)(async()=>{await s(),await E()},[s,E]),refetchUntilResized:(0,m.useCallback)(async e=>{let t=++T.current,n=Date.now()+C;y(!0);let r=e;try{for(s();Date.now()<n&&t===T.current;){if(await new Promise(e=>setTimeout(e,S)),t!==T.current)return;let e=await E({keepStaleOnError:!0});if(t!==T.current)return;if(e){if(r==null){r=e;continue}if(w(e,r))return}}}finally{t===T.current&&y(!1)}},[E,s])}}function E(e){return e>=1024?`${(e/1024).toFixed(1)} GB`:`${e.toFixed(0)} MB`}export{g as a,y as i,T as n,b as r,E as t};
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{k as t,l as n,u as r,v as i}from"./i18n-BtV8MCsZ.js";import{t as a}from"./react-DJZBPgpf.js";import{t as o}from"./useQuery-BtL9k7Sh.js";import{t as s}from"./jsx-runtime-COOF1INC.js";import{t as c}from"./loader-circle-DZ65N8bz.js";import"./src-BKET5Cno.js";import"./tag-DAsImP7W.js";import{n as l}from"./toast-BKrDuNtu.js";import"./auth-store-BVjw4Y6z.js";import{d as u,p as d}from"./use-assistant-avatar-C2TgszRj.js";import{t as f}from"./assistant-feature-flag-store-Co_o5uD3.js";import{t as p}from"./use-active-assistant-id-lxYJu99R.js";import"./environment-store-DKl9RR50.js";var m=e(a(),1),h=s();function g({value:e,max:t,caption:n}){let r=t>0?Math.max(0,Math.min(e/t*100,100)):0,i=r>90;return(0,h.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,h.jsx)(`div`,{className:`h-2 w-full overflow-hidden rounded-full bg-[var(--surface-active)]`,children:(0,h.jsx)(`div`,{className:`h-full rounded-full transition-[width] duration-200`,style:{width:`${r}%`,backgroundColor:i?`var(--system-negative-strong)`:`var(--system-positive-strong)`}})}),n&&(0,h.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-tertiary)]`,children:n})]})}var _=7,v=2e3;function y(e){let n=(0,m.useRef)(0),r=(0,m.useRef)(null),[i,a]=(0,m.useState)(null),o=(0,m.useCallback)(()=>{if(n.current+=1,n.current>=_){n.current=0;let i=f.getState(),o=!i.settingsDeveloperNav;i.setFlag(`settingsDeveloperNav`,o,e),a(t(o?`settings:devModeVersionUnlock.enabled`:`settings:devModeVersionUnlock.disabled`)),r.current!==null&&clearTimeout(r.current),r.current=setTimeout(()=>{a(null),r.current=null},v)}},[e]);return(0,m.useEffect)(()=>()=>{r.current!==null&&clearTimeout(r.current)},[]),{onTap:o,message:i}}function b({version:e,loading:t,assistantId:n}){let{t:r}=i(`settings`),{onTap:a,message:o}=y(n);return t?(0,h.jsxs)(`span`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,h.jsx)(c,{className:`h-4 w-4 animate-spin`}),r(`devModeVersionUnlock.loading`)]}):e?(0,h.jsxs)(`div`,{children:[(0,h.jsx)(`button`,{type:`button`,className:`break-all text-left text-body-medium-lighter text-[var(--content-default)]`,onClick:a,children:e}),o&&(0,h.jsx)(`p`,{className:`mt-1 text-body-small-default text-[var(--content-accent)]`,children:o})]}):(0,h.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`—`})}var x=`currentAssistant`,S=4e3,C=9e4;function w(e,t){return(e.memory?.maxMb??null)!==(t.memory?.maxMb??null)||(e.cpu?.maxCores??null)!==(t.cpu?.maxCores??null)}function T(){let e=p(),{data:i=null,isLoading:a,refetch:s}=o({queryKey:[x,e],queryFn:async()=>{let t=await u(e);return t.ok?t.data:null},retry:!1}),c=i?.id,[f,h]=(0,m.useState)(null),[g,_]=(0,m.useState)(!1),[v,y]=(0,m.useState)(!1),b=(0,m.useRef)(0),T=(0,m.useRef)(0),E=(0,m.useCallback)(async e=>{if(!c)return h(null),_(!1),null;b.current+=1;let i=b.current;_(!0);try{let t=await d(c);return i===b.current?t.ok?(h(t.data),t.data):(e?.keepStaleOnError||h(null),null):null}catch(a){return i===b.current?(e?.keepStaleOnError||h(null),!r(a)&&!e?.keepStaleOnError&&(n(a,{context:`fetch_assistant_healthz`}),l.error(t(`settings:assistantStatusPanel.loadHealthzFailed`))),null):null}finally{i===b.current&&_(!1)}},[c]);return(0,m.useEffect)(()=>{E()},[E]),(0,m.useEffect)(()=>()=>{T.current+=1,y(!1),h(null)},[c]),{assistant:i,assistantLoading:a,healthz:f,healthzLoading:g,healthzPolling:v,refetch:(0,m.useCallback)(async()=>{await s(),await E()},[s,E]),refetchUntilResized:(0,m.useCallback)(async e=>{let t=++T.current,n=Date.now()+C;y(!0);let r=e;try{for(s();Date.now()<n&&t===T.current;){if(await new Promise(e=>setTimeout(e,S)),t!==T.current)return;let e=await E({keepStaleOnError:!0});if(t!==T.current)return;if(e){if(r==null){r=e;continue}if(w(e,r))return}}}finally{t===T.current&&y(!1)}},[E,s])}}function E(e){return e>=1024?`${(e/1024).toFixed(1)} GB`:`${e.toFixed(0)} MB`}export{g as a,y as i,T as n,b as r,E as t};